From 99653ff80560624ac13f25a7c365df4efa08d18f Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 12 Aug 2011 22:23:37 +0200 Subject: [PATCH 001/430] first commit --- README | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README diff --git a/README b/README new file mode 100644 index 000000000..e69de29bb From 750f6c33e30ca16fab1ebe552a6b3422282bc66a Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 12 Aug 2011 22:28:35 +0200 Subject: [PATCH 002/430] first commit --- Marlin/COPYING | 188 +++ Marlin/Configuration.h | 133 ++ Marlin/FatStructs.h | 418 +++++ Marlin/Makefile | 247 +++ Marlin/Marlin.h | 107 ++ Marlin/Marlin.pde | 2038 +++++++++++++++++++++++ Marlin/Sd2Card.cpp | 643 ++++++++ Marlin/Sd2Card.h | 233 +++ Marlin/Sd2PinMap.h | 353 ++++ Marlin/SdFat.h | 547 ++++++ Marlin/SdFatUtil.h | 70 + Marlin/SdFatmainpage.h | 202 +++ Marlin/SdFile.cpp | 1252 ++++++++++++++ Marlin/SdInfo.h | 232 +++ Marlin/SdVolume.cpp | 295 ++++ Marlin/applet/Marlin.cpp | 2050 +++++++++++++++++++++++ Marlin/createTemperatureLookup.py | 127 ++ Marlin/fastio.h | 2558 +++++++++++++++++++++++++++++ Marlin/pins.h | 494 ++++++ Marlin/speed_lookuptable.h | 75 + Marlin/thermistortables.h | 148 ++ Marlin/wiring.c | 176 ++ Marlin/wiring_serial.c | 139 ++ 23 files changed, 12725 insertions(+) create mode 100644 Marlin/COPYING create mode 100644 Marlin/Configuration.h create mode 100644 Marlin/FatStructs.h create mode 100644 Marlin/Makefile create mode 100644 Marlin/Marlin.h create mode 100644 Marlin/Marlin.pde create mode 100644 Marlin/Sd2Card.cpp create mode 100644 Marlin/Sd2Card.h create mode 100644 Marlin/Sd2PinMap.h create mode 100644 Marlin/SdFat.h create mode 100644 Marlin/SdFatUtil.h create mode 100644 Marlin/SdFatmainpage.h create mode 100644 Marlin/SdFile.cpp create mode 100644 Marlin/SdInfo.h create mode 100644 Marlin/SdVolume.cpp create mode 100644 Marlin/applet/Marlin.cpp create mode 100644 Marlin/createTemperatureLookup.py create mode 100644 Marlin/fastio.h create mode 100644 Marlin/pins.h create mode 100644 Marlin/speed_lookuptable.h create mode 100644 Marlin/thermistortables.h create mode 100644 Marlin/wiring.c create mode 100644 Marlin/wiring_serial.c diff --git a/Marlin/COPYING b/Marlin/COPYING new file mode 100644 index 000000000..2b194fadc --- /dev/null +++ b/Marlin/COPYING @@ -0,0 +1,188 @@ +GNU GENERAL PUBLIC LICENSE + +Version 3, 29 June 2007 + +Copyright © 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. +Preamble + +The GNU General Public License is a free, copyleft license for software and other kinds of works. + +The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. + +To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. + +For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. + +Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. + +For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. + +Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. + +Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. + +The precise terms and conditions for copying, distribution and modification follow. +TERMS AND CONDITIONS +0. Definitions. + +“This License” refers to version 3 of the GNU General Public License. + +“Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. + +“The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. + +To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. + +A “covered work” means either the unmodified Program or a work based on the Program. + +To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. + +To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. +1. Source Code. + +The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. + +A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. + +The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. + +The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same work. +2. Basic Permissions. + +All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. +3. Protecting Users' Legal Rights From Anti-Circumvention Law. + +No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. + +When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. +4. Conveying Verbatim Copies. + +You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. +5. Conveying Modified Source Versions. + +You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified it, and giving a relevant date. + b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. + c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. + d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. + +A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. +6. Conveying Non-Source Forms. + +You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: + + a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. + b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. + c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. + d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. + e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. + +A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. + +“Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. + +If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). + +The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. +7. Additional Terms. + +“Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or + b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or + c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or + d) Limiting the use for publicity purposes of names of licensors or authors of the material; or + e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or + f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. + +All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. +8. Termination. + +You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). + +However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. + +Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. +9. Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. +10. Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. + +An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. +11. Patents. + +A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. + +A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. + +In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. + +If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. + +A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. +12. No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. +13. Use with the GNU Affero General Public License. + +Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. +14. Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. + +Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. +15. Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. +16. Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. +17. Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. + diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h new file mode 100644 index 000000000..a32fba15a --- /dev/null +++ b/Marlin/Configuration.h @@ -0,0 +1,133 @@ +#ifndef CONFIGURATION_H +#define CONFIGURATION_H + +// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration + +//// The following define selects which electronics board you have. Please choose the one that matches your setup +// Gen6 = 5, +#define MOTHERBOARD 5 + +//// Thermistor settings: +// 1 is 100k thermistor +// 2 is 200k thermistor +// 3 is mendel-parts thermistor +#define THERMISTORHEATER 3 + +// extruder advance constant (s2/mm3) +// +// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 +// +// hooke's law says: force = k * distance +// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant +// so: v ^ 2 is proportional to number of steps we advance the extruder +//#define ADVANCE + +#ifdef ADVANCE +#define EXTRUDER_ADVANCE_K 0.02 + +#define D_FILAMENT 1.7 +#define STEPS_MM_E 65 +//#define D_FILAMENT 2.85 +//#define STEPS_MM_E 367.35 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + +#endif // ADVANCE + +//// Calibration variables +// X, Y, Z, E steps per unit - Metric Prusa Mendel with V9 extruder: +float axis_steps_per_unit[] = {40, 40, 3333.92,76.2}; +// Metric Prusa Mendel with Makergear geared stepper extruder: +//float axis_steps_per_unit[] = {80,80,3200/1.25,1380}; + +//// Endstop Settings +#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors +// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. +const bool ENDSTOPS_INVERTING = false; //set to true to invert the logic of the endstops + +// This determines the communication speed of the printer +#define BAUDRATE 250000 + +// Comment out (using // at the start of the line) to disable SD support: +//#define SDSUPPORT + + +//// ADVANCED SETTINGS - to tweak parameters + +#include "thermistortables.h" + +// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 +#define X_ENABLE_ON 0 +#define Y_ENABLE_ON 0 +#define Z_ENABLE_ON 0 +#define E_ENABLE_ON 0 + +// Disables axis when it's not being used. +#define DISABLE_X false +#define DISABLE_Y false +#define DISABLE_Z true +#define DISABLE_E false + +// Inverting axis direction +#define INVERT_X_DIR false +#define INVERT_Y_DIR true +#define INVERT_Z_DIR false +#define INVERT_E_DIR true + +//// ENDSTOP SETTINGS: +// Sets direction of endstops when homing; 1=MAX, -1=MIN +#define X_HOME_DIR -1 +#define Y_HOME_DIR -1 +#define Z_HOME_DIR -1 + +#define min_software_endstops false //If true, axis won't move to coordinates less than zero. +#define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 200 +#define Y_MAX_LENGTH 200 +#define Z_MAX_LENGTH 100 + +//// MOVEMENT SETTINGS +#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E +float max_feedrate[] = {60000, 60000, 170, 500000}; +float homing_feedrate[] = {1500,1500,120,0}; +bool axis_relative_modes[] = {false, false, false, false}; + +//// Acceleration settings +// X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. +float acceleration = 3000; // Normal acceleration mm/s^2 +float retract_acceleration = 7000; // Normal acceleration mm/s^2 +float max_jerk = 20*60; +long max_acceleration_units_per_sq_second[] = {7000,7000,20,10000}; // X, Y, Z and E max acceleration in mm/s^2 for printing moves or retracts +// Not used long max_travel_acceleration_units_per_sq_second[] = {500,500,50,500}; // X, Y, Z max acceleration in mm/s^2 for travel moves + + +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 +//#define WATCHPERIOD 5000 //5 seconds + +//// The minimal temperature defines the temperature below which the heater will not be enabled +#define MINTEMP 5 + + +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define MAXTEMP 275 + + +/// PID settings: +// Uncomment the following line to enable PID support. +//#define PIDTEMP +#ifdef PIDTEMP +//#define PID_DEBUG 1 // Sends debug data to the serial port. +//#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % +#define PID_MAX 156 // limits current to nozzle +#define PID_INTEGRAL_DRIVE_MAX 156.0 +#define PID_dT 0.16 +double Kp = 20.0; +double Ki = 1.5*PID_dT; +double Kd = 80/PID_dT; +#endif // PIDTEMP + + +#endif diff --git a/Marlin/FatStructs.h b/Marlin/FatStructs.h new file mode 100644 index 000000000..5713467ce --- /dev/null +++ b/Marlin/FatStructs.h @@ -0,0 +1,418 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef FatStructs_h +#define FatStructs_h +/** + * \file + * FAT file structures + */ +/* + * mostly from Microsoft document fatgen103.doc + * http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx + */ +//------------------------------------------------------------------------------ +/** Value for byte 510 of boot block or MBR */ +uint8_t const BOOTSIG0 = 0X55; +/** Value for byte 511 of boot block or MBR */ +uint8_t const BOOTSIG1 = 0XAA; +//------------------------------------------------------------------------------ +/** + * \struct partitionTable + * \brief MBR partition table entry + * + * A partition table entry for a MBR formatted storage device. + * The MBR partition table has four entries. + */ +struct partitionTable { + /** + * Boot Indicator . Indicates whether the volume is the active + * partition. Legal values include: 0X00. Do not use for booting. + * 0X80 Active partition. + */ + uint8_t boot; + /** + * Head part of Cylinder-head-sector address of the first block in + * the partition. Legal values are 0-255. Only used in old PC BIOS. + */ + uint8_t beginHead; + /** + * Sector part of Cylinder-head-sector address of the first block in + * the partition. Legal values are 1-63. Only used in old PC BIOS. + */ + unsigned beginSector : 6; + /** High bits cylinder for first block in partition. */ + unsigned beginCylinderHigh : 2; + /** + * Combine beginCylinderLow with beginCylinderHigh. Legal values + * are 0-1023. Only used in old PC BIOS. + */ + uint8_t beginCylinderLow; + /** + * Partition type. See defines that begin with PART_TYPE_ for + * some Microsoft partition types. + */ + uint8_t type; + /** + * head part of cylinder-head-sector address of the last sector in the + * partition. Legal values are 0-255. Only used in old PC BIOS. + */ + uint8_t endHead; + /** + * Sector part of cylinder-head-sector address of the last sector in + * the partition. Legal values are 1-63. Only used in old PC BIOS. + */ + unsigned endSector : 6; + /** High bits of end cylinder */ + unsigned endCylinderHigh : 2; + /** + * Combine endCylinderLow with endCylinderHigh. Legal values + * are 0-1023. Only used in old PC BIOS. + */ + uint8_t endCylinderLow; + /** Logical block address of the first block in the partition. */ + uint32_t firstSector; + /** Length of the partition, in blocks. */ + uint32_t totalSectors; +}; +/** Type name for partitionTable */ +typedef struct partitionTable part_t; +//------------------------------------------------------------------------------ +/** + * \struct masterBootRecord + * + * \brief Master Boot Record + * + * The first block of a storage device that is formatted with a MBR. + */ +struct masterBootRecord { + /** Code Area for master boot program. */ + uint8_t codeArea[440]; + /** Optional WindowsNT disk signature. May contain more boot code. */ + uint32_t diskSignature; + /** Usually zero but may be more boot code. */ + uint16_t usuallyZero; + /** Partition tables. */ + part_t part[4]; + /** First MBR signature byte. Must be 0X55 */ + uint8_t mbrSig0; + /** Second MBR signature byte. Must be 0XAA */ + uint8_t mbrSig1; +}; +/** Type name for masterBootRecord */ +typedef struct masterBootRecord mbr_t; +//------------------------------------------------------------------------------ +/** + * \struct biosParmBlock + * + * \brief BIOS parameter block + * + * The BIOS parameter block describes the physical layout of a FAT volume. + */ +struct biosParmBlock { + /** + * Count of bytes per sector. This value may take on only the + * following values: 512, 1024, 2048 or 4096 + */ + uint16_t bytesPerSector; + /** + * Number of sectors per allocation unit. This value must be a + * power of 2 that is greater than 0. The legal values are + * 1, 2, 4, 8, 16, 32, 64, and 128. + */ + uint8_t sectorsPerCluster; + /** + * Number of sectors before the first FAT. + * This value must not be zero. + */ + uint16_t reservedSectorCount; + /** The count of FAT data structures on the volume. This field should + * always contain the value 2 for any FAT volume of any type. + */ + uint8_t fatCount; + /** + * For FAT12 and FAT16 volumes, this field contains the count of + * 32-byte directory entries in the root directory. For FAT32 volumes, + * this field must be set to 0. For FAT12 and FAT16 volumes, this + * value should always specify a count that when multiplied by 32 + * results in a multiple of bytesPerSector. FAT16 volumes should + * use the value 512. + */ + uint16_t rootDirEntryCount; + /** + * This field is the old 16-bit total count of sectors on the volume. + * This count includes the count of all sectors in all four regions + * of the volume. This field can be 0; if it is 0, then totalSectors32 + * must be non-zero. For FAT32 volumes, this field must be 0. For + * FAT12 and FAT16 volumes, this field contains the sector count, and + * totalSectors32 is 0 if the total sector count fits + * (is less than 0x10000). + */ + uint16_t totalSectors16; + /** + * This dates back to the old MS-DOS 1.x media determination and is + * no longer usually used for anything. 0xF8 is the standard value + * for fixed (non-removable) media. For removable media, 0xF0 is + * frequently used. Legal values are 0xF0 or 0xF8-0xFF. + */ + uint8_t mediaType; + /** + * Count of sectors occupied by one FAT on FAT12/FAT16 volumes. + * On FAT32 volumes this field must be 0, and sectorsPerFat32 + * contains the FAT size count. + */ + uint16_t sectorsPerFat16; + /** Sectors per track for interrupt 0x13. Not used otherwise. */ + uint16_t sectorsPerTrtack; + /** Number of heads for interrupt 0x13. Not used otherwise. */ + uint16_t headCount; + /** + * Count of hidden sectors preceding the partition that contains this + * FAT volume. This field is generally only relevant for media + * visible on interrupt 0x13. + */ + uint32_t hidddenSectors; + /** + * This field is the new 32-bit total count of sectors on the volume. + * This count includes the count of all sectors in all four regions + * of the volume. This field can be 0; if it is 0, then + * totalSectors16 must be non-zero. + */ + uint32_t totalSectors32; + /** + * Count of sectors occupied by one FAT on FAT32 volumes. + */ + uint32_t sectorsPerFat32; + /** + * This field is only defined for FAT32 media and does not exist on + * FAT12 and FAT16 media. + * Bits 0-3 -- Zero-based number of active FAT. + * Only valid if mirroring is disabled. + * Bits 4-6 -- Reserved. + * Bit 7 -- 0 means the FAT is mirrored at runtime into all FATs. + * -- 1 means only one FAT is active; it is the one referenced in bits 0-3. + * Bits 8-15 -- Reserved. + */ + uint16_t fat32Flags; + /** + * FAT32 version. High byte is major revision number. + * Low byte is minor revision number. Only 0.0 define. + */ + uint16_t fat32Version; + /** + * Cluster number of the first cluster of the root directory for FAT32. + * This usually 2 but not required to be 2. + */ + uint32_t fat32RootCluster; + /** + * Sector number of FSINFO structure in the reserved area of the + * FAT32 volume. Usually 1. + */ + uint16_t fat32FSInfo; + /** + * If non-zero, indicates the sector number in the reserved area + * of the volume of a copy of the boot record. Usually 6. + * No value other than 6 is recommended. + */ + uint16_t fat32BackBootBlock; + /** + * Reserved for future expansion. Code that formats FAT32 volumes + * should always set all of the bytes of this field to 0. + */ + uint8_t fat32Reserved[12]; +}; +/** Type name for biosParmBlock */ +typedef struct biosParmBlock bpb_t; +//------------------------------------------------------------------------------ +/** + * \struct fat32BootSector + * + * \brief Boot sector for a FAT16 or FAT32 volume. + * + */ +struct fat32BootSector { + /** X86 jmp to boot program */ + uint8_t jmpToBootCode[3]; + /** informational only - don't depend on it */ + char oemName[8]; + /** BIOS Parameter Block */ + bpb_t bpb; + /** for int0x13 use value 0X80 for hard drive */ + uint8_t driveNumber; + /** used by Windows NT - should be zero for FAT */ + uint8_t reserved1; + /** 0X29 if next three fields are valid */ + uint8_t bootSignature; + /** usually generated by combining date and time */ + uint32_t volumeSerialNumber; + /** should match volume label in root dir */ + char volumeLabel[11]; + /** informational only - don't depend on it */ + char fileSystemType[8]; + /** X86 boot code */ + uint8_t bootCode[420]; + /** must be 0X55 */ + uint8_t bootSectorSig0; + /** must be 0XAA */ + uint8_t bootSectorSig1; +}; +//------------------------------------------------------------------------------ +// End Of Chain values for FAT entries +/** FAT16 end of chain value used by Microsoft. */ +uint16_t const FAT16EOC = 0XFFFF; +/** Minimum value for FAT16 EOC. Use to test for EOC. */ +uint16_t const FAT16EOC_MIN = 0XFFF8; +/** FAT32 end of chain value used by Microsoft. */ +uint32_t const FAT32EOC = 0X0FFFFFFF; +/** Minimum value for FAT32 EOC. Use to test for EOC. */ +uint32_t const FAT32EOC_MIN = 0X0FFFFFF8; +/** Mask a for FAT32 entry. Entries are 28 bits. */ +uint32_t const FAT32MASK = 0X0FFFFFFF; + +/** Type name for fat32BootSector */ +typedef struct fat32BootSector fbs_t; +//------------------------------------------------------------------------------ +/** + * \struct directoryEntry + * \brief FAT short directory entry + * + * Short means short 8.3 name, not the entry size. + * + * Date Format. A FAT directory entry date stamp is a 16-bit field that is + * basically a date relative to the MS-DOS epoch of 01/01/1980. Here is the + * format (bit 0 is the LSB of the 16-bit word, bit 15 is the MSB of the + * 16-bit word): + * + * Bits 9-15: Count of years from 1980, valid value range 0-127 + * inclusive (1980-2107). + * + * Bits 5-8: Month of year, 1 = January, valid value range 1-12 inclusive. + * + * Bits 0-4: Day of month, valid value range 1-31 inclusive. + * + * Time Format. A FAT directory entry time stamp is a 16-bit field that has + * a granularity of 2 seconds. Here is the format (bit 0 is the LSB of the + * 16-bit word, bit 15 is the MSB of the 16-bit word). + * + * Bits 11-15: Hours, valid value range 0-23 inclusive. + * + * Bits 5-10: Minutes, valid value range 0-59 inclusive. + * + * Bits 0-4: 2-second count, valid value range 0-29 inclusive (0 - 58 seconds). + * + * The valid time range is from Midnight 00:00:00 to 23:59:58. + */ +struct directoryEntry { + /** + * Short 8.3 name. + * The first eight bytes contain the file name with blank fill. + * The last three bytes contain the file extension with blank fill. + */ + uint8_t name[11]; + /** Entry attributes. + * + * The upper two bits of the attribute byte are reserved and should + * always be set to 0 when a file is created and never modified or + * looked at after that. See defines that begin with DIR_ATT_. + */ + uint8_t attributes; + /** + * Reserved for use by Windows NT. Set value to 0 when a file is + * created and never modify or look at it after that. + */ + uint8_t reservedNT; + /** + * The granularity of the seconds part of creationTime is 2 seconds + * so this field is a count of tenths of a second and its valid + * value range is 0-199 inclusive. (WHG note - seems to be hundredths) + */ + uint8_t creationTimeTenths; + /** Time file was created. */ + uint16_t creationTime; + /** Date file was created. */ + uint16_t creationDate; + /** + * Last access date. Note that there is no last access time, only + * a date. This is the date of last read or write. In the case of + * a write, this should be set to the same date as lastWriteDate. + */ + uint16_t lastAccessDate; + /** + * High word of this entry's first cluster number (always 0 for a + * FAT12 or FAT16 volume). + */ + uint16_t firstClusterHigh; + /** Time of last write. File creation is considered a write. */ + uint16_t lastWriteTime; + /** Date of last write. File creation is considered a write. */ + uint16_t lastWriteDate; + /** Low word of this entry's first cluster number. */ + uint16_t firstClusterLow; + /** 32-bit unsigned holding this file's size in bytes. */ + uint32_t fileSize; +}; +//------------------------------------------------------------------------------ +// Definitions for directory entries +// +/** Type name for directoryEntry */ +typedef struct directoryEntry dir_t; +/** escape for name[0] = 0XE5 */ +uint8_t const DIR_NAME_0XE5 = 0X05; +/** name[0] value for entry that is free after being "deleted" */ +uint8_t const DIR_NAME_DELETED = 0XE5; +/** name[0] value for entry that is free and no allocated entries follow */ +uint8_t const DIR_NAME_FREE = 0X00; +/** file is read-only */ +uint8_t const DIR_ATT_READ_ONLY = 0X01; +/** File should hidden in directory listings */ +uint8_t const DIR_ATT_HIDDEN = 0X02; +/** Entry is for a system file */ +uint8_t const DIR_ATT_SYSTEM = 0X04; +/** Directory entry contains the volume label */ +uint8_t const DIR_ATT_VOLUME_ID = 0X08; +/** Entry is for a directory */ +uint8_t const DIR_ATT_DIRECTORY = 0X10; +/** Old DOS archive bit for backup support */ +uint8_t const DIR_ATT_ARCHIVE = 0X20; +/** Test value for long name entry. Test is + (d->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME. */ +uint8_t const DIR_ATT_LONG_NAME = 0X0F; +/** Test mask for long name entry */ +uint8_t const DIR_ATT_LONG_NAME_MASK = 0X3F; +/** defined attribute bits */ +uint8_t const DIR_ATT_DEFINED_BITS = 0X3F; +/** Directory entry is part of a long name */ +static inline uint8_t DIR_IS_LONG_NAME(const dir_t* dir) { + return (dir->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME; +} +/** Mask for file/subdirectory tests */ +uint8_t const DIR_ATT_FILE_TYPE_MASK = (DIR_ATT_VOLUME_ID | DIR_ATT_DIRECTORY); +/** Directory entry is for a file */ +static inline uint8_t DIR_IS_FILE(const dir_t* dir) { + return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == 0; +} +/** Directory entry is for a subdirectory */ +static inline uint8_t DIR_IS_SUBDIR(const dir_t* dir) { + return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == DIR_ATT_DIRECTORY; +} +/** Directory entry is for a file or subdirectory */ +static inline uint8_t DIR_IS_FILE_OR_SUBDIR(const dir_t* dir) { + return (dir->attributes & DIR_ATT_VOLUME_ID) == 0; +} +#endif // FatStructs_h diff --git a/Marlin/Makefile b/Marlin/Makefile new file mode 100644 index 000000000..06e643d4a --- /dev/null +++ b/Marlin/Makefile @@ -0,0 +1,247 @@ +# Marlin Arduino Project Makefile +# +# Makefile Based on: +# Arduino 0011 Makefile +# Arduino adaptation by mellis, eighthave, oli.keller +# +# This has been tested with Arduino 0022. +# +# This makefile allows you to build sketches from the command line +# without the Arduino environment (or Java). +# +# Detailed instructions for using the makefile: +# +# 1. Modify the line containg "INSTALL_DIR" to point to the directory that +# contains the Arduino installation (for example, under Mac OS X, this +# might be /Applications/arduino-0012). +# +# 2. Modify the line containing "PORT" to refer to the filename +# representing the USB or serial connection to your Arduino board +# (e.g. PORT = /dev/tty.USB0). If the exact name of this file +# changes, you can use * as a wildcard (e.g. PORT = /dev/tty.usb*). +# +# 3. Set the line containing "MCU" to match your board's processor. +# Older one's are atmega8 based, newer ones like Arduino Mini, Bluetooth +# or Diecimila have the atmega168. If you're using a LilyPad Arduino, +# change F_CPU to 8000000. +# +# 4. Type "make" and press enter to compile/verify your program. +# +# 5. Type "make upload", reset your Arduino board, and press enter to +# upload your program to the Arduino board. +# +# $Id$ + +TARGET = Marlin +INSTALL_DIR = ../../Desktop/arduino-0018/ +UPLOAD_RATE = 38400 +AVRDUDE_PROGRAMMER = stk500v1 +PORT = /dev/ttyUSB0 +#MCU = atmega2560 +#For "old" Arduino Mega +#MCU = atmega1280 +#For Sanguinololu +MCU = atmega644p +F_CPU = 16000000 + + +############################################################################ +# Below here nothing should be changed... + +ARDUINO = $(INSTALL_DIR)/hardware/Sanguino/cores/arduino +AVR_TOOLS_PATH = $(INSTALL_DIR)/hardware/tools/avr/bin +SRC = $(ARDUINO)/pins_arduino.c wiring.c wiring_serial.c \ +$(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ +$(ARDUINO)/wiring_pulse.c \ +$(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c +CXXSRC = $(ARDUINO)/HardwareSerial.cpp $(ARDUINO)/WMath.cpp \ +$(ARDUINO)/Print.cpp ./SdFile.cpp ./SdVolume.cpp ./Sd2Card.cpp +FORMAT = ihex + + +# Name of this Makefile (used for "make depend"). +MAKEFILE = Makefile + +# Debugging format. +# Native formats for AVR-GCC's -g are stabs [default], or dwarf-2. +# AVR (extended) COFF requires stabs, plus an avr-objcopy run. +DEBUG = stabs + +OPT = s + +# Place -D or -U options here +CDEFS = -DF_CPU=$(F_CPU) +CXXDEFS = -DF_CPU=$(F_CPU) + +# Place -I options here +CINCS = -I$(ARDUINO) +CXXINCS = -I$(ARDUINO) + +# Compiler flag to set the C Standard level. +# c89 - "ANSI" C +# gnu89 - c89 plus GCC extensions +# c99 - ISO C99 standard (not yet fully implemented) +# gnu99 - c99 plus GCC extensions +#CSTANDARD = -std=gnu99 +CDEBUG = -g$(DEBUG) +CWARN = -Wall -Wunused-variable +CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -w -ffunction-sections -fdata-sections -DARDUINO=22 +#CEXTRA = -Wa,-adhlns=$(<:.c=.lst) + +CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CEXTRA) $(CTUNING) +CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) -Wall $(CEXTRA) $(CTUNING) +#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs +LDFLAGS = -lm + + +# Programming support using avrdude. Settings and variables. +AVRDUDE_PORT = $(PORT) +AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex:i +AVRDUDE_FLAGS = -D -C $(INSTALL_DIR)/hardware/tools/avrdude.conf \ +-p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ +-b $(UPLOAD_RATE) + +# Program settings +CC = $(AVR_TOOLS_PATH)/avr-gcc +CXX = $(AVR_TOOLS_PATH)/avr-g++ +OBJCOPY = $(AVR_TOOLS_PATH)/avr-objcopy +OBJDUMP = $(AVR_TOOLS_PATH)/avr-objdump +AR = $(AVR_TOOLS_PATH)/avr-ar +SIZE = $(AVR_TOOLS_PATH)/avr-size +NM = $(AVR_TOOLS_PATH)/avr-nm +AVRDUDE = $(INSTALL_DIR)/hardware/tools/avrdude +REMOVE = rm -f +MV = mv -f + +# Define all object files. +OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) + +# Define all listing files. +LST = $(ASRC:.S=.lst) $(CXXSRC:.cpp=.lst) $(SRC:.c=.lst) + +# Combine all necessary flags and optional flags. +# Add target processor to flags. +ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS) +ALL_CXXFLAGS = -mmcu=$(MCU) -I. $(CXXFLAGS) +ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) + + +# Default target. +all: applet_files_ez build sizeafter + +build: elf hex + +applet_files_ez: $(TARGET).pde + # Here is the "preprocessing". + # It creates a .cpp file based with the same name as the .pde file. + # On top of the new .cpp file comes the WProgram.h header. + # At the end there is a generic main() function attached. + # Then the .cpp file will be compiled. Errors during compile will + # refer to this new, automatically generated, file. + # Not the original .pde file you actually edit... + test -d applet || mkdir applet + echo '#include "WProgram.h"' > applet/$(TARGET).cpp + cat $(TARGET).pde >> applet/$(TARGET).cpp + cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp + +elf: applet/$(TARGET).elf +hex: applet/$(TARGET).hex +eep: applet/$(TARGET).eep +lss: applet/$(TARGET).lss +sym: applet/$(TARGET).sym + +# Program the device. +upload: applet/$(TARGET).hex + $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) + + + # Display size of file. +HEXSIZE = $(SIZE) --target=$(FORMAT) applet/$(TARGET).hex +ELFSIZE = $(SIZE) applet/$(TARGET).elf +sizebefore: + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi + +sizeafter: + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi + + +# Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. +COFFCONVERT=$(OBJCOPY) --debugging \ +--change-section-address .data-0x800000 \ +--change-section-address .bss-0x800000 \ +--change-section-address .noinit-0x800000 \ +--change-section-address .eeprom-0x810000 + + +coff: applet/$(TARGET).elf + $(COFFCONVERT) -O coff-avr applet/$(TARGET).elf $(TARGET).cof + + +extcoff: $(TARGET).elf + $(COFFCONVERT) -O coff-ext-avr applet/$(TARGET).elf $(TARGET).cof + + +.SUFFIXES: .elf .hex .eep .lss .sym + +.elf.hex: + $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ + +.elf.eep: + -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ + --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ + +# Create extended listing file from ELF output file. +.elf.lss: + $(OBJDUMP) -h -S $< > $@ + +# Create a symbol table from ELF output file. +.elf.sym: + $(NM) -n $< > $@ + + # Link: create ELF output file from library. +applet/$(TARGET).elf: $(TARGET).pde applet/core.a + $(CC) $(ALL_CFLAGS) -Wl,--gc-sections -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) + +applet/core.a: $(OBJ) + @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done + + + +# Compile: create object files from C++ source files. +.cpp.o: + $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ + +# Compile: create object files from C source files. +.c.o: + $(CC) -c $(ALL_CFLAGS) $< -o $@ + + +# Compile: create assembler files from C source files. +.c.s: + $(CC) -S $(ALL_CFLAGS) $< -o $@ + + +# Assemble: create object files from assembler source files. +.S.o: + $(CC) -c $(ALL_ASFLAGS) $< -o $@ + + + +# Target: clean project. +clean: + $(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ + applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ + $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) + +depend: + if grep '^# DO NOT DELETE' $(MAKEFILE) >/dev/null; \ + then \ + sed -e '/^# DO NOT DELETE/,$$d' $(MAKEFILE) > \ + $(MAKEFILE).$$$$ && \ + $(MV) $(MAKEFILE).$$$$ $(MAKEFILE); \ + fi + echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' \ + >> $(MAKEFILE); \ + $(CC) -M -mmcu=$(MCU) $(CDEFS) $(CINCS) $(SRC) $(ASRC) >> $(MAKEFILE) + +.PHONY: all build elf hex eep lss sym program coff extcoff clean depend applet_files sizebefore sizeafter diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h new file mode 100644 index 000000000..f0c339657 --- /dev/null +++ b/Marlin/Marlin.h @@ -0,0 +1,107 @@ +// Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. +// Licence: GPL +#include +#include "fastio.h" +extern "C" void __cxa_pure_virtual(); +void __cxa_pure_virtual(){}; +void get_command(); +void process_commands(); + +void manage_inactivity(byte debug); + +void manage_heater(); +int temp2analogu(int celsius, const short table[][2], int numtemps); +float analog2tempu(int raw, const short table[][2], int numtemps); +#ifdef HEATER_USES_THERMISTOR + #define HEATERSOURCE 1 +#endif +#ifdef BED_USES_THERMISTOR + #define BEDSOURCE 1 +#endif + +#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) +#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS) + +#if X_ENABLE_PIN > -1 +#define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) +#define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) +#else +#define enable_x() ; +#define disable_x() ; +#endif +#if Y_ENABLE_PIN > -1 +#define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) +#define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) +#else +#define enable_y() ; +#define disable_y() ; +#endif +#if Z_ENABLE_PIN > -1 +#define enable_z() WRITE(Z_ENABLE_PIN, Z_ENABLE_ON) +#define disable_z() WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON) +#else +#define enable_z() ; +#define disable_z() ; +#endif +#if E_ENABLE_PIN > -1 +#define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) +#define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) +#else +#define enable_e() ; +#define disable_e() ; +#endif + +#define X_AXIS 0 +#define Y_AXIS 1 +#define Z_AXIS 2 +#define E_AXIS 3 + +void FlushSerialRequestResend(); +void ClearToSend(); + +void get_coordinates(); +void prepare_move(); +void linear_move(unsigned long steps_remaining[]); +void do_step(int axis); +void kill(byte debug); + +// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in +// the source g-code and may never actually be reached if acceleration management is active. +typedef struct { + // Fields used by the bresenham algorithm for tracing the line + long steps_x, steps_y, steps_z, steps_e; // Step count along each axis + long step_event_count; // The number of step events required to complete this block + volatile long accelerate_until; // The index of the step event on which to stop acceleration + volatile long decelerate_after; // The index of the step event on which to start decelerating + volatile long acceleration_rate; // The acceleration rate used for acceleration calculation + unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) + + long advance_rate; + volatile long initial_advance; + volatile long final_advance; + float advance; + + // Fields used by the motion planner to manage acceleration + float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis + float nominal_speed; // The nominal speed for this block in mm/min + float millimeters; // The total travel of this block in mm + float entry_speed; + + // Settings for the trapezoid generator + long nominal_rate; // The nominal step rate for this block in step_events/sec + volatile long initial_rate; // The jerk-adjusted step rate at start of block + volatile long final_rate; // The minimal rate at exit + long acceleration; // acceleration mm/sec^2 + volatile char busy; +} block_t; + +void check_axes_activity(); +void plan_init(); +void st_init(); +void tp_init(); +void plan_buffer_line(float x, float y, float z, float e, float feed_rate); +void plan_set_position(float x, float y, float z, float e); +void st_wake_up(); +void st_synchronize(); + + diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde new file mode 100644 index 000000000..847ea1105 --- /dev/null +++ b/Marlin/Marlin.pde @@ -0,0 +1,2038 @@ +/* + Reprap firmware 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + This firmware is optimized for gen6 electronics. + */ + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "speed_lookuptable.h" + +char version_string[] = "0.9.0"; + +#ifdef SDSUPPORT +#include "SdFat.h" +#endif + +#ifndef CRITICAL_SECTION_START +#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli() +#define CRITICAL_SECTION_END SREG = _sreg +#endif + +// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html +// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes + +//Implemented Codes +//------------------- +// G0 -> G1 +// G1 - Coordinated Movement X Y Z E +// G4 - Dwell S or P +// G28 - Home all Axis +// G90 - Use Absolute Coordinates +// G91 - Use Relative Coordinates +// G92 - Set current position to cordinates given + +//RepRap M Codes +// M104 - Set extruder target temp +// M105 - Read current temp +// M106 - Fan on +// M107 - Fan off +// M109 - Wait for extruder current temp to reach target temp. +// M114 - Display current position + +//Custom M Codes +// M80 - Turn on Power Supply +// M20 - List SD card +// M21 - Init SD card +// M22 - Release SD card +// M23 - Select SD file (M23 filename.g) +// M24 - Start/resume SD print +// M25 - Pause SD print +// M26 - Set SD position in bytes (M26 S12345) +// M27 - Report SD print status +// M28 - Start SD write (M28 filename.g) +// M29 - Stop SD write +// M81 - Turn off Power Supply +// M82 - Set E codes absolute (default) +// M83 - Set E codes relative while in Absolute Coordinates (G90) mode +// M84 - Disable steppers until next move, +// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. +// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) +// M92 - Set axis_steps_per_unit - same syntax as G92 +// M115 - Capabilities string +// M140 - Set bed target temp +// M190 - Wait for bed current temp to reach target temp. +// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) +// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) +// M301 - Set PID parameters P I and D + +//Stepper Movement Variables + +char axis_codes[NUM_AXIS] = { + 'X', 'Y', 'Z', 'E'}; +float destination[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +bool home_all_axis = true; +long feedrate = 1500, next_feedrate, saved_feedrate; +long gcode_N, gcode_LastN; +bool relative_mode = false; //Determines Absolute or Relative Coordinates +bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. +unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +// comm variables +#define MAX_CMD_SIZE 96 +#define BUFSIZE 8 +char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; +bool fromsd[BUFSIZE]; +int bufindr = 0; +int bufindw = 0; +int buflen = 0; +int i = 0; +char serial_char; +int serial_count = 0; +boolean comment_mode = false; +char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc + +// Manage heater variables. + +int target_raw = 0; +int current_raw = 0; +unsigned char temp_meas_ready = false; + +#ifdef PIDTEMP + double temp_iState = 0; + double temp_dState = 0; + double pTerm; + double iTerm; + double dTerm; + //int output; + double pid_error; + double temp_iState_min; + double temp_iState_max; + double pid_setpoint = 0.0; + double pid_input; + double pid_output; + bool pid_reset; +#endif + +#ifdef WATCHPERIOD +int watch_raw = -1000; +unsigned long watchmillis = 0; +#endif +#ifdef MINTEMP +int minttemp = temp2analogh(MINTEMP); +#endif +#ifdef MAXTEMP +int maxttemp = temp2analogh(MAXTEMP); +#endif + +//Inactivity shutdown variables +unsigned long previous_millis_cmd = 0; +unsigned long max_inactive_time = 0; +unsigned long stepper_inactive_time = 0; + +#ifdef SDSUPPORT +Sd2Card card; +SdVolume volume; +SdFile root; +SdFile file; +uint32_t filesize = 0; +uint32_t sdpos = 0; +bool sdmode = false; +bool sdactive = false; +bool savetosd = false; +int16_t n; + +void initsd(){ + sdactive = false; +#if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)){ + //if (!card.init(SPI_HALF_SPEED,SDSS)) + Serial.println("SD init fail"); + } + else if (!volume.init(&card)) + Serial.println("volume.init failed"); + else if (!root.openRoot(&volume)) + Serial.println("openRoot failed"); + else + sdactive = true; +#endif +} + +inline void write_command(char *buf){ + char* begin = buf; + char* npos = 0; + 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'; + //Serial.println(begin); + file.write(begin); + if (file.writeError){ + Serial.println("error writing to file"); + } +} +#endif + + +void setup() +{ + Serial.begin(BAUDRATE); + Serial.print("Marlin "); + Serial.println(version_string); + Serial.println("start"); + + for(int i = 0; i < BUFSIZE; i++){ + fromsd[i] = false; + } + + //Initialize Dir Pins +#if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); +#endif +#if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); +#endif +#if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); +#endif +#if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); +#endif + + //Initialize Enable Pins - steppers default to disabled. + +#if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); +#endif +#if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); +#endif +#if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); +#endif +#if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); +#endif + + //endstops and pullups +#ifdef ENDSTOPPULLUPS +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); +#endif +#else +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); +#endif +#endif + +#if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); +#endif +#if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); +#endif + + //Initialize Step Pins +#if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); +#endif +#if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); +#endif +#if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); +#endif +#if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); +#endif + for(int i=0; i < NUM_AXIS; i++){ + axis_steps_per_sqr_second[i] = max_acceleration_units_per_sq_second[i] * axis_steps_per_unit[i]; + } + +#ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif //PIDTEMP + +#ifdef SDSUPPORT + //power to SD reader +#if SDPOWER > -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); +#endif + initsd(); + +#endif + plan_init(); // Initialize planner; + st_init(); // Initialize stepper; + tp_init(); // Initialize temperature loop +} + + +void loop() +{ + if(buflen<3) + get_command(); + + if(buflen){ +#ifdef SDSUPPORT + if(savetosd){ + if(strstr(cmdbuffer[bufindr],"M29") == NULL){ + write_command(cmdbuffer[bufindr]); + Serial.println("ok"); + } + else{ + file.sync(); + file.close(); + savetosd = false; + Serial.println("Done saving file."); + } + } + else{ + process_commands(); + } +#else + process_commands(); +#endif + buflen = (buflen-1); + bufindr = (bufindr + 1)%BUFSIZE; + } + //check heater every n milliseconds + manage_heater(); + manage_inactivity(1); +} + + +inline void get_command() +{ + while( Serial.available() > 0 && buflen < BUFSIZE) { + serial_char = Serial.read(); + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) + { + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = false; + if(strstr(cmdbuffer[bufindw], "N") != NULL) + { + strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); + gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); + if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { + Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); + Serial.println(gcode_LastN); + //Serial.println(gcode_N); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + if(strstr(cmdbuffer[bufindw], "*") != NULL) + { + byte checksum = 0; + byte count = 0; + while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; + strchr_pointer = strchr(cmdbuffer[bufindw], '*'); + + if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { + Serial.print("Error: checksum mismatch, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + //if no errors, continue parsing + } + else + { + Serial.print("Error: No Checksum with line number, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + gcode_LastN = gcode_N; + //if no errors, continue parsing + } + else // if we don't receive 'N' but still see '*' + { + if((strstr(cmdbuffer[bufindw], "*") != NULL)) + { + Serial.print("Error: No Line Number with checksum, Last Line:"); + Serial.println(gcode_LastN); + serial_count = 0; + return; + } + } + if((strstr(cmdbuffer[bufindw], "G") != NULL)){ + strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); + switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ + case 0: + case 1: +#ifdef SDSUPPORT + if(savetosd) + break; +#endif + Serial.println("ok"); + break; + default: + break; + } + + } + bufindw = (bufindw + 1)%BUFSIZE; + buflen += 1; + + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#ifdef SDSUPPORT + if(!sdmode || serial_count!=0){ + return; + } + while( filesize > sdpos && buflen < BUFSIZE) { + n = file.read(); + serial_char = (char)n; + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) + { + sdpos = file.curPosition(); + if(sdpos >= filesize){ + sdmode = false; + Serial.println("Done printing file"); + } + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = true; + buflen += 1; + bufindw = (bufindw + 1)%BUFSIZE; + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#endif + +} + + +inline float code_value() { + return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); +} +inline long code_value_long() { + return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); +} +inline bool code_seen(char code_string[]) { + return (strstr(cmdbuffer[bufindr], code_string) != NULL); +} //Return True if the string was found + +inline bool code_seen(char code) +{ + strchr_pointer = strchr(cmdbuffer[bufindr], code); + return (strchr_pointer != NULL); //Return True if a character was found +} + +inline void process_commands() +{ + unsigned long codenum; //throw away variable + char *starpos = NULL; + + if(code_seen('G')) + { + switch((int)code_value()) + { + case 0: // G0 -> G1 + case 1: // G1 + get_coordinates(); // For X Y Z E F + prepare_move(); + previous_millis_cmd = millis(); + //ClearToSend(); + return; + //break; + case 4: // G4 dwell + codenum = 0; + if(code_seen('P')) codenum = code_value(); // milliseconds to wait + if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait + codenum += millis(); // keep track of when we started waiting + while(millis() < codenum ){ + manage_heater(); + } + break; + case 28: //G28 Home all Axis one at a time + saved_feedrate = feedrate; + for(int i=0; i < NUM_AXIS; i++) { + destination[i] = current_position[i]; + } + feedrate = 0; + + home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); + + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { + if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ + st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]; + prepare_move(); + + st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = -5 * X_HOME_DIR; + prepare_move(); + + st_synchronize(); + destination[X_AXIS] = 10 * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]/2 ; + prepare_move(); + st_synchronize(); + + current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = current_position[X_AXIS]; + feedrate = 0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { + if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]; + prepare_move(); + st_synchronize(); + + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = -5 * Y_HOME_DIR; + prepare_move(); + st_synchronize(); + + destination[Y_AXIS] = 10 * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]/2; + prepare_move(); + st_synchronize(); + + current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = current_position[Y_AXIS]; + feedrate = 0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { + if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]; + prepare_move(); + st_synchronize(); + + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = -2 * Z_HOME_DIR; + prepare_move(); + st_synchronize(); + + destination[Z_AXIS] = 3 * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]/2; + prepare_move(); + st_synchronize(); + + current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = current_position[Z_AXIS]; + feedrate = 0; + } + } + feedrate = saved_feedrate; + previous_millis_cmd = millis(); + break; + case 90: // G90 + relative_mode = false; + break; + case 91: // G91 + relative_mode = true; + break; + case 92: // G92 + if(!code_seen(axis_codes[E_AXIS])) + st_synchronize(); + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) current_position[i] = code_value(); + } + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + break; + + } + } + + else if(code_seen('M')) + { + + switch( (int)code_value() ) + { +#ifdef SDSUPPORT + + case 20: // M20 - list SD card + Serial.println("Begin file list"); + root.ls(); + Serial.println("End file list"); + break; + case 21: // M21 - init SD card + sdmode = false; + initsd(); + break; + case 22: //M22 - release SD card + sdmode = false; + sdactive = false; + break; + case 23: //M23 - Select file + if(sdactive){ + sdmode = false; + file.close(); + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos!=NULL) + *(starpos-1)='\0'; + if (file.open(&root, strchr_pointer + 4, O_READ)) { + Serial.print("File opened:"); + Serial.print(strchr_pointer + 4); + Serial.print(" Size:"); + Serial.println(file.fileSize()); + sdpos = 0; + filesize = file.fileSize(); + Serial.println("File selected"); + } + else{ + Serial.println("file.open failed"); + } + } + break; + case 24: //M24 - Start SD print + if(sdactive){ + sdmode = true; + } + break; + case 25: //M25 - Pause SD print + if(sdmode){ + sdmode = false; + } + break; + case 26: //M26 - Set SD index + if(sdactive && code_seen('S')){ + sdpos = code_value_long(); + file.seekSet(sdpos); + } + break; + case 27: //M27 - Get SD status + if(sdactive){ + Serial.print("SD printing byte "); + Serial.print(sdpos); + Serial.print("/"); + Serial.println(filesize); + } + else{ + Serial.println("Not SD printing"); + } + break; + case 28: //M28 - Start SD write + if(sdactive){ + char* npos = 0; + file.close(); + sdmode = false; + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + { + Serial.print("open failed, File: "); + Serial.print(strchr_pointer + 4); + Serial.print("."); + } + else{ + savetosd = true; + Serial.print("Writing to file: "); + Serial.println(strchr_pointer + 4); + } + } + break; + case 29: //M29 - Stop SD write + //processed in write to file routine above + //savetosd = false; + break; +#endif + case 104: // M104 +#ifdef PID_OPENLOOP + if (code_seen('S')) PidTemp_Output = code_value() * (PID_MAX/100.0); + if(pid_output > PID_MAX) pid_output = PID_MAX; + if(pid_output < 0) pid_output = 0; +#else //PID_OPENLOOP + if (code_seen('S')) { + target_raw = temp2analogh(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEMP + } +#ifdef WATCHPERIOD + if(target_raw > current_raw){ + watchmillis = max(1,millis()); + watch_raw = current_raw; + } + else{ + watchmillis = 0; + } +#endif //WATCHPERIOD +#endif //PID_OPENLOOP + break; + case 105: // M105 + Serial.print("ok T:"); + Serial.println(analog2temp(current_raw)); + return; + //break; + case 109: // M109 - Wait for extruder heater to reach target. + if (code_seen('S')) target_raw = temp2analogh(code_value()); +#ifdef WATCHPERIOD + if(target_raw>current_raw){ + watchmillis = max(1,millis()); + watch_raw = current_raw; + } + else{ + watchmillis = 0; + } +#endif + codenum = millis(); + while(current_raw < target_raw) { + if( (millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + Serial.print("T:"); + Serial.println( analog2temp(current_raw)); + codenum = millis(); + } + manage_heater(); + } + break; + case 190: + break; + case 82: + axis_relative_modes[3] = false; + break; + case 83: + axis_relative_modes[3] = true; + break; + case 84: + if(code_seen('S')){ + stepper_inactive_time = code_value() * 1000; + } + else{ + st_synchronize(); + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + break; + case 85: // M85 + code_seen('S'); + max_inactive_time = code_value() * 1000; + break; + case 92: // M92 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); + } + + break; + case 115: // M115 + Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + break; + case 114: // M114 + Serial.print("X:"); + Serial.print(current_position[X_AXIS]); + Serial.print("Y:"); + Serial.print(current_position[Y_AXIS]); + Serial.print("Z:"); + Serial.print(current_position[Z_AXIS]); + Serial.print("E:"); + Serial.println(current_position[E_AXIS]); + break; + case 119: // M119 +#if (X_MIN_PIN > -1) + Serial.print("x_min:"); + Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (X_MAX_PIN > -1) + Serial.print("x_max:"); + Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MIN_PIN > -1) + Serial.print("y_min:"); + Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MAX_PIN > -1) + Serial.print("y_max:"); + Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MIN_PIN > -1) + Serial.print("z_min:"); + Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MAX_PIN > -1) + Serial.print("z_max:"); + Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif + Serial.println(""); + break; + //TODO: update for all axis, use for loop + case 201: // M201 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#if 0 // Not used for Sprinter/grbl gen6 + case 202: // M202 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#endif +#ifdef PIDTEMP + case 301: // M301 + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; + Serial.print("Kp ");Serial.println(Kp); + Serial.print("Ki ");Serial.println(Ki/PID_dT); + Serial.print("Kd ");Serial.println(Kd*PID_dT); + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + break; +#endif //PIDTEMP + } + } + else{ + Serial.println("Unknown command:"); + Serial.println(cmdbuffer[bufindr]); + } + + ClearToSend(); +} + +void FlushSerialRequestResend() +{ + //char cmdbuffer[bufindr][100]="Resend:"; + Serial.flush(); + Serial.print("Resend:"); + Serial.println(gcode_LastN + 1); + ClearToSend(); +} + +void ClearToSend() +{ + previous_millis_cmd = millis(); +#ifdef SDSUPPORT + if(fromsd[bufindr]) + return; +#endif + Serial.println("ok"); +} + +inline void get_coordinates() +{ + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60); + for(int i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} + +void manage_heater() +{ + float pid_input; + float pid_output; + if(temp_meas_ready != true) + return; + +CRITICAL_SECTION_START; + temp_meas_ready = false; +CRITICAL_SECTION_END; + +#ifdef PIDTEMP + pid_input = analog2temp(current_raw);//ACT + +#ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + #define K1 0.8 + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } +#endif //PID_OPENLOOP +#ifdef PID_DEBUG + Serial.print(" Input "); + Serial.print(pid_input); + Serial.print(" Output "); + Serial.print(pid_output); + Serial.print(" pTerm "); + Serial.print(pTerm); + Serial.print(" iTerm "); + Serial.print(iTerm); + Serial.print(" dTerm "); + Serial.print(dTerm); + Serial.println(); +#endif //PID_DEBUG + OCR2B = pid_output; +#endif +} + + +int temp2analogu(int celsius, const short table[][2], int numtemps) { + int raw = 0; + byte i; + + for (i=1; i raw) { + celsius = (float)table[i-1][1] + + (float)(raw - table[i-1][0]) * + (float)(table[i][1] - table[i-1][1]) / + (float)(table[i][0] - table[i-1][0]); + + break; + } + } + // Overflow: Set to last value in the table + if (i == numtemps) celsius = table[i-1][1]; + + return celsius; +} + + +inline void kill() +{ + target_raw=0; +#ifdef PIDTEMP + pid_setpoint = 0.0; +#endif PIDTEMP + OCR2B = 0; + WRITE(HEATER_0_PIN,LOW); + + disable_x(); + disable_y(); + disable_z(); + disable_e(); + +} + +inline void manage_inactivity(byte debug) { + if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); + if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + check_axes_activity(); +} + +// Planner + +/* + Reasoning behind the mathematics in this module (in the key of 'Mathematica'): + + s == speed, a == acceleration, t == time, d == distance + + Basic definitions: + + Speed[s_, a_, t_] := s + (a*t) + Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] + + Distance to reach a specific speed with a constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] + d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() + + Speed after a given distance of travel with constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] + m -> Sqrt[2 a d + s^2] + + DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] + + When to start braking (di) to reach a specified destionation speed (s2) after accelerating + from initial speed s1 without ever stopping at a plateau: + + Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] + di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() + + IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) + */ + + +// The number of linear motions that can be in the plan at any give time +#define BLOCK_BUFFER_SIZE 16 +#define BLOCK_BUFFER_MASK 0x0f + +static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instructions +static volatile unsigned char block_buffer_head; // Index of the next block to be pushed +static volatile unsigned char block_buffer_tail; // Index of the block to process now + +// The current position of the tool in absolute steps +static long position[4]; + +#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 + +// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the +// given acceleration: +inline long estimate_acceleration_distance(long initial_rate, long target_rate, long acceleration) { + return( + (target_rate*target_rate-initial_rate*initial_rate)/ + (2L*acceleration) + ); +} + +// This function gives you the point at which you must start braking (at the rate of -acceleration) if +// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after +// a total travel of distance. This can be used to compute the intersection point between acceleration and +// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) + +inline long intersection_distance(long initial_rate, long final_rate, long acceleration, long distance) { + return( + (2*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ + (4*acceleration) + ); +} + +// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. + +void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { + if(block->busy == true) return; // If block is busy then bail out. + float entry_factor = entry_speed / block->nominal_speed; + float exit_factor = exit_speed / block->nominal_speed; + long initial_rate = ceil(block->nominal_rate*entry_factor); + long final_rate = ceil(block->nominal_rate*exit_factor); + +#ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; +#endif // ADVANCE + + // Limit minimal step rate (Otherwise the timer will overflow.) + if(initial_rate <32) initial_rate=32; + if(final_rate < 32) final_rate=32; + + // Calculate the acceleration steps + long acceleration = block->acceleration; + long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); + long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); + + // Calculate the size of Plateau of Nominal Rate. + long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; + + // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will + // have to use intersection_distance() to calculate when to abort acceleration and start braking + // in order to reach the final_rate exactly at the end of this block. + if (plateau_steps < 0) { + accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); + plateau_steps = 0; + } + + long decelerate_after = accelerate_steps+plateau_steps; + long acceleration_rate = (long)((float)acceleration * 8.388608); + + CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section + if(block->busy == false) { // Don't update variables if block is busy. + block->accelerate_until = accelerate_steps; + block->decelerate_after = decelerate_after; + block->acceleration_rate = acceleration_rate; + block->initial_rate = initial_rate; + block->final_rate = final_rate; +#ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; +#endif ADVANCE + } + CRITICAL_SECTION_END; +} + +// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the +// acceleration within the allotted distance. +inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { + return( + sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) + ); +} + +// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. +// This method will calculate the junction jerk as the euclidean distance between the nominal +// velocities of the respective blocks. +inline float junction_jerk(block_t *before, block_t *after) { + return(sqrt( + pow((before->speed_x-after->speed_x), 2)+ + pow((before->speed_y-after->speed_y), 2)+ + pow((before->speed_z-after->speed_z)*axis_steps_per_unit[Z_AXIS]/axis_steps_per_unit[X_AXIS], 2)) + ); +} + +// Return the safe speed which is max_jerk/2, e.g. the +// speed under which you cannot exceed max_jerk no matter what you do. +float safe_speed(block_t *block) { + float safe_speed; + safe_speed = max_jerk/2; + if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; + return safe_speed; +} + +// The kernel called by planner_recalculate() when scanning the plan from last to first entry. +void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + + float entry_speed = current->nominal_speed; + float exit_factor; + float exit_speed; + if (next) { + exit_speed = next->entry_speed; + } + else { + exit_speed = safe_speed(current); + } + + // Calculate the entry_factor for the current block. + if (previous) { + // Reduce speed so that junction_jerk is within the maximum allowed + float jerk = junction_jerk(previous, current); + if((previous->steps_x == 0) && (previous->steps_y == 0)) { + entry_speed = safe_speed(current); + } + else if (jerk > max_jerk) { + entry_speed = (max_jerk/jerk) * entry_speed; + } + // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. + if (entry_speed > exit_speed) { + float max_entry_speed = max_allowable_speed(-acceleration,exit_speed, current->millimeters); + if (max_entry_speed < entry_speed) { + entry_speed = max_entry_speed; + } + } + } + else { + entry_speed = safe_speed(current); + } + // Store result + current->entry_speed = entry_speed; +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the reverse pass. +void planner_reverse_pass() { + char block_index = block_buffer_head; + block_t *block[3] = { + NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index--; + if(block_index < 0) { + block_index = BLOCK_BUFFER_SIZE-1; + } + block[2]= block[1]; + block[1]= block[0]; + block[0] = &block_buffer[block_index]; + planner_reverse_pass_kernel(block[0], block[1], block[2]); + } + planner_reverse_pass_kernel(NULL, block[0], block[1]); +} + +// The kernel called by planner_recalculate() when scanning the plan from first to last entry. +void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + if(previous) { + // If the previous block is an acceleration block, but it is not long enough to + // complete the full speed change within the block, we need to adjust out entry + // speed accordingly. Remember current->entry_factor equals the exit factor of + // the previous block. + if(previous->entry_speed < current->entry_speed) { + float max_entry_speed = max_allowable_speed(-acceleration, previous->entry_speed, previous->millimeters); + if (max_entry_speed < current->entry_speed) { + current->entry_speed = max_entry_speed; + } + } + } +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the forward pass. +void planner_forward_pass() { + char block_index = block_buffer_tail; + block_t *block[3] = { + NULL, NULL, NULL }; + + while(block_index != block_buffer_head) { + block[0] = block[1]; + block[1] = block[2]; + block[2] = &block_buffer[block_index]; + planner_forward_pass_kernel(block[0],block[1],block[2]); + block_index = (block_index+1) & BLOCK_BUFFER_MASK; + } + planner_forward_pass_kernel(block[1], block[2], NULL); +} + +// Recalculates the trapezoid speed profiles for all blocks in the plan according to the +// entry_factor for each junction. Must be called by planner_recalculate() after +// updating the blocks. +void planner_recalculate_trapezoids() { + char block_index = block_buffer_tail; + block_t *current; + block_t *next = NULL; + while(block_index != block_buffer_head) { + current = next; + next = &block_buffer[block_index]; + if (current) { + calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); + } + block_index = (block_index+1) & BLOCK_BUFFER_MASK; + } + calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); +} + +// Recalculates the motion plan according to the following algorithm: +// +// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) +// so that: +// a. The junction jerk is within the set limit +// b. No speed reduction within one block requires faster deceleration than the one, true constant +// acceleration. +// 2. Go over every block in chronological order and dial down junction speed reduction values if +// a. The speed increase within one block would require faster accelleration than the one, true +// constant acceleration. +// +// When these stages are complete all blocks have an entry_factor that will allow all speed changes to +// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than +// the set limit. Finally it will: +// +// 3. Recalculate trapezoids for all blocks. + +void planner_recalculate() { + planner_reverse_pass(); + planner_forward_pass(); + planner_recalculate_trapezoids(); +} + +void plan_init() { + block_buffer_head = 0; + block_buffer_tail = 0; + memset(position, 0, sizeof(position)); // clear position +} + + +inline void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & BLOCK_BUFFER_MASK; + } +} + +inline block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} + +void check_axes_activity() { + unsigned char x_active = 0; + unsigned char y_active = 0; + unsigned char z_active = 0; + unsigned char e_active = 0; + block_t *block; + + if(block_buffer_tail != block_buffer_head) { + char block_index = block_buffer_tail; + while(block_index != block_buffer_head) { + block = &block_buffer[block_index]; + if(block->steps_x != 0) x_active++; + if(block->steps_y != 0) y_active++; + if(block->steps_z != 0) z_active++; + if(block->steps_e != 0) e_active++; + block_index = (block_index+1) & BLOCK_BUFFER_MASK; + } + } + if((DISABLE_X) && (x_active == 0)) disable_x(); + if((DISABLE_Y) && (y_active == 0)) disable_y(); + if((DISABLE_Z) && (z_active == 0)) disable_z(); + if((DISABLE_E) && (e_active == 0)) disable_e(); +} + +// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in +// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration +// calculation the caller must also provide the physical length of the line in millimeters. +void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { + + // The target position of the tool in absolute steps + // Calculate target position in absolute steps + long target[4]; + target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + // Calculate the buffer head after we push this byte + int next_buffer_head = (block_buffer_head + 1) & BLOCK_BUFFER_MASK; + + // If the buffer is full: good! That means we are well ahead of the robot. + // Rest here until there is room in the buffer. + while(block_buffer_tail == next_buffer_head) { + manage_heater(); + manage_inactivity(1); + } + + // Prepare to set up new block + block_t *block = &block_buffer[block_buffer_head]; + + // Mark block as not busy (Not executed by the stepper interrupt) + block->busy = false; + + // Number of steps for each axis + block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); + block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); + block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); + block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); + + // Bail if this is a zero-length block + if (block->step_event_count == 0) { + return; + }; + + float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; + float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); + + unsigned long microseconds; + microseconds = lround((block->millimeters/feed_rate)*1000000); + + // Calculate speed in mm/minute for each axis + float multiplier = 60.0*1000000.0/microseconds; + block->speed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + + // Limit speed per axis + float speed_factor = 1; + float tmp_speed_factor; + if(abs(block->speed_x) > max_feedrate[X_AXIS]) { + speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_x); + } + if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ + tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ + tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); + if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_e) > max_feedrate[E_AXIS]){ + tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); + if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; + } + multiplier = multiplier * speed_factor; + block->speed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + + block->nominal_speed = block->millimeters * multiplier; + block->nominal_rate = ceil(block->step_event_count * multiplier / 60); + if(block->nominal_rate < 32) block->nominal_rate = 32; + block->entry_speed = safe_speed(block); + + // Compute the acceleration rate for the trapezoid generator. + float travel_per_step = block->millimeters/block->step_event_count; + if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { + block->acceleration = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + } + else { + block->acceleration = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + // Limit acceleration per axis + if((block->acceleration * block->steps_x / block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) + block->acceleration = axis_steps_per_sqr_second[X_AXIS]; + if((block->acceleration * block->steps_y / block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) + block->acceleration = axis_steps_per_sqr_second[Y_AXIS]; + if((block->acceleration * block->steps_e / block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) + block->acceleration = axis_steps_per_sqr_second[E_AXIS]; + if((block->acceleration * block->steps_z / block->step_event_count) > axis_steps_per_sqr_second[Z_AXIS]) + block->acceleration = axis_steps_per_sqr_second[Z_AXIS]; + } + +#ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { + block->advance_rate = 0; + block->advance = 0; + } + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } + +#endif // ADVANCE + + // compute a preliminary conservative acceleration trapezoid + float safespeed = safe_speed(block); + calculate_trapezoid_for_block(block, safespeed, safespeed); + + // Compute direction bits for this block + block->direction_bits = 0; + if (target[X_AXIS] < position[X_AXIS]) { + block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); + + // Move buffer head + block_buffer_head = next_buffer_head; + + // Update position + memcpy(position, target, sizeof(target)); // position[] = target[] + + planner_recalculate(); + st_wake_up(); +} + +void plan_set_position(float x, float y, float z, float e) +{ + position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); +} + +// Stepper + +// intRes = intIn1 * intIn2 >> 16 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 24 bit result +#define MultiU16X8toH16(intRes, charIn1, intIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %A1, %A2 \n\t" \ +"add %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r0 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (charIn1), \ +"d" (intIn2) \ +: \ +"r26" , "r27" \ +) + +// intRes = longIn1 * longIn2 >> 24 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 48bit result +#define MultiU24X24toH16(intRes, longIn1, longIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"mov r27, r1 \n\t" \ +"mul %B1, %C2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %C1, %C2 \n\t" \ +"add %B0, r0 \n\t" \ +"mul %C1, %B2 \n\t" \ +"add %A0, r0 \n\t" \ +"adc %B0, r1 \n\t" \ +"mul %A1, %C2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %B2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %C1, %A2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %A2 \n\t" \ +"add r27, r1 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r27 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (longIn1), \ +"d" (longIn2) \ +: \ +"r26" , "r27" \ +) + +// Some useful constants + +#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. +// The slope of acceleration is calculated with the leib ramp alghorithm. + +void st_wake_up() { + // TCNT1 = 0; + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + +inline unsigned short calc_timer(unsigned short step_rate) { + unsigned short timer; + if(step_rate < 32) step_rate = 32; + step_rate -= 32; // Correct for minimal speed + if(step_rate > (8*256)){ // higher step rate + unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; + unsigned char tmp_step_rate = (step_rate & 0x00ff); + unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); + MultiU16X8toH16(timer, tmp_step_rate, gain); + timer = (unsigned short)pgm_read_word_near(table_address) - timer; + } + else { // lower step rates + unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; + table_address += ((step_rate)>>1) & 0xfffc; + timer = (unsigned short)pgm_read_word_near(table_address); + timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); + } + if(timer < 100) timer = 100; + return timer; +} + +// Initializes the trapezoid generator from the current block. Called whenever a new +// block begins. +inline void trapezoid_generator_reset() { + accelerate_until = current_block->accelerate_until; + decelerate_after = current_block->decelerate_after; + acceleration_rate = current_block->acceleration_rate; + initial_rate = current_block->initial_rate; + final_rate = current_block->final_rate; + advance = current_block->initial_advance; + final_advance = current_block->final_advance; + deceleration_time = 0; + advance_rate = current_block->advance_rate; + // step_rate to timer interval + acc_step_rate = initial_rate; + acceleration_time = calc_timer(acc_step_rate); + OCR1A = acceleration_time; +} + +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +ISR(TIMER1_COMPA_vect) +{ + if(busy){ /*Serial.println("BUSY")*/; + return; + } // The busy-flag is used to avoid reentering this interrupt + + busy = true; + sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) + + // If there is no current block, attempt to pop one from the buffer + if (current_block == NULL) { + // Anything in the buffer? + current_block = plan_get_current_block(); + if (current_block != NULL) { + trapezoid_generator_reset(); + counter_x = -(current_block->step_event_count >> 1); + counter_y = counter_x; + counter_z = counter_x; + counter_e = counter_x; + step_events_completed = 0; + e_steps = 0; + } + else { + DISABLE_STEPPER_DRIVER_INTERRUPT(); + } + } + + if (current_block != NULL) { + // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt + out_bits = current_block->direction_bits; + +#ifdef ADVANCE + // Calculate E early. + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; +#endif //ADVANCE + + // Set direction en check limit switches + if ((out_bits & (1<step_event_count; + } + } + else // +direction + WRITE(X_DIR_PIN,!INVERT_X_DIR); + + if ((out_bits & (1<step_event_count; + } + } + else // +direction + WRITE(Y_DIR_PIN,!INVERT_Y_DIR); + + if ((out_bits & (1<step_event_count; + } + } + else // +direction + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + +#ifndef ADVANCE + if ((out_bits & (1<steps_x; + if (counter_x > 0) { + WRITE(X_STEP_PIN, HIGH); + counter_x -= current_block->step_event_count; + WRITE(X_STEP_PIN, LOW); + } + + counter_y += current_block->steps_y; + if (counter_y > 0) { + WRITE(Y_STEP_PIN, HIGH); + counter_y -= current_block->step_event_count; + WRITE(Y_STEP_PIN, LOW); + } + + counter_z += current_block->steps_z; + if (counter_z > 0) { + WRITE(Z_STEP_PIN, HIGH); + counter_z -= current_block->step_event_count; + WRITE(Z_STEP_PIN, LOW); + } + +#ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } +#endif //!ADVANCE + + // Calculare new timer value + unsigned short timer; + unsigned short step_rate; + if (step_events_completed < accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, acceleration_rate); + acc_step_rate += initial_rate; + + // upper limit + if(acc_step_rate > current_block->nominal_rate) + acc_step_rate = current_block->nominal_rate; + + // step_rate to timer interval + timer = calc_timer(acc_step_rate); + advance += advance_rate; + acceleration_time += timer; + OCR1A = timer; + } + else if (step_events_completed > decelerate_after) { + MultiU24X24toH16(step_rate, deceleration_time, acceleration_rate); + + if(step_rate > acc_step_rate) { // Check step_rate stays positive + step_rate = final_rate; + } + else { + step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. + } + + // lower limit + if(step_rate < final_rate) + step_rate = final_rate; + + // step_rate to timer interval + timer = calc_timer(step_rate); +#ifdef ADVANCE + advance -= advance_rate; + if(advance < final_advance) + advance = final_advance; +#endif //ADVANCE + deceleration_time += timer; + OCR1A = timer; + } + // If current block is finished, reset pointer + step_events_completed += 1; + if (step_events_completed >= current_block->step_event_count) { + current_block = NULL; + plan_discard_current_block(); + } + } + busy=false; +} + +#ifdef ADVANCE + +unsigned char old_OCR0A; +// Timer interrupt for E. e_steps is set in the main routine; +// Timer 0 is shared with millies +ISR(TIMER0_COMPA_vect) +{ + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // e_steps is changed in timer 1 interrupt + CRITICAL_SECTION_START; + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + CRITICAL_SECTION_END; + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; +} +#endif // ADVANCE + +void st_init() +{ + // waveform generation = 0100 = CTC + TCCR1B &= ~(1<= 16) + { + current_raw = 16383 - raw_temp_value; + temp_meas_ready = true; + temp_count = 0; + raw_temp_value = 0; +#ifdef MAXTEMP + if(current_raw >= maxttemp) { + target_raw = 0; +#ifdef PIDTEMP + OCR2B = 0; +#else + WRITE(HEATER_0_PIN,LOW); +#endif + } +#endif +#ifdef MINTEMP + if(current_raw <= minttemp) { + target_raw = 0; +#ifdef PIDTEMP + OCR2B = 0; +#else + WRITE(HEATER_0_PIN,LOW); +#endif + } +#endif +#ifndef PIDTEMP + if(current_raw >= target_raw) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } +#endif + } +} + + diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp new file mode 100644 index 000000000..62c115917 --- /dev/null +++ b/Marlin/Sd2Card.cpp @@ -0,0 +1,643 @@ +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#include +#include "Sd2Card.h" +//------------------------------------------------------------------------------ +#ifndef SOFTWARE_SPI +// functions for hardware SPI +/** Send a byte to the card */ +static void spiSend(uint8_t b) { + SPDR = b; + while (!(SPSR & (1 << SPIF))); +} +/** Receive a byte from the card */ +static uint8_t spiRec(void) { + spiSend(0XFF); + return SPDR; +} +#else // SOFTWARE_SPI +//------------------------------------------------------------------------------ +/** nop to tune soft SPI timing */ +#define nop asm volatile ("nop\n\t") +//------------------------------------------------------------------------------ +/** Soft SPI receive */ +uint8_t spiRec(void) { + uint8_t data = 0; + // no interrupts during byte receive - about 8 us + cli(); + // output pin high - like sending 0XFF + fastDigitalWrite(SPI_MOSI_PIN, HIGH); + + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, HIGH); + + // adjust so SCK is nice + nop; + nop; + + data <<= 1; + + if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + } + // enable interrupts + sei(); + return data; +} +//------------------------------------------------------------------------------ +/** Soft SPI send */ +void spiSend(uint8_t data) { + // no interrupts during byte send - about 8 us + cli(); + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, LOW); + + fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); + + data <<= 1; + + fastDigitalWrite(SPI_SCK_PIN, HIGH); + } + // hold SCK high for a few ns + nop; + nop; + nop; + nop; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + // enable interrupts + sei(); +} +#endif // SOFTWARE_SPI +//------------------------------------------------------------------------------ +// send command and return error code. Return zero for OK +uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { + // end read if in partialBlockRead mode + readEnd(); + + // select card + chipSelectLow(); + + // wait up to 300 ms if busy + waitNotBusy(300); + + // send command + spiSend(cmd | 0x40); + + // send argument + for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); + + // send CRC + uint8_t crc = 0XFF; + if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 + if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA + spiSend(crc); + + // wait for response + for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); + return status_; +} +//------------------------------------------------------------------------------ +/** + * Determine the size of an SD flash memory card. + * + * \return The number of 512 byte data blocks in the card + * or zero if an error occurs. + */ +uint32_t Sd2Card::cardSize(void) { + csd_t csd; + if (!readCSD(&csd)) return 0; + if (csd.v1.csd_ver == 0) { + uint8_t read_bl_len = csd.v1.read_bl_len; + uint16_t c_size = (csd.v1.c_size_high << 10) + | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; + uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) + | csd.v1.c_size_mult_low; + return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); + } else if (csd.v2.csd_ver == 1) { + uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) + | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; + return (c_size + 1) << 10; + } else { + error(SD_CARD_ERROR_BAD_CSD); + return 0; + } +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectHigh(void) { + digitalWrite(chipSelectPin_, HIGH); +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectLow(void) { + digitalWrite(chipSelectPin_, LOW); +} +//------------------------------------------------------------------------------ +/** Erase a range of blocks. + * + * \param[in] firstBlock The address of the first block in the range. + * \param[in] lastBlock The address of the last block in the range. + * + * \note This function requests the SD card to do a flash erase for a + * range of blocks. The data on the card after an erase operation is + * either 0 or 1, depends on the card vendor. The card must support + * single block erase. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { + if (!eraseSingleBlockEnable()) { + error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); + goto fail; + } + if (type_ != SD_CARD_TYPE_SDHC) { + firstBlock <<= 9; + lastBlock <<= 9; + } + if (cardCommand(CMD32, firstBlock) + || cardCommand(CMD33, lastBlock) + || cardCommand(CMD38, 0)) { + error(SD_CARD_ERROR_ERASE); + goto fail; + } + if (!waitNotBusy(SD_ERASE_TIMEOUT)) { + error(SD_CARD_ERROR_ERASE_TIMEOUT); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Determine if card supports single block erase. + * + * \return The value one, true, is returned if single block erase is supported. + * The value zero, false, is returned if single block erase is not supported. + */ +uint8_t Sd2Card::eraseSingleBlockEnable(void) { + csd_t csd; + return readCSD(&csd) ? csd.v1.erase_blk_en : 0; +} +//------------------------------------------------------------------------------ +/** + * Initialize an SD flash memory card. + * + * \param[in] sckRateID SPI clock rate selector. See setSckRate(). + * \param[in] chipSelectPin SD chip select pin number. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. The reason for failure + * can be determined by calling errorCode() and errorData(). + */ +uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { + errorCode_ = inBlock_ = partialBlockRead_ = type_ = 0; + chipSelectPin_ = chipSelectPin; + // 16-bit init start time allows over a minute + uint16_t t0 = (uint16_t)millis(); + uint32_t arg; + + // set pin modes + pinMode(chipSelectPin_, OUTPUT); + chipSelectHigh(); + pinMode(SPI_MISO_PIN, INPUT); + pinMode(SPI_MOSI_PIN, OUTPUT); + pinMode(SPI_SCK_PIN, OUTPUT); + +#ifndef SOFTWARE_SPI + // SS must be in output mode even it is not chip select + pinMode(SS_PIN, OUTPUT); + // Enable SPI, Master, clock rate f_osc/128 + SPCR = (1 << SPE) | (1 << MSTR) | (1 << SPR1) | (1 << SPR0); + // clear double speed + SPSR &= ~(1 << SPI2X); +#endif // SOFTWARE_SPI + + // must supply min of 74 clock cycles with CS high. + for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); + + chipSelectLow(); + + // command to go idle in SPI mode + while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_CMD0); + goto fail; + } + } + // check SD version + if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { + type(SD_CARD_TYPE_SD1); + } else { + // only need last byte of r7 response + for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); + if (status_ != 0XAA) { + error(SD_CARD_ERROR_CMD8); + goto fail; + } + type(SD_CARD_TYPE_SD2); + } + // initialize card and send host supports SDHC if SD2 + arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; + + while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { + // check for timeout + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_ACMD41); + goto fail; + } + } + // if SD2 read OCR register to check for SDHC card + if (type() == SD_CARD_TYPE_SD2) { + if (cardCommand(CMD58, 0)) { + error(SD_CARD_ERROR_CMD58); + goto fail; + } + if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); + // discard rest of ocr - contains allowed voltage range + for (uint8_t i = 0; i < 3; i++) spiRec(); + } + chipSelectHigh(); + +#ifndef SOFTWARE_SPI + return setSckRate(sckRateID); +#else // SOFTWARE_SPI + return true; +#endif // SOFTWARE_SPI + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Enable or disable partial block reads. + * + * Enabling partial block reads improves performance by allowing a block + * to be read over the SPI bus as several sub-blocks. Errors may occur + * if the time between reads is too long since the SD card may timeout. + * The SPI SS line will be held low until the entire block is read or + * readEnd() is called. + * + * Use this for applications like the Adafruit Wave Shield. + * + * \param[in] value The value TRUE (non-zero) or FALSE (zero).) + */ +void Sd2Card::partialBlockRead(uint8_t value) { + readEnd(); + partialBlockRead_ = value; +} +//------------------------------------------------------------------------------ +/** + * Read a 512 byte block from an SD card device. + * + * \param[in] block Logical block to be read. + * \param[out] dst Pointer to the location that will receive the data. + + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::readBlock(uint32_t block, uint8_t* dst) { + return readData(block, 0, 512, dst); +} +//------------------------------------------------------------------------------ +/** + * Read part of a 512 byte block from an SD card. + * + * \param[in] block Logical block to be read. + * \param[in] offset Number of bytes to skip at start of block + * \param[out] dst Pointer to the location that will receive the data. + * \param[in] count Number of bytes to read + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::readData(uint32_t block, + uint16_t offset, uint16_t count, uint8_t* dst) { + uint16_t n; + if (count == 0) return true; + if ((count + offset) > 512) { + goto fail; + } + if (!inBlock_ || block != block_ || offset < offset_) { + block_ = block; + // use address if not SDHC card + if (type()!= SD_CARD_TYPE_SDHC) block <<= 9; + if (cardCommand(CMD17, block)) { + error(SD_CARD_ERROR_CMD17); + goto fail; + } + if (!waitStartBlock()) { + goto fail; + } + offset_ = 0; + inBlock_ = 1; + } + +#ifdef OPTIMIZE_HARDWARE_SPI + // start first spi transfer + SPDR = 0XFF; + + // skip data before offset + for (;offset_ < offset; offset_++) { + while (!(SPSR & (1 << SPIF))); + SPDR = 0XFF; + } + // transfer data + n = count - 1; + for (uint16_t i = 0; i < n; i++) { + while (!(SPSR & (1 << SPIF))); + dst[i] = SPDR; + SPDR = 0XFF; + } + // wait for last byte + while (!(SPSR & (1 << SPIF))); + dst[n] = SPDR; + +#else // OPTIMIZE_HARDWARE_SPI + + // skip data before offset + for (;offset_ < offset; offset_++) { + spiRec(); + } + // transfer data + for (uint16_t i = 0; i < count; i++) { + dst[i] = spiRec(); + } +#endif // OPTIMIZE_HARDWARE_SPI + + offset_ += count; + if (!partialBlockRead_ || offset_ >= 512) { + // read rest of data, checksum and set chip select high + readEnd(); + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Skip remaining data in a block when in partial block read mode. */ +void Sd2Card::readEnd(void) { + if (inBlock_) { + // skip data and crc +#ifdef OPTIMIZE_HARDWARE_SPI + // optimize skip for hardware + SPDR = 0XFF; + while (offset_++ < 513) { + while (!(SPSR & (1 << SPIF))); + SPDR = 0XFF; + } + // wait for last crc byte + while (!(SPSR & (1 << SPIF))); +#else // OPTIMIZE_HARDWARE_SPI + while (offset_++ < 514) spiRec(); +#endif // OPTIMIZE_HARDWARE_SPI + chipSelectHigh(); + inBlock_ = 0; + } +} +//------------------------------------------------------------------------------ +/** read CID or CSR register */ +uint8_t Sd2Card::readRegister(uint8_t cmd, void* buf) { + uint8_t* dst = reinterpret_cast(buf); + if (cardCommand(cmd, 0)) { + error(SD_CARD_ERROR_READ_REG); + goto fail; + } + if (!waitStartBlock()) goto fail; + // transfer data + for (uint16_t i = 0; i < 16; i++) dst[i] = spiRec(); + spiRec(); // get first crc byte + spiRec(); // get second crc byte + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Set the SPI clock rate. + * + * \param[in] sckRateID A value in the range [0, 6]. + * + * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum + * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 + * for \a scsRateID = 6. + * + * \return The value one, true, is returned for success and the value zero, + * false, is returned for an invalid value of \a sckRateID. + */ +uint8_t Sd2Card::setSckRate(uint8_t sckRateID) { + if (sckRateID > 6) { + error(SD_CARD_ERROR_SCK_RATE); + return false; + } + // see avr processor datasheet for SPI register bit definitions + if ((sckRateID & 1) || sckRateID == 6) { + SPSR &= ~(1 << SPI2X); + } else { + SPSR |= (1 << SPI2X); + } + SPCR &= ~((1 < SD_READ_TIMEOUT) { + error(SD_CARD_ERROR_READ_TIMEOUT); + goto fail; + } + } + if (status_ != DATA_START_BLOCK) { + error(SD_CARD_ERROR_READ); + goto fail; + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Writes a 512 byte block to an SD card. + * + * \param[in] blockNumber Logical block to be written. + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { +#if SD_PROTECT_BLOCK_ZERO + // don't allow write to first block + if (blockNumber == 0) { + error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); + goto fail; + } +#endif // SD_PROTECT_BLOCK_ZERO + + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD24, blockNumber)) { + error(SD_CARD_ERROR_CMD24); + goto fail; + } + if (!writeData(DATA_START_BLOCK, src)) goto fail; + + // wait for flash programming to complete + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_TIMEOUT); + goto fail; + } + // response is r2 so get and check two bytes for nonzero + if (cardCommand(CMD13, 0) || spiRec()) { + error(SD_CARD_ERROR_WRITE_PROGRAMMING); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Write one data block in a multiple block write sequence */ +uint8_t Sd2Card::writeData(const uint8_t* src) { + // wait for previous write to finish + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_MULTIPLE); + chipSelectHigh(); + return false; + } + return writeData(WRITE_MULTIPLE_TOKEN, src); +} +//------------------------------------------------------------------------------ +// send one block of data for write block or write multiple blocks +uint8_t Sd2Card::writeData(uint8_t token, const uint8_t* src) { +#ifdef OPTIMIZE_HARDWARE_SPI + + // send data - optimized loop + SPDR = token; + + // send two byte per iteration + for (uint16_t i = 0; i < 512; i += 2) { + while (!(SPSR & (1 << SPIF))); + SPDR = src[i]; + while (!(SPSR & (1 << SPIF))); + SPDR = src[i+1]; + } + + // wait for last data byte + while (!(SPSR & (1 << SPIF))); + +#else // OPTIMIZE_HARDWARE_SPI + spiSend(token); + for (uint16_t i = 0; i < 512; i++) { + spiSend(src[i]); + } +#endif // OPTIMIZE_HARDWARE_SPI + spiSend(0xff); // dummy crc + spiSend(0xff); // dummy crc + + status_ = spiRec(); + if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { + error(SD_CARD_ERROR_WRITE); + chipSelectHigh(); + return false; + } + return true; +} +//------------------------------------------------------------------------------ +/** Start a write multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * \param[in] eraseCount The number of blocks to be pre-erased. + * + * \note This function is used with writeData() and writeStop() + * for optimized multiple block writes. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { +#if SD_PROTECT_BLOCK_ZERO + // don't allow write to first block + if (blockNumber == 0) { + error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); + goto fail; + } +#endif // SD_PROTECT_BLOCK_ZERO + // send pre-erase count + if (cardAcmd(ACMD23, eraseCount)) { + error(SD_CARD_ERROR_ACMD23); + goto fail; + } + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD25, blockNumber)) { + error(SD_CARD_ERROR_CMD25); + goto fail; + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a write multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::writeStop(void) { + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + spiSend(STOP_TRAN_TOKEN); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_STOP_TRAN); + chipSelectHigh(); + return false; +} diff --git a/Marlin/Sd2Card.h b/Marlin/Sd2Card.h new file mode 100644 index 000000000..9160c3d7a --- /dev/null +++ b/Marlin/Sd2Card.h @@ -0,0 +1,233 @@ +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#ifndef Sd2Card_h +#define Sd2Card_h +/** + * \file + * Sd2Card class + */ +#include "Sd2PinMap.h" +#include "SdInfo.h" +/** Set SCK to max rate of F_CPU/2. See Sd2Card::setSckRate(). */ +uint8_t const SPI_FULL_SPEED = 0; +/** Set SCK rate to F_CPU/4. See Sd2Card::setSckRate(). */ +uint8_t const SPI_HALF_SPEED = 1; +/** Set SCK rate to F_CPU/8. Sd2Card::setSckRate(). */ +uint8_t const SPI_QUARTER_SPEED = 2; +/** + * Define MEGA_SOFT_SPI non-zero to use software SPI on Mega Arduinos. + * Pins used are SS 10, MOSI 11, MISO 12, and SCK 13. + * + * MEGA_SOFT_SPI allows an unmodified Adafruit GPS Shield to be used + * on Mega Arduinos. Software SPI works well with GPS Shield V1.1 + * but many SD cards will fail with GPS Shield V1.0. + */ +#define MEGA_SOFT_SPI 0 +//------------------------------------------------------------------------------ +#if MEGA_SOFT_SPI && (defined(__AVR_ATmega1280__)||defined(__AVR_ATmega2560__)) +#define SOFTWARE_SPI +#endif // MEGA_SOFT_SPI +//------------------------------------------------------------------------------ +// SPI pin definitions +// +#ifndef SOFTWARE_SPI +// hardware pin defs +/** + * SD Chip Select pin + * + * Warning if this pin is redefined the hardware SS will pin will be enabled + * as an output by init(). An avr processor will not function as an SPI + * master unless SS is set to output mode. + */ +/** The default chip select pin for the SD card is SS. */ +uint8_t const SD_CHIP_SELECT_PIN = SS_PIN; +// The following three pins must not be redefined for hardware SPI. +/** SPI Master Out Slave In pin */ +uint8_t const SPI_MOSI_PIN = MOSI_PIN; +/** SPI Master In Slave Out pin */ +uint8_t const SPI_MISO_PIN = MISO_PIN; +/** SPI Clock pin */ +uint8_t const SPI_SCK_PIN = SCK_PIN; +/** optimize loops for hardware SPI */ +#define OPTIMIZE_HARDWARE_SPI + +#else // SOFTWARE_SPI +// define software SPI pins so Mega can use unmodified GPS Shield +/** SPI chip select pin */ +uint8_t const SD_CHIP_SELECT_PIN = 10; +/** SPI Master Out Slave In pin */ +uint8_t const SPI_MOSI_PIN = 11; +/** SPI Master In Slave Out pin */ +uint8_t const SPI_MISO_PIN = 12; +/** SPI Clock pin */ +uint8_t const SPI_SCK_PIN = 13; +#endif // SOFTWARE_SPI +//------------------------------------------------------------------------------ +/** Protect block zero from write if nonzero */ +#define SD_PROTECT_BLOCK_ZERO 1 +/** init timeout ms */ +uint16_t const SD_INIT_TIMEOUT = 2000; +/** erase timeout ms */ +uint16_t const SD_ERASE_TIMEOUT = 10000; +/** read timeout ms */ +uint16_t const SD_READ_TIMEOUT = 300; +/** write time out ms */ +uint16_t const SD_WRITE_TIMEOUT = 600; +//------------------------------------------------------------------------------ +// SD card errors +/** timeout error for command CMD0 */ +uint8_t const SD_CARD_ERROR_CMD0 = 0X1; +/** CMD8 was not accepted - not a valid SD card*/ +uint8_t const SD_CARD_ERROR_CMD8 = 0X2; +/** card returned an error response for CMD17 (read block) */ +uint8_t const SD_CARD_ERROR_CMD17 = 0X3; +/** card returned an error response for CMD24 (write block) */ +uint8_t const SD_CARD_ERROR_CMD24 = 0X4; +/** WRITE_MULTIPLE_BLOCKS command failed */ +uint8_t const SD_CARD_ERROR_CMD25 = 0X05; +/** card returned an error response for CMD58 (read OCR) */ +uint8_t const SD_CARD_ERROR_CMD58 = 0X06; +/** SET_WR_BLK_ERASE_COUNT failed */ +uint8_t const SD_CARD_ERROR_ACMD23 = 0X07; +/** card's ACMD41 initialization process timeout */ +uint8_t const SD_CARD_ERROR_ACMD41 = 0X08; +/** card returned a bad CSR version field */ +uint8_t const SD_CARD_ERROR_BAD_CSD = 0X09; +/** erase block group command failed */ +uint8_t const SD_CARD_ERROR_ERASE = 0X0A; +/** card not capable of single block erase */ +uint8_t const SD_CARD_ERROR_ERASE_SINGLE_BLOCK = 0X0B; +/** Erase sequence timed out */ +uint8_t const SD_CARD_ERROR_ERASE_TIMEOUT = 0X0C; +/** card returned an error token instead of read data */ +uint8_t const SD_CARD_ERROR_READ = 0X0D; +/** read CID or CSD failed */ +uint8_t const SD_CARD_ERROR_READ_REG = 0X0E; +/** timeout while waiting for start of read data */ +uint8_t const SD_CARD_ERROR_READ_TIMEOUT = 0X0F; +/** card did not accept STOP_TRAN_TOKEN */ +uint8_t const SD_CARD_ERROR_STOP_TRAN = 0X10; +/** card returned an error token as a response to a write operation */ +uint8_t const SD_CARD_ERROR_WRITE = 0X11; +/** attempt to write protected block zero */ +uint8_t const SD_CARD_ERROR_WRITE_BLOCK_ZERO = 0X12; +/** card did not go ready for a multiple block write */ +uint8_t const SD_CARD_ERROR_WRITE_MULTIPLE = 0X13; +/** card returned an error to a CMD13 status check after a write */ +uint8_t const SD_CARD_ERROR_WRITE_PROGRAMMING = 0X14; +/** timeout occurred during write programming */ +uint8_t const SD_CARD_ERROR_WRITE_TIMEOUT = 0X15; +/** incorrect rate selected */ +uint8_t const SD_CARD_ERROR_SCK_RATE = 0X16; +//------------------------------------------------------------------------------ +// card types +/** Standard capacity V1 SD card */ +uint8_t const SD_CARD_TYPE_SD1 = 1; +/** Standard capacity V2 SD card */ +uint8_t const SD_CARD_TYPE_SD2 = 2; +/** High Capacity SD card */ +uint8_t const SD_CARD_TYPE_SDHC = 3; +//------------------------------------------------------------------------------ +/** + * \class Sd2Card + * \brief Raw access to SD and SDHC flash memory cards. + */ +class Sd2Card { + public: + /** Construct an instance of Sd2Card. */ + Sd2Card(void) : errorCode_(0), inBlock_(0), partialBlockRead_(0), type_(0) {} + uint32_t cardSize(void); + uint8_t erase(uint32_t firstBlock, uint32_t lastBlock); + uint8_t eraseSingleBlockEnable(void); + /** + * \return error code for last error. See Sd2Card.h for a list of error codes. + */ + uint8_t errorCode(void) const {return errorCode_;} + /** \return error data for last error. */ + uint8_t errorData(void) const {return status_;} + /** + * Initialize an SD flash memory card with default clock rate and chip + * select pin. See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). + */ + uint8_t init(void) { + return init(SPI_FULL_SPEED, SD_CHIP_SELECT_PIN); + } + /** + * Initialize an SD flash memory card with the selected SPI clock rate + * and the default SD chip select pin. + * See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). + */ + uint8_t init(uint8_t sckRateID) { + return init(sckRateID, SD_CHIP_SELECT_PIN); + } + uint8_t init(uint8_t sckRateID, uint8_t chipSelectPin); + void partialBlockRead(uint8_t value); + /** Returns the current value, true or false, for partial block read. */ + uint8_t partialBlockRead(void) const {return partialBlockRead_;} + uint8_t readBlock(uint32_t block, uint8_t* dst); + uint8_t readData(uint32_t block, + uint16_t offset, uint16_t count, uint8_t* dst); + /** + * Read a cards CID register. The CID contains card identification + * information such as Manufacturer ID, Product name, Product serial + * number and Manufacturing date. */ + uint8_t readCID(cid_t* cid) { + return readRegister(CMD10, cid); + } + /** + * Read a cards CSD register. The CSD contains Card-Specific Data that + * provides information regarding access to the card's contents. */ + uint8_t readCSD(csd_t* csd) { + return readRegister(CMD9, csd); + } + void readEnd(void); + uint8_t setSckRate(uint8_t sckRateID); + /** Return the card type: SD V1, SD V2 or SDHC */ + uint8_t type(void) const {return type_;} + uint8_t writeBlock(uint32_t blockNumber, const uint8_t* src); + uint8_t writeData(const uint8_t* src); + uint8_t writeStart(uint32_t blockNumber, uint32_t eraseCount); + uint8_t writeStop(void); + private: + uint32_t block_; + uint8_t chipSelectPin_; + uint8_t errorCode_; + uint8_t inBlock_; + uint16_t offset_; + uint8_t partialBlockRead_; + uint8_t status_; + uint8_t type_; + // private functions + uint8_t cardAcmd(uint8_t cmd, uint32_t arg) { + cardCommand(CMD55, 0); + return cardCommand(cmd, arg); + } + uint8_t cardCommand(uint8_t cmd, uint32_t arg); + void error(uint8_t code) {errorCode_ = code;} + uint8_t readRegister(uint8_t cmd, void* buf); + uint8_t sendWriteCommand(uint32_t blockNumber, uint32_t eraseCount); + void chipSelectHigh(void); + void chipSelectLow(void); + void type(uint8_t value) {type_ = value;} + uint8_t waitNotBusy(uint16_t timeoutMillis); + uint8_t writeData(uint8_t token, const uint8_t* src); + uint8_t waitStartBlock(void); +}; +#endif // Sd2Card_h diff --git a/Marlin/Sd2PinMap.h b/Marlin/Sd2PinMap.h new file mode 100644 index 000000000..bba0dd027 --- /dev/null +++ b/Marlin/Sd2PinMap.h @@ -0,0 +1,353 @@ +/* Arduino SdFat Library + * Copyright (C) 2010 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +// Warning this file was generated by a program. +#ifndef Sd2PinMap_h +#define Sd2PinMap_h +#include + +//------------------------------------------------------------------------------ +/** struct for mapping digital pins */ +struct pin_map_t { + volatile uint8_t* ddr; + volatile uint8_t* pin; + volatile uint8_t* port; + uint8_t bit; +}; +//------------------------------------------------------------------------------ +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +// Mega + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 20; +uint8_t const SCL_PIN = 21; + +// SPI port +uint8_t const SS_PIN = 53; +uint8_t const MOSI_PIN = 51; +uint8_t const MISO_PIN = 50; +uint8_t const SCK_PIN = 52; + +static const pin_map_t digitalPinMap[] = { + {&DDRE, &PINE, &PORTE, 0}, // E0 0 + {&DDRE, &PINE, &PORTE, 1}, // E1 1 + {&DDRE, &PINE, &PORTE, 4}, // E4 2 + {&DDRE, &PINE, &PORTE, 5}, // E5 3 + {&DDRG, &PING, &PORTG, 5}, // G5 4 + {&DDRE, &PINE, &PORTE, 3}, // E3 5 + {&DDRH, &PINH, &PORTH, 3}, // H3 6 + {&DDRH, &PINH, &PORTH, 4}, // H4 7 + {&DDRH, &PINH, &PORTH, 5}, // H5 8 + {&DDRH, &PINH, &PORTH, 6}, // H6 9 + {&DDRB, &PINB, &PORTB, 4}, // B4 10 + {&DDRB, &PINB, &PORTB, 5}, // B5 11 + {&DDRB, &PINB, &PORTB, 6}, // B6 12 + {&DDRB, &PINB, &PORTB, 7}, // B7 13 + {&DDRJ, &PINJ, &PORTJ, 1}, // J1 14 + {&DDRJ, &PINJ, &PORTJ, 0}, // J0 15 + {&DDRH, &PINH, &PORTH, 1}, // H1 16 + {&DDRH, &PINH, &PORTH, 0}, // H0 17 + {&DDRD, &PIND, &PORTD, 3}, // D3 18 + {&DDRD, &PIND, &PORTD, 2}, // D2 19 + {&DDRD, &PIND, &PORTD, 1}, // D1 20 + {&DDRD, &PIND, &PORTD, 0}, // D0 21 + {&DDRA, &PINA, &PORTA, 0}, // A0 22 + {&DDRA, &PINA, &PORTA, 1}, // A1 23 + {&DDRA, &PINA, &PORTA, 2}, // A2 24 + {&DDRA, &PINA, &PORTA, 3}, // A3 25 + {&DDRA, &PINA, &PORTA, 4}, // A4 26 + {&DDRA, &PINA, &PORTA, 5}, // A5 27 + {&DDRA, &PINA, &PORTA, 6}, // A6 28 + {&DDRA, &PINA, &PORTA, 7}, // A7 29 + {&DDRC, &PINC, &PORTC, 7}, // C7 30 + {&DDRC, &PINC, &PORTC, 6}, // C6 31 + {&DDRC, &PINC, &PORTC, 5}, // C5 32 + {&DDRC, &PINC, &PORTC, 4}, // C4 33 + {&DDRC, &PINC, &PORTC, 3}, // C3 34 + {&DDRC, &PINC, &PORTC, 2}, // C2 35 + {&DDRC, &PINC, &PORTC, 1}, // C1 36 + {&DDRC, &PINC, &PORTC, 0}, // C0 37 + {&DDRD, &PIND, &PORTD, 7}, // D7 38 + {&DDRG, &PING, &PORTG, 2}, // G2 39 + {&DDRG, &PING, &PORTG, 1}, // G1 40 + {&DDRG, &PING, &PORTG, 0}, // G0 41 + {&DDRL, &PINL, &PORTL, 7}, // L7 42 + {&DDRL, &PINL, &PORTL, 6}, // L6 43 + {&DDRL, &PINL, &PORTL, 5}, // L5 44 + {&DDRL, &PINL, &PORTL, 4}, // L4 45 + {&DDRL, &PINL, &PORTL, 3}, // L3 46 + {&DDRL, &PINL, &PORTL, 2}, // L2 47 + {&DDRL, &PINL, &PORTL, 1}, // L1 48 + {&DDRL, &PINL, &PORTL, 0}, // L0 49 + {&DDRB, &PINB, &PORTB, 3}, // B3 50 + {&DDRB, &PINB, &PORTB, 2}, // B2 51 + {&DDRB, &PINB, &PORTB, 1}, // B1 52 + {&DDRB, &PINB, &PORTB, 0}, // B0 53 + {&DDRF, &PINF, &PORTF, 0}, // F0 54 + {&DDRF, &PINF, &PORTF, 1}, // F1 55 + {&DDRF, &PINF, &PORTF, 2}, // F2 56 + {&DDRF, &PINF, &PORTF, 3}, // F3 57 + {&DDRF, &PINF, &PORTF, 4}, // F4 58 + {&DDRF, &PINF, &PORTF, 5}, // F5 59 + {&DDRF, &PINF, &PORTF, 6}, // F6 60 + {&DDRF, &PINF, &PORTF, 7}, // F7 61 + {&DDRK, &PINK, &PORTK, 0}, // K0 62 + {&DDRK, &PINK, &PORTK, 1}, // K1 63 + {&DDRK, &PINK, &PORTK, 2}, // K2 64 + {&DDRK, &PINK, &PORTK, 3}, // K3 65 + {&DDRK, &PINK, &PORTK, 4}, // K4 66 + {&DDRK, &PINK, &PORTK, 5}, // K5 67 + {&DDRK, &PINK, &PORTK, 6}, // K6 68 + {&DDRK, &PINK, &PORTK, 7} // K7 69 +}; +//------------------------------------------------------------------------------ +#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__) +// Sanguino + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 17; +uint8_t const SCL_PIN = 18; + +// SPI port +uint8_t const SS_PIN = 4; +uint8_t const MOSI_PIN = 5; +uint8_t const MISO_PIN = 6; +uint8_t const SCK_PIN = 7; + +static const pin_map_t digitalPinMap[] = { + {&DDRB, &PINB, &PORTB, 0}, // B0 0 + {&DDRB, &PINB, &PORTB, 1}, // B1 1 + {&DDRB, &PINB, &PORTB, 2}, // B2 2 + {&DDRB, &PINB, &PORTB, 3}, // B3 3 + {&DDRB, &PINB, &PORTB, 4}, // B4 4 + {&DDRB, &PINB, &PORTB, 5}, // B5 5 + {&DDRB, &PINB, &PORTB, 6}, // B6 6 + {&DDRB, &PINB, &PORTB, 7}, // B7 7 + {&DDRD, &PIND, &PORTD, 0}, // D0 8 + {&DDRD, &PIND, &PORTD, 1}, // D1 9 + {&DDRD, &PIND, &PORTD, 2}, // D2 10 + {&DDRD, &PIND, &PORTD, 3}, // D3 11 + {&DDRD, &PIND, &PORTD, 4}, // D4 12 + {&DDRD, &PIND, &PORTD, 5}, // D5 13 + {&DDRD, &PIND, &PORTD, 6}, // D6 14 + {&DDRD, &PIND, &PORTD, 7}, // D7 15 + {&DDRC, &PINC, &PORTC, 0}, // C0 16 + {&DDRC, &PINC, &PORTC, 1}, // C1 17 + {&DDRC, &PINC, &PORTC, 2}, // C2 18 + {&DDRC, &PINC, &PORTC, 3}, // C3 19 + {&DDRC, &PINC, &PORTC, 4}, // C4 20 + {&DDRC, &PINC, &PORTC, 5}, // C5 21 + {&DDRC, &PINC, &PORTC, 6}, // C6 22 + {&DDRC, &PINC, &PORTC, 7}, // C7 23 + {&DDRA, &PINA, &PORTA, 7}, // A7 24 + {&DDRA, &PINA, &PORTA, 6}, // A6 25 + {&DDRA, &PINA, &PORTA, 5}, // A5 26 + {&DDRA, &PINA, &PORTA, 4}, // A4 27 + {&DDRA, &PINA, &PORTA, 3}, // A3 28 + {&DDRA, &PINA, &PORTA, 2}, // A2 29 + {&DDRA, &PINA, &PORTA, 1}, // A1 30 + {&DDRA, &PINA, &PORTA, 0} // A0 31 +}; +//------------------------------------------------------------------------------ +#elif defined(__AVR_ATmega32U4__) +// Teensy 2.0 + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 6; +uint8_t const SCL_PIN = 5; + +// SPI port +uint8_t const SS_PIN = 0; +uint8_t const MOSI_PIN = 2; +uint8_t const MISO_PIN = 3; +uint8_t const SCK_PIN = 1; + +static const pin_map_t digitalPinMap[] = { + {&DDRB, &PINB, &PORTB, 0}, // B0 0 + {&DDRB, &PINB, &PORTB, 1}, // B1 1 + {&DDRB, &PINB, &PORTB, 2}, // B2 2 + {&DDRB, &PINB, &PORTB, 3}, // B3 3 + {&DDRB, &PINB, &PORTB, 7}, // B7 4 + {&DDRD, &PIND, &PORTD, 0}, // D0 5 + {&DDRD, &PIND, &PORTD, 1}, // D1 6 + {&DDRD, &PIND, &PORTD, 2}, // D2 7 + {&DDRD, &PIND, &PORTD, 3}, // D3 8 + {&DDRC, &PINC, &PORTC, 6}, // C6 9 + {&DDRC, &PINC, &PORTC, 7}, // C7 10 + {&DDRD, &PIND, &PORTD, 6}, // D6 11 + {&DDRD, &PIND, &PORTD, 7}, // D7 12 + {&DDRB, &PINB, &PORTB, 4}, // B4 13 + {&DDRB, &PINB, &PORTB, 5}, // B5 14 + {&DDRB, &PINB, &PORTB, 6}, // B6 15 + {&DDRF, &PINF, &PORTF, 7}, // F7 16 + {&DDRF, &PINF, &PORTF, 6}, // F6 17 + {&DDRF, &PINF, &PORTF, 5}, // F5 18 + {&DDRF, &PINF, &PORTF, 4}, // F4 19 + {&DDRF, &PINF, &PORTF, 1}, // F1 20 + {&DDRF, &PINF, &PORTF, 0}, // F0 21 + {&DDRD, &PIND, &PORTD, 4}, // D4 22 + {&DDRD, &PIND, &PORTD, 5}, // D5 23 + {&DDRE, &PINE, &PORTE, 6} // E6 24 +}; +//------------------------------------------------------------------------------ +#elif defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) +// Teensy++ 1.0 & 2.0 + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 1; +uint8_t const SCL_PIN = 0; + +// SPI port +uint8_t const SS_PIN = 20; +uint8_t const MOSI_PIN = 22; +uint8_t const MISO_PIN = 23; +uint8_t const SCK_PIN = 21; + +static const pin_map_t digitalPinMap[] = { + {&DDRD, &PIND, &PORTD, 0}, // D0 0 + {&DDRD, &PIND, &PORTD, 1}, // D1 1 + {&DDRD, &PIND, &PORTD, 2}, // D2 2 + {&DDRD, &PIND, &PORTD, 3}, // D3 3 + {&DDRD, &PIND, &PORTD, 4}, // D4 4 + {&DDRD, &PIND, &PORTD, 5}, // D5 5 + {&DDRD, &PIND, &PORTD, 6}, // D6 6 + {&DDRD, &PIND, &PORTD, 7}, // D7 7 + {&DDRE, &PINE, &PORTE, 0}, // E0 8 + {&DDRE, &PINE, &PORTE, 1}, // E1 9 + {&DDRC, &PINC, &PORTC, 0}, // C0 10 + {&DDRC, &PINC, &PORTC, 1}, // C1 11 + {&DDRC, &PINC, &PORTC, 2}, // C2 12 + {&DDRC, &PINC, &PORTC, 3}, // C3 13 + {&DDRC, &PINC, &PORTC, 4}, // C4 14 + {&DDRC, &PINC, &PORTC, 5}, // C5 15 + {&DDRC, &PINC, &PORTC, 6}, // C6 16 + {&DDRC, &PINC, &PORTC, 7}, // C7 17 + {&DDRE, &PINE, &PORTE, 6}, // E6 18 + {&DDRE, &PINE, &PORTE, 7}, // E7 19 + {&DDRB, &PINB, &PORTB, 0}, // B0 20 + {&DDRB, &PINB, &PORTB, 1}, // B1 21 + {&DDRB, &PINB, &PORTB, 2}, // B2 22 + {&DDRB, &PINB, &PORTB, 3}, // B3 23 + {&DDRB, &PINB, &PORTB, 4}, // B4 24 + {&DDRB, &PINB, &PORTB, 5}, // B5 25 + {&DDRB, &PINB, &PORTB, 6}, // B6 26 + {&DDRB, &PINB, &PORTB, 7}, // B7 27 + {&DDRA, &PINA, &PORTA, 0}, // A0 28 + {&DDRA, &PINA, &PORTA, 1}, // A1 29 + {&DDRA, &PINA, &PORTA, 2}, // A2 30 + {&DDRA, &PINA, &PORTA, 3}, // A3 31 + {&DDRA, &PINA, &PORTA, 4}, // A4 32 + {&DDRA, &PINA, &PORTA, 5}, // A5 33 + {&DDRA, &PINA, &PORTA, 6}, // A6 34 + {&DDRA, &PINA, &PORTA, 7}, // A7 35 + {&DDRE, &PINE, &PORTE, 4}, // E4 36 + {&DDRE, &PINE, &PORTE, 5}, // E5 37 + {&DDRF, &PINF, &PORTF, 0}, // F0 38 + {&DDRF, &PINF, &PORTF, 1}, // F1 39 + {&DDRF, &PINF, &PORTF, 2}, // F2 40 + {&DDRF, &PINF, &PORTF, 3}, // F3 41 + {&DDRF, &PINF, &PORTF, 4}, // F4 42 + {&DDRF, &PINF, &PORTF, 5}, // F5 43 + {&DDRF, &PINF, &PORTF, 6}, // F6 44 + {&DDRF, &PINF, &PORTF, 7} // F7 45 +}; +//------------------------------------------------------------------------------ +#else // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +// 168 and 328 Arduinos + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 18; +uint8_t const SCL_PIN = 19; + +// SPI port +uint8_t const SS_PIN = 10; +uint8_t const MOSI_PIN = 11; +uint8_t const MISO_PIN = 12; +uint8_t const SCK_PIN = 13; + +static const pin_map_t digitalPinMap[] = { + {&DDRD, &PIND, &PORTD, 0}, // D0 0 + {&DDRD, &PIND, &PORTD, 1}, // D1 1 + {&DDRD, &PIND, &PORTD, 2}, // D2 2 + {&DDRD, &PIND, &PORTD, 3}, // D3 3 + {&DDRD, &PIND, &PORTD, 4}, // D4 4 + {&DDRD, &PIND, &PORTD, 5}, // D5 5 + {&DDRD, &PIND, &PORTD, 6}, // D6 6 + {&DDRD, &PIND, &PORTD, 7}, // D7 7 + {&DDRB, &PINB, &PORTB, 0}, // B0 8 + {&DDRB, &PINB, &PORTB, 1}, // B1 9 + {&DDRB, &PINB, &PORTB, 2}, // B2 10 + {&DDRB, &PINB, &PORTB, 3}, // B3 11 + {&DDRB, &PINB, &PORTB, 4}, // B4 12 + {&DDRB, &PINB, &PORTB, 5}, // B5 13 + {&DDRC, &PINC, &PORTC, 0}, // C0 14 + {&DDRC, &PINC, &PORTC, 1}, // C1 15 + {&DDRC, &PINC, &PORTC, 2}, // C2 16 + {&DDRC, &PINC, &PORTC, 3}, // C3 17 + {&DDRC, &PINC, &PORTC, 4}, // C4 18 + {&DDRC, &PINC, &PORTC, 5} // C5 19 +}; +#endif // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +//------------------------------------------------------------------------------ +static const uint8_t digitalPinCount = sizeof(digitalPinMap)/sizeof(pin_map_t); + +uint8_t badPinNumber(void) + __attribute__((error("Pin number is too large or not a constant"))); + +static inline __attribute__((always_inline)) + uint8_t getPinMode(uint8_t pin) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + return (*digitalPinMap[pin].ddr >> digitalPinMap[pin].bit) & 1; + } else { + return badPinNumber(); + } +} +static inline __attribute__((always_inline)) + void setPinMode(uint8_t pin, uint8_t mode) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + if (mode) { + *digitalPinMap[pin].ddr |= 1 << digitalPinMap[pin].bit; + } else { + *digitalPinMap[pin].ddr &= ~(1 << digitalPinMap[pin].bit); + } + } else { + badPinNumber(); + } +} +static inline __attribute__((always_inline)) + uint8_t fastDigitalRead(uint8_t pin) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + return (*digitalPinMap[pin].pin >> digitalPinMap[pin].bit) & 1; + } else { + return badPinNumber(); + } +} +static inline __attribute__((always_inline)) + void fastDigitalWrite(uint8_t pin, uint8_t value) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + if (value) { + *digitalPinMap[pin].port |= 1 << digitalPinMap[pin].bit; + } else { + *digitalPinMap[pin].port &= ~(1 << digitalPinMap[pin].bit); + } + } else { + badPinNumber(); + } +} +#endif // Sd2PinMap_h diff --git a/Marlin/SdFat.h b/Marlin/SdFat.h new file mode 100644 index 000000000..aa018dd13 --- /dev/null +++ b/Marlin/SdFat.h @@ -0,0 +1,547 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFat_h +#define SdFat_h +/** + * \file + * SdFile and SdVolume classes + */ +#include +#include "Sd2Card.h" +#include "FatStructs.h" +#include "Print.h" +//------------------------------------------------------------------------------ +/** + * Allow use of deprecated functions if non-zero + */ +#define ALLOW_DEPRECATED_FUNCTIONS 1 +//------------------------------------------------------------------------------ +// forward declaration since SdVolume is used in SdFile +class SdVolume; +//============================================================================== +// SdFile class + +// flags for ls() +/** ls() flag to print modify date */ +uint8_t const LS_DATE = 1; +/** ls() flag to print file size */ +uint8_t const LS_SIZE = 2; +/** ls() flag for recursive list of subdirectories */ +uint8_t const LS_R = 4; + +// use the gnu style oflag in open() +/** open() oflag for reading */ +uint8_t const O_READ = 0X01; +/** open() oflag - same as O_READ */ +uint8_t const O_RDONLY = O_READ; +/** open() oflag for write */ +uint8_t const O_WRITE = 0X02; +/** open() oflag - same as O_WRITE */ +uint8_t const O_WRONLY = O_WRITE; +/** open() oflag for reading and writing */ +uint8_t const O_RDWR = (O_READ | O_WRITE); +/** open() oflag mask for access modes */ +uint8_t const O_ACCMODE = (O_READ | O_WRITE); +/** The file offset shall be set to the end of the file prior to each write. */ +uint8_t const O_APPEND = 0X04; +/** synchronous writes - call sync() after each write */ +uint8_t const O_SYNC = 0X08; +/** create the file if nonexistent */ +uint8_t const O_CREAT = 0X10; +/** If O_CREAT and O_EXCL are set, open() shall fail if the file exists */ +uint8_t const O_EXCL = 0X20; +/** truncate the file to zero length */ +uint8_t const O_TRUNC = 0X40; + +// flags for timestamp +/** set the file's last access date */ +uint8_t const T_ACCESS = 1; +/** set the file's creation date and time */ +uint8_t const T_CREATE = 2; +/** Set the file's write date and time */ +uint8_t const T_WRITE = 4; +// values for type_ +/** This SdFile has not been opened. */ +uint8_t const FAT_FILE_TYPE_CLOSED = 0; +/** SdFile for a file */ +uint8_t const FAT_FILE_TYPE_NORMAL = 1; +/** SdFile for a FAT16 root directory */ +uint8_t const FAT_FILE_TYPE_ROOT16 = 2; +/** SdFile for a FAT32 root directory */ +uint8_t const FAT_FILE_TYPE_ROOT32 = 3; +/** SdFile for a subdirectory */ +uint8_t const FAT_FILE_TYPE_SUBDIR = 4; +/** Test value for directory type */ +uint8_t const FAT_FILE_TYPE_MIN_DIR = FAT_FILE_TYPE_ROOT16; + +/** date field for FAT directory entry */ +static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { + return (year - 1980) << 9 | month << 5 | day; +} +/** year part of FAT directory date field */ +static inline uint16_t FAT_YEAR(uint16_t fatDate) { + return 1980 + (fatDate >> 9); +} +/** month part of FAT directory date field */ +static inline uint8_t FAT_MONTH(uint16_t fatDate) { + return (fatDate >> 5) & 0XF; +} +/** day part of FAT directory date field */ +static inline uint8_t FAT_DAY(uint16_t fatDate) { + return fatDate & 0X1F; +} +/** time field for FAT directory entry */ +static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { + return hour << 11 | minute << 5 | second >> 1; +} +/** hour part of FAT directory time field */ +static inline uint8_t FAT_HOUR(uint16_t fatTime) { + return fatTime >> 11; +} +/** minute part of FAT directory time field */ +static inline uint8_t FAT_MINUTE(uint16_t fatTime) { + return(fatTime >> 5) & 0X3F; +} +/** second part of FAT directory time field */ +static inline uint8_t FAT_SECOND(uint16_t fatTime) { + return 2*(fatTime & 0X1F); +} +/** Default date for file timestamps is 1 Jan 2000 */ +uint16_t const FAT_DEFAULT_DATE = ((2000 - 1980) << 9) | (1 << 5) | 1; +/** Default time for file timestamp is 1 am */ +uint16_t const FAT_DEFAULT_TIME = (1 << 11); +//------------------------------------------------------------------------------ +/** + * \class SdFile + * \brief Access FAT16 and FAT32 files on SD and SDHC cards. + */ +class SdFile : public Print { + public: + /** Create an instance of SdFile. */ + SdFile(void) : type_(FAT_FILE_TYPE_CLOSED) {} + /** + * writeError is set to true if an error occurs during a write(). + * Set writeError to false before calling print() and/or write() and check + * for true after calls to print() and/or write(). + */ + bool writeError; + /** + * Cancel unbuffered reads for this file. + * See setUnbufferedRead() + */ + void clearUnbufferedRead(void) { + flags_ &= ~F_FILE_UNBUFFERED_READ; + } + uint8_t close(void); + uint8_t contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); + uint8_t createContiguous(SdFile* dirFile, + const char* fileName, uint32_t size); + /** \return The current cluster number for a file or directory. */ + uint32_t curCluster(void) const {return curCluster_;} + /** \return The current position for a file or directory. */ + uint32_t curPosition(void) const {return curPosition_;} + /** + * Set the date/time callback function + * + * \param[in] dateTime The user's call back function. The callback + * function is of the form: + * + * \code + * void dateTime(uint16_t* date, uint16_t* time) { + * uint16_t year; + * uint8_t month, day, hour, minute, second; + * + * // User gets date and time from GPS or real-time clock here + * + * // return date using FAT_DATE macro to format fields + * *date = FAT_DATE(year, month, day); + * + * // return time using FAT_TIME macro to format fields + * *time = FAT_TIME(hour, minute, second); + * } + * \endcode + * + * Sets the function that is called when a file is created or when + * a file's directory entry is modified by sync(). All timestamps, + * access, creation, and modify, are set when a file is created. + * sync() maintains the last access date and last modify date/time. + * + * See the timestamp() function. + */ + static void dateTimeCallback( + void (*dateTime)(uint16_t* date, uint16_t* time)) { + dateTime_ = dateTime; + } + /** + * Cancel the date/time callback function. + */ + static void dateTimeCallbackCancel(void) { + // use explicit zero since NULL is not defined for Sanguino + dateTime_ = 0; + } + /** \return Address of the block that contains this file's directory. */ + uint32_t dirBlock(void) const {return dirBlock_;} + uint8_t dirEntry(dir_t* dir); + /** \return Index of this file's directory in the block dirBlock. */ + uint8_t dirIndex(void) const {return dirIndex_;} + static void dirName(const dir_t& dir, char* name); + /** \return The total number of bytes in a file or directory. */ + uint32_t fileSize(void) const {return fileSize_;} + /** \return The first cluster number for a file or directory. */ + uint32_t firstCluster(void) const {return firstCluster_;} + /** \return True if this is a SdFile for a directory else false. */ + uint8_t isDir(void) const {return type_ >= FAT_FILE_TYPE_MIN_DIR;} + /** \return True if this is a SdFile for a file else false. */ + uint8_t isFile(void) const {return type_ == FAT_FILE_TYPE_NORMAL;} + /** \return True if this is a SdFile for an open file/directory else false. */ + uint8_t isOpen(void) const {return type_ != FAT_FILE_TYPE_CLOSED;} + /** \return True if this is a SdFile for a subdirectory else false. */ + uint8_t isSubDir(void) const {return type_ == FAT_FILE_TYPE_SUBDIR;} + /** \return True if this is a SdFile for the root directory. */ + uint8_t isRoot(void) const { + return type_ == FAT_FILE_TYPE_ROOT16 || type_ == FAT_FILE_TYPE_ROOT32; + } + void ls(uint8_t flags = 0, uint8_t indent = 0); + uint8_t makeDir(SdFile* dir, const char* dirName); + uint8_t open(SdFile* dirFile, uint16_t index, uint8_t oflag); + uint8_t open(SdFile* dirFile, const char* fileName, uint8_t oflag); + + uint8_t openRoot(SdVolume* vol); + static void printDirName(const dir_t& dir, uint8_t width); + static void printFatDate(uint16_t fatDate); + static void printFatTime(uint16_t fatTime); + static void printTwoDigits(uint8_t v); + /** + * Read the next byte from a file. + * + * \return For success read returns the next byte in the file as an int. + * If an error occurs or end of file is reached -1 is returned. + */ + int16_t read(void) { + uint8_t b; + return read(&b, 1) == 1 ? b : -1; + } + int16_t read(void* buf, uint16_t nbyte); + int8_t readDir(dir_t* dir); + static uint8_t remove(SdFile* dirFile, const char* fileName); + uint8_t remove(void); + /** Set the file's current position to zero. */ + void rewind(void) { + curPosition_ = curCluster_ = 0; + } + uint8_t rmDir(void); + uint8_t rmRfStar(void); + /** Set the files position to current position + \a pos. See seekSet(). */ + uint8_t seekCur(uint32_t pos) { + return seekSet(curPosition_ + pos); + } + /** + * Set the files current position to end of file. Useful to position + * a file for append. See seekSet(). + */ + uint8_t seekEnd(void) {return seekSet(fileSize_);} + uint8_t seekSet(uint32_t pos); + /** + * Use unbuffered reads to access this file. Used with Wave + * Shield ISR. Used with Sd2Card::partialBlockRead() in WaveRP. + * + * Not recommended for normal applications. + */ + void setUnbufferedRead(void) { + if (isFile()) flags_ |= F_FILE_UNBUFFERED_READ; + } + uint8_t timestamp(uint8_t flag, uint16_t year, uint8_t month, uint8_t day, + uint8_t hour, uint8_t minute, uint8_t second); + uint8_t sync(void); + /** Type of this SdFile. You should use isFile() or isDir() instead of type() + * if possible. + * + * \return The file or directory type. + */ + uint8_t type(void) const {return type_;} + uint8_t truncate(uint32_t size); + /** \return Unbuffered read flag. */ + uint8_t unbufferedRead(void) const { + return flags_ & F_FILE_UNBUFFERED_READ; + } + /** \return SdVolume that contains this file. */ + SdVolume* volume(void) const {return vol_;} + void write(uint8_t b); + int16_t write(const void* buf, uint16_t nbyte); + void write(const char* str); + void write_P(PGM_P str); + void writeln_P(PGM_P str); +//------------------------------------------------------------------------------ +#if ALLOW_DEPRECATED_FUNCTIONS +// Deprecated functions - suppress cpplint warnings with NOLINT comment + /** \deprecated Use: + * uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); + */ + uint8_t contiguousRange(uint32_t& bgnBlock, uint32_t& endBlock) { // NOLINT + return contiguousRange(&bgnBlock, &endBlock); + } + /** \deprecated Use: + * uint8_t SdFile::createContiguous(SdFile* dirFile, + * const char* fileName, uint32_t size) + */ + uint8_t createContiguous(SdFile& dirFile, // NOLINT + const char* fileName, uint32_t size) { + return createContiguous(&dirFile, fileName, size); + } + + /** + * \deprecated Use: + * static void SdFile::dateTimeCallback( + * void (*dateTime)(uint16_t* date, uint16_t* time)); + */ + static void dateTimeCallback( + void (*dateTime)(uint16_t& date, uint16_t& time)) { // NOLINT + oldDateTime_ = dateTime; + dateTime_ = dateTime ? oldToNew : 0; + } + /** \deprecated Use: uint8_t SdFile::dirEntry(dir_t* dir); */ + uint8_t dirEntry(dir_t& dir) {return dirEntry(&dir);} // NOLINT + /** \deprecated Use: + * uint8_t SdFile::makeDir(SdFile* dir, const char* dirName); + */ + uint8_t makeDir(SdFile& dir, const char* dirName) { // NOLINT + return makeDir(&dir, dirName); + } + /** \deprecated Use: + * uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag); + */ + uint8_t open(SdFile& dirFile, // NOLINT + const char* fileName, uint8_t oflag) { + return open(&dirFile, fileName, oflag); + } + /** \deprecated Do not use in new apps */ + uint8_t open(SdFile& dirFile, const char* fileName) { // NOLINT + return open(dirFile, fileName, O_RDWR); + } + /** \deprecated Use: + * uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag); + */ + uint8_t open(SdFile& dirFile, uint16_t index, uint8_t oflag) { // NOLINT + return open(&dirFile, index, oflag); + } + /** \deprecated Use: uint8_t SdFile::openRoot(SdVolume* vol); */ + uint8_t openRoot(SdVolume& vol) {return openRoot(&vol);} // NOLINT + + /** \deprecated Use: int8_t SdFile::readDir(dir_t* dir); */ + int8_t readDir(dir_t& dir) {return readDir(&dir);} // NOLINT + /** \deprecated Use: + * static uint8_t SdFile::remove(SdFile* dirFile, const char* fileName); + */ + static uint8_t remove(SdFile& dirFile, const char* fileName) { // NOLINT + return remove(&dirFile, fileName); + } +//------------------------------------------------------------------------------ +// rest are private + private: + static void (*oldDateTime_)(uint16_t& date, uint16_t& time); // NOLINT + static void oldToNew(uint16_t* date, uint16_t* time) { + uint16_t d; + uint16_t t; + oldDateTime_(d, t); + *date = d; + *time = t; + } +#endif // ALLOW_DEPRECATED_FUNCTIONS + private: + // bits defined in flags_ + // should be 0XF + static uint8_t const F_OFLAG = (O_ACCMODE | O_APPEND | O_SYNC); + // available bits + static uint8_t const F_UNUSED = 0X30; + // use unbuffered SD read + static uint8_t const F_FILE_UNBUFFERED_READ = 0X40; + // sync of directory entry required + static uint8_t const F_FILE_DIR_DIRTY = 0X80; + +// make sure F_OFLAG is ok +#if ((F_UNUSED | F_FILE_UNBUFFERED_READ | F_FILE_DIR_DIRTY) & F_OFLAG) +#error flags_ bits conflict +#endif // flags_ bits + + // private data + uint8_t flags_; // See above for definition of flags_ bits + uint8_t type_; // type of file see above for values + uint32_t curCluster_; // cluster for current file position + uint32_t curPosition_; // current file position in bytes from beginning + uint32_t dirBlock_; // SD block that contains directory entry for file + uint8_t dirIndex_; // index of entry in dirBlock 0 <= dirIndex_ <= 0XF + uint32_t fileSize_; // file size in bytes + uint32_t firstCluster_; // first cluster of file + SdVolume* vol_; // volume where file is located + + // private functions + uint8_t addCluster(void); + uint8_t addDirCluster(void); + dir_t* cacheDirEntry(uint8_t action); + static void (*dateTime_)(uint16_t* date, uint16_t* time); + static uint8_t make83Name(const char* str, uint8_t* name); + uint8_t openCachedEntry(uint8_t cacheIndex, uint8_t oflags); + dir_t* readDirCache(void); +}; +//============================================================================== +// SdVolume class +/** + * \brief Cache for an SD data block + */ +union cache_t { + /** Used to access cached file data blocks. */ + uint8_t data[512]; + /** Used to access cached FAT16 entries. */ + uint16_t fat16[256]; + /** Used to access cached FAT32 entries. */ + uint32_t fat32[128]; + /** Used to access cached directory entries. */ + dir_t dir[16]; + /** Used to access a cached MasterBoot Record. */ + mbr_t mbr; + /** Used to access to a cached FAT boot sector. */ + fbs_t fbs; +}; +//------------------------------------------------------------------------------ +/** + * \class SdVolume + * \brief Access FAT16 and FAT32 volumes on SD and SDHC cards. + */ +class SdVolume { + public: + /** Create an instance of SdVolume */ + SdVolume(void) :allocSearchStart_(2), fatType_(0) {} + /** Clear the cache and returns a pointer to the cache. Used by the WaveRP + * recorder to do raw write to the SD card. Not for normal apps. + */ + static uint8_t* cacheClear(void) { + cacheFlush(); + cacheBlockNumber_ = 0XFFFFFFFF; + return cacheBuffer_.data; + } + /** + * Initialize a FAT volume. Try partition one first then try super + * floppy format. + * + * \param[in] dev The Sd2Card where the volume is located. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. Reasons for + * failure include not finding a valid partition, not finding a valid + * FAT file system or an I/O error. + */ + uint8_t init(Sd2Card* dev) { return init(dev, 1) ? true : init(dev, 0);} + uint8_t init(Sd2Card* dev, uint8_t part); + + // inline functions that return volume info + /** \return The volume's cluster size in blocks. */ + uint8_t blocksPerCluster(void) const {return blocksPerCluster_;} + /** \return The number of blocks in one FAT. */ + uint32_t blocksPerFat(void) const {return blocksPerFat_;} + /** \return The total number of clusters in the volume. */ + uint32_t clusterCount(void) const {return clusterCount_;} + /** \return The shift count required to multiply by blocksPerCluster. */ + uint8_t clusterSizeShift(void) const {return clusterSizeShift_;} + /** \return The logical block number for the start of file data. */ + uint32_t dataStartBlock(void) const {return dataStartBlock_;} + /** \return The number of FAT structures on the volume. */ + uint8_t fatCount(void) const {return fatCount_;} + /** \return The logical block number for the start of the first FAT. */ + uint32_t fatStartBlock(void) const {return fatStartBlock_;} + /** \return The FAT type of the volume. Values are 12, 16 or 32. */ + uint8_t fatType(void) const {return fatType_;} + /** \return The number of entries in the root directory for FAT16 volumes. */ + uint32_t rootDirEntryCount(void) const {return rootDirEntryCount_;} + /** \return The logical block number for the start of the root directory + on FAT16 volumes or the first cluster number on FAT32 volumes. */ + uint32_t rootDirStart(void) const {return rootDirStart_;} + /** return a pointer to the Sd2Card object for this volume */ + static Sd2Card* sdCard(void) {return sdCard_;} +//------------------------------------------------------------------------------ +#if ALLOW_DEPRECATED_FUNCTIONS + // Deprecated functions - suppress cpplint warnings with NOLINT comment + /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev); */ + uint8_t init(Sd2Card& dev) {return init(&dev);} // NOLINT + + /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev, uint8_t vol); */ + uint8_t init(Sd2Card& dev, uint8_t part) { // NOLINT + return init(&dev, part); + } +#endif // ALLOW_DEPRECATED_FUNCTIONS +//------------------------------------------------------------------------------ + private: + // Allow SdFile access to SdVolume private data. + friend class SdFile; + + // value for action argument in cacheRawBlock to indicate read from cache + static uint8_t const CACHE_FOR_READ = 0; + // value for action argument in cacheRawBlock to indicate cache dirty + static uint8_t const CACHE_FOR_WRITE = 1; + + static cache_t cacheBuffer_; // 512 byte cache for device blocks + static uint32_t cacheBlockNumber_; // Logical number of block in the cache + static Sd2Card* sdCard_; // Sd2Card object for cache + static uint8_t cacheDirty_; // cacheFlush() will write block if true + static uint32_t cacheMirrorBlock_; // block number for mirror FAT +// + uint32_t allocSearchStart_; // start cluster for alloc search + uint8_t blocksPerCluster_; // cluster size in blocks + uint32_t blocksPerFat_; // FAT size in blocks + uint32_t clusterCount_; // clusters in one FAT + uint8_t clusterSizeShift_; // shift to convert cluster count to block count + uint32_t dataStartBlock_; // first data block number + uint8_t fatCount_; // number of FATs on volume + uint32_t fatStartBlock_; // start block for first FAT + uint8_t fatType_; // volume type (12, 16, OR 32) + uint16_t rootDirEntryCount_; // number of entries in FAT16 root dir + uint32_t rootDirStart_; // root start block for FAT16, cluster for FAT32 + //---------------------------------------------------------------------------- + uint8_t allocContiguous(uint32_t count, uint32_t* curCluster); + uint8_t blockOfCluster(uint32_t position) const { + return (position >> 9) & (blocksPerCluster_ - 1);} + uint32_t clusterStartBlock(uint32_t cluster) const { + return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_);} + uint32_t blockNumber(uint32_t cluster, uint32_t position) const { + return clusterStartBlock(cluster) + blockOfCluster(position);} + static uint8_t cacheFlush(void); + static uint8_t cacheRawBlock(uint32_t blockNumber, uint8_t action); + static void cacheSetDirty(void) {cacheDirty_ |= CACHE_FOR_WRITE;} + static uint8_t cacheZeroBlock(uint32_t blockNumber); + uint8_t chainSize(uint32_t beginCluster, uint32_t* size) const; + uint8_t fatGet(uint32_t cluster, uint32_t* value) const; + uint8_t fatPut(uint32_t cluster, uint32_t value); + uint8_t fatPutEOC(uint32_t cluster) { + return fatPut(cluster, 0x0FFFFFFF); + } + uint8_t freeChain(uint32_t cluster); + uint8_t isEOC(uint32_t cluster) const { + return cluster >= (fatType_ == 16 ? FAT16EOC_MIN : FAT32EOC_MIN); + } + uint8_t readBlock(uint32_t block, uint8_t* dst) { + return sdCard_->readBlock(block, dst);} + uint8_t readData(uint32_t block, uint16_t offset, + uint16_t count, uint8_t* dst) { + return sdCard_->readData(block, offset, count, dst); + } + uint8_t writeBlock(uint32_t block, const uint8_t* dst) { + return sdCard_->writeBlock(block, dst); + } +}; +#endif // SdFat_h diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h new file mode 100644 index 000000000..7992031f7 --- /dev/null +++ b/Marlin/SdFatUtil.h @@ -0,0 +1,70 @@ +/* Arduino SdFat Library + * Copyright (C) 2008 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFatUtil_h +#define SdFatUtil_h +/** + * \file + * Useful utility functions. + */ +#include +#include +/** Store and print a string in flash memory.*/ +#define PgmPrint(x) SerialPrint_P(PSTR(x)) +/** Store and print a string in flash memory followed by a CR/LF.*/ +#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) +/** Defined so doxygen works for function definitions. */ +#define NOINLINE __attribute__((noinline)) +//------------------------------------------------------------------------------ +/** Return the number of bytes currently free in RAM. */ +static int FreeRam(void) { + extern int __bss_end; + extern int* __brkval; + int free_memory; + if (reinterpret_cast(__brkval) == 0) { + // if no heap use from end of bss section + free_memory = reinterpret_cast(&free_memory) + - reinterpret_cast(&__bss_end); + } else { + // use from top of stack to heap + free_memory = reinterpret_cast(&free_memory) + - reinterpret_cast(__brkval); + } + return free_memory; +} +//------------------------------------------------------------------------------ +/** + * %Print a string in flash memory to the serial port. + * + * \param[in] str Pointer to string stored in flash memory. + */ +static NOINLINE void SerialPrint_P(PGM_P str) { + for (uint8_t c; (c = pgm_read_byte(str)); str++) Serial.print(c); +} +//------------------------------------------------------------------------------ +/** + * %Print a string in flash memory followed by a CR/LF. + * + * \param[in] str Pointer to string stored in flash memory. + */ +static NOINLINE void SerialPrintln_P(PGM_P str) { + SerialPrint_P(str); + Serial.println(); +} +#endif // #define SdFatUtil_h diff --git a/Marlin/SdFatmainpage.h b/Marlin/SdFatmainpage.h new file mode 100644 index 000000000..d26cb854c --- /dev/null +++ b/Marlin/SdFatmainpage.h @@ -0,0 +1,202 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ + +/** +\mainpage Arduino SdFat Library +
Copyright © 2009 by William Greiman +
+ +\section Intro Introduction +The Arduino SdFat Library is a minimal implementation of FAT16 and FAT32 +file systems on SD flash memory cards. Standard SD and high capacity +SDHC cards are supported. + +The SdFat only supports short 8.3 names. + +The main classes in SdFat are Sd2Card, SdVolume, and SdFile. + +The Sd2Card class supports access to standard SD cards and SDHC cards. Most +applications will only need to call the Sd2Card::init() member function. + +The SdVolume class supports FAT16 and FAT32 partitions. Most applications +will only need to call the SdVolume::init() member function. + +The SdFile class provides file access functions such as open(), read(), +remove(), write(), close() and sync(). This class supports access to the root +directory and subdirectories. + +A number of example are provided in the SdFat/examples folder. These were +developed to test SdFat and illustrate its use. + +SdFat was developed for high speed data recording. SdFat was used to implement +an audio record/play class, WaveRP, for the Adafruit Wave Shield. This +application uses special Sd2Card calls to write to contiguous files in raw mode. +These functions reduce write latency so that audio can be recorded with the +small amount of RAM in the Arduino. + +\section SDcard SD\SDHC Cards + +Arduinos access SD cards using the cards SPI protocol. PCs, Macs, and +most consumer devices use the 4-bit parallel SD protocol. A card that +functions well on A PC or Mac may not work well on the Arduino. + +Most cards have good SPI read performance but cards vary widely in SPI +write performance. Write performance is limited by how efficiently the +card manages internal erase/remapping operations. The Arduino cannot +optimize writes to reduce erase operations because of its limit RAM. + +SanDisk cards generally have good write performance. They seem to have +more internal RAM buffering than other cards and therefore can limit +the number of flash erase operations that the Arduino forces due to its +limited RAM. + +\section Hardware Hardware Configuration + +SdFat was developed using an + Adafruit Industries + Wave Shield. + +The hardware interface to the SD card should not use a resistor based level +shifter. SdFat sets the SPI bus frequency to 8 MHz which results in signal +rise times that are too slow for the edge detectors in many newer SD card +controllers when resistor voltage dividers are used. + +The 5 to 3.3 V level shifter for 5 V Arduinos should be IC based like the +74HC4050N based circuit shown in the file SdLevel.png. The Adafruit Wave Shield +uses a 74AHC125N. Gravitech sells SD and MicroSD Card Adapters based on the +74LCX245. + +If you are using a resistor based level shifter and are having problems try +setting the SPI bus frequency to 4 MHz. This can be done by using +card.init(SPI_HALF_SPEED) to initialize the SD card. + +\section comment Bugs and Comments + +If you wish to report bugs or have comments, send email to fat16lib@sbcglobal.net. + +\section SdFatClass SdFat Usage + +SdFat uses a slightly restricted form of short names. +Only printable ASCII characters are supported. No characters with code point +values greater than 127 are allowed. Space is not allowed even though space +was allowed in the API of early versions of DOS. + +Short names are limited to 8 characters followed by an optional period (.) +and extension of up to 3 characters. The characters may be any combination +of letters and digits. The following special characters are also allowed: + +$ % ' - _ @ ~ ` ! ( ) { } ^ # & + +Short names are always converted to upper case and their original case +value is lost. + +\note + The Arduino Print class uses character +at a time writes so it was necessary to use a \link SdFile::sync() sync() \endlink +function to control when data is written to the SD card. + +\par +An application which writes to a file using \link Print::print() print()\endlink, +\link Print::println() println() \endlink +or \link SdFile::write write() \endlink must call \link SdFile::sync() sync() \endlink +at the appropriate time to force data and directory information to be written +to the SD Card. Data and directory information are also written to the SD card +when \link SdFile::close() close() \endlink is called. + +\par +Applications must use care calling \link SdFile::sync() sync() \endlink +since 2048 bytes of I/O is required to update file and +directory information. This includes writing the current data block, reading +the block that contains the directory entry for update, writing the directory +block back and reading back the current data block. + +It is possible to open a file with two or more instances of SdFile. A file may +be corrupted if data is written to the file by more than one instance of SdFile. + +\section HowTo How to format SD Cards as FAT Volumes + +You should use a freshly formatted SD card for best performance. FAT +file systems become slower if many files have been created and deleted. +This is because the directory entry for a deleted file is marked as deleted, +but is not deleted. When a new file is created, these entries must be scanned +before creating the file, a flaw in the FAT design. Also files can become +fragmented which causes reads and writes to be slower. + +Microsoft operating systems support removable media formatted with a +Master Boot Record, MBR, or formatted as a super floppy with a FAT Boot Sector +in block zero. + +Microsoft operating systems expect MBR formatted removable media +to have only one partition. The first partition should be used. + +Microsoft operating systems do not support partitioning SD flash cards. +If you erase an SD card with a program like KillDisk, Most versions of +Windows will format the card as a super floppy. + +The best way to restore an SD card's format is to use SDFormatter +which can be downloaded from: + +http://www.sdcard.org/consumers/formatter/ + +SDFormatter aligns flash erase boundaries with file +system structures which reduces write latency and file system overhead. + +SDFormatter does not have an option for FAT type so it may format +small cards as FAT12. + +After the MBR is restored by SDFormatter you may need to reformat small +cards that have been formatted FAT12 to force the volume type to be FAT16. + +If you reformat the SD card with an OS utility, choose a cluster size that +will result in: + +4084 < CountOfClusters && CountOfClusters < 65525 + +The volume will then be FAT16. + +If you are formatting an SD card on OS X or Linux, be sure to use the first +partition. Format this partition with a cluster count in above range. + +\section References References + +Adafruit Industries: + +http://www.adafruit.com/ + +http://www.ladyada.net/make/waveshield/ + +The Arduino site: + +http://www.arduino.cc/ + +For more information about FAT file systems see: + +http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx + +For information about using SD cards as SPI devices see: + +http://www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf + +The ATmega328 datasheet: + +http://www.atmel.com/dyn/resources/prod_documents/doc8161.pdf + + + */ diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp new file mode 100644 index 000000000..0a27159f4 --- /dev/null +++ b/Marlin/SdFile.cpp @@ -0,0 +1,1252 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdFat.h" +#include +#include +//------------------------------------------------------------------------------ +// callback function for date/time +void (*SdFile::dateTime_)(uint16_t* date, uint16_t* time) = NULL; + +#if ALLOW_DEPRECATED_FUNCTIONS +// suppress cpplint warnings with NOLINT comment +void (*SdFile::oldDateTime_)(uint16_t& date, uint16_t& time) = NULL; // NOLINT +#endif // ALLOW_DEPRECATED_FUNCTIONS +//------------------------------------------------------------------------------ +// add a cluster to a file +uint8_t SdFile::addCluster() { + if (!vol_->allocContiguous(1, &curCluster_)) return false; + + // if first cluster of file link to directory entry + if (firstCluster_ == 0) { + firstCluster_ = curCluster_; + flags_ |= F_FILE_DIR_DIRTY; + } + return true; +} +//------------------------------------------------------------------------------ +// Add a cluster to a directory file and zero the cluster. +// return with first block of cluster in the cache +uint8_t SdFile::addDirCluster(void) { + if (!addCluster()) return false; + + // zero data in cluster insure first cluster is in cache + uint32_t block = vol_->clusterStartBlock(curCluster_); + for (uint8_t i = vol_->blocksPerCluster_; i != 0; i--) { + if (!SdVolume::cacheZeroBlock(block + i - 1)) return false; + } + // Increase directory file size by cluster size + fileSize_ += 512UL << vol_->clusterSizeShift_; + return true; +} +//------------------------------------------------------------------------------ +// cache a file's directory entry +// return pointer to cached entry or null for failure +dir_t* SdFile::cacheDirEntry(uint8_t action) { + if (!SdVolume::cacheRawBlock(dirBlock_, action)) return NULL; + return SdVolume::cacheBuffer_.dir + dirIndex_; +} +//------------------------------------------------------------------------------ +/** + * Close a file and force cached data and directory information + * to be written to the storage device. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include no file is open or an I/O error. + */ +uint8_t SdFile::close(void) { + if (!sync())return false; + type_ = FAT_FILE_TYPE_CLOSED; + return true; +} +//------------------------------------------------------------------------------ +/** + * Check for contiguous file and return its raw block range. + * + * \param[out] bgnBlock the first block address for the file. + * \param[out] endBlock the last block address for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is not contiguous, file has zero length + * or an I/O error occurred. + */ +uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock) { + // error if no blocks + if (firstCluster_ == 0) return false; + + for (uint32_t c = firstCluster_; ; c++) { + uint32_t next; + if (!vol_->fatGet(c, &next)) return false; + + // check for contiguous + if (next != (c + 1)) { + // error if not end of chain + if (!vol_->isEOC(next)) return false; + *bgnBlock = vol_->clusterStartBlock(firstCluster_); + *endBlock = vol_->clusterStartBlock(c) + + vol_->blocksPerCluster_ - 1; + return true; + } + } +} +//------------------------------------------------------------------------------ +/** + * Create and open a new contiguous file of a specified size. + * + * \note This function only supports short DOS 8.3 names. + * See open() for more information. + * + * \param[in] dirFile The directory where the file will be created. + * \param[in] fileName A valid DOS 8.3 file name. + * \param[in] size The desired file size. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include \a fileName contains + * an invalid DOS 8.3 file name, the FAT volume has not been initialized, + * a file is already open, the file already exists, the root + * directory is full or an I/O error. + * + */ +uint8_t SdFile::createContiguous(SdFile* dirFile, + const char* fileName, uint32_t size) { + // don't allow zero length file + if (size == 0) return false; + if (!open(dirFile, fileName, O_CREAT | O_EXCL | O_RDWR)) return false; + + // calculate number of clusters needed + uint32_t count = ((size - 1) >> (vol_->clusterSizeShift_ + 9)) + 1; + + // allocate clusters + if (!vol_->allocContiguous(count, &firstCluster_)) { + remove(); + return false; + } + fileSize_ = size; + + // insure sync() will update dir entry + flags_ |= F_FILE_DIR_DIRTY; + return sync(); +} +//------------------------------------------------------------------------------ +/** + * Return a files directory entry + * + * \param[out] dir Location for return of the files directory entry. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::dirEntry(dir_t* dir) { + // make sure fields on SD are correct + if (!sync()) return false; + + // read entry + dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_READ); + if (!p) return false; + + // copy to caller's struct + memcpy(dir, p, sizeof(dir_t)); + return true; +} +//------------------------------------------------------------------------------ +/** + * Format the name field of \a dir into the 13 byte array + * \a name in standard 8.3 short name format. + * + * \param[in] dir The directory structure containing the name. + * \param[out] name A 13 byte char array for the formatted name. + */ +void SdFile::dirName(const dir_t& dir, char* name) { + uint8_t j = 0; + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) name[j++] = '.'; + name[j++] = dir.name[i]; + } + name[j] = 0; +} +//------------------------------------------------------------------------------ +/** List directory contents to Serial. + * + * \param[in] flags The inclusive OR of + * + * LS_DATE - %Print file modification date + * + * LS_SIZE - %Print file size. + * + * LS_R - Recursive list of subdirectories. + * + * \param[in] indent Amount of space before file name. Used for recursive + * list to indicate subdirectory level. + */ +void SdFile::ls(uint8_t flags, uint8_t indent) { + dir_t* p; + + rewind(); + while ((p = readDirCache())) { + // done if past last used entry + if (p->name[0] == DIR_NAME_FREE) break; + + // skip deleted entry and entries for . and .. + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + + // only list subdirectories and files + if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; + + // print any indent spaces + for (int8_t i = 0; i < indent; i++) Serial.print(' '); + + // print file name with possible blank fill + printDirName(*p, flags & (LS_DATE | LS_SIZE) ? 14 : 0); + + // print modify date/time if requested + if (flags & LS_DATE) { + printFatDate(p->lastWriteDate); + Serial.print(' '); + printFatTime(p->lastWriteTime); + } + // print size if requested + if (!DIR_IS_SUBDIR(p) && (flags & LS_SIZE)) { + Serial.print(' '); + Serial.print(p->fileSize); + } + Serial.println(); + + // list subdirectory content if requested + if ((flags & LS_R) && DIR_IS_SUBDIR(p)) { + uint16_t index = curPosition()/32 - 1; + SdFile s; + if (s.open(this, index, O_READ)) s.ls(flags, indent + 2); + seekSet(32 * (index + 1)); + } + } +} +//------------------------------------------------------------------------------ +// format directory name field from a 8.3 name string +uint8_t SdFile::make83Name(const char* str, uint8_t* name) { + uint8_t c; + uint8_t n = 7; // max index for part before dot + uint8_t i = 0; + // blank fill name and extension + while (i < 11) name[i++] = ' '; + i = 0; + while ((c = *str++) != '\0') { + if (c == '.') { + if (n == 10) return false; // only one dot allowed + n = 10; // max index for full 8.3 name + i = 8; // place for extension + } else { + // illegal FAT characters + PGM_P p = PSTR("|<>^+=?/[];,*\"\\"); + uint8_t b; + while ((b = pgm_read_byte(p++))) if (b == c) return false; + // check size and only allow ASCII printable characters + if (i > n || c < 0X21 || c > 0X7E)return false; + // only upper case allowed in 8.3 names - convert lower to upper + name[i++] = c < 'a' || c > 'z' ? c : c + ('A' - 'a'); + } + } + // must have a file name, extension is optional + return name[0] != ' '; +} +//------------------------------------------------------------------------------ +/** Make a new directory. + * + * \param[in] dir An open SdFat instance for the directory that will containing + * the new directory. + * + * \param[in] dirName A valid 8.3 DOS name for the new directory. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include this SdFile is already open, \a dir is not a + * directory, \a dirName is invalid or already exists in \a dir. + */ +uint8_t SdFile::makeDir(SdFile* dir, const char* dirName) { + dir_t d; + + // create a normal file + if (!open(dir, dirName, O_CREAT | O_EXCL | O_RDWR)) return false; + + // convert SdFile to directory + flags_ = O_READ; + type_ = FAT_FILE_TYPE_SUBDIR; + + // allocate and zero first cluster + if (!addDirCluster())return false; + + // force entry to SD + if (!sync()) return false; + + // cache entry - should already be in cache due to sync() call + dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!p) return false; + + // change directory entry attribute + p->attributes = DIR_ATT_DIRECTORY; + + // make entry for '.' + memcpy(&d, p, sizeof(d)); + for (uint8_t i = 1; i < 11; i++) d.name[i] = ' '; + d.name[0] = '.'; + + // cache block for '.' and '..' + uint32_t block = vol_->clusterStartBlock(firstCluster_); + if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) return false; + + // copy '.' to block + memcpy(&SdVolume::cacheBuffer_.dir[0], &d, sizeof(d)); + + // make entry for '..' + d.name[1] = '.'; + if (dir->isRoot()) { + d.firstClusterLow = 0; + d.firstClusterHigh = 0; + } else { + d.firstClusterLow = dir->firstCluster_ & 0XFFFF; + d.firstClusterHigh = dir->firstCluster_ >> 16; + } + // copy '..' to block + memcpy(&SdVolume::cacheBuffer_.dir[1], &d, sizeof(d)); + + // set position after '..' + curPosition_ = 2 * sizeof(d); + + // write first block + return SdVolume::cacheFlush(); +} +//------------------------------------------------------------------------------ +/** + * Open a file or directory by name. + * + * \param[in] dirFile An open SdFat instance for the directory containing the + * file to be opened. + * + * \param[in] fileName A valid 8.3 DOS name for a file to be opened. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags from the following list + * + * O_READ - Open for reading. + * + * O_RDONLY - Same as O_READ. + * + * O_WRITE - Open for writing. + * + * O_WRONLY - Same as O_WRITE. + * + * O_RDWR - Open for reading and writing. + * + * O_APPEND - If set, the file offset shall be set to the end of the + * file prior to each write. + * + * O_CREAT - If the file exists, this flag has no effect except as noted + * under O_EXCL below. Otherwise, the file shall be created + * + * O_EXCL - If O_CREAT and O_EXCL are set, open() shall fail if the file exists. + * + * O_SYNC - Call sync() after each write. This flag should not be used with + * write(uint8_t), write_P(PGM_P), writeln_P(PGM_P), or the Arduino Print class. + * These functions do character at a time writes so sync() will be called + * after each byte. + * + * O_TRUNC - If the file exists and is a regular file, and the file is + * successfully opened and is not read only, its length shall be truncated to 0. + * + * \note Directory files must be opened read only. Write and truncation is + * not allowed for directory files. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include this SdFile is already open, \a difFile is not + * a directory, \a fileName is invalid, the file does not exist + * or can't be opened in the access mode specified by oflag. + */ +uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag) { + uint8_t dname[11]; + dir_t* p; + + // error if already open + if (isOpen())return false; + + if (!make83Name(fileName, dname)) return false; + vol_ = dirFile->vol_; + dirFile->rewind(); + + // bool for empty entry found + uint8_t emptyFound = false; + + // search for file + while (dirFile->curPosition_ < dirFile->fileSize_) { + uint8_t index = 0XF & (dirFile->curPosition_ >> 5); + p = dirFile->readDirCache(); + if (p == NULL) return false; + + if (p->name[0] == DIR_NAME_FREE || p->name[0] == DIR_NAME_DELETED) { + // remember first empty slot + if (!emptyFound) { + emptyFound = true; + dirIndex_ = index; + dirBlock_ = SdVolume::cacheBlockNumber_; + } + // done if no entries follow + if (p->name[0] == DIR_NAME_FREE) break; + } else if (!memcmp(dname, p->name, 11)) { + // don't open existing file if O_CREAT and O_EXCL + if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; + + // open found file + return openCachedEntry(0XF & index, oflag); + } + } + // only create file if O_CREAT and O_WRITE + if ((oflag & (O_CREAT | O_WRITE)) != (O_CREAT | O_WRITE)) return false; + + // cache found slot or add cluster if end of file + if (emptyFound) { + p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!p) return false; + } else { + if (dirFile->type_ == FAT_FILE_TYPE_ROOT16) return false; + + // add and zero cluster for dirFile - first cluster is in cache for write + if (!dirFile->addDirCluster()) return false; + + // use first entry in cluster + dirIndex_ = 0; + p = SdVolume::cacheBuffer_.dir; + } + // initialize as empty file + memset(p, 0, sizeof(dir_t)); + memcpy(p->name, dname, 11); + + // set timestamps + if (dateTime_) { + // call user function + dateTime_(&p->creationDate, &p->creationTime); + } else { + // use default date/time + p->creationDate = FAT_DEFAULT_DATE; + p->creationTime = FAT_DEFAULT_TIME; + } + p->lastAccessDate = p->creationDate; + p->lastWriteDate = p->creationDate; + p->lastWriteTime = p->creationTime; + + // force write of entry to SD + if (!SdVolume::cacheFlush()) return false; + + // open entry in cache + return openCachedEntry(dirIndex_, oflag); +} +//------------------------------------------------------------------------------ +/** + * Open a file by index. + * + * \param[in] dirFile An open SdFat instance for the directory. + * + * \param[in] index The \a index of the directory entry for the file to be + * opened. The value for \a index is (directory file position)/32. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. + * + * See open() by fileName for definition of flags and return values. + * + */ +uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag) { + // error if already open + if (isOpen())return false; + + // don't open existing file if O_CREAT and O_EXCL - user call error + if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; + + vol_ = dirFile->vol_; + + // seek to location of entry + if (!dirFile->seekSet(32 * index)) return false; + + // read entry into cache + dir_t* p = dirFile->readDirCache(); + if (p == NULL) return false; + + // error if empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_FREE || + p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') { + return false; + } + // open cached entry + return openCachedEntry(index & 0XF, oflag); +} +//------------------------------------------------------------------------------ +// open a cached directory entry. Assumes vol_ is initializes +uint8_t SdFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { + // location of entry in cache + dir_t* p = SdVolume::cacheBuffer_.dir + dirIndex; + + // write or truncate is an error for a directory or read-only file + if (p->attributes & (DIR_ATT_READ_ONLY | DIR_ATT_DIRECTORY)) { + if (oflag & (O_WRITE | O_TRUNC)) return false; + } + // remember location of directory entry on SD + dirIndex_ = dirIndex; + dirBlock_ = SdVolume::cacheBlockNumber_; + + // copy first cluster number for directory fields + firstCluster_ = (uint32_t)p->firstClusterHigh << 16; + firstCluster_ |= p->firstClusterLow; + + // make sure it is a normal file or subdirectory + if (DIR_IS_FILE(p)) { + fileSize_ = p->fileSize; + type_ = FAT_FILE_TYPE_NORMAL; + } else if (DIR_IS_SUBDIR(p)) { + if (!vol_->chainSize(firstCluster_, &fileSize_)) return false; + type_ = FAT_FILE_TYPE_SUBDIR; + } else { + return false; + } + // save open flags for read/write + flags_ = oflag & (O_ACCMODE | O_SYNC | O_APPEND); + + // set to start of file + curCluster_ = 0; + curPosition_ = 0; + + // truncate file to zero length if requested + if (oflag & O_TRUNC) return truncate(0); + return true; +} +//------------------------------------------------------------------------------ +/** + * Open a volume's root directory. + * + * \param[in] vol The FAT volume containing the root directory to be opened. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the FAT volume has not been initialized + * or it a FAT12 volume. + */ +uint8_t SdFile::openRoot(SdVolume* vol) { + // error if file is already open + if (isOpen()) return false; + + if (vol->fatType() == 16) { + type_ = FAT_FILE_TYPE_ROOT16; + firstCluster_ = 0; + fileSize_ = 32 * vol->rootDirEntryCount(); + } else if (vol->fatType() == 32) { + type_ = FAT_FILE_TYPE_ROOT32; + firstCluster_ = vol->rootDirStart(); + if (!vol->chainSize(firstCluster_, &fileSize_)) return false; + } else { + // volume is not initialized or FAT12 + return false; + } + vol_ = vol; + // read only + flags_ = O_READ; + + // set to start of file + curCluster_ = 0; + curPosition_ = 0; + + // root has no directory entry + dirBlock_ = 0; + dirIndex_ = 0; + return true; +} +//------------------------------------------------------------------------------ +/** %Print the name field of a directory entry in 8.3 format to Serial. + * + * \param[in] dir The directory structure containing the name. + * \param[in] width Blank fill name if length is less than \a width. + */ +void SdFile::printDirName(const dir_t& dir, uint8_t width) { + uint8_t w = 0; + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) { + Serial.print('.'); + w++; + } + Serial.print(dir.name[i]); + w++; + } + if (DIR_IS_SUBDIR(&dir)) { + Serial.print('/'); + w++; + } + while (w < width) { + Serial.print(' '); + w++; + } +} +//------------------------------------------------------------------------------ +/** %Print a directory date field to Serial. + * + * Format is yyyy-mm-dd. + * + * \param[in] fatDate The date field from a directory entry. + */ +void SdFile::printFatDate(uint16_t fatDate) { + Serial.print(FAT_YEAR(fatDate)); + Serial.print('-'); + printTwoDigits(FAT_MONTH(fatDate)); + Serial.print('-'); + printTwoDigits(FAT_DAY(fatDate)); +} +//------------------------------------------------------------------------------ +/** %Print a directory time field to Serial. + * + * Format is hh:mm:ss. + * + * \param[in] fatTime The time field from a directory entry. + */ +void SdFile::printFatTime(uint16_t fatTime) { + printTwoDigits(FAT_HOUR(fatTime)); + Serial.print(':'); + printTwoDigits(FAT_MINUTE(fatTime)); + Serial.print(':'); + printTwoDigits(FAT_SECOND(fatTime)); +} +//------------------------------------------------------------------------------ +/** %Print a value as two digits to Serial. + * + * \param[in] v Value to be printed, 0 <= \a v <= 99 + */ +void SdFile::printTwoDigits(uint8_t v) { + char str[3]; + str[0] = '0' + v/10; + str[1] = '0' + v % 10; + str[2] = 0; + Serial.print(str); +} +//------------------------------------------------------------------------------ +/** + * Read data from a file starting at the current position. + * + * \param[out] buf Pointer to the location that will receive the data. + * + * \param[in] nbyte Maximum number of bytes to read. + * + * \return For success read() returns the number of bytes read. + * A value less than \a nbyte, including zero, will be returned + * if end of file is reached. + * If an error occurs, read() returns -1. Possible errors include + * read() called before a file has been opened, corrupt file system + * or an I/O error occurred. + */ +int16_t SdFile::read(void* buf, uint16_t nbyte) { + uint8_t* dst = reinterpret_cast(buf); + + // error if not open or write only + if (!isOpen() || !(flags_ & O_READ)) return -1; + + // max bytes left in file + if (nbyte > (fileSize_ - curPosition_)) nbyte = fileSize_ - curPosition_; + + // amount left to read + uint16_t toRead = nbyte; + while (toRead > 0) { + uint32_t block; // raw device block number + uint16_t offset = curPosition_ & 0X1FF; // offset in block + if (type_ == FAT_FILE_TYPE_ROOT16) { + block = vol_->rootDirStart() + (curPosition_ >> 9); + } else { + uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); + if (offset == 0 && blockOfCluster == 0) { + // start of new cluster + if (curPosition_ == 0) { + // use first cluster in file + curCluster_ = firstCluster_; + } else { + // get next cluster from FAT + if (!vol_->fatGet(curCluster_, &curCluster_)) return -1; + } + } + block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; + } + uint16_t n = toRead; + + // amount to be read from current block + if (n > (512 - offset)) n = 512 - offset; + + // no buffering needed if n == 512 or user requests no buffering + if ((unbufferedRead() || n == 512) && + block != SdVolume::cacheBlockNumber_) { + if (!vol_->readData(block, offset, n, dst)) return -1; + dst += n; + } else { + // read block to cache and copy data to caller + if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_READ)) return -1; + uint8_t* src = SdVolume::cacheBuffer_.data + offset; + uint8_t* end = src + n; + while (src != end) *dst++ = *src++; + } + curPosition_ += n; + toRead -= n; + } + return nbyte; +} +//------------------------------------------------------------------------------ +/** + * Read the next directory entry from a directory file. + * + * \param[out] dir The dir_t struct that will receive the data. + * + * \return For success readDir() returns the number of bytes read. + * A value of zero will be returned if end of file is reached. + * If an error occurs, readDir() returns -1. Possible errors include + * readDir() called before a directory has been opened, this is not + * a directory file or an I/O error occurred. + */ +int8_t SdFile::readDir(dir_t* dir) { + int8_t n; + // if not a directory file or miss-positioned return an error + if (!isDir() || (0X1F & curPosition_)) return -1; + + while ((n = read(dir, sizeof(dir_t))) == sizeof(dir_t)) { + // last entry if DIR_NAME_FREE + if (dir->name[0] == DIR_NAME_FREE) break; + // skip empty entries and entry for . and .. + if (dir->name[0] == DIR_NAME_DELETED || dir->name[0] == '.') continue; + // return if normal file or subdirectory + if (DIR_IS_FILE_OR_SUBDIR(dir)) return n; + } + // error, end of file, or past last entry + return n < 0 ? -1 : 0; +} +//------------------------------------------------------------------------------ +// Read next directory entry into the cache +// Assumes file is correctly positioned +dir_t* SdFile::readDirCache(void) { + // error if not directory + if (!isDir()) return NULL; + + // index of entry in cache + uint8_t i = (curPosition_ >> 5) & 0XF; + + // use read to locate and cache block + if (read() < 0) return NULL; + + // advance to next entry + curPosition_ += 31; + + // return pointer to entry + return (SdVolume::cacheBuffer_.dir + i); +} +//------------------------------------------------------------------------------ +/** + * Remove a file. + * + * The directory entry and all data for the file are deleted. + * + * \note This function should not be used to delete the 8.3 version of a + * file that has a long name. For example if a file has the long name + * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file read-only, is a directory, + * or an I/O error occurred. + */ +uint8_t SdFile::remove(void) { + // free any clusters - will fail if read-only or directory + if (!truncate(0)) return false; + + // cache directory entry + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + + // mark entry deleted + d->name[0] = DIR_NAME_DELETED; + + // set this SdFile closed + type_ = FAT_FILE_TYPE_CLOSED; + + // write entry to SD + return SdVolume::cacheFlush(); +} +//------------------------------------------------------------------------------ +/** + * Remove a file. + * + * The directory entry and all data for the file are deleted. + * + * \param[in] dirFile The directory that contains the file. + * \param[in] fileName The name of the file to be removed. + * + * \note This function should not be used to delete the 8.3 version of a + * file that has a long name. For example if a file has the long name + * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is a directory, is read only, + * \a dirFile is not a directory, \a fileName is not found + * or an I/O error occurred. + */ +uint8_t SdFile::remove(SdFile* dirFile, const char* fileName) { + SdFile file; + if (!file.open(dirFile, fileName, O_WRITE)) return false; + return file.remove(); +} +//------------------------------------------------------------------------------ +/** Remove a directory file. + * + * The directory file will be removed only if it is empty and is not the + * root directory. rmDir() follows DOS and Windows and ignores the + * read-only attribute for the directory. + * + * \note This function should not be used to delete the 8.3 version of a + * directory that has a long name. For example if a directory has the + * long name "New folder" you should not delete the 8.3 name "NEWFOL~1". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is not a directory, is the root + * directory, is not empty, or an I/O error occurred. + */ +uint8_t SdFile::rmDir(void) { + // must be open subdirectory + if (!isSubDir()) return false; + + rewind(); + + // make sure directory is empty + while (curPosition_ < fileSize_) { + dir_t* p = readDirCache(); + if (p == NULL) return false; + // done if past last used entry + if (p->name[0] == DIR_NAME_FREE) break; + // skip empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + // error not empty + if (DIR_IS_FILE_OR_SUBDIR(p)) return false; + } + // convert empty directory to normal file for remove + type_ = FAT_FILE_TYPE_NORMAL; + flags_ |= O_WRITE; + return remove(); +} +//------------------------------------------------------------------------------ +/** Recursively delete a directory and all contained files. + * + * This is like the Unix/Linux 'rm -rf *' if called with the root directory + * hence the name. + * + * Warning - This will remove all contents of the directory including + * subdirectories. The directory will then be removed if it is not root. + * The read-only attribute for files will be ignored. + * + * \note This function should not be used to delete the 8.3 version of + * a directory that has a long name. See remove() and rmDir(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::rmRfStar(void) { + rewind(); + while (curPosition_ < fileSize_) { + SdFile f; + + // remember position + uint16_t index = curPosition_/32; + + dir_t* p = readDirCache(); + if (!p) return false; + + // done if past last entry + if (p->name[0] == DIR_NAME_FREE) break; + + // skip empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + + // skip if part of long file name or volume label in root + if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; + + if (!f.open(this, index, O_READ)) return false; + if (f.isSubDir()) { + // recursively delete + if (!f.rmRfStar()) return false; + } else { + // ignore read-only + f.flags_ |= O_WRITE; + if (!f.remove()) return false; + } + // position to next entry if required + if (curPosition_ != (32*(index + 1))) { + if (!seekSet(32*(index + 1))) return false; + } + } + // don't try to delete root + if (isRoot()) return true; + return rmDir(); +} +//------------------------------------------------------------------------------ +/** + * Sets a file's position. + * + * \param[in] pos The new position in bytes from the beginning of the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::seekSet(uint32_t pos) { + // error if file not open or seek past end of file + if (!isOpen() || pos > fileSize_) return false; + + if (type_ == FAT_FILE_TYPE_ROOT16) { + curPosition_ = pos; + return true; + } + if (pos == 0) { + // set position to start of file + curCluster_ = 0; + curPosition_ = 0; + return true; + } + // calculate cluster index for cur and new position + uint32_t nCur = (curPosition_ - 1) >> (vol_->clusterSizeShift_ + 9); + uint32_t nNew = (pos - 1) >> (vol_->clusterSizeShift_ + 9); + + if (nNew < nCur || curPosition_ == 0) { + // must follow chain from first cluster + curCluster_ = firstCluster_; + } else { + // advance from curPosition + nNew -= nCur; + } + while (nNew--) { + if (!vol_->fatGet(curCluster_, &curCluster_)) return false; + } + curPosition_ = pos; + return true; +} +//------------------------------------------------------------------------------ +/** + * The sync() call causes all modified data and directory fields + * to be written to the storage device. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include a call to sync() before a file has been + * opened or an I/O error. + */ +uint8_t SdFile::sync(void) { + // only allow open files and directories + if (!isOpen()) return false; + + if (flags_ & F_FILE_DIR_DIRTY) { + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + + // do not set filesize for dir files + if (!isDir()) d->fileSize = fileSize_; + + // update first cluster fields + d->firstClusterLow = firstCluster_ & 0XFFFF; + d->firstClusterHigh = firstCluster_ >> 16; + + // set modify time if user supplied a callback date/time function + if (dateTime_) { + dateTime_(&d->lastWriteDate, &d->lastWriteTime); + d->lastAccessDate = d->lastWriteDate; + } + // clear directory dirty + flags_ &= ~F_FILE_DIR_DIRTY; + } + return SdVolume::cacheFlush(); +} +//------------------------------------------------------------------------------ +/** + * Set a file's timestamps in its directory entry. + * + * \param[in] flags Values for \a flags are constructed by a bitwise-inclusive + * OR of flags from the following list + * + * T_ACCESS - Set the file's last access date. + * + * T_CREATE - Set the file's creation date and time. + * + * T_WRITE - Set the file's last write/modification date and time. + * + * \param[in] year Valid range 1980 - 2107 inclusive. + * + * \param[in] month Valid range 1 - 12 inclusive. + * + * \param[in] day Valid range 1 - 31 inclusive. + * + * \param[in] hour Valid range 0 - 23 inclusive. + * + * \param[in] minute Valid range 0 - 59 inclusive. + * + * \param[in] second Valid range 0 - 59 inclusive + * + * \note It is possible to set an invalid date since there is no check for + * the number of days in a month. + * + * \note + * Modify and access timestamps may be overwritten if a date time callback + * function has been set by dateTimeCallback(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::timestamp(uint8_t flags, uint16_t year, uint8_t month, + uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) { + if (!isOpen() + || year < 1980 + || year > 2107 + || month < 1 + || month > 12 + || day < 1 + || day > 31 + || hour > 23 + || minute > 59 + || second > 59) { + return false; + } + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + + uint16_t dirDate = FAT_DATE(year, month, day); + uint16_t dirTime = FAT_TIME(hour, minute, second); + if (flags & T_ACCESS) { + d->lastAccessDate = dirDate; + } + if (flags & T_CREATE) { + d->creationDate = dirDate; + d->creationTime = dirTime; + // seems to be units of 1/100 second not 1/10 as Microsoft states + d->creationTimeTenths = second & 1 ? 100 : 0; + } + if (flags & T_WRITE) { + d->lastWriteDate = dirDate; + d->lastWriteTime = dirTime; + } + SdVolume::cacheSetDirty(); + return sync(); +} +//------------------------------------------------------------------------------ +/** + * Truncate a file to a specified length. The current file position + * will be maintained if it is less than or equal to \a length otherwise + * it will be set to end of file. + * + * \param[in] length The desired length for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is read only, file is a directory, + * \a length is greater than the current file size or an I/O error occurs. + */ +uint8_t SdFile::truncate(uint32_t length) { +// error if not a normal file or read-only + if (!isFile() || !(flags_ & O_WRITE)) return false; + + // error if length is greater than current size + if (length > fileSize_) return false; + + // fileSize and length are zero - nothing to do + if (fileSize_ == 0) return true; + + // remember position for seek after truncation + uint32_t newPos = curPosition_ > length ? length : curPosition_; + + // position to last cluster in truncated file + if (!seekSet(length)) return false; + + if (length == 0) { + // free all clusters + if (!vol_->freeChain(firstCluster_)) return false; + firstCluster_ = 0; + } else { + uint32_t toFree; + if (!vol_->fatGet(curCluster_, &toFree)) return false; + + if (!vol_->isEOC(toFree)) { + // free extra clusters + if (!vol_->freeChain(toFree)) return false; + + // current cluster is end of chain + if (!vol_->fatPutEOC(curCluster_)) return false; + } + } + fileSize_ = length; + + // need to update directory entry + flags_ |= F_FILE_DIR_DIRTY; + + if (!sync()) return false; + + // set file to correct position + return seekSet(newPos); +} +//------------------------------------------------------------------------------ +/** + * Write data to an open file. + * + * \note Data is moved to the cache but may not be written to the + * storage device until sync() is called. + * + * \param[in] buf Pointer to the location of the data to be written. + * + * \param[in] nbyte Number of bytes to write. + * + * \return For success write() returns the number of bytes written, always + * \a nbyte. If an error occurs, write() returns -1. Possible errors + * include write() is called before a file has been opened, write is called + * for a read-only file, device is full, a corrupt file system or an I/O error. + * + */ +int16_t SdFile::write(const void* buf, uint16_t nbyte) { + // convert void* to uint8_t* - must be before goto statements + const uint8_t* src = reinterpret_cast(buf); + + // number of bytes left to write - must be before goto statements + uint16_t nToWrite = nbyte; + + // error if not a normal file or is read-only + if (!isFile() || !(flags_ & O_WRITE)) goto writeErrorReturn; + + // seek to end of file if append flag + if ((flags_ & O_APPEND) && curPosition_ != fileSize_) { + if (!seekEnd()) goto writeErrorReturn; + } + + while (nToWrite > 0) { + uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); + uint16_t blockOffset = curPosition_ & 0X1FF; + if (blockOfCluster == 0 && blockOffset == 0) { + // start of new cluster + if (curCluster_ == 0) { + if (firstCluster_ == 0) { + // allocate first cluster of file + if (!addCluster()) goto writeErrorReturn; + } else { + curCluster_ = firstCluster_; + } + } else { + uint32_t next; + if (!vol_->fatGet(curCluster_, &next)) return false; + if (vol_->isEOC(next)) { + // add cluster if at end of chain + if (!addCluster()) goto writeErrorReturn; + } else { + curCluster_ = next; + } + } + } + // max space in block + uint16_t n = 512 - blockOffset; + + // lesser of space and amount to write + if (n > nToWrite) n = nToWrite; + + // block for data write + uint32_t block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; + if (n == 512) { + // full block - don't need to use cache + // invalidate cache if block is in cache + if (SdVolume::cacheBlockNumber_ == block) { + SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; + } + if (!vol_->writeBlock(block, src)) goto writeErrorReturn; + src += 512; + } else { + if (blockOffset == 0 && curPosition_ >= fileSize_) { + // start of new block don't need to read into cache + if (!SdVolume::cacheFlush()) goto writeErrorReturn; + SdVolume::cacheBlockNumber_ = block; + SdVolume::cacheSetDirty(); + } else { + // rewrite part of block + if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) { + goto writeErrorReturn; + } + } + uint8_t* dst = SdVolume::cacheBuffer_.data + blockOffset; + uint8_t* end = dst + n; + while (dst != end) *dst++ = *src++; + } + nToWrite -= n; + curPosition_ += n; + } + if (curPosition_ > fileSize_) { + // update fileSize and insure sync will update dir entry + fileSize_ = curPosition_; + flags_ |= F_FILE_DIR_DIRTY; + } else if (dateTime_ && nbyte) { + // insure sync will update modified date and time + flags_ |= F_FILE_DIR_DIRTY; + } + + if (flags_ & O_SYNC) { + if (!sync()) goto writeErrorReturn; + } + return nbyte; + + writeErrorReturn: + // return for write error + writeError = true; + return -1; +} +//------------------------------------------------------------------------------ +/** + * Write a byte to a file. Required by the Arduino Print class. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::write(uint8_t b) { + write(&b, 1); +} +//------------------------------------------------------------------------------ +/** + * Write a string to a file. Used by the Arduino Print class. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::write(const char* str) { + write(str, strlen(str)); +} +//------------------------------------------------------------------------------ +/** + * Write a PROGMEM string to a file. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::write_P(PGM_P str) { + for (uint8_t c; (c = pgm_read_byte(str)); str++) write(c); +} +//------------------------------------------------------------------------------ +/** + * Write a PROGMEM string followed by CR/LF to a file. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::writeln_P(PGM_P str) { + write_P(str); + println(); +} diff --git a/Marlin/SdInfo.h b/Marlin/SdInfo.h new file mode 100644 index 000000000..bc4c6137f --- /dev/null +++ b/Marlin/SdInfo.h @@ -0,0 +1,232 @@ +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#ifndef SdInfo_h +#define SdInfo_h +#include +// Based on the document: +// +// SD Specifications +// Part 1 +// Physical Layer +// Simplified Specification +// Version 2.00 +// September 25, 2006 +// +// www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf +//------------------------------------------------------------------------------ +// SD card commands +/** GO_IDLE_STATE - init card in spi mode if CS low */ +uint8_t const CMD0 = 0X00; +/** SEND_IF_COND - verify SD Memory Card interface operating condition.*/ +uint8_t const CMD8 = 0X08; +/** SEND_CSD - read the Card Specific Data (CSD register) */ +uint8_t const CMD9 = 0X09; +/** SEND_CID - read the card identification information (CID register) */ +uint8_t const CMD10 = 0X0A; +/** SEND_STATUS - read the card status register */ +uint8_t const CMD13 = 0X0D; +/** READ_BLOCK - read a single data block from the card */ +uint8_t const CMD17 = 0X11; +/** WRITE_BLOCK - write a single data block to the card */ +uint8_t const CMD24 = 0X18; +/** WRITE_MULTIPLE_BLOCK - write blocks of data until a STOP_TRANSMISSION */ +uint8_t const CMD25 = 0X19; +/** ERASE_WR_BLK_START - sets the address of the first block to be erased */ +uint8_t const CMD32 = 0X20; +/** ERASE_WR_BLK_END - sets the address of the last block of the continuous + range to be erased*/ +uint8_t const CMD33 = 0X21; +/** ERASE - erase all previously selected blocks */ +uint8_t const CMD38 = 0X26; +/** APP_CMD - escape for application specific command */ +uint8_t const CMD55 = 0X37; +/** READ_OCR - read the OCR register of a card */ +uint8_t const CMD58 = 0X3A; +/** SET_WR_BLK_ERASE_COUNT - Set the number of write blocks to be + pre-erased before writing */ +uint8_t const ACMD23 = 0X17; +/** SD_SEND_OP_COMD - Sends host capacity support information and + activates the card's initialization process */ +uint8_t const ACMD41 = 0X29; +//------------------------------------------------------------------------------ +/** status for card in the ready state */ +uint8_t const R1_READY_STATE = 0X00; +/** status for card in the idle state */ +uint8_t const R1_IDLE_STATE = 0X01; +/** status bit for illegal command */ +uint8_t const R1_ILLEGAL_COMMAND = 0X04; +/** start data token for read or write single block*/ +uint8_t const DATA_START_BLOCK = 0XFE; +/** stop token for write multiple blocks*/ +uint8_t const STOP_TRAN_TOKEN = 0XFD; +/** start data token for write multiple blocks*/ +uint8_t const WRITE_MULTIPLE_TOKEN = 0XFC; +/** mask for data response tokens after a write block operation */ +uint8_t const DATA_RES_MASK = 0X1F; +/** write data accepted token */ +uint8_t const DATA_RES_ACCEPTED = 0X05; +//------------------------------------------------------------------------------ +typedef struct CID { + // byte 0 + uint8_t mid; // Manufacturer ID + // byte 1-2 + char oid[2]; // OEM/Application ID + // byte 3-7 + char pnm[5]; // Product name + // byte 8 + unsigned prv_m : 4; // Product revision n.m + unsigned prv_n : 4; + // byte 9-12 + uint32_t psn; // Product serial number + // byte 13 + unsigned mdt_year_high : 4; // Manufacturing date + unsigned reserved : 4; + // byte 14 + unsigned mdt_month : 4; + unsigned mdt_year_low :4; + // byte 15 + unsigned always1 : 1; + unsigned crc : 7; +}cid_t; +//------------------------------------------------------------------------------ +// CSD for version 1.00 cards +typedef struct CSDV1 { + // byte 0 + unsigned reserved1 : 6; + unsigned csd_ver : 2; + // byte 1 + uint8_t taac; + // byte 2 + uint8_t nsac; + // byte 3 + uint8_t tran_speed; + // byte 4 + uint8_t ccc_high; + // byte 5 + unsigned read_bl_len : 4; + unsigned ccc_low : 4; + // byte 6 + unsigned c_size_high : 2; + unsigned reserved2 : 2; + unsigned dsr_imp : 1; + unsigned read_blk_misalign :1; + unsigned write_blk_misalign : 1; + unsigned read_bl_partial : 1; + // byte 7 + uint8_t c_size_mid; + // byte 8 + unsigned vdd_r_curr_max : 3; + unsigned vdd_r_curr_min : 3; + unsigned c_size_low :2; + // byte 9 + unsigned c_size_mult_high : 2; + unsigned vdd_w_cur_max : 3; + unsigned vdd_w_curr_min : 3; + // byte 10 + unsigned sector_size_high : 6; + unsigned erase_blk_en : 1; + unsigned c_size_mult_low : 1; + // byte 11 + unsigned wp_grp_size : 7; + unsigned sector_size_low : 1; + // byte 12 + unsigned write_bl_len_high : 2; + unsigned r2w_factor : 3; + unsigned reserved3 : 2; + unsigned wp_grp_enable : 1; + // byte 13 + unsigned reserved4 : 5; + unsigned write_partial : 1; + unsigned write_bl_len_low : 2; + // byte 14 + unsigned reserved5: 2; + unsigned file_format : 2; + unsigned tmp_write_protect : 1; + unsigned perm_write_protect : 1; + unsigned copy : 1; + unsigned file_format_grp : 1; + // byte 15 + unsigned always1 : 1; + unsigned crc : 7; +}csd1_t; +//------------------------------------------------------------------------------ +// CSD for version 2.00 cards +typedef struct CSDV2 { + // byte 0 + unsigned reserved1 : 6; + unsigned csd_ver : 2; + // byte 1 + uint8_t taac; + // byte 2 + uint8_t nsac; + // byte 3 + uint8_t tran_speed; + // byte 4 + uint8_t ccc_high; + // byte 5 + unsigned read_bl_len : 4; + unsigned ccc_low : 4; + // byte 6 + unsigned reserved2 : 4; + unsigned dsr_imp : 1; + unsigned read_blk_misalign :1; + unsigned write_blk_misalign : 1; + unsigned read_bl_partial : 1; + // byte 7 + unsigned reserved3 : 2; + unsigned c_size_high : 6; + // byte 8 + uint8_t c_size_mid; + // byte 9 + uint8_t c_size_low; + // byte 10 + unsigned sector_size_high : 6; + unsigned erase_blk_en : 1; + unsigned reserved4 : 1; + // byte 11 + unsigned wp_grp_size : 7; + unsigned sector_size_low : 1; + // byte 12 + unsigned write_bl_len_high : 2; + unsigned r2w_factor : 3; + unsigned reserved5 : 2; + unsigned wp_grp_enable : 1; + // byte 13 + unsigned reserved6 : 5; + unsigned write_partial : 1; + unsigned write_bl_len_low : 2; + // byte 14 + unsigned reserved7: 2; + unsigned file_format : 2; + unsigned tmp_write_protect : 1; + unsigned perm_write_protect : 1; + unsigned copy : 1; + unsigned file_format_grp : 1; + // byte 15 + unsigned always1 : 1; + unsigned crc : 7; +}csd2_t; +//------------------------------------------------------------------------------ +// union of old and new style CSD register +union csd_t { + csd1_t v1; + csd2_t v2; +}; +#endif // SdInfo_h diff --git a/Marlin/SdVolume.cpp b/Marlin/SdVolume.cpp new file mode 100644 index 000000000..3c1e641c7 --- /dev/null +++ b/Marlin/SdVolume.cpp @@ -0,0 +1,295 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdFat.h" +//------------------------------------------------------------------------------ +// raw block cache +// init cacheBlockNumber_to invalid SD block number +uint32_t SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; +cache_t SdVolume::cacheBuffer_; // 512 byte cache for Sd2Card +Sd2Card* SdVolume::sdCard_; // pointer to SD card object +uint8_t SdVolume::cacheDirty_ = 0; // cacheFlush() will write block if true +uint32_t SdVolume::cacheMirrorBlock_ = 0; // mirror block for second FAT +//------------------------------------------------------------------------------ +// find a contiguous group of clusters +uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { + // start of group + uint32_t bgnCluster; + + // flag to save place to start next search + uint8_t setStart; + + // set search start cluster + if (*curCluster) { + // try to make file contiguous + bgnCluster = *curCluster + 1; + + // don't save new start location + setStart = false; + } else { + // start at likely place for free cluster + bgnCluster = allocSearchStart_; + + // save next search start if one cluster + setStart = 1 == count; + } + // end of group + uint32_t endCluster = bgnCluster; + + // last cluster of FAT + uint32_t fatEnd = clusterCount_ + 1; + + // search the FAT for free clusters + for (uint32_t n = 0;; n++, endCluster++) { + // can't find space checked all clusters + if (n >= clusterCount_) return false; + + // past end - start from beginning of FAT + if (endCluster > fatEnd) { + bgnCluster = endCluster = 2; + } + uint32_t f; + if (!fatGet(endCluster, &f)) return false; + + if (f != 0) { + // cluster in use try next cluster as bgnCluster + bgnCluster = endCluster + 1; + } else if ((endCluster - bgnCluster + 1) == count) { + // done - found space + break; + } + } + // mark end of chain + if (!fatPutEOC(endCluster)) return false; + + // link clusters + while (endCluster > bgnCluster) { + if (!fatPut(endCluster - 1, endCluster)) return false; + endCluster--; + } + if (*curCluster != 0) { + // connect chains + if (!fatPut(*curCluster, bgnCluster)) return false; + } + // return first cluster number to caller + *curCluster = bgnCluster; + + // remember possible next free cluster + if (setStart) allocSearchStart_ = bgnCluster + 1; + + return true; +} +//------------------------------------------------------------------------------ +uint8_t SdVolume::cacheFlush(void) { + if (cacheDirty_) { + if (!sdCard_->writeBlock(cacheBlockNumber_, cacheBuffer_.data)) { + return false; + } + // mirror FAT tables + if (cacheMirrorBlock_) { + if (!sdCard_->writeBlock(cacheMirrorBlock_, cacheBuffer_.data)) { + return false; + } + cacheMirrorBlock_ = 0; + } + cacheDirty_ = 0; + } + return true; +} +//------------------------------------------------------------------------------ +uint8_t SdVolume::cacheRawBlock(uint32_t blockNumber, uint8_t action) { + if (cacheBlockNumber_ != blockNumber) { + if (!cacheFlush()) return false; + if (!sdCard_->readBlock(blockNumber, cacheBuffer_.data)) return false; + cacheBlockNumber_ = blockNumber; + } + cacheDirty_ |= action; + return true; +} +//------------------------------------------------------------------------------ +// cache a zero block for blockNumber +uint8_t SdVolume::cacheZeroBlock(uint32_t blockNumber) { + if (!cacheFlush()) return false; + + // loop take less flash than memset(cacheBuffer_.data, 0, 512); + for (uint16_t i = 0; i < 512; i++) { + cacheBuffer_.data[i] = 0; + } + cacheBlockNumber_ = blockNumber; + cacheSetDirty(); + return true; +} +//------------------------------------------------------------------------------ +// return the size in bytes of a cluster chain +uint8_t SdVolume::chainSize(uint32_t cluster, uint32_t* size) const { + uint32_t s = 0; + do { + if (!fatGet(cluster, &cluster)) return false; + s += 512UL << clusterSizeShift_; + } while (!isEOC(cluster)); + *size = s; + return true; +} +//------------------------------------------------------------------------------ +// Fetch a FAT entry +uint8_t SdVolume::fatGet(uint32_t cluster, uint32_t* value) const { + if (cluster > (clusterCount_ + 1)) return false; + uint32_t lba = fatStartBlock_; + lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; + if (lba != cacheBlockNumber_) { + if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; + } + if (fatType_ == 16) { + *value = cacheBuffer_.fat16[cluster & 0XFF]; + } else { + *value = cacheBuffer_.fat32[cluster & 0X7F] & FAT32MASK; + } + return true; +} +//------------------------------------------------------------------------------ +// Store a FAT entry +uint8_t SdVolume::fatPut(uint32_t cluster, uint32_t value) { + // error if reserved cluster + if (cluster < 2) return false; + + // error if not in FAT + if (cluster > (clusterCount_ + 1)) return false; + + // calculate block address for entry + uint32_t lba = fatStartBlock_; + lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; + + if (lba != cacheBlockNumber_) { + if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; + } + // store entry + if (fatType_ == 16) { + cacheBuffer_.fat16[cluster & 0XFF] = value; + } else { + cacheBuffer_.fat32[cluster & 0X7F] = value; + } + cacheSetDirty(); + + // mirror second FAT + if (fatCount_ > 1) cacheMirrorBlock_ = lba + blocksPerFat_; + return true; +} +//------------------------------------------------------------------------------ +// free a cluster chain +uint8_t SdVolume::freeChain(uint32_t cluster) { + // clear free cluster location + allocSearchStart_ = 2; + + do { + uint32_t next; + if (!fatGet(cluster, &next)) return false; + + // free cluster + if (!fatPut(cluster, 0)) return false; + + cluster = next; + } while (!isEOC(cluster)); + + return true; +} +//------------------------------------------------------------------------------ +/** + * Initialize a FAT volume. + * + * \param[in] dev The SD card where the volume is located. + * + * \param[in] part The partition to be used. Legal values for \a part are + * 1-4 to use the corresponding partition on a device formatted with + * a MBR, Master Boot Record, or zero if the device is formatted as + * a super floppy with the FAT boot sector in block zero. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. Reasons for + * failure include not finding a valid partition, not finding a valid + * FAT file system in the specified partition or an I/O error. + */ +uint8_t SdVolume::init(Sd2Card* dev, uint8_t part) { + uint32_t volumeStartBlock = 0; + sdCard_ = dev; + // if part == 0 assume super floppy with FAT boot sector in block zero + // if part > 0 assume mbr volume with partition table + if (part) { + if (part > 4)return false; + if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; + part_t* p = &cacheBuffer_.mbr.part[part-1]; + if ((p->boot & 0X7F) !=0 || + p->totalSectors < 100 || + p->firstSector == 0) { + // not a valid partition + return false; + } + volumeStartBlock = p->firstSector; + } + if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; + bpb_t* bpb = &cacheBuffer_.fbs.bpb; + if (bpb->bytesPerSector != 512 || + bpb->fatCount == 0 || + bpb->reservedSectorCount == 0 || + bpb->sectorsPerCluster == 0) { + // not valid FAT volume + return false; + } + fatCount_ = bpb->fatCount; + blocksPerCluster_ = bpb->sectorsPerCluster; + + // determine shift that is same as multiply by blocksPerCluster_ + clusterSizeShift_ = 0; + while (blocksPerCluster_ != (1 << clusterSizeShift_)) { + // error if not power of 2 + if (clusterSizeShift_++ > 7) return false; + } + blocksPerFat_ = bpb->sectorsPerFat16 ? + bpb->sectorsPerFat16 : bpb->sectorsPerFat32; + + fatStartBlock_ = volumeStartBlock + bpb->reservedSectorCount; + + // count for FAT16 zero for FAT32 + rootDirEntryCount_ = bpb->rootDirEntryCount; + + // directory start for FAT16 dataStart for FAT32 + rootDirStart_ = fatStartBlock_ + bpb->fatCount * blocksPerFat_; + + // data start for FAT16 and FAT32 + dataStartBlock_ = rootDirStart_ + ((32 * bpb->rootDirEntryCount + 511)/512); + + // total blocks for FAT16 or FAT32 + uint32_t totalBlocks = bpb->totalSectors16 ? + bpb->totalSectors16 : bpb->totalSectors32; + // total data blocks + clusterCount_ = totalBlocks - (dataStartBlock_ - volumeStartBlock); + + // divide by cluster size to get cluster count + clusterCount_ >>= clusterSizeShift_; + + // FAT type is determined by cluster count + if (clusterCount_ < 4085) { + fatType_ = 12; + } else if (clusterCount_ < 65525) { + fatType_ = 16; + } else { + rootDirStart_ = bpb->fat32RootCluster; + fatType_ = 32; + } + return true; +} diff --git a/Marlin/applet/Marlin.cpp b/Marlin/applet/Marlin.cpp new file mode 100644 index 000000000..70800d881 --- /dev/null +++ b/Marlin/applet/Marlin.cpp @@ -0,0 +1,2050 @@ +#include "WProgram.h" +/* + Reprap firmware based on Sprinter and grbl. + Copyright (C) 2011 + + 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 . + */ + +/* + This firmware is a mashup of Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + The acceleration algorithm is derived from http://hwml.com/LeibRamp.pdf + This firmware is optimized for gen6 electronics. + */ + + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "speed_lookuptable.h" + +#ifdef SDSUPPORT +#include "SdFat.h" +#endif + +#ifndef CRITICAL_SECTION_START +#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli() +#define CRITICAL_SECTION_END SREG = _sreg +#endif + +// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html +// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes + +//Implemented Codes +//------------------- +// G0 -> G1 +// G1 - Coordinated Movement X Y Z E +// G4 - Dwell S or P +// G28 - Home all Axis +// G90 - Use Absolute Coordinates +// G91 - Use Relative Coordinates +// G92 - Set current position to cordinates given + +//RepRap M Codes +// M104 - Set extruder target temp +// M105 - Read current temp +// M106 - Fan on +// M107 - Fan off +// M109 - Wait for extruder current temp to reach target temp. +// M114 - Display current position + +//Custom M Codes +// M80 - Turn on Power Supply +// M20 - List SD card +// M21 - Init SD card +// M22 - Release SD card +// M23 - Select SD file (M23 filename.g) +// M24 - Start/resume SD print +// M25 - Pause SD print +// M26 - Set SD position in bytes (M26 S12345) +// M27 - Report SD print status +// M28 - Start SD write (M28 filename.g) +// M29 - Stop SD write +// M81 - Turn off Power Supply +// M82 - Set E codes absolute (default) +// M83 - Set E codes relative while in Absolute Coordinates (G90) mode +// M84 - Disable steppers until next move, +// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. +// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) +// M92 - Set axis_steps_per_unit - same syntax as G92 +// M115 - Capabilities string +// M140 - Set bed target temp +// M190 - Wait for bed current temp to reach target temp. +// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) +// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) +// M301 - Set PID parameters P I and D + + +//Stepper Movement Variables + +char axis_codes[NUM_AXIS] = { + 'X', 'Y', 'Z', 'E'}; +float destination[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +bool home_all_axis = true; +long feedrate = 1500, next_feedrate, saved_feedrate; +long gcode_N, gcode_LastN; +bool relative_mode = false; //Determines Absolute or Relative Coordinates +bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. +unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +// comm variables +#define MAX_CMD_SIZE 96 +#define BUFSIZE 8 +char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; +bool fromsd[BUFSIZE]; +int bufindr = 0; +int bufindw = 0; +int buflen = 0; +int i = 0; +char serial_char; +int serial_count = 0; +boolean comment_mode = false; +char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc + +// Manage heater variables. + +int target_raw = 0; +int current_raw = 0; +unsigned char temp_meas_ready = false; + +#ifdef PIDTEMP + double temp_iState = 0; + double temp_dState = 0; + double pTerm; + double iTerm; + double dTerm; + //int output; + double pid_error; + double temp_iState_min; + double temp_iState_max; + double pid_setpoint = 0.0; + double pid_input; + double pid_output; + bool pid_reset; +#endif + +#ifdef WATCHPERIOD +int watch_raw = -1000; +unsigned long watchmillis = 0; +#endif +#ifdef MINTEMP +int minttemp = temp2analogh(MINTEMP); +#endif +#ifdef MAXTEMP +int maxttemp = temp2analogh(MAXTEMP); +#endif + +//Inactivity shutdown variables +unsigned long previous_millis_cmd = 0; +unsigned long max_inactive_time = 0; +unsigned long stepper_inactive_time = 0; + +#ifdef SDSUPPORT +Sd2Card card; +SdVolume volume; +SdFile root; +SdFile file; +uint32_t filesize = 0; +uint32_t sdpos = 0; +bool sdmode = false; +bool sdactive = false; +bool savetosd = false; +int16_t n; + +void initsd(){ + sdactive = false; +#if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)){ + //if (!card.init(SPI_HALF_SPEED,SDSS)) + Serial.println("SD init fail"); + } + else if (!volume.init(&card)) + Serial.println("volume.init failed"); + else if (!root.openRoot(&volume)) + Serial.println("openRoot failed"); + else + sdactive = true; +#endif +} + +inline void write_command(char *buf){ + char* begin = buf; + char* npos = 0; + 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'; + //Serial.println(begin); + file.write(begin); + if (file.writeError){ + Serial.println("error writing to file"); + } +} +#endif + + +void setup() +{ + Serial.begin(BAUDRATE); + Serial.println("start"); + + for(int i = 0; i < BUFSIZE; i++){ + fromsd[i] = false; + } + + //Initialize Dir Pins +#if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); +#endif +#if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); +#endif +#if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); +#endif +#if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); +#endif + + //Initialize Enable Pins - steppers default to disabled. + +#if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); +#endif +#if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); +#endif +#if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); +#endif +#if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); +#endif + + //endstops and pullups +#ifdef ENDSTOPPULLUPS +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); +#endif +#else +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); +#endif +#endif + +#if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); +#endif +#if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); +#endif + + //Initialize Step Pins +#if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); +#endif +#if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); +#endif +#if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); +#endif +#if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); +#endif + for(int i=0; i < NUM_AXIS; i++){ + axis_steps_per_sqr_second[i] = max_acceleration_units_per_sq_second[i] * axis_steps_per_unit[i]; + } + +#ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif //PIDTEMP + +#ifdef SDSUPPORT + //power to SD reader +#if SDPOWER > -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); +#endif + initsd(); + +#endif + plan_init(); // Initialize planner; + st_init(); // Initialize stepper; + tp_init(); // Initialize temperature loop +} + + +void loop() +{ + if(buflen<3) + get_command(); + + if(buflen){ +#ifdef SDSUPPORT + if(savetosd){ + if(strstr(cmdbuffer[bufindr],"M29") == NULL){ + write_command(cmdbuffer[bufindr]); + Serial.println("ok"); + } + else{ + file.sync(); + file.close(); + savetosd = false; + Serial.println("Done saving file."); + } + } + else{ + process_commands(); + } +#else + process_commands(); +#endif + buflen = (buflen-1); + bufindr = (bufindr + 1)%BUFSIZE; + } + //check heater every n milliseconds + manage_heater(); + manage_inactivity(1); +} + + +inline void get_command() +{ + while( Serial.available() > 0 && buflen < BUFSIZE) { + serial_char = Serial.read(); + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) + { + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = false; + if(strstr(cmdbuffer[bufindw], "N") != NULL) + { + strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); + gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); + if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { + Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); + Serial.println(gcode_LastN); + //Serial.println(gcode_N); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + if(strstr(cmdbuffer[bufindw], "*") != NULL) + { + byte checksum = 0; + byte count = 0; + while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; + strchr_pointer = strchr(cmdbuffer[bufindw], '*'); + + if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { + Serial.print("Error: checksum mismatch, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + //if no errors, continue parsing + } + else + { + Serial.print("Error: No Checksum with line number, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + gcode_LastN = gcode_N; + //if no errors, continue parsing + } + else // if we don't receive 'N' but still see '*' + { + if((strstr(cmdbuffer[bufindw], "*") != NULL)) + { + Serial.print("Error: No Line Number with checksum, Last Line:"); + Serial.println(gcode_LastN); + serial_count = 0; + return; + } + } + if((strstr(cmdbuffer[bufindw], "G") != NULL)){ + strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); + switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ + case 0: + case 1: +#ifdef SDSUPPORT + if(savetosd) + break; +#endif + Serial.println("ok"); + break; + default: + break; + } + + } + bufindw = (bufindw + 1)%BUFSIZE; + buflen += 1; + + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#ifdef SDSUPPORT + if(!sdmode || serial_count!=0){ + return; + } + while( filesize > sdpos && buflen < BUFSIZE) { + n = file.read(); + serial_char = (char)n; + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) + { + sdpos = file.curPosition(); + if(sdpos >= filesize){ + sdmode = false; + Serial.println("Done printing file"); + } + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = true; + buflen += 1; + bufindw = (bufindw + 1)%BUFSIZE; + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#endif + +} + + +inline float code_value() { + return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); +} +inline long code_value_long() { + return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); +} +inline bool code_seen(char code_string[]) { + return (strstr(cmdbuffer[bufindr], code_string) != NULL); +} //Return True if the string was found + +inline bool code_seen(char code) +{ + strchr_pointer = strchr(cmdbuffer[bufindr], code); + return (strchr_pointer != NULL); //Return True if a character was found +} + +inline void process_commands() +{ + unsigned long codenum; //throw away variable + char *starpos = NULL; + + if(code_seen('G')) + { + switch((int)code_value()) + { + case 0: // G0 -> G1 + case 1: // G1 + get_coordinates(); // For X Y Z E F + prepare_move(); + previous_millis_cmd = millis(); + //ClearToSend(); + return; + //break; + case 4: // G4 dwell + codenum = 0; + if(code_seen('P')) codenum = code_value(); // milliseconds to wait + if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait + codenum += millis(); // keep track of when we started waiting + while(millis() < codenum ){ + manage_heater(); + } + break; + case 28: //G28 Home all Axis one at a time + saved_feedrate = feedrate; + for(int i=0; i < NUM_AXIS; i++) { + destination[i] = current_position[i]; + } + feedrate = 0; + + home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); + + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { + if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ + st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]; + prepare_move(); + + st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = -5 * X_HOME_DIR; + prepare_move(); + + st_synchronize(); + destination[X_AXIS] = 10 * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]/2 ; + prepare_move(); + st_synchronize(); + + current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = current_position[X_AXIS]; + feedrate = 0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { + if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]; + prepare_move(); + st_synchronize(); + + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = -5 * Y_HOME_DIR; + prepare_move(); + st_synchronize(); + + destination[Y_AXIS] = 10 * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]/2; + prepare_move(); + st_synchronize(); + + current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = current_position[Y_AXIS]; + feedrate = 0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { + if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]; + prepare_move(); + st_synchronize(); + + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = -2 * Z_HOME_DIR; + prepare_move(); + st_synchronize(); + + destination[Z_AXIS] = 3 * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]/2; + prepare_move(); + st_synchronize(); + + current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = current_position[Z_AXIS]; + feedrate = 0; + } + } + feedrate = saved_feedrate; + previous_millis_cmd = millis(); + break; + case 90: // G90 + relative_mode = false; + break; + case 91: // G91 + relative_mode = true; + break; + case 92: // G92 + if(!code_seen(axis_codes[E_AXIS])) + st_synchronize(); + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) current_position[i] = code_value(); + } + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + break; + + } + } + + else if(code_seen('M')) + { + + switch( (int)code_value() ) + { +#ifdef SDSUPPORT + + case 20: // M20 - list SD card + Serial.println("Begin file list"); + root.ls(); + Serial.println("End file list"); + break; + case 21: // M21 - init SD card + sdmode = false; + initsd(); + break; + case 22: //M22 - release SD card + sdmode = false; + sdactive = false; + break; + case 23: //M23 - Select file + if(sdactive){ + sdmode = false; + file.close(); + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos!=NULL) + *(starpos-1)='\0'; + if (file.open(&root, strchr_pointer + 4, O_READ)) { + Serial.print("File opened:"); + Serial.print(strchr_pointer + 4); + Serial.print(" Size:"); + Serial.println(file.fileSize()); + sdpos = 0; + filesize = file.fileSize(); + Serial.println("File selected"); + } + else{ + Serial.println("file.open failed"); + } + } + break; + case 24: //M24 - Start SD print + if(sdactive){ + sdmode = true; + } + break; + case 25: //M25 - Pause SD print + if(sdmode){ + sdmode = false; + } + break; + case 26: //M26 - Set SD index + if(sdactive && code_seen('S')){ + sdpos = code_value_long(); + file.seekSet(sdpos); + } + break; + case 27: //M27 - Get SD status + if(sdactive){ + Serial.print("SD printing byte "); + Serial.print(sdpos); + Serial.print("/"); + Serial.println(filesize); + } + else{ + Serial.println("Not SD printing"); + } + break; + case 28: //M28 - Start SD write + if(sdactive){ + char* npos = 0; + file.close(); + sdmode = false; + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + { + Serial.print("open failed, File: "); + Serial.print(strchr_pointer + 4); + Serial.print("."); + } + else{ + savetosd = true; + Serial.print("Writing to file: "); + Serial.println(strchr_pointer + 4); + } + } + break; + case 29: //M29 - Stop SD write + //processed in write to file routine above + //savetosd = false; + break; +#endif + case 104: // M104 +#ifdef PID_OPENLOOP + if (code_seen('S')) PidTemp_Output = code_value() * (PID_MAX/100.0); + if(pid_output > PID_MAX) pid_output = PID_MAX; + if(pid_output < 0) pid_output = 0; +#else //PID_OPENLOOP + if (code_seen('S')) { + target_raw = temp2analogh(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEMP + } +#ifdef WATCHPERIOD + if(target_raw > current_raw){ + watchmillis = max(1,millis()); + watch_raw = current_raw; + } + else{ + watchmillis = 0; + } +#endif //WATCHPERIOD +#endif //PID_OPENLOOP + break; + case 105: // M105 + Serial.print("ok T:"); + Serial.println(analog2temp(current_raw)); + return; + //break; + case 109: // M109 - Wait for extruder heater to reach target. + if (code_seen('S')) target_raw = temp2analogh(code_value()); +#ifdef WATCHPERIOD + if(target_raw>current_raw){ + watchmillis = max(1,millis()); + watch_raw = current_raw; + } + else{ + watchmillis = 0; + } +#endif + codenum = millis(); + while(current_raw < target_raw) { + if( (millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + Serial.print("T:"); + Serial.println( analog2temp(current_raw)); + codenum = millis(); + } + manage_heater(); + } + break; + case 190: + break; + case 82: + axis_relative_modes[3] = false; + break; + case 83: + axis_relative_modes[3] = true; + break; + case 84: + if(code_seen('S')){ + stepper_inactive_time = code_value() * 1000; + } + else{ + st_synchronize(); + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + break; + case 85: // M85 + code_seen('S'); + max_inactive_time = code_value() * 1000; + break; + case 92: // M92 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); + } + + break; + case 115: // M115 + Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + break; + case 114: // M114 + Serial.print("X:"); + Serial.print(current_position[X_AXIS]); + Serial.print("Y:"); + Serial.print(current_position[Y_AXIS]); + Serial.print("Z:"); + Serial.print(current_position[Z_AXIS]); + Serial.print("E:"); + Serial.println(current_position[E_AXIS]); + break; + case 119: // M119 +#if (X_MIN_PIN > -1) + Serial.print("x_min:"); + Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (X_MAX_PIN > -1) + Serial.print("x_max:"); + Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MIN_PIN > -1) + Serial.print("y_min:"); + Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MAX_PIN > -1) + Serial.print("y_max:"); + Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MIN_PIN > -1) + Serial.print("z_min:"); + Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MAX_PIN > -1) + Serial.print("z_max:"); + Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif + Serial.println(""); + break; + //TODO: update for all axis, use for loop + case 201: // M201 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#if 0 // Not used for Sprinter/grbl gen6 + case 202: // M202 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#endif +#ifdef PIDTEMP + case 301: // M301 + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; + Serial.print("Kp ");Serial.println(Kp); + Serial.print("Ki ");Serial.println(Ki/PID_dT); + Serial.print("Kd ");Serial.println(Kd*PID_dT); + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + break; +#endif //PIDTEMP + } + } + else{ + Serial.println("Unknown command:"); + Serial.println(cmdbuffer[bufindr]); + } + + ClearToSend(); +} + +void FlushSerialRequestResend() +{ + //char cmdbuffer[bufindr][100]="Resend:"; + Serial.flush(); + Serial.print("Resend:"); + Serial.println(gcode_LastN + 1); + ClearToSend(); +} + +void ClearToSend() +{ + previous_millis_cmd = millis(); +#ifdef SDSUPPORT + if(fromsd[bufindr]) + return; +#endif + Serial.println("ok"); +} + +inline void get_coordinates() +{ + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60); + for(int i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} + +void manage_heater() +{ + float pid_input; + float pid_output; + if(temp_meas_ready != true) + return; + +CRITICAL_SECTION_START; + temp_meas_ready = false; +CRITICAL_SECTION_END; + +#ifdef PIDTEMP + pid_input = analog2temp(current_raw);//ACT + +#ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + #define K1 0.8 + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } +#endif //PID_OPENLOOP +#ifdef PID_DEBUG + Serial.print(" Input "); + Serial.print(pid_input); + Serial.print(" Output "); + Serial.print(pid_output); + Serial.print(" pTerm "); + Serial.print(pTerm); + Serial.print(" iTerm "); + Serial.print(iTerm); + Serial.print(" dTerm "); + Serial.print(dTerm); + Serial.println(); +#endif //PID_DEBUG + OCR2B = pid_output; +#endif +} + + +int temp2analogu(int celsius, const short table[][2], int numtemps) { + int raw = 0; + byte i; + + for (i=1; i raw) { + celsius = (float)table[i-1][1] + + (float)(raw - table[i-1][0]) * + (float)(table[i][1] - table[i-1][1]) / + (float)(table[i][0] - table[i-1][0]); + + break; + } + } + // Overflow: Set to last value in the table + if (i == numtemps) celsius = table[i-1][1]; + + return celsius; +} + + +inline void kill() +{ + target_raw=0; +#ifdef PIDTEMP + pid_setpoint = 0.0; +#endif PIDTEMP + OCR2B = 0; + WRITE(HEATER_0_PIN,LOW); + + disable_x(); + disable_y(); + disable_z(); + disable_e(); + +} + +inline void manage_inactivity(byte debug) { + if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); + if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + check_axes_activity(); +} + +// Planner + +/* + Reasoning behind the mathematics in this module (in the key of 'Mathematica'): + + s == speed, a == acceleration, t == time, d == distance + + Basic definitions: + + Speed[s_, a_, t_] := s + (a*t) + Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] + + Distance to reach a specific speed with a constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] + d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() + + Speed after a given distance of travel with constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] + m -> Sqrt[2 a d + s^2] + + DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] + + When to start braking (di) to reach a specified destionation speed (s2) after accelerating + from initial speed s1 without ever stopping at a plateau: + + Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] + di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() + + IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) + */ + + +// The number of linear motions that can be in the plan at any give time +#define BLOCK_BUFFER_SIZE 16 +#define BLOCK_BUFFER_MASK 0x0f + +static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instructions +static volatile unsigned char block_buffer_head; // Index of the next block to be pushed +static volatile unsigned char block_buffer_tail; // Index of the block to process now + +// The current position of the tool in absolute steps +static long position[4]; + +#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 + +// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the +// given acceleration: +inline long estimate_acceleration_distance(long initial_rate, long target_rate, long acceleration) { + return( + (target_rate*target_rate-initial_rate*initial_rate)/ + (2L*acceleration) + ); +} + +// This function gives you the point at which you must start braking (at the rate of -acceleration) if +// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after +// a total travel of distance. This can be used to compute the intersection point between acceleration and +// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) + +inline long intersection_distance(long initial_rate, long final_rate, long acceleration, long distance) { + return( + (2*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ + (4*acceleration) + ); +} + +// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. + +void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { + if(block->busy == true) return; // If block is busy then bail out. + float entry_factor = entry_speed / block->nominal_speed; + float exit_factor = exit_speed / block->nominal_speed; + long initial_rate = ceil(block->nominal_rate*entry_factor); + long final_rate = ceil(block->nominal_rate*exit_factor); + +#ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; +#endif // ADVANCE + + // Limit minimal step rate (Otherwise the timer will overflow.) + if(initial_rate <32) initial_rate=32; + if(final_rate < 32) final_rate=32; + + // Calculate the acceleration steps + long acceleration = block->acceleration; + long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); + long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); + + // Calculate the size of Plateau of Nominal Rate. + long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; + + // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will + // have to use intersection_distance() to calculate when to abort acceleration and start braking + // in order to reach the final_rate exactly at the end of this block. + if (plateau_steps < 0) { + accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); + plateau_steps = 0; + } + + long decelerate_after = accelerate_steps+plateau_steps; + long acceleration_rate = (long)((float)acceleration * 8.388608); + + CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section + if(block->busy == false) { // Don't update variables if block is busy. + block->accelerate_until = accelerate_steps; + block->decelerate_after = decelerate_after; + block->acceleration_rate = acceleration_rate; + block->initial_rate = initial_rate; + block->final_rate = final_rate; +#ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; +#endif ADVANCE + } + CRITICAL_SECTION_END; +} + +// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the +// acceleration within the allotted distance. +inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { + return( + sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) + ); +} + +// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. +// This method will calculate the junction jerk as the euclidean distance between the nominal +// velocities of the respective blocks. +inline float junction_jerk(block_t *before, block_t *after) { + return(sqrt( + pow((before->speed_x-after->speed_x), 2)+ + pow((before->speed_y-after->speed_y), 2)+ + pow((before->speed_z-after->speed_z)*axis_steps_per_unit[Z_AXIS]/axis_steps_per_unit[X_AXIS], 2)) + ); +} + +// Return the safe speed which is max_jerk/2, e.g. the +// speed under which you cannot exceed max_jerk no matter what you do. +float safe_speed(block_t *block) { + float safe_speed; + safe_speed = max_jerk/2; + if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; + return safe_speed; +} + +// The kernel called by planner_recalculate() when scanning the plan from last to first entry. +void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + + float entry_speed = current->nominal_speed; + float exit_factor; + float exit_speed; + if (next) { + exit_speed = next->entry_speed; + } + else { + exit_speed = safe_speed(current); + } + + // Calculate the entry_factor for the current block. + if (previous) { + // Reduce speed so that junction_jerk is within the maximum allowed + float jerk = junction_jerk(previous, current); + if((previous->steps_x == 0) && (previous->steps_y == 0)) { + entry_speed = safe_speed(current); + } + else if (jerk > max_jerk) { + entry_speed = (max_jerk/jerk) * entry_speed; + } + // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. + if (entry_speed > exit_speed) { + float max_entry_speed = max_allowable_speed(-acceleration,exit_speed, current->millimeters); + if (max_entry_speed < entry_speed) { + entry_speed = max_entry_speed; + } + } + } + else { + entry_speed = safe_speed(current); + } + // Store result + current->entry_speed = entry_speed; +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the reverse pass. +void planner_reverse_pass() { + char block_index = block_buffer_head; + block_t *block[3] = { + NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index--; + if(block_index < 0) { + block_index = BLOCK_BUFFER_SIZE-1; + } + block[2]= block[1]; + block[1]= block[0]; + block[0] = &block_buffer[block_index]; + planner_reverse_pass_kernel(block[0], block[1], block[2]); + } + planner_reverse_pass_kernel(NULL, block[0], block[1]); +} + +// The kernel called by planner_recalculate() when scanning the plan from first to last entry. +void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + if(previous) { + // If the previous block is an acceleration block, but it is not long enough to + // complete the full speed change within the block, we need to adjust out entry + // speed accordingly. Remember current->entry_factor equals the exit factor of + // the previous block. + if(previous->entry_speed < current->entry_speed) { + float max_entry_speed = max_allowable_speed(-acceleration, previous->entry_speed, previous->millimeters); + if (max_entry_speed < current->entry_speed) { + current->entry_speed = max_entry_speed; + } + } + } +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the forward pass. +void planner_forward_pass() { + char block_index = block_buffer_tail; + block_t *block[3] = { + NULL, NULL, NULL }; + + while(block_index != block_buffer_head) { + block[0] = block[1]; + block[1] = block[2]; + block[2] = &block_buffer[block_index]; + planner_forward_pass_kernel(block[0],block[1],block[2]); + block_index = (block_index+1) & BLOCK_BUFFER_MASK; + } + planner_forward_pass_kernel(block[1], block[2], NULL); +} + +// Recalculates the trapezoid speed profiles for all blocks in the plan according to the +// entry_factor for each junction. Must be called by planner_recalculate() after +// updating the blocks. +void planner_recalculate_trapezoids() { + char block_index = block_buffer_tail; + block_t *current; + block_t *next = NULL; + while(block_index != block_buffer_head) { + current = next; + next = &block_buffer[block_index]; + if (current) { + calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); + } + block_index = (block_index+1) & BLOCK_BUFFER_MASK; + } + calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); +} + +// Recalculates the motion plan according to the following algorithm: +// +// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) +// so that: +// a. The junction jerk is within the set limit +// b. No speed reduction within one block requires faster deceleration than the one, true constant +// acceleration. +// 2. Go over every block in chronological order and dial down junction speed reduction values if +// a. The speed increase within one block would require faster accelleration than the one, true +// constant acceleration. +// +// When these stages are complete all blocks have an entry_factor that will allow all speed changes to +// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than +// the set limit. Finally it will: +// +// 3. Recalculate trapezoids for all blocks. + +void planner_recalculate() { + planner_reverse_pass(); + planner_forward_pass(); + planner_recalculate_trapezoids(); +} + +void plan_init() { + block_buffer_head = 0; + block_buffer_tail = 0; + memset(position, 0, sizeof(position)); // clear position +} + + +inline void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & BLOCK_BUFFER_MASK; + } +} + +inline block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} + +void check_axes_activity() { + unsigned char x_active = 0; + unsigned char y_active = 0; + unsigned char z_active = 0; + unsigned char e_active = 0; + block_t *block; + + if(block_buffer_tail != block_buffer_head) { + char block_index = block_buffer_tail; + while(block_index != block_buffer_head) { + block = &block_buffer[block_index]; + if(block->steps_x != 0) x_active++; + if(block->steps_y != 0) y_active++; + if(block->steps_z != 0) z_active++; + if(block->steps_e != 0) e_active++; + block_index = (block_index+1) & BLOCK_BUFFER_MASK; + } + } + if((DISABLE_X) && (x_active == 0)) disable_x(); + if((DISABLE_Y) && (y_active == 0)) disable_y(); + if((DISABLE_Z) && (z_active == 0)) disable_z(); + if((DISABLE_E) && (e_active == 0)) disable_e(); +} + +// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in +// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration +// calculation the caller must also provide the physical length of the line in millimeters. +void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { + + // The target position of the tool in absolute steps + // Calculate target position in absolute steps + long target[4]; + target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + // Calculate the buffer head after we push this byte + int next_buffer_head = (block_buffer_head + 1) & BLOCK_BUFFER_MASK; + + // If the buffer is full: good! That means we are well ahead of the robot. + // Rest here until there is room in the buffer. + while(block_buffer_tail == next_buffer_head) { + manage_heater(); + manage_inactivity(1); + } + + // Prepare to set up new block + block_t *block = &block_buffer[block_buffer_head]; + + // Mark block as not busy (Not executed by the stepper interrupt) + block->busy = false; + + // Number of steps for each axis + block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); + block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); + block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); + block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); + + // Bail if this is a zero-length block + if (block->step_event_count == 0) { + return; + }; + + float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; + float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); + + unsigned long microseconds; + microseconds = lround((block->millimeters/feed_rate)*1000000); + + // Calculate speed in mm/minute for each axis + float multiplier = 60.0*1000000.0/microseconds; + block->speed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + + // Limit speed per axis + float speed_factor = 1; + float tmp_speed_factor; + if(abs(block->speed_x) > max_feedrate[X_AXIS]) { + speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_x); + } + if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ + tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ + tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); + if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_e) > max_feedrate[E_AXIS]){ + tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); + if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; + } + multiplier = multiplier * speed_factor; + block->speed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + + block->nominal_speed = block->millimeters * multiplier; + block->nominal_rate = ceil(block->step_event_count * multiplier / 60); + if(block->nominal_rate < 32) block->nominal_rate = 32; + block->entry_speed = safe_speed(block); + + // Compute the acceleration rate for the trapezoid generator. + float travel_per_step = block->millimeters/block->step_event_count; + if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { + block->acceleration = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + } + else { + block->acceleration = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + // Limit acceleration per axis + if((block->acceleration * block->steps_x / block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) + block->acceleration = axis_steps_per_sqr_second[X_AXIS]; + if((block->acceleration * block->steps_y / block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) + block->acceleration = axis_steps_per_sqr_second[Y_AXIS]; + if((block->acceleration * block->steps_e / block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) + block->acceleration = axis_steps_per_sqr_second[E_AXIS]; + if((block->acceleration * block->steps_z / block->step_event_count) > axis_steps_per_sqr_second[Z_AXIS]) + block->acceleration = axis_steps_per_sqr_second[Z_AXIS]; + } + +#ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { + block->advance_rate = 0; + block->advance = 0; + } + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } + +#endif // ADVANCE + + // compute a preliminary conservative acceleration trapezoid + float safespeed = safe_speed(block); + calculate_trapezoid_for_block(block, safespeed, safespeed); + + // Compute direction bits for this block + block->direction_bits = 0; + if (target[X_AXIS] < position[X_AXIS]) { + block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); + + // Move buffer head + block_buffer_head = next_buffer_head; + + // Update position + memcpy(position, target, sizeof(target)); // position[] = target[] + + planner_recalculate(); + st_wake_up(); +} + +void plan_set_position(float x, float y, float z, float e) +{ + position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); +} + +// Stepper + +// intRes = intIn1 * intIn2 >> 16 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 24 bit result +#define MultiU16X8toH16(intRes, charIn1, intIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %A1, %A2 \n\t" \ +"add %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r0 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (charIn1), \ +"d" (intIn2) \ +: \ +"r26" , "r27" \ +) + +// intRes = longIn1 * longIn2 >> 24 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 48bit result +#define MultiU24X24toH16(intRes, longIn1, longIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"mov r27, r1 \n\t" \ +"mul %B1, %C2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %C1, %C2 \n\t" \ +"add %B0, r0 \n\t" \ +"mul %C1, %B2 \n\t" \ +"add %A0, r0 \n\t" \ +"adc %B0, r1 \n\t" \ +"mul %A1, %C2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %B2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %C1, %A2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %A2 \n\t" \ +"add r27, r1 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r27 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (longIn1), \ +"d" (longIn2) \ +: \ +"r26" , "r27" \ +) + +// Some useful constants + +#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. +// The slope of acceleration is calculated with the leib ramp alghorithm. + +void st_wake_up() { + // TCNT1 = 0; + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + +inline unsigned short calc_timer(unsigned short step_rate) { + unsigned short timer; + if(step_rate < 32) step_rate = 32; + step_rate -= 32; // Correct for minimal speed + if(step_rate > (8*256)){ // higher step rate + unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; + unsigned char tmp_step_rate = (step_rate & 0x00ff); + unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); + MultiU16X8toH16(timer, tmp_step_rate, gain); + timer = (unsigned short)pgm_read_word_near(table_address) - timer; + } + else { // lower step rates + unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; + table_address += ((step_rate)>>1) & 0xfffc; + timer = (unsigned short)pgm_read_word_near(table_address); + timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); + } + if(timer < 100) timer = 100; + return timer; +} + +// Initializes the trapezoid generator from the current block. Called whenever a new +// block begins. +inline void trapezoid_generator_reset() { + accelerate_until = current_block->accelerate_until; + decelerate_after = current_block->decelerate_after; + acceleration_rate = current_block->acceleration_rate; + initial_rate = current_block->initial_rate; + final_rate = current_block->final_rate; + advance = current_block->initial_advance; + final_advance = current_block->final_advance; + deceleration_time = 0; + advance_rate = current_block->advance_rate; + // step_rate to timer interval + acc_step_rate = initial_rate; + acceleration_time = calc_timer(acc_step_rate); + OCR1A = acceleration_time; +} + +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +ISR(TIMER1_COMPA_vect) +{ + if(busy){ /*Serial.println("BUSY")*/; + return; + } // The busy-flag is used to avoid reentering this interrupt + + busy = true; + sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) + + // If there is no current block, attempt to pop one from the buffer + if (current_block == NULL) { + // Anything in the buffer? + current_block = plan_get_current_block(); + if (current_block != NULL) { + trapezoid_generator_reset(); + counter_x = -(current_block->step_event_count >> 1); + counter_y = counter_x; + counter_z = counter_x; + counter_e = counter_x; + step_events_completed = 0; + e_steps = 0; + } + else { + DISABLE_STEPPER_DRIVER_INTERRUPT(); + } + } + + if (current_block != NULL) { + // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt + out_bits = current_block->direction_bits; + +#ifdef ADVANCE + // Calculate E early. + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; +#endif //ADVANCE + + // Set direction en check limit switches + if ((out_bits & (1<step_event_count; + } + } + else // +direction + WRITE(X_DIR_PIN,!INVERT_X_DIR); + + if ((out_bits & (1<step_event_count; + } + } + else // +direction + WRITE(Y_DIR_PIN,!INVERT_Y_DIR); + + if ((out_bits & (1<step_event_count; + } + } + else // +direction + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + +#ifndef ADVANCE + if ((out_bits & (1<steps_x; + if (counter_x > 0) { + WRITE(X_STEP_PIN, HIGH); + counter_x -= current_block->step_event_count; + WRITE(X_STEP_PIN, LOW); + } + + counter_y += current_block->steps_y; + if (counter_y > 0) { + WRITE(Y_STEP_PIN, HIGH); + counter_y -= current_block->step_event_count; + WRITE(Y_STEP_PIN, LOW); + } + + counter_z += current_block->steps_z; + if (counter_z > 0) { + WRITE(Z_STEP_PIN, HIGH); + counter_z -= current_block->step_event_count; + WRITE(Z_STEP_PIN, LOW); + } + +#ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } +#endif //!ADVANCE + + // Calculare new timer value + unsigned short timer; + unsigned short step_rate; + if (step_events_completed < accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, acceleration_rate); + acc_step_rate += initial_rate; + + // upper limit + if(acc_step_rate > current_block->nominal_rate) + acc_step_rate = current_block->nominal_rate; + + // step_rate to timer interval + timer = calc_timer(acc_step_rate); + advance += advance_rate; + acceleration_time += timer; + OCR1A = timer; + } + else if (step_events_completed > decelerate_after) { + MultiU24X24toH16(step_rate, deceleration_time, acceleration_rate); + + if(step_rate > acc_step_rate) { // Check step_rate stays positive + step_rate = final_rate; + } + else { + step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. + } + + // lower limit + if(step_rate < final_rate) + step_rate = final_rate; + + // step_rate to timer interval + timer = calc_timer(step_rate); +#ifdef ADVANCE + advance -= advance_rate; + if(advance < final_advance) + advance = final_advance; +#endif //ADVANCE + deceleration_time += timer; + OCR1A = timer; + } + // If current block is finished, reset pointer + step_events_completed += 1; + if (step_events_completed >= current_block->step_event_count) { + current_block = NULL; + plan_discard_current_block(); + } + } + busy=false; +} + +#ifdef ADVANCE + +unsigned char old_OCR0A; +// Timer interrupt for E. e_steps is set in the main routine; +// Timer 0 is shared with millies +ISR(TIMER0_COMPA_vect) +{ + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // e_steps is changed in timer 1 interrupt + CRITICAL_SECTION_START; + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + CRITICAL_SECTION_END; + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; +} +#endif // ADVANCE + +void st_init() +{ + // waveform generation = 0100 = CTC + TCCR1B &= ~(1<= 16) + { + current_raw = 16383 - raw_temp_value; + temp_meas_ready = true; + temp_count = 0; + raw_temp_value = 0; +#ifdef MAXTEMP + if(current_raw >= maxttemp) { + target_raw = 0; +#ifdef PIDTEMP + OCR2B = 0; +#else + WRITE(HEATER_0_PIN,LOW); +#endif + } +#endif +#ifdef MINTEMP + if(current_raw <= minttemp) { + target_raw = 0; +#ifdef PIDTEMP + OCR2B = 0; +#else + WRITE(HEATER_0_PIN,LOW); +#endif + } +#endif +#ifndef PIDTEMP + if(current_raw >= target_raw) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } +#endif + } +} + + +#include + +int main(void) +{ + init(); + + setup(); + + for (;;) + loop(); + + return 0; +} + diff --git a/Marlin/createTemperatureLookup.py b/Marlin/createTemperatureLookup.py new file mode 100644 index 000000000..e60a490c8 --- /dev/null +++ b/Marlin/createTemperatureLookup.py @@ -0,0 +1,127 @@ +#!/usr/bin/python +# +# Creates a C code lookup table for doing ADC to temperature conversion +# on a microcontroller +# based on: http://hydraraptor.blogspot.com/2007/10/measuring-temperature-easy-way.html +"""Thermistor Value Lookup Table Generator + +Generates lookup to temperature values for use in a microcontroller in C format based on: +http://hydraraptor.blogspot.com/2007/10/measuring-temperature-easy-way.html + +The main use is for Arduino programs that read data from the circuit board described here: +http://make.rrrf.org/ts-1.0 + +Usage: python createTemperatureLookup.py [options] + +Options: + -h, --help show this help + --r0=... thermistor rating where # is the ohm rating of the thermistor at t0 (eg: 10K = 10000) + --t0=... thermistor temp rating where # is the temperature in Celsuis to get r0 (from your datasheet) + --beta=... thermistor beta rating. see http://reprap.org/bin/view/Main/MeasuringThermistorBeta + --r1=... R1 rating where # is the ohm rating of R1 (eg: 10K = 10000) + --r2=... R2 rating where # is the ohm rating of R2 (eg: 10K = 10000) + --num-temps=... the number of temperature points to calculate (default: 20) + --max-adc=... the max ADC reading to use. if you use R1, it limits the top value for the thermistor circuit, and thus the possible range of ADC values +""" + +from math import * +import sys +import getopt + +class Thermistor: + "Class to do the thermistor maths" + def __init__(self, r0, t0, beta, r1, r2): + self.r0 = r0 # stated resistance, e.g. 10K + self.t0 = t0 + 273.15 # temperature at stated resistance, e.g. 25C + self.beta = beta # stated beta, e.g. 3500 + self.vadc = 5.0 # ADC reference + self.vcc = 5.0 # supply voltage to potential divider + self.k = r0 * exp(-beta / self.t0) # constant part of calculation + + if r1 > 0: + self.vs = r1 * self.vcc / (r1 + r2) # effective bias voltage + self.rs = r1 * r2 / (r1 + r2) # effective bias impedance + else: + self.vs = self.vcc # effective bias voltage + self.rs = r2 # effective bias impedance + + def temp(self,adc): + "Convert ADC reading into a temperature in Celcius" + v = adc * self.vadc / 1024 # convert the 10 bit ADC value to a voltage + r = self.rs * v / (self.vs - v) # resistance of thermistor + return (self.beta / log(r / self.k)) - 273.15 # temperature + + def setting(self, t): + "Convert a temperature into a ADC value" + r = self.r0 * exp(self.beta * (1 / (t + 273.15) - 1 / self.t0)) # resistance of the thermistor + v = self.vs * r / (self.rs + r) # the voltage at the potential divider + return round(v / self.vadc * 1024) # the ADC reading + +def main(argv): + + r0 = 10000; + t0 = 25; + beta = 3947; + r1 = 680; + r2 = 1600; + num_temps = int(20); + + try: + opts, args = getopt.getopt(argv, "h", ["help", "r0=", "t0=", "beta=", "r1=", "r2="]) + except getopt.GetoptError: + usage() + sys.exit(2) + + for opt, arg in opts: + if opt in ("-h", "--help"): + usage() + sys.exit() + elif opt == "--r0": + r0 = int(arg) + elif opt == "--t0": + t0 = int(arg) + elif opt == "--beta": + beta = int(arg) + elif opt == "--r1": + r1 = int(arg) + elif opt == "--r2": + r2 = int(arg) + + if r1: + max_adc = int(1023 * r1 / (r1 + r2)); + else: + max_adc = 1023 + increment = int(max_adc/(num_temps-1)); + + t = Thermistor(r0, t0, beta, r1, r2) + + adcs = range(1, max_adc, increment); +# adcs = [1, 20, 25, 30, 35, 40, 45, 50, 60, 70, 80, 90, 100, 110, 130, 150, 190, 220, 250, 300] + first = 1 + + print "// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)" + print "// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)" + print "// ./createTemperatureLookup.py --r0=%s --t0=%s --r1=%s --r2=%s --beta=%s --max-adc=%s" % (r0, t0, r1, r2, beta, max_adc) + print "// r0: %s" % (r0) + print "// t0: %s" % (t0) + print "// r1: %s" % (r1) + print "// r2: %s" % (r2) + print "// beta: %s" % (beta) + print "// max adc: %s" % (max_adc) + print "#define NUMTEMPS %s" % (len(adcs)) + print "short temptable[NUMTEMPS][2] = {" + + counter = 0 + for adc in adcs: + counter = counter +1 + if counter == len(adcs): + print " {%s, %s}" % (adc, int(t.temp(adc))) + else: + print " {%s, %s}," % (adc, int(t.temp(adc))) + print "};" + +def usage(): + print __doc__ + +if __name__ == "__main__": + main(sys.argv[1:]) diff --git a/Marlin/fastio.h b/Marlin/fastio.h new file mode 100644 index 000000000..1d28d0582 --- /dev/null +++ b/Marlin/fastio.h @@ -0,0 +1,2558 @@ +/* + This code contibuted by Triffid_Hunter and modified by Kliment + why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html +*/ + +#ifndef _ARDUINO_H +#define _ARDUINO_H + +#include + +/* + utility functions +*/ + +#ifndef MASK +/// MASKING- returns \f$2^PIN\f$ + #define MASK(PIN) (1 << PIN) +#endif + +/* + magic I/O routines + + now you can simply SET_OUTPUT(STEP); WRITE(STEP, 1); WRITE(STEP, 0); +*/ + +/// Read a pin +#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) +/// write to a pin +#define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) +/// toggle a pin +#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) + +/// set pin as input +#define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) +/// set pin as output +#define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= MASK(DIO ## IO ## _PIN); } while (0) + +/// check if pin is an input +#define _GET_INPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) == 0) +/// check if pin is an output +#define _GET_OUTPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) != 0) + +// why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html + +/// Read a pin wrapper +#define READ(IO) _READ(IO) +/// Write to a pin wrapper +#define WRITE(IO, v) _WRITE(IO, v) +/// toggle a pin wrapper +#define TOGGLE(IO) _TOGGLE(IO) + +/// set pin as input wrapper +#define SET_INPUT(IO) _SET_INPUT(IO) +/// set pin as output wrapper +#define SET_OUTPUT(IO) _SET_OUTPUT(IO) + +/// check if pin is an input wrapper +#define GET_INPUT(IO) _GET_INPUT(IO) +/// check if pin is an output wrapper +#define GET_OUTPUT(IO) _GET_OUTPUT(IO) + +/* + ports and functions + + added as necessary or if I feel like it- not a comprehensive list! +*/ + +#if defined (__AVR_ATmega168__) || defined (__AVR_ATmega328__) || defined (__AVR_ATmega328P__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO13 +#define MISO DIO12 +#define MOSI DIO11 +#define SS DIO10 + +// TWI (I2C) +#define SCL AIO5 +#define SDA AIO4 + +// timers and PWM +#define OC0A DIO6 +#define OC0B DIO5 +#define OC1A DIO9 +#define OC1B DIO10 +#define OC2A DIO11 +#define OC2B DIO3 + +#define DEBUG_LED AIO5 + +/* +pins +*/ + +#define DIO0_PIN PIND0 +#define DIO0_RPORT PIND +#define DIO0_WPORT PORTD +#define DIO0_DDR DDRD +#define DIO0_PWM NULL + +#define DIO1_PIN PIND1 +#define DIO1_RPORT PIND +#define DIO1_WPORT PORTD +#define DIO1_DDR DDRD +#define DIO1_PWM NULL + +#define DIO2_PIN PIND2 +#define DIO2_RPORT PIND +#define DIO2_WPORT PORTD +#define DIO2_DDR DDRD +#define DIO2_PWM NULL + +#define DIO3_PIN PIND3 +#define DIO3_RPORT PIND +#define DIO3_WPORT PORTD +#define DIO3_DDR DDRD +#define DIO3_PWM &OCR2B + +#define DIO4_PIN PIND4 +#define DIO4_RPORT PIND +#define DIO4_WPORT PORTD +#define DIO4_DDR DDRD +#define DIO4_PWM NULL + +#define DIO5_PIN PIND5 +#define DIO5_RPORT PIND +#define DIO5_WPORT PORTD +#define DIO5_DDR DDRD +#define DIO5_PWM &OCR0B + +#define DIO6_PIN PIND6 +#define DIO6_RPORT PIND +#define DIO6_WPORT PORTD +#define DIO6_DDR DDRD +#define DIO6_PWM &OCR0A + +#define DIO7_PIN PIND7 +#define DIO7_RPORT PIND +#define DIO7_WPORT PORTD +#define DIO7_DDR DDRD +#define DIO7_PWM NULL + +#define DIO8_PIN PINB0 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_DDR DDRB +#define DIO8_PWM NULL + +#define DIO9_PIN PINB1 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_DDR DDRB +#define DIO9_PWM NULL + +#define DIO10_PIN PINB2 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM NULL + +#define DIO11_PIN PINB3 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM &OCR2A + +#define DIO12_PIN PINB4 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINB5 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_DDR DDRB +#define DIO13_PWM NULL + + +#define DIO14_PIN PINC0 +#define DIO14_RPORT PINC +#define DIO14_WPORT PORTC +#define DIO14_DDR DDRC +#define DIO14_PWM NULL + +#define DIO15_PIN PINC1 +#define DIO15_RPORT PINC +#define DIO15_WPORT PORTC +#define DIO15_DDR DDRC +#define DIO15_PWM NULL + +#define DIO16_PIN PINC2 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_DDR DDRC +#define DIO16_PWM NULL + +#define DIO17_PIN PINC3 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_DDR DDRC +#define DIO17_PWM NULL + +#define DIO18_PIN PINC4 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_DDR DDRC +#define DIO18_PWM NULL + +#define DIO19_PIN PINC5 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_DDR DDRC +#define DIO19_PWM NULL + +#define DIO20_PIN PINC6 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_DDR DDRC +#define DIO20_PWM NULL + +#define DIO21_PIN PINC7 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_DDR DDRC +#define DIO21_PWM NULL + + + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL + +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL + +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL + +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM &OCR2A + +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM NULL + +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL + +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL + +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM NULL + + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL + +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL + +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL + +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL + +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL + +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL + +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL + +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL + +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL + +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL + +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM &OCR2B + +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL + +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM &OCR0B + +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM &OCR0A + +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL +#endif /* _AVR_ATmega{168,328,328P}__ */ + +#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) +// UART +#define RXD DIO8 +#define TXD DIO9 +#define RXD0 DIO8 +#define TXD0 DIO9 + +#define RXD1 DIO10 +#define TXD1 DIO11 + +// SPI +#define SCK DIO7 +#define MISO DIO6 +#define MOSI DIO5 +#define SS DIO4 + +// TWI (I2C) +#define SCL DIO16 +#define SDA DIO17 + +// timers and PWM +#define OC0A DIO3 +#define OC0B DIO4 +#define OC1A DIO13 +#define OC1B DIO12 +#define OC2A DIO15 +#define OC2B DIO14 + +#define DEBUG_LED DIO0 +/* +pins +*/ + +#define DIO0_PIN PINB0 +#define DIO0_RPORT PINB +#define DIO0_WPORT PORTB +#define DIO0_DDR DDRB +#define DIO0_PWM NULL + +#define DIO1_PIN PINB1 +#define DIO1_RPORT PINB +#define DIO1_WPORT PORTB +#define DIO1_DDR DDRB +#define DIO1_PWM NULL + +#define DIO2_PIN PINB2 +#define DIO2_RPORT PINB +#define DIO2_WPORT PORTB +#define DIO2_DDR DDRB +#define DIO2_PWM NULL + +#define DIO3_PIN PINB3 +#define DIO3_RPORT PINB +#define DIO3_WPORT PORTB +#define DIO3_DDR DDRB +#define DIO3_PWM &OCR0A + +#define DIO4_PIN PINB4 +#define DIO4_RPORT PINB +#define DIO4_WPORT PORTB +#define DIO4_DDR DDRB +#define DIO4_PWM &OCR0B + +#define DIO5_PIN PINB5 +#define DIO5_RPORT PINB +#define DIO5_WPORT PORTB +#define DIO5_DDR DDRB +#define DIO5_PWM NULL + +#define DIO6_PIN PINB6 +#define DIO6_RPORT PINB +#define DIO6_WPORT PORTB +#define DIO6_DDR DDRB +#define DIO6_PWM NULL + +#define DIO7_PIN PINB7 +#define DIO7_RPORT PINB +#define DIO7_WPORT PORTB +#define DIO7_DDR DDRB +#define DIO7_PWM NULL + +#define DIO8_PIN PIND0 +#define DIO8_RPORT PIND +#define DIO8_WPORT PORTD +#define DIO8_DDR DDRD +#define DIO8_PWM NULL + +#define DIO9_PIN PIND1 +#define DIO9_RPORT PIND +#define DIO9_WPORT PORTD +#define DIO9_DDR DDRD +#define DIO9_PWM NULL + +#define DIO10_PIN PIND2 +#define DIO10_RPORT PIND +#define DIO10_WPORT PORTD +#define DIO10_DDR DDRD +#define DIO10_PWM NULL + +#define DIO11_PIN PIND3 +#define DIO11_RPORT PIND +#define DIO11_WPORT PORTD +#define DIO11_DDR DDRD +#define DIO11_PWM NULL + +#define DIO12_PIN PIND4 +#define DIO12_RPORT PIND +#define DIO12_WPORT PORTD +#define DIO12_DDR DDRD +#define DIO12_PWM NULL + +#define DIO13_PIN PIND5 +#define DIO13_RPORT PIND +#define DIO13_WPORT PORTD +#define DIO13_DDR DDRD +#define DIO13_PWM NULL + +#define DIO14_PIN PIND6 +#define DIO14_RPORT PIND +#define DIO14_WPORT PORTD +#define DIO14_DDR DDRD +#define DIO14_PWM &OCR2B + +#define DIO15_PIN PIND7 +#define DIO15_RPORT PIND +#define DIO15_WPORT PORTD +#define DIO15_DDR DDRD +#define DIO15_PWM &OCR2A + +#define DIO16_PIN PINC0 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_DDR DDRC +#define DIO16_PWM NULL + +#define DIO17_PIN PINC1 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_DDR DDRC +#define DIO17_PWM NULL + +#define DIO18_PIN PINC2 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_DDR DDRC +#define DIO18_PWM NULL + +#define DIO19_PIN PINC3 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_DDR DDRC +#define DIO19_PWM NULL + +#define DIO20_PIN PINC4 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_DDR DDRC +#define DIO20_PWM NULL + +#define DIO21_PIN PINC5 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_DDR DDRC +#define DIO21_PWM NULL + +#define DIO22_PIN PINC6 +#define DIO22_RPORT PINC +#define DIO22_WPORT PORTC +#define DIO22_DDR DDRC +#define DIO22_PWM NULL + +#define DIO23_PIN PINC7 +#define DIO23_RPORT PINC +#define DIO23_WPORT PORTC +#define DIO23_DDR DDRC +#define DIO23_PWM NULL + +#define DIO24_PIN PINA7 +#define DIO24_RPORT PINA +#define DIO24_WPORT PORTA +#define DIO24_DDR DDRA +#define DIO24_PWM NULL + +#define DIO25_PIN PINA6 +#define DIO25_RPORT PINA +#define DIO25_WPORT PORTA +#define DIO25_DDR DDRA +#define DIO25_PWM NULL + +#define DIO26_PIN PINA5 +#define DIO26_RPORT PINA +#define DIO26_WPORT PORTA +#define DIO26_DDR DDRA +#define DIO26_PWM NULL + +#define DIO27_PIN PINA4 +#define DIO27_RPORT PINA +#define DIO27_WPORT PORTA +#define DIO27_DDR DDRA +#define DIO27_PWM NULL + +#define DIO28_PIN PINA3 +#define DIO28_RPORT PINA +#define DIO28_WPORT PORTA +#define DIO28_DDR DDRA +#define DIO28_PWM NULL + +#define DIO29_PIN PINA2 +#define DIO29_RPORT PINA +#define DIO29_WPORT PORTA +#define DIO29_DDR DDRA +#define DIO29_PWM NULL + +#define DIO30_PIN PINA1 +#define DIO30_RPORT PINA +#define DIO30_WPORT PORTA +#define DIO30_DDR DDRA +#define DIO30_PWM NULL + +#define DIO31_PIN PINA0 +#define DIO31_RPORT PINA +#define DIO31_WPORT PORTA +#define DIO31_DDR DDRA +#define DIO31_PWM NULL + +#define AIO0_PIN PINA0 +#define AIO0_RPORT PINA +#define AIO0_WPORT PORTA +#define AIO0_DDR DDRA +#define AIO0_PWM NULL + +#define AIO1_PIN PINA1 +#define AIO1_RPORT PINA +#define AIO1_WPORT PORTA +#define AIO1_DDR DDRA +#define AIO1_PWM NULL + +#define AIO2_PIN PINA2 +#define AIO2_RPORT PINA +#define AIO2_WPORT PORTA +#define AIO2_DDR DDRA +#define AIO2_PWM NULL + +#define AIO3_PIN PINA3 +#define AIO3_RPORT PINA +#define AIO3_WPORT PORTA +#define AIO3_DDR DDRA +#define AIO3_PWM NULL + +#define AIO4_PIN PINA4 +#define AIO4_RPORT PINA +#define AIO4_WPORT PORTA +#define AIO4_DDR DDRA +#define AIO4_PWM NULL + +#define AIO5_PIN PINA5 +#define AIO5_RPORT PINA +#define AIO5_WPORT PORTA +#define AIO5_DDR DDRA +#define AIO5_PWM NULL + +#define AIO6_PIN PINA6 +#define AIO6_RPORT PINA +#define AIO6_WPORT PORTA +#define AIO6_DDR DDRA +#define AIO6_PWM NULL + +#define AIO7_PIN PINA7 +#define AIO7_RPORT PINA +#define AIO7_WPORT PORTA +#define AIO7_DDR DDRA +#define AIO7_PWM NULL + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL + +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL + +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL + +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL + +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL + +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL + +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL + +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL + +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL + +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL + +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM &OCR0A + +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM &OCR0B + +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL + +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL + +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM NULL + + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL + +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL + +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL + +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL + +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL + +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL + +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL + +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL + +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL + +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL + +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL + +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL + +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL + +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM &OCR2B + +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM &OCR2A +#endif /* _AVR_ATmega{644,644P,644PA}__ */ + +#if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO52 +#define MISO DIO50 +#define MOSI DIO51 +#define SS DIO53 + +// TWI (I2C) +#define SCL DIO21 +#define SDA DIO20 + +// timers and PWM +#define OC0A DIO13 +#define OC0B DIO4 +#define OC1A DIO11 +#define OC1B DIO12 +#define OC2A DIO10 +#define OC2B DIO9 +#define OC3A DIO5 +#define OC3B DIO2 +#define OC3C DIO3 +#define OC4A DIO6 +#define OC4B DIO7 +#define OC4C DIO8 +#define OC5A DIO46 +#define OC5B DIO45 +#define OC5C DIO44 + +// change for your board +#define DEBUG_LED DIO21 + +/* +pins +*/ +#define DIO0_PIN PINE0 +#define DIO0_RPORT PINE +#define DIO0_WPORT PORTE +#define DIO0_DDR DDRE +#define DIO0_PWM NULL + +#define DIO1_PIN PINE1 +#define DIO1_RPORT PINE +#define DIO1_WPORT PORTE +#define DIO1_DDR DDRE +#define DIO1_PWM NULL + +#define DIO2_PIN PINE4 +#define DIO2_RPORT PINE +#define DIO2_WPORT PORTE +#define DIO2_DDR DDRE +#define DIO2_PWM &OCR3BL + +#define DIO3_PIN PINE5 +#define DIO3_RPORT PINE +#define DIO3_WPORT PORTE +#define DIO3_DDR DDRE +#define DIO3_PWM &OCR3CL + +#define DIO4_PIN PING5 +#define DIO4_RPORT PING +#define DIO4_WPORT PORTG +#define DIO4_DDR DDRG +#define DIO4_PWM &OCR0B + +#define DIO5_PIN PINE3 +#define DIO5_RPORT PINE +#define DIO5_WPORT PORTE +#define DIO5_DDR DDRE +#define DIO5_PWM &OCR3AL + +#define DIO6_PIN PINH3 +#define DIO6_RPORT PINH +#define DIO6_WPORT PORTH +#define DIO6_DDR DDRH +#define DIO6_PWM &OCR4AL + +#define DIO7_PIN PINH4 +#define DIO7_RPORT PINH +#define DIO7_WPORT PORTH +#define DIO7_DDR DDRH +#define DIO7_PWM &OCR4BL + +#define DIO8_PIN PINH5 +#define DIO8_RPORT PINH +#define DIO8_WPORT PORTH +#define DIO8_DDR DDRH +#define DIO8_PWM &OCR4CL + +#define DIO9_PIN PINH6 +#define DIO9_RPORT PINH +#define DIO9_WPORT PORTH +#define DIO9_DDR DDRH +#define DIO9_PWM &OCR2B + +#define DIO10_PIN PINB4 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM &OCR2A + +#define DIO11_PIN PINB5 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM NULL + +#define DIO12_PIN PINB6 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINB7 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_DDR DDRB +#define DIO13_PWM &OCR0A + +#define DIO14_PIN PINJ1 +#define DIO14_RPORT PINJ +#define DIO14_WPORT PORTJ +#define DIO14_DDR DDRJ +#define DIO14_PWM NULL + +#define DIO15_PIN PINJ0 +#define DIO15_RPORT PINJ +#define DIO15_WPORT PORTJ +#define DIO15_DDR DDRJ +#define DIO15_PWM NULL + +#define DIO16_PIN PINH1 +#define DIO16_RPORT PINH +#define DIO16_WPORT PORTH +#define DIO16_DDR DDRH +#define DIO16_PWM NULL + +#define DIO17_PIN PINH0 +#define DIO17_RPORT PINH +#define DIO17_WPORT PORTH +#define DIO17_DDR DDRH +#define DIO17_PWM NULL + +#define DIO18_PIN PIND3 +#define DIO18_RPORT PIND +#define DIO18_WPORT PORTD +#define DIO18_DDR DDRD +#define DIO18_PWM NULL + +#define DIO19_PIN PIND2 +#define DIO19_RPORT PIND +#define DIO19_WPORT PORTD +#define DIO19_DDR DDRD +#define DIO19_PWM NULL + +#define DIO20_PIN PIND1 +#define DIO20_RPORT PIND +#define DIO20_WPORT PORTD +#define DIO20_DDR DDRD +#define DIO20_PWM NULL + +#define DIO21_PIN PIND0 +#define DIO21_RPORT PIND +#define DIO21_WPORT PORTD +#define DIO21_DDR DDRD +#define DIO21_PWM NULL + +#define DIO22_PIN PINA0 +#define DIO22_RPORT PINA +#define DIO22_WPORT PORTA +#define DIO22_DDR DDRA +#define DIO22_PWM NULL + +#define DIO23_PIN PINA1 +#define DIO23_RPORT PINA +#define DIO23_WPORT PORTA +#define DIO23_DDR DDRA +#define DIO23_PWM NULL + +#define DIO24_PIN PINA2 +#define DIO24_RPORT PINA +#define DIO24_WPORT PORTA +#define DIO24_DDR DDRA +#define DIO24_PWM NULL + +#define DIO25_PIN PINA3 +#define DIO25_RPORT PINA +#define DIO25_WPORT PORTA +#define DIO25_DDR DDRA +#define DIO25_PWM NULL + +#define DIO26_PIN PINA4 +#define DIO26_RPORT PINA +#define DIO26_WPORT PORTA +#define DIO26_DDR DDRA +#define DIO26_PWM NULL + +#define DIO27_PIN PINA5 +#define DIO27_RPORT PINA +#define DIO27_WPORT PORTA +#define DIO27_DDR DDRA +#define DIO27_PWM NULL + +#define DIO28_PIN PINA6 +#define DIO28_RPORT PINA +#define DIO28_WPORT PORTA +#define DIO28_DDR DDRA +#define DIO28_PWM NULL + +#define DIO29_PIN PINA7 +#define DIO29_RPORT PINA +#define DIO29_WPORT PORTA +#define DIO29_DDR DDRA +#define DIO29_PWM NULL + +#define DIO30_PIN PINC7 +#define DIO30_RPORT PINC +#define DIO30_WPORT PORTC +#define DIO30_DDR DDRC +#define DIO30_PWM NULL + +#define DIO31_PIN PINC6 +#define DIO31_RPORT PINC +#define DIO31_WPORT PORTC +#define DIO31_DDR DDRC +#define DIO31_PWM NULL + +#define DIO32_PIN PINC5 +#define DIO32_RPORT PINC +#define DIO32_WPORT PORTC +#define DIO32_DDR DDRC +#define DIO32_PWM NULL + +#define DIO33_PIN PINC4 +#define DIO33_RPORT PINC +#define DIO33_WPORT PORTC +#define DIO33_DDR DDRC +#define DIO33_PWM NULL + +#define DIO34_PIN PINC3 +#define DIO34_RPORT PINC +#define DIO34_WPORT PORTC +#define DIO34_DDR DDRC +#define DIO34_PWM NULL + +#define DIO35_PIN PINC2 +#define DIO35_RPORT PINC +#define DIO35_WPORT PORTC +#define DIO35_DDR DDRC +#define DIO35_PWM NULL + +#define DIO36_PIN PINC1 +#define DIO36_RPORT PINC +#define DIO36_WPORT PORTC +#define DIO36_DDR DDRC +#define DIO36_PWM NULL + +#define DIO37_PIN PINC0 +#define DIO37_RPORT PINC +#define DIO37_WPORT PORTC +#define DIO37_DDR DDRC +#define DIO37_PWM NULL + +#define DIO38_PIN PIND7 +#define DIO38_RPORT PIND +#define DIO38_WPORT PORTD +#define DIO38_DDR DDRD +#define DIO38_PWM NULL + +#define DIO39_PIN PING2 +#define DIO39_RPORT PING +#define DIO39_WPORT PORTG +#define DIO39_DDR DDRG +#define DIO39_PWM NULL + +#define DIO40_PIN PING1 +#define DIO40_RPORT PING +#define DIO40_WPORT PORTG +#define DIO40_DDR DDRG +#define DIO40_PWM NULL + +#define DIO41_PIN PING0 +#define DIO41_RPORT PING +#define DIO41_WPORT PORTG +#define DIO41_DDR DDRG +#define DIO41_PWM NULL + +#define DIO42_PIN PINL7 +#define DIO42_RPORT PINL +#define DIO42_WPORT PORTL +#define DIO42_DDR DDRL +#define DIO42_PWM NULL + +#define DIO43_PIN PINL6 +#define DIO43_RPORT PINL +#define DIO43_WPORT PORTL +#define DIO43_DDR DDRL +#define DIO43_PWM NULL + +#define DIO44_PIN PINL5 +#define DIO44_RPORT PINL +#define DIO44_WPORT PORTL +#define DIO44_DDR DDRL +#define DIO44_PWM &OCR5CL + +#define DIO45_PIN PINL4 +#define DIO45_RPORT PINL +#define DIO45_WPORT PORTL +#define DIO45_DDR DDRL +#define DIO45_PWM &OCR5BL + +#define DIO46_PIN PINL3 +#define DIO46_RPORT PINL +#define DIO46_WPORT PORTL +#define DIO46_DDR DDRL +#define DIO46_PWM &OCR5AL + +#define DIO47_PIN PINL2 +#define DIO47_RPORT PINL +#define DIO47_WPORT PORTL +#define DIO47_DDR DDRL +#define DIO47_PWM NULL + +#define DIO48_PIN PINL1 +#define DIO48_RPORT PINL +#define DIO48_WPORT PORTL +#define DIO48_DDR DDRL +#define DIO48_PWM NULL + +#define DIO49_PIN PINL0 +#define DIO49_RPORT PINL +#define DIO49_WPORT PORTL +#define DIO49_DDR DDRL +#define DIO49_PWM NULL + +#define DIO50_PIN PINB3 +#define DIO50_RPORT PINB +#define DIO50_WPORT PORTB +#define DIO50_DDR DDRB +#define DIO50_PWM NULL + +#define DIO51_PIN PINB2 +#define DIO51_RPORT PINB +#define DIO51_WPORT PORTB +#define DIO51_DDR DDRB +#define DIO51_PWM NULL + +#define DIO52_PIN PINB1 +#define DIO52_RPORT PINB +#define DIO52_WPORT PORTB +#define DIO52_DDR DDRB +#define DIO52_PWM NULL + +#define DIO53_PIN PINB0 +#define DIO53_RPORT PINB +#define DIO53_WPORT PORTB +#define DIO53_DDR DDRB +#define DIO53_PWM NULL + +#define DIO54_PIN PINF0 +#define DIO54_RPORT PINF +#define DIO54_WPORT PORTF +#define DIO54_DDR DDRF +#define DIO54_PWM NULL + +#define DIO55_PIN PINF1 +#define DIO55_RPORT PINF +#define DIO55_WPORT PORTF +#define DIO55_DDR DDRF +#define DIO55_PWM NULL + +#define DIO56_PIN PINF2 +#define DIO56_RPORT PINF +#define DIO56_WPORT PORTF +#define DIO56_DDR DDRF +#define DIO56_PWM NULL + +#define DIO57_PIN PINF3 +#define DIO57_RPORT PINF +#define DIO57_WPORT PORTF +#define DIO57_DDR DDRF +#define DIO57_PWM NULL + +#define DIO58_PIN PINF4 +#define DIO58_RPORT PINF +#define DIO58_WPORT PORTF +#define DIO58_DDR DDRF +#define DIO58_PWM NULL + +#define DIO59_PIN PINF5 +#define DIO59_RPORT PINF +#define DIO59_WPORT PORTF +#define DIO59_DDR DDRF +#define DIO59_PWM NULL + +#define DIO60_PIN PINF6 +#define DIO60_RPORT PINF +#define DIO60_WPORT PORTF +#define DIO60_DDR DDRF +#define DIO60_PWM NULL + +#define DIO61_PIN PINF7 +#define DIO61_RPORT PINF +#define DIO61_WPORT PORTF +#define DIO61_DDR DDRF +#define DIO61_PWM NULL + +#define DIO62_PIN PINK0 +#define DIO62_RPORT PINK +#define DIO62_WPORT PORTK +#define DIO62_DDR DDRK +#define DIO62_PWM NULL + +#define DIO63_PIN PINK1 +#define DIO63_RPORT PINK +#define DIO63_WPORT PORTK +#define DIO63_DDR DDRK +#define DIO63_PWM NULL + +#define DIO64_PIN PINK2 +#define DIO64_RPORT PINK +#define DIO64_WPORT PORTK +#define DIO64_DDR DDRK +#define DIO64_PWM NULL + +#define DIO65_PIN PINK3 +#define DIO65_RPORT PINK +#define DIO65_WPORT PORTK +#define DIO65_DDR DDRK +#define DIO65_PWM NULL + +#define DIO66_PIN PINK4 +#define DIO66_RPORT PINK +#define DIO66_WPORT PORTK +#define DIO66_DDR DDRK +#define DIO66_PWM NULL + +#define DIO67_PIN PINK5 +#define DIO67_RPORT PINK +#define DIO67_WPORT PORTK +#define DIO67_DDR DDRK +#define DIO67_PWM NULL + +#define DIO68_PIN PINK6 +#define DIO68_RPORT PINK +#define DIO68_WPORT PORTK +#define DIO68_DDR DDRK +#define DIO68_PWM NULL + +#define DIO69_PIN PINK7 +#define DIO69_RPORT PINK +#define DIO69_WPORT PORTK +#define DIO69_DDR DDRK +#define DIO69_PWM NULL + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM NULL +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM &OCR2A +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM &OCR0A + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM NULL +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_DDR DDRE +#define PE0_PWM NULL +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_DDR DDRE +#define PE1_PWM NULL +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_DDR DDRE +#define PE2_PWM NULL +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_DDR DDRE +#define PE3_PWM &OCR3AL +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_DDR DDRE +#define PE4_PWM &OCR3BL +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_DDR DDRE +#define PE5_PWM &OCR3CL +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_DDR DDRE +#define PE6_PWM NULL +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_DDR DDRE +#define PE7_PWM NULL + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_DDR DDRF +#define PF0_PWM NULL +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_DDR DDRF +#define PF1_PWM NULL +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_DDR DDRF +#define PF2_PWM NULL +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_DDR DDRF +#define PF3_PWM NULL +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_DDR DDRF +#define PF4_PWM NULL +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_DDR DDRF +#define PF5_PWM NULL +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_DDR DDRF +#define PF6_PWM NULL +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_DDR DDRF +#define PF7_PWM NULL + +#undef PG0 +#define PG0_PIN PING0 +#define PG0_RPORT PING +#define PG0_WPORT PORTG +#define PG0_DDR DDRG +#define PG0_PWM NULL +#undef PG1 +#define PG1_PIN PING1 +#define PG1_RPORT PING +#define PG1_WPORT PORTG +#define PG1_DDR DDRG +#define PG1_PWM NULL +#undef PG2 +#define PG2_PIN PING2 +#define PG2_RPORT PING +#define PG2_WPORT PORTG +#define PG2_DDR DDRG +#define PG2_PWM NULL +#undef PG3 +#define PG3_PIN PING3 +#define PG3_RPORT PING +#define PG3_WPORT PORTG +#define PG3_DDR DDRG +#define PG3_PWM NULL +#undef PG4 +#define PG4_PIN PING4 +#define PG4_RPORT PING +#define PG4_WPORT PORTG +#define PG4_DDR DDRG +#define PG4_PWM NULL +#undef PG5 +#define PG5_PIN PING5 +#define PG5_RPORT PING +#define PG5_WPORT PORTG +#define PG5_DDR DDRG +#define PG5_PWM &OCR0B +#undef PG6 +#define PG6_PIN PING6 +#define PG6_RPORT PING +#define PG6_WPORT PORTG +#define PG6_DDR DDRG +#define PG6_PWM NULL +#undef PG7 +#define PG7_PIN PING7 +#define PG7_RPORT PING +#define PG7_WPORT PORTG +#define PG7_DDR DDRG +#define PG7_PWM NULL + +#undef PH0 +#define PH0_PIN PINH0 +#define PH0_RPORT PINH +#define PH0_WPORT PORTH +#define PH0_DDR DDRH +#define PH0_PWM NULL +#undef PH1 +#define PH1_PIN PINH1 +#define PH1_RPORT PINH +#define PH1_WPORT PORTH +#define PH1_DDR DDRH +#define PH1_PWM NULL +#undef PH2 +#define PH2_PIN PINH2 +#define PH2_RPORT PINH +#define PH2_WPORT PORTH +#define PH2_DDR DDRH +#define PH2_PWM NULL +#undef PH3 +#define PH3_PIN PINH3 +#define PH3_RPORT PINH +#define PH3_WPORT PORTH +#define PH3_DDR DDRH +#define PH3_PWM &OCR4AL +#undef PH4 +#define PH4_PIN PINH4 +#define PH4_RPORT PINH +#define PH4_WPORT PORTH +#define PH4_DDR DDRH +#define PH4_PWM &OCR4BL +#undef PH5 +#define PH5_PIN PINH5 +#define PH5_RPORT PINH +#define PH5_WPORT PORTH +#define PH5_DDR DDRH +#define PH5_PWM &OCR4CL +#undef PH6 +#define PH6_PIN PINH6 +#define PH6_RPORT PINH +#define PH6_WPORT PORTH +#define PH6_DDR DDRH +#define PH6_PWM &OCR2B +#undef PH7 +#define PH7_PIN PINH7 +#define PH7_RPORT PINH +#define PH7_WPORT PORTH +#define PH7_DDR DDRH +#define PH7_PWM NULL + +#undef PJ0 +#define PJ0_PIN PINJ0 +#define PJ0_RPORT PINJ +#define PJ0_WPORT PORTJ +#define PJ0_DDR DDRJ +#define PJ0_PWM NULL +#undef PJ1 +#define PJ1_PIN PINJ1 +#define PJ1_RPORT PINJ +#define PJ1_WPORT PORTJ +#define PJ1_DDR DDRJ +#define PJ1_PWM NULL +#undef PJ2 +#define PJ2_PIN PINJ2 +#define PJ2_RPORT PINJ +#define PJ2_WPORT PORTJ +#define PJ2_DDR DDRJ +#define PJ2_PWM NULL +#undef PJ3 +#define PJ3_PIN PINJ3 +#define PJ3_RPORT PINJ +#define PJ3_WPORT PORTJ +#define PJ3_DDR DDRJ +#define PJ3_PWM NULL +#undef PJ4 +#define PJ4_PIN PINJ4 +#define PJ4_RPORT PINJ +#define PJ4_WPORT PORTJ +#define PJ4_DDR DDRJ +#define PJ4_PWM NULL +#undef PJ5 +#define PJ5_PIN PINJ5 +#define PJ5_RPORT PINJ +#define PJ5_WPORT PORTJ +#define PJ5_DDR DDRJ +#define PJ5_PWM NULL +#undef PJ6 +#define PJ6_PIN PINJ6 +#define PJ6_RPORT PINJ +#define PJ6_WPORT PORTJ +#define PJ6_DDR DDRJ +#define PJ6_PWM NULL +#undef PJ7 +#define PJ7_PIN PINJ7 +#define PJ7_RPORT PINJ +#define PJ7_WPORT PORTJ +#define PJ7_DDR DDRJ +#define PJ7_PWM NULL + +#undef PK0 +#define PK0_PIN PINK0 +#define PK0_RPORT PINK +#define PK0_WPORT PORTK +#define PK0_DDR DDRK +#define PK0_PWM NULL +#undef PK1 +#define PK1_PIN PINK1 +#define PK1_RPORT PINK +#define PK1_WPORT PORTK +#define PK1_DDR DDRK +#define PK1_PWM NULL +#undef PK2 +#define PK2_PIN PINK2 +#define PK2_RPORT PINK +#define PK2_WPORT PORTK +#define PK2_DDR DDRK +#define PK2_PWM NULL +#undef PK3 +#define PK3_PIN PINK3 +#define PK3_RPORT PINK +#define PK3_WPORT PORTK +#define PK3_DDR DDRK +#define PK3_PWM NULL +#undef PK4 +#define PK4_PIN PINK4 +#define PK4_RPORT PINK +#define PK4_WPORT PORTK +#define PK4_DDR DDRK +#define PK4_PWM NULL +#undef PK5 +#define PK5_PIN PINK5 +#define PK5_RPORT PINK +#define PK5_WPORT PORTK +#define PK5_DDR DDRK +#define PK5_PWM NULL +#undef PK6 +#define PK6_PIN PINK6 +#define PK6_RPORT PINK +#define PK6_WPORT PORTK +#define PK6_DDR DDRK +#define PK6_PWM NULL +#undef PK7 +#define PK7_PIN PINK7 +#define PK7_RPORT PINK +#define PK7_WPORT PORTK +#define PK7_DDR DDRK +#define PK7_PWM NULL + +#undef PL0 +#define PL0_PIN PINL0 +#define PL0_RPORT PINL +#define PL0_WPORT PORTL +#define PL0_DDR DDRL +#define PL0_PWM NULL +#undef PL1 +#define PL1_PIN PINL1 +#define PL1_RPORT PINL +#define PL1_WPORT PORTL +#define PL1_DDR DDRL +#define PL1_PWM NULL +#undef PL2 +#define PL2_PIN PINL2 +#define PL2_RPORT PINL +#define PL2_WPORT PORTL +#define PL2_DDR DDRL +#define PL2_PWM NULL +#undef PL3 +#define PL3_PIN PINL3 +#define PL3_RPORT PINL +#define PL3_WPORT PORTL +#define PL3_DDR DDRL +#define PL3_PWM &OCR5AL +#undef PL4 +#define PL4_PIN PINL4 +#define PL4_RPORT PINL +#define PL4_WPORT PORTL +#define PL4_DDR DDRL +#define PL4_PWM &OCR5BL +#undef PL5 +#define PL5_PIN PINL5 +#define PL5_RPORT PINL +#define PL5_WPORT PORTL +#define PL5_DDR DDRL +#define PL5_PWM &OCR5CL +#undef PL6 +#define PL6_PIN PINL6 +#define PL6_RPORT PINL +#define PL6_WPORT PORTL +#define PL6_DDR DDRL +#define PL6_PWM NULL +#undef PL7 +#define PL7_PIN PINL7 +#define PL7_RPORT PINL +#define PL7_WPORT PORTL +#define PL7_DDR DDRL +#define PL7_PWM NULL + +#endif + +#if defined (__AVR_AT90USB1287__) +// SPI +#define SCK DIO9 +#define MISO DIO11 +#define MOSI DIO10 +#define SS DIO8 + +// change for your board +#define DEBUG_LED DIO31 /* led D5 red */ + +/* +pins +*/ +#define DIO0_PIN PINA0 +#define DIO0_RPORT PINA +#define DIO0_WPORT PORTA +#define DIO0_PWM NULL +#define DIO0_DDR DDRA + +#define DIO1_PIN PINA1 +#define DIO1_RPORT PINA +#define DIO1_WPORT PORTA +#define DIO1_PWM NULL +#define DIO1_DDR DDRA + +#define DIO2_PIN PINA2 +#define DIO2_RPORT PINA +#define DIO2_WPORT PORTA +#define DIO2_PWM NULL +#define DIO2_DDR DDRA + +#define DIO3_PIN PINA3 +#define DIO3_RPORT PINA +#define DIO3_WPORT PORTA +#define DIO3_PWM NULL +#define DIO3_DDR DDRA + +#define DIO4_PIN PINA4 +#define DIO4_RPORT PINA +#define DIO4_WPORT PORTA +#define DIO4_PWM NULL +#define DIO4_DDR DDRA + +#define DIO5_PIN PINA5 +#define DIO5_RPORT PINA +#define DIO5_WPORT PORTA +#define DIO5_PWM NULL +#define DIO5_DDR DDRA + +#define DIO6_PIN PINA6 +#define DIO6_RPORT PINA +#define DIO6_WPORT PORTA +#define DIO6_PWM NULL +#define DIO6_DDR DDRA + +#define DIO7_PIN PINA7 +#define DIO7_RPORT PINA +#define DIO7_WPORT PORTA +#define DIO7_PWM NULL +#define DIO7_DDR DDRA + +#define DIO8_PIN PINB0 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_PWM NULL +#define DIO8_DDR DDRB + +#define DIO9_PIN PINB1 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_PWM NULL +#define DIO9_DDR DDRB + +#define DIO10_PIN PINB2 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_PWM NULL +#define DIO10_DDR DDRB + +#define DIO11_PIN PINB3 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_PWM NULL +#define DIO11_DDR DDRB + +#define DIO12_PIN PINB4 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_PWM NULL +#define DIO12_DDR DDRB + +#define DIO13_PIN PINB5 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_PWM NULL +#define DIO13_DDR DDRB + +#define DIO14_PIN PINB6 +#define DIO14_RPORT PINB +#define DIO14_WPORT PORTB +#define DIO14_PWM NULL +#define DIO14_DDR DDRB + +#define DIO15_PIN PINB7 +#define DIO15_RPORT PINB +#define DIO15_WPORT PORTB +#define DIO15_PWM NULL +#define DIO15_DDR DDRB + +#define DIO16_PIN PINC0 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_PWM NULL +#define DIO16_DDR DDRC + +#define DIO17_PIN PINC1 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_PWM NULL +#define DIO17_DDR DDRC + +#define DIO18_PIN PINC2 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_PWM NULL +#define DIO18_DDR DDRC + +#define DIO19_PIN PINC3 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_PWM NULL +#define DIO19_DDR DDRC + +#define DIO20_PIN PINC4 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_PWM NULL +#define DIO20_DDR DDRC + +#define DIO21_PIN PINC5 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_PWM NULL +#define DIO21_DDR DDRC + +#define DIO22_PIN PINC6 +#define DIO22_RPORT PINC +#define DIO22_WPORT PORTC +#define DIO22_PWM NULL +#define DIO22_DDR DDRC + +#define DIO23_PIN PINC7 +#define DIO23_RPORT PINC +#define DIO23_WPORT PORTC +#define DIO23_PWM NULL +#define DIO23_DDR DDRC + +#define DIO24_PIN PIND0 +#define DIO24_RPORT PIND +#define DIO24_WPORT PORTD +#define DIO24_PWM NULL +#define DIO24_DDR DDRD + +#define DIO25_PIN PIND1 +#define DIO25_RPORT PIND +#define DIO25_WPORT PORTD +#define DIO25_PWM NULL +#define DIO25_DDR DDRD + +#define DIO26_PIN PIND2 +#define DIO26_RPORT PIND +#define DIO26_WPORT PORTD +#define DIO26_PWM NULL +#define DIO26_DDR DDRD + +#define DIO27_PIN PIND3 +#define DIO27_RPORT PIND +#define DIO27_WPORT PORTD +#define DIO27_PWM NULL +#define DIO27_DDR DDRD + +#define DIO28_PIN PIND4 +#define DIO28_RPORT PIND +#define DIO28_WPORT PORTD +#define DIO28_PWM NULL +#define DIO28_DDR DDRD + +#define DIO29_PIN PIND5 +#define DIO29_RPORT PIND +#define DIO29_WPORT PORTD +#define DIO29_PWM NULL +#define DIO29_DDR DDRD + +#define DIO30_PIN PIND6 +#define DIO30_RPORT PIND +#define DIO30_WPORT PORTD +#define DIO30_PWM NULL +#define DIO30_DDR DDRD + +#define DIO31_PIN PIND7 +#define DIO31_RPORT PIND +#define DIO31_WPORT PORTD +#define DIO31_PWM NULL +#define DIO31_DDR DDRD + + +#define DIO32_PIN PINE0 +#define DIO32_RPORT PINE +#define DIO32_WPORT PORTE +#define DIO32_PWM NULL +#define DIO32_DDR DDRE + +#define DIO33_PIN PINE1 +#define DIO33_RPORT PINE +#define DIO33_WPORT PORTE +#define DIO33_PWM NULL +#define DIO33_DDR DDRE + +#define DIO34_PIN PINE2 +#define DIO34_RPORT PINE +#define DIO34_WPORT PORTE +#define DIO34_PWM NULL +#define DIO34_DDR DDRE + +#define DIO35_PIN PINE3 +#define DIO35_RPORT PINE +#define DIO35_WPORT PORTE +#define DIO35_PWM NULL +#define DIO35_DDR DDRE + +#define DIO36_PIN PINE4 +#define DIO36_RPORT PINE +#define DIO36_WPORT PORTE +#define DIO36_PWM NULL +#define DIO36_DDR DDRE + +#define DIO37_PIN PINE5 +#define DIO37_RPORT PINE +#define DIO37_WPORT PORTE +#define DIO37_PWM NULL +#define DIO37_DDR DDRE + +#define DIO38_PIN PINE6 +#define DIO38_RPORT PINE +#define DIO38_WPORT PORTE +#define DIO38_PWM NULL +#define DIO38_DDR DDRE + +#define DIO39_PIN PINE7 +#define DIO39_RPORT PINE +#define DIO39_WPORT PORTE +#define DIO39_PWM NULL +#define DIO39_DDR DDRE + +#define AIO0_PIN PINF0 +#define AIO0_RPORT PINF +#define AIO0_WPORT PORTF +#define AIO0_PWM NULL +#define AIO0_DDR DDRF + +#define AIO1_PIN PINF1 +#define AIO1_RPORT PINF +#define AIO1_WPORT PORTF +#define AIO1_PWM NULL +#define AIO1_DDR DDRF + +#define AIO2_PIN PINF2 +#define AIO2_RPORT PINF +#define AIO2_WPORT PORTF +#define AIO2_PWM NULL +#define AIO2_DDR DDRF + +#define AIO3_PIN PINF3 +#define AIO3_RPORT PINF +#define AIO3_WPORT PORTF +#define AIO3_PWM NULL +#define AIO3_DDR DDRF + +#define AIO4_PIN PINF4 +#define AIO4_RPORT PINF +#define AIO4_WPORT PORTF +#define AIO4_PWM NULL +#define AIO4_DDR DDRF + +#define AIO5_PIN PINF5 +#define AIO5_RPORT PINF +#define AIO5_WPORT PORTF +#define AIO5_PWM NULL +#define AIO5_DDR DDRF + +#define AIO6_PIN PINF6 +#define AIO6_RPORT PINF +#define AIO6_WPORT PORTF +#define AIO6_PWM NULL +#define AIO6_DDR DDRF + +#define AIO7_PIN PINF7 +#define AIO7_RPORT PINF +#define AIO7_WPORT PORTF +#define AIO7_PWM NULL +#define AIO7_DDR DDRF + +#define DIO40_PIN PINF0 +#define DIO40_RPORT PINF +#define DIO40_WPORT PORTF +#define DIO40_PWM NULL +#define DIO40_DDR DDRF + +#define DIO41_PIN PINF1 +#define DIO41_RPORT PINF +#define DIO41_WPORT PORTF +#define DIO41_PWM NULL +#define DIO41_DDR DDRF + +#define DIO42_PIN PINF2 +#define DIO42_RPORT PINF +#define DIO42_WPORT PORTF +#define DIO42_PWM NULL +#define DIO42_DDR DDRF + +#define DIO43_PIN PINF3 +#define DIO43_RPORT PINF +#define DIO43_WPORT PORTF +#define DIO43_PWM NULL +#define DIO43_DDR DDRF + +#define DIO44_PIN PINF4 +#define DIO44_RPORT PINF +#define DIO44_WPORT PORTF +#define DIO44_PWM NULL +#define DIO44_DDR DDRF + +#define DIO45_PIN PINF5 +#define DIO45_RPORT PINF +#define DIO45_WPORT PORTF +#define DIO45_PWM NULL +#define DIO45_DDR DDRF + +#define DIO46_PIN PINF6 +#define DIO46_RPORT PINF +#define DIO46_WPORT PORTF +#define DIO46_PWM NULL +#define DIO46_DDR DDRF + +#define DIO47_PIN PINF7 +#define DIO47_RPORT PINF +#define DIO47_WPORT PORTF +#define DIO47_PWM NULL +#define DIO47_DDR DDRF + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_PWM NULL +#define PA0_DDR DDRA +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_PWM NULL +#define PA1_DDR DDRA +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_PWM NULL +#define PA2_DDR DDRA +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_PWM NULL +#define PA3_DDR DDRA +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_PWM NULL +#define PA4_DDR DDRA +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_PWM NULL +#define PA5_DDR DDRA +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_PWM NULL +#define PA6_DDR DDRA +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_PWM NULL +#define PA7_DDR DDRA + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_PWM NULL +#define PB0_DDR DDRB +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_PWM NULL +#define PB1_DDR DDRB +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_PWM NULL +#define PB2_DDR DDRB +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_PWM NULL +#define PB3_DDR DDRB +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_PWM NULL +#define PB4_DDR DDRB +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_PWM NULL +#define PB5_DDR DDRB +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_PWM NULL +#define PB6_DDR DDRB +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_PWM NULL +#define PB7_DDR DDRB + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_PWM NULL +#define PC0_DDR DDRC +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_PWM NULL +#define PC1_DDR DDRC +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_PWM NULL +#define PC2_DDR DDRC +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_PWM NULL +#define PC3_DDR DDRC +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_PWM NULL +#define PC4_DDR DDRC +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_PWM NULL +#define PC5_DDR DDRC +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_PWM NULL +#define PC6_DDR DDRC +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_PWM NULL +#define PC7_DDR DDRC + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_PWM NULL +#define PD0_DDR DDRD +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_PWM NULL +#define PD1_DDR DDRD +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_PWM NULL +#define PD2_DDR DDRD +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_PWM NULL +#define PD3_DDR DDRD +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_PWM NULL +#define PD4_DDR DDRD +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_PWM NULL +#define PD5_DDR DDRD +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_PWM NULL +#define PD6_DDR DDRD +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_PWM NULL +#define PD7_DDR DDRD + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_PWM NULL +#define PE0_DDR DDRE +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_PWM NULL +#define PE1_DDR DDRE +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_PWM NULL +#define PE2_DDR DDRE +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_PWM NULL +#define PE3_DDR DDRE +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_PWM NULL +#define PE4_DDR DDRE +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_PWM NULL +#define PE5_DDR DDRE +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_PWM NULL +#define PE6_DDR DDRE +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_PWM NULL +#define PE7_DDR DDRE + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_PWM NULL +#define PF0_DDR DDRF +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_PWM NULL +#define PF1_DDR DDRF +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_PWM NULL +#define PF2_DDR DDRF +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_PWM NULL +#define PF3_DDR DDRF +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_PWM NULL +#define PF4_DDR DDRF +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_PWM NULL +#define PF5_DDR DDRF +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_PWM NULL +#define PF6_DDR DDRF +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_PWM NULL +#define PF7_DDR DDRF +#endif + +#ifndef DIO0_PIN +#error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request +#endif + +#endif /* _ARDUINO_H */ diff --git a/Marlin/pins.h b/Marlin/pins.h new file mode 100644 index 000000000..1bd670266 --- /dev/null +++ b/Marlin/pins.h @@ -0,0 +1,494 @@ +#ifndef PINS_H +#define PINS_H + +/**************************************************************************************** +* Arduino pin assignment +* +* ATMega168 +* +-\/-+ +* PC6 1| |28 PC5 (AI 5 / D19) +* (D 0) PD0 2| |27 PC4 (AI 4 / D18) +* (D 1) PD1 3| |26 PC3 (AI 3 / D17) +* (D 2) PD2 4| |25 PC2 (AI 2 / D16) +* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) +* (D 4) PD4 6| |23 PC0 (AI 0 / D14) +* VCC 7| |22 GND +* GND 8| |21 AREF +* PB6 9| |20 AVCC +* PB7 10| |19 PB5 (D 13) +* PWM+ (D 5) PD5 11| |18 PB4 (D 12) +* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM +* (D 7) PD7 13| |16 PB2 (D 10) PWM +* (D 8) PB0 14| |15 PB1 (D 9) PWM +* +----+ +****************************************************************************************/ +#if MOTHERBOARD == 0 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega168__ +#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. +#endif + +#define X_STEP_PIN 2 +#define X_DIR_PIN 3 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 4 +#define X_MAX_PIN 9 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN 13 + +#define Z_STEP_PIN 19 +#define Z_DIR_PIN 18 +#define Z_ENABLE_PIN 5 +#define Z_MIN_PIN 17 +#define Z_MAX_PIN 16 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN 15 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! + + +#endif + + + +/**************************************************************************************** +* Sanguino/RepRap Motherboard with direct-drive extruders +* +* ATMega644P +* +* +---\/---+ +* (D 0) PB0 1| |40 PA0 (AI 0 / D31) +* (D 1) PB1 2| |39 PA1 (AI 1 / D30) +* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +* RST 9| |32 AREF +* VCC 10| |31 GND +* GND 11| |30 AVCC +* XTAL2 12| |29 PC7 (D 23) +* XTAL1 13| |28 PC6 (D 22) +* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +* +--------+ +* +****************************************************************************************/ +#if MOTHERBOARD == 1 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 19 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PIN 29 +#define Z_DIR_PIN 30 +#define Z_ENABLE_PIN 31 +#define Z_MIN_PIN 2 +#define Z_MAX_PIN 1 + +#define E_STEP_PIN 12 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN 3 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN 0 +#define FAN_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 14 +#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! + +/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ + + + +#endif + + +/**************************************************************************************** +* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* +* +****************************************************************************************/ +#if MOTHERBOARD == 2 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PINN 27 +#define Z_DIR_PINN 28 +#define Z_ENABLE_PIN 29 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 31 + +#define E_STEP_PIN 17 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS 4 +#define LED_PIN 0 + +#define SD_CARD_WRITE 2 +#define SD_CARD_DETECT 3 +#define SD_CARD_SELECT 4 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#define FAN_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN -1 +#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! + + + + +#endif + +/**************************************************************************************** +* Arduino Mega pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 33 +#define MOTHERBOARD 3 +#define RAMPS_V_1_3 +#endif +#if MOTHERBOARD == 3 +#define KNOWN_BOARD 1 + +//////////////////FIX THIS////////////// +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 +// #define RAMPS_V_1_3 +// #define RAMPS_V_1_0 + +#ifdef RAMPS_V_1_3 + +#define X_STEP_PIN 54 +#define X_DIR_PIN 55 +#define X_ENABLE_PIN 38 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. + +#define Y_STEP_PIN 60 +#define Y_DIR_PIN 61 +#define Y_ENABLE_PIN 56 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 //15 + +#define Z_STEP_PIN 46 +#define Z_DIR_PIN 48 +#define Z_ENABLE_PIN 62 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 26 +#define E_DIR_PIN 28 +#define E_ENABLE_PIN 24 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 9 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#define HEATER_0_PIN 10 +#define HEATER_1_PIN 8 +#define TEMP_0_PIN 13 // ANALOG NUMBERING +#define TEMP_1_PIN 14 // ANALOG NUMBERING + + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default + +#define X_STEP_PIN 26 +#define X_DIR_PIN 28 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 + +#define Y_STEP_PIN 38 +#define Y_DIR_PIN 40 +#define Y_ENABLE_PIN 36 +#define Y_MIN_PIN 16 +#define Y_MAX_PIN -1 //17 + +#define Z_STEP_PIN 44 +#define Z_DIR_PIN 46 +#define Z_ENABLE_PIN 42 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 32 +#define E_DIR_PIN 34 +#define E_ENABLE_PIN 30 + +#define SDPOWER 48 +#define SDSS 53 +#define LED_PIN 13 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + + + +#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 + #define HEATER_0_PIN 12 // RAMPS 1.0 + #define HEATER_1_PIN -1 // RAMPS 1.0 + #define FAN_PIN 11 // RAMPS 1.0 + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 + #define HEATER_0_PIN 10 // RAMPS 1.1 + #define HEATER_1_PIN 8 // RAMPS 1.1 + #define FAN_PIN 9 // RAMPS 1.1 +#endif + +#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#endif + +// SPI for Max6675 Thermocouple + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 + #define MISO_PIN 50 + #define MOSI_PIN 51 + #define MAX6675_SS 53 +#else + #define MAX6675_SS 49 +#endif + + +#endif +/**************************************************************************************** +* Duemilanove w/ ATMega328P pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 4 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega328P__ +#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 17 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 13 +#define Z_DIR_PIN 3 +#define Z_ENABLE_PIN 2 +#define Z_MIN_PIN 4 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN 5 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! + + +#endif + +/**************************************************************************************** +* Gen6 pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 5 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +//x axis pins + #define X_STEP_PIN 15 + #define X_DIR_PIN 18 + #define X_ENABLE_PIN 19 + #define X_MIN_PIN 20 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 25 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 27 + #define Z_DIR_PIN 28 + #define Z_ENABLE_PIN 29 + #define Z_MIN_PIN 30 + #define Z_MAX_PIN -1 + + //extruder pins + #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 + #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 + #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 + #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 + #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 + #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 + + + #define SDPOWER -1 + #define SDSS 17 + #define LED_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define FAN_PIN -1 //changed @ rkoeppl 20110410 + #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 + //our pin for debugging. + + #define DEBUG_PIN 0 + + //our RS485 pins + #define TX_ENABLE_PIN 12 + #define RX_ENABLE_PIN 13 + +#endif +/**************************************************************************************** +* Sanguinololu pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 62 +#define MOTHERBOARD 6 +#define SANGUINOLOLU_V_1_2 +#endif +#if MOTHERBOARD == 6 +#define KNOWN_BOARD 1 +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 21 +#define X_MIN_PIN 18 +#define X_MAX_PIN -2 + +#define Y_STEP_PIN 22 +#define Y_DIR_PIN 23 +#define Y_MIN_PIN 19 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 3 +#define Z_DIR_PIN 2 +#define Z_MIN_PIN 20 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 1 +#define E_DIR_PIN 0 + +#define LED_PIN -1 + +#define FAN_PIN -1 + +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 13 // (extruder) + +#ifdef SANGUINOLOLU_V_1_2 + +#define HEATER_1_PIN 12 // (bed) +#define X_ENABLE_PIN 14 +#define Y_ENABLE_PIN 14 +#define Z_ENABLE_PIN 26 +#define E_ENABLE_PIN 14 + +#else + +#define HEATER_1_PIN 14 // (bed) +#define X_ENABLE_PIN -1 +#define Y_ENABLE_PIN -1 +#define Z_ENABLE_PIN -1 +#define E_ENABLE_PIN -1 + +#endif + +#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) +#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define SDPOWER -1 +#define SDSS 31 + +#ifndef KNOWN_BOARD +#error Unknown MOTHERBOARD value in configuration.h +#endif + +#endif + +#endif diff --git a/Marlin/speed_lookuptable.h b/Marlin/speed_lookuptable.h new file mode 100644 index 000000000..5c54a08d1 --- /dev/null +++ b/Marlin/speed_lookuptable.h @@ -0,0 +1,75 @@ +#ifndef SPEED_LOOKUPTABLE_H +#define SPEED_LOOKUPTABLE_H + +#include + +uint16_t speed_lookuptable_fast[256][2] PROGMEM = { +{ 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, +{ 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, +{ 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, +{ 323, 13}, { 310, 11}, { 299, 11}, { 288, 11}, { 277, 9}, { 268, 9}, { 259, 8}, { 251, 8}, +{ 243, 8}, { 235, 7}, { 228, 6}, { 222, 6}, { 216, 6}, { 210, 6}, { 204, 5}, { 199, 5}, +{ 194, 5}, { 189, 4}, { 185, 4}, { 181, 4}, { 177, 4}, { 173, 4}, { 169, 4}, { 165, 3}, +{ 162, 3}, { 159, 4}, { 155, 3}, { 152, 3}, { 149, 2}, { 147, 3}, { 144, 3}, { 141, 2}, +{ 139, 3}, { 136, 2}, { 134, 2}, { 132, 3}, { 129, 2}, { 127, 2}, { 125, 2}, { 123, 2}, +{ 121, 2}, { 119, 1}, { 118, 2}, { 116, 2}, { 114, 1}, { 113, 2}, { 111, 2}, { 109, 1}, +{ 108, 2}, { 106, 1}, { 105, 2}, { 103, 1}, { 102, 1}, { 101, 1}, { 100, 2}, { 98, 1}, +{ 97, 1}, { 96, 1}, { 95, 2}, { 93, 1}, { 92, 1}, { 91, 1}, { 90, 1}, { 89, 1}, +{ 88, 1}, { 87, 1}, { 86, 1}, { 85, 1}, { 84, 1}, { 83, 0}, { 83, 1}, { 82, 1}, +{ 81, 1}, { 80, 1}, { 79, 1}, { 78, 0}, { 78, 1}, { 77, 1}, { 76, 1}, { 75, 0}, +{ 75, 1}, { 74, 1}, { 73, 1}, { 72, 0}, { 72, 1}, { 71, 1}, { 70, 0}, { 70, 1}, +{ 69, 0}, { 69, 1}, { 68, 1}, { 67, 0}, { 67, 1}, { 66, 0}, { 66, 1}, { 65, 0}, +{ 65, 1}, { 64, 1}, { 63, 0}, { 63, 1}, { 62, 0}, { 62, 1}, { 61, 0}, { 61, 1}, +{ 60, 0}, { 60, 0}, { 60, 1}, { 59, 0}, { 59, 1}, { 58, 0}, { 58, 1}, { 57, 0}, +{ 57, 1}, { 56, 0}, { 56, 0}, { 56, 1}, { 55, 0}, { 55, 1}, { 54, 0}, { 54, 0}, +{ 54, 1}, { 53, 0}, { 53, 0}, { 53, 1}, { 52, 0}, { 52, 0}, { 52, 1}, { 51, 0}, +{ 51, 0}, { 51, 1}, { 50, 0}, { 50, 0}, { 50, 1}, { 49, 0}, { 49, 0}, { 49, 1}, +{ 48, 0}, { 48, 0}, { 48, 1}, { 47, 0}, { 47, 0}, { 47, 0}, { 47, 1}, { 46, 0}, +{ 46, 0}, { 46, 1}, { 45, 0}, { 45, 0}, { 45, 0}, { 45, 1}, { 44, 0}, { 44, 0}, +{ 44, 0}, { 44, 1}, { 43, 0}, { 43, 0}, { 43, 0}, { 43, 1}, { 42, 0}, { 42, 0}, +{ 42, 0}, { 42, 1}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 1}, { 40, 0}, +{ 40, 0}, { 40, 0}, { 40, 0}, { 40, 1}, { 39, 0}, { 39, 0}, { 39, 0}, { 39, 0}, +{ 39, 1}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 1}, { 37, 0}, { 37, 0}, +{ 37, 0}, { 37, 0}, { 37, 0}, { 37, 1}, { 36, 0}, { 36, 0}, { 36, 0}, { 36, 0}, +{ 36, 1}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 1}, +{ 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, +{ 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, +{ 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, +{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0}, +}; +uint16_t speed_lookuptable_slow[256][2] PROGMEM = { +{ 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, +{ 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, +{ 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, +{ 8928, 308}, { 8620, 287}, { 8333, 269}, { 8064, 252}, { 7812, 237}, { 7575, 223}, { 7352, 210}, { 7142, 198}, +{ 6944, 188}, { 6756, 178}, { 6578, 168}, { 6410, 160}, { 6250, 153}, { 6097, 145}, { 5952, 139}, { 5813, 132}, +{ 5681, 126}, { 5555, 121}, { 5434, 115}, { 5319, 111}, { 5208, 106}, { 5102, 102}, { 5000, 99}, { 4901, 94}, +{ 4807, 91}, { 4716, 87}, { 4629, 84}, { 4545, 81}, { 4464, 79}, { 4385, 75}, { 4310, 73}, { 4237, 71}, +{ 4166, 68}, { 4098, 66}, { 4032, 64}, { 3968, 62}, { 3906, 60}, { 3846, 59}, { 3787, 56}, { 3731, 55}, +{ 3676, 53}, { 3623, 52}, { 3571, 50}, { 3521, 49}, { 3472, 48}, { 3424, 46}, { 3378, 45}, { 3333, 44}, +{ 3289, 43}, { 3246, 41}, { 3205, 41}, { 3164, 39}, { 3125, 39}, { 3086, 38}, { 3048, 36}, { 3012, 36}, +{ 2976, 35}, { 2941, 35}, { 2906, 33}, { 2873, 33}, { 2840, 32}, { 2808, 31}, { 2777, 30}, { 2747, 30}, +{ 2717, 29}, { 2688, 29}, { 2659, 28}, { 2631, 27}, { 2604, 27}, { 2577, 26}, { 2551, 26}, { 2525, 25}, +{ 2500, 25}, { 2475, 25}, { 2450, 23}, { 2427, 24}, { 2403, 23}, { 2380, 22}, { 2358, 22}, { 2336, 22}, +{ 2314, 21}, { 2293, 21}, { 2272, 20}, { 2252, 20}, { 2232, 20}, { 2212, 20}, { 2192, 19}, { 2173, 18}, +{ 2155, 19}, { 2136, 18}, { 2118, 18}, { 2100, 17}, { 2083, 17}, { 2066, 17}, { 2049, 17}, { 2032, 16}, +{ 2016, 16}, { 2000, 16}, { 1984, 16}, { 1968, 15}, { 1953, 16}, { 1937, 14}, { 1923, 15}, { 1908, 15}, +{ 1893, 14}, { 1879, 14}, { 1865, 14}, { 1851, 13}, { 1838, 14}, { 1824, 13}, { 1811, 13}, { 1798, 13}, +{ 1785, 12}, { 1773, 13}, { 1760, 12}, { 1748, 12}, { 1736, 12}, { 1724, 12}, { 1712, 12}, { 1700, 11}, +{ 1689, 12}, { 1677, 11}, { 1666, 11}, { 1655, 11}, { 1644, 11}, { 1633, 10}, { 1623, 11}, { 1612, 10}, +{ 1602, 10}, { 1592, 10}, { 1582, 10}, { 1572, 10}, { 1562, 10}, { 1552, 9}, { 1543, 10}, { 1533, 9}, +{ 1524, 9}, { 1515, 9}, { 1506, 9}, { 1497, 9}, { 1488, 9}, { 1479, 9}, { 1470, 9}, { 1461, 8}, +{ 1453, 8}, { 1445, 9}, { 1436, 8}, { 1428, 8}, { 1420, 8}, { 1412, 8}, { 1404, 8}, { 1396, 8}, +{ 1388, 7}, { 1381, 8}, { 1373, 7}, { 1366, 8}, { 1358, 7}, { 1351, 7}, { 1344, 8}, { 1336, 7}, +{ 1329, 7}, { 1322, 7}, { 1315, 7}, { 1308, 6}, { 1302, 7}, { 1295, 7}, { 1288, 6}, { 1282, 7}, +{ 1275, 6}, { 1269, 7}, { 1262, 6}, { 1256, 6}, { 1250, 7}, { 1243, 6}, { 1237, 6}, { 1231, 6}, +{ 1225, 6}, { 1219, 6}, { 1213, 6}, { 1207, 6}, { 1201, 5}, { 1196, 6}, { 1190, 6}, { 1184, 5}, +{ 1179, 6}, { 1173, 5}, { 1168, 6}, { 1162, 5}, { 1157, 5}, { 1152, 6}, { 1146, 5}, { 1141, 5}, +{ 1136, 5}, { 1131, 5}, { 1126, 5}, { 1121, 5}, { 1116, 5}, { 1111, 5}, { 1106, 5}, { 1101, 5}, +{ 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, +{ 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, +{ 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, +{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3}, +}; + +#endif diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h new file mode 100644 index 000000000..1c780020b --- /dev/null +++ b/Marlin/thermistortables.h @@ -0,0 +1,148 @@ +#ifndef THERMISTORTABLES_H_ +#define THERMISTORTABLES_H_ + +#if (THERMISTORHEATER == 1) || (THERMISTORBED == 1) //100k bed thermistor + + +#define NUMTEMPS_1 61 +const short temptable_1[NUMTEMPS_1][2] = { +{ (23*16) , 300 }, +{ (25*16) , 295 }, +{ (27*16) , 290 }, +{ (28*16) , 285 }, +{ (31*16) , 280 }, +{ (33*16) , 275 }, +{ (35*16) , 270 }, +{ (38*16) , 265 }, +{ (41*16) , 260 }, +{ (44*16) , 255 }, +{ (48*16) , 250 }, +{ (52*16) , 245 }, +{ (56*16) , 240 }, +{ (61*16) , 235 }, +{ (66*16) , 230 }, +{ (71*16) , 225 }, +{ (78*16) , 220 }, +{ (84*16) , 215 }, +{ (92*16) , 210 }, +{ (100*16), 205 }, +{ (109*16), 200 }, +{ (120*16), 195 }, +{ (131*16), 190 }, +{ (143*16), 185 }, +{ (156*16), 180 }, +{ (171*16), 175 }, +{ (187*16), 170 }, +{ (205*16), 165 }, +{ (224*16), 160 }, +{ (245*16), 155 }, +{ (268*16), 150 }, +{ (293*16), 145 }, +{ (320*16), 140 }, +{ (348*16), 135 }, +{ (379*16), 130 }, +{ (411*16), 125 }, +{ (445*16), 120 }, +{ (480*16), 115 }, +{ (516*16), 110 }, +{ (553*16), 105 }, +{ (591*16), 100 }, +{ (628*16), 95 }, +{ (665*16), 90 }, +{ (702*16), 85 }, +{ (737*16), 80 }, +{ (770*16), 75 }, +{ (801*16), 70 }, +{ (830*16), 65 }, +{ (857*16), 60 }, +{ (881*16), 55 }, +{ (903*16), 50 }, +{ (922*16), 45 }, +{ (939*16), 40 }, +{ (954*16), 35 }, +{ (966*16), 30 }, +{ (977*16), 25 }, +{ (985*16), 20 }, +{ (993*16), 15 }, +{ (999*16), 10 }, +{ (1004*16), 5 }, +{ (1008*16), 0 } //safety +}; +#endif +#if (THERMISTORHEATER == 2) || (THERMISTORBED == 2) //200k bed thermistor +#define NUMTEMPS_2 21 +const short temptable_2[NUMTEMPS_2][2] = { + {(1*16), 848}, + {(54*16), 275}, + {(107*16), 228}, + {(160*16), 202}, + {(213*16), 185}, + {(266*16), 171}, + {(319*16), 160}, + {(372*16), 150}, + {(425*16), 141}, + {(478*16), 133}, + {(531*16), 125}, + {(584*16), 118}, + {(637*16), 110}, + {(690*16), 103}, + {(743*16), 95}, + {(796*16), 86}, + {(849*16), 77}, + {(902*16), 65}, + {(955*16), 49}, + {(1008*16), 17}, + {(1020*16), 0} //safety +}; + +#endif +#if (THERMISTORHEATER == 3) || (THERMISTORBED == 3) //mendel-parts +#define NUMTEMPS_3 28 +const short temptable_3[NUMTEMPS_3][2] = { + {(1*16),864}, + {(21*16),300}, + {(25*16),290}, + {(29*16),280}, + {(33*16),270}, + {(39*16),260}, + {(46*16),250}, + {(54*16),240}, + {(64*16),230}, + {(75*16),220}, + {(90*16),210}, + {(107*16),200}, + {(128*16),190}, + {(154*16),180}, + {(184*16),170}, + {(221*16),160}, + {(265*16),150}, + {(316*16),140}, + {(375*16),130}, + {(441*16),120}, + {(513*16),110}, + {(588*16),100}, + {(734*16),80}, + {(856*16),60}, + {(938*16),40}, + {(986*16),20}, + {(1008*16),0}, + {(1018*16),-20} + }; + +#endif + +#if THERMISTORHEATER == 1 +#define NUMTEMPS NUMTEMPS_1 +#define temptable temptable_1 +#elif THERMISTORHEATER == 2 +#define NUMTEMPS NUMTEMPS_2 +#define temptable temptable_2 +#elif THERMISTORHEATER == 3 +#define NUMTEMPS NUMTEMPS_3 +#define temptable temptable_3 +#else +#error No heater thermistor table specified +#endif + + +#endif //THERMISTORTABLES_H_ diff --git a/Marlin/wiring.c b/Marlin/wiring.c new file mode 100644 index 000000000..adee6cbe4 --- /dev/null +++ b/Marlin/wiring.c @@ -0,0 +1,176 @@ +/* + wiring.c - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 388 2008-03-08 22:05:23Z mellis $ +*/ + +#include "wiring_private.h" + +volatile unsigned long timer0_millis = 0; + +SIGNAL(TIMER0_OVF_vect) +{ + // timer 0 prescale factor is 64 and the timer overflows at 256 + timer0_millis++; +} + +unsigned long millis() +{ + unsigned long m; + uint8_t oldSREG = SREG; + + // disable interrupts while we read timer0_millis or we might get an + // inconsistent value (e.g. in the middle of the timer0_millis++) + cli(); + m = timer0_millis; + SREG = oldSREG; + + return m; +} + +void delay(unsigned long ms) +{ + unsigned long start = millis(); + + while (millis() - start <= ms) + ; +} + +/* Delay for the given number of microseconds. Assumes a 8 or 16 MHz clock. + * Disables interrupts, which will disrupt the millis() function if used + * too frequently. */ +void delayMicroseconds(unsigned int us) +{ + uint8_t oldSREG; + + // calling avrlib's delay_us() function with low values (e.g. 1 or + // 2 microseconds) gives delays longer than desired. + //delay_us(us); + +#if F_CPU >= 16000000L + // for the 16 MHz clock on most Arduino boards + + // for a one-microsecond delay, simply return. the overhead + // of the function call yields a delay of approximately 1 1/8 us. + if (--us == 0) + return; + + // the following loop takes a quarter of a microsecond (4 cycles) + // per iteration, so execute it four times for each microsecond of + // delay requested. + us <<= 2; + + // account for the time taken in the preceeding commands. + us -= 2; +#else + // for the 8 MHz internal clock on the ATmega168 + + // for a one- or two-microsecond delay, simply return. the overhead of + // the function calls takes more than two microseconds. can't just + // subtract two, since us is unsigned; we'd overflow. + if (--us == 0) + return; + if (--us == 0) + return; + + // the following loop takes half of a microsecond (4 cycles) + // per iteration, so execute it twice for each microsecond of + // delay requested. + us <<= 1; + + // partially compensate for the time taken by the preceeding commands. + // we can't subtract any more than this or we'd overflow w/ small delays. + us--; +#endif + + // disable interrupts, otherwise the timer 0 overflow interrupt that + // tracks milliseconds will make us delay longer than we want. + oldSREG = SREG; + cli(); + + // busy wait + __asm__ __volatile__ ( + "1: sbiw %0,1" "\n\t" // 2 cycles + "brne 1b" : "=w" (us) : "0" (us) // 2 cycles + ); + + // reenable interrupts. + SREG = oldSREG; +} + +void init() +{ + // this needs to be called before setup() or some functions won't + // work there + sei(); + + // on the ATmega168, timer 0 is also used for fast hardware pwm + // (using phase-correct PWM would mean that timer 0 overflowed half as often + // resulting in different millis() behavior on the ATmega8 and ATmega168) + sbi(TCCR0A, WGM01); + sbi(TCCR0A, WGM00); + + // set timer 0 prescale factor to 64 + sbi(TCCR0B, CS01); + sbi(TCCR0B, CS00); + + // enable timer 0 overflow interrupt + sbi(TIMSK0, TOIE0); + + // timers 1 and 2 are used for phase-correct hardware pwm + // this is better for motors as it ensures an even waveform + // note, however, that fast pwm mode can achieve a frequency of up + // 8 MHz (with a 16 MHz clock) at 50% duty cycle +#if 0 + // set timer 1 prescale factor to 64 + sbi(TCCR1B, CS11); + sbi(TCCR1B, CS10); + + // put timer 1 in 8-bit phase correct pwm mode + sbi(TCCR1A, WGM10); + + // set timer 2 prescale factor to 64 + sbi(TCCR2B, CS22); + + // configure timer 2 for phase correct pwm (8-bit) + sbi(TCCR2A, WGM20); + + // set a2d prescale factor to 128 + // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. + // XXX: this will not work properly for other clock speeds, and + // this code should use F_CPU to determine the prescale factor. + sbi(ADCSRA, ADPS2); + sbi(ADCSRA, ADPS1); + sbi(ADCSRA, ADPS0); + + // enable a2d conversions + sbi(ADCSRA, ADEN); + + // the bootloader connects pins 0 and 1 to the USART; disconnect them + // here so they can be used as normal digital i/o; they will be + // reconnected in Serial.begin() + UCSR0B = 0; + #if defined(__AVR_ATmega644P__) + //TODO: test to see if disabling this helps? + //UCSR1B = 0; + #endif +#endif +} diff --git a/Marlin/wiring_serial.c b/Marlin/wiring_serial.c new file mode 100644 index 000000000..c027944c9 --- /dev/null +++ b/Marlin/wiring_serial.c @@ -0,0 +1,139 @@ +/* + wiring_serial.c - serial functions. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + Modified 29 January 2009, Marius Kintel for Sanguino - http://www.sanguino.cc/ + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + + +#include "wiring_private.h" + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#define RX_BUFFER_SIZE 128 +#define RX_BUFFER_MASK 0x7f + +#if defined(__AVR_ATmega644P__) +unsigned char rx_buffer[2][RX_BUFFER_SIZE]; +int rx_buffer_head[2] = {0, 0}; +int rx_buffer_tail[2] = {0, 0}; +#else +unsigned char rx_buffer[1][RX_BUFFER_SIZE]; +int rx_buffer_head[1] = {0}; +int rx_buffer_tail[1] = {0}; +#endif + + +#define BEGIN_SERIAL(uart_, baud_) \ +{ \ + UBRR##uart_##H = ((F_CPU / 16 + baud / 2) / baud - 1) >> 8; \ + UBRR##uart_##L = ((F_CPU / 16 + baud / 2) / baud - 1); \ + \ + /* reset config for UART */ \ + UCSR##uart_##A = 0; \ + UCSR##uart_##B = 0; \ + UCSR##uart_##C = 0; \ + \ + /* enable rx and tx */ \ + sbi(UCSR##uart_##B, RXEN##uart_);\ + sbi(UCSR##uart_##B, TXEN##uart_);\ + \ + /* enable interrupt on complete reception of a byte */ \ + sbi(UCSR##uart_##B, RXCIE##uart_); \ + UCSR##uart_##C = _BV(UCSZ##uart_##1)|_BV(UCSZ##uart_##0); \ + /* defaults to 8-bit, no parity, 1 stop bit */ \ +} + +void beginSerial(uint8_t uart, long baud) +{ + if (uart == 0) BEGIN_SERIAL(0, baud) +#if defined(__AVR_ATmega644P__) + else BEGIN_SERIAL(1, baud) +#endif +} + +#define SERIAL_WRITE(uart_, c_) \ + while (!(UCSR##uart_##A & (1 << UDRE##uart_))) \ + ; \ + UDR##uart_ = c + +void serialWrite(uint8_t uart, unsigned char c) +{ + if (uart == 0) { + SERIAL_WRITE(0, c); + } +#if defined(__AVR_ATmega644P__) + else { + SERIAL_WRITE(1, c); + } +#endif +} + +int serialAvailable(uint8_t uart) +{ + return (RX_BUFFER_SIZE + rx_buffer_head[uart] - rx_buffer_tail[uart]) & RX_BUFFER_MASK; +} + +int serialRead(uint8_t uart) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (rx_buffer_head[uart] == rx_buffer_tail[uart]) { + return -1; + } else { + unsigned char c = rx_buffer[uart][rx_buffer_tail[uart]]; + rx_buffer_tail[uart] = (rx_buffer_tail[uart] + 1) & RX_BUFFER_MASK; + return c; + } +} + +void serialFlush(uint8_t uart) +{ + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // were full, not empty. + rx_buffer_head[uart] = rx_buffer_tail[uart]; +} + +#define UART_ISR(uart_) \ +ISR(USART##uart_##_RX_vect) \ +{ \ + unsigned char c = UDR##uart_; \ + \ + int i = (rx_buffer_head[uart_] + 1) & RX_BUFFER_MASK; \ + \ + /* if we should be storing the received character into the location \ + just before the tail (meaning that the head would advance to the \ + current location of the tail), we're about to overflow the buffer \ + and so we don't write the character or advance the head. */ \ + if (i != rx_buffer_tail[uart_]) { \ + rx_buffer[uart_][rx_buffer_head[uart_]] = c; \ + rx_buffer_head[uart_] = i; \ + } \ +} + +UART_ISR(0) +#if defined(__AVR_ATmega644P__) +UART_ISR(1) +#endif From f850af5c1ca343ed65b94c4b9da5dd1ab4c4a53c Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 12 Aug 2011 22:31:59 +0200 Subject: [PATCH 003/430] Signed-off-by: Erik van der Zalm --- Marlin/applet/Marlin.cpp | 2050 -------------------------------------- 1 file changed, 2050 deletions(-) delete mode 100644 Marlin/applet/Marlin.cpp diff --git a/Marlin/applet/Marlin.cpp b/Marlin/applet/Marlin.cpp deleted file mode 100644 index 70800d881..000000000 --- a/Marlin/applet/Marlin.cpp +++ /dev/null @@ -1,2050 +0,0 @@ -#include "WProgram.h" -/* - Reprap firmware based on Sprinter and grbl. - Copyright (C) 2011 - - 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 . - */ - -/* - This firmware is a mashup of Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - The acceleration algorithm is derived from http://hwml.com/LeibRamp.pdf - This firmware is optimized for gen6 electronics. - */ - - -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "speed_lookuptable.h" - -#ifdef SDSUPPORT -#include "SdFat.h" -#endif - -#ifndef CRITICAL_SECTION_START -#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli() -#define CRITICAL_SECTION_END SREG = _sreg -#endif - -// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html -// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes - -//Implemented Codes -//------------------- -// G0 -> G1 -// G1 - Coordinated Movement X Y Z E -// G4 - Dwell S or P -// G28 - Home all Axis -// G90 - Use Absolute Coordinates -// G91 - Use Relative Coordinates -// G92 - Set current position to cordinates given - -//RepRap M Codes -// M104 - Set extruder target temp -// M105 - Read current temp -// M106 - Fan on -// M107 - Fan off -// M109 - Wait for extruder current temp to reach target temp. -// M114 - Display current position - -//Custom M Codes -// M80 - Turn on Power Supply -// M20 - List SD card -// M21 - Init SD card -// M22 - Release SD card -// M23 - Select SD file (M23 filename.g) -// M24 - Start/resume SD print -// M25 - Pause SD print -// M26 - Set SD position in bytes (M26 S12345) -// M27 - Report SD print status -// M28 - Start SD write (M28 filename.g) -// M29 - Stop SD write -// M81 - Turn off Power Supply -// M82 - Set E codes absolute (default) -// M83 - Set E codes relative while in Absolute Coordinates (G90) mode -// M84 - Disable steppers until next move, -// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. -// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) -// M92 - Set axis_steps_per_unit - same syntax as G92 -// M115 - Capabilities string -// M140 - Set bed target temp -// M190 - Wait for bed current temp to reach target temp. -// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) -// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) -// M301 - Set PID parameters P I and D - - -//Stepper Movement Variables - -char axis_codes[NUM_AXIS] = { - 'X', 'Y', 'Z', 'E'}; -float destination[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -float current_position[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -bool home_all_axis = true; -long feedrate = 1500, next_feedrate, saved_feedrate; -long gcode_N, gcode_LastN; -bool relative_mode = false; //Determines Absolute or Relative Coordinates -bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. -unsigned long axis_steps_per_sqr_second[NUM_AXIS]; - -// comm variables -#define MAX_CMD_SIZE 96 -#define BUFSIZE 8 -char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; -bool fromsd[BUFSIZE]; -int bufindr = 0; -int bufindw = 0; -int buflen = 0; -int i = 0; -char serial_char; -int serial_count = 0; -boolean comment_mode = false; -char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc - -// Manage heater variables. - -int target_raw = 0; -int current_raw = 0; -unsigned char temp_meas_ready = false; - -#ifdef PIDTEMP - double temp_iState = 0; - double temp_dState = 0; - double pTerm; - double iTerm; - double dTerm; - //int output; - double pid_error; - double temp_iState_min; - double temp_iState_max; - double pid_setpoint = 0.0; - double pid_input; - double pid_output; - bool pid_reset; -#endif - -#ifdef WATCHPERIOD -int watch_raw = -1000; -unsigned long watchmillis = 0; -#endif -#ifdef MINTEMP -int minttemp = temp2analogh(MINTEMP); -#endif -#ifdef MAXTEMP -int maxttemp = temp2analogh(MAXTEMP); -#endif - -//Inactivity shutdown variables -unsigned long previous_millis_cmd = 0; -unsigned long max_inactive_time = 0; -unsigned long stepper_inactive_time = 0; - -#ifdef SDSUPPORT -Sd2Card card; -SdVolume volume; -SdFile root; -SdFile file; -uint32_t filesize = 0; -uint32_t sdpos = 0; -bool sdmode = false; -bool sdactive = false; -bool savetosd = false; -int16_t n; - -void initsd(){ - sdactive = false; -#if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)){ - //if (!card.init(SPI_HALF_SPEED,SDSS)) - Serial.println("SD init fail"); - } - else if (!volume.init(&card)) - Serial.println("volume.init failed"); - else if (!root.openRoot(&volume)) - Serial.println("openRoot failed"); - else - sdactive = true; -#endif -} - -inline void write_command(char *buf){ - char* begin = buf; - char* npos = 0; - 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'; - //Serial.println(begin); - file.write(begin); - if (file.writeError){ - Serial.println("error writing to file"); - } -} -#endif - - -void setup() -{ - Serial.begin(BAUDRATE); - Serial.println("start"); - - for(int i = 0; i < BUFSIZE; i++){ - fromsd[i] = false; - } - - //Initialize Dir Pins -#if X_DIR_PIN > -1 - SET_OUTPUT(X_DIR_PIN); -#endif -#if Y_DIR_PIN > -1 - SET_OUTPUT(Y_DIR_PIN); -#endif -#if Z_DIR_PIN > -1 - SET_OUTPUT(Z_DIR_PIN); -#endif -#if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); -#endif - - //Initialize Enable Pins - steppers default to disabled. - -#if (X_ENABLE_PIN > -1) - SET_OUTPUT(X_ENABLE_PIN); - if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); -#endif -#if (Y_ENABLE_PIN > -1) - SET_OUTPUT(Y_ENABLE_PIN); - if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); -#endif -#if (Z_ENABLE_PIN > -1) - SET_OUTPUT(Z_ENABLE_PIN); - if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); -#endif -#if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); -#endif - - //endstops and pullups -#ifdef ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - WRITE(X_MIN_PIN,HIGH); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - WRITE(X_MAX_PIN,HIGH); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - WRITE(Y_MIN_PIN,HIGH); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - WRITE(Y_MAX_PIN,HIGH); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - WRITE(Z_MIN_PIN,HIGH); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - WRITE(Z_MAX_PIN,HIGH); -#endif -#else -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); -#endif -#endif - -#if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); -#endif -#if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); -#endif - - //Initialize Step Pins -#if (X_STEP_PIN > -1) - SET_OUTPUT(X_STEP_PIN); -#endif -#if (Y_STEP_PIN > -1) - SET_OUTPUT(Y_STEP_PIN); -#endif -#if (Z_STEP_PIN > -1) - SET_OUTPUT(Z_STEP_PIN); -#endif -#if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); -#endif - for(int i=0; i < NUM_AXIS; i++){ - axis_steps_per_sqr_second[i] = max_acceleration_units_per_sq_second[i] * axis_steps_per_unit[i]; - } - -#ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; -#endif //PIDTEMP - -#ifdef SDSUPPORT - //power to SD reader -#if SDPOWER > -1 - SET_OUTPUT(SDPOWER); - WRITE(SDPOWER,HIGH); -#endif - initsd(); - -#endif - plan_init(); // Initialize planner; - st_init(); // Initialize stepper; - tp_init(); // Initialize temperature loop -} - - -void loop() -{ - if(buflen<3) - get_command(); - - if(buflen){ -#ifdef SDSUPPORT - if(savetosd){ - if(strstr(cmdbuffer[bufindr],"M29") == NULL){ - write_command(cmdbuffer[bufindr]); - Serial.println("ok"); - } - else{ - file.sync(); - file.close(); - savetosd = false; - Serial.println("Done saving file."); - } - } - else{ - process_commands(); - } -#else - process_commands(); -#endif - buflen = (buflen-1); - bufindr = (bufindr + 1)%BUFSIZE; - } - //check heater every n milliseconds - manage_heater(); - manage_inactivity(1); -} - - -inline void get_command() -{ - while( Serial.available() > 0 && buflen < BUFSIZE) { - serial_char = Serial.read(); - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) - { - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = false; - if(strstr(cmdbuffer[bufindw], "N") != NULL) - { - strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); - gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); - if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { - Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); - Serial.println(gcode_LastN); - //Serial.println(gcode_N); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - if(strstr(cmdbuffer[bufindw], "*") != NULL) - { - byte checksum = 0; - byte count = 0; - while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; - strchr_pointer = strchr(cmdbuffer[bufindw], '*'); - - if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { - Serial.print("Error: checksum mismatch, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - //if no errors, continue parsing - } - else - { - Serial.print("Error: No Checksum with line number, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - gcode_LastN = gcode_N; - //if no errors, continue parsing - } - else // if we don't receive 'N' but still see '*' - { - if((strstr(cmdbuffer[bufindw], "*") != NULL)) - { - Serial.print("Error: No Line Number with checksum, Last Line:"); - Serial.println(gcode_LastN); - serial_count = 0; - return; - } - } - if((strstr(cmdbuffer[bufindw], "G") != NULL)){ - strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); - switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ - case 0: - case 1: -#ifdef SDSUPPORT - if(savetosd) - break; -#endif - Serial.println("ok"); - break; - default: - break; - } - - } - bufindw = (bufindw + 1)%BUFSIZE; - buflen += 1; - - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#ifdef SDSUPPORT - if(!sdmode || serial_count!=0){ - return; - } - while( filesize > sdpos && buflen < BUFSIZE) { - n = file.read(); - serial_char = (char)n; - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) - { - sdpos = file.curPosition(); - if(sdpos >= filesize){ - sdmode = false; - Serial.println("Done printing file"); - } - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = true; - buflen += 1; - bufindw = (bufindw + 1)%BUFSIZE; - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#endif - -} - - -inline float code_value() { - return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); -} -inline long code_value_long() { - return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); -} -inline bool code_seen(char code_string[]) { - return (strstr(cmdbuffer[bufindr], code_string) != NULL); -} //Return True if the string was found - -inline bool code_seen(char code) -{ - strchr_pointer = strchr(cmdbuffer[bufindr], code); - return (strchr_pointer != NULL); //Return True if a character was found -} - -inline void process_commands() -{ - unsigned long codenum; //throw away variable - char *starpos = NULL; - - if(code_seen('G')) - { - switch((int)code_value()) - { - case 0: // G0 -> G1 - case 1: // G1 - get_coordinates(); // For X Y Z E F - prepare_move(); - previous_millis_cmd = millis(); - //ClearToSend(); - return; - //break; - case 4: // G4 dwell - codenum = 0; - if(code_seen('P')) codenum = code_value(); // milliseconds to wait - if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait - codenum += millis(); // keep track of when we started waiting - while(millis() < codenum ){ - manage_heater(); - } - break; - case 28: //G28 Home all Axis one at a time - saved_feedrate = feedrate; - for(int i=0; i < NUM_AXIS; i++) { - destination[i] = current_position[i]; - } - feedrate = 0; - - home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - - if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { - if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ - st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]; - prepare_move(); - - st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = -5 * X_HOME_DIR; - prepare_move(); - - st_synchronize(); - destination[X_AXIS] = 10 * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]/2 ; - prepare_move(); - st_synchronize(); - - current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = current_position[X_AXIS]; - feedrate = 0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { - if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]; - prepare_move(); - st_synchronize(); - - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = -5 * Y_HOME_DIR; - prepare_move(); - st_synchronize(); - - destination[Y_AXIS] = 10 * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]/2; - prepare_move(); - st_synchronize(); - - current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = current_position[Y_AXIS]; - feedrate = 0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { - if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]; - prepare_move(); - st_synchronize(); - - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = -2 * Z_HOME_DIR; - prepare_move(); - st_synchronize(); - - destination[Z_AXIS] = 3 * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]/2; - prepare_move(); - st_synchronize(); - - current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = current_position[Z_AXIS]; - feedrate = 0; - } - } - feedrate = saved_feedrate; - previous_millis_cmd = millis(); - break; - case 90: // G90 - relative_mode = false; - break; - case 91: // G91 - relative_mode = true; - break; - case 92: // G92 - if(!code_seen(axis_codes[E_AXIS])) - st_synchronize(); - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) current_position[i] = code_value(); - } - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - break; - - } - } - - else if(code_seen('M')) - { - - switch( (int)code_value() ) - { -#ifdef SDSUPPORT - - case 20: // M20 - list SD card - Serial.println("Begin file list"); - root.ls(); - Serial.println("End file list"); - break; - case 21: // M21 - init SD card - sdmode = false; - initsd(); - break; - case 22: //M22 - release SD card - sdmode = false; - sdactive = false; - break; - case 23: //M23 - Select file - if(sdactive){ - sdmode = false; - file.close(); - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos!=NULL) - *(starpos-1)='\0'; - if (file.open(&root, strchr_pointer + 4, O_READ)) { - Serial.print("File opened:"); - Serial.print(strchr_pointer + 4); - Serial.print(" Size:"); - Serial.println(file.fileSize()); - sdpos = 0; - filesize = file.fileSize(); - Serial.println("File selected"); - } - else{ - Serial.println("file.open failed"); - } - } - break; - case 24: //M24 - Start SD print - if(sdactive){ - sdmode = true; - } - break; - case 25: //M25 - Pause SD print - if(sdmode){ - sdmode = false; - } - break; - case 26: //M26 - Set SD index - if(sdactive && code_seen('S')){ - sdpos = code_value_long(); - file.seekSet(sdpos); - } - break; - case 27: //M27 - Get SD status - if(sdactive){ - Serial.print("SD printing byte "); - Serial.print(sdpos); - Serial.print("/"); - Serial.println(filesize); - } - else{ - Serial.println("Not SD printing"); - } - break; - case 28: //M28 - Start SD write - if(sdactive){ - char* npos = 0; - file.close(); - sdmode = false; - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos != NULL){ - npos = strchr(cmdbuffer[bufindr], 'N'); - strchr_pointer = strchr(npos,' ') + 1; - *(starpos-1) = '\0'; - } - if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) - { - Serial.print("open failed, File: "); - Serial.print(strchr_pointer + 4); - Serial.print("."); - } - else{ - savetosd = true; - Serial.print("Writing to file: "); - Serial.println(strchr_pointer + 4); - } - } - break; - case 29: //M29 - Stop SD write - //processed in write to file routine above - //savetosd = false; - break; -#endif - case 104: // M104 -#ifdef PID_OPENLOOP - if (code_seen('S')) PidTemp_Output = code_value() * (PID_MAX/100.0); - if(pid_output > PID_MAX) pid_output = PID_MAX; - if(pid_output < 0) pid_output = 0; -#else //PID_OPENLOOP - if (code_seen('S')) { - target_raw = temp2analogh(code_value()); -#ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEMP - } -#ifdef WATCHPERIOD - if(target_raw > current_raw){ - watchmillis = max(1,millis()); - watch_raw = current_raw; - } - else{ - watchmillis = 0; - } -#endif //WATCHPERIOD -#endif //PID_OPENLOOP - break; - case 105: // M105 - Serial.print("ok T:"); - Serial.println(analog2temp(current_raw)); - return; - //break; - case 109: // M109 - Wait for extruder heater to reach target. - if (code_seen('S')) target_raw = temp2analogh(code_value()); -#ifdef WATCHPERIOD - if(target_raw>current_raw){ - watchmillis = max(1,millis()); - watch_raw = current_raw; - } - else{ - watchmillis = 0; - } -#endif - codenum = millis(); - while(current_raw < target_raw) { - if( (millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. - { - Serial.print("T:"); - Serial.println( analog2temp(current_raw)); - codenum = millis(); - } - manage_heater(); - } - break; - case 190: - break; - case 82: - axis_relative_modes[3] = false; - break; - case 83: - axis_relative_modes[3] = true; - break; - case 84: - if(code_seen('S')){ - stepper_inactive_time = code_value() * 1000; - } - else{ - st_synchronize(); - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - break; - case 85: // M85 - code_seen('S'); - max_inactive_time = code_value() * 1000; - break; - case 92: // M92 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); - } - - break; - case 115: // M115 - Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); - break; - case 114: // M114 - Serial.print("X:"); - Serial.print(current_position[X_AXIS]); - Serial.print("Y:"); - Serial.print(current_position[Y_AXIS]); - Serial.print("Z:"); - Serial.print(current_position[Z_AXIS]); - Serial.print("E:"); - Serial.println(current_position[E_AXIS]); - break; - case 119: // M119 -#if (X_MIN_PIN > -1) - Serial.print("x_min:"); - Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (X_MAX_PIN > -1) - Serial.print("x_max:"); - Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MIN_PIN > -1) - Serial.print("y_min:"); - Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MAX_PIN > -1) - Serial.print("y_max:"); - Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MIN_PIN > -1) - Serial.print("z_min:"); - Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MAX_PIN > -1) - Serial.print("z_max:"); - Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif - Serial.println(""); - break; - //TODO: update for all axis, use for loop - case 201: // M201 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#if 0 // Not used for Sprinter/grbl gen6 - case 202: // M202 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#endif -#ifdef PIDTEMP - case 301: // M301 - if(code_seen('P')) Kp = code_value(); - if(code_seen('I')) Ki = code_value()*PID_dT; - if(code_seen('D')) Kd = code_value()/PID_dT; - Serial.print("Kp ");Serial.println(Kp); - Serial.print("Ki ");Serial.println(Ki/PID_dT); - Serial.print("Kd ");Serial.println(Kd*PID_dT); - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; - break; -#endif //PIDTEMP - } - } - else{ - Serial.println("Unknown command:"); - Serial.println(cmdbuffer[bufindr]); - } - - ClearToSend(); -} - -void FlushSerialRequestResend() -{ - //char cmdbuffer[bufindr][100]="Resend:"; - Serial.flush(); - Serial.print("Resend:"); - Serial.println(gcode_LastN + 1); - ClearToSend(); -} - -void ClearToSend() -{ - previous_millis_cmd = millis(); -#ifdef SDSUPPORT - if(fromsd[bufindr]) - return; -#endif - Serial.println("ok"); -} - -inline void get_coordinates() -{ - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? - } - if(code_seen('F')) { - next_feedrate = code_value(); - if(next_feedrate > 0.0) feedrate = next_feedrate; - } -} - -void prepare_move() -{ - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60); - for(int i=0; i < NUM_AXIS; i++) { - current_position[i] = destination[i]; - } -} - -void manage_heater() -{ - float pid_input; - float pid_output; - if(temp_meas_ready != true) - return; - -CRITICAL_SECTION_START; - temp_meas_ready = false; -CRITICAL_SECTION_END; - -#ifdef PIDTEMP - pid_input = analog2temp(current_raw);//ACT - -#ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ - pid_output = PID_MAX; - pid_reset = true; - } - else if(pid_error < -10) { - pid_output = 0; - pid_reset = true; - } - else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; - } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; - #define K1 0.8 - #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - } -#endif //PID_OPENLOOP -#ifdef PID_DEBUG - Serial.print(" Input "); - Serial.print(pid_input); - Serial.print(" Output "); - Serial.print(pid_output); - Serial.print(" pTerm "); - Serial.print(pTerm); - Serial.print(" iTerm "); - Serial.print(iTerm); - Serial.print(" dTerm "); - Serial.print(dTerm); - Serial.println(); -#endif //PID_DEBUG - OCR2B = pid_output; -#endif -} - - -int temp2analogu(int celsius, const short table[][2], int numtemps) { - int raw = 0; - byte i; - - for (i=1; i raw) { - celsius = (float)table[i-1][1] + - (float)(raw - table[i-1][0]) * - (float)(table[i][1] - table[i-1][1]) / - (float)(table[i][0] - table[i-1][0]); - - break; - } - } - // Overflow: Set to last value in the table - if (i == numtemps) celsius = table[i-1][1]; - - return celsius; -} - - -inline void kill() -{ - target_raw=0; -#ifdef PIDTEMP - pid_setpoint = 0.0; -#endif PIDTEMP - OCR2B = 0; - WRITE(HEATER_0_PIN,LOW); - - disable_x(); - disable_y(); - disable_z(); - disable_e(); - -} - -inline void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - check_axes_activity(); -} - -// Planner - -/* - Reasoning behind the mathematics in this module (in the key of 'Mathematica'): - - s == speed, a == acceleration, t == time, d == distance - - Basic definitions: - - Speed[s_, a_, t_] := s + (a*t) - Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] - - Distance to reach a specific speed with a constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] - d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() - - Speed after a given distance of travel with constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] - m -> Sqrt[2 a d + s^2] - - DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] - - When to start braking (di) to reach a specified destionation speed (s2) after accelerating - from initial speed s1 without ever stopping at a plateau: - - Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] - di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() - - IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) - */ - - -// The number of linear motions that can be in the plan at any give time -#define BLOCK_BUFFER_SIZE 16 -#define BLOCK_BUFFER_MASK 0x0f - -static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instructions -static volatile unsigned char block_buffer_head; // Index of the next block to be pushed -static volatile unsigned char block_buffer_tail; // Index of the block to process now - -// The current position of the tool in absolute steps -static long position[4]; - -#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 - -// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the -// given acceleration: -inline long estimate_acceleration_distance(long initial_rate, long target_rate, long acceleration) { - return( - (target_rate*target_rate-initial_rate*initial_rate)/ - (2L*acceleration) - ); -} - -// This function gives you the point at which you must start braking (at the rate of -acceleration) if -// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after -// a total travel of distance. This can be used to compute the intersection point between acceleration and -// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) - -inline long intersection_distance(long initial_rate, long final_rate, long acceleration, long distance) { - return( - (2*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ - (4*acceleration) - ); -} - -// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. - -void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { - if(block->busy == true) return; // If block is busy then bail out. - float entry_factor = entry_speed / block->nominal_speed; - float exit_factor = exit_speed / block->nominal_speed; - long initial_rate = ceil(block->nominal_rate*entry_factor); - long final_rate = ceil(block->nominal_rate*exit_factor); - -#ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; -#endif // ADVANCE - - // Limit minimal step rate (Otherwise the timer will overflow.) - if(initial_rate <32) initial_rate=32; - if(final_rate < 32) final_rate=32; - - // Calculate the acceleration steps - long acceleration = block->acceleration; - long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); - long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); - - // Calculate the size of Plateau of Nominal Rate. - long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; - - // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will - // have to use intersection_distance() to calculate when to abort acceleration and start braking - // in order to reach the final_rate exactly at the end of this block. - if (plateau_steps < 0) { - accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); - plateau_steps = 0; - } - - long decelerate_after = accelerate_steps+plateau_steps; - long acceleration_rate = (long)((float)acceleration * 8.388608); - - CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section - if(block->busy == false) { // Don't update variables if block is busy. - block->accelerate_until = accelerate_steps; - block->decelerate_after = decelerate_after; - block->acceleration_rate = acceleration_rate; - block->initial_rate = initial_rate; - block->final_rate = final_rate; -#ifdef ADVANCE - block->initial_advance = initial_advance; - block->final_advance = final_advance; -#endif ADVANCE - } - CRITICAL_SECTION_END; -} - -// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the -// acceleration within the allotted distance. -inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { - return( - sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) - ); -} - -// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. -// This method will calculate the junction jerk as the euclidean distance between the nominal -// velocities of the respective blocks. -inline float junction_jerk(block_t *before, block_t *after) { - return(sqrt( - pow((before->speed_x-after->speed_x), 2)+ - pow((before->speed_y-after->speed_y), 2)+ - pow((before->speed_z-after->speed_z)*axis_steps_per_unit[Z_AXIS]/axis_steps_per_unit[X_AXIS], 2)) - ); -} - -// Return the safe speed which is max_jerk/2, e.g. the -// speed under which you cannot exceed max_jerk no matter what you do. -float safe_speed(block_t *block) { - float safe_speed; - safe_speed = max_jerk/2; - if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; - return safe_speed; -} - -// The kernel called by planner_recalculate() when scanning the plan from last to first entry. -void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - - float entry_speed = current->nominal_speed; - float exit_factor; - float exit_speed; - if (next) { - exit_speed = next->entry_speed; - } - else { - exit_speed = safe_speed(current); - } - - // Calculate the entry_factor for the current block. - if (previous) { - // Reduce speed so that junction_jerk is within the maximum allowed - float jerk = junction_jerk(previous, current); - if((previous->steps_x == 0) && (previous->steps_y == 0)) { - entry_speed = safe_speed(current); - } - else if (jerk > max_jerk) { - entry_speed = (max_jerk/jerk) * entry_speed; - } - // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. - if (entry_speed > exit_speed) { - float max_entry_speed = max_allowable_speed(-acceleration,exit_speed, current->millimeters); - if (max_entry_speed < entry_speed) { - entry_speed = max_entry_speed; - } - } - } - else { - entry_speed = safe_speed(current); - } - // Store result - current->entry_speed = entry_speed; -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the reverse pass. -void planner_reverse_pass() { - char block_index = block_buffer_head; - block_t *block[3] = { - NULL, NULL, NULL }; - while(block_index != block_buffer_tail) { - block_index--; - if(block_index < 0) { - block_index = BLOCK_BUFFER_SIZE-1; - } - block[2]= block[1]; - block[1]= block[0]; - block[0] = &block_buffer[block_index]; - planner_reverse_pass_kernel(block[0], block[1], block[2]); - } - planner_reverse_pass_kernel(NULL, block[0], block[1]); -} - -// The kernel called by planner_recalculate() when scanning the plan from first to last entry. -void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - if(previous) { - // If the previous block is an acceleration block, but it is not long enough to - // complete the full speed change within the block, we need to adjust out entry - // speed accordingly. Remember current->entry_factor equals the exit factor of - // the previous block. - if(previous->entry_speed < current->entry_speed) { - float max_entry_speed = max_allowable_speed(-acceleration, previous->entry_speed, previous->millimeters); - if (max_entry_speed < current->entry_speed) { - current->entry_speed = max_entry_speed; - } - } - } -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the forward pass. -void planner_forward_pass() { - char block_index = block_buffer_tail; - block_t *block[3] = { - NULL, NULL, NULL }; - - while(block_index != block_buffer_head) { - block[0] = block[1]; - block[1] = block[2]; - block[2] = &block_buffer[block_index]; - planner_forward_pass_kernel(block[0],block[1],block[2]); - block_index = (block_index+1) & BLOCK_BUFFER_MASK; - } - planner_forward_pass_kernel(block[1], block[2], NULL); -} - -// Recalculates the trapezoid speed profiles for all blocks in the plan according to the -// entry_factor for each junction. Must be called by planner_recalculate() after -// updating the blocks. -void planner_recalculate_trapezoids() { - char block_index = block_buffer_tail; - block_t *current; - block_t *next = NULL; - while(block_index != block_buffer_head) { - current = next; - next = &block_buffer[block_index]; - if (current) { - calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); - } - block_index = (block_index+1) & BLOCK_BUFFER_MASK; - } - calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); -} - -// Recalculates the motion plan according to the following algorithm: -// -// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) -// so that: -// a. The junction jerk is within the set limit -// b. No speed reduction within one block requires faster deceleration than the one, true constant -// acceleration. -// 2. Go over every block in chronological order and dial down junction speed reduction values if -// a. The speed increase within one block would require faster accelleration than the one, true -// constant acceleration. -// -// When these stages are complete all blocks have an entry_factor that will allow all speed changes to -// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than -// the set limit. Finally it will: -// -// 3. Recalculate trapezoids for all blocks. - -void planner_recalculate() { - planner_reverse_pass(); - planner_forward_pass(); - planner_recalculate_trapezoids(); -} - -void plan_init() { - block_buffer_head = 0; - block_buffer_tail = 0; - memset(position, 0, sizeof(position)); // clear position -} - - -inline void plan_discard_current_block() { - if (block_buffer_head != block_buffer_tail) { - block_buffer_tail = (block_buffer_tail + 1) & BLOCK_BUFFER_MASK; - } -} - -inline block_t *plan_get_current_block() { - if (block_buffer_head == block_buffer_tail) { - return(NULL); - } - block_t *block = &block_buffer[block_buffer_tail]; - block->busy = true; - return(block); -} - -void check_axes_activity() { - unsigned char x_active = 0; - unsigned char y_active = 0; - unsigned char z_active = 0; - unsigned char e_active = 0; - block_t *block; - - if(block_buffer_tail != block_buffer_head) { - char block_index = block_buffer_tail; - while(block_index != block_buffer_head) { - block = &block_buffer[block_index]; - if(block->steps_x != 0) x_active++; - if(block->steps_y != 0) y_active++; - if(block->steps_z != 0) z_active++; - if(block->steps_e != 0) e_active++; - block_index = (block_index+1) & BLOCK_BUFFER_MASK; - } - } - if((DISABLE_X) && (x_active == 0)) disable_x(); - if((DISABLE_Y) && (y_active == 0)) disable_y(); - if((DISABLE_Z) && (z_active == 0)) disable_z(); - if((DISABLE_E) && (e_active == 0)) disable_e(); -} - -// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in -// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration -// calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { - - // The target position of the tool in absolute steps - // Calculate target position in absolute steps - long target[4]; - target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); - target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); - target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - - // Calculate the buffer head after we push this byte - int next_buffer_head = (block_buffer_head + 1) & BLOCK_BUFFER_MASK; - - // If the buffer is full: good! That means we are well ahead of the robot. - // Rest here until there is room in the buffer. - while(block_buffer_tail == next_buffer_head) { - manage_heater(); - manage_inactivity(1); - } - - // Prepare to set up new block - block_t *block = &block_buffer[block_buffer_head]; - - // Mark block as not busy (Not executed by the stepper interrupt) - block->busy = false; - - // Number of steps for each axis - block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); - block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); - block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); - block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); - block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); - - // Bail if this is a zero-length block - if (block->step_event_count == 0) { - return; - }; - - float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; - float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; - float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; - float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; - block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); - - unsigned long microseconds; - microseconds = lround((block->millimeters/feed_rate)*1000000); - - // Calculate speed in mm/minute for each axis - float multiplier = 60.0*1000000.0/microseconds; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - - // Limit speed per axis - float speed_factor = 1; - float tmp_speed_factor; - if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_x); - } - if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ - tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ - tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); - if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_e) > max_feedrate[E_AXIS]){ - tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); - if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; - } - multiplier = multiplier * speed_factor; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - - block->nominal_speed = block->millimeters * multiplier; - block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - if(block->nominal_rate < 32) block->nominal_rate = 32; - block->entry_speed = safe_speed(block); - - // Compute the acceleration rate for the trapezoid generator. - float travel_per_step = block->millimeters/block->step_event_count; - if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { - block->acceleration = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - } - else { - block->acceleration = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - // Limit acceleration per axis - if((block->acceleration * block->steps_x / block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) - block->acceleration = axis_steps_per_sqr_second[X_AXIS]; - if((block->acceleration * block->steps_y / block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) - block->acceleration = axis_steps_per_sqr_second[Y_AXIS]; - if((block->acceleration * block->steps_e / block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) - block->acceleration = axis_steps_per_sqr_second[E_AXIS]; - if((block->acceleration * block->steps_z / block->step_event_count) > axis_steps_per_sqr_second[Z_AXIS]) - block->acceleration = axis_steps_per_sqr_second[Z_AXIS]; - } - -#ifdef ADVANCE - // Calculate advance rate - if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { - block->advance_rate = 0; - block->advance = 0; - } - else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration); - float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; - block->advance = advance; - if(acc_dist == 0) { - block->advance_rate = 0; - } - else { - block->advance_rate = advance / (float)acc_dist; - } - } - -#endif // ADVANCE - - // compute a preliminary conservative acceleration trapezoid - float safespeed = safe_speed(block); - calculate_trapezoid_for_block(block, safespeed, safespeed); - - // Compute direction bits for this block - block->direction_bits = 0; - if (target[X_AXIS] < position[X_AXIS]) { - block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<steps_x != 0) enable_x(); - if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - - // Move buffer head - block_buffer_head = next_buffer_head; - - // Update position - memcpy(position, target, sizeof(target)); // position[] = target[] - - planner_recalculate(); - st_wake_up(); -} - -void plan_set_position(float x, float y, float z, float e) -{ - position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); - position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); - position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); -} - -// Stepper - -// intRes = intIn1 * intIn2 >> 16 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 24 bit result -#define MultiU16X8toH16(intRes, charIn1, intIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %A1, %A2 \n\t" \ -"add %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r0 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (charIn1), \ -"d" (intIn2) \ -: \ -"r26" , "r27" \ -) - -// intRes = longIn1 * longIn2 >> 24 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 48bit result -#define MultiU24X24toH16(intRes, longIn1, longIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"mov r27, r1 \n\t" \ -"mul %B1, %C2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %C1, %C2 \n\t" \ -"add %B0, r0 \n\t" \ -"mul %C1, %B2 \n\t" \ -"add %A0, r0 \n\t" \ -"adc %B0, r1 \n\t" \ -"mul %A1, %C2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %B2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %C1, %A2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %A2 \n\t" \ -"add r27, r1 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r27 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (longIn1), \ -"d" (longIn2) \ -: \ -"r26" , "r27" \ -) - -// Some useful constants - -#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< -// -// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates -// first block->accelerate_until step_events_completed, then keeps going at constant speed until -// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. -// The slope of acceleration is calculated with the leib ramp alghorithm. - -void st_wake_up() { - // TCNT1 = 0; - ENABLE_STEPPER_DRIVER_INTERRUPT(); -} - -inline unsigned short calc_timer(unsigned short step_rate) { - unsigned short timer; - if(step_rate < 32) step_rate = 32; - step_rate -= 32; // Correct for minimal speed - if(step_rate > (8*256)){ // higher step rate - unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; - unsigned char tmp_step_rate = (step_rate & 0x00ff); - unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); - MultiU16X8toH16(timer, tmp_step_rate, gain); - timer = (unsigned short)pgm_read_word_near(table_address) - timer; - } - else { // lower step rates - unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; - table_address += ((step_rate)>>1) & 0xfffc; - timer = (unsigned short)pgm_read_word_near(table_address); - timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); - } - if(timer < 100) timer = 100; - return timer; -} - -// Initializes the trapezoid generator from the current block. Called whenever a new -// block begins. -inline void trapezoid_generator_reset() { - accelerate_until = current_block->accelerate_until; - decelerate_after = current_block->decelerate_after; - acceleration_rate = current_block->acceleration_rate; - initial_rate = current_block->initial_rate; - final_rate = current_block->final_rate; - advance = current_block->initial_advance; - final_advance = current_block->final_advance; - deceleration_time = 0; - advance_rate = current_block->advance_rate; - // step_rate to timer interval - acc_step_rate = initial_rate; - acceleration_time = calc_timer(acc_step_rate); - OCR1A = acceleration_time; -} - -// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. -// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. -ISR(TIMER1_COMPA_vect) -{ - if(busy){ /*Serial.println("BUSY")*/; - return; - } // The busy-flag is used to avoid reentering this interrupt - - busy = true; - sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) - - // If there is no current block, attempt to pop one from the buffer - if (current_block == NULL) { - // Anything in the buffer? - current_block = plan_get_current_block(); - if (current_block != NULL) { - trapezoid_generator_reset(); - counter_x = -(current_block->step_event_count >> 1); - counter_y = counter_x; - counter_z = counter_x; - counter_e = counter_x; - step_events_completed = 0; - e_steps = 0; - } - else { - DISABLE_STEPPER_DRIVER_INTERRUPT(); - } - } - - if (current_block != NULL) { - // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt - out_bits = current_block->direction_bits; - -#ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; -#endif //ADVANCE - - // Set direction en check limit switches - if ((out_bits & (1<step_event_count; - } - } - else // +direction - WRITE(X_DIR_PIN,!INVERT_X_DIR); - - if ((out_bits & (1<step_event_count; - } - } - else // +direction - WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - - if ((out_bits & (1<step_event_count; - } - } - else // +direction - WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - -#ifndef ADVANCE - if ((out_bits & (1<steps_x; - if (counter_x > 0) { - WRITE(X_STEP_PIN, HIGH); - counter_x -= current_block->step_event_count; - WRITE(X_STEP_PIN, LOW); - } - - counter_y += current_block->steps_y; - if (counter_y > 0) { - WRITE(Y_STEP_PIN, HIGH); - counter_y -= current_block->step_event_count; - WRITE(Y_STEP_PIN, LOW); - } - - counter_z += current_block->steps_z; - if (counter_z > 0) { - WRITE(Z_STEP_PIN, HIGH); - counter_z -= current_block->step_event_count; - WRITE(Z_STEP_PIN, LOW); - } - -#ifndef ADVANCE - counter_e += current_block->steps_e; - if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); - counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); - } -#endif //!ADVANCE - - // Calculare new timer value - unsigned short timer; - unsigned short step_rate; - if (step_events_completed < accelerate_until) { - MultiU24X24toH16(acc_step_rate, acceleration_time, acceleration_rate); - acc_step_rate += initial_rate; - - // upper limit - if(acc_step_rate > current_block->nominal_rate) - acc_step_rate = current_block->nominal_rate; - - // step_rate to timer interval - timer = calc_timer(acc_step_rate); - advance += advance_rate; - acceleration_time += timer; - OCR1A = timer; - } - else if (step_events_completed > decelerate_after) { - MultiU24X24toH16(step_rate, deceleration_time, acceleration_rate); - - if(step_rate > acc_step_rate) { // Check step_rate stays positive - step_rate = final_rate; - } - else { - step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. - } - - // lower limit - if(step_rate < final_rate) - step_rate = final_rate; - - // step_rate to timer interval - timer = calc_timer(step_rate); -#ifdef ADVANCE - advance -= advance_rate; - if(advance < final_advance) - advance = final_advance; -#endif //ADVANCE - deceleration_time += timer; - OCR1A = timer; - } - // If current block is finished, reset pointer - step_events_completed += 1; - if (step_events_completed >= current_block->step_event_count) { - current_block = NULL; - plan_discard_current_block(); - } - } - busy=false; -} - -#ifdef ADVANCE - -unsigned char old_OCR0A; -// Timer interrupt for E. e_steps is set in the main routine; -// Timer 0 is shared with millies -ISR(TIMER0_COMPA_vect) -{ - // Critical section needed because Timer 1 interrupt has higher priority. - // The pin set functions are placed on trategic position to comply with the stepper driver timing. - WRITE(E_STEP_PIN, LOW); - // e_steps is changed in timer 1 interrupt - CRITICAL_SECTION_START; - // Set E direction (Depends on E direction + advance) - if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); - e_steps++; - WRITE(E_STEP_PIN, HIGH); - } - if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); - } - CRITICAL_SECTION_END; - old_OCR0A += 25; // 10kHz interrupt - OCR0A = old_OCR0A; -} -#endif // ADVANCE - -void st_init() -{ - // waveform generation = 0100 = CTC - TCCR1B &= ~(1<= 16) - { - current_raw = 16383 - raw_temp_value; - temp_meas_ready = true; - temp_count = 0; - raw_temp_value = 0; -#ifdef MAXTEMP - if(current_raw >= maxttemp) { - target_raw = 0; -#ifdef PIDTEMP - OCR2B = 0; -#else - WRITE(HEATER_0_PIN,LOW); -#endif - } -#endif -#ifdef MINTEMP - if(current_raw <= minttemp) { - target_raw = 0; -#ifdef PIDTEMP - OCR2B = 0; -#else - WRITE(HEATER_0_PIN,LOW); -#endif - } -#endif -#ifndef PIDTEMP - if(current_raw >= target_raw) - { - WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } -#endif - } -} - - -#include - -int main(void) -{ - init(); - - setup(); - - for (;;) - loop(); - - return 0; -} - From 26bf57e22c674427b6239811421a3fa4fbc3024d Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 13 Aug 2011 10:09:54 +0200 Subject: [PATCH 004/430] first-commit --- Marlin/Configuration.h | 43 +++++++++++++------------- Marlin/Marlin.pde | 69 +++++++++++++++++++++--------------------- README | 56 ++++++++++++++++++++++++++++++++++ 3 files changed, 111 insertions(+), 57 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index a32fba15a..d66b204d1 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -13,26 +13,6 @@ // 3 is mendel-parts thermistor #define THERMISTORHEATER 3 -// extruder advance constant (s2/mm3) -// -// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 -// -// hooke's law says: force = k * distance -// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant -// so: v ^ 2 is proportional to number of steps we advance the extruder -//#define ADVANCE - -#ifdef ADVANCE -#define EXTRUDER_ADVANCE_K 0.02 - -#define D_FILAMENT 1.7 -#define STEPS_MM_E 65 -//#define D_FILAMENT 2.85 -//#define STEPS_MM_E 367.35 -#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) -#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) - -#endif // ADVANCE //// Calibration variables // X, Y, Z, E steps per unit - Metric Prusa Mendel with V9 extruder: @@ -94,10 +74,10 @@ bool axis_relative_modes[] = {false, false, false, false}; //// Acceleration settings // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. -float acceleration = 3000; // Normal acceleration mm/s^2 +float acceleration = 2000; // Normal acceleration mm/s^2 float retract_acceleration = 7000; // Normal acceleration mm/s^2 float max_jerk = 20*60; -long max_acceleration_units_per_sq_second[] = {7000,7000,20,10000}; // X, Y, Z and E max acceleration in mm/s^2 for printing moves or retracts +long max_acceleration_units_per_sq_second[] = {7000,7000,100,10000}; // X, Y, Z and E max acceleration in mm/s^2 for printing moves or retracts // Not used long max_travel_acceleration_units_per_sq_second[] = {500,500,50,500}; // X, Y, Z max acceleration in mm/s^2 for travel moves @@ -130,4 +110,23 @@ double Kd = 80/PID_dT; #endif // PIDTEMP +// extruder advance constant (s2/mm3) +// +// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 +// +// hooke's law says: force = k * distance +// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant +// so: v ^ 2 is proportional to number of steps we advance the extruder +//#define ADVANCE + +#ifdef ADVANCE +#define EXTRUDER_ADVANCE_K 0.02 + +#define D_FILAMENT 1.7 +#define STEPS_MM_E 65 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + +#endif // ADVANCE + #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 847ea1105..8ac4b3bdd 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -18,10 +18,12 @@ /* This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + It has preliminary support for Matthew Roberts advance algorithm http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) + This firmware is optimized for gen6 electronics. */ @@ -35,12 +37,12 @@ char version_string[] = "0.9.0"; #ifdef SDSUPPORT #include "SdFat.h" -#endif +#endif //SDSUPPORT #ifndef CRITICAL_SECTION_START #define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli() #define CRITICAL_SECTION_END SREG = _sreg -#endif +#endif //CRITICAL_SECTION_START // look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html // http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes @@ -138,18 +140,18 @@ unsigned char temp_meas_ready = false; double pid_input; double pid_output; bool pid_reset; -#endif +#endif //PIDTEMP #ifdef WATCHPERIOD int watch_raw = -1000; unsigned long watchmillis = 0; -#endif +#endif //WATCHPERIOD #ifdef MINTEMP int minttemp = temp2analogh(MINTEMP); -#endif +#endif //MINTEMP #ifdef MAXTEMP int maxttemp = temp2analogh(MAXTEMP); -#endif +#endif //MAXTEMP //Inactivity shutdown variables unsigned long previous_millis_cmd = 0; @@ -183,7 +185,7 @@ void initsd(){ Serial.println("openRoot failed"); else sdactive = true; -#endif +#endif //SDSS } inline void write_command(char *buf){ @@ -205,7 +207,7 @@ inline void write_command(char *buf){ Serial.println("error writing to file"); } } -#endif +#endif //SDSUPPORT void setup() @@ -278,7 +280,7 @@ void setup() SET_INPUT(Z_MAX_PIN); WRITE(Z_MAX_PIN,HIGH); #endif -#else +#else //ENDSTOPPULLUPS #if X_MIN_PIN > -1 SET_INPUT(X_MIN_PIN); #endif @@ -297,7 +299,7 @@ void setup() #if Z_MAX_PIN > -1 SET_INPUT(Z_MAX_PIN); #endif -#endif +#endif //ENDSTOPPULLUPS #if (HEATER_0_PIN > -1) SET_OUTPUT(HEATER_0_PIN); @@ -333,10 +335,10 @@ void setup() #if SDPOWER > -1 SET_OUTPUT(SDPOWER); WRITE(SDPOWER,HIGH); -#endif +#endif //SDPOWER initsd(); -#endif +#endif //SDSUPPORT plan_init(); // Initialize planner; st_init(); // Initialize stepper; tp_init(); // Initialize temperature loop @@ -367,7 +369,7 @@ void loop() } #else process_commands(); -#endif +#endif //SDSUPPORT buflen = (buflen-1); bufindr = (bufindr + 1)%BUFSIZE; } @@ -446,7 +448,7 @@ inline void get_command() #ifdef SDSUPPORT if(savetosd) break; -#endif +#endif //SDSUPPORT Serial.println("ok"); break; default: @@ -497,7 +499,7 @@ inline void get_command() if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; } } -#endif +#endif //SDSUPPORT } @@ -751,7 +753,7 @@ inline void process_commands() //processed in write to file routine above //savetosd = false; break; -#endif +#endif //SDSUPPORT case 104: // M104 #ifdef PID_OPENLOOP if (code_seen('S')) PidTemp_Output = code_value() * (PID_MAX/100.0); @@ -790,7 +792,7 @@ inline void process_commands() else{ watchmillis = 0; } -#endif +#endif //WATCHERPERIOD codenum = millis(); while(current_raw < target_raw) { if( (millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. @@ -922,7 +924,7 @@ void ClearToSend() #ifdef SDSUPPORT if(fromsd[bufindr]) return; -#endif +#endif //SDSUPPORT Serial.println("ok"); } @@ -958,7 +960,7 @@ CRITICAL_SECTION_START; CRITICAL_SECTION_END; #ifdef PIDTEMP - pid_input = analog2temp(current_raw);//ACT + pid_input = analog2temp(current_raw); #ifndef PID_OPENLOOP pid_error = pid_setpoint - pid_input; @@ -1000,7 +1002,7 @@ CRITICAL_SECTION_END; Serial.println(); #endif //PID_DEBUG OCR2B = pid_output; -#endif +#endif //PIDTEMP } @@ -1051,7 +1053,7 @@ inline void kill() target_raw=0; #ifdef PIDTEMP pid_setpoint = 0.0; -#endif PIDTEMP +#endif //PIDTEMP OCR2B = 0; WRITE(HEATER_0_PIN,LOW); @@ -1465,7 +1467,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { float speed_factor = 1; float tmp_speed_factor; if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_x); + speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); } if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); @@ -1473,11 +1475,11 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { } if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); - if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; } if(abs(block->speed_e) > max_feedrate[E_AXIS]){ tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); - if(tmp_speed_factor < speed_factor) speed_factor = tmp_speed_factor; + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; } multiplier = multiplier * speed_factor; block->speed_z = delta_z_mm * multiplier; @@ -1910,8 +1912,6 @@ ISR(TIMER0_COMPA_vect) // Critical section needed because Timer 1 interrupt has higher priority. // The pin set functions are placed on trategic position to comply with the stepper driver timing. WRITE(E_STEP_PIN, LOW); - // e_steps is changed in timer 1 interrupt - CRITICAL_SECTION_START; // Set E direction (Depends on E direction + advance) if (e_steps < 0) { WRITE(E_DIR_PIN,INVERT_E_DIR); @@ -1923,7 +1923,6 @@ ISR(TIMER0_COMPA_vect) e_steps--; WRITE(E_STEP_PIN, HIGH); } - CRITICAL_SECTION_END; old_OCR0A += 25; // 10kHz interrupt OCR0A = old_OCR0A; } @@ -1974,7 +1973,7 @@ void tp_init() TCCR2A = 0x23; //OC2A disable; FastPWM noninverting; FastPWM mode 7 #else TCCR2A = 0x03; //OC2A disable; FastPWM noninverting; FastPWM mode 7 -#endif +#endif //PIDTEMP OCR2A = 156; //Period is ~10ms OCR2B = 0; //Duty Cycle for heater pin is 0 (startup) TIMSK2 = 0x01; //Enable overflow interrupt @@ -2009,9 +2008,9 @@ ISR(TIMER2_OVF_vect) OCR2B = 0; #else WRITE(HEATER_0_PIN,LOW); -#endif +#endif //PIDTEMP } -#endif +#endif //MAXTEMP #ifdef MINTEMP if(current_raw <= minttemp) { target_raw = 0; @@ -2019,9 +2018,9 @@ ISR(TIMER2_OVF_vect) OCR2B = 0; #else WRITE(HEATER_0_PIN,LOW); -#endif +#endif //PIDTEMP } -#endif +#endif //MAXTEMP #ifndef PIDTEMP if(current_raw >= target_raw) { @@ -2031,7 +2030,7 @@ ISR(TIMER2_OVF_vect) { WRITE(HEATER_0_PIN,HIGH); } -#endif +#endif //PIDTEMP } } diff --git a/README b/README index e69de29bb..daf03db52 100644 --- a/README +++ b/README @@ -0,0 +1,56 @@ +This firmware is a mashup between Sprinter, grbl and many original parts. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + +Features: + - Interrupt based movement with real linear acceleration + - High steprate + - Look ahead (Keep the speed high when possible. High cornering speed) + - Interrupt based temperature protection + - preliminary support for Matthew Roberts advance algorithm + For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + +This firmware is optimized for gen6 electronics. + +The default baudrate is 250000. +This gives less communication errors then regular baudrates. + +======================================================================================== + +Configuring and compilation + + +Install the arduino software version 0018 + http://www.arduino.cc/en/Main/Software + +Install the sanguino software, version 0018 + http://sanguino.cc/useit + +Install pronterface + https://github.com/kliment/Printrun + +Copy the Marlin firmware + https:/github.com/ErikZalm/Marlin + (Use the download button) + +Start the arduino IDE. +Select Tools -> Board -> Sanguino +Select the correct serial port in Tools ->Serial Port +Open Marlin.pde + +Change the printer specific setting in Configuration.h to the correct values. + +The following values are the most important: + - float axis_steps_per_unit[].... // Set the correct steps / mm in the corresponding field + - const bool ENDSTOPS_INVERTING = false; // Change if only positive moves are executed + - #define INVERT_x_DIR true // Change if the motor direction is wrong + +Click the Upload button +If all goes well the firmware is uploading + +Start pronterface + +Select the correct Serial Port. Type 250000 in the baudrate field. +Press the Connect button. + + From 5a1787b2f4252b273417d941834a0b8fed32b43b Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 14 Aug 2011 22:15:33 +0200 Subject: [PATCH 005/430] Fix M109 --- Marlin/Marlin.pde | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 8ac4b3bdd..0814f1f9e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -33,7 +33,7 @@ #include "Marlin.h" #include "speed_lookuptable.h" -char version_string[] = "0.9.0"; +char version_string[] = "0.9.1"; #ifdef SDSUPPORT #include "SdFat.h" @@ -783,7 +783,12 @@ inline void process_commands() return; //break; case 109: // M109 - Wait for extruder heater to reach target. - if (code_seen('S')) target_raw = temp2analogh(code_value()); + if (code_seen('S')) { + target_raw = temp2analogh(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEMP + } #ifdef WATCHPERIOD if(target_raw>current_raw){ watchmillis = max(1,millis()); From 0024a26ccf47264343b65e8429fdd756a3250f64 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 15 Aug 2011 19:26:40 +0200 Subject: [PATCH 006/430] Fixed lookup table bug. --- Marlin/Marlin.pde | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 0814f1f9e..24f72afe1 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -33,7 +33,7 @@ #include "Marlin.h" #include "speed_lookuptable.h" -char version_string[] = "0.9.1"; +char version_string[] = "0.9.2"; #ifdef SDSUPPORT #include "SdFat.h" @@ -1163,8 +1163,8 @@ void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit #endif // ADVANCE // Limit minimal step rate (Otherwise the timer will overflow.) - if(initial_rate <32) initial_rate=32; - if(final_rate < 32) final_rate=32; + if(initial_rate <120) initial_rate=120; + if(final_rate < 120) final_rate=120; // Calculate the acceleration steps long acceleration = block->acceleration; @@ -1213,10 +1213,9 @@ inline float max_allowable_speed(float acceleration, float target_velocity, floa // velocities of the respective blocks. inline float junction_jerk(block_t *before, block_t *after) { return(sqrt( - pow((before->speed_x-after->speed_x), 2)+ + pow((before->speed_x-after->speed_x), 2)+ pow((before->speed_y-after->speed_y), 2)+ - pow((before->speed_z-after->speed_z)*axis_steps_per_unit[Z_AXIS]/axis_steps_per_unit[X_AXIS], 2)) - ); + pow((before->speed_z-after->speed_z)*axis_steps_per_unit[Z_AXIS]/axis_steps_per_unit[X_AXIS], 2))); } // Return the safe speed which is max_jerk/2, e.g. the @@ -1494,7 +1493,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->nominal_speed = block->millimeters * multiplier; block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - if(block->nominal_rate < 32) block->nominal_rate = 32; + if(block->nominal_rate < 120) block->nominal_rate = 120; block->entry_speed = safe_speed(block); // Compute the acceleration rate for the trapezoid generator. @@ -1603,7 +1602,7 @@ asm volatile ( \ "d" (charIn1), \ "d" (intIn2) \ : \ -"r26" , "r27" \ +"r26" \ ) // intRes = longIn1 * longIn2 >> 24 @@ -1670,7 +1669,7 @@ static short old_advance = 0; static short e_steps; static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. static long acceleration_time, deceleration_time; -static long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate; +static long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; static unsigned short acc_step_rate; // needed for deccelaration start point @@ -1700,7 +1699,7 @@ inline unsigned short calc_timer(unsigned short step_rate) { unsigned short timer; if(step_rate < 32) step_rate = 32; step_rate -= 32; // Correct for minimal speed - if(step_rate > (8*256)){ // higher step rate + if(step_rate >= (8*256)){ // higher step rate unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; unsigned char tmp_step_rate = (step_rate & 0x00ff); unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); @@ -1725,6 +1724,7 @@ inline void trapezoid_generator_reset() { acceleration_rate = current_block->acceleration_rate; initial_rate = current_block->initial_rate; final_rate = current_block->final_rate; + nominal_rate = current_block->nominal_rate; advance = current_block->initial_advance; final_advance = current_block->final_advance; deceleration_time = 0; @@ -1864,8 +1864,8 @@ ISR(TIMER1_COMPA_vect) acc_step_rate += initial_rate; // upper limit - if(acc_step_rate > current_block->nominal_rate) - acc_step_rate = current_block->nominal_rate; + if(acc_step_rate > nominal_rate) + acc_step_rate = nominal_rate; // step_rate to timer interval timer = calc_timer(acc_step_rate); @@ -1873,7 +1873,7 @@ ISR(TIMER1_COMPA_vect) acceleration_time += timer; OCR1A = timer; } - else if (step_events_completed > decelerate_after) { + else if (step_events_completed >= decelerate_after) { MultiU24X24toH16(step_rate, deceleration_time, acceleration_rate); if(step_rate > acc_step_rate) { // Check step_rate stays positive From b5f6482dcec6e78744167b177b61a41b2f0eb4bc Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 21 Aug 2011 18:29:47 +0200 Subject: [PATCH 007/430] Fixed small feedrate bug. Copied Camiels comments in the Configuration.h file --- Marlin/Configuration.h | 20 +++++++++++--------- Marlin/Marlin.pde | 6 +++--- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index d66b204d1..134dff961 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -15,15 +15,17 @@ //// Calibration variables -// X, Y, Z, E steps per unit - Metric Prusa Mendel with V9 extruder: -float axis_steps_per_unit[] = {40, 40, 3333.92,76.2}; +// X, Y, Z, E steps per unit - Metric Mendel / Orca with V9 extruder: +float axis_steps_per_unit[] = {40, 40, 3333.92, 67}; +// For E steps per unit = 67 for v9 with direct drive (needs finetuning) for other extruders this needs to be changed // Metric Prusa Mendel with Makergear geared stepper extruder: //float axis_steps_per_unit[] = {80,80,3200/1.25,1380}; //// Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool ENDSTOPS_INVERTING = false; //set to true to invert the logic of the endstops +const bool ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false // This determines the communication speed of the printer #define BAUDRATE 250000 @@ -49,10 +51,10 @@ const bool ENDSTOPS_INVERTING = false; //set to true to invert the logic of the #define DISABLE_E false // Inverting axis direction -#define INVERT_X_DIR false -#define INVERT_Y_DIR true -#define INVERT_Z_DIR false -#define INVERT_E_DIR true +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false //// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN @@ -68,8 +70,8 @@ const bool ENDSTOPS_INVERTING = false; //set to true to invert the logic of the //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -float max_feedrate[] = {60000, 60000, 170, 500000}; -float homing_feedrate[] = {1500,1500,120,0}; +float max_feedrate[] = {60000, 60000, 100, 500000}; // set the max speeds +float homing_feedrate[] = {2400, 2400, 80, 0}; // set the homing speeds bool axis_relative_modes[] = {false, false, false, false}; //// Acceleration settings diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 24f72afe1..d1a98565e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -33,7 +33,7 @@ #include "Marlin.h" #include "speed_lookuptable.h" -char version_string[] = "0.9.2"; +char version_string[] = "0.9.3"; #ifdef SDSUPPORT #include "SdFat.h" @@ -947,7 +947,7 @@ inline void get_coordinates() void prepare_move() { - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60); + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60.0); for(int i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } @@ -1490,9 +1490,9 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->speed_x = delta_x_mm * multiplier; block->speed_y = delta_y_mm * multiplier; block->speed_e = delta_e_mm * multiplier; - block->nominal_speed = block->millimeters * multiplier; block->nominal_rate = ceil(block->step_event_count * multiplier / 60); + if(block->nominal_rate < 120) block->nominal_rate = 120; block->entry_speed = safe_speed(block); From 67967a4b60a618b55f57bd5a7e6d90a3b455a3b4 Mon Sep 17 00:00:00 2001 From: ErikZalm Date: Mon, 29 Aug 2011 00:09:18 +0300 Subject: [PATCH 008/430] Edited README via GitHub --- README | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/README b/README index daf03db52..c11f90c65 100644 --- a/README +++ b/README @@ -51,6 +51,20 @@ If all goes well the firmware is uploading Start pronterface Select the correct Serial Port. Type 250000 in the baudrate field. -Press the Connect button. +Press the Connect button + +=============================================================================================== +Known issues + +On some systems we get compilation errors. + +This is caused by the "wiring_serial.c" and "wiring.c". +The simple fix is to delete these files but this may have a performance impact. + +The best workaround is to move these files to sanguino directory. +(".../arduino-0018/hardware/Sanguino/cores/arduino/" on windows systems) + + + From 8e017b81ab125fd403096074b54bb21cb215bfea Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Wed, 14 Sep 2011 18:56:45 +0200 Subject: [PATCH 009/430] Sync with non-gen6 version --- Marlin/Configuration.h | 5 ++- Marlin/Marlin.h | 8 ++--- Marlin/Marlin.pde | 72 ++++++++++++++++++++++-------------------- 3 files changed, 44 insertions(+), 41 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 134dff961..39480939d 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -78,10 +78,9 @@ bool axis_relative_modes[] = {false, false, false, false}; // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. float acceleration = 2000; // Normal acceleration mm/s^2 float retract_acceleration = 7000; // Normal acceleration mm/s^2 -float max_jerk = 20*60; +float max_xy_jerk = 20.0*60; +float max_z_jerk = 0.4*60; long max_acceleration_units_per_sq_second[] = {7000,7000,100,10000}; // X, Y, Z and E max acceleration in mm/s^2 for printing moves or retracts -// Not used long max_travel_acceleration_units_per_sq_second[] = {500,500,50,500}; // X, Y, Z max acceleration in mm/s^2 for travel moves - // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index f0c339657..56d716542 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -86,12 +86,13 @@ typedef struct { float nominal_speed; // The nominal speed for this block in mm/min float millimeters; // The total travel of this block in mm float entry_speed; + float acceleration; // acceleration mm/sec^2 // Settings for the trapezoid generator long nominal_rate; // The nominal step rate for this block in step_events/sec - volatile long initial_rate; // The jerk-adjusted step rate at start of block - volatile long final_rate; // The minimal rate at exit - long acceleration; // acceleration mm/sec^2 + volatile long initial_rate; // The jerk-adjusted step rate at start of block + volatile long final_rate; // The minimal rate at exit + long acceleration_st; // acceleration steps/sec^2 volatile char busy; } block_t; @@ -104,4 +105,3 @@ void plan_set_position(float x, float y, float z, float e); void st_wake_up(); void st_synchronize(); - diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d1a98565e..c6d1ff691 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -33,7 +33,7 @@ #include "Marlin.h" #include "speed_lookuptable.h" -char version_string[] = "0.9.3"; +char version_string[] = "0.9.8"; #ifdef SDSUPPORT #include "SdFat.h" @@ -1167,10 +1167,9 @@ void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit if(final_rate < 120) final_rate=120; // Calculate the acceleration steps - long acceleration = block->acceleration; + long acceleration = block->acceleration_st; long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); - // Calculate the size of Plateau of Nominal Rate. long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; @@ -1214,15 +1213,15 @@ inline float max_allowable_speed(float acceleration, float target_velocity, floa inline float junction_jerk(block_t *before, block_t *after) { return(sqrt( pow((before->speed_x-after->speed_x), 2)+ - pow((before->speed_y-after->speed_y), 2)+ - pow((before->speed_z-after->speed_z)*axis_steps_per_unit[Z_AXIS]/axis_steps_per_unit[X_AXIS], 2))); + pow((before->speed_y-after->speed_y), 2))); } // Return the safe speed which is max_jerk/2, e.g. the // speed under which you cannot exceed max_jerk no matter what you do. float safe_speed(block_t *block) { float safe_speed; - safe_speed = max_jerk/2; + safe_speed = max_xy_jerk/2; + if(abs(block->speed_z) > max_z_jerk/2) safe_speed = max_z_jerk/2; if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; return safe_speed; } @@ -1250,12 +1249,15 @@ void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *n if((previous->steps_x == 0) && (previous->steps_y == 0)) { entry_speed = safe_speed(current); } - else if (jerk > max_jerk) { - entry_speed = (max_jerk/jerk) * entry_speed; + else if (jerk > max_xy_jerk) { + entry_speed = (max_xy_jerk/jerk) * entry_speed; } + if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { + entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; + } // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. if (entry_speed > exit_speed) { - float max_entry_speed = max_allowable_speed(-acceleration,exit_speed, current->millimeters); + float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); if (max_entry_speed < entry_speed) { entry_speed = max_entry_speed; } @@ -1275,16 +1277,16 @@ void planner_reverse_pass() { block_t *block[3] = { NULL, NULL, NULL }; while(block_index != block_buffer_tail) { - block_index--; - if(block_index < 0) { - block_index = BLOCK_BUFFER_SIZE-1; - } block[2]= block[1]; block[1]= block[0]; block[0] = &block_buffer[block_index]; planner_reverse_pass_kernel(block[0], block[1], block[2]); + block_index--; + if(block_index < 0) { + block_index = BLOCK_BUFFER_SIZE-1; + } } - planner_reverse_pass_kernel(NULL, block[0], block[1]); +// planner_reverse_pass_kernel(NULL, block[0], block[1]); } // The kernel called by planner_recalculate() when scanning the plan from first to last entry. @@ -1298,7 +1300,7 @@ void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *n // speed accordingly. Remember current->entry_factor equals the exit factor of // the previous block. if(previous->entry_speed < current->entry_speed) { - float max_entry_speed = max_allowable_speed(-acceleration, previous->entry_speed, previous->millimeters); + float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); if (max_entry_speed < current->entry_speed) { current->entry_speed = max_entry_speed; } @@ -1422,7 +1424,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - + // Calculate the buffer head after we push this byte int next_buffer_head = (block_buffer_head + 1) & BLOCK_BUFFER_MASK; @@ -1450,6 +1452,12 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { if (block->step_event_count == 0) { return; }; + + //enable active axes + if(block->steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; @@ -1492,7 +1500,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->speed_e = delta_e_mm * multiplier; block->nominal_speed = block->millimeters * multiplier; block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - + if(block->nominal_rate < 120) block->nominal_rate = 120; block->entry_speed = safe_speed(block); @@ -1502,18 +1510,19 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->acceleration = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 } else { - block->acceleration = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 // Limit acceleration per axis - if((block->acceleration * block->steps_x / block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) - block->acceleration = axis_steps_per_sqr_second[X_AXIS]; - if((block->acceleration * block->steps_y / block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) - block->acceleration = axis_steps_per_sqr_second[Y_AXIS]; - if((block->acceleration * block->steps_e / block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) - block->acceleration = axis_steps_per_sqr_second[E_AXIS]; - if((block->acceleration * block->steps_z / block->step_event_count) > axis_steps_per_sqr_second[Z_AXIS]) - block->acceleration = axis_steps_per_sqr_second[Z_AXIS]; + if((block->acceleration_st * block->steps_x / block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; + if((block->acceleration_st * block->steps_y / block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; + if((block->acceleration_st * block->steps_e / block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; + if(((block->acceleration_st / block->step_event_count) * block->steps_z ) > axis_steps_per_sqr_second[Z_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; } - + block->acceleration = block->acceleration_st * travel_per_step; + #ifdef ADVANCE // Calculate advance rate if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { @@ -1521,7 +1530,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->advance = 0; } else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration); + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; block->advance = advance; @@ -1554,12 +1563,6 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->direction_bits |= (1<steps_x != 0) enable_x(); - if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - // Move buffer head block_buffer_head = next_buffer_head; @@ -1729,6 +1732,7 @@ inline void trapezoid_generator_reset() { final_advance = current_block->final_advance; deceleration_time = 0; advance_rate = current_block->advance_rate; + // step_rate to timer interval acc_step_rate = initial_rate; acceleration_time = calc_timer(acc_step_rate); From 27664c6da673647846f30b759aa5ad8ae45383ce Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 15 Sep 2011 17:37:58 +0200 Subject: [PATCH 010/430] Software endstps added --- Marlin/Marlin.pde | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c6d1ff691..97c120d5a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -33,7 +33,7 @@ #include "Marlin.h" #include "speed_lookuptable.h" -char version_string[] = "0.9.8"; +char version_string[] = "0.9.9"; #ifdef SDSUPPORT #include "SdFat.h" @@ -947,6 +947,18 @@ inline void get_coordinates() void prepare_move() { + if (min_software_endstops) { + if (destination[X_AXIS] < 0) destination[X_AXIS] = 0.0; + if (destination[Y_AXIS] < 0) destination[Y_AXIS] = 0.0; + if (destination[Z_AXIS] < 0) destination[Z_AXIS] = 0.0; + } + + if (max_software_endstops) { + if (destination[X_AXIS] > X_MAX_LENGTH) destination[X_AXIS] = X_MAX_LENGTH; + if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH; + if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; + } + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60.0); for(int i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; From 0b1423c303c6d7eef7d9f8f04666dd1a1a529bb7 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Tue, 18 Oct 2011 19:13:30 +0200 Subject: [PATCH 011/430] Fixed crashes. --- Marlin/Marlin.pde | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 97c120d5a..c1ece44cb 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -33,7 +33,7 @@ #include "Marlin.h" #include "speed_lookuptable.h" -char version_string[] = "0.9.9"; +char version_string[] = "0.9.10"; #ifdef SDSUPPORT #include "SdFat.h" @@ -1286,19 +1286,17 @@ void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *n // implements the reverse pass. void planner_reverse_pass() { char block_index = block_buffer_head; - block_t *block[3] = { - NULL, NULL, NULL }; - while(block_index != block_buffer_tail) { + block_index--; + block_t *block[3] = { NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index--; + if(block_index < 0) block_index = BLOCK_BUFFER_SIZE-1; block[2]= block[1]; block[1]= block[0]; block[0] = &block_buffer[block_index]; planner_reverse_pass_kernel(block[0], block[1], block[2]); - block_index--; - if(block_index < 0) { - block_index = BLOCK_BUFFER_SIZE-1; - } } -// planner_reverse_pass_kernel(NULL, block[0], block[1]); + planner_reverse_pass_kernel(NULL, block[0], block[1]); } // The kernel called by planner_recalculate() when scanning the plan from first to last entry. @@ -1428,7 +1426,6 @@ void check_axes_activity() { // mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration // calculation the caller must also provide the physical length of the line in millimeters. void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { - // The target position of the tool in absolute steps // Calculate target position in absolute steps long target[4]; @@ -1519,7 +1516,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { // Compute the acceleration rate for the trapezoid generator. float travel_per_step = block->millimeters/block->step_event_count; if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { - block->acceleration = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 } else { block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 From 094afe7c1065d5663628b389f27687a5f465abb8 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 4 Nov 2011 18:02:56 +0100 Subject: [PATCH 012/430] Merged Marlin, Marlin non gen6 and Ultimaker changes --- Marlin/Configuration.h | 147 ++- Marlin/EEPROM.h | 123 +++ Marlin/Makefile | 451 +++++----- Marlin/Marlin.h | 86 +- Marlin/Marlin.pde | 1718 +++++++++--------------------------- Marlin/fastio.h | 1 + Marlin/lcd.h | 10 + Marlin/lcd.pde | 1 + Marlin/pins.h | 96 +- Marlin/planner.cpp | 584 ++++++++++++ Marlin/planner.h | 90 ++ Marlin/speed_lookuptable.h | 8 +- Marlin/stepper.cpp | 592 +++++++++++++ Marlin/stepper.h | 40 + Marlin/streaming.h | 84 ++ Marlin/temperature.cpp | 476 ++++++++++ Marlin/temperature.h | 55 ++ Marlin/thermistortables.h | 221 ++--- Marlin/ultralcd.h | 156 ++++ Marlin/ultralcd.pde | 1593 +++++++++++++++++++++++++++++++++ Marlin/wiring.c | 176 ---- Marlin/wiring_serial.c | 139 --- 22 files changed, 4803 insertions(+), 2044 deletions(-) create mode 100644 Marlin/EEPROM.h create mode 100644 Marlin/lcd.h create mode 100644 Marlin/lcd.pde create mode 100644 Marlin/planner.cpp create mode 100644 Marlin/planner.h create mode 100644 Marlin/stepper.cpp create mode 100644 Marlin/stepper.h create mode 100644 Marlin/streaming.h create mode 100644 Marlin/temperature.cpp create mode 100644 Marlin/temperature.h create mode 100644 Marlin/ultralcd.h create mode 100644 Marlin/ultralcd.pde delete mode 100644 Marlin/wiring.c delete mode 100644 Marlin/wiring_serial.c diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 39480939d..2cef365b0 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,38 +1,70 @@ #ifndef CONFIGURATION_H #define CONFIGURATION_H +//#define DEBUG_STEPS + // BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration //// The following define selects which electronics board you have. Please choose the one that matches your setup -// Gen6 = 5, -#define MOTHERBOARD 5 +// MEGA/RAMPS up to 1.2 = 3, +// RAMPS 1.3 = 33 +// Gen6 = 5, +// Sanguinololu 1.2 and above = 62 +// Ultimaker = 7, +#define MOTHERBOARD 7 +//#define MOTHERBOARD 5 //// Thermistor settings: // 1 is 100k thermistor // 2 is 200k thermistor // 3 is mendel-parts thermistor #define THERMISTORHEATER 3 +// Select one of these only to define how the nozzle temp is read. +//#define HEATER_USES_THERMISTOR +#define HEATER_USES_AD595 +// Select one of these only to define how the bed temp is read. +//#define BED_USES_THERMISTOR +//#define BED_USES_AD595 + +#define HEATER_CHECK_INTERVAL 50 +#define BED_CHECK_INTERVAL 5000 +#define BNUMTEMPS NUMTEMPS +#define bedtemptable temptable -//// Calibration variables -// X, Y, Z, E steps per unit - Metric Mendel / Orca with V9 extruder: -float axis_steps_per_unit[] = {40, 40, 3333.92, 67}; -// For E steps per unit = 67 for v9 with direct drive (needs finetuning) for other extruders this needs to be changed -// Metric Prusa Mendel with Makergear geared stepper extruder: -//float axis_steps_per_unit[] = {80,80,3200/1.25,1380}; //// Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false // This determines the communication speed of the printer -#define BAUDRATE 250000 +//#define BAUDRATE 250000 +#define BAUDRATE 115200 +//#define BAUDRATE 230400 // Comment out (using // at the start of the line) to disable SD support: -//#define SDSUPPORT +// #define ULTRA_LCD //any lcd +#define LCD_WIDTH 16 +#define LCD_HEIGHT 2 + +#define ULTIPANEL +#ifdef ULTIPANEL + //#define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #define LCD_WIDTH 20 +#define LCD_HEIGHT 4 +#endif + + +//#define SDSUPPORT // Enable SD Card Support in Hardware Console + + + +const int dropsegments=5; //everything with this number of steps will be ignored as move //// ADVANCED SETTINGS - to tweak parameters @@ -47,14 +79,14 @@ const bool ENDSTOPS_INVERTING = false; // set to true to invert the logic of the // Disables axis when it's not being used. #define DISABLE_X false #define DISABLE_Y false -#define DISABLE_Z true +#define DISABLE_Z false #define DISABLE_E false // Inverting axis direction #define INVERT_X_DIR true // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false //// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN @@ -63,51 +95,81 @@ const bool ENDSTOPS_INVERTING = false; // set to true to invert the logic of the #define Z_HOME_DIR -1 #define min_software_endstops false //If true, axis won't move to coordinates less than zero. -#define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 200 -#define Y_MAX_LENGTH 200 -#define Z_MAX_LENGTH 100 +#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 210 +#define Y_MAX_LENGTH 210 +#define Z_MAX_LENGTH 210 //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -float max_feedrate[] = {60000, 60000, 100, 500000}; // set the max speeds -float homing_feedrate[] = {2400, 2400, 80, 0}; // set the homing speeds -bool axis_relative_modes[] = {false, false, false, false}; +//note: on bernhards ultimaker 200 200 12 are working well. +#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds +//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. +//!!!!!!Use only if you know that your printer works at the maximum declared speeds. +// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze +#define TRAVELING_AT_MAXSPEED +#define AXIS_RELATIVE_MODES {false, false, false, false} + +#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) + +// default settings + +#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker +#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} +#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. + +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts + +#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 10 + +// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. +#define DEFAULT_MINSEGMENTTIME 20000 +#define DEFAULT_XYJERK 30.0*60 +#define DEFAULT_ZJERK 10.0*60 -//// Acceleration settings -// X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. -float acceleration = 2000; // Normal acceleration mm/s^2 -float retract_acceleration = 7000; // Normal acceleration mm/s^2 -float max_xy_jerk = 20.0*60; -float max_z_jerk = 0.4*60; -long max_acceleration_units_per_sq_second[] = {7000,7000,100,10000}; // X, Y, Z and E max acceleration in mm/s^2 for printing moves or retracts // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +//this enables the watchdog interrupt. +#define USE_WATCHDOG +//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +#define RESET_MANUAL + +#define WATCHDOG_TIMEOUT 4 + + // If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 //#define WATCHPERIOD 5000 //5 seconds //// The minimal temperature defines the temperature below which the heater will not be enabled #define MINTEMP 5 +#define BED_MINTEMP 5 // When temperature exceeds max temp, your heater will be switched off. // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // You should use MINTEMP for thermistor short/failure protection. #define MAXTEMP 275 - +#define BED_MAXTEMP 150 /// PID settings: // Uncomment the following line to enable PID support. -//#define PIDTEMP +//#define SMOOTHING +//#define SMOOTHFACTOR 5.0 +//float current_raw_average=0; + +#define PIDTEMP #ifdef PIDTEMP -//#define PID_DEBUG 1 // Sends debug data to the serial port. +//#define PID_DEBUG // Sends debug data to the serial port. //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % -#define PID_MAX 156 // limits current to nozzle -#define PID_INTEGRAL_DRIVE_MAX 156.0 -#define PID_dT 0.16 -double Kp = 20.0; -double Ki = 1.5*PID_dT; -double Kd = 80/PID_dT; +#define PID_MAX 255 // limits current to nozzle +#define PID_INTEGRAL_DRIVE_MAX 255 +#define PID_dT 0.10 // 100ms sample time +#define DEFAULT_Kp 20.0 +#define DEFAULT_Ki 1.5*PID_dT +#define DEFAULT_Kd 80/PID_dT +#define DEFAULT_Kc 0 #endif // PIDTEMP @@ -121,7 +183,7 @@ double Kd = 80/PID_dT; //#define ADVANCE #ifdef ADVANCE -#define EXTRUDER_ADVANCE_K 0.02 +#define EXTRUDER_ADVANCE_K .3 #define D_FILAMENT 1.7 #define STEPS_MM_E 65 @@ -130,4 +192,15 @@ double Kd = 80/PID_dT; #endif // ADVANCE +#if defined SDSUPPORT +// The number of linear motions that can be in the plan at any give time. + #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller +#else + #define BLOCK_BUFFER_SIZE 16 // maximize block buffer +#endif + +#ifdef SIMPLE_LCD + #define BLOCK_BUFFER_SIZE 16 // A little less buffer for just a simple LCD +#endif + #endif diff --git a/Marlin/EEPROM.h b/Marlin/EEPROM.h new file mode 100644 index 000000000..0390d94e4 --- /dev/null +++ b/Marlin/EEPROM.h @@ -0,0 +1,123 @@ + +#include "planner.h" +#include "temperature.h" + +//====================================================================================== +template int EEPROM_writeAnything(int &ee, const T& value) +{ + const byte* p = (const byte*)(const void*)&value; + int i; + for (i = 0; i < sizeof(value); i++) + EEPROM.write(ee++, *p++); + return i; +} +//====================================================================================== +template int EEPROM_readAnything(int &ee, T& value) +{ + byte* p = (byte*)(void*)&value; + int i; + for (i = 0; i < sizeof(value); i++) + *p++ = EEPROM.read(ee++); + return i; +} +//====================================================================================== + +#define EEPROM_OFFSET 100 + +#define EEPROM_VERSION "V04" // IMPORTANT: Whenever there are changes made to the variables stored in EEPROM + // in the functions below, also increment the version number. This makes sure that + // the default values are used whenever there is a change to the data, to prevent + // wrong data being written to the variables. + // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. +void StoreSettings() { + char ver[4]= "000"; + int i=EEPROM_OFFSET; + EEPROM_writeAnything(i,ver); // invalidate data first + EEPROM_writeAnything(i,axis_steps_per_unit); + EEPROM_writeAnything(i,max_feedrate); + EEPROM_writeAnything(i,max_acceleration_units_per_sq_second); + EEPROM_writeAnything(i,acceleration); + EEPROM_writeAnything(i,retract_acceleration); + EEPROM_writeAnything(i,minimumfeedrate); + EEPROM_writeAnything(i,mintravelfeedrate); + EEPROM_writeAnything(i,minsegmenttime); + EEPROM_writeAnything(i,max_xy_jerk); + EEPROM_writeAnything(i,max_z_jerk); + #ifdef PIDTEMP + EEPROM_writeAnything(i,Kp); + EEPROM_writeAnything(i,Ki); + EEPROM_writeAnything(i,Kd); +#else + EEPROM_writeAnything(i,3000); + EEPROM_writeAnything(i,0); + EEPROM_writeAnything(i,0); +#endif + char ver2[4]=EEPROM_VERSION; + i=EEPROM_OFFSET; + EEPROM_writeAnything(i,ver2); // validate data + ECHOLN("Settings Stored"); + +} + +void RetrieveSettings(bool def=false){ // if def=true, the default values will be used + int i=EEPROM_OFFSET; + char stored_ver[4]; + char ver[4]=EEPROM_VERSION; + EEPROM_readAnything(i,stored_ver); //read stored version +// ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); + if ((!def)&&(strncmp(ver,stored_ver,3)==0)) { // version number match + EEPROM_readAnything(i,axis_steps_per_unit); + EEPROM_readAnything(i,max_feedrate); + EEPROM_readAnything(i,max_acceleration_units_per_sq_second); + EEPROM_readAnything(i,acceleration); + EEPROM_readAnything(i,retract_acceleration); + EEPROM_readAnything(i,minimumfeedrate); + EEPROM_readAnything(i,mintravelfeedrate); + EEPROM_readAnything(i,minsegmenttime); + EEPROM_readAnything(i,max_xy_jerk); + EEPROM_readAnything(i,max_z_jerk); +#ifndef PIDTEMP + float Kp,Ki,Kd; +#endif + EEPROM_readAnything(i,Kp); + EEPROM_readAnything(i,Ki); + EEPROM_readAnything(i,Kd); + + ECHOLN("Stored settings retreived:"); + } + else { + float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; + float tmp2[]=DEFAULT_MAX_FEEDRATE; + long tmp3[]=DEFAULT_MAX_ACCELERATION; + for (int i=0;i<4;i++) { + axis_steps_per_unit[i]=tmp1[i]; + max_feedrate[i]=tmp2[i]; + max_acceleration_units_per_sq_second[i]=tmp3[i]; + } + acceleration=DEFAULT_ACCELERATION; + retract_acceleration=DEFAULT_RETRACT_ACCELERATION; + minimumfeedrate=DEFAULT_MINIMUMFEEDRATE; + minsegmenttime=DEFAULT_MINSEGMENTTIME; + mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; + max_xy_jerk=DEFAULT_XYJERK; + max_z_jerk=DEFAULT_ZJERK; + ECHOLN("Using Default settings:"); + } + ECHOLN("Steps per unit:"); + ECHOLN(" M92 X" <<_FLOAT(axis_steps_per_unit[0],3) << " Y" << _FLOAT(axis_steps_per_unit[1],3) << " Z" << _FLOAT(axis_steps_per_unit[2],3) << " E" << _FLOAT(axis_steps_per_unit[3],3)); + ECHOLN("Maximum feedrates (mm/s):"); + ECHOLN(" M203 X" <<_FLOAT(max_feedrate[0]/60,2)<<" Y" << _FLOAT(max_feedrate[1]/60,2) << " Z" << _FLOAT(max_feedrate[2]/60,2) << " E" << _FLOAT(max_feedrate[3]/60,2)); + ECHOLN("Maximum Acceleration (mm/s2):"); + ECHOLN(" M201 X" <<_FLOAT(max_acceleration_units_per_sq_second[0],0) << " Y" << _FLOAT(max_acceleration_units_per_sq_second[1],0) << " Z" << _FLOAT(max_acceleration_units_per_sq_second[2],0) << " E" << _FLOAT(max_acceleration_units_per_sq_second[3],0)); + ECHOLN("Acceleration: S=acceleration, T=retract acceleration"); + ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); + ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); + ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); +#ifdef PIDTEMP + ECHOLN("PID settings:"); + ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); +#endif + +} + + diff --git a/Marlin/Makefile b/Marlin/Makefile index 06e643d4a..6fafba13b 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -1,247 +1,274 @@ -# Marlin Arduino Project Makefile -# -# Makefile Based on: -# Arduino 0011 Makefile -# Arduino adaptation by mellis, eighthave, oli.keller # -# This has been tested with Arduino 0022. -# -# This makefile allows you to build sketches from the command line -# without the Arduino environment (or Java). +# Arduino 0022 Makefile +# Uno with DOGS102 Shield # -# Detailed instructions for using the makefile: +# written by olikraus@gmail.com # -# 1. Modify the line containg "INSTALL_DIR" to point to the directory that -# contains the Arduino installation (for example, under Mac OS X, this -# might be /Applications/arduino-0012). +# Features: +# - boards.txt is used to derive parameters +# - All intermediate files are put into a separate directory (TMPDIRNAME) +# - Simple use: Copy Makefile into the same directory of the .pde file # -# 2. Modify the line containing "PORT" to refer to the filename -# representing the USB or serial connection to your Arduino board -# (e.g. PORT = /dev/tty.USB0). If the exact name of this file -# changes, you can use * as a wildcard (e.g. PORT = /dev/tty.usb*). +# Limitations: +# - requires UNIX environment +# - TMPDIRNAME must be subdirectory of the current directory. # -# 3. Set the line containing "MCU" to match your board's processor. -# Older one's are atmega8 based, newer ones like Arduino Mini, Bluetooth -# or Diecimila have the atmega168. If you're using a LilyPad Arduino, -# change F_CPU to 8000000. +# Targets +# all build everything +# upload build and upload to arduino +# clean remove all temporary files (includes final hex file) # -# 4. Type "make" and press enter to compile/verify your program. +# History +# 001 28 Apr 2010 first release +# 002 05 Oct 2010 added 'uno' # -# 5. Type "make upload", reset your Arduino board, and press enter to -# upload your program to the Arduino board. -# -# $Id$ -TARGET = Marlin -INSTALL_DIR = ../../Desktop/arduino-0018/ -UPLOAD_RATE = 38400 -AVRDUDE_PROGRAMMER = stk500v1 -PORT = /dev/ttyUSB0 -#MCU = atmega2560 -#For "old" Arduino Mega -#MCU = atmega1280 -#For Sanguinololu -MCU = atmega644p -F_CPU = 16000000 +#=== user configuration === +# All ...PATH variables must have a '/' at the end + +# Board (and prozessor) information: see $(ARDUINO_PATH)hardware/arduino/boards.txt +# Some examples: +# BOARD DESCRIPTION +# uno Arduino Uno +# atmega328 Arduino Duemilanove or Nano w/ ATmega328 +# diecimila Arduino Diecimila, Duemilanove, or Nano w/ ATmega168 +# mega Arduino Mega +# mini Arduino Mini +# lilypad328 LilyPad Arduino w/ ATmega328 +BOARD:=mega + +# additional (comma separated) defines +# -DDOGM128_HW board is connected to DOGM128 display +# -DDOGM132_HW board is connected to DOGM132 display +# -DDOGS102_HW board is connected to DOGS102 display +# -DDOG_REVERSE 180 degree rotation +# -DDOG_SPI_SW_ARDUINO force SW shiftOut +DEFS=-DDOGS102_HW -DDOG_DOUBLE_MEMORY -DDOG_SPI_SW_ARDUINO + +# The location where the avr tools (e.g. avr-gcc) are located. Requires a '/' at the end. +# Can be empty if all tools are accessable through the search path +AVR_TOOLS_PATH:=/usr/bin/ + +# Install path of the arduino software. Requires a '/' at the end. +ARDUINO_PATH:=/home/bkubicek/software/arduino-0022/ + +# Install path for avrdude. Requires a '/' at the end. Can be empty if avrdude is in the search path. +AVRDUDE_PATH:= + +# The unix device where we can reach the arduino board +# Uno: /dev/ttyACM0 +# Duemilanove: /dev/ttyUSB0 +AVRDUDE_PORT:=/dev/ttyACM0 + +# List of all libaries which should be included. +#EXTRA_DIRS=$(ARDUINO_PATH)libraries/LiquidCrystal/ +#EXTRA_DIRS+=$(ARDUINO_PATH)libraries/Dogm/ +#EXTRA_DIRS+=/home/kraus/src/arduino/dogm128/hg/libraries/Dogm/ + +#=== fetch parameter from boards.txt processor parameter === +# the basic idea is to get most of the information from boards.txt + +BOARDS_TXT:=$(ARDUINO_PATH)hardware/arduino/boards.txt + +# get the MCU value from the $(BOARD).build.mcu variable. For the atmega328 board this is atmega328p +MCU:=$(shell sed -n -e "s/$(BOARD).build.mcu=\(.*\)/\1/p" $(BOARDS_TXT)) +# get the F_CPU value from the $(BOARD).build.f_cpu variable. For the atmega328 board this is 16000000 +F_CPU:=$(shell sed -n -e "s/$(BOARD).build.f_cpu=\(.*\)/\1/p" $(BOARDS_TXT)) + +# avrdude +# get the AVRDUDE_UPLOAD_RATE value from the $(BOARD).upload.speed variable. For the atmega328 board this is 57600 +AVRDUDE_UPLOAD_RATE:=$(shell sed -n -e "s/$(BOARD).upload.speed=\(.*\)/\1/p" $(BOARDS_TXT)) +# get the AVRDUDE_PROGRAMMER value from the $(BOARD).upload.protocol variable. For the atmega328 board this is stk500 +# AVRDUDE_PROGRAMMER:=$(shell sed -n -e "s/$(BOARD).upload.protocol=\(.*\)/\1/p" $(BOARDS_TXT)) +# use stk500v1, because stk500 will default to stk500v2 +AVRDUDE_PROGRAMMER:=stk500v1 + +#=== identify user files === +PDESRC:=$(shell ls *.pde) +TARGETNAME=$(basename $(PDESRC)) + +CDIRS:=$(EXTRA_DIRS) $(addsuffix utility/,$(EXTRA_DIRS)) +CDIRS:=*.c utility/*.c $(addsuffix *.c,$(CDIRS)) $(ARDUINO_PATH)hardware/arduino/cores/arduino/*.c +CSRC:=$(shell ls $(CDIRS) 2>/dev/null) + +CCSRC:=$(shell ls *.cc 2>/dev/null) + +CPPDIRS:=$(EXTRA_DIRS) $(addsuffix utility/,$(EXTRA_DIRS)) +CPPDIRS:=*.cpp utility/*.cpp $(addsuffix *.cpp,$(CPPDIRS)) $(ARDUINO_PATH)hardware/arduino/cores/arduino/*.cpp +CPPSRC:=$(shell ls $(CPPDIRS) 2>/dev/null) + +#=== build internal variables === + +# the name of the subdirectory where everything is stored +TMPDIRNAME:=tmp +TMPDIRPATH:=$(TMPDIRNAME)/ + +AVRTOOLSPATH:=$(AVR_TOOLS_PATH) + +OBJCOPY:=$(AVRTOOLSPATH)avr-objcopy +OBJDUMP:=$(AVRTOOLSPATH)avr-objdump +SIZE:=$(AVRTOOLSPATH)avr-size + +CPPSRC:=$(addprefix $(TMPDIRPATH),$(PDESRC:.pde=.cpp)) $(CPPSRC) + +COBJ:=$(CSRC:.c=.o) +CCOBJ:=$(CCSRC:.cc=.o) +CPPOBJ:=$(CPPSRC:.cpp=.o) + +OBJFILES:=$(COBJ) $(CCOBJ) $(CPPOBJ) +DIRS:= $(dir $(OBJFILES)) + +DEPFILES:=$(OBJFILES:.o=.d) +# assembler files from avr-gcc -S +ASSFILES:=$(OBJFILES:.o=.s) +# disassembled object files with avr-objdump -S +DISFILES:=$(OBJFILES:.o=.dis) -############################################################################ -# Below here nothing should be changed... +LIBNAME:=$(TMPDIRPATH)$(TARGETNAME).a +ELFNAME:=$(TMPDIRPATH)$(TARGETNAME).elf +HEXNAME:=$(TMPDIRPATH)$(TARGETNAME).hex -ARDUINO = $(INSTALL_DIR)/hardware/Sanguino/cores/arduino -AVR_TOOLS_PATH = $(INSTALL_DIR)/hardware/tools/avr/bin -SRC = $(ARDUINO)/pins_arduino.c wiring.c wiring_serial.c \ -$(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ -$(ARDUINO)/wiring_pulse.c \ -$(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c -CXXSRC = $(ARDUINO)/HardwareSerial.cpp $(ARDUINO)/WMath.cpp \ -$(ARDUINO)/Print.cpp ./SdFile.cpp ./SdVolume.cpp ./Sd2Card.cpp -FORMAT = ihex +AVRDUDE_FLAGS = -V -F +AVRDUDE_FLAGS += -C $(ARDUINO_PATH)/hardware/tools/avrdude.conf +AVRDUDE_FLAGS += -p $(MCU) +AVRDUDE_FLAGS += -P $(AVRDUDE_PORT) +AVRDUDE_FLAGS += -c $(AVRDUDE_PROGRAMMER) +AVRDUDE_FLAGS += -b $(AVRDUDE_UPLOAD_RATE) +AVRDUDE_FLAGS += -U flash:w:$(HEXNAME) + +AVRDUDE = avrdude + +#=== predefined variable override === +# use "make -p -f/dev/null" to see the default rules and definitions + +# Build C and C++ flags. Include path information must be placed here +COMMON_FLAGS = -DF_CPU=$(F_CPU) -mmcu=$(MCU) $(DEFS) +# COMMON_FLAGS += -gdwarf-2 +COMMON_FLAGS += -Os +COMMON_FLAGS += -Wall -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums +COMMON_FLAGS += -I. +COMMON_FLAGS += -I$(ARDUINO_PATH)hardware/arduino/cores/arduino +COMMON_FLAGS += $(addprefix -I,$(EXTRA_DIRS)) +COMMON_FLAGS += -ffunction-sections -fdata-sections -Wl,--gc-sections +COMMON_FLAGS += -Wl,--relax +COMMON_FLAGS += -mcall-prologues + +CFLAGS = $(COMMON_FLAGS) -std=gnu99 -Wstrict-prototypes +CXXFLAGS = $(COMMON_FLAGS) + +# Replace standard build tools by avr tools +CC = $(AVRTOOLSPATH)avr-gcc +CXX = $(AVRTOOLSPATH)avr-g++ +AR = @$(AVRTOOLSPATH)avr-ar -# Name of this Makefile (used for "make depend"). -MAKEFILE = Makefile +# "rm" must be able to delete a directory tree +RM = rm -rf -# Debugging format. -# Native formats for AVR-GCC's -g are stabs [default], or dwarf-2. -# AVR (extended) COFF requires stabs, plus an avr-objcopy run. -DEBUG = stabs +#=== rules === -OPT = s +# add rules for the C/C++ files where the .o file is placed in the TMPDIRPATH +# reuse existing variables as far as possible -# Place -D or -U options here -CDEFS = -DF_CPU=$(F_CPU) -CXXDEFS = -DF_CPU=$(F_CPU) +$(TMPDIRPATH)%.o: %.c + @echo compile $< + @$(COMPILE.c) $(OUTPUT_OPTION) $< -# Place -I options here -CINCS = -I$(ARDUINO) -CXXINCS = -I$(ARDUINO) +$(TMPDIRPATH)%.o: %.cc + @echo compile $< + @$(COMPILE.cc) $(OUTPUT_OPTION) $< -# Compiler flag to set the C Standard level. -# c89 - "ANSI" C -# gnu89 - c89 plus GCC extensions -# c99 - ISO C99 standard (not yet fully implemented) -# gnu99 - c99 plus GCC extensions -#CSTANDARD = -std=gnu99 -CDEBUG = -g$(DEBUG) -CWARN = -Wall -Wunused-variable -CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -w -ffunction-sections -fdata-sections -DARDUINO=22 -#CEXTRA = -Wa,-adhlns=$(<:.c=.lst) +$(TMPDIRPATH)%.o: %.cpp + @echo compile $< + @$(COMPILE.cpp) $(OUTPUT_OPTION) $< -CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CEXTRA) $(CTUNING) -CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) -Wall $(CEXTRA) $(CTUNING) -#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs -LDFLAGS = -lm +$(TMPDIRPATH)%.s: %.c + @$(COMPILE.c) $(OUTPUT_OPTION) -S $< +$(TMPDIRPATH)%.s: %.cc + @$(COMPILE.cc) $(OUTPUT_OPTION) -S $< -# Programming support using avrdude. Settings and variables. -AVRDUDE_PORT = $(PORT) -AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex:i -AVRDUDE_FLAGS = -D -C $(INSTALL_DIR)/hardware/tools/avrdude.conf \ --p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ --b $(UPLOAD_RATE) +$(TMPDIRPATH)%.s: %.cpp + @$(COMPILE.cpp) $(OUTPUT_OPTION) -S $< -# Program settings -CC = $(AVR_TOOLS_PATH)/avr-gcc -CXX = $(AVR_TOOLS_PATH)/avr-g++ -OBJCOPY = $(AVR_TOOLS_PATH)/avr-objcopy -OBJDUMP = $(AVR_TOOLS_PATH)/avr-objdump -AR = $(AVR_TOOLS_PATH)/avr-ar -SIZE = $(AVR_TOOLS_PATH)/avr-size -NM = $(AVR_TOOLS_PATH)/avr-nm -AVRDUDE = $(INSTALL_DIR)/hardware/tools/avrdude -REMOVE = rm -f -MV = mv -f +$(TMPDIRPATH)%.dis: $(TMPDIRPATH)%.o + @$(OBJDUMP) -S $< > $@ -# Define all object files. -OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) - -# Define all listing files. -LST = $(ASRC:.S=.lst) $(CXXSRC:.cpp=.lst) $(SRC:.c=.lst) - -# Combine all necessary flags and optional flags. -# Add target processor to flags. -ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS) -ALL_CXXFLAGS = -mmcu=$(MCU) -I. $(CXXFLAGS) -ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) - - -# Default target. -all: applet_files_ez build sizeafter - -build: elf hex - -applet_files_ez: $(TARGET).pde - # Here is the "preprocessing". - # It creates a .cpp file based with the same name as the .pde file. - # On top of the new .cpp file comes the WProgram.h header. - # At the end there is a generic main() function attached. - # Then the .cpp file will be compiled. Errors during compile will - # refer to this new, automatically generated, file. - # Not the original .pde file you actually edit... - test -d applet || mkdir applet - echo '#include "WProgram.h"' > applet/$(TARGET).cpp - cat $(TARGET).pde >> applet/$(TARGET).cpp - cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp - -elf: applet/$(TARGET).elf -hex: applet/$(TARGET).hex -eep: applet/$(TARGET).eep -lss: applet/$(TARGET).lss -sym: applet/$(TARGET).sym - -# Program the device. -upload: applet/$(TARGET).hex - $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) - - - # Display size of file. -HEXSIZE = $(SIZE) --target=$(FORMAT) applet/$(TARGET).hex -ELFSIZE = $(SIZE) applet/$(TARGET).elf -sizebefore: - @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi - -sizeafter: - @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi - - -# Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. -COFFCONVERT=$(OBJCOPY) --debugging \ ---change-section-address .data-0x800000 \ ---change-section-address .bss-0x800000 \ ---change-section-address .noinit-0x800000 \ ---change-section-address .eeprom-0x810000 - - -coff: applet/$(TARGET).elf - $(COFFCONVERT) -O coff-avr applet/$(TARGET).elf $(TARGET).cof - - -extcoff: $(TARGET).elf - $(COFFCONVERT) -O coff-ext-avr applet/$(TARGET).elf $(TARGET).cof - - -.SUFFIXES: .elf .hex .eep .lss .sym +.SUFFIXES: .elf .hex .pde .elf.hex: - $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ - -.elf.eep: - -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ - --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ - -# Create extended listing file from ELF output file. -.elf.lss: - $(OBJDUMP) -h -S $< > $@ - -# Create a symbol table from ELF output file. -.elf.sym: - $(NM) -n $< > $@ - - # Link: create ELF output file from library. -applet/$(TARGET).elf: $(TARGET).pde applet/core.a - $(CC) $(ALL_CFLAGS) -Wl,--gc-sections -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) - -applet/core.a: $(OBJ) - @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done + @$(OBJCOPY) -O ihex -R .eeprom $< $@ + +$(TMPDIRPATH)%.cpp: %.pde + @cat $(ARDUINO_PATH)hardware/arduino/cores/arduino/main.cpp > $@ + @cat $< >> $@ + @echo >> $@ + @echo 'extern "C" void __cxa_pure_virtual() { while (1); }' >> $@ +.PHONY: all +all: tmpdir $(HEXNAME) assemblersource showsize + ls -al $(HEXNAME) $(ELFNAME) -# Compile: create object files from C++ source files. -.cpp.o: - $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ +$(ELFNAME): $(LIBNAME)($(addprefix $(TMPDIRPATH),$(OBJFILES))) + $(LINK.o) $(COMMON_FLAGS) $(LIBNAME) $(LOADLIBES) $(LDLIBS) -o $@ -# Compile: create object files from C source files. -.c.o: - $(CC) -c $(ALL_CFLAGS) $< -o $@ +$(LIBNAME)(): $(addprefix $(TMPDIRPATH),$(OBJFILES)) + +#=== create temp directory === +# not really required, because it will be also created during the dependency handling +.PHONY: tmpdir +tmpdir: + @test -d $(TMPDIRPATH) || mkdir $(TMPDIRPATH) + +#=== create assembler files for each C/C++ file === +.PHONY: assemblersource +assemblersource: $(addprefix $(TMPDIRPATH),$(ASSFILES)) $(addprefix $(TMPDIRPATH),$(DISFILES)) -# Compile: create assembler files from C source files. -.c.s: - $(CC) -S $(ALL_CFLAGS) $< -o $@ +#=== show the section sizes of the ELF file === +.PHONY: showsize +showsize: $(ELFNAME) + $(SIZE) $< - -# Assemble: create object files from assembler source files. -.S.o: - $(CC) -c $(ALL_ASFLAGS) $< -o $@ - - - -# Target: clean project. +#=== clean up target === +# this is simple: the TMPDIRPATH is removed +.PHONY: clean clean: - $(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ - applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ - $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) + $(RM) $(TMPDIRPATH) + +# Program the device. +# step 1: reset the arduino board with the stty command +# step 2: user avrdude to upload the software +.PHONY: upload +upload: $(HEXNAME) + stty -F $(AVRDUDE_PORT) hupcl + $(AVRDUDE) $(AVRDUDE_FLAGS) + + +# === dependency handling === +# From the gnu make manual (section 4.14, Generating Prerequisites Automatically) +# Additionally (because this will be the first executed rule) TMPDIRPATH is created here. +# Instead of "sed" the "echo" command is used +# cd $(TMPDIRPATH); mkdir -p $(DIRS) 2> /dev/null; cd .. +DEPACTION=test -d $(TMPDIRPATH) || mkdir $(TMPDIRPATH);\ +mkdir -p $(addprefix $(TMPDIRPATH),$(DIRS));\ +set -e; echo -n $@ $(dir $@) > $@; $(CC) -MM $(COMMON_FLAGS) $< >> $@ + + +$(TMPDIRPATH)%.d: %.c + @$(DEPACTION) + +$(TMPDIRPATH)%.d: %.cc + @$(DEPACTION) + + +$(TMPDIRPATH)%.d: %.cpp + @$(DEPACTION) + +# Include dependency files. If a .d file is missing, a warning is created and the .d file is created +# This warning is not a problem (gnu make manual, section 3.3 Including Other Makefiles) +-include $(addprefix $(TMPDIRPATH),$(DEPFILES)) -depend: - if grep '^# DO NOT DELETE' $(MAKEFILE) >/dev/null; \ - then \ - sed -e '/^# DO NOT DELETE/,$$d' $(MAKEFILE) > \ - $(MAKEFILE).$$$$ && \ - $(MV) $(MAKEFILE).$$$$ $(MAKEFILE); \ - fi - echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' \ - >> $(MAKEFILE); \ - $(CC) -M -mmcu=$(MCU) $(CDEFS) $(CINCS) $(SRC) $(ASRC) >> $(MAKEFILE) -.PHONY: all build elf hex eep lss sym program coff extcoff clean depend applet_files sizebefore sizeafter diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 56d716542..cc43f00b2 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -1,27 +1,20 @@ +#ifndef __MARLINH +#define __MARLINH + // Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. // Licence: GPL #include #include "fastio.h" -extern "C" void __cxa_pure_virtual(); -void __cxa_pure_virtual(){}; + + +#define ECHO(x) Serial << "echo: " << x; +#define ECHOLN(x) Serial << "echo: "< -1 #define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) #define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) @@ -43,9 +36,12 @@ float analog2tempu(int raw, const short table[][2], int numtemps); #define enable_z() ; #define disable_z() ; #endif + #if E_ENABLE_PIN > -1 -#define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) -#define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) + + #define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) + #define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) + #else #define enable_e() ; #define disable_e() ; @@ -61,47 +57,27 @@ void ClearToSend(); void get_coordinates(); void prepare_move(); -void linear_move(unsigned long steps_remaining[]); -void do_step(int axis); void kill(byte debug); -// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in -// the source g-code and may never actually be reached if acceleration management is active. -typedef struct { - // Fields used by the bresenham algorithm for tracing the line - long steps_x, steps_y, steps_z, steps_e; // Step count along each axis - long step_event_count; // The number of step events required to complete this block - volatile long accelerate_until; // The index of the step event on which to stop acceleration - volatile long decelerate_after; // The index of the step event on which to start decelerating - volatile long acceleration_rate; // The acceleration rate used for acceleration calculation - unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) +//void check_axes_activity(); +//void plan_init(); +//void st_init(); +//void tp_init(); +//void plan_buffer_line(float x, float y, float z, float e, float feed_rate); +//void plan_set_position(float x, float y, float z, float e); +//void st_wake_up(); +//void st_synchronize(); +void enquecommand(const char *cmd); +void wd_reset(); - long advance_rate; - volatile long initial_advance; - volatile long final_advance; - float advance; +#ifndef CRITICAL_SECTION_START +#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli(); +#define CRITICAL_SECTION_END SREG = _sreg; +#endif //CRITICAL_SECTION_START - // Fields used by the motion planner to manage acceleration - float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis - float nominal_speed; // The nominal speed for this block in mm/min - float millimeters; // The total travel of this block in mm - float entry_speed; - float acceleration; // acceleration mm/sec^2 +extern float homing_feedrate[]; +extern bool axis_relative_modes[]; - // Settings for the trapezoid generator - long nominal_rate; // The nominal step rate for this block in step_events/sec - volatile long initial_rate; // The jerk-adjusted step rate at start of block - volatile long final_rate; // The minimal rate at exit - long acceleration_st; // acceleration steps/sec^2 - volatile char busy; -} block_t; - -void check_axes_activity(); -void plan_init(); -void st_init(); -void tp_init(); -void plan_buffer_line(float x, float y, float z, float e, float feed_rate); -void plan_set_position(float x, float y, float z, float e); -void st_wake_up(); -void st_synchronize(); +void manage_inactivity(byte debug); +#endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c1ece44cb..6922b8a1f 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -23,26 +23,29 @@ It has preliminary support for Matthew Roberts advance algorithm http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - This firmware is optimized for gen6 electronics. */ +#include #include "fastio.h" #include "Configuration.h" #include "pins.h" #include "Marlin.h" -#include "speed_lookuptable.h" +#include "ultralcd.h" +#include "streaming.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" -char version_string[] = "0.9.10"; +#ifdef SIMPLE_LCD + #include "Simplelcd.h" +#endif + +char version_string[] = "1.0.0 Alpha 1"; #ifdef SDSUPPORT #include "SdFat.h" #endif //SDSUPPORT -#ifndef CRITICAL_SECTION_START -#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli() -#define CRITICAL_SECTION_END SREG = _sreg -#endif //CRITICAL_SECTION_START // look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html // http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes @@ -87,9 +90,17 @@ char version_string[] = "0.9.10"; // M115 - Capabilities string // M140 - Set bed target temp // M190 - Wait for bed current temp to reach target temp. +// M200 - Set filament diameter // M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) -// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) +// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk +// M220 - set speed factor override percentage S:factor in percent // M301 - Set PID parameters P I and D +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. //Stepper Movement Variables @@ -100,15 +111,23 @@ float destination[NUM_AXIS] = { float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; bool home_all_axis = true; -long feedrate = 1500, next_feedrate, saved_feedrate; +float feedrate = 1500.0, next_feedrate, saved_feedrate; long gcode_N, gcode_LastN; + +float homing_feedrate[] = HOMING_FEEDRATE; +bool axis_relative_modes[] = AXIS_RELATIVE_MODES; + bool relative_mode = false; //Determines Absolute or Relative Coordinates bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. -unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +uint8_t fanpwm=0; + +volatile int feedmultiply=100; //100->1 200->2 +int saved_feedmultiply; +volatile bool feedmultiplychanged=false; // comm variables #define MAX_CMD_SIZE 96 -#define BUFSIZE 8 +#define BUFSIZE 4 char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; bool fromsd[BUFSIZE]; int bufindr = 0; @@ -119,45 +138,23 @@ char serial_char; int serial_count = 0; boolean comment_mode = false; char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc +extern float HeaterPower; -// Manage heater variables. - -int target_raw = 0; -int current_raw = 0; -unsigned char temp_meas_ready = false; - -#ifdef PIDTEMP - double temp_iState = 0; - double temp_dState = 0; - double pTerm; - double iTerm; - double dTerm; - //int output; - double pid_error; - double temp_iState_min; - double temp_iState_max; - double pid_setpoint = 0.0; - double pid_input; - double pid_output; - bool pid_reset; -#endif //PIDTEMP +#include "EEPROM.h" +float tt = 0, bt = 0; #ifdef WATCHPERIOD int watch_raw = -1000; unsigned long watchmillis = 0; #endif //WATCHPERIOD -#ifdef MINTEMP -int minttemp = temp2analogh(MINTEMP); -#endif //MINTEMP -#ifdef MAXTEMP -int maxttemp = temp2analogh(MAXTEMP); -#endif //MAXTEMP //Inactivity shutdown variables unsigned long previous_millis_cmd = 0; unsigned long max_inactive_time = 0; unsigned long stepper_inactive_time = 0; +unsigned long starttime=0; +unsigned long stoptime=0; #ifdef SDSUPPORT Sd2Card card; SdVolume volume; @@ -169,6 +166,7 @@ bool sdmode = false; bool sdactive = false; bool savetosd = false; int16_t n; +long autostart_atmillis=0; void initsd(){ sdactive = false; @@ -184,10 +182,18 @@ void initsd(){ else if (!root.openRoot(&volume)) Serial.println("openRoot failed"); else + { sdactive = true; + Serial.println("SD card ok"); + } #endif //SDSS } +void quickinitsd(){ + sdactive=false; + autostart_atmillis=millis()+5000; +} + inline void write_command(char *buf){ char* begin = buf; char* npos = 0; @@ -210,147 +216,131 @@ inline void write_command(char *buf){ #endif //SDSUPPORT +///adds an command to the main command buffer +void enquecommand(const char *cmd) +{ + if(buflen < BUFSIZE) + { + //this is dangerous if a mixing of serial and this happsens + strcpy(&(cmdbuffer[bufindw][0]),cmd); + Serial.print("en:");Serial.println(cmdbuffer[bufindw]); + bufindw= (bufindw + 1)%BUFSIZE; + buflen += 1; + } +} + void setup() { + Serial.begin(BAUDRATE); - Serial.print("Marlin "); - Serial.println(version_string); + ECHOLN("Marlin "< -1 - SET_OUTPUT(X_DIR_PIN); -#endif -#if Y_DIR_PIN > -1 - SET_OUTPUT(Y_DIR_PIN); -#endif -#if Z_DIR_PIN > -1 - SET_OUTPUT(Z_DIR_PIN); -#endif -#if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); -#endif - //Initialize Enable Pins - steppers default to disabled. - -#if (X_ENABLE_PIN > -1) - SET_OUTPUT(X_ENABLE_PIN); - if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); -#endif -#if (Y_ENABLE_PIN > -1) - SET_OUTPUT(Y_ENABLE_PIN); - if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); -#endif -#if (Z_ENABLE_PIN > -1) - SET_OUTPUT(Z_ENABLE_PIN); - if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); -#endif -#if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); -#endif - - //endstops and pullups -#ifdef ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - WRITE(X_MIN_PIN,HIGH); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - WRITE(X_MAX_PIN,HIGH); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - WRITE(Y_MIN_PIN,HIGH); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - WRITE(Y_MAX_PIN,HIGH); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - WRITE(Z_MIN_PIN,HIGH); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - WRITE(Z_MAX_PIN,HIGH); -#endif -#else //ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); -#endif -#endif //ENDSTOPPULLUPS - -#if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); -#endif -#if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); -#endif - - //Initialize Step Pins -#if (X_STEP_PIN > -1) - SET_OUTPUT(X_STEP_PIN); -#endif -#if (Y_STEP_PIN > -1) - SET_OUTPUT(Y_STEP_PIN); -#endif -#if (Z_STEP_PIN > -1) - SET_OUTPUT(Z_STEP_PIN); -#endif -#if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); -#endif for(int i=0; i < NUM_AXIS; i++){ axis_steps_per_sqr_second[i] = max_acceleration_units_per_sq_second[i] * axis_steps_per_unit[i]; } -#ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; -#endif //PIDTEMP - #ifdef SDSUPPORT //power to SD reader #if SDPOWER > -1 SET_OUTPUT(SDPOWER); WRITE(SDPOWER,HIGH); #endif //SDPOWER - initsd(); + quickinitsd(); #endif //SDSUPPORT plan_init(); // Initialize planner; st_init(); // Initialize stepper; tp_init(); // Initialize temperature loop + //checkautostart(); } +#ifdef SDSUPPORT +bool autostart_stilltocheck=true; + + +void checkautostart(bool force) +{ + //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset + if(!force) + { + if(!autostart_stilltocheck) + return; + if(autostart_atmillis 0) + { + for(int i=0;i= filesize){ sdmode = false; Serial.println("Done printing file"); + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + checkautostart(true); } if(!serial_count) return; //if empty line cmdbuffer[bufindw][serial_count] = 0; //terminate string @@ -548,38 +549,41 @@ inline void process_commands() break; case 28: //G28 Home all Axis one at a time saved_feedrate = feedrate; + saved_feedmultiply = feedmultiply; + feedmultiply = 100; + for(int i=0; i < NUM_AXIS; i++) { destination[i] = current_position[i]; } - feedrate = 0; + feedrate = 0.0; home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ - st_synchronize(); +// st_synchronize(); current_position[X_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; feedrate = homing_feedrate[X_AXIS]; prepare_move(); - - st_synchronize(); + +// st_synchronize(); current_position[X_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[X_AXIS] = -5 * X_HOME_DIR; prepare_move(); - - st_synchronize(); + +// st_synchronize(); destination[X_AXIS] = 10 * X_HOME_DIR; feedrate = homing_feedrate[X_AXIS]/2 ; prepare_move(); - st_synchronize(); - + +// st_synchronize(); current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[X_AXIS] = current_position[X_AXIS]; - feedrate = 0; + feedrate = 0.0; } } @@ -590,23 +594,23 @@ inline void process_commands() destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; feedrate = homing_feedrate[Y_AXIS]; prepare_move(); - st_synchronize(); +// st_synchronize(); current_position[Y_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[Y_AXIS] = -5 * Y_HOME_DIR; prepare_move(); - st_synchronize(); +// st_synchronize(); destination[Y_AXIS] = 10 * Y_HOME_DIR; feedrate = homing_feedrate[Y_AXIS]/2; prepare_move(); - st_synchronize(); +// st_synchronize(); current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[Y_AXIS] = current_position[Y_AXIS]; - feedrate = 0; + feedrate = 0.0; } } @@ -617,26 +621,27 @@ inline void process_commands() destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; feedrate = homing_feedrate[Z_AXIS]; prepare_move(); - st_synchronize(); +// st_synchronize(); current_position[Z_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[Z_AXIS] = -2 * Z_HOME_DIR; prepare_move(); - st_synchronize(); +// st_synchronize(); destination[Z_AXIS] = 3 * Z_HOME_DIR; feedrate = homing_feedrate[Z_AXIS]/2; prepare_move(); - st_synchronize(); +// st_synchronize(); current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[Z_AXIS] = current_position[Z_AXIS]; - feedrate = 0; + feedrate = 0.0; } } feedrate = saved_feedrate; + feedmultiply = saved_feedmultiply; previous_millis_cmd = millis(); break; case 90: // G90 @@ -653,7 +658,6 @@ inline void process_commands() } plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); break; - } } @@ -701,6 +705,7 @@ inline void process_commands() case 24: //M24 - Start SD print if(sdactive){ sdmode = true; + starttime=millis(); } break; case 25: //M25 - Pause SD print @@ -753,70 +758,141 @@ inline void process_commands() //processed in write to file routine above //savetosd = false; break; + case 30: + { + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + } + break; #endif //SDSUPPORT - case 104: // M104 -#ifdef PID_OPENLOOP - if (code_seen('S')) PidTemp_Output = code_value() * (PID_MAX/100.0); - if(pid_output > PID_MAX) pid_output = PID_MAX; - if(pid_output < 0) pid_output = 0; -#else //PID_OPENLOOP - if (code_seen('S')) { - target_raw = temp2analogh(code_value()); + case 104: // M104 + if (code_seen('S')) target_raw[0] = temp2analog(code_value()); #ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEMP - } -#ifdef WATCHPERIOD - if(target_raw > current_raw){ - watchmillis = max(1,millis()); - watch_raw = current_raw; - } - else{ - watchmillis = 0; - } -#endif //WATCHPERIOD -#endif //PID_OPENLOOP - break; - case 105: // M105 - Serial.print("ok T:"); - Serial.println(analog2temp(current_raw)); - return; - //break; - case 109: // M109 - Wait for extruder heater to reach target. - if (code_seen('S')) { - target_raw = temp2analogh(code_value()); + pid_setpoint = code_value(); +#endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[0] > current_raw[0]){ + watchmillis = max(1,millis()); + watch_raw[0] = current_raw[0]; + }else{ + watchmillis = 0; + } + #endif + break; + case 140: // M140 set bed temp + if (code_seen('S')) target_raw[1] = temp2analogBed(code_value()); + break; + case 105: // M105 + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + tt = analog2temp(current_raw[0]); + #endif + #if TEMP_1_PIN > -1 + bt = analog2tempBed(current_raw[1]); + #endif + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + Serial.print("ok T:"); + Serial.print(tt); +// Serial.print(", raw:"); +// Serial.print(current_raw); + #if TEMP_1_PIN > -1 #ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEMP - } -#ifdef WATCHPERIOD - if(target_raw>current_raw){ - watchmillis = max(1,millis()); - watch_raw = current_raw; - } - else{ - watchmillis = 0; - } -#endif //WATCHERPERIOD - codenum = millis(); - while(current_raw < target_raw) { - if( (millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. - { - Serial.print("T:"); - Serial.println( analog2temp(current_raw)); + Serial.print(" B:"); + #if TEMP_1_PIN > -1 + Serial.println(bt); + #else + Serial.println(HeaterPower); + #endif +#else + Serial.println(); +#endif + #else + Serial.println(); + #endif + #else + Serial.println("No thermistors - no temp"); + #endif + return; + //break; + case 109: // M109 - Wait for extruder heater to reach target. + LCD_MESSAGE("Heating..."); + if (code_seen('S')) target_raw[0] = temp2analog(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[0]>current_raw[0]){ + watchmillis = max(1,millis()); + watch_raw[0] = current_raw[0]; + }else{ + watchmillis = 0; + } + #endif codenum = millis(); + starttime=millis(); + while(current_raw[0] < target_raw[0]) { + if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up. + Serial.print("T:"); + Serial.println( analog2temp(current_raw[0]) ); + codenum = millis(); + } + LCD_STATUS; + manage_heater(); + } + LCD_MESSAGE("UltiMarlin ready."); + break; + case 190: // M190 - Wait bed for heater to reach target. + #if TEMP_1_PIN > -1 + if (code_seen('S')) target_raw[1] = temp2analog(code_value()); + codenum = millis(); + while(current_raw[1] < target_raw[1]) + { + if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + float tt=analog2temp(current_raw[0]); + Serial.print("T:"); + Serial.println( tt ); + Serial.print("ok T:"); + Serial.print( tt ); + Serial.print(" B:"); + Serial.println( analog2temp(current_raw[1]) ); + codenum = millis(); + } + manage_heater(); } - manage_heater(); - } - break; - case 190: + #endif break; +#if FAN_PIN > -1 + case 106: //M106 Fan On + if (code_seen('S')){ + WRITE(FAN_PIN,HIGH); + fanpwm=constrain(code_value(),0,255); + analogWrite(FAN_PIN, fanpwm); + } + else { + WRITE(FAN_PIN,HIGH); + fanpwm=255; + analogWrite(FAN_PIN, fanpwm); + } + break; + case 107: //M107 Fan Off + WRITE(FAN_PIN,LOW); + analogWrite(FAN_PIN, 0); + break; +#endif case 82: axis_relative_modes[3] = false; break; case 83: axis_relative_modes[3] = true; break; + case 18: case 84: if(code_seen('S')){ stepper_inactive_time = code_value() * 1000; @@ -849,8 +925,17 @@ inline void process_commands() Serial.print(current_position[Y_AXIS]); Serial.print("Z:"); Serial.print(current_position[Z_AXIS]); - Serial.print("E:"); - Serial.println(current_position[E_AXIS]); + Serial.print("E:"); + Serial.print(current_position[E_AXIS]); + #ifdef DEBUG_STEPS + Serial.print(" Count X:"); + Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); + Serial.print("Y:"); + Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); + Serial.print("Z:"); + Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); + #endif + Serial.println(""); break; case 119: // M119 #if (X_MIN_PIN > -1) @@ -892,18 +977,67 @@ inline void process_commands() } break; #endif + case 203: // M203 max feedrate mm/sec + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; + } + break; + case 204: // M204 acclereration S normal moves T filmanent only moves + { + if(code_seen('S')) acceleration = code_value() ; + if(code_seen('T')) retract_acceleration = code_value() ; + } + break; + case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + { + if(code_seen('S')) minimumfeedrate = code_value()*60 ; + if(code_seen('T')) mintravelfeedrate = code_value()*60 ; + if(code_seen('B')) minsegmenttime = code_value() ; + if(code_seen('X')) max_xy_jerk = code_value()*60 ; + if(code_seen('Z')) max_z_jerk = code_value()*60 ; + } + break; + case 220: // M220 S- set speed factor override percentage + { + if(code_seen('S')) + { + feedmultiply = code_value() ; + feedmultiplychanged=true; + } + } + break; #ifdef PIDTEMP case 301: // M301 if(code_seen('P')) Kp = code_value(); if(code_seen('I')) Ki = code_value()*PID_dT; if(code_seen('D')) Kd = code_value()/PID_dT; - Serial.print("Kp ");Serial.println(Kp); - Serial.print("Ki ");Serial.println(Ki/PID_dT); - Serial.print("Kd ");Serial.println(Kd*PID_dT); - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +// ECHOLN("Kp "<<_FLOAT(Kp,2)); +// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); +// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); + +// temp_iState_min = 0.0; +// if (Ki!=0) { +// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); +// } +// else temp_iState_max = 1.0e10; break; #endif //PIDTEMP + case 500: // Store settings in EEPROM + { + StoreSettings(); + } + break; + case 501: // Read settings from EEPROM + { + RetrieveSettings(); + } + break; + case 502: // Revert to default settings + { + RetrieveSettings(true); + } + break; + } } else{ @@ -947,141 +1081,89 @@ inline void get_coordinates() void prepare_move() { - if (min_software_endstops) { - if (destination[X_AXIS] < 0) destination[X_AXIS] = 0.0; - if (destination[Y_AXIS] < 0) destination[Y_AXIS] = 0.0; - if (destination[Z_AXIS] < 0) destination[Z_AXIS] = 0.0; - } - - if (max_software_endstops) { - if (destination[X_AXIS] > X_MAX_LENGTH) destination[X_AXIS] = X_MAX_LENGTH; - if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH; - if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; - } - - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60.0); + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); for(int i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } } -void manage_heater() -{ - float pid_input; - float pid_output; - if(temp_meas_ready != true) - return; -CRITICAL_SECTION_START; - temp_meas_ready = false; -CRITICAL_SECTION_END; -#ifdef PIDTEMP - pid_input = analog2temp(current_raw); +#ifdef USE_WATCHDOG -#ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ - pid_output = PID_MAX; - pid_reset = true; +#include +#include + +volatile uint8_t timeout_seconds=0; + +void(* ctrlaltdelete) (void) = 0; + +ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec + if(timeout_seconds++ >= WATCHDOG_TIMEOUT) + { + kill(); +#ifdef RESET_MANUAL + LCD_MESSAGE("Please Reset!"); + ECHOLN("echo_: Something is wrong, please turn off the printer."); +#else + LCD_MESSAGE("Timeout, resetting!"); +#endif + //disable watchdog, it will survife reboot. + WDTCSR |= (1< raw) { - celsius = (float)table[i-1][1] + - (float)(raw - table[i-1][0]) * - (float)(table[i][1] - table[i-1][1]) / - (float)(table[i][0] - table[i-1][0]); - - break; - } - } - // Overflow: Set to last value in the table - if (i == numtemps) celsius = table[i-1][1]; - - return celsius; +/// reset watchdog. MUST be called every 1s after init or avr will reset. +void wd_reset() { + wdt_reset(); + timeout_seconds=0; //reset counter for resets } +#endif /* USE_WATCHDOG */ inline void kill() { - target_raw=0; -#ifdef PIDTEMP - pid_setpoint = 0.0; -#endif //PIDTEMP - OCR2B = 0; - WRITE(HEATER_0_PIN,LOW); - + #if TEMP_0_PIN > -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif disable_x(); disable_y(); disable_z(); disable_e(); - + + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + Serial.println("!! Printer halted. kill() called!!"); + while(1); // Wait for reset } -inline void manage_inactivity(byte debug) { +void manage_inactivity(byte debug) { if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { disable_x(); @@ -1091,965 +1173,3 @@ inline void manage_inactivity(byte debug) { } check_axes_activity(); } - -// Planner - -/* - Reasoning behind the mathematics in this module (in the key of 'Mathematica'): - - s == speed, a == acceleration, t == time, d == distance - - Basic definitions: - - Speed[s_, a_, t_] := s + (a*t) - Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] - - Distance to reach a specific speed with a constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] - d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() - - Speed after a given distance of travel with constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] - m -> Sqrt[2 a d + s^2] - - DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] - - When to start braking (di) to reach a specified destionation speed (s2) after accelerating - from initial speed s1 without ever stopping at a plateau: - - Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] - di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() - - IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) - */ - - -// The number of linear motions that can be in the plan at any give time -#define BLOCK_BUFFER_SIZE 16 -#define BLOCK_BUFFER_MASK 0x0f - -static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instructions -static volatile unsigned char block_buffer_head; // Index of the next block to be pushed -static volatile unsigned char block_buffer_tail; // Index of the block to process now - -// The current position of the tool in absolute steps -static long position[4]; - -#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 - -// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the -// given acceleration: -inline long estimate_acceleration_distance(long initial_rate, long target_rate, long acceleration) { - return( - (target_rate*target_rate-initial_rate*initial_rate)/ - (2L*acceleration) - ); -} - -// This function gives you the point at which you must start braking (at the rate of -acceleration) if -// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after -// a total travel of distance. This can be used to compute the intersection point between acceleration and -// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) - -inline long intersection_distance(long initial_rate, long final_rate, long acceleration, long distance) { - return( - (2*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ - (4*acceleration) - ); -} - -// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. - -void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { - if(block->busy == true) return; // If block is busy then bail out. - float entry_factor = entry_speed / block->nominal_speed; - float exit_factor = exit_speed / block->nominal_speed; - long initial_rate = ceil(block->nominal_rate*entry_factor); - long final_rate = ceil(block->nominal_rate*exit_factor); - -#ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; -#endif // ADVANCE - - // Limit minimal step rate (Otherwise the timer will overflow.) - if(initial_rate <120) initial_rate=120; - if(final_rate < 120) final_rate=120; - - // Calculate the acceleration steps - long acceleration = block->acceleration_st; - long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); - long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); - // Calculate the size of Plateau of Nominal Rate. - long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; - - // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will - // have to use intersection_distance() to calculate when to abort acceleration and start braking - // in order to reach the final_rate exactly at the end of this block. - if (plateau_steps < 0) { - accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); - plateau_steps = 0; - } - - long decelerate_after = accelerate_steps+plateau_steps; - long acceleration_rate = (long)((float)acceleration * 8.388608); - - CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section - if(block->busy == false) { // Don't update variables if block is busy. - block->accelerate_until = accelerate_steps; - block->decelerate_after = decelerate_after; - block->acceleration_rate = acceleration_rate; - block->initial_rate = initial_rate; - block->final_rate = final_rate; -#ifdef ADVANCE - block->initial_advance = initial_advance; - block->final_advance = final_advance; -#endif ADVANCE - } - CRITICAL_SECTION_END; -} - -// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the -// acceleration within the allotted distance. -inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { - return( - sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) - ); -} - -// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. -// This method will calculate the junction jerk as the euclidean distance between the nominal -// velocities of the respective blocks. -inline float junction_jerk(block_t *before, block_t *after) { - return(sqrt( - pow((before->speed_x-after->speed_x), 2)+ - pow((before->speed_y-after->speed_y), 2))); -} - -// Return the safe speed which is max_jerk/2, e.g. the -// speed under which you cannot exceed max_jerk no matter what you do. -float safe_speed(block_t *block) { - float safe_speed; - safe_speed = max_xy_jerk/2; - if(abs(block->speed_z) > max_z_jerk/2) safe_speed = max_z_jerk/2; - if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; - return safe_speed; -} - -// The kernel called by planner_recalculate() when scanning the plan from last to first entry. -void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - - float entry_speed = current->nominal_speed; - float exit_factor; - float exit_speed; - if (next) { - exit_speed = next->entry_speed; - } - else { - exit_speed = safe_speed(current); - } - - // Calculate the entry_factor for the current block. - if (previous) { - // Reduce speed so that junction_jerk is within the maximum allowed - float jerk = junction_jerk(previous, current); - if((previous->steps_x == 0) && (previous->steps_y == 0)) { - entry_speed = safe_speed(current); - } - else if (jerk > max_xy_jerk) { - entry_speed = (max_xy_jerk/jerk) * entry_speed; - } - if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { - entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; - } - // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. - if (entry_speed > exit_speed) { - float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); - if (max_entry_speed < entry_speed) { - entry_speed = max_entry_speed; - } - } - } - else { - entry_speed = safe_speed(current); - } - // Store result - current->entry_speed = entry_speed; -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the reverse pass. -void planner_reverse_pass() { - char block_index = block_buffer_head; - block_index--; - block_t *block[3] = { NULL, NULL, NULL }; - while(block_index != block_buffer_tail) { - block_index--; - if(block_index < 0) block_index = BLOCK_BUFFER_SIZE-1; - block[2]= block[1]; - block[1]= block[0]; - block[0] = &block_buffer[block_index]; - planner_reverse_pass_kernel(block[0], block[1], block[2]); - } - planner_reverse_pass_kernel(NULL, block[0], block[1]); -} - -// The kernel called by planner_recalculate() when scanning the plan from first to last entry. -void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - if(previous) { - // If the previous block is an acceleration block, but it is not long enough to - // complete the full speed change within the block, we need to adjust out entry - // speed accordingly. Remember current->entry_factor equals the exit factor of - // the previous block. - if(previous->entry_speed < current->entry_speed) { - float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); - if (max_entry_speed < current->entry_speed) { - current->entry_speed = max_entry_speed; - } - } - } -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the forward pass. -void planner_forward_pass() { - char block_index = block_buffer_tail; - block_t *block[3] = { - NULL, NULL, NULL }; - - while(block_index != block_buffer_head) { - block[0] = block[1]; - block[1] = block[2]; - block[2] = &block_buffer[block_index]; - planner_forward_pass_kernel(block[0],block[1],block[2]); - block_index = (block_index+1) & BLOCK_BUFFER_MASK; - } - planner_forward_pass_kernel(block[1], block[2], NULL); -} - -// Recalculates the trapezoid speed profiles for all blocks in the plan according to the -// entry_factor for each junction. Must be called by planner_recalculate() after -// updating the blocks. -void planner_recalculate_trapezoids() { - char block_index = block_buffer_tail; - block_t *current; - block_t *next = NULL; - while(block_index != block_buffer_head) { - current = next; - next = &block_buffer[block_index]; - if (current) { - calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); - } - block_index = (block_index+1) & BLOCK_BUFFER_MASK; - } - calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); -} - -// Recalculates the motion plan according to the following algorithm: -// -// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) -// so that: -// a. The junction jerk is within the set limit -// b. No speed reduction within one block requires faster deceleration than the one, true constant -// acceleration. -// 2. Go over every block in chronological order and dial down junction speed reduction values if -// a. The speed increase within one block would require faster accelleration than the one, true -// constant acceleration. -// -// When these stages are complete all blocks have an entry_factor that will allow all speed changes to -// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than -// the set limit. Finally it will: -// -// 3. Recalculate trapezoids for all blocks. - -void planner_recalculate() { - planner_reverse_pass(); - planner_forward_pass(); - planner_recalculate_trapezoids(); -} - -void plan_init() { - block_buffer_head = 0; - block_buffer_tail = 0; - memset(position, 0, sizeof(position)); // clear position -} - - -inline void plan_discard_current_block() { - if (block_buffer_head != block_buffer_tail) { - block_buffer_tail = (block_buffer_tail + 1) & BLOCK_BUFFER_MASK; - } -} - -inline block_t *plan_get_current_block() { - if (block_buffer_head == block_buffer_tail) { - return(NULL); - } - block_t *block = &block_buffer[block_buffer_tail]; - block->busy = true; - return(block); -} - -void check_axes_activity() { - unsigned char x_active = 0; - unsigned char y_active = 0; - unsigned char z_active = 0; - unsigned char e_active = 0; - block_t *block; - - if(block_buffer_tail != block_buffer_head) { - char block_index = block_buffer_tail; - while(block_index != block_buffer_head) { - block = &block_buffer[block_index]; - if(block->steps_x != 0) x_active++; - if(block->steps_y != 0) y_active++; - if(block->steps_z != 0) z_active++; - if(block->steps_e != 0) e_active++; - block_index = (block_index+1) & BLOCK_BUFFER_MASK; - } - } - if((DISABLE_X) && (x_active == 0)) disable_x(); - if((DISABLE_Y) && (y_active == 0)) disable_y(); - if((DISABLE_Z) && (z_active == 0)) disable_z(); - if((DISABLE_E) && (e_active == 0)) disable_e(); -} - -// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in -// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration -// calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { - // The target position of the tool in absolute steps - // Calculate target position in absolute steps - long target[4]; - target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); - target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); - target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - - // Calculate the buffer head after we push this byte - int next_buffer_head = (block_buffer_head + 1) & BLOCK_BUFFER_MASK; - - // If the buffer is full: good! That means we are well ahead of the robot. - // Rest here until there is room in the buffer. - while(block_buffer_tail == next_buffer_head) { - manage_heater(); - manage_inactivity(1); - } - - // Prepare to set up new block - block_t *block = &block_buffer[block_buffer_head]; - - // Mark block as not busy (Not executed by the stepper interrupt) - block->busy = false; - - // Number of steps for each axis - block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); - block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); - block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); - block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); - block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); - - // Bail if this is a zero-length block - if (block->step_event_count == 0) { - return; - }; - - //enable active axes - if(block->steps_x != 0) enable_x(); - if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - - float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; - float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; - float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; - float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; - block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); - - unsigned long microseconds; - microseconds = lround((block->millimeters/feed_rate)*1000000); - - // Calculate speed in mm/minute for each axis - float multiplier = 60.0*1000000.0/microseconds; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - - // Limit speed per axis - float speed_factor = 1; - float tmp_speed_factor; - if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); - } - if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ - tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ - tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_e) > max_feedrate[E_AXIS]){ - tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - multiplier = multiplier * speed_factor; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - block->nominal_speed = block->millimeters * multiplier; - block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - - if(block->nominal_rate < 120) block->nominal_rate = 120; - block->entry_speed = safe_speed(block); - - // Compute the acceleration rate for the trapezoid generator. - float travel_per_step = block->millimeters/block->step_event_count; - if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { - block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - } - else { - block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - // Limit acceleration per axis - if((block->acceleration_st * block->steps_x / block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) - block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; - if((block->acceleration_st * block->steps_y / block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) - block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; - if((block->acceleration_st * block->steps_e / block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) - block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; - if(((block->acceleration_st / block->step_event_count) * block->steps_z ) > axis_steps_per_sqr_second[Z_AXIS]) - block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; - } - block->acceleration = block->acceleration_st * travel_per_step; - -#ifdef ADVANCE - // Calculate advance rate - if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { - block->advance_rate = 0; - block->advance = 0; - } - else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); - float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; - block->advance = advance; - if(acc_dist == 0) { - block->advance_rate = 0; - } - else { - block->advance_rate = advance / (float)acc_dist; - } - } - -#endif // ADVANCE - - // compute a preliminary conservative acceleration trapezoid - float safespeed = safe_speed(block); - calculate_trapezoid_for_block(block, safespeed, safespeed); - - // Compute direction bits for this block - block->direction_bits = 0; - if (target[X_AXIS] < position[X_AXIS]) { - block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<> 16 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 24 bit result -#define MultiU16X8toH16(intRes, charIn1, intIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %A1, %A2 \n\t" \ -"add %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r0 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (charIn1), \ -"d" (intIn2) \ -: \ -"r26" \ -) - -// intRes = longIn1 * longIn2 >> 24 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 48bit result -#define MultiU24X24toH16(intRes, longIn1, longIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"mov r27, r1 \n\t" \ -"mul %B1, %C2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %C1, %C2 \n\t" \ -"add %B0, r0 \n\t" \ -"mul %C1, %B2 \n\t" \ -"add %A0, r0 \n\t" \ -"adc %B0, r1 \n\t" \ -"mul %A1, %C2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %B2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %C1, %A2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %A2 \n\t" \ -"add r27, r1 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r27 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (longIn1), \ -"d" (longIn2) \ -: \ -"r26" , "r27" \ -) - -// Some useful constants - -#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< -// -// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates -// first block->accelerate_until step_events_completed, then keeps going at constant speed until -// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. -// The slope of acceleration is calculated with the leib ramp alghorithm. - -void st_wake_up() { - // TCNT1 = 0; - ENABLE_STEPPER_DRIVER_INTERRUPT(); -} - -inline unsigned short calc_timer(unsigned short step_rate) { - unsigned short timer; - if(step_rate < 32) step_rate = 32; - step_rate -= 32; // Correct for minimal speed - if(step_rate >= (8*256)){ // higher step rate - unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; - unsigned char tmp_step_rate = (step_rate & 0x00ff); - unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); - MultiU16X8toH16(timer, tmp_step_rate, gain); - timer = (unsigned short)pgm_read_word_near(table_address) - timer; - } - else { // lower step rates - unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; - table_address += ((step_rate)>>1) & 0xfffc; - timer = (unsigned short)pgm_read_word_near(table_address); - timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); - } - if(timer < 100) timer = 100; - return timer; -} - -// Initializes the trapezoid generator from the current block. Called whenever a new -// block begins. -inline void trapezoid_generator_reset() { - accelerate_until = current_block->accelerate_until; - decelerate_after = current_block->decelerate_after; - acceleration_rate = current_block->acceleration_rate; - initial_rate = current_block->initial_rate; - final_rate = current_block->final_rate; - nominal_rate = current_block->nominal_rate; - advance = current_block->initial_advance; - final_advance = current_block->final_advance; - deceleration_time = 0; - advance_rate = current_block->advance_rate; - - // step_rate to timer interval - acc_step_rate = initial_rate; - acceleration_time = calc_timer(acc_step_rate); - OCR1A = acceleration_time; -} - -// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. -// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. -ISR(TIMER1_COMPA_vect) -{ - if(busy){ /*Serial.println("BUSY")*/; - return; - } // The busy-flag is used to avoid reentering this interrupt - - busy = true; - sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) - - // If there is no current block, attempt to pop one from the buffer - if (current_block == NULL) { - // Anything in the buffer? - current_block = plan_get_current_block(); - if (current_block != NULL) { - trapezoid_generator_reset(); - counter_x = -(current_block->step_event_count >> 1); - counter_y = counter_x; - counter_z = counter_x; - counter_e = counter_x; - step_events_completed = 0; - e_steps = 0; - } - else { - DISABLE_STEPPER_DRIVER_INTERRUPT(); - } - } - - if (current_block != NULL) { - // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt - out_bits = current_block->direction_bits; - -#ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; -#endif //ADVANCE - - // Set direction en check limit switches - if ((out_bits & (1<step_event_count; - } - } - else // +direction - WRITE(X_DIR_PIN,!INVERT_X_DIR); - - if ((out_bits & (1<step_event_count; - } - } - else // +direction - WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - - if ((out_bits & (1<step_event_count; - } - } - else // +direction - WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - -#ifndef ADVANCE - if ((out_bits & (1<steps_x; - if (counter_x > 0) { - WRITE(X_STEP_PIN, HIGH); - counter_x -= current_block->step_event_count; - WRITE(X_STEP_PIN, LOW); - } - - counter_y += current_block->steps_y; - if (counter_y > 0) { - WRITE(Y_STEP_PIN, HIGH); - counter_y -= current_block->step_event_count; - WRITE(Y_STEP_PIN, LOW); - } - - counter_z += current_block->steps_z; - if (counter_z > 0) { - WRITE(Z_STEP_PIN, HIGH); - counter_z -= current_block->step_event_count; - WRITE(Z_STEP_PIN, LOW); - } - -#ifndef ADVANCE - counter_e += current_block->steps_e; - if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); - counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); - } -#endif //!ADVANCE - - // Calculare new timer value - unsigned short timer; - unsigned short step_rate; - if (step_events_completed < accelerate_until) { - MultiU24X24toH16(acc_step_rate, acceleration_time, acceleration_rate); - acc_step_rate += initial_rate; - - // upper limit - if(acc_step_rate > nominal_rate) - acc_step_rate = nominal_rate; - - // step_rate to timer interval - timer = calc_timer(acc_step_rate); - advance += advance_rate; - acceleration_time += timer; - OCR1A = timer; - } - else if (step_events_completed >= decelerate_after) { - MultiU24X24toH16(step_rate, deceleration_time, acceleration_rate); - - if(step_rate > acc_step_rate) { // Check step_rate stays positive - step_rate = final_rate; - } - else { - step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. - } - - // lower limit - if(step_rate < final_rate) - step_rate = final_rate; - - // step_rate to timer interval - timer = calc_timer(step_rate); -#ifdef ADVANCE - advance -= advance_rate; - if(advance < final_advance) - advance = final_advance; -#endif //ADVANCE - deceleration_time += timer; - OCR1A = timer; - } - // If current block is finished, reset pointer - step_events_completed += 1; - if (step_events_completed >= current_block->step_event_count) { - current_block = NULL; - plan_discard_current_block(); - } - } - busy=false; -} - -#ifdef ADVANCE - -unsigned char old_OCR0A; -// Timer interrupt for E. e_steps is set in the main routine; -// Timer 0 is shared with millies -ISR(TIMER0_COMPA_vect) -{ - // Critical section needed because Timer 1 interrupt has higher priority. - // The pin set functions are placed on trategic position to comply with the stepper driver timing. - WRITE(E_STEP_PIN, LOW); - // Set E direction (Depends on E direction + advance) - if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); - e_steps++; - WRITE(E_STEP_PIN, HIGH); - } - if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); - } - old_OCR0A += 25; // 10kHz interrupt - OCR0A = old_OCR0A; -} -#endif // ADVANCE - -void st_init() -{ - // waveform generation = 0100 = CTC - TCCR1B &= ~(1<= 16) - { - current_raw = 16383 - raw_temp_value; - temp_meas_ready = true; - temp_count = 0; - raw_temp_value = 0; -#ifdef MAXTEMP - if(current_raw >= maxttemp) { - target_raw = 0; -#ifdef PIDTEMP - OCR2B = 0; -#else - WRITE(HEATER_0_PIN,LOW); -#endif //PIDTEMP - } -#endif //MAXTEMP -#ifdef MINTEMP - if(current_raw <= minttemp) { - target_raw = 0; -#ifdef PIDTEMP - OCR2B = 0; -#else - WRITE(HEATER_0_PIN,LOW); -#endif //PIDTEMP - } -#endif //MAXTEMP -#ifndef PIDTEMP - if(current_raw >= target_raw) - { - WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } -#endif //PIDTEMP - } -} - - diff --git a/Marlin/fastio.h b/Marlin/fastio.h index 1d28d0582..c1671ddef 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -27,6 +27,7 @@ #define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) /// write to a pin #define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) +//#define _WRITE(IO, v) do { #if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_START; if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); };#if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_END; } while (0) /// toggle a pin #define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) diff --git a/Marlin/lcd.h b/Marlin/lcd.h new file mode 100644 index 000000000..74057ddde --- /dev/null +++ b/Marlin/lcd.h @@ -0,0 +1,10 @@ +#ifndef __LCDH +#define __LCDH + + + + + + + +#endif diff --git a/Marlin/lcd.pde b/Marlin/lcd.pde new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/Marlin/lcd.pde @@ -0,0 +1 @@ + diff --git a/Marlin/pins.h b/Marlin/pins.h index 1bd670266..795d8bdbb 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -60,8 +60,8 @@ #define HEATER_0_PIN 6 #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! - - +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 #endif @@ -133,7 +133,8 @@ #define HEATER_0_PIN 14 #define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! - +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 /* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ @@ -194,7 +195,8 @@ #define HEATER_0_PIN -1 #define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! - +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 @@ -255,8 +257,10 @@ #define HEATER_0_PIN 10 #define HEATER_1_PIN 8 +#define HEATER_2_PIN -1 #define TEMP_0_PIN 13 // ANALOG NUMBERING #define TEMP_1_PIN 14 // ANALOG NUMBERING +#define TEMP_2_PIN -1 // ANALOG NUMBERING #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default @@ -301,9 +305,10 @@ #define HEATER_1_PIN 8 // RAMPS 1.1 #define FAN_PIN 9 // RAMPS 1.1 #endif - +#define HEATER_2_PIN -1 #define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! #define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! #endif // SPI for Max6675 Thermocouple @@ -361,7 +366,8 @@ #define HEATER_0_PIN 6 #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! - +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 #endif @@ -404,12 +410,13 @@ #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 - + #define HEATER_2_PIN -1 #define SDPOWER -1 #define SDSS 17 #define LED_PIN -1 //changed @ rkoeppl 20110410 #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_2_PIN -1 #define FAN_PIN -1 //changed @ rkoeppl 20110410 #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 //our pin for debugging. @@ -421,6 +428,7 @@ #define RX_ENABLE_PIN 13 #endif + /**************************************************************************************** * Sanguinololu pin assignment * @@ -482,13 +490,77 @@ #define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) #define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) -#define SDPOWER -1 -#define SDSS 31 +#define TEMP_2_PIN -1 +#define SDPOWER -1 +#define SDSS 31 +#define HEATER_2_PIN -1 + +#endif + + +#if MOTHERBOARD == 7 +#define KNOWN_BOARD +/***************************************************************** +* Ultimaker pin assignment +******************************************************************/ + +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +#define X_STEP_PIN 25 +#define X_DIR_PIN 23 +#define X_MIN_PIN 22 +#define X_MAX_PIN 24 +#define X_ENABLE_PIN 27 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_MIN_PIN 26 +#define Y_MAX_PIN 28 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 37 +#define Z_DIR_PIN 39 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 32 +#define Z_ENABLE_PIN 35 + +#define HEATER_1_PIN 4 +#define TEMP_1_PIN 11 + +#define EXTRUDER_0_STEP_PIN 43 +#define EXTRUDER_0_DIR_PIN 45 +#define EXTRUDER_0_ENABLE_PIN 41 +#define HEATER_0_PIN 2 +#define TEMP_0_PIN 8 + +#define EXTRUDER_1_STEP_PIN 49 +#define EXTRUDER_1_DIR_PIN 47 +#define EXTRUDER_1_ENABLE_PIN 51 +#define EXTRUDER_1_HEATER_PIN 3 +#define EXTRUDER_1_TEMPERATURE_PIN 10 +#define HEATER_2_PIN 51 +#define TEMP_2_PIN 3 + + + +#define E_STEP_PIN EXTRUDER_0_STEP_PIN +#define E_DIR_PIN EXTRUDER_0_DIR_PIN +#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 7 +#define PS_ON_PIN 12 +#define KILL_PIN -1 +#endif + #ifndef KNOWN_BOARD #error Unknown MOTHERBOARD value in configuration.h #endif - -#endif - #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp new file mode 100644 index 000000000..645384e6d --- /dev/null +++ b/Marlin/planner.cpp @@ -0,0 +1,584 @@ +/* + planner.c - buffers movement commands and manages the acceleration profile plan + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ + +/* + Reasoning behind the mathematics in this module (in the key of 'Mathematica'): + + s == speed, a == acceleration, t == time, d == distance + + Basic definitions: + + Speed[s_, a_, t_] := s + (a*t) + Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] + + Distance to reach a specific speed with a constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] + d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() + + Speed after a given distance of travel with constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] + m -> Sqrt[2 a d + s^2] + + DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] + + When to start braking (di) to reach a specified destionation speed (s2) after accelerating + from initial speed s1 without ever stopping at a plateau: + + Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] + di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() + + IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) +*/ + + +//#include +//#include +//#include + +#include "Marlin.h" +#include "Configuration.h" +#include "pins.h" +#include "fastio.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" +#include "ultralcd.h" + +unsigned long minsegmenttime; +float max_feedrate[4]; // set the max speeds +float axis_steps_per_unit[4]; +long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +float minimumfeedrate; +float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +float max_z_jerk; +float mintravelfeedrate; +unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +// Manage heater variables. + +static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions +static volatile unsigned char block_buffer_head; // Index of the next block to be pushed +static volatile unsigned char block_buffer_tail; // Index of the block to process now + +// The current position of the tool in absolute steps + long position[4]; + +#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 + +// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the +// given acceleration: +inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { + if (acceleration!=0) { + return((target_rate*target_rate-initial_rate*initial_rate)/ + (2.0*acceleration)); + } + else { + return 0.0; // acceleration was 0, set acceleration distance to 0 + } +} + +// This function gives you the point at which you must start braking (at the rate of -acceleration) if +// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after +// a total travel of distance. This can be used to compute the intersection point between acceleration and +// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) + +inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { + if (acceleration!=0) { + return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ + (4.0*acceleration) ); + } + else { + return 0.0; // acceleration was 0, set intersection distance to 0 + } +} + +// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. + +void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { + if(block->busy == true) return; // If block is busy then bail out. + float entry_factor = entry_speed / block->nominal_speed; + float exit_factor = exit_speed / block->nominal_speed; + long initial_rate = ceil(block->nominal_rate*entry_factor); + long final_rate = ceil(block->nominal_rate*exit_factor); + +#ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; +#endif // ADVANCE + + // Limit minimal step rate (Otherwise the timer will overflow.) + if(initial_rate <120) initial_rate=120; + if(final_rate < 120) final_rate=120; + + // Calculate the acceleration steps + long acceleration = block->acceleration_st; + long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); + long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); + // Calculate the size of Plateau of Nominal Rate. + long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; + + // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will + // have to use intersection_distance() to calculate when to abort acceleration and start braking + // in order to reach the final_rate exactly at the end of this block. + if (plateau_steps < 0) { + accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); + plateau_steps = 0; + } + + long decelerate_after = accelerate_steps+plateau_steps; + + CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section + if(block->busy == false) { // Don't update variables if block is busy. + block->accelerate_until = accelerate_steps; + block->decelerate_after = decelerate_after; + block->initial_rate = initial_rate; + block->final_rate = final_rate; +#ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; +#endif //ADVANCE + } + CRITICAL_SECTION_END; +} + +// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the +// acceleration within the allotted distance. +inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { + return( + sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) + ); +} + +// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. +// This method will calculate the junction jerk as the euclidean distance between the nominal +// velocities of the respective blocks. +inline float junction_jerk(block_t *before, block_t *after) { + return(sqrt( + pow((before->speed_x-after->speed_x), 2)+ + pow((before->speed_y-after->speed_y), 2))); +} + +// Return the safe speed which is max_jerk/2, e.g. the +// speed under which you cannot exceed max_jerk no matter what you do. +float safe_speed(block_t *block) { + float safe_speed; + safe_speed = max_xy_jerk/2; + if(abs(block->speed_z) > max_z_jerk/2) safe_speed = max_z_jerk/2; + if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; + return safe_speed; +} + +// The kernel called by planner_recalculate() when scanning the plan from last to first entry. +void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + + float entry_speed = current->nominal_speed; + float exit_factor; + float exit_speed; + if (next) { + exit_speed = next->entry_speed; + } + else { + exit_speed = safe_speed(current); + } + + // Calculate the entry_factor for the current block. + if (previous) { + // Reduce speed so that junction_jerk is within the maximum allowed + float jerk = junction_jerk(previous, current); + if((previous->steps_x == 0) && (previous->steps_y == 0)) { + entry_speed = safe_speed(current); + } + else if (jerk > max_xy_jerk) { + entry_speed = (max_xy_jerk/jerk) * entry_speed; + } + if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { + entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; + } + // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. + if (entry_speed > exit_speed) { + float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); + if (max_entry_speed < entry_speed) { + entry_speed = max_entry_speed; + } + } + } + else { + entry_speed = safe_speed(current); + } + // Store result + current->entry_speed = entry_speed; +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the reverse pass. +void planner_reverse_pass() { + char block_index = block_buffer_head; + if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { + block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); + block_t *block[5] = { + NULL, NULL, NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index = (block_index-1) & (BLOCK_BUFFER_SIZE -1); + block[2]= block[1]; + block[1]= block[0]; + block[0] = &block_buffer[block_index]; + planner_reverse_pass_kernel(block[0], block[1], block[2]); + } + planner_reverse_pass_kernel(NULL, block[0], block[1]); + } +} + +// The kernel called by planner_recalculate() when scanning the plan from first to last entry. +void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + if(previous) { + // If the previous block is an acceleration block, but it is not long enough to + // complete the full speed change within the block, we need to adjust out entry + // speed accordingly. Remember current->entry_factor equals the exit factor of + // the previous block. + if(previous->entry_speed < current->entry_speed) { + float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); + if (max_entry_speed < current->entry_speed) { + current->entry_speed = max_entry_speed; + } + } + } +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the forward pass. +void planner_forward_pass() { + char block_index = block_buffer_tail; + block_t *block[3] = { + NULL, NULL, NULL }; + + while(block_index != block_buffer_head) { + block[0] = block[1]; + block[1] = block[2]; + block[2] = &block_buffer[block_index]; + planner_forward_pass_kernel(block[0],block[1],block[2]); + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + planner_forward_pass_kernel(block[1], block[2], NULL); +} + +// Recalculates the trapezoid speed profiles for all blocks in the plan according to the +// entry_factor for each junction. Must be called by planner_recalculate() after +// updating the blocks. +void planner_recalculate_trapezoids() { + char block_index = block_buffer_tail; + block_t *current; + block_t *next = NULL; + while(block_index != block_buffer_head) { + current = next; + next = &block_buffer[block_index]; + if (current) { + calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); + } + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); +} + +// Recalculates the motion plan according to the following algorithm: +// +// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) +// so that: +// a. The junction jerk is within the set limit +// b. No speed reduction within one block requires faster deceleration than the one, true constant +// acceleration. +// 2. Go over every block in chronological order and dial down junction speed reduction values if +// a. The speed increase within one block would require faster accelleration than the one, true +// constant acceleration. +// +// When these stages are complete all blocks have an entry_factor that will allow all speed changes to +// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than +// the set limit. Finally it will: +// +// 3. Recalculate trapezoids for all blocks. + +void planner_recalculate() { + planner_reverse_pass(); + planner_forward_pass(); + planner_recalculate_trapezoids(); +} + +void plan_init() { + block_buffer_head = 0; + block_buffer_tail = 0; + memset(position, 0, sizeof(position)); // clear position +} + + +void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); + } +} + +block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} + +void check_axes_activity() { + unsigned char x_active = 0; + unsigned char y_active = 0; + unsigned char z_active = 0; + unsigned char e_active = 0; + block_t *block; + + if(block_buffer_tail != block_buffer_head) { + char block_index = block_buffer_tail; + while(block_index != block_buffer_head) { + block = &block_buffer[block_index]; + if(block->steps_x != 0) x_active++; + if(block->steps_y != 0) y_active++; + if(block->steps_z != 0) z_active++; + if(block->steps_e != 0) e_active++; + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + } + if((DISABLE_X) && (x_active == 0)) disable_x(); + if((DISABLE_Y) && (y_active == 0)) disable_y(); + if((DISABLE_Z) && (z_active == 0)) disable_z(); + if((DISABLE_E) && (e_active == 0)) disable_e(); +} + +// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in +// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration +// calculation the caller must also provide the physical length of the line in millimeters. +void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { + + // The target position of the tool in absolute steps + // Calculate target position in absolute steps + long target[4]; + target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + // Calculate the buffer head after we push this byte + int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); + + // If the buffer is full: good! That means we are well ahead of the robot. + // Rest here until there is room in the buffer. + while(block_buffer_tail == next_buffer_head) { + manage_heater(); + manage_inactivity(1); + LCD_STATUS; + } + + // Prepare to set up new block + block_t *block = &block_buffer[block_buffer_head]; + + // Mark block as not busy (Not executed by the stepper interrupt) + block->busy = false; + + // Number of steps for each axis + block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); + block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); + block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); + block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); + + // Bail if this is a zero-length block + if (block->step_event_count <=dropsegments) { + return; + }; + + //enable active axes + if(block->steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); + + float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; + float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); + + unsigned long microseconds; + + if (block->steps_e == 0) { + if(feed_ratemillimeters/feed_rate)*1000000); + + // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill + // reduces/removes corner blobs as the machine won't come to a full stop. + int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); + + if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { + if (microsecondsspeed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + + + // Limit speed per axis + float speed_factor = 1; //factor <=1 do decrease speed + if(abs(block->speed_x) > max_feedrate[X_AXIS]) { + //// [ErikDeBruijn] IS THIS THE BUG WE'RE LOOING FOR???? + //// [bernhard] No its not, according to Zalm. + //// the if would always be true, since tmp_speedfactor <=0 due the inial if, so its safe to set. the next lines actually compare. + speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); + //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ + float tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ + float tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_e) > max_feedrate[E_AXIS]){ + float tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + multiplier = multiplier * speed_factor; + block->speed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + block->nominal_speed = block->millimeters * multiplier; + block->nominal_rate = ceil(block->step_event_count * multiplier / 60); + + if(block->nominal_rate < 120) block->nominal_rate = 120; + block->entry_speed = safe_speed(block); + + // Compute the acceleration rate for the trapezoid generator. + float travel_per_step = block->millimeters/block->step_event_count; + if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { + block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + } + else { + block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + float tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + // Limit acceleration per axis + if((tmp_acceleration * block->steps_x) > axis_steps_per_sqr_second[X_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + if((tmp_acceleration * block->steps_y) > axis_steps_per_sqr_second[Y_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + if((tmp_acceleration * block->steps_e) > axis_steps_per_sqr_second[E_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + if((tmp_acceleration * block->steps_z) > axis_steps_per_sqr_second[Z_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + } + block->acceleration = block->acceleration_st * travel_per_step; + block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); + +#ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { + block->advance_rate = 0; + block->advance = 0; + } + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } +#endif // ADVANCE + + // compute a preliminary conservative acceleration trapezoid + float safespeed = safe_speed(block); + calculate_trapezoid_for_block(block, safespeed, safespeed); + + // Compute direction bits for this block + block->direction_bits = 0; + if (target[X_AXIS] < position[X_AXIS]) { + block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<. +*/ + +// This module is to be considered a sub-module of stepper.c. Please don't include +// this file from any other module. + +#ifndef planner_h +#define planner_h + +// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in +// the source g-code and may never actually be reached if acceleration management is active. +typedef struct { + // Fields used by the bresenham algorithm for tracing the line + long steps_x, steps_y, steps_z, steps_e; // Step count along each axis + long step_event_count; // The number of step events required to complete this block + volatile long accelerate_until; // The index of the step event on which to stop acceleration + volatile long decelerate_after; // The index of the step event on which to start decelerating + volatile long acceleration_rate; // The acceleration rate used for acceleration calculation + unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) +#ifdef ADVANCE + long advance_rate; + volatile long initial_advance; + volatile long final_advance; + float advance; +#endif + + // Fields used by the motion planner to manage acceleration + float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis + float nominal_speed; // The nominal speed for this block in mm/min + float millimeters; // The total travel of this block in mm + float entry_speed; + float acceleration; // acceleration mm/sec^2 + + // Settings for the trapezoid generator + long nominal_rate; // The nominal step rate for this block in step_events/sec + volatile long initial_rate; // The jerk-adjusted step rate at start of block + volatile long final_rate; // The minimal rate at exit + long acceleration_st; // acceleration steps/sec^2 + volatile char busy; +} block_t; + +// Initialize the motion plan subsystem +void plan_init(); + +// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in +// millimaters. Feed rate specifies the speed of the motion. +void plan_buffer_line(float x, float y, float z, float e, float feed_rate); + +// Set position. Used for G92 instructions. +void plan_set_position(float x, float y, float z, float e); + +// Called when the current block is no longer needed. Discards the block and makes the memory +// availible for new blocks. +void plan_discard_current_block(); + +// Gets the current block. Returns NULL if buffer empty +block_t *plan_get_current_block(); + +void check_axes_activity(); + +extern unsigned long minsegmenttime; +extern float max_feedrate[4]; // set the max speeds +extern float axis_steps_per_unit[4]; +extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +extern float minimumfeedrate; +extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +extern float max_z_jerk; +extern float mintravelfeedrate; +extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +#endif diff --git a/Marlin/speed_lookuptable.h b/Marlin/speed_lookuptable.h index 5c54a08d1..43ef89980 100644 --- a/Marlin/speed_lookuptable.h +++ b/Marlin/speed_lookuptable.h @@ -3,7 +3,7 @@ #include -uint16_t speed_lookuptable_fast[256][2] PROGMEM = { +uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ { 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, { 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, { 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, @@ -35,9 +35,9 @@ uint16_t speed_lookuptable_fast[256][2] PROGMEM = { { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, -{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0}, +{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} }; -uint16_t speed_lookuptable_slow[256][2] PROGMEM = { +uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ { 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, { 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, { 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, @@ -69,7 +69,7 @@ uint16_t speed_lookuptable_slow[256][2] PROGMEM = { { 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, { 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, { 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, -{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3}, +{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3} }; #endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp new file mode 100644 index 000000000..cd68bae0d --- /dev/null +++ b/Marlin/stepper.cpp @@ -0,0 +1,592 @@ +/* + stepper.c - stepper motor driver: executes motion plans using stepper motors + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith + and Philipp Tiefenbacher. */ + +#include "stepper.h" +#include "Configuration.h" +#include "Marlin.h" +#include "planner.h" +#include "pins.h" +#include "fastio.h" +#include "temperature.h" +#include "ultralcd.h" + +#include "speed_lookuptable.h" + +// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. +// for debugging purposes only, should be disabled by default +#ifdef DEBUG_STEPS +volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; +volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; +#endif + + +// intRes = intIn1 * intIn2 >> 16 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 24 bit result +#define MultiU16X8toH16(intRes, charIn1, intIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %A1, %A2 \n\t" \ +"add %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r0 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (charIn1), \ +"d" (intIn2) \ +: \ +"r26" \ +) + +// intRes = longIn1 * longIn2 >> 24 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 48bit result +#define MultiU24X24toH16(intRes, longIn1, longIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"mov r27, r1 \n\t" \ +"mul %B1, %C2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %C1, %C2 \n\t" \ +"add %B0, r0 \n\t" \ +"mul %C1, %B2 \n\t" \ +"add %A0, r0 \n\t" \ +"adc %B0, r1 \n\t" \ +"mul %A1, %C2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %B2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %C1, %A2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %A2 \n\t" \ +"add r27, r1 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r27 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (longIn1), \ +"d" (longIn2) \ +: \ +"r26" , "r27" \ +) + +// Some useful constants + +#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. +// The slope of acceleration is calculated with the leib ramp alghorithm. + +void st_wake_up() { + // TCNT1 = 0; + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + +inline unsigned short calc_timer(unsigned short step_rate) { + unsigned short timer; + if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; + + if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times + step_rate = step_rate >> 2; + step_loops = 4; + } + else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times + step_rate = step_rate >> 1; + step_loops = 2; + } + else { + step_loops = 1; + } + + if(step_rate < 32) step_rate = 32; + step_rate -= 32; // Correct for minimal speed + if(step_rate >= (8*256)){ // higher step rate + unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; + unsigned char tmp_step_rate = (step_rate & 0x00ff); + unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); + MultiU16X8toH16(timer, tmp_step_rate, gain); + timer = (unsigned short)pgm_read_word_near(table_address) - timer; + } + else { // lower step rates + unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; + table_address += ((step_rate)>>1) & 0xfffc; + timer = (unsigned short)pgm_read_word_near(table_address); + timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); + } + if(timer < 100) timer = 100; + return timer; +} + +// Initializes the trapezoid generator from the current block. Called whenever a new +// block begins. +inline void trapezoid_generator_reset() { +#ifdef ADVANCE + advance = current_block->initial_advance; + final_advance = current_block->final_advance; +#endif + deceleration_time = 0; + // advance_rate = current_block->advance_rate; + // step_rate to timer interval + acc_step_rate = current_block->initial_rate; + acceleration_time = calc_timer(acc_step_rate); + OCR1A = acceleration_time; +} + +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +ISR(TIMER1_COMPA_vect) +{ + if(busy){ Serial.print(*(unsigned short *)OCR1A); Serial.println(" BUSY"); + return; + } // The busy-flag is used to avoid reentering this interrupt + + busy = true; + sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) + + // If there is no current block, attempt to pop one from the buffer + if (current_block == NULL) { + // Anything in the buffer? + current_block = plan_get_current_block(); + if (current_block != NULL) { + trapezoid_generator_reset(); + counter_x = -(current_block->step_event_count >> 1); + counter_y = counter_x; + counter_z = counter_x; + counter_e = counter_x; + step_events_completed = 0; + #ifdef ADVANCE + e_steps = 0; + #endif + } + else { +// DISABLE_STEPPER_DRIVER_INTERRUPT(); + } + } + + if (current_block != NULL) { + // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt + out_bits = current_block->direction_bits; + +#ifdef ADVANCE + // Calculate E early. + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; +#endif //ADVANCE + + // Set direction en check limit switches +if ((out_bits & (1< -1 + if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } +#endif + } + else { // +direction + WRITE(X_DIR_PIN,!INVERT_X_DIR); + #ifdef DEBUG_STEPS + count_direction[X_AXIS]=1; + #endif +#if X_MAX_PIN > -1 + if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ + step_events_completed = current_block->step_event_count; + } +#endif + } + + if ((out_bits & (1< -1 + if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } +#endif + } + else { // +direction + WRITE(Y_DIR_PIN,!INVERT_Y_DIR); + #ifdef DEBUG_STEPS + count_direction[Y_AXIS]=1; + #endif +#if Y_MAX_PIN > -1 + if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ + step_events_completed = current_block->step_event_count; + } +#endif + } + + if ((out_bits & (1< -1 + if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } +#endif + } + else { // +direction + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + #ifdef DEBUG_STEPS + count_direction[Z_AXIS]=1; + #endif +#if Z_MAX_PIN > -1 + if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ + step_events_completed = current_block->step_event_count; + } +#endif + } + +#ifndef ADVANCE + if ((out_bits & (1<steps_x; + if (counter_x > 0) { + WRITE(X_STEP_PIN, HIGH); + counter_x -= current_block->step_event_count; + WRITE(X_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[X_AXIS]+=count_direction[X_AXIS]; + #endif + } + + counter_y += current_block->steps_y; + if (counter_y > 0) { + WRITE(Y_STEP_PIN, HIGH); + counter_y -= current_block->step_event_count; + WRITE(Y_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Y_AXIS]+=count_direction[Y_AXIS]; + #endif + } + + counter_z += current_block->steps_z; + if (counter_z > 0) { + WRITE(Z_STEP_PIN, HIGH); + counter_z -= current_block->step_event_count; + WRITE(Z_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Z_AXIS]+=count_direction[Z_AXIS]; + #endif + } + +#ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } +#endif //!ADVANCE + step_events_completed += 1; + if(step_events_completed >= current_block->step_event_count) break; + } + // Calculare new timer value + unsigned short timer; + unsigned short step_rate; + if (step_events_completed <= current_block->accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); + acc_step_rate += current_block->initial_rate; + + // upper limit + if(acc_step_rate > current_block->nominal_rate) + acc_step_rate = current_block->nominal_rate; + + // step_rate to timer interval + timer = calc_timer(acc_step_rate); +#ifdef ADVANCE + advance += advance_rate; +#endif + acceleration_time += timer; + OCR1A = timer; + } + else if (step_events_completed > current_block->decelerate_after) { + MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); + + if(step_rate > acc_step_rate) { // Check step_rate stays positive + step_rate = current_block->final_rate; + } + else { + step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. + } + + // lower limit + if(step_rate < current_block->final_rate) + step_rate = current_block->final_rate; + + // step_rate to timer interval + timer = calc_timer(step_rate); +#ifdef ADVANCE + advance -= advance_rate; + if(advance < final_advance) + advance = final_advance; +#endif //ADVANCE + deceleration_time += timer; + OCR1A = timer; + } + // If current block is finished, reset pointer + if (step_events_completed >= current_block->step_event_count) { + current_block = NULL; + plan_discard_current_block(); + } + } + cli(); // disable interrupts + busy=false; +} + +#ifdef ADVANCE + +unsigned char old_OCR0A; +// Timer interrupt for E. e_steps is set in the main routine; +// Timer 0 is shared with millies +ISR(TIMER0_COMPA_vect) +{ + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; +} +#endif // ADVANCE + +void st_init() +{ + //Initialize Dir Pins +#if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); +#endif +#if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); +#endif +#if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); +#endif +#if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); +#endif + + //Initialize Enable Pins - steppers default to disabled. + +#if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); +#endif +#if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); +#endif +#if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); +#endif +#if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); +#endif + + //endstops and pullups +#ifdef ENDSTOPPULLUPS +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); +#endif +#else //ENDSTOPPULLUPS +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); +#endif +#endif //ENDSTOPPULLUPS + + + //Initialize Step Pins +#if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); +#endif +#if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); +#endif +#if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); +#endif +#if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); +#endif + + // waveform generation = 0100 = CTC + TCCR1B &= ~(1<. +*/ + +#ifndef stepper_h +#define stepper_h +// Initialize and start the stepper motor subsystem +void st_init(); + +// Block until all buffered steps are executed +void st_synchronize(); + +// The stepper subsystem goes to sleep when it runs out of things to execute. Call this +// to notify the subsystem that it is time to go to work. +void st_wake_up(); + +// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. +// for debugging purposes only, should be disabled by default +#ifdef DEBUG_STEPS +extern volatile long count_position[NUM_AXIS]; +extern volatile int count_direction[NUM_AXIS]; +#endif + +#endif diff --git a/Marlin/streaming.h b/Marlin/streaming.h new file mode 100644 index 000000000..2abf64f14 --- /dev/null +++ b/Marlin/streaming.h @@ -0,0 +1,84 @@ +/* +Streaming.h - Arduino library for supporting the << streaming operator +Copyright (c) 2010 Mikal Hart. All rights reserved. + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library 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 +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef ARDUINO_STREAMING +#define ARDUINO_STREAMING + +//#include + +#define STREAMING_LIBRARY_VERSION 4 + +// Generic template +template +inline Print &operator <<(Print &stream, T arg) +{ stream.print(arg); return stream; } + +struct _BASED +{ + long val; + int base; + _BASED(long v, int b): val(v), base(b) + {} +}; + +#define _HEX(a) _BASED(a, HEX) +#define _DEC(a) _BASED(a, DEC) +#define _OCT(a) _BASED(a, OCT) +#define _BIN(a) _BASED(a, BIN) +#define _BYTE(a) _BASED(a, BYTE) + +// Specialization for class _BASED +// Thanks to Arduino forum user Ben Combee who suggested this +// clever technique to allow for expressions like +// Serial << _HEX(a); + +inline Print &operator <<(Print &obj, const _BASED &arg) +{ obj.print(arg.val, arg.base); return obj; } + +#if ARDUINO >= 18 +// Specialization for class _FLOAT +// Thanks to Michael Margolis for suggesting a way +// to accommodate Arduino 0018's floating point precision +// feature like this: +// Serial << _FLOAT(gps_latitude, 6); // 6 digits of precision + +struct _FLOAT +{ + float val; + int digits; + _FLOAT(double v, int d): val(v), digits(d) + {} +}; + +inline Print &operator <<(Print &obj, const _FLOAT &arg) +{ obj.print(arg.val, arg.digits); return obj; } +#endif + +// Specialization for enum _EndLineCode +// Thanks to Arduino forum user Paul V. who suggested this +// clever technique to allow for expressions like +// Serial << "Hello!" << endl; + +enum _EndLineCode { endl }; + +inline Print &operator <<(Print &obj, _EndLineCode arg) +{ obj.println(); return obj; } + +#endif + diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp new file mode 100644 index 000000000..248b807fd --- /dev/null +++ b/Marlin/temperature.cpp @@ -0,0 +1,476 @@ +/* + temperature.c - temperature control + Part of Marlin + + 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + + This firmware is optimized for gen6 electronics. + */ + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "temperature.h" + +int target_bed_raw = 0; +int current_bed_raw = 0; + +int target_raw[3] = {0, 0, 0}; +int current_raw[3] = {0, 0, 0}; +unsigned char temp_meas_ready = false; + +unsigned long previous_millis_heater, previous_millis_bed_heater; + +#ifdef PIDTEMP + double temp_iState = 0; + double temp_dState = 0; + double pTerm; + double iTerm; + double dTerm; + //int output; + double pid_error; + double temp_iState_min; + double temp_iState_max; + double pid_setpoint = 0.0; + double pid_input; + double pid_output; + bool pid_reset; + float HeaterPower; + + float Kp=DEFAULT_Kp; + float Ki=DEFAULT_Ki; + float Kd=DEFAULT_Kd; + float Kc=DEFAULT_Kc; +#endif //PIDTEMP + +#ifdef MINTEMP +int minttemp = temp2analog(MINTEMP); +#endif //MINTEMP +#ifdef MAXTEMP +int maxttemp = temp2analog(MAXTEMP); +#endif //MAXTEMP + +#ifdef BED_MINTEMP +int bed_minttemp = temp2analog(BED_MINTEMP); +#endif //BED_MINTEMP +#ifdef BED_MAXTEMP +int bed_maxttemp = temp2analog(BED_MAXTEMP); +#endif //BED_MAXTEMP + +void manage_heater() +{ +#ifdef USE_WATCHDOG + wd_reset(); +#endif + + float pid_input; + float pid_output; + if(temp_meas_ready == true) { + +CRITICAL_SECTION_START; + temp_meas_ready = false; +CRITICAL_SECTION_END; + +#ifdef PIDTEMP + pid_input = analog2temp(current_raw[0]); + +#ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + #define K1 0.95 + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } +#endif //PID_OPENLOOP +#ifdef PID_DEBUG + Serial.print(" Input "); + Serial.print(pid_input); + Serial.print(" Output "); + Serial.print(pid_output); + Serial.print(" pTerm "); + Serial.print(pTerm); + Serial.print(" iTerm "); + Serial.print(iTerm); + Serial.print(" dTerm "); + Serial.print(dTerm); + Serial.println(); +#endif //PID_DEBUG + analogWrite(HEATER_0_PIN, pid_output); +#endif //PIDTEMP + +#ifndef PIDTEMP + if(current_raw[0] >= target_raw[0]) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } +#endif + + if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) + return; + previous_millis_bed_heater = millis(); + + #if TEMP_1_PIN > -1 + if(current_raw[1] >= target_raw[1]) + { + WRITE(HEATER_1_PIN,LOW); + } + else + { + WRITE(HEATER_1_PIN,HIGH); + } + #endif + } +} + +// Takes hot end temperature value as input and returns corresponding raw value. +// For a thermistor, it uses the RepRap thermistor temp table. +// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. +// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. +float temp2analog(int celsius) { + #ifdef HEATER_USES_THERMISTOR + int raw = 0; + byte i; + + for (i=1; i raw) + { + celsius = temptable[i-1][1] + + (raw - temptable[i-1][0]) * + (temptable[i][1] - temptable[i-1][1]) / + (temptable[i][0] - temptable[i-1][0]); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == NUMTEMPS) celsius = temptable[i-1][1]; + + return celsius; + #elif defined HEATER_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +// Derived from RepRap FiveD extruder::getTemperature() +// For bed temperature measurement. +float analog2tempBed(int raw) { + #ifdef BED_USES_THERMISTOR + int celsius = 0; + byte i; + + raw = (1023 * OVERSAMPLENR) - raw; + + for (i=1; i raw) + { + celsius = bedtemptable[i-1][1] + + (raw - bedtemptable[i-1][0]) * + (bedtemptable[i][1] - bedtemptable[i-1][1]) / + (bedtemptable[i][0] - bedtemptable[i-1][0]); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == NUMTEMPS) celsius = bedtemptable[i-1][1]; + + return celsius; + + #elif defined BED_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +void tp_init() +{ +#if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); +#endif +#if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); +#endif +#if (HEATER_2_PIN > -1) + SET_OUTPUT(HEATER_2_PIN); +#endif + +#ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif //PIDTEMP + +// Set analog inputs + ADCSRA = 1< -1) + #if TEMP_0_PIN < 8 + DIDR0 = 1 << TEMP_0_PIN; + #else + DIDR2 = 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) + raw_temp_0_value += ADC; + #endif + temp_state = 2; + break; + case 2: // Prepare TEMP_1 + #if (TEMP_1_PIN > -1) + #if TEMP_1_PIN < 7 + DIDR0 = 1< -1) + raw_temp_1_value += ADC; + #endif + temp_state = 4; + break; + case 4: // Prepare TEMP_2 + #if (TEMP_2_PIN > -1) + #if TEMP_2_PIN < 7 + DIDR0 = 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) + raw_temp_2_value += ADC; + #endif + temp_state = 0; + temp_count++; + break; + default: + Serial.println("!! Temp measurement error !!"); + break; + } + + if(temp_count >= 16) // 6 ms * 16 = 96ms. + { + #ifdef HEATER_USES_AD595 + current_raw[0] = raw_temp_0_value; + current_raw[2] = raw_temp_2_value; + #else + current_raw[0] = 16383 - raw_temp_0_value; + current_raw[2] = 16383 - raw_temp_2_value; + #endif + + #ifdef BED_USES_AD595 + current_raw[1] = raw_temp_1_value; + #else + current_raw[1] = 16383 - raw_temp_1_value; + #endif + + temp_meas_ready = true; + temp_count = 0; + raw_temp_0_value = 0; + raw_temp_1_value = 0; + raw_temp_2_value = 0; +#ifdef MAXTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[0] >= maxttemp) { + target_raw[0] = 0; + analogWrite(HEATER_0_PIN, 0); + Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); + } + #endif + #if (HEATER_2_PIN > -1) + if(current_raw[2] >= maxttemp) { + target_raw[2] = 0; + analogWrite(HEATER_2_PIN, 0); + Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); + } + #endif +#endif //MAXTEMP +#ifdef MINTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[0] <= minttemp) { + target_raw[0] = 0; + analogWrite(HEATER_0_PIN, 0); + Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); + } + #endif + #if (HEATER_2_PIN > -1) + if(current_raw[2] <= minttemp) { + target_raw[2] = 0; + analogWrite(HEATER_2_PIN, 0); + Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); + } + #endif +#endif //MAXTEMP +#ifdef BED_MINTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); + } + #endif +#endif +#ifdef BED_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); + } + #endif +#endif + } +} diff --git a/Marlin/temperature.h b/Marlin/temperature.h new file mode 100644 index 000000000..986aca999 --- /dev/null +++ b/Marlin/temperature.h @@ -0,0 +1,55 @@ +/* + temperature.h - temperature controller + Part of Marlin + + Copyright (c) 2011 Erik van der Zalm + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +#ifndef temperature_h +#define temperature_h + +void manage_inactivity(byte debug); + +void tp_init(); +void manage_heater(); +//int temp2analogu(int celsius, const short table[][2], int numtemps); +//float analog2tempu(int raw, const short table[][2], int numtemps); +float temp2analog(int celsius); +float temp2analogBed(int celsius); +float analog2temp(int raw); +float analog2tempBed(int raw); + +#ifdef HEATER_USES_THERMISTOR + #define HEATERSOURCE 1 +#endif +#ifdef BED_USES_THERMISTOR + #define BEDSOURCE 1 +#endif + +//#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) +//#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS + + +extern float Kp; +extern float Ki; +extern float Kd; +extern float Kc; + +extern int target_raw[3]; +extern int current_raw[3]; +extern double pid_setpoint; + +#endif diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 1c780020b..725e972fa 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -1,132 +1,133 @@ #ifndef THERMISTORTABLES_H_ #define THERMISTORTABLES_H_ +#define OVERSAMPLENR 16 #if (THERMISTORHEATER == 1) || (THERMISTORBED == 1) //100k bed thermistor #define NUMTEMPS_1 61 const short temptable_1[NUMTEMPS_1][2] = { -{ (23*16) , 300 }, -{ (25*16) , 295 }, -{ (27*16) , 290 }, -{ (28*16) , 285 }, -{ (31*16) , 280 }, -{ (33*16) , 275 }, -{ (35*16) , 270 }, -{ (38*16) , 265 }, -{ (41*16) , 260 }, -{ (44*16) , 255 }, -{ (48*16) , 250 }, -{ (52*16) , 245 }, -{ (56*16) , 240 }, -{ (61*16) , 235 }, -{ (66*16) , 230 }, -{ (71*16) , 225 }, -{ (78*16) , 220 }, -{ (84*16) , 215 }, -{ (92*16) , 210 }, -{ (100*16), 205 }, -{ (109*16), 200 }, -{ (120*16), 195 }, -{ (131*16), 190 }, -{ (143*16), 185 }, -{ (156*16), 180 }, -{ (171*16), 175 }, -{ (187*16), 170 }, -{ (205*16), 165 }, -{ (224*16), 160 }, -{ (245*16), 155 }, -{ (268*16), 150 }, -{ (293*16), 145 }, -{ (320*16), 140 }, -{ (348*16), 135 }, -{ (379*16), 130 }, -{ (411*16), 125 }, -{ (445*16), 120 }, -{ (480*16), 115 }, -{ (516*16), 110 }, -{ (553*16), 105 }, -{ (591*16), 100 }, -{ (628*16), 95 }, -{ (665*16), 90 }, -{ (702*16), 85 }, -{ (737*16), 80 }, -{ (770*16), 75 }, -{ (801*16), 70 }, -{ (830*16), 65 }, -{ (857*16), 60 }, -{ (881*16), 55 }, -{ (903*16), 50 }, -{ (922*16), 45 }, -{ (939*16), 40 }, -{ (954*16), 35 }, -{ (966*16), 30 }, -{ (977*16), 25 }, -{ (985*16), 20 }, -{ (993*16), 15 }, -{ (999*16), 10 }, -{ (1004*16), 5 }, -{ (1008*16), 0 } //safety +{ (23*OVERSAMPLENR) , 300 }, +{ (25*OVERSAMPLENR) , 295 }, +{ (27*OVERSAMPLENR) , 290 }, +{ (28*OVERSAMPLENR) , 285 }, +{ (31*OVERSAMPLENR) , 280 }, +{ (33*OVERSAMPLENR) , 275 }, +{ (35*OVERSAMPLENR) , 270 }, +{ (38*OVERSAMPLENR) , 265 }, +{ (41*OVERSAMPLENR) , 260 }, +{ (44*OVERSAMPLENR) , 255 }, +{ (48*OVERSAMPLENR) , 250 }, +{ (52*OVERSAMPLENR) , 245 }, +{ (56*OVERSAMPLENR) , 240 }, +{ (61*OVERSAMPLENR) , 235 }, +{ (66*OVERSAMPLENR) , 230 }, +{ (71*OVERSAMPLENR) , 225 }, +{ (78*OVERSAMPLENR) , 220 }, +{ (84*OVERSAMPLENR) , 215 }, +{ (92*OVERSAMPLENR) , 210 }, +{ (100*OVERSAMPLENR), 205 }, +{ (109*OVERSAMPLENR), 200 }, +{ (120*OVERSAMPLENR), 195 }, +{ (131*OVERSAMPLENR), 190 }, +{ (143*OVERSAMPLENR), 185 }, +{ (156*OVERSAMPLENR), 180 }, +{ (171*OVERSAMPLENR), 175 }, +{ (187*OVERSAMPLENR), 170 }, +{ (205*OVERSAMPLENR), 165 }, +{ (224*OVERSAMPLENR), 160 }, +{ (245*OVERSAMPLENR), 155 }, +{ (268*OVERSAMPLENR), 150 }, +{ (293*OVERSAMPLENR), 145 }, +{ (320*OVERSAMPLENR), 140 }, +{ (348*OVERSAMPLENR), 135 }, +{ (379*OVERSAMPLENR), 130 }, +{ (411*OVERSAMPLENR), 125 }, +{ (445*OVERSAMPLENR), 120 }, +{ (480*OVERSAMPLENR), 115 }, +{ (516*OVERSAMPLENR), 110 }, +{ (553*OVERSAMPLENR), 105 }, +{ (591*OVERSAMPLENR), 100 }, +{ (628*OVERSAMPLENR), 95 }, +{ (665*OVERSAMPLENR), 90 }, +{ (702*OVERSAMPLENR), 85 }, +{ (737*OVERSAMPLENR), 80 }, +{ (770*OVERSAMPLENR), 75 }, +{ (801*OVERSAMPLENR), 70 }, +{ (830*OVERSAMPLENR), 65 }, +{ (857*OVERSAMPLENR), 60 }, +{ (881*OVERSAMPLENR), 55 }, +{ (903*OVERSAMPLENR), 50 }, +{ (922*OVERSAMPLENR), 45 }, +{ (939*OVERSAMPLENR), 40 }, +{ (954*OVERSAMPLENR), 35 }, +{ (966*OVERSAMPLENR), 30 }, +{ (977*OVERSAMPLENR), 25 }, +{ (985*OVERSAMPLENR), 20 }, +{ (993*OVERSAMPLENR), 15 }, +{ (999*OVERSAMPLENR), 10 }, +{ (1004*OVERSAMPLENR), 5 }, +{ (1008*OVERSAMPLENR), 0 } //safety }; #endif #if (THERMISTORHEATER == 2) || (THERMISTORBED == 2) //200k bed thermistor #define NUMTEMPS_2 21 const short temptable_2[NUMTEMPS_2][2] = { - {(1*16), 848}, - {(54*16), 275}, - {(107*16), 228}, - {(160*16), 202}, - {(213*16), 185}, - {(266*16), 171}, - {(319*16), 160}, - {(372*16), 150}, - {(425*16), 141}, - {(478*16), 133}, - {(531*16), 125}, - {(584*16), 118}, - {(637*16), 110}, - {(690*16), 103}, - {(743*16), 95}, - {(796*16), 86}, - {(849*16), 77}, - {(902*16), 65}, - {(955*16), 49}, - {(1008*16), 17}, - {(1020*16), 0} //safety + {(1*OVERSAMPLENR), 848}, + {(54*OVERSAMPLENR), 275}, + {(107*OVERSAMPLENR), 228}, + {(160*OVERSAMPLENR), 202}, + {(213*OVERSAMPLENR), 185}, + {(266*OVERSAMPLENR), 171}, + {(319*OVERSAMPLENR), 160}, + {(372*OVERSAMPLENR), 150}, + {(425*OVERSAMPLENR), 141}, + {(478*OVERSAMPLENR), 133}, + {(531*OVERSAMPLENR), 125}, + {(584*OVERSAMPLENR), 118}, + {(637*OVERSAMPLENR), 110}, + {(690*OVERSAMPLENR), 103}, + {(743*OVERSAMPLENR), 95}, + {(796*OVERSAMPLENR), 86}, + {(849*OVERSAMPLENR), 77}, + {(902*OVERSAMPLENR), 65}, + {(955*OVERSAMPLENR), 49}, + {(1008*OVERSAMPLENR), 17}, + {(1020*OVERSAMPLENR), 0} //safety }; #endif #if (THERMISTORHEATER == 3) || (THERMISTORBED == 3) //mendel-parts #define NUMTEMPS_3 28 const short temptable_3[NUMTEMPS_3][2] = { - {(1*16),864}, - {(21*16),300}, - {(25*16),290}, - {(29*16),280}, - {(33*16),270}, - {(39*16),260}, - {(46*16),250}, - {(54*16),240}, - {(64*16),230}, - {(75*16),220}, - {(90*16),210}, - {(107*16),200}, - {(128*16),190}, - {(154*16),180}, - {(184*16),170}, - {(221*16),160}, - {(265*16),150}, - {(316*16),140}, - {(375*16),130}, - {(441*16),120}, - {(513*16),110}, - {(588*16),100}, - {(734*16),80}, - {(856*16),60}, - {(938*16),40}, - {(986*16),20}, - {(1008*16),0}, - {(1018*16),-20} + {(1*OVERSAMPLENR),864}, + {(21*OVERSAMPLENR),300}, + {(25*OVERSAMPLENR),290}, + {(29*OVERSAMPLENR),280}, + {(33*OVERSAMPLENR),270}, + {(39*OVERSAMPLENR),260}, + {(46*OVERSAMPLENR),250}, + {(54*OVERSAMPLENR),240}, + {(64*OVERSAMPLENR),230}, + {(75*OVERSAMPLENR),220}, + {(90*OVERSAMPLENR),210}, + {(107*OVERSAMPLENR),200}, + {(128*OVERSAMPLENR),190}, + {(154*OVERSAMPLENR),180}, + {(184*OVERSAMPLENR),170}, + {(221*OVERSAMPLENR),160}, + {(265*OVERSAMPLENR),150}, + {(316*OVERSAMPLENR),140}, + {(375*OVERSAMPLENR),130}, + {(441*OVERSAMPLENR),120}, + {(513*OVERSAMPLENR),110}, + {(588*OVERSAMPLENR),100}, + {(734*OVERSAMPLENR),80}, + {(856*OVERSAMPLENR),60}, + {(938*OVERSAMPLENR),40}, + {(986*OVERSAMPLENR),20}, + {(1008*OVERSAMPLENR),0}, + {(1018*OVERSAMPLENR),-20} }; #endif diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h new file mode 100644 index 000000000..5f0196fa5 --- /dev/null +++ b/Marlin/ultralcd.h @@ -0,0 +1,156 @@ +#ifndef __ULTRALCDH +#define __ULTRALCDH +#include "Configuration.h" + +#ifdef ULTRA_LCD + + void lcd_status(); + void lcd_init(); + void lcd_status(const char* message); + void beep(); + void buttons_check(); + #define LCDSTATUSRIGHT + + #define LCD_UPDATE_INTERVAL 100 + #define STATUSTIMEOUT 15000 + + #include "Configuration.h" + + #include + extern LiquidCrystal lcd; + + //lcd display size + +#ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + #define LCD_PINS_RS 20 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 6 + + //buttons are directly attached + #define BTN_EN1 40 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 38 + + #define EN_C (1< +LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 + +unsigned long previous_millis_lcd=0; + + + +volatile char buttons=0; //the last checked buttons in a bit array. +int encoderpos=0; +short lastenc=0; +#ifdef NEWPANEL + long blocking=0; +#else + long blocking[8]={0,0,0,0,0,0,0,0}; +#endif +MainMenu menu; + +void lcd_status(const char* message) +{ + strncpy(messagetext,message,LCD_WIDTH); +} + +void clear() +{ + //lcd.setCursor(0,0); + lcd.clear(); + //delay(1); + // lcd.begin(LCD_WIDTH,LCD_HEIGHT); + //lcd_init(); +} +long previous_millis_buttons=0; + +void lcd_init() +{ + //beep(); + byte Degree[8] = + { + B01100, + B10010, + B10010, + B01100, + B00000, + B00000, + B00000, + B00000 + }; + byte Thermometer[8] = + { + B00100, + B01010, + B01010, + B01010, + B01010, + B10001, + B10001, + B01110 + }; + byte uplevel[8]={0x04, 0x0e, 0x1f, 0x04, 0x1c, 0x00, 0x00, 0x00};//thanks joris + byte refresh[8]={0x00, 0x06, 0x19, 0x18, 0x03, 0x13, 0x0c, 0x00}; //thanks joris + lcd.begin(LCD_WIDTH, LCD_HEIGHT); + lcd.createChar(1,Degree); + lcd.createChar(2,Thermometer); + lcd.createChar(3,uplevel); + lcd.createChar(4,refresh); + LCD_MESSAGE(fillto(LCD_WIDTH,"UltiMarlin ready.")); +} + + +void beep() +{ + //return; +#ifdef ULTIPANEL + pinMode(BEEPER,OUTPUT); + for(int i=0;i<20;i++){ + WRITE(BEEPER,HIGH); + delay(5); + WRITE(BEEPER,LOW); + delay(5); + } +#endif +} + +void beepshort() +{ + //return; +#ifdef ULTIPANEL + pinMode(BEEPER,OUTPUT); + for(int i=0;i<10;i++){ + WRITE(BEEPER,HIGH); + delay(3); + WRITE(BEEPER,LOW); + delay(3); + } +#endif +} +void lcd_status() +{ +#ifdef ULTIPANEL + static uint8_t oldbuttons=0; + static long previous_millis_buttons=0; + static long previous_lcdinit=0; +// buttons_check(); // Done in temperature interrupt + //previous_millis_buttons=millis(); + + if((buttons==oldbuttons) && ((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) + return; + oldbuttons=buttons; +#else + + if(((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) + return; +#endif + + previous_millis_lcd=millis(); + menu.update(); +} +#ifdef ULTIPANEL +void buttons_init() +{ +#ifdef NEWPANEL + pinMode(BTN_EN1,INPUT); + pinMode(BTN_EN2,INPUT); + pinMode(BTN_ENC,INPUT); + pinMode(SDCARDDETECT,INPUT); + WRITE(BTN_EN1,HIGH); + WRITE(BTN_EN2,HIGH); + WRITE(BTN_ENC,HIGH); + WRITE(SDCARDDETECT,HIGH); +#else + pinMode(SHIFT_CLK,OUTPUT); + pinMode(SHIFT_LD,OUTPUT); + pinMode(SHIFT_EN,OUTPUT); + pinMode(SHIFT_OUT,INPUT); + WRITE(SHIFT_OUT,HIGH); + WRITE(SHIFT_LD,HIGH); + WRITE(SHIFT_EN,LOW); +#endif +} + + +void buttons_check() +{ +// volatile static bool busy=false; +// if(busy) +// return; +// busy=true; + +#ifdef NEWPANEL + uint8_t newbutton=0; + if(READ(BTN_EN1)==0) newbutton|=EN_A; + if(READ(BTN_EN2)==0) newbutton|=EN_B; + if((blocking>1; + if(READ(SHIFT_OUT)) + newbutton|=(1<<7); + WRITE(SHIFT_CLK,HIGH); + WRITE(SHIFT_CLK,LOW); + } + buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 +#endif + char enc=0; + if(buttons&EN_A) + enc|=(1<<0); + if(buttons&EN_B) + enc|=(1<<1); + if(enc!=lastenc) + { + switch(enc) + { + case encrot0: + if(lastenc==encrot3) + encoderpos++; + else if(lastenc==encrot1) + encoderpos--; + break; + case encrot1: + if(lastenc==encrot0) + encoderpos++; + else if(lastenc==encrot2) + encoderpos--; + break; + case encrot2: + if(lastenc==encrot1) + encoderpos++; + else if(lastenc==encrot3) + encoderpos--; + break; + case encrot3: + if(lastenc==encrot2) + encoderpos++; + else if(lastenc==encrot0) + encoderpos--; + break; + default: + ; + } + } + lastenc=enc; +// busy=false; +} + +#endif + +MainMenu::MainMenu() +{ + status=Main_Status; + displayStartingRow=0; + activeline=0; + force_lcd_update=true; +#ifdef ULTIPANEL + buttons_init(); +#endif + lcd_init(); + linechanging=false; +} + +extern volatile bool feedmultiplychanged; + +void MainMenu::showStatus() +{ +#if LCD_HEIGHT==4 + static int oldcurrentraw=-1; + static int oldtargetraw=-1; + //force_lcd_update=true; + if(force_lcd_update||feedmultiplychanged) //initial display of content + { + feedmultiplychanged=false; + encoderpos=feedmultiply; + clear(); + lcd.setCursor(0,0);lcd.print("\002123/567\001 "); +#if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + lcd.setCursor(10,0);lcd.print("B123/567\001 "); +#endif + } + + + if((abs(current_raw[0]-oldcurrentraw)>3)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(analog2temp(current_raw[0]))); + oldcurrentraw=current_raw[0]; + } + if((target_raw[0]!=oldtargetraw)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(analog2temp(target_raw[0]))); + oldtargetraw=target_raw[0]; + } + #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + static int oldcurrentbedraw=-1; + static int oldtargetbedraw=-1; + if((current_bed_raw!=oldcurrentbedraw)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(analog2temp(current_bed_raw))); + oldcurrentraw=current_raw[1]; + } + if((target_bed_raw!=oldtargebedtraw)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(analog2temp(target_bed_raw))); + oldtargetraw=target_bed_raw; + } + #endif + //starttime=2; + static uint16_t oldtime=0; + if(starttime!=0) + { + lcd.setCursor(0,1); + uint16_t time=millis()/60000-starttime/60000; + + if(starttime!=oldtime) + { + lcd.print(itostr2(time/60));lcd.print("h ");lcd.print(itostr2(time%60));lcd.print("m"); + oldtime=time; + } + } + static int oldzpos=0; + int currentz=current_position[2]*10; + if((currentz!=oldzpos)||force_lcd_update) + { + lcd.setCursor(10,1); + lcd.print("Z:");lcd.print(itostr31(currentz)); + oldzpos=currentz; + } + static int oldfeedmultiply=0; + int curfeedmultiply=feedmultiply; + if(encoderpos!=curfeedmultiply||force_lcd_update) + { + curfeedmultiply=encoderpos; + if(curfeedmultiply<10) + curfeedmultiply=10; + if(curfeedmultiply>999) + curfeedmultiply=999; + feedmultiply=curfeedmultiply; + encoderpos=curfeedmultiply; + } + if((curfeedmultiply!=oldfeedmultiply)||force_lcd_update) + { + oldfeedmultiply=curfeedmultiply; + lcd.setCursor(0,2); + lcd.print(itostr3(curfeedmultiply));lcd.print("% "); + } + if(messagetext[0]!='\0') + { + lcd.setCursor(0,LCD_HEIGHT-1); + lcd.print(fillto(LCD_WIDTH,messagetext)); + messagetext[0]='\0'; + } +#else //smaller LCDS---------------------------------- + static int oldcurrentraw=-1; + static int oldtargetraw=-1; + if(force_lcd_update) //initial display of content + { + encoderpos=feedmultiply; + lcd.setCursor(0,0);lcd.print("\002123/567\001 "); + #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + lcd.setCursor(10,0);lcd.print("B123/567\001 "); + #endif + } + + + if((abs(current_raw[0]-oldcurrentraw)>3)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(analog2temp(current_raw[0]))); + oldcurrentraw=current_raw[0]; + } + if((target_raw[0]!=oldtargetraw)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(analog2temp(target_raw[0]))); + oldtargetraw=target_raw[0]; + } + + if(messagetext[0]!='\0') + { + lcd.setCursor(0,LCD_HEIGHT-1); + lcd.print(fillto(LCD_WIDTH,messagetext)); + messagetext[0]='\0'; + } + +#endif +} + +enum {ItemP_exit, ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude, ItemP_disstep}; + +void MainMenu::showPrepare() +{ + uint8_t line=0; + if(lastlineoffset!=lineoffset) + { + force_lcd_update=true; + clear(); + } + for(uint8_t i=lineoffset;i3) + { + lineoffset++; + encoderpos=3*lcdslow; + if(lineoffset>(ItemP_disstep+1-LCD_HEIGHT)) + lineoffset=ItemP_disstep+1-LCD_HEIGHT; + force_lcd_update=true; + } + //encoderpos=encoderpos%LCD_HEIGHT; + lastencoderpos=encoderpos; + activeline=encoderpos/lcdslow; + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + } +} +enum { + ItemC_exit, ItemC_nozzle, + ItemC_PID_P,ItemC_PID_I,ItemC_PID_D,ItemC_PID_C, + ItemC_fan, + ItemC_acc, ItemC_xyjerk, + ItemC_vmaxx, ItemC_vmaxy, ItemC_vmaxz, ItemC_vmaxe, + ItemC_vtravmin,ItemC_vmin, + ItemC_amaxx, ItemC_amaxy, ItemC_amaxz, ItemC_amaxe, + ItemC_aret,ItemC_esteps, ItemC_store, ItemC_load,ItemC_failsafe +}; + +void MainMenu::showControl() +{ + uint8_t line=0; + if((lastlineoffset!=lineoffset)||force_lcd_update) + { + force_lcd_update=true; + clear(); + } + for(uint8_t i=lineoffset;i260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemC_fan: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Fan speed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); + } + + if((activeline==line) ) + { + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=fanpwm; + } + else + { + fanpwm = constrain(encoderpos,0,255); + encoderpos=fanpwm; + analogWrite(FAN_PIN, fanpwm); + + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_acc: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Acc:"); + lcd.setCursor(13,line);lcd.print(itostr3(acceleration/100));lcd.print("00"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)acceleration/100; + } + else + { + acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + } + } + }break; + case ItemC_xyjerk: //max_xy_jerk + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Vxy-jerk: "); + lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_xy_jerk/60; + } + else + { + max_xy_jerk= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_PID_P: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-P: "); + lcd.setCursor(13,line);lcd.print(itostr4(Kp)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kp/5; + } + else + { + Kp= encoderpos*5; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>9990/5) encoderpos=9990/5; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); + } + } + }break; + case ItemC_PID_I: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-I: "); + lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(Ki*10); + } + else + { + Ki= encoderpos/10.; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); + } + } + }break; + case ItemC_PID_D: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-D: "); + lcd.setCursor(13,line);lcd.print(itostr4(Kd)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kd/5; + } + else + { + Kd= encoderpos*5; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990/5) encoderpos=9990/5; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); + } + } + }break; + + + + case ItemC_PID_C: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-C: "); + lcd.setCursor(13,line);lcd.print(itostr3(Kc)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kc; + } + else + { + Kc= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_vmaxx: + case ItemC_vmaxy: + case ItemC_vmaxz: + case ItemC_vmaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Vmax "); + if(i==ItemC_vmaxx)lcd.print("x:"); + if(i==ItemC_vmaxy)lcd.print("y:"); + if(i==ItemC_vmaxz)lcd.print("z:"); + if(i==ItemC_vmaxe)lcd.print("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemC_vmaxx]/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_feedrate[i-ItemC_vmaxx]/60; + } + else + { + max_feedrate[i-ItemC_vmaxx]= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemC_vmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Vmin:"); + lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(minimumfeedrate/60.); + } + else + { + minimumfeedrate= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_vtravmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" VTrav min:"); + lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)mintravelfeedrate/60; + } + else + { + mintravelfeedrate= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemC_amaxx: + case ItemC_amaxy: + case ItemC_amaxz: + case ItemC_amaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Amax "); + if(i==ItemC_amaxx)lcd.print("x:"); + if(i==ItemC_amaxy)lcd.print("y:"); + if(i==ItemC_amaxz)lcd.print("z:"); + if(i==ItemC_amaxe)lcd.print("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100));lcd.print("00"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100; + } + else + { + max_acceleration_units_per_sq_second[i-ItemC_amaxx]= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + } + } + }break; + case ItemC_aret://float retract_acceleration = 7000; + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" A-retract:"); + lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcd.print("00"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)retract_acceleration/100; + } + else + { + retract_acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<10) encoderpos=10; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + } + } + }break; + case ItemC_esteps://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Esteps/mm:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[3]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + } + }break; + case ItemC_store: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Store EPROM"); + } + if((activeline==line) && CLICKED) + { + //enquecommand("M84"); + beepshort(); + BLOCK; + StoreSettings(); + } + }break; + case ItemC_load: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Load EPROM"); + } + if((activeline==line) && CLICKED) + { + //enquecommand("M84"); + beepshort(); + BLOCK; + RetrieveSettings(); + } + }break; + case ItemC_failsafe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Restore Failsafe"); + } + if((activeline==line) && CLICKED) + { + //enquecommand("M84"); + beepshort(); + BLOCK; + RetrieveSettings(true); + } + }break; + default: + break; + } + line++; + } + lastlineoffset=lineoffset; + + if(!linechanging && ((encoderpos/lcdslow!=lastencoderpos/lcdslow)||force_lcd_update)) + { + + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?' ':' '); + + if(encoderpos<0) + { + lineoffset--; + if(lineoffset<0) + lineoffset=0; + encoderpos=0; + force_lcd_update=true; + } + if(encoderpos/lcdslow>3) + { + lineoffset++; + encoderpos=3*lcdslow; + if(lineoffset>(ItemC_failsafe+1-LCD_HEIGHT)) + lineoffset=ItemC_failsafe+1-LCD_HEIGHT; + force_lcd_update=true; + } + //encoderpos=encoderpos%LCD_HEIGHT; + lastencoderpos=encoderpos; + activeline=encoderpos/lcdslow; + if(activeline>3) activeline=3; + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + } +} + +#include "SdFat.h" + +void MainMenu::getfilename(const uint8_t nr) +{ +#ifdef SDSUPPORT + dir_t p; + root.rewind(); + uint8_t cnt=0; + filename[0]='\0'; + while (root.readDir(p) > 0) + { + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + if(cnt++!=nr) continue; + //Serial.println((char*)p.name); + uint8_t writepos=0; + for (uint8_t i = 0; i < 11; i++) + { + if (p.name[i] == ' ') continue; + if (i == 8) { + filename[writepos++]='.'; + } + filename[writepos++]=p.name[i]; + } + filename[writepos++]=0; + } +#endif +} + +uint8_t getnrfilenames() +{ +#ifdef SDSUPPORT + dir_t p; + root.rewind(); + uint8_t cnt=0; + while (root.readDir(p) > 0) + { + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + cnt++; + } + return cnt; +#endif +} + +void MainMenu::showSD() +{ + +#ifdef SDSUPPORT + uint8_t line=0; + + if(lastlineoffset!=lineoffset) + { + force_lcd_update=true; + } + static uint8_t nrfiles=0; + if(force_lcd_update) + { + clear(); + if(sdactive) + { + nrfiles=getnrfilenames(); + } + else + { + nrfiles=0; + lineoffset=0; + } + //Serial.print("Nr files:"); Serial.println((int)nrfiles); + } + + for(int8_t i=lineoffset;i3) + { + lineoffset++; + encoderpos=3*lcdslow; + if(lineoffset>(1+nrfiles+1-LCD_HEIGHT)) + lineoffset=1+nrfiles+1-LCD_HEIGHT; + force_lcd_update=true; + + } + lastencoderpos=encoderpos; + activeline=encoderpos; + if(activeline>3) + { + activeline=3; + } + if(activeline<0) + { + activeline=0; + } + if(activeline>1+nrfiles) activeline=1+nrfiles; + if(lineoffset>1+nrfiles) lineoffset=1+nrfiles; + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + + } +#endif +} + +enum {ItemM_watch, ItemM_prepare, ItemM_control, ItemM_file }; +void MainMenu::showMainMenu() +{ + //if(int(encoderpos/lcdslow)!=int(lastencoderpos/lcdslow)) + // force_lcd_update=true; +#ifndef ULTIPANEL + force_lcd_update=false; +#endif + //Serial.println((int)activeline); + if(force_lcd_update) + clear(); + for(short line=0;line=LCD_HEIGHT) activeline=LCD_HEIGHT-1; + if((encoderpos!=lastencoderpos)||force_lcd_update) + { + lcd.setCursor(0,activeline);lcd.print(activeline?' ':' '); + if(encoderpos<0) encoderpos=0; + if(encoderpos>3*lcdslow) encoderpos=3*lcdslow; + activeline=abs(encoderpos/lcdslow)%LCD_HEIGHT; + if(activeline<0) activeline=0; + if(activeline>=LCD_HEIGHT) activeline=LCD_HEIGHT-1; + lastencoderpos=encoderpos; + lcd.setCursor(0,activeline);lcd.print(activeline?'>':'\003'); + } + + + +} + +void MainMenu::update() +{ + static MainStatus oldstatus=Main_Menu; //init automatically causes foce_lcd_update=true + static long timeoutToStatus=0; + static bool oldcardstatus=false; +#ifdef CARDINSERTED + if((CARDINSERTED != oldcardstatus)) + { + force_lcd_update=true; + oldcardstatus=CARDINSERTED; + //Serial.println("SD CHANGE"); + if(CARDINSERTED) + { + initsd(); + lcd_status("Card inserted"); + } + else + { + sdactive=false; + lcd_status("Card removed"); + + } + } +#endif + + if(status!=oldstatus) + { + //Serial.println(status); + //clear(); + force_lcd_update=true; + encoderpos=0; + lineoffset=0; + + oldstatus=status; + } + if( (encoderpos!=lastencoderpos) || CLICKED) + timeoutToStatus=millis()+STATUSTIMEOUT; + + switch(status) + { + case Main_Status: + { + showStatus(); + if(CLICKED) + { + linechanging=false; + BLOCK + status=Main_Menu; + timeoutToStatus=millis()+STATUSTIMEOUT; + } + }break; + case Main_Menu: + { + showMainMenu(); + linechanging=false; + }break; + case Main_Prepare: + { + showPrepare(); + }break; + case Main_Control: + { + showControl(); + }break; + case Main_SD: + { + showSD(); + }break; + } + + if(timeoutToStatus=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/1000)%10+'0'; + conv[2]=(xx/100)%10+'0'; + conv[3]=(xx/10)%10+'0'; + conv[4]='.'; + conv[5]=(xx)%10+'0'; + conv[6]=0; + return conv; +} + +char *itostr31(const int &xx) +{ + //sprintf(conv,"%5.1f",x); + conv[0]=(xx>=0)?'+':'-'; + conv[1]=(xx/1000)%10+'0'; + conv[2]=(xx/100)%10+'0'; + conv[3]=(xx/10)%10+'0'; + conv[4]='.'; + conv[5]=(xx)%10+'0'; + conv[6]=0; + return conv; +} +char *itostr3(const int &xx) +{ + conv[0]=(xx/100)%10+'0'; + conv[1]=(xx/10)%10+'0'; + conv[2]=(xx)%10+'0'; + conv[3]=0; + return conv; +} + +char *itostr4(const int &xx) +{ + conv[0]=(xx/1000)%10+'0'; + conv[1]=(xx/100)%10+'0'; + conv[2]=(xx/10)%10+'0'; + conv[3]=(xx)%10+'0'; + conv[4]=0; + return conv; +} + +/// convert float to string with +1234.5 format +char *ftostr51(const float &x) +{ + int xx=x*10; + conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/10000)%10+'0'; + conv[2]=(xx/1000)%10+'0'; + conv[3]=(xx/100)%10+'0'; + conv[4]=(xx/10)%10+'0'; + conv[5]='.'; + conv[6]=(xx)%10+'0'; + conv[7]=0; + return conv; +} + +char *fillto(int8_t n,char *c) +{ + static char ret[25]; + bool endfound=false; + for(int8_t i=0;i= 16000000L - // for the 16 MHz clock on most Arduino boards - - // for a one-microsecond delay, simply return. the overhead - // of the function call yields a delay of approximately 1 1/8 us. - if (--us == 0) - return; - - // the following loop takes a quarter of a microsecond (4 cycles) - // per iteration, so execute it four times for each microsecond of - // delay requested. - us <<= 2; - - // account for the time taken in the preceeding commands. - us -= 2; -#else - // for the 8 MHz internal clock on the ATmega168 - - // for a one- or two-microsecond delay, simply return. the overhead of - // the function calls takes more than two microseconds. can't just - // subtract two, since us is unsigned; we'd overflow. - if (--us == 0) - return; - if (--us == 0) - return; - - // the following loop takes half of a microsecond (4 cycles) - // per iteration, so execute it twice for each microsecond of - // delay requested. - us <<= 1; - - // partially compensate for the time taken by the preceeding commands. - // we can't subtract any more than this or we'd overflow w/ small delays. - us--; -#endif - - // disable interrupts, otherwise the timer 0 overflow interrupt that - // tracks milliseconds will make us delay longer than we want. - oldSREG = SREG; - cli(); - - // busy wait - __asm__ __volatile__ ( - "1: sbiw %0,1" "\n\t" // 2 cycles - "brne 1b" : "=w" (us) : "0" (us) // 2 cycles - ); - - // reenable interrupts. - SREG = oldSREG; -} - -void init() -{ - // this needs to be called before setup() or some functions won't - // work there - sei(); - - // on the ATmega168, timer 0 is also used for fast hardware pwm - // (using phase-correct PWM would mean that timer 0 overflowed half as often - // resulting in different millis() behavior on the ATmega8 and ATmega168) - sbi(TCCR0A, WGM01); - sbi(TCCR0A, WGM00); - - // set timer 0 prescale factor to 64 - sbi(TCCR0B, CS01); - sbi(TCCR0B, CS00); - - // enable timer 0 overflow interrupt - sbi(TIMSK0, TOIE0); - - // timers 1 and 2 are used for phase-correct hardware pwm - // this is better for motors as it ensures an even waveform - // note, however, that fast pwm mode can achieve a frequency of up - // 8 MHz (with a 16 MHz clock) at 50% duty cycle -#if 0 - // set timer 1 prescale factor to 64 - sbi(TCCR1B, CS11); - sbi(TCCR1B, CS10); - - // put timer 1 in 8-bit phase correct pwm mode - sbi(TCCR1A, WGM10); - - // set timer 2 prescale factor to 64 - sbi(TCCR2B, CS22); - - // configure timer 2 for phase correct pwm (8-bit) - sbi(TCCR2A, WGM20); - - // set a2d prescale factor to 128 - // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. - // XXX: this will not work properly for other clock speeds, and - // this code should use F_CPU to determine the prescale factor. - sbi(ADCSRA, ADPS2); - sbi(ADCSRA, ADPS1); - sbi(ADCSRA, ADPS0); - - // enable a2d conversions - sbi(ADCSRA, ADEN); - - // the bootloader connects pins 0 and 1 to the USART; disconnect them - // here so they can be used as normal digital i/o; they will be - // reconnected in Serial.begin() - UCSR0B = 0; - #if defined(__AVR_ATmega644P__) - //TODO: test to see if disabling this helps? - //UCSR1B = 0; - #endif -#endif -} diff --git a/Marlin/wiring_serial.c b/Marlin/wiring_serial.c deleted file mode 100644 index c027944c9..000000000 --- a/Marlin/wiring_serial.c +++ /dev/null @@ -1,139 +0,0 @@ -/* - wiring_serial.c - serial functions. - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - Modified 29 January 2009, Marius Kintel for Sanguino - http://www.sanguino.cc/ - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ -*/ - - -#include "wiring_private.h" - -// Define constants and variables for buffering incoming serial data. We're -// using a ring buffer (I think), in which rx_buffer_head is the index of the -// location to which to write the next incoming character and rx_buffer_tail -// is the index of the location from which to read. -#define RX_BUFFER_SIZE 128 -#define RX_BUFFER_MASK 0x7f - -#if defined(__AVR_ATmega644P__) -unsigned char rx_buffer[2][RX_BUFFER_SIZE]; -int rx_buffer_head[2] = {0, 0}; -int rx_buffer_tail[2] = {0, 0}; -#else -unsigned char rx_buffer[1][RX_BUFFER_SIZE]; -int rx_buffer_head[1] = {0}; -int rx_buffer_tail[1] = {0}; -#endif - - -#define BEGIN_SERIAL(uart_, baud_) \ -{ \ - UBRR##uart_##H = ((F_CPU / 16 + baud / 2) / baud - 1) >> 8; \ - UBRR##uart_##L = ((F_CPU / 16 + baud / 2) / baud - 1); \ - \ - /* reset config for UART */ \ - UCSR##uart_##A = 0; \ - UCSR##uart_##B = 0; \ - UCSR##uart_##C = 0; \ - \ - /* enable rx and tx */ \ - sbi(UCSR##uart_##B, RXEN##uart_);\ - sbi(UCSR##uart_##B, TXEN##uart_);\ - \ - /* enable interrupt on complete reception of a byte */ \ - sbi(UCSR##uart_##B, RXCIE##uart_); \ - UCSR##uart_##C = _BV(UCSZ##uart_##1)|_BV(UCSZ##uart_##0); \ - /* defaults to 8-bit, no parity, 1 stop bit */ \ -} - -void beginSerial(uint8_t uart, long baud) -{ - if (uart == 0) BEGIN_SERIAL(0, baud) -#if defined(__AVR_ATmega644P__) - else BEGIN_SERIAL(1, baud) -#endif -} - -#define SERIAL_WRITE(uart_, c_) \ - while (!(UCSR##uart_##A & (1 << UDRE##uart_))) \ - ; \ - UDR##uart_ = c - -void serialWrite(uint8_t uart, unsigned char c) -{ - if (uart == 0) { - SERIAL_WRITE(0, c); - } -#if defined(__AVR_ATmega644P__) - else { - SERIAL_WRITE(1, c); - } -#endif -} - -int serialAvailable(uint8_t uart) -{ - return (RX_BUFFER_SIZE + rx_buffer_head[uart] - rx_buffer_tail[uart]) & RX_BUFFER_MASK; -} - -int serialRead(uint8_t uart) -{ - // if the head isn't ahead of the tail, we don't have any characters - if (rx_buffer_head[uart] == rx_buffer_tail[uart]) { - return -1; - } else { - unsigned char c = rx_buffer[uart][rx_buffer_tail[uart]]; - rx_buffer_tail[uart] = (rx_buffer_tail[uart] + 1) & RX_BUFFER_MASK; - return c; - } -} - -void serialFlush(uint8_t uart) -{ - // don't reverse this or there may be problems if the RX interrupt - // occurs after reading the value of rx_buffer_head but before writing - // the value to rx_buffer_tail; the previous value of rx_buffer_head - // may be written to rx_buffer_tail, making it appear as if the buffer - // were full, not empty. - rx_buffer_head[uart] = rx_buffer_tail[uart]; -} - -#define UART_ISR(uart_) \ -ISR(USART##uart_##_RX_vect) \ -{ \ - unsigned char c = UDR##uart_; \ - \ - int i = (rx_buffer_head[uart_] + 1) & RX_BUFFER_MASK; \ - \ - /* if we should be storing the received character into the location \ - just before the tail (meaning that the head would advance to the \ - current location of the tail), we're about to overflow the buffer \ - and so we don't write the character or advance the head. */ \ - if (i != rx_buffer_tail[uart_]) { \ - rx_buffer[uart_][rx_buffer_head[uart_]] = c; \ - rx_buffer_head[uart_] = i; \ - } \ -} - -UART_ISR(0) -#if defined(__AVR_ATmega644P__) -UART_ISR(1) -#endif From bf879ceaa9685648adba645cadc6ce5aaa5fac85 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 4 Nov 2011 22:51:14 +0100 Subject: [PATCH 013/430] Added thermistor tables --- Marlin/Configuration.h | 21 +- Marlin/temperature.cpp | 48 ++-- Marlin/thermistortables.h | 509 ++++++++++++++++++++++++++++---------- 3 files changed, 425 insertions(+), 153 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 2cef365b0..36b5f7b67 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -14,14 +14,23 @@ #define MOTHERBOARD 7 //#define MOTHERBOARD 5 + //// Thermistor settings: // 1 is 100k thermistor // 2 is 200k thermistor // 3 is mendel-parts thermistor -#define THERMISTORHEATER 3 -// Select one of these only to define how the nozzle temp is read. -//#define HEATER_USES_THERMISTOR -#define HEATER_USES_AD595 +// 4 is 10k thermistor +// 5 is ParCan supplied 104GT-2 100K +// 6 is EPCOS 100k +// 7 is 100k Honeywell thermistor 135-104LAG-J01 +#define THERMISTORHEATER_1 3 +#define THERMISTORHEATER_2 3 +#define THERMISTORBED 3 + +//#define HEATER_1_USES_THERMISTOR +//#define HEATER_2_USES_THERMISTOR +#define HEATER_1_USES_AD595 +//#define HEATER_2_USES_AD595 // Select one of these only to define how the bed temp is read. //#define BED_USES_THERMISTOR @@ -29,8 +38,6 @@ #define HEATER_CHECK_INTERVAL 50 #define BED_CHECK_INTERVAL 5000 -#define BNUMTEMPS NUMTEMPS -#define bedtemptable temptable //// Endstop Settings @@ -50,7 +57,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define LCD_WIDTH 16 #define LCD_HEIGHT 2 -#define ULTIPANEL +//#define ULTIPANEL #ifdef ULTIPANEL //#define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 248b807fd..7a9c56e10 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -174,28 +174,28 @@ CRITICAL_SECTION_END; // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. float temp2analog(int celsius) { - #ifdef HEATER_USES_THERMISTOR + #ifdef HEATER_USES_THERMISTOR_1 int raw = 0; byte i; - for (i=1; i raw) + if (temptable_1[i][0] > raw) { - celsius = temptable[i-1][1] + - (raw - temptable[i-1][0]) * - (temptable[i][1] - temptable[i-1][1]) / - (temptable[i][0] - temptable[i-1][0]); + celsius = temptable_1[i-1][1] + + (raw - temptable_1[i-1][0]) * + (temptable_1[i][1] - temptable_1[i-1][1]) / + (temptable_1[i][0] - temptable_1[i-1][0]); break; } } // Overflow: Set to last value in the table - if (i == NUMTEMPS) celsius = temptable[i-1][1]; + if (i == NUMTEMPS_HEATER_1) celsius = temptable_1[i-1][1]; return celsius; - #elif defined HEATER_USES_AD595 + #elif defined HEATER_1_USES_AD595 return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; #endif } @@ -270,7 +270,7 @@ float analog2tempBed(int raw) { raw = (1023 * OVERSAMPLENR) - raw; - for (i=1; i raw) { @@ -284,7 +284,7 @@ float analog2tempBed(int raw) { } // Overflow: Set to last value in the table - if (i == NUMTEMPS) celsius = bedtemptable[i-1][1]; + if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; return celsius; @@ -403,11 +403,15 @@ ISR(TIMER0_COMPB_vect) if(temp_count >= 16) // 6 ms * 16 = 96ms. { - #ifdef HEATER_USES_AD595 + #ifdef HEATER_1_USES_AD595 current_raw[0] = raw_temp_0_value; - current_raw[2] = raw_temp_2_value; #else current_raw[0] = 16383 - raw_temp_0_value; + #endif + + #ifdef HEATER_2_USES_AD595 + current_raw[2] = raw_temp_2_value; + #else current_raw[2] = 16383 - raw_temp_2_value; #endif diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 725e972fa..0ea1991dc 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -2,148 +2,409 @@ #define THERMISTORTABLES_H_ #define OVERSAMPLENR 16 -#if (THERMISTORHEATER == 1) || (THERMISTORBED == 1) //100k bed thermistor +#if (THERMISTORHEATER_1 == 1) || (THERMISTORHEATER_2 == 1) || (THERMISTORBED == 1) //100k bed thermistor #define NUMTEMPS_1 61 const short temptable_1[NUMTEMPS_1][2] = { -{ (23*OVERSAMPLENR) , 300 }, -{ (25*OVERSAMPLENR) , 295 }, -{ (27*OVERSAMPLENR) , 290 }, -{ (28*OVERSAMPLENR) , 285 }, -{ (31*OVERSAMPLENR) , 280 }, -{ (33*OVERSAMPLENR) , 275 }, -{ (35*OVERSAMPLENR) , 270 }, -{ (38*OVERSAMPLENR) , 265 }, -{ (41*OVERSAMPLENR) , 260 }, -{ (44*OVERSAMPLENR) , 255 }, -{ (48*OVERSAMPLENR) , 250 }, -{ (52*OVERSAMPLENR) , 245 }, -{ (56*OVERSAMPLENR) , 240 }, -{ (61*OVERSAMPLENR) , 235 }, -{ (66*OVERSAMPLENR) , 230 }, -{ (71*OVERSAMPLENR) , 225 }, -{ (78*OVERSAMPLENR) , 220 }, -{ (84*OVERSAMPLENR) , 215 }, -{ (92*OVERSAMPLENR) , 210 }, -{ (100*OVERSAMPLENR), 205 }, -{ (109*OVERSAMPLENR), 200 }, -{ (120*OVERSAMPLENR), 195 }, -{ (131*OVERSAMPLENR), 190 }, -{ (143*OVERSAMPLENR), 185 }, -{ (156*OVERSAMPLENR), 180 }, -{ (171*OVERSAMPLENR), 175 }, -{ (187*OVERSAMPLENR), 170 }, -{ (205*OVERSAMPLENR), 165 }, -{ (224*OVERSAMPLENR), 160 }, -{ (245*OVERSAMPLENR), 155 }, -{ (268*OVERSAMPLENR), 150 }, -{ (293*OVERSAMPLENR), 145 }, -{ (320*OVERSAMPLENR), 140 }, -{ (348*OVERSAMPLENR), 135 }, -{ (379*OVERSAMPLENR), 130 }, -{ (411*OVERSAMPLENR), 125 }, -{ (445*OVERSAMPLENR), 120 }, -{ (480*OVERSAMPLENR), 115 }, -{ (516*OVERSAMPLENR), 110 }, -{ (553*OVERSAMPLENR), 105 }, -{ (591*OVERSAMPLENR), 100 }, -{ (628*OVERSAMPLENR), 95 }, -{ (665*OVERSAMPLENR), 90 }, -{ (702*OVERSAMPLENR), 85 }, -{ (737*OVERSAMPLENR), 80 }, -{ (770*OVERSAMPLENR), 75 }, -{ (801*OVERSAMPLENR), 70 }, -{ (830*OVERSAMPLENR), 65 }, -{ (857*OVERSAMPLENR), 60 }, -{ (881*OVERSAMPLENR), 55 }, -{ (903*OVERSAMPLENR), 50 }, -{ (922*OVERSAMPLENR), 45 }, -{ (939*OVERSAMPLENR), 40 }, -{ (954*OVERSAMPLENR), 35 }, -{ (966*OVERSAMPLENR), 30 }, -{ (977*OVERSAMPLENR), 25 }, -{ (985*OVERSAMPLENR), 20 }, -{ (993*OVERSAMPLENR), 15 }, -{ (999*OVERSAMPLENR), 10 }, -{ (1004*OVERSAMPLENR), 5 }, -{ (1008*OVERSAMPLENR), 0 } //safety +{ 23*OVERSAMPLENR , 300 }, +{ 25*OVERSAMPLENR , 295 }, +{ 27*OVERSAMPLENR , 290 }, +{ 28*OVERSAMPLENR , 285 }, +{ 31*OVERSAMPLENR , 280 }, +{ 33*OVERSAMPLENR , 275 }, +{ 35*OVERSAMPLENR , 270 }, +{ 38*OVERSAMPLENR , 265 }, +{ 41*OVERSAMPLENR , 260 }, +{ 44*OVERSAMPLENR , 255 }, +{ 48*OVERSAMPLENR , 250 }, +{ 52*OVERSAMPLENR , 245 }, +{ 56*OVERSAMPLENR , 240 }, +{ 61*OVERSAMPLENR , 235 }, +{ 66*OVERSAMPLENR , 230 }, +{ 71*OVERSAMPLENR , 225 }, +{ 78*OVERSAMPLENR , 220 }, +{ 84*OVERSAMPLENR , 215 }, +{ 92*OVERSAMPLENR , 210 }, +{ 100*OVERSAMPLENR , 205 }, +{ 109*OVERSAMPLENR , 200 }, +{ 120*OVERSAMPLENR , 195 }, +{ 131*OVERSAMPLENR , 190 }, +{ 143*OVERSAMPLENR , 185 }, +{ 156*OVERSAMPLENR , 180 }, +{ 171*OVERSAMPLENR , 175 }, +{ 187*OVERSAMPLENR , 170 }, +{ 205*OVERSAMPLENR , 165 }, +{ 224*OVERSAMPLENR , 160 }, +{ 245*OVERSAMPLENR , 155 }, +{ 268*OVERSAMPLENR , 150 }, +{ 293*OVERSAMPLENR , 145 }, +{ 320*OVERSAMPLENR , 140 }, +{ 348*OVERSAMPLENR , 135 }, +{ 379*OVERSAMPLENR , 130 }, +{ 411*OVERSAMPLENR , 125 }, +{ 445*OVERSAMPLENR , 120 }, +{ 480*OVERSAMPLENR , 115 }, +{ 516*OVERSAMPLENR , 110 }, +{ 553*OVERSAMPLENR , 105 }, +{ 591*OVERSAMPLENR , 100 }, +{ 628*OVERSAMPLENR , 95 }, +{ 665*OVERSAMPLENR , 90 }, +{ 702*OVERSAMPLENR , 85 }, +{ 737*OVERSAMPLENR , 80 }, +{ 770*OVERSAMPLENR , 75 }, +{ 801*OVERSAMPLENR , 70 }, +{ 830*OVERSAMPLENR , 65 }, +{ 857*OVERSAMPLENR , 60 }, +{ 881*OVERSAMPLENR , 55 }, +{ 903*OVERSAMPLENR , 50 }, +{ 922*OVERSAMPLENR , 45 }, +{ 939*OVERSAMPLENR , 40 }, +{ 954*OVERSAMPLENR , 35 }, +{ 966*OVERSAMPLENR , 30 }, +{ 977*OVERSAMPLENR , 25 }, +{ 985*OVERSAMPLENR , 20 }, +{ 993*OVERSAMPLENR , 15 }, +{ 999*OVERSAMPLENR , 10 }, +{ 1004*OVERSAMPLENR , 5 }, +{ 1008*OVERSAMPLENR , 0 } //safety }; #endif -#if (THERMISTORHEATER == 2) || (THERMISTORBED == 2) //200k bed thermistor +#if (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor #define NUMTEMPS_2 21 const short temptable_2[NUMTEMPS_2][2] = { - {(1*OVERSAMPLENR), 848}, - {(54*OVERSAMPLENR), 275}, - {(107*OVERSAMPLENR), 228}, - {(160*OVERSAMPLENR), 202}, - {(213*OVERSAMPLENR), 185}, - {(266*OVERSAMPLENR), 171}, - {(319*OVERSAMPLENR), 160}, - {(372*OVERSAMPLENR), 150}, - {(425*OVERSAMPLENR), 141}, - {(478*OVERSAMPLENR), 133}, - {(531*OVERSAMPLENR), 125}, - {(584*OVERSAMPLENR), 118}, - {(637*OVERSAMPLENR), 110}, - {(690*OVERSAMPLENR), 103}, - {(743*OVERSAMPLENR), 95}, - {(796*OVERSAMPLENR), 86}, - {(849*OVERSAMPLENR), 77}, - {(902*OVERSAMPLENR), 65}, - {(955*OVERSAMPLENR), 49}, - {(1008*OVERSAMPLENR), 17}, - {(1020*OVERSAMPLENR), 0} //safety + {1*OVERSAMPLENR, 848}, + {54*OVERSAMPLENR, 275}, + {107*OVERSAMPLENR, 228}, + {160*OVERSAMPLENR, 202}, + {213*OVERSAMPLENR, 185}, + {266*OVERSAMPLENR, 171}, + {319*OVERSAMPLENR, 160}, + {372*OVERSAMPLENR, 150}, + {425*OVERSAMPLENR, 141}, + {478*OVERSAMPLENR, 133}, + {531*OVERSAMPLENR, 125}, + {584*OVERSAMPLENR, 118}, + {637*OVERSAMPLENR, 110}, + {690*OVERSAMPLENR, 103}, + {743*OVERSAMPLENR, 95}, + {796*OVERSAMPLENR, 86}, + {849*OVERSAMPLENR, 77}, + {902*OVERSAMPLENR, 65}, + {955*OVERSAMPLENR, 49}, + {1008*OVERSAMPLENR, 17}, + {1020*OVERSAMPLENR, 0} //safety }; #endif -#if (THERMISTORHEATER == 3) || (THERMISTORBED == 3) //mendel-parts +#if (THERMISTORHEATER_1 == 3) || (THERMISTORHEATER_2 == 3) || (THERMISTORBED == 3) //mendel-parts #define NUMTEMPS_3 28 const short temptable_3[NUMTEMPS_3][2] = { - {(1*OVERSAMPLENR),864}, - {(21*OVERSAMPLENR),300}, - {(25*OVERSAMPLENR),290}, - {(29*OVERSAMPLENR),280}, - {(33*OVERSAMPLENR),270}, - {(39*OVERSAMPLENR),260}, - {(46*OVERSAMPLENR),250}, - {(54*OVERSAMPLENR),240}, - {(64*OVERSAMPLENR),230}, - {(75*OVERSAMPLENR),220}, - {(90*OVERSAMPLENR),210}, - {(107*OVERSAMPLENR),200}, - {(128*OVERSAMPLENR),190}, - {(154*OVERSAMPLENR),180}, - {(184*OVERSAMPLENR),170}, - {(221*OVERSAMPLENR),160}, - {(265*OVERSAMPLENR),150}, - {(316*OVERSAMPLENR),140}, - {(375*OVERSAMPLENR),130}, - {(441*OVERSAMPLENR),120}, - {(513*OVERSAMPLENR),110}, - {(588*OVERSAMPLENR),100}, - {(734*OVERSAMPLENR),80}, - {(856*OVERSAMPLENR),60}, - {(938*OVERSAMPLENR),40}, - {(986*OVERSAMPLENR),20}, - {(1008*OVERSAMPLENR),0}, - {(1018*OVERSAMPLENR),-20} + {1*OVERSAMPLENR,864}, + {21*OVERSAMPLENR,300}, + {25*OVERSAMPLENR,290}, + {29*OVERSAMPLENR,280}, + {33*OVERSAMPLENR,270}, + {39*OVERSAMPLENR,260}, + {46*OVERSAMPLENR,250}, + {54*OVERSAMPLENR,240}, + {64*OVERSAMPLENR,230}, + {75*OVERSAMPLENR,220}, + {90*OVERSAMPLENR,210}, + {107*OVERSAMPLENR,200}, + {128*OVERSAMPLENR,190}, + {154*OVERSAMPLENR,180}, + {184*OVERSAMPLENR,170}, + {221*OVERSAMPLENR,160}, + {265*OVERSAMPLENR,150}, + {316*OVERSAMPLENR,140}, + {375*OVERSAMPLENR,130}, + {441*OVERSAMPLENR,120}, + {513*OVERSAMPLENR,110}, + {588*OVERSAMPLENR,100}, + {734*OVERSAMPLENR,80}, + {856*OVERSAMPLENR,60}, + {938*OVERSAMPLENR,40}, + {986*OVERSAMPLENR,20}, + {1008*OVERSAMPLENR,0}, + {1018*OVERSAMPLENR,-20} }; #endif +#if (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor -#if THERMISTORHEATER == 1 -#define NUMTEMPS NUMTEMPS_1 -#define temptable temptable_1 -#elif THERMISTORHEATER == 2 -#define NUMTEMPS NUMTEMPS_2 -#define temptable temptable_2 -#elif THERMISTORHEATER == 3 -#define NUMTEMPS NUMTEMPS_3 -#define temptable temptable_3 -#else -#error No heater thermistor table specified +#define NUMTEMPS_4 20 +short temptable_4[NUMTEMPS_4][2] = { + {1*OVERSAMPLENR, 430}, + {54*OVERSAMPLENR, 137}, + {107*OVERSAMPLENR, 107}, + {160*OVERSAMPLENR, 91}, + {213*OVERSAMPLENR, 80}, + {266*OVERSAMPLENR, 71}, + {319*OVERSAMPLENR, 64}, + {372*OVERSAMPLENR, 57}, + {425*OVERSAMPLENR, 51}, + {478*OVERSAMPLENR, 46}, + {531*OVERSAMPLENR, 41}, + {584*OVERSAMPLENR, 35}, + {637*OVERSAMPLENR, 30}, + {690*OVERSAMPLENR, 25}, + {743*OVERSAMPLENR, 20}, + {796*OVERSAMPLENR, 14}, + {849*OVERSAMPLENR, 7}, + {902*OVERSAMPLENR, 0}, + {955*OVERSAMPLENR, -11}, + {1008*OVERSAMPLENR, -35} +}; +#endif + +#if (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) + +#define NUMTEMPS_5 61 +const short temptable_5[NUMTEMPS_5][2] = { +{1*OVERSAMPLENR, 713}, +{18*OVERSAMPLENR, 316}, +{35*OVERSAMPLENR, 266}, +{52*OVERSAMPLENR, 239}, +{69*OVERSAMPLENR, 221}, +{86*OVERSAMPLENR, 208}, +{103*OVERSAMPLENR, 197}, +{120*OVERSAMPLENR, 188}, +{137*OVERSAMPLENR, 181}, +{154*OVERSAMPLENR, 174}, +{171*OVERSAMPLENR, 169}, +{188*OVERSAMPLENR, 163}, +{205*OVERSAMPLENR, 159}, +{222*OVERSAMPLENR, 154}, +{239*OVERSAMPLENR, 150}, +{256*OVERSAMPLENR, 147}, +{273*OVERSAMPLENR, 143}, +{290*OVERSAMPLENR, 140}, +{307*OVERSAMPLENR, 136}, +{324*OVERSAMPLENR, 133}, +{341*OVERSAMPLENR, 130}, +{358*OVERSAMPLENR, 128}, +{375*OVERSAMPLENR, 125}, +{392*OVERSAMPLENR, 122}, +{409*OVERSAMPLENR, 120}, +{426*OVERSAMPLENR, 117}, +{443*OVERSAMPLENR, 115}, +{460*OVERSAMPLENR, 112}, +{477*OVERSAMPLENR, 110}, +{494*OVERSAMPLENR, 108}, +{511*OVERSAMPLENR, 106}, +{528*OVERSAMPLENR, 103}, +{545*OVERSAMPLENR, 101}, +{562*OVERSAMPLENR, 99}, +{579*OVERSAMPLENR, 97}, +{596*OVERSAMPLENR, 95}, +{613*OVERSAMPLENR, 92}, +{630*OVERSAMPLENR, 90}, +{647*OVERSAMPLENR, 88}, +{664*OVERSAMPLENR, 86}, +{681*OVERSAMPLENR, 84}, +{698*OVERSAMPLENR, 81}, +{715*OVERSAMPLENR, 79}, +{732*OVERSAMPLENR, 77}, +{749*OVERSAMPLENR, 75}, +{766*OVERSAMPLENR, 72}, +{783*OVERSAMPLENR, 70}, +{800*OVERSAMPLENR, 67}, +{817*OVERSAMPLENR, 64}, +{834*OVERSAMPLENR, 61}, +{851*OVERSAMPLENR, 58}, +{868*OVERSAMPLENR, 55}, +{885*OVERSAMPLENR, 52}, +{902*OVERSAMPLENR, 48}, +{919*OVERSAMPLENR, 44}, +{936*OVERSAMPLENR, 40}, +{953*OVERSAMPLENR, 34}, +{970*OVERSAMPLENR, 28}, +{987*OVERSAMPLENR, 20}, +{1004*OVERSAMPLENR, 8}, +{1021*OVERSAMPLENR, 0} +}; +#endif + +#if (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor +#define NUMTEMPS_6 36 +const short temptable_6[NUMTEMPS_6][2] = { + {28*OVERSAMPLENR, 250}, + {31*OVERSAMPLENR, 245}, + {35*OVERSAMPLENR, 240}, + {39*OVERSAMPLENR, 235}, + {42*OVERSAMPLENR, 230}, + {44*OVERSAMPLENR, 225}, + {49*OVERSAMPLENR, 220}, + {53*OVERSAMPLENR, 215}, + {62*OVERSAMPLENR, 210}, + {73*OVERSAMPLENR, 205}, + {72*OVERSAMPLENR, 200}, + {94*OVERSAMPLENR, 190}, + {102*OVERSAMPLENR, 185}, + {116*OVERSAMPLENR, 170}, + {143*OVERSAMPLENR, 160}, + {183*OVERSAMPLENR, 150}, + {223*OVERSAMPLENR, 140}, + {270*OVERSAMPLENR, 130}, + {318*OVERSAMPLENR, 120}, + {383*OVERSAMPLENR, 110}, + {413*OVERSAMPLENR, 105}, + {439*OVERSAMPLENR, 100}, + {484*OVERSAMPLENR, 95}, + {513*OVERSAMPLENR, 90}, + {607*OVERSAMPLENR, 80}, + {664*OVERSAMPLENR, 70}, + {781*OVERSAMPLENR, 60}, + {810*OVERSAMPLENR, 55}, + {849*OVERSAMPLENR, 50}, + {914*OVERSAMPLENR, 45}, + {914*OVERSAMPLENR, 40}, + {935*OVERSAMPLENR, 35}, + {954*OVERSAMPLENR, 30}, + {970*OVERSAMPLENR, 25}, + {978*OVERSAMPLENR, 22}, + {1008*OVERSAMPLENR, 3} +}; +#endif + +#if (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 +#define NUMTEMPS_7 54 +const short temptable_7[NUMTEMPS_7][2] = { + {46*OVERSAMPLENR, 270}, + {50*OVERSAMPLENR, 265}, + {54*OVERSAMPLENR, 260}, + {58*OVERSAMPLENR, 255}, + {62*OVERSAMPLENR, 250}, + {67*OVERSAMPLENR, 245}, + {72*OVERSAMPLENR, 240}, + {79*OVERSAMPLENR, 235}, + {85*OVERSAMPLENR, 230}, + {91*OVERSAMPLENR, 225}, + {99*OVERSAMPLENR, 220}, + {107*OVERSAMPLENR, 215}, + {116*OVERSAMPLENR, 210}, + {126*OVERSAMPLENR, 205}, + {136*OVERSAMPLENR, 200}, + {149*OVERSAMPLENR, 195}, + {160*OVERSAMPLENR, 190}, + {175*OVERSAMPLENR, 185}, + {191*OVERSAMPLENR, 180}, + {209*OVERSAMPLENR, 175}, + {224*OVERSAMPLENR, 170}, + {246*OVERSAMPLENR, 165}, + {267*OVERSAMPLENR, 160}, + {293*OVERSAMPLENR, 155}, + {316*OVERSAMPLENR, 150}, + {340*OVERSAMPLENR, 145}, + {364*OVERSAMPLENR, 140}, + {396*OVERSAMPLENR, 135}, + {425*OVERSAMPLENR, 130}, + {460*OVERSAMPLENR, 125}, + {489*OVERSAMPLENR, 120}, + {526*OVERSAMPLENR, 115}, + {558*OVERSAMPLENR, 110}, + {591*OVERSAMPLENR, 105}, + {628*OVERSAMPLENR, 100}, + {660*OVERSAMPLENR, 95}, + {696*OVERSAMPLENR, 90}, + {733*OVERSAMPLENR, 85}, + {761*OVERSAMPLENR, 80}, + {794*OVERSAMPLENR, 75}, + {819*OVERSAMPLENR, 70}, + {847*OVERSAMPLENR, 65}, + {870*OVERSAMPLENR, 60}, + {892*OVERSAMPLENR, 55}, + {911*OVERSAMPLENR, 50}, + {929*OVERSAMPLENR, 45}, + {944*OVERSAMPLENR, 40}, + {959*OVERSAMPLENR, 35}, + {971*OVERSAMPLENR, 30}, + {981*OVERSAMPLENR, 25}, + {989*OVERSAMPLENR, 20}, + {994*OVERSAMPLENR, 15}, + {1001*OVERSAMPLENR, 10}, + {1005*OVERSAMPLENR, 5} +}; #endif + +#if THERMISTORHEATER_1 == 1 +#define NUMTEMPS_HEATER_1 NUMTEMPS_1 +#define temptable_1 temptable_1 +#elif THERMISTORHEATER_1 == 2 +#define NUMTEMPS_HEATER_1 NUMTEMPS_2 +#define temptable_1 temptable_2 +#elif THERMISTORHEATER_1 == 3 +#define NUMTEMPS_HEATER_1 NUMTEMPS_3 +#define temptable_1 temptable_3 +#elif THERMISTORHEATER_1 == 4 +#define NUMTEMPS_HEATER_1 NUMTEMPS_4 +#define temptable_1 temptable_4 +#elif THERMISTORHEATER_1 == 5 +#define NUMTEMPS_HEATER_1 NUMTEMPS_5 +#define temptable_1 temptable_5 +#elif THERMISTORHEATER_1 == 6 +#define NUMTEMPS_HEATER_1 NUMTEMPS_6 +#define temptable_1 temptable_6 +#elif THERMISTORHEATER_1 == 7 +#define NUMTEMPS_HEATER_1 NUMTEMPS_7 +#define temptable_1 temptable_7 +#elif defined HEATER_1_USES_THERMISTOR +#error No heater 1 thermistor table specified +#endif + +#if THERMISTORHEATER_2 == 1 +#define NUMTEMPS_HEATER_2 NUMTEMPS_1 +#define temptable_2 temptable_1 +#elif THERMISTORHEATER_2 == 2 +#define NUMTEMPS_HEATER_2 NUMTEMPS_2 +#define temptable_2 temptable_2 +#elif THERMISTORHEATER_2 == 3 +#define NUMTEMPS_HEATER_2 NUMTEMPS_3 +#define temptable_2 temptable_3 +#elif THERMISTORHEATER_2 == 4 +#define NUMTEMPS_HEATER_2 NUMTEMPS_4 +#define temptable_2 temptable_4 +#elif THERMISTORHEATER_2 == 5 +#define NUMTEMPS_HEATER_2 NUMTEMPS_5 +#define temptable_2 temptable_5 +#elif THERMISTORHEATER_2 == 6 +#define NUMTEMPS_HEATER_2 NUMTEMPS_6 +#define temptable_2 temptable_6 +#elif THERMISTORHEATER_2 == 7 +#define NUMTEMPS_HEATER22 NUMTEMPS_7 +#define temptable_2 temptable_7 +#elif defined HEATER_2_USES_THERMISTOR +#error No heater 2 thermistor table specified +#endif + + +#if THERMISTORBED == 1 +#define BNUMTEMPS NUMTEMPS_1 +#define bedtemptable temptable_1 +#elif THERMISTORBED == 2 +#define BNUMTEMPS NUMTEMPS_2 +#define bedtemptable temptable_2 +#elif THERMISTORBED == 3 +#define BNUMTEMPS NUMTEMPS_3 +#define bedtemptable temptable_3 +#elif THERMISTORBED == 4 +#define BNUMTEMPS NUMTEMPS_4 +#define bedtemptable temptable_4 +#elif THERMISTORBED == 5 +#define BNUMTEMPS NUMTEMPS_5 +#define bedtemptable temptable_5 +#elif THERMISTORBED == 6 +#define BNUMTEMPS NUMTEMPS_6 +#define bedtemptable temptable_6 +#elif THERMISTORBED == 7 +#define BNUMTEMPS NUMTEMPS_7 +#define bedtemptable temptable_7 +#elif defined BED_USES_THERMISTOR +#error No bed thermistor table specified +#endif + #endif //THERMISTORTABLES_H_ + From 95d3d9847c4d78c068f622c7d24dc716263d9b73 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 4 Nov 2011 23:38:25 +0100 Subject: [PATCH 014/430] M109 now equal to sprinter --- Marlin/Configuration.h | 7 +++++ Marlin/Marlin.pde | 68 ++++++++++++++++++++++++++++-------------- 2 files changed, 52 insertions(+), 23 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 36b5f7b67..b8c41301c 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -146,9 +146,16 @@ const int dropsegments=5; //everything with this number of steps will be ignore #define WATCHDOG_TIMEOUT 4 + +//// Experimental watchdog and minimal temp +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 //#define WATCHPERIOD 5000 //5 seconds +// Actual temperature must be close to target for this long before M109 returns success +//#define TEMP_RESIDENCY_TIME 20 // (seconds) +//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one + //// The minimal temperature defines the temperature below which the heater will not be enabled #define MINTEMP 5 #define BED_MINTEMP 5 diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 6922b8a1f..8c8fe4bc2 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -780,7 +780,7 @@ inline void process_commands() #ifdef WATCHPERIOD if(target_raw[0] > current_raw[0]){ watchmillis = max(1,millis()); - watch_raw[0] = current_raw[0]; + watch_raw = current_raw[0]; }else{ watchmillis = 0; } @@ -820,32 +820,54 @@ inline void process_commands() #endif return; //break; - case 109: // M109 - Wait for extruder heater to reach target. - LCD_MESSAGE("Heating..."); - if (code_seen('S')) target_raw[0] = temp2analog(code_value()); -#ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[0]>current_raw[0]){ + case 109: {// M109 - Wait for extruder heater to reach target. + LCD_MESSAGE("Heating..."); + if (code_seen('S')) target_raw[0] = temp2analog(code_value()); + #ifdef PIDTEMP + pid_setpoint = code_value(); + #endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[0]>current_raw[0]) { watchmillis = max(1,millis()); - watch_raw[0] = current_raw[0]; - }else{ + watch_raw = current_raw[0]; + } else { watchmillis = 0; - } - #endif - codenum = millis(); - starttime=millis(); - while(current_raw[0] < target_raw[0]) { - if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up. - Serial.print("T:"); - Serial.println( analog2temp(current_raw[0]) ); - codenum = millis(); } - LCD_STATUS; - manage_heater(); + #endif //WATCHPERIOD + codenum = millis(); + + /* See if we are heating up or cooling down */ + bool target_direction = (current_raw[0] < target_raw[0]); // true if heating, false if cooling + + #ifdef TEMP_RESIDENCY_TIME + long residencyStart; + residencyStart = -1; + /* continue to loop until we have reached the target temp + _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ + while((target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0])) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + #else + while ( target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0]) ) { + #endif //TEMP_RESIDENCY_TIME + if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down + Serial.print("T:"); + Serial.println( analog2temp(current_raw[0]) ); + codenum = millis(); + } + manage_heater(); + LCD_STATUS; + #ifdef TEMP_RESIDENCY_TIME + /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time + or when current temp falls outside the hysteresis after target temp was reached */ + if ((residencyStart == -1 && target_direction && current_raw[0] >= target_raw[0]) || + (residencyStart == -1 && !target_direction && current_raw[0] <= target_raw[0]) || + (residencyStart > -1 && labs(analog2temp(current_raw[0]) - analog2temp(target_raw[0])) > TEMP_HYSTERESIS) ) { + residencyStart = millis(); + } + #endif //TEMP_RESIDENCY_TIME + } + LCD_MESSAGE("Marlin ready."); } - LCD_MESSAGE("UltiMarlin ready."); break; case 190: // M190 - Wait bed for heater to reach target. #if TEMP_1_PIN > -1 From d7c4f0780b41507ae6a40cc46efb59c526e58437 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 5 Nov 2011 11:18:52 +0100 Subject: [PATCH 015/430] Added M42, M80 and M81 --- Marlin/Marlin.pde | 38 +++++++++++++++++++++++++++++++++++++- Marlin/pins.h | 4 ++++ 2 files changed, 41 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 8c8fe4bc2..cb55131df 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -69,7 +69,6 @@ char version_string[] = "1.0.0 Alpha 1"; // M114 - Display current position //Custom M Codes -// M80 - Turn on Power Supply // M20 - List SD card // M21 - Init SD card // M22 - Release SD card @@ -80,6 +79,8 @@ char version_string[] = "1.0.0 Alpha 1"; // M27 - Report SD print status // M28 - Start SD write (M28 filename.g) // M29 - Stop SD write +// M42 - Change pin status via gcode +// M80 - Turn on Power Supply // M81 - Turn off Power Supply // M82 - Set E codes absolute (default) // M83 - Set E codes relative while in Absolute Coordinates (G90) mode @@ -142,6 +143,8 @@ extern float HeaterPower; #include "EEPROM.h" +const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 + float tt = 0, bt = 0; #ifdef WATCHPERIOD int watch_raw = -1000; @@ -772,6 +775,31 @@ inline void process_commands() } break; #endif //SDSUPPORT + case 42: //M42 -Change pin status via gcode + if (code_seen('S')) + { + int pin_status = code_value(); + if (code_seen('P') && pin_status >= 0 && pin_status <= 255) + { + int pin_number = code_value(); + for(int i = 0; i < sizeof(sensitive_pins); i++) + { + if (sensitive_pins[i] == pin_number) + { + pin_number = -1; + break; + } + } + + if (pin_number > -1) + { + pinMode(pin_number, OUTPUT); + digitalWrite(pin_number, pin_status); + analogWrite(pin_number, pin_status); + } + } + } + break; case 104: // M104 if (code_seen('S')) target_raw[0] = temp2analog(code_value()); #ifdef PIDTEMP @@ -907,6 +935,14 @@ inline void process_commands() WRITE(FAN_PIN,LOW); analogWrite(FAN_PIN, 0); break; +#endif +#if (PS_ON_PIN > -1) + case 80: // M80 - ATX Power On + SET_OUTPUT(PS_ON_PIN); //GND + break; + case 81: // M81 - ATX Power Off + SET_INPUT(PS_ON_PIN); //Floating + break; #endif case 82: axis_relative_modes[3] = false; diff --git a/Marlin/pins.h b/Marlin/pins.h index 795d8bdbb..1e2fd65fd 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -563,4 +563,8 @@ #ifndef KNOWN_BOARD #error Unknown MOTHERBOARD value in configuration.h #endif + +//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! +#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} + #endif From 00674af3a82e6b6b517a12ae3e77803df4f4892d Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 5 Nov 2011 14:13:20 +0100 Subject: [PATCH 016/430] merge from the branch bkubicek/Marlin/zalmmerge --- Marlin/Configuration.h | 463 ++-- Marlin/{EEPROM.h => EEPROMwrite.h} | 252 +-- Marlin/Makefile | 508 +++-- Marlin/Marlin.h | 165 +- Marlin/Marlin.pde | 2466 ++++++++++----------- Marlin/fastio.h | 10 +- Marlin/lcd.h | 10 - Marlin/lcd.pde | 1 - Marlin/planner.cpp | 18 +- Marlin/planner.h | 182 +- Marlin/stepper.cpp | 2 +- Marlin/stepper.h | 84 +- Marlin/temperature.cpp | 29 +- Marlin/temperature.h | 113 +- Marlin/thermistortables.h | 180 +- Marlin/ultralcd.h | 2 +- Marlin/ultralcd.pde | 3186 ++++++++++++++-------------- README | 64 +- README.md | 69 + merging still needs.txt | 58 + 20 files changed, 4030 insertions(+), 3832 deletions(-) rename Marlin/{EEPROM.h => EEPROMwrite.h} (94%) delete mode 100644 Marlin/lcd.h delete mode 100644 Marlin/lcd.pde create mode 100644 README.md create mode 100644 merging still needs.txt diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b8c41301c..0df1ba6fe 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,220 +1,243 @@ -#ifndef CONFIGURATION_H -#define CONFIGURATION_H - -//#define DEBUG_STEPS - -// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration - -//// The following define selects which electronics board you have. Please choose the one that matches your setup -// MEGA/RAMPS up to 1.2 = 3, -// RAMPS 1.3 = 33 -// Gen6 = 5, -// Sanguinololu 1.2 and above = 62 -// Ultimaker = 7, -#define MOTHERBOARD 7 -//#define MOTHERBOARD 5 - - -//// Thermistor settings: -// 1 is 100k thermistor -// 2 is 200k thermistor -// 3 is mendel-parts thermistor -// 4 is 10k thermistor -// 5 is ParCan supplied 104GT-2 100K -// 6 is EPCOS 100k -// 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define THERMISTORHEATER_1 3 -#define THERMISTORHEATER_2 3 -#define THERMISTORBED 3 - -//#define HEATER_1_USES_THERMISTOR -//#define HEATER_2_USES_THERMISTOR -#define HEATER_1_USES_AD595 -//#define HEATER_2_USES_AD595 - -// Select one of these only to define how the bed temp is read. -//#define BED_USES_THERMISTOR -//#define BED_USES_AD595 - -#define HEATER_CHECK_INTERVAL 50 -#define BED_CHECK_INTERVAL 5000 - - -//// Endstop Settings -#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors -// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false - -// This determines the communication speed of the printer -//#define BAUDRATE 250000 -#define BAUDRATE 115200 -//#define BAUDRATE 230400 - -// Comment out (using // at the start of the line) to disable SD support: - -// #define ULTRA_LCD //any lcd -#define LCD_WIDTH 16 -#define LCD_HEIGHT 2 - -//#define ULTIPANEL -#ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel - #define SDSUPPORT - #define ULTRA_LCD - #define LCD_WIDTH 20 -#define LCD_HEIGHT 4 -#endif - - -//#define SDSUPPORT // Enable SD Card Support in Hardware Console - - - -const int dropsegments=5; //everything with this number of steps will be ignored as move - -//// ADVANCED SETTINGS - to tweak parameters - -#include "thermistortables.h" - -// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 -#define X_ENABLE_ON 0 -#define Y_ENABLE_ON 0 -#define Z_ENABLE_ON 0 -#define E_ENABLE_ON 0 - -// Disables axis when it's not being used. -#define DISABLE_X false -#define DISABLE_Y false -#define DISABLE_Z false -#define DISABLE_E false - -// Inverting axis direction -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false - -//// ENDSTOP SETTINGS: -// Sets direction of endstops when homing; 1=MAX, -1=MIN -#define X_HOME_DIR -1 -#define Y_HOME_DIR -1 -#define Z_HOME_DIR -1 - -#define min_software_endstops false //If true, axis won't move to coordinates less than zero. -#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 210 -#define Y_MAX_LENGTH 210 -#define Z_MAX_LENGTH 210 - -//// MOVEMENT SETTINGS -#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -//note: on bernhards ultimaker 200 200 12 are working well. -#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds -//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. -//!!!!!!Use only if you know that your printer works at the maximum declared speeds. -// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze -#define TRAVELING_AT_MAXSPEED -#define AXIS_RELATIVE_MODES {false, false, false, false} - -#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) - -// default settings - -#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker -#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} -#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. - -#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts - -#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 10 - -// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. -#define DEFAULT_MINSEGMENTTIME 20000 -#define DEFAULT_XYJERK 30.0*60 -#define DEFAULT_ZJERK 10.0*60 - - -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -//this enables the watchdog interrupt. -#define USE_WATCHDOG -//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: -#define RESET_MANUAL - -#define WATCHDOG_TIMEOUT 4 - - - -//// Experimental watchdog and minimal temp -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 -//#define WATCHPERIOD 5000 //5 seconds - -// Actual temperature must be close to target for this long before M109 returns success -//#define TEMP_RESIDENCY_TIME 20 // (seconds) -//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one - -//// The minimal temperature defines the temperature below which the heater will not be enabled -#define MINTEMP 5 -#define BED_MINTEMP 5 - - -// When temperature exceeds max temp, your heater will be switched off. -// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! -// You should use MINTEMP for thermistor short/failure protection. -#define MAXTEMP 275 -#define BED_MAXTEMP 150 - -/// PID settings: -// Uncomment the following line to enable PID support. -//#define SMOOTHING -//#define SMOOTHFACTOR 5.0 -//float current_raw_average=0; - -#define PIDTEMP -#ifdef PIDTEMP -//#define PID_DEBUG // Sends debug data to the serial port. -//#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % -#define PID_MAX 255 // limits current to nozzle -#define PID_INTEGRAL_DRIVE_MAX 255 -#define PID_dT 0.10 // 100ms sample time -#define DEFAULT_Kp 20.0 -#define DEFAULT_Ki 1.5*PID_dT -#define DEFAULT_Kd 80/PID_dT -#define DEFAULT_Kc 0 -#endif // PIDTEMP - - -// extruder advance constant (s2/mm3) -// -// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 -// -// hooke's law says: force = k * distance -// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant -// so: v ^ 2 is proportional to number of steps we advance the extruder -//#define ADVANCE - -#ifdef ADVANCE -#define EXTRUDER_ADVANCE_K .3 - -#define D_FILAMENT 1.7 -#define STEPS_MM_E 65 -#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) -#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) - -#endif // ADVANCE - -#if defined SDSUPPORT -// The number of linear motions that can be in the plan at any give time. - #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller -#else - #define BLOCK_BUFFER_SIZE 16 // maximize block buffer -#endif - -#ifdef SIMPLE_LCD - #define BLOCK_BUFFER_SIZE 16 // A little less buffer for just a simple LCD -#endif - -#endif +#ifndef CONFIGURATION_H +#define CONFIGURATION_H + +//#define DEBUG_STEPS + +// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration + +//// The following define selects which electronics board you have. Please choose the one that matches your setup +// MEGA/RAMPS up to 1.2 = 3, +// RAMPS 1.3 = 33 +// Gen6 = 5, +// Sanguinololu 1.2 and above = 62 +// Ultimaker = 7, +#define MOTHERBOARD 7 +//#define MOTHERBOARD 5 + + +//// Thermistor settings: +// 1 is 100k thermistor +// 2 is 200k thermistor +// 3 is mendel-parts thermistor +// 4 is 10k thermistor +// 5 is ParCan supplied 104GT-2 100K +// 6 is EPCOS 100k +// 7 is 100k Honeywell thermistor 135-104LAG-J01 +#define THERMISTORHEATER_1 3 +#define THERMISTORHEATER_2 3 +#define THERMISTORBED 3 + +//#define HEATER_1_USES_THERMISTOR +//#define HEATER_2_USES_THERMISTOR +#define HEATER_1_USES_AD595 +//#define HEATER_2_USES_AD595 + +// Select one of these only to define how the bed temp is read. +//#define BED_USES_THERMISTOR +//#define BED_USES_AD595 + +#define HEATER_CHECK_INTERVAL 50 +#define BED_CHECK_INTERVAL 5000 + + +//// Endstop Settings +#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors +// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. +const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false + +// This determines the communication speed of the printer +//#define BAUDRATE 250000 +#define BAUDRATE 115200 +//#define BAUDRATE 230400 + +// Comment out (using // at the start of the line) to disable SD support: + +// #define ULTRA_LCD //any lcd + + +#define ULTIPANEL +#ifdef ULTIPANEL + //#define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #define LCD_WIDTH 20 +#define LCD_HEIGHT 4 +#else //no panel but just lcd + #ifdef ULTRA_LCD + #define LCD_WIDTH 16 + #define LCD_HEIGHT 2 + #endif +#endif + + +//#define SDSUPPORT // Enable SD Card Support in Hardware Console + + + +const int dropsegments=5; //everything with this number of steps will be ignored as move + +//// ADVANCED SETTINGS - to tweak parameters + +#include "thermistortables.h" + +// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 +#define X_ENABLE_ON 0 +#define Y_ENABLE_ON 0 +#define Z_ENABLE_ON 0 +#define E_ENABLE_ON 0 + +// Disables axis when it's not being used. +#define DISABLE_X false +#define DISABLE_Y false +#define DISABLE_Z false +#define DISABLE_E false + +// Inverting axis direction +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false + +//// ENDSTOP SETTINGS: +// Sets direction of endstops when homing; 1=MAX, -1=MIN +#define X_HOME_DIR -1 +#define Y_HOME_DIR -1 +#define Z_HOME_DIR -1 + +#define min_software_endstops false //If true, axis won't move to coordinates less than zero. +#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 210 +#define Y_MAX_LENGTH 210 +#define Z_MAX_LENGTH 210 + +//// MOVEMENT SETTINGS +#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E +//note: on bernhards ultimaker 200 200 12 are working well. +#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds +//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. +//!!!!!!Use only if you know that your printer works at the maximum declared speeds. +// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze +#define TRAVELING_AT_MAXSPEED +#define AXIS_RELATIVE_MODES {false, false, false, false} + +#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) + +// default settings + +#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker +#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} +#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. + +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts + +#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 10 + +// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. +#define DEFAULT_MINSEGMENTTIME 20000 +#define DEFAULT_XYJERK 30.0*60 +#define DEFAULT_ZJERK 10.0*60 + + +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +//this enables the watchdog interrupt. +#define USE_WATCHDOG +//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +#define RESET_MANUAL + +#define WATCHDOG_TIMEOUT 4 + + + +//// Experimental watchdog and minimal temp +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 +//#define WATCHPERIOD 5000 //5 seconds + +// Actual temperature must be close to target for this long before M109 returns success +//#define TEMP_RESIDENCY_TIME 20 // (seconds) +//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one + +//// The minimal temperature defines the temperature below which the heater will not be enabled +#define MINTEMP 5 +#define BED_MINTEMP 5 + + +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define MAXTEMP 275 +#define BED_MAXTEMP 150 + + + + + + + +#define PIDTEMP +#ifdef PIDTEMP + /// PID settings: + // Uncomment the following line to enable PID support. + //#define SMOOTHING + //#define SMOOTHFACTOR 5.0 + //float current_raw_average=0; + #define K1 0.95 //smoothing of the PID + //#define PID_DEBUG // Sends debug data to the serial port. + //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % + #define PID_MAX 255 // limits current to nozzle + #define PID_INTEGRAL_DRIVE_MAX 255 + #define PID_dT 0.1 + //machine with red silicon: 1950:45 second ; with fan fully blowin 3000:47 + + #define PID_CRITIAL_GAIN 3000 + #define PID_SWING_AT_CRITIAL 45 //seconds + #define PIDIADD 5 + /* + //PID according to Ziegler-Nichols method + float Kp = 0.6*PID_CRITIAL_GAIN; + float Ki =PIDIADD+2*Kp/PID_SWING_AT_CRITIAL*PID_dT; + float Kd = Kp*PID_SWING_AT_CRITIAL/8./PID_dT; + */ + //PI according to Ziegler-Nichols method + #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) + #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (0) + + #define PID_ADD_EXTRUSION_RATE + #ifdef PID_ADD_EXTRUSION_RATE + #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) + #endif +#endif // PIDTEMP + +// extruder advance constant (s2/mm3) +// +// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 +// +// hooke's law says: force = k * distance +// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant +// so: v ^ 2 is proportional to number of steps we advance the extruder +//#define ADVANCE + +#ifdef ADVANCE +#define EXTRUDER_ADVANCE_K .3 + +#define D_FILAMENT 1.7 +#define STEPS_MM_E 65 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + +#endif // ADVANCE + +// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, e.g. 8,16,32 +#if defined SDSUPPORT +// The number of linear motions that can be in the plan at any give time. + #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller +#else + #define BLOCK_BUFFER_SIZE 16 // maximize block buffer +#endif + + +#endif diff --git a/Marlin/EEPROM.h b/Marlin/EEPROMwrite.h similarity index 94% rename from Marlin/EEPROM.h rename to Marlin/EEPROMwrite.h index 0390d94e4..2247e2f52 100644 --- a/Marlin/EEPROM.h +++ b/Marlin/EEPROMwrite.h @@ -1,123 +1,129 @@ - -#include "planner.h" -#include "temperature.h" - -//====================================================================================== -template int EEPROM_writeAnything(int &ee, const T& value) -{ - const byte* p = (const byte*)(const void*)&value; - int i; - for (i = 0; i < sizeof(value); i++) - EEPROM.write(ee++, *p++); - return i; -} -//====================================================================================== -template int EEPROM_readAnything(int &ee, T& value) -{ - byte* p = (byte*)(void*)&value; - int i; - for (i = 0; i < sizeof(value); i++) - *p++ = EEPROM.read(ee++); - return i; -} -//====================================================================================== - -#define EEPROM_OFFSET 100 - -#define EEPROM_VERSION "V04" // IMPORTANT: Whenever there are changes made to the variables stored in EEPROM - // in the functions below, also increment the version number. This makes sure that - // the default values are used whenever there is a change to the data, to prevent - // wrong data being written to the variables. - // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. -void StoreSettings() { - char ver[4]= "000"; - int i=EEPROM_OFFSET; - EEPROM_writeAnything(i,ver); // invalidate data first - EEPROM_writeAnything(i,axis_steps_per_unit); - EEPROM_writeAnything(i,max_feedrate); - EEPROM_writeAnything(i,max_acceleration_units_per_sq_second); - EEPROM_writeAnything(i,acceleration); - EEPROM_writeAnything(i,retract_acceleration); - EEPROM_writeAnything(i,minimumfeedrate); - EEPROM_writeAnything(i,mintravelfeedrate); - EEPROM_writeAnything(i,minsegmenttime); - EEPROM_writeAnything(i,max_xy_jerk); - EEPROM_writeAnything(i,max_z_jerk); - #ifdef PIDTEMP - EEPROM_writeAnything(i,Kp); - EEPROM_writeAnything(i,Ki); - EEPROM_writeAnything(i,Kd); -#else - EEPROM_writeAnything(i,3000); - EEPROM_writeAnything(i,0); - EEPROM_writeAnything(i,0); -#endif - char ver2[4]=EEPROM_VERSION; - i=EEPROM_OFFSET; - EEPROM_writeAnything(i,ver2); // validate data - ECHOLN("Settings Stored"); - -} - -void RetrieveSettings(bool def=false){ // if def=true, the default values will be used - int i=EEPROM_OFFSET; - char stored_ver[4]; - char ver[4]=EEPROM_VERSION; - EEPROM_readAnything(i,stored_ver); //read stored version -// ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); - if ((!def)&&(strncmp(ver,stored_ver,3)==0)) { // version number match - EEPROM_readAnything(i,axis_steps_per_unit); - EEPROM_readAnything(i,max_feedrate); - EEPROM_readAnything(i,max_acceleration_units_per_sq_second); - EEPROM_readAnything(i,acceleration); - EEPROM_readAnything(i,retract_acceleration); - EEPROM_readAnything(i,minimumfeedrate); - EEPROM_readAnything(i,mintravelfeedrate); - EEPROM_readAnything(i,minsegmenttime); - EEPROM_readAnything(i,max_xy_jerk); - EEPROM_readAnything(i,max_z_jerk); -#ifndef PIDTEMP - float Kp,Ki,Kd; -#endif - EEPROM_readAnything(i,Kp); - EEPROM_readAnything(i,Ki); - EEPROM_readAnything(i,Kd); - - ECHOLN("Stored settings retreived:"); - } - else { - float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; - float tmp2[]=DEFAULT_MAX_FEEDRATE; - long tmp3[]=DEFAULT_MAX_ACCELERATION; - for (int i=0;i<4;i++) { - axis_steps_per_unit[i]=tmp1[i]; - max_feedrate[i]=tmp2[i]; - max_acceleration_units_per_sq_second[i]=tmp3[i]; - } - acceleration=DEFAULT_ACCELERATION; - retract_acceleration=DEFAULT_RETRACT_ACCELERATION; - minimumfeedrate=DEFAULT_MINIMUMFEEDRATE; - minsegmenttime=DEFAULT_MINSEGMENTTIME; - mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; - max_xy_jerk=DEFAULT_XYJERK; - max_z_jerk=DEFAULT_ZJERK; - ECHOLN("Using Default settings:"); - } - ECHOLN("Steps per unit:"); - ECHOLN(" M92 X" <<_FLOAT(axis_steps_per_unit[0],3) << " Y" << _FLOAT(axis_steps_per_unit[1],3) << " Z" << _FLOAT(axis_steps_per_unit[2],3) << " E" << _FLOAT(axis_steps_per_unit[3],3)); - ECHOLN("Maximum feedrates (mm/s):"); - ECHOLN(" M203 X" <<_FLOAT(max_feedrate[0]/60,2)<<" Y" << _FLOAT(max_feedrate[1]/60,2) << " Z" << _FLOAT(max_feedrate[2]/60,2) << " E" << _FLOAT(max_feedrate[3]/60,2)); - ECHOLN("Maximum Acceleration (mm/s2):"); - ECHOLN(" M201 X" <<_FLOAT(max_acceleration_units_per_sq_second[0],0) << " Y" << _FLOAT(max_acceleration_units_per_sq_second[1],0) << " Z" << _FLOAT(max_acceleration_units_per_sq_second[2],0) << " E" << _FLOAT(max_acceleration_units_per_sq_second[3],0)); - ECHOLN("Acceleration: S=acceleration, T=retract acceleration"); - ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); - ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); - ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); -#ifdef PIDTEMP - ECHOLN("PID settings:"); - ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); -#endif - -} - - +#ifndef __EEPROMH +#define __EEPROMH +#include "planner.h" +#include "temperature.h" +#include +#include "Marlin.h" +#include "streaming.h" + +//====================================================================================== +template int EEPROM_writeAnything(int &ee, const T& value) +{ + const byte* p = (const byte*)(const void*)&value; + int i; + for (i = 0; i < (int)sizeof(value); i++) + EEPROM.write(ee++, *p++); + return i; +} +//====================================================================================== +template int EEPROM_readAnything(int &ee, T& value) +{ + byte* p = (byte*)(void*)&value; + int i; + for (i = 0; i < (int)sizeof(value); i++) + *p++ = EEPROM.read(ee++); + return i; +} +//====================================================================================== + +#define EEPROM_OFFSET 100 + +#define EEPROM_VERSION "V04" // IMPORTANT: Whenever there are changes made to the variables stored in EEPROM + // in the functions below, also increment the version number. This makes sure that + // the default values are used whenever there is a change to the data, to prevent + // wrong data being written to the variables. + // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. +void StoreSettings() { + char ver[4]= "000"; + int i=EEPROM_OFFSET; + EEPROM_writeAnything(i,ver); // invalidate data first + EEPROM_writeAnything(i,axis_steps_per_unit); + EEPROM_writeAnything(i,max_feedrate); + EEPROM_writeAnything(i,max_acceleration_units_per_sq_second); + EEPROM_writeAnything(i,acceleration); + EEPROM_writeAnything(i,retract_acceleration); + EEPROM_writeAnything(i,minimumfeedrate); + EEPROM_writeAnything(i,mintravelfeedrate); + EEPROM_writeAnything(i,minsegmenttime); + EEPROM_writeAnything(i,max_xy_jerk); + EEPROM_writeAnything(i,max_z_jerk); + #ifdef PIDTEMP + EEPROM_writeAnything(i,Kp); + EEPROM_writeAnything(i,Ki); + EEPROM_writeAnything(i,Kd); +#else + EEPROM_writeAnything(i,3000); + EEPROM_writeAnything(i,0); + EEPROM_writeAnything(i,0); +#endif + char ver2[4]=EEPROM_VERSION; + i=EEPROM_OFFSET; + EEPROM_writeAnything(i,ver2); // validate data + ECHOLN("Settings Stored"); + +} + +void RetrieveSettings(bool def=false){ // if def=true, the default values will be used + int i=EEPROM_OFFSET; + char stored_ver[4]; + char ver[4]=EEPROM_VERSION; + EEPROM_readAnything(i,stored_ver); //read stored version +// ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); + if ((!def)&&(strncmp(ver,stored_ver,3)==0)) { // version number match + EEPROM_readAnything(i,axis_steps_per_unit); + EEPROM_readAnything(i,max_feedrate); + EEPROM_readAnything(i,max_acceleration_units_per_sq_second); + EEPROM_readAnything(i,acceleration); + EEPROM_readAnything(i,retract_acceleration); + EEPROM_readAnything(i,minimumfeedrate); + EEPROM_readAnything(i,mintravelfeedrate); + EEPROM_readAnything(i,minsegmenttime); + EEPROM_readAnything(i,max_xy_jerk); + EEPROM_readAnything(i,max_z_jerk); +#ifndef PIDTEMP + float Kp,Ki,Kd; +#endif + EEPROM_readAnything(i,Kp); + EEPROM_readAnything(i,Ki); + EEPROM_readAnything(i,Kd); + + ECHOLN("Stored settings retreived:"); + } + else { + float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; + float tmp2[]=DEFAULT_MAX_FEEDRATE; + long tmp3[]=DEFAULT_MAX_ACCELERATION; + for (int i=0;i<4;i++) { + axis_steps_per_unit[i]=tmp1[i]; + max_feedrate[i]=tmp2[i]; + max_acceleration_units_per_sq_second[i]=tmp3[i]; + } + acceleration=DEFAULT_ACCELERATION; + retract_acceleration=DEFAULT_RETRACT_ACCELERATION; + minimumfeedrate=DEFAULT_MINIMUMFEEDRATE; + minsegmenttime=DEFAULT_MINSEGMENTTIME; + mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; + max_xy_jerk=DEFAULT_XYJERK; + max_z_jerk=DEFAULT_ZJERK; + ECHOLN("Using Default settings:"); + } + ECHOLN("Steps per unit:"); + ECHOLN(" M92 X" <<_FLOAT(axis_steps_per_unit[0],3) << " Y" << _FLOAT(axis_steps_per_unit[1],3) << " Z" << _FLOAT(axis_steps_per_unit[2],3) << " E" << _FLOAT(axis_steps_per_unit[3],3)); + ECHOLN("Maximum feedrates (mm/s):"); + ECHOLN(" M203 X" <<_FLOAT(max_feedrate[0]/60,2)<<" Y" << _FLOAT(max_feedrate[1]/60,2) << " Z" << _FLOAT(max_feedrate[2]/60,2) << " E" << _FLOAT(max_feedrate[3]/60,2)); + ECHOLN("Maximum Acceleration (mm/s2):"); + ECHOLN(" M201 X" <<_FLOAT(max_acceleration_units_per_sq_second[0],0) << " Y" << _FLOAT(max_acceleration_units_per_sq_second[1],0) << " Z" << _FLOAT(max_acceleration_units_per_sq_second[2],0) << " E" << _FLOAT(max_acceleration_units_per_sq_second[3],0)); + ECHOLN("Acceleration: S=acceleration, T=retract acceleration"); + ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); + ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); + ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); +#ifdef PIDTEMP + ECHOLN("PID settings:"); + ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); +#endif + +} + +#endif + + diff --git a/Marlin/Makefile b/Marlin/Makefile index 6fafba13b..f456e3cbd 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -1,274 +1,320 @@ +TARGET = $(notdir $(CURDIR)) +# CHANGE BELOW: +#~ INSTALL_DIR = /Applications/Arduino.app/Contents/Resources/Java +INSTALL_DIR = /home/bkubicek/software/arduino-0022 +#~ PORT = /dev/cu.usbserial* +PORT = /dev/ttyACM0 + +# Get these values from: +# $(INSTALL_DIR)/hardware/boards.txt +# (arduino-0022/hardware/arduino/boards.txt) +# The values below are for the "Arduino Duemilanove or Nano w/ ATmega328" +# now for "Arduino Mega 2560" +UPLOAD_SPEED = 115200 +UPLOAD_PROTOCOL = stk500v2 +BUILD_MCU = atmega2560 +BUILD_F_CPU = 16000000L + +# getting undefined reference to `__cxa_pure_virtual' +#~ [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254180518 Arduino Forum - Makefile] +#~ http://www.arduino.cc/playground/OpenBSD/CLI +#~ [http://arduino.cc/forum/index.php?topic=52041.0 A "simple" makefile for Arduino] +#~ [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1275488191 Arduino Forum - Configuring avr-gcc options in arduino IDE] +# found in /usr/lib/gcc/avr/4.3.5/cc1plus; fixed with -Wl,--gc-section + +############################################################################ +# Below here nothing should be changed... + +ARDUINO = $(INSTALL_DIR)/hardware/arduino/cores/arduino # -# Arduino 0022 Makefile -# Uno with DOGS102 Shield -# -# written by olikraus@gmail.com -# -# Features: -# - boards.txt is used to derive parameters -# - All intermediate files are put into a separate directory (TMPDIRNAME) -# - Simple use: Copy Makefile into the same directory of the .pde file -# -# Limitations: -# - requires UNIX environment -# - TMPDIRNAME must be subdirectory of the current directory. -# -# Targets -# all build everything -# upload build and upload to arduino -# clean remove all temporary files (includes final hex file) -# -# History -# 001 28 Apr 2010 first release -# 002 05 Oct 2010 added 'uno' +#~ AVR_TOOLS_PATH = $(INSTALL_DIR)/hardware/tools/avr/bin +# in Ubuntu, avr-gcc is installed separate; +# only avrdude comes with the IDE +AVR_TOOLS_PATH = /usr/bin +AVR_DUDE_PATH = $(INSTALL_DIR)/hardware/tools # +SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \ + $(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ + $(ARDUINO)/wiring_pulse.c \ + $(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c +# added applet/$(TARGET).cpp as in IDE 0022 +CXXSRC = $(ARDUINO)/HardwareSerial.cpp $(ARDUINO)/WMath.cpp \ + $(ARDUINO)/Print.cpp \ + $(ARDUINO)/main.cpp +# applet/$(TARGET).cpp # no need, having a rule now for applet/$(TARGET).cpp.o +# added main.cpp, as in 0022 +FORMAT = ihex -#=== user configuration === -# All ...PATH variables must have a '/' at the end +# Name of this Makefile (used for "make depend"). +MAKEFILE = Makefile -# Board (and prozessor) information: see $(ARDUINO_PATH)hardware/arduino/boards.txt -# Some examples: -# BOARD DESCRIPTION -# uno Arduino Uno -# atmega328 Arduino Duemilanove or Nano w/ ATmega328 -# diecimila Arduino Diecimila, Duemilanove, or Nano w/ ATmega168 -# mega Arduino Mega -# mini Arduino Mini -# lilypad328 LilyPad Arduino w/ ATmega328 -BOARD:=mega +# Debugging format. +# Native formats for AVR-GCC's -g are stabs [default], or dwarf-2. +# AVR (extended) COFF requires stabs, plus an avr-objcopy run. +DEBUG = stabs -# additional (comma separated) defines -# -DDOGM128_HW board is connected to DOGM128 display -# -DDOGM132_HW board is connected to DOGM132 display -# -DDOGS102_HW board is connected to DOGS102 display -# -DDOG_REVERSE 180 degree rotation -# -DDOG_SPI_SW_ARDUINO force SW shiftOut -DEFS=-DDOGS102_HW -DDOG_DOUBLE_MEMORY -DDOG_SPI_SW_ARDUINO +OPT = 2 -# The location where the avr tools (e.g. avr-gcc) are located. Requires a '/' at the end. -# Can be empty if all tools are accessable through the search path -AVR_TOOLS_PATH:=/usr/bin/ +# Place -D or -U options here +#~ CDEFS = -DBUILD_F_CPU=$(BUILD_F_CPU) +#~ CXXDEFS = -DBUILD_F_CPU=$(BUILD_F_CPU) +# now called DF_CPU +CDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=22 +CXXDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=22 -# Install path of the arduino software. Requires a '/' at the end. -ARDUINO_PATH:=/home/bkubicek/software/arduino-0022/ +# Place -I options here +CINCS = -I$(ARDUINO) -I$(INSTALL_DIR)/libraries/LiquidCrystal/ -I$(INSTALL_DIR)/libraries/EEPROM/ +CXXINCS = -I$(ARDUINO) -# Install path for avrdude. Requires a '/' at the end. Can be empty if avrdude is in the search path. -AVRDUDE_PATH:= +# Compiler flag to set the C Standard level. +# c89 - "ANSI" C +# gnu89 - c89 plus GCC extensions +# c99 - ISO C99 standard (not yet fully implemented) +# gnu99 - c99 plus GCC extensions +CSTANDARD = -std=gnu99 +CDEBUG = -g$(DEBUG) +# note that typically, IDE 0022 uses -w to suppress warnings (both in cpp and c)! +CWARN = -Wall +#~ CWARN = -w +# "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++: +CCWARN = -Wstrict-prototypes +CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums +#CEXTRA = -Wa,-adhlns=$(<:.c=.lst) -# The unix device where we can reach the arduino board -# Uno: /dev/ttyACM0 -# Duemilanove: /dev/ttyUSB0 -AVRDUDE_PORT:=/dev/ttyACM0 +# to eliminate pins_ardiuno warnings: +# http://arduino.cc/pipermail/developers_arduino.cc/2010-December/004005.html -# List of all libaries which should be included. -#EXTRA_DIRS=$(ARDUINO_PATH)libraries/LiquidCrystal/ -#EXTRA_DIRS+=$(ARDUINO_PATH)libraries/Dogm/ -#EXTRA_DIRS+=/home/kraus/src/arduino/dogm128/hg/libraries/Dogm/ +# [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254180518 Arduino Forum - Makefile] +#~ For building the objects files "-ffunction-sections -fdata-sections" was missing +#~ and the final avr-gcc call needs "-Wl,--gc-section". +CXSECTF = -fno-exceptions -ffunction-sections -fdata-sections +CFINALF = -Wl,--gc-section -#=== fetch parameter from boards.txt processor parameter === -# the basic idea is to get most of the information from boards.txt +CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CCWARN) $(CSTANDARD) $(CEXTRA) +# added CWARN also to .cpp +CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CXSECTF) +#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs +LDFLAGS = -lm -BOARDS_TXT:=$(ARDUINO_PATH)hardware/arduino/boards.txt +# Programming support using avrdude. Settings and variables. +AVRDUDE_PORT = $(PORT) +AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex +AVRDUDE_FLAGS = -V -F \ + -p $(BUILD_MCU) -P $(AVRDUDE_PORT) -c $(UPLOAD_PROTOCOL) \ + -b $(UPLOAD_SPEED) -C $(INSTALL_DIR)/hardware/tools/avrdude.conf +# -b $(UPLOAD_SPEED) -C $(INSTALL_DIR)/hardware/tools/avr/etc/avrdude.conf -# get the MCU value from the $(BOARD).build.mcu variable. For the atmega328 board this is atmega328p -MCU:=$(shell sed -n -e "s/$(BOARD).build.mcu=\(.*\)/\1/p" $(BOARDS_TXT)) -# get the F_CPU value from the $(BOARD).build.f_cpu variable. For the atmega328 board this is 16000000 -F_CPU:=$(shell sed -n -e "s/$(BOARD).build.f_cpu=\(.*\)/\1/p" $(BOARDS_TXT)) +# Program settings +CC = $(AVR_TOOLS_PATH)/avr-gcc +CXX = $(AVR_TOOLS_PATH)/avr-g++ +OBJCOPY = $(AVR_TOOLS_PATH)/avr-objcopy +OBJDUMP = $(AVR_TOOLS_PATH)/avr-objdump +AR = $(AVR_TOOLS_PATH)/avr-ar +SIZE = $(AVR_TOOLS_PATH)/avr-size +NM = $(AVR_TOOLS_PATH)/avr-nm +#~ AVRDUDE = $(AVR_TOOLS_PATH)/avrdude +AVRDUDE = $(AVR_DUDE_PATH)/avrdude +REMOVE = rm -f +MV = mv -f -# avrdude -# get the AVRDUDE_UPLOAD_RATE value from the $(BOARD).upload.speed variable. For the atmega328 board this is 57600 -AVRDUDE_UPLOAD_RATE:=$(shell sed -n -e "s/$(BOARD).upload.speed=\(.*\)/\1/p" $(BOARDS_TXT)) -# get the AVRDUDE_PROGRAMMER value from the $(BOARD).upload.protocol variable. For the atmega328 board this is stk500 -# AVRDUDE_PROGRAMMER:=$(shell sed -n -e "s/$(BOARD).upload.protocol=\(.*\)/\1/p" $(BOARDS_TXT)) -# use stk500v1, because stk500 will default to stk500v2 -AVRDUDE_PROGRAMMER:=stk500v1 +# Define all object files. +# NOTE: obj files will be created in respective src directories (libraries or $(INSTALL_DIR)); +# make clean deletes them fine +# note that srcs are in libraries or other directories; +# $(CXXSRC:.cpp=.o) will cause obj files to be in same loc as src files +#~ OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) +# to change the output directory for object files; +# must change the obj list here! +# and then, match to corresponding rule somehow? +# or leave this - and parse in rule (auth automatic variable $(@F))? +# "Suffix Replacement" +OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) -#=== identify user files === -PDESRC:=$(shell ls *.pde) -TARGETNAME=$(basename $(PDESRC)) +# added - OBJ list, transformed into applet/ +OBJT = $(addprefix applet/,$(notdir $(OBJ))) +ALLSRC = $(SRC) $(CXXSRC) $(ASRC) -CDIRS:=$(EXTRA_DIRS) $(addsuffix utility/,$(EXTRA_DIRS)) -CDIRS:=*.c utility/*.c $(addsuffix *.c,$(CDIRS)) $(ARDUINO_PATH)hardware/arduino/cores/arduino/*.c -CSRC:=$(shell ls $(CDIRS) 2>/dev/null) +# Define all listing files. +LST = $(ASRC:.S=.lst) $(CXXSRC:.cpp=.lst) $(SRC:.c=.lst) -CCSRC:=$(shell ls *.cc 2>/dev/null) +# Combine all necessary flags and optional flags. +# Add target processor to flags. +ALL_CFLAGS = -mmcu=$(BUILD_MCU) -I. $(CFLAGS) +ALL_CXXFLAGS = -mmcu=$(BUILD_MCU) -I. $(CXXFLAGS) +ALL_ASFLAGS = -mmcu=$(BUILD_MCU) -I. -x assembler-with-cpp $(ASFLAGS) -CPPDIRS:=$(EXTRA_DIRS) $(addsuffix utility/,$(EXTRA_DIRS)) -CPPDIRS:=*.cpp utility/*.cpp $(addsuffix *.cpp,$(CPPDIRS)) $(ARDUINO_PATH)hardware/arduino/cores/arduino/*.cpp -CPPSRC:=$(shell ls $(CPPDIRS) 2>/dev/null) +# depended libraries of .pde need to be added from +# $(INSTALL_DIR)/libraries (TODO: and/or ~/sketchbook/libraries) +# grep for 'include', test if exists, add... +# note: prefix "a real tab character" http://www.delorie.com/djgpp/doc/ug/larger/makefiles.html +# $$ to escape $ for shell; +# note: must NOT put comments # inside bash execution; +# those would get removed by make; making shell see "EOF in backquote substitution" +# echo $$ix ; \ +# 'shell' twice - for each subprocess! Backtick doesn't get expanded? +GREPRES:=$(shell for ix in $(shell grep include $(TARGET).pde | sed 's/.*[<"]\(.*\).h[>"].*/\1/'); do \ + if [ -d $(INSTALL_DIR)/libraries/$$ix ] ; then \ + LINCS="$$LINCS -I$(INSTALL_DIR)/libraries/$$ix" ;\ + fi; \ + done; \ + echo $$LINCS) +# append includes: +CINCS += $(GREPRES) +CXXINCS += $(GREPRES) +# append library source .cpp files too (CXXSRC) +GREPRESB:=$(shell for ix in $(shell grep include $(TARGET).pde | sed 's/.*[<"]\(.*\).h[>"].*/\1/'); do \ + if [ -d $(INSTALL_DIR)/libraries/$$ix ] ; then \ + CPPSRCS="$$CPPSRCS $(INSTALL_DIR)/libraries/$$ix/*.cpp" ;\ + fi; \ + done; \ + echo $$CPPSRCS) +CXXSRC += $(GREPRESB) +# added - only CXX obj from libraries: +CXXLIBOBJ = $(GREPRESB:.cpp=.o) -#=== build internal variables === +# Default target. +all: applet_files build sizeafter -# the name of the subdirectory where everything is stored -TMPDIRNAME:=tmp -TMPDIRPATH:=$(TMPDIRNAME)/ +build: elf hex -AVRTOOLSPATH:=$(AVR_TOOLS_PATH) - -OBJCOPY:=$(AVRTOOLSPATH)avr-objcopy -OBJDUMP:=$(AVRTOOLSPATH)avr-objdump -SIZE:=$(AVRTOOLSPATH)avr-size - -CPPSRC:=$(addprefix $(TMPDIRPATH),$(PDESRC:.pde=.cpp)) $(CPPSRC) - -COBJ:=$(CSRC:.c=.o) -CCOBJ:=$(CCSRC:.cc=.o) -CPPOBJ:=$(CPPSRC:.cpp=.o) - -OBJFILES:=$(COBJ) $(CCOBJ) $(CPPOBJ) -DIRS:= $(dir $(OBJFILES)) - -DEPFILES:=$(OBJFILES:.o=.d) -# assembler files from avr-gcc -S -ASSFILES:=$(OBJFILES:.o=.s) -# disassembled object files with avr-objdump -S -DISFILES:=$(OBJFILES:.o=.dis) +applet_files: $(TARGET).pde + # Here is the "preprocessing". + # It creates a .cpp file based with the same name as the .pde file. + # On top of the new .cpp file comes the WProgram.h header. + # At the end there is a generic main() function attached. + # Then the .cpp file will be compiled. Errors during compile will + # refer to this new, automatically generated, file. + # Not the original .pde file you actually edit... + test -d applet || mkdir applet + # @ supresses printout of the cmdline itself; so only the out of echo is printed + @echo ALL OBJT: $(OBJT) + @echo ALL CXXLIBOBJ: $(CXXLIBOBJ) +# echo '#include "WProgram.h"' > applet/$(TARGET).cpp + @echo "#include \"WProgram.h\"\nvoid setup();\nvoid loop();\n" > applet/$(TARGET).cpp + cat $(TARGET).pde >> applet/$(TARGET).cpp + # no more need to cat main.cpp (v0022) - now it is compiled in +# cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp -LIBNAME:=$(TMPDIRPATH)$(TARGETNAME).a -ELFNAME:=$(TMPDIRPATH)$(TARGETNAME).elf -HEXNAME:=$(TMPDIRPATH)$(TARGETNAME).hex +elf: applet/$(TARGET).elf +hex: applet/$(TARGET).hex +eep: applet/$(TARGET).eep +lss: applet/$(TARGET).lss +sym: applet/$(TARGET).sym -AVRDUDE_FLAGS = -V -F -AVRDUDE_FLAGS += -C $(ARDUINO_PATH)/hardware/tools/avrdude.conf -AVRDUDE_FLAGS += -p $(MCU) -AVRDUDE_FLAGS += -P $(AVRDUDE_PORT) -AVRDUDE_FLAGS += -c $(AVRDUDE_PROGRAMMER) -AVRDUDE_FLAGS += -b $(AVRDUDE_UPLOAD_RATE) -AVRDUDE_FLAGS += -U flash:w:$(HEXNAME) +# Program the device. +upload: applet/$(TARGET).hex + $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) -AVRDUDE = avrdude +# Display size of file. +HEXSIZE = $(SIZE) --target=$(FORMAT) applet/$(TARGET).hex +ELFSIZE = $(SIZE) applet/$(TARGET).elf +sizebefore: + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi -#=== predefined variable override === -# use "make -p -f/dev/null" to see the default rules and definitions +sizeafter: + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi -# Build C and C++ flags. Include path information must be placed here -COMMON_FLAGS = -DF_CPU=$(F_CPU) -mmcu=$(MCU) $(DEFS) -# COMMON_FLAGS += -gdwarf-2 -COMMON_FLAGS += -Os -COMMON_FLAGS += -Wall -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -COMMON_FLAGS += -I. -COMMON_FLAGS += -I$(ARDUINO_PATH)hardware/arduino/cores/arduino -COMMON_FLAGS += $(addprefix -I,$(EXTRA_DIRS)) -COMMON_FLAGS += -ffunction-sections -fdata-sections -Wl,--gc-sections -COMMON_FLAGS += -Wl,--relax -COMMON_FLAGS += -mcall-prologues +# Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. +COFFCONVERT=$(OBJCOPY) --debugging \ + --change-section-address .data-0x800000 \ + --change-section-address .bss-0x800000 \ + --change-section-address .noinit-0x800000 \ + --change-section-address .eeprom-0x810000 -CFLAGS = $(COMMON_FLAGS) -std=gnu99 -Wstrict-prototypes -CXXFLAGS = $(COMMON_FLAGS) +coff: applet/$(TARGET).elf + $(COFFCONVERT) -O coff-avr applet/$(TARGET).elf $(TARGET).cof -# Replace standard build tools by avr tools -CC = $(AVRTOOLSPATH)avr-gcc -CXX = $(AVRTOOLSPATH)avr-g++ -AR = @$(AVRTOOLSPATH)avr-ar +extcoff: $(TARGET).elf + $(COFFCONVERT) -O coff-ext-avr applet/$(TARGET).elf $(TARGET).cof - -# "rm" must be able to delete a directory tree -RM = rm -rf - -#=== rules === - -# add rules for the C/C++ files where the .o file is placed in the TMPDIRPATH -# reuse existing variables as far as possible - -$(TMPDIRPATH)%.o: %.c - @echo compile $< - @$(COMPILE.c) $(OUTPUT_OPTION) $< - -$(TMPDIRPATH)%.o: %.cc - @echo compile $< - @$(COMPILE.cc) $(OUTPUT_OPTION) $< - -$(TMPDIRPATH)%.o: %.cpp - @echo compile $< - @$(COMPILE.cpp) $(OUTPUT_OPTION) $< - -$(TMPDIRPATH)%.s: %.c - @$(COMPILE.c) $(OUTPUT_OPTION) -S $< - -$(TMPDIRPATH)%.s: %.cc - @$(COMPILE.cc) $(OUTPUT_OPTION) -S $< - -$(TMPDIRPATH)%.s: %.cpp - @$(COMPILE.cpp) $(OUTPUT_OPTION) -S $< - -$(TMPDIRPATH)%.dis: $(TMPDIRPATH)%.o - @$(OBJDUMP) -S $< > $@ - -.SUFFIXES: .elf .hex .pde +.SUFFIXES: .elf .hex .eep .lss .sym .elf.hex: - @$(OBJCOPY) -O ihex -R .eeprom $< $@ - -$(TMPDIRPATH)%.cpp: %.pde - @cat $(ARDUINO_PATH)hardware/arduino/cores/arduino/main.cpp > $@ - @cat $< >> $@ - @echo >> $@ - @echo 'extern "C" void __cxa_pure_virtual() { while (1); }' >> $@ + $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ +.elf.eep: + -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ + --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ -.PHONY: all -all: tmpdir $(HEXNAME) assemblersource showsize - ls -al $(HEXNAME) $(ELFNAME) +# Create extended listing file from ELF output file. +.elf.lss: + $(OBJDUMP) -h -S $< > $@ -$(ELFNAME): $(LIBNAME)($(addprefix $(TMPDIRPATH),$(OBJFILES))) - $(LINK.o) $(COMMON_FLAGS) $(LIBNAME) $(LOADLIBES) $(LDLIBS) -o $@ +# Create a symbol table from ELF output file. +.elf.sym: + $(NM) -n $< > $@ -$(LIBNAME)(): $(addprefix $(TMPDIRPATH),$(OBJFILES)) +# Link: create ELF output file from library. +# NOTE: applet/$(TARGET).cpp.o MUST BE BEFORE applet/core.a +# in the dependency list, so its rule runs first! +applet/$(TARGET).elf: $(TARGET).pde applet/$(TARGET).cpp.o applet/core.a +# $(CC) $(ALL_CFLAGS) -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) +# changed as in IDE v0022: link cpp obj files + @echo $$(tput bold)$$(tput setaf 2) $(CC) $$(tput sgr0) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) + @$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) -#=== create temp directory === -# not really required, because it will be also created during the dependency handling -.PHONY: tmpdir -tmpdir: - @test -d $(TMPDIRPATH) || mkdir $(TMPDIRPATH) +# added: cpp.o depends on cpp (and .pde which generates it) +# $< "first item in the dependencies list"; $@ "left side of the :"; $^ "right side of the :" +# http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/ +applet/$(TARGET).cpp.o: applet/$(TARGET).cpp + @echo $$(tput bold) $(CXX) $$(tput sgr0) -c $(ALL_CXXFLAGS) $< -o $@ + @$(CXX) -c $(ALL_CXXFLAGS) $< -o $@ -#=== create assembler files for each C/C++ file === -.PHONY: assemblersource -assemblersource: $(addprefix $(TMPDIRPATH),$(ASSFILES)) $(addprefix $(TMPDIRPATH),$(DISFILES)) +#~ applet/core.a: $(OBJ) +#~ @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done +applet/core.a: $(OBJT) + @for i in $(OBJT); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done -#=== show the section sizes of the ELF file === -.PHONY: showsize -showsize: $(ELFNAME) - $(SIZE) $< +# iterate through OBJ to find the original location; then build depending on source extension +# TODO: add handling of assembler files +applet/%.o: + @for iob in $(OBJ); do \ + if [ "`basename $$iob`" = "`basename $@`" ]; then \ + for ios in $(ALLSRC); do \ + if [ "$${iob%%.*}" = "$${ios%%.*}" ]; then \ + case $${ios##*.} in \ + "cpp") \ + echo "$$(tput bold)$$(tput setaf 1) $(CXX) $$(tput sgr0) -c $(ALL_CXXFLAGS) $$ios -o $@"; \ + $(CXX) -c $(ALL_CXXFLAGS) $$ios -o $@;; \ + "c") \ + echo "$$(tput bold)$$(tput setaf 1) $(CC) $$(tput sgr0) -c $(ALL_CFLAGS) $$ios -o $@"; \ + $(CC) -c $(ALL_CFLAGS) $$ios -o $@;; \ + esac; \ + fi; \ + done; \ + fi; \ + done; -#=== clean up target === -# this is simple: the TMPDIRPATH is removed -.PHONY: clean +#~ # Compile: create object files from C++ source files. +#~ .cpp.o: +#~ $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ + +#~ # Compile: create object files from C source files. +#~ .c.o: +#~ $(CC) -c $(ALL_CFLAGS) $< -o $@ + +#~ # Compile: create assembler files from C source files. +#~ .c.s: +#~ $(CC) -S $(ALL_CFLAGS) $< -o $@ + +#~ # Assemble: create object files from assembler source files. +#~ .S.o: +#~ $(CC) -c $(ALL_ASFLAGS) $< -o $@ + +#~ # Automatic dependencies +#~ %.d: %.c +#~ $(CC) -M $(ALL_CFLAGS) $< | sed "s;$(notdir $*).o:;$*.o $*.d:;" > $@ + +#~ %.d: %.cpp +#~ $(CXX) -M $(ALL_CXXFLAGS) $< | sed "s;$(notdir $*).o:;$*.o $*.d:;" > $@ + +# Target: clean project. clean: - $(RM) $(TMPDIRPATH) - -# Program the device. -# step 1: reset the arduino board with the stty command -# step 2: user avrdude to upload the software -.PHONY: upload -upload: $(HEXNAME) - stty -F $(AVRDUDE_PORT) hupcl - $(AVRDUDE) $(AVRDUDE_FLAGS) - - -# === dependency handling === -# From the gnu make manual (section 4.14, Generating Prerequisites Automatically) -# Additionally (because this will be the first executed rule) TMPDIRPATH is created here. -# Instead of "sed" the "echo" command is used -# cd $(TMPDIRPATH); mkdir -p $(DIRS) 2> /dev/null; cd .. -DEPACTION=test -d $(TMPDIRPATH) || mkdir $(TMPDIRPATH);\ -mkdir -p $(addprefix $(TMPDIRPATH),$(DIRS));\ -set -e; echo -n $@ $(dir $@) > $@; $(CC) -MM $(COMMON_FLAGS) $< >> $@ - - -$(TMPDIRPATH)%.d: %.c - @$(DEPACTION) - -$(TMPDIRPATH)%.d: %.cc - @$(DEPACTION) - - -$(TMPDIRPATH)%.d: %.cpp - @$(DEPACTION) - -# Include dependency files. If a .d file is missing, a warning is created and the .d file is created -# This warning is not a problem (gnu make manual, section 3.3 Including Other Makefiles) --include $(addprefix $(TMPDIRPATH),$(DEPFILES)) - + $(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ + applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ + $(OBJT) applet/$(TARGET).cpp.o \ + $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) +.PHONY: all build elf hex eep lss sym program coff extcoff clean applet_files sizebefore sizeafter diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index cc43f00b2..f85dad357 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -1,83 +1,82 @@ -#ifndef __MARLINH -#define __MARLINH - -// Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. -// Licence: GPL -#include -#include "fastio.h" - - -#define ECHO(x) Serial << "echo: " << x; -#define ECHOLN(x) Serial << "echo: "< -1 -#define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) -#define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) -#else -#define enable_x() ; -#define disable_x() ; -#endif -#if Y_ENABLE_PIN > -1 -#define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) -#define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) -#else -#define enable_y() ; -#define disable_y() ; -#endif -#if Z_ENABLE_PIN > -1 -#define enable_z() WRITE(Z_ENABLE_PIN, Z_ENABLE_ON) -#define disable_z() WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON) -#else -#define enable_z() ; -#define disable_z() ; -#endif - -#if E_ENABLE_PIN > -1 - - #define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) - #define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) - -#else -#define enable_e() ; -#define disable_e() ; -#endif - -#define X_AXIS 0 -#define Y_AXIS 1 -#define Z_AXIS 2 -#define E_AXIS 3 - -void FlushSerialRequestResend(); -void ClearToSend(); - -void get_coordinates(); -void prepare_move(); -void kill(byte debug); - -//void check_axes_activity(); -//void plan_init(); -//void st_init(); -//void tp_init(); -//void plan_buffer_line(float x, float y, float z, float e, float feed_rate); -//void plan_set_position(float x, float y, float z, float e); -//void st_wake_up(); -//void st_synchronize(); -void enquecommand(const char *cmd); -void wd_reset(); - -#ifndef CRITICAL_SECTION_START -#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli(); -#define CRITICAL_SECTION_END SREG = _sreg; -#endif //CRITICAL_SECTION_START - -extern float homing_feedrate[]; -extern bool axis_relative_modes[]; - -void manage_inactivity(byte debug); - -#endif +#ifndef __MARLINH +#define __MARLINH + +// Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. +// Licence: GPL +#include +#include "fastio.h" + + +#define ECHO(x) Serial << "echo: " << x; +#define ECHOLN(x) Serial << "echo: "< -1 +#define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) +#define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) +#else +#define enable_x() ; +#define disable_x() ; +#endif +#if Y_ENABLE_PIN > -1 +#define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) +#define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) +#else +#define enable_y() ; +#define disable_y() ; +#endif +#if Z_ENABLE_PIN > -1 +#define enable_z() WRITE(Z_ENABLE_PIN, Z_ENABLE_ON) +#define disable_z() WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON) +#else +#define enable_z() ; +#define disable_z() ; +#endif + +#if E_ENABLE_PIN > -1 + + #define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) + #define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) + +#else +#define enable_e() ; +#define disable_e() ; +#endif + +#define X_AXIS 0 +#define Y_AXIS 1 +#define Z_AXIS 2 +#define E_AXIS 3 + +void FlushSerialRequestResend(); +void ClearToSend(); + +void get_coordinates(); +void prepare_move(); +void kill(); + +//void check_axes_activity(); +//void plan_init(); +//void st_init(); +//void tp_init(); +//void plan_buffer_line(float x, float y, float z, float e, float feed_rate); +//void plan_set_position(float x, float y, float z, float e); +//void st_wake_up(); +//void st_synchronize(); +void enquecommand(const char *cmd); + + +#ifndef CRITICAL_SECTION_START +#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli(); +#define CRITICAL_SECTION_END SREG = _sreg; +#endif //CRITICAL_SECTION_START + +extern float homing_feedrate[]; +extern bool axis_relative_modes[]; + +void wd_reset() ; +#endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index cb55131df..3cf8d3bdf 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1,1233 +1,1233 @@ -/* - Reprap firmware 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 . - */ - -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - */ - -#include -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "streaming.h" -#include "planner.h" -#include "stepper.h" -#include "temperature.h" - -#ifdef SIMPLE_LCD - #include "Simplelcd.h" -#endif - -char version_string[] = "1.0.0 Alpha 1"; - -#ifdef SDSUPPORT -#include "SdFat.h" -#endif //SDSUPPORT - - -// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html -// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes - -//Implemented Codes -//------------------- -// G0 -> G1 -// G1 - Coordinated Movement X Y Z E -// G4 - Dwell S or P -// G28 - Home all Axis -// G90 - Use Absolute Coordinates -// G91 - Use Relative Coordinates -// G92 - Set current position to cordinates given - -//RepRap M Codes -// M104 - Set extruder target temp -// M105 - Read current temp -// M106 - Fan on -// M107 - Fan off -// M109 - Wait for extruder current temp to reach target temp. -// M114 - Display current position - -//Custom M Codes -// M20 - List SD card -// M21 - Init SD card -// M22 - Release SD card -// M23 - Select SD file (M23 filename.g) -// M24 - Start/resume SD print -// M25 - Pause SD print -// M26 - Set SD position in bytes (M26 S12345) -// M27 - Report SD print status -// M28 - Start SD write (M28 filename.g) -// M29 - Stop SD write -// M42 - Change pin status via gcode -// M80 - Turn on Power Supply -// M81 - Turn off Power Supply -// M82 - Set E codes absolute (default) -// M83 - Set E codes relative while in Absolute Coordinates (G90) mode -// M84 - Disable steppers until next move, -// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. -// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) -// M92 - Set axis_steps_per_unit - same syntax as G92 -// M115 - Capabilities string -// M140 - Set bed target temp -// M190 - Wait for bed current temp to reach target temp. -// M200 - Set filament diameter -// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) -// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! -// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec -// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate -// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk -// M220 - set speed factor override percentage S:factor in percent -// M301 - Set PID parameters P I and D -// M500 - stores paramters in EEPROM -// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D -// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. - -//Stepper Movement Variables - -char axis_codes[NUM_AXIS] = { - 'X', 'Y', 'Z', 'E'}; -float destination[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -float current_position[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -bool home_all_axis = true; -float feedrate = 1500.0, next_feedrate, saved_feedrate; -long gcode_N, gcode_LastN; - -float homing_feedrate[] = HOMING_FEEDRATE; -bool axis_relative_modes[] = AXIS_RELATIVE_MODES; - -bool relative_mode = false; //Determines Absolute or Relative Coordinates -bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. - -uint8_t fanpwm=0; - -volatile int feedmultiply=100; //100->1 200->2 -int saved_feedmultiply; -volatile bool feedmultiplychanged=false; -// comm variables -#define MAX_CMD_SIZE 96 -#define BUFSIZE 4 -char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; -bool fromsd[BUFSIZE]; -int bufindr = 0; -int bufindw = 0; -int buflen = 0; -int i = 0; -char serial_char; -int serial_count = 0; -boolean comment_mode = false; -char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc -extern float HeaterPower; - -#include "EEPROM.h" - -const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 - -float tt = 0, bt = 0; -#ifdef WATCHPERIOD -int watch_raw = -1000; -unsigned long watchmillis = 0; -#endif //WATCHPERIOD - -//Inactivity shutdown variables -unsigned long previous_millis_cmd = 0; -unsigned long max_inactive_time = 0; -unsigned long stepper_inactive_time = 0; - -unsigned long starttime=0; -unsigned long stoptime=0; -#ifdef SDSUPPORT -Sd2Card card; -SdVolume volume; -SdFile root; -SdFile file; -uint32_t filesize = 0; -uint32_t sdpos = 0; -bool sdmode = false; -bool sdactive = false; -bool savetosd = false; -int16_t n; -long autostart_atmillis=0; - -void initsd(){ - sdactive = false; -#if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)){ - //if (!card.init(SPI_HALF_SPEED,SDSS)) - Serial.println("SD init fail"); - } - else if (!volume.init(&card)) - Serial.println("volume.init failed"); - else if (!root.openRoot(&volume)) - Serial.println("openRoot failed"); - else - { - sdactive = true; - Serial.println("SD card ok"); - } -#endif //SDSS -} - -void quickinitsd(){ - sdactive=false; - autostart_atmillis=millis()+5000; -} - -inline void write_command(char *buf){ - char* begin = buf; - char* npos = 0; - 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'; - //Serial.println(begin); - file.write(begin); - if (file.writeError){ - Serial.println("error writing to file"); - } -} -#endif //SDSUPPORT - - -///adds an command to the main command buffer -void enquecommand(const char *cmd) -{ - if(buflen < BUFSIZE) - { - //this is dangerous if a mixing of serial and this happsens - strcpy(&(cmdbuffer[bufindw][0]),cmd); - Serial.print("en:");Serial.println(cmdbuffer[bufindw]); - bufindw= (bufindw + 1)%BUFSIZE; - buflen += 1; - } -} - -void setup() -{ - - Serial.begin(BAUDRATE); - ECHOLN("Marlin "< -1 - SET_OUTPUT(SDPOWER); - WRITE(SDPOWER,HIGH); -#endif //SDPOWER - quickinitsd(); - -#endif //SDSUPPORT - plan_init(); // Initialize planner; - st_init(); // Initialize stepper; - tp_init(); // Initialize temperature loop - //checkautostart(); -} - -#ifdef SDSUPPORT -bool autostart_stilltocheck=true; - - -void checkautostart(bool force) -{ - //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset - if(!force) - { - if(!autostart_stilltocheck) - return; - if(autostart_atmillis 0) - { - for(int i=0;i 0 && buflen < BUFSIZE) { - serial_char = Serial.read(); - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) - { - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = false; - if(strstr(cmdbuffer[bufindw], "N") != NULL) - { - strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); - gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); - if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { - Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); - Serial.println(gcode_LastN); - //Serial.println(gcode_N); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - if(strstr(cmdbuffer[bufindw], "*") != NULL) - { - byte checksum = 0; - byte count = 0; - while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; - strchr_pointer = strchr(cmdbuffer[bufindw], '*'); - - if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { - Serial.print("Error: checksum mismatch, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - //if no errors, continue parsing - } - else - { - Serial.print("Error: No Checksum with line number, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - gcode_LastN = gcode_N; - //if no errors, continue parsing - } - else // if we don't receive 'N' but still see '*' - { - if((strstr(cmdbuffer[bufindw], "*") != NULL)) - { - Serial.print("Error: No Line Number with checksum, Last Line:"); - Serial.println(gcode_LastN); - serial_count = 0; - return; - } - } - if((strstr(cmdbuffer[bufindw], "G") != NULL)){ - strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); - switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ - case 0: - case 1: -#ifdef SDSUPPORT - if(savetosd) - break; -#endif //SDSUPPORT - Serial.println("ok"); - break; - default: - break; - } - - } - bufindw = (bufindw + 1)%BUFSIZE; - buflen += 1; - - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#ifdef SDSUPPORT - if(!sdmode || serial_count!=0){ - return; - } - while( filesize > sdpos && buflen < BUFSIZE) { - n = file.read(); - serial_char = (char)n; - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) - { - sdpos = file.curPosition(); - if(sdpos >= filesize){ - sdmode = false; - Serial.println("Done printing file"); - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - checkautostart(true); - } - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = true; - buflen += 1; - bufindw = (bufindw + 1)%BUFSIZE; - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#endif //SDSUPPORT - -} - - -inline float code_value() { - return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); -} -inline long code_value_long() { - return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); -} -inline bool code_seen(char code_string[]) { - return (strstr(cmdbuffer[bufindr], code_string) != NULL); -} //Return True if the string was found - -inline bool code_seen(char code) -{ - strchr_pointer = strchr(cmdbuffer[bufindr], code); - return (strchr_pointer != NULL); //Return True if a character was found -} - -inline void process_commands() -{ - unsigned long codenum; //throw away variable - char *starpos = NULL; - - if(code_seen('G')) - { - switch((int)code_value()) - { - case 0: // G0 -> G1 - case 1: // G1 - get_coordinates(); // For X Y Z E F - prepare_move(); - previous_millis_cmd = millis(); - //ClearToSend(); - return; - //break; - case 4: // G4 dwell - codenum = 0; - if(code_seen('P')) codenum = code_value(); // milliseconds to wait - if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait - codenum += millis(); // keep track of when we started waiting - while(millis() < codenum ){ - manage_heater(); - } - break; - case 28: //G28 Home all Axis one at a time - saved_feedrate = feedrate; - saved_feedmultiply = feedmultiply; - feedmultiply = 100; - - for(int i=0; i < NUM_AXIS; i++) { - destination[i] = current_position[i]; - } - feedrate = 0.0; - - home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - - if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { - if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = -5 * X_HOME_DIR; - prepare_move(); - -// st_synchronize(); - destination[X_AXIS] = 10 * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]/2 ; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = current_position[X_AXIS]; - feedrate = 0.0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { - if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = -5 * Y_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Y_AXIS] = 10 * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = current_position[Y_AXIS]; - feedrate = 0.0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { - if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = -2 * Z_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Z_AXIS] = 3 * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = current_position[Z_AXIS]; - feedrate = 0.0; - } - } - feedrate = saved_feedrate; - feedmultiply = saved_feedmultiply; - previous_millis_cmd = millis(); - break; - case 90: // G90 - relative_mode = false; - break; - case 91: // G91 - relative_mode = true; - break; - case 92: // G92 - if(!code_seen(axis_codes[E_AXIS])) - st_synchronize(); - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) current_position[i] = code_value(); - } - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - break; - } - } - - else if(code_seen('M')) - { - - switch( (int)code_value() ) - { -#ifdef SDSUPPORT - - case 20: // M20 - list SD card - Serial.println("Begin file list"); - root.ls(); - Serial.println("End file list"); - break; - case 21: // M21 - init SD card - sdmode = false; - initsd(); - break; - case 22: //M22 - release SD card - sdmode = false; - sdactive = false; - break; - case 23: //M23 - Select file - if(sdactive){ - sdmode = false; - file.close(); - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos!=NULL) - *(starpos-1)='\0'; - if (file.open(&root, strchr_pointer + 4, O_READ)) { - Serial.print("File opened:"); - Serial.print(strchr_pointer + 4); - Serial.print(" Size:"); - Serial.println(file.fileSize()); - sdpos = 0; - filesize = file.fileSize(); - Serial.println("File selected"); - } - else{ - Serial.println("file.open failed"); - } - } - break; - case 24: //M24 - Start SD print - if(sdactive){ - sdmode = true; - starttime=millis(); - } - break; - case 25: //M25 - Pause SD print - if(sdmode){ - sdmode = false; - } - break; - case 26: //M26 - Set SD index - if(sdactive && code_seen('S')){ - sdpos = code_value_long(); - file.seekSet(sdpos); - } - break; - case 27: //M27 - Get SD status - if(sdactive){ - Serial.print("SD printing byte "); - Serial.print(sdpos); - Serial.print("/"); - Serial.println(filesize); - } - else{ - Serial.println("Not SD printing"); - } - break; - case 28: //M28 - Start SD write - if(sdactive){ - char* npos = 0; - file.close(); - sdmode = false; - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos != NULL){ - npos = strchr(cmdbuffer[bufindr], 'N'); - strchr_pointer = strchr(npos,' ') + 1; - *(starpos-1) = '\0'; - } - if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) - { - Serial.print("open failed, File: "); - Serial.print(strchr_pointer + 4); - Serial.print("."); - } - else{ - savetosd = true; - Serial.print("Writing to file: "); - Serial.println(strchr_pointer + 4); - } - } - break; - case 29: //M29 - Stop SD write - //processed in write to file routine above - //savetosd = false; - break; - case 30: - { - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - } - break; -#endif //SDSUPPORT - case 42: //M42 -Change pin status via gcode - if (code_seen('S')) - { - int pin_status = code_value(); - if (code_seen('P') && pin_status >= 0 && pin_status <= 255) - { - int pin_number = code_value(); - for(int i = 0; i < sizeof(sensitive_pins); i++) - { - if (sensitive_pins[i] == pin_number) - { - pin_number = -1; - break; - } - } - - if (pin_number > -1) - { - pinMode(pin_number, OUTPUT); - digitalWrite(pin_number, pin_status); - analogWrite(pin_number, pin_status); - } - } - } - break; - case 104: // M104 - if (code_seen('S')) target_raw[0] = temp2analog(code_value()); -#ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[0] > current_raw[0]){ - watchmillis = max(1,millis()); - watch_raw = current_raw[0]; - }else{ - watchmillis = 0; - } - #endif - break; - case 140: // M140 set bed temp - if (code_seen('S')) target_raw[1] = temp2analogBed(code_value()); - break; - case 105: // M105 - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = analog2temp(current_raw[0]); - #endif - #if TEMP_1_PIN > -1 - bt = analog2tempBed(current_raw[1]); - #endif - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - Serial.print("ok T:"); - Serial.print(tt); -// Serial.print(", raw:"); -// Serial.print(current_raw); - #if TEMP_1_PIN > -1 -#ifdef PIDTEMP - Serial.print(" B:"); - #if TEMP_1_PIN > -1 - Serial.println(bt); - #else - Serial.println(HeaterPower); - #endif -#else - Serial.println(); -#endif - #else - Serial.println(); - #endif - #else - Serial.println("No thermistors - no temp"); - #endif - return; - //break; - case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGE("Heating..."); - if (code_seen('S')) target_raw[0] = temp2analog(code_value()); - #ifdef PIDTEMP - pid_setpoint = code_value(); - #endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[0]>current_raw[0]) { - watchmillis = max(1,millis()); - watch_raw = current_raw[0]; - } else { - watchmillis = 0; - } - #endif //WATCHPERIOD - codenum = millis(); - - /* See if we are heating up or cooling down */ - bool target_direction = (current_raw[0] < target_raw[0]); // true if heating, false if cooling - - #ifdef TEMP_RESIDENCY_TIME - long residencyStart; - residencyStart = -1; - /* continue to loop until we have reached the target temp - _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0])) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { - #else - while ( target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0]) ) { - #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down - Serial.print("T:"); - Serial.println( analog2temp(current_raw[0]) ); - codenum = millis(); - } - manage_heater(); - LCD_STATUS; - #ifdef TEMP_RESIDENCY_TIME - /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time - or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && current_raw[0] >= target_raw[0]) || - (residencyStart == -1 && !target_direction && current_raw[0] <= target_raw[0]) || - (residencyStart > -1 && labs(analog2temp(current_raw[0]) - analog2temp(target_raw[0])) > TEMP_HYSTERESIS) ) { - residencyStart = millis(); - } - #endif //TEMP_RESIDENCY_TIME - } - LCD_MESSAGE("Marlin ready."); - } - break; - case 190: // M190 - Wait bed for heater to reach target. - #if TEMP_1_PIN > -1 - if (code_seen('S')) target_raw[1] = temp2analog(code_value()); - codenum = millis(); - while(current_raw[1] < target_raw[1]) - { - if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. - { - float tt=analog2temp(current_raw[0]); - Serial.print("T:"); - Serial.println( tt ); - Serial.print("ok T:"); - Serial.print( tt ); - Serial.print(" B:"); - Serial.println( analog2temp(current_raw[1]) ); - codenum = millis(); - } - manage_heater(); - } - #endif - break; -#if FAN_PIN > -1 - case 106: //M106 Fan On - if (code_seen('S')){ - WRITE(FAN_PIN,HIGH); - fanpwm=constrain(code_value(),0,255); - analogWrite(FAN_PIN, fanpwm); - } - else { - WRITE(FAN_PIN,HIGH); - fanpwm=255; - analogWrite(FAN_PIN, fanpwm); - } - break; - case 107: //M107 Fan Off - WRITE(FAN_PIN,LOW); - analogWrite(FAN_PIN, 0); - break; -#endif -#if (PS_ON_PIN > -1) - case 80: // M80 - ATX Power On - SET_OUTPUT(PS_ON_PIN); //GND - break; - case 81: // M81 - ATX Power Off - SET_INPUT(PS_ON_PIN); //Floating - break; -#endif - case 82: - axis_relative_modes[3] = false; - break; - case 83: - axis_relative_modes[3] = true; - break; - case 18: - case 84: - if(code_seen('S')){ - stepper_inactive_time = code_value() * 1000; - } - else{ - st_synchronize(); - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - break; - case 85: // M85 - code_seen('S'); - max_inactive_time = code_value() * 1000; - break; - case 92: // M92 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); - } - - break; - case 115: // M115 - Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); - break; - case 114: // M114 - Serial.print("X:"); - Serial.print(current_position[X_AXIS]); - Serial.print("Y:"); - Serial.print(current_position[Y_AXIS]); - Serial.print("Z:"); - Serial.print(current_position[Z_AXIS]); - Serial.print("E:"); - Serial.print(current_position[E_AXIS]); - #ifdef DEBUG_STEPS - Serial.print(" Count X:"); - Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); - Serial.print("Y:"); - Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); - Serial.print("Z:"); - Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); - #endif - Serial.println(""); - break; - case 119: // M119 -#if (X_MIN_PIN > -1) - Serial.print("x_min:"); - Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (X_MAX_PIN > -1) - Serial.print("x_max:"); - Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MIN_PIN > -1) - Serial.print("y_min:"); - Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MAX_PIN > -1) - Serial.print("y_max:"); - Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MIN_PIN > -1) - Serial.print("z_min:"); - Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MAX_PIN > -1) - Serial.print("z_max:"); - Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif - Serial.println(""); - break; - //TODO: update for all axis, use for loop - case 201: // M201 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#if 0 // Not used for Sprinter/grbl gen6 - case 202: // M202 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#endif - case 203: // M203 max feedrate mm/sec - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; - } - break; - case 204: // M204 acclereration S normal moves T filmanent only moves - { - if(code_seen('S')) acceleration = code_value() ; - if(code_seen('T')) retract_acceleration = code_value() ; - } - break; - case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk - { - if(code_seen('S')) minimumfeedrate = code_value()*60 ; - if(code_seen('T')) mintravelfeedrate = code_value()*60 ; - if(code_seen('B')) minsegmenttime = code_value() ; - if(code_seen('X')) max_xy_jerk = code_value()*60 ; - if(code_seen('Z')) max_z_jerk = code_value()*60 ; - } - break; - case 220: // M220 S- set speed factor override percentage - { - if(code_seen('S')) - { - feedmultiply = code_value() ; - feedmultiplychanged=true; - } - } - break; -#ifdef PIDTEMP - case 301: // M301 - if(code_seen('P')) Kp = code_value(); - if(code_seen('I')) Ki = code_value()*PID_dT; - if(code_seen('D')) Kd = code_value()/PID_dT; -// ECHOLN("Kp "<<_FLOAT(Kp,2)); -// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); -// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); - -// temp_iState_min = 0.0; -// if (Ki!=0) { -// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); -// } -// else temp_iState_max = 1.0e10; - break; -#endif //PIDTEMP - case 500: // Store settings in EEPROM - { - StoreSettings(); - } - break; - case 501: // Read settings from EEPROM - { - RetrieveSettings(); - } - break; - case 502: // Revert to default settings - { - RetrieveSettings(true); - } - break; - - } - } - else{ - Serial.println("Unknown command:"); - Serial.println(cmdbuffer[bufindr]); - } - - ClearToSend(); -} - -void FlushSerialRequestResend() -{ - //char cmdbuffer[bufindr][100]="Resend:"; - Serial.flush(); - Serial.print("Resend:"); - Serial.println(gcode_LastN + 1); - ClearToSend(); -} - -void ClearToSend() -{ - previous_millis_cmd = millis(); -#ifdef SDSUPPORT - if(fromsd[bufindr]) - return; -#endif //SDSUPPORT - Serial.println("ok"); -} - -inline void get_coordinates() -{ - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? - } - if(code_seen('F')) { - next_feedrate = code_value(); - if(next_feedrate > 0.0) feedrate = next_feedrate; - } -} - -void prepare_move() -{ - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); - for(int i=0; i < NUM_AXIS; i++) { - current_position[i] = destination[i]; - } -} - - - -#ifdef USE_WATCHDOG - -#include -#include - -volatile uint8_t timeout_seconds=0; - -void(* ctrlaltdelete) (void) = 0; - -ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec - if(timeout_seconds++ >= WATCHDOG_TIMEOUT) - { - kill(); -#ifdef RESET_MANUAL - LCD_MESSAGE("Please Reset!"); - ECHOLN("echo_: Something is wrong, please turn off the printer."); -#else - LCD_MESSAGE("Timeout, resetting!"); -#endif - //disable watchdog, it will survife reboot. - WDTCSR |= (1< -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif - disable_x(); - disable_y(); - disable_z(); - disable_e(); - - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); - Serial.println("!! Printer halted. kill() called!!"); - while(1); // Wait for reset -} - -void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - check_axes_activity(); -} +/* + Reprap firmware 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + */ + +#include "EEPROMwrite.h" +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" + +#ifdef SIMPLE_LCD + #include "Simplelcd.h" +#endif + +char version_string[] = "1.0.0 Alpha 1"; + +#ifdef SDSUPPORT +#include "SdFat.h" +#endif //SDSUPPORT + + +// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html +// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes + +//Implemented Codes +//------------------- +// G0 -> G1 +// G1 - Coordinated Movement X Y Z E +// G4 - Dwell S or P +// G28 - Home all Axis +// G90 - Use Absolute Coordinates +// G91 - Use Relative Coordinates +// G92 - Set current position to cordinates given + +//RepRap M Codes +// M104 - Set extruder target temp +// M105 - Read current temp +// M106 - Fan on +// M107 - Fan off +// M109 - Wait for extruder current temp to reach target temp. +// M114 - Display current position + +//Custom M Codes +// M20 - List SD card +// M21 - Init SD card +// M22 - Release SD card +// M23 - Select SD file (M23 filename.g) +// M24 - Start/resume SD print +// M25 - Pause SD print +// M26 - Set SD position in bytes (M26 S12345) +// M27 - Report SD print status +// M28 - Start SD write (M28 filename.g) +// M29 - Stop SD write +// M42 - Change pin status via gcode +// M80 - Turn on Power Supply +// M81 - Turn off Power Supply +// M82 - Set E codes absolute (default) +// M83 - Set E codes relative while in Absolute Coordinates (G90) mode +// M84 - Disable steppers until next move, +// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. +// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) +// M92 - Set axis_steps_per_unit - same syntax as G92 +// M115 - Capabilities string +// M140 - Set bed target temp +// M190 - Wait for bed current temp to reach target temp. +// M200 - Set filament diameter +// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) +// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk +// M220 - set speed factor override percentage S:factor in percent +// M301 - Set PID parameters P I and D +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. + +//Stepper Movement Variables + +char axis_codes[NUM_AXIS] = { + 'X', 'Y', 'Z', 'E'}; +float destination[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +bool home_all_axis = true; +float feedrate = 1500.0, next_feedrate, saved_feedrate; +long gcode_N, gcode_LastN; + +float homing_feedrate[] = HOMING_FEEDRATE; +bool axis_relative_modes[] = AXIS_RELATIVE_MODES; + +bool relative_mode = false; //Determines Absolute or Relative Coordinates +bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. + +uint8_t fanpwm=0; + +volatile int feedmultiply=100; //100->1 200->2 +int saved_feedmultiply; +volatile bool feedmultiplychanged=false; +// comm variables +#define MAX_CMD_SIZE 96 +#define BUFSIZE 4 +char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; +bool fromsd[BUFSIZE]; +int bufindr = 0; +int bufindw = 0; +int buflen = 0; +int i = 0; +char serial_char; +int serial_count = 0; +boolean comment_mode = false; +char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc +extern float HeaterPower; + +#include "EEPROM.h" + +const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 + +float tt = 0, bt = 0; +#ifdef WATCHPERIOD +int watch_raw = -1000; +unsigned long watchmillis = 0; +#endif //WATCHPERIOD + +//Inactivity shutdown variables +unsigned long previous_millis_cmd = 0; +unsigned long max_inactive_time = 0; +unsigned long stepper_inactive_time = 0; + +unsigned long starttime=0; +unsigned long stoptime=0; +#ifdef SDSUPPORT +Sd2Card card; +SdVolume volume; +SdFile root; +SdFile file; +uint32_t filesize = 0; +uint32_t sdpos = 0; +bool sdmode = false; +bool sdactive = false; +bool savetosd = false; +int16_t n; +unsigned long autostart_atmillis=0; + +void initsd(){ + sdactive = false; +#if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)){ + //if (!card.init(SPI_HALF_SPEED,SDSS)) + Serial.println("SD init fail"); + } + else if (!volume.init(&card)) + Serial.println("volume.init failed"); + else if (!root.openRoot(&volume)) + Serial.println("openRoot failed"); + else + { + sdactive = true; + Serial.println("SD card ok"); + } +#endif //SDSS +} + +void quickinitsd(){ + sdactive=false; + autostart_atmillis=millis()+5000; +} + +inline void write_command(char *buf){ + char* begin = buf; + char* npos = 0; + 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'; + //Serial.println(begin); + file.write(begin); + if (file.writeError){ + Serial.println("error writing to file"); + } +} +#endif //SDSUPPORT + + +///adds an command to the main command buffer +void enquecommand(const char *cmd) +{ + if(buflen < BUFSIZE) + { + //this is dangerous if a mixing of serial and this happsens + strcpy(&(cmdbuffer[bufindw][0]),cmd); + Serial.print("en:");Serial.println(cmdbuffer[bufindw]); + bufindw= (bufindw + 1)%BUFSIZE; + buflen += 1; + } +} + +void setup() +{ + + Serial.begin(BAUDRATE); + ECHOLN("Marlin "< -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); +#endif //SDPOWER + quickinitsd(); + +#endif //SDSUPPORT + plan_init(); // Initialize planner; + st_init(); // Initialize stepper; + tp_init(); // Initialize temperature loop + //checkautostart(); +} + +#ifdef SDSUPPORT +bool autostart_stilltocheck=true; + + +void checkautostart(bool force) +{ + //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset + if(!force) + { + if(!autostart_stilltocheck) + return; + if(autostart_atmillis 0) + { + for(int i=0;i<(int)strlen((char*)p.name);i++) + p.name[i]=tolower(p.name[i]); + //Serial.print((char*)p.name); + //Serial.print(" "); + //Serial.println(autoname); + if(p.name[9]!='~') //skip safety copies + if(strncmp((char*)p.name,autoname,5)==0) + { + char cmd[30]; + + sprintf(cmd,"M23 %s",autoname); + //sprintf(cmd,"M115"); + //enquecommand("G92 Z0"); + //enquecommand("G1 Z10 F2000"); + //enquecommand("G28 X-105 Y-105"); + enquecommand(cmd); + enquecommand("M24"); + found=true; + + } + } + if(!found) + lastnr=-1; + else + lastnr++; + +} +#else + +inline void checkautostart(bool x) +{ +} +#endif + + +void loop() +{ + if(buflen<3) + get_command(); + checkautostart(false); + if(buflen) + { +#ifdef SDSUPPORT + if(savetosd){ + if(strstr(cmdbuffer[bufindr],"M29") == NULL){ + write_command(cmdbuffer[bufindr]); + Serial.println("ok"); + } + else{ + file.sync(); + file.close(); + savetosd = false; + Serial.println("Done saving file."); + } + } + else{ + process_commands(); + } +#else + process_commands(); +#endif //SDSUPPORT + buflen = (buflen-1); + bufindr = (bufindr + 1)%BUFSIZE; + } + //check heater every n milliseconds + manage_heater(); + manage_inactivity(1); + LCD_STATUS; +} + + +inline void get_command() +{ + while( Serial.available() > 0 && buflen < BUFSIZE) { + serial_char = Serial.read(); + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) + { + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = false; + if(strstr(cmdbuffer[bufindw], "N") != NULL) + { + strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); + gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); + if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { + Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); + Serial.println(gcode_LastN); + //Serial.println(gcode_N); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + if(strstr(cmdbuffer[bufindw], "*") != NULL) + { + byte checksum = 0; + byte count = 0; + while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; + strchr_pointer = strchr(cmdbuffer[bufindw], '*'); + + if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { + Serial.print("Error: checksum mismatch, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + //if no errors, continue parsing + } + else + { + Serial.print("Error: No Checksum with line number, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + gcode_LastN = gcode_N; + //if no errors, continue parsing + } + else // if we don't receive 'N' but still see '*' + { + if((strstr(cmdbuffer[bufindw], "*") != NULL)) + { + Serial.print("Error: No Line Number with checksum, Last Line:"); + Serial.println(gcode_LastN); + serial_count = 0; + return; + } + } + if((strstr(cmdbuffer[bufindw], "G") != NULL)){ + strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); + switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ + case 0: + case 1: +#ifdef SDSUPPORT + if(savetosd) + break; +#endif //SDSUPPORT + Serial.println("ok"); + break; + default: + break; + } + + } + bufindw = (bufindw + 1)%BUFSIZE; + buflen += 1; + + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#ifdef SDSUPPORT + if(!sdmode || serial_count!=0){ + return; + } + while( filesize > sdpos && buflen < BUFSIZE) { + n = file.read(); + serial_char = (char)n; + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) + { + sdpos = file.curPosition(); + if(sdpos >= filesize){ + sdmode = false; + Serial.println("Done printing file"); + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + checkautostart(true); + } + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = true; + buflen += 1; + bufindw = (bufindw + 1)%BUFSIZE; + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#endif //SDSUPPORT + +} + + +inline float code_value() { + return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); +} +inline long code_value_long() { + return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); +} +inline bool code_seen(char code_string[]) { + return (strstr(cmdbuffer[bufindr], code_string) != NULL); +} //Return True if the string was found + +inline bool code_seen(char code) +{ + strchr_pointer = strchr(cmdbuffer[bufindr], code); + return (strchr_pointer != NULL); //Return True if a character was found +} + +inline void process_commands() +{ + unsigned long codenum; //throw away variable + char *starpos = NULL; + + if(code_seen('G')) + { + switch((int)code_value()) + { + case 0: // G0 -> G1 + case 1: // G1 + get_coordinates(); // For X Y Z E F + prepare_move(); + previous_millis_cmd = millis(); + //ClearToSend(); + return; + //break; + case 4: // G4 dwell + codenum = 0; + if(code_seen('P')) codenum = code_value(); // milliseconds to wait + if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait + codenum += millis(); // keep track of when we started waiting + while(millis() < codenum ){ + manage_heater(); + } + break; + case 28: //G28 Home all Axis one at a time + saved_feedrate = feedrate; + saved_feedmultiply = feedmultiply; + feedmultiply = 100; + + for(int i=0; i < NUM_AXIS; i++) { + destination[i] = current_position[i]; + } + feedrate = 0.0; + + home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); + + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { + if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ +// st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]; + prepare_move(); + +// st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = -5 * X_HOME_DIR; + prepare_move(); + +// st_synchronize(); + destination[X_AXIS] = 10 * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]/2 ; + prepare_move(); + +// st_synchronize(); + current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = current_position[X_AXIS]; + feedrate = 0.0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { + if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]; + prepare_move(); +// st_synchronize(); + + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = -5 * Y_HOME_DIR; + prepare_move(); +// st_synchronize(); + + destination[Y_AXIS] = 10 * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]/2; + prepare_move(); +// st_synchronize(); + + current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = current_position[Y_AXIS]; + feedrate = 0.0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { + if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]; + prepare_move(); +// st_synchronize(); + + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = -2 * Z_HOME_DIR; + prepare_move(); +// st_synchronize(); + + destination[Z_AXIS] = 3 * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]/2; + prepare_move(); +// st_synchronize(); + + current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = current_position[Z_AXIS]; + feedrate = 0.0; + } + } + feedrate = saved_feedrate; + feedmultiply = saved_feedmultiply; + previous_millis_cmd = millis(); + break; + case 90: // G90 + relative_mode = false; + break; + case 91: // G91 + relative_mode = true; + break; + case 92: // G92 + if(!code_seen(axis_codes[E_AXIS])) + st_synchronize(); + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) current_position[i] = code_value(); + } + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + break; + } + } + + else if(code_seen('M')) + { + + switch( (int)code_value() ) + { +#ifdef SDSUPPORT + + case 20: // M20 - list SD card + Serial.println("Begin file list"); + root.ls(); + Serial.println("End file list"); + break; + case 21: // M21 - init SD card + sdmode = false; + initsd(); + break; + case 22: //M22 - release SD card + sdmode = false; + sdactive = false; + break; + case 23: //M23 - Select file + if(sdactive){ + sdmode = false; + file.close(); + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos!=NULL) + *(starpos-1)='\0'; + if (file.open(&root, strchr_pointer + 4, O_READ)) { + Serial.print("File opened:"); + Serial.print(strchr_pointer + 4); + Serial.print(" Size:"); + Serial.println(file.fileSize()); + sdpos = 0; + filesize = file.fileSize(); + Serial.println("File selected"); + } + else{ + Serial.println("file.open failed"); + } + } + break; + case 24: //M24 - Start SD print + if(sdactive){ + sdmode = true; + starttime=millis(); + } + break; + case 25: //M25 - Pause SD print + if(sdmode){ + sdmode = false; + } + break; + case 26: //M26 - Set SD index + if(sdactive && code_seen('S')){ + sdpos = code_value_long(); + file.seekSet(sdpos); + } + break; + case 27: //M27 - Get SD status + if(sdactive){ + Serial.print("SD printing byte "); + Serial.print(sdpos); + Serial.print("/"); + Serial.println(filesize); + } + else{ + Serial.println("Not SD printing"); + } + break; + case 28: //M28 - Start SD write + if(sdactive){ + char* npos = 0; + file.close(); + sdmode = false; + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + { + Serial.print("open failed, File: "); + Serial.print(strchr_pointer + 4); + Serial.print("."); + } + else{ + savetosd = true; + Serial.print("Writing to file: "); + Serial.println(strchr_pointer + 4); + } + } + break; + case 29: //M29 - Stop SD write + //processed in write to file routine above + //savetosd = false; + break; + case 30: + { + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + } + break; +#endif //SDSUPPORT + case 42: //M42 -Change pin status via gcode + if (code_seen('S')) + { + int pin_status = code_value(); + if (code_seen('P') && pin_status >= 0 && pin_status <= 255) + { + int pin_number = code_value(); + for(int i = 0; i < (int)sizeof(sensitive_pins); i++) + { + if (sensitive_pins[i] == pin_number) + { + pin_number = -1; + break; + } + } + + if (pin_number > -1) + { + pinMode(pin_number, OUTPUT); + digitalWrite(pin_number, pin_status); + analogWrite(pin_number, pin_status); + } + } + } + break; + case 104: // M104 + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND] = temp2analog(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[TEMPSENSOR_HOTEND] > current_raw[TEMPSENSOR_HOTEND]){ + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; + }else{ + watchmillis = 0; + } + #endif + break; + case 140: // M140 set bed temp + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); + break; + case 105: // M105 + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + tt = analog2temp(current_raw[TEMPSENSOR_HOTEND]); + #endif + #if TEMP_1_PIN > -1 + bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); + #endif + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + Serial.print("ok T:"); + Serial.print(tt); +// Serial.print(", raw:"); +// Serial.print(current_raw); + #if TEMP_1_PIN > -1 +#ifdef PIDTEMP + Serial.print(" B:"); + #if TEMP_1_PIN > -1 + Serial.println(bt); + #else + Serial.println(HeaterPower); + #endif +#else + Serial.println(); +#endif + #else + Serial.println(); + #endif + #else + Serial.println("No thermistors - no temp"); + #endif + return; + //break; + case 109: {// M109 - Wait for extruder heater to reach target. + LCD_MESSAGE("Heating..."); + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND] = temp2analog(code_value()); + #ifdef PIDTEMP + pid_setpoint = code_value(); + #endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[TEMPSENSOR_HOTEND]>current_raw[TEMPSENSOR_HOTEND]){ + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; + } else { + watchmillis = 0; + } + #endif //WATCHPERIOD + codenum = millis(); + + /* See if we are heating up or cooling down */ + bool target_direction = (current_raw[0] < target_raw[0]); // true if heating, false if cooling + + #ifdef TEMP_RESIDENCY_TIME + long residencyStart; + residencyStart = -1; + /* continue to loop until we have reached the target temp + _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ + while((target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0])) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + #else + while ( target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0]) ) { + #endif //TEMP_RESIDENCY_TIME + if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down + Serial.print("T:"); + Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND]) ); + codenum = millis(); + } + manage_heater(); + LCD_STATUS; + #ifdef TEMP_RESIDENCY_TIME + /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time + or when current temp falls outside the hysteresis after target temp was reached */ + if ((residencyStart == -1 && target_direction && current_raw[0] >= target_raw[0]) || + (residencyStart == -1 && !target_direction && current_raw[0] <= target_raw[0]) || + (residencyStart > -1 && labs(analog2temp(current_raw[0]) - analog2temp(target_raw[0])) > TEMP_HYSTERESIS) ) { + residencyStart = millis(); + } + #endif //TEMP_RESIDENCY_TIME + } + LCD_MESSAGE("Marlin ready."); + } + break; + case 190: // M190 - Wait bed for heater to reach target. + #if TEMP_1_PIN > -1 + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); + codenum = millis(); + while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) + { + if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND]); + Serial.print("T:"); + Serial.println( tt ); + Serial.print("ok T:"); + Serial.print( tt ); + Serial.print(" B:"); + Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); + codenum = millis(); + } + manage_heater(); + } + #endif + break; +#if FAN_PIN > -1 + case 106: //M106 Fan On + if (code_seen('S')){ + WRITE(FAN_PIN,HIGH); + fanpwm=constrain(code_value(),0,255); + analogWrite(FAN_PIN, fanpwm); + } + else { + WRITE(FAN_PIN,HIGH); + fanpwm=255; + analogWrite(FAN_PIN, fanpwm); + } + break; + case 107: //M107 Fan Off + WRITE(FAN_PIN,LOW); + analogWrite(FAN_PIN, 0); + break; +#endif +#if (PS_ON_PIN > -1) + case 80: // M80 - ATX Power On + SET_OUTPUT(PS_ON_PIN); //GND + break; + case 81: // M81 - ATX Power Off + SET_INPUT(PS_ON_PIN); //Floating + break; +#endif + case 82: + axis_relative_modes[3] = false; + break; + case 83: + axis_relative_modes[3] = true; + break; + case 18: + case 84: + if(code_seen('S')){ + stepper_inactive_time = code_value() * 1000; + } + else{ + st_synchronize(); + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + break; + case 85: // M85 + code_seen('S'); + max_inactive_time = code_value() * 1000; + break; + case 92: // M92 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); + } + + break; + case 115: // M115 + Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + break; + case 114: // M114 + Serial.print("X:"); + Serial.print(current_position[X_AXIS]); + Serial.print("Y:"); + Serial.print(current_position[Y_AXIS]); + Serial.print("Z:"); + Serial.print(current_position[Z_AXIS]); + Serial.print("E:"); + Serial.print(current_position[E_AXIS]); + #ifdef DEBUG_STEPS + Serial.print(" Count X:"); + Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); + Serial.print("Y:"); + Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); + Serial.print("Z:"); + Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); + #endif + Serial.println(""); + break; + case 119: // M119 +#if (X_MIN_PIN > -1) + Serial.print("x_min:"); + Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (X_MAX_PIN > -1) + Serial.print("x_max:"); + Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MIN_PIN > -1) + Serial.print("y_min:"); + Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MAX_PIN > -1) + Serial.print("y_max:"); + Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MIN_PIN > -1) + Serial.print("z_min:"); + Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MAX_PIN > -1) + Serial.print("z_max:"); + Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif + Serial.println(""); + break; + //TODO: update for all axis, use for loop + case 201: // M201 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#if 0 // Not used for Sprinter/grbl gen6 + case 202: // M202 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#endif + case 203: // M203 max feedrate mm/sec + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; + } + break; + case 204: // M204 acclereration S normal moves T filmanent only moves + { + if(code_seen('S')) acceleration = code_value() ; + if(code_seen('T')) retract_acceleration = code_value() ; + } + break; + case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + { + if(code_seen('S')) minimumfeedrate = code_value()*60 ; + if(code_seen('T')) mintravelfeedrate = code_value()*60 ; + if(code_seen('B')) minsegmenttime = code_value() ; + if(code_seen('X')) max_xy_jerk = code_value()*60 ; + if(code_seen('Z')) max_z_jerk = code_value()*60 ; + } + break; + case 220: // M220 S- set speed factor override percentage + { + if(code_seen('S')) + { + feedmultiply = code_value() ; + feedmultiplychanged=true; + } + } + break; +#ifdef PIDTEMP + case 301: // M301 + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; +// ECHOLN("Kp "<<_FLOAT(Kp,2)); +// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); +// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); + +// temp_iState_min = 0.0; +// if (Ki!=0) { +// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); +// } +// else temp_iState_max = 1.0e10; + break; +#endif //PIDTEMP + case 500: // Store settings in EEPROM + { + StoreSettings(); + } + break; + case 501: // Read settings from EEPROM + { + RetrieveSettings(); + } + break; + case 502: // Revert to default settings + { + RetrieveSettings(true); + } + break; + + } + } + else{ + Serial.println("Unknown command:"); + Serial.println(cmdbuffer[bufindr]); + } + + ClearToSend(); +} + +void FlushSerialRequestResend() +{ + //char cmdbuffer[bufindr][100]="Resend:"; + Serial.flush(); + Serial.print("Resend:"); + Serial.println(gcode_LastN + 1); + ClearToSend(); +} + +void ClearToSend() +{ + previous_millis_cmd = millis(); +#ifdef SDSUPPORT + if(fromsd[bufindr]) + return; +#endif //SDSUPPORT + Serial.println("ok"); +} + +inline void get_coordinates() +{ + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); + for(int i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} + + + +#ifdef USE_WATCHDOG + +#include +#include + +volatile uint8_t timeout_seconds=0; + +void(* ctrlaltdelete) (void) = 0; + +ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec + if(timeout_seconds++ >= WATCHDOG_TIMEOUT) + { + kill(); +#ifdef RESET_MANUAL + LCD_MESSAGE("Please Reset!"); + ECHOLN("echo_: Something is wrong, please turn off the printer."); +#else + LCD_MESSAGE("Timeout, resetting!"); +#endif + //disable watchdog, it will survife reboot. + WDTCSR |= (1< -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif + disable_x(); + disable_y(); + disable_z(); + disable_e(); + + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + Serial.println("!! Printer halted. kill() called!!"); + while(1); // Wait for reset +} + +void manage_inactivity(byte debug) { + if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); + if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + check_axes_activity(); +} diff --git a/Marlin/fastio.h b/Marlin/fastio.h index c1671ddef..2d1396252 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -24,12 +24,12 @@ */ /// Read a pin -#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) +#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) /// write to a pin -#define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) -//#define _WRITE(IO, v) do { #if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_START; if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); };#if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_END; } while (0) +#define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) +//#define _WRITE(IO, v) do { #if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_START; if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); };#if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_END; } while (0) /// toggle a pin -#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) +#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) /// set pin as input #define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) @@ -2556,4 +2556,4 @@ pins #error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request #endif -#endif /* _ARDUINO_H */ +#endif /* _ARDUINO_H */ diff --git a/Marlin/lcd.h b/Marlin/lcd.h deleted file mode 100644 index 74057ddde..000000000 --- a/Marlin/lcd.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef __LCDH -#define __LCDH - - - - - - - -#endif diff --git a/Marlin/lcd.pde b/Marlin/lcd.pde deleted file mode 100644 index 8b1378917..000000000 --- a/Marlin/lcd.pde +++ /dev/null @@ -1 +0,0 @@ - diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 645384e6d..f0ca29821 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -381,13 +381,6 @@ void check_axes_activity() { // calculation the caller must also provide the physical length of the line in millimeters. void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { - // The target position of the tool in absolute steps - // Calculate target position in absolute steps - long target[4]; - target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); - target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); - target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); // Calculate the buffer head after we push this byte int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); @@ -400,6 +393,15 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { LCD_STATUS; } + // The target position of the tool in absolute steps + // Calculate target position in absolute steps + //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow + long target[4]; + target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + // Prepare to set up new block block_t *block = &block_buffer[block_buffer_head]; @@ -433,7 +435,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { unsigned long microseconds; if (block->steps_e == 0) { - if(feed_rate. -*/ - -// This module is to be considered a sub-module of stepper.c. Please don't include -// this file from any other module. - -#ifndef planner_h -#define planner_h - -// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in -// the source g-code and may never actually be reached if acceleration management is active. -typedef struct { - // Fields used by the bresenham algorithm for tracing the line - long steps_x, steps_y, steps_z, steps_e; // Step count along each axis - long step_event_count; // The number of step events required to complete this block - volatile long accelerate_until; // The index of the step event on which to stop acceleration - volatile long decelerate_after; // The index of the step event on which to start decelerating - volatile long acceleration_rate; // The acceleration rate used for acceleration calculation - unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) -#ifdef ADVANCE - long advance_rate; - volatile long initial_advance; - volatile long final_advance; - float advance; -#endif - - // Fields used by the motion planner to manage acceleration - float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis - float nominal_speed; // The nominal speed for this block in mm/min - float millimeters; // The total travel of this block in mm - float entry_speed; - float acceleration; // acceleration mm/sec^2 - - // Settings for the trapezoid generator - long nominal_rate; // The nominal step rate for this block in step_events/sec - volatile long initial_rate; // The jerk-adjusted step rate at start of block - volatile long final_rate; // The minimal rate at exit - long acceleration_st; // acceleration steps/sec^2 - volatile char busy; -} block_t; - -// Initialize the motion plan subsystem -void plan_init(); - -// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in -// millimaters. Feed rate specifies the speed of the motion. -void plan_buffer_line(float x, float y, float z, float e, float feed_rate); - -// Set position. Used for G92 instructions. -void plan_set_position(float x, float y, float z, float e); - -// Called when the current block is no longer needed. Discards the block and makes the memory -// availible for new blocks. -void plan_discard_current_block(); - -// Gets the current block. Returns NULL if buffer empty -block_t *plan_get_current_block(); - -void check_axes_activity(); - -extern unsigned long minsegmenttime; -extern float max_feedrate[4]; // set the max speeds -extern float axis_steps_per_unit[4]; -extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software -extern float minimumfeedrate; -extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX -extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX -extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. -extern float max_z_jerk; -extern float mintravelfeedrate; -extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; - -#endif +/* + planner.h - buffers movement commands and manages the acceleration profile plan + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +// This module is to be considered a sub-module of stepper.c. Please don't include +// this file from any other module. + +#ifndef planner_h +#define planner_h + +#include "Configuration.h" + +// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in +// the source g-code and may never actually be reached if acceleration management is active. +typedef struct { + // Fields used by the bresenham algorithm for tracing the line + long steps_x, steps_y, steps_z, steps_e; // Step count along each axis + long step_event_count; // The number of step events required to complete this block + volatile long accelerate_until; // The index of the step event on which to stop acceleration + volatile long decelerate_after; // The index of the step event on which to start decelerating + volatile long acceleration_rate; // The acceleration rate used for acceleration calculation + unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) +#ifdef ADVANCE + long advance_rate; + volatile long initial_advance; + volatile long final_advance; + float advance; +#endif + + // Fields used by the motion planner to manage acceleration + float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis + float nominal_speed; // The nominal speed for this block in mm/min + float millimeters; // The total travel of this block in mm + float entry_speed; + float acceleration; // acceleration mm/sec^2 + + // Settings for the trapezoid generator + long nominal_rate; // The nominal step rate for this block in step_events/sec + volatile long initial_rate; // The jerk-adjusted step rate at start of block + volatile long final_rate; // The minimal rate at exit + long acceleration_st; // acceleration steps/sec^2 + volatile char busy; +} block_t; + +// Initialize the motion plan subsystem +void plan_init(); + +// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in +// millimaters. Feed rate specifies the speed of the motion. +void plan_buffer_line(float x, float y, float z, float e, float feed_rate); + +// Set position. Used for G92 instructions. +void plan_set_position(float x, float y, float z, float e); + +// Called when the current block is no longer needed. Discards the block and makes the memory +// availible for new blocks. +void plan_discard_current_block(); + +// Gets the current block. Returns NULL if buffer empty +block_t *plan_get_current_block(); + +void check_axes_activity(); + +extern unsigned long minsegmenttime; +extern float max_feedrate[4]; // set the max speeds +extern float axis_steps_per_unit[4]; +extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +extern float minimumfeedrate; +extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +extern float max_z_jerk; +extern float mintravelfeedrate; +extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +#endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index cd68bae0d..15f143349 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -115,7 +115,7 @@ asm volatile ( \ #define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1<. -*/ - -#ifndef stepper_h -#define stepper_h -// Initialize and start the stepper motor subsystem -void st_init(); - -// Block until all buffered steps are executed -void st_synchronize(); - -// The stepper subsystem goes to sleep when it runs out of things to execute. Call this -// to notify the subsystem that it is time to go to work. -void st_wake_up(); - -// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. -// for debugging purposes only, should be disabled by default -#ifdef DEBUG_STEPS -extern volatile long count_position[NUM_AXIS]; -extern volatile int count_direction[NUM_AXIS]; -#endif - -#endif +/* + stepper.h - stepper motor driver: executes motion plans of planner.c using the stepper motors + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +#ifndef stepper_h +#define stepper_h + +#include "planner.h" + +// Initialize and start the stepper motor subsystem +void st_init(); + +// Block until all buffered steps are executed +void st_synchronize(); + +// The stepper subsystem goes to sleep when it runs out of things to execute. Call this +// to notify the subsystem that it is time to go to work. +void st_wake_up(); + +// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. +// for debugging purposes only, should be disabled by default +#ifdef DEBUG_STEPS +extern volatile long count_position[NUM_AXIS]; +extern volatile int count_direction[NUM_AXIS]; +#endif + +extern block_t *current_block; // A pointer to the block currently being traced +#endif diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 7a9c56e10..5aaf6fd97 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -90,14 +90,15 @@ void manage_heater() float pid_input; float pid_output; - if(temp_meas_ready == true) { + if(temp_meas_ready != true) //better readability + return; CRITICAL_SECTION_START; temp_meas_ready = false; CRITICAL_SECTION_END; #ifdef PIDTEMP - pid_input = analog2temp(current_raw[0]); + pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND]); #ifndef PID_OPENLOOP pid_error = pid_setpoint - pid_input; @@ -118,10 +119,13 @@ CRITICAL_SECTION_END; temp_iState += pid_error; temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); iTerm = Ki * temp_iState; - #define K1 0.95 + //K1 defined in Configuration.h in the PID settings #define K2 (1.0-K1) dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); temp_dState = pid_input; + #ifdef PID_ADD_EXTRUSION_RATE + pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high + #endif pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); } #endif //PID_OPENLOOP @@ -157,7 +161,7 @@ CRITICAL_SECTION_END; previous_millis_bed_heater = millis(); #if TEMP_1_PIN > -1 - if(current_raw[1] >= target_raw[1]) + if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) { WRITE(HEATER_1_PIN,LOW); } @@ -167,7 +171,6 @@ CRITICAL_SECTION_END; } #endif } -} // Takes hot end temperature value as input and returns corresponding raw value. // For a thermistor, it uses the RepRap thermistor temp table. @@ -428,15 +431,15 @@ ISR(TIMER0_COMPB_vect) raw_temp_2_value = 0; #ifdef MAXTEMP #if (HEATER_0_PIN > -1) - if(current_raw[0] >= maxttemp) { - target_raw[0] = 0; + if(current_raw[TEMPSENSOR_HOTEND] >= maxttemp) { + target_raw[TEMPSENSOR_HOTEND] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); } #endif #if (HEATER_2_PIN > -1) - if(current_raw[2] >= maxttemp) { - target_raw[2] = 0; + if(current_raw[TEMPSENSOR_AUX] >= maxttemp) { + target_raw[TEMPSENSOR_AUX] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); } @@ -444,15 +447,15 @@ ISR(TIMER0_COMPB_vect) #endif //MAXTEMP #ifdef MINTEMP #if (HEATER_0_PIN > -1) - if(current_raw[0] <= minttemp) { - target_raw[0] = 0; + if(current_raw[TEMPSENSOR_HOTEND] <= minttemp) { + target_raw[TEMPSENSOR_HOTEND] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); } #endif #if (HEATER_2_PIN > -1) - if(current_raw[2] <= minttemp) { - target_raw[2] = 0; + if(current_raw[TEMPSENSOR_AUX] <= minttemp) { + target_raw[TEMPSENSOR_AUX] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); } diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 986aca999..e2e6c459c 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -1,55 +1,58 @@ -/* - temperature.h - temperature controller - Part of Marlin - - Copyright (c) 2011 Erik van der Zalm - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -#ifndef temperature_h -#define temperature_h - -void manage_inactivity(byte debug); - -void tp_init(); -void manage_heater(); -//int temp2analogu(int celsius, const short table[][2], int numtemps); -//float analog2tempu(int raw, const short table[][2], int numtemps); -float temp2analog(int celsius); -float temp2analogBed(int celsius); -float analog2temp(int raw); -float analog2tempBed(int raw); - -#ifdef HEATER_USES_THERMISTOR - #define HEATERSOURCE 1 -#endif -#ifdef BED_USES_THERMISTOR - #define BEDSOURCE 1 -#endif - -//#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) -//#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS - - -extern float Kp; -extern float Ki; -extern float Kd; -extern float Kc; - -extern int target_raw[3]; -extern int current_raw[3]; -extern double pid_setpoint; - -#endif +/* + temperature.h - temperature controller + Part of Marlin + + Copyright (c) 2011 Erik van der Zalm + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +#ifndef temperature_h +#define temperature_h + +#include "Marlin.h" +#ifdef PID_ADD_EXTRUSION_RATE + #include "stepper.h" +#endif +void tp_init(); +void manage_heater(); +//int temp2analogu(int celsius, const short table[][2], int numtemps); +//float analog2tempu(int raw, const short table[][2], int numtemps); +float temp2analog(int celsius); +float temp2analogBed(int celsius); +float analog2temp(int raw); +float analog2tempBed(int raw); + +#ifdef HEATER_USES_THERMISTOR + #define HEATERSOURCE 1 +#endif +#ifdef BED_USES_THERMISTOR + #define BEDSOURCE 1 +#endif + +//#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) +//#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS + + +extern float Kp; +extern float Ki; +extern float Kd; +extern float Kc; + +enum {TEMPSENSOR_HOTEND=0,TEMPSENSOR_BED=1, TEMPSENSOR_AUX=2}; +extern int target_raw[3]; +extern int current_raw[3]; +extern double pid_setpoint; + +#endif diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 0ea1991dc..6d43d7273 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -7,67 +7,67 @@ #define NUMTEMPS_1 61 const short temptable_1[NUMTEMPS_1][2] = { -{ 23*OVERSAMPLENR , 300 }, -{ 25*OVERSAMPLENR , 295 }, -{ 27*OVERSAMPLENR , 290 }, -{ 28*OVERSAMPLENR , 285 }, -{ 31*OVERSAMPLENR , 280 }, -{ 33*OVERSAMPLENR , 275 }, -{ 35*OVERSAMPLENR , 270 }, -{ 38*OVERSAMPLENR , 265 }, -{ 41*OVERSAMPLENR , 260 }, -{ 44*OVERSAMPLENR , 255 }, -{ 48*OVERSAMPLENR , 250 }, -{ 52*OVERSAMPLENR , 245 }, -{ 56*OVERSAMPLENR , 240 }, -{ 61*OVERSAMPLENR , 235 }, -{ 66*OVERSAMPLENR , 230 }, -{ 71*OVERSAMPLENR , 225 }, -{ 78*OVERSAMPLENR , 220 }, -{ 84*OVERSAMPLENR , 215 }, -{ 92*OVERSAMPLENR , 210 }, -{ 100*OVERSAMPLENR , 205 }, -{ 109*OVERSAMPLENR , 200 }, -{ 120*OVERSAMPLENR , 195 }, -{ 131*OVERSAMPLENR , 190 }, -{ 143*OVERSAMPLENR , 185 }, -{ 156*OVERSAMPLENR , 180 }, -{ 171*OVERSAMPLENR , 175 }, -{ 187*OVERSAMPLENR , 170 }, -{ 205*OVERSAMPLENR , 165 }, -{ 224*OVERSAMPLENR , 160 }, -{ 245*OVERSAMPLENR , 155 }, -{ 268*OVERSAMPLENR , 150 }, -{ 293*OVERSAMPLENR , 145 }, -{ 320*OVERSAMPLENR , 140 }, -{ 348*OVERSAMPLENR , 135 }, -{ 379*OVERSAMPLENR , 130 }, -{ 411*OVERSAMPLENR , 125 }, -{ 445*OVERSAMPLENR , 120 }, -{ 480*OVERSAMPLENR , 115 }, -{ 516*OVERSAMPLENR , 110 }, -{ 553*OVERSAMPLENR , 105 }, -{ 591*OVERSAMPLENR , 100 }, -{ 628*OVERSAMPLENR , 95 }, -{ 665*OVERSAMPLENR , 90 }, -{ 702*OVERSAMPLENR , 85 }, -{ 737*OVERSAMPLENR , 80 }, -{ 770*OVERSAMPLENR , 75 }, -{ 801*OVERSAMPLENR , 70 }, -{ 830*OVERSAMPLENR , 65 }, -{ 857*OVERSAMPLENR , 60 }, -{ 881*OVERSAMPLENR , 55 }, -{ 903*OVERSAMPLENR , 50 }, -{ 922*OVERSAMPLENR , 45 }, -{ 939*OVERSAMPLENR , 40 }, -{ 954*OVERSAMPLENR , 35 }, -{ 966*OVERSAMPLENR , 30 }, -{ 977*OVERSAMPLENR , 25 }, -{ 985*OVERSAMPLENR , 20 }, -{ 993*OVERSAMPLENR , 15 }, -{ 999*OVERSAMPLENR , 10 }, -{ 1004*OVERSAMPLENR , 5 }, -{ 1008*OVERSAMPLENR , 0 } //safety +{ 23*OVERSAMPLENR , 300 }, +{ 25*OVERSAMPLENR , 295 }, +{ 27*OVERSAMPLENR , 290 }, +{ 28*OVERSAMPLENR , 285 }, +{ 31*OVERSAMPLENR , 280 }, +{ 33*OVERSAMPLENR , 275 }, +{ 35*OVERSAMPLENR , 270 }, +{ 38*OVERSAMPLENR , 265 }, +{ 41*OVERSAMPLENR , 260 }, +{ 44*OVERSAMPLENR , 255 }, +{ 48*OVERSAMPLENR , 250 }, +{ 52*OVERSAMPLENR , 245 }, +{ 56*OVERSAMPLENR , 240 }, +{ 61*OVERSAMPLENR , 235 }, +{ 66*OVERSAMPLENR , 230 }, +{ 71*OVERSAMPLENR , 225 }, +{ 78*OVERSAMPLENR , 220 }, +{ 84*OVERSAMPLENR , 215 }, +{ 92*OVERSAMPLENR , 210 }, +{ 100*OVERSAMPLENR , 205 }, +{ 109*OVERSAMPLENR , 200 }, +{ 120*OVERSAMPLENR , 195 }, +{ 131*OVERSAMPLENR , 190 }, +{ 143*OVERSAMPLENR , 185 }, +{ 156*OVERSAMPLENR , 180 }, +{ 171*OVERSAMPLENR , 175 }, +{ 187*OVERSAMPLENR , 170 }, +{ 205*OVERSAMPLENR , 165 }, +{ 224*OVERSAMPLENR , 160 }, +{ 245*OVERSAMPLENR , 155 }, +{ 268*OVERSAMPLENR , 150 }, +{ 293*OVERSAMPLENR , 145 }, +{ 320*OVERSAMPLENR , 140 }, +{ 348*OVERSAMPLENR , 135 }, +{ 379*OVERSAMPLENR , 130 }, +{ 411*OVERSAMPLENR , 125 }, +{ 445*OVERSAMPLENR , 120 }, +{ 480*OVERSAMPLENR , 115 }, +{ 516*OVERSAMPLENR , 110 }, +{ 553*OVERSAMPLENR , 105 }, +{ 591*OVERSAMPLENR , 100 }, +{ 628*OVERSAMPLENR , 95 }, +{ 665*OVERSAMPLENR , 90 }, +{ 702*OVERSAMPLENR , 85 }, +{ 737*OVERSAMPLENR , 80 }, +{ 770*OVERSAMPLENR , 75 }, +{ 801*OVERSAMPLENR , 70 }, +{ 830*OVERSAMPLENR , 65 }, +{ 857*OVERSAMPLENR , 60 }, +{ 881*OVERSAMPLENR , 55 }, +{ 903*OVERSAMPLENR , 50 }, +{ 922*OVERSAMPLENR , 45 }, +{ 939*OVERSAMPLENR , 40 }, +{ 954*OVERSAMPLENR , 35 }, +{ 966*OVERSAMPLENR , 30 }, +{ 977*OVERSAMPLENR , 25 }, +{ 985*OVERSAMPLENR , 20 }, +{ 993*OVERSAMPLENR , 15 }, +{ 999*OVERSAMPLENR , 10 }, +{ 1004*OVERSAMPLENR , 5 }, +{ 1008*OVERSAMPLENR , 0 } //safety }; #endif #if (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor @@ -100,35 +100,35 @@ const short temptable_2[NUMTEMPS_2][2] = { #if (THERMISTORHEATER_1 == 3) || (THERMISTORHEATER_2 == 3) || (THERMISTORBED == 3) //mendel-parts #define NUMTEMPS_3 28 const short temptable_3[NUMTEMPS_3][2] = { - {1*OVERSAMPLENR,864}, - {21*OVERSAMPLENR,300}, - {25*OVERSAMPLENR,290}, - {29*OVERSAMPLENR,280}, - {33*OVERSAMPLENR,270}, - {39*OVERSAMPLENR,260}, - {46*OVERSAMPLENR,250}, - {54*OVERSAMPLENR,240}, - {64*OVERSAMPLENR,230}, - {75*OVERSAMPLENR,220}, - {90*OVERSAMPLENR,210}, - {107*OVERSAMPLENR,200}, - {128*OVERSAMPLENR,190}, - {154*OVERSAMPLENR,180}, - {184*OVERSAMPLENR,170}, - {221*OVERSAMPLENR,160}, - {265*OVERSAMPLENR,150}, - {316*OVERSAMPLENR,140}, - {375*OVERSAMPLENR,130}, - {441*OVERSAMPLENR,120}, - {513*OVERSAMPLENR,110}, - {588*OVERSAMPLENR,100}, - {734*OVERSAMPLENR,80}, - {856*OVERSAMPLENR,60}, - {938*OVERSAMPLENR,40}, - {986*OVERSAMPLENR,20}, - {1008*OVERSAMPLENR,0}, - {1018*OVERSAMPLENR,-20} - }; + {1*OVERSAMPLENR,864}, + {21*OVERSAMPLENR,300}, + {25*OVERSAMPLENR,290}, + {29*OVERSAMPLENR,280}, + {33*OVERSAMPLENR,270}, + {39*OVERSAMPLENR,260}, + {46*OVERSAMPLENR,250}, + {54*OVERSAMPLENR,240}, + {64*OVERSAMPLENR,230}, + {75*OVERSAMPLENR,220}, + {90*OVERSAMPLENR,210}, + {107*OVERSAMPLENR,200}, + {128*OVERSAMPLENR,190}, + {154*OVERSAMPLENR,180}, + {184*OVERSAMPLENR,170}, + {221*OVERSAMPLENR,160}, + {265*OVERSAMPLENR,150}, + {316*OVERSAMPLENR,140}, + {375*OVERSAMPLENR,130}, + {441*OVERSAMPLENR,120}, + {513*OVERSAMPLENR,110}, + {588*OVERSAMPLENR,100}, + {734*OVERSAMPLENR,80}, + {856*OVERSAMPLENR,60}, + {938*OVERSAMPLENR,40}, + {986*OVERSAMPLENR,20}, + {1008*OVERSAMPLENR,0}, + {1018*OVERSAMPLENR,-20} + }; #endif #if (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 5f0196fa5..39cca278e 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -153,4 +153,4 @@ #define BLOCK ; #endif #endif //ULTRALCD - + diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 2702af854..a6c75e0fc 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1,1593 +1,1593 @@ -#include "ultralcd.h" - - -#ifdef ULTRA_LCD -extern volatile int feedmultiply; -extern long position[4]; - -char messagetext[LCD_WIDTH]=""; - -#include -LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 - -unsigned long previous_millis_lcd=0; - - - -volatile char buttons=0; //the last checked buttons in a bit array. -int encoderpos=0; -short lastenc=0; -#ifdef NEWPANEL - long blocking=0; -#else - long blocking[8]={0,0,0,0,0,0,0,0}; -#endif -MainMenu menu; - -void lcd_status(const char* message) -{ - strncpy(messagetext,message,LCD_WIDTH); -} - -void clear() -{ - //lcd.setCursor(0,0); - lcd.clear(); - //delay(1); - // lcd.begin(LCD_WIDTH,LCD_HEIGHT); - //lcd_init(); -} -long previous_millis_buttons=0; - -void lcd_init() -{ - //beep(); - byte Degree[8] = - { - B01100, - B10010, - B10010, - B01100, - B00000, - B00000, - B00000, - B00000 - }; - byte Thermometer[8] = - { - B00100, - B01010, - B01010, - B01010, - B01010, - B10001, - B10001, - B01110 - }; - byte uplevel[8]={0x04, 0x0e, 0x1f, 0x04, 0x1c, 0x00, 0x00, 0x00};//thanks joris - byte refresh[8]={0x00, 0x06, 0x19, 0x18, 0x03, 0x13, 0x0c, 0x00}; //thanks joris - lcd.begin(LCD_WIDTH, LCD_HEIGHT); - lcd.createChar(1,Degree); - lcd.createChar(2,Thermometer); - lcd.createChar(3,uplevel); - lcd.createChar(4,refresh); - LCD_MESSAGE(fillto(LCD_WIDTH,"UltiMarlin ready.")); -} - - -void beep() -{ - //return; -#ifdef ULTIPANEL - pinMode(BEEPER,OUTPUT); - for(int i=0;i<20;i++){ - WRITE(BEEPER,HIGH); - delay(5); - WRITE(BEEPER,LOW); - delay(5); - } -#endif -} - -void beepshort() -{ - //return; -#ifdef ULTIPANEL - pinMode(BEEPER,OUTPUT); - for(int i=0;i<10;i++){ - WRITE(BEEPER,HIGH); - delay(3); - WRITE(BEEPER,LOW); - delay(3); - } -#endif -} -void lcd_status() -{ -#ifdef ULTIPANEL - static uint8_t oldbuttons=0; - static long previous_millis_buttons=0; - static long previous_lcdinit=0; -// buttons_check(); // Done in temperature interrupt - //previous_millis_buttons=millis(); - - if((buttons==oldbuttons) && ((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) - return; - oldbuttons=buttons; -#else - - if(((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) - return; -#endif - - previous_millis_lcd=millis(); - menu.update(); -} -#ifdef ULTIPANEL -void buttons_init() -{ -#ifdef NEWPANEL - pinMode(BTN_EN1,INPUT); - pinMode(BTN_EN2,INPUT); - pinMode(BTN_ENC,INPUT); - pinMode(SDCARDDETECT,INPUT); - WRITE(BTN_EN1,HIGH); - WRITE(BTN_EN2,HIGH); - WRITE(BTN_ENC,HIGH); - WRITE(SDCARDDETECT,HIGH); -#else - pinMode(SHIFT_CLK,OUTPUT); - pinMode(SHIFT_LD,OUTPUT); - pinMode(SHIFT_EN,OUTPUT); - pinMode(SHIFT_OUT,INPUT); - WRITE(SHIFT_OUT,HIGH); - WRITE(SHIFT_LD,HIGH); - WRITE(SHIFT_EN,LOW); -#endif -} - - -void buttons_check() -{ -// volatile static bool busy=false; -// if(busy) -// return; -// busy=true; - -#ifdef NEWPANEL - uint8_t newbutton=0; - if(READ(BTN_EN1)==0) newbutton|=EN_A; - if(READ(BTN_EN2)==0) newbutton|=EN_B; - if((blocking>1; - if(READ(SHIFT_OUT)) - newbutton|=(1<<7); - WRITE(SHIFT_CLK,HIGH); - WRITE(SHIFT_CLK,LOW); - } - buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 -#endif - char enc=0; - if(buttons&EN_A) - enc|=(1<<0); - if(buttons&EN_B) - enc|=(1<<1); - if(enc!=lastenc) - { - switch(enc) - { - case encrot0: - if(lastenc==encrot3) - encoderpos++; - else if(lastenc==encrot1) - encoderpos--; - break; - case encrot1: - if(lastenc==encrot0) - encoderpos++; - else if(lastenc==encrot2) - encoderpos--; - break; - case encrot2: - if(lastenc==encrot1) - encoderpos++; - else if(lastenc==encrot3) - encoderpos--; - break; - case encrot3: - if(lastenc==encrot2) - encoderpos++; - else if(lastenc==encrot0) - encoderpos--; - break; - default: - ; - } - } - lastenc=enc; -// busy=false; -} - -#endif - -MainMenu::MainMenu() -{ - status=Main_Status; - displayStartingRow=0; - activeline=0; - force_lcd_update=true; -#ifdef ULTIPANEL - buttons_init(); -#endif - lcd_init(); - linechanging=false; -} - -extern volatile bool feedmultiplychanged; - -void MainMenu::showStatus() -{ -#if LCD_HEIGHT==4 - static int oldcurrentraw=-1; - static int oldtargetraw=-1; - //force_lcd_update=true; - if(force_lcd_update||feedmultiplychanged) //initial display of content - { - feedmultiplychanged=false; - encoderpos=feedmultiply; - clear(); - lcd.setCursor(0,0);lcd.print("\002123/567\001 "); -#if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - lcd.setCursor(10,0);lcd.print("B123/567\001 "); -#endif - } - - - if((abs(current_raw[0]-oldcurrentraw)>3)||force_lcd_update) - { - lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[0]))); - oldcurrentraw=current_raw[0]; - } - if((target_raw[0]!=oldtargetraw)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[0]))); - oldtargetraw=target_raw[0]; - } - #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - static int oldcurrentbedraw=-1; - static int oldtargetbedraw=-1; - if((current_bed_raw!=oldcurrentbedraw)||force_lcd_update) - { - lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_bed_raw))); - oldcurrentraw=current_raw[1]; - } - if((target_bed_raw!=oldtargebedtraw)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_bed_raw))); - oldtargetraw=target_bed_raw; - } - #endif - //starttime=2; - static uint16_t oldtime=0; - if(starttime!=0) - { - lcd.setCursor(0,1); - uint16_t time=millis()/60000-starttime/60000; - - if(starttime!=oldtime) - { - lcd.print(itostr2(time/60));lcd.print("h ");lcd.print(itostr2(time%60));lcd.print("m"); - oldtime=time; - } - } - static int oldzpos=0; - int currentz=current_position[2]*10; - if((currentz!=oldzpos)||force_lcd_update) - { - lcd.setCursor(10,1); - lcd.print("Z:");lcd.print(itostr31(currentz)); - oldzpos=currentz; - } - static int oldfeedmultiply=0; - int curfeedmultiply=feedmultiply; - if(encoderpos!=curfeedmultiply||force_lcd_update) - { - curfeedmultiply=encoderpos; - if(curfeedmultiply<10) - curfeedmultiply=10; - if(curfeedmultiply>999) - curfeedmultiply=999; - feedmultiply=curfeedmultiply; - encoderpos=curfeedmultiply; - } - if((curfeedmultiply!=oldfeedmultiply)||force_lcd_update) - { - oldfeedmultiply=curfeedmultiply; - lcd.setCursor(0,2); - lcd.print(itostr3(curfeedmultiply));lcd.print("% "); - } - if(messagetext[0]!='\0') - { - lcd.setCursor(0,LCD_HEIGHT-1); - lcd.print(fillto(LCD_WIDTH,messagetext)); - messagetext[0]='\0'; - } -#else //smaller LCDS---------------------------------- - static int oldcurrentraw=-1; - static int oldtargetraw=-1; - if(force_lcd_update) //initial display of content - { - encoderpos=feedmultiply; - lcd.setCursor(0,0);lcd.print("\002123/567\001 "); - #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - lcd.setCursor(10,0);lcd.print("B123/567\001 "); - #endif - } - - - if((abs(current_raw[0]-oldcurrentraw)>3)||force_lcd_update) - { - lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[0]))); - oldcurrentraw=current_raw[0]; - } - if((target_raw[0]!=oldtargetraw)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[0]))); - oldtargetraw=target_raw[0]; - } - - if(messagetext[0]!='\0') - { - lcd.setCursor(0,LCD_HEIGHT-1); - lcd.print(fillto(LCD_WIDTH,messagetext)); - messagetext[0]='\0'; - } - -#endif -} - -enum {ItemP_exit, ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude, ItemP_disstep}; - -void MainMenu::showPrepare() -{ - uint8_t line=0; - if(lastlineoffset!=lineoffset) - { - force_lcd_update=true; - clear(); - } - for(uint8_t i=lineoffset;i3) - { - lineoffset++; - encoderpos=3*lcdslow; - if(lineoffset>(ItemP_disstep+1-LCD_HEIGHT)) - lineoffset=ItemP_disstep+1-LCD_HEIGHT; - force_lcd_update=true; - } - //encoderpos=encoderpos%LCD_HEIGHT; - lastencoderpos=encoderpos; - activeline=encoderpos/lcdslow; - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); - } -} -enum { - ItemC_exit, ItemC_nozzle, - ItemC_PID_P,ItemC_PID_I,ItemC_PID_D,ItemC_PID_C, - ItemC_fan, - ItemC_acc, ItemC_xyjerk, - ItemC_vmaxx, ItemC_vmaxy, ItemC_vmaxz, ItemC_vmaxe, - ItemC_vtravmin,ItemC_vmin, - ItemC_amaxx, ItemC_amaxy, ItemC_amaxz, ItemC_amaxe, - ItemC_aret,ItemC_esteps, ItemC_store, ItemC_load,ItemC_failsafe -}; - -void MainMenu::showControl() -{ - uint8_t line=0; - if((lastlineoffset!=lineoffset)||force_lcd_update) - { - force_lcd_update=true; - clear(); - } - for(uint8_t i=lineoffset;i260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - - case ItemC_fan: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Fan speed:"); - lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); - } - - if((activeline==line) ) - { - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=fanpwm; - } - else - { - fanpwm = constrain(encoderpos,0,255); - encoderpos=fanpwm; - analogWrite(FAN_PIN, fanpwm); - - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>255) encoderpos=255; - fanpwm=encoderpos; - analogWrite(FAN_PIN, fanpwm); - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - case ItemC_acc: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Acc:"); - lcd.setCursor(13,line);lcd.print(itostr3(acceleration/100));lcd.print("00"); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)acceleration/100; - } - else - { - acceleration= encoderpos*100; - encoderpos=activeline*lcdslow; - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<5) encoderpos=5; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); - } - } - }break; - case ItemC_xyjerk: //max_xy_jerk - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Vxy-jerk: "); - lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk/60)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_xy_jerk/60; - } - else - { - max_xy_jerk= encoderpos*60; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - case ItemC_PID_P: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" PID-P: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kp)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kp/5; - } - else - { - Kp= encoderpos*5; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>9990/5) encoderpos=9990/5; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); - } - } - }break; - case ItemC_PID_I: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" PID-I: "); - lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(Ki*10); - } - else - { - Ki= encoderpos/10.; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); - } - } - }break; - case ItemC_PID_D: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" PID-D: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kd)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kd/5; - } - else - { - Kd= encoderpos*5; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>9990/5) encoderpos=9990/5; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); - } - } - }break; - - - - case ItemC_PID_C: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" PID-C: "); - lcd.setCursor(13,line);lcd.print(itostr3(Kc)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kc; - } - else - { - Kc= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - case ItemC_vmaxx: - case ItemC_vmaxy: - case ItemC_vmaxz: - case ItemC_vmaxe: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Vmax "); - if(i==ItemC_vmaxx)lcd.print("x:"); - if(i==ItemC_vmaxy)lcd.print("y:"); - if(i==ItemC_vmaxz)lcd.print("z:"); - if(i==ItemC_vmaxe)lcd.print("e:"); - lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemC_vmaxx]/60)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_feedrate[i-ItemC_vmaxx]/60; - } - else - { - max_feedrate[i-ItemC_vmaxx]= encoderpos*60; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - - case ItemC_vmin: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Vmin:"); - lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate/60)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(minimumfeedrate/60.); - } - else - { - minimumfeedrate= encoderpos*60; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - case ItemC_vtravmin: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" VTrav min:"); - lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate/60)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)mintravelfeedrate/60; - } - else - { - mintravelfeedrate= encoderpos*60; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - - case ItemC_amaxx: - case ItemC_amaxy: - case ItemC_amaxz: - case ItemC_amaxe: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Amax "); - if(i==ItemC_amaxx)lcd.print("x:"); - if(i==ItemC_amaxy)lcd.print("y:"); - if(i==ItemC_amaxz)lcd.print("z:"); - if(i==ItemC_amaxe)lcd.print("e:"); - lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100));lcd.print("00"); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100; - } - else - { - max_acceleration_units_per_sq_second[i-ItemC_amaxx]= encoderpos*100; - encoderpos=activeline*lcdslow; - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); - } - } - }break; - case ItemC_aret://float retract_acceleration = 7000; - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" A-retract:"); - lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcd.print("00"); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)retract_acceleration/100; - } - else - { - retract_acceleration= encoderpos*100; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<10) encoderpos=10; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); - } - } - }break; - case ItemC_esteps://axis_steps_per_unit[i] = code_value(); - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Esteps/mm:"); - lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)axis_steps_per_unit[3]; - } - else - { - float factor=float(encoderpos)/float(axis_steps_per_unit[3]); - position[E_AXIS]=lround(position[E_AXIS]*factor); - //current_position[3]*=factor; - axis_steps_per_unit[E_AXIS]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<5) encoderpos=5; - if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); - } - } - }break; - case ItemC_store: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Store EPROM"); - } - if((activeline==line) && CLICKED) - { - //enquecommand("M84"); - beepshort(); - BLOCK; - StoreSettings(); - } - }break; - case ItemC_load: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Load EPROM"); - } - if((activeline==line) && CLICKED) - { - //enquecommand("M84"); - beepshort(); - BLOCK; - RetrieveSettings(); - } - }break; - case ItemC_failsafe: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcd.print(" Restore Failsafe"); - } - if((activeline==line) && CLICKED) - { - //enquecommand("M84"); - beepshort(); - BLOCK; - RetrieveSettings(true); - } - }break; - default: - break; - } - line++; - } - lastlineoffset=lineoffset; - - if(!linechanging && ((encoderpos/lcdslow!=lastencoderpos/lcdslow)||force_lcd_update)) - { - - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?' ':' '); - - if(encoderpos<0) - { - lineoffset--; - if(lineoffset<0) - lineoffset=0; - encoderpos=0; - force_lcd_update=true; - } - if(encoderpos/lcdslow>3) - { - lineoffset++; - encoderpos=3*lcdslow; - if(lineoffset>(ItemC_failsafe+1-LCD_HEIGHT)) - lineoffset=ItemC_failsafe+1-LCD_HEIGHT; - force_lcd_update=true; - } - //encoderpos=encoderpos%LCD_HEIGHT; - lastencoderpos=encoderpos; - activeline=encoderpos/lcdslow; - if(activeline>3) activeline=3; - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); - } -} - -#include "SdFat.h" - -void MainMenu::getfilename(const uint8_t nr) -{ -#ifdef SDSUPPORT - dir_t p; - root.rewind(); - uint8_t cnt=0; - filename[0]='\0'; - while (root.readDir(p) > 0) - { - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - if(cnt++!=nr) continue; - //Serial.println((char*)p.name); - uint8_t writepos=0; - for (uint8_t i = 0; i < 11; i++) - { - if (p.name[i] == ' ') continue; - if (i == 8) { - filename[writepos++]='.'; - } - filename[writepos++]=p.name[i]; - } - filename[writepos++]=0; - } -#endif -} - -uint8_t getnrfilenames() -{ -#ifdef SDSUPPORT - dir_t p; - root.rewind(); - uint8_t cnt=0; - while (root.readDir(p) > 0) - { - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - cnt++; - } - return cnt; -#endif -} - -void MainMenu::showSD() -{ - -#ifdef SDSUPPORT - uint8_t line=0; - - if(lastlineoffset!=lineoffset) - { - force_lcd_update=true; - } - static uint8_t nrfiles=0; - if(force_lcd_update) - { - clear(); - if(sdactive) - { - nrfiles=getnrfilenames(); - } - else - { - nrfiles=0; - lineoffset=0; - } - //Serial.print("Nr files:"); Serial.println((int)nrfiles); - } - - for(int8_t i=lineoffset;i3) - { - lineoffset++; - encoderpos=3*lcdslow; - if(lineoffset>(1+nrfiles+1-LCD_HEIGHT)) - lineoffset=1+nrfiles+1-LCD_HEIGHT; - force_lcd_update=true; - - } - lastencoderpos=encoderpos; - activeline=encoderpos; - if(activeline>3) - { - activeline=3; - } - if(activeline<0) - { - activeline=0; - } - if(activeline>1+nrfiles) activeline=1+nrfiles; - if(lineoffset>1+nrfiles) lineoffset=1+nrfiles; - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); - - } -#endif -} - -enum {ItemM_watch, ItemM_prepare, ItemM_control, ItemM_file }; -void MainMenu::showMainMenu() -{ - //if(int(encoderpos/lcdslow)!=int(lastencoderpos/lcdslow)) - // force_lcd_update=true; -#ifndef ULTIPANEL - force_lcd_update=false; -#endif - //Serial.println((int)activeline); - if(force_lcd_update) - clear(); - for(short line=0;line=LCD_HEIGHT) activeline=LCD_HEIGHT-1; - if((encoderpos!=lastencoderpos)||force_lcd_update) - { - lcd.setCursor(0,activeline);lcd.print(activeline?' ':' '); - if(encoderpos<0) encoderpos=0; - if(encoderpos>3*lcdslow) encoderpos=3*lcdslow; - activeline=abs(encoderpos/lcdslow)%LCD_HEIGHT; - if(activeline<0) activeline=0; - if(activeline>=LCD_HEIGHT) activeline=LCD_HEIGHT-1; - lastencoderpos=encoderpos; - lcd.setCursor(0,activeline);lcd.print(activeline?'>':'\003'); - } - - - -} - -void MainMenu::update() -{ - static MainStatus oldstatus=Main_Menu; //init automatically causes foce_lcd_update=true - static long timeoutToStatus=0; - static bool oldcardstatus=false; -#ifdef CARDINSERTED - if((CARDINSERTED != oldcardstatus)) - { - force_lcd_update=true; - oldcardstatus=CARDINSERTED; - //Serial.println("SD CHANGE"); - if(CARDINSERTED) - { - initsd(); - lcd_status("Card inserted"); - } - else - { - sdactive=false; - lcd_status("Card removed"); - - } - } -#endif - - if(status!=oldstatus) - { - //Serial.println(status); - //clear(); - force_lcd_update=true; - encoderpos=0; - lineoffset=0; - - oldstatus=status; - } - if( (encoderpos!=lastencoderpos) || CLICKED) - timeoutToStatus=millis()+STATUSTIMEOUT; - - switch(status) - { - case Main_Status: - { - showStatus(); - if(CLICKED) - { - linechanging=false; - BLOCK - status=Main_Menu; - timeoutToStatus=millis()+STATUSTIMEOUT; - } - }break; - case Main_Menu: - { - showMainMenu(); - linechanging=false; - }break; - case Main_Prepare: - { - showPrepare(); - }break; - case Main_Control: - { - showControl(); - }break; - case Main_SD: - { - showSD(); - }break; - } - - if(timeoutToStatus=0)?'+':'-'; - xx=abs(xx); - conv[1]=(xx/1000)%10+'0'; - conv[2]=(xx/100)%10+'0'; - conv[3]=(xx/10)%10+'0'; - conv[4]='.'; - conv[5]=(xx)%10+'0'; - conv[6]=0; - return conv; -} - -char *itostr31(const int &xx) -{ - //sprintf(conv,"%5.1f",x); - conv[0]=(xx>=0)?'+':'-'; - conv[1]=(xx/1000)%10+'0'; - conv[2]=(xx/100)%10+'0'; - conv[3]=(xx/10)%10+'0'; - conv[4]='.'; - conv[5]=(xx)%10+'0'; - conv[6]=0; - return conv; -} -char *itostr3(const int &xx) -{ - conv[0]=(xx/100)%10+'0'; - conv[1]=(xx/10)%10+'0'; - conv[2]=(xx)%10+'0'; - conv[3]=0; - return conv; -} - -char *itostr4(const int &xx) -{ - conv[0]=(xx/1000)%10+'0'; - conv[1]=(xx/100)%10+'0'; - conv[2]=(xx/10)%10+'0'; - conv[3]=(xx)%10+'0'; - conv[4]=0; - return conv; -} - -/// convert float to string with +1234.5 format -char *ftostr51(const float &x) -{ - int xx=x*10; - conv[0]=(xx>=0)?'+':'-'; - xx=abs(xx); - conv[1]=(xx/10000)%10+'0'; - conv[2]=(xx/1000)%10+'0'; - conv[3]=(xx/100)%10+'0'; - conv[4]=(xx/10)%10+'0'; - conv[5]='.'; - conv[6]=(xx)%10+'0'; - conv[7]=0; - return conv; -} - -char *fillto(int8_t n,char *c) -{ - static char ret[25]; - bool endfound=false; - for(int8_t i=0;i +LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 + +unsigned long previous_millis_lcd=0; + + + +volatile char buttons=0; //the last checked buttons in a bit array. +int encoderpos=0; +short lastenc=0; +#ifdef NEWPANEL + long blocking=0; +#else + long blocking[8]={0,0,0,0,0,0,0,0}; +#endif +MainMenu menu; + +void lcd_status(const char* message) +{ + strncpy(messagetext,message,LCD_WIDTH); +} + +void clear() +{ + //lcd.setCursor(0,0); + lcd.clear(); + //delay(1); + // lcd.begin(LCD_WIDTH,LCD_HEIGHT); + //lcd_init(); +} +long previous_millis_buttons=0; + +void lcd_init() +{ + //beep(); + byte Degree[8] = + { + B01100, + B10010, + B10010, + B01100, + B00000, + B00000, + B00000, + B00000 + }; + byte Thermometer[8] = + { + B00100, + B01010, + B01010, + B01010, + B01010, + B10001, + B10001, + B01110 + }; + byte uplevel[8]={0x04, 0x0e, 0x1f, 0x04, 0x1c, 0x00, 0x00, 0x00};//thanks joris + byte refresh[8]={0x00, 0x06, 0x19, 0x18, 0x03, 0x13, 0x0c, 0x00}; //thanks joris + lcd.begin(LCD_WIDTH, LCD_HEIGHT); + lcd.createChar(1,Degree); + lcd.createChar(2,Thermometer); + lcd.createChar(3,uplevel); + lcd.createChar(4,refresh); + LCD_MESSAGE(fillto(LCD_WIDTH,"UltiMarlin ready.")); +} + + +void beep() +{ + //return; +#ifdef ULTIPANEL + pinMode(BEEPER,OUTPUT); + for(int i=0;i<20;i++){ + WRITE(BEEPER,HIGH); + delay(5); + WRITE(BEEPER,LOW); + delay(5); + } +#endif +} + +void beepshort() +{ + //return; +#ifdef ULTIPANEL + pinMode(BEEPER,OUTPUT); + for(int i=0;i<10;i++){ + WRITE(BEEPER,HIGH); + delay(3); + WRITE(BEEPER,LOW); + delay(3); + } +#endif +} +void lcd_status() +{ +#ifdef ULTIPANEL + static uint8_t oldbuttons=0; + static long previous_millis_buttons=0; + static long previous_lcdinit=0; +// buttons_check(); // Done in temperature interrupt + //previous_millis_buttons=millis(); + + if((buttons==oldbuttons) && ((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) + return; + oldbuttons=buttons; +#else + + if(((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) + return; +#endif + + previous_millis_lcd=millis(); + menu.update(); +} +#ifdef ULTIPANEL +void buttons_init() +{ +#ifdef NEWPANEL + pinMode(BTN_EN1,INPUT); + pinMode(BTN_EN2,INPUT); + pinMode(BTN_ENC,INPUT); + pinMode(SDCARDDETECT,INPUT); + WRITE(BTN_EN1,HIGH); + WRITE(BTN_EN2,HIGH); + WRITE(BTN_ENC,HIGH); + WRITE(SDCARDDETECT,HIGH); +#else + pinMode(SHIFT_CLK,OUTPUT); + pinMode(SHIFT_LD,OUTPUT); + pinMode(SHIFT_EN,OUTPUT); + pinMode(SHIFT_OUT,INPUT); + WRITE(SHIFT_OUT,HIGH); + WRITE(SHIFT_LD,HIGH); + WRITE(SHIFT_EN,LOW); +#endif +} + + +void buttons_check() +{ +// volatile static bool busy=false; +// if(busy) +// return; +// busy=true; + +#ifdef NEWPANEL + uint8_t newbutton=0; + if(READ(BTN_EN1)==0) newbutton|=EN_A; + if(READ(BTN_EN2)==0) newbutton|=EN_B; + if((blocking>1; + if(READ(SHIFT_OUT)) + newbutton|=(1<<7); + WRITE(SHIFT_CLK,HIGH); + WRITE(SHIFT_CLK,LOW); + } + buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 +#endif + char enc=0; + if(buttons&EN_A) + enc|=(1<<0); + if(buttons&EN_B) + enc|=(1<<1); + if(enc!=lastenc) + { + switch(enc) + { + case encrot0: + if(lastenc==encrot3) + encoderpos++; + else if(lastenc==encrot1) + encoderpos--; + break; + case encrot1: + if(lastenc==encrot0) + encoderpos++; + else if(lastenc==encrot2) + encoderpos--; + break; + case encrot2: + if(lastenc==encrot1) + encoderpos++; + else if(lastenc==encrot3) + encoderpos--; + break; + case encrot3: + if(lastenc==encrot2) + encoderpos++; + else if(lastenc==encrot0) + encoderpos--; + break; + default: + ; + } + } + lastenc=enc; +// busy=false; +} + +#endif + +MainMenu::MainMenu() +{ + status=Main_Status; + displayStartingRow=0; + activeline=0; + force_lcd_update=true; +#ifdef ULTIPANEL + buttons_init(); +#endif + lcd_init(); + linechanging=false; +} + +extern volatile bool feedmultiplychanged; + +void MainMenu::showStatus() +{ +#if LCD_HEIGHT==4 + static int oldcurrentraw=-1; + static int oldtargetraw=-1; + //force_lcd_update=true; + if(force_lcd_update||feedmultiplychanged) //initial display of content + { + feedmultiplychanged=false; + encoderpos=feedmultiply; + clear(); + lcd.setCursor(0,0);lcd.print("\002123/567\001 "); +#if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + lcd.setCursor(10,0);lcd.print("B123/567\001 "); +#endif + } + + + if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); + oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; + } + if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); + oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; + } + #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + static int oldcurrentbedraw=-1; + static int oldtargetbedraw=-1; + if((current_bed_raw!=oldcurrentbedraw)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(analog2temp(current_bed_raw))); + oldcurrentraw=current_raw[TEMPSENSOR_BED]; + } + if((target_bed_raw!=oldtargebedtraw)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(analog2temp(target_bed_raw))); + oldtargetraw=target_bed_raw; + } + #endif + //starttime=2; + static uint16_t oldtime=0; + if(starttime!=0) + { + lcd.setCursor(0,1); + uint16_t time=millis()/60000-starttime/60000; + + if(starttime!=oldtime) + { + lcd.print(itostr2(time/60));lcd.print("h ");lcd.print(itostr2(time%60));lcd.print("m"); + oldtime=time; + } + } + static int oldzpos=0; + int currentz=current_position[2]*10; + if((currentz!=oldzpos)||force_lcd_update) + { + lcd.setCursor(10,1); + lcd.print("Z:");lcd.print(itostr31(currentz)); + oldzpos=currentz; + } + static int oldfeedmultiply=0; + int curfeedmultiply=feedmultiply; + if(encoderpos!=curfeedmultiply||force_lcd_update) + { + curfeedmultiply=encoderpos; + if(curfeedmultiply<10) + curfeedmultiply=10; + if(curfeedmultiply>999) + curfeedmultiply=999; + feedmultiply=curfeedmultiply; + encoderpos=curfeedmultiply; + } + if((curfeedmultiply!=oldfeedmultiply)||force_lcd_update) + { + oldfeedmultiply=curfeedmultiply; + lcd.setCursor(0,2); + lcd.print(itostr3(curfeedmultiply));lcd.print("% "); + } + if(messagetext[0]!='\0') + { + lcd.setCursor(0,LCD_HEIGHT-1); + lcd.print(fillto(LCD_WIDTH,messagetext)); + messagetext[0]='\0'; + } +#else //smaller LCDS---------------------------------- + static int oldcurrentraw=-1; + static int oldtargetraw=-1; + if(force_lcd_update) //initial display of content + { + encoderpos=feedmultiply; + lcd.setCursor(0,0);lcd.print("\002123/567\001 "); + #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + lcd.setCursor(10,0);lcd.print("B123/567\001 "); + #endif + } + + + if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); + oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; + } + if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); + oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; + } + + if(messagetext[0]!='\0') + { + lcd.setCursor(0,LCD_HEIGHT-1); + lcd.print(fillto(LCD_WIDTH,messagetext)); + messagetext[0]='\0'; + } + +#endif +} + +enum {ItemP_exit, ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude, ItemP_disstep}; + +void MainMenu::showPrepare() +{ + uint8_t line=0; + if(lastlineoffset!=lineoffset) + { + force_lcd_update=true; + clear(); + } + for(uint8_t i=lineoffset;i3) + { + lineoffset++; + encoderpos=3*lcdslow; + if(lineoffset>(ItemP_disstep+1-LCD_HEIGHT)) + lineoffset=ItemP_disstep+1-LCD_HEIGHT; + force_lcd_update=true; + } + //encoderpos=encoderpos%LCD_HEIGHT; + lastencoderpos=encoderpos; + activeline=encoderpos/lcdslow; + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + } +} +enum { + ItemC_exit, ItemC_nozzle, + ItemC_PID_P,ItemC_PID_I,ItemC_PID_D,ItemC_PID_C, + ItemC_fan, + ItemC_acc, ItemC_xyjerk, + ItemC_vmaxx, ItemC_vmaxy, ItemC_vmaxz, ItemC_vmaxe, + ItemC_vtravmin,ItemC_vmin, + ItemC_amaxx, ItemC_amaxy, ItemC_amaxz, ItemC_amaxe, + ItemC_aret,ItemC_esteps, ItemC_store, ItemC_load,ItemC_failsafe +}; + +void MainMenu::showControl() +{ + uint8_t line=0; + if((lastlineoffset!=lineoffset)||force_lcd_update) + { + force_lcd_update=true; + clear(); + } + for(uint8_t i=lineoffset;i260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemC_fan: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Fan speed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); + } + + if((activeline==line) ) + { + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=fanpwm; + } + else + { + fanpwm = constrain(encoderpos,0,255); + encoderpos=fanpwm; + analogWrite(FAN_PIN, fanpwm); + + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_acc: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Acc:"); + lcd.setCursor(13,line);lcd.print(itostr3(acceleration/100));lcd.print("00"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)acceleration/100; + } + else + { + acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + } + } + }break; + case ItemC_xyjerk: //max_xy_jerk + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Vxy-jerk: "); + lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_xy_jerk/60; + } + else + { + max_xy_jerk= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_PID_P: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-P: "); + lcd.setCursor(13,line);lcd.print(itostr4(Kp)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kp/5; + } + else + { + Kp= encoderpos*5; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>9990/5) encoderpos=9990/5; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); + } + } + }break; + case ItemC_PID_I: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-I: "); + lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(Ki*10); + } + else + { + Ki= encoderpos/10.; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); + } + } + }break; + case ItemC_PID_D: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-D: "); + lcd.setCursor(13,line);lcd.print(itostr4(Kd)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kd/5; + } + else + { + Kd= encoderpos*5; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990/5) encoderpos=9990/5; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); + } + } + }break; + + + + case ItemC_PID_C: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" PID-C: "); + lcd.setCursor(13,line);lcd.print(itostr3(Kc)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kc; + } + else + { + Kc= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_vmaxx: + case ItemC_vmaxy: + case ItemC_vmaxz: + case ItemC_vmaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Vmax "); + if(i==ItemC_vmaxx)lcd.print("x:"); + if(i==ItemC_vmaxy)lcd.print("y:"); + if(i==ItemC_vmaxz)lcd.print("z:"); + if(i==ItemC_vmaxe)lcd.print("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemC_vmaxx]/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_feedrate[i-ItemC_vmaxx]/60; + } + else + { + max_feedrate[i-ItemC_vmaxx]= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemC_vmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Vmin:"); + lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(minimumfeedrate/60.); + } + else + { + minimumfeedrate= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemC_vtravmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" VTrav min:"); + lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate/60)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)mintravelfeedrate/60; + } + else + { + mintravelfeedrate= encoderpos*60; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemC_amaxx: + case ItemC_amaxy: + case ItemC_amaxz: + case ItemC_amaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Amax "); + if(i==ItemC_amaxx)lcd.print("x:"); + if(i==ItemC_amaxy)lcd.print("y:"); + if(i==ItemC_amaxz)lcd.print("z:"); + if(i==ItemC_amaxe)lcd.print("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100));lcd.print("00"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100; + } + else + { + max_acceleration_units_per_sq_second[i-ItemC_amaxx]= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + } + } + }break; + case ItemC_aret://float retract_acceleration = 7000; + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" A-retract:"); + lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcd.print("00"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)retract_acceleration/100; + } + else + { + retract_acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<10) encoderpos=10; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + } + } + }break; + case ItemC_esteps://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Esteps/mm:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[3]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + } + }break; + case ItemC_store: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Store EPROM"); + } + if((activeline==line) && CLICKED) + { + //enquecommand("M84"); + beepshort(); + BLOCK; + StoreSettings(); + } + }break; + case ItemC_load: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Load EPROM"); + } + if((activeline==line) && CLICKED) + { + //enquecommand("M84"); + beepshort(); + BLOCK; + RetrieveSettings(); + } + }break; + case ItemC_failsafe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcd.print(" Restore Failsafe"); + } + if((activeline==line) && CLICKED) + { + //enquecommand("M84"); + beepshort(); + BLOCK; + RetrieveSettings(true); + } + }break; + default: + break; + } + line++; + } + lastlineoffset=lineoffset; + + if(!linechanging && ((encoderpos/lcdslow!=lastencoderpos/lcdslow)||force_lcd_update)) + { + + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?' ':' '); + + if(encoderpos<0) + { + lineoffset--; + if(lineoffset<0) + lineoffset=0; + encoderpos=0; + force_lcd_update=true; + } + if(encoderpos/lcdslow>3) + { + lineoffset++; + encoderpos=3*lcdslow; + if(lineoffset>(ItemC_failsafe+1-LCD_HEIGHT)) + lineoffset=ItemC_failsafe+1-LCD_HEIGHT; + force_lcd_update=true; + } + //encoderpos=encoderpos%LCD_HEIGHT; + lastencoderpos=encoderpos; + activeline=encoderpos/lcdslow; + if(activeline>3) activeline=3; + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + } +} + +#include "SdFat.h" + +void MainMenu::getfilename(const uint8_t nr) +{ +#ifdef SDSUPPORT + dir_t p; + root.rewind(); + uint8_t cnt=0; + filename[0]='\0'; + while (root.readDir(p) > 0) + { + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + if(cnt++!=nr) continue; + //Serial.println((char*)p.name); + uint8_t writepos=0; + for (uint8_t i = 0; i < 11; i++) + { + if (p.name[i] == ' ') continue; + if (i == 8) { + filename[writepos++]='.'; + } + filename[writepos++]=p.name[i]; + } + filename[writepos++]=0; + } +#endif +} + +uint8_t getnrfilenames() +{ +#ifdef SDSUPPORT + dir_t p; + root.rewind(); + uint8_t cnt=0; + while (root.readDir(p) > 0) + { + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + cnt++; + } + return cnt; +#endif +} + +void MainMenu::showSD() +{ + +#ifdef SDSUPPORT + uint8_t line=0; + + if(lastlineoffset!=lineoffset) + { + force_lcd_update=true; + } + static uint8_t nrfiles=0; + if(force_lcd_update) + { + clear(); + if(sdactive) + { + nrfiles=getnrfilenames(); + } + else + { + nrfiles=0; + lineoffset=0; + } + //Serial.print("Nr files:"); Serial.println((int)nrfiles); + } + + for(int8_t i=lineoffset;i3) + { + lineoffset++; + encoderpos=3*lcdslow; + if(lineoffset>(1+nrfiles+1-LCD_HEIGHT)) + lineoffset=1+nrfiles+1-LCD_HEIGHT; + force_lcd_update=true; + + } + lastencoderpos=encoderpos; + activeline=encoderpos; + if(activeline>3) + { + activeline=3; + } + if(activeline<0) + { + activeline=0; + } + if(activeline>1+nrfiles) activeline=1+nrfiles; + if(lineoffset>1+nrfiles) lineoffset=1+nrfiles; + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + + } +#endif +} + +enum {ItemM_watch, ItemM_prepare, ItemM_control, ItemM_file }; +void MainMenu::showMainMenu() +{ + //if(int(encoderpos/lcdslow)!=int(lastencoderpos/lcdslow)) + // force_lcd_update=true; +#ifndef ULTIPANEL + force_lcd_update=false; +#endif + //Serial.println((int)activeline); + if(force_lcd_update) + clear(); + for(short line=0;line=LCD_HEIGHT) activeline=LCD_HEIGHT-1; + if((encoderpos!=lastencoderpos)||force_lcd_update) + { + lcd.setCursor(0,activeline);lcd.print(activeline?' ':' '); + if(encoderpos<0) encoderpos=0; + if(encoderpos>3*lcdslow) encoderpos=3*lcdslow; + activeline=abs(encoderpos/lcdslow)%LCD_HEIGHT; + if(activeline<0) activeline=0; + if(activeline>=LCD_HEIGHT) activeline=LCD_HEIGHT-1; + lastencoderpos=encoderpos; + lcd.setCursor(0,activeline);lcd.print(activeline?'>':'\003'); + } + + + +} + +void MainMenu::update() +{ + static MainStatus oldstatus=Main_Menu; //init automatically causes foce_lcd_update=true + static long timeoutToStatus=0; + static bool oldcardstatus=false; +#ifdef CARDINSERTED + if((CARDINSERTED != oldcardstatus)) + { + force_lcd_update=true; + oldcardstatus=CARDINSERTED; + //Serial.println("SD CHANGE"); + if(CARDINSERTED) + { + initsd(); + lcd_status("Card inserted"); + } + else + { + sdactive=false; + lcd_status("Card removed"); + + } + } +#endif + + if(status!=oldstatus) + { + //Serial.println(status); + //clear(); + force_lcd_update=true; + encoderpos=0; + lineoffset=0; + + oldstatus=status; + } + if( (encoderpos!=lastencoderpos) || CLICKED) + timeoutToStatus=millis()+STATUSTIMEOUT; + + switch(status) + { + case Main_Status: + { + showStatus(); + if(CLICKED) + { + linechanging=false; + BLOCK + status=Main_Menu; + timeoutToStatus=millis()+STATUSTIMEOUT; + } + }break; + case Main_Menu: + { + showMainMenu(); + linechanging=false; + }break; + case Main_Prepare: + { + showPrepare(); + }break; + case Main_Control: + { + showControl(); + }break; + case Main_SD: + { + showSD(); + }break; + } + + if(timeoutToStatus=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/1000)%10+'0'; + conv[2]=(xx/100)%10+'0'; + conv[3]=(xx/10)%10+'0'; + conv[4]='.'; + conv[5]=(xx)%10+'0'; + conv[6]=0; + return conv; +} + +char *itostr31(const int &xx) +{ + //sprintf(conv,"%5.1f",x); + conv[0]=(xx>=0)?'+':'-'; + conv[1]=(xx/1000)%10+'0'; + conv[2]=(xx/100)%10+'0'; + conv[3]=(xx/10)%10+'0'; + conv[4]='.'; + conv[5]=(xx)%10+'0'; + conv[6]=0; + return conv; +} +char *itostr3(const int &xx) +{ + conv[0]=(xx/100)%10+'0'; + conv[1]=(xx/10)%10+'0'; + conv[2]=(xx)%10+'0'; + conv[3]=0; + return conv; +} + +char *itostr4(const int &xx) +{ + conv[0]=(xx/1000)%10+'0'; + conv[1]=(xx/100)%10+'0'; + conv[2]=(xx/10)%10+'0'; + conv[3]=(xx)%10+'0'; + conv[4]=0; + return conv; +} + +/// convert float to string with +1234.5 format +char *ftostr51(const float &x) +{ + int xx=x*10; + conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/10000)%10+'0'; + conv[2]=(xx/1000)%10+'0'; + conv[3]=(xx/100)%10+'0'; + conv[4]=(xx/10)%10+'0'; + conv[5]='.'; + conv[6]=(xx)%10+'0'; + conv[7]=0; + return conv; +} + +char *fillto(int8_t n,char *c) +{ + static char ret[25]; + bool endfound=false; + for(int8_t i=0;i Board -> Sanguino +Select Tools -> Board -> Arduino Mega 2560 Select the correct serial port in Tools ->Serial Port Open Marlin.pde -Change the printer specific setting in Configuration.h to the correct values. - -The following values are the most important: - - float axis_steps_per_unit[].... // Set the correct steps / mm in the corresponding field - - const bool ENDSTOPS_INVERTING = false; // Change if only positive moves are executed - - #define INVERT_x_DIR true // Change if the motor direction is wrong +Click the Verify/Compile button Click the Upload button If all goes well the firmware is uploading -Start pronterface - -Select the correct Serial Port. Type 250000 in the baudrate field. -Press the Connect button - -=============================================================================================== -Known issues - -On some systems we get compilation errors. - -This is caused by the "wiring_serial.c" and "wiring.c". -The simple fix is to delete these files but this may have a performance impact. - -The best workaround is to move these files to sanguino directory. -(".../arduino-0018/hardware/Sanguino/cores/arduino/" on windows systems) - +Start Ultimaker's Custom RepG 25 +Make sure Show Experimental Profiles is enabled in Preferences +Select Sprinter as the Driver +Press the Connect button. +KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z +That's ok. Enjoy Silky Smooth Printing. diff --git a/README.md b/README.md new file mode 100644 index 000000000..6cab9fa52 --- /dev/null +++ b/README.md @@ -0,0 +1,69 @@ +WARNING: THIS IN A PROCESS OF HEAVY OVERWORKING. +DO NOT USE THIS ON YOUR MACHINE UNTIL FURTHER NOTICE!!! + +=========================================== + +This RepRap firmware is a mashup between Sprinter, grbl and many original parts. + +Derived from Sprinter and Grbl by Erik van der Zalm. +Sprinters lead developers are Kliment and caru. +Grbls lead developer is Simen Svale Skogsrud. +Some features have been added by and configuration has been added by: +Bernhard Kubicek, Matthijs Keuper, Bradley Feldman, and others... + + +Features: + - Interrupt based movement with real linear acceleration + - High steprate + - Look ahead (Keep the speed high when possible. High cornering speed) + - Interrupt based temperature protection + - preliminary support for Matthew Roberts advance algorithm + For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + - Full endstop support + - Simple LCD support (16x2) + - SD Card support + - Provisions for Bernhard Kubicek's new hardware control console and 20x4 lcd + +This firmware is optimized for Ultimaker's gen6 electronics (including the Ultimaker 1.5.x daughterboard and Arduino Mega 2560). + +The default baudrate is 115200. + + +======================================================================================== + +Configuring and compilation + + +Install the latest arduino software IDE/toolset (currently 0022) + http://www.arduino.cc/en/Main/Software + +Install Ultimaker's RepG 25 build + http://software.ultimaker.com +(or alternatively install Kliment's printrun/pronterface https://github.com/kliment/Printrun_) + +Copy the Ultimaker Marlin firmware + https:/github.com/bkubicek/Marlin + (Use the download button) + +Start the arduino IDE. +Select Tools -> Board -> Arduino Mega 2560 +Select the correct serial port in Tools ->Serial Port +Open Marlin.pde + +Click the Verify/Compile button + +Click the Upload button +If all goes well the firmware is uploading + +Start Ultimaker's Custom RepG 25 +Make sure Show Experimental Profiles is enabled in Preferences +Select Sprinter as the Driver + +Press the Connect button. + +KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z + +That's ok. Enjoy Silky Smooth Printing. + + + diff --git a/merging still needs.txt b/merging still needs.txt new file mode 100644 index 000000000..2d369c968 --- /dev/null +++ b/merging still needs.txt @@ -0,0 +1,58 @@ +files to compare manually: +planner.cpp +stepper.cpp +temperature.cpp + +--- +things that changed: +* planner.cpp +estimate_acc_distance now works with floats. +in calculate_trapezoid:for_block + long acceleration_rate=(long)((float)acceleration*8.388608) is gone + so is block_>acceleration_rate +void planner_reverse_pass: + some stuff I don't understand right now changed +in planner_forward_pass: + done: BLOCK_BUFFER_SIZE is now necessarily power of 2 (aka 8 16, 32). Inportant to document this somewhere. +no more inline in void plan_discard_current_block() +no more inline in plan_get_current_block() +in plan_buffer_line(...) + the long target[4]; and calculations of thoose should go after the while(block_buffer_tail==..). if the axis_steps_per_unit are changed from the gcode (M92) the calculation for the currently planned buffer move will be corrupt, because Target is calculated with one value, and the stuff afterwards with another. At least this solved the problem I had with the M92 E* changes in the code. Very sure about this, I took me 20min to find this as the solution for the bug I was hunting. +around if(feed_rate!true+return? +done #define K1 0.95 maybe in the configuration.h? +semi-done: PID-C checking needed. Untested but added. +---- + +still needed to finish the merge, before testin! + + manage_heater + ISR + movement planner + +TODO: + +remove traveling at maxpseed +remove Simplelcd + +remove DEBUG_STEPS? + +block_t +pid_dt ->0.1 whats the changes to the PID, checking needed + + +---- +second merge saturday morning: +done: PID_dt->0.1 \ No newline at end of file From 40e80816235739064fcc7fd74228c9c225387caf Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 5 Nov 2011 14:19:57 +0100 Subject: [PATCH 017/430] changed end of line to windows, which seems to be the majority of developers main platform. --- Marlin/FatStructs.h | 836 +++--- Marlin/Sd2Card.cpp | 1286 ++++----- Marlin/Sd2Card.h | 466 ++-- Marlin/Sd2PinMap.h | 706 ++--- Marlin/SdFat.h | 1094 ++++---- Marlin/SdFatUtil.h | 140 +- Marlin/SdFatmainpage.h | 404 +-- Marlin/SdFile.cpp | 2504 +++++++++--------- Marlin/SdInfo.h | 464 ++-- Marlin/SdVolume.cpp | 590 ++--- Marlin/fastio.h | 5116 ++++++++++++++++++------------------ Marlin/pins.h | 1140 ++++---- Marlin/planner.cpp | 1154 ++++---- Marlin/speed_lookuptable.h | 150 +- Marlin/stepper.cpp | 1184 ++++----- Marlin/streaming.h | 168 +- Marlin/temperature.cpp | 934 +++---- Marlin/thermistortables.h | 820 +++--- Marlin/ultralcd.h | 310 +-- README | 128 +- README.md | 138 +- merging still needs.txt | 114 +- 22 files changed, 9923 insertions(+), 9923 deletions(-) diff --git a/Marlin/FatStructs.h b/Marlin/FatStructs.h index 5713467ce..f5bdaa594 100644 --- a/Marlin/FatStructs.h +++ b/Marlin/FatStructs.h @@ -1,418 +1,418 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef FatStructs_h -#define FatStructs_h -/** - * \file - * FAT file structures - */ -/* - * mostly from Microsoft document fatgen103.doc - * http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx - */ -//------------------------------------------------------------------------------ -/** Value for byte 510 of boot block or MBR */ -uint8_t const BOOTSIG0 = 0X55; -/** Value for byte 511 of boot block or MBR */ -uint8_t const BOOTSIG1 = 0XAA; -//------------------------------------------------------------------------------ -/** - * \struct partitionTable - * \brief MBR partition table entry - * - * A partition table entry for a MBR formatted storage device. - * The MBR partition table has four entries. - */ -struct partitionTable { - /** - * Boot Indicator . Indicates whether the volume is the active - * partition. Legal values include: 0X00. Do not use for booting. - * 0X80 Active partition. - */ - uint8_t boot; - /** - * Head part of Cylinder-head-sector address of the first block in - * the partition. Legal values are 0-255. Only used in old PC BIOS. - */ - uint8_t beginHead; - /** - * Sector part of Cylinder-head-sector address of the first block in - * the partition. Legal values are 1-63. Only used in old PC BIOS. - */ - unsigned beginSector : 6; - /** High bits cylinder for first block in partition. */ - unsigned beginCylinderHigh : 2; - /** - * Combine beginCylinderLow with beginCylinderHigh. Legal values - * are 0-1023. Only used in old PC BIOS. - */ - uint8_t beginCylinderLow; - /** - * Partition type. See defines that begin with PART_TYPE_ for - * some Microsoft partition types. - */ - uint8_t type; - /** - * head part of cylinder-head-sector address of the last sector in the - * partition. Legal values are 0-255. Only used in old PC BIOS. - */ - uint8_t endHead; - /** - * Sector part of cylinder-head-sector address of the last sector in - * the partition. Legal values are 1-63. Only used in old PC BIOS. - */ - unsigned endSector : 6; - /** High bits of end cylinder */ - unsigned endCylinderHigh : 2; - /** - * Combine endCylinderLow with endCylinderHigh. Legal values - * are 0-1023. Only used in old PC BIOS. - */ - uint8_t endCylinderLow; - /** Logical block address of the first block in the partition. */ - uint32_t firstSector; - /** Length of the partition, in blocks. */ - uint32_t totalSectors; -}; -/** Type name for partitionTable */ -typedef struct partitionTable part_t; -//------------------------------------------------------------------------------ -/** - * \struct masterBootRecord - * - * \brief Master Boot Record - * - * The first block of a storage device that is formatted with a MBR. - */ -struct masterBootRecord { - /** Code Area for master boot program. */ - uint8_t codeArea[440]; - /** Optional WindowsNT disk signature. May contain more boot code. */ - uint32_t diskSignature; - /** Usually zero but may be more boot code. */ - uint16_t usuallyZero; - /** Partition tables. */ - part_t part[4]; - /** First MBR signature byte. Must be 0X55 */ - uint8_t mbrSig0; - /** Second MBR signature byte. Must be 0XAA */ - uint8_t mbrSig1; -}; -/** Type name for masterBootRecord */ -typedef struct masterBootRecord mbr_t; -//------------------------------------------------------------------------------ -/** - * \struct biosParmBlock - * - * \brief BIOS parameter block - * - * The BIOS parameter block describes the physical layout of a FAT volume. - */ -struct biosParmBlock { - /** - * Count of bytes per sector. This value may take on only the - * following values: 512, 1024, 2048 or 4096 - */ - uint16_t bytesPerSector; - /** - * Number of sectors per allocation unit. This value must be a - * power of 2 that is greater than 0. The legal values are - * 1, 2, 4, 8, 16, 32, 64, and 128. - */ - uint8_t sectorsPerCluster; - /** - * Number of sectors before the first FAT. - * This value must not be zero. - */ - uint16_t reservedSectorCount; - /** The count of FAT data structures on the volume. This field should - * always contain the value 2 for any FAT volume of any type. - */ - uint8_t fatCount; - /** - * For FAT12 and FAT16 volumes, this field contains the count of - * 32-byte directory entries in the root directory. For FAT32 volumes, - * this field must be set to 0. For FAT12 and FAT16 volumes, this - * value should always specify a count that when multiplied by 32 - * results in a multiple of bytesPerSector. FAT16 volumes should - * use the value 512. - */ - uint16_t rootDirEntryCount; - /** - * This field is the old 16-bit total count of sectors on the volume. - * This count includes the count of all sectors in all four regions - * of the volume. This field can be 0; if it is 0, then totalSectors32 - * must be non-zero. For FAT32 volumes, this field must be 0. For - * FAT12 and FAT16 volumes, this field contains the sector count, and - * totalSectors32 is 0 if the total sector count fits - * (is less than 0x10000). - */ - uint16_t totalSectors16; - /** - * This dates back to the old MS-DOS 1.x media determination and is - * no longer usually used for anything. 0xF8 is the standard value - * for fixed (non-removable) media. For removable media, 0xF0 is - * frequently used. Legal values are 0xF0 or 0xF8-0xFF. - */ - uint8_t mediaType; - /** - * Count of sectors occupied by one FAT on FAT12/FAT16 volumes. - * On FAT32 volumes this field must be 0, and sectorsPerFat32 - * contains the FAT size count. - */ - uint16_t sectorsPerFat16; - /** Sectors per track for interrupt 0x13. Not used otherwise. */ - uint16_t sectorsPerTrtack; - /** Number of heads for interrupt 0x13. Not used otherwise. */ - uint16_t headCount; - /** - * Count of hidden sectors preceding the partition that contains this - * FAT volume. This field is generally only relevant for media - * visible on interrupt 0x13. - */ - uint32_t hidddenSectors; - /** - * This field is the new 32-bit total count of sectors on the volume. - * This count includes the count of all sectors in all four regions - * of the volume. This field can be 0; if it is 0, then - * totalSectors16 must be non-zero. - */ - uint32_t totalSectors32; - /** - * Count of sectors occupied by one FAT on FAT32 volumes. - */ - uint32_t sectorsPerFat32; - /** - * This field is only defined for FAT32 media and does not exist on - * FAT12 and FAT16 media. - * Bits 0-3 -- Zero-based number of active FAT. - * Only valid if mirroring is disabled. - * Bits 4-6 -- Reserved. - * Bit 7 -- 0 means the FAT is mirrored at runtime into all FATs. - * -- 1 means only one FAT is active; it is the one referenced in bits 0-3. - * Bits 8-15 -- Reserved. - */ - uint16_t fat32Flags; - /** - * FAT32 version. High byte is major revision number. - * Low byte is minor revision number. Only 0.0 define. - */ - uint16_t fat32Version; - /** - * Cluster number of the first cluster of the root directory for FAT32. - * This usually 2 but not required to be 2. - */ - uint32_t fat32RootCluster; - /** - * Sector number of FSINFO structure in the reserved area of the - * FAT32 volume. Usually 1. - */ - uint16_t fat32FSInfo; - /** - * If non-zero, indicates the sector number in the reserved area - * of the volume of a copy of the boot record. Usually 6. - * No value other than 6 is recommended. - */ - uint16_t fat32BackBootBlock; - /** - * Reserved for future expansion. Code that formats FAT32 volumes - * should always set all of the bytes of this field to 0. - */ - uint8_t fat32Reserved[12]; -}; -/** Type name for biosParmBlock */ -typedef struct biosParmBlock bpb_t; -//------------------------------------------------------------------------------ -/** - * \struct fat32BootSector - * - * \brief Boot sector for a FAT16 or FAT32 volume. - * - */ -struct fat32BootSector { - /** X86 jmp to boot program */ - uint8_t jmpToBootCode[3]; - /** informational only - don't depend on it */ - char oemName[8]; - /** BIOS Parameter Block */ - bpb_t bpb; - /** for int0x13 use value 0X80 for hard drive */ - uint8_t driveNumber; - /** used by Windows NT - should be zero for FAT */ - uint8_t reserved1; - /** 0X29 if next three fields are valid */ - uint8_t bootSignature; - /** usually generated by combining date and time */ - uint32_t volumeSerialNumber; - /** should match volume label in root dir */ - char volumeLabel[11]; - /** informational only - don't depend on it */ - char fileSystemType[8]; - /** X86 boot code */ - uint8_t bootCode[420]; - /** must be 0X55 */ - uint8_t bootSectorSig0; - /** must be 0XAA */ - uint8_t bootSectorSig1; -}; -//------------------------------------------------------------------------------ -// End Of Chain values for FAT entries -/** FAT16 end of chain value used by Microsoft. */ -uint16_t const FAT16EOC = 0XFFFF; -/** Minimum value for FAT16 EOC. Use to test for EOC. */ -uint16_t const FAT16EOC_MIN = 0XFFF8; -/** FAT32 end of chain value used by Microsoft. */ -uint32_t const FAT32EOC = 0X0FFFFFFF; -/** Minimum value for FAT32 EOC. Use to test for EOC. */ -uint32_t const FAT32EOC_MIN = 0X0FFFFFF8; -/** Mask a for FAT32 entry. Entries are 28 bits. */ -uint32_t const FAT32MASK = 0X0FFFFFFF; - -/** Type name for fat32BootSector */ -typedef struct fat32BootSector fbs_t; -//------------------------------------------------------------------------------ -/** - * \struct directoryEntry - * \brief FAT short directory entry - * - * Short means short 8.3 name, not the entry size. - * - * Date Format. A FAT directory entry date stamp is a 16-bit field that is - * basically a date relative to the MS-DOS epoch of 01/01/1980. Here is the - * format (bit 0 is the LSB of the 16-bit word, bit 15 is the MSB of the - * 16-bit word): - * - * Bits 9-15: Count of years from 1980, valid value range 0-127 - * inclusive (1980-2107). - * - * Bits 5-8: Month of year, 1 = January, valid value range 1-12 inclusive. - * - * Bits 0-4: Day of month, valid value range 1-31 inclusive. - * - * Time Format. A FAT directory entry time stamp is a 16-bit field that has - * a granularity of 2 seconds. Here is the format (bit 0 is the LSB of the - * 16-bit word, bit 15 is the MSB of the 16-bit word). - * - * Bits 11-15: Hours, valid value range 0-23 inclusive. - * - * Bits 5-10: Minutes, valid value range 0-59 inclusive. - * - * Bits 0-4: 2-second count, valid value range 0-29 inclusive (0 - 58 seconds). - * - * The valid time range is from Midnight 00:00:00 to 23:59:58. - */ -struct directoryEntry { - /** - * Short 8.3 name. - * The first eight bytes contain the file name with blank fill. - * The last three bytes contain the file extension with blank fill. - */ - uint8_t name[11]; - /** Entry attributes. - * - * The upper two bits of the attribute byte are reserved and should - * always be set to 0 when a file is created and never modified or - * looked at after that. See defines that begin with DIR_ATT_. - */ - uint8_t attributes; - /** - * Reserved for use by Windows NT. Set value to 0 when a file is - * created and never modify or look at it after that. - */ - uint8_t reservedNT; - /** - * The granularity of the seconds part of creationTime is 2 seconds - * so this field is a count of tenths of a second and its valid - * value range is 0-199 inclusive. (WHG note - seems to be hundredths) - */ - uint8_t creationTimeTenths; - /** Time file was created. */ - uint16_t creationTime; - /** Date file was created. */ - uint16_t creationDate; - /** - * Last access date. Note that there is no last access time, only - * a date. This is the date of last read or write. In the case of - * a write, this should be set to the same date as lastWriteDate. - */ - uint16_t lastAccessDate; - /** - * High word of this entry's first cluster number (always 0 for a - * FAT12 or FAT16 volume). - */ - uint16_t firstClusterHigh; - /** Time of last write. File creation is considered a write. */ - uint16_t lastWriteTime; - /** Date of last write. File creation is considered a write. */ - uint16_t lastWriteDate; - /** Low word of this entry's first cluster number. */ - uint16_t firstClusterLow; - /** 32-bit unsigned holding this file's size in bytes. */ - uint32_t fileSize; -}; -//------------------------------------------------------------------------------ -// Definitions for directory entries -// -/** Type name for directoryEntry */ -typedef struct directoryEntry dir_t; -/** escape for name[0] = 0XE5 */ -uint8_t const DIR_NAME_0XE5 = 0X05; -/** name[0] value for entry that is free after being "deleted" */ -uint8_t const DIR_NAME_DELETED = 0XE5; -/** name[0] value for entry that is free and no allocated entries follow */ -uint8_t const DIR_NAME_FREE = 0X00; -/** file is read-only */ -uint8_t const DIR_ATT_READ_ONLY = 0X01; -/** File should hidden in directory listings */ -uint8_t const DIR_ATT_HIDDEN = 0X02; -/** Entry is for a system file */ -uint8_t const DIR_ATT_SYSTEM = 0X04; -/** Directory entry contains the volume label */ -uint8_t const DIR_ATT_VOLUME_ID = 0X08; -/** Entry is for a directory */ -uint8_t const DIR_ATT_DIRECTORY = 0X10; -/** Old DOS archive bit for backup support */ -uint8_t const DIR_ATT_ARCHIVE = 0X20; -/** Test value for long name entry. Test is - (d->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME. */ -uint8_t const DIR_ATT_LONG_NAME = 0X0F; -/** Test mask for long name entry */ -uint8_t const DIR_ATT_LONG_NAME_MASK = 0X3F; -/** defined attribute bits */ -uint8_t const DIR_ATT_DEFINED_BITS = 0X3F; -/** Directory entry is part of a long name */ -static inline uint8_t DIR_IS_LONG_NAME(const dir_t* dir) { - return (dir->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME; -} -/** Mask for file/subdirectory tests */ -uint8_t const DIR_ATT_FILE_TYPE_MASK = (DIR_ATT_VOLUME_ID | DIR_ATT_DIRECTORY); -/** Directory entry is for a file */ -static inline uint8_t DIR_IS_FILE(const dir_t* dir) { - return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == 0; -} -/** Directory entry is for a subdirectory */ -static inline uint8_t DIR_IS_SUBDIR(const dir_t* dir) { - return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == DIR_ATT_DIRECTORY; -} -/** Directory entry is for a file or subdirectory */ -static inline uint8_t DIR_IS_FILE_OR_SUBDIR(const dir_t* dir) { - return (dir->attributes & DIR_ATT_VOLUME_ID) == 0; -} -#endif // FatStructs_h +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef FatStructs_h +#define FatStructs_h +/** + * \file + * FAT file structures + */ +/* + * mostly from Microsoft document fatgen103.doc + * http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx + */ +//------------------------------------------------------------------------------ +/** Value for byte 510 of boot block or MBR */ +uint8_t const BOOTSIG0 = 0X55; +/** Value for byte 511 of boot block or MBR */ +uint8_t const BOOTSIG1 = 0XAA; +//------------------------------------------------------------------------------ +/** + * \struct partitionTable + * \brief MBR partition table entry + * + * A partition table entry for a MBR formatted storage device. + * The MBR partition table has four entries. + */ +struct partitionTable { + /** + * Boot Indicator . Indicates whether the volume is the active + * partition. Legal values include: 0X00. Do not use for booting. + * 0X80 Active partition. + */ + uint8_t boot; + /** + * Head part of Cylinder-head-sector address of the first block in + * the partition. Legal values are 0-255. Only used in old PC BIOS. + */ + uint8_t beginHead; + /** + * Sector part of Cylinder-head-sector address of the first block in + * the partition. Legal values are 1-63. Only used in old PC BIOS. + */ + unsigned beginSector : 6; + /** High bits cylinder for first block in partition. */ + unsigned beginCylinderHigh : 2; + /** + * Combine beginCylinderLow with beginCylinderHigh. Legal values + * are 0-1023. Only used in old PC BIOS. + */ + uint8_t beginCylinderLow; + /** + * Partition type. See defines that begin with PART_TYPE_ for + * some Microsoft partition types. + */ + uint8_t type; + /** + * head part of cylinder-head-sector address of the last sector in the + * partition. Legal values are 0-255. Only used in old PC BIOS. + */ + uint8_t endHead; + /** + * Sector part of cylinder-head-sector address of the last sector in + * the partition. Legal values are 1-63. Only used in old PC BIOS. + */ + unsigned endSector : 6; + /** High bits of end cylinder */ + unsigned endCylinderHigh : 2; + /** + * Combine endCylinderLow with endCylinderHigh. Legal values + * are 0-1023. Only used in old PC BIOS. + */ + uint8_t endCylinderLow; + /** Logical block address of the first block in the partition. */ + uint32_t firstSector; + /** Length of the partition, in blocks. */ + uint32_t totalSectors; +}; +/** Type name for partitionTable */ +typedef struct partitionTable part_t; +//------------------------------------------------------------------------------ +/** + * \struct masterBootRecord + * + * \brief Master Boot Record + * + * The first block of a storage device that is formatted with a MBR. + */ +struct masterBootRecord { + /** Code Area for master boot program. */ + uint8_t codeArea[440]; + /** Optional WindowsNT disk signature. May contain more boot code. */ + uint32_t diskSignature; + /** Usually zero but may be more boot code. */ + uint16_t usuallyZero; + /** Partition tables. */ + part_t part[4]; + /** First MBR signature byte. Must be 0X55 */ + uint8_t mbrSig0; + /** Second MBR signature byte. Must be 0XAA */ + uint8_t mbrSig1; +}; +/** Type name for masterBootRecord */ +typedef struct masterBootRecord mbr_t; +//------------------------------------------------------------------------------ +/** + * \struct biosParmBlock + * + * \brief BIOS parameter block + * + * The BIOS parameter block describes the physical layout of a FAT volume. + */ +struct biosParmBlock { + /** + * Count of bytes per sector. This value may take on only the + * following values: 512, 1024, 2048 or 4096 + */ + uint16_t bytesPerSector; + /** + * Number of sectors per allocation unit. This value must be a + * power of 2 that is greater than 0. The legal values are + * 1, 2, 4, 8, 16, 32, 64, and 128. + */ + uint8_t sectorsPerCluster; + /** + * Number of sectors before the first FAT. + * This value must not be zero. + */ + uint16_t reservedSectorCount; + /** The count of FAT data structures on the volume. This field should + * always contain the value 2 for any FAT volume of any type. + */ + uint8_t fatCount; + /** + * For FAT12 and FAT16 volumes, this field contains the count of + * 32-byte directory entries in the root directory. For FAT32 volumes, + * this field must be set to 0. For FAT12 and FAT16 volumes, this + * value should always specify a count that when multiplied by 32 + * results in a multiple of bytesPerSector. FAT16 volumes should + * use the value 512. + */ + uint16_t rootDirEntryCount; + /** + * This field is the old 16-bit total count of sectors on the volume. + * This count includes the count of all sectors in all four regions + * of the volume. This field can be 0; if it is 0, then totalSectors32 + * must be non-zero. For FAT32 volumes, this field must be 0. For + * FAT12 and FAT16 volumes, this field contains the sector count, and + * totalSectors32 is 0 if the total sector count fits + * (is less than 0x10000). + */ + uint16_t totalSectors16; + /** + * This dates back to the old MS-DOS 1.x media determination and is + * no longer usually used for anything. 0xF8 is the standard value + * for fixed (non-removable) media. For removable media, 0xF0 is + * frequently used. Legal values are 0xF0 or 0xF8-0xFF. + */ + uint8_t mediaType; + /** + * Count of sectors occupied by one FAT on FAT12/FAT16 volumes. + * On FAT32 volumes this field must be 0, and sectorsPerFat32 + * contains the FAT size count. + */ + uint16_t sectorsPerFat16; + /** Sectors per track for interrupt 0x13. Not used otherwise. */ + uint16_t sectorsPerTrtack; + /** Number of heads for interrupt 0x13. Not used otherwise. */ + uint16_t headCount; + /** + * Count of hidden sectors preceding the partition that contains this + * FAT volume. This field is generally only relevant for media + * visible on interrupt 0x13. + */ + uint32_t hidddenSectors; + /** + * This field is the new 32-bit total count of sectors on the volume. + * This count includes the count of all sectors in all four regions + * of the volume. This field can be 0; if it is 0, then + * totalSectors16 must be non-zero. + */ + uint32_t totalSectors32; + /** + * Count of sectors occupied by one FAT on FAT32 volumes. + */ + uint32_t sectorsPerFat32; + /** + * This field is only defined for FAT32 media and does not exist on + * FAT12 and FAT16 media. + * Bits 0-3 -- Zero-based number of active FAT. + * Only valid if mirroring is disabled. + * Bits 4-6 -- Reserved. + * Bit 7 -- 0 means the FAT is mirrored at runtime into all FATs. + * -- 1 means only one FAT is active; it is the one referenced in bits 0-3. + * Bits 8-15 -- Reserved. + */ + uint16_t fat32Flags; + /** + * FAT32 version. High byte is major revision number. + * Low byte is minor revision number. Only 0.0 define. + */ + uint16_t fat32Version; + /** + * Cluster number of the first cluster of the root directory for FAT32. + * This usually 2 but not required to be 2. + */ + uint32_t fat32RootCluster; + /** + * Sector number of FSINFO structure in the reserved area of the + * FAT32 volume. Usually 1. + */ + uint16_t fat32FSInfo; + /** + * If non-zero, indicates the sector number in the reserved area + * of the volume of a copy of the boot record. Usually 6. + * No value other than 6 is recommended. + */ + uint16_t fat32BackBootBlock; + /** + * Reserved for future expansion. Code that formats FAT32 volumes + * should always set all of the bytes of this field to 0. + */ + uint8_t fat32Reserved[12]; +}; +/** Type name for biosParmBlock */ +typedef struct biosParmBlock bpb_t; +//------------------------------------------------------------------------------ +/** + * \struct fat32BootSector + * + * \brief Boot sector for a FAT16 or FAT32 volume. + * + */ +struct fat32BootSector { + /** X86 jmp to boot program */ + uint8_t jmpToBootCode[3]; + /** informational only - don't depend on it */ + char oemName[8]; + /** BIOS Parameter Block */ + bpb_t bpb; + /** for int0x13 use value 0X80 for hard drive */ + uint8_t driveNumber; + /** used by Windows NT - should be zero for FAT */ + uint8_t reserved1; + /** 0X29 if next three fields are valid */ + uint8_t bootSignature; + /** usually generated by combining date and time */ + uint32_t volumeSerialNumber; + /** should match volume label in root dir */ + char volumeLabel[11]; + /** informational only - don't depend on it */ + char fileSystemType[8]; + /** X86 boot code */ + uint8_t bootCode[420]; + /** must be 0X55 */ + uint8_t bootSectorSig0; + /** must be 0XAA */ + uint8_t bootSectorSig1; +}; +//------------------------------------------------------------------------------ +// End Of Chain values for FAT entries +/** FAT16 end of chain value used by Microsoft. */ +uint16_t const FAT16EOC = 0XFFFF; +/** Minimum value for FAT16 EOC. Use to test for EOC. */ +uint16_t const FAT16EOC_MIN = 0XFFF8; +/** FAT32 end of chain value used by Microsoft. */ +uint32_t const FAT32EOC = 0X0FFFFFFF; +/** Minimum value for FAT32 EOC. Use to test for EOC. */ +uint32_t const FAT32EOC_MIN = 0X0FFFFFF8; +/** Mask a for FAT32 entry. Entries are 28 bits. */ +uint32_t const FAT32MASK = 0X0FFFFFFF; + +/** Type name for fat32BootSector */ +typedef struct fat32BootSector fbs_t; +//------------------------------------------------------------------------------ +/** + * \struct directoryEntry + * \brief FAT short directory entry + * + * Short means short 8.3 name, not the entry size. + * + * Date Format. A FAT directory entry date stamp is a 16-bit field that is + * basically a date relative to the MS-DOS epoch of 01/01/1980. Here is the + * format (bit 0 is the LSB of the 16-bit word, bit 15 is the MSB of the + * 16-bit word): + * + * Bits 9-15: Count of years from 1980, valid value range 0-127 + * inclusive (1980-2107). + * + * Bits 5-8: Month of year, 1 = January, valid value range 1-12 inclusive. + * + * Bits 0-4: Day of month, valid value range 1-31 inclusive. + * + * Time Format. A FAT directory entry time stamp is a 16-bit field that has + * a granularity of 2 seconds. Here is the format (bit 0 is the LSB of the + * 16-bit word, bit 15 is the MSB of the 16-bit word). + * + * Bits 11-15: Hours, valid value range 0-23 inclusive. + * + * Bits 5-10: Minutes, valid value range 0-59 inclusive. + * + * Bits 0-4: 2-second count, valid value range 0-29 inclusive (0 - 58 seconds). + * + * The valid time range is from Midnight 00:00:00 to 23:59:58. + */ +struct directoryEntry { + /** + * Short 8.3 name. + * The first eight bytes contain the file name with blank fill. + * The last three bytes contain the file extension with blank fill. + */ + uint8_t name[11]; + /** Entry attributes. + * + * The upper two bits of the attribute byte are reserved and should + * always be set to 0 when a file is created and never modified or + * looked at after that. See defines that begin with DIR_ATT_. + */ + uint8_t attributes; + /** + * Reserved for use by Windows NT. Set value to 0 when a file is + * created and never modify or look at it after that. + */ + uint8_t reservedNT; + /** + * The granularity of the seconds part of creationTime is 2 seconds + * so this field is a count of tenths of a second and its valid + * value range is 0-199 inclusive. (WHG note - seems to be hundredths) + */ + uint8_t creationTimeTenths; + /** Time file was created. */ + uint16_t creationTime; + /** Date file was created. */ + uint16_t creationDate; + /** + * Last access date. Note that there is no last access time, only + * a date. This is the date of last read or write. In the case of + * a write, this should be set to the same date as lastWriteDate. + */ + uint16_t lastAccessDate; + /** + * High word of this entry's first cluster number (always 0 for a + * FAT12 or FAT16 volume). + */ + uint16_t firstClusterHigh; + /** Time of last write. File creation is considered a write. */ + uint16_t lastWriteTime; + /** Date of last write. File creation is considered a write. */ + uint16_t lastWriteDate; + /** Low word of this entry's first cluster number. */ + uint16_t firstClusterLow; + /** 32-bit unsigned holding this file's size in bytes. */ + uint32_t fileSize; +}; +//------------------------------------------------------------------------------ +// Definitions for directory entries +// +/** Type name for directoryEntry */ +typedef struct directoryEntry dir_t; +/** escape for name[0] = 0XE5 */ +uint8_t const DIR_NAME_0XE5 = 0X05; +/** name[0] value for entry that is free after being "deleted" */ +uint8_t const DIR_NAME_DELETED = 0XE5; +/** name[0] value for entry that is free and no allocated entries follow */ +uint8_t const DIR_NAME_FREE = 0X00; +/** file is read-only */ +uint8_t const DIR_ATT_READ_ONLY = 0X01; +/** File should hidden in directory listings */ +uint8_t const DIR_ATT_HIDDEN = 0X02; +/** Entry is for a system file */ +uint8_t const DIR_ATT_SYSTEM = 0X04; +/** Directory entry contains the volume label */ +uint8_t const DIR_ATT_VOLUME_ID = 0X08; +/** Entry is for a directory */ +uint8_t const DIR_ATT_DIRECTORY = 0X10; +/** Old DOS archive bit for backup support */ +uint8_t const DIR_ATT_ARCHIVE = 0X20; +/** Test value for long name entry. Test is + (d->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME. */ +uint8_t const DIR_ATT_LONG_NAME = 0X0F; +/** Test mask for long name entry */ +uint8_t const DIR_ATT_LONG_NAME_MASK = 0X3F; +/** defined attribute bits */ +uint8_t const DIR_ATT_DEFINED_BITS = 0X3F; +/** Directory entry is part of a long name */ +static inline uint8_t DIR_IS_LONG_NAME(const dir_t* dir) { + return (dir->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME; +} +/** Mask for file/subdirectory tests */ +uint8_t const DIR_ATT_FILE_TYPE_MASK = (DIR_ATT_VOLUME_ID | DIR_ATT_DIRECTORY); +/** Directory entry is for a file */ +static inline uint8_t DIR_IS_FILE(const dir_t* dir) { + return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == 0; +} +/** Directory entry is for a subdirectory */ +static inline uint8_t DIR_IS_SUBDIR(const dir_t* dir) { + return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == DIR_ATT_DIRECTORY; +} +/** Directory entry is for a file or subdirectory */ +static inline uint8_t DIR_IS_FILE_OR_SUBDIR(const dir_t* dir) { + return (dir->attributes & DIR_ATT_VOLUME_ID) == 0; +} +#endif // FatStructs_h diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp index 62c115917..8222cfd93 100644 --- a/Marlin/Sd2Card.cpp +++ b/Marlin/Sd2Card.cpp @@ -1,643 +1,643 @@ -/* Arduino Sd2Card Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino Sd2Card Library - * - * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see - * . - */ -#include -#include "Sd2Card.h" -//------------------------------------------------------------------------------ -#ifndef SOFTWARE_SPI -// functions for hardware SPI -/** Send a byte to the card */ -static void spiSend(uint8_t b) { - SPDR = b; - while (!(SPSR & (1 << SPIF))); -} -/** Receive a byte from the card */ -static uint8_t spiRec(void) { - spiSend(0XFF); - return SPDR; -} -#else // SOFTWARE_SPI -//------------------------------------------------------------------------------ -/** nop to tune soft SPI timing */ -#define nop asm volatile ("nop\n\t") -//------------------------------------------------------------------------------ -/** Soft SPI receive */ -uint8_t spiRec(void) { - uint8_t data = 0; - // no interrupts during byte receive - about 8 us - cli(); - // output pin high - like sending 0XFF - fastDigitalWrite(SPI_MOSI_PIN, HIGH); - - for (uint8_t i = 0; i < 8; i++) { - fastDigitalWrite(SPI_SCK_PIN, HIGH); - - // adjust so SCK is nice - nop; - nop; - - data <<= 1; - - if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; - - fastDigitalWrite(SPI_SCK_PIN, LOW); - } - // enable interrupts - sei(); - return data; -} -//------------------------------------------------------------------------------ -/** Soft SPI send */ -void spiSend(uint8_t data) { - // no interrupts during byte send - about 8 us - cli(); - for (uint8_t i = 0; i < 8; i++) { - fastDigitalWrite(SPI_SCK_PIN, LOW); - - fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); - - data <<= 1; - - fastDigitalWrite(SPI_SCK_PIN, HIGH); - } - // hold SCK high for a few ns - nop; - nop; - nop; - nop; - - fastDigitalWrite(SPI_SCK_PIN, LOW); - // enable interrupts - sei(); -} -#endif // SOFTWARE_SPI -//------------------------------------------------------------------------------ -// send command and return error code. Return zero for OK -uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { - // end read if in partialBlockRead mode - readEnd(); - - // select card - chipSelectLow(); - - // wait up to 300 ms if busy - waitNotBusy(300); - - // send command - spiSend(cmd | 0x40); - - // send argument - for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); - - // send CRC - uint8_t crc = 0XFF; - if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 - if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA - spiSend(crc); - - // wait for response - for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); - return status_; -} -//------------------------------------------------------------------------------ -/** - * Determine the size of an SD flash memory card. - * - * \return The number of 512 byte data blocks in the card - * or zero if an error occurs. - */ -uint32_t Sd2Card::cardSize(void) { - csd_t csd; - if (!readCSD(&csd)) return 0; - if (csd.v1.csd_ver == 0) { - uint8_t read_bl_len = csd.v1.read_bl_len; - uint16_t c_size = (csd.v1.c_size_high << 10) - | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; - uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) - | csd.v1.c_size_mult_low; - return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); - } else if (csd.v2.csd_ver == 1) { - uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) - | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; - return (c_size + 1) << 10; - } else { - error(SD_CARD_ERROR_BAD_CSD); - return 0; - } -} -//------------------------------------------------------------------------------ -void Sd2Card::chipSelectHigh(void) { - digitalWrite(chipSelectPin_, HIGH); -} -//------------------------------------------------------------------------------ -void Sd2Card::chipSelectLow(void) { - digitalWrite(chipSelectPin_, LOW); -} -//------------------------------------------------------------------------------ -/** Erase a range of blocks. - * - * \param[in] firstBlock The address of the first block in the range. - * \param[in] lastBlock The address of the last block in the range. - * - * \note This function requests the SD card to do a flash erase for a - * range of blocks. The data on the card after an erase operation is - * either 0 or 1, depends on the card vendor. The card must support - * single block erase. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { - if (!eraseSingleBlockEnable()) { - error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); - goto fail; - } - if (type_ != SD_CARD_TYPE_SDHC) { - firstBlock <<= 9; - lastBlock <<= 9; - } - if (cardCommand(CMD32, firstBlock) - || cardCommand(CMD33, lastBlock) - || cardCommand(CMD38, 0)) { - error(SD_CARD_ERROR_ERASE); - goto fail; - } - if (!waitNotBusy(SD_ERASE_TIMEOUT)) { - error(SD_CARD_ERROR_ERASE_TIMEOUT); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Determine if card supports single block erase. - * - * \return The value one, true, is returned if single block erase is supported. - * The value zero, false, is returned if single block erase is not supported. - */ -uint8_t Sd2Card::eraseSingleBlockEnable(void) { - csd_t csd; - return readCSD(&csd) ? csd.v1.erase_blk_en : 0; -} -//------------------------------------------------------------------------------ -/** - * Initialize an SD flash memory card. - * - * \param[in] sckRateID SPI clock rate selector. See setSckRate(). - * \param[in] chipSelectPin SD chip select pin number. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. The reason for failure - * can be determined by calling errorCode() and errorData(). - */ -uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { - errorCode_ = inBlock_ = partialBlockRead_ = type_ = 0; - chipSelectPin_ = chipSelectPin; - // 16-bit init start time allows over a minute - uint16_t t0 = (uint16_t)millis(); - uint32_t arg; - - // set pin modes - pinMode(chipSelectPin_, OUTPUT); - chipSelectHigh(); - pinMode(SPI_MISO_PIN, INPUT); - pinMode(SPI_MOSI_PIN, OUTPUT); - pinMode(SPI_SCK_PIN, OUTPUT); - -#ifndef SOFTWARE_SPI - // SS must be in output mode even it is not chip select - pinMode(SS_PIN, OUTPUT); - // Enable SPI, Master, clock rate f_osc/128 - SPCR = (1 << SPE) | (1 << MSTR) | (1 << SPR1) | (1 << SPR0); - // clear double speed - SPSR &= ~(1 << SPI2X); -#endif // SOFTWARE_SPI - - // must supply min of 74 clock cycles with CS high. - for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); - - chipSelectLow(); - - // command to go idle in SPI mode - while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { - if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { - error(SD_CARD_ERROR_CMD0); - goto fail; - } - } - // check SD version - if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { - type(SD_CARD_TYPE_SD1); - } else { - // only need last byte of r7 response - for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); - if (status_ != 0XAA) { - error(SD_CARD_ERROR_CMD8); - goto fail; - } - type(SD_CARD_TYPE_SD2); - } - // initialize card and send host supports SDHC if SD2 - arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; - - while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { - // check for timeout - if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { - error(SD_CARD_ERROR_ACMD41); - goto fail; - } - } - // if SD2 read OCR register to check for SDHC card - if (type() == SD_CARD_TYPE_SD2) { - if (cardCommand(CMD58, 0)) { - error(SD_CARD_ERROR_CMD58); - goto fail; - } - if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); - // discard rest of ocr - contains allowed voltage range - for (uint8_t i = 0; i < 3; i++) spiRec(); - } - chipSelectHigh(); - -#ifndef SOFTWARE_SPI - return setSckRate(sckRateID); -#else // SOFTWARE_SPI - return true; -#endif // SOFTWARE_SPI - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Enable or disable partial block reads. - * - * Enabling partial block reads improves performance by allowing a block - * to be read over the SPI bus as several sub-blocks. Errors may occur - * if the time between reads is too long since the SD card may timeout. - * The SPI SS line will be held low until the entire block is read or - * readEnd() is called. - * - * Use this for applications like the Adafruit Wave Shield. - * - * \param[in] value The value TRUE (non-zero) or FALSE (zero).) - */ -void Sd2Card::partialBlockRead(uint8_t value) { - readEnd(); - partialBlockRead_ = value; -} -//------------------------------------------------------------------------------ -/** - * Read a 512 byte block from an SD card device. - * - * \param[in] block Logical block to be read. - * \param[out] dst Pointer to the location that will receive the data. - - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::readBlock(uint32_t block, uint8_t* dst) { - return readData(block, 0, 512, dst); -} -//------------------------------------------------------------------------------ -/** - * Read part of a 512 byte block from an SD card. - * - * \param[in] block Logical block to be read. - * \param[in] offset Number of bytes to skip at start of block - * \param[out] dst Pointer to the location that will receive the data. - * \param[in] count Number of bytes to read - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::readData(uint32_t block, - uint16_t offset, uint16_t count, uint8_t* dst) { - uint16_t n; - if (count == 0) return true; - if ((count + offset) > 512) { - goto fail; - } - if (!inBlock_ || block != block_ || offset < offset_) { - block_ = block; - // use address if not SDHC card - if (type()!= SD_CARD_TYPE_SDHC) block <<= 9; - if (cardCommand(CMD17, block)) { - error(SD_CARD_ERROR_CMD17); - goto fail; - } - if (!waitStartBlock()) { - goto fail; - } - offset_ = 0; - inBlock_ = 1; - } - -#ifdef OPTIMIZE_HARDWARE_SPI - // start first spi transfer - SPDR = 0XFF; - - // skip data before offset - for (;offset_ < offset; offset_++) { - while (!(SPSR & (1 << SPIF))); - SPDR = 0XFF; - } - // transfer data - n = count - 1; - for (uint16_t i = 0; i < n; i++) { - while (!(SPSR & (1 << SPIF))); - dst[i] = SPDR; - SPDR = 0XFF; - } - // wait for last byte - while (!(SPSR & (1 << SPIF))); - dst[n] = SPDR; - -#else // OPTIMIZE_HARDWARE_SPI - - // skip data before offset - for (;offset_ < offset; offset_++) { - spiRec(); - } - // transfer data - for (uint16_t i = 0; i < count; i++) { - dst[i] = spiRec(); - } -#endif // OPTIMIZE_HARDWARE_SPI - - offset_ += count; - if (!partialBlockRead_ || offset_ >= 512) { - // read rest of data, checksum and set chip select high - readEnd(); - } - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Skip remaining data in a block when in partial block read mode. */ -void Sd2Card::readEnd(void) { - if (inBlock_) { - // skip data and crc -#ifdef OPTIMIZE_HARDWARE_SPI - // optimize skip for hardware - SPDR = 0XFF; - while (offset_++ < 513) { - while (!(SPSR & (1 << SPIF))); - SPDR = 0XFF; - } - // wait for last crc byte - while (!(SPSR & (1 << SPIF))); -#else // OPTIMIZE_HARDWARE_SPI - while (offset_++ < 514) spiRec(); -#endif // OPTIMIZE_HARDWARE_SPI - chipSelectHigh(); - inBlock_ = 0; - } -} -//------------------------------------------------------------------------------ -/** read CID or CSR register */ -uint8_t Sd2Card::readRegister(uint8_t cmd, void* buf) { - uint8_t* dst = reinterpret_cast(buf); - if (cardCommand(cmd, 0)) { - error(SD_CARD_ERROR_READ_REG); - goto fail; - } - if (!waitStartBlock()) goto fail; - // transfer data - for (uint16_t i = 0; i < 16; i++) dst[i] = spiRec(); - spiRec(); // get first crc byte - spiRec(); // get second crc byte - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Set the SPI clock rate. - * - * \param[in] sckRateID A value in the range [0, 6]. - * - * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum - * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 - * for \a scsRateID = 6. - * - * \return The value one, true, is returned for success and the value zero, - * false, is returned for an invalid value of \a sckRateID. - */ -uint8_t Sd2Card::setSckRate(uint8_t sckRateID) { - if (sckRateID > 6) { - error(SD_CARD_ERROR_SCK_RATE); - return false; - } - // see avr processor datasheet for SPI register bit definitions - if ((sckRateID & 1) || sckRateID == 6) { - SPSR &= ~(1 << SPI2X); - } else { - SPSR |= (1 << SPI2X); - } - SPCR &= ~((1 < SD_READ_TIMEOUT) { - error(SD_CARD_ERROR_READ_TIMEOUT); - goto fail; - } - } - if (status_ != DATA_START_BLOCK) { - error(SD_CARD_ERROR_READ); - goto fail; - } - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Writes a 512 byte block to an SD card. - * - * \param[in] blockNumber Logical block to be written. - * \param[in] src Pointer to the location of the data to be written. - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { -#if SD_PROTECT_BLOCK_ZERO - // don't allow write to first block - if (blockNumber == 0) { - error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); - goto fail; - } -#endif // SD_PROTECT_BLOCK_ZERO - - // use address if not SDHC card - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD24, blockNumber)) { - error(SD_CARD_ERROR_CMD24); - goto fail; - } - if (!writeData(DATA_START_BLOCK, src)) goto fail; - - // wait for flash programming to complete - if (!waitNotBusy(SD_WRITE_TIMEOUT)) { - error(SD_CARD_ERROR_WRITE_TIMEOUT); - goto fail; - } - // response is r2 so get and check two bytes for nonzero - if (cardCommand(CMD13, 0) || spiRec()) { - error(SD_CARD_ERROR_WRITE_PROGRAMMING); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Write one data block in a multiple block write sequence */ -uint8_t Sd2Card::writeData(const uint8_t* src) { - // wait for previous write to finish - if (!waitNotBusy(SD_WRITE_TIMEOUT)) { - error(SD_CARD_ERROR_WRITE_MULTIPLE); - chipSelectHigh(); - return false; - } - return writeData(WRITE_MULTIPLE_TOKEN, src); -} -//------------------------------------------------------------------------------ -// send one block of data for write block or write multiple blocks -uint8_t Sd2Card::writeData(uint8_t token, const uint8_t* src) { -#ifdef OPTIMIZE_HARDWARE_SPI - - // send data - optimized loop - SPDR = token; - - // send two byte per iteration - for (uint16_t i = 0; i < 512; i += 2) { - while (!(SPSR & (1 << SPIF))); - SPDR = src[i]; - while (!(SPSR & (1 << SPIF))); - SPDR = src[i+1]; - } - - // wait for last data byte - while (!(SPSR & (1 << SPIF))); - -#else // OPTIMIZE_HARDWARE_SPI - spiSend(token); - for (uint16_t i = 0; i < 512; i++) { - spiSend(src[i]); - } -#endif // OPTIMIZE_HARDWARE_SPI - spiSend(0xff); // dummy crc - spiSend(0xff); // dummy crc - - status_ = spiRec(); - if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { - error(SD_CARD_ERROR_WRITE); - chipSelectHigh(); - return false; - } - return true; -} -//------------------------------------------------------------------------------ -/** Start a write multiple blocks sequence. - * - * \param[in] blockNumber Address of first block in sequence. - * \param[in] eraseCount The number of blocks to be pre-erased. - * - * \note This function is used with writeData() and writeStop() - * for optimized multiple block writes. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { -#if SD_PROTECT_BLOCK_ZERO - // don't allow write to first block - if (blockNumber == 0) { - error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); - goto fail; - } -#endif // SD_PROTECT_BLOCK_ZERO - // send pre-erase count - if (cardAcmd(ACMD23, eraseCount)) { - error(SD_CARD_ERROR_ACMD23); - goto fail; - } - // use address if not SDHC card - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD25, blockNumber)) { - error(SD_CARD_ERROR_CMD25); - goto fail; - } - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** End a write multiple blocks sequence. - * -* \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::writeStop(void) { - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - spiSend(STOP_TRAN_TOKEN); - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - chipSelectHigh(); - return true; - - fail: - error(SD_CARD_ERROR_STOP_TRAN); - chipSelectHigh(); - return false; -} +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#include +#include "Sd2Card.h" +//------------------------------------------------------------------------------ +#ifndef SOFTWARE_SPI +// functions for hardware SPI +/** Send a byte to the card */ +static void spiSend(uint8_t b) { + SPDR = b; + while (!(SPSR & (1 << SPIF))); +} +/** Receive a byte from the card */ +static uint8_t spiRec(void) { + spiSend(0XFF); + return SPDR; +} +#else // SOFTWARE_SPI +//------------------------------------------------------------------------------ +/** nop to tune soft SPI timing */ +#define nop asm volatile ("nop\n\t") +//------------------------------------------------------------------------------ +/** Soft SPI receive */ +uint8_t spiRec(void) { + uint8_t data = 0; + // no interrupts during byte receive - about 8 us + cli(); + // output pin high - like sending 0XFF + fastDigitalWrite(SPI_MOSI_PIN, HIGH); + + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, HIGH); + + // adjust so SCK is nice + nop; + nop; + + data <<= 1; + + if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + } + // enable interrupts + sei(); + return data; +} +//------------------------------------------------------------------------------ +/** Soft SPI send */ +void spiSend(uint8_t data) { + // no interrupts during byte send - about 8 us + cli(); + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, LOW); + + fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); + + data <<= 1; + + fastDigitalWrite(SPI_SCK_PIN, HIGH); + } + // hold SCK high for a few ns + nop; + nop; + nop; + nop; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + // enable interrupts + sei(); +} +#endif // SOFTWARE_SPI +//------------------------------------------------------------------------------ +// send command and return error code. Return zero for OK +uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { + // end read if in partialBlockRead mode + readEnd(); + + // select card + chipSelectLow(); + + // wait up to 300 ms if busy + waitNotBusy(300); + + // send command + spiSend(cmd | 0x40); + + // send argument + for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); + + // send CRC + uint8_t crc = 0XFF; + if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 + if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA + spiSend(crc); + + // wait for response + for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); + return status_; +} +//------------------------------------------------------------------------------ +/** + * Determine the size of an SD flash memory card. + * + * \return The number of 512 byte data blocks in the card + * or zero if an error occurs. + */ +uint32_t Sd2Card::cardSize(void) { + csd_t csd; + if (!readCSD(&csd)) return 0; + if (csd.v1.csd_ver == 0) { + uint8_t read_bl_len = csd.v1.read_bl_len; + uint16_t c_size = (csd.v1.c_size_high << 10) + | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; + uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) + | csd.v1.c_size_mult_low; + return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); + } else if (csd.v2.csd_ver == 1) { + uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) + | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; + return (c_size + 1) << 10; + } else { + error(SD_CARD_ERROR_BAD_CSD); + return 0; + } +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectHigh(void) { + digitalWrite(chipSelectPin_, HIGH); +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectLow(void) { + digitalWrite(chipSelectPin_, LOW); +} +//------------------------------------------------------------------------------ +/** Erase a range of blocks. + * + * \param[in] firstBlock The address of the first block in the range. + * \param[in] lastBlock The address of the last block in the range. + * + * \note This function requests the SD card to do a flash erase for a + * range of blocks. The data on the card after an erase operation is + * either 0 or 1, depends on the card vendor. The card must support + * single block erase. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { + if (!eraseSingleBlockEnable()) { + error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); + goto fail; + } + if (type_ != SD_CARD_TYPE_SDHC) { + firstBlock <<= 9; + lastBlock <<= 9; + } + if (cardCommand(CMD32, firstBlock) + || cardCommand(CMD33, lastBlock) + || cardCommand(CMD38, 0)) { + error(SD_CARD_ERROR_ERASE); + goto fail; + } + if (!waitNotBusy(SD_ERASE_TIMEOUT)) { + error(SD_CARD_ERROR_ERASE_TIMEOUT); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Determine if card supports single block erase. + * + * \return The value one, true, is returned if single block erase is supported. + * The value zero, false, is returned if single block erase is not supported. + */ +uint8_t Sd2Card::eraseSingleBlockEnable(void) { + csd_t csd; + return readCSD(&csd) ? csd.v1.erase_blk_en : 0; +} +//------------------------------------------------------------------------------ +/** + * Initialize an SD flash memory card. + * + * \param[in] sckRateID SPI clock rate selector. See setSckRate(). + * \param[in] chipSelectPin SD chip select pin number. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. The reason for failure + * can be determined by calling errorCode() and errorData(). + */ +uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { + errorCode_ = inBlock_ = partialBlockRead_ = type_ = 0; + chipSelectPin_ = chipSelectPin; + // 16-bit init start time allows over a minute + uint16_t t0 = (uint16_t)millis(); + uint32_t arg; + + // set pin modes + pinMode(chipSelectPin_, OUTPUT); + chipSelectHigh(); + pinMode(SPI_MISO_PIN, INPUT); + pinMode(SPI_MOSI_PIN, OUTPUT); + pinMode(SPI_SCK_PIN, OUTPUT); + +#ifndef SOFTWARE_SPI + // SS must be in output mode even it is not chip select + pinMode(SS_PIN, OUTPUT); + // Enable SPI, Master, clock rate f_osc/128 + SPCR = (1 << SPE) | (1 << MSTR) | (1 << SPR1) | (1 << SPR0); + // clear double speed + SPSR &= ~(1 << SPI2X); +#endif // SOFTWARE_SPI + + // must supply min of 74 clock cycles with CS high. + for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); + + chipSelectLow(); + + // command to go idle in SPI mode + while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_CMD0); + goto fail; + } + } + // check SD version + if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { + type(SD_CARD_TYPE_SD1); + } else { + // only need last byte of r7 response + for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); + if (status_ != 0XAA) { + error(SD_CARD_ERROR_CMD8); + goto fail; + } + type(SD_CARD_TYPE_SD2); + } + // initialize card and send host supports SDHC if SD2 + arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; + + while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { + // check for timeout + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_ACMD41); + goto fail; + } + } + // if SD2 read OCR register to check for SDHC card + if (type() == SD_CARD_TYPE_SD2) { + if (cardCommand(CMD58, 0)) { + error(SD_CARD_ERROR_CMD58); + goto fail; + } + if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); + // discard rest of ocr - contains allowed voltage range + for (uint8_t i = 0; i < 3; i++) spiRec(); + } + chipSelectHigh(); + +#ifndef SOFTWARE_SPI + return setSckRate(sckRateID); +#else // SOFTWARE_SPI + return true; +#endif // SOFTWARE_SPI + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Enable or disable partial block reads. + * + * Enabling partial block reads improves performance by allowing a block + * to be read over the SPI bus as several sub-blocks. Errors may occur + * if the time between reads is too long since the SD card may timeout. + * The SPI SS line will be held low until the entire block is read or + * readEnd() is called. + * + * Use this for applications like the Adafruit Wave Shield. + * + * \param[in] value The value TRUE (non-zero) or FALSE (zero).) + */ +void Sd2Card::partialBlockRead(uint8_t value) { + readEnd(); + partialBlockRead_ = value; +} +//------------------------------------------------------------------------------ +/** + * Read a 512 byte block from an SD card device. + * + * \param[in] block Logical block to be read. + * \param[out] dst Pointer to the location that will receive the data. + + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::readBlock(uint32_t block, uint8_t* dst) { + return readData(block, 0, 512, dst); +} +//------------------------------------------------------------------------------ +/** + * Read part of a 512 byte block from an SD card. + * + * \param[in] block Logical block to be read. + * \param[in] offset Number of bytes to skip at start of block + * \param[out] dst Pointer to the location that will receive the data. + * \param[in] count Number of bytes to read + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::readData(uint32_t block, + uint16_t offset, uint16_t count, uint8_t* dst) { + uint16_t n; + if (count == 0) return true; + if ((count + offset) > 512) { + goto fail; + } + if (!inBlock_ || block != block_ || offset < offset_) { + block_ = block; + // use address if not SDHC card + if (type()!= SD_CARD_TYPE_SDHC) block <<= 9; + if (cardCommand(CMD17, block)) { + error(SD_CARD_ERROR_CMD17); + goto fail; + } + if (!waitStartBlock()) { + goto fail; + } + offset_ = 0; + inBlock_ = 1; + } + +#ifdef OPTIMIZE_HARDWARE_SPI + // start first spi transfer + SPDR = 0XFF; + + // skip data before offset + for (;offset_ < offset; offset_++) { + while (!(SPSR & (1 << SPIF))); + SPDR = 0XFF; + } + // transfer data + n = count - 1; + for (uint16_t i = 0; i < n; i++) { + while (!(SPSR & (1 << SPIF))); + dst[i] = SPDR; + SPDR = 0XFF; + } + // wait for last byte + while (!(SPSR & (1 << SPIF))); + dst[n] = SPDR; + +#else // OPTIMIZE_HARDWARE_SPI + + // skip data before offset + for (;offset_ < offset; offset_++) { + spiRec(); + } + // transfer data + for (uint16_t i = 0; i < count; i++) { + dst[i] = spiRec(); + } +#endif // OPTIMIZE_HARDWARE_SPI + + offset_ += count; + if (!partialBlockRead_ || offset_ >= 512) { + // read rest of data, checksum and set chip select high + readEnd(); + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Skip remaining data in a block when in partial block read mode. */ +void Sd2Card::readEnd(void) { + if (inBlock_) { + // skip data and crc +#ifdef OPTIMIZE_HARDWARE_SPI + // optimize skip for hardware + SPDR = 0XFF; + while (offset_++ < 513) { + while (!(SPSR & (1 << SPIF))); + SPDR = 0XFF; + } + // wait for last crc byte + while (!(SPSR & (1 << SPIF))); +#else // OPTIMIZE_HARDWARE_SPI + while (offset_++ < 514) spiRec(); +#endif // OPTIMIZE_HARDWARE_SPI + chipSelectHigh(); + inBlock_ = 0; + } +} +//------------------------------------------------------------------------------ +/** read CID or CSR register */ +uint8_t Sd2Card::readRegister(uint8_t cmd, void* buf) { + uint8_t* dst = reinterpret_cast(buf); + if (cardCommand(cmd, 0)) { + error(SD_CARD_ERROR_READ_REG); + goto fail; + } + if (!waitStartBlock()) goto fail; + // transfer data + for (uint16_t i = 0; i < 16; i++) dst[i] = spiRec(); + spiRec(); // get first crc byte + spiRec(); // get second crc byte + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Set the SPI clock rate. + * + * \param[in] sckRateID A value in the range [0, 6]. + * + * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum + * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 + * for \a scsRateID = 6. + * + * \return The value one, true, is returned for success and the value zero, + * false, is returned for an invalid value of \a sckRateID. + */ +uint8_t Sd2Card::setSckRate(uint8_t sckRateID) { + if (sckRateID > 6) { + error(SD_CARD_ERROR_SCK_RATE); + return false; + } + // see avr processor datasheet for SPI register bit definitions + if ((sckRateID & 1) || sckRateID == 6) { + SPSR &= ~(1 << SPI2X); + } else { + SPSR |= (1 << SPI2X); + } + SPCR &= ~((1 < SD_READ_TIMEOUT) { + error(SD_CARD_ERROR_READ_TIMEOUT); + goto fail; + } + } + if (status_ != DATA_START_BLOCK) { + error(SD_CARD_ERROR_READ); + goto fail; + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Writes a 512 byte block to an SD card. + * + * \param[in] blockNumber Logical block to be written. + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { +#if SD_PROTECT_BLOCK_ZERO + // don't allow write to first block + if (blockNumber == 0) { + error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); + goto fail; + } +#endif // SD_PROTECT_BLOCK_ZERO + + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD24, blockNumber)) { + error(SD_CARD_ERROR_CMD24); + goto fail; + } + if (!writeData(DATA_START_BLOCK, src)) goto fail; + + // wait for flash programming to complete + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_TIMEOUT); + goto fail; + } + // response is r2 so get and check two bytes for nonzero + if (cardCommand(CMD13, 0) || spiRec()) { + error(SD_CARD_ERROR_WRITE_PROGRAMMING); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Write one data block in a multiple block write sequence */ +uint8_t Sd2Card::writeData(const uint8_t* src) { + // wait for previous write to finish + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_MULTIPLE); + chipSelectHigh(); + return false; + } + return writeData(WRITE_MULTIPLE_TOKEN, src); +} +//------------------------------------------------------------------------------ +// send one block of data for write block or write multiple blocks +uint8_t Sd2Card::writeData(uint8_t token, const uint8_t* src) { +#ifdef OPTIMIZE_HARDWARE_SPI + + // send data - optimized loop + SPDR = token; + + // send two byte per iteration + for (uint16_t i = 0; i < 512; i += 2) { + while (!(SPSR & (1 << SPIF))); + SPDR = src[i]; + while (!(SPSR & (1 << SPIF))); + SPDR = src[i+1]; + } + + // wait for last data byte + while (!(SPSR & (1 << SPIF))); + +#else // OPTIMIZE_HARDWARE_SPI + spiSend(token); + for (uint16_t i = 0; i < 512; i++) { + spiSend(src[i]); + } +#endif // OPTIMIZE_HARDWARE_SPI + spiSend(0xff); // dummy crc + spiSend(0xff); // dummy crc + + status_ = spiRec(); + if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { + error(SD_CARD_ERROR_WRITE); + chipSelectHigh(); + return false; + } + return true; +} +//------------------------------------------------------------------------------ +/** Start a write multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * \param[in] eraseCount The number of blocks to be pre-erased. + * + * \note This function is used with writeData() and writeStop() + * for optimized multiple block writes. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { +#if SD_PROTECT_BLOCK_ZERO + // don't allow write to first block + if (blockNumber == 0) { + error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); + goto fail; + } +#endif // SD_PROTECT_BLOCK_ZERO + // send pre-erase count + if (cardAcmd(ACMD23, eraseCount)) { + error(SD_CARD_ERROR_ACMD23); + goto fail; + } + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD25, blockNumber)) { + error(SD_CARD_ERROR_CMD25); + goto fail; + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a write multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t Sd2Card::writeStop(void) { + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + spiSend(STOP_TRAN_TOKEN); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_STOP_TRAN); + chipSelectHigh(); + return false; +} diff --git a/Marlin/Sd2Card.h b/Marlin/Sd2Card.h index 9160c3d7a..73b46fb44 100644 --- a/Marlin/Sd2Card.h +++ b/Marlin/Sd2Card.h @@ -1,233 +1,233 @@ -/* Arduino Sd2Card Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino Sd2Card Library - * - * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see - * . - */ -#ifndef Sd2Card_h -#define Sd2Card_h -/** - * \file - * Sd2Card class - */ -#include "Sd2PinMap.h" -#include "SdInfo.h" -/** Set SCK to max rate of F_CPU/2. See Sd2Card::setSckRate(). */ -uint8_t const SPI_FULL_SPEED = 0; -/** Set SCK rate to F_CPU/4. See Sd2Card::setSckRate(). */ -uint8_t const SPI_HALF_SPEED = 1; -/** Set SCK rate to F_CPU/8. Sd2Card::setSckRate(). */ -uint8_t const SPI_QUARTER_SPEED = 2; -/** - * Define MEGA_SOFT_SPI non-zero to use software SPI on Mega Arduinos. - * Pins used are SS 10, MOSI 11, MISO 12, and SCK 13. - * - * MEGA_SOFT_SPI allows an unmodified Adafruit GPS Shield to be used - * on Mega Arduinos. Software SPI works well with GPS Shield V1.1 - * but many SD cards will fail with GPS Shield V1.0. - */ -#define MEGA_SOFT_SPI 0 -//------------------------------------------------------------------------------ -#if MEGA_SOFT_SPI && (defined(__AVR_ATmega1280__)||defined(__AVR_ATmega2560__)) -#define SOFTWARE_SPI -#endif // MEGA_SOFT_SPI -//------------------------------------------------------------------------------ -// SPI pin definitions -// -#ifndef SOFTWARE_SPI -// hardware pin defs -/** - * SD Chip Select pin - * - * Warning if this pin is redefined the hardware SS will pin will be enabled - * as an output by init(). An avr processor will not function as an SPI - * master unless SS is set to output mode. - */ -/** The default chip select pin for the SD card is SS. */ -uint8_t const SD_CHIP_SELECT_PIN = SS_PIN; -// The following three pins must not be redefined for hardware SPI. -/** SPI Master Out Slave In pin */ -uint8_t const SPI_MOSI_PIN = MOSI_PIN; -/** SPI Master In Slave Out pin */ -uint8_t const SPI_MISO_PIN = MISO_PIN; -/** SPI Clock pin */ -uint8_t const SPI_SCK_PIN = SCK_PIN; -/** optimize loops for hardware SPI */ -#define OPTIMIZE_HARDWARE_SPI - -#else // SOFTWARE_SPI -// define software SPI pins so Mega can use unmodified GPS Shield -/** SPI chip select pin */ -uint8_t const SD_CHIP_SELECT_PIN = 10; -/** SPI Master Out Slave In pin */ -uint8_t const SPI_MOSI_PIN = 11; -/** SPI Master In Slave Out pin */ -uint8_t const SPI_MISO_PIN = 12; -/** SPI Clock pin */ -uint8_t const SPI_SCK_PIN = 13; -#endif // SOFTWARE_SPI -//------------------------------------------------------------------------------ -/** Protect block zero from write if nonzero */ -#define SD_PROTECT_BLOCK_ZERO 1 -/** init timeout ms */ -uint16_t const SD_INIT_TIMEOUT = 2000; -/** erase timeout ms */ -uint16_t const SD_ERASE_TIMEOUT = 10000; -/** read timeout ms */ -uint16_t const SD_READ_TIMEOUT = 300; -/** write time out ms */ -uint16_t const SD_WRITE_TIMEOUT = 600; -//------------------------------------------------------------------------------ -// SD card errors -/** timeout error for command CMD0 */ -uint8_t const SD_CARD_ERROR_CMD0 = 0X1; -/** CMD8 was not accepted - not a valid SD card*/ -uint8_t const SD_CARD_ERROR_CMD8 = 0X2; -/** card returned an error response for CMD17 (read block) */ -uint8_t const SD_CARD_ERROR_CMD17 = 0X3; -/** card returned an error response for CMD24 (write block) */ -uint8_t const SD_CARD_ERROR_CMD24 = 0X4; -/** WRITE_MULTIPLE_BLOCKS command failed */ -uint8_t const SD_CARD_ERROR_CMD25 = 0X05; -/** card returned an error response for CMD58 (read OCR) */ -uint8_t const SD_CARD_ERROR_CMD58 = 0X06; -/** SET_WR_BLK_ERASE_COUNT failed */ -uint8_t const SD_CARD_ERROR_ACMD23 = 0X07; -/** card's ACMD41 initialization process timeout */ -uint8_t const SD_CARD_ERROR_ACMD41 = 0X08; -/** card returned a bad CSR version field */ -uint8_t const SD_CARD_ERROR_BAD_CSD = 0X09; -/** erase block group command failed */ -uint8_t const SD_CARD_ERROR_ERASE = 0X0A; -/** card not capable of single block erase */ -uint8_t const SD_CARD_ERROR_ERASE_SINGLE_BLOCK = 0X0B; -/** Erase sequence timed out */ -uint8_t const SD_CARD_ERROR_ERASE_TIMEOUT = 0X0C; -/** card returned an error token instead of read data */ -uint8_t const SD_CARD_ERROR_READ = 0X0D; -/** read CID or CSD failed */ -uint8_t const SD_CARD_ERROR_READ_REG = 0X0E; -/** timeout while waiting for start of read data */ -uint8_t const SD_CARD_ERROR_READ_TIMEOUT = 0X0F; -/** card did not accept STOP_TRAN_TOKEN */ -uint8_t const SD_CARD_ERROR_STOP_TRAN = 0X10; -/** card returned an error token as a response to a write operation */ -uint8_t const SD_CARD_ERROR_WRITE = 0X11; -/** attempt to write protected block zero */ -uint8_t const SD_CARD_ERROR_WRITE_BLOCK_ZERO = 0X12; -/** card did not go ready for a multiple block write */ -uint8_t const SD_CARD_ERROR_WRITE_MULTIPLE = 0X13; -/** card returned an error to a CMD13 status check after a write */ -uint8_t const SD_CARD_ERROR_WRITE_PROGRAMMING = 0X14; -/** timeout occurred during write programming */ -uint8_t const SD_CARD_ERROR_WRITE_TIMEOUT = 0X15; -/** incorrect rate selected */ -uint8_t const SD_CARD_ERROR_SCK_RATE = 0X16; -//------------------------------------------------------------------------------ -// card types -/** Standard capacity V1 SD card */ -uint8_t const SD_CARD_TYPE_SD1 = 1; -/** Standard capacity V2 SD card */ -uint8_t const SD_CARD_TYPE_SD2 = 2; -/** High Capacity SD card */ -uint8_t const SD_CARD_TYPE_SDHC = 3; -//------------------------------------------------------------------------------ -/** - * \class Sd2Card - * \brief Raw access to SD and SDHC flash memory cards. - */ -class Sd2Card { - public: - /** Construct an instance of Sd2Card. */ - Sd2Card(void) : errorCode_(0), inBlock_(0), partialBlockRead_(0), type_(0) {} - uint32_t cardSize(void); - uint8_t erase(uint32_t firstBlock, uint32_t lastBlock); - uint8_t eraseSingleBlockEnable(void); - /** - * \return error code for last error. See Sd2Card.h for a list of error codes. - */ - uint8_t errorCode(void) const {return errorCode_;} - /** \return error data for last error. */ - uint8_t errorData(void) const {return status_;} - /** - * Initialize an SD flash memory card with default clock rate and chip - * select pin. See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). - */ - uint8_t init(void) { - return init(SPI_FULL_SPEED, SD_CHIP_SELECT_PIN); - } - /** - * Initialize an SD flash memory card with the selected SPI clock rate - * and the default SD chip select pin. - * See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). - */ - uint8_t init(uint8_t sckRateID) { - return init(sckRateID, SD_CHIP_SELECT_PIN); - } - uint8_t init(uint8_t sckRateID, uint8_t chipSelectPin); - void partialBlockRead(uint8_t value); - /** Returns the current value, true or false, for partial block read. */ - uint8_t partialBlockRead(void) const {return partialBlockRead_;} - uint8_t readBlock(uint32_t block, uint8_t* dst); - uint8_t readData(uint32_t block, - uint16_t offset, uint16_t count, uint8_t* dst); - /** - * Read a cards CID register. The CID contains card identification - * information such as Manufacturer ID, Product name, Product serial - * number and Manufacturing date. */ - uint8_t readCID(cid_t* cid) { - return readRegister(CMD10, cid); - } - /** - * Read a cards CSD register. The CSD contains Card-Specific Data that - * provides information regarding access to the card's contents. */ - uint8_t readCSD(csd_t* csd) { - return readRegister(CMD9, csd); - } - void readEnd(void); - uint8_t setSckRate(uint8_t sckRateID); - /** Return the card type: SD V1, SD V2 or SDHC */ - uint8_t type(void) const {return type_;} - uint8_t writeBlock(uint32_t blockNumber, const uint8_t* src); - uint8_t writeData(const uint8_t* src); - uint8_t writeStart(uint32_t blockNumber, uint32_t eraseCount); - uint8_t writeStop(void); - private: - uint32_t block_; - uint8_t chipSelectPin_; - uint8_t errorCode_; - uint8_t inBlock_; - uint16_t offset_; - uint8_t partialBlockRead_; - uint8_t status_; - uint8_t type_; - // private functions - uint8_t cardAcmd(uint8_t cmd, uint32_t arg) { - cardCommand(CMD55, 0); - return cardCommand(cmd, arg); - } - uint8_t cardCommand(uint8_t cmd, uint32_t arg); - void error(uint8_t code) {errorCode_ = code;} - uint8_t readRegister(uint8_t cmd, void* buf); - uint8_t sendWriteCommand(uint32_t blockNumber, uint32_t eraseCount); - void chipSelectHigh(void); - void chipSelectLow(void); - void type(uint8_t value) {type_ = value;} - uint8_t waitNotBusy(uint16_t timeoutMillis); - uint8_t writeData(uint8_t token, const uint8_t* src); - uint8_t waitStartBlock(void); -}; -#endif // Sd2Card_h +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#ifndef Sd2Card_h +#define Sd2Card_h +/** + * \file + * Sd2Card class + */ +#include "Sd2PinMap.h" +#include "SdInfo.h" +/** Set SCK to max rate of F_CPU/2. See Sd2Card::setSckRate(). */ +uint8_t const SPI_FULL_SPEED = 0; +/** Set SCK rate to F_CPU/4. See Sd2Card::setSckRate(). */ +uint8_t const SPI_HALF_SPEED = 1; +/** Set SCK rate to F_CPU/8. Sd2Card::setSckRate(). */ +uint8_t const SPI_QUARTER_SPEED = 2; +/** + * Define MEGA_SOFT_SPI non-zero to use software SPI on Mega Arduinos. + * Pins used are SS 10, MOSI 11, MISO 12, and SCK 13. + * + * MEGA_SOFT_SPI allows an unmodified Adafruit GPS Shield to be used + * on Mega Arduinos. Software SPI works well with GPS Shield V1.1 + * but many SD cards will fail with GPS Shield V1.0. + */ +#define MEGA_SOFT_SPI 0 +//------------------------------------------------------------------------------ +#if MEGA_SOFT_SPI && (defined(__AVR_ATmega1280__)||defined(__AVR_ATmega2560__)) +#define SOFTWARE_SPI +#endif // MEGA_SOFT_SPI +//------------------------------------------------------------------------------ +// SPI pin definitions +// +#ifndef SOFTWARE_SPI +// hardware pin defs +/** + * SD Chip Select pin + * + * Warning if this pin is redefined the hardware SS will pin will be enabled + * as an output by init(). An avr processor will not function as an SPI + * master unless SS is set to output mode. + */ +/** The default chip select pin for the SD card is SS. */ +uint8_t const SD_CHIP_SELECT_PIN = SS_PIN; +// The following three pins must not be redefined for hardware SPI. +/** SPI Master Out Slave In pin */ +uint8_t const SPI_MOSI_PIN = MOSI_PIN; +/** SPI Master In Slave Out pin */ +uint8_t const SPI_MISO_PIN = MISO_PIN; +/** SPI Clock pin */ +uint8_t const SPI_SCK_PIN = SCK_PIN; +/** optimize loops for hardware SPI */ +#define OPTIMIZE_HARDWARE_SPI + +#else // SOFTWARE_SPI +// define software SPI pins so Mega can use unmodified GPS Shield +/** SPI chip select pin */ +uint8_t const SD_CHIP_SELECT_PIN = 10; +/** SPI Master Out Slave In pin */ +uint8_t const SPI_MOSI_PIN = 11; +/** SPI Master In Slave Out pin */ +uint8_t const SPI_MISO_PIN = 12; +/** SPI Clock pin */ +uint8_t const SPI_SCK_PIN = 13; +#endif // SOFTWARE_SPI +//------------------------------------------------------------------------------ +/** Protect block zero from write if nonzero */ +#define SD_PROTECT_BLOCK_ZERO 1 +/** init timeout ms */ +uint16_t const SD_INIT_TIMEOUT = 2000; +/** erase timeout ms */ +uint16_t const SD_ERASE_TIMEOUT = 10000; +/** read timeout ms */ +uint16_t const SD_READ_TIMEOUT = 300; +/** write time out ms */ +uint16_t const SD_WRITE_TIMEOUT = 600; +//------------------------------------------------------------------------------ +// SD card errors +/** timeout error for command CMD0 */ +uint8_t const SD_CARD_ERROR_CMD0 = 0X1; +/** CMD8 was not accepted - not a valid SD card*/ +uint8_t const SD_CARD_ERROR_CMD8 = 0X2; +/** card returned an error response for CMD17 (read block) */ +uint8_t const SD_CARD_ERROR_CMD17 = 0X3; +/** card returned an error response for CMD24 (write block) */ +uint8_t const SD_CARD_ERROR_CMD24 = 0X4; +/** WRITE_MULTIPLE_BLOCKS command failed */ +uint8_t const SD_CARD_ERROR_CMD25 = 0X05; +/** card returned an error response for CMD58 (read OCR) */ +uint8_t const SD_CARD_ERROR_CMD58 = 0X06; +/** SET_WR_BLK_ERASE_COUNT failed */ +uint8_t const SD_CARD_ERROR_ACMD23 = 0X07; +/** card's ACMD41 initialization process timeout */ +uint8_t const SD_CARD_ERROR_ACMD41 = 0X08; +/** card returned a bad CSR version field */ +uint8_t const SD_CARD_ERROR_BAD_CSD = 0X09; +/** erase block group command failed */ +uint8_t const SD_CARD_ERROR_ERASE = 0X0A; +/** card not capable of single block erase */ +uint8_t const SD_CARD_ERROR_ERASE_SINGLE_BLOCK = 0X0B; +/** Erase sequence timed out */ +uint8_t const SD_CARD_ERROR_ERASE_TIMEOUT = 0X0C; +/** card returned an error token instead of read data */ +uint8_t const SD_CARD_ERROR_READ = 0X0D; +/** read CID or CSD failed */ +uint8_t const SD_CARD_ERROR_READ_REG = 0X0E; +/** timeout while waiting for start of read data */ +uint8_t const SD_CARD_ERROR_READ_TIMEOUT = 0X0F; +/** card did not accept STOP_TRAN_TOKEN */ +uint8_t const SD_CARD_ERROR_STOP_TRAN = 0X10; +/** card returned an error token as a response to a write operation */ +uint8_t const SD_CARD_ERROR_WRITE = 0X11; +/** attempt to write protected block zero */ +uint8_t const SD_CARD_ERROR_WRITE_BLOCK_ZERO = 0X12; +/** card did not go ready for a multiple block write */ +uint8_t const SD_CARD_ERROR_WRITE_MULTIPLE = 0X13; +/** card returned an error to a CMD13 status check after a write */ +uint8_t const SD_CARD_ERROR_WRITE_PROGRAMMING = 0X14; +/** timeout occurred during write programming */ +uint8_t const SD_CARD_ERROR_WRITE_TIMEOUT = 0X15; +/** incorrect rate selected */ +uint8_t const SD_CARD_ERROR_SCK_RATE = 0X16; +//------------------------------------------------------------------------------ +// card types +/** Standard capacity V1 SD card */ +uint8_t const SD_CARD_TYPE_SD1 = 1; +/** Standard capacity V2 SD card */ +uint8_t const SD_CARD_TYPE_SD2 = 2; +/** High Capacity SD card */ +uint8_t const SD_CARD_TYPE_SDHC = 3; +//------------------------------------------------------------------------------ +/** + * \class Sd2Card + * \brief Raw access to SD and SDHC flash memory cards. + */ +class Sd2Card { + public: + /** Construct an instance of Sd2Card. */ + Sd2Card(void) : errorCode_(0), inBlock_(0), partialBlockRead_(0), type_(0) {} + uint32_t cardSize(void); + uint8_t erase(uint32_t firstBlock, uint32_t lastBlock); + uint8_t eraseSingleBlockEnable(void); + /** + * \return error code for last error. See Sd2Card.h for a list of error codes. + */ + uint8_t errorCode(void) const {return errorCode_;} + /** \return error data for last error. */ + uint8_t errorData(void) const {return status_;} + /** + * Initialize an SD flash memory card with default clock rate and chip + * select pin. See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). + */ + uint8_t init(void) { + return init(SPI_FULL_SPEED, SD_CHIP_SELECT_PIN); + } + /** + * Initialize an SD flash memory card with the selected SPI clock rate + * and the default SD chip select pin. + * See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). + */ + uint8_t init(uint8_t sckRateID) { + return init(sckRateID, SD_CHIP_SELECT_PIN); + } + uint8_t init(uint8_t sckRateID, uint8_t chipSelectPin); + void partialBlockRead(uint8_t value); + /** Returns the current value, true or false, for partial block read. */ + uint8_t partialBlockRead(void) const {return partialBlockRead_;} + uint8_t readBlock(uint32_t block, uint8_t* dst); + uint8_t readData(uint32_t block, + uint16_t offset, uint16_t count, uint8_t* dst); + /** + * Read a cards CID register. The CID contains card identification + * information such as Manufacturer ID, Product name, Product serial + * number and Manufacturing date. */ + uint8_t readCID(cid_t* cid) { + return readRegister(CMD10, cid); + } + /** + * Read a cards CSD register. The CSD contains Card-Specific Data that + * provides information regarding access to the card's contents. */ + uint8_t readCSD(csd_t* csd) { + return readRegister(CMD9, csd); + } + void readEnd(void); + uint8_t setSckRate(uint8_t sckRateID); + /** Return the card type: SD V1, SD V2 or SDHC */ + uint8_t type(void) const {return type_;} + uint8_t writeBlock(uint32_t blockNumber, const uint8_t* src); + uint8_t writeData(const uint8_t* src); + uint8_t writeStart(uint32_t blockNumber, uint32_t eraseCount); + uint8_t writeStop(void); + private: + uint32_t block_; + uint8_t chipSelectPin_; + uint8_t errorCode_; + uint8_t inBlock_; + uint16_t offset_; + uint8_t partialBlockRead_; + uint8_t status_; + uint8_t type_; + // private functions + uint8_t cardAcmd(uint8_t cmd, uint32_t arg) { + cardCommand(CMD55, 0); + return cardCommand(cmd, arg); + } + uint8_t cardCommand(uint8_t cmd, uint32_t arg); + void error(uint8_t code) {errorCode_ = code;} + uint8_t readRegister(uint8_t cmd, void* buf); + uint8_t sendWriteCommand(uint32_t blockNumber, uint32_t eraseCount); + void chipSelectHigh(void); + void chipSelectLow(void); + void type(uint8_t value) {type_ = value;} + uint8_t waitNotBusy(uint16_t timeoutMillis); + uint8_t writeData(uint8_t token, const uint8_t* src); + uint8_t waitStartBlock(void); +}; +#endif // Sd2Card_h diff --git a/Marlin/Sd2PinMap.h b/Marlin/Sd2PinMap.h index bba0dd027..4bd75a35d 100644 --- a/Marlin/Sd2PinMap.h +++ b/Marlin/Sd2PinMap.h @@ -1,353 +1,353 @@ -/* Arduino SdFat Library - * Copyright (C) 2010 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -// Warning this file was generated by a program. -#ifndef Sd2PinMap_h -#define Sd2PinMap_h -#include - -//------------------------------------------------------------------------------ -/** struct for mapping digital pins */ -struct pin_map_t { - volatile uint8_t* ddr; - volatile uint8_t* pin; - volatile uint8_t* port; - uint8_t bit; -}; -//------------------------------------------------------------------------------ -#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) -// Mega - -// Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 20; -uint8_t const SCL_PIN = 21; - -// SPI port -uint8_t const SS_PIN = 53; -uint8_t const MOSI_PIN = 51; -uint8_t const MISO_PIN = 50; -uint8_t const SCK_PIN = 52; - -static const pin_map_t digitalPinMap[] = { - {&DDRE, &PINE, &PORTE, 0}, // E0 0 - {&DDRE, &PINE, &PORTE, 1}, // E1 1 - {&DDRE, &PINE, &PORTE, 4}, // E4 2 - {&DDRE, &PINE, &PORTE, 5}, // E5 3 - {&DDRG, &PING, &PORTG, 5}, // G5 4 - {&DDRE, &PINE, &PORTE, 3}, // E3 5 - {&DDRH, &PINH, &PORTH, 3}, // H3 6 - {&DDRH, &PINH, &PORTH, 4}, // H4 7 - {&DDRH, &PINH, &PORTH, 5}, // H5 8 - {&DDRH, &PINH, &PORTH, 6}, // H6 9 - {&DDRB, &PINB, &PORTB, 4}, // B4 10 - {&DDRB, &PINB, &PORTB, 5}, // B5 11 - {&DDRB, &PINB, &PORTB, 6}, // B6 12 - {&DDRB, &PINB, &PORTB, 7}, // B7 13 - {&DDRJ, &PINJ, &PORTJ, 1}, // J1 14 - {&DDRJ, &PINJ, &PORTJ, 0}, // J0 15 - {&DDRH, &PINH, &PORTH, 1}, // H1 16 - {&DDRH, &PINH, &PORTH, 0}, // H0 17 - {&DDRD, &PIND, &PORTD, 3}, // D3 18 - {&DDRD, &PIND, &PORTD, 2}, // D2 19 - {&DDRD, &PIND, &PORTD, 1}, // D1 20 - {&DDRD, &PIND, &PORTD, 0}, // D0 21 - {&DDRA, &PINA, &PORTA, 0}, // A0 22 - {&DDRA, &PINA, &PORTA, 1}, // A1 23 - {&DDRA, &PINA, &PORTA, 2}, // A2 24 - {&DDRA, &PINA, &PORTA, 3}, // A3 25 - {&DDRA, &PINA, &PORTA, 4}, // A4 26 - {&DDRA, &PINA, &PORTA, 5}, // A5 27 - {&DDRA, &PINA, &PORTA, 6}, // A6 28 - {&DDRA, &PINA, &PORTA, 7}, // A7 29 - {&DDRC, &PINC, &PORTC, 7}, // C7 30 - {&DDRC, &PINC, &PORTC, 6}, // C6 31 - {&DDRC, &PINC, &PORTC, 5}, // C5 32 - {&DDRC, &PINC, &PORTC, 4}, // C4 33 - {&DDRC, &PINC, &PORTC, 3}, // C3 34 - {&DDRC, &PINC, &PORTC, 2}, // C2 35 - {&DDRC, &PINC, &PORTC, 1}, // C1 36 - {&DDRC, &PINC, &PORTC, 0}, // C0 37 - {&DDRD, &PIND, &PORTD, 7}, // D7 38 - {&DDRG, &PING, &PORTG, 2}, // G2 39 - {&DDRG, &PING, &PORTG, 1}, // G1 40 - {&DDRG, &PING, &PORTG, 0}, // G0 41 - {&DDRL, &PINL, &PORTL, 7}, // L7 42 - {&DDRL, &PINL, &PORTL, 6}, // L6 43 - {&DDRL, &PINL, &PORTL, 5}, // L5 44 - {&DDRL, &PINL, &PORTL, 4}, // L4 45 - {&DDRL, &PINL, &PORTL, 3}, // L3 46 - {&DDRL, &PINL, &PORTL, 2}, // L2 47 - {&DDRL, &PINL, &PORTL, 1}, // L1 48 - {&DDRL, &PINL, &PORTL, 0}, // L0 49 - {&DDRB, &PINB, &PORTB, 3}, // B3 50 - {&DDRB, &PINB, &PORTB, 2}, // B2 51 - {&DDRB, &PINB, &PORTB, 1}, // B1 52 - {&DDRB, &PINB, &PORTB, 0}, // B0 53 - {&DDRF, &PINF, &PORTF, 0}, // F0 54 - {&DDRF, &PINF, &PORTF, 1}, // F1 55 - {&DDRF, &PINF, &PORTF, 2}, // F2 56 - {&DDRF, &PINF, &PORTF, 3}, // F3 57 - {&DDRF, &PINF, &PORTF, 4}, // F4 58 - {&DDRF, &PINF, &PORTF, 5}, // F5 59 - {&DDRF, &PINF, &PORTF, 6}, // F6 60 - {&DDRF, &PINF, &PORTF, 7}, // F7 61 - {&DDRK, &PINK, &PORTK, 0}, // K0 62 - {&DDRK, &PINK, &PORTK, 1}, // K1 63 - {&DDRK, &PINK, &PORTK, 2}, // K2 64 - {&DDRK, &PINK, &PORTK, 3}, // K3 65 - {&DDRK, &PINK, &PORTK, 4}, // K4 66 - {&DDRK, &PINK, &PORTK, 5}, // K5 67 - {&DDRK, &PINK, &PORTK, 6}, // K6 68 - {&DDRK, &PINK, &PORTK, 7} // K7 69 -}; -//------------------------------------------------------------------------------ -#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__) -// Sanguino - -// Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 17; -uint8_t const SCL_PIN = 18; - -// SPI port -uint8_t const SS_PIN = 4; -uint8_t const MOSI_PIN = 5; -uint8_t const MISO_PIN = 6; -uint8_t const SCK_PIN = 7; - -static const pin_map_t digitalPinMap[] = { - {&DDRB, &PINB, &PORTB, 0}, // B0 0 - {&DDRB, &PINB, &PORTB, 1}, // B1 1 - {&DDRB, &PINB, &PORTB, 2}, // B2 2 - {&DDRB, &PINB, &PORTB, 3}, // B3 3 - {&DDRB, &PINB, &PORTB, 4}, // B4 4 - {&DDRB, &PINB, &PORTB, 5}, // B5 5 - {&DDRB, &PINB, &PORTB, 6}, // B6 6 - {&DDRB, &PINB, &PORTB, 7}, // B7 7 - {&DDRD, &PIND, &PORTD, 0}, // D0 8 - {&DDRD, &PIND, &PORTD, 1}, // D1 9 - {&DDRD, &PIND, &PORTD, 2}, // D2 10 - {&DDRD, &PIND, &PORTD, 3}, // D3 11 - {&DDRD, &PIND, &PORTD, 4}, // D4 12 - {&DDRD, &PIND, &PORTD, 5}, // D5 13 - {&DDRD, &PIND, &PORTD, 6}, // D6 14 - {&DDRD, &PIND, &PORTD, 7}, // D7 15 - {&DDRC, &PINC, &PORTC, 0}, // C0 16 - {&DDRC, &PINC, &PORTC, 1}, // C1 17 - {&DDRC, &PINC, &PORTC, 2}, // C2 18 - {&DDRC, &PINC, &PORTC, 3}, // C3 19 - {&DDRC, &PINC, &PORTC, 4}, // C4 20 - {&DDRC, &PINC, &PORTC, 5}, // C5 21 - {&DDRC, &PINC, &PORTC, 6}, // C6 22 - {&DDRC, &PINC, &PORTC, 7}, // C7 23 - {&DDRA, &PINA, &PORTA, 7}, // A7 24 - {&DDRA, &PINA, &PORTA, 6}, // A6 25 - {&DDRA, &PINA, &PORTA, 5}, // A5 26 - {&DDRA, &PINA, &PORTA, 4}, // A4 27 - {&DDRA, &PINA, &PORTA, 3}, // A3 28 - {&DDRA, &PINA, &PORTA, 2}, // A2 29 - {&DDRA, &PINA, &PORTA, 1}, // A1 30 - {&DDRA, &PINA, &PORTA, 0} // A0 31 -}; -//------------------------------------------------------------------------------ -#elif defined(__AVR_ATmega32U4__) -// Teensy 2.0 - -// Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 6; -uint8_t const SCL_PIN = 5; - -// SPI port -uint8_t const SS_PIN = 0; -uint8_t const MOSI_PIN = 2; -uint8_t const MISO_PIN = 3; -uint8_t const SCK_PIN = 1; - -static const pin_map_t digitalPinMap[] = { - {&DDRB, &PINB, &PORTB, 0}, // B0 0 - {&DDRB, &PINB, &PORTB, 1}, // B1 1 - {&DDRB, &PINB, &PORTB, 2}, // B2 2 - {&DDRB, &PINB, &PORTB, 3}, // B3 3 - {&DDRB, &PINB, &PORTB, 7}, // B7 4 - {&DDRD, &PIND, &PORTD, 0}, // D0 5 - {&DDRD, &PIND, &PORTD, 1}, // D1 6 - {&DDRD, &PIND, &PORTD, 2}, // D2 7 - {&DDRD, &PIND, &PORTD, 3}, // D3 8 - {&DDRC, &PINC, &PORTC, 6}, // C6 9 - {&DDRC, &PINC, &PORTC, 7}, // C7 10 - {&DDRD, &PIND, &PORTD, 6}, // D6 11 - {&DDRD, &PIND, &PORTD, 7}, // D7 12 - {&DDRB, &PINB, &PORTB, 4}, // B4 13 - {&DDRB, &PINB, &PORTB, 5}, // B5 14 - {&DDRB, &PINB, &PORTB, 6}, // B6 15 - {&DDRF, &PINF, &PORTF, 7}, // F7 16 - {&DDRF, &PINF, &PORTF, 6}, // F6 17 - {&DDRF, &PINF, &PORTF, 5}, // F5 18 - {&DDRF, &PINF, &PORTF, 4}, // F4 19 - {&DDRF, &PINF, &PORTF, 1}, // F1 20 - {&DDRF, &PINF, &PORTF, 0}, // F0 21 - {&DDRD, &PIND, &PORTD, 4}, // D4 22 - {&DDRD, &PIND, &PORTD, 5}, // D5 23 - {&DDRE, &PINE, &PORTE, 6} // E6 24 -}; -//------------------------------------------------------------------------------ -#elif defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) -// Teensy++ 1.0 & 2.0 - -// Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 1; -uint8_t const SCL_PIN = 0; - -// SPI port -uint8_t const SS_PIN = 20; -uint8_t const MOSI_PIN = 22; -uint8_t const MISO_PIN = 23; -uint8_t const SCK_PIN = 21; - -static const pin_map_t digitalPinMap[] = { - {&DDRD, &PIND, &PORTD, 0}, // D0 0 - {&DDRD, &PIND, &PORTD, 1}, // D1 1 - {&DDRD, &PIND, &PORTD, 2}, // D2 2 - {&DDRD, &PIND, &PORTD, 3}, // D3 3 - {&DDRD, &PIND, &PORTD, 4}, // D4 4 - {&DDRD, &PIND, &PORTD, 5}, // D5 5 - {&DDRD, &PIND, &PORTD, 6}, // D6 6 - {&DDRD, &PIND, &PORTD, 7}, // D7 7 - {&DDRE, &PINE, &PORTE, 0}, // E0 8 - {&DDRE, &PINE, &PORTE, 1}, // E1 9 - {&DDRC, &PINC, &PORTC, 0}, // C0 10 - {&DDRC, &PINC, &PORTC, 1}, // C1 11 - {&DDRC, &PINC, &PORTC, 2}, // C2 12 - {&DDRC, &PINC, &PORTC, 3}, // C3 13 - {&DDRC, &PINC, &PORTC, 4}, // C4 14 - {&DDRC, &PINC, &PORTC, 5}, // C5 15 - {&DDRC, &PINC, &PORTC, 6}, // C6 16 - {&DDRC, &PINC, &PORTC, 7}, // C7 17 - {&DDRE, &PINE, &PORTE, 6}, // E6 18 - {&DDRE, &PINE, &PORTE, 7}, // E7 19 - {&DDRB, &PINB, &PORTB, 0}, // B0 20 - {&DDRB, &PINB, &PORTB, 1}, // B1 21 - {&DDRB, &PINB, &PORTB, 2}, // B2 22 - {&DDRB, &PINB, &PORTB, 3}, // B3 23 - {&DDRB, &PINB, &PORTB, 4}, // B4 24 - {&DDRB, &PINB, &PORTB, 5}, // B5 25 - {&DDRB, &PINB, &PORTB, 6}, // B6 26 - {&DDRB, &PINB, &PORTB, 7}, // B7 27 - {&DDRA, &PINA, &PORTA, 0}, // A0 28 - {&DDRA, &PINA, &PORTA, 1}, // A1 29 - {&DDRA, &PINA, &PORTA, 2}, // A2 30 - {&DDRA, &PINA, &PORTA, 3}, // A3 31 - {&DDRA, &PINA, &PORTA, 4}, // A4 32 - {&DDRA, &PINA, &PORTA, 5}, // A5 33 - {&DDRA, &PINA, &PORTA, 6}, // A6 34 - {&DDRA, &PINA, &PORTA, 7}, // A7 35 - {&DDRE, &PINE, &PORTE, 4}, // E4 36 - {&DDRE, &PINE, &PORTE, 5}, // E5 37 - {&DDRF, &PINF, &PORTF, 0}, // F0 38 - {&DDRF, &PINF, &PORTF, 1}, // F1 39 - {&DDRF, &PINF, &PORTF, 2}, // F2 40 - {&DDRF, &PINF, &PORTF, 3}, // F3 41 - {&DDRF, &PINF, &PORTF, 4}, // F4 42 - {&DDRF, &PINF, &PORTF, 5}, // F5 43 - {&DDRF, &PINF, &PORTF, 6}, // F6 44 - {&DDRF, &PINF, &PORTF, 7} // F7 45 -}; -//------------------------------------------------------------------------------ -#else // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) -// 168 and 328 Arduinos - -// Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 18; -uint8_t const SCL_PIN = 19; - -// SPI port -uint8_t const SS_PIN = 10; -uint8_t const MOSI_PIN = 11; -uint8_t const MISO_PIN = 12; -uint8_t const SCK_PIN = 13; - -static const pin_map_t digitalPinMap[] = { - {&DDRD, &PIND, &PORTD, 0}, // D0 0 - {&DDRD, &PIND, &PORTD, 1}, // D1 1 - {&DDRD, &PIND, &PORTD, 2}, // D2 2 - {&DDRD, &PIND, &PORTD, 3}, // D3 3 - {&DDRD, &PIND, &PORTD, 4}, // D4 4 - {&DDRD, &PIND, &PORTD, 5}, // D5 5 - {&DDRD, &PIND, &PORTD, 6}, // D6 6 - {&DDRD, &PIND, &PORTD, 7}, // D7 7 - {&DDRB, &PINB, &PORTB, 0}, // B0 8 - {&DDRB, &PINB, &PORTB, 1}, // B1 9 - {&DDRB, &PINB, &PORTB, 2}, // B2 10 - {&DDRB, &PINB, &PORTB, 3}, // B3 11 - {&DDRB, &PINB, &PORTB, 4}, // B4 12 - {&DDRB, &PINB, &PORTB, 5}, // B5 13 - {&DDRC, &PINC, &PORTC, 0}, // C0 14 - {&DDRC, &PINC, &PORTC, 1}, // C1 15 - {&DDRC, &PINC, &PORTC, 2}, // C2 16 - {&DDRC, &PINC, &PORTC, 3}, // C3 17 - {&DDRC, &PINC, &PORTC, 4}, // C4 18 - {&DDRC, &PINC, &PORTC, 5} // C5 19 -}; -#endif // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) -//------------------------------------------------------------------------------ -static const uint8_t digitalPinCount = sizeof(digitalPinMap)/sizeof(pin_map_t); - -uint8_t badPinNumber(void) - __attribute__((error("Pin number is too large or not a constant"))); - -static inline __attribute__((always_inline)) - uint8_t getPinMode(uint8_t pin) { - if (__builtin_constant_p(pin) && pin < digitalPinCount) { - return (*digitalPinMap[pin].ddr >> digitalPinMap[pin].bit) & 1; - } else { - return badPinNumber(); - } -} -static inline __attribute__((always_inline)) - void setPinMode(uint8_t pin, uint8_t mode) { - if (__builtin_constant_p(pin) && pin < digitalPinCount) { - if (mode) { - *digitalPinMap[pin].ddr |= 1 << digitalPinMap[pin].bit; - } else { - *digitalPinMap[pin].ddr &= ~(1 << digitalPinMap[pin].bit); - } - } else { - badPinNumber(); - } -} -static inline __attribute__((always_inline)) - uint8_t fastDigitalRead(uint8_t pin) { - if (__builtin_constant_p(pin) && pin < digitalPinCount) { - return (*digitalPinMap[pin].pin >> digitalPinMap[pin].bit) & 1; - } else { - return badPinNumber(); - } -} -static inline __attribute__((always_inline)) - void fastDigitalWrite(uint8_t pin, uint8_t value) { - if (__builtin_constant_p(pin) && pin < digitalPinCount) { - if (value) { - *digitalPinMap[pin].port |= 1 << digitalPinMap[pin].bit; - } else { - *digitalPinMap[pin].port &= ~(1 << digitalPinMap[pin].bit); - } - } else { - badPinNumber(); - } -} -#endif // Sd2PinMap_h +/* Arduino SdFat Library + * Copyright (C) 2010 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +// Warning this file was generated by a program. +#ifndef Sd2PinMap_h +#define Sd2PinMap_h +#include + +//------------------------------------------------------------------------------ +/** struct for mapping digital pins */ +struct pin_map_t { + volatile uint8_t* ddr; + volatile uint8_t* pin; + volatile uint8_t* port; + uint8_t bit; +}; +//------------------------------------------------------------------------------ +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +// Mega + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 20; +uint8_t const SCL_PIN = 21; + +// SPI port +uint8_t const SS_PIN = 53; +uint8_t const MOSI_PIN = 51; +uint8_t const MISO_PIN = 50; +uint8_t const SCK_PIN = 52; + +static const pin_map_t digitalPinMap[] = { + {&DDRE, &PINE, &PORTE, 0}, // E0 0 + {&DDRE, &PINE, &PORTE, 1}, // E1 1 + {&DDRE, &PINE, &PORTE, 4}, // E4 2 + {&DDRE, &PINE, &PORTE, 5}, // E5 3 + {&DDRG, &PING, &PORTG, 5}, // G5 4 + {&DDRE, &PINE, &PORTE, 3}, // E3 5 + {&DDRH, &PINH, &PORTH, 3}, // H3 6 + {&DDRH, &PINH, &PORTH, 4}, // H4 7 + {&DDRH, &PINH, &PORTH, 5}, // H5 8 + {&DDRH, &PINH, &PORTH, 6}, // H6 9 + {&DDRB, &PINB, &PORTB, 4}, // B4 10 + {&DDRB, &PINB, &PORTB, 5}, // B5 11 + {&DDRB, &PINB, &PORTB, 6}, // B6 12 + {&DDRB, &PINB, &PORTB, 7}, // B7 13 + {&DDRJ, &PINJ, &PORTJ, 1}, // J1 14 + {&DDRJ, &PINJ, &PORTJ, 0}, // J0 15 + {&DDRH, &PINH, &PORTH, 1}, // H1 16 + {&DDRH, &PINH, &PORTH, 0}, // H0 17 + {&DDRD, &PIND, &PORTD, 3}, // D3 18 + {&DDRD, &PIND, &PORTD, 2}, // D2 19 + {&DDRD, &PIND, &PORTD, 1}, // D1 20 + {&DDRD, &PIND, &PORTD, 0}, // D0 21 + {&DDRA, &PINA, &PORTA, 0}, // A0 22 + {&DDRA, &PINA, &PORTA, 1}, // A1 23 + {&DDRA, &PINA, &PORTA, 2}, // A2 24 + {&DDRA, &PINA, &PORTA, 3}, // A3 25 + {&DDRA, &PINA, &PORTA, 4}, // A4 26 + {&DDRA, &PINA, &PORTA, 5}, // A5 27 + {&DDRA, &PINA, &PORTA, 6}, // A6 28 + {&DDRA, &PINA, &PORTA, 7}, // A7 29 + {&DDRC, &PINC, &PORTC, 7}, // C7 30 + {&DDRC, &PINC, &PORTC, 6}, // C6 31 + {&DDRC, &PINC, &PORTC, 5}, // C5 32 + {&DDRC, &PINC, &PORTC, 4}, // C4 33 + {&DDRC, &PINC, &PORTC, 3}, // C3 34 + {&DDRC, &PINC, &PORTC, 2}, // C2 35 + {&DDRC, &PINC, &PORTC, 1}, // C1 36 + {&DDRC, &PINC, &PORTC, 0}, // C0 37 + {&DDRD, &PIND, &PORTD, 7}, // D7 38 + {&DDRG, &PING, &PORTG, 2}, // G2 39 + {&DDRG, &PING, &PORTG, 1}, // G1 40 + {&DDRG, &PING, &PORTG, 0}, // G0 41 + {&DDRL, &PINL, &PORTL, 7}, // L7 42 + {&DDRL, &PINL, &PORTL, 6}, // L6 43 + {&DDRL, &PINL, &PORTL, 5}, // L5 44 + {&DDRL, &PINL, &PORTL, 4}, // L4 45 + {&DDRL, &PINL, &PORTL, 3}, // L3 46 + {&DDRL, &PINL, &PORTL, 2}, // L2 47 + {&DDRL, &PINL, &PORTL, 1}, // L1 48 + {&DDRL, &PINL, &PORTL, 0}, // L0 49 + {&DDRB, &PINB, &PORTB, 3}, // B3 50 + {&DDRB, &PINB, &PORTB, 2}, // B2 51 + {&DDRB, &PINB, &PORTB, 1}, // B1 52 + {&DDRB, &PINB, &PORTB, 0}, // B0 53 + {&DDRF, &PINF, &PORTF, 0}, // F0 54 + {&DDRF, &PINF, &PORTF, 1}, // F1 55 + {&DDRF, &PINF, &PORTF, 2}, // F2 56 + {&DDRF, &PINF, &PORTF, 3}, // F3 57 + {&DDRF, &PINF, &PORTF, 4}, // F4 58 + {&DDRF, &PINF, &PORTF, 5}, // F5 59 + {&DDRF, &PINF, &PORTF, 6}, // F6 60 + {&DDRF, &PINF, &PORTF, 7}, // F7 61 + {&DDRK, &PINK, &PORTK, 0}, // K0 62 + {&DDRK, &PINK, &PORTK, 1}, // K1 63 + {&DDRK, &PINK, &PORTK, 2}, // K2 64 + {&DDRK, &PINK, &PORTK, 3}, // K3 65 + {&DDRK, &PINK, &PORTK, 4}, // K4 66 + {&DDRK, &PINK, &PORTK, 5}, // K5 67 + {&DDRK, &PINK, &PORTK, 6}, // K6 68 + {&DDRK, &PINK, &PORTK, 7} // K7 69 +}; +//------------------------------------------------------------------------------ +#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__) +// Sanguino + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 17; +uint8_t const SCL_PIN = 18; + +// SPI port +uint8_t const SS_PIN = 4; +uint8_t const MOSI_PIN = 5; +uint8_t const MISO_PIN = 6; +uint8_t const SCK_PIN = 7; + +static const pin_map_t digitalPinMap[] = { + {&DDRB, &PINB, &PORTB, 0}, // B0 0 + {&DDRB, &PINB, &PORTB, 1}, // B1 1 + {&DDRB, &PINB, &PORTB, 2}, // B2 2 + {&DDRB, &PINB, &PORTB, 3}, // B3 3 + {&DDRB, &PINB, &PORTB, 4}, // B4 4 + {&DDRB, &PINB, &PORTB, 5}, // B5 5 + {&DDRB, &PINB, &PORTB, 6}, // B6 6 + {&DDRB, &PINB, &PORTB, 7}, // B7 7 + {&DDRD, &PIND, &PORTD, 0}, // D0 8 + {&DDRD, &PIND, &PORTD, 1}, // D1 9 + {&DDRD, &PIND, &PORTD, 2}, // D2 10 + {&DDRD, &PIND, &PORTD, 3}, // D3 11 + {&DDRD, &PIND, &PORTD, 4}, // D4 12 + {&DDRD, &PIND, &PORTD, 5}, // D5 13 + {&DDRD, &PIND, &PORTD, 6}, // D6 14 + {&DDRD, &PIND, &PORTD, 7}, // D7 15 + {&DDRC, &PINC, &PORTC, 0}, // C0 16 + {&DDRC, &PINC, &PORTC, 1}, // C1 17 + {&DDRC, &PINC, &PORTC, 2}, // C2 18 + {&DDRC, &PINC, &PORTC, 3}, // C3 19 + {&DDRC, &PINC, &PORTC, 4}, // C4 20 + {&DDRC, &PINC, &PORTC, 5}, // C5 21 + {&DDRC, &PINC, &PORTC, 6}, // C6 22 + {&DDRC, &PINC, &PORTC, 7}, // C7 23 + {&DDRA, &PINA, &PORTA, 7}, // A7 24 + {&DDRA, &PINA, &PORTA, 6}, // A6 25 + {&DDRA, &PINA, &PORTA, 5}, // A5 26 + {&DDRA, &PINA, &PORTA, 4}, // A4 27 + {&DDRA, &PINA, &PORTA, 3}, // A3 28 + {&DDRA, &PINA, &PORTA, 2}, // A2 29 + {&DDRA, &PINA, &PORTA, 1}, // A1 30 + {&DDRA, &PINA, &PORTA, 0} // A0 31 +}; +//------------------------------------------------------------------------------ +#elif defined(__AVR_ATmega32U4__) +// Teensy 2.0 + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 6; +uint8_t const SCL_PIN = 5; + +// SPI port +uint8_t const SS_PIN = 0; +uint8_t const MOSI_PIN = 2; +uint8_t const MISO_PIN = 3; +uint8_t const SCK_PIN = 1; + +static const pin_map_t digitalPinMap[] = { + {&DDRB, &PINB, &PORTB, 0}, // B0 0 + {&DDRB, &PINB, &PORTB, 1}, // B1 1 + {&DDRB, &PINB, &PORTB, 2}, // B2 2 + {&DDRB, &PINB, &PORTB, 3}, // B3 3 + {&DDRB, &PINB, &PORTB, 7}, // B7 4 + {&DDRD, &PIND, &PORTD, 0}, // D0 5 + {&DDRD, &PIND, &PORTD, 1}, // D1 6 + {&DDRD, &PIND, &PORTD, 2}, // D2 7 + {&DDRD, &PIND, &PORTD, 3}, // D3 8 + {&DDRC, &PINC, &PORTC, 6}, // C6 9 + {&DDRC, &PINC, &PORTC, 7}, // C7 10 + {&DDRD, &PIND, &PORTD, 6}, // D6 11 + {&DDRD, &PIND, &PORTD, 7}, // D7 12 + {&DDRB, &PINB, &PORTB, 4}, // B4 13 + {&DDRB, &PINB, &PORTB, 5}, // B5 14 + {&DDRB, &PINB, &PORTB, 6}, // B6 15 + {&DDRF, &PINF, &PORTF, 7}, // F7 16 + {&DDRF, &PINF, &PORTF, 6}, // F6 17 + {&DDRF, &PINF, &PORTF, 5}, // F5 18 + {&DDRF, &PINF, &PORTF, 4}, // F4 19 + {&DDRF, &PINF, &PORTF, 1}, // F1 20 + {&DDRF, &PINF, &PORTF, 0}, // F0 21 + {&DDRD, &PIND, &PORTD, 4}, // D4 22 + {&DDRD, &PIND, &PORTD, 5}, // D5 23 + {&DDRE, &PINE, &PORTE, 6} // E6 24 +}; +//------------------------------------------------------------------------------ +#elif defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) +// Teensy++ 1.0 & 2.0 + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 1; +uint8_t const SCL_PIN = 0; + +// SPI port +uint8_t const SS_PIN = 20; +uint8_t const MOSI_PIN = 22; +uint8_t const MISO_PIN = 23; +uint8_t const SCK_PIN = 21; + +static const pin_map_t digitalPinMap[] = { + {&DDRD, &PIND, &PORTD, 0}, // D0 0 + {&DDRD, &PIND, &PORTD, 1}, // D1 1 + {&DDRD, &PIND, &PORTD, 2}, // D2 2 + {&DDRD, &PIND, &PORTD, 3}, // D3 3 + {&DDRD, &PIND, &PORTD, 4}, // D4 4 + {&DDRD, &PIND, &PORTD, 5}, // D5 5 + {&DDRD, &PIND, &PORTD, 6}, // D6 6 + {&DDRD, &PIND, &PORTD, 7}, // D7 7 + {&DDRE, &PINE, &PORTE, 0}, // E0 8 + {&DDRE, &PINE, &PORTE, 1}, // E1 9 + {&DDRC, &PINC, &PORTC, 0}, // C0 10 + {&DDRC, &PINC, &PORTC, 1}, // C1 11 + {&DDRC, &PINC, &PORTC, 2}, // C2 12 + {&DDRC, &PINC, &PORTC, 3}, // C3 13 + {&DDRC, &PINC, &PORTC, 4}, // C4 14 + {&DDRC, &PINC, &PORTC, 5}, // C5 15 + {&DDRC, &PINC, &PORTC, 6}, // C6 16 + {&DDRC, &PINC, &PORTC, 7}, // C7 17 + {&DDRE, &PINE, &PORTE, 6}, // E6 18 + {&DDRE, &PINE, &PORTE, 7}, // E7 19 + {&DDRB, &PINB, &PORTB, 0}, // B0 20 + {&DDRB, &PINB, &PORTB, 1}, // B1 21 + {&DDRB, &PINB, &PORTB, 2}, // B2 22 + {&DDRB, &PINB, &PORTB, 3}, // B3 23 + {&DDRB, &PINB, &PORTB, 4}, // B4 24 + {&DDRB, &PINB, &PORTB, 5}, // B5 25 + {&DDRB, &PINB, &PORTB, 6}, // B6 26 + {&DDRB, &PINB, &PORTB, 7}, // B7 27 + {&DDRA, &PINA, &PORTA, 0}, // A0 28 + {&DDRA, &PINA, &PORTA, 1}, // A1 29 + {&DDRA, &PINA, &PORTA, 2}, // A2 30 + {&DDRA, &PINA, &PORTA, 3}, // A3 31 + {&DDRA, &PINA, &PORTA, 4}, // A4 32 + {&DDRA, &PINA, &PORTA, 5}, // A5 33 + {&DDRA, &PINA, &PORTA, 6}, // A6 34 + {&DDRA, &PINA, &PORTA, 7}, // A7 35 + {&DDRE, &PINE, &PORTE, 4}, // E4 36 + {&DDRE, &PINE, &PORTE, 5}, // E5 37 + {&DDRF, &PINF, &PORTF, 0}, // F0 38 + {&DDRF, &PINF, &PORTF, 1}, // F1 39 + {&DDRF, &PINF, &PORTF, 2}, // F2 40 + {&DDRF, &PINF, &PORTF, 3}, // F3 41 + {&DDRF, &PINF, &PORTF, 4}, // F4 42 + {&DDRF, &PINF, &PORTF, 5}, // F5 43 + {&DDRF, &PINF, &PORTF, 6}, // F6 44 + {&DDRF, &PINF, &PORTF, 7} // F7 45 +}; +//------------------------------------------------------------------------------ +#else // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +// 168 and 328 Arduinos + +// Two Wire (aka I2C) ports +uint8_t const SDA_PIN = 18; +uint8_t const SCL_PIN = 19; + +// SPI port +uint8_t const SS_PIN = 10; +uint8_t const MOSI_PIN = 11; +uint8_t const MISO_PIN = 12; +uint8_t const SCK_PIN = 13; + +static const pin_map_t digitalPinMap[] = { + {&DDRD, &PIND, &PORTD, 0}, // D0 0 + {&DDRD, &PIND, &PORTD, 1}, // D1 1 + {&DDRD, &PIND, &PORTD, 2}, // D2 2 + {&DDRD, &PIND, &PORTD, 3}, // D3 3 + {&DDRD, &PIND, &PORTD, 4}, // D4 4 + {&DDRD, &PIND, &PORTD, 5}, // D5 5 + {&DDRD, &PIND, &PORTD, 6}, // D6 6 + {&DDRD, &PIND, &PORTD, 7}, // D7 7 + {&DDRB, &PINB, &PORTB, 0}, // B0 8 + {&DDRB, &PINB, &PORTB, 1}, // B1 9 + {&DDRB, &PINB, &PORTB, 2}, // B2 10 + {&DDRB, &PINB, &PORTB, 3}, // B3 11 + {&DDRB, &PINB, &PORTB, 4}, // B4 12 + {&DDRB, &PINB, &PORTB, 5}, // B5 13 + {&DDRC, &PINC, &PORTC, 0}, // C0 14 + {&DDRC, &PINC, &PORTC, 1}, // C1 15 + {&DDRC, &PINC, &PORTC, 2}, // C2 16 + {&DDRC, &PINC, &PORTC, 3}, // C3 17 + {&DDRC, &PINC, &PORTC, 4}, // C4 18 + {&DDRC, &PINC, &PORTC, 5} // C5 19 +}; +#endif // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +//------------------------------------------------------------------------------ +static const uint8_t digitalPinCount = sizeof(digitalPinMap)/sizeof(pin_map_t); + +uint8_t badPinNumber(void) + __attribute__((error("Pin number is too large or not a constant"))); + +static inline __attribute__((always_inline)) + uint8_t getPinMode(uint8_t pin) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + return (*digitalPinMap[pin].ddr >> digitalPinMap[pin].bit) & 1; + } else { + return badPinNumber(); + } +} +static inline __attribute__((always_inline)) + void setPinMode(uint8_t pin, uint8_t mode) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + if (mode) { + *digitalPinMap[pin].ddr |= 1 << digitalPinMap[pin].bit; + } else { + *digitalPinMap[pin].ddr &= ~(1 << digitalPinMap[pin].bit); + } + } else { + badPinNumber(); + } +} +static inline __attribute__((always_inline)) + uint8_t fastDigitalRead(uint8_t pin) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + return (*digitalPinMap[pin].pin >> digitalPinMap[pin].bit) & 1; + } else { + return badPinNumber(); + } +} +static inline __attribute__((always_inline)) + void fastDigitalWrite(uint8_t pin, uint8_t value) { + if (__builtin_constant_p(pin) && pin < digitalPinCount) { + if (value) { + *digitalPinMap[pin].port |= 1 << digitalPinMap[pin].bit; + } else { + *digitalPinMap[pin].port &= ~(1 << digitalPinMap[pin].bit); + } + } else { + badPinNumber(); + } +} +#endif // Sd2PinMap_h diff --git a/Marlin/SdFat.h b/Marlin/SdFat.h index aa018dd13..048fa711e 100644 --- a/Marlin/SdFat.h +++ b/Marlin/SdFat.h @@ -1,547 +1,547 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef SdFat_h -#define SdFat_h -/** - * \file - * SdFile and SdVolume classes - */ -#include -#include "Sd2Card.h" -#include "FatStructs.h" -#include "Print.h" -//------------------------------------------------------------------------------ -/** - * Allow use of deprecated functions if non-zero - */ -#define ALLOW_DEPRECATED_FUNCTIONS 1 -//------------------------------------------------------------------------------ -// forward declaration since SdVolume is used in SdFile -class SdVolume; -//============================================================================== -// SdFile class - -// flags for ls() -/** ls() flag to print modify date */ -uint8_t const LS_DATE = 1; -/** ls() flag to print file size */ -uint8_t const LS_SIZE = 2; -/** ls() flag for recursive list of subdirectories */ -uint8_t const LS_R = 4; - -// use the gnu style oflag in open() -/** open() oflag for reading */ -uint8_t const O_READ = 0X01; -/** open() oflag - same as O_READ */ -uint8_t const O_RDONLY = O_READ; -/** open() oflag for write */ -uint8_t const O_WRITE = 0X02; -/** open() oflag - same as O_WRITE */ -uint8_t const O_WRONLY = O_WRITE; -/** open() oflag for reading and writing */ -uint8_t const O_RDWR = (O_READ | O_WRITE); -/** open() oflag mask for access modes */ -uint8_t const O_ACCMODE = (O_READ | O_WRITE); -/** The file offset shall be set to the end of the file prior to each write. */ -uint8_t const O_APPEND = 0X04; -/** synchronous writes - call sync() after each write */ -uint8_t const O_SYNC = 0X08; -/** create the file if nonexistent */ -uint8_t const O_CREAT = 0X10; -/** If O_CREAT and O_EXCL are set, open() shall fail if the file exists */ -uint8_t const O_EXCL = 0X20; -/** truncate the file to zero length */ -uint8_t const O_TRUNC = 0X40; - -// flags for timestamp -/** set the file's last access date */ -uint8_t const T_ACCESS = 1; -/** set the file's creation date and time */ -uint8_t const T_CREATE = 2; -/** Set the file's write date and time */ -uint8_t const T_WRITE = 4; -// values for type_ -/** This SdFile has not been opened. */ -uint8_t const FAT_FILE_TYPE_CLOSED = 0; -/** SdFile for a file */ -uint8_t const FAT_FILE_TYPE_NORMAL = 1; -/** SdFile for a FAT16 root directory */ -uint8_t const FAT_FILE_TYPE_ROOT16 = 2; -/** SdFile for a FAT32 root directory */ -uint8_t const FAT_FILE_TYPE_ROOT32 = 3; -/** SdFile for a subdirectory */ -uint8_t const FAT_FILE_TYPE_SUBDIR = 4; -/** Test value for directory type */ -uint8_t const FAT_FILE_TYPE_MIN_DIR = FAT_FILE_TYPE_ROOT16; - -/** date field for FAT directory entry */ -static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { - return (year - 1980) << 9 | month << 5 | day; -} -/** year part of FAT directory date field */ -static inline uint16_t FAT_YEAR(uint16_t fatDate) { - return 1980 + (fatDate >> 9); -} -/** month part of FAT directory date field */ -static inline uint8_t FAT_MONTH(uint16_t fatDate) { - return (fatDate >> 5) & 0XF; -} -/** day part of FAT directory date field */ -static inline uint8_t FAT_DAY(uint16_t fatDate) { - return fatDate & 0X1F; -} -/** time field for FAT directory entry */ -static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { - return hour << 11 | minute << 5 | second >> 1; -} -/** hour part of FAT directory time field */ -static inline uint8_t FAT_HOUR(uint16_t fatTime) { - return fatTime >> 11; -} -/** minute part of FAT directory time field */ -static inline uint8_t FAT_MINUTE(uint16_t fatTime) { - return(fatTime >> 5) & 0X3F; -} -/** second part of FAT directory time field */ -static inline uint8_t FAT_SECOND(uint16_t fatTime) { - return 2*(fatTime & 0X1F); -} -/** Default date for file timestamps is 1 Jan 2000 */ -uint16_t const FAT_DEFAULT_DATE = ((2000 - 1980) << 9) | (1 << 5) | 1; -/** Default time for file timestamp is 1 am */ -uint16_t const FAT_DEFAULT_TIME = (1 << 11); -//------------------------------------------------------------------------------ -/** - * \class SdFile - * \brief Access FAT16 and FAT32 files on SD and SDHC cards. - */ -class SdFile : public Print { - public: - /** Create an instance of SdFile. */ - SdFile(void) : type_(FAT_FILE_TYPE_CLOSED) {} - /** - * writeError is set to true if an error occurs during a write(). - * Set writeError to false before calling print() and/or write() and check - * for true after calls to print() and/or write(). - */ - bool writeError; - /** - * Cancel unbuffered reads for this file. - * See setUnbufferedRead() - */ - void clearUnbufferedRead(void) { - flags_ &= ~F_FILE_UNBUFFERED_READ; - } - uint8_t close(void); - uint8_t contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); - uint8_t createContiguous(SdFile* dirFile, - const char* fileName, uint32_t size); - /** \return The current cluster number for a file or directory. */ - uint32_t curCluster(void) const {return curCluster_;} - /** \return The current position for a file or directory. */ - uint32_t curPosition(void) const {return curPosition_;} - /** - * Set the date/time callback function - * - * \param[in] dateTime The user's call back function. The callback - * function is of the form: - * - * \code - * void dateTime(uint16_t* date, uint16_t* time) { - * uint16_t year; - * uint8_t month, day, hour, minute, second; - * - * // User gets date and time from GPS or real-time clock here - * - * // return date using FAT_DATE macro to format fields - * *date = FAT_DATE(year, month, day); - * - * // return time using FAT_TIME macro to format fields - * *time = FAT_TIME(hour, minute, second); - * } - * \endcode - * - * Sets the function that is called when a file is created or when - * a file's directory entry is modified by sync(). All timestamps, - * access, creation, and modify, are set when a file is created. - * sync() maintains the last access date and last modify date/time. - * - * See the timestamp() function. - */ - static void dateTimeCallback( - void (*dateTime)(uint16_t* date, uint16_t* time)) { - dateTime_ = dateTime; - } - /** - * Cancel the date/time callback function. - */ - static void dateTimeCallbackCancel(void) { - // use explicit zero since NULL is not defined for Sanguino - dateTime_ = 0; - } - /** \return Address of the block that contains this file's directory. */ - uint32_t dirBlock(void) const {return dirBlock_;} - uint8_t dirEntry(dir_t* dir); - /** \return Index of this file's directory in the block dirBlock. */ - uint8_t dirIndex(void) const {return dirIndex_;} - static void dirName(const dir_t& dir, char* name); - /** \return The total number of bytes in a file or directory. */ - uint32_t fileSize(void) const {return fileSize_;} - /** \return The first cluster number for a file or directory. */ - uint32_t firstCluster(void) const {return firstCluster_;} - /** \return True if this is a SdFile for a directory else false. */ - uint8_t isDir(void) const {return type_ >= FAT_FILE_TYPE_MIN_DIR;} - /** \return True if this is a SdFile for a file else false. */ - uint8_t isFile(void) const {return type_ == FAT_FILE_TYPE_NORMAL;} - /** \return True if this is a SdFile for an open file/directory else false. */ - uint8_t isOpen(void) const {return type_ != FAT_FILE_TYPE_CLOSED;} - /** \return True if this is a SdFile for a subdirectory else false. */ - uint8_t isSubDir(void) const {return type_ == FAT_FILE_TYPE_SUBDIR;} - /** \return True if this is a SdFile for the root directory. */ - uint8_t isRoot(void) const { - return type_ == FAT_FILE_TYPE_ROOT16 || type_ == FAT_FILE_TYPE_ROOT32; - } - void ls(uint8_t flags = 0, uint8_t indent = 0); - uint8_t makeDir(SdFile* dir, const char* dirName); - uint8_t open(SdFile* dirFile, uint16_t index, uint8_t oflag); - uint8_t open(SdFile* dirFile, const char* fileName, uint8_t oflag); - - uint8_t openRoot(SdVolume* vol); - static void printDirName(const dir_t& dir, uint8_t width); - static void printFatDate(uint16_t fatDate); - static void printFatTime(uint16_t fatTime); - static void printTwoDigits(uint8_t v); - /** - * Read the next byte from a file. - * - * \return For success read returns the next byte in the file as an int. - * If an error occurs or end of file is reached -1 is returned. - */ - int16_t read(void) { - uint8_t b; - return read(&b, 1) == 1 ? b : -1; - } - int16_t read(void* buf, uint16_t nbyte); - int8_t readDir(dir_t* dir); - static uint8_t remove(SdFile* dirFile, const char* fileName); - uint8_t remove(void); - /** Set the file's current position to zero. */ - void rewind(void) { - curPosition_ = curCluster_ = 0; - } - uint8_t rmDir(void); - uint8_t rmRfStar(void); - /** Set the files position to current position + \a pos. See seekSet(). */ - uint8_t seekCur(uint32_t pos) { - return seekSet(curPosition_ + pos); - } - /** - * Set the files current position to end of file. Useful to position - * a file for append. See seekSet(). - */ - uint8_t seekEnd(void) {return seekSet(fileSize_);} - uint8_t seekSet(uint32_t pos); - /** - * Use unbuffered reads to access this file. Used with Wave - * Shield ISR. Used with Sd2Card::partialBlockRead() in WaveRP. - * - * Not recommended for normal applications. - */ - void setUnbufferedRead(void) { - if (isFile()) flags_ |= F_FILE_UNBUFFERED_READ; - } - uint8_t timestamp(uint8_t flag, uint16_t year, uint8_t month, uint8_t day, - uint8_t hour, uint8_t minute, uint8_t second); - uint8_t sync(void); - /** Type of this SdFile. You should use isFile() or isDir() instead of type() - * if possible. - * - * \return The file or directory type. - */ - uint8_t type(void) const {return type_;} - uint8_t truncate(uint32_t size); - /** \return Unbuffered read flag. */ - uint8_t unbufferedRead(void) const { - return flags_ & F_FILE_UNBUFFERED_READ; - } - /** \return SdVolume that contains this file. */ - SdVolume* volume(void) const {return vol_;} - void write(uint8_t b); - int16_t write(const void* buf, uint16_t nbyte); - void write(const char* str); - void write_P(PGM_P str); - void writeln_P(PGM_P str); -//------------------------------------------------------------------------------ -#if ALLOW_DEPRECATED_FUNCTIONS -// Deprecated functions - suppress cpplint warnings with NOLINT comment - /** \deprecated Use: - * uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); - */ - uint8_t contiguousRange(uint32_t& bgnBlock, uint32_t& endBlock) { // NOLINT - return contiguousRange(&bgnBlock, &endBlock); - } - /** \deprecated Use: - * uint8_t SdFile::createContiguous(SdFile* dirFile, - * const char* fileName, uint32_t size) - */ - uint8_t createContiguous(SdFile& dirFile, // NOLINT - const char* fileName, uint32_t size) { - return createContiguous(&dirFile, fileName, size); - } - - /** - * \deprecated Use: - * static void SdFile::dateTimeCallback( - * void (*dateTime)(uint16_t* date, uint16_t* time)); - */ - static void dateTimeCallback( - void (*dateTime)(uint16_t& date, uint16_t& time)) { // NOLINT - oldDateTime_ = dateTime; - dateTime_ = dateTime ? oldToNew : 0; - } - /** \deprecated Use: uint8_t SdFile::dirEntry(dir_t* dir); */ - uint8_t dirEntry(dir_t& dir) {return dirEntry(&dir);} // NOLINT - /** \deprecated Use: - * uint8_t SdFile::makeDir(SdFile* dir, const char* dirName); - */ - uint8_t makeDir(SdFile& dir, const char* dirName) { // NOLINT - return makeDir(&dir, dirName); - } - /** \deprecated Use: - * uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag); - */ - uint8_t open(SdFile& dirFile, // NOLINT - const char* fileName, uint8_t oflag) { - return open(&dirFile, fileName, oflag); - } - /** \deprecated Do not use in new apps */ - uint8_t open(SdFile& dirFile, const char* fileName) { // NOLINT - return open(dirFile, fileName, O_RDWR); - } - /** \deprecated Use: - * uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag); - */ - uint8_t open(SdFile& dirFile, uint16_t index, uint8_t oflag) { // NOLINT - return open(&dirFile, index, oflag); - } - /** \deprecated Use: uint8_t SdFile::openRoot(SdVolume* vol); */ - uint8_t openRoot(SdVolume& vol) {return openRoot(&vol);} // NOLINT - - /** \deprecated Use: int8_t SdFile::readDir(dir_t* dir); */ - int8_t readDir(dir_t& dir) {return readDir(&dir);} // NOLINT - /** \deprecated Use: - * static uint8_t SdFile::remove(SdFile* dirFile, const char* fileName); - */ - static uint8_t remove(SdFile& dirFile, const char* fileName) { // NOLINT - return remove(&dirFile, fileName); - } -//------------------------------------------------------------------------------ -// rest are private - private: - static void (*oldDateTime_)(uint16_t& date, uint16_t& time); // NOLINT - static void oldToNew(uint16_t* date, uint16_t* time) { - uint16_t d; - uint16_t t; - oldDateTime_(d, t); - *date = d; - *time = t; - } -#endif // ALLOW_DEPRECATED_FUNCTIONS - private: - // bits defined in flags_ - // should be 0XF - static uint8_t const F_OFLAG = (O_ACCMODE | O_APPEND | O_SYNC); - // available bits - static uint8_t const F_UNUSED = 0X30; - // use unbuffered SD read - static uint8_t const F_FILE_UNBUFFERED_READ = 0X40; - // sync of directory entry required - static uint8_t const F_FILE_DIR_DIRTY = 0X80; - -// make sure F_OFLAG is ok -#if ((F_UNUSED | F_FILE_UNBUFFERED_READ | F_FILE_DIR_DIRTY) & F_OFLAG) -#error flags_ bits conflict -#endif // flags_ bits - - // private data - uint8_t flags_; // See above for definition of flags_ bits - uint8_t type_; // type of file see above for values - uint32_t curCluster_; // cluster for current file position - uint32_t curPosition_; // current file position in bytes from beginning - uint32_t dirBlock_; // SD block that contains directory entry for file - uint8_t dirIndex_; // index of entry in dirBlock 0 <= dirIndex_ <= 0XF - uint32_t fileSize_; // file size in bytes - uint32_t firstCluster_; // first cluster of file - SdVolume* vol_; // volume where file is located - - // private functions - uint8_t addCluster(void); - uint8_t addDirCluster(void); - dir_t* cacheDirEntry(uint8_t action); - static void (*dateTime_)(uint16_t* date, uint16_t* time); - static uint8_t make83Name(const char* str, uint8_t* name); - uint8_t openCachedEntry(uint8_t cacheIndex, uint8_t oflags); - dir_t* readDirCache(void); -}; -//============================================================================== -// SdVolume class -/** - * \brief Cache for an SD data block - */ -union cache_t { - /** Used to access cached file data blocks. */ - uint8_t data[512]; - /** Used to access cached FAT16 entries. */ - uint16_t fat16[256]; - /** Used to access cached FAT32 entries. */ - uint32_t fat32[128]; - /** Used to access cached directory entries. */ - dir_t dir[16]; - /** Used to access a cached MasterBoot Record. */ - mbr_t mbr; - /** Used to access to a cached FAT boot sector. */ - fbs_t fbs; -}; -//------------------------------------------------------------------------------ -/** - * \class SdVolume - * \brief Access FAT16 and FAT32 volumes on SD and SDHC cards. - */ -class SdVolume { - public: - /** Create an instance of SdVolume */ - SdVolume(void) :allocSearchStart_(2), fatType_(0) {} - /** Clear the cache and returns a pointer to the cache. Used by the WaveRP - * recorder to do raw write to the SD card. Not for normal apps. - */ - static uint8_t* cacheClear(void) { - cacheFlush(); - cacheBlockNumber_ = 0XFFFFFFFF; - return cacheBuffer_.data; - } - /** - * Initialize a FAT volume. Try partition one first then try super - * floppy format. - * - * \param[in] dev The Sd2Card where the volume is located. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. Reasons for - * failure include not finding a valid partition, not finding a valid - * FAT file system or an I/O error. - */ - uint8_t init(Sd2Card* dev) { return init(dev, 1) ? true : init(dev, 0);} - uint8_t init(Sd2Card* dev, uint8_t part); - - // inline functions that return volume info - /** \return The volume's cluster size in blocks. */ - uint8_t blocksPerCluster(void) const {return blocksPerCluster_;} - /** \return The number of blocks in one FAT. */ - uint32_t blocksPerFat(void) const {return blocksPerFat_;} - /** \return The total number of clusters in the volume. */ - uint32_t clusterCount(void) const {return clusterCount_;} - /** \return The shift count required to multiply by blocksPerCluster. */ - uint8_t clusterSizeShift(void) const {return clusterSizeShift_;} - /** \return The logical block number for the start of file data. */ - uint32_t dataStartBlock(void) const {return dataStartBlock_;} - /** \return The number of FAT structures on the volume. */ - uint8_t fatCount(void) const {return fatCount_;} - /** \return The logical block number for the start of the first FAT. */ - uint32_t fatStartBlock(void) const {return fatStartBlock_;} - /** \return The FAT type of the volume. Values are 12, 16 or 32. */ - uint8_t fatType(void) const {return fatType_;} - /** \return The number of entries in the root directory for FAT16 volumes. */ - uint32_t rootDirEntryCount(void) const {return rootDirEntryCount_;} - /** \return The logical block number for the start of the root directory - on FAT16 volumes or the first cluster number on FAT32 volumes. */ - uint32_t rootDirStart(void) const {return rootDirStart_;} - /** return a pointer to the Sd2Card object for this volume */ - static Sd2Card* sdCard(void) {return sdCard_;} -//------------------------------------------------------------------------------ -#if ALLOW_DEPRECATED_FUNCTIONS - // Deprecated functions - suppress cpplint warnings with NOLINT comment - /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev); */ - uint8_t init(Sd2Card& dev) {return init(&dev);} // NOLINT - - /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev, uint8_t vol); */ - uint8_t init(Sd2Card& dev, uint8_t part) { // NOLINT - return init(&dev, part); - } -#endif // ALLOW_DEPRECATED_FUNCTIONS -//------------------------------------------------------------------------------ - private: - // Allow SdFile access to SdVolume private data. - friend class SdFile; - - // value for action argument in cacheRawBlock to indicate read from cache - static uint8_t const CACHE_FOR_READ = 0; - // value for action argument in cacheRawBlock to indicate cache dirty - static uint8_t const CACHE_FOR_WRITE = 1; - - static cache_t cacheBuffer_; // 512 byte cache for device blocks - static uint32_t cacheBlockNumber_; // Logical number of block in the cache - static Sd2Card* sdCard_; // Sd2Card object for cache - static uint8_t cacheDirty_; // cacheFlush() will write block if true - static uint32_t cacheMirrorBlock_; // block number for mirror FAT -// - uint32_t allocSearchStart_; // start cluster for alloc search - uint8_t blocksPerCluster_; // cluster size in blocks - uint32_t blocksPerFat_; // FAT size in blocks - uint32_t clusterCount_; // clusters in one FAT - uint8_t clusterSizeShift_; // shift to convert cluster count to block count - uint32_t dataStartBlock_; // first data block number - uint8_t fatCount_; // number of FATs on volume - uint32_t fatStartBlock_; // start block for first FAT - uint8_t fatType_; // volume type (12, 16, OR 32) - uint16_t rootDirEntryCount_; // number of entries in FAT16 root dir - uint32_t rootDirStart_; // root start block for FAT16, cluster for FAT32 - //---------------------------------------------------------------------------- - uint8_t allocContiguous(uint32_t count, uint32_t* curCluster); - uint8_t blockOfCluster(uint32_t position) const { - return (position >> 9) & (blocksPerCluster_ - 1);} - uint32_t clusterStartBlock(uint32_t cluster) const { - return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_);} - uint32_t blockNumber(uint32_t cluster, uint32_t position) const { - return clusterStartBlock(cluster) + blockOfCluster(position);} - static uint8_t cacheFlush(void); - static uint8_t cacheRawBlock(uint32_t blockNumber, uint8_t action); - static void cacheSetDirty(void) {cacheDirty_ |= CACHE_FOR_WRITE;} - static uint8_t cacheZeroBlock(uint32_t blockNumber); - uint8_t chainSize(uint32_t beginCluster, uint32_t* size) const; - uint8_t fatGet(uint32_t cluster, uint32_t* value) const; - uint8_t fatPut(uint32_t cluster, uint32_t value); - uint8_t fatPutEOC(uint32_t cluster) { - return fatPut(cluster, 0x0FFFFFFF); - } - uint8_t freeChain(uint32_t cluster); - uint8_t isEOC(uint32_t cluster) const { - return cluster >= (fatType_ == 16 ? FAT16EOC_MIN : FAT32EOC_MIN); - } - uint8_t readBlock(uint32_t block, uint8_t* dst) { - return sdCard_->readBlock(block, dst);} - uint8_t readData(uint32_t block, uint16_t offset, - uint16_t count, uint8_t* dst) { - return sdCard_->readData(block, offset, count, dst); - } - uint8_t writeBlock(uint32_t block, const uint8_t* dst) { - return sdCard_->writeBlock(block, dst); - } -}; -#endif // SdFat_h +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFat_h +#define SdFat_h +/** + * \file + * SdFile and SdVolume classes + */ +#include +#include "Sd2Card.h" +#include "FatStructs.h" +#include "Print.h" +//------------------------------------------------------------------------------ +/** + * Allow use of deprecated functions if non-zero + */ +#define ALLOW_DEPRECATED_FUNCTIONS 1 +//------------------------------------------------------------------------------ +// forward declaration since SdVolume is used in SdFile +class SdVolume; +//============================================================================== +// SdFile class + +// flags for ls() +/** ls() flag to print modify date */ +uint8_t const LS_DATE = 1; +/** ls() flag to print file size */ +uint8_t const LS_SIZE = 2; +/** ls() flag for recursive list of subdirectories */ +uint8_t const LS_R = 4; + +// use the gnu style oflag in open() +/** open() oflag for reading */ +uint8_t const O_READ = 0X01; +/** open() oflag - same as O_READ */ +uint8_t const O_RDONLY = O_READ; +/** open() oflag for write */ +uint8_t const O_WRITE = 0X02; +/** open() oflag - same as O_WRITE */ +uint8_t const O_WRONLY = O_WRITE; +/** open() oflag for reading and writing */ +uint8_t const O_RDWR = (O_READ | O_WRITE); +/** open() oflag mask for access modes */ +uint8_t const O_ACCMODE = (O_READ | O_WRITE); +/** The file offset shall be set to the end of the file prior to each write. */ +uint8_t const O_APPEND = 0X04; +/** synchronous writes - call sync() after each write */ +uint8_t const O_SYNC = 0X08; +/** create the file if nonexistent */ +uint8_t const O_CREAT = 0X10; +/** If O_CREAT and O_EXCL are set, open() shall fail if the file exists */ +uint8_t const O_EXCL = 0X20; +/** truncate the file to zero length */ +uint8_t const O_TRUNC = 0X40; + +// flags for timestamp +/** set the file's last access date */ +uint8_t const T_ACCESS = 1; +/** set the file's creation date and time */ +uint8_t const T_CREATE = 2; +/** Set the file's write date and time */ +uint8_t const T_WRITE = 4; +// values for type_ +/** This SdFile has not been opened. */ +uint8_t const FAT_FILE_TYPE_CLOSED = 0; +/** SdFile for a file */ +uint8_t const FAT_FILE_TYPE_NORMAL = 1; +/** SdFile for a FAT16 root directory */ +uint8_t const FAT_FILE_TYPE_ROOT16 = 2; +/** SdFile for a FAT32 root directory */ +uint8_t const FAT_FILE_TYPE_ROOT32 = 3; +/** SdFile for a subdirectory */ +uint8_t const FAT_FILE_TYPE_SUBDIR = 4; +/** Test value for directory type */ +uint8_t const FAT_FILE_TYPE_MIN_DIR = FAT_FILE_TYPE_ROOT16; + +/** date field for FAT directory entry */ +static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { + return (year - 1980) << 9 | month << 5 | day; +} +/** year part of FAT directory date field */ +static inline uint16_t FAT_YEAR(uint16_t fatDate) { + return 1980 + (fatDate >> 9); +} +/** month part of FAT directory date field */ +static inline uint8_t FAT_MONTH(uint16_t fatDate) { + return (fatDate >> 5) & 0XF; +} +/** day part of FAT directory date field */ +static inline uint8_t FAT_DAY(uint16_t fatDate) { + return fatDate & 0X1F; +} +/** time field for FAT directory entry */ +static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { + return hour << 11 | minute << 5 | second >> 1; +} +/** hour part of FAT directory time field */ +static inline uint8_t FAT_HOUR(uint16_t fatTime) { + return fatTime >> 11; +} +/** minute part of FAT directory time field */ +static inline uint8_t FAT_MINUTE(uint16_t fatTime) { + return(fatTime >> 5) & 0X3F; +} +/** second part of FAT directory time field */ +static inline uint8_t FAT_SECOND(uint16_t fatTime) { + return 2*(fatTime & 0X1F); +} +/** Default date for file timestamps is 1 Jan 2000 */ +uint16_t const FAT_DEFAULT_DATE = ((2000 - 1980) << 9) | (1 << 5) | 1; +/** Default time for file timestamp is 1 am */ +uint16_t const FAT_DEFAULT_TIME = (1 << 11); +//------------------------------------------------------------------------------ +/** + * \class SdFile + * \brief Access FAT16 and FAT32 files on SD and SDHC cards. + */ +class SdFile : public Print { + public: + /** Create an instance of SdFile. */ + SdFile(void) : type_(FAT_FILE_TYPE_CLOSED) {} + /** + * writeError is set to true if an error occurs during a write(). + * Set writeError to false before calling print() and/or write() and check + * for true after calls to print() and/or write(). + */ + bool writeError; + /** + * Cancel unbuffered reads for this file. + * See setUnbufferedRead() + */ + void clearUnbufferedRead(void) { + flags_ &= ~F_FILE_UNBUFFERED_READ; + } + uint8_t close(void); + uint8_t contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); + uint8_t createContiguous(SdFile* dirFile, + const char* fileName, uint32_t size); + /** \return The current cluster number for a file or directory. */ + uint32_t curCluster(void) const {return curCluster_;} + /** \return The current position for a file or directory. */ + uint32_t curPosition(void) const {return curPosition_;} + /** + * Set the date/time callback function + * + * \param[in] dateTime The user's call back function. The callback + * function is of the form: + * + * \code + * void dateTime(uint16_t* date, uint16_t* time) { + * uint16_t year; + * uint8_t month, day, hour, minute, second; + * + * // User gets date and time from GPS or real-time clock here + * + * // return date using FAT_DATE macro to format fields + * *date = FAT_DATE(year, month, day); + * + * // return time using FAT_TIME macro to format fields + * *time = FAT_TIME(hour, minute, second); + * } + * \endcode + * + * Sets the function that is called when a file is created or when + * a file's directory entry is modified by sync(). All timestamps, + * access, creation, and modify, are set when a file is created. + * sync() maintains the last access date and last modify date/time. + * + * See the timestamp() function. + */ + static void dateTimeCallback( + void (*dateTime)(uint16_t* date, uint16_t* time)) { + dateTime_ = dateTime; + } + /** + * Cancel the date/time callback function. + */ + static void dateTimeCallbackCancel(void) { + // use explicit zero since NULL is not defined for Sanguino + dateTime_ = 0; + } + /** \return Address of the block that contains this file's directory. */ + uint32_t dirBlock(void) const {return dirBlock_;} + uint8_t dirEntry(dir_t* dir); + /** \return Index of this file's directory in the block dirBlock. */ + uint8_t dirIndex(void) const {return dirIndex_;} + static void dirName(const dir_t& dir, char* name); + /** \return The total number of bytes in a file or directory. */ + uint32_t fileSize(void) const {return fileSize_;} + /** \return The first cluster number for a file or directory. */ + uint32_t firstCluster(void) const {return firstCluster_;} + /** \return True if this is a SdFile for a directory else false. */ + uint8_t isDir(void) const {return type_ >= FAT_FILE_TYPE_MIN_DIR;} + /** \return True if this is a SdFile for a file else false. */ + uint8_t isFile(void) const {return type_ == FAT_FILE_TYPE_NORMAL;} + /** \return True if this is a SdFile for an open file/directory else false. */ + uint8_t isOpen(void) const {return type_ != FAT_FILE_TYPE_CLOSED;} + /** \return True if this is a SdFile for a subdirectory else false. */ + uint8_t isSubDir(void) const {return type_ == FAT_FILE_TYPE_SUBDIR;} + /** \return True if this is a SdFile for the root directory. */ + uint8_t isRoot(void) const { + return type_ == FAT_FILE_TYPE_ROOT16 || type_ == FAT_FILE_TYPE_ROOT32; + } + void ls(uint8_t flags = 0, uint8_t indent = 0); + uint8_t makeDir(SdFile* dir, const char* dirName); + uint8_t open(SdFile* dirFile, uint16_t index, uint8_t oflag); + uint8_t open(SdFile* dirFile, const char* fileName, uint8_t oflag); + + uint8_t openRoot(SdVolume* vol); + static void printDirName(const dir_t& dir, uint8_t width); + static void printFatDate(uint16_t fatDate); + static void printFatTime(uint16_t fatTime); + static void printTwoDigits(uint8_t v); + /** + * Read the next byte from a file. + * + * \return For success read returns the next byte in the file as an int. + * If an error occurs or end of file is reached -1 is returned. + */ + int16_t read(void) { + uint8_t b; + return read(&b, 1) == 1 ? b : -1; + } + int16_t read(void* buf, uint16_t nbyte); + int8_t readDir(dir_t* dir); + static uint8_t remove(SdFile* dirFile, const char* fileName); + uint8_t remove(void); + /** Set the file's current position to zero. */ + void rewind(void) { + curPosition_ = curCluster_ = 0; + } + uint8_t rmDir(void); + uint8_t rmRfStar(void); + /** Set the files position to current position + \a pos. See seekSet(). */ + uint8_t seekCur(uint32_t pos) { + return seekSet(curPosition_ + pos); + } + /** + * Set the files current position to end of file. Useful to position + * a file for append. See seekSet(). + */ + uint8_t seekEnd(void) {return seekSet(fileSize_);} + uint8_t seekSet(uint32_t pos); + /** + * Use unbuffered reads to access this file. Used with Wave + * Shield ISR. Used with Sd2Card::partialBlockRead() in WaveRP. + * + * Not recommended for normal applications. + */ + void setUnbufferedRead(void) { + if (isFile()) flags_ |= F_FILE_UNBUFFERED_READ; + } + uint8_t timestamp(uint8_t flag, uint16_t year, uint8_t month, uint8_t day, + uint8_t hour, uint8_t minute, uint8_t second); + uint8_t sync(void); + /** Type of this SdFile. You should use isFile() or isDir() instead of type() + * if possible. + * + * \return The file or directory type. + */ + uint8_t type(void) const {return type_;} + uint8_t truncate(uint32_t size); + /** \return Unbuffered read flag. */ + uint8_t unbufferedRead(void) const { + return flags_ & F_FILE_UNBUFFERED_READ; + } + /** \return SdVolume that contains this file. */ + SdVolume* volume(void) const {return vol_;} + void write(uint8_t b); + int16_t write(const void* buf, uint16_t nbyte); + void write(const char* str); + void write_P(PGM_P str); + void writeln_P(PGM_P str); +//------------------------------------------------------------------------------ +#if ALLOW_DEPRECATED_FUNCTIONS +// Deprecated functions - suppress cpplint warnings with NOLINT comment + /** \deprecated Use: + * uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); + */ + uint8_t contiguousRange(uint32_t& bgnBlock, uint32_t& endBlock) { // NOLINT + return contiguousRange(&bgnBlock, &endBlock); + } + /** \deprecated Use: + * uint8_t SdFile::createContiguous(SdFile* dirFile, + * const char* fileName, uint32_t size) + */ + uint8_t createContiguous(SdFile& dirFile, // NOLINT + const char* fileName, uint32_t size) { + return createContiguous(&dirFile, fileName, size); + } + + /** + * \deprecated Use: + * static void SdFile::dateTimeCallback( + * void (*dateTime)(uint16_t* date, uint16_t* time)); + */ + static void dateTimeCallback( + void (*dateTime)(uint16_t& date, uint16_t& time)) { // NOLINT + oldDateTime_ = dateTime; + dateTime_ = dateTime ? oldToNew : 0; + } + /** \deprecated Use: uint8_t SdFile::dirEntry(dir_t* dir); */ + uint8_t dirEntry(dir_t& dir) {return dirEntry(&dir);} // NOLINT + /** \deprecated Use: + * uint8_t SdFile::makeDir(SdFile* dir, const char* dirName); + */ + uint8_t makeDir(SdFile& dir, const char* dirName) { // NOLINT + return makeDir(&dir, dirName); + } + /** \deprecated Use: + * uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag); + */ + uint8_t open(SdFile& dirFile, // NOLINT + const char* fileName, uint8_t oflag) { + return open(&dirFile, fileName, oflag); + } + /** \deprecated Do not use in new apps */ + uint8_t open(SdFile& dirFile, const char* fileName) { // NOLINT + return open(dirFile, fileName, O_RDWR); + } + /** \deprecated Use: + * uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag); + */ + uint8_t open(SdFile& dirFile, uint16_t index, uint8_t oflag) { // NOLINT + return open(&dirFile, index, oflag); + } + /** \deprecated Use: uint8_t SdFile::openRoot(SdVolume* vol); */ + uint8_t openRoot(SdVolume& vol) {return openRoot(&vol);} // NOLINT + + /** \deprecated Use: int8_t SdFile::readDir(dir_t* dir); */ + int8_t readDir(dir_t& dir) {return readDir(&dir);} // NOLINT + /** \deprecated Use: + * static uint8_t SdFile::remove(SdFile* dirFile, const char* fileName); + */ + static uint8_t remove(SdFile& dirFile, const char* fileName) { // NOLINT + return remove(&dirFile, fileName); + } +//------------------------------------------------------------------------------ +// rest are private + private: + static void (*oldDateTime_)(uint16_t& date, uint16_t& time); // NOLINT + static void oldToNew(uint16_t* date, uint16_t* time) { + uint16_t d; + uint16_t t; + oldDateTime_(d, t); + *date = d; + *time = t; + } +#endif // ALLOW_DEPRECATED_FUNCTIONS + private: + // bits defined in flags_ + // should be 0XF + static uint8_t const F_OFLAG = (O_ACCMODE | O_APPEND | O_SYNC); + // available bits + static uint8_t const F_UNUSED = 0X30; + // use unbuffered SD read + static uint8_t const F_FILE_UNBUFFERED_READ = 0X40; + // sync of directory entry required + static uint8_t const F_FILE_DIR_DIRTY = 0X80; + +// make sure F_OFLAG is ok +#if ((F_UNUSED | F_FILE_UNBUFFERED_READ | F_FILE_DIR_DIRTY) & F_OFLAG) +#error flags_ bits conflict +#endif // flags_ bits + + // private data + uint8_t flags_; // See above for definition of flags_ bits + uint8_t type_; // type of file see above for values + uint32_t curCluster_; // cluster for current file position + uint32_t curPosition_; // current file position in bytes from beginning + uint32_t dirBlock_; // SD block that contains directory entry for file + uint8_t dirIndex_; // index of entry in dirBlock 0 <= dirIndex_ <= 0XF + uint32_t fileSize_; // file size in bytes + uint32_t firstCluster_; // first cluster of file + SdVolume* vol_; // volume where file is located + + // private functions + uint8_t addCluster(void); + uint8_t addDirCluster(void); + dir_t* cacheDirEntry(uint8_t action); + static void (*dateTime_)(uint16_t* date, uint16_t* time); + static uint8_t make83Name(const char* str, uint8_t* name); + uint8_t openCachedEntry(uint8_t cacheIndex, uint8_t oflags); + dir_t* readDirCache(void); +}; +//============================================================================== +// SdVolume class +/** + * \brief Cache for an SD data block + */ +union cache_t { + /** Used to access cached file data blocks. */ + uint8_t data[512]; + /** Used to access cached FAT16 entries. */ + uint16_t fat16[256]; + /** Used to access cached FAT32 entries. */ + uint32_t fat32[128]; + /** Used to access cached directory entries. */ + dir_t dir[16]; + /** Used to access a cached MasterBoot Record. */ + mbr_t mbr; + /** Used to access to a cached FAT boot sector. */ + fbs_t fbs; +}; +//------------------------------------------------------------------------------ +/** + * \class SdVolume + * \brief Access FAT16 and FAT32 volumes on SD and SDHC cards. + */ +class SdVolume { + public: + /** Create an instance of SdVolume */ + SdVolume(void) :allocSearchStart_(2), fatType_(0) {} + /** Clear the cache and returns a pointer to the cache. Used by the WaveRP + * recorder to do raw write to the SD card. Not for normal apps. + */ + static uint8_t* cacheClear(void) { + cacheFlush(); + cacheBlockNumber_ = 0XFFFFFFFF; + return cacheBuffer_.data; + } + /** + * Initialize a FAT volume. Try partition one first then try super + * floppy format. + * + * \param[in] dev The Sd2Card where the volume is located. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. Reasons for + * failure include not finding a valid partition, not finding a valid + * FAT file system or an I/O error. + */ + uint8_t init(Sd2Card* dev) { return init(dev, 1) ? true : init(dev, 0);} + uint8_t init(Sd2Card* dev, uint8_t part); + + // inline functions that return volume info + /** \return The volume's cluster size in blocks. */ + uint8_t blocksPerCluster(void) const {return blocksPerCluster_;} + /** \return The number of blocks in one FAT. */ + uint32_t blocksPerFat(void) const {return blocksPerFat_;} + /** \return The total number of clusters in the volume. */ + uint32_t clusterCount(void) const {return clusterCount_;} + /** \return The shift count required to multiply by blocksPerCluster. */ + uint8_t clusterSizeShift(void) const {return clusterSizeShift_;} + /** \return The logical block number for the start of file data. */ + uint32_t dataStartBlock(void) const {return dataStartBlock_;} + /** \return The number of FAT structures on the volume. */ + uint8_t fatCount(void) const {return fatCount_;} + /** \return The logical block number for the start of the first FAT. */ + uint32_t fatStartBlock(void) const {return fatStartBlock_;} + /** \return The FAT type of the volume. Values are 12, 16 or 32. */ + uint8_t fatType(void) const {return fatType_;} + /** \return The number of entries in the root directory for FAT16 volumes. */ + uint32_t rootDirEntryCount(void) const {return rootDirEntryCount_;} + /** \return The logical block number for the start of the root directory + on FAT16 volumes or the first cluster number on FAT32 volumes. */ + uint32_t rootDirStart(void) const {return rootDirStart_;} + /** return a pointer to the Sd2Card object for this volume */ + static Sd2Card* sdCard(void) {return sdCard_;} +//------------------------------------------------------------------------------ +#if ALLOW_DEPRECATED_FUNCTIONS + // Deprecated functions - suppress cpplint warnings with NOLINT comment + /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev); */ + uint8_t init(Sd2Card& dev) {return init(&dev);} // NOLINT + + /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev, uint8_t vol); */ + uint8_t init(Sd2Card& dev, uint8_t part) { // NOLINT + return init(&dev, part); + } +#endif // ALLOW_DEPRECATED_FUNCTIONS +//------------------------------------------------------------------------------ + private: + // Allow SdFile access to SdVolume private data. + friend class SdFile; + + // value for action argument in cacheRawBlock to indicate read from cache + static uint8_t const CACHE_FOR_READ = 0; + // value for action argument in cacheRawBlock to indicate cache dirty + static uint8_t const CACHE_FOR_WRITE = 1; + + static cache_t cacheBuffer_; // 512 byte cache for device blocks + static uint32_t cacheBlockNumber_; // Logical number of block in the cache + static Sd2Card* sdCard_; // Sd2Card object for cache + static uint8_t cacheDirty_; // cacheFlush() will write block if true + static uint32_t cacheMirrorBlock_; // block number for mirror FAT +// + uint32_t allocSearchStart_; // start cluster for alloc search + uint8_t blocksPerCluster_; // cluster size in blocks + uint32_t blocksPerFat_; // FAT size in blocks + uint32_t clusterCount_; // clusters in one FAT + uint8_t clusterSizeShift_; // shift to convert cluster count to block count + uint32_t dataStartBlock_; // first data block number + uint8_t fatCount_; // number of FATs on volume + uint32_t fatStartBlock_; // start block for first FAT + uint8_t fatType_; // volume type (12, 16, OR 32) + uint16_t rootDirEntryCount_; // number of entries in FAT16 root dir + uint32_t rootDirStart_; // root start block for FAT16, cluster for FAT32 + //---------------------------------------------------------------------------- + uint8_t allocContiguous(uint32_t count, uint32_t* curCluster); + uint8_t blockOfCluster(uint32_t position) const { + return (position >> 9) & (blocksPerCluster_ - 1);} + uint32_t clusterStartBlock(uint32_t cluster) const { + return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_);} + uint32_t blockNumber(uint32_t cluster, uint32_t position) const { + return clusterStartBlock(cluster) + blockOfCluster(position);} + static uint8_t cacheFlush(void); + static uint8_t cacheRawBlock(uint32_t blockNumber, uint8_t action); + static void cacheSetDirty(void) {cacheDirty_ |= CACHE_FOR_WRITE;} + static uint8_t cacheZeroBlock(uint32_t blockNumber); + uint8_t chainSize(uint32_t beginCluster, uint32_t* size) const; + uint8_t fatGet(uint32_t cluster, uint32_t* value) const; + uint8_t fatPut(uint32_t cluster, uint32_t value); + uint8_t fatPutEOC(uint32_t cluster) { + return fatPut(cluster, 0x0FFFFFFF); + } + uint8_t freeChain(uint32_t cluster); + uint8_t isEOC(uint32_t cluster) const { + return cluster >= (fatType_ == 16 ? FAT16EOC_MIN : FAT32EOC_MIN); + } + uint8_t readBlock(uint32_t block, uint8_t* dst) { + return sdCard_->readBlock(block, dst);} + uint8_t readData(uint32_t block, uint16_t offset, + uint16_t count, uint8_t* dst) { + return sdCard_->readData(block, offset, count, dst); + } + uint8_t writeBlock(uint32_t block, const uint8_t* dst) { + return sdCard_->writeBlock(block, dst); + } +}; +#endif // SdFat_h diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index 7992031f7..8bf90483d 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -1,70 +1,70 @@ -/* Arduino SdFat Library - * Copyright (C) 2008 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef SdFatUtil_h -#define SdFatUtil_h -/** - * \file - * Useful utility functions. - */ -#include -#include -/** Store and print a string in flash memory.*/ -#define PgmPrint(x) SerialPrint_P(PSTR(x)) -/** Store and print a string in flash memory followed by a CR/LF.*/ -#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) -/** Defined so doxygen works for function definitions. */ -#define NOINLINE __attribute__((noinline)) -//------------------------------------------------------------------------------ -/** Return the number of bytes currently free in RAM. */ -static int FreeRam(void) { - extern int __bss_end; - extern int* __brkval; - int free_memory; - if (reinterpret_cast(__brkval) == 0) { - // if no heap use from end of bss section - free_memory = reinterpret_cast(&free_memory) - - reinterpret_cast(&__bss_end); - } else { - // use from top of stack to heap - free_memory = reinterpret_cast(&free_memory) - - reinterpret_cast(__brkval); - } - return free_memory; -} -//------------------------------------------------------------------------------ -/** - * %Print a string in flash memory to the serial port. - * - * \param[in] str Pointer to string stored in flash memory. - */ -static NOINLINE void SerialPrint_P(PGM_P str) { - for (uint8_t c; (c = pgm_read_byte(str)); str++) Serial.print(c); -} -//------------------------------------------------------------------------------ -/** - * %Print a string in flash memory followed by a CR/LF. - * - * \param[in] str Pointer to string stored in flash memory. - */ -static NOINLINE void SerialPrintln_P(PGM_P str) { - SerialPrint_P(str); - Serial.println(); -} -#endif // #define SdFatUtil_h +/* Arduino SdFat Library + * Copyright (C) 2008 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFatUtil_h +#define SdFatUtil_h +/** + * \file + * Useful utility functions. + */ +#include +#include +/** Store and print a string in flash memory.*/ +#define PgmPrint(x) SerialPrint_P(PSTR(x)) +/** Store and print a string in flash memory followed by a CR/LF.*/ +#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) +/** Defined so doxygen works for function definitions. */ +#define NOINLINE __attribute__((noinline)) +//------------------------------------------------------------------------------ +/** Return the number of bytes currently free in RAM. */ +static int FreeRam(void) { + extern int __bss_end; + extern int* __brkval; + int free_memory; + if (reinterpret_cast(__brkval) == 0) { + // if no heap use from end of bss section + free_memory = reinterpret_cast(&free_memory) + - reinterpret_cast(&__bss_end); + } else { + // use from top of stack to heap + free_memory = reinterpret_cast(&free_memory) + - reinterpret_cast(__brkval); + } + return free_memory; +} +//------------------------------------------------------------------------------ +/** + * %Print a string in flash memory to the serial port. + * + * \param[in] str Pointer to string stored in flash memory. + */ +static NOINLINE void SerialPrint_P(PGM_P str) { + for (uint8_t c; (c = pgm_read_byte(str)); str++) Serial.print(c); +} +//------------------------------------------------------------------------------ +/** + * %Print a string in flash memory followed by a CR/LF. + * + * \param[in] str Pointer to string stored in flash memory. + */ +static NOINLINE void SerialPrintln_P(PGM_P str) { + SerialPrint_P(str); + Serial.println(); +} +#endif // #define SdFatUtil_h diff --git a/Marlin/SdFatmainpage.h b/Marlin/SdFatmainpage.h index d26cb854c..73b3b63bd 100644 --- a/Marlin/SdFatmainpage.h +++ b/Marlin/SdFatmainpage.h @@ -1,202 +1,202 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ - -/** -\mainpage Arduino SdFat Library -
Copyright © 2009 by William Greiman -
- -\section Intro Introduction -The Arduino SdFat Library is a minimal implementation of FAT16 and FAT32 -file systems on SD flash memory cards. Standard SD and high capacity -SDHC cards are supported. - -The SdFat only supports short 8.3 names. - -The main classes in SdFat are Sd2Card, SdVolume, and SdFile. - -The Sd2Card class supports access to standard SD cards and SDHC cards. Most -applications will only need to call the Sd2Card::init() member function. - -The SdVolume class supports FAT16 and FAT32 partitions. Most applications -will only need to call the SdVolume::init() member function. - -The SdFile class provides file access functions such as open(), read(), -remove(), write(), close() and sync(). This class supports access to the root -directory and subdirectories. - -A number of example are provided in the SdFat/examples folder. These were -developed to test SdFat and illustrate its use. - -SdFat was developed for high speed data recording. SdFat was used to implement -an audio record/play class, WaveRP, for the Adafruit Wave Shield. This -application uses special Sd2Card calls to write to contiguous files in raw mode. -These functions reduce write latency so that audio can be recorded with the -small amount of RAM in the Arduino. - -\section SDcard SD\SDHC Cards - -Arduinos access SD cards using the cards SPI protocol. PCs, Macs, and -most consumer devices use the 4-bit parallel SD protocol. A card that -functions well on A PC or Mac may not work well on the Arduino. - -Most cards have good SPI read performance but cards vary widely in SPI -write performance. Write performance is limited by how efficiently the -card manages internal erase/remapping operations. The Arduino cannot -optimize writes to reduce erase operations because of its limit RAM. - -SanDisk cards generally have good write performance. They seem to have -more internal RAM buffering than other cards and therefore can limit -the number of flash erase operations that the Arduino forces due to its -limited RAM. - -\section Hardware Hardware Configuration - -SdFat was developed using an - Adafruit Industries - Wave Shield. - -The hardware interface to the SD card should not use a resistor based level -shifter. SdFat sets the SPI bus frequency to 8 MHz which results in signal -rise times that are too slow for the edge detectors in many newer SD card -controllers when resistor voltage dividers are used. - -The 5 to 3.3 V level shifter for 5 V Arduinos should be IC based like the -74HC4050N based circuit shown in the file SdLevel.png. The Adafruit Wave Shield -uses a 74AHC125N. Gravitech sells SD and MicroSD Card Adapters based on the -74LCX245. - -If you are using a resistor based level shifter and are having problems try -setting the SPI bus frequency to 4 MHz. This can be done by using -card.init(SPI_HALF_SPEED) to initialize the SD card. - -\section comment Bugs and Comments - -If you wish to report bugs or have comments, send email to fat16lib@sbcglobal.net. - -\section SdFatClass SdFat Usage - -SdFat uses a slightly restricted form of short names. -Only printable ASCII characters are supported. No characters with code point -values greater than 127 are allowed. Space is not allowed even though space -was allowed in the API of early versions of DOS. - -Short names are limited to 8 characters followed by an optional period (.) -and extension of up to 3 characters. The characters may be any combination -of letters and digits. The following special characters are also allowed: - -$ % ' - _ @ ~ ` ! ( ) { } ^ # & - -Short names are always converted to upper case and their original case -value is lost. - -\note - The Arduino Print class uses character -at a time writes so it was necessary to use a \link SdFile::sync() sync() \endlink -function to control when data is written to the SD card. - -\par -An application which writes to a file using \link Print::print() print()\endlink, -\link Print::println() println() \endlink -or \link SdFile::write write() \endlink must call \link SdFile::sync() sync() \endlink -at the appropriate time to force data and directory information to be written -to the SD Card. Data and directory information are also written to the SD card -when \link SdFile::close() close() \endlink is called. - -\par -Applications must use care calling \link SdFile::sync() sync() \endlink -since 2048 bytes of I/O is required to update file and -directory information. This includes writing the current data block, reading -the block that contains the directory entry for update, writing the directory -block back and reading back the current data block. - -It is possible to open a file with two or more instances of SdFile. A file may -be corrupted if data is written to the file by more than one instance of SdFile. - -\section HowTo How to format SD Cards as FAT Volumes - -You should use a freshly formatted SD card for best performance. FAT -file systems become slower if many files have been created and deleted. -This is because the directory entry for a deleted file is marked as deleted, -but is not deleted. When a new file is created, these entries must be scanned -before creating the file, a flaw in the FAT design. Also files can become -fragmented which causes reads and writes to be slower. - -Microsoft operating systems support removable media formatted with a -Master Boot Record, MBR, or formatted as a super floppy with a FAT Boot Sector -in block zero. - -Microsoft operating systems expect MBR formatted removable media -to have only one partition. The first partition should be used. - -Microsoft operating systems do not support partitioning SD flash cards. -If you erase an SD card with a program like KillDisk, Most versions of -Windows will format the card as a super floppy. - -The best way to restore an SD card's format is to use SDFormatter -which can be downloaded from: - -http://www.sdcard.org/consumers/formatter/ - -SDFormatter aligns flash erase boundaries with file -system structures which reduces write latency and file system overhead. - -SDFormatter does not have an option for FAT type so it may format -small cards as FAT12. - -After the MBR is restored by SDFormatter you may need to reformat small -cards that have been formatted FAT12 to force the volume type to be FAT16. - -If you reformat the SD card with an OS utility, choose a cluster size that -will result in: - -4084 < CountOfClusters && CountOfClusters < 65525 - -The volume will then be FAT16. - -If you are formatting an SD card on OS X or Linux, be sure to use the first -partition. Format this partition with a cluster count in above range. - -\section References References - -Adafruit Industries: - -http://www.adafruit.com/ - -http://www.ladyada.net/make/waveshield/ - -The Arduino site: - -http://www.arduino.cc/ - -For more information about FAT file systems see: - -http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx - -For information about using SD cards as SPI devices see: - -http://www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf - -The ATmega328 datasheet: - -http://www.atmel.com/dyn/resources/prod_documents/doc8161.pdf - - - */ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ + +/** +\mainpage Arduino SdFat Library +
Copyright © 2009 by William Greiman +
+ +\section Intro Introduction +The Arduino SdFat Library is a minimal implementation of FAT16 and FAT32 +file systems on SD flash memory cards. Standard SD and high capacity +SDHC cards are supported. + +The SdFat only supports short 8.3 names. + +The main classes in SdFat are Sd2Card, SdVolume, and SdFile. + +The Sd2Card class supports access to standard SD cards and SDHC cards. Most +applications will only need to call the Sd2Card::init() member function. + +The SdVolume class supports FAT16 and FAT32 partitions. Most applications +will only need to call the SdVolume::init() member function. + +The SdFile class provides file access functions such as open(), read(), +remove(), write(), close() and sync(). This class supports access to the root +directory and subdirectories. + +A number of example are provided in the SdFat/examples folder. These were +developed to test SdFat and illustrate its use. + +SdFat was developed for high speed data recording. SdFat was used to implement +an audio record/play class, WaveRP, for the Adafruit Wave Shield. This +application uses special Sd2Card calls to write to contiguous files in raw mode. +These functions reduce write latency so that audio can be recorded with the +small amount of RAM in the Arduino. + +\section SDcard SD\SDHC Cards + +Arduinos access SD cards using the cards SPI protocol. PCs, Macs, and +most consumer devices use the 4-bit parallel SD protocol. A card that +functions well on A PC or Mac may not work well on the Arduino. + +Most cards have good SPI read performance but cards vary widely in SPI +write performance. Write performance is limited by how efficiently the +card manages internal erase/remapping operations. The Arduino cannot +optimize writes to reduce erase operations because of its limit RAM. + +SanDisk cards generally have good write performance. They seem to have +more internal RAM buffering than other cards and therefore can limit +the number of flash erase operations that the Arduino forces due to its +limited RAM. + +\section Hardware Hardware Configuration + +SdFat was developed using an + Adafruit Industries + Wave Shield. + +The hardware interface to the SD card should not use a resistor based level +shifter. SdFat sets the SPI bus frequency to 8 MHz which results in signal +rise times that are too slow for the edge detectors in many newer SD card +controllers when resistor voltage dividers are used. + +The 5 to 3.3 V level shifter for 5 V Arduinos should be IC based like the +74HC4050N based circuit shown in the file SdLevel.png. The Adafruit Wave Shield +uses a 74AHC125N. Gravitech sells SD and MicroSD Card Adapters based on the +74LCX245. + +If you are using a resistor based level shifter and are having problems try +setting the SPI bus frequency to 4 MHz. This can be done by using +card.init(SPI_HALF_SPEED) to initialize the SD card. + +\section comment Bugs and Comments + +If you wish to report bugs or have comments, send email to fat16lib@sbcglobal.net. + +\section SdFatClass SdFat Usage + +SdFat uses a slightly restricted form of short names. +Only printable ASCII characters are supported. No characters with code point +values greater than 127 are allowed. Space is not allowed even though space +was allowed in the API of early versions of DOS. + +Short names are limited to 8 characters followed by an optional period (.) +and extension of up to 3 characters. The characters may be any combination +of letters and digits. The following special characters are also allowed: + +$ % ' - _ @ ~ ` ! ( ) { } ^ # & + +Short names are always converted to upper case and their original case +value is lost. + +\note + The Arduino Print class uses character +at a time writes so it was necessary to use a \link SdFile::sync() sync() \endlink +function to control when data is written to the SD card. + +\par +An application which writes to a file using \link Print::print() print()\endlink, +\link Print::println() println() \endlink +or \link SdFile::write write() \endlink must call \link SdFile::sync() sync() \endlink +at the appropriate time to force data and directory information to be written +to the SD Card. Data and directory information are also written to the SD card +when \link SdFile::close() close() \endlink is called. + +\par +Applications must use care calling \link SdFile::sync() sync() \endlink +since 2048 bytes of I/O is required to update file and +directory information. This includes writing the current data block, reading +the block that contains the directory entry for update, writing the directory +block back and reading back the current data block. + +It is possible to open a file with two or more instances of SdFile. A file may +be corrupted if data is written to the file by more than one instance of SdFile. + +\section HowTo How to format SD Cards as FAT Volumes + +You should use a freshly formatted SD card for best performance. FAT +file systems become slower if many files have been created and deleted. +This is because the directory entry for a deleted file is marked as deleted, +but is not deleted. When a new file is created, these entries must be scanned +before creating the file, a flaw in the FAT design. Also files can become +fragmented which causes reads and writes to be slower. + +Microsoft operating systems support removable media formatted with a +Master Boot Record, MBR, or formatted as a super floppy with a FAT Boot Sector +in block zero. + +Microsoft operating systems expect MBR formatted removable media +to have only one partition. The first partition should be used. + +Microsoft operating systems do not support partitioning SD flash cards. +If you erase an SD card with a program like KillDisk, Most versions of +Windows will format the card as a super floppy. + +The best way to restore an SD card's format is to use SDFormatter +which can be downloaded from: + +http://www.sdcard.org/consumers/formatter/ + +SDFormatter aligns flash erase boundaries with file +system structures which reduces write latency and file system overhead. + +SDFormatter does not have an option for FAT type so it may format +small cards as FAT12. + +After the MBR is restored by SDFormatter you may need to reformat small +cards that have been formatted FAT12 to force the volume type to be FAT16. + +If you reformat the SD card with an OS utility, choose a cluster size that +will result in: + +4084 < CountOfClusters && CountOfClusters < 65525 + +The volume will then be FAT16. + +If you are formatting an SD card on OS X or Linux, be sure to use the first +partition. Format this partition with a cluster count in above range. + +\section References References + +Adafruit Industries: + +http://www.adafruit.com/ + +http://www.ladyada.net/make/waveshield/ + +The Arduino site: + +http://www.arduino.cc/ + +For more information about FAT file systems see: + +http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx + +For information about using SD cards as SPI devices see: + +http://www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf + +The ATmega328 datasheet: + +http://www.atmel.com/dyn/resources/prod_documents/doc8161.pdf + + + */ diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index 0a27159f4..e7e23d1db 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -1,1252 +1,1252 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#include "SdFat.h" -#include -#include -//------------------------------------------------------------------------------ -// callback function for date/time -void (*SdFile::dateTime_)(uint16_t* date, uint16_t* time) = NULL; - -#if ALLOW_DEPRECATED_FUNCTIONS -// suppress cpplint warnings with NOLINT comment -void (*SdFile::oldDateTime_)(uint16_t& date, uint16_t& time) = NULL; // NOLINT -#endif // ALLOW_DEPRECATED_FUNCTIONS -//------------------------------------------------------------------------------ -// add a cluster to a file -uint8_t SdFile::addCluster() { - if (!vol_->allocContiguous(1, &curCluster_)) return false; - - // if first cluster of file link to directory entry - if (firstCluster_ == 0) { - firstCluster_ = curCluster_; - flags_ |= F_FILE_DIR_DIRTY; - } - return true; -} -//------------------------------------------------------------------------------ -// Add a cluster to a directory file and zero the cluster. -// return with first block of cluster in the cache -uint8_t SdFile::addDirCluster(void) { - if (!addCluster()) return false; - - // zero data in cluster insure first cluster is in cache - uint32_t block = vol_->clusterStartBlock(curCluster_); - for (uint8_t i = vol_->blocksPerCluster_; i != 0; i--) { - if (!SdVolume::cacheZeroBlock(block + i - 1)) return false; - } - // Increase directory file size by cluster size - fileSize_ += 512UL << vol_->clusterSizeShift_; - return true; -} -//------------------------------------------------------------------------------ -// cache a file's directory entry -// return pointer to cached entry or null for failure -dir_t* SdFile::cacheDirEntry(uint8_t action) { - if (!SdVolume::cacheRawBlock(dirBlock_, action)) return NULL; - return SdVolume::cacheBuffer_.dir + dirIndex_; -} -//------------------------------------------------------------------------------ -/** - * Close a file and force cached data and directory information - * to be written to the storage device. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include no file is open or an I/O error. - */ -uint8_t SdFile::close(void) { - if (!sync())return false; - type_ = FAT_FILE_TYPE_CLOSED; - return true; -} -//------------------------------------------------------------------------------ -/** - * Check for contiguous file and return its raw block range. - * - * \param[out] bgnBlock the first block address for the file. - * \param[out] endBlock the last block address for the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include file is not contiguous, file has zero length - * or an I/O error occurred. - */ -uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock) { - // error if no blocks - if (firstCluster_ == 0) return false; - - for (uint32_t c = firstCluster_; ; c++) { - uint32_t next; - if (!vol_->fatGet(c, &next)) return false; - - // check for contiguous - if (next != (c + 1)) { - // error if not end of chain - if (!vol_->isEOC(next)) return false; - *bgnBlock = vol_->clusterStartBlock(firstCluster_); - *endBlock = vol_->clusterStartBlock(c) - + vol_->blocksPerCluster_ - 1; - return true; - } - } -} -//------------------------------------------------------------------------------ -/** - * Create and open a new contiguous file of a specified size. - * - * \note This function only supports short DOS 8.3 names. - * See open() for more information. - * - * \param[in] dirFile The directory where the file will be created. - * \param[in] fileName A valid DOS 8.3 file name. - * \param[in] size The desired file size. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include \a fileName contains - * an invalid DOS 8.3 file name, the FAT volume has not been initialized, - * a file is already open, the file already exists, the root - * directory is full or an I/O error. - * - */ -uint8_t SdFile::createContiguous(SdFile* dirFile, - const char* fileName, uint32_t size) { - // don't allow zero length file - if (size == 0) return false; - if (!open(dirFile, fileName, O_CREAT | O_EXCL | O_RDWR)) return false; - - // calculate number of clusters needed - uint32_t count = ((size - 1) >> (vol_->clusterSizeShift_ + 9)) + 1; - - // allocate clusters - if (!vol_->allocContiguous(count, &firstCluster_)) { - remove(); - return false; - } - fileSize_ = size; - - // insure sync() will update dir entry - flags_ |= F_FILE_DIR_DIRTY; - return sync(); -} -//------------------------------------------------------------------------------ -/** - * Return a files directory entry - * - * \param[out] dir Location for return of the files directory entry. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::dirEntry(dir_t* dir) { - // make sure fields on SD are correct - if (!sync()) return false; - - // read entry - dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_READ); - if (!p) return false; - - // copy to caller's struct - memcpy(dir, p, sizeof(dir_t)); - return true; -} -//------------------------------------------------------------------------------ -/** - * Format the name field of \a dir into the 13 byte array - * \a name in standard 8.3 short name format. - * - * \param[in] dir The directory structure containing the name. - * \param[out] name A 13 byte char array for the formatted name. - */ -void SdFile::dirName(const dir_t& dir, char* name) { - uint8_t j = 0; - for (uint8_t i = 0; i < 11; i++) { - if (dir.name[i] == ' ')continue; - if (i == 8) name[j++] = '.'; - name[j++] = dir.name[i]; - } - name[j] = 0; -} -//------------------------------------------------------------------------------ -/** List directory contents to Serial. - * - * \param[in] flags The inclusive OR of - * - * LS_DATE - %Print file modification date - * - * LS_SIZE - %Print file size. - * - * LS_R - Recursive list of subdirectories. - * - * \param[in] indent Amount of space before file name. Used for recursive - * list to indicate subdirectory level. - */ -void SdFile::ls(uint8_t flags, uint8_t indent) { - dir_t* p; - - rewind(); - while ((p = readDirCache())) { - // done if past last used entry - if (p->name[0] == DIR_NAME_FREE) break; - - // skip deleted entry and entries for . and .. - if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; - - // only list subdirectories and files - if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; - - // print any indent spaces - for (int8_t i = 0; i < indent; i++) Serial.print(' '); - - // print file name with possible blank fill - printDirName(*p, flags & (LS_DATE | LS_SIZE) ? 14 : 0); - - // print modify date/time if requested - if (flags & LS_DATE) { - printFatDate(p->lastWriteDate); - Serial.print(' '); - printFatTime(p->lastWriteTime); - } - // print size if requested - if (!DIR_IS_SUBDIR(p) && (flags & LS_SIZE)) { - Serial.print(' '); - Serial.print(p->fileSize); - } - Serial.println(); - - // list subdirectory content if requested - if ((flags & LS_R) && DIR_IS_SUBDIR(p)) { - uint16_t index = curPosition()/32 - 1; - SdFile s; - if (s.open(this, index, O_READ)) s.ls(flags, indent + 2); - seekSet(32 * (index + 1)); - } - } -} -//------------------------------------------------------------------------------ -// format directory name field from a 8.3 name string -uint8_t SdFile::make83Name(const char* str, uint8_t* name) { - uint8_t c; - uint8_t n = 7; // max index for part before dot - uint8_t i = 0; - // blank fill name and extension - while (i < 11) name[i++] = ' '; - i = 0; - while ((c = *str++) != '\0') { - if (c == '.') { - if (n == 10) return false; // only one dot allowed - n = 10; // max index for full 8.3 name - i = 8; // place for extension - } else { - // illegal FAT characters - PGM_P p = PSTR("|<>^+=?/[];,*\"\\"); - uint8_t b; - while ((b = pgm_read_byte(p++))) if (b == c) return false; - // check size and only allow ASCII printable characters - if (i > n || c < 0X21 || c > 0X7E)return false; - // only upper case allowed in 8.3 names - convert lower to upper - name[i++] = c < 'a' || c > 'z' ? c : c + ('A' - 'a'); - } - } - // must have a file name, extension is optional - return name[0] != ' '; -} -//------------------------------------------------------------------------------ -/** Make a new directory. - * - * \param[in] dir An open SdFat instance for the directory that will containing - * the new directory. - * - * \param[in] dirName A valid 8.3 DOS name for the new directory. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include this SdFile is already open, \a dir is not a - * directory, \a dirName is invalid or already exists in \a dir. - */ -uint8_t SdFile::makeDir(SdFile* dir, const char* dirName) { - dir_t d; - - // create a normal file - if (!open(dir, dirName, O_CREAT | O_EXCL | O_RDWR)) return false; - - // convert SdFile to directory - flags_ = O_READ; - type_ = FAT_FILE_TYPE_SUBDIR; - - // allocate and zero first cluster - if (!addDirCluster())return false; - - // force entry to SD - if (!sync()) return false; - - // cache entry - should already be in cache due to sync() call - dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!p) return false; - - // change directory entry attribute - p->attributes = DIR_ATT_DIRECTORY; - - // make entry for '.' - memcpy(&d, p, sizeof(d)); - for (uint8_t i = 1; i < 11; i++) d.name[i] = ' '; - d.name[0] = '.'; - - // cache block for '.' and '..' - uint32_t block = vol_->clusterStartBlock(firstCluster_); - if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) return false; - - // copy '.' to block - memcpy(&SdVolume::cacheBuffer_.dir[0], &d, sizeof(d)); - - // make entry for '..' - d.name[1] = '.'; - if (dir->isRoot()) { - d.firstClusterLow = 0; - d.firstClusterHigh = 0; - } else { - d.firstClusterLow = dir->firstCluster_ & 0XFFFF; - d.firstClusterHigh = dir->firstCluster_ >> 16; - } - // copy '..' to block - memcpy(&SdVolume::cacheBuffer_.dir[1], &d, sizeof(d)); - - // set position after '..' - curPosition_ = 2 * sizeof(d); - - // write first block - return SdVolume::cacheFlush(); -} -//------------------------------------------------------------------------------ -/** - * Open a file or directory by name. - * - * \param[in] dirFile An open SdFat instance for the directory containing the - * file to be opened. - * - * \param[in] fileName A valid 8.3 DOS name for a file to be opened. - * - * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive - * OR of flags from the following list - * - * O_READ - Open for reading. - * - * O_RDONLY - Same as O_READ. - * - * O_WRITE - Open for writing. - * - * O_WRONLY - Same as O_WRITE. - * - * O_RDWR - Open for reading and writing. - * - * O_APPEND - If set, the file offset shall be set to the end of the - * file prior to each write. - * - * O_CREAT - If the file exists, this flag has no effect except as noted - * under O_EXCL below. Otherwise, the file shall be created - * - * O_EXCL - If O_CREAT and O_EXCL are set, open() shall fail if the file exists. - * - * O_SYNC - Call sync() after each write. This flag should not be used with - * write(uint8_t), write_P(PGM_P), writeln_P(PGM_P), or the Arduino Print class. - * These functions do character at a time writes so sync() will be called - * after each byte. - * - * O_TRUNC - If the file exists and is a regular file, and the file is - * successfully opened and is not read only, its length shall be truncated to 0. - * - * \note Directory files must be opened read only. Write and truncation is - * not allowed for directory files. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include this SdFile is already open, \a difFile is not - * a directory, \a fileName is invalid, the file does not exist - * or can't be opened in the access mode specified by oflag. - */ -uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag) { - uint8_t dname[11]; - dir_t* p; - - // error if already open - if (isOpen())return false; - - if (!make83Name(fileName, dname)) return false; - vol_ = dirFile->vol_; - dirFile->rewind(); - - // bool for empty entry found - uint8_t emptyFound = false; - - // search for file - while (dirFile->curPosition_ < dirFile->fileSize_) { - uint8_t index = 0XF & (dirFile->curPosition_ >> 5); - p = dirFile->readDirCache(); - if (p == NULL) return false; - - if (p->name[0] == DIR_NAME_FREE || p->name[0] == DIR_NAME_DELETED) { - // remember first empty slot - if (!emptyFound) { - emptyFound = true; - dirIndex_ = index; - dirBlock_ = SdVolume::cacheBlockNumber_; - } - // done if no entries follow - if (p->name[0] == DIR_NAME_FREE) break; - } else if (!memcmp(dname, p->name, 11)) { - // don't open existing file if O_CREAT and O_EXCL - if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; - - // open found file - return openCachedEntry(0XF & index, oflag); - } - } - // only create file if O_CREAT and O_WRITE - if ((oflag & (O_CREAT | O_WRITE)) != (O_CREAT | O_WRITE)) return false; - - // cache found slot or add cluster if end of file - if (emptyFound) { - p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!p) return false; - } else { - if (dirFile->type_ == FAT_FILE_TYPE_ROOT16) return false; - - // add and zero cluster for dirFile - first cluster is in cache for write - if (!dirFile->addDirCluster()) return false; - - // use first entry in cluster - dirIndex_ = 0; - p = SdVolume::cacheBuffer_.dir; - } - // initialize as empty file - memset(p, 0, sizeof(dir_t)); - memcpy(p->name, dname, 11); - - // set timestamps - if (dateTime_) { - // call user function - dateTime_(&p->creationDate, &p->creationTime); - } else { - // use default date/time - p->creationDate = FAT_DEFAULT_DATE; - p->creationTime = FAT_DEFAULT_TIME; - } - p->lastAccessDate = p->creationDate; - p->lastWriteDate = p->creationDate; - p->lastWriteTime = p->creationTime; - - // force write of entry to SD - if (!SdVolume::cacheFlush()) return false; - - // open entry in cache - return openCachedEntry(dirIndex_, oflag); -} -//------------------------------------------------------------------------------ -/** - * Open a file by index. - * - * \param[in] dirFile An open SdFat instance for the directory. - * - * \param[in] index The \a index of the directory entry for the file to be - * opened. The value for \a index is (directory file position)/32. - * - * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive - * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. - * - * See open() by fileName for definition of flags and return values. - * - */ -uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag) { - // error if already open - if (isOpen())return false; - - // don't open existing file if O_CREAT and O_EXCL - user call error - if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; - - vol_ = dirFile->vol_; - - // seek to location of entry - if (!dirFile->seekSet(32 * index)) return false; - - // read entry into cache - dir_t* p = dirFile->readDirCache(); - if (p == NULL) return false; - - // error if empty slot or '.' or '..' - if (p->name[0] == DIR_NAME_FREE || - p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') { - return false; - } - // open cached entry - return openCachedEntry(index & 0XF, oflag); -} -//------------------------------------------------------------------------------ -// open a cached directory entry. Assumes vol_ is initializes -uint8_t SdFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { - // location of entry in cache - dir_t* p = SdVolume::cacheBuffer_.dir + dirIndex; - - // write or truncate is an error for a directory or read-only file - if (p->attributes & (DIR_ATT_READ_ONLY | DIR_ATT_DIRECTORY)) { - if (oflag & (O_WRITE | O_TRUNC)) return false; - } - // remember location of directory entry on SD - dirIndex_ = dirIndex; - dirBlock_ = SdVolume::cacheBlockNumber_; - - // copy first cluster number for directory fields - firstCluster_ = (uint32_t)p->firstClusterHigh << 16; - firstCluster_ |= p->firstClusterLow; - - // make sure it is a normal file or subdirectory - if (DIR_IS_FILE(p)) { - fileSize_ = p->fileSize; - type_ = FAT_FILE_TYPE_NORMAL; - } else if (DIR_IS_SUBDIR(p)) { - if (!vol_->chainSize(firstCluster_, &fileSize_)) return false; - type_ = FAT_FILE_TYPE_SUBDIR; - } else { - return false; - } - // save open flags for read/write - flags_ = oflag & (O_ACCMODE | O_SYNC | O_APPEND); - - // set to start of file - curCluster_ = 0; - curPosition_ = 0; - - // truncate file to zero length if requested - if (oflag & O_TRUNC) return truncate(0); - return true; -} -//------------------------------------------------------------------------------ -/** - * Open a volume's root directory. - * - * \param[in] vol The FAT volume containing the root directory to be opened. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the FAT volume has not been initialized - * or it a FAT12 volume. - */ -uint8_t SdFile::openRoot(SdVolume* vol) { - // error if file is already open - if (isOpen()) return false; - - if (vol->fatType() == 16) { - type_ = FAT_FILE_TYPE_ROOT16; - firstCluster_ = 0; - fileSize_ = 32 * vol->rootDirEntryCount(); - } else if (vol->fatType() == 32) { - type_ = FAT_FILE_TYPE_ROOT32; - firstCluster_ = vol->rootDirStart(); - if (!vol->chainSize(firstCluster_, &fileSize_)) return false; - } else { - // volume is not initialized or FAT12 - return false; - } - vol_ = vol; - // read only - flags_ = O_READ; - - // set to start of file - curCluster_ = 0; - curPosition_ = 0; - - // root has no directory entry - dirBlock_ = 0; - dirIndex_ = 0; - return true; -} -//------------------------------------------------------------------------------ -/** %Print the name field of a directory entry in 8.3 format to Serial. - * - * \param[in] dir The directory structure containing the name. - * \param[in] width Blank fill name if length is less than \a width. - */ -void SdFile::printDirName(const dir_t& dir, uint8_t width) { - uint8_t w = 0; - for (uint8_t i = 0; i < 11; i++) { - if (dir.name[i] == ' ')continue; - if (i == 8) { - Serial.print('.'); - w++; - } - Serial.print(dir.name[i]); - w++; - } - if (DIR_IS_SUBDIR(&dir)) { - Serial.print('/'); - w++; - } - while (w < width) { - Serial.print(' '); - w++; - } -} -//------------------------------------------------------------------------------ -/** %Print a directory date field to Serial. - * - * Format is yyyy-mm-dd. - * - * \param[in] fatDate The date field from a directory entry. - */ -void SdFile::printFatDate(uint16_t fatDate) { - Serial.print(FAT_YEAR(fatDate)); - Serial.print('-'); - printTwoDigits(FAT_MONTH(fatDate)); - Serial.print('-'); - printTwoDigits(FAT_DAY(fatDate)); -} -//------------------------------------------------------------------------------ -/** %Print a directory time field to Serial. - * - * Format is hh:mm:ss. - * - * \param[in] fatTime The time field from a directory entry. - */ -void SdFile::printFatTime(uint16_t fatTime) { - printTwoDigits(FAT_HOUR(fatTime)); - Serial.print(':'); - printTwoDigits(FAT_MINUTE(fatTime)); - Serial.print(':'); - printTwoDigits(FAT_SECOND(fatTime)); -} -//------------------------------------------------------------------------------ -/** %Print a value as two digits to Serial. - * - * \param[in] v Value to be printed, 0 <= \a v <= 99 - */ -void SdFile::printTwoDigits(uint8_t v) { - char str[3]; - str[0] = '0' + v/10; - str[1] = '0' + v % 10; - str[2] = 0; - Serial.print(str); -} -//------------------------------------------------------------------------------ -/** - * Read data from a file starting at the current position. - * - * \param[out] buf Pointer to the location that will receive the data. - * - * \param[in] nbyte Maximum number of bytes to read. - * - * \return For success read() returns the number of bytes read. - * A value less than \a nbyte, including zero, will be returned - * if end of file is reached. - * If an error occurs, read() returns -1. Possible errors include - * read() called before a file has been opened, corrupt file system - * or an I/O error occurred. - */ -int16_t SdFile::read(void* buf, uint16_t nbyte) { - uint8_t* dst = reinterpret_cast(buf); - - // error if not open or write only - if (!isOpen() || !(flags_ & O_READ)) return -1; - - // max bytes left in file - if (nbyte > (fileSize_ - curPosition_)) nbyte = fileSize_ - curPosition_; - - // amount left to read - uint16_t toRead = nbyte; - while (toRead > 0) { - uint32_t block; // raw device block number - uint16_t offset = curPosition_ & 0X1FF; // offset in block - if (type_ == FAT_FILE_TYPE_ROOT16) { - block = vol_->rootDirStart() + (curPosition_ >> 9); - } else { - uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); - if (offset == 0 && blockOfCluster == 0) { - // start of new cluster - if (curPosition_ == 0) { - // use first cluster in file - curCluster_ = firstCluster_; - } else { - // get next cluster from FAT - if (!vol_->fatGet(curCluster_, &curCluster_)) return -1; - } - } - block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; - } - uint16_t n = toRead; - - // amount to be read from current block - if (n > (512 - offset)) n = 512 - offset; - - // no buffering needed if n == 512 or user requests no buffering - if ((unbufferedRead() || n == 512) && - block != SdVolume::cacheBlockNumber_) { - if (!vol_->readData(block, offset, n, dst)) return -1; - dst += n; - } else { - // read block to cache and copy data to caller - if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_READ)) return -1; - uint8_t* src = SdVolume::cacheBuffer_.data + offset; - uint8_t* end = src + n; - while (src != end) *dst++ = *src++; - } - curPosition_ += n; - toRead -= n; - } - return nbyte; -} -//------------------------------------------------------------------------------ -/** - * Read the next directory entry from a directory file. - * - * \param[out] dir The dir_t struct that will receive the data. - * - * \return For success readDir() returns the number of bytes read. - * A value of zero will be returned if end of file is reached. - * If an error occurs, readDir() returns -1. Possible errors include - * readDir() called before a directory has been opened, this is not - * a directory file or an I/O error occurred. - */ -int8_t SdFile::readDir(dir_t* dir) { - int8_t n; - // if not a directory file or miss-positioned return an error - if (!isDir() || (0X1F & curPosition_)) return -1; - - while ((n = read(dir, sizeof(dir_t))) == sizeof(dir_t)) { - // last entry if DIR_NAME_FREE - if (dir->name[0] == DIR_NAME_FREE) break; - // skip empty entries and entry for . and .. - if (dir->name[0] == DIR_NAME_DELETED || dir->name[0] == '.') continue; - // return if normal file or subdirectory - if (DIR_IS_FILE_OR_SUBDIR(dir)) return n; - } - // error, end of file, or past last entry - return n < 0 ? -1 : 0; -} -//------------------------------------------------------------------------------ -// Read next directory entry into the cache -// Assumes file is correctly positioned -dir_t* SdFile::readDirCache(void) { - // error if not directory - if (!isDir()) return NULL; - - // index of entry in cache - uint8_t i = (curPosition_ >> 5) & 0XF; - - // use read to locate and cache block - if (read() < 0) return NULL; - - // advance to next entry - curPosition_ += 31; - - // return pointer to entry - return (SdVolume::cacheBuffer_.dir + i); -} -//------------------------------------------------------------------------------ -/** - * Remove a file. - * - * The directory entry and all data for the file are deleted. - * - * \note This function should not be used to delete the 8.3 version of a - * file that has a long name. For example if a file has the long name - * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the file read-only, is a directory, - * or an I/O error occurred. - */ -uint8_t SdFile::remove(void) { - // free any clusters - will fail if read-only or directory - if (!truncate(0)) return false; - - // cache directory entry - dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!d) return false; - - // mark entry deleted - d->name[0] = DIR_NAME_DELETED; - - // set this SdFile closed - type_ = FAT_FILE_TYPE_CLOSED; - - // write entry to SD - return SdVolume::cacheFlush(); -} -//------------------------------------------------------------------------------ -/** - * Remove a file. - * - * The directory entry and all data for the file are deleted. - * - * \param[in] dirFile The directory that contains the file. - * \param[in] fileName The name of the file to be removed. - * - * \note This function should not be used to delete the 8.3 version of a - * file that has a long name. For example if a file has the long name - * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the file is a directory, is read only, - * \a dirFile is not a directory, \a fileName is not found - * or an I/O error occurred. - */ -uint8_t SdFile::remove(SdFile* dirFile, const char* fileName) { - SdFile file; - if (!file.open(dirFile, fileName, O_WRITE)) return false; - return file.remove(); -} -//------------------------------------------------------------------------------ -/** Remove a directory file. - * - * The directory file will be removed only if it is empty and is not the - * root directory. rmDir() follows DOS and Windows and ignores the - * read-only attribute for the directory. - * - * \note This function should not be used to delete the 8.3 version of a - * directory that has a long name. For example if a directory has the - * long name "New folder" you should not delete the 8.3 name "NEWFOL~1". - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the file is not a directory, is the root - * directory, is not empty, or an I/O error occurred. - */ -uint8_t SdFile::rmDir(void) { - // must be open subdirectory - if (!isSubDir()) return false; - - rewind(); - - // make sure directory is empty - while (curPosition_ < fileSize_) { - dir_t* p = readDirCache(); - if (p == NULL) return false; - // done if past last used entry - if (p->name[0] == DIR_NAME_FREE) break; - // skip empty slot or '.' or '..' - if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; - // error not empty - if (DIR_IS_FILE_OR_SUBDIR(p)) return false; - } - // convert empty directory to normal file for remove - type_ = FAT_FILE_TYPE_NORMAL; - flags_ |= O_WRITE; - return remove(); -} -//------------------------------------------------------------------------------ -/** Recursively delete a directory and all contained files. - * - * This is like the Unix/Linux 'rm -rf *' if called with the root directory - * hence the name. - * - * Warning - This will remove all contents of the directory including - * subdirectories. The directory will then be removed if it is not root. - * The read-only attribute for files will be ignored. - * - * \note This function should not be used to delete the 8.3 version of - * a directory that has a long name. See remove() and rmDir(). - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::rmRfStar(void) { - rewind(); - while (curPosition_ < fileSize_) { - SdFile f; - - // remember position - uint16_t index = curPosition_/32; - - dir_t* p = readDirCache(); - if (!p) return false; - - // done if past last entry - if (p->name[0] == DIR_NAME_FREE) break; - - // skip empty slot or '.' or '..' - if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; - - // skip if part of long file name or volume label in root - if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; - - if (!f.open(this, index, O_READ)) return false; - if (f.isSubDir()) { - // recursively delete - if (!f.rmRfStar()) return false; - } else { - // ignore read-only - f.flags_ |= O_WRITE; - if (!f.remove()) return false; - } - // position to next entry if required - if (curPosition_ != (32*(index + 1))) { - if (!seekSet(32*(index + 1))) return false; - } - } - // don't try to delete root - if (isRoot()) return true; - return rmDir(); -} -//------------------------------------------------------------------------------ -/** - * Sets a file's position. - * - * \param[in] pos The new position in bytes from the beginning of the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::seekSet(uint32_t pos) { - // error if file not open or seek past end of file - if (!isOpen() || pos > fileSize_) return false; - - if (type_ == FAT_FILE_TYPE_ROOT16) { - curPosition_ = pos; - return true; - } - if (pos == 0) { - // set position to start of file - curCluster_ = 0; - curPosition_ = 0; - return true; - } - // calculate cluster index for cur and new position - uint32_t nCur = (curPosition_ - 1) >> (vol_->clusterSizeShift_ + 9); - uint32_t nNew = (pos - 1) >> (vol_->clusterSizeShift_ + 9); - - if (nNew < nCur || curPosition_ == 0) { - // must follow chain from first cluster - curCluster_ = firstCluster_; - } else { - // advance from curPosition - nNew -= nCur; - } - while (nNew--) { - if (!vol_->fatGet(curCluster_, &curCluster_)) return false; - } - curPosition_ = pos; - return true; -} -//------------------------------------------------------------------------------ -/** - * The sync() call causes all modified data and directory fields - * to be written to the storage device. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include a call to sync() before a file has been - * opened or an I/O error. - */ -uint8_t SdFile::sync(void) { - // only allow open files and directories - if (!isOpen()) return false; - - if (flags_ & F_FILE_DIR_DIRTY) { - dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!d) return false; - - // do not set filesize for dir files - if (!isDir()) d->fileSize = fileSize_; - - // update first cluster fields - d->firstClusterLow = firstCluster_ & 0XFFFF; - d->firstClusterHigh = firstCluster_ >> 16; - - // set modify time if user supplied a callback date/time function - if (dateTime_) { - dateTime_(&d->lastWriteDate, &d->lastWriteTime); - d->lastAccessDate = d->lastWriteDate; - } - // clear directory dirty - flags_ &= ~F_FILE_DIR_DIRTY; - } - return SdVolume::cacheFlush(); -} -//------------------------------------------------------------------------------ -/** - * Set a file's timestamps in its directory entry. - * - * \param[in] flags Values for \a flags are constructed by a bitwise-inclusive - * OR of flags from the following list - * - * T_ACCESS - Set the file's last access date. - * - * T_CREATE - Set the file's creation date and time. - * - * T_WRITE - Set the file's last write/modification date and time. - * - * \param[in] year Valid range 1980 - 2107 inclusive. - * - * \param[in] month Valid range 1 - 12 inclusive. - * - * \param[in] day Valid range 1 - 31 inclusive. - * - * \param[in] hour Valid range 0 - 23 inclusive. - * - * \param[in] minute Valid range 0 - 59 inclusive. - * - * \param[in] second Valid range 0 - 59 inclusive - * - * \note It is possible to set an invalid date since there is no check for - * the number of days in a month. - * - * \note - * Modify and access timestamps may be overwritten if a date time callback - * function has been set by dateTimeCallback(). - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::timestamp(uint8_t flags, uint16_t year, uint8_t month, - uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) { - if (!isOpen() - || year < 1980 - || year > 2107 - || month < 1 - || month > 12 - || day < 1 - || day > 31 - || hour > 23 - || minute > 59 - || second > 59) { - return false; - } - dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!d) return false; - - uint16_t dirDate = FAT_DATE(year, month, day); - uint16_t dirTime = FAT_TIME(hour, minute, second); - if (flags & T_ACCESS) { - d->lastAccessDate = dirDate; - } - if (flags & T_CREATE) { - d->creationDate = dirDate; - d->creationTime = dirTime; - // seems to be units of 1/100 second not 1/10 as Microsoft states - d->creationTimeTenths = second & 1 ? 100 : 0; - } - if (flags & T_WRITE) { - d->lastWriteDate = dirDate; - d->lastWriteTime = dirTime; - } - SdVolume::cacheSetDirty(); - return sync(); -} -//------------------------------------------------------------------------------ -/** - * Truncate a file to a specified length. The current file position - * will be maintained if it is less than or equal to \a length otherwise - * it will be set to end of file. - * - * \param[in] length The desired length for the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include file is read only, file is a directory, - * \a length is greater than the current file size or an I/O error occurs. - */ -uint8_t SdFile::truncate(uint32_t length) { -// error if not a normal file or read-only - if (!isFile() || !(flags_ & O_WRITE)) return false; - - // error if length is greater than current size - if (length > fileSize_) return false; - - // fileSize and length are zero - nothing to do - if (fileSize_ == 0) return true; - - // remember position for seek after truncation - uint32_t newPos = curPosition_ > length ? length : curPosition_; - - // position to last cluster in truncated file - if (!seekSet(length)) return false; - - if (length == 0) { - // free all clusters - if (!vol_->freeChain(firstCluster_)) return false; - firstCluster_ = 0; - } else { - uint32_t toFree; - if (!vol_->fatGet(curCluster_, &toFree)) return false; - - if (!vol_->isEOC(toFree)) { - // free extra clusters - if (!vol_->freeChain(toFree)) return false; - - // current cluster is end of chain - if (!vol_->fatPutEOC(curCluster_)) return false; - } - } - fileSize_ = length; - - // need to update directory entry - flags_ |= F_FILE_DIR_DIRTY; - - if (!sync()) return false; - - // set file to correct position - return seekSet(newPos); -} -//------------------------------------------------------------------------------ -/** - * Write data to an open file. - * - * \note Data is moved to the cache but may not be written to the - * storage device until sync() is called. - * - * \param[in] buf Pointer to the location of the data to be written. - * - * \param[in] nbyte Number of bytes to write. - * - * \return For success write() returns the number of bytes written, always - * \a nbyte. If an error occurs, write() returns -1. Possible errors - * include write() is called before a file has been opened, write is called - * for a read-only file, device is full, a corrupt file system or an I/O error. - * - */ -int16_t SdFile::write(const void* buf, uint16_t nbyte) { - // convert void* to uint8_t* - must be before goto statements - const uint8_t* src = reinterpret_cast(buf); - - // number of bytes left to write - must be before goto statements - uint16_t nToWrite = nbyte; - - // error if not a normal file or is read-only - if (!isFile() || !(flags_ & O_WRITE)) goto writeErrorReturn; - - // seek to end of file if append flag - if ((flags_ & O_APPEND) && curPosition_ != fileSize_) { - if (!seekEnd()) goto writeErrorReturn; - } - - while (nToWrite > 0) { - uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); - uint16_t blockOffset = curPosition_ & 0X1FF; - if (blockOfCluster == 0 && blockOffset == 0) { - // start of new cluster - if (curCluster_ == 0) { - if (firstCluster_ == 0) { - // allocate first cluster of file - if (!addCluster()) goto writeErrorReturn; - } else { - curCluster_ = firstCluster_; - } - } else { - uint32_t next; - if (!vol_->fatGet(curCluster_, &next)) return false; - if (vol_->isEOC(next)) { - // add cluster if at end of chain - if (!addCluster()) goto writeErrorReturn; - } else { - curCluster_ = next; - } - } - } - // max space in block - uint16_t n = 512 - blockOffset; - - // lesser of space and amount to write - if (n > nToWrite) n = nToWrite; - - // block for data write - uint32_t block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; - if (n == 512) { - // full block - don't need to use cache - // invalidate cache if block is in cache - if (SdVolume::cacheBlockNumber_ == block) { - SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; - } - if (!vol_->writeBlock(block, src)) goto writeErrorReturn; - src += 512; - } else { - if (blockOffset == 0 && curPosition_ >= fileSize_) { - // start of new block don't need to read into cache - if (!SdVolume::cacheFlush()) goto writeErrorReturn; - SdVolume::cacheBlockNumber_ = block; - SdVolume::cacheSetDirty(); - } else { - // rewrite part of block - if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) { - goto writeErrorReturn; - } - } - uint8_t* dst = SdVolume::cacheBuffer_.data + blockOffset; - uint8_t* end = dst + n; - while (dst != end) *dst++ = *src++; - } - nToWrite -= n; - curPosition_ += n; - } - if (curPosition_ > fileSize_) { - // update fileSize and insure sync will update dir entry - fileSize_ = curPosition_; - flags_ |= F_FILE_DIR_DIRTY; - } else if (dateTime_ && nbyte) { - // insure sync will update modified date and time - flags_ |= F_FILE_DIR_DIRTY; - } - - if (flags_ & O_SYNC) { - if (!sync()) goto writeErrorReturn; - } - return nbyte; - - writeErrorReturn: - // return for write error - writeError = true; - return -1; -} -//------------------------------------------------------------------------------ -/** - * Write a byte to a file. Required by the Arduino Print class. - * - * Use SdFile::writeError to check for errors. - */ -void SdFile::write(uint8_t b) { - write(&b, 1); -} -//------------------------------------------------------------------------------ -/** - * Write a string to a file. Used by the Arduino Print class. - * - * Use SdFile::writeError to check for errors. - */ -void SdFile::write(const char* str) { - write(str, strlen(str)); -} -//------------------------------------------------------------------------------ -/** - * Write a PROGMEM string to a file. - * - * Use SdFile::writeError to check for errors. - */ -void SdFile::write_P(PGM_P str) { - for (uint8_t c; (c = pgm_read_byte(str)); str++) write(c); -} -//------------------------------------------------------------------------------ -/** - * Write a PROGMEM string followed by CR/LF to a file. - * - * Use SdFile::writeError to check for errors. - */ -void SdFile::writeln_P(PGM_P str) { - write_P(str); - println(); -} +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdFat.h" +#include +#include +//------------------------------------------------------------------------------ +// callback function for date/time +void (*SdFile::dateTime_)(uint16_t* date, uint16_t* time) = NULL; + +#if ALLOW_DEPRECATED_FUNCTIONS +// suppress cpplint warnings with NOLINT comment +void (*SdFile::oldDateTime_)(uint16_t& date, uint16_t& time) = NULL; // NOLINT +#endif // ALLOW_DEPRECATED_FUNCTIONS +//------------------------------------------------------------------------------ +// add a cluster to a file +uint8_t SdFile::addCluster() { + if (!vol_->allocContiguous(1, &curCluster_)) return false; + + // if first cluster of file link to directory entry + if (firstCluster_ == 0) { + firstCluster_ = curCluster_; + flags_ |= F_FILE_DIR_DIRTY; + } + return true; +} +//------------------------------------------------------------------------------ +// Add a cluster to a directory file and zero the cluster. +// return with first block of cluster in the cache +uint8_t SdFile::addDirCluster(void) { + if (!addCluster()) return false; + + // zero data in cluster insure first cluster is in cache + uint32_t block = vol_->clusterStartBlock(curCluster_); + for (uint8_t i = vol_->blocksPerCluster_; i != 0; i--) { + if (!SdVolume::cacheZeroBlock(block + i - 1)) return false; + } + // Increase directory file size by cluster size + fileSize_ += 512UL << vol_->clusterSizeShift_; + return true; +} +//------------------------------------------------------------------------------ +// cache a file's directory entry +// return pointer to cached entry or null for failure +dir_t* SdFile::cacheDirEntry(uint8_t action) { + if (!SdVolume::cacheRawBlock(dirBlock_, action)) return NULL; + return SdVolume::cacheBuffer_.dir + dirIndex_; +} +//------------------------------------------------------------------------------ +/** + * Close a file and force cached data and directory information + * to be written to the storage device. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include no file is open or an I/O error. + */ +uint8_t SdFile::close(void) { + if (!sync())return false; + type_ = FAT_FILE_TYPE_CLOSED; + return true; +} +//------------------------------------------------------------------------------ +/** + * Check for contiguous file and return its raw block range. + * + * \param[out] bgnBlock the first block address for the file. + * \param[out] endBlock the last block address for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is not contiguous, file has zero length + * or an I/O error occurred. + */ +uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock) { + // error if no blocks + if (firstCluster_ == 0) return false; + + for (uint32_t c = firstCluster_; ; c++) { + uint32_t next; + if (!vol_->fatGet(c, &next)) return false; + + // check for contiguous + if (next != (c + 1)) { + // error if not end of chain + if (!vol_->isEOC(next)) return false; + *bgnBlock = vol_->clusterStartBlock(firstCluster_); + *endBlock = vol_->clusterStartBlock(c) + + vol_->blocksPerCluster_ - 1; + return true; + } + } +} +//------------------------------------------------------------------------------ +/** + * Create and open a new contiguous file of a specified size. + * + * \note This function only supports short DOS 8.3 names. + * See open() for more information. + * + * \param[in] dirFile The directory where the file will be created. + * \param[in] fileName A valid DOS 8.3 file name. + * \param[in] size The desired file size. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include \a fileName contains + * an invalid DOS 8.3 file name, the FAT volume has not been initialized, + * a file is already open, the file already exists, the root + * directory is full or an I/O error. + * + */ +uint8_t SdFile::createContiguous(SdFile* dirFile, + const char* fileName, uint32_t size) { + // don't allow zero length file + if (size == 0) return false; + if (!open(dirFile, fileName, O_CREAT | O_EXCL | O_RDWR)) return false; + + // calculate number of clusters needed + uint32_t count = ((size - 1) >> (vol_->clusterSizeShift_ + 9)) + 1; + + // allocate clusters + if (!vol_->allocContiguous(count, &firstCluster_)) { + remove(); + return false; + } + fileSize_ = size; + + // insure sync() will update dir entry + flags_ |= F_FILE_DIR_DIRTY; + return sync(); +} +//------------------------------------------------------------------------------ +/** + * Return a files directory entry + * + * \param[out] dir Location for return of the files directory entry. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::dirEntry(dir_t* dir) { + // make sure fields on SD are correct + if (!sync()) return false; + + // read entry + dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_READ); + if (!p) return false; + + // copy to caller's struct + memcpy(dir, p, sizeof(dir_t)); + return true; +} +//------------------------------------------------------------------------------ +/** + * Format the name field of \a dir into the 13 byte array + * \a name in standard 8.3 short name format. + * + * \param[in] dir The directory structure containing the name. + * \param[out] name A 13 byte char array for the formatted name. + */ +void SdFile::dirName(const dir_t& dir, char* name) { + uint8_t j = 0; + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) name[j++] = '.'; + name[j++] = dir.name[i]; + } + name[j] = 0; +} +//------------------------------------------------------------------------------ +/** List directory contents to Serial. + * + * \param[in] flags The inclusive OR of + * + * LS_DATE - %Print file modification date + * + * LS_SIZE - %Print file size. + * + * LS_R - Recursive list of subdirectories. + * + * \param[in] indent Amount of space before file name. Used for recursive + * list to indicate subdirectory level. + */ +void SdFile::ls(uint8_t flags, uint8_t indent) { + dir_t* p; + + rewind(); + while ((p = readDirCache())) { + // done if past last used entry + if (p->name[0] == DIR_NAME_FREE) break; + + // skip deleted entry and entries for . and .. + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + + // only list subdirectories and files + if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; + + // print any indent spaces + for (int8_t i = 0; i < indent; i++) Serial.print(' '); + + // print file name with possible blank fill + printDirName(*p, flags & (LS_DATE | LS_SIZE) ? 14 : 0); + + // print modify date/time if requested + if (flags & LS_DATE) { + printFatDate(p->lastWriteDate); + Serial.print(' '); + printFatTime(p->lastWriteTime); + } + // print size if requested + if (!DIR_IS_SUBDIR(p) && (flags & LS_SIZE)) { + Serial.print(' '); + Serial.print(p->fileSize); + } + Serial.println(); + + // list subdirectory content if requested + if ((flags & LS_R) && DIR_IS_SUBDIR(p)) { + uint16_t index = curPosition()/32 - 1; + SdFile s; + if (s.open(this, index, O_READ)) s.ls(flags, indent + 2); + seekSet(32 * (index + 1)); + } + } +} +//------------------------------------------------------------------------------ +// format directory name field from a 8.3 name string +uint8_t SdFile::make83Name(const char* str, uint8_t* name) { + uint8_t c; + uint8_t n = 7; // max index for part before dot + uint8_t i = 0; + // blank fill name and extension + while (i < 11) name[i++] = ' '; + i = 0; + while ((c = *str++) != '\0') { + if (c == '.') { + if (n == 10) return false; // only one dot allowed + n = 10; // max index for full 8.3 name + i = 8; // place for extension + } else { + // illegal FAT characters + PGM_P p = PSTR("|<>^+=?/[];,*\"\\"); + uint8_t b; + while ((b = pgm_read_byte(p++))) if (b == c) return false; + // check size and only allow ASCII printable characters + if (i > n || c < 0X21 || c > 0X7E)return false; + // only upper case allowed in 8.3 names - convert lower to upper + name[i++] = c < 'a' || c > 'z' ? c : c + ('A' - 'a'); + } + } + // must have a file name, extension is optional + return name[0] != ' '; +} +//------------------------------------------------------------------------------ +/** Make a new directory. + * + * \param[in] dir An open SdFat instance for the directory that will containing + * the new directory. + * + * \param[in] dirName A valid 8.3 DOS name for the new directory. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include this SdFile is already open, \a dir is not a + * directory, \a dirName is invalid or already exists in \a dir. + */ +uint8_t SdFile::makeDir(SdFile* dir, const char* dirName) { + dir_t d; + + // create a normal file + if (!open(dir, dirName, O_CREAT | O_EXCL | O_RDWR)) return false; + + // convert SdFile to directory + flags_ = O_READ; + type_ = FAT_FILE_TYPE_SUBDIR; + + // allocate and zero first cluster + if (!addDirCluster())return false; + + // force entry to SD + if (!sync()) return false; + + // cache entry - should already be in cache due to sync() call + dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!p) return false; + + // change directory entry attribute + p->attributes = DIR_ATT_DIRECTORY; + + // make entry for '.' + memcpy(&d, p, sizeof(d)); + for (uint8_t i = 1; i < 11; i++) d.name[i] = ' '; + d.name[0] = '.'; + + // cache block for '.' and '..' + uint32_t block = vol_->clusterStartBlock(firstCluster_); + if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) return false; + + // copy '.' to block + memcpy(&SdVolume::cacheBuffer_.dir[0], &d, sizeof(d)); + + // make entry for '..' + d.name[1] = '.'; + if (dir->isRoot()) { + d.firstClusterLow = 0; + d.firstClusterHigh = 0; + } else { + d.firstClusterLow = dir->firstCluster_ & 0XFFFF; + d.firstClusterHigh = dir->firstCluster_ >> 16; + } + // copy '..' to block + memcpy(&SdVolume::cacheBuffer_.dir[1], &d, sizeof(d)); + + // set position after '..' + curPosition_ = 2 * sizeof(d); + + // write first block + return SdVolume::cacheFlush(); +} +//------------------------------------------------------------------------------ +/** + * Open a file or directory by name. + * + * \param[in] dirFile An open SdFat instance for the directory containing the + * file to be opened. + * + * \param[in] fileName A valid 8.3 DOS name for a file to be opened. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags from the following list + * + * O_READ - Open for reading. + * + * O_RDONLY - Same as O_READ. + * + * O_WRITE - Open for writing. + * + * O_WRONLY - Same as O_WRITE. + * + * O_RDWR - Open for reading and writing. + * + * O_APPEND - If set, the file offset shall be set to the end of the + * file prior to each write. + * + * O_CREAT - If the file exists, this flag has no effect except as noted + * under O_EXCL below. Otherwise, the file shall be created + * + * O_EXCL - If O_CREAT and O_EXCL are set, open() shall fail if the file exists. + * + * O_SYNC - Call sync() after each write. This flag should not be used with + * write(uint8_t), write_P(PGM_P), writeln_P(PGM_P), or the Arduino Print class. + * These functions do character at a time writes so sync() will be called + * after each byte. + * + * O_TRUNC - If the file exists and is a regular file, and the file is + * successfully opened and is not read only, its length shall be truncated to 0. + * + * \note Directory files must be opened read only. Write and truncation is + * not allowed for directory files. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include this SdFile is already open, \a difFile is not + * a directory, \a fileName is invalid, the file does not exist + * or can't be opened in the access mode specified by oflag. + */ +uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag) { + uint8_t dname[11]; + dir_t* p; + + // error if already open + if (isOpen())return false; + + if (!make83Name(fileName, dname)) return false; + vol_ = dirFile->vol_; + dirFile->rewind(); + + // bool for empty entry found + uint8_t emptyFound = false; + + // search for file + while (dirFile->curPosition_ < dirFile->fileSize_) { + uint8_t index = 0XF & (dirFile->curPosition_ >> 5); + p = dirFile->readDirCache(); + if (p == NULL) return false; + + if (p->name[0] == DIR_NAME_FREE || p->name[0] == DIR_NAME_DELETED) { + // remember first empty slot + if (!emptyFound) { + emptyFound = true; + dirIndex_ = index; + dirBlock_ = SdVolume::cacheBlockNumber_; + } + // done if no entries follow + if (p->name[0] == DIR_NAME_FREE) break; + } else if (!memcmp(dname, p->name, 11)) { + // don't open existing file if O_CREAT and O_EXCL + if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; + + // open found file + return openCachedEntry(0XF & index, oflag); + } + } + // only create file if O_CREAT and O_WRITE + if ((oflag & (O_CREAT | O_WRITE)) != (O_CREAT | O_WRITE)) return false; + + // cache found slot or add cluster if end of file + if (emptyFound) { + p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!p) return false; + } else { + if (dirFile->type_ == FAT_FILE_TYPE_ROOT16) return false; + + // add and zero cluster for dirFile - first cluster is in cache for write + if (!dirFile->addDirCluster()) return false; + + // use first entry in cluster + dirIndex_ = 0; + p = SdVolume::cacheBuffer_.dir; + } + // initialize as empty file + memset(p, 0, sizeof(dir_t)); + memcpy(p->name, dname, 11); + + // set timestamps + if (dateTime_) { + // call user function + dateTime_(&p->creationDate, &p->creationTime); + } else { + // use default date/time + p->creationDate = FAT_DEFAULT_DATE; + p->creationTime = FAT_DEFAULT_TIME; + } + p->lastAccessDate = p->creationDate; + p->lastWriteDate = p->creationDate; + p->lastWriteTime = p->creationTime; + + // force write of entry to SD + if (!SdVolume::cacheFlush()) return false; + + // open entry in cache + return openCachedEntry(dirIndex_, oflag); +} +//------------------------------------------------------------------------------ +/** + * Open a file by index. + * + * \param[in] dirFile An open SdFat instance for the directory. + * + * \param[in] index The \a index of the directory entry for the file to be + * opened. The value for \a index is (directory file position)/32. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. + * + * See open() by fileName for definition of flags and return values. + * + */ +uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag) { + // error if already open + if (isOpen())return false; + + // don't open existing file if O_CREAT and O_EXCL - user call error + if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; + + vol_ = dirFile->vol_; + + // seek to location of entry + if (!dirFile->seekSet(32 * index)) return false; + + // read entry into cache + dir_t* p = dirFile->readDirCache(); + if (p == NULL) return false; + + // error if empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_FREE || + p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') { + return false; + } + // open cached entry + return openCachedEntry(index & 0XF, oflag); +} +//------------------------------------------------------------------------------ +// open a cached directory entry. Assumes vol_ is initializes +uint8_t SdFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { + // location of entry in cache + dir_t* p = SdVolume::cacheBuffer_.dir + dirIndex; + + // write or truncate is an error for a directory or read-only file + if (p->attributes & (DIR_ATT_READ_ONLY | DIR_ATT_DIRECTORY)) { + if (oflag & (O_WRITE | O_TRUNC)) return false; + } + // remember location of directory entry on SD + dirIndex_ = dirIndex; + dirBlock_ = SdVolume::cacheBlockNumber_; + + // copy first cluster number for directory fields + firstCluster_ = (uint32_t)p->firstClusterHigh << 16; + firstCluster_ |= p->firstClusterLow; + + // make sure it is a normal file or subdirectory + if (DIR_IS_FILE(p)) { + fileSize_ = p->fileSize; + type_ = FAT_FILE_TYPE_NORMAL; + } else if (DIR_IS_SUBDIR(p)) { + if (!vol_->chainSize(firstCluster_, &fileSize_)) return false; + type_ = FAT_FILE_TYPE_SUBDIR; + } else { + return false; + } + // save open flags for read/write + flags_ = oflag & (O_ACCMODE | O_SYNC | O_APPEND); + + // set to start of file + curCluster_ = 0; + curPosition_ = 0; + + // truncate file to zero length if requested + if (oflag & O_TRUNC) return truncate(0); + return true; +} +//------------------------------------------------------------------------------ +/** + * Open a volume's root directory. + * + * \param[in] vol The FAT volume containing the root directory to be opened. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the FAT volume has not been initialized + * or it a FAT12 volume. + */ +uint8_t SdFile::openRoot(SdVolume* vol) { + // error if file is already open + if (isOpen()) return false; + + if (vol->fatType() == 16) { + type_ = FAT_FILE_TYPE_ROOT16; + firstCluster_ = 0; + fileSize_ = 32 * vol->rootDirEntryCount(); + } else if (vol->fatType() == 32) { + type_ = FAT_FILE_TYPE_ROOT32; + firstCluster_ = vol->rootDirStart(); + if (!vol->chainSize(firstCluster_, &fileSize_)) return false; + } else { + // volume is not initialized or FAT12 + return false; + } + vol_ = vol; + // read only + flags_ = O_READ; + + // set to start of file + curCluster_ = 0; + curPosition_ = 0; + + // root has no directory entry + dirBlock_ = 0; + dirIndex_ = 0; + return true; +} +//------------------------------------------------------------------------------ +/** %Print the name field of a directory entry in 8.3 format to Serial. + * + * \param[in] dir The directory structure containing the name. + * \param[in] width Blank fill name if length is less than \a width. + */ +void SdFile::printDirName(const dir_t& dir, uint8_t width) { + uint8_t w = 0; + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) { + Serial.print('.'); + w++; + } + Serial.print(dir.name[i]); + w++; + } + if (DIR_IS_SUBDIR(&dir)) { + Serial.print('/'); + w++; + } + while (w < width) { + Serial.print(' '); + w++; + } +} +//------------------------------------------------------------------------------ +/** %Print a directory date field to Serial. + * + * Format is yyyy-mm-dd. + * + * \param[in] fatDate The date field from a directory entry. + */ +void SdFile::printFatDate(uint16_t fatDate) { + Serial.print(FAT_YEAR(fatDate)); + Serial.print('-'); + printTwoDigits(FAT_MONTH(fatDate)); + Serial.print('-'); + printTwoDigits(FAT_DAY(fatDate)); +} +//------------------------------------------------------------------------------ +/** %Print a directory time field to Serial. + * + * Format is hh:mm:ss. + * + * \param[in] fatTime The time field from a directory entry. + */ +void SdFile::printFatTime(uint16_t fatTime) { + printTwoDigits(FAT_HOUR(fatTime)); + Serial.print(':'); + printTwoDigits(FAT_MINUTE(fatTime)); + Serial.print(':'); + printTwoDigits(FAT_SECOND(fatTime)); +} +//------------------------------------------------------------------------------ +/** %Print a value as two digits to Serial. + * + * \param[in] v Value to be printed, 0 <= \a v <= 99 + */ +void SdFile::printTwoDigits(uint8_t v) { + char str[3]; + str[0] = '0' + v/10; + str[1] = '0' + v % 10; + str[2] = 0; + Serial.print(str); +} +//------------------------------------------------------------------------------ +/** + * Read data from a file starting at the current position. + * + * \param[out] buf Pointer to the location that will receive the data. + * + * \param[in] nbyte Maximum number of bytes to read. + * + * \return For success read() returns the number of bytes read. + * A value less than \a nbyte, including zero, will be returned + * if end of file is reached. + * If an error occurs, read() returns -1. Possible errors include + * read() called before a file has been opened, corrupt file system + * or an I/O error occurred. + */ +int16_t SdFile::read(void* buf, uint16_t nbyte) { + uint8_t* dst = reinterpret_cast(buf); + + // error if not open or write only + if (!isOpen() || !(flags_ & O_READ)) return -1; + + // max bytes left in file + if (nbyte > (fileSize_ - curPosition_)) nbyte = fileSize_ - curPosition_; + + // amount left to read + uint16_t toRead = nbyte; + while (toRead > 0) { + uint32_t block; // raw device block number + uint16_t offset = curPosition_ & 0X1FF; // offset in block + if (type_ == FAT_FILE_TYPE_ROOT16) { + block = vol_->rootDirStart() + (curPosition_ >> 9); + } else { + uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); + if (offset == 0 && blockOfCluster == 0) { + // start of new cluster + if (curPosition_ == 0) { + // use first cluster in file + curCluster_ = firstCluster_; + } else { + // get next cluster from FAT + if (!vol_->fatGet(curCluster_, &curCluster_)) return -1; + } + } + block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; + } + uint16_t n = toRead; + + // amount to be read from current block + if (n > (512 - offset)) n = 512 - offset; + + // no buffering needed if n == 512 or user requests no buffering + if ((unbufferedRead() || n == 512) && + block != SdVolume::cacheBlockNumber_) { + if (!vol_->readData(block, offset, n, dst)) return -1; + dst += n; + } else { + // read block to cache and copy data to caller + if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_READ)) return -1; + uint8_t* src = SdVolume::cacheBuffer_.data + offset; + uint8_t* end = src + n; + while (src != end) *dst++ = *src++; + } + curPosition_ += n; + toRead -= n; + } + return nbyte; +} +//------------------------------------------------------------------------------ +/** + * Read the next directory entry from a directory file. + * + * \param[out] dir The dir_t struct that will receive the data. + * + * \return For success readDir() returns the number of bytes read. + * A value of zero will be returned if end of file is reached. + * If an error occurs, readDir() returns -1. Possible errors include + * readDir() called before a directory has been opened, this is not + * a directory file or an I/O error occurred. + */ +int8_t SdFile::readDir(dir_t* dir) { + int8_t n; + // if not a directory file or miss-positioned return an error + if (!isDir() || (0X1F & curPosition_)) return -1; + + while ((n = read(dir, sizeof(dir_t))) == sizeof(dir_t)) { + // last entry if DIR_NAME_FREE + if (dir->name[0] == DIR_NAME_FREE) break; + // skip empty entries and entry for . and .. + if (dir->name[0] == DIR_NAME_DELETED || dir->name[0] == '.') continue; + // return if normal file or subdirectory + if (DIR_IS_FILE_OR_SUBDIR(dir)) return n; + } + // error, end of file, or past last entry + return n < 0 ? -1 : 0; +} +//------------------------------------------------------------------------------ +// Read next directory entry into the cache +// Assumes file is correctly positioned +dir_t* SdFile::readDirCache(void) { + // error if not directory + if (!isDir()) return NULL; + + // index of entry in cache + uint8_t i = (curPosition_ >> 5) & 0XF; + + // use read to locate and cache block + if (read() < 0) return NULL; + + // advance to next entry + curPosition_ += 31; + + // return pointer to entry + return (SdVolume::cacheBuffer_.dir + i); +} +//------------------------------------------------------------------------------ +/** + * Remove a file. + * + * The directory entry and all data for the file are deleted. + * + * \note This function should not be used to delete the 8.3 version of a + * file that has a long name. For example if a file has the long name + * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file read-only, is a directory, + * or an I/O error occurred. + */ +uint8_t SdFile::remove(void) { + // free any clusters - will fail if read-only or directory + if (!truncate(0)) return false; + + // cache directory entry + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + + // mark entry deleted + d->name[0] = DIR_NAME_DELETED; + + // set this SdFile closed + type_ = FAT_FILE_TYPE_CLOSED; + + // write entry to SD + return SdVolume::cacheFlush(); +} +//------------------------------------------------------------------------------ +/** + * Remove a file. + * + * The directory entry and all data for the file are deleted. + * + * \param[in] dirFile The directory that contains the file. + * \param[in] fileName The name of the file to be removed. + * + * \note This function should not be used to delete the 8.3 version of a + * file that has a long name. For example if a file has the long name + * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is a directory, is read only, + * \a dirFile is not a directory, \a fileName is not found + * or an I/O error occurred. + */ +uint8_t SdFile::remove(SdFile* dirFile, const char* fileName) { + SdFile file; + if (!file.open(dirFile, fileName, O_WRITE)) return false; + return file.remove(); +} +//------------------------------------------------------------------------------ +/** Remove a directory file. + * + * The directory file will be removed only if it is empty and is not the + * root directory. rmDir() follows DOS and Windows and ignores the + * read-only attribute for the directory. + * + * \note This function should not be used to delete the 8.3 version of a + * directory that has a long name. For example if a directory has the + * long name "New folder" you should not delete the 8.3 name "NEWFOL~1". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is not a directory, is the root + * directory, is not empty, or an I/O error occurred. + */ +uint8_t SdFile::rmDir(void) { + // must be open subdirectory + if (!isSubDir()) return false; + + rewind(); + + // make sure directory is empty + while (curPosition_ < fileSize_) { + dir_t* p = readDirCache(); + if (p == NULL) return false; + // done if past last used entry + if (p->name[0] == DIR_NAME_FREE) break; + // skip empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + // error not empty + if (DIR_IS_FILE_OR_SUBDIR(p)) return false; + } + // convert empty directory to normal file for remove + type_ = FAT_FILE_TYPE_NORMAL; + flags_ |= O_WRITE; + return remove(); +} +//------------------------------------------------------------------------------ +/** Recursively delete a directory and all contained files. + * + * This is like the Unix/Linux 'rm -rf *' if called with the root directory + * hence the name. + * + * Warning - This will remove all contents of the directory including + * subdirectories. The directory will then be removed if it is not root. + * The read-only attribute for files will be ignored. + * + * \note This function should not be used to delete the 8.3 version of + * a directory that has a long name. See remove() and rmDir(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::rmRfStar(void) { + rewind(); + while (curPosition_ < fileSize_) { + SdFile f; + + // remember position + uint16_t index = curPosition_/32; + + dir_t* p = readDirCache(); + if (!p) return false; + + // done if past last entry + if (p->name[0] == DIR_NAME_FREE) break; + + // skip empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + + // skip if part of long file name or volume label in root + if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; + + if (!f.open(this, index, O_READ)) return false; + if (f.isSubDir()) { + // recursively delete + if (!f.rmRfStar()) return false; + } else { + // ignore read-only + f.flags_ |= O_WRITE; + if (!f.remove()) return false; + } + // position to next entry if required + if (curPosition_ != (32*(index + 1))) { + if (!seekSet(32*(index + 1))) return false; + } + } + // don't try to delete root + if (isRoot()) return true; + return rmDir(); +} +//------------------------------------------------------------------------------ +/** + * Sets a file's position. + * + * \param[in] pos The new position in bytes from the beginning of the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::seekSet(uint32_t pos) { + // error if file not open or seek past end of file + if (!isOpen() || pos > fileSize_) return false; + + if (type_ == FAT_FILE_TYPE_ROOT16) { + curPosition_ = pos; + return true; + } + if (pos == 0) { + // set position to start of file + curCluster_ = 0; + curPosition_ = 0; + return true; + } + // calculate cluster index for cur and new position + uint32_t nCur = (curPosition_ - 1) >> (vol_->clusterSizeShift_ + 9); + uint32_t nNew = (pos - 1) >> (vol_->clusterSizeShift_ + 9); + + if (nNew < nCur || curPosition_ == 0) { + // must follow chain from first cluster + curCluster_ = firstCluster_; + } else { + // advance from curPosition + nNew -= nCur; + } + while (nNew--) { + if (!vol_->fatGet(curCluster_, &curCluster_)) return false; + } + curPosition_ = pos; + return true; +} +//------------------------------------------------------------------------------ +/** + * The sync() call causes all modified data and directory fields + * to be written to the storage device. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include a call to sync() before a file has been + * opened or an I/O error. + */ +uint8_t SdFile::sync(void) { + // only allow open files and directories + if (!isOpen()) return false; + + if (flags_ & F_FILE_DIR_DIRTY) { + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + + // do not set filesize for dir files + if (!isDir()) d->fileSize = fileSize_; + + // update first cluster fields + d->firstClusterLow = firstCluster_ & 0XFFFF; + d->firstClusterHigh = firstCluster_ >> 16; + + // set modify time if user supplied a callback date/time function + if (dateTime_) { + dateTime_(&d->lastWriteDate, &d->lastWriteTime); + d->lastAccessDate = d->lastWriteDate; + } + // clear directory dirty + flags_ &= ~F_FILE_DIR_DIRTY; + } + return SdVolume::cacheFlush(); +} +//------------------------------------------------------------------------------ +/** + * Set a file's timestamps in its directory entry. + * + * \param[in] flags Values for \a flags are constructed by a bitwise-inclusive + * OR of flags from the following list + * + * T_ACCESS - Set the file's last access date. + * + * T_CREATE - Set the file's creation date and time. + * + * T_WRITE - Set the file's last write/modification date and time. + * + * \param[in] year Valid range 1980 - 2107 inclusive. + * + * \param[in] month Valid range 1 - 12 inclusive. + * + * \param[in] day Valid range 1 - 31 inclusive. + * + * \param[in] hour Valid range 0 - 23 inclusive. + * + * \param[in] minute Valid range 0 - 59 inclusive. + * + * \param[in] second Valid range 0 - 59 inclusive + * + * \note It is possible to set an invalid date since there is no check for + * the number of days in a month. + * + * \note + * Modify and access timestamps may be overwritten if a date time callback + * function has been set by dateTimeCallback(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +uint8_t SdFile::timestamp(uint8_t flags, uint16_t year, uint8_t month, + uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) { + if (!isOpen() + || year < 1980 + || year > 2107 + || month < 1 + || month > 12 + || day < 1 + || day > 31 + || hour > 23 + || minute > 59 + || second > 59) { + return false; + } + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) return false; + + uint16_t dirDate = FAT_DATE(year, month, day); + uint16_t dirTime = FAT_TIME(hour, minute, second); + if (flags & T_ACCESS) { + d->lastAccessDate = dirDate; + } + if (flags & T_CREATE) { + d->creationDate = dirDate; + d->creationTime = dirTime; + // seems to be units of 1/100 second not 1/10 as Microsoft states + d->creationTimeTenths = second & 1 ? 100 : 0; + } + if (flags & T_WRITE) { + d->lastWriteDate = dirDate; + d->lastWriteTime = dirTime; + } + SdVolume::cacheSetDirty(); + return sync(); +} +//------------------------------------------------------------------------------ +/** + * Truncate a file to a specified length. The current file position + * will be maintained if it is less than or equal to \a length otherwise + * it will be set to end of file. + * + * \param[in] length The desired length for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is read only, file is a directory, + * \a length is greater than the current file size or an I/O error occurs. + */ +uint8_t SdFile::truncate(uint32_t length) { +// error if not a normal file or read-only + if (!isFile() || !(flags_ & O_WRITE)) return false; + + // error if length is greater than current size + if (length > fileSize_) return false; + + // fileSize and length are zero - nothing to do + if (fileSize_ == 0) return true; + + // remember position for seek after truncation + uint32_t newPos = curPosition_ > length ? length : curPosition_; + + // position to last cluster in truncated file + if (!seekSet(length)) return false; + + if (length == 0) { + // free all clusters + if (!vol_->freeChain(firstCluster_)) return false; + firstCluster_ = 0; + } else { + uint32_t toFree; + if (!vol_->fatGet(curCluster_, &toFree)) return false; + + if (!vol_->isEOC(toFree)) { + // free extra clusters + if (!vol_->freeChain(toFree)) return false; + + // current cluster is end of chain + if (!vol_->fatPutEOC(curCluster_)) return false; + } + } + fileSize_ = length; + + // need to update directory entry + flags_ |= F_FILE_DIR_DIRTY; + + if (!sync()) return false; + + // set file to correct position + return seekSet(newPos); +} +//------------------------------------------------------------------------------ +/** + * Write data to an open file. + * + * \note Data is moved to the cache but may not be written to the + * storage device until sync() is called. + * + * \param[in] buf Pointer to the location of the data to be written. + * + * \param[in] nbyte Number of bytes to write. + * + * \return For success write() returns the number of bytes written, always + * \a nbyte. If an error occurs, write() returns -1. Possible errors + * include write() is called before a file has been opened, write is called + * for a read-only file, device is full, a corrupt file system or an I/O error. + * + */ +int16_t SdFile::write(const void* buf, uint16_t nbyte) { + // convert void* to uint8_t* - must be before goto statements + const uint8_t* src = reinterpret_cast(buf); + + // number of bytes left to write - must be before goto statements + uint16_t nToWrite = nbyte; + + // error if not a normal file or is read-only + if (!isFile() || !(flags_ & O_WRITE)) goto writeErrorReturn; + + // seek to end of file if append flag + if ((flags_ & O_APPEND) && curPosition_ != fileSize_) { + if (!seekEnd()) goto writeErrorReturn; + } + + while (nToWrite > 0) { + uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); + uint16_t blockOffset = curPosition_ & 0X1FF; + if (blockOfCluster == 0 && blockOffset == 0) { + // start of new cluster + if (curCluster_ == 0) { + if (firstCluster_ == 0) { + // allocate first cluster of file + if (!addCluster()) goto writeErrorReturn; + } else { + curCluster_ = firstCluster_; + } + } else { + uint32_t next; + if (!vol_->fatGet(curCluster_, &next)) return false; + if (vol_->isEOC(next)) { + // add cluster if at end of chain + if (!addCluster()) goto writeErrorReturn; + } else { + curCluster_ = next; + } + } + } + // max space in block + uint16_t n = 512 - blockOffset; + + // lesser of space and amount to write + if (n > nToWrite) n = nToWrite; + + // block for data write + uint32_t block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; + if (n == 512) { + // full block - don't need to use cache + // invalidate cache if block is in cache + if (SdVolume::cacheBlockNumber_ == block) { + SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; + } + if (!vol_->writeBlock(block, src)) goto writeErrorReturn; + src += 512; + } else { + if (blockOffset == 0 && curPosition_ >= fileSize_) { + // start of new block don't need to read into cache + if (!SdVolume::cacheFlush()) goto writeErrorReturn; + SdVolume::cacheBlockNumber_ = block; + SdVolume::cacheSetDirty(); + } else { + // rewrite part of block + if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) { + goto writeErrorReturn; + } + } + uint8_t* dst = SdVolume::cacheBuffer_.data + blockOffset; + uint8_t* end = dst + n; + while (dst != end) *dst++ = *src++; + } + nToWrite -= n; + curPosition_ += n; + } + if (curPosition_ > fileSize_) { + // update fileSize and insure sync will update dir entry + fileSize_ = curPosition_; + flags_ |= F_FILE_DIR_DIRTY; + } else if (dateTime_ && nbyte) { + // insure sync will update modified date and time + flags_ |= F_FILE_DIR_DIRTY; + } + + if (flags_ & O_SYNC) { + if (!sync()) goto writeErrorReturn; + } + return nbyte; + + writeErrorReturn: + // return for write error + writeError = true; + return -1; +} +//------------------------------------------------------------------------------ +/** + * Write a byte to a file. Required by the Arduino Print class. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::write(uint8_t b) { + write(&b, 1); +} +//------------------------------------------------------------------------------ +/** + * Write a string to a file. Used by the Arduino Print class. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::write(const char* str) { + write(str, strlen(str)); +} +//------------------------------------------------------------------------------ +/** + * Write a PROGMEM string to a file. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::write_P(PGM_P str) { + for (uint8_t c; (c = pgm_read_byte(str)); str++) write(c); +} +//------------------------------------------------------------------------------ +/** + * Write a PROGMEM string followed by CR/LF to a file. + * + * Use SdFile::writeError to check for errors. + */ +void SdFile::writeln_P(PGM_P str) { + write_P(str); + println(); +} diff --git a/Marlin/SdInfo.h b/Marlin/SdInfo.h index bc4c6137f..acde74d97 100644 --- a/Marlin/SdInfo.h +++ b/Marlin/SdInfo.h @@ -1,232 +1,232 @@ -/* Arduino Sd2Card Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino Sd2Card Library - * - * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see - * . - */ -#ifndef SdInfo_h -#define SdInfo_h -#include -// Based on the document: -// -// SD Specifications -// Part 1 -// Physical Layer -// Simplified Specification -// Version 2.00 -// September 25, 2006 -// -// www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf -//------------------------------------------------------------------------------ -// SD card commands -/** GO_IDLE_STATE - init card in spi mode if CS low */ -uint8_t const CMD0 = 0X00; -/** SEND_IF_COND - verify SD Memory Card interface operating condition.*/ -uint8_t const CMD8 = 0X08; -/** SEND_CSD - read the Card Specific Data (CSD register) */ -uint8_t const CMD9 = 0X09; -/** SEND_CID - read the card identification information (CID register) */ -uint8_t const CMD10 = 0X0A; -/** SEND_STATUS - read the card status register */ -uint8_t const CMD13 = 0X0D; -/** READ_BLOCK - read a single data block from the card */ -uint8_t const CMD17 = 0X11; -/** WRITE_BLOCK - write a single data block to the card */ -uint8_t const CMD24 = 0X18; -/** WRITE_MULTIPLE_BLOCK - write blocks of data until a STOP_TRANSMISSION */ -uint8_t const CMD25 = 0X19; -/** ERASE_WR_BLK_START - sets the address of the first block to be erased */ -uint8_t const CMD32 = 0X20; -/** ERASE_WR_BLK_END - sets the address of the last block of the continuous - range to be erased*/ -uint8_t const CMD33 = 0X21; -/** ERASE - erase all previously selected blocks */ -uint8_t const CMD38 = 0X26; -/** APP_CMD - escape for application specific command */ -uint8_t const CMD55 = 0X37; -/** READ_OCR - read the OCR register of a card */ -uint8_t const CMD58 = 0X3A; -/** SET_WR_BLK_ERASE_COUNT - Set the number of write blocks to be - pre-erased before writing */ -uint8_t const ACMD23 = 0X17; -/** SD_SEND_OP_COMD - Sends host capacity support information and - activates the card's initialization process */ -uint8_t const ACMD41 = 0X29; -//------------------------------------------------------------------------------ -/** status for card in the ready state */ -uint8_t const R1_READY_STATE = 0X00; -/** status for card in the idle state */ -uint8_t const R1_IDLE_STATE = 0X01; -/** status bit for illegal command */ -uint8_t const R1_ILLEGAL_COMMAND = 0X04; -/** start data token for read or write single block*/ -uint8_t const DATA_START_BLOCK = 0XFE; -/** stop token for write multiple blocks*/ -uint8_t const STOP_TRAN_TOKEN = 0XFD; -/** start data token for write multiple blocks*/ -uint8_t const WRITE_MULTIPLE_TOKEN = 0XFC; -/** mask for data response tokens after a write block operation */ -uint8_t const DATA_RES_MASK = 0X1F; -/** write data accepted token */ -uint8_t const DATA_RES_ACCEPTED = 0X05; -//------------------------------------------------------------------------------ -typedef struct CID { - // byte 0 - uint8_t mid; // Manufacturer ID - // byte 1-2 - char oid[2]; // OEM/Application ID - // byte 3-7 - char pnm[5]; // Product name - // byte 8 - unsigned prv_m : 4; // Product revision n.m - unsigned prv_n : 4; - // byte 9-12 - uint32_t psn; // Product serial number - // byte 13 - unsigned mdt_year_high : 4; // Manufacturing date - unsigned reserved : 4; - // byte 14 - unsigned mdt_month : 4; - unsigned mdt_year_low :4; - // byte 15 - unsigned always1 : 1; - unsigned crc : 7; -}cid_t; -//------------------------------------------------------------------------------ -// CSD for version 1.00 cards -typedef struct CSDV1 { - // byte 0 - unsigned reserved1 : 6; - unsigned csd_ver : 2; - // byte 1 - uint8_t taac; - // byte 2 - uint8_t nsac; - // byte 3 - uint8_t tran_speed; - // byte 4 - uint8_t ccc_high; - // byte 5 - unsigned read_bl_len : 4; - unsigned ccc_low : 4; - // byte 6 - unsigned c_size_high : 2; - unsigned reserved2 : 2; - unsigned dsr_imp : 1; - unsigned read_blk_misalign :1; - unsigned write_blk_misalign : 1; - unsigned read_bl_partial : 1; - // byte 7 - uint8_t c_size_mid; - // byte 8 - unsigned vdd_r_curr_max : 3; - unsigned vdd_r_curr_min : 3; - unsigned c_size_low :2; - // byte 9 - unsigned c_size_mult_high : 2; - unsigned vdd_w_cur_max : 3; - unsigned vdd_w_curr_min : 3; - // byte 10 - unsigned sector_size_high : 6; - unsigned erase_blk_en : 1; - unsigned c_size_mult_low : 1; - // byte 11 - unsigned wp_grp_size : 7; - unsigned sector_size_low : 1; - // byte 12 - unsigned write_bl_len_high : 2; - unsigned r2w_factor : 3; - unsigned reserved3 : 2; - unsigned wp_grp_enable : 1; - // byte 13 - unsigned reserved4 : 5; - unsigned write_partial : 1; - unsigned write_bl_len_low : 2; - // byte 14 - unsigned reserved5: 2; - unsigned file_format : 2; - unsigned tmp_write_protect : 1; - unsigned perm_write_protect : 1; - unsigned copy : 1; - unsigned file_format_grp : 1; - // byte 15 - unsigned always1 : 1; - unsigned crc : 7; -}csd1_t; -//------------------------------------------------------------------------------ -// CSD for version 2.00 cards -typedef struct CSDV2 { - // byte 0 - unsigned reserved1 : 6; - unsigned csd_ver : 2; - // byte 1 - uint8_t taac; - // byte 2 - uint8_t nsac; - // byte 3 - uint8_t tran_speed; - // byte 4 - uint8_t ccc_high; - // byte 5 - unsigned read_bl_len : 4; - unsigned ccc_low : 4; - // byte 6 - unsigned reserved2 : 4; - unsigned dsr_imp : 1; - unsigned read_blk_misalign :1; - unsigned write_blk_misalign : 1; - unsigned read_bl_partial : 1; - // byte 7 - unsigned reserved3 : 2; - unsigned c_size_high : 6; - // byte 8 - uint8_t c_size_mid; - // byte 9 - uint8_t c_size_low; - // byte 10 - unsigned sector_size_high : 6; - unsigned erase_blk_en : 1; - unsigned reserved4 : 1; - // byte 11 - unsigned wp_grp_size : 7; - unsigned sector_size_low : 1; - // byte 12 - unsigned write_bl_len_high : 2; - unsigned r2w_factor : 3; - unsigned reserved5 : 2; - unsigned wp_grp_enable : 1; - // byte 13 - unsigned reserved6 : 5; - unsigned write_partial : 1; - unsigned write_bl_len_low : 2; - // byte 14 - unsigned reserved7: 2; - unsigned file_format : 2; - unsigned tmp_write_protect : 1; - unsigned perm_write_protect : 1; - unsigned copy : 1; - unsigned file_format_grp : 1; - // byte 15 - unsigned always1 : 1; - unsigned crc : 7; -}csd2_t; -//------------------------------------------------------------------------------ -// union of old and new style CSD register -union csd_t { - csd1_t v1; - csd2_t v2; -}; -#endif // SdInfo_h +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#ifndef SdInfo_h +#define SdInfo_h +#include +// Based on the document: +// +// SD Specifications +// Part 1 +// Physical Layer +// Simplified Specification +// Version 2.00 +// September 25, 2006 +// +// www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf +//------------------------------------------------------------------------------ +// SD card commands +/** GO_IDLE_STATE - init card in spi mode if CS low */ +uint8_t const CMD0 = 0X00; +/** SEND_IF_COND - verify SD Memory Card interface operating condition.*/ +uint8_t const CMD8 = 0X08; +/** SEND_CSD - read the Card Specific Data (CSD register) */ +uint8_t const CMD9 = 0X09; +/** SEND_CID - read the card identification information (CID register) */ +uint8_t const CMD10 = 0X0A; +/** SEND_STATUS - read the card status register */ +uint8_t const CMD13 = 0X0D; +/** READ_BLOCK - read a single data block from the card */ +uint8_t const CMD17 = 0X11; +/** WRITE_BLOCK - write a single data block to the card */ +uint8_t const CMD24 = 0X18; +/** WRITE_MULTIPLE_BLOCK - write blocks of data until a STOP_TRANSMISSION */ +uint8_t const CMD25 = 0X19; +/** ERASE_WR_BLK_START - sets the address of the first block to be erased */ +uint8_t const CMD32 = 0X20; +/** ERASE_WR_BLK_END - sets the address of the last block of the continuous + range to be erased*/ +uint8_t const CMD33 = 0X21; +/** ERASE - erase all previously selected blocks */ +uint8_t const CMD38 = 0X26; +/** APP_CMD - escape for application specific command */ +uint8_t const CMD55 = 0X37; +/** READ_OCR - read the OCR register of a card */ +uint8_t const CMD58 = 0X3A; +/** SET_WR_BLK_ERASE_COUNT - Set the number of write blocks to be + pre-erased before writing */ +uint8_t const ACMD23 = 0X17; +/** SD_SEND_OP_COMD - Sends host capacity support information and + activates the card's initialization process */ +uint8_t const ACMD41 = 0X29; +//------------------------------------------------------------------------------ +/** status for card in the ready state */ +uint8_t const R1_READY_STATE = 0X00; +/** status for card in the idle state */ +uint8_t const R1_IDLE_STATE = 0X01; +/** status bit for illegal command */ +uint8_t const R1_ILLEGAL_COMMAND = 0X04; +/** start data token for read or write single block*/ +uint8_t const DATA_START_BLOCK = 0XFE; +/** stop token for write multiple blocks*/ +uint8_t const STOP_TRAN_TOKEN = 0XFD; +/** start data token for write multiple blocks*/ +uint8_t const WRITE_MULTIPLE_TOKEN = 0XFC; +/** mask for data response tokens after a write block operation */ +uint8_t const DATA_RES_MASK = 0X1F; +/** write data accepted token */ +uint8_t const DATA_RES_ACCEPTED = 0X05; +//------------------------------------------------------------------------------ +typedef struct CID { + // byte 0 + uint8_t mid; // Manufacturer ID + // byte 1-2 + char oid[2]; // OEM/Application ID + // byte 3-7 + char pnm[5]; // Product name + // byte 8 + unsigned prv_m : 4; // Product revision n.m + unsigned prv_n : 4; + // byte 9-12 + uint32_t psn; // Product serial number + // byte 13 + unsigned mdt_year_high : 4; // Manufacturing date + unsigned reserved : 4; + // byte 14 + unsigned mdt_month : 4; + unsigned mdt_year_low :4; + // byte 15 + unsigned always1 : 1; + unsigned crc : 7; +}cid_t; +//------------------------------------------------------------------------------ +// CSD for version 1.00 cards +typedef struct CSDV1 { + // byte 0 + unsigned reserved1 : 6; + unsigned csd_ver : 2; + // byte 1 + uint8_t taac; + // byte 2 + uint8_t nsac; + // byte 3 + uint8_t tran_speed; + // byte 4 + uint8_t ccc_high; + // byte 5 + unsigned read_bl_len : 4; + unsigned ccc_low : 4; + // byte 6 + unsigned c_size_high : 2; + unsigned reserved2 : 2; + unsigned dsr_imp : 1; + unsigned read_blk_misalign :1; + unsigned write_blk_misalign : 1; + unsigned read_bl_partial : 1; + // byte 7 + uint8_t c_size_mid; + // byte 8 + unsigned vdd_r_curr_max : 3; + unsigned vdd_r_curr_min : 3; + unsigned c_size_low :2; + // byte 9 + unsigned c_size_mult_high : 2; + unsigned vdd_w_cur_max : 3; + unsigned vdd_w_curr_min : 3; + // byte 10 + unsigned sector_size_high : 6; + unsigned erase_blk_en : 1; + unsigned c_size_mult_low : 1; + // byte 11 + unsigned wp_grp_size : 7; + unsigned sector_size_low : 1; + // byte 12 + unsigned write_bl_len_high : 2; + unsigned r2w_factor : 3; + unsigned reserved3 : 2; + unsigned wp_grp_enable : 1; + // byte 13 + unsigned reserved4 : 5; + unsigned write_partial : 1; + unsigned write_bl_len_low : 2; + // byte 14 + unsigned reserved5: 2; + unsigned file_format : 2; + unsigned tmp_write_protect : 1; + unsigned perm_write_protect : 1; + unsigned copy : 1; + unsigned file_format_grp : 1; + // byte 15 + unsigned always1 : 1; + unsigned crc : 7; +}csd1_t; +//------------------------------------------------------------------------------ +// CSD for version 2.00 cards +typedef struct CSDV2 { + // byte 0 + unsigned reserved1 : 6; + unsigned csd_ver : 2; + // byte 1 + uint8_t taac; + // byte 2 + uint8_t nsac; + // byte 3 + uint8_t tran_speed; + // byte 4 + uint8_t ccc_high; + // byte 5 + unsigned read_bl_len : 4; + unsigned ccc_low : 4; + // byte 6 + unsigned reserved2 : 4; + unsigned dsr_imp : 1; + unsigned read_blk_misalign :1; + unsigned write_blk_misalign : 1; + unsigned read_bl_partial : 1; + // byte 7 + unsigned reserved3 : 2; + unsigned c_size_high : 6; + // byte 8 + uint8_t c_size_mid; + // byte 9 + uint8_t c_size_low; + // byte 10 + unsigned sector_size_high : 6; + unsigned erase_blk_en : 1; + unsigned reserved4 : 1; + // byte 11 + unsigned wp_grp_size : 7; + unsigned sector_size_low : 1; + // byte 12 + unsigned write_bl_len_high : 2; + unsigned r2w_factor : 3; + unsigned reserved5 : 2; + unsigned wp_grp_enable : 1; + // byte 13 + unsigned reserved6 : 5; + unsigned write_partial : 1; + unsigned write_bl_len_low : 2; + // byte 14 + unsigned reserved7: 2; + unsigned file_format : 2; + unsigned tmp_write_protect : 1; + unsigned perm_write_protect : 1; + unsigned copy : 1; + unsigned file_format_grp : 1; + // byte 15 + unsigned always1 : 1; + unsigned crc : 7; +}csd2_t; +//------------------------------------------------------------------------------ +// union of old and new style CSD register +union csd_t { + csd1_t v1; + csd2_t v2; +}; +#endif // SdInfo_h diff --git a/Marlin/SdVolume.cpp b/Marlin/SdVolume.cpp index 3c1e641c7..2fbb8100b 100644 --- a/Marlin/SdVolume.cpp +++ b/Marlin/SdVolume.cpp @@ -1,295 +1,295 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#include "SdFat.h" -//------------------------------------------------------------------------------ -// raw block cache -// init cacheBlockNumber_to invalid SD block number -uint32_t SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; -cache_t SdVolume::cacheBuffer_; // 512 byte cache for Sd2Card -Sd2Card* SdVolume::sdCard_; // pointer to SD card object -uint8_t SdVolume::cacheDirty_ = 0; // cacheFlush() will write block if true -uint32_t SdVolume::cacheMirrorBlock_ = 0; // mirror block for second FAT -//------------------------------------------------------------------------------ -// find a contiguous group of clusters -uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { - // start of group - uint32_t bgnCluster; - - // flag to save place to start next search - uint8_t setStart; - - // set search start cluster - if (*curCluster) { - // try to make file contiguous - bgnCluster = *curCluster + 1; - - // don't save new start location - setStart = false; - } else { - // start at likely place for free cluster - bgnCluster = allocSearchStart_; - - // save next search start if one cluster - setStart = 1 == count; - } - // end of group - uint32_t endCluster = bgnCluster; - - // last cluster of FAT - uint32_t fatEnd = clusterCount_ + 1; - - // search the FAT for free clusters - for (uint32_t n = 0;; n++, endCluster++) { - // can't find space checked all clusters - if (n >= clusterCount_) return false; - - // past end - start from beginning of FAT - if (endCluster > fatEnd) { - bgnCluster = endCluster = 2; - } - uint32_t f; - if (!fatGet(endCluster, &f)) return false; - - if (f != 0) { - // cluster in use try next cluster as bgnCluster - bgnCluster = endCluster + 1; - } else if ((endCluster - bgnCluster + 1) == count) { - // done - found space - break; - } - } - // mark end of chain - if (!fatPutEOC(endCluster)) return false; - - // link clusters - while (endCluster > bgnCluster) { - if (!fatPut(endCluster - 1, endCluster)) return false; - endCluster--; - } - if (*curCluster != 0) { - // connect chains - if (!fatPut(*curCluster, bgnCluster)) return false; - } - // return first cluster number to caller - *curCluster = bgnCluster; - - // remember possible next free cluster - if (setStart) allocSearchStart_ = bgnCluster + 1; - - return true; -} -//------------------------------------------------------------------------------ -uint8_t SdVolume::cacheFlush(void) { - if (cacheDirty_) { - if (!sdCard_->writeBlock(cacheBlockNumber_, cacheBuffer_.data)) { - return false; - } - // mirror FAT tables - if (cacheMirrorBlock_) { - if (!sdCard_->writeBlock(cacheMirrorBlock_, cacheBuffer_.data)) { - return false; - } - cacheMirrorBlock_ = 0; - } - cacheDirty_ = 0; - } - return true; -} -//------------------------------------------------------------------------------ -uint8_t SdVolume::cacheRawBlock(uint32_t blockNumber, uint8_t action) { - if (cacheBlockNumber_ != blockNumber) { - if (!cacheFlush()) return false; - if (!sdCard_->readBlock(blockNumber, cacheBuffer_.data)) return false; - cacheBlockNumber_ = blockNumber; - } - cacheDirty_ |= action; - return true; -} -//------------------------------------------------------------------------------ -// cache a zero block for blockNumber -uint8_t SdVolume::cacheZeroBlock(uint32_t blockNumber) { - if (!cacheFlush()) return false; - - // loop take less flash than memset(cacheBuffer_.data, 0, 512); - for (uint16_t i = 0; i < 512; i++) { - cacheBuffer_.data[i] = 0; - } - cacheBlockNumber_ = blockNumber; - cacheSetDirty(); - return true; -} -//------------------------------------------------------------------------------ -// return the size in bytes of a cluster chain -uint8_t SdVolume::chainSize(uint32_t cluster, uint32_t* size) const { - uint32_t s = 0; - do { - if (!fatGet(cluster, &cluster)) return false; - s += 512UL << clusterSizeShift_; - } while (!isEOC(cluster)); - *size = s; - return true; -} -//------------------------------------------------------------------------------ -// Fetch a FAT entry -uint8_t SdVolume::fatGet(uint32_t cluster, uint32_t* value) const { - if (cluster > (clusterCount_ + 1)) return false; - uint32_t lba = fatStartBlock_; - lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; - if (lba != cacheBlockNumber_) { - if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; - } - if (fatType_ == 16) { - *value = cacheBuffer_.fat16[cluster & 0XFF]; - } else { - *value = cacheBuffer_.fat32[cluster & 0X7F] & FAT32MASK; - } - return true; -} -//------------------------------------------------------------------------------ -// Store a FAT entry -uint8_t SdVolume::fatPut(uint32_t cluster, uint32_t value) { - // error if reserved cluster - if (cluster < 2) return false; - - // error if not in FAT - if (cluster > (clusterCount_ + 1)) return false; - - // calculate block address for entry - uint32_t lba = fatStartBlock_; - lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; - - if (lba != cacheBlockNumber_) { - if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; - } - // store entry - if (fatType_ == 16) { - cacheBuffer_.fat16[cluster & 0XFF] = value; - } else { - cacheBuffer_.fat32[cluster & 0X7F] = value; - } - cacheSetDirty(); - - // mirror second FAT - if (fatCount_ > 1) cacheMirrorBlock_ = lba + blocksPerFat_; - return true; -} -//------------------------------------------------------------------------------ -// free a cluster chain -uint8_t SdVolume::freeChain(uint32_t cluster) { - // clear free cluster location - allocSearchStart_ = 2; - - do { - uint32_t next; - if (!fatGet(cluster, &next)) return false; - - // free cluster - if (!fatPut(cluster, 0)) return false; - - cluster = next; - } while (!isEOC(cluster)); - - return true; -} -//------------------------------------------------------------------------------ -/** - * Initialize a FAT volume. - * - * \param[in] dev The SD card where the volume is located. - * - * \param[in] part The partition to be used. Legal values for \a part are - * 1-4 to use the corresponding partition on a device formatted with - * a MBR, Master Boot Record, or zero if the device is formatted as - * a super floppy with the FAT boot sector in block zero. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. Reasons for - * failure include not finding a valid partition, not finding a valid - * FAT file system in the specified partition or an I/O error. - */ -uint8_t SdVolume::init(Sd2Card* dev, uint8_t part) { - uint32_t volumeStartBlock = 0; - sdCard_ = dev; - // if part == 0 assume super floppy with FAT boot sector in block zero - // if part > 0 assume mbr volume with partition table - if (part) { - if (part > 4)return false; - if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; - part_t* p = &cacheBuffer_.mbr.part[part-1]; - if ((p->boot & 0X7F) !=0 || - p->totalSectors < 100 || - p->firstSector == 0) { - // not a valid partition - return false; - } - volumeStartBlock = p->firstSector; - } - if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; - bpb_t* bpb = &cacheBuffer_.fbs.bpb; - if (bpb->bytesPerSector != 512 || - bpb->fatCount == 0 || - bpb->reservedSectorCount == 0 || - bpb->sectorsPerCluster == 0) { - // not valid FAT volume - return false; - } - fatCount_ = bpb->fatCount; - blocksPerCluster_ = bpb->sectorsPerCluster; - - // determine shift that is same as multiply by blocksPerCluster_ - clusterSizeShift_ = 0; - while (blocksPerCluster_ != (1 << clusterSizeShift_)) { - // error if not power of 2 - if (clusterSizeShift_++ > 7) return false; - } - blocksPerFat_ = bpb->sectorsPerFat16 ? - bpb->sectorsPerFat16 : bpb->sectorsPerFat32; - - fatStartBlock_ = volumeStartBlock + bpb->reservedSectorCount; - - // count for FAT16 zero for FAT32 - rootDirEntryCount_ = bpb->rootDirEntryCount; - - // directory start for FAT16 dataStart for FAT32 - rootDirStart_ = fatStartBlock_ + bpb->fatCount * blocksPerFat_; - - // data start for FAT16 and FAT32 - dataStartBlock_ = rootDirStart_ + ((32 * bpb->rootDirEntryCount + 511)/512); - - // total blocks for FAT16 or FAT32 - uint32_t totalBlocks = bpb->totalSectors16 ? - bpb->totalSectors16 : bpb->totalSectors32; - // total data blocks - clusterCount_ = totalBlocks - (dataStartBlock_ - volumeStartBlock); - - // divide by cluster size to get cluster count - clusterCount_ >>= clusterSizeShift_; - - // FAT type is determined by cluster count - if (clusterCount_ < 4085) { - fatType_ = 12; - } else if (clusterCount_ < 65525) { - fatType_ = 16; - } else { - rootDirStart_ = bpb->fat32RootCluster; - fatType_ = 32; - } - return true; -} +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdFat.h" +//------------------------------------------------------------------------------ +// raw block cache +// init cacheBlockNumber_to invalid SD block number +uint32_t SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; +cache_t SdVolume::cacheBuffer_; // 512 byte cache for Sd2Card +Sd2Card* SdVolume::sdCard_; // pointer to SD card object +uint8_t SdVolume::cacheDirty_ = 0; // cacheFlush() will write block if true +uint32_t SdVolume::cacheMirrorBlock_ = 0; // mirror block for second FAT +//------------------------------------------------------------------------------ +// find a contiguous group of clusters +uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { + // start of group + uint32_t bgnCluster; + + // flag to save place to start next search + uint8_t setStart; + + // set search start cluster + if (*curCluster) { + // try to make file contiguous + bgnCluster = *curCluster + 1; + + // don't save new start location + setStart = false; + } else { + // start at likely place for free cluster + bgnCluster = allocSearchStart_; + + // save next search start if one cluster + setStart = 1 == count; + } + // end of group + uint32_t endCluster = bgnCluster; + + // last cluster of FAT + uint32_t fatEnd = clusterCount_ + 1; + + // search the FAT for free clusters + for (uint32_t n = 0;; n++, endCluster++) { + // can't find space checked all clusters + if (n >= clusterCount_) return false; + + // past end - start from beginning of FAT + if (endCluster > fatEnd) { + bgnCluster = endCluster = 2; + } + uint32_t f; + if (!fatGet(endCluster, &f)) return false; + + if (f != 0) { + // cluster in use try next cluster as bgnCluster + bgnCluster = endCluster + 1; + } else if ((endCluster - bgnCluster + 1) == count) { + // done - found space + break; + } + } + // mark end of chain + if (!fatPutEOC(endCluster)) return false; + + // link clusters + while (endCluster > bgnCluster) { + if (!fatPut(endCluster - 1, endCluster)) return false; + endCluster--; + } + if (*curCluster != 0) { + // connect chains + if (!fatPut(*curCluster, bgnCluster)) return false; + } + // return first cluster number to caller + *curCluster = bgnCluster; + + // remember possible next free cluster + if (setStart) allocSearchStart_ = bgnCluster + 1; + + return true; +} +//------------------------------------------------------------------------------ +uint8_t SdVolume::cacheFlush(void) { + if (cacheDirty_) { + if (!sdCard_->writeBlock(cacheBlockNumber_, cacheBuffer_.data)) { + return false; + } + // mirror FAT tables + if (cacheMirrorBlock_) { + if (!sdCard_->writeBlock(cacheMirrorBlock_, cacheBuffer_.data)) { + return false; + } + cacheMirrorBlock_ = 0; + } + cacheDirty_ = 0; + } + return true; +} +//------------------------------------------------------------------------------ +uint8_t SdVolume::cacheRawBlock(uint32_t blockNumber, uint8_t action) { + if (cacheBlockNumber_ != blockNumber) { + if (!cacheFlush()) return false; + if (!sdCard_->readBlock(blockNumber, cacheBuffer_.data)) return false; + cacheBlockNumber_ = blockNumber; + } + cacheDirty_ |= action; + return true; +} +//------------------------------------------------------------------------------ +// cache a zero block for blockNumber +uint8_t SdVolume::cacheZeroBlock(uint32_t blockNumber) { + if (!cacheFlush()) return false; + + // loop take less flash than memset(cacheBuffer_.data, 0, 512); + for (uint16_t i = 0; i < 512; i++) { + cacheBuffer_.data[i] = 0; + } + cacheBlockNumber_ = blockNumber; + cacheSetDirty(); + return true; +} +//------------------------------------------------------------------------------ +// return the size in bytes of a cluster chain +uint8_t SdVolume::chainSize(uint32_t cluster, uint32_t* size) const { + uint32_t s = 0; + do { + if (!fatGet(cluster, &cluster)) return false; + s += 512UL << clusterSizeShift_; + } while (!isEOC(cluster)); + *size = s; + return true; +} +//------------------------------------------------------------------------------ +// Fetch a FAT entry +uint8_t SdVolume::fatGet(uint32_t cluster, uint32_t* value) const { + if (cluster > (clusterCount_ + 1)) return false; + uint32_t lba = fatStartBlock_; + lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; + if (lba != cacheBlockNumber_) { + if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; + } + if (fatType_ == 16) { + *value = cacheBuffer_.fat16[cluster & 0XFF]; + } else { + *value = cacheBuffer_.fat32[cluster & 0X7F] & FAT32MASK; + } + return true; +} +//------------------------------------------------------------------------------ +// Store a FAT entry +uint8_t SdVolume::fatPut(uint32_t cluster, uint32_t value) { + // error if reserved cluster + if (cluster < 2) return false; + + // error if not in FAT + if (cluster > (clusterCount_ + 1)) return false; + + // calculate block address for entry + uint32_t lba = fatStartBlock_; + lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; + + if (lba != cacheBlockNumber_) { + if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; + } + // store entry + if (fatType_ == 16) { + cacheBuffer_.fat16[cluster & 0XFF] = value; + } else { + cacheBuffer_.fat32[cluster & 0X7F] = value; + } + cacheSetDirty(); + + // mirror second FAT + if (fatCount_ > 1) cacheMirrorBlock_ = lba + blocksPerFat_; + return true; +} +//------------------------------------------------------------------------------ +// free a cluster chain +uint8_t SdVolume::freeChain(uint32_t cluster) { + // clear free cluster location + allocSearchStart_ = 2; + + do { + uint32_t next; + if (!fatGet(cluster, &next)) return false; + + // free cluster + if (!fatPut(cluster, 0)) return false; + + cluster = next; + } while (!isEOC(cluster)); + + return true; +} +//------------------------------------------------------------------------------ +/** + * Initialize a FAT volume. + * + * \param[in] dev The SD card where the volume is located. + * + * \param[in] part The partition to be used. Legal values for \a part are + * 1-4 to use the corresponding partition on a device formatted with + * a MBR, Master Boot Record, or zero if the device is formatted as + * a super floppy with the FAT boot sector in block zero. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. Reasons for + * failure include not finding a valid partition, not finding a valid + * FAT file system in the specified partition or an I/O error. + */ +uint8_t SdVolume::init(Sd2Card* dev, uint8_t part) { + uint32_t volumeStartBlock = 0; + sdCard_ = dev; + // if part == 0 assume super floppy with FAT boot sector in block zero + // if part > 0 assume mbr volume with partition table + if (part) { + if (part > 4)return false; + if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; + part_t* p = &cacheBuffer_.mbr.part[part-1]; + if ((p->boot & 0X7F) !=0 || + p->totalSectors < 100 || + p->firstSector == 0) { + // not a valid partition + return false; + } + volumeStartBlock = p->firstSector; + } + if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; + bpb_t* bpb = &cacheBuffer_.fbs.bpb; + if (bpb->bytesPerSector != 512 || + bpb->fatCount == 0 || + bpb->reservedSectorCount == 0 || + bpb->sectorsPerCluster == 0) { + // not valid FAT volume + return false; + } + fatCount_ = bpb->fatCount; + blocksPerCluster_ = bpb->sectorsPerCluster; + + // determine shift that is same as multiply by blocksPerCluster_ + clusterSizeShift_ = 0; + while (blocksPerCluster_ != (1 << clusterSizeShift_)) { + // error if not power of 2 + if (clusterSizeShift_++ > 7) return false; + } + blocksPerFat_ = bpb->sectorsPerFat16 ? + bpb->sectorsPerFat16 : bpb->sectorsPerFat32; + + fatStartBlock_ = volumeStartBlock + bpb->reservedSectorCount; + + // count for FAT16 zero for FAT32 + rootDirEntryCount_ = bpb->rootDirEntryCount; + + // directory start for FAT16 dataStart for FAT32 + rootDirStart_ = fatStartBlock_ + bpb->fatCount * blocksPerFat_; + + // data start for FAT16 and FAT32 + dataStartBlock_ = rootDirStart_ + ((32 * bpb->rootDirEntryCount + 511)/512); + + // total blocks for FAT16 or FAT32 + uint32_t totalBlocks = bpb->totalSectors16 ? + bpb->totalSectors16 : bpb->totalSectors32; + // total data blocks + clusterCount_ = totalBlocks - (dataStartBlock_ - volumeStartBlock); + + // divide by cluster size to get cluster count + clusterCount_ >>= clusterSizeShift_; + + // FAT type is determined by cluster count + if (clusterCount_ < 4085) { + fatType_ = 12; + } else if (clusterCount_ < 65525) { + fatType_ = 16; + } else { + rootDirStart_ = bpb->fat32RootCluster; + fatType_ = 32; + } + return true; +} diff --git a/Marlin/fastio.h b/Marlin/fastio.h index 2d1396252..7fd42a6c8 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -1,2559 +1,2559 @@ -/* - This code contibuted by Triffid_Hunter and modified by Kliment - why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html -*/ - -#ifndef _ARDUINO_H -#define _ARDUINO_H - -#include - -/* - utility functions -*/ - -#ifndef MASK -/// MASKING- returns \f$2^PIN\f$ - #define MASK(PIN) (1 << PIN) -#endif - -/* - magic I/O routines - - now you can simply SET_OUTPUT(STEP); WRITE(STEP, 1); WRITE(STEP, 0); -*/ - -/// Read a pin -#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) -/// write to a pin -#define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) -//#define _WRITE(IO, v) do { #if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_START; if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); };#if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_END; } while (0) -/// toggle a pin -#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) - -/// set pin as input -#define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) -/// set pin as output -#define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= MASK(DIO ## IO ## _PIN); } while (0) - -/// check if pin is an input -#define _GET_INPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) == 0) -/// check if pin is an output -#define _GET_OUTPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) != 0) - -// why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html - -/// Read a pin wrapper -#define READ(IO) _READ(IO) -/// Write to a pin wrapper -#define WRITE(IO, v) _WRITE(IO, v) -/// toggle a pin wrapper -#define TOGGLE(IO) _TOGGLE(IO) - -/// set pin as input wrapper -#define SET_INPUT(IO) _SET_INPUT(IO) -/// set pin as output wrapper -#define SET_OUTPUT(IO) _SET_OUTPUT(IO) - -/// check if pin is an input wrapper -#define GET_INPUT(IO) _GET_INPUT(IO) -/// check if pin is an output wrapper -#define GET_OUTPUT(IO) _GET_OUTPUT(IO) - -/* - ports and functions - - added as necessary or if I feel like it- not a comprehensive list! -*/ - -#if defined (__AVR_ATmega168__) || defined (__AVR_ATmega328__) || defined (__AVR_ATmega328P__) -// UART -#define RXD DIO0 -#define TXD DIO1 - -// SPI -#define SCK DIO13 -#define MISO DIO12 -#define MOSI DIO11 -#define SS DIO10 - -// TWI (I2C) -#define SCL AIO5 -#define SDA AIO4 - -// timers and PWM -#define OC0A DIO6 -#define OC0B DIO5 -#define OC1A DIO9 -#define OC1B DIO10 -#define OC2A DIO11 -#define OC2B DIO3 - -#define DEBUG_LED AIO5 - -/* -pins -*/ - -#define DIO0_PIN PIND0 -#define DIO0_RPORT PIND -#define DIO0_WPORT PORTD -#define DIO0_DDR DDRD -#define DIO0_PWM NULL - -#define DIO1_PIN PIND1 -#define DIO1_RPORT PIND -#define DIO1_WPORT PORTD -#define DIO1_DDR DDRD -#define DIO1_PWM NULL - -#define DIO2_PIN PIND2 -#define DIO2_RPORT PIND -#define DIO2_WPORT PORTD -#define DIO2_DDR DDRD -#define DIO2_PWM NULL - -#define DIO3_PIN PIND3 -#define DIO3_RPORT PIND -#define DIO3_WPORT PORTD -#define DIO3_DDR DDRD -#define DIO3_PWM &OCR2B - -#define DIO4_PIN PIND4 -#define DIO4_RPORT PIND -#define DIO4_WPORT PORTD -#define DIO4_DDR DDRD -#define DIO4_PWM NULL - -#define DIO5_PIN PIND5 -#define DIO5_RPORT PIND -#define DIO5_WPORT PORTD -#define DIO5_DDR DDRD -#define DIO5_PWM &OCR0B - -#define DIO6_PIN PIND6 -#define DIO6_RPORT PIND -#define DIO6_WPORT PORTD -#define DIO6_DDR DDRD -#define DIO6_PWM &OCR0A - -#define DIO7_PIN PIND7 -#define DIO7_RPORT PIND -#define DIO7_WPORT PORTD -#define DIO7_DDR DDRD -#define DIO7_PWM NULL - -#define DIO8_PIN PINB0 -#define DIO8_RPORT PINB -#define DIO8_WPORT PORTB -#define DIO8_DDR DDRB -#define DIO8_PWM NULL - -#define DIO9_PIN PINB1 -#define DIO9_RPORT PINB -#define DIO9_WPORT PORTB -#define DIO9_DDR DDRB -#define DIO9_PWM NULL - -#define DIO10_PIN PINB2 -#define DIO10_RPORT PINB -#define DIO10_WPORT PORTB -#define DIO10_DDR DDRB -#define DIO10_PWM NULL - -#define DIO11_PIN PINB3 -#define DIO11_RPORT PINB -#define DIO11_WPORT PORTB -#define DIO11_DDR DDRB -#define DIO11_PWM &OCR2A - -#define DIO12_PIN PINB4 -#define DIO12_RPORT PINB -#define DIO12_WPORT PORTB -#define DIO12_DDR DDRB -#define DIO12_PWM NULL - -#define DIO13_PIN PINB5 -#define DIO13_RPORT PINB -#define DIO13_WPORT PORTB -#define DIO13_DDR DDRB -#define DIO13_PWM NULL - - -#define DIO14_PIN PINC0 -#define DIO14_RPORT PINC -#define DIO14_WPORT PORTC -#define DIO14_DDR DDRC -#define DIO14_PWM NULL - -#define DIO15_PIN PINC1 -#define DIO15_RPORT PINC -#define DIO15_WPORT PORTC -#define DIO15_DDR DDRC -#define DIO15_PWM NULL - -#define DIO16_PIN PINC2 -#define DIO16_RPORT PINC -#define DIO16_WPORT PORTC -#define DIO16_DDR DDRC -#define DIO16_PWM NULL - -#define DIO17_PIN PINC3 -#define DIO17_RPORT PINC -#define DIO17_WPORT PORTC -#define DIO17_DDR DDRC -#define DIO17_PWM NULL - -#define DIO18_PIN PINC4 -#define DIO18_RPORT PINC -#define DIO18_WPORT PORTC -#define DIO18_DDR DDRC -#define DIO18_PWM NULL - -#define DIO19_PIN PINC5 -#define DIO19_RPORT PINC -#define DIO19_WPORT PORTC -#define DIO19_DDR DDRC -#define DIO19_PWM NULL - -#define DIO20_PIN PINC6 -#define DIO20_RPORT PINC -#define DIO20_WPORT PORTC -#define DIO20_DDR DDRC -#define DIO20_PWM NULL - -#define DIO21_PIN PINC7 -#define DIO21_RPORT PINC -#define DIO21_WPORT PORTC -#define DIO21_DDR DDRC -#define DIO21_PWM NULL - - - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_DDR DDRB -#define PB0_PWM NULL - -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_DDR DDRB -#define PB1_PWM NULL - -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_DDR DDRB -#define PB2_PWM NULL - -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_DDR DDRB -#define PB3_PWM &OCR2A - -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_DDR DDRB -#define PB4_PWM NULL - -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_DDR DDRB -#define PB5_PWM NULL - -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_DDR DDRB -#define PB6_PWM NULL - -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_DDR DDRB -#define PB7_PWM NULL - - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_DDR DDRC -#define PC0_PWM NULL - -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_DDR DDRC -#define PC1_PWM NULL - -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_DDR DDRC -#define PC2_PWM NULL - -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_DDR DDRC -#define PC3_PWM NULL - -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_DDR DDRC -#define PC4_PWM NULL - -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_DDR DDRC -#define PC5_PWM NULL - -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_DDR DDRC -#define PC6_PWM NULL - -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_DDR DDRC -#define PC7_PWM NULL - - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_DDR DDRD -#define PD0_PWM NULL - -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_DDR DDRD -#define PD1_PWM NULL - -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_DDR DDRD -#define PD2_PWM NULL - -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_DDR DDRD -#define PD3_PWM &OCR2B - -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_DDR DDRD -#define PD4_PWM NULL - -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_DDR DDRD -#define PD5_PWM &OCR0B - -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_DDR DDRD -#define PD6_PWM &OCR0A - -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_DDR DDRD -#define PD7_PWM NULL -#endif /* _AVR_ATmega{168,328,328P}__ */ - -#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) -// UART -#define RXD DIO8 -#define TXD DIO9 -#define RXD0 DIO8 -#define TXD0 DIO9 - -#define RXD1 DIO10 -#define TXD1 DIO11 - -// SPI -#define SCK DIO7 -#define MISO DIO6 -#define MOSI DIO5 -#define SS DIO4 - -// TWI (I2C) -#define SCL DIO16 -#define SDA DIO17 - -// timers and PWM -#define OC0A DIO3 -#define OC0B DIO4 -#define OC1A DIO13 -#define OC1B DIO12 -#define OC2A DIO15 -#define OC2B DIO14 - -#define DEBUG_LED DIO0 -/* -pins -*/ - -#define DIO0_PIN PINB0 -#define DIO0_RPORT PINB -#define DIO0_WPORT PORTB -#define DIO0_DDR DDRB -#define DIO0_PWM NULL - -#define DIO1_PIN PINB1 -#define DIO1_RPORT PINB -#define DIO1_WPORT PORTB -#define DIO1_DDR DDRB -#define DIO1_PWM NULL - -#define DIO2_PIN PINB2 -#define DIO2_RPORT PINB -#define DIO2_WPORT PORTB -#define DIO2_DDR DDRB -#define DIO2_PWM NULL - -#define DIO3_PIN PINB3 -#define DIO3_RPORT PINB -#define DIO3_WPORT PORTB -#define DIO3_DDR DDRB -#define DIO3_PWM &OCR0A - -#define DIO4_PIN PINB4 -#define DIO4_RPORT PINB -#define DIO4_WPORT PORTB -#define DIO4_DDR DDRB -#define DIO4_PWM &OCR0B - -#define DIO5_PIN PINB5 -#define DIO5_RPORT PINB -#define DIO5_WPORT PORTB -#define DIO5_DDR DDRB -#define DIO5_PWM NULL - -#define DIO6_PIN PINB6 -#define DIO6_RPORT PINB -#define DIO6_WPORT PORTB -#define DIO6_DDR DDRB -#define DIO6_PWM NULL - -#define DIO7_PIN PINB7 -#define DIO7_RPORT PINB -#define DIO7_WPORT PORTB -#define DIO7_DDR DDRB -#define DIO7_PWM NULL - -#define DIO8_PIN PIND0 -#define DIO8_RPORT PIND -#define DIO8_WPORT PORTD -#define DIO8_DDR DDRD -#define DIO8_PWM NULL - -#define DIO9_PIN PIND1 -#define DIO9_RPORT PIND -#define DIO9_WPORT PORTD -#define DIO9_DDR DDRD -#define DIO9_PWM NULL - -#define DIO10_PIN PIND2 -#define DIO10_RPORT PIND -#define DIO10_WPORT PORTD -#define DIO10_DDR DDRD -#define DIO10_PWM NULL - -#define DIO11_PIN PIND3 -#define DIO11_RPORT PIND -#define DIO11_WPORT PORTD -#define DIO11_DDR DDRD -#define DIO11_PWM NULL - -#define DIO12_PIN PIND4 -#define DIO12_RPORT PIND -#define DIO12_WPORT PORTD -#define DIO12_DDR DDRD -#define DIO12_PWM NULL - -#define DIO13_PIN PIND5 -#define DIO13_RPORT PIND -#define DIO13_WPORT PORTD -#define DIO13_DDR DDRD -#define DIO13_PWM NULL - -#define DIO14_PIN PIND6 -#define DIO14_RPORT PIND -#define DIO14_WPORT PORTD -#define DIO14_DDR DDRD -#define DIO14_PWM &OCR2B - -#define DIO15_PIN PIND7 -#define DIO15_RPORT PIND -#define DIO15_WPORT PORTD -#define DIO15_DDR DDRD -#define DIO15_PWM &OCR2A - -#define DIO16_PIN PINC0 -#define DIO16_RPORT PINC -#define DIO16_WPORT PORTC -#define DIO16_DDR DDRC -#define DIO16_PWM NULL - -#define DIO17_PIN PINC1 -#define DIO17_RPORT PINC -#define DIO17_WPORT PORTC -#define DIO17_DDR DDRC -#define DIO17_PWM NULL - -#define DIO18_PIN PINC2 -#define DIO18_RPORT PINC -#define DIO18_WPORT PORTC -#define DIO18_DDR DDRC -#define DIO18_PWM NULL - -#define DIO19_PIN PINC3 -#define DIO19_RPORT PINC -#define DIO19_WPORT PORTC -#define DIO19_DDR DDRC -#define DIO19_PWM NULL - -#define DIO20_PIN PINC4 -#define DIO20_RPORT PINC -#define DIO20_WPORT PORTC -#define DIO20_DDR DDRC -#define DIO20_PWM NULL - -#define DIO21_PIN PINC5 -#define DIO21_RPORT PINC -#define DIO21_WPORT PORTC -#define DIO21_DDR DDRC -#define DIO21_PWM NULL - -#define DIO22_PIN PINC6 -#define DIO22_RPORT PINC -#define DIO22_WPORT PORTC -#define DIO22_DDR DDRC -#define DIO22_PWM NULL - -#define DIO23_PIN PINC7 -#define DIO23_RPORT PINC -#define DIO23_WPORT PORTC -#define DIO23_DDR DDRC -#define DIO23_PWM NULL - -#define DIO24_PIN PINA7 -#define DIO24_RPORT PINA -#define DIO24_WPORT PORTA -#define DIO24_DDR DDRA -#define DIO24_PWM NULL - -#define DIO25_PIN PINA6 -#define DIO25_RPORT PINA -#define DIO25_WPORT PORTA -#define DIO25_DDR DDRA -#define DIO25_PWM NULL - -#define DIO26_PIN PINA5 -#define DIO26_RPORT PINA -#define DIO26_WPORT PORTA -#define DIO26_DDR DDRA -#define DIO26_PWM NULL - -#define DIO27_PIN PINA4 -#define DIO27_RPORT PINA -#define DIO27_WPORT PORTA -#define DIO27_DDR DDRA -#define DIO27_PWM NULL - -#define DIO28_PIN PINA3 -#define DIO28_RPORT PINA -#define DIO28_WPORT PORTA -#define DIO28_DDR DDRA -#define DIO28_PWM NULL - -#define DIO29_PIN PINA2 -#define DIO29_RPORT PINA -#define DIO29_WPORT PORTA -#define DIO29_DDR DDRA -#define DIO29_PWM NULL - -#define DIO30_PIN PINA1 -#define DIO30_RPORT PINA -#define DIO30_WPORT PORTA -#define DIO30_DDR DDRA -#define DIO30_PWM NULL - -#define DIO31_PIN PINA0 -#define DIO31_RPORT PINA -#define DIO31_WPORT PORTA -#define DIO31_DDR DDRA -#define DIO31_PWM NULL - -#define AIO0_PIN PINA0 -#define AIO0_RPORT PINA -#define AIO0_WPORT PORTA -#define AIO0_DDR DDRA -#define AIO0_PWM NULL - -#define AIO1_PIN PINA1 -#define AIO1_RPORT PINA -#define AIO1_WPORT PORTA -#define AIO1_DDR DDRA -#define AIO1_PWM NULL - -#define AIO2_PIN PINA2 -#define AIO2_RPORT PINA -#define AIO2_WPORT PORTA -#define AIO2_DDR DDRA -#define AIO2_PWM NULL - -#define AIO3_PIN PINA3 -#define AIO3_RPORT PINA -#define AIO3_WPORT PORTA -#define AIO3_DDR DDRA -#define AIO3_PWM NULL - -#define AIO4_PIN PINA4 -#define AIO4_RPORT PINA -#define AIO4_WPORT PORTA -#define AIO4_DDR DDRA -#define AIO4_PWM NULL - -#define AIO5_PIN PINA5 -#define AIO5_RPORT PINA -#define AIO5_WPORT PORTA -#define AIO5_DDR DDRA -#define AIO5_PWM NULL - -#define AIO6_PIN PINA6 -#define AIO6_RPORT PINA -#define AIO6_WPORT PORTA -#define AIO6_DDR DDRA -#define AIO6_PWM NULL - -#define AIO7_PIN PINA7 -#define AIO7_RPORT PINA -#define AIO7_WPORT PORTA -#define AIO7_DDR DDRA -#define AIO7_PWM NULL - - - -#undef PA0 -#define PA0_PIN PINA0 -#define PA0_RPORT PINA -#define PA0_WPORT PORTA -#define PA0_DDR DDRA -#define PA0_PWM NULL - -#undef PA1 -#define PA1_PIN PINA1 -#define PA1_RPORT PINA -#define PA1_WPORT PORTA -#define PA1_DDR DDRA -#define PA1_PWM NULL - -#undef PA2 -#define PA2_PIN PINA2 -#define PA2_RPORT PINA -#define PA2_WPORT PORTA -#define PA2_DDR DDRA -#define PA2_PWM NULL - -#undef PA3 -#define PA3_PIN PINA3 -#define PA3_RPORT PINA -#define PA3_WPORT PORTA -#define PA3_DDR DDRA -#define PA3_PWM NULL - -#undef PA4 -#define PA4_PIN PINA4 -#define PA4_RPORT PINA -#define PA4_WPORT PORTA -#define PA4_DDR DDRA -#define PA4_PWM NULL - -#undef PA5 -#define PA5_PIN PINA5 -#define PA5_RPORT PINA -#define PA5_WPORT PORTA -#define PA5_DDR DDRA -#define PA5_PWM NULL - -#undef PA6 -#define PA6_PIN PINA6 -#define PA6_RPORT PINA -#define PA6_WPORT PORTA -#define PA6_DDR DDRA -#define PA6_PWM NULL - -#undef PA7 -#define PA7_PIN PINA7 -#define PA7_RPORT PINA -#define PA7_WPORT PORTA -#define PA7_DDR DDRA -#define PA7_PWM NULL - - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_DDR DDRB -#define PB0_PWM NULL - -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_DDR DDRB -#define PB1_PWM NULL - -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_DDR DDRB -#define PB2_PWM NULL - -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_DDR DDRB -#define PB3_PWM &OCR0A - -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_DDR DDRB -#define PB4_PWM &OCR0B - -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_DDR DDRB -#define PB5_PWM NULL - -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_DDR DDRB -#define PB6_PWM NULL - -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_DDR DDRB -#define PB7_PWM NULL - - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_DDR DDRC -#define PC0_PWM NULL - -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_DDR DDRC -#define PC1_PWM NULL - -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_DDR DDRC -#define PC2_PWM NULL - -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_DDR DDRC -#define PC3_PWM NULL - -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_DDR DDRC -#define PC4_PWM NULL - -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_DDR DDRC -#define PC5_PWM NULL - -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_DDR DDRC -#define PC6_PWM NULL - -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_DDR DDRC -#define PC7_PWM NULL - - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_DDR DDRD -#define PD0_PWM NULL - -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_DDR DDRD -#define PD1_PWM NULL - -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_DDR DDRD -#define PD2_PWM NULL - -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_DDR DDRD -#define PD3_PWM NULL - -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_DDR DDRD -#define PD4_PWM NULL - -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_DDR DDRD -#define PD5_PWM NULL - -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_DDR DDRD -#define PD6_PWM &OCR2B - -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_DDR DDRD -#define PD7_PWM &OCR2A -#endif /* _AVR_ATmega{644,644P,644PA}__ */ - -#if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) -// UART -#define RXD DIO0 -#define TXD DIO1 - -// SPI -#define SCK DIO52 -#define MISO DIO50 -#define MOSI DIO51 -#define SS DIO53 - -// TWI (I2C) -#define SCL DIO21 -#define SDA DIO20 - -// timers and PWM -#define OC0A DIO13 -#define OC0B DIO4 -#define OC1A DIO11 -#define OC1B DIO12 -#define OC2A DIO10 -#define OC2B DIO9 -#define OC3A DIO5 -#define OC3B DIO2 -#define OC3C DIO3 -#define OC4A DIO6 -#define OC4B DIO7 -#define OC4C DIO8 -#define OC5A DIO46 -#define OC5B DIO45 -#define OC5C DIO44 - -// change for your board -#define DEBUG_LED DIO21 - -/* -pins -*/ -#define DIO0_PIN PINE0 -#define DIO0_RPORT PINE -#define DIO0_WPORT PORTE -#define DIO0_DDR DDRE -#define DIO0_PWM NULL - -#define DIO1_PIN PINE1 -#define DIO1_RPORT PINE -#define DIO1_WPORT PORTE -#define DIO1_DDR DDRE -#define DIO1_PWM NULL - -#define DIO2_PIN PINE4 -#define DIO2_RPORT PINE -#define DIO2_WPORT PORTE -#define DIO2_DDR DDRE -#define DIO2_PWM &OCR3BL - -#define DIO3_PIN PINE5 -#define DIO3_RPORT PINE -#define DIO3_WPORT PORTE -#define DIO3_DDR DDRE -#define DIO3_PWM &OCR3CL - -#define DIO4_PIN PING5 -#define DIO4_RPORT PING -#define DIO4_WPORT PORTG -#define DIO4_DDR DDRG -#define DIO4_PWM &OCR0B - -#define DIO5_PIN PINE3 -#define DIO5_RPORT PINE -#define DIO5_WPORT PORTE -#define DIO5_DDR DDRE -#define DIO5_PWM &OCR3AL - -#define DIO6_PIN PINH3 -#define DIO6_RPORT PINH -#define DIO6_WPORT PORTH -#define DIO6_DDR DDRH -#define DIO6_PWM &OCR4AL - -#define DIO7_PIN PINH4 -#define DIO7_RPORT PINH -#define DIO7_WPORT PORTH -#define DIO7_DDR DDRH -#define DIO7_PWM &OCR4BL - -#define DIO8_PIN PINH5 -#define DIO8_RPORT PINH -#define DIO8_WPORT PORTH -#define DIO8_DDR DDRH -#define DIO8_PWM &OCR4CL - -#define DIO9_PIN PINH6 -#define DIO9_RPORT PINH -#define DIO9_WPORT PORTH -#define DIO9_DDR DDRH -#define DIO9_PWM &OCR2B - -#define DIO10_PIN PINB4 -#define DIO10_RPORT PINB -#define DIO10_WPORT PORTB -#define DIO10_DDR DDRB -#define DIO10_PWM &OCR2A - -#define DIO11_PIN PINB5 -#define DIO11_RPORT PINB -#define DIO11_WPORT PORTB -#define DIO11_DDR DDRB -#define DIO11_PWM NULL - -#define DIO12_PIN PINB6 -#define DIO12_RPORT PINB -#define DIO12_WPORT PORTB -#define DIO12_DDR DDRB -#define DIO12_PWM NULL - -#define DIO13_PIN PINB7 -#define DIO13_RPORT PINB -#define DIO13_WPORT PORTB -#define DIO13_DDR DDRB -#define DIO13_PWM &OCR0A - -#define DIO14_PIN PINJ1 -#define DIO14_RPORT PINJ -#define DIO14_WPORT PORTJ -#define DIO14_DDR DDRJ -#define DIO14_PWM NULL - -#define DIO15_PIN PINJ0 -#define DIO15_RPORT PINJ -#define DIO15_WPORT PORTJ -#define DIO15_DDR DDRJ -#define DIO15_PWM NULL - -#define DIO16_PIN PINH1 -#define DIO16_RPORT PINH -#define DIO16_WPORT PORTH -#define DIO16_DDR DDRH -#define DIO16_PWM NULL - -#define DIO17_PIN PINH0 -#define DIO17_RPORT PINH -#define DIO17_WPORT PORTH -#define DIO17_DDR DDRH -#define DIO17_PWM NULL - -#define DIO18_PIN PIND3 -#define DIO18_RPORT PIND -#define DIO18_WPORT PORTD -#define DIO18_DDR DDRD -#define DIO18_PWM NULL - -#define DIO19_PIN PIND2 -#define DIO19_RPORT PIND -#define DIO19_WPORT PORTD -#define DIO19_DDR DDRD -#define DIO19_PWM NULL - -#define DIO20_PIN PIND1 -#define DIO20_RPORT PIND -#define DIO20_WPORT PORTD -#define DIO20_DDR DDRD -#define DIO20_PWM NULL - -#define DIO21_PIN PIND0 -#define DIO21_RPORT PIND -#define DIO21_WPORT PORTD -#define DIO21_DDR DDRD -#define DIO21_PWM NULL - -#define DIO22_PIN PINA0 -#define DIO22_RPORT PINA -#define DIO22_WPORT PORTA -#define DIO22_DDR DDRA -#define DIO22_PWM NULL - -#define DIO23_PIN PINA1 -#define DIO23_RPORT PINA -#define DIO23_WPORT PORTA -#define DIO23_DDR DDRA -#define DIO23_PWM NULL - -#define DIO24_PIN PINA2 -#define DIO24_RPORT PINA -#define DIO24_WPORT PORTA -#define DIO24_DDR DDRA -#define DIO24_PWM NULL - -#define DIO25_PIN PINA3 -#define DIO25_RPORT PINA -#define DIO25_WPORT PORTA -#define DIO25_DDR DDRA -#define DIO25_PWM NULL - -#define DIO26_PIN PINA4 -#define DIO26_RPORT PINA -#define DIO26_WPORT PORTA -#define DIO26_DDR DDRA -#define DIO26_PWM NULL - -#define DIO27_PIN PINA5 -#define DIO27_RPORT PINA -#define DIO27_WPORT PORTA -#define DIO27_DDR DDRA -#define DIO27_PWM NULL - -#define DIO28_PIN PINA6 -#define DIO28_RPORT PINA -#define DIO28_WPORT PORTA -#define DIO28_DDR DDRA -#define DIO28_PWM NULL - -#define DIO29_PIN PINA7 -#define DIO29_RPORT PINA -#define DIO29_WPORT PORTA -#define DIO29_DDR DDRA -#define DIO29_PWM NULL - -#define DIO30_PIN PINC7 -#define DIO30_RPORT PINC -#define DIO30_WPORT PORTC -#define DIO30_DDR DDRC -#define DIO30_PWM NULL - -#define DIO31_PIN PINC6 -#define DIO31_RPORT PINC -#define DIO31_WPORT PORTC -#define DIO31_DDR DDRC -#define DIO31_PWM NULL - -#define DIO32_PIN PINC5 -#define DIO32_RPORT PINC -#define DIO32_WPORT PORTC -#define DIO32_DDR DDRC -#define DIO32_PWM NULL - -#define DIO33_PIN PINC4 -#define DIO33_RPORT PINC -#define DIO33_WPORT PORTC -#define DIO33_DDR DDRC -#define DIO33_PWM NULL - -#define DIO34_PIN PINC3 -#define DIO34_RPORT PINC -#define DIO34_WPORT PORTC -#define DIO34_DDR DDRC -#define DIO34_PWM NULL - -#define DIO35_PIN PINC2 -#define DIO35_RPORT PINC -#define DIO35_WPORT PORTC -#define DIO35_DDR DDRC -#define DIO35_PWM NULL - -#define DIO36_PIN PINC1 -#define DIO36_RPORT PINC -#define DIO36_WPORT PORTC -#define DIO36_DDR DDRC -#define DIO36_PWM NULL - -#define DIO37_PIN PINC0 -#define DIO37_RPORT PINC -#define DIO37_WPORT PORTC -#define DIO37_DDR DDRC -#define DIO37_PWM NULL - -#define DIO38_PIN PIND7 -#define DIO38_RPORT PIND -#define DIO38_WPORT PORTD -#define DIO38_DDR DDRD -#define DIO38_PWM NULL - -#define DIO39_PIN PING2 -#define DIO39_RPORT PING -#define DIO39_WPORT PORTG -#define DIO39_DDR DDRG -#define DIO39_PWM NULL - -#define DIO40_PIN PING1 -#define DIO40_RPORT PING -#define DIO40_WPORT PORTG -#define DIO40_DDR DDRG -#define DIO40_PWM NULL - -#define DIO41_PIN PING0 -#define DIO41_RPORT PING -#define DIO41_WPORT PORTG -#define DIO41_DDR DDRG -#define DIO41_PWM NULL - -#define DIO42_PIN PINL7 -#define DIO42_RPORT PINL -#define DIO42_WPORT PORTL -#define DIO42_DDR DDRL -#define DIO42_PWM NULL - -#define DIO43_PIN PINL6 -#define DIO43_RPORT PINL -#define DIO43_WPORT PORTL -#define DIO43_DDR DDRL -#define DIO43_PWM NULL - -#define DIO44_PIN PINL5 -#define DIO44_RPORT PINL -#define DIO44_WPORT PORTL -#define DIO44_DDR DDRL -#define DIO44_PWM &OCR5CL - -#define DIO45_PIN PINL4 -#define DIO45_RPORT PINL -#define DIO45_WPORT PORTL -#define DIO45_DDR DDRL -#define DIO45_PWM &OCR5BL - -#define DIO46_PIN PINL3 -#define DIO46_RPORT PINL -#define DIO46_WPORT PORTL -#define DIO46_DDR DDRL -#define DIO46_PWM &OCR5AL - -#define DIO47_PIN PINL2 -#define DIO47_RPORT PINL -#define DIO47_WPORT PORTL -#define DIO47_DDR DDRL -#define DIO47_PWM NULL - -#define DIO48_PIN PINL1 -#define DIO48_RPORT PINL -#define DIO48_WPORT PORTL -#define DIO48_DDR DDRL -#define DIO48_PWM NULL - -#define DIO49_PIN PINL0 -#define DIO49_RPORT PINL -#define DIO49_WPORT PORTL -#define DIO49_DDR DDRL -#define DIO49_PWM NULL - -#define DIO50_PIN PINB3 -#define DIO50_RPORT PINB -#define DIO50_WPORT PORTB -#define DIO50_DDR DDRB -#define DIO50_PWM NULL - -#define DIO51_PIN PINB2 -#define DIO51_RPORT PINB -#define DIO51_WPORT PORTB -#define DIO51_DDR DDRB -#define DIO51_PWM NULL - -#define DIO52_PIN PINB1 -#define DIO52_RPORT PINB -#define DIO52_WPORT PORTB -#define DIO52_DDR DDRB -#define DIO52_PWM NULL - -#define DIO53_PIN PINB0 -#define DIO53_RPORT PINB -#define DIO53_WPORT PORTB -#define DIO53_DDR DDRB -#define DIO53_PWM NULL - -#define DIO54_PIN PINF0 -#define DIO54_RPORT PINF -#define DIO54_WPORT PORTF -#define DIO54_DDR DDRF -#define DIO54_PWM NULL - -#define DIO55_PIN PINF1 -#define DIO55_RPORT PINF -#define DIO55_WPORT PORTF -#define DIO55_DDR DDRF -#define DIO55_PWM NULL - -#define DIO56_PIN PINF2 -#define DIO56_RPORT PINF -#define DIO56_WPORT PORTF -#define DIO56_DDR DDRF -#define DIO56_PWM NULL - -#define DIO57_PIN PINF3 -#define DIO57_RPORT PINF -#define DIO57_WPORT PORTF -#define DIO57_DDR DDRF -#define DIO57_PWM NULL - -#define DIO58_PIN PINF4 -#define DIO58_RPORT PINF -#define DIO58_WPORT PORTF -#define DIO58_DDR DDRF -#define DIO58_PWM NULL - -#define DIO59_PIN PINF5 -#define DIO59_RPORT PINF -#define DIO59_WPORT PORTF -#define DIO59_DDR DDRF -#define DIO59_PWM NULL - -#define DIO60_PIN PINF6 -#define DIO60_RPORT PINF -#define DIO60_WPORT PORTF -#define DIO60_DDR DDRF -#define DIO60_PWM NULL - -#define DIO61_PIN PINF7 -#define DIO61_RPORT PINF -#define DIO61_WPORT PORTF -#define DIO61_DDR DDRF -#define DIO61_PWM NULL - -#define DIO62_PIN PINK0 -#define DIO62_RPORT PINK -#define DIO62_WPORT PORTK -#define DIO62_DDR DDRK -#define DIO62_PWM NULL - -#define DIO63_PIN PINK1 -#define DIO63_RPORT PINK -#define DIO63_WPORT PORTK -#define DIO63_DDR DDRK -#define DIO63_PWM NULL - -#define DIO64_PIN PINK2 -#define DIO64_RPORT PINK -#define DIO64_WPORT PORTK -#define DIO64_DDR DDRK -#define DIO64_PWM NULL - -#define DIO65_PIN PINK3 -#define DIO65_RPORT PINK -#define DIO65_WPORT PORTK -#define DIO65_DDR DDRK -#define DIO65_PWM NULL - -#define DIO66_PIN PINK4 -#define DIO66_RPORT PINK -#define DIO66_WPORT PORTK -#define DIO66_DDR DDRK -#define DIO66_PWM NULL - -#define DIO67_PIN PINK5 -#define DIO67_RPORT PINK -#define DIO67_WPORT PORTK -#define DIO67_DDR DDRK -#define DIO67_PWM NULL - -#define DIO68_PIN PINK6 -#define DIO68_RPORT PINK -#define DIO68_WPORT PORTK -#define DIO68_DDR DDRK -#define DIO68_PWM NULL - -#define DIO69_PIN PINK7 -#define DIO69_RPORT PINK -#define DIO69_WPORT PORTK -#define DIO69_DDR DDRK -#define DIO69_PWM NULL - - - -#undef PA0 -#define PA0_PIN PINA0 -#define PA0_RPORT PINA -#define PA0_WPORT PORTA -#define PA0_DDR DDRA -#define PA0_PWM NULL -#undef PA1 -#define PA1_PIN PINA1 -#define PA1_RPORT PINA -#define PA1_WPORT PORTA -#define PA1_DDR DDRA -#define PA1_PWM NULL -#undef PA2 -#define PA2_PIN PINA2 -#define PA2_RPORT PINA -#define PA2_WPORT PORTA -#define PA2_DDR DDRA -#define PA2_PWM NULL -#undef PA3 -#define PA3_PIN PINA3 -#define PA3_RPORT PINA -#define PA3_WPORT PORTA -#define PA3_DDR DDRA -#define PA3_PWM NULL -#undef PA4 -#define PA4_PIN PINA4 -#define PA4_RPORT PINA -#define PA4_WPORT PORTA -#define PA4_DDR DDRA -#define PA4_PWM NULL -#undef PA5 -#define PA5_PIN PINA5 -#define PA5_RPORT PINA -#define PA5_WPORT PORTA -#define PA5_DDR DDRA -#define PA5_PWM NULL -#undef PA6 -#define PA6_PIN PINA6 -#define PA6_RPORT PINA -#define PA6_WPORT PORTA -#define PA6_DDR DDRA -#define PA6_PWM NULL -#undef PA7 -#define PA7_PIN PINA7 -#define PA7_RPORT PINA -#define PA7_WPORT PORTA -#define PA7_DDR DDRA -#define PA7_PWM NULL - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_DDR DDRB -#define PB0_PWM NULL -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_DDR DDRB -#define PB1_PWM NULL -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_DDR DDRB -#define PB2_PWM NULL -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_DDR DDRB -#define PB3_PWM NULL -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_DDR DDRB -#define PB4_PWM &OCR2A -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_DDR DDRB -#define PB5_PWM NULL -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_DDR DDRB -#define PB6_PWM NULL -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_DDR DDRB -#define PB7_PWM &OCR0A - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_DDR DDRC -#define PC0_PWM NULL -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_DDR DDRC -#define PC1_PWM NULL -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_DDR DDRC -#define PC2_PWM NULL -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_DDR DDRC -#define PC3_PWM NULL -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_DDR DDRC -#define PC4_PWM NULL -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_DDR DDRC -#define PC5_PWM NULL -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_DDR DDRC -#define PC6_PWM NULL -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_DDR DDRC -#define PC7_PWM NULL - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_DDR DDRD -#define PD0_PWM NULL -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_DDR DDRD -#define PD1_PWM NULL -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_DDR DDRD -#define PD2_PWM NULL -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_DDR DDRD -#define PD3_PWM NULL -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_DDR DDRD -#define PD4_PWM NULL -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_DDR DDRD -#define PD5_PWM NULL -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_DDR DDRD -#define PD6_PWM NULL -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_DDR DDRD -#define PD7_PWM NULL - -#undef PE0 -#define PE0_PIN PINE0 -#define PE0_RPORT PINE -#define PE0_WPORT PORTE -#define PE0_DDR DDRE -#define PE0_PWM NULL -#undef PE1 -#define PE1_PIN PINE1 -#define PE1_RPORT PINE -#define PE1_WPORT PORTE -#define PE1_DDR DDRE -#define PE1_PWM NULL -#undef PE2 -#define PE2_PIN PINE2 -#define PE2_RPORT PINE -#define PE2_WPORT PORTE -#define PE2_DDR DDRE -#define PE2_PWM NULL -#undef PE3 -#define PE3_PIN PINE3 -#define PE3_RPORT PINE -#define PE3_WPORT PORTE -#define PE3_DDR DDRE -#define PE3_PWM &OCR3AL -#undef PE4 -#define PE4_PIN PINE4 -#define PE4_RPORT PINE -#define PE4_WPORT PORTE -#define PE4_DDR DDRE -#define PE4_PWM &OCR3BL -#undef PE5 -#define PE5_PIN PINE5 -#define PE5_RPORT PINE -#define PE5_WPORT PORTE -#define PE5_DDR DDRE -#define PE5_PWM &OCR3CL -#undef PE6 -#define PE6_PIN PINE6 -#define PE6_RPORT PINE -#define PE6_WPORT PORTE -#define PE6_DDR DDRE -#define PE6_PWM NULL -#undef PE7 -#define PE7_PIN PINE7 -#define PE7_RPORT PINE -#define PE7_WPORT PORTE -#define PE7_DDR DDRE -#define PE7_PWM NULL - -#undef PF0 -#define PF0_PIN PINF0 -#define PF0_RPORT PINF -#define PF0_WPORT PORTF -#define PF0_DDR DDRF -#define PF0_PWM NULL -#undef PF1 -#define PF1_PIN PINF1 -#define PF1_RPORT PINF -#define PF1_WPORT PORTF -#define PF1_DDR DDRF -#define PF1_PWM NULL -#undef PF2 -#define PF2_PIN PINF2 -#define PF2_RPORT PINF -#define PF2_WPORT PORTF -#define PF2_DDR DDRF -#define PF2_PWM NULL -#undef PF3 -#define PF3_PIN PINF3 -#define PF3_RPORT PINF -#define PF3_WPORT PORTF -#define PF3_DDR DDRF -#define PF3_PWM NULL -#undef PF4 -#define PF4_PIN PINF4 -#define PF4_RPORT PINF -#define PF4_WPORT PORTF -#define PF4_DDR DDRF -#define PF4_PWM NULL -#undef PF5 -#define PF5_PIN PINF5 -#define PF5_RPORT PINF -#define PF5_WPORT PORTF -#define PF5_DDR DDRF -#define PF5_PWM NULL -#undef PF6 -#define PF6_PIN PINF6 -#define PF6_RPORT PINF -#define PF6_WPORT PORTF -#define PF6_DDR DDRF -#define PF6_PWM NULL -#undef PF7 -#define PF7_PIN PINF7 -#define PF7_RPORT PINF -#define PF7_WPORT PORTF -#define PF7_DDR DDRF -#define PF7_PWM NULL - -#undef PG0 -#define PG0_PIN PING0 -#define PG0_RPORT PING -#define PG0_WPORT PORTG -#define PG0_DDR DDRG -#define PG0_PWM NULL -#undef PG1 -#define PG1_PIN PING1 -#define PG1_RPORT PING -#define PG1_WPORT PORTG -#define PG1_DDR DDRG -#define PG1_PWM NULL -#undef PG2 -#define PG2_PIN PING2 -#define PG2_RPORT PING -#define PG2_WPORT PORTG -#define PG2_DDR DDRG -#define PG2_PWM NULL -#undef PG3 -#define PG3_PIN PING3 -#define PG3_RPORT PING -#define PG3_WPORT PORTG -#define PG3_DDR DDRG -#define PG3_PWM NULL -#undef PG4 -#define PG4_PIN PING4 -#define PG4_RPORT PING -#define PG4_WPORT PORTG -#define PG4_DDR DDRG -#define PG4_PWM NULL -#undef PG5 -#define PG5_PIN PING5 -#define PG5_RPORT PING -#define PG5_WPORT PORTG -#define PG5_DDR DDRG -#define PG5_PWM &OCR0B -#undef PG6 -#define PG6_PIN PING6 -#define PG6_RPORT PING -#define PG6_WPORT PORTG -#define PG6_DDR DDRG -#define PG6_PWM NULL -#undef PG7 -#define PG7_PIN PING7 -#define PG7_RPORT PING -#define PG7_WPORT PORTG -#define PG7_DDR DDRG -#define PG7_PWM NULL - -#undef PH0 -#define PH0_PIN PINH0 -#define PH0_RPORT PINH -#define PH0_WPORT PORTH -#define PH0_DDR DDRH -#define PH0_PWM NULL -#undef PH1 -#define PH1_PIN PINH1 -#define PH1_RPORT PINH -#define PH1_WPORT PORTH -#define PH1_DDR DDRH -#define PH1_PWM NULL -#undef PH2 -#define PH2_PIN PINH2 -#define PH2_RPORT PINH -#define PH2_WPORT PORTH -#define PH2_DDR DDRH -#define PH2_PWM NULL -#undef PH3 -#define PH3_PIN PINH3 -#define PH3_RPORT PINH -#define PH3_WPORT PORTH -#define PH3_DDR DDRH -#define PH3_PWM &OCR4AL -#undef PH4 -#define PH4_PIN PINH4 -#define PH4_RPORT PINH -#define PH4_WPORT PORTH -#define PH4_DDR DDRH -#define PH4_PWM &OCR4BL -#undef PH5 -#define PH5_PIN PINH5 -#define PH5_RPORT PINH -#define PH5_WPORT PORTH -#define PH5_DDR DDRH -#define PH5_PWM &OCR4CL -#undef PH6 -#define PH6_PIN PINH6 -#define PH6_RPORT PINH -#define PH6_WPORT PORTH -#define PH6_DDR DDRH -#define PH6_PWM &OCR2B -#undef PH7 -#define PH7_PIN PINH7 -#define PH7_RPORT PINH -#define PH7_WPORT PORTH -#define PH7_DDR DDRH -#define PH7_PWM NULL - -#undef PJ0 -#define PJ0_PIN PINJ0 -#define PJ0_RPORT PINJ -#define PJ0_WPORT PORTJ -#define PJ0_DDR DDRJ -#define PJ0_PWM NULL -#undef PJ1 -#define PJ1_PIN PINJ1 -#define PJ1_RPORT PINJ -#define PJ1_WPORT PORTJ -#define PJ1_DDR DDRJ -#define PJ1_PWM NULL -#undef PJ2 -#define PJ2_PIN PINJ2 -#define PJ2_RPORT PINJ -#define PJ2_WPORT PORTJ -#define PJ2_DDR DDRJ -#define PJ2_PWM NULL -#undef PJ3 -#define PJ3_PIN PINJ3 -#define PJ3_RPORT PINJ -#define PJ3_WPORT PORTJ -#define PJ3_DDR DDRJ -#define PJ3_PWM NULL -#undef PJ4 -#define PJ4_PIN PINJ4 -#define PJ4_RPORT PINJ -#define PJ4_WPORT PORTJ -#define PJ4_DDR DDRJ -#define PJ4_PWM NULL -#undef PJ5 -#define PJ5_PIN PINJ5 -#define PJ5_RPORT PINJ -#define PJ5_WPORT PORTJ -#define PJ5_DDR DDRJ -#define PJ5_PWM NULL -#undef PJ6 -#define PJ6_PIN PINJ6 -#define PJ6_RPORT PINJ -#define PJ6_WPORT PORTJ -#define PJ6_DDR DDRJ -#define PJ6_PWM NULL -#undef PJ7 -#define PJ7_PIN PINJ7 -#define PJ7_RPORT PINJ -#define PJ7_WPORT PORTJ -#define PJ7_DDR DDRJ -#define PJ7_PWM NULL - -#undef PK0 -#define PK0_PIN PINK0 -#define PK0_RPORT PINK -#define PK0_WPORT PORTK -#define PK0_DDR DDRK -#define PK0_PWM NULL -#undef PK1 -#define PK1_PIN PINK1 -#define PK1_RPORT PINK -#define PK1_WPORT PORTK -#define PK1_DDR DDRK -#define PK1_PWM NULL -#undef PK2 -#define PK2_PIN PINK2 -#define PK2_RPORT PINK -#define PK2_WPORT PORTK -#define PK2_DDR DDRK -#define PK2_PWM NULL -#undef PK3 -#define PK3_PIN PINK3 -#define PK3_RPORT PINK -#define PK3_WPORT PORTK -#define PK3_DDR DDRK -#define PK3_PWM NULL -#undef PK4 -#define PK4_PIN PINK4 -#define PK4_RPORT PINK -#define PK4_WPORT PORTK -#define PK4_DDR DDRK -#define PK4_PWM NULL -#undef PK5 -#define PK5_PIN PINK5 -#define PK5_RPORT PINK -#define PK5_WPORT PORTK -#define PK5_DDR DDRK -#define PK5_PWM NULL -#undef PK6 -#define PK6_PIN PINK6 -#define PK6_RPORT PINK -#define PK6_WPORT PORTK -#define PK6_DDR DDRK -#define PK6_PWM NULL -#undef PK7 -#define PK7_PIN PINK7 -#define PK7_RPORT PINK -#define PK7_WPORT PORTK -#define PK7_DDR DDRK -#define PK7_PWM NULL - -#undef PL0 -#define PL0_PIN PINL0 -#define PL0_RPORT PINL -#define PL0_WPORT PORTL -#define PL0_DDR DDRL -#define PL0_PWM NULL -#undef PL1 -#define PL1_PIN PINL1 -#define PL1_RPORT PINL -#define PL1_WPORT PORTL -#define PL1_DDR DDRL -#define PL1_PWM NULL -#undef PL2 -#define PL2_PIN PINL2 -#define PL2_RPORT PINL -#define PL2_WPORT PORTL -#define PL2_DDR DDRL -#define PL2_PWM NULL -#undef PL3 -#define PL3_PIN PINL3 -#define PL3_RPORT PINL -#define PL3_WPORT PORTL -#define PL3_DDR DDRL -#define PL3_PWM &OCR5AL -#undef PL4 -#define PL4_PIN PINL4 -#define PL4_RPORT PINL -#define PL4_WPORT PORTL -#define PL4_DDR DDRL -#define PL4_PWM &OCR5BL -#undef PL5 -#define PL5_PIN PINL5 -#define PL5_RPORT PINL -#define PL5_WPORT PORTL -#define PL5_DDR DDRL -#define PL5_PWM &OCR5CL -#undef PL6 -#define PL6_PIN PINL6 -#define PL6_RPORT PINL -#define PL6_WPORT PORTL -#define PL6_DDR DDRL -#define PL6_PWM NULL -#undef PL7 -#define PL7_PIN PINL7 -#define PL7_RPORT PINL -#define PL7_WPORT PORTL -#define PL7_DDR DDRL -#define PL7_PWM NULL - -#endif - -#if defined (__AVR_AT90USB1287__) -// SPI -#define SCK DIO9 -#define MISO DIO11 -#define MOSI DIO10 -#define SS DIO8 - -// change for your board -#define DEBUG_LED DIO31 /* led D5 red */ - -/* -pins -*/ -#define DIO0_PIN PINA0 -#define DIO0_RPORT PINA -#define DIO0_WPORT PORTA -#define DIO0_PWM NULL -#define DIO0_DDR DDRA - -#define DIO1_PIN PINA1 -#define DIO1_RPORT PINA -#define DIO1_WPORT PORTA -#define DIO1_PWM NULL -#define DIO1_DDR DDRA - -#define DIO2_PIN PINA2 -#define DIO2_RPORT PINA -#define DIO2_WPORT PORTA -#define DIO2_PWM NULL -#define DIO2_DDR DDRA - -#define DIO3_PIN PINA3 -#define DIO3_RPORT PINA -#define DIO3_WPORT PORTA -#define DIO3_PWM NULL -#define DIO3_DDR DDRA - -#define DIO4_PIN PINA4 -#define DIO4_RPORT PINA -#define DIO4_WPORT PORTA -#define DIO4_PWM NULL -#define DIO4_DDR DDRA - -#define DIO5_PIN PINA5 -#define DIO5_RPORT PINA -#define DIO5_WPORT PORTA -#define DIO5_PWM NULL -#define DIO5_DDR DDRA - -#define DIO6_PIN PINA6 -#define DIO6_RPORT PINA -#define DIO6_WPORT PORTA -#define DIO6_PWM NULL -#define DIO6_DDR DDRA - -#define DIO7_PIN PINA7 -#define DIO7_RPORT PINA -#define DIO7_WPORT PORTA -#define DIO7_PWM NULL -#define DIO7_DDR DDRA - -#define DIO8_PIN PINB0 -#define DIO8_RPORT PINB -#define DIO8_WPORT PORTB -#define DIO8_PWM NULL -#define DIO8_DDR DDRB - -#define DIO9_PIN PINB1 -#define DIO9_RPORT PINB -#define DIO9_WPORT PORTB -#define DIO9_PWM NULL -#define DIO9_DDR DDRB - -#define DIO10_PIN PINB2 -#define DIO10_RPORT PINB -#define DIO10_WPORT PORTB -#define DIO10_PWM NULL -#define DIO10_DDR DDRB - -#define DIO11_PIN PINB3 -#define DIO11_RPORT PINB -#define DIO11_WPORT PORTB -#define DIO11_PWM NULL -#define DIO11_DDR DDRB - -#define DIO12_PIN PINB4 -#define DIO12_RPORT PINB -#define DIO12_WPORT PORTB -#define DIO12_PWM NULL -#define DIO12_DDR DDRB - -#define DIO13_PIN PINB5 -#define DIO13_RPORT PINB -#define DIO13_WPORT PORTB -#define DIO13_PWM NULL -#define DIO13_DDR DDRB - -#define DIO14_PIN PINB6 -#define DIO14_RPORT PINB -#define DIO14_WPORT PORTB -#define DIO14_PWM NULL -#define DIO14_DDR DDRB - -#define DIO15_PIN PINB7 -#define DIO15_RPORT PINB -#define DIO15_WPORT PORTB -#define DIO15_PWM NULL -#define DIO15_DDR DDRB - -#define DIO16_PIN PINC0 -#define DIO16_RPORT PINC -#define DIO16_WPORT PORTC -#define DIO16_PWM NULL -#define DIO16_DDR DDRC - -#define DIO17_PIN PINC1 -#define DIO17_RPORT PINC -#define DIO17_WPORT PORTC -#define DIO17_PWM NULL -#define DIO17_DDR DDRC - -#define DIO18_PIN PINC2 -#define DIO18_RPORT PINC -#define DIO18_WPORT PORTC -#define DIO18_PWM NULL -#define DIO18_DDR DDRC - -#define DIO19_PIN PINC3 -#define DIO19_RPORT PINC -#define DIO19_WPORT PORTC -#define DIO19_PWM NULL -#define DIO19_DDR DDRC - -#define DIO20_PIN PINC4 -#define DIO20_RPORT PINC -#define DIO20_WPORT PORTC -#define DIO20_PWM NULL -#define DIO20_DDR DDRC - -#define DIO21_PIN PINC5 -#define DIO21_RPORT PINC -#define DIO21_WPORT PORTC -#define DIO21_PWM NULL -#define DIO21_DDR DDRC - -#define DIO22_PIN PINC6 -#define DIO22_RPORT PINC -#define DIO22_WPORT PORTC -#define DIO22_PWM NULL -#define DIO22_DDR DDRC - -#define DIO23_PIN PINC7 -#define DIO23_RPORT PINC -#define DIO23_WPORT PORTC -#define DIO23_PWM NULL -#define DIO23_DDR DDRC - -#define DIO24_PIN PIND0 -#define DIO24_RPORT PIND -#define DIO24_WPORT PORTD -#define DIO24_PWM NULL -#define DIO24_DDR DDRD - -#define DIO25_PIN PIND1 -#define DIO25_RPORT PIND -#define DIO25_WPORT PORTD -#define DIO25_PWM NULL -#define DIO25_DDR DDRD - -#define DIO26_PIN PIND2 -#define DIO26_RPORT PIND -#define DIO26_WPORT PORTD -#define DIO26_PWM NULL -#define DIO26_DDR DDRD - -#define DIO27_PIN PIND3 -#define DIO27_RPORT PIND -#define DIO27_WPORT PORTD -#define DIO27_PWM NULL -#define DIO27_DDR DDRD - -#define DIO28_PIN PIND4 -#define DIO28_RPORT PIND -#define DIO28_WPORT PORTD -#define DIO28_PWM NULL -#define DIO28_DDR DDRD - -#define DIO29_PIN PIND5 -#define DIO29_RPORT PIND -#define DIO29_WPORT PORTD -#define DIO29_PWM NULL -#define DIO29_DDR DDRD - -#define DIO30_PIN PIND6 -#define DIO30_RPORT PIND -#define DIO30_WPORT PORTD -#define DIO30_PWM NULL -#define DIO30_DDR DDRD - -#define DIO31_PIN PIND7 -#define DIO31_RPORT PIND -#define DIO31_WPORT PORTD -#define DIO31_PWM NULL -#define DIO31_DDR DDRD - - -#define DIO32_PIN PINE0 -#define DIO32_RPORT PINE -#define DIO32_WPORT PORTE -#define DIO32_PWM NULL -#define DIO32_DDR DDRE - -#define DIO33_PIN PINE1 -#define DIO33_RPORT PINE -#define DIO33_WPORT PORTE -#define DIO33_PWM NULL -#define DIO33_DDR DDRE - -#define DIO34_PIN PINE2 -#define DIO34_RPORT PINE -#define DIO34_WPORT PORTE -#define DIO34_PWM NULL -#define DIO34_DDR DDRE - -#define DIO35_PIN PINE3 -#define DIO35_RPORT PINE -#define DIO35_WPORT PORTE -#define DIO35_PWM NULL -#define DIO35_DDR DDRE - -#define DIO36_PIN PINE4 -#define DIO36_RPORT PINE -#define DIO36_WPORT PORTE -#define DIO36_PWM NULL -#define DIO36_DDR DDRE - -#define DIO37_PIN PINE5 -#define DIO37_RPORT PINE -#define DIO37_WPORT PORTE -#define DIO37_PWM NULL -#define DIO37_DDR DDRE - -#define DIO38_PIN PINE6 -#define DIO38_RPORT PINE -#define DIO38_WPORT PORTE -#define DIO38_PWM NULL -#define DIO38_DDR DDRE - -#define DIO39_PIN PINE7 -#define DIO39_RPORT PINE -#define DIO39_WPORT PORTE -#define DIO39_PWM NULL -#define DIO39_DDR DDRE - -#define AIO0_PIN PINF0 -#define AIO0_RPORT PINF -#define AIO0_WPORT PORTF -#define AIO0_PWM NULL -#define AIO0_DDR DDRF - -#define AIO1_PIN PINF1 -#define AIO1_RPORT PINF -#define AIO1_WPORT PORTF -#define AIO1_PWM NULL -#define AIO1_DDR DDRF - -#define AIO2_PIN PINF2 -#define AIO2_RPORT PINF -#define AIO2_WPORT PORTF -#define AIO2_PWM NULL -#define AIO2_DDR DDRF - -#define AIO3_PIN PINF3 -#define AIO3_RPORT PINF -#define AIO3_WPORT PORTF -#define AIO3_PWM NULL -#define AIO3_DDR DDRF - -#define AIO4_PIN PINF4 -#define AIO4_RPORT PINF -#define AIO4_WPORT PORTF -#define AIO4_PWM NULL -#define AIO4_DDR DDRF - -#define AIO5_PIN PINF5 -#define AIO5_RPORT PINF -#define AIO5_WPORT PORTF -#define AIO5_PWM NULL -#define AIO5_DDR DDRF - -#define AIO6_PIN PINF6 -#define AIO6_RPORT PINF -#define AIO6_WPORT PORTF -#define AIO6_PWM NULL -#define AIO6_DDR DDRF - -#define AIO7_PIN PINF7 -#define AIO7_RPORT PINF -#define AIO7_WPORT PORTF -#define AIO7_PWM NULL -#define AIO7_DDR DDRF - -#define DIO40_PIN PINF0 -#define DIO40_RPORT PINF -#define DIO40_WPORT PORTF -#define DIO40_PWM NULL -#define DIO40_DDR DDRF - -#define DIO41_PIN PINF1 -#define DIO41_RPORT PINF -#define DIO41_WPORT PORTF -#define DIO41_PWM NULL -#define DIO41_DDR DDRF - -#define DIO42_PIN PINF2 -#define DIO42_RPORT PINF -#define DIO42_WPORT PORTF -#define DIO42_PWM NULL -#define DIO42_DDR DDRF - -#define DIO43_PIN PINF3 -#define DIO43_RPORT PINF -#define DIO43_WPORT PORTF -#define DIO43_PWM NULL -#define DIO43_DDR DDRF - -#define DIO44_PIN PINF4 -#define DIO44_RPORT PINF -#define DIO44_WPORT PORTF -#define DIO44_PWM NULL -#define DIO44_DDR DDRF - -#define DIO45_PIN PINF5 -#define DIO45_RPORT PINF -#define DIO45_WPORT PORTF -#define DIO45_PWM NULL -#define DIO45_DDR DDRF - -#define DIO46_PIN PINF6 -#define DIO46_RPORT PINF -#define DIO46_WPORT PORTF -#define DIO46_PWM NULL -#define DIO46_DDR DDRF - -#define DIO47_PIN PINF7 -#define DIO47_RPORT PINF -#define DIO47_WPORT PORTF -#define DIO47_PWM NULL -#define DIO47_DDR DDRF - - - -#undef PA0 -#define PA0_PIN PINA0 -#define PA0_RPORT PINA -#define PA0_WPORT PORTA -#define PA0_PWM NULL -#define PA0_DDR DDRA -#undef PA1 -#define PA1_PIN PINA1 -#define PA1_RPORT PINA -#define PA1_WPORT PORTA -#define PA1_PWM NULL -#define PA1_DDR DDRA -#undef PA2 -#define PA2_PIN PINA2 -#define PA2_RPORT PINA -#define PA2_WPORT PORTA -#define PA2_PWM NULL -#define PA2_DDR DDRA -#undef PA3 -#define PA3_PIN PINA3 -#define PA3_RPORT PINA -#define PA3_WPORT PORTA -#define PA3_PWM NULL -#define PA3_DDR DDRA -#undef PA4 -#define PA4_PIN PINA4 -#define PA4_RPORT PINA -#define PA4_WPORT PORTA -#define PA4_PWM NULL -#define PA4_DDR DDRA -#undef PA5 -#define PA5_PIN PINA5 -#define PA5_RPORT PINA -#define PA5_WPORT PORTA -#define PA5_PWM NULL -#define PA5_DDR DDRA -#undef PA6 -#define PA6_PIN PINA6 -#define PA6_RPORT PINA -#define PA6_WPORT PORTA -#define PA6_PWM NULL -#define PA6_DDR DDRA -#undef PA7 -#define PA7_PIN PINA7 -#define PA7_RPORT PINA -#define PA7_WPORT PORTA -#define PA7_PWM NULL -#define PA7_DDR DDRA - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_PWM NULL -#define PB0_DDR DDRB -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_PWM NULL -#define PB1_DDR DDRB -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_PWM NULL -#define PB2_DDR DDRB -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_PWM NULL -#define PB3_DDR DDRB -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_PWM NULL -#define PB4_DDR DDRB -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_PWM NULL -#define PB5_DDR DDRB -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_PWM NULL -#define PB6_DDR DDRB -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_PWM NULL -#define PB7_DDR DDRB - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_PWM NULL -#define PC0_DDR DDRC -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_PWM NULL -#define PC1_DDR DDRC -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_PWM NULL -#define PC2_DDR DDRC -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_PWM NULL -#define PC3_DDR DDRC -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_PWM NULL -#define PC4_DDR DDRC -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_PWM NULL -#define PC5_DDR DDRC -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_PWM NULL -#define PC6_DDR DDRC -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_PWM NULL -#define PC7_DDR DDRC - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_PWM NULL -#define PD0_DDR DDRD -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_PWM NULL -#define PD1_DDR DDRD -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_PWM NULL -#define PD2_DDR DDRD -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_PWM NULL -#define PD3_DDR DDRD -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_PWM NULL -#define PD4_DDR DDRD -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_PWM NULL -#define PD5_DDR DDRD -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_PWM NULL -#define PD6_DDR DDRD -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_PWM NULL -#define PD7_DDR DDRD - -#undef PE0 -#define PE0_PIN PINE0 -#define PE0_RPORT PINE -#define PE0_WPORT PORTE -#define PE0_PWM NULL -#define PE0_DDR DDRE -#undef PE1 -#define PE1_PIN PINE1 -#define PE1_RPORT PINE -#define PE1_WPORT PORTE -#define PE1_PWM NULL -#define PE1_DDR DDRE -#undef PE2 -#define PE2_PIN PINE2 -#define PE2_RPORT PINE -#define PE2_WPORT PORTE -#define PE2_PWM NULL -#define PE2_DDR DDRE -#undef PE3 -#define PE3_PIN PINE3 -#define PE3_RPORT PINE -#define PE3_WPORT PORTE -#define PE3_PWM NULL -#define PE3_DDR DDRE -#undef PE4 -#define PE4_PIN PINE4 -#define PE4_RPORT PINE -#define PE4_WPORT PORTE -#define PE4_PWM NULL -#define PE4_DDR DDRE -#undef PE5 -#define PE5_PIN PINE5 -#define PE5_RPORT PINE -#define PE5_WPORT PORTE -#define PE5_PWM NULL -#define PE5_DDR DDRE -#undef PE6 -#define PE6_PIN PINE6 -#define PE6_RPORT PINE -#define PE6_WPORT PORTE -#define PE6_PWM NULL -#define PE6_DDR DDRE -#undef PE7 -#define PE7_PIN PINE7 -#define PE7_RPORT PINE -#define PE7_WPORT PORTE -#define PE7_PWM NULL -#define PE7_DDR DDRE - -#undef PF0 -#define PF0_PIN PINF0 -#define PF0_RPORT PINF -#define PF0_WPORT PORTF -#define PF0_PWM NULL -#define PF0_DDR DDRF -#undef PF1 -#define PF1_PIN PINF1 -#define PF1_RPORT PINF -#define PF1_WPORT PORTF -#define PF1_PWM NULL -#define PF1_DDR DDRF -#undef PF2 -#define PF2_PIN PINF2 -#define PF2_RPORT PINF -#define PF2_WPORT PORTF -#define PF2_PWM NULL -#define PF2_DDR DDRF -#undef PF3 -#define PF3_PIN PINF3 -#define PF3_RPORT PINF -#define PF3_WPORT PORTF -#define PF3_PWM NULL -#define PF3_DDR DDRF -#undef PF4 -#define PF4_PIN PINF4 -#define PF4_RPORT PINF -#define PF4_WPORT PORTF -#define PF4_PWM NULL -#define PF4_DDR DDRF -#undef PF5 -#define PF5_PIN PINF5 -#define PF5_RPORT PINF -#define PF5_WPORT PORTF -#define PF5_PWM NULL -#define PF5_DDR DDRF -#undef PF6 -#define PF6_PIN PINF6 -#define PF6_RPORT PINF -#define PF6_WPORT PORTF -#define PF6_PWM NULL -#define PF6_DDR DDRF -#undef PF7 -#define PF7_PIN PINF7 -#define PF7_RPORT PINF -#define PF7_WPORT PORTF -#define PF7_PWM NULL -#define PF7_DDR DDRF -#endif - -#ifndef DIO0_PIN -#error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request -#endif - +/* + This code contibuted by Triffid_Hunter and modified by Kliment + why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html +*/ + +#ifndef _ARDUINO_H +#define _ARDUINO_H + +#include + +/* + utility functions +*/ + +#ifndef MASK +/// MASKING- returns \f$2^PIN\f$ + #define MASK(PIN) (1 << PIN) +#endif + +/* + magic I/O routines + + now you can simply SET_OUTPUT(STEP); WRITE(STEP, 1); WRITE(STEP, 0); +*/ + +/// Read a pin +#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) +/// write to a pin +#define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) +//#define _WRITE(IO, v) do { #if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_START; if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); };#if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_END; } while (0) +/// toggle a pin +#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) + +/// set pin as input +#define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) +/// set pin as output +#define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= MASK(DIO ## IO ## _PIN); } while (0) + +/// check if pin is an input +#define _GET_INPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) == 0) +/// check if pin is an output +#define _GET_OUTPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) != 0) + +// why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html + +/// Read a pin wrapper +#define READ(IO) _READ(IO) +/// Write to a pin wrapper +#define WRITE(IO, v) _WRITE(IO, v) +/// toggle a pin wrapper +#define TOGGLE(IO) _TOGGLE(IO) + +/// set pin as input wrapper +#define SET_INPUT(IO) _SET_INPUT(IO) +/// set pin as output wrapper +#define SET_OUTPUT(IO) _SET_OUTPUT(IO) + +/// check if pin is an input wrapper +#define GET_INPUT(IO) _GET_INPUT(IO) +/// check if pin is an output wrapper +#define GET_OUTPUT(IO) _GET_OUTPUT(IO) + +/* + ports and functions + + added as necessary or if I feel like it- not a comprehensive list! +*/ + +#if defined (__AVR_ATmega168__) || defined (__AVR_ATmega328__) || defined (__AVR_ATmega328P__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO13 +#define MISO DIO12 +#define MOSI DIO11 +#define SS DIO10 + +// TWI (I2C) +#define SCL AIO5 +#define SDA AIO4 + +// timers and PWM +#define OC0A DIO6 +#define OC0B DIO5 +#define OC1A DIO9 +#define OC1B DIO10 +#define OC2A DIO11 +#define OC2B DIO3 + +#define DEBUG_LED AIO5 + +/* +pins +*/ + +#define DIO0_PIN PIND0 +#define DIO0_RPORT PIND +#define DIO0_WPORT PORTD +#define DIO0_DDR DDRD +#define DIO0_PWM NULL + +#define DIO1_PIN PIND1 +#define DIO1_RPORT PIND +#define DIO1_WPORT PORTD +#define DIO1_DDR DDRD +#define DIO1_PWM NULL + +#define DIO2_PIN PIND2 +#define DIO2_RPORT PIND +#define DIO2_WPORT PORTD +#define DIO2_DDR DDRD +#define DIO2_PWM NULL + +#define DIO3_PIN PIND3 +#define DIO3_RPORT PIND +#define DIO3_WPORT PORTD +#define DIO3_DDR DDRD +#define DIO3_PWM &OCR2B + +#define DIO4_PIN PIND4 +#define DIO4_RPORT PIND +#define DIO4_WPORT PORTD +#define DIO4_DDR DDRD +#define DIO4_PWM NULL + +#define DIO5_PIN PIND5 +#define DIO5_RPORT PIND +#define DIO5_WPORT PORTD +#define DIO5_DDR DDRD +#define DIO5_PWM &OCR0B + +#define DIO6_PIN PIND6 +#define DIO6_RPORT PIND +#define DIO6_WPORT PORTD +#define DIO6_DDR DDRD +#define DIO6_PWM &OCR0A + +#define DIO7_PIN PIND7 +#define DIO7_RPORT PIND +#define DIO7_WPORT PORTD +#define DIO7_DDR DDRD +#define DIO7_PWM NULL + +#define DIO8_PIN PINB0 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_DDR DDRB +#define DIO8_PWM NULL + +#define DIO9_PIN PINB1 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_DDR DDRB +#define DIO9_PWM NULL + +#define DIO10_PIN PINB2 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM NULL + +#define DIO11_PIN PINB3 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM &OCR2A + +#define DIO12_PIN PINB4 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINB5 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_DDR DDRB +#define DIO13_PWM NULL + + +#define DIO14_PIN PINC0 +#define DIO14_RPORT PINC +#define DIO14_WPORT PORTC +#define DIO14_DDR DDRC +#define DIO14_PWM NULL + +#define DIO15_PIN PINC1 +#define DIO15_RPORT PINC +#define DIO15_WPORT PORTC +#define DIO15_DDR DDRC +#define DIO15_PWM NULL + +#define DIO16_PIN PINC2 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_DDR DDRC +#define DIO16_PWM NULL + +#define DIO17_PIN PINC3 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_DDR DDRC +#define DIO17_PWM NULL + +#define DIO18_PIN PINC4 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_DDR DDRC +#define DIO18_PWM NULL + +#define DIO19_PIN PINC5 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_DDR DDRC +#define DIO19_PWM NULL + +#define DIO20_PIN PINC6 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_DDR DDRC +#define DIO20_PWM NULL + +#define DIO21_PIN PINC7 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_DDR DDRC +#define DIO21_PWM NULL + + + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL + +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL + +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL + +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM &OCR2A + +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM NULL + +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL + +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL + +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM NULL + + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL + +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL + +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL + +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL + +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL + +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL + +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL + +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL + +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL + +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL + +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM &OCR2B + +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL + +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM &OCR0B + +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM &OCR0A + +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL +#endif /* _AVR_ATmega{168,328,328P}__ */ + +#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) +// UART +#define RXD DIO8 +#define TXD DIO9 +#define RXD0 DIO8 +#define TXD0 DIO9 + +#define RXD1 DIO10 +#define TXD1 DIO11 + +// SPI +#define SCK DIO7 +#define MISO DIO6 +#define MOSI DIO5 +#define SS DIO4 + +// TWI (I2C) +#define SCL DIO16 +#define SDA DIO17 + +// timers and PWM +#define OC0A DIO3 +#define OC0B DIO4 +#define OC1A DIO13 +#define OC1B DIO12 +#define OC2A DIO15 +#define OC2B DIO14 + +#define DEBUG_LED DIO0 +/* +pins +*/ + +#define DIO0_PIN PINB0 +#define DIO0_RPORT PINB +#define DIO0_WPORT PORTB +#define DIO0_DDR DDRB +#define DIO0_PWM NULL + +#define DIO1_PIN PINB1 +#define DIO1_RPORT PINB +#define DIO1_WPORT PORTB +#define DIO1_DDR DDRB +#define DIO1_PWM NULL + +#define DIO2_PIN PINB2 +#define DIO2_RPORT PINB +#define DIO2_WPORT PORTB +#define DIO2_DDR DDRB +#define DIO2_PWM NULL + +#define DIO3_PIN PINB3 +#define DIO3_RPORT PINB +#define DIO3_WPORT PORTB +#define DIO3_DDR DDRB +#define DIO3_PWM &OCR0A + +#define DIO4_PIN PINB4 +#define DIO4_RPORT PINB +#define DIO4_WPORT PORTB +#define DIO4_DDR DDRB +#define DIO4_PWM &OCR0B + +#define DIO5_PIN PINB5 +#define DIO5_RPORT PINB +#define DIO5_WPORT PORTB +#define DIO5_DDR DDRB +#define DIO5_PWM NULL + +#define DIO6_PIN PINB6 +#define DIO6_RPORT PINB +#define DIO6_WPORT PORTB +#define DIO6_DDR DDRB +#define DIO6_PWM NULL + +#define DIO7_PIN PINB7 +#define DIO7_RPORT PINB +#define DIO7_WPORT PORTB +#define DIO7_DDR DDRB +#define DIO7_PWM NULL + +#define DIO8_PIN PIND0 +#define DIO8_RPORT PIND +#define DIO8_WPORT PORTD +#define DIO8_DDR DDRD +#define DIO8_PWM NULL + +#define DIO9_PIN PIND1 +#define DIO9_RPORT PIND +#define DIO9_WPORT PORTD +#define DIO9_DDR DDRD +#define DIO9_PWM NULL + +#define DIO10_PIN PIND2 +#define DIO10_RPORT PIND +#define DIO10_WPORT PORTD +#define DIO10_DDR DDRD +#define DIO10_PWM NULL + +#define DIO11_PIN PIND3 +#define DIO11_RPORT PIND +#define DIO11_WPORT PORTD +#define DIO11_DDR DDRD +#define DIO11_PWM NULL + +#define DIO12_PIN PIND4 +#define DIO12_RPORT PIND +#define DIO12_WPORT PORTD +#define DIO12_DDR DDRD +#define DIO12_PWM NULL + +#define DIO13_PIN PIND5 +#define DIO13_RPORT PIND +#define DIO13_WPORT PORTD +#define DIO13_DDR DDRD +#define DIO13_PWM NULL + +#define DIO14_PIN PIND6 +#define DIO14_RPORT PIND +#define DIO14_WPORT PORTD +#define DIO14_DDR DDRD +#define DIO14_PWM &OCR2B + +#define DIO15_PIN PIND7 +#define DIO15_RPORT PIND +#define DIO15_WPORT PORTD +#define DIO15_DDR DDRD +#define DIO15_PWM &OCR2A + +#define DIO16_PIN PINC0 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_DDR DDRC +#define DIO16_PWM NULL + +#define DIO17_PIN PINC1 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_DDR DDRC +#define DIO17_PWM NULL + +#define DIO18_PIN PINC2 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_DDR DDRC +#define DIO18_PWM NULL + +#define DIO19_PIN PINC3 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_DDR DDRC +#define DIO19_PWM NULL + +#define DIO20_PIN PINC4 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_DDR DDRC +#define DIO20_PWM NULL + +#define DIO21_PIN PINC5 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_DDR DDRC +#define DIO21_PWM NULL + +#define DIO22_PIN PINC6 +#define DIO22_RPORT PINC +#define DIO22_WPORT PORTC +#define DIO22_DDR DDRC +#define DIO22_PWM NULL + +#define DIO23_PIN PINC7 +#define DIO23_RPORT PINC +#define DIO23_WPORT PORTC +#define DIO23_DDR DDRC +#define DIO23_PWM NULL + +#define DIO24_PIN PINA7 +#define DIO24_RPORT PINA +#define DIO24_WPORT PORTA +#define DIO24_DDR DDRA +#define DIO24_PWM NULL + +#define DIO25_PIN PINA6 +#define DIO25_RPORT PINA +#define DIO25_WPORT PORTA +#define DIO25_DDR DDRA +#define DIO25_PWM NULL + +#define DIO26_PIN PINA5 +#define DIO26_RPORT PINA +#define DIO26_WPORT PORTA +#define DIO26_DDR DDRA +#define DIO26_PWM NULL + +#define DIO27_PIN PINA4 +#define DIO27_RPORT PINA +#define DIO27_WPORT PORTA +#define DIO27_DDR DDRA +#define DIO27_PWM NULL + +#define DIO28_PIN PINA3 +#define DIO28_RPORT PINA +#define DIO28_WPORT PORTA +#define DIO28_DDR DDRA +#define DIO28_PWM NULL + +#define DIO29_PIN PINA2 +#define DIO29_RPORT PINA +#define DIO29_WPORT PORTA +#define DIO29_DDR DDRA +#define DIO29_PWM NULL + +#define DIO30_PIN PINA1 +#define DIO30_RPORT PINA +#define DIO30_WPORT PORTA +#define DIO30_DDR DDRA +#define DIO30_PWM NULL + +#define DIO31_PIN PINA0 +#define DIO31_RPORT PINA +#define DIO31_WPORT PORTA +#define DIO31_DDR DDRA +#define DIO31_PWM NULL + +#define AIO0_PIN PINA0 +#define AIO0_RPORT PINA +#define AIO0_WPORT PORTA +#define AIO0_DDR DDRA +#define AIO0_PWM NULL + +#define AIO1_PIN PINA1 +#define AIO1_RPORT PINA +#define AIO1_WPORT PORTA +#define AIO1_DDR DDRA +#define AIO1_PWM NULL + +#define AIO2_PIN PINA2 +#define AIO2_RPORT PINA +#define AIO2_WPORT PORTA +#define AIO2_DDR DDRA +#define AIO2_PWM NULL + +#define AIO3_PIN PINA3 +#define AIO3_RPORT PINA +#define AIO3_WPORT PORTA +#define AIO3_DDR DDRA +#define AIO3_PWM NULL + +#define AIO4_PIN PINA4 +#define AIO4_RPORT PINA +#define AIO4_WPORT PORTA +#define AIO4_DDR DDRA +#define AIO4_PWM NULL + +#define AIO5_PIN PINA5 +#define AIO5_RPORT PINA +#define AIO5_WPORT PORTA +#define AIO5_DDR DDRA +#define AIO5_PWM NULL + +#define AIO6_PIN PINA6 +#define AIO6_RPORT PINA +#define AIO6_WPORT PORTA +#define AIO6_DDR DDRA +#define AIO6_PWM NULL + +#define AIO7_PIN PINA7 +#define AIO7_RPORT PINA +#define AIO7_WPORT PORTA +#define AIO7_DDR DDRA +#define AIO7_PWM NULL + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL + +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL + +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL + +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL + +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL + +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL + +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL + +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL + +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL + +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL + +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM &OCR0A + +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM &OCR0B + +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL + +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL + +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM NULL + + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL + +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL + +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL + +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL + +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL + +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL + +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL + +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL + +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL + +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL + +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL + +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL + +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL + +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM &OCR2B + +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM &OCR2A +#endif /* _AVR_ATmega{644,644P,644PA}__ */ + +#if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO52 +#define MISO DIO50 +#define MOSI DIO51 +#define SS DIO53 + +// TWI (I2C) +#define SCL DIO21 +#define SDA DIO20 + +// timers and PWM +#define OC0A DIO13 +#define OC0B DIO4 +#define OC1A DIO11 +#define OC1B DIO12 +#define OC2A DIO10 +#define OC2B DIO9 +#define OC3A DIO5 +#define OC3B DIO2 +#define OC3C DIO3 +#define OC4A DIO6 +#define OC4B DIO7 +#define OC4C DIO8 +#define OC5A DIO46 +#define OC5B DIO45 +#define OC5C DIO44 + +// change for your board +#define DEBUG_LED DIO21 + +/* +pins +*/ +#define DIO0_PIN PINE0 +#define DIO0_RPORT PINE +#define DIO0_WPORT PORTE +#define DIO0_DDR DDRE +#define DIO0_PWM NULL + +#define DIO1_PIN PINE1 +#define DIO1_RPORT PINE +#define DIO1_WPORT PORTE +#define DIO1_DDR DDRE +#define DIO1_PWM NULL + +#define DIO2_PIN PINE4 +#define DIO2_RPORT PINE +#define DIO2_WPORT PORTE +#define DIO2_DDR DDRE +#define DIO2_PWM &OCR3BL + +#define DIO3_PIN PINE5 +#define DIO3_RPORT PINE +#define DIO3_WPORT PORTE +#define DIO3_DDR DDRE +#define DIO3_PWM &OCR3CL + +#define DIO4_PIN PING5 +#define DIO4_RPORT PING +#define DIO4_WPORT PORTG +#define DIO4_DDR DDRG +#define DIO4_PWM &OCR0B + +#define DIO5_PIN PINE3 +#define DIO5_RPORT PINE +#define DIO5_WPORT PORTE +#define DIO5_DDR DDRE +#define DIO5_PWM &OCR3AL + +#define DIO6_PIN PINH3 +#define DIO6_RPORT PINH +#define DIO6_WPORT PORTH +#define DIO6_DDR DDRH +#define DIO6_PWM &OCR4AL + +#define DIO7_PIN PINH4 +#define DIO7_RPORT PINH +#define DIO7_WPORT PORTH +#define DIO7_DDR DDRH +#define DIO7_PWM &OCR4BL + +#define DIO8_PIN PINH5 +#define DIO8_RPORT PINH +#define DIO8_WPORT PORTH +#define DIO8_DDR DDRH +#define DIO8_PWM &OCR4CL + +#define DIO9_PIN PINH6 +#define DIO9_RPORT PINH +#define DIO9_WPORT PORTH +#define DIO9_DDR DDRH +#define DIO9_PWM &OCR2B + +#define DIO10_PIN PINB4 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM &OCR2A + +#define DIO11_PIN PINB5 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM NULL + +#define DIO12_PIN PINB6 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINB7 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_DDR DDRB +#define DIO13_PWM &OCR0A + +#define DIO14_PIN PINJ1 +#define DIO14_RPORT PINJ +#define DIO14_WPORT PORTJ +#define DIO14_DDR DDRJ +#define DIO14_PWM NULL + +#define DIO15_PIN PINJ0 +#define DIO15_RPORT PINJ +#define DIO15_WPORT PORTJ +#define DIO15_DDR DDRJ +#define DIO15_PWM NULL + +#define DIO16_PIN PINH1 +#define DIO16_RPORT PINH +#define DIO16_WPORT PORTH +#define DIO16_DDR DDRH +#define DIO16_PWM NULL + +#define DIO17_PIN PINH0 +#define DIO17_RPORT PINH +#define DIO17_WPORT PORTH +#define DIO17_DDR DDRH +#define DIO17_PWM NULL + +#define DIO18_PIN PIND3 +#define DIO18_RPORT PIND +#define DIO18_WPORT PORTD +#define DIO18_DDR DDRD +#define DIO18_PWM NULL + +#define DIO19_PIN PIND2 +#define DIO19_RPORT PIND +#define DIO19_WPORT PORTD +#define DIO19_DDR DDRD +#define DIO19_PWM NULL + +#define DIO20_PIN PIND1 +#define DIO20_RPORT PIND +#define DIO20_WPORT PORTD +#define DIO20_DDR DDRD +#define DIO20_PWM NULL + +#define DIO21_PIN PIND0 +#define DIO21_RPORT PIND +#define DIO21_WPORT PORTD +#define DIO21_DDR DDRD +#define DIO21_PWM NULL + +#define DIO22_PIN PINA0 +#define DIO22_RPORT PINA +#define DIO22_WPORT PORTA +#define DIO22_DDR DDRA +#define DIO22_PWM NULL + +#define DIO23_PIN PINA1 +#define DIO23_RPORT PINA +#define DIO23_WPORT PORTA +#define DIO23_DDR DDRA +#define DIO23_PWM NULL + +#define DIO24_PIN PINA2 +#define DIO24_RPORT PINA +#define DIO24_WPORT PORTA +#define DIO24_DDR DDRA +#define DIO24_PWM NULL + +#define DIO25_PIN PINA3 +#define DIO25_RPORT PINA +#define DIO25_WPORT PORTA +#define DIO25_DDR DDRA +#define DIO25_PWM NULL + +#define DIO26_PIN PINA4 +#define DIO26_RPORT PINA +#define DIO26_WPORT PORTA +#define DIO26_DDR DDRA +#define DIO26_PWM NULL + +#define DIO27_PIN PINA5 +#define DIO27_RPORT PINA +#define DIO27_WPORT PORTA +#define DIO27_DDR DDRA +#define DIO27_PWM NULL + +#define DIO28_PIN PINA6 +#define DIO28_RPORT PINA +#define DIO28_WPORT PORTA +#define DIO28_DDR DDRA +#define DIO28_PWM NULL + +#define DIO29_PIN PINA7 +#define DIO29_RPORT PINA +#define DIO29_WPORT PORTA +#define DIO29_DDR DDRA +#define DIO29_PWM NULL + +#define DIO30_PIN PINC7 +#define DIO30_RPORT PINC +#define DIO30_WPORT PORTC +#define DIO30_DDR DDRC +#define DIO30_PWM NULL + +#define DIO31_PIN PINC6 +#define DIO31_RPORT PINC +#define DIO31_WPORT PORTC +#define DIO31_DDR DDRC +#define DIO31_PWM NULL + +#define DIO32_PIN PINC5 +#define DIO32_RPORT PINC +#define DIO32_WPORT PORTC +#define DIO32_DDR DDRC +#define DIO32_PWM NULL + +#define DIO33_PIN PINC4 +#define DIO33_RPORT PINC +#define DIO33_WPORT PORTC +#define DIO33_DDR DDRC +#define DIO33_PWM NULL + +#define DIO34_PIN PINC3 +#define DIO34_RPORT PINC +#define DIO34_WPORT PORTC +#define DIO34_DDR DDRC +#define DIO34_PWM NULL + +#define DIO35_PIN PINC2 +#define DIO35_RPORT PINC +#define DIO35_WPORT PORTC +#define DIO35_DDR DDRC +#define DIO35_PWM NULL + +#define DIO36_PIN PINC1 +#define DIO36_RPORT PINC +#define DIO36_WPORT PORTC +#define DIO36_DDR DDRC +#define DIO36_PWM NULL + +#define DIO37_PIN PINC0 +#define DIO37_RPORT PINC +#define DIO37_WPORT PORTC +#define DIO37_DDR DDRC +#define DIO37_PWM NULL + +#define DIO38_PIN PIND7 +#define DIO38_RPORT PIND +#define DIO38_WPORT PORTD +#define DIO38_DDR DDRD +#define DIO38_PWM NULL + +#define DIO39_PIN PING2 +#define DIO39_RPORT PING +#define DIO39_WPORT PORTG +#define DIO39_DDR DDRG +#define DIO39_PWM NULL + +#define DIO40_PIN PING1 +#define DIO40_RPORT PING +#define DIO40_WPORT PORTG +#define DIO40_DDR DDRG +#define DIO40_PWM NULL + +#define DIO41_PIN PING0 +#define DIO41_RPORT PING +#define DIO41_WPORT PORTG +#define DIO41_DDR DDRG +#define DIO41_PWM NULL + +#define DIO42_PIN PINL7 +#define DIO42_RPORT PINL +#define DIO42_WPORT PORTL +#define DIO42_DDR DDRL +#define DIO42_PWM NULL + +#define DIO43_PIN PINL6 +#define DIO43_RPORT PINL +#define DIO43_WPORT PORTL +#define DIO43_DDR DDRL +#define DIO43_PWM NULL + +#define DIO44_PIN PINL5 +#define DIO44_RPORT PINL +#define DIO44_WPORT PORTL +#define DIO44_DDR DDRL +#define DIO44_PWM &OCR5CL + +#define DIO45_PIN PINL4 +#define DIO45_RPORT PINL +#define DIO45_WPORT PORTL +#define DIO45_DDR DDRL +#define DIO45_PWM &OCR5BL + +#define DIO46_PIN PINL3 +#define DIO46_RPORT PINL +#define DIO46_WPORT PORTL +#define DIO46_DDR DDRL +#define DIO46_PWM &OCR5AL + +#define DIO47_PIN PINL2 +#define DIO47_RPORT PINL +#define DIO47_WPORT PORTL +#define DIO47_DDR DDRL +#define DIO47_PWM NULL + +#define DIO48_PIN PINL1 +#define DIO48_RPORT PINL +#define DIO48_WPORT PORTL +#define DIO48_DDR DDRL +#define DIO48_PWM NULL + +#define DIO49_PIN PINL0 +#define DIO49_RPORT PINL +#define DIO49_WPORT PORTL +#define DIO49_DDR DDRL +#define DIO49_PWM NULL + +#define DIO50_PIN PINB3 +#define DIO50_RPORT PINB +#define DIO50_WPORT PORTB +#define DIO50_DDR DDRB +#define DIO50_PWM NULL + +#define DIO51_PIN PINB2 +#define DIO51_RPORT PINB +#define DIO51_WPORT PORTB +#define DIO51_DDR DDRB +#define DIO51_PWM NULL + +#define DIO52_PIN PINB1 +#define DIO52_RPORT PINB +#define DIO52_WPORT PORTB +#define DIO52_DDR DDRB +#define DIO52_PWM NULL + +#define DIO53_PIN PINB0 +#define DIO53_RPORT PINB +#define DIO53_WPORT PORTB +#define DIO53_DDR DDRB +#define DIO53_PWM NULL + +#define DIO54_PIN PINF0 +#define DIO54_RPORT PINF +#define DIO54_WPORT PORTF +#define DIO54_DDR DDRF +#define DIO54_PWM NULL + +#define DIO55_PIN PINF1 +#define DIO55_RPORT PINF +#define DIO55_WPORT PORTF +#define DIO55_DDR DDRF +#define DIO55_PWM NULL + +#define DIO56_PIN PINF2 +#define DIO56_RPORT PINF +#define DIO56_WPORT PORTF +#define DIO56_DDR DDRF +#define DIO56_PWM NULL + +#define DIO57_PIN PINF3 +#define DIO57_RPORT PINF +#define DIO57_WPORT PORTF +#define DIO57_DDR DDRF +#define DIO57_PWM NULL + +#define DIO58_PIN PINF4 +#define DIO58_RPORT PINF +#define DIO58_WPORT PORTF +#define DIO58_DDR DDRF +#define DIO58_PWM NULL + +#define DIO59_PIN PINF5 +#define DIO59_RPORT PINF +#define DIO59_WPORT PORTF +#define DIO59_DDR DDRF +#define DIO59_PWM NULL + +#define DIO60_PIN PINF6 +#define DIO60_RPORT PINF +#define DIO60_WPORT PORTF +#define DIO60_DDR DDRF +#define DIO60_PWM NULL + +#define DIO61_PIN PINF7 +#define DIO61_RPORT PINF +#define DIO61_WPORT PORTF +#define DIO61_DDR DDRF +#define DIO61_PWM NULL + +#define DIO62_PIN PINK0 +#define DIO62_RPORT PINK +#define DIO62_WPORT PORTK +#define DIO62_DDR DDRK +#define DIO62_PWM NULL + +#define DIO63_PIN PINK1 +#define DIO63_RPORT PINK +#define DIO63_WPORT PORTK +#define DIO63_DDR DDRK +#define DIO63_PWM NULL + +#define DIO64_PIN PINK2 +#define DIO64_RPORT PINK +#define DIO64_WPORT PORTK +#define DIO64_DDR DDRK +#define DIO64_PWM NULL + +#define DIO65_PIN PINK3 +#define DIO65_RPORT PINK +#define DIO65_WPORT PORTK +#define DIO65_DDR DDRK +#define DIO65_PWM NULL + +#define DIO66_PIN PINK4 +#define DIO66_RPORT PINK +#define DIO66_WPORT PORTK +#define DIO66_DDR DDRK +#define DIO66_PWM NULL + +#define DIO67_PIN PINK5 +#define DIO67_RPORT PINK +#define DIO67_WPORT PORTK +#define DIO67_DDR DDRK +#define DIO67_PWM NULL + +#define DIO68_PIN PINK6 +#define DIO68_RPORT PINK +#define DIO68_WPORT PORTK +#define DIO68_DDR DDRK +#define DIO68_PWM NULL + +#define DIO69_PIN PINK7 +#define DIO69_RPORT PINK +#define DIO69_WPORT PORTK +#define DIO69_DDR DDRK +#define DIO69_PWM NULL + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM NULL +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM &OCR2A +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM &OCR0A + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM NULL +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_DDR DDRE +#define PE0_PWM NULL +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_DDR DDRE +#define PE1_PWM NULL +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_DDR DDRE +#define PE2_PWM NULL +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_DDR DDRE +#define PE3_PWM &OCR3AL +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_DDR DDRE +#define PE4_PWM &OCR3BL +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_DDR DDRE +#define PE5_PWM &OCR3CL +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_DDR DDRE +#define PE6_PWM NULL +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_DDR DDRE +#define PE7_PWM NULL + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_DDR DDRF +#define PF0_PWM NULL +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_DDR DDRF +#define PF1_PWM NULL +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_DDR DDRF +#define PF2_PWM NULL +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_DDR DDRF +#define PF3_PWM NULL +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_DDR DDRF +#define PF4_PWM NULL +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_DDR DDRF +#define PF5_PWM NULL +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_DDR DDRF +#define PF6_PWM NULL +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_DDR DDRF +#define PF7_PWM NULL + +#undef PG0 +#define PG0_PIN PING0 +#define PG0_RPORT PING +#define PG0_WPORT PORTG +#define PG0_DDR DDRG +#define PG0_PWM NULL +#undef PG1 +#define PG1_PIN PING1 +#define PG1_RPORT PING +#define PG1_WPORT PORTG +#define PG1_DDR DDRG +#define PG1_PWM NULL +#undef PG2 +#define PG2_PIN PING2 +#define PG2_RPORT PING +#define PG2_WPORT PORTG +#define PG2_DDR DDRG +#define PG2_PWM NULL +#undef PG3 +#define PG3_PIN PING3 +#define PG3_RPORT PING +#define PG3_WPORT PORTG +#define PG3_DDR DDRG +#define PG3_PWM NULL +#undef PG4 +#define PG4_PIN PING4 +#define PG4_RPORT PING +#define PG4_WPORT PORTG +#define PG4_DDR DDRG +#define PG4_PWM NULL +#undef PG5 +#define PG5_PIN PING5 +#define PG5_RPORT PING +#define PG5_WPORT PORTG +#define PG5_DDR DDRG +#define PG5_PWM &OCR0B +#undef PG6 +#define PG6_PIN PING6 +#define PG6_RPORT PING +#define PG6_WPORT PORTG +#define PG6_DDR DDRG +#define PG6_PWM NULL +#undef PG7 +#define PG7_PIN PING7 +#define PG7_RPORT PING +#define PG7_WPORT PORTG +#define PG7_DDR DDRG +#define PG7_PWM NULL + +#undef PH0 +#define PH0_PIN PINH0 +#define PH0_RPORT PINH +#define PH0_WPORT PORTH +#define PH0_DDR DDRH +#define PH0_PWM NULL +#undef PH1 +#define PH1_PIN PINH1 +#define PH1_RPORT PINH +#define PH1_WPORT PORTH +#define PH1_DDR DDRH +#define PH1_PWM NULL +#undef PH2 +#define PH2_PIN PINH2 +#define PH2_RPORT PINH +#define PH2_WPORT PORTH +#define PH2_DDR DDRH +#define PH2_PWM NULL +#undef PH3 +#define PH3_PIN PINH3 +#define PH3_RPORT PINH +#define PH3_WPORT PORTH +#define PH3_DDR DDRH +#define PH3_PWM &OCR4AL +#undef PH4 +#define PH4_PIN PINH4 +#define PH4_RPORT PINH +#define PH4_WPORT PORTH +#define PH4_DDR DDRH +#define PH4_PWM &OCR4BL +#undef PH5 +#define PH5_PIN PINH5 +#define PH5_RPORT PINH +#define PH5_WPORT PORTH +#define PH5_DDR DDRH +#define PH5_PWM &OCR4CL +#undef PH6 +#define PH6_PIN PINH6 +#define PH6_RPORT PINH +#define PH6_WPORT PORTH +#define PH6_DDR DDRH +#define PH6_PWM &OCR2B +#undef PH7 +#define PH7_PIN PINH7 +#define PH7_RPORT PINH +#define PH7_WPORT PORTH +#define PH7_DDR DDRH +#define PH7_PWM NULL + +#undef PJ0 +#define PJ0_PIN PINJ0 +#define PJ0_RPORT PINJ +#define PJ0_WPORT PORTJ +#define PJ0_DDR DDRJ +#define PJ0_PWM NULL +#undef PJ1 +#define PJ1_PIN PINJ1 +#define PJ1_RPORT PINJ +#define PJ1_WPORT PORTJ +#define PJ1_DDR DDRJ +#define PJ1_PWM NULL +#undef PJ2 +#define PJ2_PIN PINJ2 +#define PJ2_RPORT PINJ +#define PJ2_WPORT PORTJ +#define PJ2_DDR DDRJ +#define PJ2_PWM NULL +#undef PJ3 +#define PJ3_PIN PINJ3 +#define PJ3_RPORT PINJ +#define PJ3_WPORT PORTJ +#define PJ3_DDR DDRJ +#define PJ3_PWM NULL +#undef PJ4 +#define PJ4_PIN PINJ4 +#define PJ4_RPORT PINJ +#define PJ4_WPORT PORTJ +#define PJ4_DDR DDRJ +#define PJ4_PWM NULL +#undef PJ5 +#define PJ5_PIN PINJ5 +#define PJ5_RPORT PINJ +#define PJ5_WPORT PORTJ +#define PJ5_DDR DDRJ +#define PJ5_PWM NULL +#undef PJ6 +#define PJ6_PIN PINJ6 +#define PJ6_RPORT PINJ +#define PJ6_WPORT PORTJ +#define PJ6_DDR DDRJ +#define PJ6_PWM NULL +#undef PJ7 +#define PJ7_PIN PINJ7 +#define PJ7_RPORT PINJ +#define PJ7_WPORT PORTJ +#define PJ7_DDR DDRJ +#define PJ7_PWM NULL + +#undef PK0 +#define PK0_PIN PINK0 +#define PK0_RPORT PINK +#define PK0_WPORT PORTK +#define PK0_DDR DDRK +#define PK0_PWM NULL +#undef PK1 +#define PK1_PIN PINK1 +#define PK1_RPORT PINK +#define PK1_WPORT PORTK +#define PK1_DDR DDRK +#define PK1_PWM NULL +#undef PK2 +#define PK2_PIN PINK2 +#define PK2_RPORT PINK +#define PK2_WPORT PORTK +#define PK2_DDR DDRK +#define PK2_PWM NULL +#undef PK3 +#define PK3_PIN PINK3 +#define PK3_RPORT PINK +#define PK3_WPORT PORTK +#define PK3_DDR DDRK +#define PK3_PWM NULL +#undef PK4 +#define PK4_PIN PINK4 +#define PK4_RPORT PINK +#define PK4_WPORT PORTK +#define PK4_DDR DDRK +#define PK4_PWM NULL +#undef PK5 +#define PK5_PIN PINK5 +#define PK5_RPORT PINK +#define PK5_WPORT PORTK +#define PK5_DDR DDRK +#define PK5_PWM NULL +#undef PK6 +#define PK6_PIN PINK6 +#define PK6_RPORT PINK +#define PK6_WPORT PORTK +#define PK6_DDR DDRK +#define PK6_PWM NULL +#undef PK7 +#define PK7_PIN PINK7 +#define PK7_RPORT PINK +#define PK7_WPORT PORTK +#define PK7_DDR DDRK +#define PK7_PWM NULL + +#undef PL0 +#define PL0_PIN PINL0 +#define PL0_RPORT PINL +#define PL0_WPORT PORTL +#define PL0_DDR DDRL +#define PL0_PWM NULL +#undef PL1 +#define PL1_PIN PINL1 +#define PL1_RPORT PINL +#define PL1_WPORT PORTL +#define PL1_DDR DDRL +#define PL1_PWM NULL +#undef PL2 +#define PL2_PIN PINL2 +#define PL2_RPORT PINL +#define PL2_WPORT PORTL +#define PL2_DDR DDRL +#define PL2_PWM NULL +#undef PL3 +#define PL3_PIN PINL3 +#define PL3_RPORT PINL +#define PL3_WPORT PORTL +#define PL3_DDR DDRL +#define PL3_PWM &OCR5AL +#undef PL4 +#define PL4_PIN PINL4 +#define PL4_RPORT PINL +#define PL4_WPORT PORTL +#define PL4_DDR DDRL +#define PL4_PWM &OCR5BL +#undef PL5 +#define PL5_PIN PINL5 +#define PL5_RPORT PINL +#define PL5_WPORT PORTL +#define PL5_DDR DDRL +#define PL5_PWM &OCR5CL +#undef PL6 +#define PL6_PIN PINL6 +#define PL6_RPORT PINL +#define PL6_WPORT PORTL +#define PL6_DDR DDRL +#define PL6_PWM NULL +#undef PL7 +#define PL7_PIN PINL7 +#define PL7_RPORT PINL +#define PL7_WPORT PORTL +#define PL7_DDR DDRL +#define PL7_PWM NULL + +#endif + +#if defined (__AVR_AT90USB1287__) +// SPI +#define SCK DIO9 +#define MISO DIO11 +#define MOSI DIO10 +#define SS DIO8 + +// change for your board +#define DEBUG_LED DIO31 /* led D5 red */ + +/* +pins +*/ +#define DIO0_PIN PINA0 +#define DIO0_RPORT PINA +#define DIO0_WPORT PORTA +#define DIO0_PWM NULL +#define DIO0_DDR DDRA + +#define DIO1_PIN PINA1 +#define DIO1_RPORT PINA +#define DIO1_WPORT PORTA +#define DIO1_PWM NULL +#define DIO1_DDR DDRA + +#define DIO2_PIN PINA2 +#define DIO2_RPORT PINA +#define DIO2_WPORT PORTA +#define DIO2_PWM NULL +#define DIO2_DDR DDRA + +#define DIO3_PIN PINA3 +#define DIO3_RPORT PINA +#define DIO3_WPORT PORTA +#define DIO3_PWM NULL +#define DIO3_DDR DDRA + +#define DIO4_PIN PINA4 +#define DIO4_RPORT PINA +#define DIO4_WPORT PORTA +#define DIO4_PWM NULL +#define DIO4_DDR DDRA + +#define DIO5_PIN PINA5 +#define DIO5_RPORT PINA +#define DIO5_WPORT PORTA +#define DIO5_PWM NULL +#define DIO5_DDR DDRA + +#define DIO6_PIN PINA6 +#define DIO6_RPORT PINA +#define DIO6_WPORT PORTA +#define DIO6_PWM NULL +#define DIO6_DDR DDRA + +#define DIO7_PIN PINA7 +#define DIO7_RPORT PINA +#define DIO7_WPORT PORTA +#define DIO7_PWM NULL +#define DIO7_DDR DDRA + +#define DIO8_PIN PINB0 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_PWM NULL +#define DIO8_DDR DDRB + +#define DIO9_PIN PINB1 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_PWM NULL +#define DIO9_DDR DDRB + +#define DIO10_PIN PINB2 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_PWM NULL +#define DIO10_DDR DDRB + +#define DIO11_PIN PINB3 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_PWM NULL +#define DIO11_DDR DDRB + +#define DIO12_PIN PINB4 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_PWM NULL +#define DIO12_DDR DDRB + +#define DIO13_PIN PINB5 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_PWM NULL +#define DIO13_DDR DDRB + +#define DIO14_PIN PINB6 +#define DIO14_RPORT PINB +#define DIO14_WPORT PORTB +#define DIO14_PWM NULL +#define DIO14_DDR DDRB + +#define DIO15_PIN PINB7 +#define DIO15_RPORT PINB +#define DIO15_WPORT PORTB +#define DIO15_PWM NULL +#define DIO15_DDR DDRB + +#define DIO16_PIN PINC0 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_PWM NULL +#define DIO16_DDR DDRC + +#define DIO17_PIN PINC1 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_PWM NULL +#define DIO17_DDR DDRC + +#define DIO18_PIN PINC2 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_PWM NULL +#define DIO18_DDR DDRC + +#define DIO19_PIN PINC3 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_PWM NULL +#define DIO19_DDR DDRC + +#define DIO20_PIN PINC4 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_PWM NULL +#define DIO20_DDR DDRC + +#define DIO21_PIN PINC5 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_PWM NULL +#define DIO21_DDR DDRC + +#define DIO22_PIN PINC6 +#define DIO22_RPORT PINC +#define DIO22_WPORT PORTC +#define DIO22_PWM NULL +#define DIO22_DDR DDRC + +#define DIO23_PIN PINC7 +#define DIO23_RPORT PINC +#define DIO23_WPORT PORTC +#define DIO23_PWM NULL +#define DIO23_DDR DDRC + +#define DIO24_PIN PIND0 +#define DIO24_RPORT PIND +#define DIO24_WPORT PORTD +#define DIO24_PWM NULL +#define DIO24_DDR DDRD + +#define DIO25_PIN PIND1 +#define DIO25_RPORT PIND +#define DIO25_WPORT PORTD +#define DIO25_PWM NULL +#define DIO25_DDR DDRD + +#define DIO26_PIN PIND2 +#define DIO26_RPORT PIND +#define DIO26_WPORT PORTD +#define DIO26_PWM NULL +#define DIO26_DDR DDRD + +#define DIO27_PIN PIND3 +#define DIO27_RPORT PIND +#define DIO27_WPORT PORTD +#define DIO27_PWM NULL +#define DIO27_DDR DDRD + +#define DIO28_PIN PIND4 +#define DIO28_RPORT PIND +#define DIO28_WPORT PORTD +#define DIO28_PWM NULL +#define DIO28_DDR DDRD + +#define DIO29_PIN PIND5 +#define DIO29_RPORT PIND +#define DIO29_WPORT PORTD +#define DIO29_PWM NULL +#define DIO29_DDR DDRD + +#define DIO30_PIN PIND6 +#define DIO30_RPORT PIND +#define DIO30_WPORT PORTD +#define DIO30_PWM NULL +#define DIO30_DDR DDRD + +#define DIO31_PIN PIND7 +#define DIO31_RPORT PIND +#define DIO31_WPORT PORTD +#define DIO31_PWM NULL +#define DIO31_DDR DDRD + + +#define DIO32_PIN PINE0 +#define DIO32_RPORT PINE +#define DIO32_WPORT PORTE +#define DIO32_PWM NULL +#define DIO32_DDR DDRE + +#define DIO33_PIN PINE1 +#define DIO33_RPORT PINE +#define DIO33_WPORT PORTE +#define DIO33_PWM NULL +#define DIO33_DDR DDRE + +#define DIO34_PIN PINE2 +#define DIO34_RPORT PINE +#define DIO34_WPORT PORTE +#define DIO34_PWM NULL +#define DIO34_DDR DDRE + +#define DIO35_PIN PINE3 +#define DIO35_RPORT PINE +#define DIO35_WPORT PORTE +#define DIO35_PWM NULL +#define DIO35_DDR DDRE + +#define DIO36_PIN PINE4 +#define DIO36_RPORT PINE +#define DIO36_WPORT PORTE +#define DIO36_PWM NULL +#define DIO36_DDR DDRE + +#define DIO37_PIN PINE5 +#define DIO37_RPORT PINE +#define DIO37_WPORT PORTE +#define DIO37_PWM NULL +#define DIO37_DDR DDRE + +#define DIO38_PIN PINE6 +#define DIO38_RPORT PINE +#define DIO38_WPORT PORTE +#define DIO38_PWM NULL +#define DIO38_DDR DDRE + +#define DIO39_PIN PINE7 +#define DIO39_RPORT PINE +#define DIO39_WPORT PORTE +#define DIO39_PWM NULL +#define DIO39_DDR DDRE + +#define AIO0_PIN PINF0 +#define AIO0_RPORT PINF +#define AIO0_WPORT PORTF +#define AIO0_PWM NULL +#define AIO0_DDR DDRF + +#define AIO1_PIN PINF1 +#define AIO1_RPORT PINF +#define AIO1_WPORT PORTF +#define AIO1_PWM NULL +#define AIO1_DDR DDRF + +#define AIO2_PIN PINF2 +#define AIO2_RPORT PINF +#define AIO2_WPORT PORTF +#define AIO2_PWM NULL +#define AIO2_DDR DDRF + +#define AIO3_PIN PINF3 +#define AIO3_RPORT PINF +#define AIO3_WPORT PORTF +#define AIO3_PWM NULL +#define AIO3_DDR DDRF + +#define AIO4_PIN PINF4 +#define AIO4_RPORT PINF +#define AIO4_WPORT PORTF +#define AIO4_PWM NULL +#define AIO4_DDR DDRF + +#define AIO5_PIN PINF5 +#define AIO5_RPORT PINF +#define AIO5_WPORT PORTF +#define AIO5_PWM NULL +#define AIO5_DDR DDRF + +#define AIO6_PIN PINF6 +#define AIO6_RPORT PINF +#define AIO6_WPORT PORTF +#define AIO6_PWM NULL +#define AIO6_DDR DDRF + +#define AIO7_PIN PINF7 +#define AIO7_RPORT PINF +#define AIO7_WPORT PORTF +#define AIO7_PWM NULL +#define AIO7_DDR DDRF + +#define DIO40_PIN PINF0 +#define DIO40_RPORT PINF +#define DIO40_WPORT PORTF +#define DIO40_PWM NULL +#define DIO40_DDR DDRF + +#define DIO41_PIN PINF1 +#define DIO41_RPORT PINF +#define DIO41_WPORT PORTF +#define DIO41_PWM NULL +#define DIO41_DDR DDRF + +#define DIO42_PIN PINF2 +#define DIO42_RPORT PINF +#define DIO42_WPORT PORTF +#define DIO42_PWM NULL +#define DIO42_DDR DDRF + +#define DIO43_PIN PINF3 +#define DIO43_RPORT PINF +#define DIO43_WPORT PORTF +#define DIO43_PWM NULL +#define DIO43_DDR DDRF + +#define DIO44_PIN PINF4 +#define DIO44_RPORT PINF +#define DIO44_WPORT PORTF +#define DIO44_PWM NULL +#define DIO44_DDR DDRF + +#define DIO45_PIN PINF5 +#define DIO45_RPORT PINF +#define DIO45_WPORT PORTF +#define DIO45_PWM NULL +#define DIO45_DDR DDRF + +#define DIO46_PIN PINF6 +#define DIO46_RPORT PINF +#define DIO46_WPORT PORTF +#define DIO46_PWM NULL +#define DIO46_DDR DDRF + +#define DIO47_PIN PINF7 +#define DIO47_RPORT PINF +#define DIO47_WPORT PORTF +#define DIO47_PWM NULL +#define DIO47_DDR DDRF + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_PWM NULL +#define PA0_DDR DDRA +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_PWM NULL +#define PA1_DDR DDRA +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_PWM NULL +#define PA2_DDR DDRA +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_PWM NULL +#define PA3_DDR DDRA +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_PWM NULL +#define PA4_DDR DDRA +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_PWM NULL +#define PA5_DDR DDRA +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_PWM NULL +#define PA6_DDR DDRA +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_PWM NULL +#define PA7_DDR DDRA + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_PWM NULL +#define PB0_DDR DDRB +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_PWM NULL +#define PB1_DDR DDRB +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_PWM NULL +#define PB2_DDR DDRB +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_PWM NULL +#define PB3_DDR DDRB +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_PWM NULL +#define PB4_DDR DDRB +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_PWM NULL +#define PB5_DDR DDRB +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_PWM NULL +#define PB6_DDR DDRB +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_PWM NULL +#define PB7_DDR DDRB + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_PWM NULL +#define PC0_DDR DDRC +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_PWM NULL +#define PC1_DDR DDRC +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_PWM NULL +#define PC2_DDR DDRC +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_PWM NULL +#define PC3_DDR DDRC +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_PWM NULL +#define PC4_DDR DDRC +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_PWM NULL +#define PC5_DDR DDRC +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_PWM NULL +#define PC6_DDR DDRC +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_PWM NULL +#define PC7_DDR DDRC + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_PWM NULL +#define PD0_DDR DDRD +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_PWM NULL +#define PD1_DDR DDRD +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_PWM NULL +#define PD2_DDR DDRD +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_PWM NULL +#define PD3_DDR DDRD +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_PWM NULL +#define PD4_DDR DDRD +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_PWM NULL +#define PD5_DDR DDRD +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_PWM NULL +#define PD6_DDR DDRD +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_PWM NULL +#define PD7_DDR DDRD + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_PWM NULL +#define PE0_DDR DDRE +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_PWM NULL +#define PE1_DDR DDRE +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_PWM NULL +#define PE2_DDR DDRE +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_PWM NULL +#define PE3_DDR DDRE +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_PWM NULL +#define PE4_DDR DDRE +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_PWM NULL +#define PE5_DDR DDRE +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_PWM NULL +#define PE6_DDR DDRE +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_PWM NULL +#define PE7_DDR DDRE + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_PWM NULL +#define PF0_DDR DDRF +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_PWM NULL +#define PF1_DDR DDRF +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_PWM NULL +#define PF2_DDR DDRF +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_PWM NULL +#define PF3_DDR DDRF +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_PWM NULL +#define PF4_DDR DDRF +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_PWM NULL +#define PF5_DDR DDRF +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_PWM NULL +#define PF6_DDR DDRF +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_PWM NULL +#define PF7_DDR DDRF +#endif + +#ifndef DIO0_PIN +#error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request +#endif + #endif /* _ARDUINO_H */ diff --git a/Marlin/pins.h b/Marlin/pins.h index 1e2fd65fd..e9ebd4412 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -1,570 +1,570 @@ -#ifndef PINS_H -#define PINS_H - -/**************************************************************************************** -* Arduino pin assignment -* -* ATMega168 -* +-\/-+ -* PC6 1| |28 PC5 (AI 5 / D19) -* (D 0) PD0 2| |27 PC4 (AI 4 / D18) -* (D 1) PD1 3| |26 PC3 (AI 3 / D17) -* (D 2) PD2 4| |25 PC2 (AI 2 / D16) -* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) -* (D 4) PD4 6| |23 PC0 (AI 0 / D14) -* VCC 7| |22 GND -* GND 8| |21 AREF -* PB6 9| |20 AVCC -* PB7 10| |19 PB5 (D 13) -* PWM+ (D 5) PD5 11| |18 PB4 (D 12) -* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM -* (D 7) PD7 13| |16 PB2 (D 10) PWM -* (D 8) PB0 14| |15 PB1 (D 9) PWM -* +----+ -****************************************************************************************/ -#if MOTHERBOARD == 0 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega168__ -#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. -#endif - -#define X_STEP_PIN 2 -#define X_DIR_PIN 3 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 4 -#define X_MAX_PIN 9 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN 13 - -#define Z_STEP_PIN 19 -#define Z_DIR_PIN 18 -#define Z_ENABLE_PIN 5 -#define Z_MIN_PIN 17 -#define Z_MAX_PIN 16 - -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN -1 -#define PS_ON_PIN 15 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#endif - - - -/**************************************************************************************** -* Sanguino/RepRap Motherboard with direct-drive extruders -* -* ATMega644P -* -* +---\/---+ -* (D 0) PB0 1| |40 PA0 (AI 0 / D31) -* (D 1) PB1 2| |39 PA1 (AI 1 / D30) -* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) -* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) -* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) -* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) -* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) -* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) -* RST 9| |32 AREF -* VCC 10| |31 GND -* GND 11| |30 AVCC -* XTAL2 12| |29 PC7 (D 23) -* XTAL1 13| |28 PC6 (D 22) -* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI -* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO -* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS -* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK -* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA -* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL -* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM -* +--------+ -* -****************************************************************************************/ -#if MOTHERBOARD == 1 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 19 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PIN 29 -#define Z_DIR_PIN 30 -#define Z_ENABLE_PIN 31 -#define Z_MIN_PIN 2 -#define Z_MAX_PIN 1 - -#define E_STEP_PIN 12 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN 3 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN 0 -#define FAN_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 14 -#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ - - - -#endif - - -/**************************************************************************************** -* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* -* -****************************************************************************************/ -#if MOTHERBOARD == 2 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 24 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PINN 27 -#define Z_DIR_PINN 28 -#define Z_ENABLE_PIN 29 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 31 - -#define E_STEP_PIN 17 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS 4 -#define LED_PIN 0 - -#define SD_CARD_WRITE 2 -#define SD_CARD_DETECT 3 -#define SD_CARD_SELECT 4 - -//our RS485 pins -#define TX_ENABLE_PIN 12 -#define RX_ENABLE_PIN 13 - -//pin for controlling the PSU. -#define PS_ON_PIN 14 - -#define FAN_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN -1 -#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - - - -#endif - -/**************************************************************************************** -* Arduino Mega pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 33 -#define MOTHERBOARD 3 -#define RAMPS_V_1_3 -#endif -#if MOTHERBOARD == 3 -#define KNOWN_BOARD 1 - -//////////////////FIX THIS////////////// -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 -// #define RAMPS_V_1_3 -// #define RAMPS_V_1_0 - -#ifdef RAMPS_V_1_3 - -#define X_STEP_PIN 54 -#define X_DIR_PIN 55 -#define X_ENABLE_PIN 38 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. - -#define Y_STEP_PIN 60 -#define Y_DIR_PIN 61 -#define Y_ENABLE_PIN 56 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN -1 //15 - -#define Z_STEP_PIN 46 -#define Z_DIR_PIN 48 -#define Z_ENABLE_PIN 62 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E_STEP_PIN 26 -#define E_DIR_PIN 28 -#define E_ENABLE_PIN 24 - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 9 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#define HEATER_0_PIN 10 -#define HEATER_1_PIN 8 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 13 // ANALOG NUMBERING -#define TEMP_1_PIN 14 // ANALOG NUMBERING -#define TEMP_2_PIN -1 // ANALOG NUMBERING - - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default - -#define X_STEP_PIN 26 -#define X_DIR_PIN 28 -#define X_ENABLE_PIN 24 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 - -#define Y_STEP_PIN 38 -#define Y_DIR_PIN 40 -#define Y_ENABLE_PIN 36 -#define Y_MIN_PIN 16 -#define Y_MAX_PIN -1 //17 - -#define Z_STEP_PIN 44 -#define Z_DIR_PIN 46 -#define Z_ENABLE_PIN 42 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E_STEP_PIN 32 -#define E_DIR_PIN 34 -#define E_ENABLE_PIN 30 - -#define SDPOWER 48 -#define SDSS 53 -#define LED_PIN 13 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - - - -#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 - #define HEATER_0_PIN 12 // RAMPS 1.0 - #define HEATER_1_PIN -1 // RAMPS 1.0 - #define FAN_PIN 11 // RAMPS 1.0 - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 - #define HEATER_0_PIN 10 // RAMPS 1.1 - #define HEATER_1_PIN 8 // RAMPS 1.1 - #define FAN_PIN 9 // RAMPS 1.1 -#endif -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#endif - -// SPI for Max6675 Thermocouple - -#ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 - #define MISO_PIN 50 - #define MOSI_PIN 51 - #define MAX6675_SS 53 -#else - #define MAX6675_SS 49 -#endif - - -#endif -/**************************************************************************************** -* Duemilanove w/ ATMega328P pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 4 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega328P__ -#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 19 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 17 -#define X_MAX_PIN -1 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 13 -#define Z_DIR_PIN 3 -#define Z_ENABLE_PIN 2 -#define Z_MIN_PIN 4 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN 5 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - -#endif - -/**************************************************************************************** -* Gen6 pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 5 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ - #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -//x axis pins - #define X_STEP_PIN 15 - #define X_DIR_PIN 18 - #define X_ENABLE_PIN 19 - #define X_MIN_PIN 20 - #define X_MAX_PIN -1 - - //y axis pins - #define Y_STEP_PIN 23 - #define Y_DIR_PIN 22 - #define Y_ENABLE_PIN 24 - #define Y_MIN_PIN 25 - #define Y_MAX_PIN -1 - - //z axis pins - #define Z_STEP_PIN 27 - #define Z_DIR_PIN 28 - #define Z_ENABLE_PIN 29 - #define Z_MIN_PIN 30 - #define Z_MAX_PIN -1 - - //extruder pins - #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 - #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 - #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 - #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 - #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 - #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 - #define HEATER_2_PIN -1 - - #define SDPOWER -1 - #define SDSS 17 - #define LED_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_2_PIN -1 - #define FAN_PIN -1 //changed @ rkoeppl 20110410 - #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 - //our pin for debugging. - - #define DEBUG_PIN 0 - - //our RS485 pins - #define TX_ENABLE_PIN 12 - #define RX_ENABLE_PIN 13 - -#endif - -/**************************************************************************************** -* Sanguinololu pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 62 -#define MOTHERBOARD 6 -#define SANGUINOLOLU_V_1_2 -#endif -#if MOTHERBOARD == 6 -#define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 21 -#define X_MIN_PIN 18 -#define X_MAX_PIN -2 - -#define Y_STEP_PIN 22 -#define Y_DIR_PIN 23 -#define Y_MIN_PIN 19 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 3 -#define Z_DIR_PIN 2 -#define Z_MIN_PIN 20 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 1 -#define E_DIR_PIN 0 - -#define LED_PIN -1 - -#define FAN_PIN -1 - -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 13 // (extruder) - -#ifdef SANGUINOLOLU_V_1_2 - -#define HEATER_1_PIN 12 // (bed) -#define X_ENABLE_PIN 14 -#define Y_ENABLE_PIN 14 -#define Z_ENABLE_PIN 26 -#define E_ENABLE_PIN 14 - -#else - -#define HEATER_1_PIN 14 // (bed) -#define X_ENABLE_PIN -1 -#define Y_ENABLE_PIN -1 -#define Z_ENABLE_PIN -1 -#define E_ENABLE_PIN -1 - -#endif - -#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) -#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) -#define TEMP_2_PIN -1 -#define SDPOWER -1 -#define SDSS 31 -#define HEATER_2_PIN -1 - -#endif - - -#if MOTHERBOARD == 7 -#define KNOWN_BOARD -/***************************************************************** -* Ultimaker pin assignment -******************************************************************/ - -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -#define X_STEP_PIN 25 -#define X_DIR_PIN 23 -#define X_MIN_PIN 22 -#define X_MAX_PIN 24 -#define X_ENABLE_PIN 27 - -#define Y_STEP_PIN 31 -#define Y_DIR_PIN 33 -#define Y_MIN_PIN 26 -#define Y_MAX_PIN 28 -#define Y_ENABLE_PIN 29 - -#define Z_STEP_PIN 37 -#define Z_DIR_PIN 39 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 32 -#define Z_ENABLE_PIN 35 - -#define HEATER_1_PIN 4 -#define TEMP_1_PIN 11 - -#define EXTRUDER_0_STEP_PIN 43 -#define EXTRUDER_0_DIR_PIN 45 -#define EXTRUDER_0_ENABLE_PIN 41 -#define HEATER_0_PIN 2 -#define TEMP_0_PIN 8 - -#define EXTRUDER_1_STEP_PIN 49 -#define EXTRUDER_1_DIR_PIN 47 -#define EXTRUDER_1_ENABLE_PIN 51 -#define EXTRUDER_1_HEATER_PIN 3 -#define EXTRUDER_1_TEMPERATURE_PIN 10 -#define HEATER_2_PIN 51 -#define TEMP_2_PIN 3 - - - -#define E_STEP_PIN EXTRUDER_0_STEP_PIN -#define E_DIR_PIN EXTRUDER_0_DIR_PIN -#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 7 -#define PS_ON_PIN 12 -#define KILL_PIN -1 -#endif - - -#ifndef KNOWN_BOARD -#error Unknown MOTHERBOARD value in configuration.h -#endif - -//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} - -#endif +#ifndef PINS_H +#define PINS_H + +/**************************************************************************************** +* Arduino pin assignment +* +* ATMega168 +* +-\/-+ +* PC6 1| |28 PC5 (AI 5 / D19) +* (D 0) PD0 2| |27 PC4 (AI 4 / D18) +* (D 1) PD1 3| |26 PC3 (AI 3 / D17) +* (D 2) PD2 4| |25 PC2 (AI 2 / D16) +* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) +* (D 4) PD4 6| |23 PC0 (AI 0 / D14) +* VCC 7| |22 GND +* GND 8| |21 AREF +* PB6 9| |20 AVCC +* PB7 10| |19 PB5 (D 13) +* PWM+ (D 5) PD5 11| |18 PB4 (D 12) +* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM +* (D 7) PD7 13| |16 PB2 (D 10) PWM +* (D 8) PB0 14| |15 PB1 (D 9) PWM +* +----+ +****************************************************************************************/ +#if MOTHERBOARD == 0 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega168__ +#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. +#endif + +#define X_STEP_PIN 2 +#define X_DIR_PIN 3 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 4 +#define X_MAX_PIN 9 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN 13 + +#define Z_STEP_PIN 19 +#define Z_DIR_PIN 18 +#define Z_ENABLE_PIN 5 +#define Z_MIN_PIN 17 +#define Z_MAX_PIN 16 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN 15 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#endif + + + +/**************************************************************************************** +* Sanguino/RepRap Motherboard with direct-drive extruders +* +* ATMega644P +* +* +---\/---+ +* (D 0) PB0 1| |40 PA0 (AI 0 / D31) +* (D 1) PB1 2| |39 PA1 (AI 1 / D30) +* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +* RST 9| |32 AREF +* VCC 10| |31 GND +* GND 11| |30 AVCC +* XTAL2 12| |29 PC7 (D 23) +* XTAL1 13| |28 PC6 (D 22) +* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +* +--------+ +* +****************************************************************************************/ +#if MOTHERBOARD == 1 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 19 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PIN 29 +#define Z_DIR_PIN 30 +#define Z_ENABLE_PIN 31 +#define Z_MIN_PIN 2 +#define Z_MAX_PIN 1 + +#define E_STEP_PIN 12 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN 3 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN 0 +#define FAN_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 14 +#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ + + + +#endif + + +/**************************************************************************************** +* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* +* +****************************************************************************************/ +#if MOTHERBOARD == 2 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PINN 27 +#define Z_DIR_PINN 28 +#define Z_ENABLE_PIN 29 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 31 + +#define E_STEP_PIN 17 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS 4 +#define LED_PIN 0 + +#define SD_CARD_WRITE 2 +#define SD_CARD_DETECT 3 +#define SD_CARD_SELECT 4 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#define FAN_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN -1 +#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + + + +#endif + +/**************************************************************************************** +* Arduino Mega pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 33 +#define MOTHERBOARD 3 +#define RAMPS_V_1_3 +#endif +#if MOTHERBOARD == 3 +#define KNOWN_BOARD 1 + +//////////////////FIX THIS////////////// +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 +// #define RAMPS_V_1_3 +// #define RAMPS_V_1_0 + +#ifdef RAMPS_V_1_3 + +#define X_STEP_PIN 54 +#define X_DIR_PIN 55 +#define X_ENABLE_PIN 38 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. + +#define Y_STEP_PIN 60 +#define Y_DIR_PIN 61 +#define Y_ENABLE_PIN 56 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 //15 + +#define Z_STEP_PIN 46 +#define Z_DIR_PIN 48 +#define Z_ENABLE_PIN 62 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 26 +#define E_DIR_PIN 28 +#define E_ENABLE_PIN 24 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 9 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#define HEATER_0_PIN 10 +#define HEATER_1_PIN 8 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 13 // ANALOG NUMBERING +#define TEMP_1_PIN 14 // ANALOG NUMBERING +#define TEMP_2_PIN -1 // ANALOG NUMBERING + + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default + +#define X_STEP_PIN 26 +#define X_DIR_PIN 28 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 + +#define Y_STEP_PIN 38 +#define Y_DIR_PIN 40 +#define Y_ENABLE_PIN 36 +#define Y_MIN_PIN 16 +#define Y_MAX_PIN -1 //17 + +#define Z_STEP_PIN 44 +#define Z_DIR_PIN 46 +#define Z_ENABLE_PIN 42 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 32 +#define E_DIR_PIN 34 +#define E_ENABLE_PIN 30 + +#define SDPOWER 48 +#define SDSS 53 +#define LED_PIN 13 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + + + +#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 + #define HEATER_0_PIN 12 // RAMPS 1.0 + #define HEATER_1_PIN -1 // RAMPS 1.0 + #define FAN_PIN 11 // RAMPS 1.0 + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 + #define HEATER_0_PIN 10 // RAMPS 1.1 + #define HEATER_1_PIN 8 // RAMPS 1.1 + #define FAN_PIN 9 // RAMPS 1.1 +#endif +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#endif + +// SPI for Max6675 Thermocouple + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 + #define MISO_PIN 50 + #define MOSI_PIN 51 + #define MAX6675_SS 53 +#else + #define MAX6675_SS 49 +#endif + + +#endif +/**************************************************************************************** +* Duemilanove w/ ATMega328P pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 4 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega328P__ +#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 17 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 13 +#define Z_DIR_PIN 3 +#define Z_ENABLE_PIN 2 +#define Z_MIN_PIN 4 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN 5 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + +#endif + +/**************************************************************************************** +* Gen6 pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 5 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +//x axis pins + #define X_STEP_PIN 15 + #define X_DIR_PIN 18 + #define X_ENABLE_PIN 19 + #define X_MIN_PIN 20 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 25 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 27 + #define Z_DIR_PIN 28 + #define Z_ENABLE_PIN 29 + #define Z_MIN_PIN 30 + #define Z_MAX_PIN -1 + + //extruder pins + #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 + #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 + #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 + #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 + #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 + #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 + #define HEATER_2_PIN -1 + + #define SDPOWER -1 + #define SDSS 17 + #define LED_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_2_PIN -1 + #define FAN_PIN -1 //changed @ rkoeppl 20110410 + #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 + //our pin for debugging. + + #define DEBUG_PIN 0 + + //our RS485 pins + #define TX_ENABLE_PIN 12 + #define RX_ENABLE_PIN 13 + +#endif + +/**************************************************************************************** +* Sanguinololu pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 62 +#define MOTHERBOARD 6 +#define SANGUINOLOLU_V_1_2 +#endif +#if MOTHERBOARD == 6 +#define KNOWN_BOARD 1 +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 21 +#define X_MIN_PIN 18 +#define X_MAX_PIN -2 + +#define Y_STEP_PIN 22 +#define Y_DIR_PIN 23 +#define Y_MIN_PIN 19 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 3 +#define Z_DIR_PIN 2 +#define Z_MIN_PIN 20 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 1 +#define E_DIR_PIN 0 + +#define LED_PIN -1 + +#define FAN_PIN -1 + +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 13 // (extruder) + +#ifdef SANGUINOLOLU_V_1_2 + +#define HEATER_1_PIN 12 // (bed) +#define X_ENABLE_PIN 14 +#define Y_ENABLE_PIN 14 +#define Z_ENABLE_PIN 26 +#define E_ENABLE_PIN 14 + +#else + +#define HEATER_1_PIN 14 // (bed) +#define X_ENABLE_PIN -1 +#define Y_ENABLE_PIN -1 +#define Z_ENABLE_PIN -1 +#define E_ENABLE_PIN -1 + +#endif + +#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) +#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define TEMP_2_PIN -1 +#define SDPOWER -1 +#define SDSS 31 +#define HEATER_2_PIN -1 + +#endif + + +#if MOTHERBOARD == 7 +#define KNOWN_BOARD +/***************************************************************** +* Ultimaker pin assignment +******************************************************************/ + +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +#define X_STEP_PIN 25 +#define X_DIR_PIN 23 +#define X_MIN_PIN 22 +#define X_MAX_PIN 24 +#define X_ENABLE_PIN 27 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_MIN_PIN 26 +#define Y_MAX_PIN 28 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 37 +#define Z_DIR_PIN 39 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 32 +#define Z_ENABLE_PIN 35 + +#define HEATER_1_PIN 4 +#define TEMP_1_PIN 11 + +#define EXTRUDER_0_STEP_PIN 43 +#define EXTRUDER_0_DIR_PIN 45 +#define EXTRUDER_0_ENABLE_PIN 41 +#define HEATER_0_PIN 2 +#define TEMP_0_PIN 8 + +#define EXTRUDER_1_STEP_PIN 49 +#define EXTRUDER_1_DIR_PIN 47 +#define EXTRUDER_1_ENABLE_PIN 51 +#define EXTRUDER_1_HEATER_PIN 3 +#define EXTRUDER_1_TEMPERATURE_PIN 10 +#define HEATER_2_PIN 51 +#define TEMP_2_PIN 3 + + + +#define E_STEP_PIN EXTRUDER_0_STEP_PIN +#define E_DIR_PIN EXTRUDER_0_DIR_PIN +#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 7 +#define PS_ON_PIN 12 +#define KILL_PIN -1 +#endif + + +#ifndef KNOWN_BOARD +#error Unknown MOTHERBOARD value in configuration.h +#endif + +//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! +#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} + +#endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index f0ca29821..14f0bb104 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -1,398 +1,398 @@ -/* - planner.c - buffers movement commands and manages the acceleration profile plan - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ - -/* - Reasoning behind the mathematics in this module (in the key of 'Mathematica'): - - s == speed, a == acceleration, t == time, d == distance - - Basic definitions: - - Speed[s_, a_, t_] := s + (a*t) - Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] - - Distance to reach a specific speed with a constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] - d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() - - Speed after a given distance of travel with constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] - m -> Sqrt[2 a d + s^2] - - DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] - - When to start braking (di) to reach a specified destionation speed (s2) after accelerating - from initial speed s1 without ever stopping at a plateau: - - Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] - di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() - - IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) -*/ - - -//#include -//#include -//#include - -#include "Marlin.h" -#include "Configuration.h" -#include "pins.h" -#include "fastio.h" -#include "planner.h" -#include "stepper.h" -#include "temperature.h" -#include "ultralcd.h" - -unsigned long minsegmenttime; -float max_feedrate[4]; // set the max speeds -float axis_steps_per_unit[4]; -long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software -float minimumfeedrate; -float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX -float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX -float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. -float max_z_jerk; -float mintravelfeedrate; -unsigned long axis_steps_per_sqr_second[NUM_AXIS]; -// Manage heater variables. - -static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions -static volatile unsigned char block_buffer_head; // Index of the next block to be pushed -static volatile unsigned char block_buffer_tail; // Index of the block to process now - -// The current position of the tool in absolute steps - long position[4]; - -#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 - -// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the -// given acceleration: -inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { - if (acceleration!=0) { - return((target_rate*target_rate-initial_rate*initial_rate)/ - (2.0*acceleration)); - } - else { - return 0.0; // acceleration was 0, set acceleration distance to 0 - } -} - -// This function gives you the point at which you must start braking (at the rate of -acceleration) if -// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after -// a total travel of distance. This can be used to compute the intersection point between acceleration and -// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) - -inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { - if (acceleration!=0) { - return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ - (4.0*acceleration) ); - } - else { - return 0.0; // acceleration was 0, set intersection distance to 0 - } -} - -// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. - -void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { - if(block->busy == true) return; // If block is busy then bail out. - float entry_factor = entry_speed / block->nominal_speed; - float exit_factor = exit_speed / block->nominal_speed; - long initial_rate = ceil(block->nominal_rate*entry_factor); - long final_rate = ceil(block->nominal_rate*exit_factor); - -#ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; -#endif // ADVANCE - - // Limit minimal step rate (Otherwise the timer will overflow.) - if(initial_rate <120) initial_rate=120; - if(final_rate < 120) final_rate=120; - - // Calculate the acceleration steps - long acceleration = block->acceleration_st; - long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); - long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); - // Calculate the size of Plateau of Nominal Rate. - long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; - - // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will - // have to use intersection_distance() to calculate when to abort acceleration and start braking - // in order to reach the final_rate exactly at the end of this block. - if (plateau_steps < 0) { - accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); - plateau_steps = 0; - } - - long decelerate_after = accelerate_steps+plateau_steps; - - CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section - if(block->busy == false) { // Don't update variables if block is busy. - block->accelerate_until = accelerate_steps; - block->decelerate_after = decelerate_after; - block->initial_rate = initial_rate; - block->final_rate = final_rate; -#ifdef ADVANCE - block->initial_advance = initial_advance; - block->final_advance = final_advance; -#endif //ADVANCE - } - CRITICAL_SECTION_END; -} - -// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the -// acceleration within the allotted distance. -inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { - return( - sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) - ); -} - -// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. -// This method will calculate the junction jerk as the euclidean distance between the nominal -// velocities of the respective blocks. -inline float junction_jerk(block_t *before, block_t *after) { - return(sqrt( - pow((before->speed_x-after->speed_x), 2)+ - pow((before->speed_y-after->speed_y), 2))); -} - -// Return the safe speed which is max_jerk/2, e.g. the -// speed under which you cannot exceed max_jerk no matter what you do. -float safe_speed(block_t *block) { - float safe_speed; - safe_speed = max_xy_jerk/2; - if(abs(block->speed_z) > max_z_jerk/2) safe_speed = max_z_jerk/2; - if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; - return safe_speed; -} - -// The kernel called by planner_recalculate() when scanning the plan from last to first entry. -void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - - float entry_speed = current->nominal_speed; - float exit_factor; - float exit_speed; - if (next) { - exit_speed = next->entry_speed; - } - else { - exit_speed = safe_speed(current); - } - - // Calculate the entry_factor for the current block. - if (previous) { - // Reduce speed so that junction_jerk is within the maximum allowed - float jerk = junction_jerk(previous, current); - if((previous->steps_x == 0) && (previous->steps_y == 0)) { - entry_speed = safe_speed(current); - } - else if (jerk > max_xy_jerk) { - entry_speed = (max_xy_jerk/jerk) * entry_speed; - } - if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { - entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; - } - // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. - if (entry_speed > exit_speed) { - float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); - if (max_entry_speed < entry_speed) { - entry_speed = max_entry_speed; - } - } - } - else { - entry_speed = safe_speed(current); - } - // Store result - current->entry_speed = entry_speed; -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the reverse pass. -void planner_reverse_pass() { - char block_index = block_buffer_head; - if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { - block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); - block_t *block[5] = { - NULL, NULL, NULL, NULL, NULL }; - while(block_index != block_buffer_tail) { - block_index = (block_index-1) & (BLOCK_BUFFER_SIZE -1); - block[2]= block[1]; - block[1]= block[0]; - block[0] = &block_buffer[block_index]; - planner_reverse_pass_kernel(block[0], block[1], block[2]); - } - planner_reverse_pass_kernel(NULL, block[0], block[1]); - } -} - -// The kernel called by planner_recalculate() when scanning the plan from first to last entry. -void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - if(previous) { - // If the previous block is an acceleration block, but it is not long enough to - // complete the full speed change within the block, we need to adjust out entry - // speed accordingly. Remember current->entry_factor equals the exit factor of - // the previous block. - if(previous->entry_speed < current->entry_speed) { - float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); - if (max_entry_speed < current->entry_speed) { - current->entry_speed = max_entry_speed; - } - } - } -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the forward pass. -void planner_forward_pass() { - char block_index = block_buffer_tail; - block_t *block[3] = { - NULL, NULL, NULL }; - - while(block_index != block_buffer_head) { - block[0] = block[1]; - block[1] = block[2]; - block[2] = &block_buffer[block_index]; - planner_forward_pass_kernel(block[0],block[1],block[2]); - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - planner_forward_pass_kernel(block[1], block[2], NULL); -} - -// Recalculates the trapezoid speed profiles for all blocks in the plan according to the -// entry_factor for each junction. Must be called by planner_recalculate() after -// updating the blocks. -void planner_recalculate_trapezoids() { - char block_index = block_buffer_tail; - block_t *current; - block_t *next = NULL; - while(block_index != block_buffer_head) { - current = next; - next = &block_buffer[block_index]; - if (current) { - calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); - } - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); -} - -// Recalculates the motion plan according to the following algorithm: -// -// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) -// so that: -// a. The junction jerk is within the set limit -// b. No speed reduction within one block requires faster deceleration than the one, true constant -// acceleration. -// 2. Go over every block in chronological order and dial down junction speed reduction values if -// a. The speed increase within one block would require faster accelleration than the one, true -// constant acceleration. -// -// When these stages are complete all blocks have an entry_factor that will allow all speed changes to -// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than -// the set limit. Finally it will: -// -// 3. Recalculate trapezoids for all blocks. - -void planner_recalculate() { - planner_reverse_pass(); - planner_forward_pass(); - planner_recalculate_trapezoids(); -} - -void plan_init() { - block_buffer_head = 0; - block_buffer_tail = 0; - memset(position, 0, sizeof(position)); // clear position -} - - -void plan_discard_current_block() { - if (block_buffer_head != block_buffer_tail) { - block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); - } -} - -block_t *plan_get_current_block() { - if (block_buffer_head == block_buffer_tail) { - return(NULL); - } - block_t *block = &block_buffer[block_buffer_tail]; - block->busy = true; - return(block); -} - -void check_axes_activity() { - unsigned char x_active = 0; - unsigned char y_active = 0; - unsigned char z_active = 0; - unsigned char e_active = 0; - block_t *block; - - if(block_buffer_tail != block_buffer_head) { - char block_index = block_buffer_tail; - while(block_index != block_buffer_head) { - block = &block_buffer[block_index]; - if(block->steps_x != 0) x_active++; - if(block->steps_y != 0) y_active++; - if(block->steps_z != 0) z_active++; - if(block->steps_e != 0) e_active++; - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - } - if((DISABLE_X) && (x_active == 0)) disable_x(); - if((DISABLE_Y) && (y_active == 0)) disable_y(); - if((DISABLE_Z) && (z_active == 0)) disable_z(); - if((DISABLE_E) && (e_active == 0)) disable_e(); -} - -// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in -// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration -// calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { - - - // Calculate the buffer head after we push this byte - int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); - - // If the buffer is full: good! That means we are well ahead of the robot. - // Rest here until there is room in the buffer. - while(block_buffer_tail == next_buffer_head) { - manage_heater(); - manage_inactivity(1); - LCD_STATUS; - } - +/* + planner.c - buffers movement commands and manages the acceleration profile plan + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ + +/* + Reasoning behind the mathematics in this module (in the key of 'Mathematica'): + + s == speed, a == acceleration, t == time, d == distance + + Basic definitions: + + Speed[s_, a_, t_] := s + (a*t) + Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] + + Distance to reach a specific speed with a constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] + d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() + + Speed after a given distance of travel with constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] + m -> Sqrt[2 a d + s^2] + + DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] + + When to start braking (di) to reach a specified destionation speed (s2) after accelerating + from initial speed s1 without ever stopping at a plateau: + + Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] + di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() + + IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) +*/ + + +//#include +//#include +//#include + +#include "Marlin.h" +#include "Configuration.h" +#include "pins.h" +#include "fastio.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" +#include "ultralcd.h" + +unsigned long minsegmenttime; +float max_feedrate[4]; // set the max speeds +float axis_steps_per_unit[4]; +long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +float minimumfeedrate; +float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +float max_z_jerk; +float mintravelfeedrate; +unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +// Manage heater variables. + +static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions +static volatile unsigned char block_buffer_head; // Index of the next block to be pushed +static volatile unsigned char block_buffer_tail; // Index of the block to process now + +// The current position of the tool in absolute steps + long position[4]; + +#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 + +// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the +// given acceleration: +inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { + if (acceleration!=0) { + return((target_rate*target_rate-initial_rate*initial_rate)/ + (2.0*acceleration)); + } + else { + return 0.0; // acceleration was 0, set acceleration distance to 0 + } +} + +// This function gives you the point at which you must start braking (at the rate of -acceleration) if +// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after +// a total travel of distance. This can be used to compute the intersection point between acceleration and +// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) + +inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { + if (acceleration!=0) { + return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ + (4.0*acceleration) ); + } + else { + return 0.0; // acceleration was 0, set intersection distance to 0 + } +} + +// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. + +void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { + if(block->busy == true) return; // If block is busy then bail out. + float entry_factor = entry_speed / block->nominal_speed; + float exit_factor = exit_speed / block->nominal_speed; + long initial_rate = ceil(block->nominal_rate*entry_factor); + long final_rate = ceil(block->nominal_rate*exit_factor); + +#ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; +#endif // ADVANCE + + // Limit minimal step rate (Otherwise the timer will overflow.) + if(initial_rate <120) initial_rate=120; + if(final_rate < 120) final_rate=120; + + // Calculate the acceleration steps + long acceleration = block->acceleration_st; + long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); + long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); + // Calculate the size of Plateau of Nominal Rate. + long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; + + // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will + // have to use intersection_distance() to calculate when to abort acceleration and start braking + // in order to reach the final_rate exactly at the end of this block. + if (plateau_steps < 0) { + accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); + plateau_steps = 0; + } + + long decelerate_after = accelerate_steps+plateau_steps; + + CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section + if(block->busy == false) { // Don't update variables if block is busy. + block->accelerate_until = accelerate_steps; + block->decelerate_after = decelerate_after; + block->initial_rate = initial_rate; + block->final_rate = final_rate; +#ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; +#endif //ADVANCE + } + CRITICAL_SECTION_END; +} + +// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the +// acceleration within the allotted distance. +inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { + return( + sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) + ); +} + +// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. +// This method will calculate the junction jerk as the euclidean distance between the nominal +// velocities of the respective blocks. +inline float junction_jerk(block_t *before, block_t *after) { + return(sqrt( + pow((before->speed_x-after->speed_x), 2)+ + pow((before->speed_y-after->speed_y), 2))); +} + +// Return the safe speed which is max_jerk/2, e.g. the +// speed under which you cannot exceed max_jerk no matter what you do. +float safe_speed(block_t *block) { + float safe_speed; + safe_speed = max_xy_jerk/2; + if(abs(block->speed_z) > max_z_jerk/2) safe_speed = max_z_jerk/2; + if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; + return safe_speed; +} + +// The kernel called by planner_recalculate() when scanning the plan from last to first entry. +void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + + float entry_speed = current->nominal_speed; + float exit_factor; + float exit_speed; + if (next) { + exit_speed = next->entry_speed; + } + else { + exit_speed = safe_speed(current); + } + + // Calculate the entry_factor for the current block. + if (previous) { + // Reduce speed so that junction_jerk is within the maximum allowed + float jerk = junction_jerk(previous, current); + if((previous->steps_x == 0) && (previous->steps_y == 0)) { + entry_speed = safe_speed(current); + } + else if (jerk > max_xy_jerk) { + entry_speed = (max_xy_jerk/jerk) * entry_speed; + } + if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { + entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; + } + // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. + if (entry_speed > exit_speed) { + float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); + if (max_entry_speed < entry_speed) { + entry_speed = max_entry_speed; + } + } + } + else { + entry_speed = safe_speed(current); + } + // Store result + current->entry_speed = entry_speed; +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the reverse pass. +void planner_reverse_pass() { + char block_index = block_buffer_head; + if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { + block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); + block_t *block[5] = { + NULL, NULL, NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index = (block_index-1) & (BLOCK_BUFFER_SIZE -1); + block[2]= block[1]; + block[1]= block[0]; + block[0] = &block_buffer[block_index]; + planner_reverse_pass_kernel(block[0], block[1], block[2]); + } + planner_reverse_pass_kernel(NULL, block[0], block[1]); + } +} + +// The kernel called by planner_recalculate() when scanning the plan from first to last entry. +void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { + return; + } + if(previous) { + // If the previous block is an acceleration block, but it is not long enough to + // complete the full speed change within the block, we need to adjust out entry + // speed accordingly. Remember current->entry_factor equals the exit factor of + // the previous block. + if(previous->entry_speed < current->entry_speed) { + float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); + if (max_entry_speed < current->entry_speed) { + current->entry_speed = max_entry_speed; + } + } + } +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the forward pass. +void planner_forward_pass() { + char block_index = block_buffer_tail; + block_t *block[3] = { + NULL, NULL, NULL }; + + while(block_index != block_buffer_head) { + block[0] = block[1]; + block[1] = block[2]; + block[2] = &block_buffer[block_index]; + planner_forward_pass_kernel(block[0],block[1],block[2]); + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + planner_forward_pass_kernel(block[1], block[2], NULL); +} + +// Recalculates the trapezoid speed profiles for all blocks in the plan according to the +// entry_factor for each junction. Must be called by planner_recalculate() after +// updating the blocks. +void planner_recalculate_trapezoids() { + char block_index = block_buffer_tail; + block_t *current; + block_t *next = NULL; + while(block_index != block_buffer_head) { + current = next; + next = &block_buffer[block_index]; + if (current) { + calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); + } + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); +} + +// Recalculates the motion plan according to the following algorithm: +// +// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) +// so that: +// a. The junction jerk is within the set limit +// b. No speed reduction within one block requires faster deceleration than the one, true constant +// acceleration. +// 2. Go over every block in chronological order and dial down junction speed reduction values if +// a. The speed increase within one block would require faster accelleration than the one, true +// constant acceleration. +// +// When these stages are complete all blocks have an entry_factor that will allow all speed changes to +// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than +// the set limit. Finally it will: +// +// 3. Recalculate trapezoids for all blocks. + +void planner_recalculate() { + planner_reverse_pass(); + planner_forward_pass(); + planner_recalculate_trapezoids(); +} + +void plan_init() { + block_buffer_head = 0; + block_buffer_tail = 0; + memset(position, 0, sizeof(position)); // clear position +} + + +void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); + } +} + +block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} + +void check_axes_activity() { + unsigned char x_active = 0; + unsigned char y_active = 0; + unsigned char z_active = 0; + unsigned char e_active = 0; + block_t *block; + + if(block_buffer_tail != block_buffer_head) { + char block_index = block_buffer_tail; + while(block_index != block_buffer_head) { + block = &block_buffer[block_index]; + if(block->steps_x != 0) x_active++; + if(block->steps_y != 0) y_active++; + if(block->steps_z != 0) z_active++; + if(block->steps_e != 0) e_active++; + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + } + if((DISABLE_X) && (x_active == 0)) disable_x(); + if((DISABLE_Y) && (y_active == 0)) disable_y(); + if((DISABLE_Z) && (z_active == 0)) disable_z(); + if((DISABLE_E) && (e_active == 0)) disable_e(); +} + +// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in +// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration +// calculation the caller must also provide the physical length of the line in millimeters. +void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { + + + // Calculate the buffer head after we push this byte + int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); + + // If the buffer is full: good! That means we are well ahead of the robot. + // Rest here until there is room in the buffer. + while(block_buffer_tail == next_buffer_head) { + manage_heater(); + manage_inactivity(1); + LCD_STATUS; + } + // The target position of the tool in absolute steps // Calculate target position in absolute steps //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow @@ -402,185 +402,185 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - // Prepare to set up new block - block_t *block = &block_buffer[block_buffer_head]; - - // Mark block as not busy (Not executed by the stepper interrupt) - block->busy = false; - - // Number of steps for each axis - block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); - block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); - block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); - block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); - block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); - - // Bail if this is a zero-length block - if (block->step_event_count <=dropsegments) { - return; - }; - - //enable active axes - if(block->steps_x != 0) enable_x(); - if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - - float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; - float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; - float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; - float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; - block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); - - unsigned long microseconds; - - if (block->steps_e == 0) { - if(feed_ratemillimeters/feed_rate)*1000000); - - // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill - // reduces/removes corner blobs as the machine won't come to a full stop. - int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); - - if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { - if (microsecondsspeed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - - - // Limit speed per axis - float speed_factor = 1; //factor <=1 do decrease speed - if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - //// [ErikDeBruijn] IS THIS THE BUG WE'RE LOOING FOR???? - //// [bernhard] No its not, according to Zalm. - //// the if would always be true, since tmp_speedfactor <=0 due the inial if, so its safe to set. the next lines actually compare. - speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); - //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ - float tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ - float tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_e) > max_feedrate[E_AXIS]){ - float tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - multiplier = multiplier * speed_factor; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - block->nominal_speed = block->millimeters * multiplier; - block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - - if(block->nominal_rate < 120) block->nominal_rate = 120; - block->entry_speed = safe_speed(block); - - // Compute the acceleration rate for the trapezoid generator. - float travel_per_step = block->millimeters/block->step_event_count; - if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { - block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - } - else { - block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - float tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - // Limit acceleration per axis - if((tmp_acceleration * block->steps_x) > axis_steps_per_sqr_second[X_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_y) > axis_steps_per_sqr_second[Y_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_e) > axis_steps_per_sqr_second[E_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_z) > axis_steps_per_sqr_second[Z_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - } - block->acceleration = block->acceleration_st * travel_per_step; - block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); - -#ifdef ADVANCE - // Calculate advance rate - if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { - block->advance_rate = 0; - block->advance = 0; - } - else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); - float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; - block->advance = advance; - if(acc_dist == 0) { - block->advance_rate = 0; - } - else { - block->advance_rate = advance / (float)acc_dist; - } - } -#endif // ADVANCE - - // compute a preliminary conservative acceleration trapezoid - float safespeed = safe_speed(block); - calculate_trapezoid_for_block(block, safespeed, safespeed); - - // Compute direction bits for this block - block->direction_bits = 0; - if (target[X_AXIS] < position[X_AXIS]) { - block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<busy = false; + + // Number of steps for each axis + block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); + block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); + block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); + block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); + + // Bail if this is a zero-length block + if (block->step_event_count <=dropsegments) { + return; + }; + + //enable active axes + if(block->steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); + + float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; + float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); + + unsigned long microseconds; + + if (block->steps_e == 0) { + if(feed_ratemillimeters/feed_rate)*1000000); + + // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill + // reduces/removes corner blobs as the machine won't come to a full stop. + int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); + + if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { + if (microsecondsspeed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + + + // Limit speed per axis + float speed_factor = 1; //factor <=1 do decrease speed + if(abs(block->speed_x) > max_feedrate[X_AXIS]) { + //// [ErikDeBruijn] IS THIS THE BUG WE'RE LOOING FOR???? + //// [bernhard] No its not, according to Zalm. + //// the if would always be true, since tmp_speedfactor <=0 due the inial if, so its safe to set. the next lines actually compare. + speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); + //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ + float tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ + float tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + if(abs(block->speed_e) > max_feedrate[E_AXIS]){ + float tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); + if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + } + multiplier = multiplier * speed_factor; + block->speed_z = delta_z_mm * multiplier; + block->speed_x = delta_x_mm * multiplier; + block->speed_y = delta_y_mm * multiplier; + block->speed_e = delta_e_mm * multiplier; + block->nominal_speed = block->millimeters * multiplier; + block->nominal_rate = ceil(block->step_event_count * multiplier / 60); + + if(block->nominal_rate < 120) block->nominal_rate = 120; + block->entry_speed = safe_speed(block); + + // Compute the acceleration rate for the trapezoid generator. + float travel_per_step = block->millimeters/block->step_event_count; + if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { + block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + } + else { + block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 + float tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + // Limit acceleration per axis + if((tmp_acceleration * block->steps_x) > axis_steps_per_sqr_second[X_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + if((tmp_acceleration * block->steps_y) > axis_steps_per_sqr_second[Y_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + if((tmp_acceleration * block->steps_e) > axis_steps_per_sqr_second[E_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + if((tmp_acceleration * block->steps_z) > axis_steps_per_sqr_second[Z_AXIS]) { + block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; + tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; + } + } + block->acceleration = block->acceleration_st * travel_per_step; + block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); + +#ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { + block->advance_rate = 0; + block->advance = 0; + } + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } +#endif // ADVANCE + + // compute a preliminary conservative acceleration trapezoid + float safespeed = safe_speed(block); + calculate_trapezoid_for_block(block, safespeed, safespeed); + + // Compute direction bits for this block + block->direction_bits = 0; + if (target[X_AXIS] < position[X_AXIS]) { + block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1< - -uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ -{ 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, -{ 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, -{ 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, -{ 323, 13}, { 310, 11}, { 299, 11}, { 288, 11}, { 277, 9}, { 268, 9}, { 259, 8}, { 251, 8}, -{ 243, 8}, { 235, 7}, { 228, 6}, { 222, 6}, { 216, 6}, { 210, 6}, { 204, 5}, { 199, 5}, -{ 194, 5}, { 189, 4}, { 185, 4}, { 181, 4}, { 177, 4}, { 173, 4}, { 169, 4}, { 165, 3}, -{ 162, 3}, { 159, 4}, { 155, 3}, { 152, 3}, { 149, 2}, { 147, 3}, { 144, 3}, { 141, 2}, -{ 139, 3}, { 136, 2}, { 134, 2}, { 132, 3}, { 129, 2}, { 127, 2}, { 125, 2}, { 123, 2}, -{ 121, 2}, { 119, 1}, { 118, 2}, { 116, 2}, { 114, 1}, { 113, 2}, { 111, 2}, { 109, 1}, -{ 108, 2}, { 106, 1}, { 105, 2}, { 103, 1}, { 102, 1}, { 101, 1}, { 100, 2}, { 98, 1}, -{ 97, 1}, { 96, 1}, { 95, 2}, { 93, 1}, { 92, 1}, { 91, 1}, { 90, 1}, { 89, 1}, -{ 88, 1}, { 87, 1}, { 86, 1}, { 85, 1}, { 84, 1}, { 83, 0}, { 83, 1}, { 82, 1}, -{ 81, 1}, { 80, 1}, { 79, 1}, { 78, 0}, { 78, 1}, { 77, 1}, { 76, 1}, { 75, 0}, -{ 75, 1}, { 74, 1}, { 73, 1}, { 72, 0}, { 72, 1}, { 71, 1}, { 70, 0}, { 70, 1}, -{ 69, 0}, { 69, 1}, { 68, 1}, { 67, 0}, { 67, 1}, { 66, 0}, { 66, 1}, { 65, 0}, -{ 65, 1}, { 64, 1}, { 63, 0}, { 63, 1}, { 62, 0}, { 62, 1}, { 61, 0}, { 61, 1}, -{ 60, 0}, { 60, 0}, { 60, 1}, { 59, 0}, { 59, 1}, { 58, 0}, { 58, 1}, { 57, 0}, -{ 57, 1}, { 56, 0}, { 56, 0}, { 56, 1}, { 55, 0}, { 55, 1}, { 54, 0}, { 54, 0}, -{ 54, 1}, { 53, 0}, { 53, 0}, { 53, 1}, { 52, 0}, { 52, 0}, { 52, 1}, { 51, 0}, -{ 51, 0}, { 51, 1}, { 50, 0}, { 50, 0}, { 50, 1}, { 49, 0}, { 49, 0}, { 49, 1}, -{ 48, 0}, { 48, 0}, { 48, 1}, { 47, 0}, { 47, 0}, { 47, 0}, { 47, 1}, { 46, 0}, -{ 46, 0}, { 46, 1}, { 45, 0}, { 45, 0}, { 45, 0}, { 45, 1}, { 44, 0}, { 44, 0}, -{ 44, 0}, { 44, 1}, { 43, 0}, { 43, 0}, { 43, 0}, { 43, 1}, { 42, 0}, { 42, 0}, -{ 42, 0}, { 42, 1}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 1}, { 40, 0}, -{ 40, 0}, { 40, 0}, { 40, 0}, { 40, 1}, { 39, 0}, { 39, 0}, { 39, 0}, { 39, 0}, -{ 39, 1}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 1}, { 37, 0}, { 37, 0}, -{ 37, 0}, { 37, 0}, { 37, 0}, { 37, 1}, { 36, 0}, { 36, 0}, { 36, 0}, { 36, 0}, -{ 36, 1}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 1}, -{ 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, -{ 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, -{ 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, -{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} -}; -uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ -{ 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, -{ 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, -{ 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, -{ 8928, 308}, { 8620, 287}, { 8333, 269}, { 8064, 252}, { 7812, 237}, { 7575, 223}, { 7352, 210}, { 7142, 198}, -{ 6944, 188}, { 6756, 178}, { 6578, 168}, { 6410, 160}, { 6250, 153}, { 6097, 145}, { 5952, 139}, { 5813, 132}, -{ 5681, 126}, { 5555, 121}, { 5434, 115}, { 5319, 111}, { 5208, 106}, { 5102, 102}, { 5000, 99}, { 4901, 94}, -{ 4807, 91}, { 4716, 87}, { 4629, 84}, { 4545, 81}, { 4464, 79}, { 4385, 75}, { 4310, 73}, { 4237, 71}, -{ 4166, 68}, { 4098, 66}, { 4032, 64}, { 3968, 62}, { 3906, 60}, { 3846, 59}, { 3787, 56}, { 3731, 55}, -{ 3676, 53}, { 3623, 52}, { 3571, 50}, { 3521, 49}, { 3472, 48}, { 3424, 46}, { 3378, 45}, { 3333, 44}, -{ 3289, 43}, { 3246, 41}, { 3205, 41}, { 3164, 39}, { 3125, 39}, { 3086, 38}, { 3048, 36}, { 3012, 36}, -{ 2976, 35}, { 2941, 35}, { 2906, 33}, { 2873, 33}, { 2840, 32}, { 2808, 31}, { 2777, 30}, { 2747, 30}, -{ 2717, 29}, { 2688, 29}, { 2659, 28}, { 2631, 27}, { 2604, 27}, { 2577, 26}, { 2551, 26}, { 2525, 25}, -{ 2500, 25}, { 2475, 25}, { 2450, 23}, { 2427, 24}, { 2403, 23}, { 2380, 22}, { 2358, 22}, { 2336, 22}, -{ 2314, 21}, { 2293, 21}, { 2272, 20}, { 2252, 20}, { 2232, 20}, { 2212, 20}, { 2192, 19}, { 2173, 18}, -{ 2155, 19}, { 2136, 18}, { 2118, 18}, { 2100, 17}, { 2083, 17}, { 2066, 17}, { 2049, 17}, { 2032, 16}, -{ 2016, 16}, { 2000, 16}, { 1984, 16}, { 1968, 15}, { 1953, 16}, { 1937, 14}, { 1923, 15}, { 1908, 15}, -{ 1893, 14}, { 1879, 14}, { 1865, 14}, { 1851, 13}, { 1838, 14}, { 1824, 13}, { 1811, 13}, { 1798, 13}, -{ 1785, 12}, { 1773, 13}, { 1760, 12}, { 1748, 12}, { 1736, 12}, { 1724, 12}, { 1712, 12}, { 1700, 11}, -{ 1689, 12}, { 1677, 11}, { 1666, 11}, { 1655, 11}, { 1644, 11}, { 1633, 10}, { 1623, 11}, { 1612, 10}, -{ 1602, 10}, { 1592, 10}, { 1582, 10}, { 1572, 10}, { 1562, 10}, { 1552, 9}, { 1543, 10}, { 1533, 9}, -{ 1524, 9}, { 1515, 9}, { 1506, 9}, { 1497, 9}, { 1488, 9}, { 1479, 9}, { 1470, 9}, { 1461, 8}, -{ 1453, 8}, { 1445, 9}, { 1436, 8}, { 1428, 8}, { 1420, 8}, { 1412, 8}, { 1404, 8}, { 1396, 8}, -{ 1388, 7}, { 1381, 8}, { 1373, 7}, { 1366, 8}, { 1358, 7}, { 1351, 7}, { 1344, 8}, { 1336, 7}, -{ 1329, 7}, { 1322, 7}, { 1315, 7}, { 1308, 6}, { 1302, 7}, { 1295, 7}, { 1288, 6}, { 1282, 7}, -{ 1275, 6}, { 1269, 7}, { 1262, 6}, { 1256, 6}, { 1250, 7}, { 1243, 6}, { 1237, 6}, { 1231, 6}, -{ 1225, 6}, { 1219, 6}, { 1213, 6}, { 1207, 6}, { 1201, 5}, { 1196, 6}, { 1190, 6}, { 1184, 5}, -{ 1179, 6}, { 1173, 5}, { 1168, 6}, { 1162, 5}, { 1157, 5}, { 1152, 6}, { 1146, 5}, { 1141, 5}, -{ 1136, 5}, { 1131, 5}, { 1126, 5}, { 1121, 5}, { 1116, 5}, { 1111, 5}, { 1106, 5}, { 1101, 5}, -{ 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, -{ 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, -{ 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, -{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3} -}; - -#endif +#ifndef SPEED_LOOKUPTABLE_H +#define SPEED_LOOKUPTABLE_H + +#include + +uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ +{ 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, +{ 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, +{ 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, +{ 323, 13}, { 310, 11}, { 299, 11}, { 288, 11}, { 277, 9}, { 268, 9}, { 259, 8}, { 251, 8}, +{ 243, 8}, { 235, 7}, { 228, 6}, { 222, 6}, { 216, 6}, { 210, 6}, { 204, 5}, { 199, 5}, +{ 194, 5}, { 189, 4}, { 185, 4}, { 181, 4}, { 177, 4}, { 173, 4}, { 169, 4}, { 165, 3}, +{ 162, 3}, { 159, 4}, { 155, 3}, { 152, 3}, { 149, 2}, { 147, 3}, { 144, 3}, { 141, 2}, +{ 139, 3}, { 136, 2}, { 134, 2}, { 132, 3}, { 129, 2}, { 127, 2}, { 125, 2}, { 123, 2}, +{ 121, 2}, { 119, 1}, { 118, 2}, { 116, 2}, { 114, 1}, { 113, 2}, { 111, 2}, { 109, 1}, +{ 108, 2}, { 106, 1}, { 105, 2}, { 103, 1}, { 102, 1}, { 101, 1}, { 100, 2}, { 98, 1}, +{ 97, 1}, { 96, 1}, { 95, 2}, { 93, 1}, { 92, 1}, { 91, 1}, { 90, 1}, { 89, 1}, +{ 88, 1}, { 87, 1}, { 86, 1}, { 85, 1}, { 84, 1}, { 83, 0}, { 83, 1}, { 82, 1}, +{ 81, 1}, { 80, 1}, { 79, 1}, { 78, 0}, { 78, 1}, { 77, 1}, { 76, 1}, { 75, 0}, +{ 75, 1}, { 74, 1}, { 73, 1}, { 72, 0}, { 72, 1}, { 71, 1}, { 70, 0}, { 70, 1}, +{ 69, 0}, { 69, 1}, { 68, 1}, { 67, 0}, { 67, 1}, { 66, 0}, { 66, 1}, { 65, 0}, +{ 65, 1}, { 64, 1}, { 63, 0}, { 63, 1}, { 62, 0}, { 62, 1}, { 61, 0}, { 61, 1}, +{ 60, 0}, { 60, 0}, { 60, 1}, { 59, 0}, { 59, 1}, { 58, 0}, { 58, 1}, { 57, 0}, +{ 57, 1}, { 56, 0}, { 56, 0}, { 56, 1}, { 55, 0}, { 55, 1}, { 54, 0}, { 54, 0}, +{ 54, 1}, { 53, 0}, { 53, 0}, { 53, 1}, { 52, 0}, { 52, 0}, { 52, 1}, { 51, 0}, +{ 51, 0}, { 51, 1}, { 50, 0}, { 50, 0}, { 50, 1}, { 49, 0}, { 49, 0}, { 49, 1}, +{ 48, 0}, { 48, 0}, { 48, 1}, { 47, 0}, { 47, 0}, { 47, 0}, { 47, 1}, { 46, 0}, +{ 46, 0}, { 46, 1}, { 45, 0}, { 45, 0}, { 45, 0}, { 45, 1}, { 44, 0}, { 44, 0}, +{ 44, 0}, { 44, 1}, { 43, 0}, { 43, 0}, { 43, 0}, { 43, 1}, { 42, 0}, { 42, 0}, +{ 42, 0}, { 42, 1}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 1}, { 40, 0}, +{ 40, 0}, { 40, 0}, { 40, 0}, { 40, 1}, { 39, 0}, { 39, 0}, { 39, 0}, { 39, 0}, +{ 39, 1}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 1}, { 37, 0}, { 37, 0}, +{ 37, 0}, { 37, 0}, { 37, 0}, { 37, 1}, { 36, 0}, { 36, 0}, { 36, 0}, { 36, 0}, +{ 36, 1}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 1}, +{ 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, +{ 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, +{ 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, +{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} +}; +uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ +{ 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, +{ 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, +{ 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, +{ 8928, 308}, { 8620, 287}, { 8333, 269}, { 8064, 252}, { 7812, 237}, { 7575, 223}, { 7352, 210}, { 7142, 198}, +{ 6944, 188}, { 6756, 178}, { 6578, 168}, { 6410, 160}, { 6250, 153}, { 6097, 145}, { 5952, 139}, { 5813, 132}, +{ 5681, 126}, { 5555, 121}, { 5434, 115}, { 5319, 111}, { 5208, 106}, { 5102, 102}, { 5000, 99}, { 4901, 94}, +{ 4807, 91}, { 4716, 87}, { 4629, 84}, { 4545, 81}, { 4464, 79}, { 4385, 75}, { 4310, 73}, { 4237, 71}, +{ 4166, 68}, { 4098, 66}, { 4032, 64}, { 3968, 62}, { 3906, 60}, { 3846, 59}, { 3787, 56}, { 3731, 55}, +{ 3676, 53}, { 3623, 52}, { 3571, 50}, { 3521, 49}, { 3472, 48}, { 3424, 46}, { 3378, 45}, { 3333, 44}, +{ 3289, 43}, { 3246, 41}, { 3205, 41}, { 3164, 39}, { 3125, 39}, { 3086, 38}, { 3048, 36}, { 3012, 36}, +{ 2976, 35}, { 2941, 35}, { 2906, 33}, { 2873, 33}, { 2840, 32}, { 2808, 31}, { 2777, 30}, { 2747, 30}, +{ 2717, 29}, { 2688, 29}, { 2659, 28}, { 2631, 27}, { 2604, 27}, { 2577, 26}, { 2551, 26}, { 2525, 25}, +{ 2500, 25}, { 2475, 25}, { 2450, 23}, { 2427, 24}, { 2403, 23}, { 2380, 22}, { 2358, 22}, { 2336, 22}, +{ 2314, 21}, { 2293, 21}, { 2272, 20}, { 2252, 20}, { 2232, 20}, { 2212, 20}, { 2192, 19}, { 2173, 18}, +{ 2155, 19}, { 2136, 18}, { 2118, 18}, { 2100, 17}, { 2083, 17}, { 2066, 17}, { 2049, 17}, { 2032, 16}, +{ 2016, 16}, { 2000, 16}, { 1984, 16}, { 1968, 15}, { 1953, 16}, { 1937, 14}, { 1923, 15}, { 1908, 15}, +{ 1893, 14}, { 1879, 14}, { 1865, 14}, { 1851, 13}, { 1838, 14}, { 1824, 13}, { 1811, 13}, { 1798, 13}, +{ 1785, 12}, { 1773, 13}, { 1760, 12}, { 1748, 12}, { 1736, 12}, { 1724, 12}, { 1712, 12}, { 1700, 11}, +{ 1689, 12}, { 1677, 11}, { 1666, 11}, { 1655, 11}, { 1644, 11}, { 1633, 10}, { 1623, 11}, { 1612, 10}, +{ 1602, 10}, { 1592, 10}, { 1582, 10}, { 1572, 10}, { 1562, 10}, { 1552, 9}, { 1543, 10}, { 1533, 9}, +{ 1524, 9}, { 1515, 9}, { 1506, 9}, { 1497, 9}, { 1488, 9}, { 1479, 9}, { 1470, 9}, { 1461, 8}, +{ 1453, 8}, { 1445, 9}, { 1436, 8}, { 1428, 8}, { 1420, 8}, { 1412, 8}, { 1404, 8}, { 1396, 8}, +{ 1388, 7}, { 1381, 8}, { 1373, 7}, { 1366, 8}, { 1358, 7}, { 1351, 7}, { 1344, 8}, { 1336, 7}, +{ 1329, 7}, { 1322, 7}, { 1315, 7}, { 1308, 6}, { 1302, 7}, { 1295, 7}, { 1288, 6}, { 1282, 7}, +{ 1275, 6}, { 1269, 7}, { 1262, 6}, { 1256, 6}, { 1250, 7}, { 1243, 6}, { 1237, 6}, { 1231, 6}, +{ 1225, 6}, { 1219, 6}, { 1213, 6}, { 1207, 6}, { 1201, 5}, { 1196, 6}, { 1190, 6}, { 1184, 5}, +{ 1179, 6}, { 1173, 5}, { 1168, 6}, { 1162, 5}, { 1157, 5}, { 1152, 6}, { 1146, 5}, { 1141, 5}, +{ 1136, 5}, { 1131, 5}, { 1126, 5}, { 1121, 5}, { 1116, 5}, { 1111, 5}, { 1106, 5}, { 1101, 5}, +{ 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, +{ 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, +{ 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, +{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3} +}; + +#endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 15f143349..f4bd1289e 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -1,592 +1,592 @@ -/* - stepper.c - stepper motor driver: executes motion plans using stepper motors - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith - and Philipp Tiefenbacher. */ - -#include "stepper.h" -#include "Configuration.h" -#include "Marlin.h" -#include "planner.h" -#include "pins.h" -#include "fastio.h" -#include "temperature.h" -#include "ultralcd.h" - -#include "speed_lookuptable.h" - -// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. -// for debugging purposes only, should be disabled by default -#ifdef DEBUG_STEPS -volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; -volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; -#endif - - -// intRes = intIn1 * intIn2 >> 16 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 24 bit result -#define MultiU16X8toH16(intRes, charIn1, intIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %A1, %A2 \n\t" \ -"add %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r0 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (charIn1), \ -"d" (intIn2) \ -: \ -"r26" \ -) - -// intRes = longIn1 * longIn2 >> 24 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 48bit result -#define MultiU24X24toH16(intRes, longIn1, longIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"mov r27, r1 \n\t" \ -"mul %B1, %C2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %C1, %C2 \n\t" \ -"add %B0, r0 \n\t" \ -"mul %C1, %B2 \n\t" \ -"add %A0, r0 \n\t" \ -"adc %B0, r1 \n\t" \ -"mul %A1, %C2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %B2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %C1, %A2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %A2 \n\t" \ -"add r27, r1 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r27 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (longIn1), \ -"d" (longIn2) \ -: \ -"r26" , "r27" \ -) - -// Some useful constants - -#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< -// -// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates -// first block->accelerate_until step_events_completed, then keeps going at constant speed until -// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. -// The slope of acceleration is calculated with the leib ramp alghorithm. - -void st_wake_up() { - // TCNT1 = 0; - ENABLE_STEPPER_DRIVER_INTERRUPT(); -} - -inline unsigned short calc_timer(unsigned short step_rate) { - unsigned short timer; - if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; - - if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times - step_rate = step_rate >> 2; - step_loops = 4; - } - else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times - step_rate = step_rate >> 1; - step_loops = 2; - } - else { - step_loops = 1; - } - - if(step_rate < 32) step_rate = 32; - step_rate -= 32; // Correct for minimal speed - if(step_rate >= (8*256)){ // higher step rate - unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; - unsigned char tmp_step_rate = (step_rate & 0x00ff); - unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); - MultiU16X8toH16(timer, tmp_step_rate, gain); - timer = (unsigned short)pgm_read_word_near(table_address) - timer; - } - else { // lower step rates - unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; - table_address += ((step_rate)>>1) & 0xfffc; - timer = (unsigned short)pgm_read_word_near(table_address); - timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); - } - if(timer < 100) timer = 100; - return timer; -} - -// Initializes the trapezoid generator from the current block. Called whenever a new -// block begins. -inline void trapezoid_generator_reset() { -#ifdef ADVANCE - advance = current_block->initial_advance; - final_advance = current_block->final_advance; -#endif - deceleration_time = 0; - // advance_rate = current_block->advance_rate; - // step_rate to timer interval - acc_step_rate = current_block->initial_rate; - acceleration_time = calc_timer(acc_step_rate); - OCR1A = acceleration_time; -} - -// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. -// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. -ISR(TIMER1_COMPA_vect) -{ - if(busy){ Serial.print(*(unsigned short *)OCR1A); Serial.println(" BUSY"); - return; - } // The busy-flag is used to avoid reentering this interrupt - - busy = true; - sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) - - // If there is no current block, attempt to pop one from the buffer - if (current_block == NULL) { - // Anything in the buffer? - current_block = plan_get_current_block(); - if (current_block != NULL) { - trapezoid_generator_reset(); - counter_x = -(current_block->step_event_count >> 1); - counter_y = counter_x; - counter_z = counter_x; - counter_e = counter_x; - step_events_completed = 0; - #ifdef ADVANCE - e_steps = 0; - #endif - } - else { -// DISABLE_STEPPER_DRIVER_INTERRUPT(); - } - } - - if (current_block != NULL) { - // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt - out_bits = current_block->direction_bits; - -#ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; -#endif //ADVANCE - - // Set direction en check limit switches -if ((out_bits & (1< -1 - if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } -#endif - } - else { // +direction - WRITE(X_DIR_PIN,!INVERT_X_DIR); - #ifdef DEBUG_STEPS - count_direction[X_AXIS]=1; - #endif -#if X_MAX_PIN > -1 - if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ - step_events_completed = current_block->step_event_count; - } -#endif - } - - if ((out_bits & (1< -1 - if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } -#endif - } - else { // +direction - WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - #ifdef DEBUG_STEPS - count_direction[Y_AXIS]=1; - #endif -#if Y_MAX_PIN > -1 - if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ - step_events_completed = current_block->step_event_count; - } -#endif - } - - if ((out_bits & (1< -1 - if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } -#endif - } - else { // +direction - WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - #ifdef DEBUG_STEPS - count_direction[Z_AXIS]=1; - #endif -#if Z_MAX_PIN > -1 - if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ - step_events_completed = current_block->step_event_count; - } -#endif - } - -#ifndef ADVANCE - if ((out_bits & (1<steps_x; - if (counter_x > 0) { - WRITE(X_STEP_PIN, HIGH); - counter_x -= current_block->step_event_count; - WRITE(X_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[X_AXIS]+=count_direction[X_AXIS]; - #endif - } - - counter_y += current_block->steps_y; - if (counter_y > 0) { - WRITE(Y_STEP_PIN, HIGH); - counter_y -= current_block->step_event_count; - WRITE(Y_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - #endif - } - - counter_z += current_block->steps_z; - if (counter_z > 0) { - WRITE(Z_STEP_PIN, HIGH); - counter_z -= current_block->step_event_count; - WRITE(Z_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Z_AXIS]+=count_direction[Z_AXIS]; - #endif - } - -#ifndef ADVANCE - counter_e += current_block->steps_e; - if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); - counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); - } -#endif //!ADVANCE - step_events_completed += 1; - if(step_events_completed >= current_block->step_event_count) break; - } - // Calculare new timer value - unsigned short timer; - unsigned short step_rate; - if (step_events_completed <= current_block->accelerate_until) { - MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); - acc_step_rate += current_block->initial_rate; - - // upper limit - if(acc_step_rate > current_block->nominal_rate) - acc_step_rate = current_block->nominal_rate; - - // step_rate to timer interval - timer = calc_timer(acc_step_rate); -#ifdef ADVANCE - advance += advance_rate; -#endif - acceleration_time += timer; - OCR1A = timer; - } - else if (step_events_completed > current_block->decelerate_after) { - MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); - - if(step_rate > acc_step_rate) { // Check step_rate stays positive - step_rate = current_block->final_rate; - } - else { - step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. - } - - // lower limit - if(step_rate < current_block->final_rate) - step_rate = current_block->final_rate; - - // step_rate to timer interval - timer = calc_timer(step_rate); -#ifdef ADVANCE - advance -= advance_rate; - if(advance < final_advance) - advance = final_advance; -#endif //ADVANCE - deceleration_time += timer; - OCR1A = timer; - } - // If current block is finished, reset pointer - if (step_events_completed >= current_block->step_event_count) { - current_block = NULL; - plan_discard_current_block(); - } - } - cli(); // disable interrupts - busy=false; -} - -#ifdef ADVANCE - -unsigned char old_OCR0A; -// Timer interrupt for E. e_steps is set in the main routine; -// Timer 0 is shared with millies -ISR(TIMER0_COMPA_vect) -{ - // Critical section needed because Timer 1 interrupt has higher priority. - // The pin set functions are placed on trategic position to comply with the stepper driver timing. - WRITE(E_STEP_PIN, LOW); - // Set E direction (Depends on E direction + advance) - if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); - e_steps++; - WRITE(E_STEP_PIN, HIGH); - } - if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); - } - old_OCR0A += 25; // 10kHz interrupt - OCR0A = old_OCR0A; -} -#endif // ADVANCE - -void st_init() -{ - //Initialize Dir Pins -#if X_DIR_PIN > -1 - SET_OUTPUT(X_DIR_PIN); -#endif -#if Y_DIR_PIN > -1 - SET_OUTPUT(Y_DIR_PIN); -#endif -#if Z_DIR_PIN > -1 - SET_OUTPUT(Z_DIR_PIN); -#endif -#if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); -#endif - - //Initialize Enable Pins - steppers default to disabled. - -#if (X_ENABLE_PIN > -1) - SET_OUTPUT(X_ENABLE_PIN); - if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); -#endif -#if (Y_ENABLE_PIN > -1) - SET_OUTPUT(Y_ENABLE_PIN); - if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); -#endif -#if (Z_ENABLE_PIN > -1) - SET_OUTPUT(Z_ENABLE_PIN); - if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); -#endif -#if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); -#endif - - //endstops and pullups -#ifdef ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - WRITE(X_MIN_PIN,HIGH); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - WRITE(X_MAX_PIN,HIGH); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - WRITE(Y_MIN_PIN,HIGH); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - WRITE(Y_MAX_PIN,HIGH); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - WRITE(Z_MIN_PIN,HIGH); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - WRITE(Z_MAX_PIN,HIGH); -#endif -#else //ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); -#endif -#endif //ENDSTOPPULLUPS - - - //Initialize Step Pins -#if (X_STEP_PIN > -1) - SET_OUTPUT(X_STEP_PIN); -#endif -#if (Y_STEP_PIN > -1) - SET_OUTPUT(Y_STEP_PIN); -#endif -#if (Z_STEP_PIN > -1) - SET_OUTPUT(Z_STEP_PIN); -#endif -#if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); -#endif - - // waveform generation = 0100 = CTC - TCCR1B &= ~(1<. +*/ + +/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith + and Philipp Tiefenbacher. */ + +#include "stepper.h" +#include "Configuration.h" +#include "Marlin.h" +#include "planner.h" +#include "pins.h" +#include "fastio.h" +#include "temperature.h" +#include "ultralcd.h" + +#include "speed_lookuptable.h" + +// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. +// for debugging purposes only, should be disabled by default +#ifdef DEBUG_STEPS +volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; +volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; +#endif + + +// intRes = intIn1 * intIn2 >> 16 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 24 bit result +#define MultiU16X8toH16(intRes, charIn1, intIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %A1, %A2 \n\t" \ +"add %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r0 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (charIn1), \ +"d" (intIn2) \ +: \ +"r26" \ +) + +// intRes = longIn1 * longIn2 >> 24 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 48bit result +#define MultiU24X24toH16(intRes, longIn1, longIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"mov r27, r1 \n\t" \ +"mul %B1, %C2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %C1, %C2 \n\t" \ +"add %B0, r0 \n\t" \ +"mul %C1, %B2 \n\t" \ +"add %A0, r0 \n\t" \ +"adc %B0, r1 \n\t" \ +"mul %A1, %C2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %B2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %C1, %A2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %A2 \n\t" \ +"add r27, r1 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r27 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (longIn1), \ +"d" (longIn2) \ +: \ +"r26" , "r27" \ +) + +// Some useful constants + +#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. +// The slope of acceleration is calculated with the leib ramp alghorithm. + +void st_wake_up() { + // TCNT1 = 0; + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + +inline unsigned short calc_timer(unsigned short step_rate) { + unsigned short timer; + if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; + + if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times + step_rate = step_rate >> 2; + step_loops = 4; + } + else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times + step_rate = step_rate >> 1; + step_loops = 2; + } + else { + step_loops = 1; + } + + if(step_rate < 32) step_rate = 32; + step_rate -= 32; // Correct for minimal speed + if(step_rate >= (8*256)){ // higher step rate + unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; + unsigned char tmp_step_rate = (step_rate & 0x00ff); + unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); + MultiU16X8toH16(timer, tmp_step_rate, gain); + timer = (unsigned short)pgm_read_word_near(table_address) - timer; + } + else { // lower step rates + unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; + table_address += ((step_rate)>>1) & 0xfffc; + timer = (unsigned short)pgm_read_word_near(table_address); + timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); + } + if(timer < 100) timer = 100; + return timer; +} + +// Initializes the trapezoid generator from the current block. Called whenever a new +// block begins. +inline void trapezoid_generator_reset() { +#ifdef ADVANCE + advance = current_block->initial_advance; + final_advance = current_block->final_advance; +#endif + deceleration_time = 0; + // advance_rate = current_block->advance_rate; + // step_rate to timer interval + acc_step_rate = current_block->initial_rate; + acceleration_time = calc_timer(acc_step_rate); + OCR1A = acceleration_time; +} + +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +ISR(TIMER1_COMPA_vect) +{ + if(busy){ Serial.print(*(unsigned short *)OCR1A); Serial.println(" BUSY"); + return; + } // The busy-flag is used to avoid reentering this interrupt + + busy = true; + sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) + + // If there is no current block, attempt to pop one from the buffer + if (current_block == NULL) { + // Anything in the buffer? + current_block = plan_get_current_block(); + if (current_block != NULL) { + trapezoid_generator_reset(); + counter_x = -(current_block->step_event_count >> 1); + counter_y = counter_x; + counter_z = counter_x; + counter_e = counter_x; + step_events_completed = 0; + #ifdef ADVANCE + e_steps = 0; + #endif + } + else { +// DISABLE_STEPPER_DRIVER_INTERRUPT(); + } + } + + if (current_block != NULL) { + // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt + out_bits = current_block->direction_bits; + +#ifdef ADVANCE + // Calculate E early. + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; +#endif //ADVANCE + + // Set direction en check limit switches +if ((out_bits & (1< -1 + if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } +#endif + } + else { // +direction + WRITE(X_DIR_PIN,!INVERT_X_DIR); + #ifdef DEBUG_STEPS + count_direction[X_AXIS]=1; + #endif +#if X_MAX_PIN > -1 + if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ + step_events_completed = current_block->step_event_count; + } +#endif + } + + if ((out_bits & (1< -1 + if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } +#endif + } + else { // +direction + WRITE(Y_DIR_PIN,!INVERT_Y_DIR); + #ifdef DEBUG_STEPS + count_direction[Y_AXIS]=1; + #endif +#if Y_MAX_PIN > -1 + if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ + step_events_completed = current_block->step_event_count; + } +#endif + } + + if ((out_bits & (1< -1 + if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } +#endif + } + else { // +direction + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + #ifdef DEBUG_STEPS + count_direction[Z_AXIS]=1; + #endif +#if Z_MAX_PIN > -1 + if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ + step_events_completed = current_block->step_event_count; + } +#endif + } + +#ifndef ADVANCE + if ((out_bits & (1<steps_x; + if (counter_x > 0) { + WRITE(X_STEP_PIN, HIGH); + counter_x -= current_block->step_event_count; + WRITE(X_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[X_AXIS]+=count_direction[X_AXIS]; + #endif + } + + counter_y += current_block->steps_y; + if (counter_y > 0) { + WRITE(Y_STEP_PIN, HIGH); + counter_y -= current_block->step_event_count; + WRITE(Y_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Y_AXIS]+=count_direction[Y_AXIS]; + #endif + } + + counter_z += current_block->steps_z; + if (counter_z > 0) { + WRITE(Z_STEP_PIN, HIGH); + counter_z -= current_block->step_event_count; + WRITE(Z_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Z_AXIS]+=count_direction[Z_AXIS]; + #endif + } + +#ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } +#endif //!ADVANCE + step_events_completed += 1; + if(step_events_completed >= current_block->step_event_count) break; + } + // Calculare new timer value + unsigned short timer; + unsigned short step_rate; + if (step_events_completed <= current_block->accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); + acc_step_rate += current_block->initial_rate; + + // upper limit + if(acc_step_rate > current_block->nominal_rate) + acc_step_rate = current_block->nominal_rate; + + // step_rate to timer interval + timer = calc_timer(acc_step_rate); +#ifdef ADVANCE + advance += advance_rate; +#endif + acceleration_time += timer; + OCR1A = timer; + } + else if (step_events_completed > current_block->decelerate_after) { + MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); + + if(step_rate > acc_step_rate) { // Check step_rate stays positive + step_rate = current_block->final_rate; + } + else { + step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. + } + + // lower limit + if(step_rate < current_block->final_rate) + step_rate = current_block->final_rate; + + // step_rate to timer interval + timer = calc_timer(step_rate); +#ifdef ADVANCE + advance -= advance_rate; + if(advance < final_advance) + advance = final_advance; +#endif //ADVANCE + deceleration_time += timer; + OCR1A = timer; + } + // If current block is finished, reset pointer + if (step_events_completed >= current_block->step_event_count) { + current_block = NULL; + plan_discard_current_block(); + } + } + cli(); // disable interrupts + busy=false; +} + +#ifdef ADVANCE + +unsigned char old_OCR0A; +// Timer interrupt for E. e_steps is set in the main routine; +// Timer 0 is shared with millies +ISR(TIMER0_COMPA_vect) +{ + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; +} +#endif // ADVANCE + +void st_init() +{ + //Initialize Dir Pins +#if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); +#endif +#if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); +#endif +#if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); +#endif +#if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); +#endif + + //Initialize Enable Pins - steppers default to disabled. + +#if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); +#endif +#if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); +#endif +#if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); +#endif +#if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); +#endif + + //endstops and pullups +#ifdef ENDSTOPPULLUPS +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); +#endif +#else //ENDSTOPPULLUPS +#if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); +#endif +#if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); +#endif +#if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); +#endif +#if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); +#endif +#if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); +#endif +#if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); +#endif +#endif //ENDSTOPPULLUPS + + + //Initialize Step Pins +#if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); +#endif +#if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); +#endif +#if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); +#endif +#if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); +#endif + + // waveform generation = 0100 = CTC + TCCR1B &= ~(1< - -#define STREAMING_LIBRARY_VERSION 4 - -// Generic template -template -inline Print &operator <<(Print &stream, T arg) -{ stream.print(arg); return stream; } - -struct _BASED -{ - long val; - int base; - _BASED(long v, int b): val(v), base(b) - {} -}; - -#define _HEX(a) _BASED(a, HEX) -#define _DEC(a) _BASED(a, DEC) -#define _OCT(a) _BASED(a, OCT) -#define _BIN(a) _BASED(a, BIN) -#define _BYTE(a) _BASED(a, BYTE) - -// Specialization for class _BASED -// Thanks to Arduino forum user Ben Combee who suggested this -// clever technique to allow for expressions like -// Serial << _HEX(a); - -inline Print &operator <<(Print &obj, const _BASED &arg) -{ obj.print(arg.val, arg.base); return obj; } - -#if ARDUINO >= 18 -// Specialization for class _FLOAT -// Thanks to Michael Margolis for suggesting a way -// to accommodate Arduino 0018's floating point precision -// feature like this: -// Serial << _FLOAT(gps_latitude, 6); // 6 digits of precision - -struct _FLOAT -{ - float val; - int digits; - _FLOAT(double v, int d): val(v), digits(d) - {} -}; - -inline Print &operator <<(Print &obj, const _FLOAT &arg) -{ obj.print(arg.val, arg.digits); return obj; } -#endif - -// Specialization for enum _EndLineCode -// Thanks to Arduino forum user Paul V. who suggested this -// clever technique to allow for expressions like -// Serial << "Hello!" << endl; - -enum _EndLineCode { endl }; - -inline Print &operator <<(Print &obj, _EndLineCode arg) -{ obj.println(); return obj; } - -#endif - +/* +Streaming.h - Arduino library for supporting the << streaming operator +Copyright (c) 2010 Mikal Hart. All rights reserved. + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2.1 of the License, or (at your option) any later version. + +This library 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 +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef ARDUINO_STREAMING +#define ARDUINO_STREAMING + +//#include + +#define STREAMING_LIBRARY_VERSION 4 + +// Generic template +template +inline Print &operator <<(Print &stream, T arg) +{ stream.print(arg); return stream; } + +struct _BASED +{ + long val; + int base; + _BASED(long v, int b): val(v), base(b) + {} +}; + +#define _HEX(a) _BASED(a, HEX) +#define _DEC(a) _BASED(a, DEC) +#define _OCT(a) _BASED(a, OCT) +#define _BIN(a) _BASED(a, BIN) +#define _BYTE(a) _BASED(a, BYTE) + +// Specialization for class _BASED +// Thanks to Arduino forum user Ben Combee who suggested this +// clever technique to allow for expressions like +// Serial << _HEX(a); + +inline Print &operator <<(Print &obj, const _BASED &arg) +{ obj.print(arg.val, arg.base); return obj; } + +#if ARDUINO >= 18 +// Specialization for class _FLOAT +// Thanks to Michael Margolis for suggesting a way +// to accommodate Arduino 0018's floating point precision +// feature like this: +// Serial << _FLOAT(gps_latitude, 6); // 6 digits of precision + +struct _FLOAT +{ + float val; + int digits; + _FLOAT(double v, int d): val(v), digits(d) + {} +}; + +inline Print &operator <<(Print &obj, const _FLOAT &arg) +{ obj.print(arg.val, arg.digits); return obj; } +#endif + +// Specialization for enum _EndLineCode +// Thanks to Arduino forum user Paul V. who suggested this +// clever technique to allow for expressions like +// Serial << "Hello!" << endl; + +enum _EndLineCode { endl }; + +inline Print &operator <<(Print &obj, _EndLineCode arg) +{ obj.println(); return obj; } + +#endif + diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 5aaf6fd97..ebc772e1d 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -1,483 +1,483 @@ -/* - temperature.c - temperature control - Part of Marlin - - 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 . - */ - -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - This firmware is optimized for gen6 electronics. - */ - -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "streaming.h" -#include "temperature.h" - -int target_bed_raw = 0; -int current_bed_raw = 0; - -int target_raw[3] = {0, 0, 0}; -int current_raw[3] = {0, 0, 0}; -unsigned char temp_meas_ready = false; - -unsigned long previous_millis_heater, previous_millis_bed_heater; - -#ifdef PIDTEMP - double temp_iState = 0; - double temp_dState = 0; - double pTerm; - double iTerm; - double dTerm; - //int output; - double pid_error; - double temp_iState_min; - double temp_iState_max; - double pid_setpoint = 0.0; - double pid_input; - double pid_output; - bool pid_reset; - float HeaterPower; - - float Kp=DEFAULT_Kp; - float Ki=DEFAULT_Ki; - float Kd=DEFAULT_Kd; - float Kc=DEFAULT_Kc; -#endif //PIDTEMP - -#ifdef MINTEMP -int minttemp = temp2analog(MINTEMP); -#endif //MINTEMP -#ifdef MAXTEMP -int maxttemp = temp2analog(MAXTEMP); -#endif //MAXTEMP - -#ifdef BED_MINTEMP -int bed_minttemp = temp2analog(BED_MINTEMP); -#endif //BED_MINTEMP -#ifdef BED_MAXTEMP -int bed_maxttemp = temp2analog(BED_MAXTEMP); -#endif //BED_MAXTEMP - -void manage_heater() -{ -#ifdef USE_WATCHDOG - wd_reset(); -#endif - - float pid_input; - float pid_output; +/* + temperature.c - temperature control + Part of Marlin + + 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + + This firmware is optimized for gen6 electronics. + */ + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "temperature.h" + +int target_bed_raw = 0; +int current_bed_raw = 0; + +int target_raw[3] = {0, 0, 0}; +int current_raw[3] = {0, 0, 0}; +unsigned char temp_meas_ready = false; + +unsigned long previous_millis_heater, previous_millis_bed_heater; + +#ifdef PIDTEMP + double temp_iState = 0; + double temp_dState = 0; + double pTerm; + double iTerm; + double dTerm; + //int output; + double pid_error; + double temp_iState_min; + double temp_iState_max; + double pid_setpoint = 0.0; + double pid_input; + double pid_output; + bool pid_reset; + float HeaterPower; + + float Kp=DEFAULT_Kp; + float Ki=DEFAULT_Ki; + float Kd=DEFAULT_Kd; + float Kc=DEFAULT_Kc; +#endif //PIDTEMP + +#ifdef MINTEMP +int minttemp = temp2analog(MINTEMP); +#endif //MINTEMP +#ifdef MAXTEMP +int maxttemp = temp2analog(MAXTEMP); +#endif //MAXTEMP + +#ifdef BED_MINTEMP +int bed_minttemp = temp2analog(BED_MINTEMP); +#endif //BED_MINTEMP +#ifdef BED_MAXTEMP +int bed_maxttemp = temp2analog(BED_MAXTEMP); +#endif //BED_MAXTEMP + +void manage_heater() +{ +#ifdef USE_WATCHDOG + wd_reset(); +#endif + + float pid_input; + float pid_output; if(temp_meas_ready != true) //better readability return; - -CRITICAL_SECTION_START; - temp_meas_ready = false; -CRITICAL_SECTION_END; - -#ifdef PIDTEMP + +CRITICAL_SECTION_START; + temp_meas_ready = false; +CRITICAL_SECTION_END; + +#ifdef PIDTEMP pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND]); - -#ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ - pid_output = PID_MAX; - pid_reset = true; - } - else if(pid_error < -10) { - pid_output = 0; - pid_reset = true; - } - else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; - } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; + +#ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; //K1 defined in Configuration.h in the PID settings - #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; #ifdef PID_ADD_EXTRUSION_RATE pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high #endif - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - } -#endif //PID_OPENLOOP -#ifdef PID_DEBUG - Serial.print(" Input "); - Serial.print(pid_input); - Serial.print(" Output "); - Serial.print(pid_output); - Serial.print(" pTerm "); - Serial.print(pTerm); - Serial.print(" iTerm "); - Serial.print(iTerm); - Serial.print(" dTerm "); - Serial.print(dTerm); - Serial.println(); -#endif //PID_DEBUG - analogWrite(HEATER_0_PIN, pid_output); -#endif //PIDTEMP - -#ifndef PIDTEMP - if(current_raw[0] >= target_raw[0]) - { - WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } -#endif - - if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) - return; - previous_millis_bed_heater = millis(); - - #if TEMP_1_PIN > -1 + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } +#endif //PID_OPENLOOP +#ifdef PID_DEBUG + Serial.print(" Input "); + Serial.print(pid_input); + Serial.print(" Output "); + Serial.print(pid_output); + Serial.print(" pTerm "); + Serial.print(pTerm); + Serial.print(" iTerm "); + Serial.print(iTerm); + Serial.print(" dTerm "); + Serial.print(dTerm); + Serial.println(); +#endif //PID_DEBUG + analogWrite(HEATER_0_PIN, pid_output); +#endif //PIDTEMP + +#ifndef PIDTEMP + if(current_raw[0] >= target_raw[0]) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } +#endif + + if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) + return; + previous_millis_bed_heater = millis(); + + #if TEMP_1_PIN > -1 if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) - { - WRITE(HEATER_1_PIN,LOW); - } - else - { - WRITE(HEATER_1_PIN,HIGH); - } - #endif - } - -// Takes hot end temperature value as input and returns corresponding raw value. -// For a thermistor, it uses the RepRap thermistor temp table. -// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. -// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -float temp2analog(int celsius) { - #ifdef HEATER_USES_THERMISTOR_1 - int raw = 0; - byte i; - - for (i=1; i raw) - { - celsius = temptable_1[i-1][1] + - (raw - temptable_1[i-1][0]) * - (temptable_1[i][1] - temptable_1[i-1][1]) / - (temptable_1[i][0] - temptable_1[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_1) celsius = temptable_1[i-1][1]; - - return celsius; - #elif defined HEATER_1_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -// Derived from RepRap FiveD extruder::getTemperature() -// For bed temperature measurement. -float analog2tempBed(int raw) { - #ifdef BED_USES_THERMISTOR - int celsius = 0; - byte i; - - raw = (1023 * OVERSAMPLENR) - raw; - - for (i=1; i raw) - { - celsius = bedtemptable[i-1][1] + - (raw - bedtemptable[i-1][0]) * - (bedtemptable[i][1] - bedtemptable[i-1][1]) / - (bedtemptable[i][0] - bedtemptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; - - return celsius; - - #elif defined BED_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -void tp_init() -{ -#if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); -#endif -#if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); -#endif -#if (HEATER_2_PIN > -1) - SET_OUTPUT(HEATER_2_PIN); -#endif - -#ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; -#endif //PIDTEMP - -// Set analog inputs - ADCSRA = 1< -1) - #if TEMP_0_PIN < 8 - DIDR0 = 1 << TEMP_0_PIN; - #else - DIDR2 = 1<<(TEMP_0_PIN - 8); - ADCSRB = 1< -1) - raw_temp_0_value += ADC; - #endif - temp_state = 2; - break; - case 2: // Prepare TEMP_1 - #if (TEMP_1_PIN > -1) - #if TEMP_1_PIN < 7 - DIDR0 = 1< -1) - raw_temp_1_value += ADC; - #endif - temp_state = 4; - break; - case 4: // Prepare TEMP_2 - #if (TEMP_2_PIN > -1) - #if TEMP_2_PIN < 7 - DIDR0 = 1 << TEMP_2_PIN; - #else - DIDR2 = 1<<(TEMP_2_PIN - 8); - ADCSRB = 1< -1) - raw_temp_2_value += ADC; - #endif - temp_state = 0; - temp_count++; - break; - default: - Serial.println("!! Temp measurement error !!"); - break; - } - - if(temp_count >= 16) // 6 ms * 16 = 96ms. - { - #ifdef HEATER_1_USES_AD595 - current_raw[0] = raw_temp_0_value; - #else - current_raw[0] = 16383 - raw_temp_0_value; - #endif - - #ifdef HEATER_2_USES_AD595 - current_raw[2] = raw_temp_2_value; - #else - current_raw[2] = 16383 - raw_temp_2_value; - #endif - - #ifdef BED_USES_AD595 - current_raw[1] = raw_temp_1_value; - #else - current_raw[1] = 16383 - raw_temp_1_value; - #endif - - temp_meas_ready = true; - temp_count = 0; - raw_temp_0_value = 0; - raw_temp_1_value = 0; - raw_temp_2_value = 0; -#ifdef MAXTEMP - #if (HEATER_0_PIN > -1) + { + WRITE(HEATER_1_PIN,LOW); + } + else + { + WRITE(HEATER_1_PIN,HIGH); + } + #endif + } + +// Takes hot end temperature value as input and returns corresponding raw value. +// For a thermistor, it uses the RepRap thermistor temp table. +// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. +// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. +float temp2analog(int celsius) { + #ifdef HEATER_USES_THERMISTOR_1 + int raw = 0; + byte i; + + for (i=1; i raw) + { + celsius = temptable_1[i-1][1] + + (raw - temptable_1[i-1][0]) * + (temptable_1[i][1] - temptable_1[i-1][1]) / + (temptable_1[i][0] - temptable_1[i-1][0]); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == NUMTEMPS_HEATER_1) celsius = temptable_1[i-1][1]; + + return celsius; + #elif defined HEATER_1_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +// Derived from RepRap FiveD extruder::getTemperature() +// For bed temperature measurement. +float analog2tempBed(int raw) { + #ifdef BED_USES_THERMISTOR + int celsius = 0; + byte i; + + raw = (1023 * OVERSAMPLENR) - raw; + + for (i=1; i raw) + { + celsius = bedtemptable[i-1][1] + + (raw - bedtemptable[i-1][0]) * + (bedtemptable[i][1] - bedtemptable[i-1][1]) / + (bedtemptable[i][0] - bedtemptable[i-1][0]); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; + + return celsius; + + #elif defined BED_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +void tp_init() +{ +#if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); +#endif +#if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); +#endif +#if (HEATER_2_PIN > -1) + SET_OUTPUT(HEATER_2_PIN); +#endif + +#ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif //PIDTEMP + +// Set analog inputs + ADCSRA = 1< -1) + #if TEMP_0_PIN < 8 + DIDR0 = 1 << TEMP_0_PIN; + #else + DIDR2 = 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) + raw_temp_0_value += ADC; + #endif + temp_state = 2; + break; + case 2: // Prepare TEMP_1 + #if (TEMP_1_PIN > -1) + #if TEMP_1_PIN < 7 + DIDR0 = 1< -1) + raw_temp_1_value += ADC; + #endif + temp_state = 4; + break; + case 4: // Prepare TEMP_2 + #if (TEMP_2_PIN > -1) + #if TEMP_2_PIN < 7 + DIDR0 = 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) + raw_temp_2_value += ADC; + #endif + temp_state = 0; + temp_count++; + break; + default: + Serial.println("!! Temp measurement error !!"); + break; + } + + if(temp_count >= 16) // 6 ms * 16 = 96ms. + { + #ifdef HEATER_1_USES_AD595 + current_raw[0] = raw_temp_0_value; + #else + current_raw[0] = 16383 - raw_temp_0_value; + #endif + + #ifdef HEATER_2_USES_AD595 + current_raw[2] = raw_temp_2_value; + #else + current_raw[2] = 16383 - raw_temp_2_value; + #endif + + #ifdef BED_USES_AD595 + current_raw[1] = raw_temp_1_value; + #else + current_raw[1] = 16383 - raw_temp_1_value; + #endif + + temp_meas_ready = true; + temp_count = 0; + raw_temp_0_value = 0; + raw_temp_1_value = 0; + raw_temp_2_value = 0; +#ifdef MAXTEMP + #if (HEATER_0_PIN > -1) if(current_raw[TEMPSENSOR_HOTEND] >= maxttemp) { target_raw[TEMPSENSOR_HOTEND] = 0; - analogWrite(HEATER_0_PIN, 0); - Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); - } - #endif - #if (HEATER_2_PIN > -1) + analogWrite(HEATER_0_PIN, 0); + Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); + } + #endif + #if (HEATER_2_PIN > -1) if(current_raw[TEMPSENSOR_AUX] >= maxttemp) { target_raw[TEMPSENSOR_AUX] = 0; - analogWrite(HEATER_2_PIN, 0); - Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); - } - #endif -#endif //MAXTEMP -#ifdef MINTEMP - #if (HEATER_0_PIN > -1) + analogWrite(HEATER_2_PIN, 0); + Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); + } + #endif +#endif //MAXTEMP +#ifdef MINTEMP + #if (HEATER_0_PIN > -1) if(current_raw[TEMPSENSOR_HOTEND] <= minttemp) { target_raw[TEMPSENSOR_HOTEND] = 0; - analogWrite(HEATER_0_PIN, 0); - Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); - } - #endif - #if (HEATER_2_PIN > -1) + analogWrite(HEATER_0_PIN, 0); + Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); + } + #endif + #if (HEATER_2_PIN > -1) if(current_raw[TEMPSENSOR_AUX] <= minttemp) { target_raw[TEMPSENSOR_AUX] = 0; - analogWrite(HEATER_2_PIN, 0); - Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); - } - #endif -#endif //MAXTEMP -#ifdef BED_MINTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); - } - #endif -#endif -#ifdef BED_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); - } - #endif -#endif - } -} + analogWrite(HEATER_2_PIN, 0); + Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); + } + #endif +#endif //MAXTEMP +#ifdef BED_MINTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); + } + #endif +#endif +#ifdef BED_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); + } + #endif +#endif + } +} diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 6d43d7273..fcefa550f 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -1,410 +1,410 @@ -#ifndef THERMISTORTABLES_H_ -#define THERMISTORTABLES_H_ - -#define OVERSAMPLENR 16 - -#if (THERMISTORHEATER_1 == 1) || (THERMISTORHEATER_2 == 1) || (THERMISTORBED == 1) //100k bed thermistor - -#define NUMTEMPS_1 61 -const short temptable_1[NUMTEMPS_1][2] = { -{ 23*OVERSAMPLENR , 300 }, -{ 25*OVERSAMPLENR , 295 }, -{ 27*OVERSAMPLENR , 290 }, -{ 28*OVERSAMPLENR , 285 }, -{ 31*OVERSAMPLENR , 280 }, -{ 33*OVERSAMPLENR , 275 }, -{ 35*OVERSAMPLENR , 270 }, -{ 38*OVERSAMPLENR , 265 }, -{ 41*OVERSAMPLENR , 260 }, -{ 44*OVERSAMPLENR , 255 }, -{ 48*OVERSAMPLENR , 250 }, -{ 52*OVERSAMPLENR , 245 }, -{ 56*OVERSAMPLENR , 240 }, -{ 61*OVERSAMPLENR , 235 }, -{ 66*OVERSAMPLENR , 230 }, -{ 71*OVERSAMPLENR , 225 }, -{ 78*OVERSAMPLENR , 220 }, -{ 84*OVERSAMPLENR , 215 }, -{ 92*OVERSAMPLENR , 210 }, -{ 100*OVERSAMPLENR , 205 }, -{ 109*OVERSAMPLENR , 200 }, -{ 120*OVERSAMPLENR , 195 }, -{ 131*OVERSAMPLENR , 190 }, -{ 143*OVERSAMPLENR , 185 }, -{ 156*OVERSAMPLENR , 180 }, -{ 171*OVERSAMPLENR , 175 }, -{ 187*OVERSAMPLENR , 170 }, -{ 205*OVERSAMPLENR , 165 }, -{ 224*OVERSAMPLENR , 160 }, -{ 245*OVERSAMPLENR , 155 }, -{ 268*OVERSAMPLENR , 150 }, -{ 293*OVERSAMPLENR , 145 }, -{ 320*OVERSAMPLENR , 140 }, -{ 348*OVERSAMPLENR , 135 }, -{ 379*OVERSAMPLENR , 130 }, -{ 411*OVERSAMPLENR , 125 }, -{ 445*OVERSAMPLENR , 120 }, -{ 480*OVERSAMPLENR , 115 }, -{ 516*OVERSAMPLENR , 110 }, -{ 553*OVERSAMPLENR , 105 }, -{ 591*OVERSAMPLENR , 100 }, -{ 628*OVERSAMPLENR , 95 }, -{ 665*OVERSAMPLENR , 90 }, -{ 702*OVERSAMPLENR , 85 }, -{ 737*OVERSAMPLENR , 80 }, -{ 770*OVERSAMPLENR , 75 }, -{ 801*OVERSAMPLENR , 70 }, -{ 830*OVERSAMPLENR , 65 }, -{ 857*OVERSAMPLENR , 60 }, -{ 881*OVERSAMPLENR , 55 }, -{ 903*OVERSAMPLENR , 50 }, -{ 922*OVERSAMPLENR , 45 }, -{ 939*OVERSAMPLENR , 40 }, -{ 954*OVERSAMPLENR , 35 }, -{ 966*OVERSAMPLENR , 30 }, -{ 977*OVERSAMPLENR , 25 }, -{ 985*OVERSAMPLENR , 20 }, -{ 993*OVERSAMPLENR , 15 }, -{ 999*OVERSAMPLENR , 10 }, -{ 1004*OVERSAMPLENR , 5 }, -{ 1008*OVERSAMPLENR , 0 } //safety -}; -#endif -#if (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor -#define NUMTEMPS_2 21 -const short temptable_2[NUMTEMPS_2][2] = { - {1*OVERSAMPLENR, 848}, - {54*OVERSAMPLENR, 275}, - {107*OVERSAMPLENR, 228}, - {160*OVERSAMPLENR, 202}, - {213*OVERSAMPLENR, 185}, - {266*OVERSAMPLENR, 171}, - {319*OVERSAMPLENR, 160}, - {372*OVERSAMPLENR, 150}, - {425*OVERSAMPLENR, 141}, - {478*OVERSAMPLENR, 133}, - {531*OVERSAMPLENR, 125}, - {584*OVERSAMPLENR, 118}, - {637*OVERSAMPLENR, 110}, - {690*OVERSAMPLENR, 103}, - {743*OVERSAMPLENR, 95}, - {796*OVERSAMPLENR, 86}, - {849*OVERSAMPLENR, 77}, - {902*OVERSAMPLENR, 65}, - {955*OVERSAMPLENR, 49}, - {1008*OVERSAMPLENR, 17}, - {1020*OVERSAMPLENR, 0} //safety -}; - -#endif -#if (THERMISTORHEATER_1 == 3) || (THERMISTORHEATER_2 == 3) || (THERMISTORBED == 3) //mendel-parts -#define NUMTEMPS_3 28 -const short temptable_3[NUMTEMPS_3][2] = { - {1*OVERSAMPLENR,864}, - {21*OVERSAMPLENR,300}, - {25*OVERSAMPLENR,290}, - {29*OVERSAMPLENR,280}, - {33*OVERSAMPLENR,270}, - {39*OVERSAMPLENR,260}, - {46*OVERSAMPLENR,250}, - {54*OVERSAMPLENR,240}, - {64*OVERSAMPLENR,230}, - {75*OVERSAMPLENR,220}, - {90*OVERSAMPLENR,210}, - {107*OVERSAMPLENR,200}, - {128*OVERSAMPLENR,190}, - {154*OVERSAMPLENR,180}, - {184*OVERSAMPLENR,170}, - {221*OVERSAMPLENR,160}, - {265*OVERSAMPLENR,150}, - {316*OVERSAMPLENR,140}, - {375*OVERSAMPLENR,130}, - {441*OVERSAMPLENR,120}, - {513*OVERSAMPLENR,110}, - {588*OVERSAMPLENR,100}, - {734*OVERSAMPLENR,80}, - {856*OVERSAMPLENR,60}, - {938*OVERSAMPLENR,40}, - {986*OVERSAMPLENR,20}, - {1008*OVERSAMPLENR,0}, - {1018*OVERSAMPLENR,-20} - }; - -#endif -#if (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor - -#define NUMTEMPS_4 20 -short temptable_4[NUMTEMPS_4][2] = { - {1*OVERSAMPLENR, 430}, - {54*OVERSAMPLENR, 137}, - {107*OVERSAMPLENR, 107}, - {160*OVERSAMPLENR, 91}, - {213*OVERSAMPLENR, 80}, - {266*OVERSAMPLENR, 71}, - {319*OVERSAMPLENR, 64}, - {372*OVERSAMPLENR, 57}, - {425*OVERSAMPLENR, 51}, - {478*OVERSAMPLENR, 46}, - {531*OVERSAMPLENR, 41}, - {584*OVERSAMPLENR, 35}, - {637*OVERSAMPLENR, 30}, - {690*OVERSAMPLENR, 25}, - {743*OVERSAMPLENR, 20}, - {796*OVERSAMPLENR, 14}, - {849*OVERSAMPLENR, 7}, - {902*OVERSAMPLENR, 0}, - {955*OVERSAMPLENR, -11}, - {1008*OVERSAMPLENR, -35} -}; -#endif - -#if (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) - -#define NUMTEMPS_5 61 -const short temptable_5[NUMTEMPS_5][2] = { -{1*OVERSAMPLENR, 713}, -{18*OVERSAMPLENR, 316}, -{35*OVERSAMPLENR, 266}, -{52*OVERSAMPLENR, 239}, -{69*OVERSAMPLENR, 221}, -{86*OVERSAMPLENR, 208}, -{103*OVERSAMPLENR, 197}, -{120*OVERSAMPLENR, 188}, -{137*OVERSAMPLENR, 181}, -{154*OVERSAMPLENR, 174}, -{171*OVERSAMPLENR, 169}, -{188*OVERSAMPLENR, 163}, -{205*OVERSAMPLENR, 159}, -{222*OVERSAMPLENR, 154}, -{239*OVERSAMPLENR, 150}, -{256*OVERSAMPLENR, 147}, -{273*OVERSAMPLENR, 143}, -{290*OVERSAMPLENR, 140}, -{307*OVERSAMPLENR, 136}, -{324*OVERSAMPLENR, 133}, -{341*OVERSAMPLENR, 130}, -{358*OVERSAMPLENR, 128}, -{375*OVERSAMPLENR, 125}, -{392*OVERSAMPLENR, 122}, -{409*OVERSAMPLENR, 120}, -{426*OVERSAMPLENR, 117}, -{443*OVERSAMPLENR, 115}, -{460*OVERSAMPLENR, 112}, -{477*OVERSAMPLENR, 110}, -{494*OVERSAMPLENR, 108}, -{511*OVERSAMPLENR, 106}, -{528*OVERSAMPLENR, 103}, -{545*OVERSAMPLENR, 101}, -{562*OVERSAMPLENR, 99}, -{579*OVERSAMPLENR, 97}, -{596*OVERSAMPLENR, 95}, -{613*OVERSAMPLENR, 92}, -{630*OVERSAMPLENR, 90}, -{647*OVERSAMPLENR, 88}, -{664*OVERSAMPLENR, 86}, -{681*OVERSAMPLENR, 84}, -{698*OVERSAMPLENR, 81}, -{715*OVERSAMPLENR, 79}, -{732*OVERSAMPLENR, 77}, -{749*OVERSAMPLENR, 75}, -{766*OVERSAMPLENR, 72}, -{783*OVERSAMPLENR, 70}, -{800*OVERSAMPLENR, 67}, -{817*OVERSAMPLENR, 64}, -{834*OVERSAMPLENR, 61}, -{851*OVERSAMPLENR, 58}, -{868*OVERSAMPLENR, 55}, -{885*OVERSAMPLENR, 52}, -{902*OVERSAMPLENR, 48}, -{919*OVERSAMPLENR, 44}, -{936*OVERSAMPLENR, 40}, -{953*OVERSAMPLENR, 34}, -{970*OVERSAMPLENR, 28}, -{987*OVERSAMPLENR, 20}, -{1004*OVERSAMPLENR, 8}, -{1021*OVERSAMPLENR, 0} -}; -#endif - -#if (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor -#define NUMTEMPS_6 36 -const short temptable_6[NUMTEMPS_6][2] = { - {28*OVERSAMPLENR, 250}, - {31*OVERSAMPLENR, 245}, - {35*OVERSAMPLENR, 240}, - {39*OVERSAMPLENR, 235}, - {42*OVERSAMPLENR, 230}, - {44*OVERSAMPLENR, 225}, - {49*OVERSAMPLENR, 220}, - {53*OVERSAMPLENR, 215}, - {62*OVERSAMPLENR, 210}, - {73*OVERSAMPLENR, 205}, - {72*OVERSAMPLENR, 200}, - {94*OVERSAMPLENR, 190}, - {102*OVERSAMPLENR, 185}, - {116*OVERSAMPLENR, 170}, - {143*OVERSAMPLENR, 160}, - {183*OVERSAMPLENR, 150}, - {223*OVERSAMPLENR, 140}, - {270*OVERSAMPLENR, 130}, - {318*OVERSAMPLENR, 120}, - {383*OVERSAMPLENR, 110}, - {413*OVERSAMPLENR, 105}, - {439*OVERSAMPLENR, 100}, - {484*OVERSAMPLENR, 95}, - {513*OVERSAMPLENR, 90}, - {607*OVERSAMPLENR, 80}, - {664*OVERSAMPLENR, 70}, - {781*OVERSAMPLENR, 60}, - {810*OVERSAMPLENR, 55}, - {849*OVERSAMPLENR, 50}, - {914*OVERSAMPLENR, 45}, - {914*OVERSAMPLENR, 40}, - {935*OVERSAMPLENR, 35}, - {954*OVERSAMPLENR, 30}, - {970*OVERSAMPLENR, 25}, - {978*OVERSAMPLENR, 22}, - {1008*OVERSAMPLENR, 3} -}; -#endif - -#if (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 -#define NUMTEMPS_7 54 -const short temptable_7[NUMTEMPS_7][2] = { - {46*OVERSAMPLENR, 270}, - {50*OVERSAMPLENR, 265}, - {54*OVERSAMPLENR, 260}, - {58*OVERSAMPLENR, 255}, - {62*OVERSAMPLENR, 250}, - {67*OVERSAMPLENR, 245}, - {72*OVERSAMPLENR, 240}, - {79*OVERSAMPLENR, 235}, - {85*OVERSAMPLENR, 230}, - {91*OVERSAMPLENR, 225}, - {99*OVERSAMPLENR, 220}, - {107*OVERSAMPLENR, 215}, - {116*OVERSAMPLENR, 210}, - {126*OVERSAMPLENR, 205}, - {136*OVERSAMPLENR, 200}, - {149*OVERSAMPLENR, 195}, - {160*OVERSAMPLENR, 190}, - {175*OVERSAMPLENR, 185}, - {191*OVERSAMPLENR, 180}, - {209*OVERSAMPLENR, 175}, - {224*OVERSAMPLENR, 170}, - {246*OVERSAMPLENR, 165}, - {267*OVERSAMPLENR, 160}, - {293*OVERSAMPLENR, 155}, - {316*OVERSAMPLENR, 150}, - {340*OVERSAMPLENR, 145}, - {364*OVERSAMPLENR, 140}, - {396*OVERSAMPLENR, 135}, - {425*OVERSAMPLENR, 130}, - {460*OVERSAMPLENR, 125}, - {489*OVERSAMPLENR, 120}, - {526*OVERSAMPLENR, 115}, - {558*OVERSAMPLENR, 110}, - {591*OVERSAMPLENR, 105}, - {628*OVERSAMPLENR, 100}, - {660*OVERSAMPLENR, 95}, - {696*OVERSAMPLENR, 90}, - {733*OVERSAMPLENR, 85}, - {761*OVERSAMPLENR, 80}, - {794*OVERSAMPLENR, 75}, - {819*OVERSAMPLENR, 70}, - {847*OVERSAMPLENR, 65}, - {870*OVERSAMPLENR, 60}, - {892*OVERSAMPLENR, 55}, - {911*OVERSAMPLENR, 50}, - {929*OVERSAMPLENR, 45}, - {944*OVERSAMPLENR, 40}, - {959*OVERSAMPLENR, 35}, - {971*OVERSAMPLENR, 30}, - {981*OVERSAMPLENR, 25}, - {989*OVERSAMPLENR, 20}, - {994*OVERSAMPLENR, 15}, - {1001*OVERSAMPLENR, 10}, - {1005*OVERSAMPLENR, 5} -}; -#endif - - - -#if THERMISTORHEATER_1 == 1 -#define NUMTEMPS_HEATER_1 NUMTEMPS_1 -#define temptable_1 temptable_1 -#elif THERMISTORHEATER_1 == 2 -#define NUMTEMPS_HEATER_1 NUMTEMPS_2 -#define temptable_1 temptable_2 -#elif THERMISTORHEATER_1 == 3 -#define NUMTEMPS_HEATER_1 NUMTEMPS_3 -#define temptable_1 temptable_3 -#elif THERMISTORHEATER_1 == 4 -#define NUMTEMPS_HEATER_1 NUMTEMPS_4 -#define temptable_1 temptable_4 -#elif THERMISTORHEATER_1 == 5 -#define NUMTEMPS_HEATER_1 NUMTEMPS_5 -#define temptable_1 temptable_5 -#elif THERMISTORHEATER_1 == 6 -#define NUMTEMPS_HEATER_1 NUMTEMPS_6 -#define temptable_1 temptable_6 -#elif THERMISTORHEATER_1 == 7 -#define NUMTEMPS_HEATER_1 NUMTEMPS_7 -#define temptable_1 temptable_7 -#elif defined HEATER_1_USES_THERMISTOR -#error No heater 1 thermistor table specified -#endif - -#if THERMISTORHEATER_2 == 1 -#define NUMTEMPS_HEATER_2 NUMTEMPS_1 -#define temptable_2 temptable_1 -#elif THERMISTORHEATER_2 == 2 -#define NUMTEMPS_HEATER_2 NUMTEMPS_2 -#define temptable_2 temptable_2 -#elif THERMISTORHEATER_2 == 3 -#define NUMTEMPS_HEATER_2 NUMTEMPS_3 -#define temptable_2 temptable_3 -#elif THERMISTORHEATER_2 == 4 -#define NUMTEMPS_HEATER_2 NUMTEMPS_4 -#define temptable_2 temptable_4 -#elif THERMISTORHEATER_2 == 5 -#define NUMTEMPS_HEATER_2 NUMTEMPS_5 -#define temptable_2 temptable_5 -#elif THERMISTORHEATER_2 == 6 -#define NUMTEMPS_HEATER_2 NUMTEMPS_6 -#define temptable_2 temptable_6 -#elif THERMISTORHEATER_2 == 7 -#define NUMTEMPS_HEATER22 NUMTEMPS_7 -#define temptable_2 temptable_7 -#elif defined HEATER_2_USES_THERMISTOR -#error No heater 2 thermistor table specified -#endif - - -#if THERMISTORBED == 1 -#define BNUMTEMPS NUMTEMPS_1 -#define bedtemptable temptable_1 -#elif THERMISTORBED == 2 -#define BNUMTEMPS NUMTEMPS_2 -#define bedtemptable temptable_2 -#elif THERMISTORBED == 3 -#define BNUMTEMPS NUMTEMPS_3 -#define bedtemptable temptable_3 -#elif THERMISTORBED == 4 -#define BNUMTEMPS NUMTEMPS_4 -#define bedtemptable temptable_4 -#elif THERMISTORBED == 5 -#define BNUMTEMPS NUMTEMPS_5 -#define bedtemptable temptable_5 -#elif THERMISTORBED == 6 -#define BNUMTEMPS NUMTEMPS_6 -#define bedtemptable temptable_6 -#elif THERMISTORBED == 7 -#define BNUMTEMPS NUMTEMPS_7 -#define bedtemptable temptable_7 -#elif defined BED_USES_THERMISTOR -#error No bed thermistor table specified -#endif - -#endif //THERMISTORTABLES_H_ - +#ifndef THERMISTORTABLES_H_ +#define THERMISTORTABLES_H_ + +#define OVERSAMPLENR 16 + +#if (THERMISTORHEATER_1 == 1) || (THERMISTORHEATER_2 == 1) || (THERMISTORBED == 1) //100k bed thermistor + +#define NUMTEMPS_1 61 +const short temptable_1[NUMTEMPS_1][2] = { +{ 23*OVERSAMPLENR , 300 }, +{ 25*OVERSAMPLENR , 295 }, +{ 27*OVERSAMPLENR , 290 }, +{ 28*OVERSAMPLENR , 285 }, +{ 31*OVERSAMPLENR , 280 }, +{ 33*OVERSAMPLENR , 275 }, +{ 35*OVERSAMPLENR , 270 }, +{ 38*OVERSAMPLENR , 265 }, +{ 41*OVERSAMPLENR , 260 }, +{ 44*OVERSAMPLENR , 255 }, +{ 48*OVERSAMPLENR , 250 }, +{ 52*OVERSAMPLENR , 245 }, +{ 56*OVERSAMPLENR , 240 }, +{ 61*OVERSAMPLENR , 235 }, +{ 66*OVERSAMPLENR , 230 }, +{ 71*OVERSAMPLENR , 225 }, +{ 78*OVERSAMPLENR , 220 }, +{ 84*OVERSAMPLENR , 215 }, +{ 92*OVERSAMPLENR , 210 }, +{ 100*OVERSAMPLENR , 205 }, +{ 109*OVERSAMPLENR , 200 }, +{ 120*OVERSAMPLENR , 195 }, +{ 131*OVERSAMPLENR , 190 }, +{ 143*OVERSAMPLENR , 185 }, +{ 156*OVERSAMPLENR , 180 }, +{ 171*OVERSAMPLENR , 175 }, +{ 187*OVERSAMPLENR , 170 }, +{ 205*OVERSAMPLENR , 165 }, +{ 224*OVERSAMPLENR , 160 }, +{ 245*OVERSAMPLENR , 155 }, +{ 268*OVERSAMPLENR , 150 }, +{ 293*OVERSAMPLENR , 145 }, +{ 320*OVERSAMPLENR , 140 }, +{ 348*OVERSAMPLENR , 135 }, +{ 379*OVERSAMPLENR , 130 }, +{ 411*OVERSAMPLENR , 125 }, +{ 445*OVERSAMPLENR , 120 }, +{ 480*OVERSAMPLENR , 115 }, +{ 516*OVERSAMPLENR , 110 }, +{ 553*OVERSAMPLENR , 105 }, +{ 591*OVERSAMPLENR , 100 }, +{ 628*OVERSAMPLENR , 95 }, +{ 665*OVERSAMPLENR , 90 }, +{ 702*OVERSAMPLENR , 85 }, +{ 737*OVERSAMPLENR , 80 }, +{ 770*OVERSAMPLENR , 75 }, +{ 801*OVERSAMPLENR , 70 }, +{ 830*OVERSAMPLENR , 65 }, +{ 857*OVERSAMPLENR , 60 }, +{ 881*OVERSAMPLENR , 55 }, +{ 903*OVERSAMPLENR , 50 }, +{ 922*OVERSAMPLENR , 45 }, +{ 939*OVERSAMPLENR , 40 }, +{ 954*OVERSAMPLENR , 35 }, +{ 966*OVERSAMPLENR , 30 }, +{ 977*OVERSAMPLENR , 25 }, +{ 985*OVERSAMPLENR , 20 }, +{ 993*OVERSAMPLENR , 15 }, +{ 999*OVERSAMPLENR , 10 }, +{ 1004*OVERSAMPLENR , 5 }, +{ 1008*OVERSAMPLENR , 0 } //safety +}; +#endif +#if (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor +#define NUMTEMPS_2 21 +const short temptable_2[NUMTEMPS_2][2] = { + {1*OVERSAMPLENR, 848}, + {54*OVERSAMPLENR, 275}, + {107*OVERSAMPLENR, 228}, + {160*OVERSAMPLENR, 202}, + {213*OVERSAMPLENR, 185}, + {266*OVERSAMPLENR, 171}, + {319*OVERSAMPLENR, 160}, + {372*OVERSAMPLENR, 150}, + {425*OVERSAMPLENR, 141}, + {478*OVERSAMPLENR, 133}, + {531*OVERSAMPLENR, 125}, + {584*OVERSAMPLENR, 118}, + {637*OVERSAMPLENR, 110}, + {690*OVERSAMPLENR, 103}, + {743*OVERSAMPLENR, 95}, + {796*OVERSAMPLENR, 86}, + {849*OVERSAMPLENR, 77}, + {902*OVERSAMPLENR, 65}, + {955*OVERSAMPLENR, 49}, + {1008*OVERSAMPLENR, 17}, + {1020*OVERSAMPLENR, 0} //safety +}; + +#endif +#if (THERMISTORHEATER_1 == 3) || (THERMISTORHEATER_2 == 3) || (THERMISTORBED == 3) //mendel-parts +#define NUMTEMPS_3 28 +const short temptable_3[NUMTEMPS_3][2] = { + {1*OVERSAMPLENR,864}, + {21*OVERSAMPLENR,300}, + {25*OVERSAMPLENR,290}, + {29*OVERSAMPLENR,280}, + {33*OVERSAMPLENR,270}, + {39*OVERSAMPLENR,260}, + {46*OVERSAMPLENR,250}, + {54*OVERSAMPLENR,240}, + {64*OVERSAMPLENR,230}, + {75*OVERSAMPLENR,220}, + {90*OVERSAMPLENR,210}, + {107*OVERSAMPLENR,200}, + {128*OVERSAMPLENR,190}, + {154*OVERSAMPLENR,180}, + {184*OVERSAMPLENR,170}, + {221*OVERSAMPLENR,160}, + {265*OVERSAMPLENR,150}, + {316*OVERSAMPLENR,140}, + {375*OVERSAMPLENR,130}, + {441*OVERSAMPLENR,120}, + {513*OVERSAMPLENR,110}, + {588*OVERSAMPLENR,100}, + {734*OVERSAMPLENR,80}, + {856*OVERSAMPLENR,60}, + {938*OVERSAMPLENR,40}, + {986*OVERSAMPLENR,20}, + {1008*OVERSAMPLENR,0}, + {1018*OVERSAMPLENR,-20} + }; + +#endif +#if (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor + +#define NUMTEMPS_4 20 +short temptable_4[NUMTEMPS_4][2] = { + {1*OVERSAMPLENR, 430}, + {54*OVERSAMPLENR, 137}, + {107*OVERSAMPLENR, 107}, + {160*OVERSAMPLENR, 91}, + {213*OVERSAMPLENR, 80}, + {266*OVERSAMPLENR, 71}, + {319*OVERSAMPLENR, 64}, + {372*OVERSAMPLENR, 57}, + {425*OVERSAMPLENR, 51}, + {478*OVERSAMPLENR, 46}, + {531*OVERSAMPLENR, 41}, + {584*OVERSAMPLENR, 35}, + {637*OVERSAMPLENR, 30}, + {690*OVERSAMPLENR, 25}, + {743*OVERSAMPLENR, 20}, + {796*OVERSAMPLENR, 14}, + {849*OVERSAMPLENR, 7}, + {902*OVERSAMPLENR, 0}, + {955*OVERSAMPLENR, -11}, + {1008*OVERSAMPLENR, -35} +}; +#endif + +#if (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) + +#define NUMTEMPS_5 61 +const short temptable_5[NUMTEMPS_5][2] = { +{1*OVERSAMPLENR, 713}, +{18*OVERSAMPLENR, 316}, +{35*OVERSAMPLENR, 266}, +{52*OVERSAMPLENR, 239}, +{69*OVERSAMPLENR, 221}, +{86*OVERSAMPLENR, 208}, +{103*OVERSAMPLENR, 197}, +{120*OVERSAMPLENR, 188}, +{137*OVERSAMPLENR, 181}, +{154*OVERSAMPLENR, 174}, +{171*OVERSAMPLENR, 169}, +{188*OVERSAMPLENR, 163}, +{205*OVERSAMPLENR, 159}, +{222*OVERSAMPLENR, 154}, +{239*OVERSAMPLENR, 150}, +{256*OVERSAMPLENR, 147}, +{273*OVERSAMPLENR, 143}, +{290*OVERSAMPLENR, 140}, +{307*OVERSAMPLENR, 136}, +{324*OVERSAMPLENR, 133}, +{341*OVERSAMPLENR, 130}, +{358*OVERSAMPLENR, 128}, +{375*OVERSAMPLENR, 125}, +{392*OVERSAMPLENR, 122}, +{409*OVERSAMPLENR, 120}, +{426*OVERSAMPLENR, 117}, +{443*OVERSAMPLENR, 115}, +{460*OVERSAMPLENR, 112}, +{477*OVERSAMPLENR, 110}, +{494*OVERSAMPLENR, 108}, +{511*OVERSAMPLENR, 106}, +{528*OVERSAMPLENR, 103}, +{545*OVERSAMPLENR, 101}, +{562*OVERSAMPLENR, 99}, +{579*OVERSAMPLENR, 97}, +{596*OVERSAMPLENR, 95}, +{613*OVERSAMPLENR, 92}, +{630*OVERSAMPLENR, 90}, +{647*OVERSAMPLENR, 88}, +{664*OVERSAMPLENR, 86}, +{681*OVERSAMPLENR, 84}, +{698*OVERSAMPLENR, 81}, +{715*OVERSAMPLENR, 79}, +{732*OVERSAMPLENR, 77}, +{749*OVERSAMPLENR, 75}, +{766*OVERSAMPLENR, 72}, +{783*OVERSAMPLENR, 70}, +{800*OVERSAMPLENR, 67}, +{817*OVERSAMPLENR, 64}, +{834*OVERSAMPLENR, 61}, +{851*OVERSAMPLENR, 58}, +{868*OVERSAMPLENR, 55}, +{885*OVERSAMPLENR, 52}, +{902*OVERSAMPLENR, 48}, +{919*OVERSAMPLENR, 44}, +{936*OVERSAMPLENR, 40}, +{953*OVERSAMPLENR, 34}, +{970*OVERSAMPLENR, 28}, +{987*OVERSAMPLENR, 20}, +{1004*OVERSAMPLENR, 8}, +{1021*OVERSAMPLENR, 0} +}; +#endif + +#if (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor +#define NUMTEMPS_6 36 +const short temptable_6[NUMTEMPS_6][2] = { + {28*OVERSAMPLENR, 250}, + {31*OVERSAMPLENR, 245}, + {35*OVERSAMPLENR, 240}, + {39*OVERSAMPLENR, 235}, + {42*OVERSAMPLENR, 230}, + {44*OVERSAMPLENR, 225}, + {49*OVERSAMPLENR, 220}, + {53*OVERSAMPLENR, 215}, + {62*OVERSAMPLENR, 210}, + {73*OVERSAMPLENR, 205}, + {72*OVERSAMPLENR, 200}, + {94*OVERSAMPLENR, 190}, + {102*OVERSAMPLENR, 185}, + {116*OVERSAMPLENR, 170}, + {143*OVERSAMPLENR, 160}, + {183*OVERSAMPLENR, 150}, + {223*OVERSAMPLENR, 140}, + {270*OVERSAMPLENR, 130}, + {318*OVERSAMPLENR, 120}, + {383*OVERSAMPLENR, 110}, + {413*OVERSAMPLENR, 105}, + {439*OVERSAMPLENR, 100}, + {484*OVERSAMPLENR, 95}, + {513*OVERSAMPLENR, 90}, + {607*OVERSAMPLENR, 80}, + {664*OVERSAMPLENR, 70}, + {781*OVERSAMPLENR, 60}, + {810*OVERSAMPLENR, 55}, + {849*OVERSAMPLENR, 50}, + {914*OVERSAMPLENR, 45}, + {914*OVERSAMPLENR, 40}, + {935*OVERSAMPLENR, 35}, + {954*OVERSAMPLENR, 30}, + {970*OVERSAMPLENR, 25}, + {978*OVERSAMPLENR, 22}, + {1008*OVERSAMPLENR, 3} +}; +#endif + +#if (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 +#define NUMTEMPS_7 54 +const short temptable_7[NUMTEMPS_7][2] = { + {46*OVERSAMPLENR, 270}, + {50*OVERSAMPLENR, 265}, + {54*OVERSAMPLENR, 260}, + {58*OVERSAMPLENR, 255}, + {62*OVERSAMPLENR, 250}, + {67*OVERSAMPLENR, 245}, + {72*OVERSAMPLENR, 240}, + {79*OVERSAMPLENR, 235}, + {85*OVERSAMPLENR, 230}, + {91*OVERSAMPLENR, 225}, + {99*OVERSAMPLENR, 220}, + {107*OVERSAMPLENR, 215}, + {116*OVERSAMPLENR, 210}, + {126*OVERSAMPLENR, 205}, + {136*OVERSAMPLENR, 200}, + {149*OVERSAMPLENR, 195}, + {160*OVERSAMPLENR, 190}, + {175*OVERSAMPLENR, 185}, + {191*OVERSAMPLENR, 180}, + {209*OVERSAMPLENR, 175}, + {224*OVERSAMPLENR, 170}, + {246*OVERSAMPLENR, 165}, + {267*OVERSAMPLENR, 160}, + {293*OVERSAMPLENR, 155}, + {316*OVERSAMPLENR, 150}, + {340*OVERSAMPLENR, 145}, + {364*OVERSAMPLENR, 140}, + {396*OVERSAMPLENR, 135}, + {425*OVERSAMPLENR, 130}, + {460*OVERSAMPLENR, 125}, + {489*OVERSAMPLENR, 120}, + {526*OVERSAMPLENR, 115}, + {558*OVERSAMPLENR, 110}, + {591*OVERSAMPLENR, 105}, + {628*OVERSAMPLENR, 100}, + {660*OVERSAMPLENR, 95}, + {696*OVERSAMPLENR, 90}, + {733*OVERSAMPLENR, 85}, + {761*OVERSAMPLENR, 80}, + {794*OVERSAMPLENR, 75}, + {819*OVERSAMPLENR, 70}, + {847*OVERSAMPLENR, 65}, + {870*OVERSAMPLENR, 60}, + {892*OVERSAMPLENR, 55}, + {911*OVERSAMPLENR, 50}, + {929*OVERSAMPLENR, 45}, + {944*OVERSAMPLENR, 40}, + {959*OVERSAMPLENR, 35}, + {971*OVERSAMPLENR, 30}, + {981*OVERSAMPLENR, 25}, + {989*OVERSAMPLENR, 20}, + {994*OVERSAMPLENR, 15}, + {1001*OVERSAMPLENR, 10}, + {1005*OVERSAMPLENR, 5} +}; +#endif + + + +#if THERMISTORHEATER_1 == 1 +#define NUMTEMPS_HEATER_1 NUMTEMPS_1 +#define temptable_1 temptable_1 +#elif THERMISTORHEATER_1 == 2 +#define NUMTEMPS_HEATER_1 NUMTEMPS_2 +#define temptable_1 temptable_2 +#elif THERMISTORHEATER_1 == 3 +#define NUMTEMPS_HEATER_1 NUMTEMPS_3 +#define temptable_1 temptable_3 +#elif THERMISTORHEATER_1 == 4 +#define NUMTEMPS_HEATER_1 NUMTEMPS_4 +#define temptable_1 temptable_4 +#elif THERMISTORHEATER_1 == 5 +#define NUMTEMPS_HEATER_1 NUMTEMPS_5 +#define temptable_1 temptable_5 +#elif THERMISTORHEATER_1 == 6 +#define NUMTEMPS_HEATER_1 NUMTEMPS_6 +#define temptable_1 temptable_6 +#elif THERMISTORHEATER_1 == 7 +#define NUMTEMPS_HEATER_1 NUMTEMPS_7 +#define temptable_1 temptable_7 +#elif defined HEATER_1_USES_THERMISTOR +#error No heater 1 thermistor table specified +#endif + +#if THERMISTORHEATER_2 == 1 +#define NUMTEMPS_HEATER_2 NUMTEMPS_1 +#define temptable_2 temptable_1 +#elif THERMISTORHEATER_2 == 2 +#define NUMTEMPS_HEATER_2 NUMTEMPS_2 +#define temptable_2 temptable_2 +#elif THERMISTORHEATER_2 == 3 +#define NUMTEMPS_HEATER_2 NUMTEMPS_3 +#define temptable_2 temptable_3 +#elif THERMISTORHEATER_2 == 4 +#define NUMTEMPS_HEATER_2 NUMTEMPS_4 +#define temptable_2 temptable_4 +#elif THERMISTORHEATER_2 == 5 +#define NUMTEMPS_HEATER_2 NUMTEMPS_5 +#define temptable_2 temptable_5 +#elif THERMISTORHEATER_2 == 6 +#define NUMTEMPS_HEATER_2 NUMTEMPS_6 +#define temptable_2 temptable_6 +#elif THERMISTORHEATER_2 == 7 +#define NUMTEMPS_HEATER22 NUMTEMPS_7 +#define temptable_2 temptable_7 +#elif defined HEATER_2_USES_THERMISTOR +#error No heater 2 thermistor table specified +#endif + + +#if THERMISTORBED == 1 +#define BNUMTEMPS NUMTEMPS_1 +#define bedtemptable temptable_1 +#elif THERMISTORBED == 2 +#define BNUMTEMPS NUMTEMPS_2 +#define bedtemptable temptable_2 +#elif THERMISTORBED == 3 +#define BNUMTEMPS NUMTEMPS_3 +#define bedtemptable temptable_3 +#elif THERMISTORBED == 4 +#define BNUMTEMPS NUMTEMPS_4 +#define bedtemptable temptable_4 +#elif THERMISTORBED == 5 +#define BNUMTEMPS NUMTEMPS_5 +#define bedtemptable temptable_5 +#elif THERMISTORBED == 6 +#define BNUMTEMPS NUMTEMPS_6 +#define bedtemptable temptable_6 +#elif THERMISTORBED == 7 +#define BNUMTEMPS NUMTEMPS_7 +#define bedtemptable temptable_7 +#elif defined BED_USES_THERMISTOR +#error No bed thermistor table specified +#endif + +#endif //THERMISTORTABLES_H_ + diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 39cca278e..b7092c9cb 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -1,156 +1,156 @@ -#ifndef __ULTRALCDH -#define __ULTRALCDH -#include "Configuration.h" - -#ifdef ULTRA_LCD - - void lcd_status(); - void lcd_init(); - void lcd_status(const char* message); - void beep(); - void buttons_check(); - #define LCDSTATUSRIGHT - - #define LCD_UPDATE_INTERVAL 100 - #define STATUSTIMEOUT 15000 - - #include "Configuration.h" - - #include - extern LiquidCrystal lcd; - - //lcd display size - -#ifdef NEWPANEL - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 5 - #define LCD_PINS_D7 6 - - //buttons are directly attached - #define BTN_EN1 40 - #define BTN_EN2 42 - #define BTN_ENC 19 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - - #define SDCARDDETECT 38 - - #define EN_C (1< + extern LiquidCrystal lcd; + + //lcd display size + +#ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + #define LCD_PINS_RS 20 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 6 + + //buttons are directly attached + #define BTN_EN1 40 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 38 + + #define EN_C (1< Board -> Arduino Mega 2560 -Select the correct serial port in Tools ->Serial Port -Open Marlin.pde - -Click the Verify/Compile button - -Click the Upload button -If all goes well the firmware is uploading - -Start Ultimaker's Custom RepG 25 -Make sure Show Experimental Profiles is enabled in Preferences -Select Sprinter as the Driver - -Press the Connect button. - -KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z - -That's ok. Enjoy Silky Smooth Printing. - +This RepRap firmware is a mashup between Sprinter, grbl and many original parts. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + +Derived from Sprinter and Grbl by Erik van der Zalm. +Sprinters lead developers are Kliment and caru. +Grbls lead developer is Simen Svale Skogsrud. +It has been adapted to the Ultimaker Printer by: +Bernhard Kubicek, Matthijs Keuper, Bradley Feldman, and others... + + +Features: + - Interrupt based movement with real linear acceleration + - High steprate + - Look ahead (Keep the speed high when possible. High cornering speed) + - Interrupt based temperature protection + - preliminary support for Matthew Roberts advance algorithm + For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + - Full endstop support + - Simple LCD support (16x2) + - SD Card support + - Provisions for Bernhard Kubicek's new hardware control console and 20x4 lcd + +This firmware is optimized for Ultimaker's gen6 electronics (including the Ultimaker 1.5.x daughterboard and Arduino Mega 2560). + +The default baudrate is 115200. + + +======================================================================================== + +Configuring and compilation + + +Install the latest arduino software IDE/toolset (currently 0022) + http://www.arduino.cc/en/Main/Software + +Install Ultimaker's RepG 25 build + http://software.ultimaker.com +(or alternatively install Kliment's printrun/pronterface https://github.com/kliment/Printrun_) + +Copy the Ultimaker Marlin firmware + https:/github.com/bkubicek/Marlin + (Use the download button) + +Start the arduino IDE. +Select Tools -> Board -> Arduino Mega 2560 +Select the correct serial port in Tools ->Serial Port +Open Marlin.pde + +Click the Verify/Compile button + +Click the Upload button +If all goes well the firmware is uploading + +Start Ultimaker's Custom RepG 25 +Make sure Show Experimental Profiles is enabled in Preferences +Select Sprinter as the Driver + +Press the Connect button. + +KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z + +That's ok. Enjoy Silky Smooth Printing. + diff --git a/README.md b/README.md index 6cab9fa52..699ebdd64 100644 --- a/README.md +++ b/README.md @@ -1,69 +1,69 @@ -WARNING: THIS IN A PROCESS OF HEAVY OVERWORKING. -DO NOT USE THIS ON YOUR MACHINE UNTIL FURTHER NOTICE!!! - -=========================================== - -This RepRap firmware is a mashup between Sprinter, grbl and many original parts. - -Derived from Sprinter and Grbl by Erik van der Zalm. -Sprinters lead developers are Kliment and caru. -Grbls lead developer is Simen Svale Skogsrud. -Some features have been added by and configuration has been added by: -Bernhard Kubicek, Matthijs Keuper, Bradley Feldman, and others... - - -Features: - - Interrupt based movement with real linear acceleration - - High steprate - - Look ahead (Keep the speed high when possible. High cornering speed) - - Interrupt based temperature protection - - preliminary support for Matthew Roberts advance algorithm - For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - Full endstop support - - Simple LCD support (16x2) - - SD Card support - - Provisions for Bernhard Kubicek's new hardware control console and 20x4 lcd - -This firmware is optimized for Ultimaker's gen6 electronics (including the Ultimaker 1.5.x daughterboard and Arduino Mega 2560). - -The default baudrate is 115200. - - -======================================================================================== - -Configuring and compilation - - -Install the latest arduino software IDE/toolset (currently 0022) - http://www.arduino.cc/en/Main/Software - -Install Ultimaker's RepG 25 build - http://software.ultimaker.com -(or alternatively install Kliment's printrun/pronterface https://github.com/kliment/Printrun_) - -Copy the Ultimaker Marlin firmware - https:/github.com/bkubicek/Marlin - (Use the download button) - -Start the arduino IDE. -Select Tools -> Board -> Arduino Mega 2560 -Select the correct serial port in Tools ->Serial Port -Open Marlin.pde - -Click the Verify/Compile button - -Click the Upload button -If all goes well the firmware is uploading - -Start Ultimaker's Custom RepG 25 -Make sure Show Experimental Profiles is enabled in Preferences -Select Sprinter as the Driver - -Press the Connect button. - -KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z - -That's ok. Enjoy Silky Smooth Printing. - - - +WARNING: THIS IN A PROCESS OF HEAVY OVERWORKING. +DO NOT USE THIS ON YOUR MACHINE UNTIL FURTHER NOTICE!!! + +=========================================== + +This RepRap firmware is a mashup between Sprinter, grbl and many original parts. + +Derived from Sprinter and Grbl by Erik van der Zalm. +Sprinters lead developers are Kliment and caru. +Grbls lead developer is Simen Svale Skogsrud. +Some features have been added by and configuration has been added by: +Bernhard Kubicek, Matthijs Keuper, Bradley Feldman, and others... + + +Features: + - Interrupt based movement with real linear acceleration + - High steprate + - Look ahead (Keep the speed high when possible. High cornering speed) + - Interrupt based temperature protection + - preliminary support for Matthew Roberts advance algorithm + For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + - Full endstop support + - Simple LCD support (16x2) + - SD Card support + - Provisions for Bernhard Kubicek's new hardware control console and 20x4 lcd + +This firmware is optimized for Ultimaker's gen6 electronics (including the Ultimaker 1.5.x daughterboard and Arduino Mega 2560). + +The default baudrate is 115200. + + +======================================================================================== + +Configuring and compilation + + +Install the latest arduino software IDE/toolset (currently 0022) + http://www.arduino.cc/en/Main/Software + +Install Ultimaker's RepG 25 build + http://software.ultimaker.com +(or alternatively install Kliment's printrun/pronterface https://github.com/kliment/Printrun_) + +Copy the Ultimaker Marlin firmware + https:/github.com/bkubicek/Marlin + (Use the download button) + +Start the arduino IDE. +Select Tools -> Board -> Arduino Mega 2560 +Select the correct serial port in Tools ->Serial Port +Open Marlin.pde + +Click the Verify/Compile button + +Click the Upload button +If all goes well the firmware is uploading + +Start Ultimaker's Custom RepG 25 +Make sure Show Experimental Profiles is enabled in Preferences +Select Sprinter as the Driver + +Press the Connect button. + +KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z + +That's ok. Enjoy Silky Smooth Printing. + + + diff --git a/merging still needs.txt b/merging still needs.txt index 2d369c968..18e91dcad 100644 --- a/merging still needs.txt +++ b/merging still needs.txt @@ -1,58 +1,58 @@ -files to compare manually: -planner.cpp -stepper.cpp -temperature.cpp - ---- -things that changed: -* planner.cpp -estimate_acc_distance now works with floats. -in calculate_trapezoid:for_block - long acceleration_rate=(long)((float)acceleration*8.388608) is gone - so is block_>acceleration_rate -void planner_reverse_pass: - some stuff I don't understand right now changed -in planner_forward_pass: - done: BLOCK_BUFFER_SIZE is now necessarily power of 2 (aka 8 16, 32). Inportant to document this somewhere. -no more inline in void plan_discard_current_block() -no more inline in plan_get_current_block() -in plan_buffer_line(...) - the long target[4]; and calculations of thoose should go after the while(block_buffer_tail==..). if the axis_steps_per_unit are changed from the gcode (M92) the calculation for the currently planned buffer move will be corrupt, because Target is calculated with one value, and the stuff afterwards with another. At least this solved the problem I had with the M92 E* changes in the code. Very sure about this, I took me 20min to find this as the solution for the bug I was hunting. -around if(feed_rate!true+return? -done #define K1 0.95 maybe in the configuration.h? -semi-done: PID-C checking needed. Untested but added. ----- - -still needed to finish the merge, before testin! - - manage_heater - ISR - movement planner - -TODO: - -remove traveling at maxpseed -remove Simplelcd - -remove DEBUG_STEPS? - -block_t -pid_dt ->0.1 whats the changes to the PID, checking needed - - ----- -second merge saturday morning: +files to compare manually: +planner.cpp +stepper.cpp +temperature.cpp + +--- +things that changed: +* planner.cpp +estimate_acc_distance now works with floats. +in calculate_trapezoid:for_block + long acceleration_rate=(long)((float)acceleration*8.388608) is gone + so is block_>acceleration_rate +void planner_reverse_pass: + some stuff I don't understand right now changed +in planner_forward_pass: + done: BLOCK_BUFFER_SIZE is now necessarily power of 2 (aka 8 16, 32). Inportant to document this somewhere. +no more inline in void plan_discard_current_block() +no more inline in plan_get_current_block() +in plan_buffer_line(...) + the long target[4]; and calculations of thoose should go after the while(block_buffer_tail==..). if the axis_steps_per_unit are changed from the gcode (M92) the calculation for the currently planned buffer move will be corrupt, because Target is calculated with one value, and the stuff afterwards with another. At least this solved the problem I had with the M92 E* changes in the code. Very sure about this, I took me 20min to find this as the solution for the bug I was hunting. +around if(feed_rate!true+return? +done #define K1 0.95 maybe in the configuration.h? +semi-done: PID-C checking needed. Untested but added. +---- + +still needed to finish the merge, before testin! + + manage_heater + ISR + movement planner + +TODO: + +remove traveling at maxpseed +remove Simplelcd + +remove DEBUG_STEPS? + +block_t +pid_dt ->0.1 whats the changes to the PID, checking needed + + +---- +second merge saturday morning: done: PID_dt->0.1 \ No newline at end of file From 8bcdb9f5f062fe68d90e31752453e1d662b3f0e2 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 5 Nov 2011 16:43:44 +0100 Subject: [PATCH 018/430] this is not working. Do you maybe know why? --- Marlin/EEPROMwrite.h | 16 ++--- Marlin/Marlin.h | 1 + Marlin/Marlin.pde | 80 ++++++++++++------------- Marlin/planner.cpp | 2 +- Marlin/stepper.cpp | 2 +- Marlin/temperature.cpp | 128 +++++++++++++++++++--------------------- Marlin/temperature.h | 131 ++++++++++++++++++++++++++++++++++------- Marlin/ultralcd.pde | 90 ++++++++++++++-------------- 8 files changed, 268 insertions(+), 182 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 2247e2f52..4e5364d80 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -48,9 +48,9 @@ void StoreSettings() { EEPROM_writeAnything(i,max_xy_jerk); EEPROM_writeAnything(i,max_z_jerk); #ifdef PIDTEMP - EEPROM_writeAnything(i,Kp); - EEPROM_writeAnything(i,Ki); - EEPROM_writeAnything(i,Kd); + EEPROM_writeAnything(i,Heater::Kp); + EEPROM_writeAnything(i,Heater::Ki); + EEPROM_writeAnything(i,Heater::Kd); #else EEPROM_writeAnything(i,3000); EEPROM_writeAnything(i,0); @@ -81,11 +81,11 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will EEPROM_readAnything(i,max_xy_jerk); EEPROM_readAnything(i,max_z_jerk); #ifndef PIDTEMP - float Kp,Ki,Kd; + float Kp,Ki,Kd; //read and ignore.. #endif - EEPROM_readAnything(i,Kp); - EEPROM_readAnything(i,Ki); - EEPROM_readAnything(i,Kd); + EEPROM_readAnything(i,Heater::Kp); + EEPROM_readAnything(i,Heater::Ki); + EEPROM_readAnything(i,Heater::Kd); ECHOLN("Stored settings retreived:"); } @@ -119,7 +119,7 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); #ifdef PIDTEMP ECHOLN("PID settings:"); - ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); + ECHOLN(" M301 P" << _FLOAT(Heater::Kp,3) << " I" << _FLOAT(Heater::Ki,3) << " D" << _FLOAT(Heater::Kd,3)); #endif } diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index f85dad357..4cd4c8d39 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -10,6 +10,7 @@ #define ECHO(x) Serial << "echo: " << x; #define ECHOLN(x) Serial << "echo: "< current_raw[TEMPSENSOR_HOTEND]){ + if(Heater::isHeating(TEMPSENSOR_HOTEND)){ watchmillis = max(1,millis()); watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; }else{ @@ -815,14 +813,14 @@ inline void process_commands() #endif break; case 140: // M140 set bed temp - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); + if (code_seen('S')) Heater::setCelsius(TEMPSENSOR_BED,code_value()); break; case 105: // M105 #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = analog2temp(current_raw[TEMPSENSOR_HOTEND]); + tt = Heater::celsius(TEMPSENSOR_HOTEND); #endif #if TEMP_1_PIN > -1 - bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); + bt = Heater::celsius(TEMPSENSOR_BED); #endif #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) Serial.print("ok T:"); @@ -833,14 +831,14 @@ inline void process_commands() #ifdef PIDTEMP Serial.print(" B:"); #if TEMP_1_PIN > -1 - Serial.println(bt); + Serial.println(bt); #else - Serial.println(HeaterPower); + Serial.println(Heater::HeaterPower); #endif #else Serial.println(); #endif - #else + #else< Serial.println(); #endif #else @@ -850,14 +848,12 @@ inline void process_commands() //break; case 109: {// M109 - Wait for extruder heater to reach target. LCD_MESSAGE("Heating..."); - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND] = temp2analog(code_value()); - #ifdef PIDTEMP - pid_setpoint = code_value(); - #endif //PIDTEM + if (code_seen('S')) Heater::setCelsius(TEMPSENSOR_HOTEND,code_value()); + #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND]>current_raw[TEMPSENSOR_HOTEND]){ + if(Heater::isHeating(TEMPSENSOR_HOTEND)){ watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; + watch_raw[TEMPSENSOR_HOTEND] = Heater::current_raw[TEMPSENSOR_HOTEND]; } else { watchmillis = 0; } @@ -865,31 +861,31 @@ inline void process_commands() codenum = millis(); /* See if we are heating up or cooling down */ - bool target_direction = (current_raw[0] < target_raw[0]); // true if heating, false if cooling + bool target_direction = Heater::isHeating(TEMPSENSOR_HOTEND); // true if heating, false if cooling #ifdef TEMP_RESIDENCY_TIME long residencyStart; residencyStart = -1; /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0])) || + while((target_direction ? Heater::isHeating(TEMPSENSOR_HOTEND) : Heater::isCooling(TEMPSENSOR_HOTEND)) || (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else - while ( target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0]) ) { + while ( target_direction ? Heater::isHeating(TEMPSENSOR_HOTEND) : Heater::isCooling(TEMPSENSOR_HOTEND) ) { #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down Serial.print("T:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND]) ); + Serial.println( Heater::celsius(TEMPSENSOR_HOTEND) ); codenum = millis(); } - manage_heater(); + Heater::manage_heater(); LCD_STATUS; #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && current_raw[0] >= target_raw[0]) || - (residencyStart == -1 && !target_direction && current_raw[0] <= target_raw[0]) || - (residencyStart > -1 && labs(analog2temp(current_raw[0]) - analog2temp(target_raw[0])) > TEMP_HYSTERESIS) ) { + if ((residencyStart == -1 && target_direction && !Heater::isHeating(TEMPSENSOR_HOTEND)) || + (residencyStart == -1 && !target_direction && !Heater::isCooling(TEMPSENSOR_HOTEND)) || + (residencyStart > -1 && labs(Heater::celsius(TEMPSENSOR_HOTEND) - Heater::celsiusTarget(TEMPSENSOR_HOTEND)) > TEMP_HYSTERESIS) ) { residencyStart = millis(); } #endif //TEMP_RESIDENCY_TIME @@ -899,22 +895,22 @@ inline void process_commands() break; case 190: // M190 - Wait bed for heater to reach target. #if TEMP_1_PIN > -1 - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); + if (code_seen('S')) Heater::setCelsius(TEMPSENSOR_BED,code_value()); codenum = millis(); - while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) - { + while(Heater::isHeating(TEMPSENSOR_BED)) + { if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { - float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND]); + float tt=Heater::celsius(TEMPSENSOR_HOTEND); Serial.print("T:"); Serial.println( tt ); Serial.print("ok T:"); Serial.print( tt ); Serial.print(" B:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); + Serial.println( Heater::celsius(TEMPSENSOR_BED) ); codenum = millis(); } - manage_heater(); + Heater::manage_heater(); } #endif break; @@ -1066,9 +1062,13 @@ inline void process_commands() break; #ifdef PIDTEMP case 301: // M301 - if(code_seen('P')) Kp = code_value(); - if(code_seen('I')) Ki = code_value()*PID_dT; - if(code_seen('D')) Kd = code_value()/PID_dT; + if(code_seen('P')) Heater::Kp = code_value(); + if(code_seen('I')) Heater::Ki = code_value()*PID_dT; + if(code_seen('D')) Heater::Kd = code_value()/PID_dT; + #ifdef PID_ADD_EXTRUSION_RATE + if(code_seen('C')) Heater::Kc = code_value(); + #endif + // ECHOLN("Kp "<<_FLOAT(Kp,2)); // ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); // ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); @@ -1194,19 +1194,19 @@ void wd_reset() { inline void kill() { #if TEMP_0_PIN > -1 - target_raw[0]=0; + Heater::setCelsius(TEMPSENSOR_HOTEND,0); #if HEATER_0_PIN > -1 WRITE(HEATER_0_PIN,LOW); #endif #endif #if TEMP_1_PIN > -1 - target_raw[1]=0; + Heater::setCelsius(TEMPSENSOR_BED,0); #if HEATER_1_PIN > -1 WRITE(HEATER_1_PIN,LOW); #endif #endif #if TEMP_2_PIN > -1 - target_raw[2]=0; + Heater::setCelsius(TEMPSENSOR_AUX,0); #if HEATER_2_PIN > -1 WRITE(HEATER_2_PIN,LOW); #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 14f0bb104..cfeb6b223 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -388,7 +388,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { // If the buffer is full: good! That means we are well ahead of the robot. // Rest here until there is room in the buffer. while(block_buffer_tail == next_buffer_head) { - manage_heater(); + htr.manage_heater(); manage_inactivity(1); LCD_STATUS; } diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index f4bd1289e..01ff430f3 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -585,7 +585,7 @@ void st_init() void st_synchronize() { while(plan_get_current_block()) { - manage_heater(); + htr.manage_heater(); manage_inactivity(1); LCD_STATUS; } diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index ebc772e1d..9be4bdc2f 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -37,52 +37,11 @@ #include "streaming.h" #include "temperature.h" -int target_bed_raw = 0; -int current_bed_raw = 0; -int target_raw[3] = {0, 0, 0}; -int current_raw[3] = {0, 0, 0}; -unsigned char temp_meas_ready = false; -unsigned long previous_millis_heater, previous_millis_bed_heater; -#ifdef PIDTEMP - double temp_iState = 0; - double temp_dState = 0; - double pTerm; - double iTerm; - double dTerm; - //int output; - double pid_error; - double temp_iState_min; - double temp_iState_max; - double pid_setpoint = 0.0; - double pid_input; - double pid_output; - bool pid_reset; - float HeaterPower; - - float Kp=DEFAULT_Kp; - float Ki=DEFAULT_Ki; - float Kd=DEFAULT_Kd; - float Kc=DEFAULT_Kc; -#endif //PIDTEMP -#ifdef MINTEMP -int minttemp = temp2analog(MINTEMP); -#endif //MINTEMP -#ifdef MAXTEMP -int maxttemp = temp2analog(MAXTEMP); -#endif //MAXTEMP - -#ifdef BED_MINTEMP -int bed_minttemp = temp2analog(BED_MINTEMP); -#endif //BED_MINTEMP -#ifdef BED_MAXTEMP -int bed_maxttemp = temp2analog(BED_MAXTEMP); -#endif //BED_MAXTEMP - -void manage_heater() +void static Heater::manage_heater() { #ifdef USE_WATCHDOG wd_reset(); @@ -90,11 +49,11 @@ void manage_heater() float pid_input; float pid_output; - if(temp_meas_ready != true) //better readability + if(htr.temp_meas_ready != true) //better readability return; CRITICAL_SECTION_START; - temp_meas_ready = false; + htr.temp_meas_ready = false; CRITICAL_SECTION_END; #ifdef PIDTEMP @@ -176,7 +135,8 @@ CRITICAL_SECTION_END; // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -float temp2analog(int celsius) { +float const static temp2analog(const int celsius) +{ #ifdef HEATER_USES_THERMISTOR_1 int raw = 0; byte i; @@ -207,7 +167,8 @@ float temp2analog(int celsius) { // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -float temp2analogBed(int celsius) { +float const static temp2analogBed(const int celsius) +{ #ifdef BED_USES_THERMISTOR int raw = 0; @@ -237,7 +198,7 @@ float temp2analogBed(int celsius) { // Derived from RepRap FiveD extruder::getTemperature() // For hot end temperature measurement. -float analog2temp(int raw) { +float const static Heater::analog2temp(const int raw) { #ifdef HEATER_1_USES_THERMISTOR int celsius = 0; byte i; @@ -266,7 +227,7 @@ float analog2temp(int raw) { // Derived from RepRap FiveD extruder::getTemperature() // For bed temperature measurement. -float analog2tempBed(int raw) { +float const static Heater::analog2tempBed(const int raw) { #ifdef BED_USES_THERMISTOR int celsius = 0; byte i; @@ -296,8 +257,28 @@ float analog2tempBed(int raw) { #endif } -void tp_init() +Heater::Heater() { + for(short i=0;i<3;i++) + { + target_raw[i]=0; + current_raw[i] =0; + } + htr.temp_meas_ready = false; + #ifdef MINTEMP + minttemp = temp2analog(MINTEMP); + #endif //MINTEMP + #ifdef MAXTEMP + maxttemp = temp2analog(MAXTEMP); + #endif //MAXTEMP + + #ifdef BED_MINTEMP + bed_minttemp = temp2analog(BED_MINTEMP); + #endif //BED_MINTEMP + #ifdef BED_MAXTEMP + bed_maxttemp = temp2analog(BED_MAXTEMP); + #endif //BED_MAXTEMP + #if (HEATER_0_PIN > -1) SET_OUTPUT(HEATER_0_PIN); #endif @@ -311,6 +292,14 @@ void tp_init() #ifdef PIDTEMP temp_iState_min = 0.0; temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + temp_iState = 0; + temp_dState = 0; + Kp=DEFAULT_Kp; + Ki=DEFAULT_Ki; + Kd=DEFAULT_Kd; + Kc=DEFAULT_Kc; + pid_setpoint = 0.0; + #endif //PIDTEMP // Set analog inputs @@ -407,39 +396,39 @@ ISR(TIMER0_COMPB_vect) if(temp_count >= 16) // 6 ms * 16 = 96ms. { #ifdef HEATER_1_USES_AD595 - current_raw[0] = raw_temp_0_value; + htr.current_raw[0] = raw_temp_0_value; #else - current_raw[0] = 16383 - raw_temp_0_value; + htr.current_raw[0] = 16383 - raw_temp_0_value; #endif #ifdef HEATER_2_USES_AD595 - current_raw[2] = raw_temp_2_value; + htr.current_raw[2] = raw_temp_2_value; #else - current_raw[2] = 16383 - raw_temp_2_value; + htr.current_raw[2] = 16383 - raw_temp_2_value; #endif #ifdef BED_USES_AD595 - current_raw[1] = raw_temp_1_value; + htr.current_raw[1] = raw_temp_1_value; #else - current_raw[1] = 16383 - raw_temp_1_value; + htr.current_raw[1] = 16383 - raw_temp_1_value; #endif - temp_meas_ready = true; + htr.temp_meas_ready = true; temp_count = 0; raw_temp_0_value = 0; raw_temp_1_value = 0; raw_temp_2_value = 0; #ifdef MAXTEMP #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND] >= maxttemp) { - target_raw[TEMPSENSOR_HOTEND] = 0; + if(htr.current_raw[TEMPSENSOR_HOTEND] >= htr.maxttemp) { + htr.target_raw[TEMPSENSOR_HOTEND] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); } #endif #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_AUX] >= maxttemp) { - target_raw[TEMPSENSOR_AUX] = 0; + if(htr.current_raw[TEMPSENSOR_AUX] >= htr.maxttemp) { + htr.target_raw[TEMPSENSOR_AUX] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); } @@ -447,15 +436,15 @@ ISR(TIMER0_COMPB_vect) #endif //MAXTEMP #ifdef MINTEMP #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND] <= minttemp) { - target_raw[TEMPSENSOR_HOTEND] = 0; + if(htr.current_raw[TEMPSENSOR_HOTEND] <= htr.minttemp) { + htr.target_raw[TEMPSENSOR_HOTEND] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); } #endif #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_AUX] <= minttemp) { - target_raw[TEMPSENSOR_AUX] = 0; + if(htr.current_raw[TEMPSENSOR_AUX] <= htr.minttemp) { + htr.target_raw[TEMPSENSOR_AUX] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); } @@ -463,8 +452,8 @@ ISR(TIMER0_COMPB_vect) #endif //MAXTEMP #ifdef BED_MINTEMP #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; + if(htr.current_raw[1] <= htr.bed_minttemp) { + htr.target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); } @@ -472,8 +461,8 @@ ISR(TIMER0_COMPB_vect) #endif #ifdef BED_MAXTEMP #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; + if(htr.current_raw[1] >= htr.bed_maxttemp) { + htr.target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); } @@ -481,3 +470,6 @@ ISR(TIMER0_COMPB_vect) #endif } } + +//Heater htr; + diff --git a/Marlin/temperature.h b/Marlin/temperature.h index e2e6c459c..a93d46ba4 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -25,14 +25,116 @@ #ifdef PID_ADD_EXTRUSION_RATE #include "stepper.h" #endif -void tp_init(); -void manage_heater(); -//int temp2analogu(int celsius, const short table[][2], int numtemps); -//float analog2tempu(int raw, const short table[][2], int numtemps); -float temp2analog(int celsius); -float temp2analogBed(int celsius); -float analog2temp(int raw); -float analog2tempBed(int raw); + +enum TempSensor {TEMPSENSOR_HOTEND=0,TEMPSENSOR_BED=1, TEMPSENSOR_AUX=2}; + +// ther must be only one instance of this class, and it is created in temperature.cpp by itself and is called "htr". +// all the variables are static, so that of the compiler optimization is more easy. +// I honestly hope that this increases readability and structure. +// none of the variables or routines should be called from an secondary process/interrupt with the exceptino of current_raw[]. + +class Heater +{ +public: + Heater(); //treplaces tp_init(); + ~Heater(); + + void static manage_heater(); /// it is critical that this is called continously. + + // conversion routines, const since they don't change any class variables. + float const static temp2analog(const int celsius); + float const static temp2analogBed(const int celsius); + float const static analog2temp(const int raw); + float const static analog2tempBed(const int raw); + + inline float const static celsius(const TempSensor s) + { + if(s==TEMPSENSOR_BED) + return analog2tempBed(Heater::current_raw[s]); + else + return analog2temp(Heater::current_raw[s]); + }; + inline float const static celsiusTarget(const TempSensor s) + { + if(s==TEMPSENSOR_BED) + return analog2tempBed(Heater::target_raw[s]); + else + return analog2temp(Heater::target_raw[s]); + }; + inline float static setCelsius(const TempSensor s, const int celsius) + { + #ifdef PIDTEMP + if(s==TEMPSENSOR_HOTEND) + Heater::pid_setpoint = celsius; + #endif //PIDTEM + if(s==TEMPSENSOR_BED) + Heater::target_raw[s] = temp2analog(celsius); + else + Heater::target_raw[s] = temp2analogBed(celsius); + }; + + inline bool const static isHeating(TempSensor s) + { return (Heater::target_raw[s]>Heater::current_raw[s]);}; + inline bool const static isCooling(TempSensor s) + { return (Heater::target_raw[s]3)||force_lcd_update) + int tt=Heater::celsius(TEMPSENSOR_HOTEND); + if((abs(tt-oldcurrent)>1)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); - oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(tt)); + oldcurrent=tt; } - if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) + int ttg=Heater::celsiusTarget(TEMPSENSOR_HOTEND); + if((ttg!=oldtarget)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); - oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(ttg)); + oldtarget=ttg; } #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - static int oldcurrentbedraw=-1; - static int oldtargetbedraw=-1; - if((current_bed_raw!=oldcurrentbedraw)||force_lcd_update) + static int oldcurrentbed=-1; + static int oldtargetbed=-1; + int tb=Heater::celsius(TEMPSENSOR_BED); + if((tb!=oldcurrentbed)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_bed_raw))); - oldcurrentraw=current_raw[TEMPSENSOR_BED]; + lcd.print(ftostr3(tb)); + oldcurrentbed=tb; } - if((target_bed_raw!=oldtargebedtraw)||force_lcd_update) + int tg=Heater::celsiusTarget(TEMPSENSOR_BED); + if((tg!=oldtargebed)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_bed_raw))); - oldtargetraw=target_bed_raw; + lcd.print(Heater::celsiusTarget(TEMPSENSOR_BED)); + oldtargebed=tg; } #endif //starttime=2; @@ -327,8 +330,8 @@ void MainMenu::showStatus() messagetext[0]='\0'; } #else //smaller LCDS---------------------------------- - static int oldcurrentraw=-1; - static int oldtargetraw=-1; + static int oldcurrent=-1; + static int oldtarget=-1; if(force_lcd_update) //initial display of content { encoderpos=feedmultiply; @@ -338,18 +341,19 @@ void MainMenu::showStatus() #endif } - - if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) + int tt=Heater::celsius(TEMPSENSOR_HOTEND); + if((abs(tt-oldcurrent)>1)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); - oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(tt)); + oldcurrent=tt; } - if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) + int ttg=Heater::celsiusTarget(TEMPSENSOR_HOTEND); + if((ttg!=oldtarget)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); - oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(ttg)); + oldtarge=ttg; } if(messagetext[0]!='\0') @@ -426,7 +430,7 @@ void MainMenu::showPrepare() if((activeline==line) && CLICKED) { BLOCK - target_raw[TEMPSENSOR_HOTEND] = temp2analog(170); + Heater::setCelsius(TEMPSENSOR_HOTEND, 170); beepshort(); } }break; @@ -531,7 +535,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" \002Nozzle:"); - lcd.setCursor(13,line);lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); + lcd.setCursor(13,line);lcd.print(ftostr3(Heater::celsiusTarget(TEMPSENSOR_HOTEND))); } if((activeline==line) ) @@ -541,11 +545,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)analog2temp(target_raw[TEMPSENSOR_HOTEND]); + encoderpos=(int)Heater::celsiusTarget(TEMPSENSOR_HOTEND); } else { - target_raw[TEMPSENSOR_HOTEND] = temp2analog(encoderpos); + Heater::setCelsius(TEMPSENSOR_HOTEND,encoderpos); encoderpos=activeline*lcdslow; beepshort(); } @@ -669,7 +673,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-P: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kp)); + lcd.setCursor(13,line);lcd.print(itostr4(Heater::Kp)); } if((activeline==line) ) @@ -679,11 +683,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Kp/5; + encoderpos=(int)Heater::Kp/5; } else { - Kp= encoderpos*5; + Heater::Kp= encoderpos*5; encoderpos=activeline*lcdslow; } @@ -703,7 +707,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-I: "); - lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); + lcd.setCursor(13,line);lcd.print(ftostr51(Heater::Ki)); } if((activeline==line) ) @@ -713,11 +717,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)(Ki*10); + encoderpos=(int)(Heater::Ki*10); } else { - Ki= encoderpos/10.; + Heater::Ki= encoderpos/10.; encoderpos=activeline*lcdslow; } @@ -737,7 +741,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-D: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kd)); + lcd.setCursor(13,line);lcd.print(itostr4(Heater::Kd)); } if((activeline==line) ) @@ -747,11 +751,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Kd/5; + encoderpos=(int)(Heater::Kd/5.); } else { - Kd= encoderpos*5; + Heater::Kd= encoderpos*5; encoderpos=activeline*lcdslow; } @@ -774,7 +778,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-C: "); - lcd.setCursor(13,line);lcd.print(itostr3(Kc)); + lcd.setCursor(13,line);lcd.print(itostr3(Heater::Kc)); } if((activeline==line) ) @@ -784,11 +788,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Kc; + encoderpos=(int)Heater::Kc; } else { - Kc= encoderpos; + Heater::Kc= encoderpos; encoderpos=activeline*lcdslow; } From b9ea0651ec52e0c7c20761c0409cd59259b984bf Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 5 Nov 2011 16:49:29 +0100 Subject: [PATCH 019/430] Revert "this is not working. Do you maybe know why?" This reverts commit 8bcdb9f5f062fe68d90e31752453e1d662b3f0e2. --- Marlin/EEPROMwrite.h | 16 ++--- Marlin/Marlin.h | 1 - Marlin/Marlin.pde | 80 ++++++++++++------------- Marlin/planner.cpp | 2 +- Marlin/stepper.cpp | 2 +- Marlin/temperature.cpp | 128 +++++++++++++++++++++------------------- Marlin/temperature.h | 131 +++++++---------------------------------- Marlin/ultralcd.pde | 90 ++++++++++++++-------------- 8 files changed, 182 insertions(+), 268 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 4e5364d80..2247e2f52 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -48,9 +48,9 @@ void StoreSettings() { EEPROM_writeAnything(i,max_xy_jerk); EEPROM_writeAnything(i,max_z_jerk); #ifdef PIDTEMP - EEPROM_writeAnything(i,Heater::Kp); - EEPROM_writeAnything(i,Heater::Ki); - EEPROM_writeAnything(i,Heater::Kd); + EEPROM_writeAnything(i,Kp); + EEPROM_writeAnything(i,Ki); + EEPROM_writeAnything(i,Kd); #else EEPROM_writeAnything(i,3000); EEPROM_writeAnything(i,0); @@ -81,11 +81,11 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will EEPROM_readAnything(i,max_xy_jerk); EEPROM_readAnything(i,max_z_jerk); #ifndef PIDTEMP - float Kp,Ki,Kd; //read and ignore.. + float Kp,Ki,Kd; #endif - EEPROM_readAnything(i,Heater::Kp); - EEPROM_readAnything(i,Heater::Ki); - EEPROM_readAnything(i,Heater::Kd); + EEPROM_readAnything(i,Kp); + EEPROM_readAnything(i,Ki); + EEPROM_readAnything(i,Kd); ECHOLN("Stored settings retreived:"); } @@ -119,7 +119,7 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); #ifdef PIDTEMP ECHOLN("PID settings:"); - ECHOLN(" M301 P" << _FLOAT(Heater::Kp,3) << " I" << _FLOAT(Heater::Ki,3) << " D" << _FLOAT(Heater::Kd,3)); + ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); #endif } diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 4cd4c8d39..f85dad357 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -10,7 +10,6 @@ #define ECHO(x) Serial << "echo: " << x; #define ECHOLN(x) Serial << "echo: "< current_raw[TEMPSENSOR_HOTEND]){ watchmillis = max(1,millis()); watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; }else{ @@ -813,14 +815,14 @@ inline void process_commands() #endif break; case 140: // M140 set bed temp - if (code_seen('S')) Heater::setCelsius(TEMPSENSOR_BED,code_value()); + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); break; case 105: // M105 #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = Heater::celsius(TEMPSENSOR_HOTEND); + tt = analog2temp(current_raw[TEMPSENSOR_HOTEND]); #endif #if TEMP_1_PIN > -1 - bt = Heater::celsius(TEMPSENSOR_BED); + bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); #endif #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) Serial.print("ok T:"); @@ -831,14 +833,14 @@ inline void process_commands() #ifdef PIDTEMP Serial.print(" B:"); #if TEMP_1_PIN > -1 - Serial.println(bt); + Serial.println(bt); #else - Serial.println(Heater::HeaterPower); + Serial.println(HeaterPower); #endif #else Serial.println(); #endif - #else< + #else Serial.println(); #endif #else @@ -848,12 +850,14 @@ inline void process_commands() //break; case 109: {// M109 - Wait for extruder heater to reach target. LCD_MESSAGE("Heating..."); - if (code_seen('S')) Heater::setCelsius(TEMPSENSOR_HOTEND,code_value()); - + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND] = temp2analog(code_value()); + #ifdef PIDTEMP + pid_setpoint = code_value(); + #endif //PIDTEM #ifdef WATCHPERIOD - if(Heater::isHeating(TEMPSENSOR_HOTEND)){ + if(target_raw[TEMPSENSOR_HOTEND]>current_raw[TEMPSENSOR_HOTEND]){ watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND] = Heater::current_raw[TEMPSENSOR_HOTEND]; + watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; } else { watchmillis = 0; } @@ -861,31 +865,31 @@ inline void process_commands() codenum = millis(); /* See if we are heating up or cooling down */ - bool target_direction = Heater::isHeating(TEMPSENSOR_HOTEND); // true if heating, false if cooling + bool target_direction = (current_raw[0] < target_raw[0]); // true if heating, false if cooling #ifdef TEMP_RESIDENCY_TIME long residencyStart; residencyStart = -1; /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? Heater::isHeating(TEMPSENSOR_HOTEND) : Heater::isCooling(TEMPSENSOR_HOTEND)) || + while((target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0])) || (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else - while ( target_direction ? Heater::isHeating(TEMPSENSOR_HOTEND) : Heater::isCooling(TEMPSENSOR_HOTEND) ) { + while ( target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0]) ) { #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down Serial.print("T:"); - Serial.println( Heater::celsius(TEMPSENSOR_HOTEND) ); + Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND]) ); codenum = millis(); } - Heater::manage_heater(); + manage_heater(); LCD_STATUS; #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && !Heater::isHeating(TEMPSENSOR_HOTEND)) || - (residencyStart == -1 && !target_direction && !Heater::isCooling(TEMPSENSOR_HOTEND)) || - (residencyStart > -1 && labs(Heater::celsius(TEMPSENSOR_HOTEND) - Heater::celsiusTarget(TEMPSENSOR_HOTEND)) > TEMP_HYSTERESIS) ) { + if ((residencyStart == -1 && target_direction && current_raw[0] >= target_raw[0]) || + (residencyStart == -1 && !target_direction && current_raw[0] <= target_raw[0]) || + (residencyStart > -1 && labs(analog2temp(current_raw[0]) - analog2temp(target_raw[0])) > TEMP_HYSTERESIS) ) { residencyStart = millis(); } #endif //TEMP_RESIDENCY_TIME @@ -895,22 +899,22 @@ inline void process_commands() break; case 190: // M190 - Wait bed for heater to reach target. #if TEMP_1_PIN > -1 - if (code_seen('S')) Heater::setCelsius(TEMPSENSOR_BED,code_value()); + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); codenum = millis(); - while(Heater::isHeating(TEMPSENSOR_BED)) - { + while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) + { if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { - float tt=Heater::celsius(TEMPSENSOR_HOTEND); + float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND]); Serial.print("T:"); Serial.println( tt ); Serial.print("ok T:"); Serial.print( tt ); Serial.print(" B:"); - Serial.println( Heater::celsius(TEMPSENSOR_BED) ); + Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); codenum = millis(); } - Heater::manage_heater(); + manage_heater(); } #endif break; @@ -1062,13 +1066,9 @@ inline void process_commands() break; #ifdef PIDTEMP case 301: // M301 - if(code_seen('P')) Heater::Kp = code_value(); - if(code_seen('I')) Heater::Ki = code_value()*PID_dT; - if(code_seen('D')) Heater::Kd = code_value()/PID_dT; - #ifdef PID_ADD_EXTRUSION_RATE - if(code_seen('C')) Heater::Kc = code_value(); - #endif - + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; // ECHOLN("Kp "<<_FLOAT(Kp,2)); // ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); // ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); @@ -1194,19 +1194,19 @@ void wd_reset() { inline void kill() { #if TEMP_0_PIN > -1 - Heater::setCelsius(TEMPSENSOR_HOTEND,0); + target_raw[0]=0; #if HEATER_0_PIN > -1 WRITE(HEATER_0_PIN,LOW); #endif #endif #if TEMP_1_PIN > -1 - Heater::setCelsius(TEMPSENSOR_BED,0); + target_raw[1]=0; #if HEATER_1_PIN > -1 WRITE(HEATER_1_PIN,LOW); #endif #endif #if TEMP_2_PIN > -1 - Heater::setCelsius(TEMPSENSOR_AUX,0); + target_raw[2]=0; #if HEATER_2_PIN > -1 WRITE(HEATER_2_PIN,LOW); #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index cfeb6b223..14f0bb104 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -388,7 +388,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { // If the buffer is full: good! That means we are well ahead of the robot. // Rest here until there is room in the buffer. while(block_buffer_tail == next_buffer_head) { - htr.manage_heater(); + manage_heater(); manage_inactivity(1); LCD_STATUS; } diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 01ff430f3..f4bd1289e 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -585,7 +585,7 @@ void st_init() void st_synchronize() { while(plan_get_current_block()) { - htr.manage_heater(); + manage_heater(); manage_inactivity(1); LCD_STATUS; } diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 9be4bdc2f..ebc772e1d 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -37,11 +37,52 @@ #include "streaming.h" #include "temperature.h" +int target_bed_raw = 0; +int current_bed_raw = 0; +int target_raw[3] = {0, 0, 0}; +int current_raw[3] = {0, 0, 0}; +unsigned char temp_meas_ready = false; +unsigned long previous_millis_heater, previous_millis_bed_heater; +#ifdef PIDTEMP + double temp_iState = 0; + double temp_dState = 0; + double pTerm; + double iTerm; + double dTerm; + //int output; + double pid_error; + double temp_iState_min; + double temp_iState_max; + double pid_setpoint = 0.0; + double pid_input; + double pid_output; + bool pid_reset; + float HeaterPower; + + float Kp=DEFAULT_Kp; + float Ki=DEFAULT_Ki; + float Kd=DEFAULT_Kd; + float Kc=DEFAULT_Kc; +#endif //PIDTEMP -void static Heater::manage_heater() +#ifdef MINTEMP +int minttemp = temp2analog(MINTEMP); +#endif //MINTEMP +#ifdef MAXTEMP +int maxttemp = temp2analog(MAXTEMP); +#endif //MAXTEMP + +#ifdef BED_MINTEMP +int bed_minttemp = temp2analog(BED_MINTEMP); +#endif //BED_MINTEMP +#ifdef BED_MAXTEMP +int bed_maxttemp = temp2analog(BED_MAXTEMP); +#endif //BED_MAXTEMP + +void manage_heater() { #ifdef USE_WATCHDOG wd_reset(); @@ -49,11 +90,11 @@ void static Heater::manage_heater() float pid_input; float pid_output; - if(htr.temp_meas_ready != true) //better readability + if(temp_meas_ready != true) //better readability return; CRITICAL_SECTION_START; - htr.temp_meas_ready = false; + temp_meas_ready = false; CRITICAL_SECTION_END; #ifdef PIDTEMP @@ -135,8 +176,7 @@ CRITICAL_SECTION_END; // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -float const static temp2analog(const int celsius) -{ +float temp2analog(int celsius) { #ifdef HEATER_USES_THERMISTOR_1 int raw = 0; byte i; @@ -167,8 +207,7 @@ float const static temp2analog(const int celsius) // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -float const static temp2analogBed(const int celsius) -{ +float temp2analogBed(int celsius) { #ifdef BED_USES_THERMISTOR int raw = 0; @@ -198,7 +237,7 @@ float const static temp2analogBed(const int celsius) // Derived from RepRap FiveD extruder::getTemperature() // For hot end temperature measurement. -float const static Heater::analog2temp(const int raw) { +float analog2temp(int raw) { #ifdef HEATER_1_USES_THERMISTOR int celsius = 0; byte i; @@ -227,7 +266,7 @@ float const static Heater::analog2temp(const int raw) { // Derived from RepRap FiveD extruder::getTemperature() // For bed temperature measurement. -float const static Heater::analog2tempBed(const int raw) { +float analog2tempBed(int raw) { #ifdef BED_USES_THERMISTOR int celsius = 0; byte i; @@ -257,28 +296,8 @@ float const static Heater::analog2tempBed(const int raw) { #endif } -Heater::Heater() +void tp_init() { - for(short i=0;i<3;i++) - { - target_raw[i]=0; - current_raw[i] =0; - } - htr.temp_meas_ready = false; - #ifdef MINTEMP - minttemp = temp2analog(MINTEMP); - #endif //MINTEMP - #ifdef MAXTEMP - maxttemp = temp2analog(MAXTEMP); - #endif //MAXTEMP - - #ifdef BED_MINTEMP - bed_minttemp = temp2analog(BED_MINTEMP); - #endif //BED_MINTEMP - #ifdef BED_MAXTEMP - bed_maxttemp = temp2analog(BED_MAXTEMP); - #endif //BED_MAXTEMP - #if (HEATER_0_PIN > -1) SET_OUTPUT(HEATER_0_PIN); #endif @@ -292,14 +311,6 @@ Heater::Heater() #ifdef PIDTEMP temp_iState_min = 0.0; temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; - temp_iState = 0; - temp_dState = 0; - Kp=DEFAULT_Kp; - Ki=DEFAULT_Ki; - Kd=DEFAULT_Kd; - Kc=DEFAULT_Kc; - pid_setpoint = 0.0; - #endif //PIDTEMP // Set analog inputs @@ -396,39 +407,39 @@ ISR(TIMER0_COMPB_vect) if(temp_count >= 16) // 6 ms * 16 = 96ms. { #ifdef HEATER_1_USES_AD595 - htr.current_raw[0] = raw_temp_0_value; + current_raw[0] = raw_temp_0_value; #else - htr.current_raw[0] = 16383 - raw_temp_0_value; + current_raw[0] = 16383 - raw_temp_0_value; #endif #ifdef HEATER_2_USES_AD595 - htr.current_raw[2] = raw_temp_2_value; + current_raw[2] = raw_temp_2_value; #else - htr.current_raw[2] = 16383 - raw_temp_2_value; + current_raw[2] = 16383 - raw_temp_2_value; #endif #ifdef BED_USES_AD595 - htr.current_raw[1] = raw_temp_1_value; + current_raw[1] = raw_temp_1_value; #else - htr.current_raw[1] = 16383 - raw_temp_1_value; + current_raw[1] = 16383 - raw_temp_1_value; #endif - htr.temp_meas_ready = true; + temp_meas_ready = true; temp_count = 0; raw_temp_0_value = 0; raw_temp_1_value = 0; raw_temp_2_value = 0; #ifdef MAXTEMP #if (HEATER_0_PIN > -1) - if(htr.current_raw[TEMPSENSOR_HOTEND] >= htr.maxttemp) { - htr.target_raw[TEMPSENSOR_HOTEND] = 0; + if(current_raw[TEMPSENSOR_HOTEND] >= maxttemp) { + target_raw[TEMPSENSOR_HOTEND] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); } #endif #if (HEATER_2_PIN > -1) - if(htr.current_raw[TEMPSENSOR_AUX] >= htr.maxttemp) { - htr.target_raw[TEMPSENSOR_AUX] = 0; + if(current_raw[TEMPSENSOR_AUX] >= maxttemp) { + target_raw[TEMPSENSOR_AUX] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); } @@ -436,15 +447,15 @@ ISR(TIMER0_COMPB_vect) #endif //MAXTEMP #ifdef MINTEMP #if (HEATER_0_PIN > -1) - if(htr.current_raw[TEMPSENSOR_HOTEND] <= htr.minttemp) { - htr.target_raw[TEMPSENSOR_HOTEND] = 0; + if(current_raw[TEMPSENSOR_HOTEND] <= minttemp) { + target_raw[TEMPSENSOR_HOTEND] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); } #endif #if (HEATER_2_PIN > -1) - if(htr.current_raw[TEMPSENSOR_AUX] <= htr.minttemp) { - htr.target_raw[TEMPSENSOR_AUX] = 0; + if(current_raw[TEMPSENSOR_AUX] <= minttemp) { + target_raw[TEMPSENSOR_AUX] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); } @@ -452,8 +463,8 @@ ISR(TIMER0_COMPB_vect) #endif //MAXTEMP #ifdef BED_MINTEMP #if (HEATER_1_PIN > -1) - if(htr.current_raw[1] <= htr.bed_minttemp) { - htr.target_raw[1] = 0; + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); } @@ -461,8 +472,8 @@ ISR(TIMER0_COMPB_vect) #endif #ifdef BED_MAXTEMP #if (HEATER_1_PIN > -1) - if(htr.current_raw[1] >= htr.bed_maxttemp) { - htr.target_raw[1] = 0; + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); } @@ -470,6 +481,3 @@ ISR(TIMER0_COMPB_vect) #endif } } - -//Heater htr; - diff --git a/Marlin/temperature.h b/Marlin/temperature.h index a93d46ba4..e2e6c459c 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -25,116 +25,14 @@ #ifdef PID_ADD_EXTRUSION_RATE #include "stepper.h" #endif - -enum TempSensor {TEMPSENSOR_HOTEND=0,TEMPSENSOR_BED=1, TEMPSENSOR_AUX=2}; - -// ther must be only one instance of this class, and it is created in temperature.cpp by itself and is called "htr". -// all the variables are static, so that of the compiler optimization is more easy. -// I honestly hope that this increases readability and structure. -// none of the variables or routines should be called from an secondary process/interrupt with the exceptino of current_raw[]. - -class Heater -{ -public: - Heater(); //treplaces tp_init(); - ~Heater(); - - void static manage_heater(); /// it is critical that this is called continously. - - // conversion routines, const since they don't change any class variables. - float const static temp2analog(const int celsius); - float const static temp2analogBed(const int celsius); - float const static analog2temp(const int raw); - float const static analog2tempBed(const int raw); - - inline float const static celsius(const TempSensor s) - { - if(s==TEMPSENSOR_BED) - return analog2tempBed(Heater::current_raw[s]); - else - return analog2temp(Heater::current_raw[s]); - }; - inline float const static celsiusTarget(const TempSensor s) - { - if(s==TEMPSENSOR_BED) - return analog2tempBed(Heater::target_raw[s]); - else - return analog2temp(Heater::target_raw[s]); - }; - inline float static setCelsius(const TempSensor s, const int celsius) - { - #ifdef PIDTEMP - if(s==TEMPSENSOR_HOTEND) - Heater::pid_setpoint = celsius; - #endif //PIDTEM - if(s==TEMPSENSOR_BED) - Heater::target_raw[s] = temp2analog(celsius); - else - Heater::target_raw[s] = temp2analogBed(celsius); - }; - - inline bool const static isHeating(TempSensor s) - { return (Heater::target_raw[s]>Heater::current_raw[s]);}; - inline bool const static isCooling(TempSensor s) - { return (Heater::target_raw[s]1)||force_lcd_update) + + if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(tt)); - oldcurrent=tt; + lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); + oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; } - int ttg=Heater::celsiusTarget(TEMPSENSOR_HOTEND); - if((ttg!=oldtarget)||force_lcd_update) + if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(ttg)); - oldtarget=ttg; + lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); + oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; } #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - static int oldcurrentbed=-1; - static int oldtargetbed=-1; - int tb=Heater::celsius(TEMPSENSOR_BED); - if((tb!=oldcurrentbed)||force_lcd_update) + static int oldcurrentbedraw=-1; + static int oldtargetbedraw=-1; + if((current_bed_raw!=oldcurrentbedraw)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(tb)); - oldcurrentbed=tb; + lcd.print(ftostr3(analog2temp(current_bed_raw))); + oldcurrentraw=current_raw[TEMPSENSOR_BED]; } - int tg=Heater::celsiusTarget(TEMPSENSOR_BED); - if((tg!=oldtargebed)||force_lcd_update) + if((target_bed_raw!=oldtargebedtraw)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(Heater::celsiusTarget(TEMPSENSOR_BED)); - oldtargebed=tg; + lcd.print(ftostr3(analog2temp(target_bed_raw))); + oldtargetraw=target_bed_raw; } #endif //starttime=2; @@ -330,8 +327,8 @@ void MainMenu::showStatus() messagetext[0]='\0'; } #else //smaller LCDS---------------------------------- - static int oldcurrent=-1; - static int oldtarget=-1; + static int oldcurrentraw=-1; + static int oldtargetraw=-1; if(force_lcd_update) //initial display of content { encoderpos=feedmultiply; @@ -341,19 +338,18 @@ void MainMenu::showStatus() #endif } - int tt=Heater::celsius(TEMPSENSOR_HOTEND); - if((abs(tt-oldcurrent)>1)||force_lcd_update) + + if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(tt)); - oldcurrent=tt; + lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); + oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; } - int ttg=Heater::celsiusTarget(TEMPSENSOR_HOTEND); - if((ttg!=oldtarget)||force_lcd_update) + if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(ttg)); - oldtarge=ttg; + lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); + oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; } if(messagetext[0]!='\0') @@ -430,7 +426,7 @@ void MainMenu::showPrepare() if((activeline==line) && CLICKED) { BLOCK - Heater::setCelsius(TEMPSENSOR_HOTEND, 170); + target_raw[TEMPSENSOR_HOTEND] = temp2analog(170); beepshort(); } }break; @@ -535,7 +531,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" \002Nozzle:"); - lcd.setCursor(13,line);lcd.print(ftostr3(Heater::celsiusTarget(TEMPSENSOR_HOTEND))); + lcd.setCursor(13,line);lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); } if((activeline==line) ) @@ -545,11 +541,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Heater::celsiusTarget(TEMPSENSOR_HOTEND); + encoderpos=(int)analog2temp(target_raw[TEMPSENSOR_HOTEND]); } else { - Heater::setCelsius(TEMPSENSOR_HOTEND,encoderpos); + target_raw[TEMPSENSOR_HOTEND] = temp2analog(encoderpos); encoderpos=activeline*lcdslow; beepshort(); } @@ -673,7 +669,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-P: "); - lcd.setCursor(13,line);lcd.print(itostr4(Heater::Kp)); + lcd.setCursor(13,line);lcd.print(itostr4(Kp)); } if((activeline==line) ) @@ -683,11 +679,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Heater::Kp/5; + encoderpos=(int)Kp/5; } else { - Heater::Kp= encoderpos*5; + Kp= encoderpos*5; encoderpos=activeline*lcdslow; } @@ -707,7 +703,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-I: "); - lcd.setCursor(13,line);lcd.print(ftostr51(Heater::Ki)); + lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); } if((activeline==line) ) @@ -717,11 +713,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)(Heater::Ki*10); + encoderpos=(int)(Ki*10); } else { - Heater::Ki= encoderpos/10.; + Ki= encoderpos/10.; encoderpos=activeline*lcdslow; } @@ -741,7 +737,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-D: "); - lcd.setCursor(13,line);lcd.print(itostr4(Heater::Kd)); + lcd.setCursor(13,line);lcd.print(itostr4(Kd)); } if((activeline==line) ) @@ -751,11 +747,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)(Heater::Kd/5.); + encoderpos=(int)Kd/5; } else { - Heater::Kd= encoderpos*5; + Kd= encoderpos*5; encoderpos=activeline*lcdslow; } @@ -778,7 +774,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" PID-C: "); - lcd.setCursor(13,line);lcd.print(itostr3(Heater::Kc)); + lcd.setCursor(13,line);lcd.print(itostr3(Kc)); } if((activeline==line) ) @@ -788,11 +784,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Heater::Kc; + encoderpos=(int)Kc; } else { - Heater::Kc= encoderpos; + Kc= encoderpos; encoderpos=activeline*lcdslow; } From ea86a5e10f7b8c0b2e0e0bf97a1fc95dbac4ae89 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 5 Nov 2011 16:53:37 +0100 Subject: [PATCH 020/430] moved the variables in the ISR, thats the most normal use case of static. --- Marlin/temperature.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index ebc772e1d..25df2f701 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -322,15 +322,18 @@ void tp_init() TIMSK0 |= (1< -1) From d15f01e1b45119838900da53128c619ebe93895d Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 5 Nov 2011 19:21:36 +0100 Subject: [PATCH 021/430] Temperature changes --- Marlin/Configuration.h | 22 ++++---- Marlin/Marlin.h | 2 +- Marlin/Marlin.pde | 2 + Marlin/temperature.cpp | 86 ++++++++++++++++++------------- Marlin/temperature.h | 4 +- Marlin/thermistortables.h | 106 +++++++++++++++++++------------------- 6 files changed, 121 insertions(+), 101 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b8c41301c..dd5fe4152 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -27,10 +27,10 @@ #define THERMISTORHEATER_2 3 #define THERMISTORBED 3 +//#define HEATER_0_USES_THERMISTOR //#define HEATER_1_USES_THERMISTOR -//#define HEATER_2_USES_THERMISTOR -#define HEATER_1_USES_AD595 -//#define HEATER_2_USES_AD595 +#define HEATER_0_USES_AD595 +//#define HEATER_1_USES_AD595 // Select one of these only to define how the bed temp is read. //#define BED_USES_THERMISTOR @@ -47,8 +47,8 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false // This determines the communication speed of the printer -//#define BAUDRATE 250000 -#define BAUDRATE 115200 +#define BAUDRATE 250000 +//#define BAUDRATE 115200 //#define BAUDRATE 230400 // Comment out (using // at the start of the line) to disable SD support: @@ -57,7 +57,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define LCD_WIDTH 16 #define LCD_HEIGHT 2 -//#define ULTIPANEL +#define ULTIPANEL #ifdef ULTIPANEL //#define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT @@ -157,15 +157,17 @@ const int dropsegments=5; //everything with this number of steps will be ignore //#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one //// The minimal temperature defines the temperature below which the heater will not be enabled -#define MINTEMP 5 -#define BED_MINTEMP 5 +#define HEATER_0_MINTEMP 5 +//#define HEATER_1_MINTEMP 5 +//#define BED_MINTEMP 5 // When temperature exceeds max temp, your heater will be switched off. // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // You should use MINTEMP for thermistor short/failure protection. -#define MAXTEMP 275 -#define BED_MAXTEMP 150 +#define HEATER_0_MAXTEMP 275 +//#define_HEATER_1_MAXTEMP 275 +//#define BED_MAXTEMP 150 /// PID settings: // Uncomment the following line to enable PID support. diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index cc43f00b2..130cd865e 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -57,7 +57,7 @@ void ClearToSend(); void get_coordinates(); void prepare_move(); -void kill(byte debug); +void kill(); //void check_axes_activity(); //void plan_init(); diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index cb55131df..a95ae1fe9 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -54,6 +54,8 @@ char version_string[] = "1.0.0 Alpha 1"; //------------------- // G0 -> G1 // G1 - Coordinated Movement X Y Z E +// G2 - CW ARC +// G3 - CCW ARC // G4 - Dwell S or P // G28 - Home all Axis // G90 - Use Absolute Coordinates diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 7a9c56e10..4406e9480 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -68,11 +68,18 @@ unsigned long previous_millis_heater, previous_millis_bed_heater; float Kc=DEFAULT_Kc; #endif //PIDTEMP -#ifdef MINTEMP -int minttemp = temp2analog(MINTEMP); +#ifdef HEATER_0_MINTEMP +int minttemp_0 = temp2analog(HEATER_0_MINTEMP); #endif //MINTEMP -#ifdef MAXTEMP -int maxttemp = temp2analog(MAXTEMP); +#ifdef HEATER_0_MAXTEMP +int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); +#endif //MAXTEMP + +#ifdef HEATER_1_MINTEMP +int minttemp_1 = temp2analog(HEATER_1_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_1_MAXTEMP +int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); #endif //MAXTEMP #ifdef BED_MINTEMP @@ -173,29 +180,28 @@ CRITICAL_SECTION_END; // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -float temp2analog(int celsius) { - #ifdef HEATER_USES_THERMISTOR_1 +int temp2analog(int celsius) { + #ifdef HEATER_0_USES_THERMISTOR int raw = 0; byte i; - for (i=1; i raw) + if (heater_0_temptable[i][0] > raw) { - celsius = temptable_1[i-1][1] + - (raw - temptable_1[i-1][0]) * - (temptable_1[i][1] - temptable_1[i-1][1]) / - (temptable_1[i][0] - temptable_1[i-1][0]); + celsius = heater_0_temptable[i-1][1] + + (raw - heater_0_temptable[i-1][0]) * + (float)(heater_0_temptable[i][1] - heater_0_temptable[i-1][1]) / + (float)(heater_0_temptable[i][0] - heater_0_temptable[i-1][0]); break; } } // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_1) celsius = temptable_1[i-1][1]; + if (i == NUMTEMPS_HEATER_0) celsius = heater_0_temptable[i-1][1]; return celsius; - #elif defined HEATER_1_USES_AD595 + #elif defined HEATER_0_USES_AD595 return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; #endif } @@ -403,13 +409,13 @@ ISR(TIMER0_COMPB_vect) if(temp_count >= 16) // 6 ms * 16 = 96ms. { - #ifdef HEATER_1_USES_AD595 + #ifdef HEATER_0_USES_AD595 current_raw[0] = raw_temp_0_value; #else current_raw[0] = 16383 - raw_temp_0_value; #endif - #ifdef HEATER_2_USES_AD595 + #ifdef HEATER_1_USES_AD595 current_raw[2] = raw_temp_2_value; #else current_raw[2] = 16383 - raw_temp_2_value; @@ -426,35 +432,43 @@ ISR(TIMER0_COMPB_vect) raw_temp_0_value = 0; raw_temp_1_value = 0; raw_temp_2_value = 0; -#ifdef MAXTEMP +#ifdef HEATER_0_MAXTEMP #if (HEATER_0_PIN > -1) - if(current_raw[0] >= maxttemp) { + if(current_raw[0] >= maxttemp_0) { target_raw[0] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); + kill(); } #endif - #if (HEATER_2_PIN > -1) - if(current_raw[2] >= maxttemp) { +#endif +#ifdef HEATER_1_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[2] >= maxttemp_1) { target_raw[2] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); + kill() } #endif #endif //MAXTEMP -#ifdef MINTEMP +#ifdef HEATER_0_MINTEMP #if (HEATER_0_PIN > -1) - if(current_raw[0] <= minttemp) { + if(current_raw[0] <= minttemp_0) { target_raw[0] = 0; analogWrite(HEATER_0_PIN, 0); Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); + kill(); } #endif +#endif +#ifdef HEATER_1_MINTEMP #if (HEATER_2_PIN > -1) - if(current_raw[2] <= minttemp) { + if(current_raw[2] <= minttemp_1) { target_raw[2] = 0; analogWrite(HEATER_2_PIN, 0); Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); + kill(); } #endif #endif //MAXTEMP @@ -464,6 +478,7 @@ ISR(TIMER0_COMPB_vect) target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); + kill(); } #endif #endif @@ -473,6 +488,7 @@ ISR(TIMER0_COMPB_vect) target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); + kill(); } #endif #endif diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 986aca999..7d9b7926e 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -27,8 +27,8 @@ void tp_init(); void manage_heater(); //int temp2analogu(int celsius, const short table[][2], int numtemps); //float analog2tempu(int raw, const short table[][2], int numtemps); -float temp2analog(int celsius); -float temp2analogBed(int celsius); +int temp2analog(int celsius); +int temp2analogBed(int celsius); float analog2temp(int raw); float analog2tempBed(int raw); diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 0ea1991dc..9e3af6c52 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -3,7 +3,7 @@ #define OVERSAMPLENR 16 -#if (THERMISTORHEATER_1 == 1) || (THERMISTORHEATER_2 == 1) || (THERMISTORBED == 1) //100k bed thermistor +#if (THERMISTORHEATER_0 == 1) || (THERMISTORHEATER_1 == 1) || (THERMISTORBED == 1) //100k bed thermistor #define NUMTEMPS_1 61 const short temptable_1[NUMTEMPS_1][2] = { @@ -70,7 +70,7 @@ const short temptable_1[NUMTEMPS_1][2] = { { 1008*OVERSAMPLENR , 0 } //safety }; #endif -#if (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor +#if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORBED == 2) //200k bed thermistor #define NUMTEMPS_2 21 const short temptable_2[NUMTEMPS_2][2] = { {1*OVERSAMPLENR, 848}, @@ -97,7 +97,7 @@ const short temptable_2[NUMTEMPS_2][2] = { }; #endif -#if (THERMISTORHEATER_1 == 3) || (THERMISTORHEATER_2 == 3) || (THERMISTORBED == 3) //mendel-parts +#if (THERMISTORHEATER_0 == 3) || (THERMISTORHEATER_1 == 3) || (THERMISTORBED == 3) //mendel-parts #define NUMTEMPS_3 28 const short temptable_3[NUMTEMPS_3][2] = { {1*OVERSAMPLENR,864}, @@ -131,7 +131,7 @@ const short temptable_3[NUMTEMPS_3][2] = { }; #endif -#if (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor +#if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORBED == 4) //10k thermistor #define NUMTEMPS_4 20 short temptable_4[NUMTEMPS_4][2] = { @@ -158,7 +158,7 @@ short temptable_4[NUMTEMPS_4][2] = { }; #endif -#if (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) +#if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) #define NUMTEMPS_5 61 const short temptable_5[NUMTEMPS_5][2] = { @@ -226,7 +226,7 @@ const short temptable_5[NUMTEMPS_5][2] = { }; #endif -#if (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor +#if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor #define NUMTEMPS_6 36 const short temptable_6[NUMTEMPS_6][2] = { {28*OVERSAMPLENR, 250}, @@ -268,7 +268,7 @@ const short temptable_6[NUMTEMPS_6][2] = { }; #endif -#if (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 +#if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 #define NUMTEMPS_7 54 const short temptable_7[NUMTEMPS_7][2] = { {46*OVERSAMPLENR, 270}, @@ -330,54 +330,54 @@ const short temptable_7[NUMTEMPS_7][2] = { -#if THERMISTORHEATER_1 == 1 -#define NUMTEMPS_HEATER_1 NUMTEMPS_1 -#define temptable_1 temptable_1 -#elif THERMISTORHEATER_1 == 2 -#define NUMTEMPS_HEATER_1 NUMTEMPS_2 -#define temptable_1 temptable_2 -#elif THERMISTORHEATER_1 == 3 -#define NUMTEMPS_HEATER_1 NUMTEMPS_3 -#define temptable_1 temptable_3 -#elif THERMISTORHEATER_1 == 4 -#define NUMTEMPS_HEATER_1 NUMTEMPS_4 -#define temptable_1 temptable_4 -#elif THERMISTORHEATER_1 == 5 -#define NUMTEMPS_HEATER_1 NUMTEMPS_5 -#define temptable_1 temptable_5 -#elif THERMISTORHEATER_1 == 6 -#define NUMTEMPS_HEATER_1 NUMTEMPS_6 -#define temptable_1 temptable_6 -#elif THERMISTORHEATER_1 == 7 -#define NUMTEMPS_HEATER_1 NUMTEMPS_7 -#define temptable_1 temptable_7 -#elif defined HEATER_1_USES_THERMISTOR -#error No heater 1 thermistor table specified +#if THERMISTORHEATER_0 == 1 +#define NUMTEMPS_HEATER_0 NUMTEMPS_1 +#define heater_0_temptable temptable_1 +#elif THERMISTORHEATER_0 == 2 +#define NUMTEMPS_HEATER_0 NUMTEMPS_2 +#define heater_0_temptable temptable_2 +#elif THERMISTORHEATER_0 == 3 +#define NUMTEMPS_HEATER_0 NUMTEMPS_3 +#define heater_0_temptable temptable_3 +#elif THERMISTORHEATER_0 == 4 +#define NUMTEMPS_HEATER_0 NUMTEMPS_4 +#define heater_0_temptable temptable_4 +#elif THERMISTORHEATER_0 == 5 +#define NUMTEMPS_HEATER_0 NUMTEMPS_5 +#define heater_0_temptable temptable_5 +#elif THERMISTORHEATER_0 == 6 +#define NUMTEMPS_HEATER_0 NUMTEMPS_6 +#define heater_0_temptable temptable_6 +#elif THERMISTORHEATER_0 == 7 +#define NUMTEMPS_HEATER_0 NUMTEMPS_7 +#define heater_0_temptable temptable_7 +#elif defined HEATER_0_USES_THERMISTOR +#error No heater 0 thermistor table specified #endif -#if THERMISTORHEATER_2 == 1 -#define NUMTEMPS_HEATER_2 NUMTEMPS_1 -#define temptable_2 temptable_1 -#elif THERMISTORHEATER_2 == 2 -#define NUMTEMPS_HEATER_2 NUMTEMPS_2 -#define temptable_2 temptable_2 -#elif THERMISTORHEATER_2 == 3 -#define NUMTEMPS_HEATER_2 NUMTEMPS_3 -#define temptable_2 temptable_3 -#elif THERMISTORHEATER_2 == 4 -#define NUMTEMPS_HEATER_2 NUMTEMPS_4 -#define temptable_2 temptable_4 -#elif THERMISTORHEATER_2 == 5 -#define NUMTEMPS_HEATER_2 NUMTEMPS_5 -#define temptable_2 temptable_5 -#elif THERMISTORHEATER_2 == 6 -#define NUMTEMPS_HEATER_2 NUMTEMPS_6 -#define temptable_2 temptable_6 -#elif THERMISTORHEATER_2 == 7 -#define NUMTEMPS_HEATER22 NUMTEMPS_7 -#define temptable_2 temptable_7 -#elif defined HEATER_2_USES_THERMISTOR -#error No heater 2 thermistor table specified +#if THERMISTORHEATER_1 == 1 +#define NUMTEMPS_HEATER_1 NUMTEMPS_1 +#define heater_1_temptable temptable_1 +#elif THERMISTORHEATER_1 == 2 +#define NUMTEMPS_HEATER_1 NUMTEMPS_2 +#define heater_1_temptable temptable_2 +#elif THERMISTORHEATER_1 == 3 +#define NUMTEMPS_HEATER_1 NUMTEMPS_3 +#define heater_1_temptable temptable_3 +#elif THERMISTORHEATER_1 == 4 +#define NUMTEMPS_HEATER_1 NUMTEMPS_4 +#define heater_1_temptable temptable_4 +#elif THERMISTORHEATER_1 == 5 +#define NUMTEMPS_HEATER_1 NUMTEMPS_5 +#define heater_1_temptable temptable_5 +#elif THERMISTORHEATER_1 == 6 +#define NUMTEMPS_HEATER_1 NUMTEMPS_6 +#define heater_1_temptable temptable_6 +#elif THERMISTORHEATER_1 == 7 +#define NUMTEMPS_HEATER_1 NUMTEMPS_7 +#define heater_1_temptable temptable_7 +#elif defined HEATER_1_USES_THERMISTOR +#error No heater 1 thermistor table specified #endif From 2e8e8878e55f1455155e43590afbaa1ed21e8e3f Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 5 Nov 2011 20:21:09 +0100 Subject: [PATCH 022/430] Corrected temp variables. --- Marlin/Configuration.h | 490 ++++---- Marlin/Marlin.pde | 2470 ++++++++++++++++++++-------------------- Marlin/temperature.cpp | 1004 ++++++++-------- Marlin/temperature.h | 116 +- Marlin/ultralcd.pde | 22 +- 5 files changed, 2052 insertions(+), 2050 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index ed258c71a..e2d5cb077 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,245 +1,245 @@ -#ifndef CONFIGURATION_H -#define CONFIGURATION_H - -//#define DEBUG_STEPS - -// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration - -//// The following define selects which electronics board you have. Please choose the one that matches your setup -// MEGA/RAMPS up to 1.2 = 3, -// RAMPS 1.3 = 33 -// Gen6 = 5, -// Sanguinololu 1.2 and above = 62 -// Ultimaker = 7, -#define MOTHERBOARD 7 -//#define MOTHERBOARD 5 - - -//// Thermistor settings: -// 1 is 100k thermistor -// 2 is 200k thermistor -// 3 is mendel-parts thermistor -// 4 is 10k thermistor -// 5 is ParCan supplied 104GT-2 100K -// 6 is EPCOS 100k -// 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define THERMISTORHEATER_1 3 -#define THERMISTORHEATER_2 3 -#define THERMISTORBED 3 - -//#define HEATER_0_USES_THERMISTOR -//#define HEATER_1_USES_THERMISTOR -#define HEATER_0_USES_AD595 -//#define HEATER_1_USES_AD595 - -// Select one of these only to define how the bed temp is read. -//#define BED_USES_THERMISTOR -//#define BED_USES_AD595 - -#define HEATER_CHECK_INTERVAL 50 -#define BED_CHECK_INTERVAL 5000 - - -//// Endstop Settings -#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors -// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false - -// This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 -//#define BAUDRATE 230400 - -// Comment out (using // at the start of the line) to disable SD support: - -// #define ULTRA_LCD //any lcd - -#define ULTIPANEL -#define ULTIPANEL -#ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel - #define SDSUPPORT - #define ULTRA_LCD - #define LCD_WIDTH 20 -#define LCD_HEIGHT 4 -#else //no panel but just lcd - #ifdef ULTRA_LCD - #define LCD_WIDTH 16 - #define LCD_HEIGHT 2 - #endif -#endif - - -//#define SDSUPPORT // Enable SD Card Support in Hardware Console - - - -const int dropsegments=5; //everything with this number of steps will be ignored as move - -//// ADVANCED SETTINGS - to tweak parameters - -#include "thermistortables.h" - -// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 -#define X_ENABLE_ON 0 -#define Y_ENABLE_ON 0 -#define Z_ENABLE_ON 0 -#define E_ENABLE_ON 0 - -// Disables axis when it's not being used. -#define DISABLE_X false -#define DISABLE_Y false -#define DISABLE_Z false -#define DISABLE_E false - -// Inverting axis direction -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false - -//// ENDSTOP SETTINGS: -// Sets direction of endstops when homing; 1=MAX, -1=MIN -#define X_HOME_DIR -1 -#define Y_HOME_DIR -1 -#define Z_HOME_DIR -1 - -#define min_software_endstops false //If true, axis won't move to coordinates less than zero. -#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 210 -#define Y_MAX_LENGTH 210 -#define Z_MAX_LENGTH 210 - -//// MOVEMENT SETTINGS -#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -//note: on bernhards ultimaker 200 200 12 are working well. -#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds -//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. -//!!!!!!Use only if you know that your printer works at the maximum declared speeds. -// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze -#define TRAVELING_AT_MAXSPEED -#define AXIS_RELATIVE_MODES {false, false, false, false} - -#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) - -// default settings - -#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker -#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} -#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. - -#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts - -#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 10 - -// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. -#define DEFAULT_MINSEGMENTTIME 20000 -#define DEFAULT_XYJERK 30.0*60 -#define DEFAULT_ZJERK 10.0*60 - - -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -//this enables the watchdog interrupt. -#define USE_WATCHDOG -//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: -#define RESET_MANUAL - -#define WATCHDOG_TIMEOUT 4 - - - -//// Experimental watchdog and minimal temp -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 -//#define WATCHPERIOD 5000 //5 seconds - -// Actual temperature must be close to target for this long before M109 returns success -//#define TEMP_RESIDENCY_TIME 20 // (seconds) -//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one - -//// The minimal temperature defines the temperature below which the heater will not be enabled -#define HEATER_0_MINTEMP 5 -//#define HEATER_1_MINTEMP 5 -//#define BED_MINTEMP 5 - - -// When temperature exceeds max temp, your heater will be switched off. -// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! -// You should use MINTEMP for thermistor short/failure protection. -#define HEATER_0_MAXTEMP 275 -//#define_HEATER_1_MAXTEMP 275 -//#define BED_MAXTEMP 150 - - - - - - - -#define PIDTEMP -#ifdef PIDTEMP - /// PID settings: - // Uncomment the following line to enable PID support. - //#define SMOOTHING - //#define SMOOTHFACTOR 5.0 - //float current_raw_average=0; - #define K1 0.95 //smoothing of the PID - //#define PID_DEBUG // Sends debug data to the serial port. - //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % - #define PID_MAX 255 // limits current to nozzle - #define PID_INTEGRAL_DRIVE_MAX 255 - #define PID_dT 0.1 - //machine with red silicon: 1950:45 second ; with fan fully blowin 3000:47 - - #define PID_CRITIAL_GAIN 3000 - #define PID_SWING_AT_CRITIAL 45 //seconds - #define PIDIADD 5 - /* - //PID according to Ziegler-Nichols method - float Kp = 0.6*PID_CRITIAL_GAIN; - float Ki =PIDIADD+2*Kp/PID_SWING_AT_CRITIAL*PID_dT; - float Kd = Kp*PID_SWING_AT_CRITIAL/8./PID_dT; - */ - //PI according to Ziegler-Nichols method - #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) - #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (0) - - #define PID_ADD_EXTRUSION_RATE - #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) - #endif -#endif // PIDTEMP - -// extruder advance constant (s2/mm3) -// -// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 -// -// hooke's law says: force = k * distance -// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant -// so: v ^ 2 is proportional to number of steps we advance the extruder -//#define ADVANCE - -#ifdef ADVANCE -#define EXTRUDER_ADVANCE_K .3 - -#define D_FILAMENT 1.7 -#define STEPS_MM_E 65 -#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) -#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) - -#endif // ADVANCE - -// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, e.g. 8,16,32 -#if defined SDSUPPORT -// The number of linear motions that can be in the plan at any give time. - #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller -#else - #define BLOCK_BUFFER_SIZE 16 // maximize block buffer -#endif - - -#endif +#ifndef CONFIGURATION_H +#define CONFIGURATION_H + +//#define DEBUG_STEPS + +// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration + +//// The following define selects which electronics board you have. Please choose the one that matches your setup +// MEGA/RAMPS up to 1.2 = 3, +// RAMPS 1.3 = 33 +// Gen6 = 5, +// Sanguinololu 1.2 and above = 62 +// Ultimaker = 7, +#define MOTHERBOARD 7 +//#define MOTHERBOARD 5 + + +//// Thermistor settings: +// 1 is 100k thermistor +// 2 is 200k thermistor +// 3 is mendel-parts thermistor +// 4 is 10k thermistor +// 5 is ParCan supplied 104GT-2 100K +// 6 is EPCOS 100k +// 7 is 100k Honeywell thermistor 135-104LAG-J01 +#define THERMISTORHEATER_1 3 +#define THERMISTORHEATER_2 3 +#define THERMISTORBED 3 + +//#define HEATER_0_USES_THERMISTOR +//#define HEATER_1_USES_THERMISTOR +#define HEATER_0_USES_AD595 +//#define HEATER_1_USES_AD595 + +// Select one of these only to define how the bed temp is read. +//#define BED_USES_THERMISTOR +//#define BED_USES_AD595 + +#define HEATER_CHECK_INTERVAL 50 +#define BED_CHECK_INTERVAL 5000 + + +//// Endstop Settings +#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors +// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. +const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false + +// This determines the communication speed of the printer +#define BAUDRATE 250000 +//#define BAUDRATE 115200 +//#define BAUDRATE 230400 + +// Comment out (using // at the start of the line) to disable SD support: + +// #define ULTRA_LCD //any lcd + +#define ULTIPANEL +#define ULTIPANEL +#ifdef ULTIPANEL + //#define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #define LCD_WIDTH 20 +#define LCD_HEIGHT 4 +#else //no panel but just lcd + #ifdef ULTRA_LCD + #define LCD_WIDTH 16 + #define LCD_HEIGHT 2 + #endif +#endif + + +//#define SDSUPPORT // Enable SD Card Support in Hardware Console + + + +const int dropsegments=5; //everything with this number of steps will be ignored as move + +//// ADVANCED SETTINGS - to tweak parameters + +#include "thermistortables.h" + +// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 +#define X_ENABLE_ON 0 +#define Y_ENABLE_ON 0 +#define Z_ENABLE_ON 0 +#define E_ENABLE_ON 0 + +// Disables axis when it's not being used. +#define DISABLE_X false +#define DISABLE_Y false +#define DISABLE_Z false +#define DISABLE_E false + +// Inverting axis direction +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false + +//// ENDSTOP SETTINGS: +// Sets direction of endstops when homing; 1=MAX, -1=MIN +#define X_HOME_DIR -1 +#define Y_HOME_DIR -1 +#define Z_HOME_DIR -1 + +#define min_software_endstops false //If true, axis won't move to coordinates less than zero. +#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 210 +#define Y_MAX_LENGTH 210 +#define Z_MAX_LENGTH 210 + +//// MOVEMENT SETTINGS +#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E +//note: on bernhards ultimaker 200 200 12 are working well. +#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds +//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. +//!!!!!!Use only if you know that your printer works at the maximum declared speeds. +// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze +#define TRAVELING_AT_MAXSPEED +#define AXIS_RELATIVE_MODES {false, false, false, false} + +#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) + +// default settings + +#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker +#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} +#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. + +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts + +#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 10 + +// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. +#define DEFAULT_MINSEGMENTTIME 20000 +#define DEFAULT_XYJERK 30.0*60 +#define DEFAULT_ZJERK 10.0*60 + + +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +//this enables the watchdog interrupt. +#define USE_WATCHDOG +//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +#define RESET_MANUAL + +#define WATCHDOG_TIMEOUT 4 + + + +//// Experimental watchdog and minimal temp +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 +//#define WATCHPERIOD 5000 //5 seconds + +// Actual temperature must be close to target for this long before M109 returns success +//#define TEMP_RESIDENCY_TIME 20 // (seconds) +//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one + +//// The minimal temperature defines the temperature below which the heater will not be enabled +#define HEATER_0_MINTEMP 5 +//#define HEATER_1_MINTEMP 5 +//#define BED_MINTEMP 5 + + +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define HEATER_0_MAXTEMP 275 +//#define_HEATER_1_MAXTEMP 275 +//#define BED_MAXTEMP 150 + + + + + + + +#define PIDTEMP +#ifdef PIDTEMP + /// PID settings: + // Uncomment the following line to enable PID support. + //#define SMOOTHING + //#define SMOOTHFACTOR 5.0 + //float current_raw_average=0; + #define K1 0.95 //smoothing of the PID + //#define PID_DEBUG // Sends debug data to the serial port. + //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % + #define PID_MAX 255 // limits current to nozzle + #define PID_INTEGRAL_DRIVE_MAX 255 + #define PID_dT 0.1 + //machine with red silicon: 1950:45 second ; with fan fully blowin 3000:47 + + #define PID_CRITIAL_GAIN 3000 + #define PID_SWING_AT_CRITIAL 45 //seconds + #define PIDIADD 5 + /* + //PID according to Ziegler-Nichols method + float Kp = 0.6*PID_CRITIAL_GAIN; + float Ki =PIDIADD+2*Kp/PID_SWING_AT_CRITIAL*PID_dT; + float Kd = Kp*PID_SWING_AT_CRITIAL/8./PID_dT; + */ + //PI according to Ziegler-Nichols method + #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) + #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (0) + + #define PID_ADD_EXTRUSION_RATE + #ifdef PID_ADD_EXTRUSION_RATE + #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) + #endif +#endif // PIDTEMP + +// extruder advance constant (s2/mm3) +// +// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 +// +// hooke's law says: force = k * distance +// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant +// so: v ^ 2 is proportional to number of steps we advance the extruder +//#define ADVANCE + +#ifdef ADVANCE +#define EXTRUDER_ADVANCE_K .3 + +#define D_FILAMENT 1.7 +#define STEPS_MM_E 65 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + +#endif // ADVANCE + +// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, e.g. 8,16,32 +#if defined SDSUPPORT +// The number of linear motions that can be in the plan at any give time. + #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller +#else + #define BLOCK_BUFFER_SIZE 16 // maximize block buffer +#endif + + +#endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index f1dbc5c44..7615cccf8 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1,1235 +1,1235 @@ -/* - Reprap firmware 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 . - */ - -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - */ - -#include "EEPROMwrite.h" -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "streaming.h" -#include "planner.h" -#include "stepper.h" -#include "temperature.h" - -#ifdef SIMPLE_LCD - #include "Simplelcd.h" -#endif - -char version_string[] = "1.0.0 Alpha 1"; - -#ifdef SDSUPPORT -#include "SdFat.h" -#endif //SDSUPPORT - - -// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html -// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes - -//Implemented Codes -//------------------- -// G0 -> G1 -// G1 - Coordinated Movement X Y Z E -// G2 - CW ARC -// G3 - CCW ARC -// G4 - Dwell S or P -// G28 - Home all Axis -// G90 - Use Absolute Coordinates -// G91 - Use Relative Coordinates -// G92 - Set current position to cordinates given - -//RepRap M Codes -// M104 - Set extruder target temp -// M105 - Read current temp -// M106 - Fan on -// M107 - Fan off -// M109 - Wait for extruder current temp to reach target temp. -// M114 - Display current position - -//Custom M Codes -// M20 - List SD card -// M21 - Init SD card -// M22 - Release SD card -// M23 - Select SD file (M23 filename.g) -// M24 - Start/resume SD print -// M25 - Pause SD print -// M26 - Set SD position in bytes (M26 S12345) -// M27 - Report SD print status -// M28 - Start SD write (M28 filename.g) -// M29 - Stop SD write -// M42 - Change pin status via gcode -// M80 - Turn on Power Supply -// M81 - Turn off Power Supply -// M82 - Set E codes absolute (default) -// M83 - Set E codes relative while in Absolute Coordinates (G90) mode -// M84 - Disable steppers until next move, -// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. -// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) -// M92 - Set axis_steps_per_unit - same syntax as G92 -// M115 - Capabilities string -// M140 - Set bed target temp -// M190 - Wait for bed current temp to reach target temp. -// M200 - Set filament diameter -// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) -// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! -// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec -// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate -// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk -// M220 - set speed factor override percentage S:factor in percent -// M301 - Set PID parameters P I and D -// M500 - stores paramters in EEPROM -// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D -// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. - -//Stepper Movement Variables - -char axis_codes[NUM_AXIS] = { - 'X', 'Y', 'Z', 'E'}; -float destination[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -float current_position[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -bool home_all_axis = true; -float feedrate = 1500.0, next_feedrate, saved_feedrate; -long gcode_N, gcode_LastN; - -float homing_feedrate[] = HOMING_FEEDRATE; -bool axis_relative_modes[] = AXIS_RELATIVE_MODES; - -bool relative_mode = false; //Determines Absolute or Relative Coordinates -bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. - -uint8_t fanpwm=0; - -volatile int feedmultiply=100; //100->1 200->2 -int saved_feedmultiply; -volatile bool feedmultiplychanged=false; -// comm variables -#define MAX_CMD_SIZE 96 -#define BUFSIZE 4 -char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; -bool fromsd[BUFSIZE]; -int bufindr = 0; -int bufindw = 0; -int buflen = 0; -int i = 0; -char serial_char; -int serial_count = 0; -boolean comment_mode = false; -char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc -extern float HeaterPower; - -#include "EEPROM.h" - -const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 - -float tt = 0, bt = 0; -#ifdef WATCHPERIOD -int watch_raw = -1000; -unsigned long watchmillis = 0; -#endif //WATCHPERIOD - -//Inactivity shutdown variables -unsigned long previous_millis_cmd = 0; -unsigned long max_inactive_time = 0; -unsigned long stepper_inactive_time = 0; - -unsigned long starttime=0; -unsigned long stoptime=0; -#ifdef SDSUPPORT -Sd2Card card; -SdVolume volume; -SdFile root; -SdFile file; -uint32_t filesize = 0; -uint32_t sdpos = 0; -bool sdmode = false; -bool sdactive = false; -bool savetosd = false; -int16_t n; -unsigned long autostart_atmillis=0; - -void initsd(){ - sdactive = false; -#if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)){ - //if (!card.init(SPI_HALF_SPEED,SDSS)) - Serial.println("SD init fail"); - } - else if (!volume.init(&card)) - Serial.println("volume.init failed"); - else if (!root.openRoot(&volume)) - Serial.println("openRoot failed"); - else - { - sdactive = true; - Serial.println("SD card ok"); - } -#endif //SDSS -} - -void quickinitsd(){ - sdactive=false; - autostart_atmillis=millis()+5000; -} - -inline void write_command(char *buf){ - char* begin = buf; - char* npos = 0; - 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'; - //Serial.println(begin); - file.write(begin); - if (file.writeError){ - Serial.println("error writing to file"); - } -} -#endif //SDSUPPORT - - -///adds an command to the main command buffer -void enquecommand(const char *cmd) -{ - if(buflen < BUFSIZE) - { - //this is dangerous if a mixing of serial and this happsens - strcpy(&(cmdbuffer[bufindw][0]),cmd); - Serial.print("en:");Serial.println(cmdbuffer[bufindw]); - bufindw= (bufindw + 1)%BUFSIZE; - buflen += 1; - } -} - -void setup() -{ - - Serial.begin(BAUDRATE); - ECHOLN("Marlin "< -1 - SET_OUTPUT(SDPOWER); - WRITE(SDPOWER,HIGH); -#endif //SDPOWER - quickinitsd(); - -#endif //SDSUPPORT - plan_init(); // Initialize planner; - st_init(); // Initialize stepper; - tp_init(); // Initialize temperature loop - //checkautostart(); -} - -#ifdef SDSUPPORT -bool autostart_stilltocheck=true; - - -void checkautostart(bool force) -{ - //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset - if(!force) - { - if(!autostart_stilltocheck) - return; - if(autostart_atmillis 0) - { - for(int i=0;i<(int)strlen((char*)p.name);i++) - p.name[i]=tolower(p.name[i]); - //Serial.print((char*)p.name); - //Serial.print(" "); - //Serial.println(autoname); - if(p.name[9]!='~') //skip safety copies - if(strncmp((char*)p.name,autoname,5)==0) - { - char cmd[30]; - - sprintf(cmd,"M23 %s",autoname); - //sprintf(cmd,"M115"); - //enquecommand("G92 Z0"); - //enquecommand("G1 Z10 F2000"); - //enquecommand("G28 X-105 Y-105"); - enquecommand(cmd); - enquecommand("M24"); - found=true; - - } - } - if(!found) - lastnr=-1; - else - lastnr++; - -} -#else - -inline void checkautostart(bool x) -{ -} -#endif - - -void loop() -{ - if(buflen<3) - get_command(); - checkautostart(false); - if(buflen) - { -#ifdef SDSUPPORT - if(savetosd){ - if(strstr(cmdbuffer[bufindr],"M29") == NULL){ - write_command(cmdbuffer[bufindr]); - Serial.println("ok"); - } - else{ - file.sync(); - file.close(); - savetosd = false; - Serial.println("Done saving file."); - } - } - else{ - process_commands(); - } -#else - process_commands(); -#endif //SDSUPPORT - buflen = (buflen-1); - bufindr = (bufindr + 1)%BUFSIZE; - } - //check heater every n milliseconds - manage_heater(); - manage_inactivity(1); - LCD_STATUS; -} - - -inline void get_command() -{ - while( Serial.available() > 0 && buflen < BUFSIZE) { - serial_char = Serial.read(); - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) - { - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = false; - if(strstr(cmdbuffer[bufindw], "N") != NULL) - { - strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); - gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); - if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { - Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); - Serial.println(gcode_LastN); - //Serial.println(gcode_N); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - if(strstr(cmdbuffer[bufindw], "*") != NULL) - { - byte checksum = 0; - byte count = 0; - while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; - strchr_pointer = strchr(cmdbuffer[bufindw], '*'); - - if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { - Serial.print("Error: checksum mismatch, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - //if no errors, continue parsing - } - else - { - Serial.print("Error: No Checksum with line number, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - gcode_LastN = gcode_N; - //if no errors, continue parsing - } - else // if we don't receive 'N' but still see '*' - { - if((strstr(cmdbuffer[bufindw], "*") != NULL)) - { - Serial.print("Error: No Line Number with checksum, Last Line:"); - Serial.println(gcode_LastN); - serial_count = 0; - return; - } - } - if((strstr(cmdbuffer[bufindw], "G") != NULL)){ - strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); - switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ - case 0: - case 1: -#ifdef SDSUPPORT - if(savetosd) - break; -#endif //SDSUPPORT - Serial.println("ok"); - break; - default: - break; - } - - } - bufindw = (bufindw + 1)%BUFSIZE; - buflen += 1; - - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#ifdef SDSUPPORT - if(!sdmode || serial_count!=0){ - return; - } - while( filesize > sdpos && buflen < BUFSIZE) { - n = file.read(); - serial_char = (char)n; - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) - { - sdpos = file.curPosition(); - if(sdpos >= filesize){ - sdmode = false; - Serial.println("Done printing file"); - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - checkautostart(true); - } - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = true; - buflen += 1; - bufindw = (bufindw + 1)%BUFSIZE; - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#endif //SDSUPPORT - -} - - -inline float code_value() { - return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); -} -inline long code_value_long() { - return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); -} -inline bool code_seen(char code_string[]) { - return (strstr(cmdbuffer[bufindr], code_string) != NULL); -} //Return True if the string was found - -inline bool code_seen(char code) -{ - strchr_pointer = strchr(cmdbuffer[bufindr], code); - return (strchr_pointer != NULL); //Return True if a character was found -} - -inline void process_commands() -{ - unsigned long codenum; //throw away variable - char *starpos = NULL; - - if(code_seen('G')) - { - switch((int)code_value()) - { - case 0: // G0 -> G1 - case 1: // G1 - get_coordinates(); // For X Y Z E F - prepare_move(); - previous_millis_cmd = millis(); - //ClearToSend(); - return; - //break; - case 4: // G4 dwell - codenum = 0; - if(code_seen('P')) codenum = code_value(); // milliseconds to wait - if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait - codenum += millis(); // keep track of when we started waiting - while(millis() < codenum ){ - manage_heater(); - } - break; - case 28: //G28 Home all Axis one at a time - saved_feedrate = feedrate; - saved_feedmultiply = feedmultiply; - feedmultiply = 100; - - for(int i=0; i < NUM_AXIS; i++) { - destination[i] = current_position[i]; - } - feedrate = 0.0; - - home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - - if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { - if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = -5 * X_HOME_DIR; - prepare_move(); - -// st_synchronize(); - destination[X_AXIS] = 10 * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]/2 ; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = current_position[X_AXIS]; - feedrate = 0.0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { - if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = -5 * Y_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Y_AXIS] = 10 * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = current_position[Y_AXIS]; - feedrate = 0.0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { - if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = -2 * Z_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Z_AXIS] = 3 * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = current_position[Z_AXIS]; - feedrate = 0.0; - } - } - feedrate = saved_feedrate; - feedmultiply = saved_feedmultiply; - previous_millis_cmd = millis(); - break; - case 90: // G90 - relative_mode = false; - break; - case 91: // G91 - relative_mode = true; - break; - case 92: // G92 - if(!code_seen(axis_codes[E_AXIS])) - st_synchronize(); - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) current_position[i] = code_value(); - } - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - break; - } - } - - else if(code_seen('M')) - { - - switch( (int)code_value() ) - { -#ifdef SDSUPPORT - - case 20: // M20 - list SD card - Serial.println("Begin file list"); - root.ls(); - Serial.println("End file list"); - break; - case 21: // M21 - init SD card - sdmode = false; - initsd(); - break; - case 22: //M22 - release SD card - sdmode = false; - sdactive = false; - break; - case 23: //M23 - Select file - if(sdactive){ - sdmode = false; - file.close(); - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos!=NULL) - *(starpos-1)='\0'; - if (file.open(&root, strchr_pointer + 4, O_READ)) { - Serial.print("File opened:"); - Serial.print(strchr_pointer + 4); - Serial.print(" Size:"); - Serial.println(file.fileSize()); - sdpos = 0; - filesize = file.fileSize(); - Serial.println("File selected"); - } - else{ - Serial.println("file.open failed"); - } - } - break; - case 24: //M24 - Start SD print - if(sdactive){ - sdmode = true; - starttime=millis(); - } - break; - case 25: //M25 - Pause SD print - if(sdmode){ - sdmode = false; - } - break; - case 26: //M26 - Set SD index - if(sdactive && code_seen('S')){ - sdpos = code_value_long(); - file.seekSet(sdpos); - } - break; - case 27: //M27 - Get SD status - if(sdactive){ - Serial.print("SD printing byte "); - Serial.print(sdpos); - Serial.print("/"); - Serial.println(filesize); - } - else{ - Serial.println("Not SD printing"); - } - break; - case 28: //M28 - Start SD write - if(sdactive){ - char* npos = 0; - file.close(); - sdmode = false; - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos != NULL){ - npos = strchr(cmdbuffer[bufindr], 'N'); - strchr_pointer = strchr(npos,' ') + 1; - *(starpos-1) = '\0'; - } - if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) - { - Serial.print("open failed, File: "); - Serial.print(strchr_pointer + 4); - Serial.print("."); - } - else{ - savetosd = true; - Serial.print("Writing to file: "); - Serial.println(strchr_pointer + 4); - } - } - break; - case 29: //M29 - Stop SD write - //processed in write to file routine above - //savetosd = false; - break; - case 30: - { - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - } - break; -#endif //SDSUPPORT - case 42: //M42 -Change pin status via gcode - if (code_seen('S')) - { - int pin_status = code_value(); - if (code_seen('P') && pin_status >= 0 && pin_status <= 255) - { - int pin_number = code_value(); - for(int i = 0; i < (int)sizeof(sensitive_pins); i++) - { - if (sensitive_pins[i] == pin_number) - { - pin_number = -1; - break; - } - } - - if (pin_number > -1) - { - pinMode(pin_number, OUTPUT); - digitalWrite(pin_number, pin_status); - analogWrite(pin_number, pin_status); - } - } - } - break; - case 104: // M104 - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND] = temp2analog(code_value()); -#ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND] > current_raw[TEMPSENSOR_HOTEND]){ - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; - }else{ - watchmillis = 0; - } - #endif - break; - case 140: // M140 set bed temp - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); - break; - case 105: // M105 - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = analog2temp(current_raw[TEMPSENSOR_HOTEND]); - #endif - #if TEMP_1_PIN > -1 - bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); - #endif - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - Serial.print("ok T:"); - Serial.print(tt); -// Serial.print(", raw:"); -// Serial.print(current_raw); - #if TEMP_1_PIN > -1 -#ifdef PIDTEMP - Serial.print(" B:"); - #if TEMP_1_PIN > -1 - Serial.println(bt); - #else - Serial.println(HeaterPower); - #endif -#else - Serial.println(); -#endif - #else - Serial.println(); - #endif - #else - Serial.println("No thermistors - no temp"); - #endif - return; - //break; - case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGE("Heating..."); - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND] = temp2analog(code_value()); - #ifdef PIDTEMP - pid_setpoint = code_value(); - #endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND]>current_raw[TEMPSENSOR_HOTEND]){ - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND] = current_raw[TEMPSENSOR_HOTEND]; - } else { - watchmillis = 0; - } - #endif //WATCHPERIOD - codenum = millis(); - - /* See if we are heating up or cooling down */ - bool target_direction = (current_raw[0] < target_raw[0]); // true if heating, false if cooling - - #ifdef TEMP_RESIDENCY_TIME - long residencyStart; - residencyStart = -1; - /* continue to loop until we have reached the target temp - _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0])) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { - #else - while ( target_direction ? (current_raw[0] < target_raw[0]) : (current_raw[0] > target_raw[0]) ) { - #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down - Serial.print("T:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND]) ); - codenum = millis(); - } - manage_heater(); - LCD_STATUS; - #ifdef TEMP_RESIDENCY_TIME - /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time - or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && current_raw[0] >= target_raw[0]) || - (residencyStart == -1 && !target_direction && current_raw[0] <= target_raw[0]) || - (residencyStart > -1 && labs(analog2temp(current_raw[0]) - analog2temp(target_raw[0])) > TEMP_HYSTERESIS) ) { - residencyStart = millis(); - } - #endif //TEMP_RESIDENCY_TIME - } - LCD_MESSAGE("Marlin ready."); - } - break; - case 190: // M190 - Wait bed for heater to reach target. - #if TEMP_1_PIN > -1 - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); - codenum = millis(); - while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) - { - if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. - { - float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND]); - Serial.print("T:"); - Serial.println( tt ); - Serial.print("ok T:"); - Serial.print( tt ); - Serial.print(" B:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); - codenum = millis(); - } - manage_heater(); - } - #endif - break; -#if FAN_PIN > -1 - case 106: //M106 Fan On - if (code_seen('S')){ - WRITE(FAN_PIN,HIGH); - fanpwm=constrain(code_value(),0,255); - analogWrite(FAN_PIN, fanpwm); - } - else { - WRITE(FAN_PIN,HIGH); - fanpwm=255; - analogWrite(FAN_PIN, fanpwm); - } - break; - case 107: //M107 Fan Off - WRITE(FAN_PIN,LOW); - analogWrite(FAN_PIN, 0); - break; -#endif -#if (PS_ON_PIN > -1) - case 80: // M80 - ATX Power On - SET_OUTPUT(PS_ON_PIN); //GND - break; - case 81: // M81 - ATX Power Off - SET_INPUT(PS_ON_PIN); //Floating - break; -#endif - case 82: - axis_relative_modes[3] = false; - break; - case 83: - axis_relative_modes[3] = true; - break; - case 18: - case 84: - if(code_seen('S')){ - stepper_inactive_time = code_value() * 1000; - } - else{ - st_synchronize(); - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - break; - case 85: // M85 - code_seen('S'); - max_inactive_time = code_value() * 1000; - break; - case 92: // M92 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); - } - - break; - case 115: // M115 - Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); - break; - case 114: // M114 - Serial.print("X:"); - Serial.print(current_position[X_AXIS]); - Serial.print("Y:"); - Serial.print(current_position[Y_AXIS]); - Serial.print("Z:"); - Serial.print(current_position[Z_AXIS]); - Serial.print("E:"); - Serial.print(current_position[E_AXIS]); - #ifdef DEBUG_STEPS - Serial.print(" Count X:"); - Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); - Serial.print("Y:"); - Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); - Serial.print("Z:"); - Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); - #endif - Serial.println(""); - break; - case 119: // M119 -#if (X_MIN_PIN > -1) - Serial.print("x_min:"); - Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (X_MAX_PIN > -1) - Serial.print("x_max:"); - Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MIN_PIN > -1) - Serial.print("y_min:"); - Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MAX_PIN > -1) - Serial.print("y_max:"); - Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MIN_PIN > -1) - Serial.print("z_min:"); - Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MAX_PIN > -1) - Serial.print("z_max:"); - Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif - Serial.println(""); - break; - //TODO: update for all axis, use for loop - case 201: // M201 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#if 0 // Not used for Sprinter/grbl gen6 - case 202: // M202 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#endif - case 203: // M203 max feedrate mm/sec - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; - } - break; - case 204: // M204 acclereration S normal moves T filmanent only moves - { - if(code_seen('S')) acceleration = code_value() ; - if(code_seen('T')) retract_acceleration = code_value() ; - } - break; - case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk - { - if(code_seen('S')) minimumfeedrate = code_value()*60 ; - if(code_seen('T')) mintravelfeedrate = code_value()*60 ; - if(code_seen('B')) minsegmenttime = code_value() ; - if(code_seen('X')) max_xy_jerk = code_value()*60 ; - if(code_seen('Z')) max_z_jerk = code_value()*60 ; - } - break; - case 220: // M220 S- set speed factor override percentage - { - if(code_seen('S')) - { - feedmultiply = code_value() ; - feedmultiplychanged=true; - } - } - break; -#ifdef PIDTEMP - case 301: // M301 - if(code_seen('P')) Kp = code_value(); - if(code_seen('I')) Ki = code_value()*PID_dT; - if(code_seen('D')) Kd = code_value()/PID_dT; -// ECHOLN("Kp "<<_FLOAT(Kp,2)); -// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); -// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); - -// temp_iState_min = 0.0; -// if (Ki!=0) { -// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); -// } -// else temp_iState_max = 1.0e10; - break; -#endif //PIDTEMP - case 500: // Store settings in EEPROM - { - StoreSettings(); - } - break; - case 501: // Read settings from EEPROM - { - RetrieveSettings(); - } - break; - case 502: // Revert to default settings - { - RetrieveSettings(true); - } - break; - - } - } - else{ - Serial.println("Unknown command:"); - Serial.println(cmdbuffer[bufindr]); - } - - ClearToSend(); -} - -void FlushSerialRequestResend() -{ - //char cmdbuffer[bufindr][100]="Resend:"; - Serial.flush(); - Serial.print("Resend:"); - Serial.println(gcode_LastN + 1); - ClearToSend(); -} - -void ClearToSend() -{ - previous_millis_cmd = millis(); -#ifdef SDSUPPORT - if(fromsd[bufindr]) - return; -#endif //SDSUPPORT - Serial.println("ok"); -} - -inline void get_coordinates() -{ - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? - } - if(code_seen('F')) { - next_feedrate = code_value(); - if(next_feedrate > 0.0) feedrate = next_feedrate; - } -} - -void prepare_move() -{ - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); - for(int i=0; i < NUM_AXIS; i++) { - current_position[i] = destination[i]; - } -} - - - -#ifdef USE_WATCHDOG - -#include -#include - -volatile uint8_t timeout_seconds=0; - -void(* ctrlaltdelete) (void) = 0; - -ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec - if(timeout_seconds++ >= WATCHDOG_TIMEOUT) - { - kill(); -#ifdef RESET_MANUAL - LCD_MESSAGE("Please Reset!"); - ECHOLN("echo_: Something is wrong, please turn off the printer."); -#else - LCD_MESSAGE("Timeout, resetting!"); -#endif - //disable watchdog, it will survife reboot. - WDTCSR |= (1< -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif - disable_x(); - disable_y(); - disable_z(); - disable_e(); - - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); - Serial.println("!! Printer halted. kill() called!!"); - while(1); // Wait for reset -} - -void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - check_axes_activity(); -} +/* + Reprap firmware 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + */ + +#include "EEPROMwrite.h" +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" + +#ifdef SIMPLE_LCD + #include "Simplelcd.h" +#endif + +char version_string[] = "1.0.0 Alpha 1"; + +#ifdef SDSUPPORT +#include "SdFat.h" +#endif //SDSUPPORT + + +// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html +// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes + +//Implemented Codes +//------------------- +// G0 -> G1 +// G1 - Coordinated Movement X Y Z E +// G2 - CW ARC +// G3 - CCW ARC +// G4 - Dwell S or P +// G28 - Home all Axis +// G90 - Use Absolute Coordinates +// G91 - Use Relative Coordinates +// G92 - Set current position to cordinates given + +//RepRap M Codes +// M104 - Set extruder target temp +// M105 - Read current temp +// M106 - Fan on +// M107 - Fan off +// M109 - Wait for extruder current temp to reach target temp. +// M114 - Display current position + +//Custom M Codes +// M20 - List SD card +// M21 - Init SD card +// M22 - Release SD card +// M23 - Select SD file (M23 filename.g) +// M24 - Start/resume SD print +// M25 - Pause SD print +// M26 - Set SD position in bytes (M26 S12345) +// M27 - Report SD print status +// M28 - Start SD write (M28 filename.g) +// M29 - Stop SD write +// M42 - Change pin status via gcode +// M80 - Turn on Power Supply +// M81 - Turn off Power Supply +// M82 - Set E codes absolute (default) +// M83 - Set E codes relative while in Absolute Coordinates (G90) mode +// M84 - Disable steppers until next move, +// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. +// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) +// M92 - Set axis_steps_per_unit - same syntax as G92 +// M115 - Capabilities string +// M140 - Set bed target temp +// M190 - Wait for bed current temp to reach target temp. +// M200 - Set filament diameter +// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) +// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk +// M220 - set speed factor override percentage S:factor in percent +// M301 - Set PID parameters P I and D +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. + +//Stepper Movement Variables + +char axis_codes[NUM_AXIS] = { + 'X', 'Y', 'Z', 'E'}; +float destination[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +bool home_all_axis = true; +float feedrate = 1500.0, next_feedrate, saved_feedrate; +long gcode_N, gcode_LastN; + +float homing_feedrate[] = HOMING_FEEDRATE; +bool axis_relative_modes[] = AXIS_RELATIVE_MODES; + +bool relative_mode = false; //Determines Absolute or Relative Coordinates +bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. + +uint8_t fanpwm=0; + +volatile int feedmultiply=100; //100->1 200->2 +int saved_feedmultiply; +volatile bool feedmultiplychanged=false; +// comm variables +#define MAX_CMD_SIZE 96 +#define BUFSIZE 4 +char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; +bool fromsd[BUFSIZE]; +int bufindr = 0; +int bufindw = 0; +int buflen = 0; +int i = 0; +char serial_char; +int serial_count = 0; +boolean comment_mode = false; +char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc +extern float HeaterPower; + +#include "EEPROM.h" + +const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 + +float tt = 0, bt = 0; +#ifdef WATCHPERIOD +int watch_raw = -1000; +unsigned long watchmillis = 0; +#endif //WATCHPERIOD + +//Inactivity shutdown variables +unsigned long previous_millis_cmd = 0; +unsigned long max_inactive_time = 0; +unsigned long stepper_inactive_time = 0; + +unsigned long starttime=0; +unsigned long stoptime=0; +#ifdef SDSUPPORT +Sd2Card card; +SdVolume volume; +SdFile root; +SdFile file; +uint32_t filesize = 0; +uint32_t sdpos = 0; +bool sdmode = false; +bool sdactive = false; +bool savetosd = false; +int16_t n; +unsigned long autostart_atmillis=0; + +void initsd(){ + sdactive = false; +#if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)){ + //if (!card.init(SPI_HALF_SPEED,SDSS)) + Serial.println("SD init fail"); + } + else if (!volume.init(&card)) + Serial.println("volume.init failed"); + else if (!root.openRoot(&volume)) + Serial.println("openRoot failed"); + else + { + sdactive = true; + Serial.println("SD card ok"); + } +#endif //SDSS +} + +void quickinitsd(){ + sdactive=false; + autostart_atmillis=millis()+5000; +} + +inline void write_command(char *buf){ + char* begin = buf; + char* npos = 0; + 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'; + //Serial.println(begin); + file.write(begin); + if (file.writeError){ + Serial.println("error writing to file"); + } +} +#endif //SDSUPPORT + + +///adds an command to the main command buffer +void enquecommand(const char *cmd) +{ + if(buflen < BUFSIZE) + { + //this is dangerous if a mixing of serial and this happsens + strcpy(&(cmdbuffer[bufindw][0]),cmd); + Serial.print("en:");Serial.println(cmdbuffer[bufindw]); + bufindw= (bufindw + 1)%BUFSIZE; + buflen += 1; + } +} + +void setup() +{ + + Serial.begin(BAUDRATE); + ECHOLN("Marlin "< -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); +#endif //SDPOWER + quickinitsd(); + +#endif //SDSUPPORT + plan_init(); // Initialize planner; + st_init(); // Initialize stepper; + tp_init(); // Initialize temperature loop + //checkautostart(); +} + +#ifdef SDSUPPORT +bool autostart_stilltocheck=true; + + +void checkautostart(bool force) +{ + //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset + if(!force) + { + if(!autostart_stilltocheck) + return; + if(autostart_atmillis 0) + { + for(int i=0;i<(int)strlen((char*)p.name);i++) + p.name[i]=tolower(p.name[i]); + //Serial.print((char*)p.name); + //Serial.print(" "); + //Serial.println(autoname); + if(p.name[9]!='~') //skip safety copies + if(strncmp((char*)p.name,autoname,5)==0) + { + char cmd[30]; + + sprintf(cmd,"M23 %s",autoname); + //sprintf(cmd,"M115"); + //enquecommand("G92 Z0"); + //enquecommand("G1 Z10 F2000"); + //enquecommand("G28 X-105 Y-105"); + enquecommand(cmd); + enquecommand("M24"); + found=true; + + } + } + if(!found) + lastnr=-1; + else + lastnr++; + +} +#else + +inline void checkautostart(bool x) +{ +} +#endif + + +void loop() +{ + if(buflen<3) + get_command(); + checkautostart(false); + if(buflen) + { +#ifdef SDSUPPORT + if(savetosd){ + if(strstr(cmdbuffer[bufindr],"M29") == NULL){ + write_command(cmdbuffer[bufindr]); + Serial.println("ok"); + } + else{ + file.sync(); + file.close(); + savetosd = false; + Serial.println("Done saving file."); + } + } + else{ + process_commands(); + } +#else + process_commands(); +#endif //SDSUPPORT + buflen = (buflen-1); + bufindr = (bufindr + 1)%BUFSIZE; + } + //check heater every n milliseconds + manage_heater(); + manage_inactivity(1); + LCD_STATUS; +} + + +inline void get_command() +{ + while( Serial.available() > 0 && buflen < BUFSIZE) { + serial_char = Serial.read(); + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) + { + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = false; + if(strstr(cmdbuffer[bufindw], "N") != NULL) + { + strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); + gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); + if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { + Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); + Serial.println(gcode_LastN); + //Serial.println(gcode_N); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + if(strstr(cmdbuffer[bufindw], "*") != NULL) + { + byte checksum = 0; + byte count = 0; + while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; + strchr_pointer = strchr(cmdbuffer[bufindw], '*'); + + if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { + Serial.print("Error: checksum mismatch, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + //if no errors, continue parsing + } + else + { + Serial.print("Error: No Checksum with line number, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + gcode_LastN = gcode_N; + //if no errors, continue parsing + } + else // if we don't receive 'N' but still see '*' + { + if((strstr(cmdbuffer[bufindw], "*") != NULL)) + { + Serial.print("Error: No Line Number with checksum, Last Line:"); + Serial.println(gcode_LastN); + serial_count = 0; + return; + } + } + if((strstr(cmdbuffer[bufindw], "G") != NULL)){ + strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); + switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ + case 0: + case 1: +#ifdef SDSUPPORT + if(savetosd) + break; +#endif //SDSUPPORT + Serial.println("ok"); + break; + default: + break; + } + + } + bufindw = (bufindw + 1)%BUFSIZE; + buflen += 1; + + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#ifdef SDSUPPORT + if(!sdmode || serial_count!=0){ + return; + } + while( filesize > sdpos && buflen < BUFSIZE) { + n = file.read(); + serial_char = (char)n; + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) + { + sdpos = file.curPosition(); + if(sdpos >= filesize){ + sdmode = false; + Serial.println("Done printing file"); + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + checkautostart(true); + } + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = true; + buflen += 1; + bufindw = (bufindw + 1)%BUFSIZE; + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#endif //SDSUPPORT + +} + + +inline float code_value() { + return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); +} +inline long code_value_long() { + return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); +} +inline bool code_seen(char code_string[]) { + return (strstr(cmdbuffer[bufindr], code_string) != NULL); +} //Return True if the string was found + +inline bool code_seen(char code) +{ + strchr_pointer = strchr(cmdbuffer[bufindr], code); + return (strchr_pointer != NULL); //Return True if a character was found +} + +inline void process_commands() +{ + unsigned long codenum; //throw away variable + char *starpos = NULL; + + if(code_seen('G')) + { + switch((int)code_value()) + { + case 0: // G0 -> G1 + case 1: // G1 + get_coordinates(); // For X Y Z E F + prepare_move(); + previous_millis_cmd = millis(); + //ClearToSend(); + return; + //break; + case 4: // G4 dwell + codenum = 0; + if(code_seen('P')) codenum = code_value(); // milliseconds to wait + if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait + codenum += millis(); // keep track of when we started waiting + while(millis() < codenum ){ + manage_heater(); + } + break; + case 28: //G28 Home all Axis one at a time + saved_feedrate = feedrate; + saved_feedmultiply = feedmultiply; + feedmultiply = 100; + + for(int i=0; i < NUM_AXIS; i++) { + destination[i] = current_position[i]; + } + feedrate = 0.0; + + home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); + + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { + if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ +// st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]; + prepare_move(); + +// st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = -5 * X_HOME_DIR; + prepare_move(); + +// st_synchronize(); + destination[X_AXIS] = 10 * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]/2 ; + prepare_move(); + +// st_synchronize(); + current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = current_position[X_AXIS]; + feedrate = 0.0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { + if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]; + prepare_move(); +// st_synchronize(); + + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = -5 * Y_HOME_DIR; + prepare_move(); +// st_synchronize(); + + destination[Y_AXIS] = 10 * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]/2; + prepare_move(); +// st_synchronize(); + + current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = current_position[Y_AXIS]; + feedrate = 0.0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { + if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]; + prepare_move(); +// st_synchronize(); + + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = -2 * Z_HOME_DIR; + prepare_move(); +// st_synchronize(); + + destination[Z_AXIS] = 3 * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]/2; + prepare_move(); +// st_synchronize(); + + current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = current_position[Z_AXIS]; + feedrate = 0.0; + } + } + feedrate = saved_feedrate; + feedmultiply = saved_feedmultiply; + previous_millis_cmd = millis(); + break; + case 90: // G90 + relative_mode = false; + break; + case 91: // G91 + relative_mode = true; + break; + case 92: // G92 + if(!code_seen(axis_codes[E_AXIS])) + st_synchronize(); + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) current_position[i] = code_value(); + } + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + break; + } + } + + else if(code_seen('M')) + { + + switch( (int)code_value() ) + { +#ifdef SDSUPPORT + + case 20: // M20 - list SD card + Serial.println("Begin file list"); + root.ls(); + Serial.println("End file list"); + break; + case 21: // M21 - init SD card + sdmode = false; + initsd(); + break; + case 22: //M22 - release SD card + sdmode = false; + sdactive = false; + break; + case 23: //M23 - Select file + if(sdactive){ + sdmode = false; + file.close(); + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos!=NULL) + *(starpos-1)='\0'; + if (file.open(&root, strchr_pointer + 4, O_READ)) { + Serial.print("File opened:"); + Serial.print(strchr_pointer + 4); + Serial.print(" Size:"); + Serial.println(file.fileSize()); + sdpos = 0; + filesize = file.fileSize(); + Serial.println("File selected"); + } + else{ + Serial.println("file.open failed"); + } + } + break; + case 24: //M24 - Start SD print + if(sdactive){ + sdmode = true; + starttime=millis(); + } + break; + case 25: //M25 - Pause SD print + if(sdmode){ + sdmode = false; + } + break; + case 26: //M26 - Set SD index + if(sdactive && code_seen('S')){ + sdpos = code_value_long(); + file.seekSet(sdpos); + } + break; + case 27: //M27 - Get SD status + if(sdactive){ + Serial.print("SD printing byte "); + Serial.print(sdpos); + Serial.print("/"); + Serial.println(filesize); + } + else{ + Serial.println("Not SD printing"); + } + break; + case 28: //M28 - Start SD write + if(sdactive){ + char* npos = 0; + file.close(); + sdmode = false; + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + { + Serial.print("open failed, File: "); + Serial.print(strchr_pointer + 4); + Serial.print("."); + } + else{ + savetosd = true; + Serial.print("Writing to file: "); + Serial.println(strchr_pointer + 4); + } + } + break; + case 29: //M29 - Stop SD write + //processed in write to file routine above + //savetosd = false; + break; + case 30: + { + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + } + break; +#endif //SDSUPPORT + case 42: //M42 -Change pin status via gcode + if (code_seen('S')) + { + int pin_status = code_value(); + if (code_seen('P') && pin_status >= 0 && pin_status <= 255) + { + int pin_number = code_value(); + for(int i = 0; i < (int)sizeof(sensitive_pins); i++) + { + if (sensitive_pins[i] == pin_number) + { + pin_number = -1; + break; + } + } + + if (pin_number > -1) + { + pinMode(pin_number, OUTPUT); + digitalWrite(pin_number, pin_status); + analogWrite(pin_number, pin_status); + } + } + } + break; + case 104: // M104 + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]){ + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + }else{ + watchmillis = 0; + } + #endif + break; + case 140: // M140 set bed temp + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); + break; + case 105: // M105 + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + tt = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + #endif + #if TEMP_1_PIN > -1 + bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); + #endif + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + Serial.print("ok T:"); + Serial.print(tt); +// Serial.print(", raw:"); +// Serial.print(current_raw); + #if TEMP_1_PIN > -1 +#ifdef PIDTEMP + Serial.print(" B:"); + #if TEMP_1_PIN > -1 + Serial.println(bt); + #else + Serial.println(HeaterPower); + #endif +#else + Serial.println(); +#endif + #else + Serial.println(); + #endif + #else + Serial.println("No thermistors - no temp"); + #endif + return; + //break; + case 109: {// M109 - Wait for extruder heater to reach target. + LCD_MESSAGE("Heating..."); + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); + #ifdef PIDTEMP + pid_setpoint = code_value(); + #endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[TEMPSENSOR_HOTEND_0]>current_raw[TEMPSENSOR_HOTEND_0]){ + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + } else { + watchmillis = 0; + } + #endif //WATCHPERIOD + codenum = millis(); + + /* See if we are heating up or cooling down */ + bool target_direction = (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]); // true if heating, false if cooling + + #ifdef TEMP_RESIDENCY_TIME + long residencyStart; + residencyStart = -1; + /* continue to loop until we have reached the target temp + _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ + while((target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0])) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + #else + while ( target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0]) ) { + #endif //TEMP_RESIDENCY_TIME + if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down + Serial.print("T:"); + Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) ); + codenum = millis(); + } + manage_heater(); + LCD_STATUS; + #ifdef TEMP_RESIDENCY_TIME + /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time + or when current temp falls outside the hysteresis after target temp was reached */ + if ((residencyStart == -1 && target_direction && current_raw[TEMPSENSOR_HOTEND_0] >= target_raw[TEMPSENSOR_HOTEND_0]) || + (residencyStart == -1 && !target_direction && current_raw[TEMPSENSOR_HOTEND_0] <= target_raw[TEMPSENSOR_HOTEND_0]) || + (residencyStart > -1 && labs(analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) - analog2temp(target_raw[TEMPSENSOR_HOTEND_0])) > TEMP_HYSTERESIS) ) { + residencyStart = millis(); + } + #endif //TEMP_RESIDENCY_TIME + } + LCD_MESSAGE("Marlin ready."); + } + break; + case 190: // M190 - Wait bed for heater to reach target. + #if TEMP_1_PIN > -1 + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); + codenum = millis(); + while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) + { + if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + Serial.print("T:"); + Serial.println( tt ); + Serial.print("ok T:"); + Serial.print( tt ); + Serial.print(" B:"); + Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); + codenum = millis(); + } + manage_heater(); + } + #endif + break; +#if FAN_PIN > -1 + case 106: //M106 Fan On + if (code_seen('S')){ + WRITE(FAN_PIN,HIGH); + fanpwm=constrain(code_value(),0,255); + analogWrite(FAN_PIN, fanpwm); + } + else { + WRITE(FAN_PIN,HIGH); + fanpwm=255; + analogWrite(FAN_PIN, fanpwm); + } + break; + case 107: //M107 Fan Off + WRITE(FAN_PIN,LOW); + analogWrite(FAN_PIN, 0); + break; +#endif +#if (PS_ON_PIN > -1) + case 80: // M80 - ATX Power On + SET_OUTPUT(PS_ON_PIN); //GND + break; + case 81: // M81 - ATX Power Off + SET_INPUT(PS_ON_PIN); //Floating + break; +#endif + case 82: + axis_relative_modes[3] = false; + break; + case 83: + axis_relative_modes[3] = true; + break; + case 18: + case 84: + if(code_seen('S')){ + stepper_inactive_time = code_value() * 1000; + } + else{ + st_synchronize(); + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + break; + case 85: // M85 + code_seen('S'); + max_inactive_time = code_value() * 1000; + break; + case 92: // M92 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); + } + + break; + case 115: // M115 + Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + break; + case 114: // M114 + Serial.print("X:"); + Serial.print(current_position[X_AXIS]); + Serial.print("Y:"); + Serial.print(current_position[Y_AXIS]); + Serial.print("Z:"); + Serial.print(current_position[Z_AXIS]); + Serial.print("E:"); + Serial.print(current_position[E_AXIS]); + #ifdef DEBUG_STEPS + Serial.print(" Count X:"); + Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); + Serial.print("Y:"); + Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); + Serial.print("Z:"); + Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); + #endif + Serial.println(""); + break; + case 119: // M119 +#if (X_MIN_PIN > -1) + Serial.print("x_min:"); + Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (X_MAX_PIN > -1) + Serial.print("x_max:"); + Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MIN_PIN > -1) + Serial.print("y_min:"); + Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MAX_PIN > -1) + Serial.print("y_max:"); + Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MIN_PIN > -1) + Serial.print("z_min:"); + Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MAX_PIN > -1) + Serial.print("z_max:"); + Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif + Serial.println(""); + break; + //TODO: update for all axis, use for loop + case 201: // M201 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#if 0 // Not used for Sprinter/grbl gen6 + case 202: // M202 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#endif + case 203: // M203 max feedrate mm/sec + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; + } + break; + case 204: // M204 acclereration S normal moves T filmanent only moves + { + if(code_seen('S')) acceleration = code_value() ; + if(code_seen('T')) retract_acceleration = code_value() ; + } + break; + case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + { + if(code_seen('S')) minimumfeedrate = code_value()*60 ; + if(code_seen('T')) mintravelfeedrate = code_value()*60 ; + if(code_seen('B')) minsegmenttime = code_value() ; + if(code_seen('X')) max_xy_jerk = code_value()*60 ; + if(code_seen('Z')) max_z_jerk = code_value()*60 ; + } + break; + case 220: // M220 S- set speed factor override percentage + { + if(code_seen('S')) + { + feedmultiply = code_value() ; + feedmultiplychanged=true; + } + } + break; +#ifdef PIDTEMP + case 301: // M301 + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; +// ECHOLN("Kp "<<_FLOAT(Kp,2)); +// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); +// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); + +// temp_iState_min = 0.0; +// if (Ki!=0) { +// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); +// } +// else temp_iState_max = 1.0e10; + break; +#endif //PIDTEMP + case 500: // Store settings in EEPROM + { + StoreSettings(); + } + break; + case 501: // Read settings from EEPROM + { + RetrieveSettings(); + } + break; + case 502: // Revert to default settings + { + RetrieveSettings(true); + } + break; + + } + } + else{ + Serial.println("Unknown command:"); + Serial.println(cmdbuffer[bufindr]); + } + + ClearToSend(); +} + +void FlushSerialRequestResend() +{ + //char cmdbuffer[bufindr][100]="Resend:"; + Serial.flush(); + Serial.print("Resend:"); + Serial.println(gcode_LastN + 1); + ClearToSend(); +} + +void ClearToSend() +{ + previous_millis_cmd = millis(); +#ifdef SDSUPPORT + if(fromsd[bufindr]) + return; +#endif //SDSUPPORT + Serial.println("ok"); +} + +inline void get_coordinates() +{ + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); + for(int i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} + + + +#ifdef USE_WATCHDOG + +#include +#include + +volatile uint8_t timeout_seconds=0; + +void(* ctrlaltdelete) (void) = 0; + +ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec + if(timeout_seconds++ >= WATCHDOG_TIMEOUT) + { + kill(); +#ifdef RESET_MANUAL + LCD_MESSAGE("Please Reset!"); + ECHOLN("echo_: Something is wrong, please turn off the printer."); +#else + LCD_MESSAGE("Timeout, resetting!"); +#endif + //disable watchdog, it will survife reboot. + WDTCSR |= (1< -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif + disable_x(); + disable_y(); + disable_z(); + disable_e(); + + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + Serial.println("!! Printer halted. kill() called!!"); + while(1); // Wait for reset +} + +void manage_inactivity(byte debug) { + if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); + if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + check_axes_activity(); +} diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 430e87f5c..b55573d93 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -1,501 +1,503 @@ -/* - temperature.c - temperature control - Part of Marlin - - 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 . - */ - -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - This firmware is optimized for gen6 electronics. - */ - -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "streaming.h" -#include "temperature.h" - -int target_bed_raw = 0; -int current_bed_raw = 0; - -int target_raw[3] = {0, 0, 0}; -int current_raw[3] = {0, 0, 0}; -unsigned char temp_meas_ready = false; - -unsigned long previous_millis_heater, previous_millis_bed_heater; - -#ifdef PIDTEMP - double temp_iState = 0; - double temp_dState = 0; - double pTerm; - double iTerm; - double dTerm; - //int output; - double pid_error; - double temp_iState_min; - double temp_iState_max; - double pid_setpoint = 0.0; - double pid_input; - double pid_output; - bool pid_reset; - float HeaterPower; - - float Kp=DEFAULT_Kp; - float Ki=DEFAULT_Ki; - float Kd=DEFAULT_Kd; - float Kc=DEFAULT_Kc; -#endif //PIDTEMP - -#ifdef HEATER_0_MINTEMP -int minttemp_0 = temp2analog(HEATER_0_MINTEMP); -#endif //MINTEMP -#ifdef HEATER_0_MAXTEMP -int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); -#endif //MAXTEMP - -#ifdef HEATER_1_MINTEMP -int minttemp_1 = temp2analog(HEATER_1_MINTEMP); -#endif //MINTEMP -#ifdef HEATER_1_MAXTEMP -int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); -#endif //MAXTEMP - -#ifdef BED_MINTEMP -int bed_minttemp = temp2analog(BED_MINTEMP); -#endif //BED_MINTEMP -#ifdef BED_MAXTEMP -int bed_maxttemp = temp2analog(BED_MAXTEMP); -#endif //BED_MAXTEMP - -void manage_heater() -{ -#ifdef USE_WATCHDOG - wd_reset(); -#endif - - float pid_input; - float pid_output; - if(temp_meas_ready != true) //better readability - return; - -CRITICAL_SECTION_START; - temp_meas_ready = false; -CRITICAL_SECTION_END; - -#ifdef PIDTEMP - pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND]); - -#ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ - pid_output = PID_MAX; - pid_reset = true; - } - else if(pid_error < -10) { - pid_output = 0; - pid_reset = true; - } - else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; - } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; - //K1 defined in Configuration.h in the PID settings - #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; - #ifdef PID_ADD_EXTRUSION_RATE - pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high - #endif - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - } -#endif //PID_OPENLOOP -#ifdef PID_DEBUG - Serial.print(" Input "); - Serial.print(pid_input); - Serial.print(" Output "); - Serial.print(pid_output); - Serial.print(" pTerm "); - Serial.print(pTerm); - Serial.print(" iTerm "); - Serial.print(iTerm); - Serial.print(" dTerm "); - Serial.print(dTerm); - Serial.println(); -#endif //PID_DEBUG - analogWrite(HEATER_0_PIN, pid_output); -#endif //PIDTEMP - -#ifndef PIDTEMP - if(current_raw[0] >= target_raw[0]) - { - WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } -#endif - - if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) - return; - previous_millis_bed_heater = millis(); - - #if TEMP_1_PIN > -1 - if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) - { - WRITE(HEATER_1_PIN,LOW); - } - else - { - WRITE(HEATER_1_PIN,HIGH); - } - #endif - } - -// Takes hot end temperature value as input and returns corresponding raw value. -// For a thermistor, it uses the RepRap thermistor temp table. -// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. -// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -int temp2analog(int celsius) { - #ifdef HEATER_0_USES_THERMISTOR - int raw = 0; - byte i; - - for (i=1; i raw) - { - celsius = heater_0_temptable[i-1][1] + - (raw - heater_0_temptable[i-1][0]) * - (float)(heater_0_temptable[i][1] - heater_0_temptable[i-1][1]) / - (float)(heater_0_temptable[i][0] - heater_0_temptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_0) celsius = heater_0_temptable[i-1][1]; - - return celsius; - #elif defined HEATER_0_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -// Derived from RepRap FiveD extruder::getTemperature() -// For bed temperature measurement. -float analog2tempBed(int raw) { - #ifdef BED_USES_THERMISTOR - int celsius = 0; - byte i; - - raw = (1023 * OVERSAMPLENR) - raw; - - for (i=1; i raw) - { - celsius = bedtemptable[i-1][1] + - (raw - bedtemptable[i-1][0]) * - (bedtemptable[i][1] - bedtemptable[i-1][1]) / - (bedtemptable[i][0] - bedtemptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; - - return celsius; - - #elif defined BED_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -void tp_init() -{ -#if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); -#endif -#if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); -#endif -#if (HEATER_2_PIN > -1) - SET_OUTPUT(HEATER_2_PIN); -#endif - -#ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; -#endif //PIDTEMP - -// Set analog inputs - ADCSRA = 1< -1) - #if TEMP_0_PIN < 8 - DIDR0 = 1 << TEMP_0_PIN; - #else - DIDR2 = 1<<(TEMP_0_PIN - 8); - ADCSRB = 1< -1) - raw_temp_0_value += ADC; - #endif - temp_state = 2; - break; - case 2: // Prepare TEMP_1 - #if (TEMP_1_PIN > -1) - #if TEMP_1_PIN < 7 - DIDR0 = 1< -1) - raw_temp_1_value += ADC; - #endif - temp_state = 4; - break; - case 4: // Prepare TEMP_2 - #if (TEMP_2_PIN > -1) - #if TEMP_2_PIN < 7 - DIDR0 = 1 << TEMP_2_PIN; - #else - DIDR2 = 1<<(TEMP_2_PIN - 8); - ADCSRB = 1< -1) - raw_temp_2_value += ADC; - #endif - temp_state = 0; - temp_count++; - break; - default: - Serial.println("!! Temp measurement error !!"); - break; - } - - if(temp_count >= 16) // 6 ms * 16 = 96ms. - { - #ifdef HEATER_0_USES_AD595 - current_raw[0] = raw_temp_0_value; - #else - current_raw[0] = 16383 - raw_temp_0_value; - #endif - - #ifdef HEATER_1_USES_AD595 - current_raw[2] = raw_temp_2_value; - #else - current_raw[2] = 16383 - raw_temp_2_value; - #endif - - #ifdef BED_USES_AD595 - current_raw[1] = raw_temp_1_value; - #else - current_raw[1] = 16383 - raw_temp_1_value; - #endif - - temp_meas_ready = true; - temp_count = 0; - raw_temp_0_value = 0; - raw_temp_1_value = 0; - raw_temp_2_value = 0; -#ifdef HEATER_0_MAXTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND] >= maxttemp) { - target_raw[TEMPSENSOR_HOTEND] = 0; - analogWrite(HEATER_0_PIN, 0); - Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); - kill(); - } - #endif -#endif - if(current_raw[TEMPSENSOR_AUX] >= maxttemp) { - target_raw[TEMPSENSOR_AUX] = 0; - if(current_raw[2] >= maxttemp_1) { - analogWrite(HEATER_2_PIN, 0); - Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); - kill() - } - #endif -#endif //MAXTEMP -#ifdef HEATER_0_MINTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND] <= minttemp) { - target_raw[TEMPSENSOR_HOTEND] = 0; - analogWrite(HEATER_0_PIN, 0); - Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); - kill(); - } - #endif -#endif -#ifdef HEATER_1_MINTEMP - #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_AUX] <= minttemp) { - target_raw[TEMPSENSOR_AUX] = 0; - analogWrite(HEATER_2_PIN, 0); - Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); - kill(); - } - #endif -#endif //MAXTEMP -#ifdef BED_MINTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); - kill(); - } - #endif -#endif -#ifdef BED_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); - kill(); - } - #endif -#endif - } -} +/* + temperature.c - temperature control + Part of Marlin + + 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + + This firmware is optimized for gen6 electronics. + */ + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "temperature.h" + +int target_bed_raw = 0; +int current_bed_raw = 0; + +int target_raw[3] = {0, 0, 0}; +int current_raw[3] = {0, 0, 0}; +unsigned char temp_meas_ready = false; + +unsigned long previous_millis_heater, previous_millis_bed_heater; + +#ifdef PIDTEMP + double temp_iState = 0; + double temp_dState = 0; + double pTerm; + double iTerm; + double dTerm; + //int output; + double pid_error; + double temp_iState_min; + double temp_iState_max; + double pid_setpoint = 0.0; + double pid_input; + double pid_output; + bool pid_reset; + float HeaterPower; + + float Kp=DEFAULT_Kp; + float Ki=DEFAULT_Ki; + float Kd=DEFAULT_Kd; + float Kc=DEFAULT_Kc; +#endif //PIDTEMP + +#ifdef HEATER_0_MINTEMP +int minttemp_0 = temp2analog(HEATER_0_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_0_MAXTEMP +int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); +#endif //MAXTEMP + +#ifdef HEATER_1_MINTEMP +int minttemp_1 = temp2analog(HEATER_1_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_1_MAXTEMP +int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); +#endif //MAXTEMP + +#ifdef BED_MINTEMP +int bed_minttemp = temp2analog(BED_MINTEMP); +#endif //BED_MINTEMP +#ifdef BED_MAXTEMP +int bed_maxttemp = temp2analog(BED_MAXTEMP); +#endif //BED_MAXTEMP + +void manage_heater() +{ +#ifdef USE_WATCHDOG + wd_reset(); +#endif + + float pid_input; + float pid_output; + if(temp_meas_ready != true) //better readability + return; + +CRITICAL_SECTION_START; + temp_meas_ready = false; +CRITICAL_SECTION_END; + +#ifdef PIDTEMP + pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + +#ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + //K1 defined in Configuration.h in the PID settings + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; + #ifdef PID_ADD_EXTRUSION_RATE + pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high + #endif + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } +#endif //PID_OPENLOOP +#ifdef PID_DEBUG + Serial.print(" Input "); + Serial.print(pid_input); + Serial.print(" Output "); + Serial.print(pid_output); + Serial.print(" pTerm "); + Serial.print(pTerm); + Serial.print(" iTerm "); + Serial.print(iTerm); + Serial.print(" dTerm "); + Serial.print(dTerm); + Serial.println(); +#endif //PID_DEBUG + analogWrite(HEATER_0_PIN, pid_output); +#endif //PIDTEMP + +#ifndef PIDTEMP + if(current_raw[0] >= target_raw[0]) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } +#endif + + if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) + return; + previous_millis_bed_heater = millis(); + + #if TEMP_1_PIN > -1 + if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) + { + WRITE(HEATER_1_PIN,LOW); + } + else + { + WRITE(HEATER_1_PIN,HIGH); + } + #endif + } + +// Takes hot end temperature value as input and returns corresponding raw value. +// For a thermistor, it uses the RepRap thermistor temp table. +// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. +// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. +int temp2analog(int celsius) { + #ifdef HEATER_0_USES_THERMISTOR + int raw = 0; + byte i; + + for (i=1; i raw) + { + celsius = heater_0_temptable[i-1][1] + + (raw - heater_0_temptable[i-1][0]) * + (float)(heater_0_temptable[i][1] - heater_0_temptable[i-1][1]) / + (float)(heater_0_temptable[i][0] - heater_0_temptable[i-1][0]); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == NUMTEMPS_HEATER_0) celsius = heater_0_temptable[i-1][1]; + + return celsius; + #elif defined HEATER_0_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +// Derived from RepRap FiveD extruder::getTemperature() +// For bed temperature measurement. +float analog2tempBed(int raw) { + #ifdef BED_USES_THERMISTOR + int celsius = 0; + byte i; + + raw = (1023 * OVERSAMPLENR) - raw; + + for (i=1; i raw) + { + celsius = bedtemptable[i-1][1] + + (raw - bedtemptable[i-1][0]) * + (bedtemptable[i][1] - bedtemptable[i-1][1]) / + (bedtemptable[i][0] - bedtemptable[i-1][0]); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; + + return celsius; + + #elif defined BED_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +void tp_init() +{ +#if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); +#endif +#if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); +#endif +#if (HEATER_2_PIN > -1) + SET_OUTPUT(HEATER_2_PIN); +#endif + +#ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif //PIDTEMP + +// Set analog inputs + ADCSRA = 1< -1) + #if TEMP_0_PIN < 8 + DIDR0 = 1 << TEMP_0_PIN; + #else + DIDR2 = 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) + raw_temp_0_value += ADC; + #endif + temp_state = 2; + break; + case 2: // Prepare TEMP_1 + #if (TEMP_1_PIN > -1) + #if TEMP_1_PIN < 7 + DIDR0 = 1< -1) + raw_temp_1_value += ADC; + #endif + temp_state = 4; + break; + case 4: // Prepare TEMP_2 + #if (TEMP_2_PIN > -1) + #if TEMP_2_PIN < 7 + DIDR0 = 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) + raw_temp_2_value += ADC; + #endif + temp_state = 0; + temp_count++; + break; + default: + Serial.println("!! Temp measurement error !!"); + break; + } + + if(temp_count >= 16) // 6 ms * 16 = 96ms. + { + #ifdef HEATER_0_USES_AD595 + current_raw[0] = raw_temp_0_value; + #else + current_raw[0] = 16383 - raw_temp_0_value; + #endif + + #ifdef HEATER_1_USES_AD595 + current_raw[2] = raw_temp_2_value; + #else + current_raw[2] = 16383 - raw_temp_2_value; + #endif + + #ifdef BED_USES_AD595 + current_raw[1] = raw_temp_1_value; + #else + current_raw[1] = 16383 - raw_temp_1_value; + #endif + + temp_meas_ready = true; + temp_count = 0; + raw_temp_0_value = 0; + raw_temp_1_value = 0; + raw_temp_2_value = 0; +#ifdef HEATER_0_MAXTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); + kill(); + } + #endif +#endif +#ifdef HEATER_1_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + if(current_raw[2] >= maxttemp_1) { + analogWrite(HEATER_2_PIN, 0); + Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); + kill() + } + #endif +#endif //MAXTEMP +#ifdef HEATER_0_MINTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); + kill(); + } + #endif +#endif +#ifdef HEATER_1_MINTEMP + #if (HEATER_2_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + analogWrite(HEATER_2_PIN, 0); + Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); + kill(); + } + #endif +#endif //MAXTEMP +#ifdef BED_MINTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); + kill(); + } + #endif +#endif +#ifdef BED_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); + kill(); + } + #endif +#endif + } +} diff --git a/Marlin/temperature.h b/Marlin/temperature.h index b78797978..a36f99781 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -1,58 +1,58 @@ -/* - temperature.h - temperature controller - Part of Marlin - - Copyright (c) 2011 Erik van der Zalm - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -#ifndef temperature_h -#define temperature_h - -#include "Marlin.h" -#ifdef PID_ADD_EXTRUSION_RATE - #include "stepper.h" -#endif -void tp_init(); -void manage_heater(); -//int temp2analogu(int celsius, const short table[][2], int numtemps); -//float analog2tempu(int raw, const short table[][2], int numtemps); -int temp2analog(int celsius); -int temp2analogBed(int celsius); -float analog2temp(int raw); -float analog2tempBed(int raw); - -#ifdef HEATER_USES_THERMISTOR - #define HEATERSOURCE 1 -#endif -#ifdef BED_USES_THERMISTOR - #define BEDSOURCE 1 -#endif - -//#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) -//#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS - - -extern float Kp; -extern float Ki; -extern float Kd; -extern float Kc; - -enum {TEMPSENSOR_HOTEND=0,TEMPSENSOR_BED=1, TEMPSENSOR_AUX=2}; -extern int target_raw[3]; -extern int current_raw[3]; -extern double pid_setpoint; - -#endif +/* + temperature.h - temperature controller + Part of Marlin + + Copyright (c) 2011 Erik van der Zalm + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +#ifndef temperature_h +#define temperature_h + +#include "Marlin.h" +#ifdef PID_ADD_EXTRUSION_RATE + #include "stepper.h" +#endif +void tp_init(); +void manage_heater(); +//int temp2analogu(int celsius, const short table[][2], int numtemps); +//float analog2tempu(int raw, const short table[][2], int numtemps); +int temp2analog(int celsius); +int temp2analogBed(int celsius); +float analog2temp(int raw); +float analog2tempBed(int raw); + +#ifdef HEATER_0_USES_THERMISTOR + #define HEATERSOURCE 1 +#endif +#ifdef BED_USES_THERMISTOR + #define BEDSOURCE 1 +#endif + +//#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) +//#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS + + +extern float Kp; +extern float Ki; +extern float Kd; +extern float Kc; + +enum {TEMPSENSOR_HOTEND_0=0,TEMPSENSOR_BED=1, TEMPSENSOR_HOTEND_1=2}; +extern int target_raw[3]; +extern int current_raw[3]; +extern double pid_setpoint; + +#endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index a6c75e0fc..7eefec668 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -253,17 +253,17 @@ void MainMenu::showStatus() } - if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) + if((abs(current_raw[TEMPSENSOR_HOTEND_0]-oldcurrentraw)>3)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); - oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND_0]))); + oldcurrentraw=current_raw[TEMPSENSOR_HOTEND_0]; } - if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) + if((target_raw[TEMPSENSOR_HOTEND_0]!=oldtargetraw)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); - oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND_0]))); + oldtargetraw=target_raw[TEMPSENSOR_HOTEND_0]; } #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 static int oldcurrentbedraw=-1; @@ -426,7 +426,7 @@ void MainMenu::showPrepare() if((activeline==line) && CLICKED) { BLOCK - target_raw[TEMPSENSOR_HOTEND] = temp2analog(170); + target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(170); beepshort(); } }break; @@ -531,7 +531,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" \002Nozzle:"); - lcd.setCursor(13,line);lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); + lcd.setCursor(13,line);lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND_0]))); } if((activeline==line) ) @@ -541,11 +541,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)analog2temp(target_raw[TEMPSENSOR_HOTEND]); + encoderpos=(int)analog2temp(target_raw[TEMPSENSOR_HOTEND_0]); } else { - target_raw[TEMPSENSOR_HOTEND] = temp2analog(encoderpos); + target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(encoderpos); encoderpos=activeline*lcdslow; beepshort(); } @@ -1590,4 +1590,4 @@ char *fillto(int8_t n,char *c) #else inline void lcd_status() {}; #endif - + From 0b82465168e53a16d573610bb30495d70bd050b8 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 6 Nov 2011 12:39:00 +0100 Subject: [PATCH 023/430] First arcs version. (Arcs not working ok) --- Marlin/Configuration.h | 493 +++---- Marlin/Marlin.pde | 2605 +++++++++++++++++++------------------ Marlin/motion_control.cpp | 133 ++ Marlin/motion_control.h | 32 + 4 files changed, 1784 insertions(+), 1479 deletions(-) create mode 100644 Marlin/motion_control.cpp create mode 100644 Marlin/motion_control.h diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e2d5cb077..65c4f32a3 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,245 +1,248 @@ -#ifndef CONFIGURATION_H -#define CONFIGURATION_H - -//#define DEBUG_STEPS - -// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration - -//// The following define selects which electronics board you have. Please choose the one that matches your setup -// MEGA/RAMPS up to 1.2 = 3, -// RAMPS 1.3 = 33 -// Gen6 = 5, -// Sanguinololu 1.2 and above = 62 -// Ultimaker = 7, -#define MOTHERBOARD 7 -//#define MOTHERBOARD 5 - - -//// Thermistor settings: -// 1 is 100k thermistor -// 2 is 200k thermistor -// 3 is mendel-parts thermistor -// 4 is 10k thermistor -// 5 is ParCan supplied 104GT-2 100K -// 6 is EPCOS 100k -// 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define THERMISTORHEATER_1 3 -#define THERMISTORHEATER_2 3 -#define THERMISTORBED 3 - -//#define HEATER_0_USES_THERMISTOR -//#define HEATER_1_USES_THERMISTOR -#define HEATER_0_USES_AD595 -//#define HEATER_1_USES_AD595 - -// Select one of these only to define how the bed temp is read. -//#define BED_USES_THERMISTOR -//#define BED_USES_AD595 - -#define HEATER_CHECK_INTERVAL 50 -#define BED_CHECK_INTERVAL 5000 - - -//// Endstop Settings -#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors -// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false - -// This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 -//#define BAUDRATE 230400 - -// Comment out (using // at the start of the line) to disable SD support: - -// #define ULTRA_LCD //any lcd - -#define ULTIPANEL -#define ULTIPANEL -#ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel - #define SDSUPPORT - #define ULTRA_LCD - #define LCD_WIDTH 20 -#define LCD_HEIGHT 4 -#else //no panel but just lcd - #ifdef ULTRA_LCD - #define LCD_WIDTH 16 - #define LCD_HEIGHT 2 - #endif -#endif - - -//#define SDSUPPORT // Enable SD Card Support in Hardware Console - - - -const int dropsegments=5; //everything with this number of steps will be ignored as move - -//// ADVANCED SETTINGS - to tweak parameters - -#include "thermistortables.h" - -// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 -#define X_ENABLE_ON 0 -#define Y_ENABLE_ON 0 -#define Z_ENABLE_ON 0 -#define E_ENABLE_ON 0 - -// Disables axis when it's not being used. -#define DISABLE_X false -#define DISABLE_Y false -#define DISABLE_Z false -#define DISABLE_E false - -// Inverting axis direction -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false - -//// ENDSTOP SETTINGS: -// Sets direction of endstops when homing; 1=MAX, -1=MIN -#define X_HOME_DIR -1 -#define Y_HOME_DIR -1 -#define Z_HOME_DIR -1 - -#define min_software_endstops false //If true, axis won't move to coordinates less than zero. -#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 210 -#define Y_MAX_LENGTH 210 -#define Z_MAX_LENGTH 210 - -//// MOVEMENT SETTINGS -#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -//note: on bernhards ultimaker 200 200 12 are working well. -#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds -//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. -//!!!!!!Use only if you know that your printer works at the maximum declared speeds. -// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze -#define TRAVELING_AT_MAXSPEED -#define AXIS_RELATIVE_MODES {false, false, false, false} - -#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) - -// default settings - -#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker -#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} -#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. - -#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts - -#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 10 - -// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. -#define DEFAULT_MINSEGMENTTIME 20000 -#define DEFAULT_XYJERK 30.0*60 -#define DEFAULT_ZJERK 10.0*60 - - -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -//this enables the watchdog interrupt. -#define USE_WATCHDOG -//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: -#define RESET_MANUAL - -#define WATCHDOG_TIMEOUT 4 - - - -//// Experimental watchdog and minimal temp -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 -//#define WATCHPERIOD 5000 //5 seconds - -// Actual temperature must be close to target for this long before M109 returns success -//#define TEMP_RESIDENCY_TIME 20 // (seconds) -//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one - -//// The minimal temperature defines the temperature below which the heater will not be enabled -#define HEATER_0_MINTEMP 5 -//#define HEATER_1_MINTEMP 5 -//#define BED_MINTEMP 5 - - -// When temperature exceeds max temp, your heater will be switched off. -// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! -// You should use MINTEMP for thermistor short/failure protection. -#define HEATER_0_MAXTEMP 275 -//#define_HEATER_1_MAXTEMP 275 -//#define BED_MAXTEMP 150 - - - - - - - -#define PIDTEMP -#ifdef PIDTEMP - /// PID settings: - // Uncomment the following line to enable PID support. - //#define SMOOTHING - //#define SMOOTHFACTOR 5.0 - //float current_raw_average=0; - #define K1 0.95 //smoothing of the PID - //#define PID_DEBUG // Sends debug data to the serial port. - //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % - #define PID_MAX 255 // limits current to nozzle - #define PID_INTEGRAL_DRIVE_MAX 255 - #define PID_dT 0.1 - //machine with red silicon: 1950:45 second ; with fan fully blowin 3000:47 - - #define PID_CRITIAL_GAIN 3000 - #define PID_SWING_AT_CRITIAL 45 //seconds - #define PIDIADD 5 - /* - //PID according to Ziegler-Nichols method - float Kp = 0.6*PID_CRITIAL_GAIN; - float Ki =PIDIADD+2*Kp/PID_SWING_AT_CRITIAL*PID_dT; - float Kd = Kp*PID_SWING_AT_CRITIAL/8./PID_dT; - */ - //PI according to Ziegler-Nichols method - #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) - #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (0) - - #define PID_ADD_EXTRUSION_RATE - #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) - #endif -#endif // PIDTEMP - -// extruder advance constant (s2/mm3) -// -// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 -// -// hooke's law says: force = k * distance -// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant -// so: v ^ 2 is proportional to number of steps we advance the extruder -//#define ADVANCE - -#ifdef ADVANCE -#define EXTRUDER_ADVANCE_K .3 - -#define D_FILAMENT 1.7 -#define STEPS_MM_E 65 -#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) -#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) - -#endif // ADVANCE - -// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, e.g. 8,16,32 -#if defined SDSUPPORT -// The number of linear motions that can be in the plan at any give time. - #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller -#else - #define BLOCK_BUFFER_SIZE 16 // maximize block buffer -#endif - - -#endif +#ifndef CONFIGURATION_H +#define CONFIGURATION_H + +//#define DEBUG_STEPS + +#define MM_PER_ARC_SEGMENT 1 +#define N_ARC_CORRECTION 25 + +// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration + +//// The following define selects which electronics board you have. Please choose the one that matches your setup +// MEGA/RAMPS up to 1.2 = 3, +// RAMPS 1.3 = 33 +// Gen6 = 5, +// Sanguinololu 1.2 and above = 62 +// Ultimaker = 7, +#define MOTHERBOARD 7 +//#define MOTHERBOARD 5 + + +//// Thermistor settings: +// 1 is 100k thermistor +// 2 is 200k thermistor +// 3 is mendel-parts thermistor +// 4 is 10k thermistor +// 5 is ParCan supplied 104GT-2 100K +// 6 is EPCOS 100k +// 7 is 100k Honeywell thermistor 135-104LAG-J01 +#define THERMISTORHEATER_1 3 +#define THERMISTORHEATER_2 3 +#define THERMISTORBED 3 + +//#define HEATER_0_USES_THERMISTOR +//#define HEATER_1_USES_THERMISTOR +#define HEATER_0_USES_AD595 +//#define HEATER_1_USES_AD595 + +// Select one of these only to define how the bed temp is read. +//#define BED_USES_THERMISTOR +//#define BED_USES_AD595 + +#define HEATER_CHECK_INTERVAL 50 +#define BED_CHECK_INTERVAL 5000 + + +//// Endstop Settings +#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors +// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. +const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false + +// This determines the communication speed of the printer +#define BAUDRATE 250000 +//#define BAUDRATE 115200 +//#define BAUDRATE 230400 + +// Comment out (using // at the start of the line) to disable SD support: + +// #define ULTRA_LCD //any lcd + +#define ULTIPANEL +#define ULTIPANEL +#ifdef ULTIPANEL + //#define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #define LCD_WIDTH 20 +#define LCD_HEIGHT 4 +#else //no panel but just lcd + #ifdef ULTRA_LCD + #define LCD_WIDTH 16 + #define LCD_HEIGHT 2 + #endif +#endif + + +//#define SDSUPPORT // Enable SD Card Support in Hardware Console + + + +const int dropsegments=5; //everything with this number of steps will be ignored as move + +//// ADVANCED SETTINGS - to tweak parameters + +#include "thermistortables.h" + +// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 +#define X_ENABLE_ON 0 +#define Y_ENABLE_ON 0 +#define Z_ENABLE_ON 0 +#define E_ENABLE_ON 0 + +// Disables axis when it's not being used. +#define DISABLE_X false +#define DISABLE_Y false +#define DISABLE_Z false +#define DISABLE_E false + +// Inverting axis direction +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false + +//// ENDSTOP SETTINGS: +// Sets direction of endstops when homing; 1=MAX, -1=MIN +#define X_HOME_DIR -1 +#define Y_HOME_DIR -1 +#define Z_HOME_DIR -1 + +#define min_software_endstops false //If true, axis won't move to coordinates less than zero. +#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 210 +#define Y_MAX_LENGTH 210 +#define Z_MAX_LENGTH 210 + +//// MOVEMENT SETTINGS +#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E +//note: on bernhards ultimaker 200 200 12 are working well. +#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds +//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. +//!!!!!!Use only if you know that your printer works at the maximum declared speeds. +// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze +#define TRAVELING_AT_MAXSPEED +#define AXIS_RELATIVE_MODES {false, false, false, false} + +#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) + +// default settings + +#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker +#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} +#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. + +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts + +#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 10 + +// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. +#define DEFAULT_MINSEGMENTTIME 20000 +#define DEFAULT_XYJERK 30.0*60 +#define DEFAULT_ZJERK 10.0*60 + + +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +//this enables the watchdog interrupt. +#define USE_WATCHDOG +//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +#define RESET_MANUAL + +#define WATCHDOG_TIMEOUT 4 + + + +//// Experimental watchdog and minimal temp +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 +//#define WATCHPERIOD 5000 //5 seconds + +// Actual temperature must be close to target for this long before M109 returns success +//#define TEMP_RESIDENCY_TIME 20 // (seconds) +//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one + +//// The minimal temperature defines the temperature below which the heater will not be enabled +#define HEATER_0_MINTEMP 5 +//#define HEATER_1_MINTEMP 5 +//#define BED_MINTEMP 5 + + +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define HEATER_0_MAXTEMP 275 +//#define_HEATER_1_MAXTEMP 275 +//#define BED_MAXTEMP 150 + + + + + + + +#define PIDTEMP +#ifdef PIDTEMP + /// PID settings: + // Uncomment the following line to enable PID support. + //#define SMOOTHING + //#define SMOOTHFACTOR 5.0 + //float current_raw_average=0; + #define K1 0.95 //smoothing of the PID + //#define PID_DEBUG // Sends debug data to the serial port. + //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % + #define PID_MAX 255 // limits current to nozzle + #define PID_INTEGRAL_DRIVE_MAX 255 + #define PID_dT 0.1 + //machine with red silicon: 1950:45 second ; with fan fully blowin 3000:47 + + #define PID_CRITIAL_GAIN 3000 + #define PID_SWING_AT_CRITIAL 45 //seconds + #define PIDIADD 5 + /* + //PID according to Ziegler-Nichols method + float Kp = 0.6*PID_CRITIAL_GAIN; + float Ki =PIDIADD+2*Kp/PID_SWING_AT_CRITIAL*PID_dT; + float Kd = Kp*PID_SWING_AT_CRITIAL/8./PID_dT; + */ + //PI according to Ziegler-Nichols method + #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) + #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (0) + + #define PID_ADD_EXTRUSION_RATE + #ifdef PID_ADD_EXTRUSION_RATE + #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) + #endif +#endif // PIDTEMP + +// extruder advance constant (s2/mm3) +// +// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 +// +// hooke's law says: force = k * distance +// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant +// so: v ^ 2 is proportional to number of steps we advance the extruder +//#define ADVANCE + +#ifdef ADVANCE +#define EXTRUDER_ADVANCE_K .3 + +#define D_FILAMENT 1.7 +#define STEPS_MM_E 65 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + +#endif // ADVANCE + +// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, e.g. 8,16,32 +#if defined SDSUPPORT +// The number of linear motions that can be in the plan at any give time. + #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller +#else + #define BLOCK_BUFFER_SIZE 16 // maximize block buffer +#endif + + +#endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 7615cccf8..92907a2d2 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1,1235 +1,1372 @@ -/* - Reprap firmware 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 . - */ +/* + Reprap firmware 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + */ + +#include "EEPROMwrite.h" +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" +#include "motion_control.h" + +#ifdef SIMPLE_LCD + #include "Simplelcd.h" +#endif + +char version_string[] = "1.0.0 Alpha 1"; + +#ifdef SDSUPPORT +#include "SdFat.h" +#endif //SDSUPPORT + + +// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html +// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes + +//Implemented Codes +//------------------- +// G0 -> G1 +// G1 - Coordinated Movement X Y Z E +// G2 - CW ARC +// G3 - CCW ARC +// G4 - Dwell S or P +// G28 - Home all Axis +// G90 - Use Absolute Coordinates +// G91 - Use Relative Coordinates +// G92 - Set current position to cordinates given + +//RepRap M Codes +// M104 - Set extruder target temp +// M105 - Read current temp +// M106 - Fan on +// M107 - Fan off +// M109 - Wait for extruder current temp to reach target temp. +// M114 - Display current position + +//Custom M Codes +// M20 - List SD card +// M21 - Init SD card +// M22 - Release SD card +// M23 - Select SD file (M23 filename.g) +// M24 - Start/resume SD print +// M25 - Pause SD print +// M26 - Set SD position in bytes (M26 S12345) +// M27 - Report SD print status +// M28 - Start SD write (M28 filename.g) +// M29 - Stop SD write +// M42 - Change pin status via gcode +// M80 - Turn on Power Supply +// M81 - Turn off Power Supply +// M82 - Set E codes absolute (default) +// M83 - Set E codes relative while in Absolute Coordinates (G90) mode +// M84 - Disable steppers until next move, +// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. +// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) +// M92 - Set axis_steps_per_unit - same syntax as G92 +// M115 - Capabilities string +// M140 - Set bed target temp +// M190 - Wait for bed current temp to reach target temp. +// M200 - Set filament diameter +// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) +// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk +// M220 - set speed factor override percentage S:factor in percent +// M301 - Set PID parameters P I and D +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. + +//Stepper Movement Variables + +char axis_codes[NUM_AXIS] = { + 'X', 'Y', 'Z', 'E'}; +float destination[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { + 0.0, 0.0, 0.0, 0.0}; +float offset[3] = {0.0, 0.0, 0.0}; +bool home_all_axis = true; +float feedrate = 1500.0, next_feedrate, saved_feedrate; +long gcode_N, gcode_LastN; + +float homing_feedrate[] = HOMING_FEEDRATE; +bool axis_relative_modes[] = AXIS_RELATIVE_MODES; + +bool relative_mode = false; //Determines Absolute or Relative Coordinates +bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. + +uint8_t fanpwm=0; + +volatile int feedmultiply=100; //100->1 200->2 +int saved_feedmultiply; +volatile bool feedmultiplychanged=false; +// comm variables +#define MAX_CMD_SIZE 96 +#define BUFSIZE 4 +char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; +bool fromsd[BUFSIZE]; +int bufindr = 0; +int bufindw = 0; +int buflen = 0; +int i = 0; +char serial_char; +int serial_count = 0; +boolean comment_mode = false; +char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc +extern float HeaterPower; + +#include "EEPROM.h" + +const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 + +float tt = 0, bt = 0; +#ifdef WATCHPERIOD +int watch_raw = -1000; +unsigned long watchmillis = 0; +#endif //WATCHPERIOD + +//Inactivity shutdown variables +unsigned long previous_millis_cmd = 0; +unsigned long max_inactive_time = 0; +unsigned long stepper_inactive_time = 0; + +unsigned long starttime=0; +unsigned long stoptime=0; +#ifdef SDSUPPORT +Sd2Card card; +SdVolume volume; +SdFile root; +SdFile file; +uint32_t filesize = 0; +uint32_t sdpos = 0; +bool sdmode = false; +bool sdactive = false; +bool savetosd = false; +int16_t n; +unsigned long autostart_atmillis=0; + +void initsd(){ + sdactive = false; +#if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)){ + //if (!card.init(SPI_HALF_SPEED,SDSS)) + Serial.println("SD init fail"); + } + else if (!volume.init(&card)) + Serial.println("volume.init failed"); + else if (!root.openRoot(&volume)) + Serial.println("openRoot failed"); + else + { + sdactive = true; + Serial.println("SD card ok"); + } +#endif //SDSS +} + +void quickinitsd(){ + sdactive=false; + autostart_atmillis=millis()+5000; +} + +inline void write_command(char *buf){ + char* begin = buf; + char* npos = 0; + 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'; + //Serial.println(begin); + file.write(begin); + if (file.writeError){ + Serial.println("error writing to file"); + } +} +#endif //SDSUPPORT + + +///adds an command to the main command buffer +void enquecommand(const char *cmd) +{ + if(buflen < BUFSIZE) + { + //this is dangerous if a mixing of serial and this happsens + strcpy(&(cmdbuffer[bufindw][0]),cmd); + Serial.print("en:");Serial.println(cmdbuffer[bufindw]); + bufindw= (bufindw + 1)%BUFSIZE; + buflen += 1; + } +} + +void setup() +{ + + Serial.begin(BAUDRATE); + ECHOLN("Marlin "< -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); +#endif //SDPOWER + quickinitsd(); + +#endif //SDSUPPORT + plan_init(); // Initialize planner; + st_init(); // Initialize stepper; + tp_init(); // Initialize temperature loop + //checkautostart(); +} + +#ifdef SDSUPPORT +bool autostart_stilltocheck=true; + + +void checkautostart(bool force) +{ + //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset + if(!force) + { + if(!autostart_stilltocheck) + return; + if(autostart_atmillis 0) + { + for(int i=0;i<(int)strlen((char*)p.name);i++) + p.name[i]=tolower(p.name[i]); + //Serial.print((char*)p.name); + //Serial.print(" "); + //Serial.println(autoname); + if(p.name[9]!='~') //skip safety copies + if(strncmp((char*)p.name,autoname,5)==0) + { + char cmd[30]; + + sprintf(cmd,"M23 %s",autoname); + //sprintf(cmd,"M115"); + //enquecommand("G92 Z0"); + //enquecommand("G1 Z10 F2000"); + //enquecommand("G28 X-105 Y-105"); + enquecommand(cmd); + enquecommand("M24"); + found=true; + + } + } + if(!found) + lastnr=-1; + else + lastnr++; + +} +#else + +inline void checkautostart(bool x) +{ +} +#endif + + +void loop() +{ + if(buflen<3) + get_command(); + checkautostart(false); + if(buflen) + { +#ifdef SDSUPPORT + if(savetosd){ + if(strstr(cmdbuffer[bufindr],"M29") == NULL){ + write_command(cmdbuffer[bufindr]); + Serial.println("ok"); + } + else{ + file.sync(); + file.close(); + savetosd = false; + Serial.println("Done saving file."); + } + } + else{ + process_commands(); + } +#else + process_commands(); +#endif //SDSUPPORT + buflen = (buflen-1); + bufindr = (bufindr + 1)%BUFSIZE; + } + //check heater every n milliseconds + manage_heater(); + manage_inactivity(1); + LCD_STATUS; +} + + +inline void get_command() +{ + while( Serial.available() > 0 && buflen < BUFSIZE) { + serial_char = Serial.read(); + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) + { + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = false; + if(strstr(cmdbuffer[bufindw], "N") != NULL) + { + strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); + gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); + if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { + Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); + Serial.println(gcode_LastN); + //Serial.println(gcode_N); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + if(strstr(cmdbuffer[bufindw], "*") != NULL) + { + byte checksum = 0; + byte count = 0; + while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; + strchr_pointer = strchr(cmdbuffer[bufindw], '*'); + + if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { + Serial.print("Error: checksum mismatch, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + //if no errors, continue parsing + } + else + { + Serial.print("Error: No Checksum with line number, Last Line:"); + Serial.println(gcode_LastN); + FlushSerialRequestResend(); + serial_count = 0; + return; + } + + gcode_LastN = gcode_N; + //if no errors, continue parsing + } + else // if we don't receive 'N' but still see '*' + { + if((strstr(cmdbuffer[bufindw], "*") != NULL)) + { + Serial.print("Error: No Line Number with checksum, Last Line:"); + Serial.println(gcode_LastN); + serial_count = 0; + return; + } + } + if((strstr(cmdbuffer[bufindw], "G") != NULL)){ + strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); + switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ + case 0: + case 1: + case 2: + case 3: +#ifdef SDSUPPORT + if(savetosd) + break; +#endif //SDSUPPORT + Serial.println("ok"); + break; + default: + break; + } + + } + bufindw = (bufindw + 1)%BUFSIZE; + buflen += 1; + + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#ifdef SDSUPPORT + if(!sdmode || serial_count!=0){ + return; + } + while( filesize > sdpos && buflen < BUFSIZE) { + n = file.read(); + serial_char = (char)n; + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) + { + sdpos = file.curPosition(); + if(sdpos >= filesize){ + sdmode = false; + Serial.println("Done printing file"); + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + checkautostart(true); + } + if(!serial_count) return; //if empty line + cmdbuffer[bufindw][serial_count] = 0; //terminate string + if(!comment_mode){ + fromsd[bufindw] = true; + buflen += 1; + bufindw = (bufindw + 1)%BUFSIZE; + } + comment_mode = false; //for new command + serial_count = 0; //clear buffer + } + else + { + if(serial_char == ';') comment_mode = true; + if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; + } + } +#endif //SDSUPPORT + +} + + +inline float code_value() { + return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); +} +inline long code_value_long() { + return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); +} +inline bool code_seen(char code_string[]) { + return (strstr(cmdbuffer[bufindr], code_string) != NULL); +} //Return True if the string was found + +inline bool code_seen(char code) +{ + strchr_pointer = strchr(cmdbuffer[bufindr], code); + return (strchr_pointer != NULL); //Return True if a character was found +} + +inline void process_commands() +{ + unsigned long codenum; //throw away variable + char *starpos = NULL; + + if(code_seen('G')) + { + switch((int)code_value()) + { + case 0: // G0 -> G1 + case 1: // G1 + get_coordinates(); // For X Y Z E F + prepare_move(); + previous_millis_cmd = millis(); + //ClearToSend(); + return; + //break; + case 2: // G2 - CW ARC + get_arc_coordinates(); + prepare_arc_move(true); + previous_millis_cmd = millis(); + return; + case 3: // G3 - CCW ARC + get_arc_coordinates(); + prepare_arc_move(false); + previous_millis_cmd = millis(); + return; + case 4: // G4 dwell + codenum = 0; + if(code_seen('P')) codenum = code_value(); // milliseconds to wait + if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait + codenum += millis(); // keep track of when we started waiting + while(millis() < codenum ){ + manage_heater(); + } + break; + case 28: //G28 Home all Axis one at a time + saved_feedrate = feedrate; + saved_feedmultiply = feedmultiply; + feedmultiply = 100; + + for(int i=0; i < NUM_AXIS; i++) { + destination[i] = current_position[i]; + } + feedrate = 0.0; + + home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); + + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { + if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ +// st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]; + prepare_move(); + +// st_synchronize(); + current_position[X_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = -5 * X_HOME_DIR; + prepare_move(); + +// st_synchronize(); + destination[X_AXIS] = 10 * X_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]/2 ; + prepare_move(); + +// st_synchronize(); + current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = current_position[X_AXIS]; + feedrate = 0.0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { + if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]; + prepare_move(); +// st_synchronize(); + + current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = -5 * Y_HOME_DIR; + prepare_move(); +// st_synchronize(); + + destination[Y_AXIS] = 10 * Y_HOME_DIR; + feedrate = homing_feedrate[Y_AXIS]/2; + prepare_move(); +// st_synchronize(); + + current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Y_AXIS] = current_position[Y_AXIS]; + feedrate = 0.0; + } + } + + if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { + if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]; + prepare_move(); +// st_synchronize(); + + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = -2 * Z_HOME_DIR; + prepare_move(); +// st_synchronize(); + + destination[Z_AXIS] = 3 * Z_HOME_DIR; + feedrate = homing_feedrate[Z_AXIS]/2; + prepare_move(); +// st_synchronize(); + + current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[Z_AXIS] = current_position[Z_AXIS]; + feedrate = 0.0; + } + } + feedrate = saved_feedrate; + feedmultiply = saved_feedmultiply; + previous_millis_cmd = millis(); + break; + case 90: // G90 + relative_mode = false; + break; + case 91: // G91 + relative_mode = true; + break; + case 92: // G92 + if(!code_seen(axis_codes[E_AXIS])) + st_synchronize(); + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) current_position[i] = code_value(); + } + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + break; + } + } + + else if(code_seen('M')) + { + + switch( (int)code_value() ) + { +#ifdef SDSUPPORT + + case 20: // M20 - list SD card + Serial.println("Begin file list"); + root.ls(); + Serial.println("End file list"); + break; + case 21: // M21 - init SD card + sdmode = false; + initsd(); + break; + case 22: //M22 - release SD card + sdmode = false; + sdactive = false; + break; + case 23: //M23 - Select file + if(sdactive){ + sdmode = false; + file.close(); + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos!=NULL) + *(starpos-1)='\0'; + if (file.open(&root, strchr_pointer + 4, O_READ)) { + Serial.print("File opened:"); + Serial.print(strchr_pointer + 4); + Serial.print(" Size:"); + Serial.println(file.fileSize()); + sdpos = 0; + filesize = file.fileSize(); + Serial.println("File selected"); + } + else{ + Serial.println("file.open failed"); + } + } + break; + case 24: //M24 - Start SD print + if(sdactive){ + sdmode = true; + starttime=millis(); + } + break; + case 25: //M25 - Pause SD print + if(sdmode){ + sdmode = false; + } + break; + case 26: //M26 - Set SD index + if(sdactive && code_seen('S')){ + sdpos = code_value_long(); + file.seekSet(sdpos); + } + break; + case 27: //M27 - Get SD status + if(sdactive){ + Serial.print("SD printing byte "); + Serial.print(sdpos); + Serial.print("/"); + Serial.println(filesize); + } + else{ + Serial.println("Not SD printing"); + } + break; + case 28: //M28 - Start SD write + if(sdactive){ + char* npos = 0; + file.close(); + sdmode = false; + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + { + Serial.print("open failed, File: "); + Serial.print(strchr_pointer + 4); + Serial.print("."); + } + else{ + savetosd = true; + Serial.print("Writing to file: "); + Serial.println(strchr_pointer + 4); + } + } + break; + case 29: //M29 - Stop SD write + //processed in write to file routine above + //savetosd = false; + break; + case 30: + { + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"%i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + } + break; +#endif //SDSUPPORT + case 42: //M42 -Change pin status via gcode + if (code_seen('S')) + { + int pin_status = code_value(); + if (code_seen('P') && pin_status >= 0 && pin_status <= 255) + { + int pin_number = code_value(); + for(int i = 0; i < (int)sizeof(sensitive_pins); i++) + { + if (sensitive_pins[i] == pin_number) + { + pin_number = -1; + break; + } + } + + if (pin_number > -1) + { + pinMode(pin_number, OUTPUT); + digitalWrite(pin_number, pin_status); + analogWrite(pin_number, pin_status); + } + } + } + break; + case 104: // M104 + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); +#ifdef PIDTEMP + pid_setpoint = code_value(); +#endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]){ + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + }else{ + watchmillis = 0; + } + #endif + break; + case 140: // M140 set bed temp + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); + break; + case 105: // M105 + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + tt = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + #endif + #if TEMP_1_PIN > -1 + bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); + #endif + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + Serial.print("ok T:"); + Serial.print(tt); +// Serial.print(", raw:"); +// Serial.print(current_raw); + #if TEMP_1_PIN > -1 +#ifdef PIDTEMP + Serial.print(" B:"); + #if TEMP_1_PIN > -1 + Serial.println(bt); + #else + Serial.println(HeaterPower); + #endif +#else + Serial.println(); +#endif + #else + Serial.println(); + #endif + #else + Serial.println("No thermistors - no temp"); + #endif + return; + //break; + case 109: {// M109 - Wait for extruder heater to reach target. + LCD_MESSAGE("Heating..."); + if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); + #ifdef PIDTEMP + pid_setpoint = code_value(); + #endif //PIDTEM + #ifdef WATCHPERIOD + if(target_raw[TEMPSENSOR_HOTEND_0]>current_raw[TEMPSENSOR_HOTEND_0]){ + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + } else { + watchmillis = 0; + } + #endif //WATCHPERIOD + codenum = millis(); + + /* See if we are heating up or cooling down */ + bool target_direction = (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]); // true if heating, false if cooling + + #ifdef TEMP_RESIDENCY_TIME + long residencyStart; + residencyStart = -1; + /* continue to loop until we have reached the target temp + _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ + while((target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0])) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + #else + while ( target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0]) ) { + #endif //TEMP_RESIDENCY_TIME + if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down + Serial.print("T:"); + Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) ); + codenum = millis(); + } + manage_heater(); + LCD_STATUS; + #ifdef TEMP_RESIDENCY_TIME + /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time + or when current temp falls outside the hysteresis after target temp was reached */ + if ((residencyStart == -1 && target_direction && current_raw[TEMPSENSOR_HOTEND_0] >= target_raw[TEMPSENSOR_HOTEND_0]) || + (residencyStart == -1 && !target_direction && current_raw[TEMPSENSOR_HOTEND_0] <= target_raw[TEMPSENSOR_HOTEND_0]) || + (residencyStart > -1 && labs(analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) - analog2temp(target_raw[TEMPSENSOR_HOTEND_0])) > TEMP_HYSTERESIS) ) { + residencyStart = millis(); + } + #endif //TEMP_RESIDENCY_TIME + } + LCD_MESSAGE("Marlin ready."); + } + break; + case 190: // M190 - Wait bed for heater to reach target. + #if TEMP_1_PIN > -1 + if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); + codenum = millis(); + while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) + { + if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + Serial.print("T:"); + Serial.println( tt ); + Serial.print("ok T:"); + Serial.print( tt ); + Serial.print(" B:"); + Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); + codenum = millis(); + } + manage_heater(); + } + #endif + break; +#if FAN_PIN > -1 + case 106: //M106 Fan On + if (code_seen('S')){ + WRITE(FAN_PIN,HIGH); + fanpwm=constrain(code_value(),0,255); + analogWrite(FAN_PIN, fanpwm); + } + else { + WRITE(FAN_PIN,HIGH); + fanpwm=255; + analogWrite(FAN_PIN, fanpwm); + } + break; + case 107: //M107 Fan Off + WRITE(FAN_PIN,LOW); + analogWrite(FAN_PIN, 0); + break; +#endif +#if (PS_ON_PIN > -1) + case 80: // M80 - ATX Power On + SET_OUTPUT(PS_ON_PIN); //GND + break; + case 81: // M81 - ATX Power Off + SET_INPUT(PS_ON_PIN); //Floating + break; +#endif + case 82: + axis_relative_modes[3] = false; + break; + case 83: + axis_relative_modes[3] = true; + break; + case 18: + case 84: + if(code_seen('S')){ + stepper_inactive_time = code_value() * 1000; + } + else{ + st_synchronize(); + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + break; + case 85: // M85 + code_seen('S'); + max_inactive_time = code_value() * 1000; + break; + case 92: // M92 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); + } + + break; + case 115: // M115 + Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + break; + case 114: // M114 + Serial.print("X:"); + Serial.print(current_position[X_AXIS]); + Serial.print("Y:"); + Serial.print(current_position[Y_AXIS]); + Serial.print("Z:"); + Serial.print(current_position[Z_AXIS]); + Serial.print("E:"); + Serial.print(current_position[E_AXIS]); + #ifdef DEBUG_STEPS + Serial.print(" Count X:"); + Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); + Serial.print("Y:"); + Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); + Serial.print("Z:"); + Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); + #endif + Serial.println(""); + break; + case 119: // M119 +#if (X_MIN_PIN > -1) + Serial.print("x_min:"); + Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (X_MAX_PIN > -1) + Serial.print("x_max:"); + Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MIN_PIN > -1) + Serial.print("y_min:"); + Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Y_MAX_PIN > -1) + Serial.print("y_max:"); + Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MIN_PIN > -1) + Serial.print("z_min:"); + Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif +#if (Z_MAX_PIN > -1) + Serial.print("z_max:"); + Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); +#endif + Serial.println(""); + break; + //TODO: update for all axis, use for loop + case 201: // M201 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#if 0 // Not used for Sprinter/grbl gen6 + case 202: // M202 + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } + break; +#endif + case 203: // M203 max feedrate mm/sec + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; + } + break; + case 204: // M204 acclereration S normal moves T filmanent only moves + { + if(code_seen('S')) acceleration = code_value() ; + if(code_seen('T')) retract_acceleration = code_value() ; + } + break; + case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + { + if(code_seen('S')) minimumfeedrate = code_value()*60 ; + if(code_seen('T')) mintravelfeedrate = code_value()*60 ; + if(code_seen('B')) minsegmenttime = code_value() ; + if(code_seen('X')) max_xy_jerk = code_value()*60 ; + if(code_seen('Z')) max_z_jerk = code_value()*60 ; + } + break; + case 220: // M220 S- set speed factor override percentage + { + if(code_seen('S')) + { + feedmultiply = code_value() ; + feedmultiplychanged=true; + } + } + break; +#ifdef PIDTEMP + case 301: // M301 + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; +// ECHOLN("Kp "<<_FLOAT(Kp,2)); +// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); +// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); + +// temp_iState_min = 0.0; +// if (Ki!=0) { +// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); +// } +// else temp_iState_max = 1.0e10; + break; +#endif //PIDTEMP + case 500: // Store settings in EEPROM + { + StoreSettings(); + } + break; + case 501: // Read settings from EEPROM + { + RetrieveSettings(); + } + break; + case 502: // Revert to default settings + { + RetrieveSettings(true); + } + break; + + } + } + else{ + Serial.println("Unknown command:"); + Serial.println(cmdbuffer[bufindr]); + } + + ClearToSend(); +} + +void FlushSerialRequestResend() +{ + //char cmdbuffer[bufindr][100]="Resend:"; + Serial.flush(); + Serial.print("Resend:"); + Serial.println(gcode_LastN + 1); + ClearToSend(); +} + +void ClearToSend() +{ + previous_millis_cmd = millis(); +#ifdef SDSUPPORT + if(fromsd[bufindr]) + return; +#endif //SDSUPPORT + Serial.println("ok"); +} + +inline void get_coordinates() +{ + for(int i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} + +inline void get_arc_coordinates() +{ + get_coordinates(); + if(code_seen("I")) offset[0] = code_value(); + if(code_seen("J")) offset[1] = code_value(); +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); + for(int i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} + +void prepare_arc_move(char isclockwise) { +#if 0 + if (radius_mode) { + /* + We need to calculate the center of the circle that has the designated radius and passes + through both the current position and the target position. This method calculates the following + set of equations where [x,y] is the vector from current to target position, d == magnitude of + that vector, h == hypotenuse of the triangle formed by the radius of the circle, the distance to + the center of the travel vector. A vector perpendicular to the travel vector [-y,x] is scaled to the + length of h [-y/d*h, x/d*h] and added to the center of the travel vector [x/2,y/2] to form the new point + [i,j] at [x/2-y/d*h, y/2+x/d*h] which will be the center of our arc. + + d^2 == x^2 + y^2 + h^2 == r^2 - (d/2)^2 + i == x/2 - y/d*h + j == y/2 + x/d*h + + O <- [i,j] + - | + r - | + - | + - | h + - | + [0,0] -> C -----------------+--------------- T <- [x,y] + | <------ d/2 ---->| + + C - Current position + T - Target position + O - center of circle that pass through both C and T + d - distance from C to T + r - designated radius + h - distance from center of CT to O + + Expanding the equations: + + d -> sqrt(x^2 + y^2) + h -> sqrt(4 * r^2 - x^2 - y^2)/2 + i -> (x - (y * sqrt(4 * r^2 - x^2 - y^2)) / sqrt(x^2 + y^2)) / 2 + j -> (y + (x * sqrt(4 * r^2 - x^2 - y^2)) / sqrt(x^2 + y^2)) / 2 + + Which can be written: + + i -> (x - (y * sqrt(4 * r^2 - x^2 - y^2))/sqrt(x^2 + y^2))/2 + j -> (y + (x * sqrt(4 * r^2 - x^2 - y^2))/sqrt(x^2 + y^2))/2 + + Which we for size and speed reasons optimize to: + + h_x2_div_d = sqrt(4 * r^2 - x^2 - y^2)/sqrt(x^2 + y^2) + i = (x - (y * h_x2_div_d))/2 + j = (y + (x * h_x2_div_d))/2 + + */ + + // Calculate the change in position along each selected axis + double x = target[gc.plane_axis_0]-gc.position[gc.plane_axis_0]; + double y = target[gc.plane_axis_1]-gc.position[gc.plane_axis_1]; + + clear_vector(offset); + double h_x2_div_d = -sqrt(4 * r*r - x*x - y*y)/hypot(x,y); // == -(h * 2 / d) + // If r is smaller than d, the arc is now traversing the complex plane beyond the reach of any + // real CNC, and thus - for practical reasons - we will terminate promptly: + if(isnan(h_x2_div_d)) { FAIL(STATUS_FLOATING_POINT_ERROR); return(gc.status_code); } + // Invert the sign of h_x2_div_d if the circle is counter clockwise (see sketch below) + if (gc.motion_mode == MOTION_MODE_CCW_ARC) { h_x2_div_d = -h_x2_div_d; } + + /* The counter clockwise circle lies to the left of the target direction. When offset is positive, + the left hand circle will be generated - when it is negative the right hand circle is generated. + + + T <-- Target position + + ^ + Clockwise circles with this center | Clockwise circles with this center will have + will have > 180 deg of angular travel | < 180 deg of angular travel, which is a good thing! + \ | / + center of arc when h_x2_div_d is positive -> x <----- | -----> x <- center of arc when h_x2_div_d is negative + | + | + + C <-- Current position */ + + + // Negative R is g-code-alese for "I want a circle with more than 180 degrees of travel" (go figure!), + // even though it is advised against ever generating such circles in a single line of g-code. By + // inverting the sign of h_x2_div_d the center of the circles is placed on the opposite side of the line of + // travel and thus we get the unadvisably long arcs as prescribed. + if (r < 0) { + h_x2_div_d = -h_x2_div_d; + r = -r; // Finished with r. Set to positive for mc_arc + } + // Complete the operation by calculating the actual center of the arc + offset[gc.plane_axis_0] = 0.5*(x-(y*h_x2_div_d)); + offset[gc.plane_axis_1] = 0.5*(y+(x*h_x2_div_d)); + + } else { // Offset mode specific computations +#endif + float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc + +// } + + // Set clockwise/counter-clockwise sign for mc_arc computations +// uint8_t isclockwise = false; +// if (gc.motion_mode == MOTION_MODE_CW_ARC) { isclockwise = true; } + + // Trace the arc + mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60.0/100.0, r, isclockwise); + +// } + + // As far as the parser is concerned, the position is now == target. In reality the + // motion control system might still be processing the action and the real tool position + // in any intermediate location. + for(int ii=0; ii < NUM_AXIS; ii++) { + current_position[ii] = destination[ii]; + } +} + +#ifdef USE_WATCHDOG + +#include +#include + +volatile uint8_t timeout_seconds=0; + +void(* ctrlaltdelete) (void) = 0; + +ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec + if(timeout_seconds++ >= WATCHDOG_TIMEOUT) + { + kill(); +#ifdef RESET_MANUAL + LCD_MESSAGE("Please Reset!"); + ECHOLN("echo_: Something is wrong, please turn off the printer."); +#else + LCD_MESSAGE("Timeout, resetting!"); +#endif + //disable watchdog, it will survife reboot. + WDTCSR |= (1< -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif + disable_x(); + disable_y(); + disable_z(); + disable_e(); + + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + Serial.println("!! Printer halted. kill() called !!"); + while(1); // Wait for reset +} + +void manage_inactivity(byte debug) { + if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); + if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } + check_axes_activity(); +} -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - */ - -#include "EEPROMwrite.h" -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "streaming.h" -#include "planner.h" -#include "stepper.h" -#include "temperature.h" - -#ifdef SIMPLE_LCD - #include "Simplelcd.h" -#endif - -char version_string[] = "1.0.0 Alpha 1"; - -#ifdef SDSUPPORT -#include "SdFat.h" -#endif //SDSUPPORT - - -// look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html -// http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes - -//Implemented Codes -//------------------- -// G0 -> G1 -// G1 - Coordinated Movement X Y Z E -// G2 - CW ARC -// G3 - CCW ARC -// G4 - Dwell S or P -// G28 - Home all Axis -// G90 - Use Absolute Coordinates -// G91 - Use Relative Coordinates -// G92 - Set current position to cordinates given - -//RepRap M Codes -// M104 - Set extruder target temp -// M105 - Read current temp -// M106 - Fan on -// M107 - Fan off -// M109 - Wait for extruder current temp to reach target temp. -// M114 - Display current position - -//Custom M Codes -// M20 - List SD card -// M21 - Init SD card -// M22 - Release SD card -// M23 - Select SD file (M23 filename.g) -// M24 - Start/resume SD print -// M25 - Pause SD print -// M26 - Set SD position in bytes (M26 S12345) -// M27 - Report SD print status -// M28 - Start SD write (M28 filename.g) -// M29 - Stop SD write -// M42 - Change pin status via gcode -// M80 - Turn on Power Supply -// M81 - Turn off Power Supply -// M82 - Set E codes absolute (default) -// M83 - Set E codes relative while in Absolute Coordinates (G90) mode -// M84 - Disable steppers until next move, -// or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. -// M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) -// M92 - Set axis_steps_per_unit - same syntax as G92 -// M115 - Capabilities string -// M140 - Set bed target temp -// M190 - Wait for bed current temp to reach target temp. -// M200 - Set filament diameter -// M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) -// M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! -// M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec -// M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate -// M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk -// M220 - set speed factor override percentage S:factor in percent -// M301 - Set PID parameters P I and D -// M500 - stores paramters in EEPROM -// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). D -// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. - -//Stepper Movement Variables - -char axis_codes[NUM_AXIS] = { - 'X', 'Y', 'Z', 'E'}; -float destination[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -float current_position[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -bool home_all_axis = true; -float feedrate = 1500.0, next_feedrate, saved_feedrate; -long gcode_N, gcode_LastN; - -float homing_feedrate[] = HOMING_FEEDRATE; -bool axis_relative_modes[] = AXIS_RELATIVE_MODES; - -bool relative_mode = false; //Determines Absolute or Relative Coordinates -bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. - -uint8_t fanpwm=0; - -volatile int feedmultiply=100; //100->1 200->2 -int saved_feedmultiply; -volatile bool feedmultiplychanged=false; -// comm variables -#define MAX_CMD_SIZE 96 -#define BUFSIZE 4 -char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; -bool fromsd[BUFSIZE]; -int bufindr = 0; -int bufindw = 0; -int buflen = 0; -int i = 0; -char serial_char; -int serial_count = 0; -boolean comment_mode = false; -char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc -extern float HeaterPower; - -#include "EEPROM.h" - -const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 - -float tt = 0, bt = 0; -#ifdef WATCHPERIOD -int watch_raw = -1000; -unsigned long watchmillis = 0; -#endif //WATCHPERIOD - -//Inactivity shutdown variables -unsigned long previous_millis_cmd = 0; -unsigned long max_inactive_time = 0; -unsigned long stepper_inactive_time = 0; - -unsigned long starttime=0; -unsigned long stoptime=0; -#ifdef SDSUPPORT -Sd2Card card; -SdVolume volume; -SdFile root; -SdFile file; -uint32_t filesize = 0; -uint32_t sdpos = 0; -bool sdmode = false; -bool sdactive = false; -bool savetosd = false; -int16_t n; -unsigned long autostart_atmillis=0; - -void initsd(){ - sdactive = false; -#if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)){ - //if (!card.init(SPI_HALF_SPEED,SDSS)) - Serial.println("SD init fail"); - } - else if (!volume.init(&card)) - Serial.println("volume.init failed"); - else if (!root.openRoot(&volume)) - Serial.println("openRoot failed"); - else - { - sdactive = true; - Serial.println("SD card ok"); - } -#endif //SDSS -} - -void quickinitsd(){ - sdactive=false; - autostart_atmillis=millis()+5000; -} - -inline void write_command(char *buf){ - char* begin = buf; - char* npos = 0; - 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'; - //Serial.println(begin); - file.write(begin); - if (file.writeError){ - Serial.println("error writing to file"); - } -} -#endif //SDSUPPORT - - -///adds an command to the main command buffer -void enquecommand(const char *cmd) -{ - if(buflen < BUFSIZE) - { - //this is dangerous if a mixing of serial and this happsens - strcpy(&(cmdbuffer[bufindw][0]),cmd); - Serial.print("en:");Serial.println(cmdbuffer[bufindw]); - bufindw= (bufindw + 1)%BUFSIZE; - buflen += 1; - } -} - -void setup() -{ - - Serial.begin(BAUDRATE); - ECHOLN("Marlin "< -1 - SET_OUTPUT(SDPOWER); - WRITE(SDPOWER,HIGH); -#endif //SDPOWER - quickinitsd(); - -#endif //SDSUPPORT - plan_init(); // Initialize planner; - st_init(); // Initialize stepper; - tp_init(); // Initialize temperature loop - //checkautostart(); -} - -#ifdef SDSUPPORT -bool autostart_stilltocheck=true; - - -void checkautostart(bool force) -{ - //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset - if(!force) - { - if(!autostart_stilltocheck) - return; - if(autostart_atmillis 0) - { - for(int i=0;i<(int)strlen((char*)p.name);i++) - p.name[i]=tolower(p.name[i]); - //Serial.print((char*)p.name); - //Serial.print(" "); - //Serial.println(autoname); - if(p.name[9]!='~') //skip safety copies - if(strncmp((char*)p.name,autoname,5)==0) - { - char cmd[30]; - - sprintf(cmd,"M23 %s",autoname); - //sprintf(cmd,"M115"); - //enquecommand("G92 Z0"); - //enquecommand("G1 Z10 F2000"); - //enquecommand("G28 X-105 Y-105"); - enquecommand(cmd); - enquecommand("M24"); - found=true; - - } - } - if(!found) - lastnr=-1; - else - lastnr++; - -} -#else - -inline void checkautostart(bool x) -{ -} -#endif - - -void loop() -{ - if(buflen<3) - get_command(); - checkautostart(false); - if(buflen) - { -#ifdef SDSUPPORT - if(savetosd){ - if(strstr(cmdbuffer[bufindr],"M29") == NULL){ - write_command(cmdbuffer[bufindr]); - Serial.println("ok"); - } - else{ - file.sync(); - file.close(); - savetosd = false; - Serial.println("Done saving file."); - } - } - else{ - process_commands(); - } -#else - process_commands(); -#endif //SDSUPPORT - buflen = (buflen-1); - bufindr = (bufindr + 1)%BUFSIZE; - } - //check heater every n milliseconds - manage_heater(); - manage_inactivity(1); - LCD_STATUS; -} - - -inline void get_command() -{ - while( Serial.available() > 0 && buflen < BUFSIZE) { - serial_char = Serial.read(); - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) - { - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = false; - if(strstr(cmdbuffer[bufindw], "N") != NULL) - { - strchr_pointer = strchr(cmdbuffer[bufindw], 'N'); - gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); - if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { - Serial.print("Serial Error: Line Number is not Last Line Number+1, Last Line:"); - Serial.println(gcode_LastN); - //Serial.println(gcode_N); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - if(strstr(cmdbuffer[bufindw], "*") != NULL) - { - byte checksum = 0; - byte count = 0; - while(cmdbuffer[bufindw][count] != '*') checksum = checksum^cmdbuffer[bufindw][count++]; - strchr_pointer = strchr(cmdbuffer[bufindw], '*'); - - if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { - Serial.print("Error: checksum mismatch, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - //if no errors, continue parsing - } - else - { - Serial.print("Error: No Checksum with line number, Last Line:"); - Serial.println(gcode_LastN); - FlushSerialRequestResend(); - serial_count = 0; - return; - } - - gcode_LastN = gcode_N; - //if no errors, continue parsing - } - else // if we don't receive 'N' but still see '*' - { - if((strstr(cmdbuffer[bufindw], "*") != NULL)) - { - Serial.print("Error: No Line Number with checksum, Last Line:"); - Serial.println(gcode_LastN); - serial_count = 0; - return; - } - } - if((strstr(cmdbuffer[bufindw], "G") != NULL)){ - strchr_pointer = strchr(cmdbuffer[bufindw], 'G'); - switch((int)((strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)))){ - case 0: - case 1: -#ifdef SDSUPPORT - if(savetosd) - break; -#endif //SDSUPPORT - Serial.println("ok"); - break; - default: - break; - } - - } - bufindw = (bufindw + 1)%BUFSIZE; - buflen += 1; - - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#ifdef SDSUPPORT - if(!sdmode || serial_count!=0){ - return; - } - while( filesize > sdpos && buflen < BUFSIZE) { - n = file.read(); - serial_char = (char)n; - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) - { - sdpos = file.curPosition(); - if(sdpos >= filesize){ - sdmode = false; - Serial.println("Done printing file"); - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - checkautostart(true); - } - if(!serial_count) return; //if empty line - cmdbuffer[bufindw][serial_count] = 0; //terminate string - if(!comment_mode){ - fromsd[bufindw] = true; - buflen += 1; - bufindw = (bufindw + 1)%BUFSIZE; - } - comment_mode = false; //for new command - serial_count = 0; //clear buffer - } - else - { - if(serial_char == ';') comment_mode = true; - if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; - } - } -#endif //SDSUPPORT - -} - - -inline float code_value() { - return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); -} -inline long code_value_long() { - return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); -} -inline bool code_seen(char code_string[]) { - return (strstr(cmdbuffer[bufindr], code_string) != NULL); -} //Return True if the string was found - -inline bool code_seen(char code) -{ - strchr_pointer = strchr(cmdbuffer[bufindr], code); - return (strchr_pointer != NULL); //Return True if a character was found -} - -inline void process_commands() -{ - unsigned long codenum; //throw away variable - char *starpos = NULL; - - if(code_seen('G')) - { - switch((int)code_value()) - { - case 0: // G0 -> G1 - case 1: // G1 - get_coordinates(); // For X Y Z E F - prepare_move(); - previous_millis_cmd = millis(); - //ClearToSend(); - return; - //break; - case 4: // G4 dwell - codenum = 0; - if(code_seen('P')) codenum = code_value(); // milliseconds to wait - if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait - codenum += millis(); // keep track of when we started waiting - while(millis() < codenum ){ - manage_heater(); - } - break; - case 28: //G28 Home all Axis one at a time - saved_feedrate = feedrate; - saved_feedmultiply = feedmultiply; - feedmultiply = 100; - - for(int i=0; i < NUM_AXIS; i++) { - destination[i] = current_position[i]; - } - feedrate = 0.0; - - home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - - if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { - if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = -5 * X_HOME_DIR; - prepare_move(); - -// st_synchronize(); - destination[X_AXIS] = 10 * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]/2 ; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = current_position[X_AXIS]; - feedrate = 0.0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { - if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = -5 * Y_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Y_AXIS] = 10 * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = current_position[Y_AXIS]; - feedrate = 0.0; - } - } - - if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { - if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = -2 * Z_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Z_AXIS] = 3 * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = current_position[Z_AXIS]; - feedrate = 0.0; - } - } - feedrate = saved_feedrate; - feedmultiply = saved_feedmultiply; - previous_millis_cmd = millis(); - break; - case 90: // G90 - relative_mode = false; - break; - case 91: // G91 - relative_mode = true; - break; - case 92: // G92 - if(!code_seen(axis_codes[E_AXIS])) - st_synchronize(); - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) current_position[i] = code_value(); - } - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - break; - } - } - - else if(code_seen('M')) - { - - switch( (int)code_value() ) - { -#ifdef SDSUPPORT - - case 20: // M20 - list SD card - Serial.println("Begin file list"); - root.ls(); - Serial.println("End file list"); - break; - case 21: // M21 - init SD card - sdmode = false; - initsd(); - break; - case 22: //M22 - release SD card - sdmode = false; - sdactive = false; - break; - case 23: //M23 - Select file - if(sdactive){ - sdmode = false; - file.close(); - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos!=NULL) - *(starpos-1)='\0'; - if (file.open(&root, strchr_pointer + 4, O_READ)) { - Serial.print("File opened:"); - Serial.print(strchr_pointer + 4); - Serial.print(" Size:"); - Serial.println(file.fileSize()); - sdpos = 0; - filesize = file.fileSize(); - Serial.println("File selected"); - } - else{ - Serial.println("file.open failed"); - } - } - break; - case 24: //M24 - Start SD print - if(sdactive){ - sdmode = true; - starttime=millis(); - } - break; - case 25: //M25 - Pause SD print - if(sdmode){ - sdmode = false; - } - break; - case 26: //M26 - Set SD index - if(sdactive && code_seen('S')){ - sdpos = code_value_long(); - file.seekSet(sdpos); - } - break; - case 27: //M27 - Get SD status - if(sdactive){ - Serial.print("SD printing byte "); - Serial.print(sdpos); - Serial.print("/"); - Serial.println(filesize); - } - else{ - Serial.println("Not SD printing"); - } - break; - case 28: //M28 - Start SD write - if(sdactive){ - char* npos = 0; - file.close(); - sdmode = false; - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos != NULL){ - npos = strchr(cmdbuffer[bufindr], 'N'); - strchr_pointer = strchr(npos,' ') + 1; - *(starpos-1) = '\0'; - } - if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) - { - Serial.print("open failed, File: "); - Serial.print(strchr_pointer + 4); - Serial.print("."); - } - else{ - savetosd = true; - Serial.print("Writing to file: "); - Serial.println(strchr_pointer + 4); - } - } - break; - case 29: //M29 - Stop SD write - //processed in write to file routine above - //savetosd = false; - break; - case 30: - { - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - } - break; -#endif //SDSUPPORT - case 42: //M42 -Change pin status via gcode - if (code_seen('S')) - { - int pin_status = code_value(); - if (code_seen('P') && pin_status >= 0 && pin_status <= 255) - { - int pin_number = code_value(); - for(int i = 0; i < (int)sizeof(sensitive_pins); i++) - { - if (sensitive_pins[i] == pin_number) - { - pin_number = -1; - break; - } - } - - if (pin_number > -1) - { - pinMode(pin_number, OUTPUT); - digitalWrite(pin_number, pin_status); - analogWrite(pin_number, pin_status); - } - } - } - break; - case 104: // M104 - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); -#ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]){ - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; - }else{ - watchmillis = 0; - } - #endif - break; - case 140: // M140 set bed temp - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); - break; - case 105: // M105 - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); - #endif - #if TEMP_1_PIN > -1 - bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); - #endif - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - Serial.print("ok T:"); - Serial.print(tt); -// Serial.print(", raw:"); -// Serial.print(current_raw); - #if TEMP_1_PIN > -1 -#ifdef PIDTEMP - Serial.print(" B:"); - #if TEMP_1_PIN > -1 - Serial.println(bt); - #else - Serial.println(HeaterPower); - #endif -#else - Serial.println(); -#endif - #else - Serial.println(); - #endif - #else - Serial.println("No thermistors - no temp"); - #endif - return; - //break; - case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGE("Heating..."); - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); - #ifdef PIDTEMP - pid_setpoint = code_value(); - #endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND_0]>current_raw[TEMPSENSOR_HOTEND_0]){ - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; - } else { - watchmillis = 0; - } - #endif //WATCHPERIOD - codenum = millis(); - - /* See if we are heating up or cooling down */ - bool target_direction = (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]); // true if heating, false if cooling - - #ifdef TEMP_RESIDENCY_TIME - long residencyStart; - residencyStart = -1; - /* continue to loop until we have reached the target temp - _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0])) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { - #else - while ( target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0]) ) { - #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down - Serial.print("T:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) ); - codenum = millis(); - } - manage_heater(); - LCD_STATUS; - #ifdef TEMP_RESIDENCY_TIME - /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time - or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && current_raw[TEMPSENSOR_HOTEND_0] >= target_raw[TEMPSENSOR_HOTEND_0]) || - (residencyStart == -1 && !target_direction && current_raw[TEMPSENSOR_HOTEND_0] <= target_raw[TEMPSENSOR_HOTEND_0]) || - (residencyStart > -1 && labs(analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) - analog2temp(target_raw[TEMPSENSOR_HOTEND_0])) > TEMP_HYSTERESIS) ) { - residencyStart = millis(); - } - #endif //TEMP_RESIDENCY_TIME - } - LCD_MESSAGE("Marlin ready."); - } - break; - case 190: // M190 - Wait bed for heater to reach target. - #if TEMP_1_PIN > -1 - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); - codenum = millis(); - while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) - { - if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. - { - float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); - Serial.print("T:"); - Serial.println( tt ); - Serial.print("ok T:"); - Serial.print( tt ); - Serial.print(" B:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); - codenum = millis(); - } - manage_heater(); - } - #endif - break; -#if FAN_PIN > -1 - case 106: //M106 Fan On - if (code_seen('S')){ - WRITE(FAN_PIN,HIGH); - fanpwm=constrain(code_value(),0,255); - analogWrite(FAN_PIN, fanpwm); - } - else { - WRITE(FAN_PIN,HIGH); - fanpwm=255; - analogWrite(FAN_PIN, fanpwm); - } - break; - case 107: //M107 Fan Off - WRITE(FAN_PIN,LOW); - analogWrite(FAN_PIN, 0); - break; -#endif -#if (PS_ON_PIN > -1) - case 80: // M80 - ATX Power On - SET_OUTPUT(PS_ON_PIN); //GND - break; - case 81: // M81 - ATX Power Off - SET_INPUT(PS_ON_PIN); //Floating - break; -#endif - case 82: - axis_relative_modes[3] = false; - break; - case 83: - axis_relative_modes[3] = true; - break; - case 18: - case 84: - if(code_seen('S')){ - stepper_inactive_time = code_value() * 1000; - } - else{ - st_synchronize(); - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - break; - case 85: // M85 - code_seen('S'); - max_inactive_time = code_value() * 1000; - break; - case 92: // M92 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); - } - - break; - case 115: // M115 - Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); - break; - case 114: // M114 - Serial.print("X:"); - Serial.print(current_position[X_AXIS]); - Serial.print("Y:"); - Serial.print(current_position[Y_AXIS]); - Serial.print("Z:"); - Serial.print(current_position[Z_AXIS]); - Serial.print("E:"); - Serial.print(current_position[E_AXIS]); - #ifdef DEBUG_STEPS - Serial.print(" Count X:"); - Serial.print(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); - Serial.print("Y:"); - Serial.print(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); - Serial.print("Z:"); - Serial.println(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); - #endif - Serial.println(""); - break; - case 119: // M119 -#if (X_MIN_PIN > -1) - Serial.print("x_min:"); - Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (X_MAX_PIN > -1) - Serial.print("x_max:"); - Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MIN_PIN > -1) - Serial.print("y_min:"); - Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MAX_PIN > -1) - Serial.print("y_max:"); - Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MIN_PIN > -1) - Serial.print("z_min:"); - Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MAX_PIN > -1) - Serial.print("z_max:"); - Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif - Serial.println(""); - break; - //TODO: update for all axis, use for loop - case 201: // M201 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#if 0 // Not used for Sprinter/grbl gen6 - case 202: // M202 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; - } - break; -#endif - case 203: // M203 max feedrate mm/sec - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; - } - break; - case 204: // M204 acclereration S normal moves T filmanent only moves - { - if(code_seen('S')) acceleration = code_value() ; - if(code_seen('T')) retract_acceleration = code_value() ; - } - break; - case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk - { - if(code_seen('S')) minimumfeedrate = code_value()*60 ; - if(code_seen('T')) mintravelfeedrate = code_value()*60 ; - if(code_seen('B')) minsegmenttime = code_value() ; - if(code_seen('X')) max_xy_jerk = code_value()*60 ; - if(code_seen('Z')) max_z_jerk = code_value()*60 ; - } - break; - case 220: // M220 S- set speed factor override percentage - { - if(code_seen('S')) - { - feedmultiply = code_value() ; - feedmultiplychanged=true; - } - } - break; -#ifdef PIDTEMP - case 301: // M301 - if(code_seen('P')) Kp = code_value(); - if(code_seen('I')) Ki = code_value()*PID_dT; - if(code_seen('D')) Kd = code_value()/PID_dT; -// ECHOLN("Kp "<<_FLOAT(Kp,2)); -// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); -// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); - -// temp_iState_min = 0.0; -// if (Ki!=0) { -// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); -// } -// else temp_iState_max = 1.0e10; - break; -#endif //PIDTEMP - case 500: // Store settings in EEPROM - { - StoreSettings(); - } - break; - case 501: // Read settings from EEPROM - { - RetrieveSettings(); - } - break; - case 502: // Revert to default settings - { - RetrieveSettings(true); - } - break; - - } - } - else{ - Serial.println("Unknown command:"); - Serial.println(cmdbuffer[bufindr]); - } - - ClearToSend(); -} - -void FlushSerialRequestResend() -{ - //char cmdbuffer[bufindr][100]="Resend:"; - Serial.flush(); - Serial.print("Resend:"); - Serial.println(gcode_LastN + 1); - ClearToSend(); -} - -void ClearToSend() -{ - previous_millis_cmd = millis(); -#ifdef SDSUPPORT - if(fromsd[bufindr]) - return; -#endif //SDSUPPORT - Serial.println("ok"); -} - -inline void get_coordinates() -{ - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? - } - if(code_seen('F')) { - next_feedrate = code_value(); - if(next_feedrate > 0.0) feedrate = next_feedrate; - } -} - -void prepare_move() -{ - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); - for(int i=0; i < NUM_AXIS; i++) { - current_position[i] = destination[i]; - } -} - - - -#ifdef USE_WATCHDOG - -#include -#include - -volatile uint8_t timeout_seconds=0; - -void(* ctrlaltdelete) (void) = 0; - -ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec - if(timeout_seconds++ >= WATCHDOG_TIMEOUT) - { - kill(); -#ifdef RESET_MANUAL - LCD_MESSAGE("Please Reset!"); - ECHOLN("echo_: Something is wrong, please turn off the printer."); -#else - LCD_MESSAGE("Timeout, resetting!"); -#endif - //disable watchdog, it will survife reboot. - WDTCSR |= (1< -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif - disable_x(); - disable_y(); - disable_z(); - disable_e(); - - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); - Serial.println("!! Printer halted. kill() called!!"); - while(1); // Wait for reset -} - -void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } - check_axes_activity(); -} diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp new file mode 100644 index 000000000..875531fb7 --- /dev/null +++ b/Marlin/motion_control.cpp @@ -0,0 +1,133 @@ +/* + motion_control.c - high level interface for issuing motion commands + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + Copyright (c) 2011 Sungeun K. Jeon + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +//#include "motion_control.h" +#include "Configuration.h" +#include "Marlin.h" +//#include +//#include +//#include +#include "stepper.h" +#include "planner.h" + +// The arc is approximated by generating a huge number of tiny, linear segments. The length of each +// segment is configured in settings.mm_per_arc_segment. +void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8_t axis_1, + uint8_t axis_linear, float feed_rate, float radius, uint8_t isclockwise) +{ +// int acceleration_manager_was_enabled = plan_is_acceleration_manager_enabled(); +// plan_set_acceleration_manager_enabled(false); // disable acceleration management for the duration of the arc + Serial.println("mc_arc"); + float center_axis0 = position[axis_0] + offset[axis_0]; + float center_axis1 = position[axis_1] + offset[axis_1]; + float linear_travel = target[axis_linear] - position[axis_linear]; + float r_axis0 = -offset[axis_0]; // Radius vector from center to current location + float r_axis1 = -offset[axis_1]; + float rt_axis0 = target[axis_0] - center_axis0; + float rt_axis1 = target[axis_1] - center_axis1; + + // CCW angle between position and target from circle center. Only one atan2() trig computation required. + float angular_travel = atan2(r_axis0*rt_axis1-r_axis1*rt_axis0, r_axis0*rt_axis0+r_axis1*rt_axis1); + if (angular_travel < 0) { angular_travel += 2*M_PI; } + if (isclockwise) { angular_travel -= 2*M_PI; } + + float millimeters_of_travel = hypot(angular_travel*radius, fabs(linear_travel)); + if (millimeters_of_travel == 0.0) { return; } + uint16_t segments = floor(millimeters_of_travel/MM_PER_ARC_SEGMENT); +/* + // Multiply inverse feed_rate to compensate for the fact that this movement is approximated + // by a number of discrete segments. The inverse feed_rate should be correct for the sum of + // all segments. + if (invert_feed_rate) { feed_rate *= segments; } +*/ + float theta_per_segment = angular_travel/segments; + float linear_per_segment = linear_travel/segments; + + /* Vector rotation by transformation matrix: r is the original vector, r_T is the rotated vector, + and phi is the angle of rotation. Based on the solution approach by Jens Geisler. + r_T = [cos(phi) -sin(phi); + sin(phi) cos(phi] * r ; + + For arc generation, the center of the circle is the axis of rotation and the radius vector is + defined from the circle center to the initial position. Each line segment is formed by successive + vector rotations. This requires only two cos() and sin() computations to form the rotation + matrix for the duration of the entire arc. Error may accumulate from numerical round-off, since + all double numbers are single precision on the Arduino. (True double precision will not have + round off issues for CNC applications.) Single precision error can accumulate to be greater than + tool precision in some cases. Therefore, arc path correction is implemented. + + Small angle approximation may be used to reduce computation overhead further. This approximation + holds for everything, but very small circles and large mm_per_arc_segment values. In other words, + theta_per_segment would need to be greater than 0.1 rad and N_ARC_CORRECTION would need to be large + to cause an appreciable drift error. N_ARC_CORRECTION~=25 is more than small enough to correct for + numerical drift error. N_ARC_CORRECTION may be on the order a hundred(s) before error becomes an + issue for CNC machines with the single precision Arduino calculations. + + This approximation also allows mc_arc to immediately insert a line segment into the planner + without the initial overhead of computing cos() or sin(). By the time the arc needs to be applied + a correction, the planner should have caught up to the lag caused by the initial mc_arc overhead. + This is important when there are successive arc motions. + */ + // Vector rotation matrix values + float cos_T = 1-0.5*theta_per_segment*theta_per_segment; // Small angle approximation + float sin_T = theta_per_segment; + + float arc_target[3]; + float sin_Ti; + float cos_Ti; + float r_axisi; + uint16_t i; + int8_t count = 0; + + // Initialize the linear axis + arc_target[axis_linear] = position[axis_linear]; + + for (i = 1; i. +*/ + +#ifndef motion_control_h +#define motion_control_h + +// Execute an arc in offset mode format. position == current xyz, target == target xyz, +// offset == offset from current xyz, axis_XXX defines circle plane in tool space, axis_linear is +// the direction of helical travel, radius == circle radius, isclockwise boolean. Used +// for vector transformation direction. +void mc_arc(float *position, float *target, float *offset, unsigned char axis_0, unsigned char axis_1, + unsigned char axis_linear, float feed_rate, float radius, unsigned char isclockwise); + +#endif From 2afb7bd4cfa130d57dcbca657fa9a81eecbc7a15 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 14:03:41 +0100 Subject: [PATCH 024/430] refactured temperature.cpp so that there are now abstract functions to access temperatures. --- Marlin/Configuration.h | 3 +- Marlin/Marlin.pde | 106 ++++++++++------------------- Marlin/temperature.cpp | 57 +++++++++++----- Marlin/temperature.h | 100 ++++++++++++++++++++++----- Marlin/ultralcd.pde | 150 +++++++++++++++++++++-------------------- 5 files changed, 237 insertions(+), 179 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 65c4f32a3..8ad0e2282 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -157,6 +157,7 @@ const int dropsegments=5; //everything with this number of steps will be ignore //// Experimental watchdog and minimal temp // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 +/// CURRENTLY NOT IMPLEMENTED AND UNUSEABLE //#define WATCHPERIOD 5000 //5 seconds // Actual temperature must be close to target for this long before M109 returns success @@ -245,4 +246,4 @@ const int dropsegments=5; //everything with this number of steps will be ignore #endif -#endif +#endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 92907a2d2..698b13780 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -150,10 +150,7 @@ extern float HeaterPower; const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 float tt = 0, bt = 0; -#ifdef WATCHPERIOD -int watch_raw = -1000; -unsigned long watchmillis = 0; -#endif //WATCHPERIOD + //Inactivity shutdown variables unsigned long previous_millis_cmd = 0; @@ -817,28 +814,18 @@ inline void process_commands() } break; case 104: // M104 - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); -#ifdef PIDTEMP - pid_setpoint = code_value(); -#endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]){ - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; - }else{ - watchmillis = 0; - } - #endif + if (code_seen('S')) setTargetHotend0(code_value()); + setWatch(); break; case 140: // M140 set bed temp - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analogBed(code_value()); + if (code_seen('S')) setTargetBed(code_value()); break; case 105: // M105 #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + tt = degHotend0(); #endif #if TEMP_1_PIN > -1 - bt = analog2tempBed(current_raw[TEMPSENSOR_BED]); + bt = degBed(); #endif #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) Serial.print("ok T:"); @@ -866,36 +853,27 @@ inline void process_commands() //break; case 109: {// M109 - Wait for extruder heater to reach target. LCD_MESSAGE("Heating..."); - if (code_seen('S')) target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(code_value()); - #ifdef PIDTEMP - pid_setpoint = code_value(); - #endif //PIDTEM - #ifdef WATCHPERIOD - if(target_raw[TEMPSENSOR_HOTEND_0]>current_raw[TEMPSENSOR_HOTEND_0]){ - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; - } else { - watchmillis = 0; - } - #endif //WATCHPERIOD + if (code_seen('S')) setTargetHotend0(code_value()); + + setWatch(); codenum = millis(); /* See if we are heating up or cooling down */ - bool target_direction = (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]); // true if heating, false if cooling + bool target_direction = isHeatingHotend0(); // true if heating, false if cooling #ifdef TEMP_RESIDENCY_TIME long residencyStart; residencyStart = -1; /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0])) || + while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) || (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else - while ( target_direction ? (current_raw[TEMPSENSOR_HOTEND_0] < target_raw[TEMPSENSOR_HOTEND_0]) : (current_raw[TEMPSENSOR_HOTEND_0] > target_raw[TEMPSENSOR_HOTEND_0]) ) { + while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) ) { #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down Serial.print("T:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) ); + Serial.println( degHotend0() ); codenum = millis(); } manage_heater(); @@ -903,9 +881,9 @@ inline void process_commands() #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && current_raw[TEMPSENSOR_HOTEND_0] >= target_raw[TEMPSENSOR_HOTEND_0]) || - (residencyStart == -1 && !target_direction && current_raw[TEMPSENSOR_HOTEND_0] <= target_raw[TEMPSENSOR_HOTEND_0]) || - (residencyStart > -1 && labs(analog2temp(current_raw[TEMPSENSOR_HOTEND_0]) - analog2temp(target_raw[TEMPSENSOR_HOTEND_0])) > TEMP_HYSTERESIS) ) { + if ((residencyStart == -1 && target_direction && !isHeatingHotend0()) || + (residencyStart == -1 && !target_direction && !isCoolingHotend0()) || + (residencyStart > -1 && labs(degHotend0() - degTargetHotend0()) > TEMP_HYSTERESIS) ) { residencyStart = millis(); } #endif //TEMP_RESIDENCY_TIME @@ -915,23 +893,23 @@ inline void process_commands() break; case 190: // M190 - Wait bed for heater to reach target. #if TEMP_1_PIN > -1 - if (code_seen('S')) target_raw[TEMPSENSOR_BED] = temp2analog(code_value()); - codenum = millis(); - while(current_raw[TEMPSENSOR_BED] < target_raw[TEMPSENSOR_BED]) - { - if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + if (code_seen('S')) setTargetBed(code_value()); + codenum = millis(); + while(isHeatingBed()) { - float tt=analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); - Serial.print("T:"); - Serial.println( tt ); - Serial.print("ok T:"); - Serial.print( tt ); - Serial.print(" B:"); - Serial.println( analog2temp(current_raw[TEMPSENSOR_BED]) ); - codenum = millis(); - } + if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + float tt=degHotend0(); + Serial.print("T:"); + Serial.println( tt ); + Serial.print("ok T:"); + Serial.print( tt ); + Serial.print(" B:"); + Serial.println( degBed() ); + codenum = millis(); + } manage_heater(); - } + } #endif break; #if FAN_PIN > -1 @@ -1331,24 +1309,8 @@ void wd_reset() { inline void kill() { - #if TEMP_0_PIN > -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif + disable_heater(); + disable_x(); disable_y(); disable_z(); @@ -1369,4 +1331,4 @@ void manage_inactivity(byte debug) { } check_axes_activity(); } - + diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index b55573d93..0c5a2e4ce 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -37,28 +37,27 @@ #include "streaming.h" #include "temperature.h" -int target_bed_raw = 0; -int current_bed_raw = 0; int target_raw[3] = {0, 0, 0}; int current_raw[3] = {0, 0, 0}; -unsigned char temp_meas_ready = false; + +bool temp_meas_ready = false; unsigned long previous_millis_heater, previous_millis_bed_heater; #ifdef PIDTEMP - double temp_iState = 0; - double temp_dState = 0; - double pTerm; - double iTerm; - double dTerm; + float temp_iState = 0; + float temp_dState = 0; + float pTerm; + float iTerm; + float dTerm; //int output; - double pid_error; - double temp_iState_min; - double temp_iState_max; - double pid_setpoint = 0.0; - double pid_input; - double pid_output; + float pid_error; + float temp_iState_min; + float temp_iState_max; + float pid_setpoint = 0.0; + float pid_input; + float pid_output; bool pid_reset; float HeaterPower; @@ -67,6 +66,11 @@ unsigned long previous_millis_heater, previous_millis_bed_heater; float Kd=DEFAULT_Kd; float Kc=DEFAULT_Kc; #endif //PIDTEMP + +#ifdef WATCHPERIOD + int watch_raw[3] = {-1000,-1000,-1000}; + unsigned long watchmillis = 0; +#endif //WATCHPERIOD #ifdef HEATER_0_MINTEMP int minttemp_0 = temp2analog(HEATER_0_MINTEMP); @@ -91,9 +95,9 @@ int bed_maxttemp = temp2analog(BED_MAXTEMP); void manage_heater() { -#ifdef USE_WATCHDOG - wd_reset(); -#endif + #ifdef USE_WATCHDOG + wd_reset(); + #endif float pid_input; float pid_output; @@ -330,6 +334,22 @@ void tp_init() +void setWatch() +{ +#ifdef WATCHPERIOD + if(isHeatingHotend0()) + { + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + } + else + { + watchmillis = 0; + } +#endif +} + + // Timer 0 is shared with millies ISR(TIMER0_COMPB_vect) { @@ -500,4 +520,5 @@ ISR(TIMER0_COMPB_vect) #endif #endif } -} +} + diff --git a/Marlin/temperature.h b/Marlin/temperature.h index a36f99781..fcc8edb9e 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -22,18 +22,97 @@ #define temperature_h #include "Marlin.h" +#include "fastio.h" #ifdef PID_ADD_EXTRUSION_RATE #include "stepper.h" #endif -void tp_init(); -void manage_heater(); -//int temp2analogu(int celsius, const short table[][2], int numtemps); -//float analog2tempu(int raw, const short table[][2], int numtemps); + +void tp_init(); //initialise the heating +void manage_heater(); //it is critical that this is called periodically. + +enum TempSensor {TEMPSENSOR_HOTEND_0=0,TEMPSENSOR_BED=1, TEMPSENSOR_HOTEND_1=2}; + +//low leven conversion routines +// do not use this routines and variables outsie of temperature.cpp int temp2analog(int celsius); int temp2analogBed(int celsius); float analog2temp(int raw); float analog2tempBed(int raw); +extern int target_raw[3]; +extern int current_raw[3]; +extern float Kp,Ki,Kd,Kc; +#ifdef PIDTEMP + float pid_setpoint = 0.0; +#endif +#ifdef WATCHPERIOD + extern int watch_raw[3] ; + extern unsigned long watchmillis; +#endif + + +//high level conversion routines, for use outside of temperature.cpp +//inline so that there is no performance decrease. +//deg=degreeCelsius + +inline float degHotend0(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]);}; +inline float degHotend1(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]);}; +inline float degBed() { return analog2tempBed(current_raw[TEMPSENSOR_BED]);}; + +inline float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]);}; +inline float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; +inline float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSOR_BED]);}; + +inline void setTargetHotend0(float celsius) +{ + target_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius); + #ifdef PIDTEMP + pid_setpoint = celsius; + #endif //PIDTEMP +}; +inline void setTargetHotend1(float celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; +inline void setTargetBed(float celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; + +inline bool isHeatingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; +inline bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; +inline bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; + +inline bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; +inline bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; +inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; + +inline void disable_heater() +{ + #if TEMP_0_PIN > -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif +} +void setWatch() { + if(isHeatingHotend0()) + { + watchmillis = max(1,millis()); + watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + } + else + { + watchmillis = 0; + } +} #ifdef HEATER_0_USES_THERMISTOR #define HEATERSOURCE 1 #endif @@ -41,18 +120,9 @@ float analog2tempBed(int raw); #define BEDSOURCE 1 #endif -//#define temp2analogh( c ) temp2analogu((c),temptable,NUMTEMPS) -//#define analog2temp( c ) analog2tempu((c),temptable,NUMTEMPS -extern float Kp; -extern float Ki; -extern float Kd; -extern float Kc; -enum {TEMPSENSOR_HOTEND_0=0,TEMPSENSOR_BED=1, TEMPSENSOR_HOTEND_1=2}; -extern int target_raw[3]; -extern int current_raw[3]; -extern double pid_setpoint; -#endif +#endif + diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 7eefec668..444020c22 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -12,7 +12,7 @@ LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PIN unsigned long previous_millis_lcd=0; - +inline int intround(const float &x){return int(0.5+x);} volatile char buttons=0; //the last checked buttons in a bit array. int encoderpos=0; @@ -29,13 +29,10 @@ void lcd_status(const char* message) strncpy(messagetext,message,LCD_WIDTH); } -void clear() +inline void clear() { - //lcd.setCursor(0,0); + lcd.clear(); - //delay(1); - // lcd.begin(LCD_WIDTH,LCD_HEIGHT); - //lcd_init(); } long previous_millis_buttons=0; @@ -78,47 +75,48 @@ void lcd_init() void beep() { //return; -#ifdef ULTIPANEL - pinMode(BEEPER,OUTPUT); - for(int i=0;i<20;i++){ - WRITE(BEEPER,HIGH); - delay(5); - WRITE(BEEPER,LOW); - delay(5); - } -#endif + #ifdef ULTIPANEL + pinMode(BEEPER,OUTPUT); + for(int i=0;i<20;i++){ + WRITE(BEEPER,HIGH); + delay(5); + WRITE(BEEPER,LOW); + delay(5); + } + #endif } void beepshort() { //return; -#ifdef ULTIPANEL - pinMode(BEEPER,OUTPUT); - for(int i=0;i<10;i++){ - WRITE(BEEPER,HIGH); - delay(3); - WRITE(BEEPER,LOW); - delay(3); - } -#endif + #ifdef ULTIPANEL + pinMode(BEEPER,OUTPUT); + for(int i=0;i<10;i++){ + WRITE(BEEPER,HIGH); + delay(3); + WRITE(BEEPER,LOW); + delay(3); + } + #endif } + void lcd_status() { -#ifdef ULTIPANEL - static uint8_t oldbuttons=0; - static long previous_millis_buttons=0; - static long previous_lcdinit=0; -// buttons_check(); // Done in temperature interrupt - //previous_millis_buttons=millis(); + #ifdef ULTIPANEL + static uint8_t oldbuttons=0; + static long previous_millis_buttons=0; + static long previous_lcdinit=0; + // buttons_check(); // Done in temperature interrupt + //previous_millis_buttons=millis(); + + if((buttons==oldbuttons) && ((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) + return; + oldbuttons=buttons; + #else - if((buttons==oldbuttons) && ((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) - return; - oldbuttons=buttons; -#else - - if(((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) - return; -#endif + if(((millis() - previous_millis_lcd) < LCD_UPDATE_INTERVAL) ) + return; + #endif previous_millis_lcd=millis(); menu.update(); @@ -161,8 +159,7 @@ void buttons_check() if((blocking3)||force_lcd_update) + int tHotEnd0=intround(degHotend0()); + if((abs(tHotEnd0-olddegHotEnd0)>1)||force_lcd_update) //>1 because otherwise the lcd is refreshed to often. { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND_0]))); - oldcurrentraw=current_raw[TEMPSENSOR_HOTEND_0]; + lcd.print(ftostr3(tHotEnd0)); + olddegHotEnd0=tHotEnd0; } - if((target_raw[TEMPSENSOR_HOTEND_0]!=oldtargetraw)||force_lcd_update) + int ttHotEnd0=intround(degTargetHotend0()); + if((ttHotEnd0!=oldtargetHotEnd0)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND_0]))); - oldtargetraw=target_raw[TEMPSENSOR_HOTEND_0]; + lcd.print(ftostr3(ttHotEnd0)); + oldtargetHotEnd0=ttHotEnd0; } #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - static int oldcurrentbedraw=-1; - static int oldtargetbedraw=-1; - if((current_bed_raw!=oldcurrentbedraw)||force_lcd_update) + static int oldtBed=-1; + static int oldtargetBed=-1; + int tBed=intround(degBed()); + if((tBed!=oldtBed)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_bed_raw))); - oldcurrentraw=current_raw[TEMPSENSOR_BED]; + lcd.print(ftostr3(tBed)); + olddegHotEnd0=tBed; } - if((target_bed_raw!=oldtargebedtraw)||force_lcd_update) + int targetBed=intround(degTargetBed()); + if((targetBed!=oldtargetBed)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_bed_raw))); - oldtargetraw=target_bed_raw; + lcd.print(ftostr3(targetBed)); + oldtargetBed=targetBed; } #endif //starttime=2; @@ -327,8 +327,8 @@ void MainMenu::showStatus() messagetext[0]='\0'; } #else //smaller LCDS---------------------------------- - static int oldcurrentraw=-1; - static int oldtargetraw=-1; + static int olddegHotEnd0=-1; + static int oldtargetHotEnd0=-1; if(force_lcd_update) //initial display of content { encoderpos=feedmultiply; @@ -338,18 +338,21 @@ void MainMenu::showStatus() #endif } + int tHotEnd0=intround(degHotend0()); + int ttHotEnd0=intround(degTargetHotend0()); - if((abs(current_raw[TEMPSENSOR_HOTEND]-oldcurrentraw)>3)||force_lcd_update) + + if((abs(tHotEnd0-olddegHotEnd0)>1)||force_lcd_update) { lcd.setCursor(1,0); - lcd.print(ftostr3(analog2temp(current_raw[TEMPSENSOR_HOTEND]))); - oldcurrentraw=current_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(tHotEnd0)); + olddegHotEnd0=tHotEnd0; } - if((target_raw[TEMPSENSOR_HOTEND]!=oldtargetraw)||force_lcd_update) + if((ttHotEnd0!=oldtargetHotEnd0)||force_lcd_update) { lcd.setCursor(5,0); - lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND]))); - oldtargetraw=target_raw[TEMPSENSOR_HOTEND]; + lcd.print(ftostr3(ttHotEnd0)); + oldtargetHotEnd0=ttHotEnd0; } if(messagetext[0]!='\0') @@ -426,7 +429,7 @@ void MainMenu::showPrepare() if((activeline==line) && CLICKED) { BLOCK - target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(170); + setTargetHotend0(170); beepshort(); } }break; @@ -531,7 +534,7 @@ void MainMenu::showControl() if(force_lcd_update) { lcd.setCursor(0,line);lcd.print(" \002Nozzle:"); - lcd.setCursor(13,line);lcd.print(ftostr3(analog2temp(target_raw[TEMPSENSOR_HOTEND_0]))); + lcd.setCursor(13,line);lcd.print(ftostr3(intround(degHotend0()))); } if((activeline==line) ) @@ -541,11 +544,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)analog2temp(target_raw[TEMPSENSOR_HOTEND_0]); + encoderpos=intround(degHotend0()); } else { - target_raw[TEMPSENSOR_HOTEND_0] = temp2analog(encoderpos); + setTargetHotend0(encoderpos); encoderpos=activeline*lcdslow; beepshort(); } @@ -1590,4 +1593,5 @@ char *fillto(int8_t n,char *c) #else inline void lcd_status() {}; #endif - + + From e8092898b1c4db328a2f5d247fe06603f586f924 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 14:22:15 +0100 Subject: [PATCH 025/430] watchdog into dedicated file --- Marlin/Marlin.h | 16 +++++++++++++- Marlin/Marlin.pde | 54 ----------------------------------------------- watchdog.cpp | 48 +++++++++++++++++++++++++++++++++++++++++ watchdog.h | 10 +++++++++ 4 files changed, 73 insertions(+), 55 deletions(-) create mode 100644 watchdog.cpp create mode 100644 watchdog.h diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 15e6570c9..07dd0d8bf 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -78,5 +78,19 @@ void enquecommand(const char *cmd); extern float homing_feedrate[]; extern bool axis_relative_modes[]; -void wd_reset() ; + +inline void kill() +{ + disable_heater(); + + disable_x(); + disable_y(); + disable_z(); + disable_e(); + + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + Serial.println("!! Printer halted. kill() called !!"); + while(1); // Wait for reset +} + #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 698b13780..6a6fb80f4 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1263,63 +1263,9 @@ void prepare_arc_move(char isclockwise) { } } -#ifdef USE_WATCHDOG - -#include -#include - -volatile uint8_t timeout_seconds=0; - -void(* ctrlaltdelete) (void) = 0; - -ISR(WDT_vect) { //Watchdog timer interrupt, called if main program blocks >1sec - if(timeout_seconds++ >= WATCHDOG_TIMEOUT) - { - kill(); -#ifdef RESET_MANUAL - LCD_MESSAGE("Please Reset!"); - ECHOLN("echo_: Something is wrong, please turn off the printer."); -#else - LCD_MESSAGE("Timeout, resetting!"); -#endif - //disable watchdog, it will survife reboot. - WDTCSR |= (1< -1) pinMode(PS_ON_PIN,INPUT); - Serial.println("!! Printer halted. kill() called !!"); - while(1); // Wait for reset -} void manage_inactivity(byte debug) { if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); diff --git a/watchdog.cpp b/watchdog.cpp new file mode 100644 index 000000000..0adf9cc7d --- /dev/null +++ b/watchdog.cpp @@ -0,0 +1,48 @@ +#ifdef USE_WATCHDOG + +#include +#include + +volatile uint8_t timeout_seconds=0; + +void(* ctrlaltdelete) (void) = 0; //does not work on my atmega2560 + +//Watchdog timer interrupt, called if main program blocks >1sec +ISR(WDT_vect) +{ + if(timeout_seconds++ >= WATCHDOG_TIMEOUT) + { + + #ifdef RESET_MANUAL + LCD_MESSAGE("Please Reset!"); + ECHOLN("echo_: Something is wrong, please turn off the printer."); + #else + LCD_MESSAGE("Timeout, resetting!"); + #endif + //disable watchdog, it will survife reboot. + WDTCSR |= (1< Date: Sun, 6 Nov 2011 14:58:12 +0100 Subject: [PATCH 026/430] wrong file location --- Marlin/watchdog.cpp | 48 +++++++++++++++++++++++++++++++++++++++++++++ Marlin/watchdog.h | 10 ++++++++++ 2 files changed, 58 insertions(+) create mode 100644 Marlin/watchdog.cpp create mode 100644 Marlin/watchdog.h diff --git a/Marlin/watchdog.cpp b/Marlin/watchdog.cpp new file mode 100644 index 000000000..0adf9cc7d --- /dev/null +++ b/Marlin/watchdog.cpp @@ -0,0 +1,48 @@ +#ifdef USE_WATCHDOG + +#include +#include + +volatile uint8_t timeout_seconds=0; + +void(* ctrlaltdelete) (void) = 0; //does not work on my atmega2560 + +//Watchdog timer interrupt, called if main program blocks >1sec +ISR(WDT_vect) +{ + if(timeout_seconds++ >= WATCHDOG_TIMEOUT) + { + + #ifdef RESET_MANUAL + LCD_MESSAGE("Please Reset!"); + ECHOLN("echo_: Something is wrong, please turn off the printer."); + #else + LCD_MESSAGE("Timeout, resetting!"); + #endif + //disable watchdog, it will survife reboot. + WDTCSR |= (1< Date: Sun, 6 Nov 2011 15:10:29 +0100 Subject: [PATCH 027/430] correcting commit errors. --- Marlin/Marlin.h | 14 +------- Marlin/Marlin.pde | 15 +++++++++ Marlin/temperature.cpp | 23 +++++++++++++ Marlin/temperature.h | 37 +++------------------ Marlin/watchdog.h | 5 ++- Marlin/{watchdog.cpp => watchdog.pde} | 2 +- watchdog.cpp | 48 --------------------------- watchdog.h | 10 ------ 8 files changed, 48 insertions(+), 106 deletions(-) rename Marlin/{watchdog.cpp => watchdog.pde} (98%) delete mode 100644 watchdog.cpp delete mode 100644 watchdog.h diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 07dd0d8bf..e56b67128 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -79,18 +79,6 @@ extern float homing_feedrate[]; extern bool axis_relative_modes[]; -inline void kill() -{ - disable_heater(); - - disable_x(); - disable_y(); - disable_z(); - disable_e(); - - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); - Serial.println("!! Printer halted. kill() called !!"); - while(1); // Wait for reset -} +void kill(); #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 6a6fb80f4..1c79af6ca 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1278,3 +1278,18 @@ void manage_inactivity(byte debug) { check_axes_activity(); } +void kill() +{ + disable_heater(); + + disable_x(); + disable_y(); + disable_z(); + disable_e(); + + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + Serial.println("!! Printer halted. kill() called !!"); + while(1); // Wait for reset +} + + diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 0c5a2e4ce..14530ca3f 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -36,6 +36,7 @@ #include "ultralcd.h" #include "streaming.h" #include "temperature.h" +#include "watchdog.h" int target_raw[3] = {0, 0, 0}; @@ -350,6 +351,28 @@ void setWatch() } +void disable_heater() +{ + #if TEMP_0_PIN > -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif +} + // Timer 0 is shared with millies ISR(TIMER0_COMPB_vect) { diff --git a/Marlin/temperature.h b/Marlin/temperature.h index fcc8edb9e..44d54db14 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -42,7 +42,7 @@ extern int target_raw[3]; extern int current_raw[3]; extern float Kp,Ki,Kd,Kc; #ifdef PIDTEMP - float pid_setpoint = 0.0; + extern float pid_setpoint ; #endif #ifdef WATCHPERIOD extern int watch_raw[3] ; @@ -81,38 +81,9 @@ inline bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current inline bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; -inline void disable_heater() -{ - #if TEMP_0_PIN > -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif -} -void setWatch() { - if(isHeatingHotend0()) - { - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; - } - else - { - watchmillis = 0; - } -} +void disable_heater(); +void setWatch(); + #ifdef HEATER_0_USES_THERMISTOR #define HEATERSOURCE 1 #endif diff --git a/Marlin/watchdog.h b/Marlin/watchdog.h index 2577bc138..7dd31f9f7 100644 --- a/Marlin/watchdog.h +++ b/Marlin/watchdog.h @@ -1,10 +1,13 @@ #ifndef __WATCHDOGH #define __WATCHDOGH -#ifdef +#include "Configuration.h" +//#ifdef USE_WATCHDOG + /// intialise watch dog with a 1 sec interrupt time void wd_init(); /// pad the dog/reset watchdog. MUST be called at least every second after the first wd_init or avr will go into emergency procedures.. void wd_reset(); +//#endif #endif diff --git a/Marlin/watchdog.cpp b/Marlin/watchdog.pde similarity index 98% rename from Marlin/watchdog.cpp rename to Marlin/watchdog.pde index 0adf9cc7d..4c677e79e 100644 --- a/Marlin/watchdog.cpp +++ b/Marlin/watchdog.pde @@ -1,5 +1,5 @@ #ifdef USE_WATCHDOG - +#include "watchdog.h" #include #include diff --git a/watchdog.cpp b/watchdog.cpp deleted file mode 100644 index 0adf9cc7d..000000000 --- a/watchdog.cpp +++ /dev/null @@ -1,48 +0,0 @@ -#ifdef USE_WATCHDOG - -#include -#include - -volatile uint8_t timeout_seconds=0; - -void(* ctrlaltdelete) (void) = 0; //does not work on my atmega2560 - -//Watchdog timer interrupt, called if main program blocks >1sec -ISR(WDT_vect) -{ - if(timeout_seconds++ >= WATCHDOG_TIMEOUT) - { - - #ifdef RESET_MANUAL - LCD_MESSAGE("Please Reset!"); - ECHOLN("echo_: Something is wrong, please turn off the printer."); - #else - LCD_MESSAGE("Timeout, resetting!"); - #endif - //disable watchdog, it will survife reboot. - WDTCSR |= (1< Date: Sun, 6 Nov 2011 17:33:09 +0100 Subject: [PATCH 028/430] overworked the serial responses. Quite difficult, since many texts are Pronterface protocol. --- Marlin/EEPROMwrite.h | 32 ++++++------- Marlin/Makefile | 1 + Marlin/Marlin.h | 10 ++-- Marlin/Marlin.pde | 97 +++++++++++++++++++++------------------ Marlin/motion_control.cpp | 2 +- Marlin/stepper.cpp | 2 +- Marlin/temperature.cpp | 27 ++++------- Marlin/ultralcd.pde | 4 +- Marlin/watchdog.pde | 2 +- 9 files changed, 90 insertions(+), 87 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index ea843344f..dba2d443e 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -59,7 +59,7 @@ void StoreSettings() { char ver2[4]=EEPROM_VERSION; i=EEPROM_OFFSET; EEPROM_writeAnything(i,ver2); // validate data - ECHOLN("Settings Stored"); + SERIAL_ECHOLN("Settings Stored"); } @@ -68,7 +68,7 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will char stored_ver[4]; char ver[4]=EEPROM_VERSION; EEPROM_readAnything(i,stored_ver); //read stored version -// ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); +// SERIAL_ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); if ((!def)&&(strncmp(ver,stored_ver,3)==0)) { // version number match EEPROM_readAnything(i,axis_steps_per_unit); EEPROM_readAnything(i,max_feedrate); @@ -87,7 +87,7 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will EEPROM_readAnything(i,Ki); EEPROM_readAnything(i,Kd); - ECHOLN("Stored settings retreived:"); + SERIAL_ECHOLN("Stored settings retreived:"); } else { float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; @@ -105,21 +105,21 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; max_xy_jerk=DEFAULT_XYJERK; max_z_jerk=DEFAULT_ZJERK; - ECHOLN("Using Default settings:"); + SERIAL_ECHOLN("Using Default settings:"); } - ECHOLN("Steps per unit:"); - ECHOLN(" M92 X" <<_FLOAT(axis_steps_per_unit[0],3) << " Y" << _FLOAT(axis_steps_per_unit[1],3) << " Z" << _FLOAT(axis_steps_per_unit[2],3) << " E" << _FLOAT(axis_steps_per_unit[3],3)); - ECHOLN("Maximum feedrates (mm/s):"); - ECHOLN(" M203 X" <<_FLOAT(max_feedrate[0]/60,2)<<" Y" << _FLOAT(max_feedrate[1]/60,2) << " Z" << _FLOAT(max_feedrate[2]/60,2) << " E" << _FLOAT(max_feedrate[3]/60,2)); - ECHOLN("Maximum Acceleration (mm/s2):"); - ECHOLN(" M201 X" <<_FLOAT(max_acceleration_units_per_sq_second[0],0) << " Y" << _FLOAT(max_acceleration_units_per_sq_second[1],0) << " Z" << _FLOAT(max_acceleration_units_per_sq_second[2],0) << " E" << _FLOAT(max_acceleration_units_per_sq_second[3],0)); - ECHOLN("Acceleration: S=acceleration, T=retract acceleration"); - ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); - ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); - ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); + SERIAL_ECHOLN("Steps per unit:"); + SERIAL_ECHOLN(" M92 X" <<_FLOAT(axis_steps_per_unit[0],3) << " Y" << _FLOAT(axis_steps_per_unit[1],3) << " Z" << _FLOAT(axis_steps_per_unit[2],3) << " E" << _FLOAT(axis_steps_per_unit[3],3)); + SERIAL_ECHOLN("Maximum feedrates (mm/s):"); + SERIAL_ECHOLN(" M203 X" <<_FLOAT(max_feedrate[0]/60,2)<<" Y" << _FLOAT(max_feedrate[1]/60,2) << " Z" << _FLOAT(max_feedrate[2]/60,2) << " E" << _FLOAT(max_feedrate[3]/60,2)); + SERIAL_ECHOLN("Maximum Acceleration (mm/s2):"); + SERIAL_ECHOLN(" M201 X" <<_FLOAT(max_acceleration_units_per_sq_second[0],0) << " Y" << _FLOAT(max_acceleration_units_per_sq_second[1],0) << " Z" << _FLOAT(max_acceleration_units_per_sq_second[2],0) << " E" << _FLOAT(max_acceleration_units_per_sq_second[3],0)); + SERIAL_ECHOLN("Acceleration: S=acceleration, T=retract acceleration"); + SERIAL_ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); + SERIAL_ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); + SERIAL_ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); #ifdef PIDTEMP - ECHOLN("PID settings:"); - ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); + SERIAL_ECHOLN("PID settings:"); + SERIAL_ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); #endif } diff --git a/Marlin/Makefile b/Marlin/Makefile index f456e3cbd..0504319f7 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -14,6 +14,7 @@ UPLOAD_SPEED = 115200 UPLOAD_PROTOCOL = stk500v2 BUILD_MCU = atmega2560 BUILD_F_CPU = 16000000L +TERM=bash # getting undefined reference to `__cxa_pure_virtual' #~ [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254180518 Arduino Forum - Makefile] diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index e56b67128..06f701d03 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -6,9 +6,11 @@ #include #include "fastio.h" - -#define ECHO(x) Serial << "echo: " << x; -#define ECHOLN(x) Serial << "echo: "<- 1 if(root.isOpen()) root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)){ + if (!card.init(SPI_FULL_SPEED,SDSS)) + { //if (!card.init(SPI_HALF_SPEED,SDSS)) - Serial.println("SD init fail"); + SERIAL_ECHOLN("SD init fail"); } else if (!volume.init(&card)) - Serial.println("volume.init failed"); + { + SERIAL_ERRORLN("volume.init failed"); + } else if (!root.openRoot(&volume)) - Serial.println("openRoot failed"); + { + SERIAL_ERRORLN("openRoot failed"); + } else - { + { sdactive = true; - Serial.println("SD card ok"); - } + SERIAL_ECHOLN("SD card ok"); + } #endif //SDSS } @@ -214,7 +221,7 @@ inline void write_command(char *buf){ //Serial.println(begin); file.write(begin); if (file.writeError){ - Serial.println("error writing to file"); + SERIAL_ERRORLN("error writing to file"); } } #endif //SDSUPPORT @@ -227,7 +234,7 @@ void enquecommand(const char *cmd) { //this is dangerous if a mixing of serial and this happsens strcpy(&(cmdbuffer[bufindw][0]),cmd); - Serial.print("en:");Serial.println(cmdbuffer[bufindw]); + SERIAL_ECHOLN("enqueing \""<= filesize){ sdmode = false; - Serial.println("Done printing file"); - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - checkautostart(true); + Serial.println("echo: Done printing file"); + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"echo: %i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + checkautostart(true); } if(!serial_count) return; //if empty line cmdbuffer[bufindw][serial_count] = 0; //terminate string @@ -721,7 +728,7 @@ inline void process_commands() case 24: //M24 - Start SD print if(sdactive){ sdmode = true; - starttime=millis(); + starttime=millis(); } break; case 25: //M25 - Pause SD print @@ -774,19 +781,19 @@ inline void process_commands() //processed in write to file routine above //savetosd = false; break; - case 30: - { - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"%i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - } - break; + case 30: //M30 take time since the start of the SD print or an M109 command + { + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"echo: time needed %i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + } + break; #endif //SDSUPPORT case 42: //M42 -Change pin status via gcode if (code_seen('S')) @@ -847,7 +854,7 @@ inline void process_commands() Serial.println(); #endif #else - Serial.println("No thermistors - no temp"); + Serial.println("echo: No thermistors - no temp"); #endif return; //break; @@ -888,7 +895,8 @@ inline void process_commands() } #endif //TEMP_RESIDENCY_TIME } - LCD_MESSAGE("Marlin ready."); + LCD_MESSAGE("Heating done."); + starttime=millis(); } break; case 190: // M190 - Wait bed for heater to reach target. @@ -1063,9 +1071,9 @@ inline void process_commands() if(code_seen('P')) Kp = code_value(); if(code_seen('I')) Ki = code_value()*PID_dT; if(code_seen('D')) Kd = code_value()/PID_dT; -// ECHOLN("Kp "<<_FLOAT(Kp,2)); -// ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); -// ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); +// SERIAL_ECHOLN("Kp "<<_FLOAT(Kp,2)); +// SERIAL_ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); +// SERIAL_ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); // temp_iState_min = 0.0; // if (Ki!=0) { @@ -1093,8 +1101,9 @@ inline void process_commands() } } else{ - Serial.println("Unknown command:"); - Serial.println(cmdbuffer[bufindr]); + Serial.print("echo: Unknown command:\""); + Serial.print(cmdbuffer[bufindr]); + Serial.println("\""); } ClearToSend(); @@ -1288,7 +1297,7 @@ void kill() disable_e(); if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); - Serial.println("!! Printer halted. kill() called !!"); + SERIAL_ERRORLN("Printer halted. kill() called !!"); while(1); // Wait for reset } diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index 875531fb7..0b734de4a 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -35,7 +35,7 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 { // int acceleration_manager_was_enabled = plan_is_acceleration_manager_enabled(); // plan_set_acceleration_manager_enabled(false); // disable acceleration management for the duration of the arc - Serial.println("mc_arc"); + SERIAL_ECHOLN("mc_arc."); float center_axis0 = position[axis_0] + offset[axis_0]; float center_axis1 = position[axis_1] + offset[axis_1]; float linear_travel = target[axis_linear] - position[axis_linear]; diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index f4bd1289e..9e5db44a8 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -211,7 +211,7 @@ inline void trapezoid_generator_reset() { // It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. ISR(TIMER1_COMPA_vect) { - if(busy){ Serial.print(*(unsigned short *)OCR1A); Serial.println(" BUSY"); + if(busy){ SERIAL_ERRORLN(*(unsigned short *)OCR1A<< " ISR overtaking itself."); return; } // The busy-flag is used to avoid reentering this interrupt diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 14530ca3f..697173924 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -142,17 +142,8 @@ CRITICAL_SECTION_END; } #endif //PID_OPENLOOP #ifdef PID_DEBUG - Serial.print(" Input "); - Serial.print(pid_input); - Serial.print(" Output "); - Serial.print(pid_output); - Serial.print(" pTerm "); - Serial.print(pTerm); - Serial.print(" iTerm "); - Serial.print(iTerm); - Serial.print(" dTerm "); - Serial.print(dTerm); - Serial.println(); + SERIAL_ECHOLN(" PIDDEBUG Input "<= maxttemp_0) { target_raw[TEMPSENSOR_HOTEND_0] = 0; analogWrite(HEATER_0_PIN, 0); - Serial.println("!! Temperature extruder 0 switched off. MAXTEMP triggered !!"); + SERIAL_ERRORLN("Temperature extruder 0 switched off. MAXTEMP triggered !!"); kill(); } #endif @@ -497,7 +488,7 @@ ISR(TIMER0_COMPB_vect) target_raw[TEMPSENSOR_HOTEND_1] = 0; if(current_raw[2] >= maxttemp_1) { analogWrite(HEATER_2_PIN, 0); - Serial.println("!! Temperature extruder 1 switched off. MAXTEMP triggered !!"); + SERIAL_ERRORLN("Temperature extruder 1 switched off. MAXTEMP triggered !!"); kill() } #endif @@ -507,7 +498,7 @@ ISR(TIMER0_COMPB_vect) if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { target_raw[TEMPSENSOR_HOTEND_0] = 0; analogWrite(HEATER_0_PIN, 0); - Serial.println("!! Temperature extruder 0 switched off. MINTEMP triggered !!"); + SERIAL_ERRORLN("Temperature extruder 0 switched off. MINTEMP triggered !!"); kill(); } #endif @@ -517,7 +508,7 @@ ISR(TIMER0_COMPB_vect) if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { target_raw[TEMPSENSOR_HOTEND_1] = 0; analogWrite(HEATER_2_PIN, 0); - Serial.println("!! Temperature extruder 1 switched off. MINTEMP triggered !!"); + SERIAL_ERRORLN("Temperature extruder 1 switched off. MINTEMP triggered !!"); kill(); } #endif @@ -527,7 +518,7 @@ ISR(TIMER0_COMPB_vect) if(current_raw[1] <= bed_minttemp) { target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); - Serial.println("!! Temperatur heated bed switched off. MINTEMP triggered !!"); + SERIAL_ERRORLN("Temperatur heated bed switched off. MINTEMP triggered !!"); kill(); } #endif @@ -537,7 +528,7 @@ ISR(TIMER0_COMPB_vect) if(current_raw[1] >= bed_maxttemp) { target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); - Serial.println("!! Temperature heated bed switched off. MAXTEMP triggered !!"); + SERIAL_ERRORLN("Temperature heated bed switched off. MAXTEMP triggered !!"); kill(); } #endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 444020c22..bd256100a 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1382,7 +1382,7 @@ void MainMenu::showMainMenu() }break; #endif default: - Serial.println('NEVER say never'); + SERIAL_ERRORLN("Something is wrong in the MenuStructure."); break; } } @@ -1414,7 +1414,7 @@ void MainMenu::update() { force_lcd_update=true; oldcardstatus=CARDINSERTED; - //Serial.println("SD CHANGE"); + //Serial.println("echo: SD CHANGE"); if(CARDINSERTED) { initsd(); diff --git a/Marlin/watchdog.pde b/Marlin/watchdog.pde index 4c677e79e..09d881d1d 100644 --- a/Marlin/watchdog.pde +++ b/Marlin/watchdog.pde @@ -15,7 +15,7 @@ ISR(WDT_vect) #ifdef RESET_MANUAL LCD_MESSAGE("Please Reset!"); - ECHOLN("echo_: Something is wrong, please turn off the printer."); + SERIAL_ERRORLN("Something is wrong, please turn off the printer."); #else LCD_MESSAGE("Timeout, resetting!"); #endif From 1d171e9e52012c8129dfec2b7f2640e696678f2e Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 19:23:08 +0100 Subject: [PATCH 029/430] reformating and some minor bugs/things found on the way. --- Marlin/Configuration.h | 89 +++-- Marlin/EEPROMwrite.h | 117 +++--- Marlin/Marlin.h | 57 ++- Marlin/Marlin.pde | 781 +++++++++++++++++++------------------ Marlin/motion_control.cpp | 18 +- Marlin/pins.h | 68 ++++ Marlin/planner.cpp | 82 ++-- Marlin/planner.h | 25 +- Marlin/speed_lookuptable.h | 1 + Marlin/stepper.cpp | 402 +++++++++---------- Marlin/stepper.h | 4 +- Marlin/temperature.cpp | 389 +++++++++--------- Marlin/temperature.h | 21 +- Marlin/ultralcd.h | 126 ++---- Marlin/ultralcd.pde | 199 +++++----- Marlin/watchdog.h | 15 +- Marlin/watchdog.pde | 2 +- 17 files changed, 1204 insertions(+), 1192 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 8ad0e2282..b437bfb01 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,5 +1,5 @@ -#ifndef CONFIGURATION_H -#define CONFIGURATION_H +#ifndef __CONFIGURATION_H +#define __CONFIGURATION_H //#define DEBUG_STEPS @@ -118,10 +118,7 @@ const int dropsegments=5; //everything with this number of steps will be ignore #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E //note: on bernhards ultimaker 200 200 12 are working well. #define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds -//the followint checks if an extrusion is existent in the move. if _not_, the speed of the move is set to the maximum speed. -//!!!!!!Use only if you know that your printer works at the maximum declared speeds. -// works around the skeinforge cool-bug. There all moves are slowed to have a minimum layer time. However slow travel moves= ooze -#define TRAVELING_AT_MAXSPEED + #define AXIS_RELATIVE_MODES {false, false, false, false} #define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) @@ -177,41 +174,50 @@ const int dropsegments=5; //everything with this number of steps will be ignore //#define_HEATER_1_MAXTEMP 275 //#define BED_MAXTEMP 150 - - - - - - +/// PID settings: +// Uncomment the following line to enable PID support. + #define PIDTEMP #ifdef PIDTEMP - /// PID settings: - // Uncomment the following line to enable PID support. - //#define SMOOTHING - //#define SMOOTHFACTOR 5.0 - //float current_raw_average=0; - #define K1 0.95 //smoothing of the PID //#define PID_DEBUG // Sends debug data to the serial port. //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % - #define PID_MAX 255 // limits current to nozzle - #define PID_INTEGRAL_DRIVE_MAX 255 - #define PID_dT 0.1 - //machine with red silicon: 1950:45 second ; with fan fully blowin 3000:47 + + #define PID_MAX 255 // limits current to nozzle; 255=full current + #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term + #define K1 0.95 //smoothing factor withing the PID + #define PID_dT 0.1 //sampling period of the PID + + //To develop some PID settings for your machine, you can initiall follow + // the Ziegler-Nichols method. + // set Ki and Kd to zero. + // heat with a defined Kp and see if the temperature stabilizes + // ideally you do this graphically with repg. + // the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde + // PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain + // usually further manual tunine is necessary. #define PID_CRITIAL_GAIN 3000 #define PID_SWING_AT_CRITIAL 45 //seconds - #define PIDIADD 5 - /* - //PID according to Ziegler-Nichols method - float Kp = 0.6*PID_CRITIAL_GAIN; - float Ki =PIDIADD+2*Kp/PID_SWING_AT_CRITIAL*PID_dT; - float Kd = Kp*PID_SWING_AT_CRITIAL/8./PID_dT; - */ - //PI according to Ziegler-Nichols method - #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) - #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (0) + #define PID_PI //no differentail term + //#define PID_PID //normal PID + + #ifdef PID_PID + //PID according to Ziegler-Nichols method + #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) + #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) + #endif + + #ifdef PID_PI + //PI according to Ziegler-Nichols method + #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) + #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (0) + #endif + + // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. + // if Kc is choosen well, the additional required power due to increased melting should be compensated. #define PID_ADD_EXTRUSION_RATE #ifdef PID_ADD_EXTRUSION_RATE #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) @@ -228,22 +234,21 @@ const int dropsegments=5; //everything with this number of steps will be ignore //#define ADVANCE #ifdef ADVANCE -#define EXTRUDER_ADVANCE_K .3 + #define EXTRUDER_ADVANCE_K .3 -#define D_FILAMENT 1.7 -#define STEPS_MM_E 65 -#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) -#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + #define D_FILAMENT 1.7 + #define STEPS_MM_E 65 + #define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) + #define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) #endif // ADVANCE -// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, e.g. 8,16,32 -#if defined SDSUPPORT // The number of linear motions that can be in the plan at any give time. +// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, i.g. 8,16,32 because shifts and ors are used to do the ringbuffering. +#if defined SDSUPPORT #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller #else #define BLOCK_BUFFER_SIZE 16 // maximize block buffer #endif - -#endif +#endif //__CONFIGURATION_H diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index dba2d443e..db9f2fde1 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -1,39 +1,42 @@ #ifndef __EEPROMH #define __EEPROMH + +#include "Marlin.h" #include "planner.h" #include "temperature.h" #include -#include "Marlin.h" -#include "streaming.h" -//====================================================================================== template int EEPROM_writeAnything(int &ee, const T& value) { - const byte* p = (const byte*)(const void*)&value; - int i; - for (i = 0; i < (int)sizeof(value); i++) - EEPROM.write(ee++, *p++); - return i; + const byte* p = (const byte*)(const void*)&value; + int i; + for (i = 0; i < (int)sizeof(value); i++) + EEPROM.write(ee++, *p++); + return i; } -//====================================================================================== + template int EEPROM_readAnything(int &ee, T& value) { - byte* p = (byte*)(void*)&value; - int i; - for (i = 0; i < (int)sizeof(value); i++) - *p++ = EEPROM.read(ee++); - return i; + byte* p = (byte*)(void*)&value; + int i; + for (i = 0; i < (int)sizeof(value); i++) + *p++ = EEPROM.read(ee++); + return i; } //====================================================================================== #define EEPROM_OFFSET 100 -#define EEPROM_VERSION "V04" // IMPORTANT: Whenever there are changes made to the variables stored in EEPROM - // in the functions below, also increment the version number. This makes sure that - // the default values are used whenever there is a change to the data, to prevent - // wrong data being written to the variables. - // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. -void StoreSettings() { + +// IMPORTANT: Whenever there are changes made to the variables stored in EEPROM +// in the functions below, also increment the version number. This makes sure that +// the default values are used whenever there is a change to the data, to prevent +// wrong data being written to the variables. +// ALSO: always make sure the variables in the Store and retrieve sections are in the same order. +#define EEPROM_VERSION "V04" + +void StoreSettings() +{ char ver[4]= "000"; int i=EEPROM_OFFSET; EEPROM_writeAnything(i,ver); // invalidate data first @@ -48,52 +51,55 @@ void StoreSettings() { EEPROM_writeAnything(i,max_xy_jerk); EEPROM_writeAnything(i,max_z_jerk); #ifdef PIDTEMP - EEPROM_writeAnything(i,Kp); - EEPROM_writeAnything(i,Ki); - EEPROM_writeAnything(i,Kd); -#else - EEPROM_writeAnything(i,3000); - EEPROM_writeAnything(i,0); - EEPROM_writeAnything(i,0); -#endif + EEPROM_writeAnything(i,Kp); + EEPROM_writeAnything(i,Ki); + EEPROM_writeAnything(i,Kd); + #else + EEPROM_writeAnything(i,3000); + EEPROM_writeAnything(i,0); + EEPROM_writeAnything(i,0); + #endif char ver2[4]=EEPROM_VERSION; i=EEPROM_OFFSET; EEPROM_writeAnything(i,ver2); // validate data - SERIAL_ECHOLN("Settings Stored"); - + SERIAL_ECHOLN("Settings Stored"); } -void RetrieveSettings(bool def=false){ // if def=true, the default values will be used +void RetrieveSettings(bool def=false) +{ // if def=true, the default values will be used int i=EEPROM_OFFSET; char stored_ver[4]; char ver[4]=EEPROM_VERSION; EEPROM_readAnything(i,stored_ver); //read stored version -// SERIAL_ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); - if ((!def)&&(strncmp(ver,stored_ver,3)==0)) { // version number match - EEPROM_readAnything(i,axis_steps_per_unit); - EEPROM_readAnything(i,max_feedrate); - EEPROM_readAnything(i,max_acceleration_units_per_sq_second); - EEPROM_readAnything(i,acceleration); - EEPROM_readAnything(i,retract_acceleration); - EEPROM_readAnything(i,minimumfeedrate); - EEPROM_readAnything(i,mintravelfeedrate); - EEPROM_readAnything(i,minsegmenttime); - EEPROM_readAnything(i,max_xy_jerk); - EEPROM_readAnything(i,max_z_jerk); -#ifndef PIDTEMP + // SERIAL_ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); + if ((!def)&&(strncmp(ver,stored_ver,3)==0)) + { // version number match + EEPROM_readAnything(i,axis_steps_per_unit); + EEPROM_readAnything(i,max_feedrate); + EEPROM_readAnything(i,max_acceleration_units_per_sq_second); + EEPROM_readAnything(i,acceleration); + EEPROM_readAnything(i,retract_acceleration); + EEPROM_readAnything(i,minimumfeedrate); + EEPROM_readAnything(i,mintravelfeedrate); + EEPROM_readAnything(i,minsegmenttime); + EEPROM_readAnything(i,max_xy_jerk); + EEPROM_readAnything(i,max_z_jerk); + #ifndef PIDTEMP float Kp,Ki,Kd; -#endif - EEPROM_readAnything(i,Kp); - EEPROM_readAnything(i,Ki); - EEPROM_readAnything(i,Kd); + #endif + EEPROM_readAnything(i,Kp); + EEPROM_readAnything(i,Ki); + EEPROM_readAnything(i,Kd); - SERIAL_ECHOLN("Stored settings retreived:"); + SERIAL_ECHOLN("Stored settings retreived:"); } - else { + else + { float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; float tmp2[]=DEFAULT_MAX_FEEDRATE; long tmp3[]=DEFAULT_MAX_ACCELERATION; - for (int i=0;i<4;i++) { + for (short i=0;i<4;i++) + { axis_steps_per_unit[i]=tmp1[i]; max_feedrate[i]=tmp2[i]; max_acceleration_units_per_sq_second[i]=tmp3[i]; @@ -117,11 +123,10 @@ void RetrieveSettings(bool def=false){ // if def=true, the default values will SERIAL_ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); SERIAL_ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); SERIAL_ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); -#ifdef PIDTEMP - SERIAL_ECHOLN("PID settings:"); - SERIAL_ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); -#endif - + #ifdef PIDTEMP + SERIAL_ECHOLN("PID settings:"); + SERIAL_ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); + #endif } #endif diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 06f701d03..21eadeeb5 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -18,41 +18,39 @@ void process_commands(); void manage_inactivity(byte debug); #if X_ENABLE_PIN > -1 -#define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) -#define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) + #define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) + #define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) #else -#define enable_x() ; -#define disable_x() ; + #define enable_x() ; + #define disable_x() ; #endif + #if Y_ENABLE_PIN > -1 -#define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) -#define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) + #define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) + #define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) #else -#define enable_y() ; -#define disable_y() ; + #define enable_y() ; + #define disable_y() ; #endif + #if Z_ENABLE_PIN > -1 -#define enable_z() WRITE(Z_ENABLE_PIN, Z_ENABLE_ON) -#define disable_z() WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON) + #define enable_z() WRITE(Z_ENABLE_PIN, Z_ENABLE_ON) + #define disable_z() WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON) #else -#define enable_z() ; -#define disable_z() ; + #define enable_z() ; + #define disable_z() ; #endif #if E_ENABLE_PIN > -1 - - #define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) - #define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) - + #define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) + #define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) #else -#define enable_e() ; -#define disable_e() ; + #define enable_e() ; + #define disable_e() ; #endif -#define X_AXIS 0 -#define Y_AXIS 1 -#define Z_AXIS 2 -#define E_AXIS 3 +enum AxisEnum {X_AXIS=0, Y_AXIS=1, Z_AXIS=2, E_AXIS=3}; + void FlushSerialRequestResend(); void ClearToSend(); @@ -61,26 +59,15 @@ void get_coordinates(); void prepare_move(); void kill(); -//void check_axes_activity(); -//void plan_init(); -//void st_init(); -//void tp_init(); -//void plan_buffer_line(float x, float y, float z, float e, float feed_rate); -//void plan_set_position(float x, float y, float z, float e); -//void st_wake_up(); -//void st_synchronize(); void enquecommand(const char *cmd); //put an ascii command at the end of the current buffer. #ifndef CRITICAL_SECTION_START -#define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli(); -#define CRITICAL_SECTION_END SREG = _sreg; + #define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli(); + #define CRITICAL_SECTION_END SREG = _sreg; #endif //CRITICAL_SECTION_START extern float homing_feedrate[]; extern bool axis_relative_modes[]; - -void kill(); - #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b449bb069..6c2c6c87a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -25,6 +25,7 @@ http://reprap.org/pipermail/reprap-dev/2011-May/003323.html */ +#include #include "EEPROMwrite.h" #include "fastio.h" #include "Configuration.h" @@ -37,14 +38,11 @@ #include "temperature.h" #include "motion_control.h" -#ifdef SIMPLE_LCD - #include "Simplelcd.h" -#endif char version_string[] = "1.0.0 Alpha 1"; #ifdef SDSUPPORT -#include "SdFat.h" + #include "SdFat.h" #endif //SDSUPPORT @@ -109,12 +107,9 @@ char version_string[] = "1.0.0 Alpha 1"; //Stepper Movement Variables -char axis_codes[NUM_AXIS] = { - 'X', 'Y', 'Z', 'E'}; -float destination[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; -float current_position[NUM_AXIS] = { - 0.0, 0.0, 0.0, 0.0}; +const char axis_codes[NUM_AXIS] = {'X', 'Y', 'Z', 'E'}; +float destination[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; float offset[3] = {0.0, 0.0, 0.0}; bool home_all_axis = true; float feedrate = 1500.0, next_feedrate, saved_feedrate; @@ -131,6 +126,7 @@ uint8_t fanpwm=0; volatile int feedmultiply=100; //100->1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; + // comm variables #define MAX_CMD_SIZE 96 #define BUFSIZE 4 @@ -146,13 +142,10 @@ boolean comment_mode = false; char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc extern float HeaterPower; -#include "EEPROM.h" - const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 float tt = 0, bt = 0; - //Inactivity shutdown variables unsigned long previous_millis_cmd = 0; unsigned long max_inactive_time = 0; @@ -161,73 +154,81 @@ unsigned long stepper_inactive_time = 0; unsigned long starttime=0; unsigned long stoptime=0; #ifdef SDSUPPORT -Sd2Card card; -SdVolume volume; -SdFile root; -SdFile file; -uint32_t filesize = 0; -uint32_t sdpos = 0; -bool sdmode = false; -bool sdactive = false; -bool savetosd = false; -int16_t n; -unsigned long autostart_atmillis=0; + Sd2Card card; + SdVolume volume; + SdFile root; + SdFile file; + uint32_t filesize = 0; + uint32_t sdpos = 0; + bool sdmode = false; + bool sdactive = false; + bool savetosd = false; + int16_t n; + unsigned long autostart_atmillis=0; + + bool autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. -void initsd() -{ - sdactive = false; -#if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)) - { - //if (!card.init(SPI_HALF_SPEED,SDSS)) - SERIAL_ECHOLN("SD init fail"); - } - else if (!volume.init(&card)) - { - SERIAL_ERRORLN("volume.init failed"); - } - else if (!root.openRoot(&volume)) - { - SERIAL_ERRORLN("openRoot failed"); - } - else - { - sdactive = true; - SERIAL_ECHOLN("SD card ok"); - } -#endif //SDSS -} -void quickinitsd(){ - sdactive=false; - autostart_atmillis=millis()+5000; -} - -inline void write_command(char *buf){ - char* begin = buf; - char* npos = 0; - char* end = buf + strlen(buf) - 1; - - file.writeError = false; - if((npos = strchr(buf, 'N')) != NULL){ - begin = strchr(npos, ' ') + 1; - end = strchr(npos, '*') - 1; + void initsd() + { + sdactive = false; + #if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)) + { + //if (!card.init(SPI_HALF_SPEED,SDSS)) + SERIAL_ECHOLN("SD init fail"); + } + else if (!volume.init(&card)) + { + SERIAL_ERRORLN("volume.init failed"); + } + else if (!root.openRoot(&volume)) + { + SERIAL_ERRORLN("openRoot failed"); + } + else + { + sdactive = true; + SERIAL_ECHOLN("SD card ok"); + } + #endif //SDSS } - end[1] = '\r'; - end[2] = '\n'; - end[3] = '\0'; - //Serial.println(begin); - file.write(begin); - if (file.writeError){ - SERIAL_ERRORLN("error writing to file"); + + void quickinitsd() + { + sdactive=false; + autostart_atmillis=millis()+5000; + } + + inline void write_command(char *buf) + { + char* begin = buf; + char* npos = 0; + 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_ERRORLN("error writing to file"); + } } -} #endif //SDSUPPORT -///adds an command to the main command buffer +//adds an command to the main command buffer +//thats really done in a non-safe way. +//needs overworking someday void enquecommand(const char *cmd) { if(buflen < BUFSIZE) @@ -242,106 +243,93 @@ void enquecommand(const char *cmd) void setup() { - Serial.begin(BAUDRATE); SERIAL_ECHOLN("Marlin "< -1 - SET_OUTPUT(SDPOWER); - WRITE(SDPOWER,HIGH); -#endif //SDPOWER - quickinitsd(); - -#endif //SDSUPPORT + #ifdef SDSUPPORT + //power to SD reader + #if SDPOWER > -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); + #endif //SDPOWER + quickinitsd(); + #endif //SDSUPPORT + plan_init(); // Initialize planner; st_init(); // Initialize stepper; tp_init(); // Initialize temperature loop - //checkautostart(); } #ifdef SDSUPPORT -bool autostart_stilltocheck=true; - void checkautostart(bool force) { - //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset - if(!force) - { - if(!autostart_stilltocheck) - return; - if(autostart_atmillis 0) + { + for(int i=0;i<(int)strlen((char*)p.name);i++) + p.name[i]=tolower(p.name[i]); + //Serial.print((char*)p.name); + //Serial.print(" "); + //Serial.println(autoname); + if(p.name[9]!='~') //skip safety copies + if(strncmp((char*)p.name,autoname,5)==0) + { + char cmd[30]; - bool found=false; - while (root.readDir(p) > 0) - { - for(int i=0;i<(int)strlen((char*)p.name);i++) - p.name[i]=tolower(p.name[i]); - //Serial.print((char*)p.name); - //Serial.print(" "); - //Serial.println(autoname); - if(p.name[9]!='~') //skip safety copies - if(strncmp((char*)p.name,autoname,5)==0) - { - char cmd[30]; - - sprintf(cmd,"M23 %s",autoname); - //sprintf(cmd,"M115"); - //enquecommand("G92 Z0"); - //enquecommand("G1 Z10 F2000"); - //enquecommand("G28 X-105 Y-105"); - enquecommand(cmd); - enquecommand("M24"); - found=true; - - } - } - if(!found) - lastnr=-1; - else - lastnr++; - -} -#else - -inline void checkautostart(bool x) -{ + sprintf(cmd,"M23 %s",autoname); + //sprintf(cmd,"M115"); + //enquecommand("G92 Z0"); + //enquecommand("G1 Z10 F2000"); + //enquecommand("G28 X-105 Y-105"); + enquecommand(cmd); + enquecommand("M24"); + found=true; + } + } + if(!found) + lastnr=-1; + else + lastnr++; } +#else //NO SD SUPORT + inline void checkautostart(bool x){} #endif @@ -349,28 +337,32 @@ void loop() { if(buflen<3) get_command(); - checkautostart(false); + checkautostart(false); if(buflen) { -#ifdef SDSUPPORT - if(savetosd){ - if(strstr(cmdbuffer[bufindr],"M29") == NULL){ - write_command(cmdbuffer[bufindr]); - Serial.println("ok"); + #ifdef SDSUPPORT + if(savetosd) + { + if(strstr(cmdbuffer[bufindr],"M29") == NULL) + { + write_command(cmdbuffer[bufindr]); + Serial.println("ok"); + } + else + { + file.sync(); + file.close(); + savetosd = false; + Serial.println("Done saving file."); + } } - else{ - file.sync(); - file.close(); - savetosd = false; - Serial.println("Done saving file."); + else + { + process_commands(); } - } - else{ + #else process_commands(); - } -#else - process_commands(); -#endif //SDSUPPORT + #endif //SDSUPPORT buflen = (buflen-1); bufindr = (bufindr + 1)%BUFSIZE; } @@ -449,10 +441,10 @@ inline void get_command() case 1: case 2: case 3: -#ifdef SDSUPPORT + #ifdef SDSUPPORT if(savetosd) break; -#endif //SDSUPPORT + #endif //SDSUPPORT Serial.println("ok"); break; default: @@ -473,7 +465,7 @@ inline void get_command() if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; } } -#ifdef SDSUPPORT + #ifdef SDSUPPORT if(!sdmode || serial_count!=0){ return; } @@ -486,18 +478,19 @@ inline void get_command() if(sdpos >= filesize){ sdmode = false; Serial.println("echo: Done printing file"); - stoptime=millis(); - char time[30]; - unsigned long t=(stoptime-starttime)/1000; - int sec,min; - min=t/60; - sec=t%60; - sprintf(time,"echo: %i min, %i sec",min,sec); - Serial.println(time); - LCD_MESSAGE(time); - checkautostart(true); + stoptime=millis(); + char time[30]; + unsigned long t=(stoptime-starttime)/1000; + int sec,min; + min=t/60; + sec=t%60; + sprintf(time,"echo: %i min, %i sec",min,sec); + Serial.println(time); + LCD_MESSAGE(time); + checkautostart(true); } - if(!serial_count) return; //if empty line + if(!serial_count) + return; //if empty line cmdbuffer[bufindw][serial_count] = 0; //terminate string if(!comment_mode){ fromsd[bufindw] = true; @@ -513,20 +506,23 @@ inline void get_command() if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; } } -#endif //SDSUPPORT + #endif //SDSUPPORT } -inline float code_value() { +inline float code_value() +{ return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); } -inline long code_value_long() { +inline long code_value_long() +{ return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); } -inline bool code_seen(char code_string[]) { +inline bool code_seen(char code_string[]) //Return True if the string was found +{ return (strstr(cmdbuffer[bufindr], code_string) != NULL); -} //Return True if the string was found +} inline bool code_seen(char code) { @@ -579,10 +575,10 @@ inline void process_commands() destination[i] = current_position[i]; } feedrate = 0.0; - home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) + { if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ // st_synchronize(); current_position[X_AXIS] = 0; @@ -689,7 +685,7 @@ inline void process_commands() switch( (int)code_value() ) { -#ifdef SDSUPPORT + #ifdef SDSUPPORT case 20: // M20 - list SD card Serial.println("Begin file list"); @@ -781,6 +777,8 @@ inline void process_commands() //processed in write to file routine above //savetosd = false; break; + #endif //SDSUPPORT + case 30: //M30 take time since the start of the SD print or an M109 command { stoptime=millis(); @@ -794,133 +792,134 @@ inline void process_commands() LCD_MESSAGE(time); } break; -#endif //SDSUPPORT - case 42: //M42 -Change pin status via gcode - if (code_seen('S')) + case 42: //M42 -Change pin status via gcode + if (code_seen('S')) + { + int pin_status = code_value(); + if (code_seen('P') && pin_status >= 0 && pin_status <= 255) { - int pin_status = code_value(); - if (code_seen('P') && pin_status >= 0 && pin_status <= 255) + int pin_number = code_value(); + for(int i = 0; i < (int)sizeof(sensitive_pins); i++) { - int pin_number = code_value(); - for(int i = 0; i < (int)sizeof(sensitive_pins); i++) + if (sensitive_pins[i] == pin_number) { - if (sensitive_pins[i] == pin_number) - { - pin_number = -1; - break; - } - } - - if (pin_number > -1) - { - pinMode(pin_number, OUTPUT); - digitalWrite(pin_number, pin_status); - analogWrite(pin_number, pin_status); + pin_number = -1; + break; } } + + if (pin_number > -1) + { + pinMode(pin_number, OUTPUT); + digitalWrite(pin_number, pin_status); + analogWrite(pin_number, pin_status); + } } - break; - case 104: // M104 - if (code_seen('S')) setTargetHotend0(code_value()); - setWatch(); - break; - case 140: // M140 set bed temp - if (code_seen('S')) setTargetBed(code_value()); - break; - case 105: // M105 - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = degHotend0(); - #endif - #if TEMP_1_PIN > -1 - bt = degBed(); - #endif - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - Serial.print("ok T:"); - Serial.print(tt); -// Serial.print(", raw:"); -// Serial.print(current_raw); - #if TEMP_1_PIN > -1 -#ifdef PIDTEMP + } + break; + case 104: // M104 + if (code_seen('S')) setTargetHotend0(code_value()); + setWatch(); + break; + case 140: // M140 set bed temp + if (code_seen('S')) setTargetBed(code_value()); + break; + case 105: // M105 + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + tt = degHotend0(); + #endif + #if TEMP_1_PIN > -1 + bt = degBed(); + #endif + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + Serial.print("ok T:"); + Serial.print(tt); + #if TEMP_1_PIN > -1 + #ifdef PIDTEMP Serial.print(" B:"); #if TEMP_1_PIN > -1 - Serial.println(bt); + Serial.println(bt); #else - Serial.println(HeaterPower); + Serial.println(HeaterPower); #endif -#else + #else //not PIDTEMP Serial.println(); -#endif - #else + #endif //PIDTEMP + #else Serial.println(); - #endif + #endif //TEMP_1_PIN #else Serial.println("echo: No thermistors - no temp"); - #endif - return; - //break; - case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGE("Heating..."); - if (code_seen('S')) setTargetHotend0(code_value()); - - setWatch(); - codenum = millis(); - - /* See if we are heating up or cooling down */ - bool target_direction = isHeatingHotend0(); // true if heating, false if cooling - - #ifdef TEMP_RESIDENCY_TIME - long residencyStart; - residencyStart = -1; - /* continue to loop until we have reached the target temp - _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { - #else - while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) ) { - #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down - Serial.print("T:"); - Serial.println( degHotend0() ); - codenum = millis(); - } - manage_heater(); - LCD_STATUS; - #ifdef TEMP_RESIDENCY_TIME - /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time - or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && !isHeatingHotend0()) || - (residencyStart == -1 && !target_direction && !isCoolingHotend0()) || - (residencyStart > -1 && labs(degHotend0() - degTargetHotend0()) > TEMP_HYSTERESIS) ) { - residencyStart = millis(); - } - #endif //TEMP_RESIDENCY_TIME - } - LCD_MESSAGE("Heating done."); - starttime=millis(); - } - break; - case 190: // M190 - Wait bed for heater to reach target. - #if TEMP_1_PIN > -1 - if (code_seen('S')) setTargetBed(code_value()); - codenum = millis(); - while(isHeatingBed()) - { - if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. - { - float tt=degHotend0(); - Serial.print("T:"); - Serial.println( tt ); - Serial.print("ok T:"); - Serial.print( tt ); - Serial.print(" B:"); - Serial.println( degBed() ); - codenum = millis(); - } - manage_heater(); - } #endif + return; break; -#if FAN_PIN > -1 + case 109: + {// M109 - Wait for extruder heater to reach target. + LCD_MESSAGE("Heating..."); + if (code_seen('S')) setTargetHotend0(code_value()); + + setWatch(); + codenum = millis(); + + /* See if we are heating up or cooling down */ + bool target_direction = isHeatingHotend0(); // true if heating, false if cooling + + #ifdef TEMP_RESIDENCY_TIME + long residencyStart; + residencyStart = -1; + /* continue to loop until we have reached the target temp + _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ + while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + #else + while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) ) { + #endif //TEMP_RESIDENCY_TIME + if( (millis() - codenum) > 1000 ) + { //Print Temp Reading every 1 second while heating up/cooling down + Serial.print("T:"); + Serial.println( degHotend0() ); + codenum = millis(); + } + manage_heater(); + LCD_STATUS; + #ifdef TEMP_RESIDENCY_TIME + /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time + or when current temp falls outside the hysteresis after target temp was reached */ + if ((residencyStart == -1 && target_direction && !isHeatingHotend0()) || + (residencyStart == -1 && !target_direction && !isCoolingHotend0()) || + (residencyStart > -1 && labs(degHotend0() - degTargetHotend0()) > TEMP_HYSTERESIS) ) + { + residencyStart = millis(); + } + #endif //TEMP_RESIDENCY_TIME + } + LCD_MESSAGE("Heating done."); + starttime=millis(); + } + break; + case 190: // M190 - Wait bed for heater to reach target. + #if TEMP_1_PIN > -1 + if (code_seen('S')) setTargetBed(code_value()); + codenum = millis(); + while(isHeatingBed()) + { + if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + float tt=degHotend0(); + Serial.print("T:"); + Serial.println( tt ); + Serial.print("ok T:"); + Serial.print( tt ); + Serial.print(" B:"); + Serial.println( degBed() ); + codenum = millis(); + } + manage_heater(); + } + #endif + break; + + #if FAN_PIN > -1 case 106: //M106 Fan On if (code_seen('S')){ WRITE(FAN_PIN,HIGH); @@ -937,27 +936,29 @@ inline void process_commands() WRITE(FAN_PIN,LOW); analogWrite(FAN_PIN, 0); break; -#endif -#if (PS_ON_PIN > -1) + #endif //FAN_PIN + + #if (PS_ON_PIN > -1) case 80: // M80 - ATX Power On SET_OUTPUT(PS_ON_PIN); //GND break; case 81: // M81 - ATX Power Off SET_INPUT(PS_ON_PIN); //Floating break; -#endif + #endif case 82: axis_relative_modes[3] = false; break; case 83: axis_relative_modes[3] = true; break; - case 18: + case 18: //compatibility case 84: if(code_seen('S')){ stepper_inactive_time = code_value() * 1000; } - else{ + else + { st_synchronize(); disable_x(); disable_y(); @@ -970,13 +971,14 @@ inline void process_commands() max_inactive_time = code_value() * 1000; break; case 92: // M92 - for(int i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); + for(int i=0; i < NUM_AXIS; i++) + { + if(code_seen(axis_codes[i])) + axis_steps_per_unit[i] = code_value(); } - break; case 115: // M115 - Serial.println("FIRMWARE_NAME:Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + Serial.println("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); break; case 114: // M114 Serial.print("X:"); @@ -998,45 +1000,46 @@ inline void process_commands() Serial.println(""); break; case 119: // M119 -#if (X_MIN_PIN > -1) - Serial.print("x_min:"); - Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (X_MAX_PIN > -1) - Serial.print("x_max:"); - Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MIN_PIN > -1) - Serial.print("y_min:"); - Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Y_MAX_PIN > -1) - Serial.print("y_max:"); - Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MIN_PIN > -1) - Serial.print("z_min:"); - Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif -#if (Z_MAX_PIN > -1) - Serial.print("z_max:"); - Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); -#endif + #if (X_MIN_PIN > -1) + Serial.print("x_min:"); + Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + #endif + #if (X_MAX_PIN > -1) + Serial.print("x_max:"); + Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + #endif + #if (Y_MIN_PIN > -1) + Serial.print("y_min:"); + Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + #endif + #if (Y_MAX_PIN > -1) + Serial.print("y_max:"); + Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + #endif + #if (Z_MIN_PIN > -1) + Serial.print("z_min:"); + Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + #endif + #if (Z_MAX_PIN > -1) + Serial.print("z_max:"); + Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + #endif Serial.println(""); break; //TODO: update for all axis, use for loop case 201: // M201 - for(int i=0; i < NUM_AXIS; i++) { + for(int i=0; i < NUM_AXIS; i++) + { if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; } break; -#if 0 // Not used for Sprinter/grbl gen6 + #if 0 // Not used for Sprinter/grbl gen6 case 202: // M202 for(int i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; } break; -#endif + #endif case 203: // M203 max feedrate mm/sec for(int i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; @@ -1048,59 +1051,52 @@ inline void process_commands() if(code_seen('T')) retract_acceleration = code_value() ; } break; - case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + { + if(code_seen('S')) minimumfeedrate = code_value()*60 ; + if(code_seen('T')) mintravelfeedrate = code_value()*60 ; + if(code_seen('B')) minsegmenttime = code_value() ; + if(code_seen('X')) max_xy_jerk = code_value()*60 ; + if(code_seen('Z')) max_z_jerk = code_value()*60 ; + } + break; + case 220: // M220 S- set speed factor override percentage + { + if(code_seen('S')) { - if(code_seen('S')) minimumfeedrate = code_value()*60 ; - if(code_seen('T')) mintravelfeedrate = code_value()*60 ; - if(code_seen('B')) minsegmenttime = code_value() ; - if(code_seen('X')) max_xy_jerk = code_value()*60 ; - if(code_seen('Z')) max_z_jerk = code_value()*60 ; + feedmultiply = code_value() ; + feedmultiplychanged=true; } - break; - case 220: // M220 S- set speed factor override percentage - { - if(code_seen('S')) - { - feedmultiply = code_value() ; - feedmultiplychanged=true; - } - } - break; -#ifdef PIDTEMP + } + break; + + #ifdef PIDTEMP case 301: // M301 if(code_seen('P')) Kp = code_value(); if(code_seen('I')) Ki = code_value()*PID_dT; if(code_seen('D')) Kd = code_value()/PID_dT; -// SERIAL_ECHOLN("Kp "<<_FLOAT(Kp,2)); -// SERIAL_ECHOLN("Ki "<<_FLOAT(Ki/PID_dT,2)); -// SERIAL_ECHOLN("Kd "<<_FLOAT(Kd*PID_dT,2)); - -// temp_iState_min = 0.0; -// if (Ki!=0) { -// temp_iState_max = PID_INTEGRAL_DRIVE_MAX / (Ki/100.0); -// } -// else temp_iState_max = 1.0e10; - break; -#endif //PIDTEMP - case 500: // Store settings in EEPROM - { - StoreSettings(); - } - break; - case 501: // Read settings from EEPROM - { - RetrieveSettings(); - } - break; - case 502: // Revert to default settings - { - RetrieveSettings(true); - } break; + #endif //PIDTEMP + case 500: // Store settings in EEPROM + { + StoreSettings(); + } + break; + case 501: // Read settings from EEPROM + { + RetrieveSettings(); + } + break; + case 502: // Revert to default settings + { + RetrieveSettings(true); + } + break; } } - else{ + else + { Serial.print("echo: Unknown command:\""); Serial.print(cmdbuffer[bufindr]); Serial.println("\""); @@ -1121,10 +1117,10 @@ void FlushSerialRequestResend() void ClearToSend() { previous_millis_cmd = millis(); -#ifdef SDSUPPORT + #ifdef SDSUPPORT if(fromsd[bufindr]) return; -#endif //SDSUPPORT + #endif //SDSUPPORT Serial.println("ok"); } @@ -1132,7 +1128,7 @@ inline void get_coordinates() { for(int i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? + else destination[i] = current_position[i]; //Are these else lines really needed? } if(code_seen('F')) { next_feedrate = code_value(); @@ -1276,14 +1272,19 @@ void prepare_arc_move(char isclockwise) { -void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if( (millis()-previous_millis_cmd) > stepper_inactive_time ) if(stepper_inactive_time) { - disable_x(); - disable_y(); - disable_z(); - disable_e(); - } +void manage_inactivity(byte debug) +{ + if( (millis()-previous_millis_cmd) > max_inactive_time ) + if(max_inactive_time) + kill(); + if( (millis()-previous_millis_cmd) > stepper_inactive_time ) + if(stepper_inactive_time) + { + disable_x(); + disable_y(); + disable_z(); + disable_e(); + } check_axes_activity(); } diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index 0b734de4a..75396143a 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -33,8 +33,8 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8_t axis_1, uint8_t axis_linear, float feed_rate, float radius, uint8_t isclockwise) { -// int acceleration_manager_was_enabled = plan_is_acceleration_manager_enabled(); -// plan_set_acceleration_manager_enabled(false); // disable acceleration management for the duration of the arc + // int acceleration_manager_was_enabled = plan_is_acceleration_manager_enabled(); + // plan_set_acceleration_manager_enabled(false); // disable acceleration management for the duration of the arc SERIAL_ECHOLN("mc_arc."); float center_axis0 = position[axis_0] + offset[axis_0]; float center_axis1 = position[axis_1] + offset[axis_1]; @@ -52,12 +52,12 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 float millimeters_of_travel = hypot(angular_travel*radius, fabs(linear_travel)); if (millimeters_of_travel == 0.0) { return; } uint16_t segments = floor(millimeters_of_travel/MM_PER_ARC_SEGMENT); -/* - // Multiply inverse feed_rate to compensate for the fact that this movement is approximated - // by a number of discrete segments. The inverse feed_rate should be correct for the sum of - // all segments. - if (invert_feed_rate) { feed_rate *= segments; } -*/ + /* + // Multiply inverse feed_rate to compensate for the fact that this movement is approximated + // by a number of discrete segments. The inverse feed_rate should be correct for the sum of + // all segments. + if (invert_feed_rate) { feed_rate *= segments; } + */ float theta_per_segment = angular_travel/segments; float linear_per_segment = linear_travel/segments; @@ -128,6 +128,6 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 // Ensure last segment arrives at target location. plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feed_rate); -// plan_set_acceleration_manager_enabled(acceleration_manager_was_enabled); + // plan_set_acceleration_manager_enabled(acceleration_manager_was_enabled); } diff --git a/Marlin/pins.h b/Marlin/pins.h index e9ebd4412..4df1bd0e3 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -557,6 +557,74 @@ #define FAN_PIN 7 #define PS_ON_PIN 12 #define KILL_PIN -1 + +#ifdef ULTRA_LCD + + #ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + #define LCD_PINS_RS 20 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 6 + + //buttons are directly attached + #define BTN_EN1 40 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 38 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + //buttons are attached to a shift register + #define SHIFT_CLK 38 + #define SHIFT_LD 42 + #define SHIFT_OUT 40 + #define SHIFT_EN 17 + + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 5 + #define LCD_PINS_D4 6 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 20 + #define LCD_PINS_D7 19 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + + //bits in the shift register that carry the buttons for: + // left up center down right red + #define BL_LE 7 + #define BL_UP 6 + #define BL_MI 5 + #define BL_DW 4 + #define BL_RI 3 + #define BL_ST 2 + + #define BLEN_B 1 + #define BLEN_A 0 + #endif +#endif //ULTRA_LCD + #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 14f0bb104..b4271bab3 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -83,7 +83,7 @@ static volatile unsigned char block_buffer_head; // Index of the next static volatile unsigned char block_buffer_tail; // Index of the block to process now // The current position of the tool in absolute steps - long position[4]; +long position[4]; #define ONE_MINUTE_OF_MICROSECONDS 60000000.0 @@ -123,10 +123,10 @@ void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit long initial_rate = ceil(block->nominal_rate*entry_factor); long final_rate = ceil(block->nominal_rate*exit_factor); -#ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; -#endif // ADVANCE + #ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; + #endif // ADVANCE // Limit minimal step rate (Otherwise the timer will overflow.) if(initial_rate <120) initial_rate=120; @@ -155,10 +155,10 @@ void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit block->decelerate_after = decelerate_after; block->initial_rate = initial_rate; block->final_rate = final_rate; -#ifdef ADVANCE - block->initial_advance = initial_advance; - block->final_advance = final_advance; -#endif //ADVANCE + #ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; + #endif //ADVANCE } CRITICAL_SECTION_END; } @@ -166,18 +166,15 @@ void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit // Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the // acceleration within the allotted distance. inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { - return( - sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance) - ); + return sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance); } // "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. // This method will calculate the junction jerk as the euclidean distance between the nominal // velocities of the respective blocks. inline float junction_jerk(block_t *before, block_t *after) { - return(sqrt( - pow((before->speed_x-after->speed_x), 2)+ - pow((before->speed_y-after->speed_y), 2))); + return sqrt( + pow((before->speed_x-after->speed_x), 2)+pow((before->speed_y-after->speed_y), 2)); } // Return the safe speed which is max_jerk/2, e.g. the @@ -185,8 +182,10 @@ inline float junction_jerk(block_t *before, block_t *after) { float safe_speed(block_t *block) { float safe_speed; safe_speed = max_xy_jerk/2; - if(abs(block->speed_z) > max_z_jerk/2) safe_speed = max_z_jerk/2; - if (safe_speed > block->nominal_speed) safe_speed = block->nominal_speed; + if(abs(block->speed_z) > max_z_jerk/2) + safe_speed = max_z_jerk/2; + if (safe_speed > block->nominal_speed) + safe_speed = block->nominal_speed; return safe_speed; } @@ -379,9 +378,8 @@ void check_axes_activity() { // Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in // mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration // calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { - - +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate) +{ // Calculate the buffer head after we push this byte int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); @@ -469,11 +467,8 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { // Limit speed per axis float speed_factor = 1; //factor <=1 do decrease speed if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - //// [ErikDeBruijn] IS THIS THE BUG WE'RE LOOING FOR???? - //// [bernhard] No its not, according to Zalm. - //// the if would always be true, since tmp_speedfactor <=0 due the inial if, so its safe to set. the next lines actually compare. speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); - //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; + //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; /is not need here because auf the init above } if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ float tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); @@ -495,7 +490,8 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->nominal_speed = block->millimeters * multiplier; block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - if(block->nominal_rate < 120) block->nominal_rate = 120; + if(block->nominal_rate < 120) + block->nominal_rate = 120; block->entry_speed = safe_speed(block); // Compute the acceleration rate for the trapezoid generator. @@ -527,25 +523,25 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { block->acceleration = block->acceleration_st * travel_per_step; block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); -#ifdef ADVANCE - // Calculate advance rate - if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { - block->advance_rate = 0; - block->advance = 0; - } - else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); - float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; - block->advance = advance; - if(acc_dist == 0) { + #ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { block->advance_rate = 0; - } - else { - block->advance_rate = advance / (float)acc_dist; + block->advance = 0; } - } -#endif // ADVANCE + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } + #endif // ADVANCE // compute a preliminary conservative acceleration trapezoid float safespeed = safe_speed(block); @@ -576,7 +572,7 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate) { st_wake_up(); } -void plan_set_position(float x, float y, float z, float e) +void plan_set_position(const float &x, const float &y, const float &z, const float &e) { position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); diff --git a/Marlin/planner.h b/Marlin/planner.h index 18ea1e2b1..79f54d879 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -32,16 +32,16 @@ typedef struct { // Fields used by the bresenham algorithm for tracing the line long steps_x, steps_y, steps_z, steps_e; // Step count along each axis long step_event_count; // The number of step events required to complete this block - volatile long accelerate_until; // The index of the step event on which to stop acceleration - volatile long decelerate_after; // The index of the step event on which to start decelerating - volatile long acceleration_rate; // The acceleration rate used for acceleration calculation + volatile long accelerate_until; // The index of the step event on which to stop acceleration + volatile long decelerate_after; // The index of the step event on which to start decelerating + volatile long acceleration_rate; // The acceleration rate used for acceleration calculation unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) -#ifdef ADVANCE - long advance_rate; - volatile long initial_advance; - volatile long final_advance; - float advance; -#endif + #ifdef ADVANCE + long advance_rate; + volatile long initial_advance; + volatile long final_advance; + float advance; + #endif // Fields used by the motion planner to manage acceleration float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis @@ -57,16 +57,17 @@ typedef struct { long acceleration_st; // acceleration steps/sec^2 volatile char busy; } block_t; - + // Initialize the motion plan subsystem void plan_init(); // Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in // millimaters. Feed rate specifies the speed of the motion. -void plan_buffer_line(float x, float y, float z, float e, float feed_rate); +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate); // Set position. Used for G92 instructions. -void plan_set_position(float x, float y, float z, float e); +void plan_set_position(const float &x, const float &y, const float &z, const float &e); + // Called when the current block is no longer needed. Discards the block and makes the memory // availible for new blocks. diff --git a/Marlin/speed_lookuptable.h b/Marlin/speed_lookuptable.h index 05dae47df..002f852f6 100644 --- a/Marlin/speed_lookuptable.h +++ b/Marlin/speed_lookuptable.h @@ -37,6 +37,7 @@ uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ { 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, { 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} }; + uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ { 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, { 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 9e5db44a8..924521119 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -35,8 +35,8 @@ // if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. // for debugging purposes only, should be disabled by default #ifdef DEBUG_STEPS -volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; -volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; + volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; + volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; #endif @@ -117,6 +117,8 @@ asm volatile ( \ block_t *current_block; // A pointer to the block currently being traced +//static makes it inpossible to be called from outside of this file by extern.! + // Variables used by The Stepper Driver Interrupt static unsigned char out_bits; // The next stepping-bits to be output static long counter_x, // Counter variables for the bresenham line tracer @@ -125,9 +127,9 @@ static long counter_x, // Counter variables for the bresenham line tracer counter_e; static unsigned long step_events_completed; // The number of step events executed in the current block #ifdef ADVANCE -static long advance_rate, advance, final_advance = 0; -static short old_advance = 0; -static short e_steps; + static long advance_rate, advance, final_advance = 0; + static short old_advance = 0; + static short e_steps; #endif static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. static long acceleration_time, deceleration_time; @@ -195,10 +197,10 @@ inline unsigned short calc_timer(unsigned short step_rate) { // Initializes the trapezoid generator from the current block. Called whenever a new // block begins. inline void trapezoid_generator_reset() { -#ifdef ADVANCE - advance = current_block->initial_advance; - final_advance = current_block->final_advance; -#endif + #ifdef ADVANCE + advance = current_block->initial_advance; + final_advance = current_block->final_advance; + #endif deceleration_time = 0; // advance_rate = current_block->advance_rate; // step_rate to timer interval @@ -211,7 +213,8 @@ inline void trapezoid_generator_reset() { // It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. ISR(TIMER1_COMPA_vect) { - if(busy){ SERIAL_ERRORLN(*(unsigned short *)OCR1A<< " ISR overtaking itself."); + if(busy){ + SERIAL_ERRORLN(*(unsigned short *)OCR1A<< " ISR overtaking itself."); return; } // The busy-flag is used to avoid reentering this interrupt @@ -242,74 +245,74 @@ ISR(TIMER1_COMPA_vect) // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt out_bits = current_block->direction_bits; -#ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); CRITICAL_SECTION_END; - } - else { - CRITICAL_SECTION_START; - e_steps++; - CRITICAL_SECTION_END; - } - } - // Do E steps + advance steps - CRITICAL_SECTION_START; - e_steps += ((advance >> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; -#endif //ADVANCE + old_advance = advance >> 16; + #endif //ADVANCE // Set direction en check limit switches -if ((out_bits & (1< -1 + if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } #endif -#if X_MIN_PIN > -1 - if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } -#endif } else { // +direction - WRITE(X_DIR_PIN,!INVERT_X_DIR); - #ifdef DEBUG_STEPS + WRITE(X_DIR_PIN,!INVERT_X_DIR); + #ifdef DEBUG_STEPS count_direction[X_AXIS]=1; - #endif -#if X_MAX_PIN > -1 + #endif + #if X_MAX_PIN > -1 if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ step_events_completed = current_block->step_event_count; } -#endif + #endif } if ((out_bits & (1< -1 + if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } #endif -#if Y_MIN_PIN > -1 - if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } -#endif } else { // +direction WRITE(Y_DIR_PIN,!INVERT_Y_DIR); #ifdef DEBUG_STEPS - count_direction[Y_AXIS]=1; + count_direction[Y_AXIS]=1; + #endif + #if Y_MAX_PIN > -1 + if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ + step_events_completed = current_block->step_event_count; + } #endif -#if Y_MAX_PIN > -1 - if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ - step_events_completed = current_block->step_event_count; - } -#endif } if ((out_bits & (1< -1 - if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } -#endif + #if Z_MIN_PIN > -1 + if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } + #endif } else { // +direction - WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - #ifdef DEBUG_STEPS + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + #ifdef DEBUG_STEPS count_direction[Z_AXIS]=1; - #endif -#if Z_MAX_PIN > -1 + #endif + #if Z_MAX_PIN > -1 if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ step_events_completed = current_block->step_event_count; } -#endif + #endif } -#ifndef ADVANCE - if ((out_bits & (1<steps_x; @@ -349,7 +352,7 @@ if ((out_bits & (1<step_event_count; WRITE(X_STEP_PIN, LOW); #ifdef DEBUG_STEPS - count_position[X_AXIS]+=count_direction[X_AXIS]; + count_position[X_AXIS]+=count_direction[X_AXIS]; #endif } @@ -359,7 +362,7 @@ if ((out_bits & (1<step_event_count; WRITE(Y_STEP_PIN, LOW); #ifdef DEBUG_STEPS - count_position[Y_AXIS]+=count_direction[Y_AXIS]; + count_position[Y_AXIS]+=count_direction[Y_AXIS]; #endif } @@ -369,18 +372,18 @@ if ((out_bits & (1<step_event_count; WRITE(Z_STEP_PIN, LOW); #ifdef DEBUG_STEPS - count_position[Z_AXIS]+=count_direction[Z_AXIS]; + count_position[Z_AXIS]+=count_direction[Z_AXIS]; #endif } -#ifndef ADVANCE - counter_e += current_block->steps_e; - if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); - counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); - } -#endif //!ADVANCE + #ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } + #endif //!ADVANCE step_events_completed += 1; if(step_events_completed >= current_block->step_event_count) break; } @@ -397,9 +400,9 @@ if ((out_bits & (1< 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); + unsigned char old_OCR0A; + // Timer interrupt for E. e_steps is set in the main routine; + // Timer 0 is shared with millies + ISR(TIMER0_COMPA_vect) + { + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; } - old_OCR0A += 25; // 10kHz interrupt - OCR0A = old_OCR0A; -} #endif // ADVANCE void st_init() { //Initialize Dir Pins -#if X_DIR_PIN > -1 - SET_OUTPUT(X_DIR_PIN); -#endif -#if Y_DIR_PIN > -1 - SET_OUTPUT(Y_DIR_PIN); -#endif -#if Z_DIR_PIN > -1 - SET_OUTPUT(Z_DIR_PIN); -#endif -#if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); -#endif + #if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); + #endif + #if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); + #endif + #if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); + #endif + #if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); + #endif //Initialize Enable Pins - steppers default to disabled. -#if (X_ENABLE_PIN > -1) - SET_OUTPUT(X_ENABLE_PIN); - if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); -#endif -#if (Y_ENABLE_PIN > -1) - SET_OUTPUT(Y_ENABLE_PIN); - if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); -#endif -#if (Z_ENABLE_PIN > -1) - SET_OUTPUT(Z_ENABLE_PIN); - if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); -#endif -#if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); -#endif + #if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); + #endif + #if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); + #endif + #if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); + #endif + #if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); + #endif //endstops and pullups -#ifdef ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - WRITE(X_MIN_PIN,HIGH); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - WRITE(X_MAX_PIN,HIGH); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - WRITE(Y_MIN_PIN,HIGH); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - WRITE(Y_MAX_PIN,HIGH); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - WRITE(Z_MIN_PIN,HIGH); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - WRITE(Z_MAX_PIN,HIGH); -#endif -#else //ENDSTOPPULLUPS -#if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); -#endif -#if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); -#endif -#if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); -#endif -#if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); -#endif -#if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); -#endif -#if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); -#endif -#endif //ENDSTOPPULLUPS + #ifdef ENDSTOPPULLUPS + #if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); + #endif + #if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); + #endif + #if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); + #endif + #if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); + #endif + #if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); + #endif + #if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); + #endif + #else //ENDSTOPPULLUPS + #if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + #endif + #if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + #endif + #if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + #endif + #if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + #endif + #if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + #endif + #if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + #endif + #endif //ENDSTOPPULLUPS //Initialize Step Pins -#if (X_STEP_PIN > -1) - SET_OUTPUT(X_STEP_PIN); -#endif -#if (Y_STEP_PIN > -1) - SET_OUTPUT(Y_STEP_PIN); -#endif -#if (Z_STEP_PIN > -1) - SET_OUTPUT(Z_STEP_PIN); -#endif -#if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); -#endif + #if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); + #endif + #if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); + #endif + #if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); + #endif + #if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); + #endif // waveform generation = 0100 = CTC TCCR1B &= ~(1< 10){ - pid_output = PID_MAX; - pid_reset = true; - } - else if(pid_error < -10) { - pid_output = 0; - pid_reset = true; - } - else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; - } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; - //K1 defined in Configuration.h in the PID settings - #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; - #ifdef PID_ADD_EXTRUSION_RATE - pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high - #endif - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - } -#endif //PID_OPENLOOP -#ifdef PID_DEBUG - SERIAL_ECHOLN(" PIDDEBUG Input "< 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + //K1 defined in Configuration.h in the PID settings + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; + #ifdef PID_ADD_EXTRUSION_RATE + pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high + #endif + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } + #endif //PID_OPENLOOP + #ifdef PID_DEBUG + SERIAL_ECHOLN(" PIDDEBUG Input "<= target_raw[0]) { WRITE(HEATER_0_PIN,LOW); @@ -157,7 +156,7 @@ CRITICAL_SECTION_END; { WRITE(HEATER_0_PIN,HIGH); } -#endif + #endif if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) return; @@ -173,7 +172,7 @@ CRITICAL_SECTION_END; WRITE(HEATER_1_PIN,HIGH); } #endif - } +} // Takes hot end temperature value as input and returns corresponding raw value. // For a thermistor, it uses the RepRap thermistor temp table. @@ -300,26 +299,26 @@ float analog2tempBed(int raw) { void tp_init() { -#if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); -#endif -#if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); -#endif -#if (HEATER_2_PIN > -1) - SET_OUTPUT(HEATER_2_PIN); -#endif + #if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); + #endif + #if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); + #endif + #if (HEATER_2_PIN > -1) + SET_OUTPUT(HEATER_2_PIN); + #endif -#ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; -#endif //PIDTEMP + #ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + #endif //PIDTEMP -// Set analog inputs + // Set analog inputs ADCSRA = 1< -1 + #if TEMP_0_PIN > -1 target_raw[0]=0; #if HEATER_0_PIN > -1 WRITE(HEATER_0_PIN,LOW); #endif #endif + #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif #endif + #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif #endif } @@ -376,75 +377,75 @@ ISR(TIMER0_COMPB_vect) switch(temp_state) { case 0: // Prepare TEMP_0 - #if (TEMP_0_PIN > -1) - #if TEMP_0_PIN < 8 - DIDR0 = 1 << TEMP_0_PIN; - #else - DIDR2 = 1<<(TEMP_0_PIN - 8); - ADCSRB = 1< -1) + #if TEMP_0_PIN < 8 + DIDR0 = 1 << TEMP_0_PIN; + #else + DIDR2 = 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) - raw_temp_0_value += ADC; - #endif - temp_state = 2; - break; + #if (TEMP_0_PIN > -1) + raw_temp_0_value += ADC; + #endif + temp_state = 2; + break; case 2: // Prepare TEMP_1 - #if (TEMP_1_PIN > -1) - #if TEMP_1_PIN < 7 - DIDR0 = 1< -1) + #if TEMP_1_PIN < 7 + DIDR0 = 1< -1) - raw_temp_1_value += ADC; - #endif - temp_state = 4; - break; + #if (TEMP_1_PIN > -1) + raw_temp_1_value += ADC; + #endif + temp_state = 4; + break; case 4: // Prepare TEMP_2 - #if (TEMP_2_PIN > -1) - #if TEMP_2_PIN < 7 - DIDR0 = 1 << TEMP_2_PIN; - #else - DIDR2 = 1<<(TEMP_2_PIN - 8); - ADCSRB = 1< -1) + #if TEMP_2_PIN < 7 + DIDR0 = 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) - raw_temp_2_value += ADC; - #endif - temp_state = 0; - temp_count++; - break; + #if (TEMP_2_PIN > -1) + raw_temp_2_value += ADC; + #endif + temp_state = 0; + temp_count++; + break; default: - SERIAL_ERRORLN("Temp measurement error!"); - break; + SERIAL_ERRORLN("Temp measurement error!"); + break; } if(temp_count >= 16) // 6 ms * 16 = 96ms. @@ -472,67 +473,71 @@ ISR(TIMER0_COMPB_vect) raw_temp_0_value = 0; raw_temp_1_value = 0; raw_temp_2_value = 0; -#ifdef HEATER_0_MAXTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 0 switched off. MAXTEMP triggered !!"); - kill(); - } + #ifdef HEATER_0_MAXTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 0 switched off. MAXTEMP triggered !!"); + kill(); + } + #endif + #endif + #ifdef HEATER_1_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + if(current_raw[2] >= maxttemp_1) { + analogWrite(HEATER_2_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 1 switched off. MAXTEMP triggered !!"); + kill() + } + #endif + #endif //MAXTEMP + + #ifdef HEATER_0_MINTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 0 switched off. MINTEMP triggered !!"); + kill(); + } + #endif #endif -#endif -#ifdef HEATER_1_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - if(current_raw[2] >= maxttemp_1) { - analogWrite(HEATER_2_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 1 switched off. MAXTEMP triggered !!"); - kill() - } + + #ifdef HEATER_1_MINTEMP + #if (HEATER_2_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + analogWrite(HEATER_2_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 1 switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif //MAXTEMP + + #ifdef BED_MINTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + SERIAL_ERRORLN("Temperatur heated bed switched off. MINTEMP triggered !!"); + kill(); + } + #endif #endif -#endif //MAXTEMP -#ifdef HEATER_0_MINTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 0 switched off. MINTEMP triggered !!"); - kill(); - } + + #ifdef BED_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + SERIAL_ERRORLN("Temperature heated bed switched off. MAXTEMP triggered !!"); + kill(); + } + #endif #endif -#endif -#ifdef HEATER_1_MINTEMP - #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - analogWrite(HEATER_2_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 1 switched off. MINTEMP triggered !!"); - kill(); - } - #endif -#endif //MAXTEMP -#ifdef BED_MINTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - SERIAL_ERRORLN("Temperatur heated bed switched off. MINTEMP triggered !!"); - kill(); - } - #endif -#endif -#ifdef BED_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - SERIAL_ERRORLN("Temperature heated bed switched off. MAXTEMP triggered !!"); - kill(); - } - #endif -#endif } } diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 44d54db14..9c4b59a24 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -27,9 +27,11 @@ #include "stepper.h" #endif +// public functions void tp_init(); //initialise the heating void manage_heater(); //it is critical that this is called periodically. + enum TempSensor {TEMPSENSOR_HOTEND_0=0,TEMPSENSOR_BED=1, TEMPSENSOR_HOTEND_1=2}; //low leven conversion routines @@ -41,9 +43,11 @@ float analog2tempBed(int raw); extern int target_raw[3]; extern int current_raw[3]; extern float Kp,Ki,Kd,Kc; + #ifdef PIDTEMP extern float pid_setpoint ; #endif + #ifdef WATCHPERIOD extern int watch_raw[3] ; extern unsigned long watchmillis; @@ -63,15 +67,15 @@ inline float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTE inline float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; inline float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSOR_BED]);}; -inline void setTargetHotend0(float celsius) +inline void setTargetHotend0(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius); #ifdef PIDTEMP pid_setpoint = celsius; #endif //PIDTEMP }; -inline void setTargetHotend1(float celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; -inline void setTargetBed(float celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; +inline void setTargetHotend1(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; +inline void setTargetBed(const float &celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; inline bool isHeatingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; inline bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; @@ -84,16 +88,5 @@ inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMP void disable_heater(); void setWatch(); -#ifdef HEATER_0_USES_THERMISTOR - #define HEATERSOURCE 1 -#endif -#ifdef BED_USES_THERMISTOR - #define BEDSOURCE 1 -#endif - - - - - #endif diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index b7092c9cb..18d1b7f24 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -9,107 +9,48 @@ void lcd_status(const char* message); void beep(); void buttons_check(); - #define LCDSTATUSRIGHT + #define LCD_UPDATE_INTERVAL 100 #define STATUSTIMEOUT 15000 - #include "Configuration.h" #include extern LiquidCrystal lcd; - //lcd display size -#ifdef NEWPANEL - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 + #ifdef NEWPANEL - #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 5 - #define LCD_PINS_D7 6 - - //buttons are directly attached - #define BTN_EN1 40 - #define BTN_EN2 42 - #define BTN_ENC 19 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - - #define SDCARDDETECT 38 - - #define EN_C (1<>1; - if(READ(SHIFT_OUT)) - newbutton|=(1<<7); - WRITE(SHIFT_CLK,HIGH); - WRITE(SHIFT_CLK,LOW); - } - buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 -#endif + #ifdef NEWPANEL + uint8_t newbutton=0; + if(READ(BTN_EN1)==0) newbutton|=EN_A; + if(READ(BTN_EN2)==0) newbutton|=EN_B; + if((blocking>1; + if(READ(SHIFT_OUT)) + newbutton|=(1<<7); + WRITE(SHIFT_CLK,HIGH); + WRITE(SHIFT_CLK,LOW); + } + buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 + #endif + char enc=0; if(buttons&EN_A) enc|=(1<<0); @@ -212,7 +211,6 @@ void buttons_check() } } lastenc=enc; -// busy=false; } #endif @@ -223,9 +221,9 @@ MainMenu::MainMenu() displayStartingRow=0; activeline=0; force_lcd_update=true; -#ifdef ULTIPANEL - buttons_init(); -#endif + #ifdef ULTIPANEL + buttons_init(); + #endif lcd_init(); linechanging=false; } @@ -1154,12 +1152,13 @@ uint8_t getnrfilenames() cnt++; } return cnt; +#else + return 0; #endif } void MainMenu::showSD() { - #ifdef SDSUPPORT uint8_t line=0; @@ -1205,11 +1204,11 @@ void MainMenu::showSD() if(force_lcd_update) { lcd.setCursor(0,line); -#ifdef CARDINSERTED + #ifdef CARDINSERTED if(CARDINSERTED) -#else + #else if(true) -#endif + #endif { lcd.print(" \004Refresh"); } @@ -1306,9 +1305,9 @@ void MainMenu::showMainMenu() { //if(int(encoderpos/lcdslow)!=int(lastencoderpos/lcdslow)) // force_lcd_update=true; -#ifndef ULTIPANEL - force_lcd_update=false; -#endif + #ifndef ULTIPANEL + force_lcd_update=false; + #endif //Serial.println((int)activeline); if(force_lcd_update) clear(); @@ -1347,17 +1346,17 @@ void MainMenu::showMainMenu() beepshort(); } }break; -#ifdef SDSUPPORT + #ifdef SDSUPPORT case ItemM_file: { if(force_lcd_update) { lcd.setCursor(0,line); -#ifdef CARDINSERTED - if(CARDINSERTED) -#else - if(true) -#endif + #ifdef CARDINSERTED + if(CARDINSERTED) + #else + if(true) + #endif { if(sdmode) lcd.print(" Stop Print \x7E"); @@ -1370,7 +1369,7 @@ void MainMenu::showMainMenu() } } #ifdef CARDINSERTED - if(CARDINSERTED) + if(CARDINSERTED) #endif if((activeline==line)&&CLICKED) { @@ -1380,28 +1379,30 @@ void MainMenu::showMainMenu() beepshort(); } }break; -#endif + #endif default: SERIAL_ERRORLN("Something is wrong in the MenuStructure."); break; } } - if(activeline<0) activeline=0; - if(activeline>=LCD_HEIGHT) activeline=LCD_HEIGHT-1; + if(activeline<0) + activeline=0; + if(activeline>=LCD_HEIGHT) + activeline=LCD_HEIGHT-1; if((encoderpos!=lastencoderpos)||force_lcd_update) { lcd.setCursor(0,activeline);lcd.print(activeline?' ':' '); if(encoderpos<0) encoderpos=0; - if(encoderpos>3*lcdslow) encoderpos=3*lcdslow; + if(encoderpos>3*lcdslow) + encoderpos=3*lcdslow; activeline=abs(encoderpos/lcdslow)%LCD_HEIGHT; - if(activeline<0) activeline=0; - if(activeline>=LCD_HEIGHT) activeline=LCD_HEIGHT-1; + if(activeline<0) + activeline=0; + if(activeline>=LCD_HEIGHT) + activeline=LCD_HEIGHT-1; lastencoderpos=encoderpos; lcd.setCursor(0,activeline);lcd.print(activeline?'>':'\003'); } - - - } void MainMenu::update() @@ -1409,25 +1410,24 @@ void MainMenu::update() static MainStatus oldstatus=Main_Menu; //init automatically causes foce_lcd_update=true static long timeoutToStatus=0; static bool oldcardstatus=false; -#ifdef CARDINSERTED - if((CARDINSERTED != oldcardstatus)) - { - force_lcd_update=true; - oldcardstatus=CARDINSERTED; - //Serial.println("echo: SD CHANGE"); - if(CARDINSERTED) + #ifdef CARDINSERTED + if((CARDINSERTED != oldcardstatus)) { - initsd(); - lcd_status("Card inserted"); + force_lcd_update=true; + oldcardstatus=CARDINSERTED; + //Serial.println("echo: SD CHANGE"); + if(CARDINSERTED) + { + initsd(); + lcd_status("Card inserted"); + } + else + { + sdactive=false; + lcd_status("Card removed"); + } } - else - { - sdactive=false; - lcd_status("Card removed"); - - } - } -#endif + #endif if(status!=oldstatus) { @@ -1484,9 +1484,9 @@ void MainMenu::update() //return for string conversion routines -char conv[8]; +static char conv[8]; -/// convert float to string with +123.4 format +// convert float to string with +123.4 format char *ftostr3(const float &x) { //sprintf(conv,"%5.1f",x); @@ -1497,6 +1497,7 @@ char *ftostr3(const float &x) conv[3]=0; return conv; } + char *itostr2(const uint8_t &x) { //sprintf(conv,"%5.1f",x); @@ -1506,10 +1507,10 @@ char *itostr2(const uint8_t &x) conv[2]=0; return conv; } -/// convert float to string with +123.4 format + +// convert float to string with +123.4 format char *ftostr31(const float &x) { - //sprintf(conv,"%5.1f",x); int xx=x*10; conv[0]=(xx>=0)?'+':'-'; xx=abs(xx); @@ -1524,7 +1525,6 @@ char *ftostr31(const float &x) char *itostr31(const int &xx) { - //sprintf(conv,"%5.1f",x); conv[0]=(xx>=0)?'+':'-'; conv[1]=(xx/1000)%10+'0'; conv[2]=(xx/100)%10+'0'; @@ -1534,6 +1534,7 @@ char *itostr31(const int &xx) conv[6]=0; return conv; } + char *itostr3(const int &xx) { conv[0]=(xx/100)%10+'0'; @@ -1553,7 +1554,7 @@ char *itostr4(const int &xx) return conv; } -/// convert float to string with +1234.5 format +// convert float to string with +1234.5 format char *ftostr51(const float &x) { int xx=x*10; @@ -1587,11 +1588,9 @@ char *fillto(int8_t n,char *c) } ret[n]=0; return ret; - } -#else -inline void lcd_status() {}; -#endif + +#endif //ULTRA_LCD diff --git a/Marlin/watchdog.h b/Marlin/watchdog.h index 7dd31f9f7..44ee9de35 100644 --- a/Marlin/watchdog.h +++ b/Marlin/watchdog.h @@ -1,13 +1,16 @@ #ifndef __WATCHDOGH #define __WATCHDOGH #include "Configuration.h" -//#ifdef USE_WATCHDOG +#ifdef USE_WATCHDOG -/// intialise watch dog with a 1 sec interrupt time -void wd_init(); -/// pad the dog/reset watchdog. MUST be called at least every second after the first wd_init or avr will go into emergency procedures.. -void wd_reset(); + // intialise watch dog with a 1 sec interrupt time + void wd_init(); + // pad the dog/reset watchdog. MUST be called at least every second after the first wd_init or avr will go into emergency procedures.. + void wd_reset(); -//#endif +#else + inline void wd_init() {}; + inline void wd_reset() {}; +#endif #endif diff --git a/Marlin/watchdog.pde b/Marlin/watchdog.pde index 09d881d1d..71868cec5 100644 --- a/Marlin/watchdog.pde +++ b/Marlin/watchdog.pde @@ -3,7 +3,7 @@ #include #include -volatile uint8_t timeout_seconds=0; +static volatile uint8_t timeout_seconds=0; void(* ctrlaltdelete) (void) = 0; //does not work on my atmega2560 From 76b3f805c08f1ceb0b4a69523d5fd7b1a331c7a6 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 6 Nov 2011 19:30:04 +0100 Subject: [PATCH 030/430] Added teensylu pins --- Marlin/Configuration.h | 4 +- Marlin/pins.h | 1330 +++++++++++++++++++++------------------- 2 files changed, 695 insertions(+), 639 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b437bfb01..1c7773303 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -14,8 +14,9 @@ // Gen6 = 5, // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, +// Teensylu = 8 #define MOTHERBOARD 7 -//#define MOTHERBOARD 5 + //// Thermistor settings: @@ -58,7 +59,6 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // #define ULTRA_LCD //any lcd -#define ULTIPANEL #define ULTIPANEL #ifdef ULTIPANEL //#define NEWPANEL //enable this if you have a click-encoder panel diff --git a/Marlin/pins.h b/Marlin/pins.h index 4df1bd0e3..807709e2b 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -1,638 +1,694 @@ -#ifndef PINS_H -#define PINS_H - -/**************************************************************************************** -* Arduino pin assignment -* -* ATMega168 -* +-\/-+ -* PC6 1| |28 PC5 (AI 5 / D19) -* (D 0) PD0 2| |27 PC4 (AI 4 / D18) -* (D 1) PD1 3| |26 PC3 (AI 3 / D17) -* (D 2) PD2 4| |25 PC2 (AI 2 / D16) -* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) -* (D 4) PD4 6| |23 PC0 (AI 0 / D14) -* VCC 7| |22 GND -* GND 8| |21 AREF -* PB6 9| |20 AVCC -* PB7 10| |19 PB5 (D 13) -* PWM+ (D 5) PD5 11| |18 PB4 (D 12) -* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM -* (D 7) PD7 13| |16 PB2 (D 10) PWM -* (D 8) PB0 14| |15 PB1 (D 9) PWM -* +----+ -****************************************************************************************/ -#if MOTHERBOARD == 0 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega168__ -#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. -#endif - -#define X_STEP_PIN 2 -#define X_DIR_PIN 3 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 4 -#define X_MAX_PIN 9 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN 13 - -#define Z_STEP_PIN 19 -#define Z_DIR_PIN 18 -#define Z_ENABLE_PIN 5 -#define Z_MIN_PIN 17 -#define Z_MAX_PIN 16 - -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN -1 -#define PS_ON_PIN 15 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#endif - - - -/**************************************************************************************** -* Sanguino/RepRap Motherboard with direct-drive extruders -* -* ATMega644P -* -* +---\/---+ -* (D 0) PB0 1| |40 PA0 (AI 0 / D31) -* (D 1) PB1 2| |39 PA1 (AI 1 / D30) -* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) -* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) -* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) -* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) -* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) -* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) -* RST 9| |32 AREF -* VCC 10| |31 GND -* GND 11| |30 AVCC -* XTAL2 12| |29 PC7 (D 23) -* XTAL1 13| |28 PC6 (D 22) -* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI -* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO -* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS -* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK -* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA -* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL -* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM -* +--------+ -* -****************************************************************************************/ -#if MOTHERBOARD == 1 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 19 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PIN 29 -#define Z_DIR_PIN 30 -#define Z_ENABLE_PIN 31 -#define Z_MIN_PIN 2 -#define Z_MAX_PIN 1 - -#define E_STEP_PIN 12 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN 3 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN 0 -#define FAN_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 14 -#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ - - - -#endif - - -/**************************************************************************************** -* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* -* -****************************************************************************************/ -#if MOTHERBOARD == 2 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 24 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PINN 27 -#define Z_DIR_PINN 28 -#define Z_ENABLE_PIN 29 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 31 - -#define E_STEP_PIN 17 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS 4 -#define LED_PIN 0 - -#define SD_CARD_WRITE 2 -#define SD_CARD_DETECT 3 -#define SD_CARD_SELECT 4 - -//our RS485 pins -#define TX_ENABLE_PIN 12 -#define RX_ENABLE_PIN 13 - -//pin for controlling the PSU. -#define PS_ON_PIN 14 - -#define FAN_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN -1 -#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - - - -#endif - -/**************************************************************************************** -* Arduino Mega pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 33 -#define MOTHERBOARD 3 -#define RAMPS_V_1_3 -#endif -#if MOTHERBOARD == 3 -#define KNOWN_BOARD 1 - -//////////////////FIX THIS////////////// -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 -// #define RAMPS_V_1_3 -// #define RAMPS_V_1_0 - -#ifdef RAMPS_V_1_3 - -#define X_STEP_PIN 54 -#define X_DIR_PIN 55 -#define X_ENABLE_PIN 38 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. - -#define Y_STEP_PIN 60 -#define Y_DIR_PIN 61 -#define Y_ENABLE_PIN 56 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN -1 //15 - -#define Z_STEP_PIN 46 -#define Z_DIR_PIN 48 -#define Z_ENABLE_PIN 62 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E_STEP_PIN 26 -#define E_DIR_PIN 28 -#define E_ENABLE_PIN 24 - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 9 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#define HEATER_0_PIN 10 -#define HEATER_1_PIN 8 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 13 // ANALOG NUMBERING -#define TEMP_1_PIN 14 // ANALOG NUMBERING -#define TEMP_2_PIN -1 // ANALOG NUMBERING - - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default - -#define X_STEP_PIN 26 -#define X_DIR_PIN 28 -#define X_ENABLE_PIN 24 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 - -#define Y_STEP_PIN 38 -#define Y_DIR_PIN 40 -#define Y_ENABLE_PIN 36 -#define Y_MIN_PIN 16 -#define Y_MAX_PIN -1 //17 - -#define Z_STEP_PIN 44 -#define Z_DIR_PIN 46 -#define Z_ENABLE_PIN 42 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E_STEP_PIN 32 -#define E_DIR_PIN 34 -#define E_ENABLE_PIN 30 - -#define SDPOWER 48 -#define SDSS 53 -#define LED_PIN 13 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - - - -#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 - #define HEATER_0_PIN 12 // RAMPS 1.0 - #define HEATER_1_PIN -1 // RAMPS 1.0 - #define FAN_PIN 11 // RAMPS 1.0 - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 - #define HEATER_0_PIN 10 // RAMPS 1.1 - #define HEATER_1_PIN 8 // RAMPS 1.1 - #define FAN_PIN 9 // RAMPS 1.1 -#endif -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#endif - -// SPI for Max6675 Thermocouple - -#ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 - #define MISO_PIN 50 - #define MOSI_PIN 51 - #define MAX6675_SS 53 -#else - #define MAX6675_SS 49 -#endif - - -#endif -/**************************************************************************************** -* Duemilanove w/ ATMega328P pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 4 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega328P__ -#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 19 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 17 -#define X_MAX_PIN -1 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 13 -#define Z_DIR_PIN 3 -#define Z_ENABLE_PIN 2 -#define Z_MIN_PIN 4 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN 5 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - -#endif - -/**************************************************************************************** -* Gen6 pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 5 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ - #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -//x axis pins - #define X_STEP_PIN 15 - #define X_DIR_PIN 18 - #define X_ENABLE_PIN 19 - #define X_MIN_PIN 20 - #define X_MAX_PIN -1 - - //y axis pins - #define Y_STEP_PIN 23 - #define Y_DIR_PIN 22 - #define Y_ENABLE_PIN 24 - #define Y_MIN_PIN 25 - #define Y_MAX_PIN -1 - - //z axis pins - #define Z_STEP_PIN 27 - #define Z_DIR_PIN 28 - #define Z_ENABLE_PIN 29 - #define Z_MIN_PIN 30 - #define Z_MAX_PIN -1 - - //extruder pins - #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 - #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 - #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 - #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 - #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 - #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 - #define HEATER_2_PIN -1 - - #define SDPOWER -1 - #define SDSS 17 - #define LED_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_2_PIN -1 - #define FAN_PIN -1 //changed @ rkoeppl 20110410 - #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 - //our pin for debugging. - - #define DEBUG_PIN 0 - - //our RS485 pins - #define TX_ENABLE_PIN 12 - #define RX_ENABLE_PIN 13 - -#endif - -/**************************************************************************************** -* Sanguinololu pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 62 -#define MOTHERBOARD 6 -#define SANGUINOLOLU_V_1_2 -#endif -#if MOTHERBOARD == 6 -#define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 21 -#define X_MIN_PIN 18 -#define X_MAX_PIN -2 - -#define Y_STEP_PIN 22 -#define Y_DIR_PIN 23 -#define Y_MIN_PIN 19 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 3 -#define Z_DIR_PIN 2 -#define Z_MIN_PIN 20 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 1 -#define E_DIR_PIN 0 - -#define LED_PIN -1 - -#define FAN_PIN -1 - -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 13 // (extruder) - -#ifdef SANGUINOLOLU_V_1_2 - -#define HEATER_1_PIN 12 // (bed) -#define X_ENABLE_PIN 14 -#define Y_ENABLE_PIN 14 -#define Z_ENABLE_PIN 26 -#define E_ENABLE_PIN 14 - -#else - -#define HEATER_1_PIN 14 // (bed) -#define X_ENABLE_PIN -1 -#define Y_ENABLE_PIN -1 -#define Z_ENABLE_PIN -1 -#define E_ENABLE_PIN -1 - -#endif - -#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) -#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) -#define TEMP_2_PIN -1 -#define SDPOWER -1 -#define SDSS 31 -#define HEATER_2_PIN -1 - -#endif - - -#if MOTHERBOARD == 7 -#define KNOWN_BOARD -/***************************************************************** -* Ultimaker pin assignment -******************************************************************/ - -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -#define X_STEP_PIN 25 -#define X_DIR_PIN 23 -#define X_MIN_PIN 22 -#define X_MAX_PIN 24 -#define X_ENABLE_PIN 27 - -#define Y_STEP_PIN 31 -#define Y_DIR_PIN 33 -#define Y_MIN_PIN 26 -#define Y_MAX_PIN 28 -#define Y_ENABLE_PIN 29 - -#define Z_STEP_PIN 37 -#define Z_DIR_PIN 39 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 32 -#define Z_ENABLE_PIN 35 - -#define HEATER_1_PIN 4 -#define TEMP_1_PIN 11 - -#define EXTRUDER_0_STEP_PIN 43 -#define EXTRUDER_0_DIR_PIN 45 -#define EXTRUDER_0_ENABLE_PIN 41 -#define HEATER_0_PIN 2 -#define TEMP_0_PIN 8 - -#define EXTRUDER_1_STEP_PIN 49 -#define EXTRUDER_1_DIR_PIN 47 -#define EXTRUDER_1_ENABLE_PIN 51 -#define EXTRUDER_1_HEATER_PIN 3 -#define EXTRUDER_1_TEMPERATURE_PIN 10 -#define HEATER_2_PIN 51 -#define TEMP_2_PIN 3 - - - -#define E_STEP_PIN EXTRUDER_0_STEP_PIN -#define E_DIR_PIN EXTRUDER_0_DIR_PIN -#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 7 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#ifdef ULTRA_LCD - - #ifdef NEWPANEL - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 5 - #define LCD_PINS_D7 6 - - //buttons are directly attached - #define BTN_EN1 40 - #define BTN_EN2 42 - #define BTN_ENC 19 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - - #define SDCARDDETECT 38 - - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - #else //old style panel with shift register - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - //buttons are attached to a shift register - #define SHIFT_CLK 38 - #define SHIFT_LD 42 - #define SHIFT_OUT 40 - #define SHIFT_EN 17 - - #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 5 - #define LCD_PINS_D4 6 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 20 - #define LCD_PINS_D7 19 - - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - - - //bits in the shift register that carry the buttons for: - // left up center down right red - #define BL_LE 7 - #define BL_UP 6 - #define BL_MI 5 - #define BL_DW 4 - #define BL_RI 3 - #define BL_ST 2 - - #define BLEN_B 1 - #define BLEN_A 0 - #endif -#endif //ULTRA_LCD - -#endif - - -#ifndef KNOWN_BOARD -#error Unknown MOTHERBOARD value in configuration.h -#endif - -//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} - +#ifndef PINS_H +#define PINS_H + +/**************************************************************************************** +* Arduino pin assignment +* +* ATMega168 +* +-\/-+ +* PC6 1| |28 PC5 (AI 5 / D19) +* (D 0) PD0 2| |27 PC4 (AI 4 / D18) +* (D 1) PD1 3| |26 PC3 (AI 3 / D17) +* (D 2) PD2 4| |25 PC2 (AI 2 / D16) +* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) +* (D 4) PD4 6| |23 PC0 (AI 0 / D14) +* VCC 7| |22 GND +* GND 8| |21 AREF +* PB6 9| |20 AVCC +* PB7 10| |19 PB5 (D 13) +* PWM+ (D 5) PD5 11| |18 PB4 (D 12) +* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM +* (D 7) PD7 13| |16 PB2 (D 10) PWM +* (D 8) PB0 14| |15 PB1 (D 9) PWM +* +----+ +****************************************************************************************/ +#if MOTHERBOARD == 0 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega168__ +#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. +#endif + +#define X_STEP_PIN 2 +#define X_DIR_PIN 3 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 4 +#define X_MAX_PIN 9 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN 13 + +#define Z_STEP_PIN 19 +#define Z_DIR_PIN 18 +#define Z_ENABLE_PIN 5 +#define Z_MIN_PIN 17 +#define Z_MAX_PIN 16 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN 15 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#endif + + + +/**************************************************************************************** +* Sanguino/RepRap Motherboard with direct-drive extruders +* +* ATMega644P +* +* +---\/---+ +* (D 0) PB0 1| |40 PA0 (AI 0 / D31) +* (D 1) PB1 2| |39 PA1 (AI 1 / D30) +* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +* RST 9| |32 AREF +* VCC 10| |31 GND +* GND 11| |30 AVCC +* XTAL2 12| |29 PC7 (D 23) +* XTAL1 13| |28 PC6 (D 22) +* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +* +--------+ +* +****************************************************************************************/ +#if MOTHERBOARD == 1 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 19 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PIN 29 +#define Z_DIR_PIN 30 +#define Z_ENABLE_PIN 31 +#define Z_MIN_PIN 2 +#define Z_MAX_PIN 1 + +#define E_STEP_PIN 12 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN 3 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN 0 +#define FAN_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 14 +#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ + + + +#endif + + +/**************************************************************************************** +* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* +* +****************************************************************************************/ +#if MOTHERBOARD == 2 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PINN 27 +#define Z_DIR_PINN 28 +#define Z_ENABLE_PIN 29 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 31 + +#define E_STEP_PIN 17 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS 4 +#define LED_PIN 0 + +#define SD_CARD_WRITE 2 +#define SD_CARD_DETECT 3 +#define SD_CARD_SELECT 4 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#define FAN_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN -1 +#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + + + +#endif + +/**************************************************************************************** +* Arduino Mega pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 33 +#define MOTHERBOARD 3 +#define RAMPS_V_1_3 +#endif +#if MOTHERBOARD == 3 +#define KNOWN_BOARD 1 + +//////////////////FIX THIS////////////// +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 +// #define RAMPS_V_1_3 +// #define RAMPS_V_1_0 + +#ifdef RAMPS_V_1_3 + +#define X_STEP_PIN 54 +#define X_DIR_PIN 55 +#define X_ENABLE_PIN 38 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. + +#define Y_STEP_PIN 60 +#define Y_DIR_PIN 61 +#define Y_ENABLE_PIN 56 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 //15 + +#define Z_STEP_PIN 46 +#define Z_DIR_PIN 48 +#define Z_ENABLE_PIN 62 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 26 +#define E_DIR_PIN 28 +#define E_ENABLE_PIN 24 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 9 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#define HEATER_0_PIN 10 +#define HEATER_1_PIN 8 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 13 // ANALOG NUMBERING +#define TEMP_1_PIN 14 // ANALOG NUMBERING +#define TEMP_2_PIN -1 // ANALOG NUMBERING + + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default + +#define X_STEP_PIN 26 +#define X_DIR_PIN 28 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 + +#define Y_STEP_PIN 38 +#define Y_DIR_PIN 40 +#define Y_ENABLE_PIN 36 +#define Y_MIN_PIN 16 +#define Y_MAX_PIN -1 //17 + +#define Z_STEP_PIN 44 +#define Z_DIR_PIN 46 +#define Z_ENABLE_PIN 42 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 32 +#define E_DIR_PIN 34 +#define E_ENABLE_PIN 30 + +#define SDPOWER 48 +#define SDSS 53 +#define LED_PIN 13 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + + + +#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 + #define HEATER_0_PIN 12 // RAMPS 1.0 + #define HEATER_1_PIN -1 // RAMPS 1.0 + #define FAN_PIN 11 // RAMPS 1.0 + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 + #define HEATER_0_PIN 10 // RAMPS 1.1 + #define HEATER_1_PIN 8 // RAMPS 1.1 + #define FAN_PIN 9 // RAMPS 1.1 +#endif +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#endif + +// SPI for Max6675 Thermocouple + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 + #define MISO_PIN 50 + #define MOSI_PIN 51 + #define MAX6675_SS 53 +#else + #define MAX6675_SS 49 +#endif + + +#endif +/**************************************************************************************** +* Duemilanove w/ ATMega328P pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 4 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega328P__ +#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 17 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 13 +#define Z_DIR_PIN 3 +#define Z_ENABLE_PIN 2 +#define Z_MIN_PIN 4 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN 5 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + +#endif + +/**************************************************************************************** +* Gen6 pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 5 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +//x axis pins + #define X_STEP_PIN 15 + #define X_DIR_PIN 18 + #define X_ENABLE_PIN 19 + #define X_MIN_PIN 20 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 25 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 27 + #define Z_DIR_PIN 28 + #define Z_ENABLE_PIN 29 + #define Z_MIN_PIN 30 + #define Z_MAX_PIN -1 + + //extruder pins + #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 + #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 + #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 + #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 + #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 + #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 + #define HEATER_2_PIN -1 + + #define SDPOWER -1 + #define SDSS 17 + #define LED_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_2_PIN -1 + #define FAN_PIN -1 //changed @ rkoeppl 20110410 + #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 + //our pin for debugging. + + #define DEBUG_PIN 0 + + //our RS485 pins + #define TX_ENABLE_PIN 12 + #define RX_ENABLE_PIN 13 + +#endif + +/**************************************************************************************** +* Sanguinololu pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 62 +#define MOTHERBOARD 6 +#define SANGUINOLOLU_V_1_2 +#endif +#if MOTHERBOARD == 6 +#define KNOWN_BOARD 1 +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 21 +#define X_MIN_PIN 18 +#define X_MAX_PIN -2 + +#define Y_STEP_PIN 22 +#define Y_DIR_PIN 23 +#define Y_MIN_PIN 19 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 3 +#define Z_DIR_PIN 2 +#define Z_MIN_PIN 20 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 1 +#define E_DIR_PIN 0 + +#define LED_PIN -1 + +#define FAN_PIN -1 + +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 13 // (extruder) + +#ifdef SANGUINOLOLU_V_1_2 + +#define HEATER_1_PIN 12 // (bed) +#define X_ENABLE_PIN 14 +#define Y_ENABLE_PIN 14 +#define Z_ENABLE_PIN 26 +#define E_ENABLE_PIN 14 + +#else + +#define HEATER_1_PIN 14 // (bed) +#define X_ENABLE_PIN -1 +#define Y_ENABLE_PIN -1 +#define Z_ENABLE_PIN -1 +#define E_ENABLE_PIN -1 + +#endif + +#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) +#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define TEMP_2_PIN -1 +#define SDPOWER -1 +#define SDSS 31 +#define HEATER_2_PIN -1 + +#endif + + +#if MOTHERBOARD == 7 +#define KNOWN_BOARD +/***************************************************************** +* Ultimaker pin assignment +******************************************************************/ + +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +#define X_STEP_PIN 25 +#define X_DIR_PIN 23 +#define X_MIN_PIN 22 +#define X_MAX_PIN 24 +#define X_ENABLE_PIN 27 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_MIN_PIN 26 +#define Y_MAX_PIN 28 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 37 +#define Z_DIR_PIN 39 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 32 +#define Z_ENABLE_PIN 35 + +#define HEATER_1_PIN 4 +#define TEMP_1_PIN 11 + +#define EXTRUDER_0_STEP_PIN 43 +#define EXTRUDER_0_DIR_PIN 45 +#define EXTRUDER_0_ENABLE_PIN 41 +#define HEATER_0_PIN 2 +#define TEMP_0_PIN 8 + +#define EXTRUDER_1_STEP_PIN 49 +#define EXTRUDER_1_DIR_PIN 47 +#define EXTRUDER_1_ENABLE_PIN 51 +#define EXTRUDER_1_HEATER_PIN 3 +#define EXTRUDER_1_TEMPERATURE_PIN 10 +#define HEATER_2_PIN 51 +#define TEMP_2_PIN 3 + + + +#define E_STEP_PIN EXTRUDER_0_STEP_PIN +#define E_DIR_PIN EXTRUDER_0_DIR_PIN +#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 7 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#ifdef ULTRA_LCD + + #ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + #define LCD_PINS_RS 20 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 6 + + //buttons are directly attached + #define BTN_EN1 40 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 38 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + //buttons are attached to a shift register + #define SHIFT_CLK 38 + #define SHIFT_LD 42 + #define SHIFT_OUT 40 + #define SHIFT_EN 17 + + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 5 + #define LCD_PINS_D4 6 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 20 + #define LCD_PINS_D7 19 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + + //bits in the shift register that carry the buttons for: + // left up center down right red + #define BL_LE 7 + #define BL_UP 6 + #define BL_MI 5 + #define BL_DW 4 + #define BL_RI 3 + #define BL_ST 2 + + #define BLEN_B 1 + #define BLEN_A 0 + #endif +#endif //ULTRA_LCD + +#endif + +/**************************************************************************************** +* Teensylu 0.7 pin assingments (ATMEGA90USB) +* Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! +****************************************************************************************/ +#if MOTHERBOARD == 8 +#define MOTHERBOARD 8 +#define KNOWN_BOARD 1 + + +#define X_STEP_PIN 0 +#define X_DIR_PIN 1 +#define X_ENABLE_PIN 39 +#define X_MIN_PIN 13 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 2 +#define Y_DIR_PIN 3 +#define Y_ENABLE_PIN 38 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 4 +#define Z_DIR_PIN 5 +#define Z_ENABLE_PIN 23 +#define Z_MIN_PIN 15 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 6 +#define E_DIR_PIN 7 +#define E_ENABLE_PIN 19 + + + +#define HEATER_0_PIN 21 // Extruder +#define HEATER_1_PIN 20 // Bed +#define HEATER_2_PIN -1 +#define FAN_PIN 22 // Fan + +#define TEMP_0_PIN 7 // Extruder +#define TEMP_1_PIN 6 // Bed +#define TEMP_2_PIN -1 + +#define SDPOWER -1 +#define SDSS 8 +#define LED_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 +#define ALARM_PIN -1 + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support + #define SCK_PIN 9 + #define MISO_PIN 11 + #define MOSI_PIN 10 +#endif +#endif + +#ifndef KNOWN_BOARD +#error Unknown MOTHERBOARD value in configuration.h +#endif + +//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! +#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} + #endif From 79d1bfb5c02793c88f554002e04b5263d81703b7 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 19:36:29 +0100 Subject: [PATCH 031/430] made many possible variables static, so they cannot be used extern. --- Marlin/planner.cpp | 7 ++++-- Marlin/temperature.cpp | 48 +++++++++++++++++++++++------------------- Marlin/ultralcd.pde | 15 +++++++------ 3 files changed, 39 insertions(+), 31 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index b4271bab3..888fe45c8 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -65,6 +65,7 @@ #include "temperature.h" #include "ultralcd.h" +//public variables unsigned long minsegmenttime; float max_feedrate[4]; // set the max speeds float axis_steps_per_unit[4]; @@ -76,14 +77,16 @@ float max_xy_jerk; //speed than can be stopped at once, if i understand correctl float max_z_jerk; float mintravelfeedrate; unsigned long axis_steps_per_sqr_second[NUM_AXIS]; -// Manage heater variables. +long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode + +//private variables static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions static volatile unsigned char block_buffer_head; // Index of the next block to be pushed static volatile unsigned char block_buffer_tail; // Index of the block to process now // The current position of the tool in absolute steps -long position[4]; + #define ONE_MINUTE_OF_MICROSECONDS 60000000.0 diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index c25b9c312..1121c654e 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -42,25 +42,29 @@ int target_raw[3] = {0, 0, 0}; int current_raw[3] = {0, 0, 0}; -bool temp_meas_ready = false; +static bool temp_meas_ready = false; -unsigned long previous_millis_heater, previous_millis_bed_heater; +static unsigned long previous_millis_heater, previous_millis_bed_heater; #ifdef PIDTEMP - float temp_iState = 0; - float temp_dState = 0; - float pTerm; - float iTerm; - float dTerm; + //static cannot be external: + static float temp_iState = 0; + static float temp_dState = 0; + static float pTerm; + static float iTerm; + static float dTerm; //int output; - float pid_error; - float temp_iState_min; - float temp_iState_max; - float pid_setpoint = 0.0; - float pid_input; - float pid_output; - bool pid_reset; + static float pid_error; + static float temp_iState_min; + static float temp_iState_max; + static float pid_input; + static float pid_output; + static bool pid_reset; + + // probably used external float HeaterPower; + float pid_setpoint = 0.0; + float Kp=DEFAULT_Kp; float Ki=DEFAULT_Ki; @@ -69,29 +73,29 @@ unsigned long previous_millis_heater, previous_millis_bed_heater; #endif //PIDTEMP #ifdef WATCHPERIOD - int watch_raw[3] = {-1000,-1000,-1000}; - unsigned long watchmillis = 0; + static int watch_raw[3] = {-1000,-1000,-1000}; + static unsigned long watchmillis = 0; #endif //WATCHPERIOD #ifdef HEATER_0_MINTEMP - int minttemp_0 = temp2analog(HEATER_0_MINTEMP); + static int minttemp_0 = temp2analog(HEATER_0_MINTEMP); #endif //MINTEMP #ifdef HEATER_0_MAXTEMP - int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); + static int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); #endif //MAXTEMP #ifdef HEATER_1_MINTEMP - int minttemp_1 = temp2analog(HEATER_1_MINTEMP); + static int minttemp_1 = temp2analog(HEATER_1_MINTEMP); #endif //MINTEMP #ifdef HEATER_1_MAXTEMP - int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); + static int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); #endif //MAXTEMP #ifdef BED_MINTEMP - int bed_minttemp = temp2analog(BED_MINTEMP); + static int bed_minttemp = temp2analog(BED_MINTEMP); #endif //BED_MINTEMP #ifdef BED_MAXTEMP - int bed_maxttemp = temp2analog(BED_MAXTEMP); + static int bed_maxttemp = temp2analog(BED_MAXTEMP); #endif //BED_MAXTEMP void manage_heater() diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index a45b3683e..a0c56e926 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -3,14 +3,17 @@ extern volatile int feedmultiply; +extern volatile bool feedmultiplychanged; + extern long position[4]; -char messagetext[LCD_WIDTH]=""; +static char messagetext[LCD_WIDTH]=""; #include LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 -unsigned long previous_millis_lcd=0; +static unsigned long previous_millis_lcd=0; +static long previous_millis_buttons=0; inline int intround(const float &x){return int(0.5+x);} @@ -18,9 +21,9 @@ volatile char buttons=0; //the last checked buttons in a bit array. int encoderpos=0; short lastenc=0; #ifdef NEWPANEL - long blocking=0; + static long blocking=0; #else - long blocking[8]={0,0,0,0,0,0,0,0}; + static long blocking[8]={0,0,0,0,0,0,0,0}; #endif MainMenu menu; @@ -31,10 +34,9 @@ void lcd_status(const char* message) inline void clear() { - lcd.clear(); } -long previous_millis_buttons=0; + void lcd_init() { @@ -228,7 +230,6 @@ MainMenu::MainMenu() linechanging=false; } -extern volatile bool feedmultiplychanged; void MainMenu::showStatus() { From 5cf349a24a610d7223c5bc88193c07c713818028 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 6 Nov 2011 19:37:12 +0100 Subject: [PATCH 032/430] Fixed some arc bugs --- Marlin/Marlin.pde | 113 ++------------------------------------ Marlin/motion_control.cpp | 13 +++-- 2 files changed, 12 insertions(+), 114 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 6c2c6c87a..4cbe57088 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1139,8 +1139,8 @@ inline void get_coordinates() inline void get_arc_coordinates() { get_coordinates(); - if(code_seen("I")) offset[0] = code_value(); - if(code_seen("J")) offset[1] = code_value(); + if(code_seen('I')) offset[0] = code_value(); + if(code_seen('J')) offset[1] = code_value(); } void prepare_move() @@ -1152,119 +1152,16 @@ void prepare_move() } void prepare_arc_move(char isclockwise) { -#if 0 - if (radius_mode) { - /* - We need to calculate the center of the circle that has the designated radius and passes - through both the current position and the target position. This method calculates the following - set of equations where [x,y] is the vector from current to target position, d == magnitude of - that vector, h == hypotenuse of the triangle formed by the radius of the circle, the distance to - the center of the travel vector. A vector perpendicular to the travel vector [-y,x] is scaled to the - length of h [-y/d*h, x/d*h] and added to the center of the travel vector [x/2,y/2] to form the new point - [i,j] at [x/2-y/d*h, y/2+x/d*h] which will be the center of our arc. - - d^2 == x^2 + y^2 - h^2 == r^2 - (d/2)^2 - i == x/2 - y/d*h - j == y/2 + x/d*h - - O <- [i,j] - - | - r - | - - | - - | h - - | - [0,0] -> C -----------------+--------------- T <- [x,y] - | <------ d/2 ---->| - - C - Current position - T - Target position - O - center of circle that pass through both C and T - d - distance from C to T - r - designated radius - h - distance from center of CT to O - - Expanding the equations: - - d -> sqrt(x^2 + y^2) - h -> sqrt(4 * r^2 - x^2 - y^2)/2 - i -> (x - (y * sqrt(4 * r^2 - x^2 - y^2)) / sqrt(x^2 + y^2)) / 2 - j -> (y + (x * sqrt(4 * r^2 - x^2 - y^2)) / sqrt(x^2 + y^2)) / 2 - - Which can be written: - - i -> (x - (y * sqrt(4 * r^2 - x^2 - y^2))/sqrt(x^2 + y^2))/2 - j -> (y + (x * sqrt(4 * r^2 - x^2 - y^2))/sqrt(x^2 + y^2))/2 - - Which we for size and speed reasons optimize to: - - h_x2_div_d = sqrt(4 * r^2 - x^2 - y^2)/sqrt(x^2 + y^2) - i = (x - (y * h_x2_div_d))/2 - j = (y + (x * h_x2_div_d))/2 - - */ - - // Calculate the change in position along each selected axis - double x = target[gc.plane_axis_0]-gc.position[gc.plane_axis_0]; - double y = target[gc.plane_axis_1]-gc.position[gc.plane_axis_1]; - - clear_vector(offset); - double h_x2_div_d = -sqrt(4 * r*r - x*x - y*y)/hypot(x,y); // == -(h * 2 / d) - // If r is smaller than d, the arc is now traversing the complex plane beyond the reach of any - // real CNC, and thus - for practical reasons - we will terminate promptly: - if(isnan(h_x2_div_d)) { FAIL(STATUS_FLOATING_POINT_ERROR); return(gc.status_code); } - // Invert the sign of h_x2_div_d if the circle is counter clockwise (see sketch below) - if (gc.motion_mode == MOTION_MODE_CCW_ARC) { h_x2_div_d = -h_x2_div_d; } - - /* The counter clockwise circle lies to the left of the target direction. When offset is positive, - the left hand circle will be generated - when it is negative the right hand circle is generated. - - - T <-- Target position - - ^ - Clockwise circles with this center | Clockwise circles with this center will have - will have > 180 deg of angular travel | < 180 deg of angular travel, which is a good thing! - \ | / - center of arc when h_x2_div_d is positive -> x <----- | -----> x <- center of arc when h_x2_div_d is negative - | - | - - C <-- Current position */ - - - // Negative R is g-code-alese for "I want a circle with more than 180 degrees of travel" (go figure!), - // even though it is advised against ever generating such circles in a single line of g-code. By - // inverting the sign of h_x2_div_d the center of the circles is placed on the opposite side of the line of - // travel and thus we get the unadvisably long arcs as prescribed. - if (r < 0) { - h_x2_div_d = -h_x2_div_d; - r = -r; // Finished with r. Set to positive for mc_arc - } - // Complete the operation by calculating the actual center of the arc - offset[gc.plane_axis_0] = 0.5*(x-(y*h_x2_div_d)); - offset[gc.plane_axis_1] = 0.5*(y+(x*h_x2_div_d)); - - } else { // Offset mode specific computations -#endif - float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc - -// } - - // Set clockwise/counter-clockwise sign for mc_arc computations -// uint8_t isclockwise = false; -// if (gc.motion_mode == MOTION_MODE_CW_ARC) { isclockwise = true; } + float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc // Trace the arc mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60.0/100.0, r, isclockwise); - -// } // As far as the parser is concerned, the position is now == target. In reality the // motion control system might still be processing the action and the real tool position // in any intermediate location. - for(int ii=0; ii < NUM_AXIS; ii++) { - current_position[ii] = destination[ii]; + for(int i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; } } diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index 75396143a..c2fce52c7 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -19,12 +19,8 @@ along with Grbl. If not, see . */ -//#include "motion_control.h" #include "Configuration.h" #include "Marlin.h" -//#include -//#include -//#include #include "stepper.h" #include "planner.h" @@ -35,10 +31,10 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 { // int acceleration_manager_was_enabled = plan_is_acceleration_manager_enabled(); // plan_set_acceleration_manager_enabled(false); // disable acceleration management for the duration of the arc - SERIAL_ECHOLN("mc_arc."); float center_axis0 = position[axis_0] + offset[axis_0]; float center_axis1 = position[axis_1] + offset[axis_1]; float linear_travel = target[axis_linear] - position[axis_linear]; + float extruder_travel = target[E_AXIS] - position[E_AXIS]; float r_axis0 = -offset[axis_0]; // Radius vector from center to current location float r_axis1 = -offset[axis_1]; float rt_axis0 = target[axis_0] - center_axis0; @@ -60,6 +56,7 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 */ float theta_per_segment = angular_travel/segments; float linear_per_segment = linear_travel/segments; + float extruder_per_segment = extruder_travel/segments; /* Vector rotation by transformation matrix: r is the original vector, r_T is the rotated vector, and phi is the angle of rotation. Based on the solution approach by Jens Geisler. @@ -90,7 +87,7 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 float cos_T = 1-0.5*theta_per_segment*theta_per_segment; // Small angle approximation float sin_T = theta_per_segment; - float arc_target[3]; + float arc_target[4]; float sin_Ti; float cos_Ti; float r_axisi; @@ -99,6 +96,9 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 // Initialize the linear axis arc_target[axis_linear] = position[axis_linear]; + + // Initialize the extruder axis + arc_target[E_AXIS] = position[E_AXIS]; for (i = 1; i Date: Sun, 6 Nov 2011 19:48:37 +0100 Subject: [PATCH 033/430] static'ified Marlin.pde. --- Marlin/Configuration.h | 14 ++- Marlin/Marlin.pde | 223 ++++++++++++++++++++++------------------- 2 files changed, 127 insertions(+), 110 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index b437bfb01..722cb9642 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -61,11 +61,11 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define ULTIPANEL #define ULTIPANEL #ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel - #define SDSUPPORT - #define ULTRA_LCD - #define LCD_WIDTH 20 -#define LCD_HEIGHT 4 + //#define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #define LCD_WIDTH 20 + #define LCD_HEIGHT 4 #else //no panel but just lcd #ifdef ULTRA_LCD #define LCD_WIDTH 16 @@ -251,4 +251,8 @@ const int dropsegments=5; //everything with this number of steps will be ignore #define BLOCK_BUFFER_SIZE 16 // maximize block buffer #endif +//The ASCII buffer for recieving from the serial: +#define MAX_CMD_SIZE 96 +#define BUFSIZE 4 + #endif //__CONFIGURATION_H diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 6c2c6c87a..5a489ec52 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -107,68 +107,82 @@ char version_string[] = "1.0.0 Alpha 1"; //Stepper Movement Variables -const char axis_codes[NUM_AXIS] = {'X', 'Y', 'Z', 'E'}; -float destination[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; -float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; -float offset[3] = {0.0, 0.0, 0.0}; -bool home_all_axis = true; -float feedrate = 1500.0, next_feedrate, saved_feedrate; -long gcode_N, gcode_LastN; +//=========================================================================== +//=============================imported variables============================ +//=========================================================================== +extern float HeaterPower; +//public variables float homing_feedrate[] = HOMING_FEEDRATE; bool axis_relative_modes[] = AXIS_RELATIVE_MODES; - -bool relative_mode = false; //Determines Absolute or Relative Coordinates -bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. - -uint8_t fanpwm=0; - volatile int feedmultiply=100; //100->1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; +//=========================================================================== +//=============================private variables============================= +//=========================================================================== +const char axis_codes[NUM_AXIS] = {'X', 'Y', 'Z', 'E'}; +static float destination[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; +static float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; +static float offset[3] = {0.0, 0.0, 0.0}; +static bool home_all_axis = true; +static float feedrate = 1500.0, next_feedrate, saved_feedrate; +static long gcode_N, gcode_LastN; + + + +static bool relative_mode = false; //Determines Absolute or Relative Coordinates +static bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. + +static uint8_t fanpwm=0; + + // comm variables -#define MAX_CMD_SIZE 96 -#define BUFSIZE 4 -char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; -bool fromsd[BUFSIZE]; -int bufindr = 0; -int bufindw = 0; -int buflen = 0; -int i = 0; -char serial_char; -int serial_count = 0; -boolean comment_mode = false; -char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc -extern float HeaterPower; + +static char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; +static bool fromsd[BUFSIZE]; +static int bufindr = 0; +static int bufindw = 0; +static int buflen = 0; +static int i = 0; +static char serial_char; +static int serial_count = 0; +static boolean comment_mode = false; +static char *strchr_pointer; // just a pointer to find chars in the cmd string like X, Y, Z, E, etc const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 -float tt = 0, bt = 0; +static float tt = 0, bt = 0; //Inactivity shutdown variables -unsigned long previous_millis_cmd = 0; -unsigned long max_inactive_time = 0; -unsigned long stepper_inactive_time = 0; +static unsigned long previous_millis_cmd = 0; +static unsigned long max_inactive_time = 0; +static unsigned long stepper_inactive_time = 0; + +static unsigned long starttime=0; +static unsigned long stoptime=0; -unsigned long starttime=0; -unsigned long stoptime=0; #ifdef SDSUPPORT - Sd2Card card; - SdVolume volume; - SdFile root; - SdFile file; - uint32_t filesize = 0; - uint32_t sdpos = 0; - bool sdmode = false; - bool sdactive = false; - bool savetosd = false; - int16_t n; - unsigned long autostart_atmillis=0; + static Sd2Card card; + static SdVolume volume; + static SdFile root; + static SdFile file; + static uint32_t filesize = 0; + static uint32_t sdpos = 0; + static bool sdmode = false; + static bool sdactive = false; + static bool savetosd = false; + static int16_t n; + static unsigned long autostart_atmillis=0; - bool autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. - + static bool autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. +#endif //SDSUPPORT +//=========================================================================== +//=============================ROUTINES============================= +//=========================================================================== +#ifdef SDSUPPORT void initsd() { sdactive = false; @@ -223,6 +237,65 @@ unsigned long stoptime=0; SERIAL_ERRORLN("error writing to file"); } } + + + void checkautostart(bool force) + { + //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset + if(!force) + { + if(!autostart_stilltocheck) + return; + if(autostart_atmillis 0) + { + for(int i=0;i<(int)strlen((char*)p.name);i++) + p.name[i]=tolower(p.name[i]); + //Serial.print((char*)p.name); + //Serial.print(" "); + //Serial.println(autoname); + if(p.name[9]!='~') //skip safety copies + if(strncmp((char*)p.name,autoname,5)==0) + { + char cmd[30]; + + sprintf(cmd,"M23 %s",autoname); + //sprintf(cmd,"M115"); + //enquecommand("G92 Z0"); + //enquecommand("G1 Z10 F2000"); + //enquecommand("G28 X-105 Y-105"); + enquecommand(cmd); + enquecommand("M24"); + found=true; + } + } + if(!found) + lastnr=-1; + else + lastnr++; + } +#else //NO SD SUPORT + inline void checkautostart(bool x){}; + #endif //SDSUPPORT @@ -272,66 +345,6 @@ void setup() tp_init(); // Initialize temperature loop } -#ifdef SDSUPPORT - -void checkautostart(bool force) -{ -//this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset - if(!force) - { - if(!autostart_stilltocheck) - return; - if(autostart_atmillis 0) - { - for(int i=0;i<(int)strlen((char*)p.name);i++) - p.name[i]=tolower(p.name[i]); - //Serial.print((char*)p.name); - //Serial.print(" "); - //Serial.println(autoname); - if(p.name[9]!='~') //skip safety copies - if(strncmp((char*)p.name,autoname,5)==0) - { - char cmd[30]; - - sprintf(cmd,"M23 %s",autoname); - //sprintf(cmd,"M115"); - //enquecommand("G92 Z0"); - //enquecommand("G1 Z10 F2000"); - //enquecommand("G28 X-105 Y-105"); - enquecommand(cmd); - enquecommand("M24"); - found=true; - } - } - if(!found) - lastnr=-1; - else - lastnr++; -} -#else //NO SD SUPORT - inline void checkautostart(bool x){} -#endif - void loop() { From 01df04e02c6a94446e19176946b353d701268c93 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 21:39:53 +0100 Subject: [PATCH 034/430] first compile with the cardreader class --- Marlin/Marlin.pde | 229 +++++++++--------------------------------- Marlin/cardreader.h | 47 +++++++++ Marlin/cardreader.pde | 177 ++++++++++++++++++++++++++++++++ Marlin/ultralcd.h | 3 +- Marlin/ultralcd.pde | 81 ++++----------- 5 files changed, 288 insertions(+), 249 deletions(-) create mode 100644 Marlin/cardreader.h create mode 100644 Marlin/cardreader.pde diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index fec01b8c3..5351bce07 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -37,13 +37,11 @@ #include "stepper.h" #include "temperature.h" #include "motion_control.h" +#include "cardreader.h" char version_string[] = "1.0.0 Alpha 1"; -#ifdef SDSUPPORT - #include "SdFat.h" -#endif //SDSUPPORT // look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html @@ -112,7 +110,11 @@ char version_string[] = "1.0.0 Alpha 1"; //=========================================================================== extern float HeaterPower; -//public variables + +//=========================================================================== +//=============================public variables============================= +//=========================================================================== +CardReader card; float homing_feedrate[] = HOMING_FEEDRATE; bool axis_relative_modes[] = AXIS_RELATIVE_MODES; volatile int feedmultiply=100; //100->1 200->2 @@ -138,7 +140,6 @@ static bool relative_mode_e = false; //Determines Absolute or Relative E Codes static uint8_t fanpwm=0; -// comm variables static char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; static bool fromsd[BUFSIZE]; @@ -163,140 +164,12 @@ static unsigned long stepper_inactive_time = 0; static unsigned long starttime=0; static unsigned long stoptime=0; -#ifdef SDSUPPORT - static Sd2Card card; - static SdVolume volume; - static SdFile root; - static SdFile file; - static uint32_t filesize = 0; - static uint32_t sdpos = 0; - static bool sdmode = false; - static bool sdactive = false; - static bool savetosd = false; - static int16_t n; - static unsigned long autostart_atmillis=0; - - static bool autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. -#endif //SDSUPPORT + //=========================================================================== //=============================ROUTINES============================= //=========================================================================== -#ifdef SDSUPPORT - void initsd() - { - sdactive = false; - #if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)) - { - //if (!card.init(SPI_HALF_SPEED,SDSS)) - SERIAL_ECHOLN("SD init fail"); - } - else if (!volume.init(&card)) - { - SERIAL_ERRORLN("volume.init failed"); - } - else if (!root.openRoot(&volume)) - { - SERIAL_ERRORLN("openRoot failed"); - } - else - { - sdactive = true; - SERIAL_ECHOLN("SD card ok"); - } - #endif //SDSS - } - void quickinitsd() - { - sdactive=false; - autostart_atmillis=millis()+5000; - } - - inline void write_command(char *buf) - { - char* begin = buf; - char* npos = 0; - 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_ERRORLN("error writing to file"); - } - } - - - void checkautostart(bool force) - { - //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset - if(!force) - { - if(!autostart_stilltocheck) - return; - if(autostart_atmillis 0) - { - for(int i=0;i<(int)strlen((char*)p.name);i++) - p.name[i]=tolower(p.name[i]); - //Serial.print((char*)p.name); - //Serial.print(" "); - //Serial.println(autoname); - if(p.name[9]!='~') //skip safety copies - if(strncmp((char*)p.name,autoname,5)==0) - { - char cmd[30]; - - sprintf(cmd,"M23 %s",autoname); - //sprintf(cmd,"M115"); - //enquecommand("G92 Z0"); - //enquecommand("G1 Z10 F2000"); - //enquecommand("G28 X-105 Y-105"); - enquecommand(cmd); - enquecommand("M24"); - found=true; - } - } - if(!found) - lastnr=-1; - else - lastnr++; - } -#else //NO SD SUPORT - inline void checkautostart(bool x){}; - -#endif //SDSUPPORT //adds an command to the main command buffer @@ -331,14 +204,6 @@ void setup() axis_steps_per_sqr_second[i] = max_acceleration_units_per_sq_second[i] * axis_steps_per_unit[i]; } - #ifdef SDSUPPORT - //power to SD reader - #if SDPOWER > -1 - SET_OUTPUT(SDPOWER); - WRITE(SDPOWER,HIGH); - #endif //SDPOWER - quickinitsd(); - #endif //SDSUPPORT plan_init(); // Initialize planner; st_init(); // Initialize stepper; @@ -350,22 +215,20 @@ void loop() { if(buflen<3) get_command(); - checkautostart(false); + card.checkautostart(false); if(buflen) { #ifdef SDSUPPORT - if(savetosd) + if(card.savetosd) { if(strstr(cmdbuffer[bufindr],"M29") == NULL) { - write_command(cmdbuffer[bufindr]); + card.write_command(cmdbuffer[bufindr]); Serial.println("ok"); } else { - file.sync(); - file.close(); - savetosd = false; + card.closefile(); Serial.println("Done saving file."); } } @@ -455,7 +318,7 @@ inline void get_command() case 2: case 3: #ifdef SDSUPPORT - if(savetosd) + if(card.savetosd) break; #endif //SDSUPPORT Serial.println("ok"); @@ -479,17 +342,17 @@ inline void get_command() } } #ifdef SDSUPPORT - if(!sdmode || serial_count!=0){ + if(!card.sdmode || serial_count!=0){ return; } - while( filesize > sdpos && buflen < BUFSIZE) { - n = file.read(); + while( card.filesize > card.sdpos && buflen < BUFSIZE) { + short n = card.file.read(); serial_char = (char)n; if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) { - sdpos = file.curPosition(); - if(sdpos >= filesize){ - sdmode = false; + card.sdpos = card.file.curPosition(); + if(card.sdpos >= card.filesize){ + card.sdmode = false; Serial.println("echo: Done printing file"); stoptime=millis(); char time[30]; @@ -500,7 +363,7 @@ inline void get_command() sprintf(time,"echo: %i min, %i sec",min,sec); Serial.println(time); LCD_MESSAGE(time); - checkautostart(true); + card.checkautostart(true); } if(!serial_count) return; //if empty line @@ -702,31 +565,31 @@ inline void process_commands() case 20: // M20 - list SD card Serial.println("Begin file list"); - root.ls(); + card.root.ls(); Serial.println("End file list"); break; case 21: // M21 - init SD card - sdmode = false; - initsd(); + card.sdmode = false; + card.initsd(); break; case 22: //M22 - release SD card - sdmode = false; - sdactive = false; + card.sdmode = false; + card.sdactive = false; break; case 23: //M23 - Select file - if(sdactive){ - sdmode = false; - file.close(); + if(card.sdactive){ + card.sdmode = false; + card.file.close(); starpos = (strchr(strchr_pointer + 4,'*')); if(starpos!=NULL) *(starpos-1)='\0'; - if (file.open(&root, strchr_pointer + 4, O_READ)) { + if (card.file.open(&card.root, strchr_pointer + 4, O_READ)) { Serial.print("File opened:"); Serial.print(strchr_pointer + 4); Serial.print(" Size:"); - Serial.println(file.fileSize()); - sdpos = 0; - filesize = file.fileSize(); + Serial.println(card.file.fileSize()); + card.sdpos = 0; + card.filesize = card.file.fileSize(); Serial.println("File selected"); } else{ @@ -735,52 +598,52 @@ inline void process_commands() } break; case 24: //M24 - Start SD print - if(sdactive){ - sdmode = true; + if(card.sdactive){ + card.sdmode = true; starttime=millis(); } break; case 25: //M25 - Pause SD print - if(sdmode){ - sdmode = false; + if(card.sdmode){ + card.sdmode = false; } break; case 26: //M26 - Set SD index - if(sdactive && code_seen('S')){ - sdpos = code_value_long(); - file.seekSet(sdpos); + if(card.sdactive && code_seen('S')){ + card.sdpos = code_value_long(); + card.file.seekSet(card.sdpos); } break; case 27: //M27 - Get SD status - if(sdactive){ + if(card.sdactive){ Serial.print("SD printing byte "); - Serial.print(sdpos); + Serial.print(card.sdpos); Serial.print("/"); - Serial.println(filesize); + Serial.println(card.filesize); } else{ Serial.println("Not SD printing"); } break; case 28: //M28 - Start SD write - if(sdactive){ + if(card.sdactive){ char* npos = 0; - file.close(); - sdmode = false; + card.file.close(); + card.sdmode = false; starpos = (strchr(strchr_pointer + 4,'*')); if(starpos != NULL){ npos = strchr(cmdbuffer[bufindr], 'N'); strchr_pointer = strchr(npos,' ') + 1; *(starpos-1) = '\0'; } - if (!file.open(&root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + if (!card.file.open(&card.root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) { Serial.print("open failed, File: "); Serial.print(strchr_pointer + 4); Serial.print("."); } else{ - savetosd = true; + card.savetosd = true; Serial.print("Writing to file: "); Serial.println(strchr_pointer + 4); } diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h new file mode 100644 index 000000000..a67374ffa --- /dev/null +++ b/Marlin/cardreader.h @@ -0,0 +1,47 @@ +#ifndef __CARDREADERH +#define __CARDREADERH + +#ifdef SDSUPPORT + +#include "SdFat.h" + +class CardReader +{ +public: + CardReader(); + + void initsd(); + void write_command(char *buf); + //files auto[0-9].g on the sd card are performed in a row + //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset + + void checkautostart(bool x); + + void closefile(); + void getfilename(const uint8_t nr); + uint8_t getnrfilenames(); + +public: + bool savetosd; + SdFile file; + uint32_t filesize; + uint32_t sdpos ; + bool sdmode ; + SdFile root; + bool sdactive ; + char filename[11]; +private: + Sd2Card card; + SdVolume volume; + + //int16_t n; + unsigned long autostart_atmillis; + + bool autostart_stilltocheck; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. +}; + +#endif //SDSUPPORT + + + +#endif \ No newline at end of file diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde new file mode 100644 index 000000000..5773641e4 --- /dev/null +++ b/Marlin/cardreader.pde @@ -0,0 +1,177 @@ +#ifdef SDSUPPORT +#include "cardreader.h" + +CardReader::CardReader() +{ + filesize = 0; + sdpos = 0; + sdmode = false; + sdactive = false; + savetosd = false; + autostart_atmillis=0; + + autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. + //power to SD reader + #if SDPOWER > -1 + SET_OUTPUT(SDPOWER); + WRITE(SDPOWER,HIGH); + #endif //SDPOWER + + autostart_atmillis=millis()+5000; +} + +void CardReader::initsd() +{ + sdactive = false; + #if SDSS >- 1 + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)) + { + //if (!card.init(SPI_HALF_SPEED,SDSS)) + SERIAL_ECHOLN("SD init fail"); + } + else if (!volume.init(&card)) + { + SERIAL_ERRORLN("volume.init failed"); + } + else if (!root.openRoot(&volume)) + { + SERIAL_ERRORLN("openRoot failed"); + } + else + { + sdactive = true; + SERIAL_ECHOLN("SD card ok"); + } + #endif //SDSS +} + +void CardReader::write_command(char *buf) +{ + char* begin = buf; + char* npos = 0; + 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_ERRORLN("error writing to file"); + } +} + + +void CardReader::checkautostart(bool force) +{ + if(!force) + { + if(!autostart_stilltocheck) + return; + if(autostart_atmillis 0) + { + for(int i=0;i<(int)strlen((char*)p.name);i++) + p.name[i]=tolower(p.name[i]); + //Serial.print((char*)p.name); + //Serial.print(" "); + //Serial.println(autoname); + if(p.name[9]!='~') //skip safety copies + if(strncmp((char*)p.name,autoname,5)==0) + { + char cmd[30]; + + sprintf(cmd,"M23 %s",autoname); + enquecommand(cmd); + enquecommand("M24"); + found=true; + } + } + if(!found) + lastnr=-1; + else + lastnr++; +} + +void CardReader::closefile() +{ + file.sync(); + file.close(); + savetosd = false; +} + +void CardReader::getfilename(const uint8_t nr) +{ + + dir_t p; + root.rewind(); + uint8_t cnt=0; + filename[0]='\0'; + while (root.readDir(p) > 0) + { + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + if(cnt++!=nr) continue; + //Serial.println((char*)p.name); + uint8_t writepos=0; + for (uint8_t i = 0; i < 11; i++) + { + if (p.name[i] == ' ') continue; + if (i == 8) { + filename[writepos++]='.'; + } + filename[writepos++]=p.name[i]; + } + filename[writepos++]=0; + } +} + +uint8_t CardReader::getnrfilenames() +{ + dir_t p; + root.rewind(); + uint8_t cnt=0; + while (root.readDir(p) > 0) + { + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + cnt++; + } + return cnt; +} + + +#endif //SDSUPPORT \ No newline at end of file diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 18d1b7f24..0822e502b 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -57,7 +57,6 @@ public: MainMenu(); void update(); - void getfilename(const uint8_t nr); uint8_t activeline; MainStatus status; uint8_t displayStartingRow; @@ -71,7 +70,7 @@ int lastencoderpos; int8_t lineoffset; int8_t lastlineoffset; - char filename[11]; + bool linechanging; }; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index a0c56e926..121d8ff7f 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -6,6 +6,7 @@ extern volatile int feedmultiply; extern volatile bool feedmultiplychanged; extern long position[4]; +extern CardReader card; static char messagetext[LCD_WIDTH]=""; @@ -1107,56 +1108,8 @@ void MainMenu::showControl() #include "SdFat.h" -void MainMenu::getfilename(const uint8_t nr) -{ -#ifdef SDSUPPORT - dir_t p; - root.rewind(); - uint8_t cnt=0; - filename[0]='\0'; - while (root.readDir(p) > 0) - { - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - if(cnt++!=nr) continue; - //Serial.println((char*)p.name); - uint8_t writepos=0; - for (uint8_t i = 0; i < 11; i++) - { - if (p.name[i] == ' ') continue; - if (i == 8) { - filename[writepos++]='.'; - } - filename[writepos++]=p.name[i]; - } - filename[writepos++]=0; - } -#endif -} -uint8_t getnrfilenames() -{ -#ifdef SDSUPPORT - dir_t p; - root.rewind(); - uint8_t cnt=0; - while (root.readDir(p) > 0) - { - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - cnt++; - } - return cnt; -#else - return 0; -#endif -} + void MainMenu::showSD() { @@ -1171,9 +1124,9 @@ void MainMenu::showSD() if(force_lcd_update) { clear(); - if(sdactive) + if(card.sdactive) { - nrfiles=getnrfilenames(); + nrfiles=card.getnrfilenames(); } else { @@ -1223,9 +1176,9 @@ void MainMenu::showSD() { BLOCK; beepshort(); - initsd(); + card.initsd(); force_lcd_update=true; - nrfiles=getnrfilenames(); + nrfiles=card.getnrfilenames(); } }break; default: @@ -1234,24 +1187,24 @@ void MainMenu::showSD() { if(force_lcd_update) { - getfilename(i-2); + card.getfilename(i-2); //Serial.print("Filenr:");Serial.println(i-2); - lcd.setCursor(0,line);lcd.print(" ");lcd.print(filename); + lcd.setCursor(0,line);lcd.print(" ");lcd.print(card.filename); } if((activeline==line) && CLICKED) { BLOCK - getfilename(i-2); + card.getfilename(i-2); char cmd[30]; - for(int i=0;i Date: Sun, 6 Nov 2011 22:37:43 +0100 Subject: [PATCH 035/430] Corrected thermistor naming --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index d417d415c..a0d46bfed 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -27,8 +27,8 @@ // 5 is ParCan supplied 104GT-2 100K // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 +#define THERMISTORHEATER_0 3 #define THERMISTORHEATER_1 3 -#define THERMISTORHEATER_2 3 #define THERMISTORBED 3 //#define HEATER_0_USES_THERMISTOR From fc0064e525288baec961db28c6c4d07f3206f145 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 22:48:15 +0100 Subject: [PATCH 036/430] made cardreader more selfsustained --- Marlin/Marlin.pde | 107 +++++++++++++----------------------------- Marlin/cardreader.h | 38 ++++++++++----- Marlin/cardreader.pde | 96 +++++++++++++++++++++++++++++++++---- Marlin/ultralcd.pde | 8 ++-- 4 files changed, 149 insertions(+), 100 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 5351bce07..03d360326 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -219,7 +219,7 @@ void loop() if(buflen) { #ifdef SDSUPPORT - if(card.savetosd) + if(card.saving) { if(strstr(cmdbuffer[bufindr],"M29") == NULL) { @@ -318,7 +318,7 @@ inline void get_command() case 2: case 3: #ifdef SDSUPPORT - if(card.savetosd) + if(card.saving) break; #endif //SDSUPPORT Serial.println("ok"); @@ -342,17 +342,17 @@ inline void get_command() } } #ifdef SDSUPPORT - if(!card.sdmode || serial_count!=0){ + if(!card.sdprinting || serial_count!=0){ return; } - while( card.filesize > card.sdpos && buflen < BUFSIZE) { - short n = card.file.read(); - serial_char = (char)n; - if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) || n == -1) + while( !card.eof() && buflen < BUFSIZE) { + + serial_char = card.get(); + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1)) { - card.sdpos = card.file.curPosition(); - if(card.sdpos >= card.filesize){ - card.sdmode = false; + + if(card.eof()){ + card.sdprinting = false; Serial.println("echo: Done printing file"); stoptime=millis(); char time[30]; @@ -565,93 +565,52 @@ inline void process_commands() case 20: // M20 - list SD card Serial.println("Begin file list"); - card.root.ls(); + card.ls(); Serial.println("End file list"); break; case 21: // M21 - init SD card - card.sdmode = false; + card.initsd(); break; case 22: //M22 - release SD card - card.sdmode = false; - card.sdactive = false; + card.release(); + break; case 23: //M23 - Select file - if(card.sdactive){ - card.sdmode = false; - card.file.close(); - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos!=NULL) - *(starpos-1)='\0'; - if (card.file.open(&card.root, strchr_pointer + 4, O_READ)) { - Serial.print("File opened:"); - Serial.print(strchr_pointer + 4); - Serial.print(" Size:"); - Serial.println(card.file.fileSize()); - card.sdpos = 0; - card.filesize = card.file.fileSize(); - Serial.println("File selected"); - } - else{ - Serial.println("file.open failed"); - } - } + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos!=NULL) + *(starpos-1)='\0'; + card.selectFile(strchr_pointer + 4); break; case 24: //M24 - Start SD print - if(card.sdactive){ - card.sdmode = true; - starttime=millis(); - } + card.startFileprint(); + starttime=millis(); break; case 25: //M25 - Pause SD print - if(card.sdmode){ - card.sdmode = false; - } + card.pauseSDPrint(); break; case 26: //M26 - Set SD index - if(card.sdactive && code_seen('S')){ - card.sdpos = code_value_long(); - card.file.seekSet(card.sdpos); + if(card.cardOK && code_seen('S')){ + card.setIndex(code_value_long()); + } break; case 27: //M27 - Get SD status - if(card.sdactive){ - Serial.print("SD printing byte "); - Serial.print(card.sdpos); - Serial.print("/"); - Serial.println(card.filesize); - } - else{ - Serial.println("Not SD printing"); - } + card.getStatus(); break; case 28: //M28 - Start SD write - if(card.sdactive){ - char* npos = 0; - card.file.close(); - card.sdmode = false; - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos != NULL){ - npos = strchr(cmdbuffer[bufindr], 'N'); - strchr_pointer = strchr(npos,' ') + 1; - *(starpos-1) = '\0'; - } - if (!card.file.open(&card.root, strchr_pointer+4, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) - { - Serial.print("open failed, File: "); - Serial.print(strchr_pointer + 4); - Serial.print("."); - } - else{ - card.savetosd = true; - Serial.print("Writing to file: "); - Serial.println(strchr_pointer + 4); - } + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + char* npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; } + card.startFilewrite(strchr_pointer+4); + break; case 29: //M29 - Stop SD write //processed in write to file routine above - //savetosd = false; + //card,saving = false; break; #endif //SDSUPPORT diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index a67374ffa..583c55c74 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -18,26 +18,38 @@ public: void checkautostart(bool x); void closefile(); + void release(); + void startFileprint(); + void startFilewrite(char *name); + void pauseSDPrint(); + void getStatus(); + + void selectFile(char* name); void getfilename(const uint8_t nr); uint8_t getnrfilenames(); + + + inline void ls() {root.ls();}; + inline bool eof() { sdpos = file.curPosition();return sdpos>=filesize ;}; + inline char get() { int16_t n = file.read(); return (n!=-1)?(char)n:'\n';}; + inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; public: - bool savetosd; - SdFile file; - uint32_t filesize; - uint32_t sdpos ; - bool sdmode ; - SdFile root; - bool sdactive ; + bool saving; + bool sdprinting ; + bool cardOK ; char filename[11]; private: - Sd2Card card; - SdVolume volume; + SdFile root; + Sd2Card card; + SdVolume volume; + SdFile file; + uint32_t filesize; + //int16_t n; + unsigned long autostart_atmillis; + uint32_t sdpos ; - //int16_t n; - unsigned long autostart_atmillis; - - bool autostart_stilltocheck; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. + bool autostart_stilltocheck; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. }; #endif //SDSUPPORT diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 5773641e4..9f94de0bc 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -5,9 +5,9 @@ CardReader::CardReader() { filesize = 0; sdpos = 0; - sdmode = false; - sdactive = false; - savetosd = false; + sdprinting = false; + cardOK = false; + saving = false; autostart_atmillis=0; autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. @@ -22,7 +22,7 @@ CardReader::CardReader() void CardReader::initsd() { - sdactive = false; + cardOK = false; #if SDSS >- 1 if(root.isOpen()) root.close(); @@ -41,12 +41,90 @@ void CardReader::initsd() } else { - sdactive = true; + cardOK = true; SERIAL_ECHOLN("SD card ok"); } #endif //SDSS } +void CardReader::release() +{ + sdprinting = false; + cardOK = false; +} +void CardReader::startFileprint() +{ + if(cardOK) + { + sdprinting = true; + + } +} + +void CardReader::pauseSDPrint() +{ + if(sdprinting) + { + sdprinting = false; + } +} + +void CardReader::selectFile(char* name) +{ + if(cardOK){ + sdprinting = false; + file.close(); + + if (file.open(&root, name, O_READ)) { + Serial.print("File opened:"); + Serial.print(name); + Serial.print(" Size:"); + filesize = file.fileSize(); + Serial.println(filesize); + sdpos = 0; + + Serial.println("File selected"); + } + else{ + Serial.println("file.open failed"); + } + } +} + +void CardReader::startFilewrite(char *name) +{ + if(cardOK) + { + + file.close(); + sdprinting = false; + + if (!file.open(&root, name, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + { + Serial.print("open failed, File: "); + Serial.print(name); + Serial.print("."); + } + else{ + saving = true; + Serial.print("Writing to file: "); + Serial.println(name); + } + } +} + +void CardReader::getStatus() +{ + if(cardOK){ + Serial.print("SD printing byte "); + Serial.print(sdpos); + Serial.print("/"); + Serial.println(filesize); + } + else{ + Serial.println("Not SD printing"); + } +} void CardReader::write_command(char *buf) { char* begin = buf; @@ -80,10 +158,10 @@ void CardReader::checkautostart(bool force) return; } autostart_stilltocheck=false; - if(!sdactive) + if(!cardOK) { initsd(); - if(!sdactive) //fail + if(!cardOK) //fail return; } static int lastnr=0; @@ -122,9 +200,9 @@ void CardReader::checkautostart(bool force) void CardReader::closefile() { - file.sync(); + file.sync(); file.close(); - savetosd = false; + saving = false; } void CardReader::getfilename(const uint8_t nr) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 121d8ff7f..77d7151d9 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1124,7 +1124,7 @@ void MainMenu::showSD() if(force_lcd_update) { clear(); - if(card.sdactive) + if(card.cardOK) { nrfiles=card.getnrfilenames(); } @@ -1312,7 +1312,7 @@ void MainMenu::showMainMenu() if(true) #endif { - if(card.sdmode) + if(card.sdprinting) lcd.print(" Stop Print \x7E"); else lcd.print(" Card Menu \x7E"); @@ -1327,7 +1327,7 @@ void MainMenu::showMainMenu() #endif if((activeline==line)&&CLICKED) { - card.sdmode = false; + card.sdprinting = false; BLOCK; status=Main_SD; beepshort(); @@ -1377,7 +1377,7 @@ void MainMenu::update() } else { - card.sdactive=false; + card.release(); lcd_status("Card removed"); } } From 0b43761c3af221bd67bae26ac546846ed15b8ee0 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 23:13:19 +0100 Subject: [PATCH 037/430] preprocessor magic to have a single source principle --- Marlin/Marlin.pde | 101 +++++++++++++--------------------------------- 1 file changed, 27 insertions(+), 74 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 03d360326..5f138f4be 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -405,6 +405,29 @@ inline bool code_seen(char code) strchr_pointer = strchr(cmdbuffer[bufindr], code); return (strchr_pointer != NULL); //Return True if a character was found } +#define HOMEAXIS(LETTER) \ + if ((LETTER##_MIN_PIN > -1 && LETTER##_HOME_DIR==-1) || (LETTER##_MAX_PIN > -1 && LETTER##_HOME_DIR==1))\ + { \ + current_position[LETTER##_AXIS] = 0; \ + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); \ + destination[LETTER##_AXIS] = 1.5 * LETTER##_MAX_LENGTH * LETTER##_HOME_DIR; \ + feedrate = homing_feedrate[LETTER##_AXIS]; \ + prepare_move(); \ + \ + current_position[LETTER##_AXIS] = 0;\ + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ + destination[LETTER##_AXIS] = -5 * LETTER##_HOME_DIR;\ + prepare_move(); \ + \ + destination[LETTER##_AXIS] = 10 * LETTER##_HOME_DIR;\ + feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ + prepare_move(); \ + \ + current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? 0 : LETTER##_MAX_LENGTH;\ + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ + destination[LETTER##_AXIS] = current_position[LETTER##_AXIS];\ + feedrate = 0.0;\ + } inline void process_commands() { @@ -455,85 +478,15 @@ inline void process_commands() if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { - if ((X_MIN_PIN > -1 && X_HOME_DIR==-1) || (X_MAX_PIN > -1 && X_HOME_DIR==1)){ -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = -5 * X_HOME_DIR; - prepare_move(); - -// st_synchronize(); - destination[X_AXIS] = 10 * X_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]/2 ; - prepare_move(); - -// st_synchronize(); - current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = current_position[X_AXIS]; - feedrate = 0.0; - } + HOMEAXIS(X); } if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { - if ((Y_MIN_PIN > -1 && Y_HOME_DIR==-1) || (Y_MAX_PIN > -1 && Y_HOME_DIR==1)){ - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = -5 * Y_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Y_AXIS] = 10 * Y_HOME_DIR; - feedrate = homing_feedrate[Y_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Y_AXIS] = current_position[Y_AXIS]; - feedrate = 0.0; - } + HOMEAXIS(Y); } if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { - if ((Z_MIN_PIN > -1 && Z_HOME_DIR==-1) || (Z_MAX_PIN > -1 && Z_HOME_DIR==1)){ - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = 0; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = -2 * Z_HOME_DIR; - prepare_move(); -// st_synchronize(); - - destination[Z_AXIS] = 3 * Z_HOME_DIR; - feedrate = homing_feedrate[Z_AXIS]/2; - prepare_move(); -// st_synchronize(); - - current_position[Z_AXIS] = (Z_HOME_DIR == -1) ? 0 : Z_MAX_LENGTH; - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[Z_AXIS] = current_position[Z_AXIS]; - feedrate = 0.0; - } + HOMEAXIS(Z); } feedrate = saved_feedrate; feedmultiply = saved_feedmultiply; @@ -684,7 +637,7 @@ inline void process_commands() Serial.println(); #endif //TEMP_1_PIN #else - Serial.println("echo: No thermistors - no temp"); + SERIAL_ERRORLN("No thermistors - no temp"); #endif return; break; From e3af73ee0c8a8fe46d3206bcf4608be6cfc49f02 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 6 Nov 2011 23:20:01 +0100 Subject: [PATCH 038/430] Thermistor name problem --- Marlin/temperature.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 1121c654e..d47e07024 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -200,7 +200,7 @@ int temp2analog(int celsius) { } // Overflow: Set to last value in the table - if (i == NUMTEMPS_0) raw = heater_0_temptable[i-1][0]; + if (i == NUMTEMPS_HEATER_0) raw = heater_0_temptable[i-1][0]; return (1023 * OVERSAMPLENR) - raw; #elif defined HEATER_0_USES_AD595 @@ -544,4 +544,4 @@ ISR(TIMER0_COMPB_vect) #endif } } - + From 907daa49af3a3ca41895007052d8732408e81b95 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 6 Nov 2011 23:21:12 +0100 Subject: [PATCH 039/430] made loop counters uint8_t most were int(16_t) before --- Marlin/Marlin.pde | 24 ++++++++++++------------ Marlin/cardreader.pde | 6 +++--- Marlin/stepper.cpp | 2 +- Marlin/ultralcd.pde | 14 +++++++------- 4 files changed, 23 insertions(+), 23 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 5f138f4be..104fc6576 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -192,14 +192,14 @@ void setup() Serial.begin(BAUDRATE); SERIAL_ECHOLN("Marlin "<= 0 && pin_status <= 255) { int pin_number = code_value(); - for(int i = 0; i < (int)sizeof(sensitive_pins); i++) + for(int8_t i = 0; i < (int8_t)sizeof(sensitive_pins); i++) { if (sensitive_pins[i] == pin_number) { @@ -759,7 +759,7 @@ inline void process_commands() max_inactive_time = code_value() * 1000; break; case 92: // M92 - for(int i=0; i < NUM_AXIS; i++) + for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) axis_steps_per_unit[i] = code_value(); @@ -816,20 +816,20 @@ inline void process_commands() break; //TODO: update for all axis, use for loop case 201: // M201 - for(int i=0; i < NUM_AXIS; i++) + for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; } break; #if 0 // Not used for Sprinter/grbl gen6 case 202: // M202 - for(int i=0; i < NUM_AXIS; i++) { + for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) axis_travel_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; } break; #endif case 203: // M203 max feedrate mm/sec - for(int i=0; i < NUM_AXIS; i++) { + for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; } break; @@ -914,7 +914,7 @@ void ClearToSend() inline void get_coordinates() { - for(int i=0; i < NUM_AXIS; i++) { + for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; else destination[i] = current_position[i]; //Are these else lines really needed? } @@ -934,7 +934,7 @@ inline void get_arc_coordinates() void prepare_move() { plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); - for(int i=0; i < NUM_AXIS; i++) { + for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } } @@ -948,7 +948,7 @@ void prepare_arc_move(char isclockwise) { // As far as the parser is concerned, the position is now == target. In reality the // motion control system might still be processing the action and the real tool position // in any intermediate location. - for(int i=0; i < NUM_AXIS; i++) { + for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } } diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 9f94de0bc..a49b9999f 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -167,7 +167,7 @@ void CardReader::checkautostart(bool force) static int lastnr=0; char autoname[30]; sprintf(autoname,"auto%i.g",lastnr); - for(int i=0;i<(int)strlen(autoname);i++) + for(int8_t i=0;i<(int)strlen(autoname);i++) autoname[i]=tolower(autoname[i]); dir_t p; @@ -176,7 +176,7 @@ void CardReader::checkautostart(bool force) bool found=false; while (root.readDir(p) > 0) { - for(int i=0;i<(int)strlen((char*)p.name);i++) + for(int8_t i=0;i<(int)strlen((char*)p.name);i++) p.name[i]=tolower(p.name[i]); //Serial.print((char*)p.name); //Serial.print(" "); @@ -222,7 +222,7 @@ void CardReader::getfilename(const uint8_t nr) if(cnt++!=nr) continue; //Serial.println((char*)p.name); uint8_t writepos=0; - for (uint8_t i = 0; i < 11; i++) + for (int8_t i = 0; i < 11; i++) { if (p.name[i] == ' ') continue; if (i == 8) { diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 924521119..2607eef60 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -345,7 +345,7 @@ ISR(TIMER1_COMPA_vect) WRITE(E_DIR_PIN,!INVERT_E_DIR); #endif //!ADVANCE - for(char i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) + for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) counter_x += current_block->steps_x; if (counter_x > 0) { WRITE(X_STEP_PIN, HIGH); diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 77d7151d9..d437cf3a6 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -80,7 +80,7 @@ void beep() //return; #ifdef ULTIPANEL pinMode(BEEPER,OUTPUT); - for(int i=0;i<20;i++){ + for(int8_t i=0;i<20;i++){ WRITE(BEEPER,HIGH); delay(5); WRITE(BEEPER,LOW); @@ -94,7 +94,7 @@ void beepshort() //return; #ifdef ULTIPANEL pinMode(BEEPER,OUTPUT); - for(int i=0;i<10;i++){ + for(int8_t i=0;i<10;i++){ WRITE(BEEPER,HIGH); delay(3); WRITE(BEEPER,LOW); @@ -165,7 +165,7 @@ void buttons_check() WRITE(SHIFT_LD,LOW); WRITE(SHIFT_LD,HIGH); unsigned char tmp_buttons=0; - for(unsigned char i=0;i<8;i++) + for(int8_t i=0;i<8;i++) { newbutton = newbutton>>1; if(READ(SHIFT_OUT)) @@ -375,7 +375,7 @@ void MainMenu::showPrepare() force_lcd_update=true; clear(); } - for(uint8_t i=lineoffset;i Date: Sun, 6 Nov 2011 23:34:40 +0100 Subject: [PATCH 040/430] better visibility of public/private/imported variables --- Marlin/planner.cpp | 15 ++++++++--- Marlin/stepper.cpp | 56 ++++++++++++++++++++++++++++-------------- Marlin/temperature.cpp | 41 +++++++++++++++++++++---------- Marlin/ultralcd.pde | 36 +++++++++++++++++++++------ Marlin/watchdog.pde | 41 ++++++++++++++++++++----------- 5 files changed, 132 insertions(+), 57 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 888fe45c8..34e29ff53 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -65,7 +65,10 @@ #include "temperature.h" #include "ultralcd.h" -//public variables +//=========================================================================== +//=============================public variables ============================ +//=========================================================================== + unsigned long minsegmenttime; float max_feedrate[4]; // set the max speeds float axis_steps_per_unit[4]; @@ -77,17 +80,23 @@ float max_xy_jerk; //speed than can be stopped at once, if i understand correctl float max_z_jerk; float mintravelfeedrate; unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +// The current position of the tool in absolute steps long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode -//private variables +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions static volatile unsigned char block_buffer_head; // Index of the next block to be pushed static volatile unsigned char block_buffer_tail; // Index of the block to process now -// The current position of the tool in absolute steps +//=========================================================================== +//=============================functions ============================ +//=========================================================================== #define ONE_MINUTE_OF_MICROSECONDS 60000000.0 // Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 2607eef60..7d94d8063 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -32,6 +32,38 @@ #include "speed_lookuptable.h" + +//=========================================================================== +//=============================public variables ============================ +//=========================================================================== +block_t *current_block; // A pointer to the block currently being traced + + +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== +//static makes it inpossible to be called from outside of this file by extern.! + +// Variables used by The Stepper Driver Interrupt +static unsigned char out_bits; // The next stepping-bits to be output +static long counter_x, // Counter variables for the bresenham line tracer + counter_y, + counter_z, + counter_e; +static unsigned long step_events_completed; // The number of step events executed in the current block +#ifdef ADVANCE + static long advance_rate, advance, final_advance = 0; + static short old_advance = 0; + static short e_steps; +#endif +static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. +static long acceleration_time, deceleration_time; +//static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; +static unsigned short acc_step_rate; // needed for deccelaration start point +static char step_loops; + + + // if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. // for debugging purposes only, should be disabled by default #ifdef DEBUG_STEPS @@ -39,6 +71,10 @@ volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; #endif +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + // intRes = intIn1 * intIn2 >> 16 // uses: @@ -115,27 +151,9 @@ asm volatile ( \ #define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 static unsigned long previous_millis_lcd=0; static long previous_millis_buttons=0; -inline int intround(const float &x){return int(0.5+x);} -volatile char buttons=0; //the last checked buttons in a bit array. -int encoderpos=0; -short lastenc=0; #ifdef NEWPANEL static long blocking=0; #else static long blocking[8]={0,0,0,0,0,0,0,0}; #endif -MainMenu menu; + +static MainMenu menu; + + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + +inline int intround(const float &x){return int(0.5+x);} void lcd_status(const char* message) { @@ -1106,7 +1127,7 @@ void MainMenu::showControl() } } -#include "SdFat.h" + @@ -1437,8 +1458,7 @@ void MainMenu::update() -//return for string conversion routines -static char conv[8]; + // convert float to string with +123.4 format char *ftostr3(const float &x) diff --git a/Marlin/watchdog.pde b/Marlin/watchdog.pde index 71868cec5..167bc633d 100644 --- a/Marlin/watchdog.pde +++ b/Marlin/watchdog.pde @@ -3,10 +3,37 @@ #include #include +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== + static volatile uint8_t timeout_seconds=0; void(* ctrlaltdelete) (void) = 0; //does not work on my atmega2560 +//=========================================================================== +//=============================functinos ============================ +//=========================================================================== + + +/// intialise watch dog with a 1 sec interrupt time +void wd_init() +{ + WDTCSR = (1<1sec ISR(WDT_vect) { @@ -31,18 +58,4 @@ ISR(WDT_vect) } } -/// intialise watch dog with a 1 sec interrupt time -void wd_init() -{ - WDTCSR = (1< Date: Mon, 7 Nov 2011 22:33:13 +0100 Subject: [PATCH 041/430] made progmem mainly, found one bug in cardreader, added a empty class for cardreader in case no sd support. --- Marlin/EEPROMwrite.h | 79 ++- Marlin/Marlin.h | 6 +- Marlin/Marlin.pde | 147 +++-- Marlin/cardreader.h | 31 +- Marlin/cardreader.pde | 23 +- Marlin/pins.h | 1386 ++++++++++++++++++++--------------------- Marlin/ultralcd.pde | 123 ++-- 7 files changed, 944 insertions(+), 851 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index db9f2fde1..ae31bc9ec 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -25,6 +25,19 @@ template int EEPROM_readAnything(int &ee, T& value) } //====================================================================================== +#include + +void serialprintPGM(const char *str) +{ + char ch=pgm_read_byte(str); + while(ch) + { + Serial.print(ch); + ch=pgm_read_byte(++str); + } +} +#define SerialprintPGM(x) serialprintPGM(PSTR(x)) + #define EEPROM_OFFSET 100 @@ -62,7 +75,7 @@ void StoreSettings() char ver2[4]=EEPROM_VERSION; i=EEPROM_OFFSET; EEPROM_writeAnything(i,ver2); // validate data - SERIAL_ECHOLN("Settings Stored"); + SerialprintPGM("echo: Settings Stored\n"); } void RetrieveSettings(bool def=false) @@ -91,7 +104,7 @@ void RetrieveSettings(bool def=false) EEPROM_readAnything(i,Ki); EEPROM_readAnything(i,Kd); - SERIAL_ECHOLN("Stored settings retreived:"); + SerialprintPGM("echo: Stored settings retreived:\n"); } else { @@ -111,21 +124,57 @@ void RetrieveSettings(bool def=false) mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; max_xy_jerk=DEFAULT_XYJERK; max_z_jerk=DEFAULT_ZJERK; - SERIAL_ECHOLN("Using Default settings:"); + SerialprintPGM("echo: Using Default settings:\n"); } - SERIAL_ECHOLN("Steps per unit:"); - SERIAL_ECHOLN(" M92 X" <<_FLOAT(axis_steps_per_unit[0],3) << " Y" << _FLOAT(axis_steps_per_unit[1],3) << " Z" << _FLOAT(axis_steps_per_unit[2],3) << " E" << _FLOAT(axis_steps_per_unit[3],3)); - SERIAL_ECHOLN("Maximum feedrates (mm/s):"); - SERIAL_ECHOLN(" M203 X" <<_FLOAT(max_feedrate[0]/60,2)<<" Y" << _FLOAT(max_feedrate[1]/60,2) << " Z" << _FLOAT(max_feedrate[2]/60,2) << " E" << _FLOAT(max_feedrate[3]/60,2)); - SERIAL_ECHOLN("Maximum Acceleration (mm/s2):"); - SERIAL_ECHOLN(" M201 X" <<_FLOAT(max_acceleration_units_per_sq_second[0],0) << " Y" << _FLOAT(max_acceleration_units_per_sq_second[1],0) << " Z" << _FLOAT(max_acceleration_units_per_sq_second[2],0) << " E" << _FLOAT(max_acceleration_units_per_sq_second[3],0)); - SERIAL_ECHOLN("Acceleration: S=acceleration, T=retract acceleration"); - SERIAL_ECHOLN(" M204 S" <<_FLOAT(acceleration,2) << " T" << _FLOAT(retract_acceleration,2)); - SERIAL_ECHOLN("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); - SERIAL_ECHOLN(" M205 S" <<_FLOAT(minimumfeedrate/60,2) << " T" << _FLOAT(mintravelfeedrate/60,2) << " B" << _FLOAT(minsegmenttime,2) << " X" << _FLOAT(max_xy_jerk/60,2) << " Z" << _FLOAT(max_z_jerk/60,2)); + SerialprintPGM("echo: Steps per unit:\n M92 X"); + Serial.print(axis_steps_per_unit[0]); + SerialprintPGM(" Y"); + Serial.print(axis_steps_per_unit[1]); + SerialprintPGM(" Z"); + Serial.print(axis_steps_per_unit[2]); + SerialprintPGM(" E"); + Serial.print(axis_steps_per_unit[3]); + + SerialprintPGM("\nMaximum feedrates (mm/s):\n M203 X" ); + Serial.print(max_feedrate[0]/60); + SerialprintPGM(" Y" ); + Serial.print(max_feedrate[1]/60 ); + SerialprintPGM(" Z" ); + Serial.print(max_feedrate[2]/60 ); + SerialprintPGM(" E" ); + Serial.print(max_feedrate[3]/60); + SerialprintPGM("\nMaximum Acceleration (mm/s2):\n M201 X" ); + Serial.print(max_acceleration_units_per_sq_second[0] ); + SerialprintPGM(" Y" ); + Serial.print(max_acceleration_units_per_sq_second[1] ); + SerialprintPGM(" Z" ); + Serial.print(max_acceleration_units_per_sq_second[2] ); + SerialprintPGM(" E" ); + Serial.print(max_acceleration_units_per_sq_second[3]); + SerialprintPGM("\necho: Acceleration: S=acceleration, T=retract acceleration\n M204 S" ); + Serial.print(acceleration ); + SerialprintPGM(" T" ); + Serial.print(retract_acceleration); + SerialprintPGM("\necho: Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); + SerialprintPGM(" M205 S" ); + Serial.print(minimumfeedrate/60 ); + SerialprintPGM(" T" ); + Serial.print(mintravelfeedrate/60 ); + SerialprintPGM(" B" ); + Serial.print(minsegmenttime ); + SerialprintPGM(" X" ); + Serial.print(max_xy_jerk/60 ); + SerialprintPGM(" Z" ); + Serial.print(max_z_jerk/60); + SerialprintPGM("\n" ); #ifdef PIDTEMP - SERIAL_ECHOLN("PID settings:"); - SERIAL_ECHOLN(" M301 P" << _FLOAT(Kp,3) << " I" << _FLOAT(Ki,3) << " D" << _FLOAT(Kd,3)); + SerialprintPGM("PID settings:"); + SerialprintPGM(" M301 P" ); + Serial.print(Kp ); + SerialprintPGM(" I" ); + Serial.print(Ki ); + SerialprintPGM(" D" ); + Serial.print(Kd); #endif } diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 21eadeeb5..61b56fb97 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -9,8 +9,10 @@ #include "streaming.h" #define SERIAL_ECHO(x) Serial << "echo: " << x; #define SERIAL_ECHOLN(x) Serial << "echo: "< -1) || defined (HEATER_USES_AD595) tt = degHotend0(); #endif @@ -620,21 +637,21 @@ inline void process_commands() bt = degBed(); #endif #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - Serial.print("ok T:"); - Serial.print(tt); + SERIAL_PROTOCOL("ok T:"); + SERIAL_PROTOCOL(tt); #if TEMP_1_PIN > -1 #ifdef PIDTEMP - Serial.print(" B:"); + SERIAL_PROTOCOL(" B:"); #if TEMP_1_PIN > -1 - Serial.println(bt); + SERIAL_PROTOCOLLN(bt); #else - Serial.println(HeaterPower); + SERIAL_PROTOCOLLN(HeaterPower); #endif #else //not PIDTEMP - Serial.println(); + SERIAL_PROTOCOLLN(""); #endif //PIDTEMP #else - Serial.println(); + SERIAL_PROTOCOLLN(""); #endif //TEMP_1_PIN #else SERIAL_ERRORLN("No thermistors - no temp"); @@ -664,8 +681,7 @@ inline void process_commands() #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down - Serial.print("T:"); - Serial.println( degHotend0() ); + SERIAL_PROTOCOLLN("T:"<< degHotend0() ); codenum = millis(); } manage_heater(); @@ -694,12 +710,8 @@ inline void process_commands() if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { float tt=degHotend0(); - Serial.print("T:"); - Serial.println( tt ); - Serial.print("ok T:"); - Serial.print( tt ); - Serial.print(" B:"); - Serial.println( degBed() ); + SERIAL_PROTOCOLLN("T:"< -1) - Serial.print("x_min:"); - Serial.print((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + SERIAL_PROTOCOL("x_min:"); + SERIAL_PROTOCOL(((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (X_MAX_PIN > -1) - Serial.print("x_max:"); - Serial.print((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + SERIAL_PROTOCOL("x_max:"); + SERIAL_PROTOCOL(((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MIN_PIN > -1) - Serial.print("y_min:"); - Serial.print((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + SERIAL_PROTOCOL("y_min:"); + SERIAL_PROTOCOL(((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MAX_PIN > -1) - Serial.print("y_max:"); - Serial.print((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + SERIAL_PROTOCOL("y_max:"); + SERIAL_PROTOCOL(((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MIN_PIN > -1) - Serial.print("z_min:"); - Serial.print((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + SERIAL_PROTOCOL("z_min:"); + SERIAL_PROTOCOL(((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MAX_PIN > -1) - Serial.print("z_max:"); - Serial.print((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L "); + SERIAL_PROTOCOL("z_max:"); + SERIAL_PROTOCOL(((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif - Serial.println(""); + SERIAL_PROTOCOLLN(""); break; //TODO: update for all axis, use for loop case 201: // M201 @@ -885,9 +897,7 @@ inline void process_commands() } else { - Serial.print("echo: Unknown command:\""); - Serial.print(cmdbuffer[bufindr]); - Serial.println("\""); + SERIAL_ECHOLN("Unknown command:\""<=filesize ;}; - inline char get() { int16_t n = file.read(); return (n!=-1)?(char)n:'\n';}; + inline char get() { int16_t n = file.read(); return (n==-1)?'\n':(char)n;}; inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; public: @@ -52,6 +52,35 @@ private: bool autostart_stilltocheck; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. }; + +#else +class CardReader +{ +public: + inline CardReader(){}; + + inline static void initsd(){}; + inline static void write_command(char *buf){}; + + inline static void checkautostart(bool x) {}; + + inline static void closefile() {}; + inline static void release(){}; + inline static void startFileprint(){}; + inline static void startFilewrite(char *name){}; + inline static void pauseSDPrint(){}; + inline static void getStatus(){}; + + inline static void selectFile(char* name){}; + inline static void getfilename(const uint8_t nr){}; + inline static uint8_t getnrfilenames(){return 0;}; + + + inline static void ls() {}; + inline static bool eof() {return true;}; + inline static char get() {return 0;}; + inline static void setIndex(){}; +}; #endif //SDSUPPORT diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index a49b9999f..cd4bfeb7a 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -76,17 +76,14 @@ void CardReader::selectFile(char* name) file.close(); if (file.open(&root, name, O_READ)) { - Serial.print("File opened:"); - Serial.print(name); - Serial.print(" Size:"); filesize = file.fileSize(); - Serial.println(filesize); + SERIAL_PROTOCOLLN("File opened:"< Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 19 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PIN 29 -#define Z_DIR_PIN 30 -#define Z_ENABLE_PIN 31 -#define Z_MIN_PIN 2 -#define Z_MAX_PIN 1 - -#define E_STEP_PIN 12 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN 3 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN 0 -#define FAN_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 14 -#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ - - - -#endif - - -/**************************************************************************************** -* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* -* -****************************************************************************************/ -#if MOTHERBOARD == 2 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 24 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PINN 27 -#define Z_DIR_PINN 28 -#define Z_ENABLE_PIN 29 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 31 - -#define E_STEP_PIN 17 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS 4 -#define LED_PIN 0 - -#define SD_CARD_WRITE 2 -#define SD_CARD_DETECT 3 -#define SD_CARD_SELECT 4 - -//our RS485 pins -#define TX_ENABLE_PIN 12 -#define RX_ENABLE_PIN 13 - -//pin for controlling the PSU. -#define PS_ON_PIN 14 - -#define FAN_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN -1 -#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - - - -#endif - -/**************************************************************************************** -* Arduino Mega pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 33 -#define MOTHERBOARD 3 -#define RAMPS_V_1_3 -#endif -#if MOTHERBOARD == 3 -#define KNOWN_BOARD 1 - -//////////////////FIX THIS////////////// -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 -// #define RAMPS_V_1_3 -// #define RAMPS_V_1_0 - -#ifdef RAMPS_V_1_3 - -#define X_STEP_PIN 54 -#define X_DIR_PIN 55 -#define X_ENABLE_PIN 38 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. - -#define Y_STEP_PIN 60 -#define Y_DIR_PIN 61 -#define Y_ENABLE_PIN 56 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN -1 //15 - -#define Z_STEP_PIN 46 -#define Z_DIR_PIN 48 -#define Z_ENABLE_PIN 62 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E_STEP_PIN 26 -#define E_DIR_PIN 28 -#define E_ENABLE_PIN 24 - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 9 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#define HEATER_0_PIN 10 -#define HEATER_1_PIN 8 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 13 // ANALOG NUMBERING -#define TEMP_1_PIN 14 // ANALOG NUMBERING -#define TEMP_2_PIN -1 // ANALOG NUMBERING - - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default - -#define X_STEP_PIN 26 -#define X_DIR_PIN 28 -#define X_ENABLE_PIN 24 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 - -#define Y_STEP_PIN 38 -#define Y_DIR_PIN 40 -#define Y_ENABLE_PIN 36 -#define Y_MIN_PIN 16 -#define Y_MAX_PIN -1 //17 - -#define Z_STEP_PIN 44 -#define Z_DIR_PIN 46 -#define Z_ENABLE_PIN 42 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E_STEP_PIN 32 -#define E_DIR_PIN 34 -#define E_ENABLE_PIN 30 - -#define SDPOWER 48 -#define SDSS 53 -#define LED_PIN 13 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - - - -#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 - #define HEATER_0_PIN 12 // RAMPS 1.0 - #define HEATER_1_PIN -1 // RAMPS 1.0 - #define FAN_PIN 11 // RAMPS 1.0 - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 - #define HEATER_0_PIN 10 // RAMPS 1.1 - #define HEATER_1_PIN 8 // RAMPS 1.1 - #define FAN_PIN 9 // RAMPS 1.1 -#endif -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#endif - -// SPI for Max6675 Thermocouple - -#ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 - #define MISO_PIN 50 - #define MOSI_PIN 51 - #define MAX6675_SS 53 -#else - #define MAX6675_SS 49 -#endif - - -#endif -/**************************************************************************************** -* Duemilanove w/ ATMega328P pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 4 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega328P__ -#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 19 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 17 -#define X_MAX_PIN -1 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 13 -#define Z_DIR_PIN 3 -#define Z_ENABLE_PIN 2 -#define Z_MIN_PIN 4 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN 5 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - -#endif - -/**************************************************************************************** -* Gen6 pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 5 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ - #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -//x axis pins - #define X_STEP_PIN 15 - #define X_DIR_PIN 18 - #define X_ENABLE_PIN 19 - #define X_MIN_PIN 20 - #define X_MAX_PIN -1 - - //y axis pins - #define Y_STEP_PIN 23 - #define Y_DIR_PIN 22 - #define Y_ENABLE_PIN 24 - #define Y_MIN_PIN 25 - #define Y_MAX_PIN -1 - - //z axis pins - #define Z_STEP_PIN 27 - #define Z_DIR_PIN 28 - #define Z_ENABLE_PIN 29 - #define Z_MIN_PIN 30 - #define Z_MAX_PIN -1 - - //extruder pins - #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 - #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 - #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 - #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 - #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 - #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 - #define HEATER_2_PIN -1 - - #define SDPOWER -1 - #define SDSS 17 - #define LED_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_2_PIN -1 - #define FAN_PIN -1 //changed @ rkoeppl 20110410 - #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 - //our pin for debugging. - - #define DEBUG_PIN 0 - - //our RS485 pins - #define TX_ENABLE_PIN 12 - #define RX_ENABLE_PIN 13 - -#endif - -/**************************************************************************************** -* Sanguinololu pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 62 -#define MOTHERBOARD 6 -#define SANGUINOLOLU_V_1_2 -#endif -#if MOTHERBOARD == 6 -#define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 21 -#define X_MIN_PIN 18 -#define X_MAX_PIN -2 - -#define Y_STEP_PIN 22 -#define Y_DIR_PIN 23 -#define Y_MIN_PIN 19 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 3 -#define Z_DIR_PIN 2 -#define Z_MIN_PIN 20 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 1 -#define E_DIR_PIN 0 - -#define LED_PIN -1 - -#define FAN_PIN -1 - -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 13 // (extruder) - -#ifdef SANGUINOLOLU_V_1_2 - -#define HEATER_1_PIN 12 // (bed) -#define X_ENABLE_PIN 14 -#define Y_ENABLE_PIN 14 -#define Z_ENABLE_PIN 26 -#define E_ENABLE_PIN 14 - -#else - -#define HEATER_1_PIN 14 // (bed) -#define X_ENABLE_PIN -1 -#define Y_ENABLE_PIN -1 -#define Z_ENABLE_PIN -1 -#define E_ENABLE_PIN -1 - -#endif - -#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) -#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) -#define TEMP_2_PIN -1 -#define SDPOWER -1 -#define SDSS 31 -#define HEATER_2_PIN -1 - -#endif - - -#if MOTHERBOARD == 7 -#define KNOWN_BOARD -/***************************************************************** -* Ultimaker pin assignment -******************************************************************/ - -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -#define X_STEP_PIN 25 -#define X_DIR_PIN 23 -#define X_MIN_PIN 22 -#define X_MAX_PIN 24 -#define X_ENABLE_PIN 27 - -#define Y_STEP_PIN 31 -#define Y_DIR_PIN 33 -#define Y_MIN_PIN 26 -#define Y_MAX_PIN 28 -#define Y_ENABLE_PIN 29 - -#define Z_STEP_PIN 37 -#define Z_DIR_PIN 39 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 32 -#define Z_ENABLE_PIN 35 - -#define HEATER_1_PIN 4 -#define TEMP_1_PIN 11 - -#define EXTRUDER_0_STEP_PIN 43 -#define EXTRUDER_0_DIR_PIN 45 -#define EXTRUDER_0_ENABLE_PIN 41 -#define HEATER_0_PIN 2 -#define TEMP_0_PIN 8 - -#define EXTRUDER_1_STEP_PIN 49 -#define EXTRUDER_1_DIR_PIN 47 -#define EXTRUDER_1_ENABLE_PIN 51 -#define EXTRUDER_1_HEATER_PIN 3 -#define EXTRUDER_1_TEMPERATURE_PIN 10 -#define HEATER_2_PIN 51 -#define TEMP_2_PIN 3 - - - -#define E_STEP_PIN EXTRUDER_0_STEP_PIN -#define E_DIR_PIN EXTRUDER_0_DIR_PIN -#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 7 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#ifdef ULTRA_LCD - - #ifdef NEWPANEL - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 5 - #define LCD_PINS_D7 6 - - //buttons are directly attached - #define BTN_EN1 40 - #define BTN_EN2 42 - #define BTN_ENC 19 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - - #define SDCARDDETECT 38 - - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - #else //old style panel with shift register - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - //buttons are attached to a shift register - #define SHIFT_CLK 38 - #define SHIFT_LD 42 - #define SHIFT_OUT 40 - #define SHIFT_EN 17 - - #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 5 - #define LCD_PINS_D4 6 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 20 - #define LCD_PINS_D7 19 - - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - - - //bits in the shift register that carry the buttons for: - // left up center down right red - #define BL_LE 7 - #define BL_UP 6 - #define BL_MI 5 - #define BL_DW 4 - #define BL_RI 3 - #define BL_ST 2 - - #define BLEN_B 1 - #define BLEN_A 0 - #endif -#endif //ULTRA_LCD - -#endif - -/**************************************************************************************** -* Teensylu 0.7 pin assingments (ATMEGA90USB) -* Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! -****************************************************************************************/ -#if MOTHERBOARD == 8 -#define MOTHERBOARD 8 -#define KNOWN_BOARD 1 - - -#define X_STEP_PIN 0 -#define X_DIR_PIN 1 -#define X_ENABLE_PIN 39 -#define X_MIN_PIN 13 -#define X_MAX_PIN -1 - -#define Y_STEP_PIN 2 -#define Y_DIR_PIN 3 -#define Y_ENABLE_PIN 38 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 4 -#define Z_DIR_PIN 5 -#define Z_ENABLE_PIN 23 -#define Z_MIN_PIN 15 -#define Z_MAX_PIN -1 - -#define E_STEP_PIN 6 -#define E_DIR_PIN 7 -#define E_ENABLE_PIN 19 - - - -#define HEATER_0_PIN 21 // Extruder -#define HEATER_1_PIN 20 // Bed -#define HEATER_2_PIN -1 -#define FAN_PIN 22 // Fan - -#define TEMP_0_PIN 7 // Extruder -#define TEMP_1_PIN 6 // Bed -#define TEMP_2_PIN -1 - -#define SDPOWER -1 -#define SDSS 8 -#define LED_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 -#define ALARM_PIN -1 - -#ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support - #define SCK_PIN 9 - #define MISO_PIN 11 - #define MOSI_PIN 10 -#endif -#endif - -#ifndef KNOWN_BOARD -#error Unknown MOTHERBOARD value in configuration.h -#endif - -//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} - +#ifndef PINS_H +#define PINS_H + +/**************************************************************************************** +* Arduino pin assignment +* +* ATMega168 +* +-\/-+ +* PC6 1| |28 PC5 (AI 5 / D19) +* (D 0) PD0 2| |27 PC4 (AI 4 / D18) +* (D 1) PD1 3| |26 PC3 (AI 3 / D17) +* (D 2) PD2 4| |25 PC2 (AI 2 / D16) +* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) +* (D 4) PD4 6| |23 PC0 (AI 0 / D14) +* VCC 7| |22 GND +* GND 8| |21 AREF +* PB6 9| |20 AVCC +* PB7 10| |19 PB5 (D 13) +* PWM+ (D 5) PD5 11| |18 PB4 (D 12) +* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM +* (D 7) PD7 13| |16 PB2 (D 10) PWM +* (D 8) PB0 14| |15 PB1 (D 9) PWM +* +----+ +****************************************************************************************/ +#if MOTHERBOARD == 0 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega168__ +#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. +#endif + +#define X_STEP_PIN 2 +#define X_DIR_PIN 3 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 4 +#define X_MAX_PIN 9 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN 13 + +#define Z_STEP_PIN 19 +#define Z_DIR_PIN 18 +#define Z_ENABLE_PIN 5 +#define Z_MIN_PIN 17 +#define Z_MAX_PIN 16 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN 15 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#endif + + + +/**************************************************************************************** +* Sanguino/RepRap Motherboard with direct-drive extruders +* +* ATMega644P +* +* +---\/---+ +* (D 0) PB0 1| |40 PA0 (AI 0 / D31) +* (D 1) PB1 2| |39 PA1 (AI 1 / D30) +* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +* RST 9| |32 AREF +* VCC 10| |31 GND +* GND 11| |30 AVCC +* XTAL2 12| |29 PC7 (D 23) +* XTAL1 13| |28 PC6 (D 22) +* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +* +--------+ +* +****************************************************************************************/ +#if MOTHERBOARD == 1 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 19 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PIN 29 +#define Z_DIR_PIN 30 +#define Z_ENABLE_PIN 31 +#define Z_MIN_PIN 2 +#define Z_MAX_PIN 1 + +#define E_STEP_PIN 12 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN 3 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN 0 +#define FAN_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 14 +#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ + + + +#endif + + +/**************************************************************************************** +* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* +* +****************************************************************************************/ +#if MOTHERBOARD == 2 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PINN 27 +#define Z_DIR_PINN 28 +#define Z_ENABLE_PIN 29 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 31 + +#define E_STEP_PIN 17 +#define E_DIR_PIN 16 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS 4 +#define LED_PIN 0 + +#define SD_CARD_WRITE 2 +#define SD_CARD_DETECT 3 +#define SD_CARD_SELECT 4 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#define FAN_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN -1 +#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + + + +#endif + +/**************************************************************************************** +* Arduino Mega pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 33 +#define MOTHERBOARD 3 +#define RAMPS_V_1_3 +#endif +#if MOTHERBOARD == 3 +#define KNOWN_BOARD 1 + +//////////////////FIX THIS////////////// +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 +// #define RAMPS_V_1_3 +// #define RAMPS_V_1_0 + +#ifdef RAMPS_V_1_3 + +#define X_STEP_PIN 54 +#define X_DIR_PIN 55 +#define X_ENABLE_PIN 38 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. + +#define Y_STEP_PIN 60 +#define Y_DIR_PIN 61 +#define Y_ENABLE_PIN 56 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 //15 + +#define Z_STEP_PIN 46 +#define Z_DIR_PIN 48 +#define Z_ENABLE_PIN 62 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 26 +#define E_DIR_PIN 28 +#define E_ENABLE_PIN 24 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 9 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#define HEATER_0_PIN 10 +#define HEATER_1_PIN 8 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 13 // ANALOG NUMBERING +#define TEMP_1_PIN 14 // ANALOG NUMBERING +#define TEMP_2_PIN -1 // ANALOG NUMBERING + + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default + +#define X_STEP_PIN 26 +#define X_DIR_PIN 28 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 + +#define Y_STEP_PIN 38 +#define Y_DIR_PIN 40 +#define Y_ENABLE_PIN 36 +#define Y_MIN_PIN 16 +#define Y_MAX_PIN -1 //17 + +#define Z_STEP_PIN 44 +#define Z_DIR_PIN 46 +#define Z_ENABLE_PIN 42 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E_STEP_PIN 32 +#define E_DIR_PIN 34 +#define E_ENABLE_PIN 30 + +#define SDPOWER 48 +#define SDSS 53 +#define LED_PIN 13 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + + + +#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 + #define HEATER_0_PIN 12 // RAMPS 1.0 + #define HEATER_1_PIN -1 // RAMPS 1.0 + #define FAN_PIN 11 // RAMPS 1.0 + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 + #define HEATER_0_PIN 10 // RAMPS 1.1 + #define HEATER_1_PIN 8 // RAMPS 1.1 + #define FAN_PIN 9 // RAMPS 1.1 +#endif +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#endif + +// SPI for Max6675 Thermocouple + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 + #define MISO_PIN 50 + #define MOSI_PIN 51 + #define MAX6675_SS 53 +#else + #define MAX6675_SS 49 +#endif + + +#endif +/**************************************************************************************** +* Duemilanove w/ ATMega328P pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 4 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega328P__ +#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 17 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 13 +#define Z_DIR_PIN 3 +#define Z_ENABLE_PIN 2 +#define Z_MIN_PIN 4 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 11 +#define E_DIR_PIN 12 +#define E_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN 5 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + +#endif + +/**************************************************************************************** +* Gen6 pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 5 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +//x axis pins + #define X_STEP_PIN 15 + #define X_DIR_PIN 18 + #define X_ENABLE_PIN 19 + #define X_MIN_PIN 20 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 25 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 27 + #define Z_DIR_PIN 28 + #define Z_ENABLE_PIN 29 + #define Z_MIN_PIN 30 + #define Z_MAX_PIN -1 + + //extruder pins + #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 + #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 + #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 + #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 + #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 + #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 + #define HEATER_2_PIN -1 + + #define SDPOWER -1 + #define SDSS 17 + #define LED_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_2_PIN -1 + #define FAN_PIN -1 //changed @ rkoeppl 20110410 + #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 + //our pin for debugging. + + #define DEBUG_PIN 0 + + //our RS485 pins + #define TX_ENABLE_PIN 12 + #define RX_ENABLE_PIN 13 + +#endif + +/**************************************************************************************** +* Sanguinololu pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 62 +#define MOTHERBOARD 6 +#define SANGUINOLOLU_V_1_2 +#endif +#if MOTHERBOARD == 6 +#define KNOWN_BOARD 1 +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 21 +#define X_MIN_PIN 18 +#define X_MAX_PIN -2 + +#define Y_STEP_PIN 22 +#define Y_DIR_PIN 23 +#define Y_MIN_PIN 19 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 3 +#define Z_DIR_PIN 2 +#define Z_MIN_PIN 20 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 1 +#define E_DIR_PIN 0 + +#define LED_PIN -1 + +#define FAN_PIN -1 + +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 13 // (extruder) + +#ifdef SANGUINOLOLU_V_1_2 + +#define HEATER_1_PIN 12 // (bed) +#define X_ENABLE_PIN 14 +#define Y_ENABLE_PIN 14 +#define Z_ENABLE_PIN 26 +#define E_ENABLE_PIN 14 + +#else + +#define HEATER_1_PIN 14 // (bed) +#define X_ENABLE_PIN -1 +#define Y_ENABLE_PIN -1 +#define Z_ENABLE_PIN -1 +#define E_ENABLE_PIN -1 + +#endif + +#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) +#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define TEMP_2_PIN -1 +#define SDPOWER -1 +#define SDSS 31 +#define HEATER_2_PIN -1 + +#endif + + +#if MOTHERBOARD == 7 +#define KNOWN_BOARD +/***************************************************************** +* Ultimaker pin assignment +******************************************************************/ + +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +#define X_STEP_PIN 25 +#define X_DIR_PIN 23 +#define X_MIN_PIN 22 +#define X_MAX_PIN 24 +#define X_ENABLE_PIN 27 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_MIN_PIN 26 +#define Y_MAX_PIN 28 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 37 +#define Z_DIR_PIN 39 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 32 +#define Z_ENABLE_PIN 35 + +#define HEATER_1_PIN 4 +#define TEMP_1_PIN 11 + +#define EXTRUDER_0_STEP_PIN 43 +#define EXTRUDER_0_DIR_PIN 45 +#define EXTRUDER_0_ENABLE_PIN 41 +#define HEATER_0_PIN 2 +#define TEMP_0_PIN 8 + +#define EXTRUDER_1_STEP_PIN 49 +#define EXTRUDER_1_DIR_PIN 47 +#define EXTRUDER_1_ENABLE_PIN 51 +#define EXTRUDER_1_HEATER_PIN 3 +#define EXTRUDER_1_TEMPERATURE_PIN 10 +#define HEATER_2_PIN 51 +#define TEMP_2_PIN 3 + + + +#define E_STEP_PIN EXTRUDER_0_STEP_PIN +#define E_DIR_PIN EXTRUDER_0_DIR_PIN +#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 7 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#ifdef ULTRA_LCD + + #ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + #define LCD_PINS_RS 20 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 6 + + //buttons are directly attached + #define BTN_EN1 40 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 38 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + //buttons are attached to a shift register + #define SHIFT_CLK 38 + #define SHIFT_LD 42 + #define SHIFT_OUT 40 + #define SHIFT_EN 17 + + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 5 + #define LCD_PINS_D4 6 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 20 + #define LCD_PINS_D7 19 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + + //bits in the shift register that carry the buttons for: + // left up center down right red + #define BL_LE 7 + #define BL_UP 6 + #define BL_MI 5 + #define BL_DW 4 + #define BL_RI 3 + #define BL_ST 2 + + #define BLEN_B 1 + #define BLEN_A 0 + #endif +#endif //ULTRA_LCD + +#endif + +/**************************************************************************************** +* Teensylu 0.7 pin assingments (ATMEGA90USB) +* Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! +****************************************************************************************/ +#if MOTHERBOARD == 8 +#define MOTHERBOARD 8 +#define KNOWN_BOARD 1 + + +#define X_STEP_PIN 0 +#define X_DIR_PIN 1 +#define X_ENABLE_PIN 39 +#define X_MIN_PIN 13 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 2 +#define Y_DIR_PIN 3 +#define Y_ENABLE_PIN 38 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 4 +#define Z_DIR_PIN 5 +#define Z_ENABLE_PIN 23 +#define Z_MIN_PIN 15 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 6 +#define E_DIR_PIN 7 +#define E_ENABLE_PIN 19 + + + +#define HEATER_0_PIN 21 // Extruder +#define HEATER_1_PIN 20 // Bed +#define HEATER_2_PIN -1 +#define FAN_PIN 22 // Fan + +#define TEMP_0_PIN 7 // Extruder +#define TEMP_1_PIN 6 // Bed +#define TEMP_2_PIN -1 + +#define SDPOWER -1 +#define SDSS 8 +#define LED_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 +#define ALARM_PIN -1 + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support + #define SCK_PIN 9 + #define MISO_PIN 11 + #define MOSI_PIN 10 +#endif +#endif + +#ifndef KNOWN_BOARD +#error Unknown MOTHERBOARD value in configuration.h +#endif + +//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! +#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} + #endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 981aa8147..91d1a54a8 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -42,6 +42,19 @@ static long previous_millis_buttons=0; static MainMenu menu; +#include + +void lcdProgMemprint(const char *str) +{ + char ch=pgm_read_byte(str); + while(ch) + { + lcd.print(ch); + ch=pgm_read_byte(++str); + } +} +#define lcdprintPGM(x) lcdProgMemprint(PSTR(x)) + //=========================================================================== //=============================functions ============================ @@ -264,9 +277,9 @@ void MainMenu::showStatus() feedmultiplychanged=false; encoderpos=feedmultiply; clear(); - lcd.setCursor(0,0);lcd.print("\002123/567\001 "); + lcd.setCursor(0,0);lcdprintPGM("\002123/567\001 "); #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - lcd.setCursor(10,0);lcd.print("B123/567\001 "); + lcd.setCursor(10,0);lcdprintPGM("B123/567\001 "); #endif } @@ -311,7 +324,7 @@ void MainMenu::showStatus() if(starttime!=oldtime) { - lcd.print(itostr2(time/60));lcd.print("h ");lcd.print(itostr2(time%60));lcd.print("m"); + lcd.print(itostr2(time/60));lcdprintPGM("h ");lcd.print(itostr2(time%60));lcdprintPGM("m"); oldtime=time; } } @@ -320,7 +333,7 @@ void MainMenu::showStatus() if((currentz!=oldzpos)||force_lcd_update) { lcd.setCursor(10,1); - lcd.print("Z:");lcd.print(itostr31(currentz)); + lcdprintPGM("Z:");lcd.print(itostr31(currentz)); oldzpos=currentz; } static int oldfeedmultiply=0; @@ -339,7 +352,7 @@ void MainMenu::showStatus() { oldfeedmultiply=curfeedmultiply; lcd.setCursor(0,2); - lcd.print(itostr3(curfeedmultiply));lcd.print("% "); + lcd.print(itostr3(curfeedmultiply));lcdprintPGM("% "); } if(messagetext[0]!='\0') { @@ -353,9 +366,9 @@ void MainMenu::showStatus() if(force_lcd_update) //initial display of content { encoderpos=feedmultiply; - lcd.setCursor(0,0);lcd.print("\002123/567\001 "); + lcd.setCursor(0,0);lcdprintPGM("\002123/567\001 "); #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - lcd.setCursor(10,0);lcd.print("B123/567\001 "); + lcd.setCursor(10,0);lcdprintPGM("B123/567\001 "); #endif } @@ -405,7 +418,7 @@ void MainMenu::showPrepare() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Prepare"); + lcd.setCursor(0,line);lcdprintPGM(" Prepare"); } if((activeline==line) && CLICKED) { @@ -418,7 +431,7 @@ void MainMenu::showPrepare() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Auto Home"); + lcd.setCursor(0,line);lcdprintPGM(" Auto Home"); } if((activeline==line) && CLICKED) { @@ -431,7 +444,7 @@ void MainMenu::showPrepare() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Set Origin"); + lcd.setCursor(0,line);lcdprintPGM(" Set Origin"); } if((activeline==line) && CLICKED) @@ -445,7 +458,7 @@ void MainMenu::showPrepare() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Preheat"); + lcd.setCursor(0,line);lcdprintPGM(" Preheat"); } if((activeline==line) && CLICKED) { @@ -458,7 +471,7 @@ void MainMenu::showPrepare() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Extrude"); + lcd.setCursor(0,line);lcdprintPGM(" Extrude"); } if((activeline==line) && CLICKED) { @@ -472,7 +485,7 @@ void MainMenu::showPrepare() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Disable Steppers"); + lcd.setCursor(0,line);lcdprintPGM(" Disable Steppers"); } if((activeline==line) && CLICKED) { @@ -541,7 +554,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Control"); + lcd.setCursor(0,line);lcdprintPGM(" Control"); } if((activeline==line) && CLICKED) { @@ -554,7 +567,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" \002Nozzle:"); + lcd.setCursor(0,line);lcdprintPGM(" \002Nozzle:"); lcd.setCursor(13,line);lcd.print(ftostr3(intround(degHotend0()))); } @@ -588,7 +601,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Fan speed:"); + lcd.setCursor(0,line);lcdprintPGM(" Fan speed:"); lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); } @@ -625,8 +638,8 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Acc:"); - lcd.setCursor(13,line);lcd.print(itostr3(acceleration/100));lcd.print("00"); + lcd.setCursor(0,line);lcdprintPGM(" Acc:"); + lcd.setCursor(13,line);lcd.print(itostr3(acceleration/100));lcdprintPGM("00"); } if((activeline==line) ) @@ -650,7 +663,7 @@ void MainMenu::showControl() { if(encoderpos<5) encoderpos=5; if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); } } }break; @@ -658,7 +671,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Vxy-jerk: "); + lcd.setCursor(0,line);lcdprintPGM(" Vxy-jerk: "); lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk/60)); } @@ -692,7 +705,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" PID-P: "); + lcd.setCursor(0,line);lcdprintPGM(" PID-P: "); lcd.setCursor(13,line);lcd.print(itostr4(Kp)); } @@ -726,7 +739,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" PID-I: "); + lcd.setCursor(0,line);lcdprintPGM(" PID-I: "); lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); } @@ -760,7 +773,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" PID-D: "); + lcd.setCursor(0,line);lcdprintPGM(" PID-D: "); lcd.setCursor(13,line);lcd.print(itostr4(Kd)); } @@ -797,7 +810,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" PID-C: "); + lcd.setCursor(0,line);lcdprintPGM(" PID-C: "); lcd.setCursor(13,line);lcd.print(itostr3(Kc)); } @@ -834,11 +847,11 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Vmax "); - if(i==ItemC_vmaxx)lcd.print("x:"); - if(i==ItemC_vmaxy)lcd.print("y:"); - if(i==ItemC_vmaxz)lcd.print("z:"); - if(i==ItemC_vmaxe)lcd.print("e:"); + lcd.setCursor(0,line);lcdprintPGM(" Vmax "); + if(i==ItemC_vmaxx)lcdprintPGM("x:"); + if(i==ItemC_vmaxy)lcdprintPGM("y:"); + if(i==ItemC_vmaxz)lcdprintPGM("z:"); + if(i==ItemC_vmaxe)lcdprintPGM("e:"); lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemC_vmaxx]/60)); } @@ -873,7 +886,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Vmin:"); + lcd.setCursor(0,line);lcdprintPGM(" Vmin:"); lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate/60)); } @@ -907,7 +920,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" VTrav min:"); + lcd.setCursor(0,line);lcdprintPGM(" VTrav min:"); lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate/60)); } @@ -945,12 +958,12 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Amax "); - if(i==ItemC_amaxx)lcd.print("x:"); - if(i==ItemC_amaxy)lcd.print("y:"); - if(i==ItemC_amaxz)lcd.print("z:"); - if(i==ItemC_amaxe)lcd.print("e:"); - lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100));lcd.print("00"); + lcd.setCursor(0,line);lcdprintPGM(" Amax "); + if(i==ItemC_amaxx)lcdprintPGM("x:"); + if(i==ItemC_amaxy)lcdprintPGM("y:"); + if(i==ItemC_amaxz)lcdprintPGM("z:"); + if(i==ItemC_amaxe)lcdprintPGM("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100));lcdprintPGM("00"); } if((activeline==line) ) @@ -974,7 +987,7 @@ void MainMenu::showControl() { if(encoderpos<1) encoderpos=1; if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); } } }break; @@ -982,8 +995,8 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" A-retract:"); - lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcd.print("00"); + lcd.setCursor(0,line);lcdprintPGM(" A-retract:"); + lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcdprintPGM("00"); } if((activeline==line) ) @@ -1008,7 +1021,7 @@ void MainMenu::showControl() { if(encoderpos<10) encoderpos=10; if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcd.print("00"); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); } } }break; @@ -1016,7 +1029,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Esteps/mm:"); + lcd.setCursor(0,line);lcdprintPGM(" Esteps/mm:"); lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); } @@ -1053,7 +1066,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Store EPROM"); + lcd.setCursor(0,line);lcdprintPGM(" Store EPROM"); } if((activeline==line) && CLICKED) { @@ -1067,7 +1080,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Load EPROM"); + lcd.setCursor(0,line);lcdprintPGM(" Load EPROM"); } if((activeline==line) && CLICKED) { @@ -1081,7 +1094,7 @@ void MainMenu::showControl() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" Restore Failsafe"); + lcd.setCursor(0,line);lcdprintPGM(" Restore Failsafe"); } if((activeline==line) && CLICKED) { @@ -1165,7 +1178,7 @@ void MainMenu::showSD() { if(force_lcd_update) { - lcd.setCursor(0,line);lcd.print(" File"); + lcd.setCursor(0,line);lcdprintPGM(" File"); } if((activeline==line) && CLICKED) { @@ -1185,11 +1198,11 @@ void MainMenu::showSD() if(true) #endif { - lcd.print(" \004Refresh"); + lcdprintPGM(" \004Refresh"); } else { - lcd.print(" \004Insert Card"); + lcdprintPGM(" \004Insert Card"); } } @@ -1210,7 +1223,7 @@ void MainMenu::showSD() { card.getfilename(i-2); //Serial.print("Filenr:");Serial.println(i-2); - lcd.setCursor(0,line);lcd.print(" ");lcd.print(card.filename); + lcd.setCursor(0,line);lcdprintPGM(" ");lcd.print(card.filename); } if((activeline==line) && CLICKED) { @@ -1292,7 +1305,7 @@ void MainMenu::showMainMenu() { case ItemM_watch: { - if(force_lcd_update) {lcd.setCursor(0,line);lcd.print(" Watch \x7E");} + if(force_lcd_update) {lcd.setCursor(0,line);lcdprintPGM(" Watch \x7E");} if((activeline==line)&&CLICKED) { BLOCK; @@ -1302,7 +1315,7 @@ void MainMenu::showMainMenu() } break; case ItemM_prepare: { - if(force_lcd_update) {lcd.setCursor(0,line);lcd.print(" Prepare \x7E");} + if(force_lcd_update) {lcd.setCursor(0,line);lcdprintPGM(" Prepare \x7E");} if((activeline==line)&&CLICKED) { BLOCK; @@ -1313,7 +1326,7 @@ void MainMenu::showMainMenu() case ItemM_control: { - if(force_lcd_update) {lcd.setCursor(0,line);lcd.print(" Control \x7E");} + if(force_lcd_update) {lcd.setCursor(0,line);lcdprintPGM(" Control \x7E");} if((activeline==line)&&CLICKED) { BLOCK; @@ -1334,13 +1347,13 @@ void MainMenu::showMainMenu() #endif { if(card.sdprinting) - lcd.print(" Stop Print \x7E"); + lcdprintPGM(" Stop Print \x7E"); else - lcd.print(" Card Menu \x7E"); + lcdprintPGM(" Card Menu \x7E"); } else { - lcd.print(" No Card"); + lcdprintPGM(" No Card"); } } #ifdef CARDINSERTED From ab154d55927776add58c878f7de94e82b07bee1c Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Wed, 9 Nov 2011 20:27:15 +0100 Subject: [PATCH 042/430] project progmem finished: total change with ultipanel: 2456 byte free ram initial. now: 4374 ram. --- Marlin/EEPROMwrite.h | 214 ++++++++++++++++++++--------------------- Marlin/Marlin.h | 49 ++++++++-- Marlin/Marlin.pde | 124 +++++++++++++++--------- Marlin/cardreader.h | 4 +- Marlin/cardreader.pde | 38 +++++--- Marlin/stepper.cpp | 4 +- Marlin/temperature.cpp | 23 +++-- Marlin/ultralcd.h | 1 + Marlin/ultralcd.pde | 17 +++- Marlin/watchdog.pde | 7 +- 10 files changed, 294 insertions(+), 187 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index ae31bc9ec..fcb3d8d39 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -25,18 +25,9 @@ template int EEPROM_readAnything(int &ee, T& value) } //====================================================================================== -#include +#define SERIAL_ECHOPAIR(name,value) {SERIAL_ECHOPGM(name);SERIAL_ECHO(value);} + -void serialprintPGM(const char *str) -{ - char ch=pgm_read_byte(str); - while(ch) - { - Serial.print(ch); - ch=pgm_read_byte(++str); - } -} -#define SerialprintPGM(x) serialprintPGM(PSTR(x)) #define EEPROM_OFFSET 100 @@ -48,8 +39,9 @@ void serialprintPGM(const char *str) // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. #define EEPROM_VERSION "V04" -void StoreSettings() +inline void StoreSettings() { +#ifdef EEPROM_SETTINGS char ver[4]= "000"; int i=EEPROM_OFFSET; EEPROM_writeAnything(i,ver); // invalidate data first @@ -75,107 +67,115 @@ void StoreSettings() char ver2[4]=EEPROM_VERSION; i=EEPROM_OFFSET; EEPROM_writeAnything(i,ver2); // validate data - SerialprintPGM("echo: Settings Stored\n"); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Settings Stored"); +#endif //EEPROM_SETTINGS } -void RetrieveSettings(bool def=false) +inline void RetrieveSettings(bool def=false) { // if def=true, the default values will be used - int i=EEPROM_OFFSET; - char stored_ver[4]; - char ver[4]=EEPROM_VERSION; - EEPROM_readAnything(i,stored_ver); //read stored version - // SERIAL_ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); - if ((!def)&&(strncmp(ver,stored_ver,3)==0)) - { // version number match - EEPROM_readAnything(i,axis_steps_per_unit); - EEPROM_readAnything(i,max_feedrate); - EEPROM_readAnything(i,max_acceleration_units_per_sq_second); - EEPROM_readAnything(i,acceleration); - EEPROM_readAnything(i,retract_acceleration); - EEPROM_readAnything(i,minimumfeedrate); - EEPROM_readAnything(i,mintravelfeedrate); - EEPROM_readAnything(i,minsegmenttime); - EEPROM_readAnything(i,max_xy_jerk); - EEPROM_readAnything(i,max_z_jerk); - #ifndef PIDTEMP - float Kp,Ki,Kd; - #endif - EEPROM_readAnything(i,Kp); - EEPROM_readAnything(i,Ki); - EEPROM_readAnything(i,Kd); + #ifdef EEPROM_SETTINGS + int i=EEPROM_OFFSET; + char stored_ver[4]; + char ver[4]=EEPROM_VERSION; + EEPROM_readAnything(i,stored_ver); //read stored version + // SERIAL_ECHOLN("Version: [" << ver << "] Stored version: [" << stored_ver << "]"); + if ((!def)&&(strncmp(ver,stored_ver,3)==0)) + { // version number match + EEPROM_readAnything(i,axis_steps_per_unit); + EEPROM_readAnything(i,max_feedrate); + EEPROM_readAnything(i,max_acceleration_units_per_sq_second); + EEPROM_readAnything(i,acceleration); + EEPROM_readAnything(i,retract_acceleration); + EEPROM_readAnything(i,minimumfeedrate); + EEPROM_readAnything(i,mintravelfeedrate); + EEPROM_readAnything(i,minsegmenttime); + EEPROM_readAnything(i,max_xy_jerk); + EEPROM_readAnything(i,max_z_jerk); + #ifndef PIDTEMP + float Kp,Ki,Kd; + #endif + EEPROM_readAnything(i,Kp); + EEPROM_readAnything(i,Ki); + EEPROM_readAnything(i,Kd); - SerialprintPGM("echo: Stored settings retreived:\n"); - } - else - { - float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; - float tmp2[]=DEFAULT_MAX_FEEDRATE; - long tmp3[]=DEFAULT_MAX_ACCELERATION; - for (short i=0;i<4;i++) - { - axis_steps_per_unit[i]=tmp1[i]; - max_feedrate[i]=tmp2[i]; - max_acceleration_units_per_sq_second[i]=tmp3[i]; + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Stored settings retreived:"); } - acceleration=DEFAULT_ACCELERATION; - retract_acceleration=DEFAULT_RETRACT_ACCELERATION; - minimumfeedrate=DEFAULT_MINIMUMFEEDRATE; - minsegmenttime=DEFAULT_MINSEGMENTTIME; - mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; - max_xy_jerk=DEFAULT_XYJERK; - max_z_jerk=DEFAULT_ZJERK; - SerialprintPGM("echo: Using Default settings:\n"); - } - SerialprintPGM("echo: Steps per unit:\n M92 X"); - Serial.print(axis_steps_per_unit[0]); - SerialprintPGM(" Y"); - Serial.print(axis_steps_per_unit[1]); - SerialprintPGM(" Z"); - Serial.print(axis_steps_per_unit[2]); - SerialprintPGM(" E"); - Serial.print(axis_steps_per_unit[3]); - - SerialprintPGM("\nMaximum feedrates (mm/s):\n M203 X" ); - Serial.print(max_feedrate[0]/60); - SerialprintPGM(" Y" ); - Serial.print(max_feedrate[1]/60 ); - SerialprintPGM(" Z" ); - Serial.print(max_feedrate[2]/60 ); - SerialprintPGM(" E" ); - Serial.print(max_feedrate[3]/60); - SerialprintPGM("\nMaximum Acceleration (mm/s2):\n M201 X" ); - Serial.print(max_acceleration_units_per_sq_second[0] ); - SerialprintPGM(" Y" ); - Serial.print(max_acceleration_units_per_sq_second[1] ); - SerialprintPGM(" Z" ); - Serial.print(max_acceleration_units_per_sq_second[2] ); - SerialprintPGM(" E" ); - Serial.print(max_acceleration_units_per_sq_second[3]); - SerialprintPGM("\necho: Acceleration: S=acceleration, T=retract acceleration\n M204 S" ); - Serial.print(acceleration ); - SerialprintPGM(" T" ); - Serial.print(retract_acceleration); - SerialprintPGM("\necho: Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); - SerialprintPGM(" M205 S" ); - Serial.print(minimumfeedrate/60 ); - SerialprintPGM(" T" ); - Serial.print(mintravelfeedrate/60 ); - SerialprintPGM(" B" ); - Serial.print(minsegmenttime ); - SerialprintPGM(" X" ); - Serial.print(max_xy_jerk/60 ); - SerialprintPGM(" Z" ); - Serial.print(max_z_jerk/60); - SerialprintPGM("\n" ); - #ifdef PIDTEMP - SerialprintPGM("PID settings:"); - SerialprintPGM(" M301 P" ); - Serial.print(Kp ); - SerialprintPGM(" I" ); - Serial.print(Ki ); - SerialprintPGM(" D" ); - Serial.print(Kd); + else + { + float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; + float tmp2[]=DEFAULT_MAX_FEEDRATE; + long tmp3[]=DEFAULT_MAX_ACCELERATION; + for (short i=0;i<4;i++) + { + axis_steps_per_unit[i]=tmp1[i]; + max_feedrate[i]=tmp2[i]; + max_acceleration_units_per_sq_second[i]=tmp3[i]; + } + acceleration=DEFAULT_ACCELERATION; + retract_acceleration=DEFAULT_RETRACT_ACCELERATION; + minimumfeedrate=DEFAULT_MINIMUMFEEDRATE; + minsegmenttime=DEFAULT_MINSEGMENTTIME; + mintravelfeedrate=DEFAULT_MINTRAVELFEEDRATE; + max_xy_jerk=DEFAULT_XYJERK; + max_z_jerk=DEFAULT_ZJERK; + SERIAL_ECHO_START; + SERIAL_ECHOLN("Using Default settings:"); + } + #ifdef EEPROM_CHITCHAT + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Steps per unit:"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M92 X",axis_steps_per_unit[0]); + SERIAL_ECHOPAIR(" Y",axis_steps_per_unit[1]); + SERIAL_ECHOPAIR(" Z",axis_steps_per_unit[2]); + SERIAL_ECHOPAIR(" E",axis_steps_per_unit[3]); + SERIAL_ECHOLN(""); + + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Maximum feedrates (mm/s):"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M203 X",max_feedrate[0]/60); + SERIAL_ECHOPAIR(" Y",max_feedrate[1]/60 ); + SERIAL_ECHOPAIR(" Z", max_feedrate[2]/60 ); + SERIAL_ECHOPAIR(" E", max_feedrate[3]/60); + SERIAL_ECHOLN(""); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Maximum Acceleration (mm/s2):"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M201 X" ,max_acceleration_units_per_sq_second[0] ); + SERIAL_ECHOPAIR(" Y" , max_acceleration_units_per_sq_second[1] ); + SERIAL_ECHOPAIR(" Z" ,max_acceleration_units_per_sq_second[2] ); + SERIAL_ECHOPAIR(" E" ,max_acceleration_units_per_sq_second[3]); + SERIAL_ECHOLN(""); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Acceleration: S=acceleration, T=retract acceleration"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M204 S",acceleration ); + SERIAL_ECHOPAIR(" T" ,retract_acceleration); + SERIAL_ECHOLN(""); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M205 S",minimumfeedrate/60 ); + SERIAL_ECHOPAIR(" T" ,mintravelfeedrate/60 ); + SERIAL_ECHOPAIR(" B" ,minsegmenttime ); + SERIAL_ECHOPAIR(" X" ,max_xy_jerk/60 ); + SERIAL_ECHOPAIR(" Z" ,max_z_jerk/60); + SERIAL_ECHOLN(""); + #ifdef PIDTEMP + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("PID settings:"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M301 P",Kp ); + SERIAL_ECHOPAIR(" I" ,Ki ); + SERIAL_ECHOPAIR(" D" ,Kd); + SERIAL_ECHOLN(""); + #endif #endif + + #endif //EEPROM_SETTINGS } #endif diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 61b56fb97..99cd8021b 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -5,14 +5,49 @@ // Licence: GPL #include #include "fastio.h" - #include "streaming.h" -#define SERIAL_ECHO(x) Serial << "echo: " << x; -#define SERIAL_ECHOLN(x) Serial << "echo: "< + +//#define SERIAL_ECHO(x) Serial << "echo: " << x; +//#define SERIAL_ECHOLN(x) Serial << "echo: "<= (MAX_CMD_SIZE - 1)) + int16_t n=card.get(); + serial_char = (char)n; + if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1)||n==-1) { if(card.eof()){ card.sdprinting = false; - SERIAL_PROTOCOL("Done printing file"); + SERIAL_PROTOCOLLNPGM("Done printing file"); stoptime=millis(); char time[30]; unsigned long t=(stoptime-starttime)/1000; @@ -377,6 +391,7 @@ inline void get_command() min=t/60; sec=t%60; sprintf(time,"%i min, %i sec",min,sec); + SERIAL_ECHO_START; SERIAL_ECHOLN(time); LCD_MESSAGE(time); card.checkautostart(true); @@ -398,6 +413,7 @@ inline void get_command() if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; } } + #endif //SDSUPPORT } @@ -473,6 +489,7 @@ inline void process_commands() previous_millis_cmd = millis(); return; case 4: // G4 dwell + LCD_MESSAGEPGM("DWELL..."); codenum = 0; if(code_seen('P')) codenum = code_value(); // milliseconds to wait if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait @@ -533,13 +550,14 @@ inline void process_commands() #ifdef SDSUPPORT case 20: // M20 - list SD card - SERIAL_PROTOCOLLN("Begin file list"); + SERIAL_PROTOCOLLNPGM("Begin file list"); card.ls(); - SERIAL_PROTOCOLLN("End file list"); + SERIAL_PROTOCOLLNPGM("End file list"); break; case 21: // M21 - init SD card card.initsd(); + break; case 22: //M22 - release SD card card.release(); @@ -592,7 +610,8 @@ inline void process_commands() min=t/60; sec=t%60; sprintf(time,"%i min, %i sec",min,sec); - SERIAL_ERRORLN(time); + SERIAL_ECHO_START; + SERIAL_ECHOLN(time); LCD_MESSAGE(time); } break; @@ -637,7 +656,7 @@ inline void process_commands() bt = degBed(); #endif #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - SERIAL_PROTOCOL("ok T:"); + SERIAL_PROTOCOLPGM("ok T:"); SERIAL_PROTOCOL(tt); #if TEMP_1_PIN > -1 #ifdef PIDTEMP @@ -654,13 +673,14 @@ inline void process_commands() SERIAL_PROTOCOLLN(""); #endif //TEMP_1_PIN #else - SERIAL_ERRORLN("No thermistors - no temp"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("No thermistors - no temp"); #endif return; break; case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGE("Heating..."); + LCD_MESSAGEPGM("Heating..."); if (code_seen('S')) setTargetHotend0(code_value()); setWatch(); @@ -681,7 +701,8 @@ inline void process_commands() #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down - SERIAL_PROTOCOLLN("T:"<< degHotend0() ); + SERIAL_PROTOCOLPGM("T:"); + SERIAL_PROTOCOLLN( degHotend0() ); codenum = millis(); } manage_heater(); @@ -697,12 +718,13 @@ inline void process_commands() } #endif //TEMP_RESIDENCY_TIME } - LCD_MESSAGE("Heating done."); + LCD_MESSAGEPGM("Heating done."); starttime=millis(); } break; case 190: // M190 - Wait bed for heater to reach target. #if TEMP_1_PIN > -1 + LCD_MESSAGEPGM("Bed Heating."); if (code_seen('S')) setTargetBed(code_value()); codenum = millis(); while(isHeatingBed()) @@ -710,12 +732,17 @@ inline void process_commands() if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { float tt=degHotend0(); - SERIAL_PROTOCOLLN("T:"< -1) - SERIAL_PROTOCOL("x_min:"); + SERIAL_PROTOCOLPGM("x_min:"); SERIAL_PROTOCOL(((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (X_MAX_PIN > -1) - SERIAL_PROTOCOL("x_max:"); + SERIAL_PROTOCOLPGM("x_max:"); SERIAL_PROTOCOL(((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MIN_PIN > -1) - SERIAL_PROTOCOL("y_min:"); + SERIAL_PROTOCOLPGM("y_min:"); SERIAL_PROTOCOL(((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MAX_PIN > -1) - SERIAL_PROTOCOL("y_max:"); + SERIAL_PROTOCOLPGM("y_max:"); SERIAL_PROTOCOL(((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MIN_PIN > -1) - SERIAL_PROTOCOL("z_min:"); + SERIAL_PROTOCOLPGM("z_min:"); SERIAL_PROTOCOL(((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MAX_PIN > -1) - SERIAL_PROTOCOL("z_max:"); + SERIAL_PROTOCOLPGM("z_max:"); SERIAL_PROTOCOL(((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); #endif SERIAL_PROTOCOLLN(""); @@ -897,7 +925,10 @@ inline void process_commands() } else { - SERIAL_ECHOLN("Unknown command:\""< -1) pinMode(PS_ON_PIN,INPUT); - SERIAL_ERRORLN("Printer halted. kill() called !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Printer halted. kill() called !!"); + LCD_MESSAGEPGM("KILLED. "); while(1); // Wait for reset } diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 03696fa61..b3f514f61 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -30,8 +30,8 @@ public: inline void ls() {root.ls();}; - inline bool eof() { sdpos = file.curPosition();return sdpos>=filesize ;}; - inline char get() { int16_t n = file.read(); return (n==-1)?'\n':(char)n;}; + inline bool eof() { return sdpos>=filesize ;}; + inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; public: diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index cd4bfeb7a..605af11bf 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -29,20 +29,24 @@ void CardReader::initsd() if (!card.init(SPI_FULL_SPEED,SDSS)) { //if (!card.init(SPI_HALF_SPEED,SDSS)) - SERIAL_ECHOLN("SD init fail"); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("SD init fail"); } else if (!volume.init(&card)) { - SERIAL_ERRORLN("volume.init failed"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("volume.init failed"); } else if (!root.openRoot(&volume)) { - SERIAL_ERRORLN("openRoot failed"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("openRoot failed"); } else { cardOK = true; - SERIAL_ECHOLN("SD card ok"); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("SD card ok"); } #endif //SDSS } @@ -77,13 +81,16 @@ void CardReader::selectFile(char* name) if (file.open(&root, name, O_READ)) { filesize = file.fileSize(); - SERIAL_PROTOCOLLN("File opened:"<= maxttemp_0) { target_raw[TEMPSENSOR_HOTEND_0] = 0; analogWrite(HEATER_0_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 0 switched off. MAXTEMP triggered !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MAXTEMP triggered !!"); kill(); } #endif @@ -507,7 +509,8 @@ ISR(TIMER0_COMPB_vect) target_raw[TEMPSENSOR_HOTEND_1] = 0; if(current_raw[2] >= maxttemp_1) { analogWrite(HEATER_2_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 1 switched off. MAXTEMP triggered !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MAXTEMP triggered !!"); kill() } #endif @@ -518,7 +521,8 @@ ISR(TIMER0_COMPB_vect) if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { target_raw[TEMPSENSOR_HOTEND_0] = 0; analogWrite(HEATER_0_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 0 switched off. MINTEMP triggered !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MINTEMP triggered !!"); kill(); } #endif @@ -529,7 +533,8 @@ ISR(TIMER0_COMPB_vect) if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { target_raw[TEMPSENSOR_HOTEND_1] = 0; analogWrite(HEATER_2_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 1 switched off. MINTEMP triggered !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MINTEMP triggered !!"); kill(); } #endif @@ -540,7 +545,8 @@ ISR(TIMER0_COMPB_vect) if(current_raw[1] <= bed_minttemp) { target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); - SERIAL_ERRORLN("Temperatur heated bed switched off. MINTEMP triggered !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperatur heated bed switched off. MINTEMP triggered !!"); kill(); } #endif @@ -551,7 +557,8 @@ ISR(TIMER0_COMPB_vect) if(current_raw[1] >= bed_maxttemp) { target_raw[1] = 0; WRITE(HEATER_1_PIN, 0); - SERIAL_ERRORLN("Temperature heated bed switched off. MAXTEMP triggered !!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); kill(); } #endif diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 0822e502b..4c725329d 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -83,6 +83,7 @@ #define LCD_MESSAGE(x) lcd_status(x); + #define LCD_MESSAGEPGM(x) lcd_statuspgm(PSTR(x)); #define LCD_STATUS lcd_status() #else //no lcd #define LCD_STATUS diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 91d1a54a8..59edb3470 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -67,6 +67,18 @@ void lcd_status(const char* message) strncpy(messagetext,message,LCD_WIDTH); } +void lcd_statuspgm(const char* message) +{ + char ch=pgm_read_byte(message); + char *target=messagetext; + while(ch) + { + *target=ch; + target++; + ch=pgm_read_byte(++message); + } +} + inline void clear() { lcd.clear(); @@ -105,7 +117,7 @@ void lcd_init() lcd.createChar(2,Thermometer); lcd.createChar(3,uplevel); lcd.createChar(4,refresh); - LCD_MESSAGE(fillto(LCD_WIDTH,"UltiMarlin ready.")); + LCD_MESSAGEPGM("UltiMarlin ready."); } @@ -1369,7 +1381,8 @@ void MainMenu::showMainMenu() }break; #endif default: - SERIAL_ERRORLN("Something is wrong in the MenuStructure."); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Something is wrong in the MenuStructure."); break; } } diff --git a/Marlin/watchdog.pde b/Marlin/watchdog.pde index 167bc633d..9cf710a0c 100644 --- a/Marlin/watchdog.pde +++ b/Marlin/watchdog.pde @@ -41,10 +41,11 @@ ISR(WDT_vect) { #ifdef RESET_MANUAL - LCD_MESSAGE("Please Reset!"); - SERIAL_ERRORLN("Something is wrong, please turn off the printer."); + LCD_MESSAGEPGM("Please Reset!"); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Something is wrong, please turn off the printer."); #else - LCD_MESSAGE("Timeout, resetting!"); + LCD_MESSAGEPGM("Timeout, resetting!"); #endif //disable watchdog, it will survife reboot. WDTCSR |= (1< Date: Wed, 9 Nov 2011 20:28:40 +0100 Subject: [PATCH 043/430] beautified the config. ordered it into thematic sections. --- Marlin/Configuration.h | 276 ++++++++++++++++++++++++----------------- 1 file changed, 160 insertions(+), 116 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index a0d46bfed..f44c858b9 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,10 +1,13 @@ #ifndef __CONFIGURATION_H #define __CONFIGURATION_H -//#define DEBUG_STEPS -#define MM_PER_ARC_SEGMENT 1 -#define N_ARC_CORRECTION 25 + +// This determines the communication speed of the printer +//#define BAUDRATE 250000 +#define BAUDRATE 115200 +//#define BAUDRATE 230400 + // BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration @@ -17,7 +20,9 @@ // Teensylu = 8 #define MOTHERBOARD 7 - +//=========================================================================== +//=============================Thermal Settings ============================ +//=========================================================================== //// Thermistor settings: // 1 is 100k thermistor @@ -40,49 +45,103 @@ //#define BED_USES_THERMISTOR //#define BED_USES_AD595 -#define HEATER_CHECK_INTERVAL 50 -#define BED_CHECK_INTERVAL 5000 +#define HEATER_CHECK_INTERVAL 50 //ms +#define BED_CHECK_INTERVAL 5000 //ms + +//// Experimental watchdog and minimal temp +// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 +/// CURRENTLY NOT IMPLEMENTED AND UNUSEABLE +//#define WATCHPERIOD 5000 //5 seconds + +// Actual temperature must be close to target for this long before M109 returns success +//#define TEMP_RESIDENCY_TIME 20 // (seconds) +//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one + +//// The minimal temperature defines the temperature below which the heater will not be enabled +#define HEATER_0_MINTEMP 5 +//#define HEATER_1_MINTEMP 5 +//#define BED_MINTEMP 5 -//// Endstop Settings +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define HEATER_0_MAXTEMP 275 +//#define_HEATER_1_MAXTEMP 275 +//#define BED_MAXTEMP 150 + + + +// PID settings: +// Uncomment the following line to enable PID support. + +#define PIDTEMP +#ifdef PIDTEMP + //#define PID_DEBUG // Sends debug data to the serial port. + //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % + + #define PID_MAX 255 // limits current to nozzle; 255=full current + #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term + #define K1 0.95 //smoothing factor withing the PID + #define PID_dT 0.1 //sampling period of the PID + + //To develop some PID settings for your machine, you can initiall follow + // the Ziegler-Nichols method. + // set Ki and Kd to zero. + // heat with a defined Kp and see if the temperature stabilizes + // ideally you do this graphically with repg. + // the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde + // PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain + // usually further manual tunine is necessary. + + #define PID_CRITIAL_GAIN 3000 + #define PID_SWING_AT_CRITIAL 45 //seconds + + #define PID_PI //no differentail term + //#define PID_PID //normal PID + + #ifdef PID_PID + //PID according to Ziegler-Nichols method + #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) + #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) + #endif + + #ifdef PID_PI + //PI according to Ziegler-Nichols method + #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) + #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) + #define DEFAULT_Kd (0) + #endif + + // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. + // if Kc is choosen well, the additional required power due to increased melting should be compensated. + #define PID_ADD_EXTRUSION_RATE + #ifdef PID_ADD_EXTRUSION_RATE + #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) + #endif +#endif // PIDTEMP + + + + + + + + + +//=========================================================================== +//=============================Mechanical Settings=========================== +//=========================================================================== + + +// Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false -// This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 -//#define BAUDRATE 230400 - -// Comment out (using // at the start of the line) to disable SD support: - -// #define ULTRA_LCD //any lcd - -#define ULTIPANEL -#ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel - #define SDSUPPORT - #define ULTRA_LCD - #define LCD_WIDTH 20 - #define LCD_HEIGHT 4 -#else //no panel but just lcd - #ifdef ULTRA_LCD - #define LCD_WIDTH 16 - #define LCD_HEIGHT 2 - #endif -#endif - - -//#define SDSUPPORT // Enable SD Card Support in Hardware Console - - - -const int dropsegments=5; //everything with this number of steps will be ignored as move - -//// ADVANCED SETTINGS - to tweak parameters - -#include "thermistortables.h" // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -141,88 +200,33 @@ const int dropsegments=5; //everything with this number of steps will be ignore #define DEFAULT_ZJERK 10.0*60 + + +//=========================================================================== +//=============================Additional Features=========================== +//=========================================================================== + +// EEPROM +// the microcontroller can store settings in the EEPROM, e.g. max velocity... +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +//define this to enable eeprom support +#define EEPROM_SETTINGS +//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out: +// please keep turned on if you can. +#define EEPROM_CHITCHAT + + // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -//this enables the watchdog interrupt. +// this enables the watchdog interrupt. #define USE_WATCHDOG -//you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +// you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: #define RESET_MANUAL - -#define WATCHDOG_TIMEOUT 4 +#define WATCHDOG_TIMEOUT 4 //seconds -//// Experimental watchdog and minimal temp -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 -/// CURRENTLY NOT IMPLEMENTED AND UNUSEABLE -//#define WATCHPERIOD 5000 //5 seconds - -// Actual temperature must be close to target for this long before M109 returns success -//#define TEMP_RESIDENCY_TIME 20 // (seconds) -//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one - -//// The minimal temperature defines the temperature below which the heater will not be enabled -#define HEATER_0_MINTEMP 5 -//#define HEATER_1_MINTEMP 5 -//#define BED_MINTEMP 5 - - -// When temperature exceeds max temp, your heater will be switched off. -// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! -// You should use MINTEMP for thermistor short/failure protection. -#define HEATER_0_MAXTEMP 275 -//#define_HEATER_1_MAXTEMP 275 -//#define BED_MAXTEMP 150 - -/// PID settings: -// Uncomment the following line to enable PID support. - -#define PIDTEMP -#ifdef PIDTEMP - //#define PID_DEBUG // Sends debug data to the serial port. - //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % - - #define PID_MAX 255 // limits current to nozzle; 255=full current - #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term - #define K1 0.95 //smoothing factor withing the PID - #define PID_dT 0.1 //sampling period of the PID - - //To develop some PID settings for your machine, you can initiall follow - // the Ziegler-Nichols method. - // set Ki and Kd to zero. - // heat with a defined Kp and see if the temperature stabilizes - // ideally you do this graphically with repg. - // the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde - // PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain - // usually further manual tunine is necessary. - - #define PID_CRITIAL_GAIN 3000 - #define PID_SWING_AT_CRITIAL 45 //seconds - - #define PID_PI //no differentail term - //#define PID_PID //normal PID - - #ifdef PID_PID - //PID according to Ziegler-Nichols method - #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) - #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) - #endif - - #ifdef PID_PI - //PI according to Ziegler-Nichols method - #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) - #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (0) - #endif - - // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. - // if Kc is choosen well, the additional required power due to increased melting should be compensated. - #define PID_ADD_EXTRUSION_RATE - #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) - #endif -#endif // PIDTEMP // extruder advance constant (s2/mm3) // @@ -243,6 +247,42 @@ const int dropsegments=5; //everything with this number of steps will be ignore #endif // ADVANCE + +//LCD and SD support +//#define ULTRA_LCD //general lcd support, also 16x2 +//#define SDSUPPORT // Enable SD Card Support in Hardware Console + +#define ULTIPANEL +#ifdef ULTIPANEL + #define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #define LCD_WIDTH 20 + #define LCD_HEIGHT 4 +#else //no panel but just lcd + #ifdef ULTRA_LCD + #define LCD_WIDTH 16 + #define LCD_HEIGHT 2 + #endif +#endif + +// A debugging feature to compare calculated vs performed steps, to see if steps are lost by the software. +//#define DEBUG_STEPS + + +// Arc interpretation settings: +#define MM_PER_ARC_SEGMENT 1 +#define N_ARC_CORRECTION 25 + + +const int dropsegments=0; //everything with less than this number of steps will be ignored as move and joined with the next movement + +//=========================================================================== +//=============================Buffers ============================ +//=========================================================================== + + + // The number of linear motions that can be in the plan at any give time. // THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, i.g. 8,16,32 because shifts and ors are used to do the ringbuffering. #if defined SDSUPPORT @@ -251,8 +291,12 @@ const int dropsegments=5; //everything with this number of steps will be ignore #define BLOCK_BUFFER_SIZE 16 // maximize block buffer #endif + //The ASCII buffer for recieving from the serial: #define MAX_CMD_SIZE 96 #define BUFSIZE 4 + +#include "thermistortables.h" + #endif //__CONFIGURATION_H From ba8a53a40fa0adaa947b536639bab998cc872feb Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Wed, 9 Nov 2011 20:30:41 +0100 Subject: [PATCH 044/430] Streaming.h is gone. It conflicted with PROGMEM. And saving memory is more important than nicer code, imho --- Marlin/Marlin.h | 1 - Marlin/Marlin.pde | 1 - Marlin/streaming.h | 84 ------------------------------------------ Marlin/temperature.cpp | 1 - 4 files changed, 87 deletions(-) delete mode 100644 Marlin/streaming.h diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 99cd8021b..1e36b61e8 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -5,7 +5,6 @@ // Licence: GPL #include #include "fastio.h" -#include "streaming.h" #include //#define SERIAL_ECHO(x) Serial << "echo: " << x; diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 7b67cfcf5..dee095d84 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -32,7 +32,6 @@ #include "pins.h" #include "Marlin.h" #include "ultralcd.h" -#include "streaming.h" #include "planner.h" #include "stepper.h" #include "temperature.h" diff --git a/Marlin/streaming.h b/Marlin/streaming.h deleted file mode 100644 index 1a6afe73d..000000000 --- a/Marlin/streaming.h +++ /dev/null @@ -1,84 +0,0 @@ -/* -Streaming.h - Arduino library for supporting the << streaming operator -Copyright (c) 2010 Mikal Hart. All rights reserved. - -This library is free software; you can redistribute it and/or -modify it under the terms of the GNU Lesser General Public -License as published by the Free Software Foundation; either -version 2.1 of the License, or (at your option) any later version. - -This library 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 -Lesser General Public License for more details. - -You should have received a copy of the GNU Lesser General Public -License along with this library; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#ifndef ARDUINO_STREAMING -#define ARDUINO_STREAMING - -//#include - -#define STREAMING_LIBRARY_VERSION 4 - -// Generic template -template -inline Print &operator <<(Print &stream, T arg) -{ stream.print(arg); return stream; } - -struct _BASED -{ - long val; - int base; - _BASED(long v, int b): val(v), base(b) - {} -}; - -#define _HEX(a) _BASED(a, HEX) -#define _DEC(a) _BASED(a, DEC) -#define _OCT(a) _BASED(a, OCT) -#define _BIN(a) _BASED(a, BIN) -#define _BYTE(a) _BASED(a, BYTE) - -// Specialization for class _BASED -// Thanks to Arduino forum user Ben Combee who suggested this -// clever technique to allow for expressions like -// Serial << _HEX(a); - -inline Print &operator <<(Print &obj, const _BASED &arg) -{ obj.print(arg.val, arg.base); return obj; } - -#if ARDUINO >= 18 -// Specialization for class _FLOAT -// Thanks to Michael Margolis for suggesting a way -// to accommodate Arduino 0018's floating point precision -// feature like this: -// Serial << _FLOAT(gps_latitude, 6); // 6 digits of precision - -struct _FLOAT -{ - float val; - int digits; - _FLOAT(double v, int d): val(v), digits(d) - {} -}; - -inline Print &operator <<(Print &obj, const _FLOAT &arg) -{ obj.print(arg.val, arg.digits); return obj; } -#endif - -// Specialization for enum _EndLineCode -// Thanks to Arduino forum user Paul V. who suggested this -// clever technique to allow for expressions like -// Serial << "Hello!" << endl; - -enum _EndLineCode { endl }; - -inline Print &operator <<(Print &obj, _EndLineCode arg) -{ obj.println(); return obj; } - -#endif - diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 87d9ee543..83c173b28 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -34,7 +34,6 @@ #include "pins.h" #include "Marlin.h" #include "ultralcd.h" -#include "streaming.h" #include "temperature.h" #include "watchdog.h" From 36958ee30576dd282a373c8b1da6ad8d9d22eb7b Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Wed, 9 Nov 2011 22:09:16 +0100 Subject: [PATCH 045/430] minor changes and first not-well working version of autotemp --- Marlin/Configuration.h | 12 +++++++++++- Marlin/EEPROMwrite.h | 1 - Marlin/Marlin.h | 3 +++ Marlin/Marlin.pde | 3 +-- Marlin/planner.cpp | 35 +++++++++++++++++++++++++++++++++++ Marlin/planner.h | 4 +++- Marlin/ultralcd.pde | 4 +++- 7 files changed, 56 insertions(+), 6 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f44c858b9..8661ae438 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -119,7 +119,7 @@ // if Kc is choosen well, the additional required power due to increased melting should be compensated. #define PID_ADD_EXTRUSION_RATE #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (5) //heatingpower=Kc*(e_speed) + #define DEFAULT_Kc (3) //heatingpower=Kc*(e_speed) #endif #endif // PIDTEMP @@ -275,6 +275,16 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define N_ARC_CORRECTION 25 +//automatic temperature: just for testing, this is very dangerous, keep disabled! +// not working yet. +//Erik: the settings currently depend dramatically on skeinforge39 or 41. +//#define AUTOTEMP +#define AUTOTEMP_MIN 190 +#define AUTOTEMP_MAX 260 +#define AUTOTEMP_FACTOR 1000. //current target temperature= min+largest buffered espeeds)*FACTOR + + + const int dropsegments=0; //everything with less than this number of steps will be ignored as move and joined with the next movement //=========================================================================== diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index fcb3d8d39..3d8a0b2b9 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -25,7 +25,6 @@ template int EEPROM_readAnything(int &ee, T& value) } //====================================================================================== -#define SERIAL_ECHOPAIR(name,value) {SERIAL_ECHOPGM(name);SERIAL_ECHO(value);} diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 1e36b61e8..e14471264 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -35,6 +35,9 @@ const char echomagic[] PROGMEM ="echo:"; #define SERIAL_ECHOLN(x) SERIAL_PROTOCOLLN(x) #define SERIAL_ECHOLNPGM(x) SERIAL_PROTOCOLLNPGM(x) +#define SERIAL_ECHOPAIR(name,value) {SERIAL_ECHOPGM(name);SERIAL_ECHO(value);} + + //things to write to serial from Programmemory. saves 400 to 2k of RAM. #define SerialprintPGM(x) serialprintPGM(PSTR(x)) inline void serialprintPGM(const char *str) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index dee095d84..672591a72 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -211,7 +211,6 @@ void setup() { Serial.begin(BAUDRATE); SERIAL_ECHO_START; - SERIAL_ECHOPGM("Marlin "); SERIAL_ECHOLN(version_string); SERIAL_PROTOCOLLNPGM("start"); SERIAL_ECHO_START; @@ -785,8 +784,8 @@ inline void process_commands() } else { - LCD_MESSAGEPGM("Free move."); st_synchronize(); + LCD_MESSAGEPGM("Free move."); disable_x(); disable_y(); disable_z(); diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 34e29ff53..863b116a5 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -84,6 +84,10 @@ unsigned long axis_steps_per_sqr_second[NUM_AXIS]; // The current position of the tool in absolute steps long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode +#ifdef AUTOTEMP +float high_e_speed=0; +#endif + //=========================================================================== //=============================private variables ============================ @@ -363,6 +367,34 @@ block_t *plan_get_current_block() { return(block); } +#ifdef AUTOTEMP +void getHighESpeed() +{ + if(degTargetHotend0()+2high) + { + high=se; + } + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + high_e_speed=high*axis_steps_per_unit[E_AXIS]/(1000000.0); //so it is independent of the esteps/mm. before + + float g=AUTOTEMP_MIN+high_e_speed*AUTOTEMP_FACTOR; + float t=constrain(AUTOTEMP_MIN,g,AUTOTEMP_MAX); + setTargetHotend0(t); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR("highe",high_e_speed); + SERIAL_ECHOPAIR(" t",t); + SERIAL_ECHOLN(""); +} +#endif + void check_axes_activity() { unsigned char x_active = 0; unsigned char y_active = 0; @@ -581,6 +613,9 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa memcpy(position, target, sizeof(target)); // position[] = target[] planner_recalculate(); + #ifdef AUTOTEMP + getHighESpeed(); + #endif st_wake_up(); } diff --git a/Marlin/planner.h b/Marlin/planner.h index 79f54d879..c5bc5b8aa 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -89,5 +89,7 @@ extern float max_xy_jerk; //speed than can be stopped at once, if i understand c extern float max_z_jerk; extern float mintravelfeedrate; extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; - +#ifdef AUTOTEMP +extern float high_e_speed; +#endif #endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 59edb3470..d95167166 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -71,10 +71,12 @@ void lcd_statuspgm(const char* message) { char ch=pgm_read_byte(message); char *target=messagetext; - while(ch) + uint8_t cnt=0; + while(ch &&cnt Date: Sat, 12 Nov 2011 20:37:28 +0100 Subject: [PATCH 046/430] re-enabled heaterpower as storage for the current storage of the heater PWM duty cycle. the M301 now returns the current PID settings of the machine. M105 returns heating pwm duty cylce as "@:" --- Marlin/Marlin.pde | 52 +++++++++++++++++++++++------------------- Marlin/temperature.cpp | 1 + 2 files changed, 30 insertions(+), 23 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 672591a72..4c1ece07e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -647,33 +647,24 @@ inline void process_commands() break; case 105: // M105 //SERIAL_ECHOLN(freeMemory()); - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) - tt = degHotend0(); - #endif - #if TEMP_1_PIN > -1 - bt = degBed(); - #endif + #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) SERIAL_PROTOCOLPGM("ok T:"); - SERIAL_PROTOCOL(tt); + SERIAL_PROTOCOL( degHotend0()); #if TEMP_1_PIN > -1 - #ifdef PIDTEMP - SERIAL_PROTOCOL(" B:"); - #if TEMP_1_PIN > -1 - SERIAL_PROTOCOLLN(bt); - #else - SERIAL_PROTOCOLLN(HeaterPower); - #endif - #else //not PIDTEMP - SERIAL_PROTOCOLLN(""); - #endif //PIDTEMP - #else - SERIAL_PROTOCOLLN(""); - #endif //TEMP_1_PIN - #else - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("No thermistors - no temp"); + SERIAL_PROTOCOLPGM(" B:"); + SERIAL_PROTOCOL(degBed()); + #endif //TEMP_1_PIN + #else + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("No thermistors - no temp"); #endif + #ifdef PIDTEMP + SERIAL_PROTOCOLPGM(" @:"); + SERIAL_PROTOCOL( HeaterPower); + + #endif + SERIAL_PROTOCOLLN(""); return; break; case 109: @@ -901,6 +892,21 @@ inline void process_commands() if(code_seen('P')) Kp = code_value(); if(code_seen('I')) Ki = code_value()*PID_dT; if(code_seen('D')) Kd = code_value()/PID_dT; + #ifdef PID_ADD_EXTRUSION_RATE + if(code_seen('C')) Kc = code_value(); + #endif + SERIAL_PROTOCOL("ok p:"); + SERIAL_PROTOCOL(Kp); + SERIAL_PROTOCOL(" i:"); + SERIAL_PROTOCOL(Ki/PID_dT); + SERIAL_PROTOCOL(" d:"); + SERIAL_PROTOCOL(Kd*PID_dT); + #ifdef PID_ADD_EXTRUSION_RATE + SERIAL_PROTOCOL(" c:"); + SERIAL_PROTOCOL(Kc*PID_dT); + #endif + SERIAL_PROTOCOLLN(""); + break; #endif //PIDTEMP case 500: // Store settings in EEPROM diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 83c173b28..0772cb324 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -156,6 +156,7 @@ void manage_heater() pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high #endif pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + HeaterPower=pid_output; } #endif //PID_OPENLOOP #ifdef PID_DEBUG From ff592b056ad492632a810e6c77a7d063b6ce05e3 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 13 Nov 2011 00:48:55 +0100 Subject: [PATCH 047/430] heater power repair. --- Marlin/temperature.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 0772cb324..8ea8ee008 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -156,12 +156,13 @@ void manage_heater() pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high #endif pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - HeaterPower=pid_output; + } #endif //PID_OPENLOOP #ifdef PID_DEBUG //SERIAL_ECHOLN(" PIDDEBUG Input "< Date: Sun, 13 Nov 2011 19:58:09 +0100 Subject: [PATCH 048/430] added a m400, that finished all moves, and the mechanism so that if an endstop is hit it the ISR, the steps_to_be_taken are stored, and some current_block data that will be deleted in the next move If the normal loop() then finds such an event, the position is calculated (floats would have taken too long in the ISR) A serial message is generated. --- Marlin/Marlin.h | 2 ++ Marlin/Marlin.pde | 20 +++++++++++++++--- Marlin/stepper.cpp | 52 +++++++++++++++++++++++++++++++++++++++++++++- Marlin/stepper.h | 7 +++++++ 4 files changed, 77 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index e14471264..440a44a57 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -6,6 +6,7 @@ #include #include "fastio.h" #include +#include "Configuration.h" //#define SERIAL_ECHO(x) Serial << "echo: " << x; //#define SERIAL_ECHOLN(x) Serial << "echo: "<1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; +float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; + //=========================================================================== //=============================private variables============================= //=========================================================================== const char axis_codes[NUM_AXIS] = {'X', 'Y', 'Z', 'E'}; static float destination[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; -static float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; static float offset[3] = {0.0, 0.0, 0.0}; static bool home_all_axis = true; static float feedrate = 1500.0, next_feedrate, saved_feedrate; @@ -211,7 +213,7 @@ void setup() { Serial.begin(BAUDRATE); SERIAL_ECHO_START; - SERIAL_ECHOLN(version_string); + SERIAL_ECHOLNPGM(VERSION_STRING); SERIAL_PROTOCOLLNPGM("start"); SERIAL_ECHO_START; SERIAL_ECHOPGM("Free Memory:"); @@ -269,6 +271,7 @@ void loop() //check heater every n milliseconds manage_heater(); manage_inactivity(1); + checkHitEndstops(); LCD_STATUS; } @@ -443,20 +446,25 @@ inline bool code_seen(char code) destination[LETTER##_AXIS] = 1.5 * LETTER##_MAX_LENGTH * LETTER##_HOME_DIR; \ feedrate = homing_feedrate[LETTER##_AXIS]; \ prepare_move(); \ + st_synchronize();\ \ current_position[LETTER##_AXIS] = 0;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = -5 * LETTER##_HOME_DIR;\ prepare_move(); \ + st_synchronize();\ \ destination[LETTER##_AXIS] = 10 * LETTER##_HOME_DIR;\ feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ prepare_move(); \ + st_synchronize();\ \ current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? 0 : LETTER##_MAX_LENGTH;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = current_position[LETTER##_AXIS];\ feedrate = 0.0;\ + st_synchronize();\ + endstops_hit_on_purpose();\ } inline void process_commands() @@ -522,6 +530,7 @@ inline void process_commands() feedrate = saved_feedrate; feedmultiply = saved_feedmultiply; previous_millis_cmd = millis(); + endstops_hit_on_purpose(); break; case 90: // G90 relative_mode = false; @@ -909,6 +918,11 @@ inline void process_commands() break; #endif //PIDTEMP + case 400: // finish all moves + { + st_synchronize(); + } + break; case 500: // Store settings in EEPROM { StoreSettings(); diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index d5d41b173..23066ef32 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -33,12 +33,14 @@ #include "speed_lookuptable.h" + //=========================================================================== //=============================public variables ============================ //=========================================================================== block_t *current_block; // A pointer to the block currently being traced + //=========================================================================== //=============================private variables ============================ //=========================================================================== @@ -62,7 +64,9 @@ static long acceleration_time, deceleration_time; static unsigned short acc_step_rate; // needed for deccelaration start point static char step_loops; - +volatile long endstops_trigsteps[3]={0,0,0}; +volatile long endstops_stepsTotal,endstops_stepsDone; +static volatile bool endstops_hit=false; // if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. // for debugging purposes only, should be disabled by default @@ -152,9 +156,49 @@ asm volatile ( \ #define DISABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 &= ~(1<step_event_count; + endstops_stepsDone=stepstaken; + endstops_trigsteps[0]=current_block->steps_x; + endstops_trigsteps[1]=current_block->steps_y; + endstops_trigsteps[2]=current_block->steps_z; + endstops_hit=true; +} +void checkHitEndstops() +{ + if( !endstops_hit) + return; + float endstops_triggerpos[3]={0,0,0}; + float ratiodone=endstops_stepsDone/float(endstops_stepsTotal); //ratio of current_block thas was performed + + endstops_triggerpos[0]=current_position[0]-(endstops_trigsteps[0]*ratiodone)/float(axis_steps_per_unit[0]); + endstops_triggerpos[1]=current_position[1]-(endstops_trigsteps[1]*ratiodone)/float(axis_steps_per_unit[1]); + endstops_triggerpos[2]=current_position[2]-(endstops_trigsteps[2]*ratiodone)/float(axis_steps_per_unit[2]); + SERIAL_ECHO_START; + SERIAL_ECHOPGM("endstops hit: "); + SERIAL_ECHOPAIR(" X:",endstops_triggerpos[0]); + SERIAL_ECHOPAIR(" Y:",endstops_triggerpos[1]); + SERIAL_ECHOPAIR(" Z:",endstops_triggerpos[2]); + SERIAL_ECHOLN(""); + endstops_hit=false; +} +void endstops_hit_on_purpose() +{ + endstops_hit=false; +} // __________________________ // /| |\ _________________ ^ @@ -296,6 +340,7 @@ ISR(TIMER1_COMPA_vect) #endif #if X_MIN_PIN > -1 if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -307,6 +352,7 @@ ISR(TIMER1_COMPA_vect) #endif #if X_MAX_PIN > -1 if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ + endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -319,6 +365,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Y_MIN_PIN > -1 if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { + endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -330,6 +377,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Y_MAX_PIN > -1 if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ + endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -342,6 +390,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Z_MIN_PIN > -1 if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { + endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -353,6 +402,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Z_MAX_PIN > -1 if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ + endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif diff --git a/Marlin/stepper.h b/Marlin/stepper.h index fb649692d..ecbc713e3 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -39,6 +39,13 @@ void st_wake_up(); extern volatile long count_position[NUM_AXIS]; extern volatile int count_direction[NUM_AXIS]; #endif + +void checkHitEndstops(); //call from somwhere to create an serial error message with the locations the endstops where hit, in case they were triggered +void endstops_hit_on_purpose(); //avoid creation of the message, i.e. after homeing and before a routine call of checkHitEndstops(); + + extern block_t *current_block; // A pointer to the block currently being traced + + #endif From 65934eee9c6ae792c708bc1cea9996c8a5df67f5 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 13 Nov 2011 20:42:08 +0100 Subject: [PATCH 049/430] A lot of changes in the planner code --- Marlin/Configuration.h | 37 +- Marlin/Marlin.pde | 8 +- Marlin/planner.cpp | 1297 ++++++++++++++++++++----------------- Marlin/planner.h | 187 +++--- Marlin/stepper.cpp | 1227 ++++++++++++++++++----------------- Marlin/temperature.cpp | 1124 ++++++++++++++++---------------- Marlin/thermistortables.h | 16 +- 7 files changed, 2019 insertions(+), 1877 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index a0d46bfed..2f1e8ad83 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -6,6 +6,15 @@ #define MM_PER_ARC_SEGMENT 1 #define N_ARC_CORRECTION 25 +// Frequency limit +// See nophead's blog for more info +#define XY_FREQUENCY_LIMIT 15 + +// Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end +// of the buffer and all stops. This should not be much greater than zero and should only be changed +// if unwanted behavior is observed on a user's machine when running at very slow speeds. +#define MINIMUM_PLANNER_SPEED 2.0 // (mm/sec) + // BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration //// The following define selects which electronics board you have. Please choose the one that matches your setup @@ -97,6 +106,11 @@ const int dropsegments=5; //everything with this number of steps will be ignore #define DISABLE_E false // Inverting axis direction +//#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true +//#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false +//#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true +//#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false + #define INVERT_X_DIR true // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true @@ -117,7 +131,7 @@ const int dropsegments=5; //everything with this number of steps will be ignore //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E //note: on bernhards ultimaker 200 200 12 are working well. -#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds +#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) #define AXIS_RELATIVE_MODES {false, false, false, false} @@ -126,19 +140,20 @@ const int dropsegments=5; //everything with this number of steps will be ignore // default settings #define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker -#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} -#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. +//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} +#define DEFAULT_MAX_FEEDRATE {500, 500, 10, 500000} // (mm/min) +#define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves #define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts -#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 10 +#define DEFAULT_MINIMUMFEEDRATE 0 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 0 // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. #define DEFAULT_MINSEGMENTTIME 20000 -#define DEFAULT_XYJERK 30.0*60 -#define DEFAULT_ZJERK 10.0*60 +#define DEFAULT_XYJERK 30.0 // (mm/sec) +#define DEFAULT_ZJERK 0.4 // (mm/sec) // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature @@ -162,7 +177,7 @@ const int dropsegments=5; //everything with this number of steps will be ignore //#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one //// The minimal temperature defines the temperature below which the heater will not be enabled -#define HEATER_0_MINTEMP 5 +//#define HEATER_0_MINTEMP 5 //#define HEATER_1_MINTEMP 5 //#define BED_MINTEMP 5 @@ -170,7 +185,7 @@ const int dropsegments=5; //everything with this number of steps will be ignore // When temperature exceeds max temp, your heater will be switched off. // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // You should use MINTEMP for thermistor short/failure protection. -#define HEATER_0_MAXTEMP 275 +//#define HEATER_0_MAXTEMP 275 //#define_HEATER_1_MAXTEMP 275 //#define BED_MAXTEMP 150 @@ -246,9 +261,9 @@ const int dropsegments=5; //everything with this number of steps will be ignore // The number of linear motions that can be in the plan at any give time. // THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, i.g. 8,16,32 because shifts and ors are used to do the ringbuffering. #if defined SDSUPPORT - #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller + #define BLOCK_BUFFER_SIZE 8 // SD,LCD,Buttons take more memory, block buffer needs to be smaller #else - #define BLOCK_BUFFER_SIZE 16 // maximize block buffer + #define BLOCK_BUFFER_SIZE 8 // maximize block buffer #endif //The ASCII buffer for recieving from the serial: diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 104fc6576..1d722879e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -114,7 +114,9 @@ extern float HeaterPower; //=========================================================================== //=============================public variables============================= //=========================================================================== +#ifdef SDSUPPORT CardReader card; +#endif float homing_feedrate[] = HOMING_FEEDRATE; bool axis_relative_modes[] = AXIS_RELATIVE_MODES; volatile int feedmultiply=100; //100->1 200->2 @@ -215,7 +217,9 @@ void loop() { if(buflen<3) get_command(); + #ifdef SDSUPPORT card.checkautostart(false); + #endif if(buflen) { #ifdef SDSUPPORT @@ -933,7 +937,7 @@ inline void get_arc_coordinates() void prepare_move() { - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0); for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } @@ -943,7 +947,7 @@ void prepare_arc_move(char isclockwise) { float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc // Trace the arc - mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60.0/100.0, r, isclockwise); + mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60/100.0, r, isclockwise); // As far as the parser is concerned, the position is now == target. In reality the // motion control system might still be processing the action and the real tool position diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 34e29ff53..fe19055c4 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -1,594 +1,705 @@ -/* - planner.c - buffers movement commands and manages the acceleration profile plan - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ - -/* - Reasoning behind the mathematics in this module (in the key of 'Mathematica'): - - s == speed, a == acceleration, t == time, d == distance - - Basic definitions: - - Speed[s_, a_, t_] := s + (a*t) - Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] - - Distance to reach a specific speed with a constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] - d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() - - Speed after a given distance of travel with constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] - m -> Sqrt[2 a d + s^2] - - DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] - - When to start braking (di) to reach a specified destionation speed (s2) after accelerating - from initial speed s1 without ever stopping at a plateau: - - Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] - di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() - - IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) -*/ - - -//#include -//#include -//#include - -#include "Marlin.h" -#include "Configuration.h" -#include "pins.h" -#include "fastio.h" -#include "planner.h" -#include "stepper.h" -#include "temperature.h" -#include "ultralcd.h" - -//=========================================================================== -//=============================public variables ============================ -//=========================================================================== - -unsigned long minsegmenttime; -float max_feedrate[4]; // set the max speeds -float axis_steps_per_unit[4]; -long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software -float minimumfeedrate; -float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX -float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX -float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. -float max_z_jerk; -float mintravelfeedrate; -unsigned long axis_steps_per_sqr_second[NUM_AXIS]; - -// The current position of the tool in absolute steps -long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode - - -//=========================================================================== -//=============================private variables ============================ -//=========================================================================== -static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions -static volatile unsigned char block_buffer_head; // Index of the next block to be pushed -static volatile unsigned char block_buffer_tail; // Index of the block to process now - - - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== -#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 - -// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the -// given acceleration: -inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { - if (acceleration!=0) { - return((target_rate*target_rate-initial_rate*initial_rate)/ - (2.0*acceleration)); - } - else { - return 0.0; // acceleration was 0, set acceleration distance to 0 - } -} - -// This function gives you the point at which you must start braking (at the rate of -acceleration) if -// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after -// a total travel of distance. This can be used to compute the intersection point between acceleration and -// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) - -inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { - if (acceleration!=0) { - return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ - (4.0*acceleration) ); - } - else { - return 0.0; // acceleration was 0, set intersection distance to 0 - } -} - -// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. - -void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { - if(block->busy == true) return; // If block is busy then bail out. - float entry_factor = entry_speed / block->nominal_speed; - float exit_factor = exit_speed / block->nominal_speed; - long initial_rate = ceil(block->nominal_rate*entry_factor); - long final_rate = ceil(block->nominal_rate*exit_factor); - - #ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; - #endif // ADVANCE - - // Limit minimal step rate (Otherwise the timer will overflow.) - if(initial_rate <120) initial_rate=120; - if(final_rate < 120) final_rate=120; - - // Calculate the acceleration steps - long acceleration = block->acceleration_st; - long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); - long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); - // Calculate the size of Plateau of Nominal Rate. - long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; - - // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will - // have to use intersection_distance() to calculate when to abort acceleration and start braking - // in order to reach the final_rate exactly at the end of this block. - if (plateau_steps < 0) { - accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); - plateau_steps = 0; - } - - long decelerate_after = accelerate_steps+plateau_steps; - - CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section - if(block->busy == false) { // Don't update variables if block is busy. - block->accelerate_until = accelerate_steps; - block->decelerate_after = decelerate_after; - block->initial_rate = initial_rate; - block->final_rate = final_rate; - #ifdef ADVANCE - block->initial_advance = initial_advance; - block->final_advance = final_advance; - #endif //ADVANCE - } - CRITICAL_SECTION_END; -} - -// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the -// acceleration within the allotted distance. -inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { - return sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance); -} - -// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. -// This method will calculate the junction jerk as the euclidean distance between the nominal -// velocities of the respective blocks. -inline float junction_jerk(block_t *before, block_t *after) { - return sqrt( - pow((before->speed_x-after->speed_x), 2)+pow((before->speed_y-after->speed_y), 2)); -} - -// Return the safe speed which is max_jerk/2, e.g. the -// speed under which you cannot exceed max_jerk no matter what you do. -float safe_speed(block_t *block) { - float safe_speed; - safe_speed = max_xy_jerk/2; - if(abs(block->speed_z) > max_z_jerk/2) - safe_speed = max_z_jerk/2; - if (safe_speed > block->nominal_speed) - safe_speed = block->nominal_speed; - return safe_speed; -} - -// The kernel called by planner_recalculate() when scanning the plan from last to first entry. -void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - - float entry_speed = current->nominal_speed; - float exit_factor; - float exit_speed; - if (next) { - exit_speed = next->entry_speed; - } - else { - exit_speed = safe_speed(current); - } - - // Calculate the entry_factor for the current block. - if (previous) { - // Reduce speed so that junction_jerk is within the maximum allowed - float jerk = junction_jerk(previous, current); - if((previous->steps_x == 0) && (previous->steps_y == 0)) { - entry_speed = safe_speed(current); - } - else if (jerk > max_xy_jerk) { - entry_speed = (max_xy_jerk/jerk) * entry_speed; - } - if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { - entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; - } - // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. - if (entry_speed > exit_speed) { - float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); - if (max_entry_speed < entry_speed) { - entry_speed = max_entry_speed; - } - } - } - else { - entry_speed = safe_speed(current); - } - // Store result - current->entry_speed = entry_speed; -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the reverse pass. -void planner_reverse_pass() { - char block_index = block_buffer_head; - if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { - block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); - block_t *block[5] = { - NULL, NULL, NULL, NULL, NULL }; - while(block_index != block_buffer_tail) { - block_index = (block_index-1) & (BLOCK_BUFFER_SIZE -1); - block[2]= block[1]; - block[1]= block[0]; - block[0] = &block_buffer[block_index]; - planner_reverse_pass_kernel(block[0], block[1], block[2]); - } - planner_reverse_pass_kernel(NULL, block[0], block[1]); - } -} - -// The kernel called by planner_recalculate() when scanning the plan from first to last entry. -void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - if(previous) { - // If the previous block is an acceleration block, but it is not long enough to - // complete the full speed change within the block, we need to adjust out entry - // speed accordingly. Remember current->entry_factor equals the exit factor of - // the previous block. - if(previous->entry_speed < current->entry_speed) { - float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); - if (max_entry_speed < current->entry_speed) { - current->entry_speed = max_entry_speed; - } - } - } -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the forward pass. -void planner_forward_pass() { - char block_index = block_buffer_tail; - block_t *block[3] = { - NULL, NULL, NULL }; - - while(block_index != block_buffer_head) { - block[0] = block[1]; - block[1] = block[2]; - block[2] = &block_buffer[block_index]; - planner_forward_pass_kernel(block[0],block[1],block[2]); - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - planner_forward_pass_kernel(block[1], block[2], NULL); -} - -// Recalculates the trapezoid speed profiles for all blocks in the plan according to the -// entry_factor for each junction. Must be called by planner_recalculate() after -// updating the blocks. -void planner_recalculate_trapezoids() { - char block_index = block_buffer_tail; - block_t *current; - block_t *next = NULL; - while(block_index != block_buffer_head) { - current = next; - next = &block_buffer[block_index]; - if (current) { - calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); - } - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); -} - -// Recalculates the motion plan according to the following algorithm: -// -// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) -// so that: -// a. The junction jerk is within the set limit -// b. No speed reduction within one block requires faster deceleration than the one, true constant -// acceleration. -// 2. Go over every block in chronological order and dial down junction speed reduction values if -// a. The speed increase within one block would require faster accelleration than the one, true -// constant acceleration. -// -// When these stages are complete all blocks have an entry_factor that will allow all speed changes to -// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than -// the set limit. Finally it will: -// -// 3. Recalculate trapezoids for all blocks. - -void planner_recalculate() { - planner_reverse_pass(); - planner_forward_pass(); - planner_recalculate_trapezoids(); -} - -void plan_init() { - block_buffer_head = 0; - block_buffer_tail = 0; - memset(position, 0, sizeof(position)); // clear position -} - - -void plan_discard_current_block() { - if (block_buffer_head != block_buffer_tail) { - block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); - } -} - -block_t *plan_get_current_block() { - if (block_buffer_head == block_buffer_tail) { - return(NULL); - } - block_t *block = &block_buffer[block_buffer_tail]; - block->busy = true; - return(block); -} - -void check_axes_activity() { - unsigned char x_active = 0; - unsigned char y_active = 0; - unsigned char z_active = 0; - unsigned char e_active = 0; - block_t *block; - - if(block_buffer_tail != block_buffer_head) { - char block_index = block_buffer_tail; - while(block_index != block_buffer_head) { - block = &block_buffer[block_index]; - if(block->steps_x != 0) x_active++; - if(block->steps_y != 0) y_active++; - if(block->steps_z != 0) z_active++; - if(block->steps_e != 0) e_active++; - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - } - if((DISABLE_X) && (x_active == 0)) disable_x(); - if((DISABLE_Y) && (y_active == 0)) disable_y(); - if((DISABLE_Z) && (z_active == 0)) disable_z(); - if((DISABLE_E) && (e_active == 0)) disable_e(); -} - -// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in -// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration -// calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate) -{ - // Calculate the buffer head after we push this byte - int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); - - // If the buffer is full: good! That means we are well ahead of the robot. - // Rest here until there is room in the buffer. - while(block_buffer_tail == next_buffer_head) { - manage_heater(); - manage_inactivity(1); - LCD_STATUS; - } - - // The target position of the tool in absolute steps - // Calculate target position in absolute steps - //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow - long target[4]; - target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); - target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); - target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - - // Prepare to set up new block - block_t *block = &block_buffer[block_buffer_head]; - - // Mark block as not busy (Not executed by the stepper interrupt) - block->busy = false; - - // Number of steps for each axis - block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); - block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); - block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); - block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); - block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); - - // Bail if this is a zero-length block - if (block->step_event_count <=dropsegments) { - return; - }; - - //enable active axes - if(block->steps_x != 0) enable_x(); - if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - - float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; - float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; - float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; - float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; - block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); - - unsigned long microseconds; - - if (block->steps_e == 0) { - if(feed_ratemillimeters/feed_rate)*1000000); - - // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill - // reduces/removes corner blobs as the machine won't come to a full stop. - int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); - - if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { - if (microsecondsspeed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - - - // Limit speed per axis - float speed_factor = 1; //factor <=1 do decrease speed - if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); - //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; /is not need here because auf the init above - } - if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ - float tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ - float tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_e) > max_feedrate[E_AXIS]){ - float tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - multiplier = multiplier * speed_factor; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - block->nominal_speed = block->millimeters * multiplier; - block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - - if(block->nominal_rate < 120) - block->nominal_rate = 120; - block->entry_speed = safe_speed(block); - - // Compute the acceleration rate for the trapezoid generator. - float travel_per_step = block->millimeters/block->step_event_count; - if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { - block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - } - else { - block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - float tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - // Limit acceleration per axis - if((tmp_acceleration * block->steps_x) > axis_steps_per_sqr_second[X_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_y) > axis_steps_per_sqr_second[Y_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_e) > axis_steps_per_sqr_second[E_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_z) > axis_steps_per_sqr_second[Z_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - } - block->acceleration = block->acceleration_st * travel_per_step; - block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); - - #ifdef ADVANCE - // Calculate advance rate - if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { - block->advance_rate = 0; - block->advance = 0; - } - else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); - float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; - block->advance = advance; - if(acc_dist == 0) { - block->advance_rate = 0; - } - else { - block->advance_rate = advance / (float)acc_dist; - } - } - #endif // ADVANCE - - // compute a preliminary conservative acceleration trapezoid - float safespeed = safe_speed(block); - calculate_trapezoid_for_block(block, safespeed, safespeed); - - // Compute direction bits for this block - block->direction_bits = 0; - if (target[X_AXIS] < position[X_AXIS]) { - block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<. +*/ + +/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ + +/* + Reasoning behind the mathematics in this module (in the key of 'Mathematica'): + + s == speed, a == acceleration, t == time, d == distance + + Basic definitions: + + Speed[s_, a_, t_] := s + (a*t) + Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] + + Distance to reach a specific speed with a constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] + d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() + + Speed after a given distance of travel with constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] + m -> Sqrt[2 a d + s^2] + + DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] + + When to start braking (di) to reach a specified destionation speed (s2) after accelerating + from initial speed s1 without ever stopping at a plateau: + + Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] + di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() + + IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) +*/ + + +//#include +//#include +//#include + +#include "Marlin.h" +#include "Configuration.h" +#include "pins.h" +#include "fastio.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" +#include "ultralcd.h" + +//=========================================================================== +//=============================public variables ============================ +//=========================================================================== + +unsigned long minsegmenttime; +float max_feedrate[4]; // set the max speeds +float axis_steps_per_unit[4]; +long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +float minimumfeedrate; +float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +float max_z_jerk; +float mintravelfeedrate; +unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +// The current position of the tool in absolute steps +long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode +static float previous_speed[4]; // Speed of previous path line segment +static float previous_nominal_speed; // Nominal speed of previous path line segment + + +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== +static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions +static volatile unsigned char block_buffer_head; // Index of the next block to be pushed +static volatile unsigned char block_buffer_tail; // Index of the block to process now + +// Used for the frequency limit +static unsigned char old_direction_bits = 0; // Old direction bits. Used for speed calculations +static long x_segment_time[3]={0,0,0}; // Segment times (in us). Used for speed calculations +static long y_segment_time[3]={0,0,0}; + +// Returns the index of the next block in the ring buffer +// NOTE: Removed modulo (%) operator, which uses an expensive divide and multiplication. +static int8_t next_block_index(int8_t block_index) { + block_index++; + if (block_index == BLOCK_BUFFER_SIZE) { block_index = 0; } + return(block_index); +} + + +// Returns the index of the previous block in the ring buffer +static int8_t prev_block_index(int8_t block_index) { + if (block_index == 0) { block_index = BLOCK_BUFFER_SIZE; } + block_index--; + return(block_index); +} + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + +// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the +// given acceleration: +inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { + if (acceleration!=0) { + return((target_rate*target_rate-initial_rate*initial_rate)/ + (2.0*acceleration)); + } + else { + return 0.0; // acceleration was 0, set acceleration distance to 0 + } +} + +// This function gives you the point at which you must start braking (at the rate of -acceleration) if +// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after +// a total travel of distance. This can be used to compute the intersection point between acceleration and +// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) + +inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { + if (acceleration!=0) { + return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ + (4.0*acceleration) ); + } + else { + return 0.0; // acceleration was 0, set intersection distance to 0 + } +} + +// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. + +void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exit_factor) { + long initial_rate = ceil(block->nominal_rate*entry_factor); // (step/min) + long final_rate = ceil(block->nominal_rate*exit_factor); // (step/min) + + // Limit minimal step rate (Otherwise the timer will overflow.) + if(initial_rate <120) {initial_rate=120; } + if(final_rate < 120) {final_rate=120; } + + long acceleration = block->acceleration_st; + int32_t accelerate_steps = + ceil(estimate_acceleration_distance(block->initial_rate, block->nominal_rate, acceleration)); + int32_t decelerate_steps = + floor(estimate_acceleration_distance(block->nominal_rate, block->final_rate, -acceleration)); + + // Calculate the size of Plateau of Nominal Rate. + int32_t plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; + + // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will + // have to use intersection_distance() to calculate when to abort acceleration and start braking + // in order to reach the final_rate exactly at the end of this block. + if (plateau_steps < 0) { + accelerate_steps = ceil( + intersection_distance(block->initial_rate, block->final_rate, acceleration, block->step_event_count)); + accelerate_steps = max(accelerate_steps,0); // Check limits due to numerical round-off + accelerate_steps = min(accelerate_steps,block->step_event_count); + plateau_steps = 0; + } + + #ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; + #endif // ADVANCE + + // block->accelerate_until = accelerate_steps; + // block->decelerate_after = accelerate_steps+plateau_steps; + + CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section + if(block->busy == false) { // Don't update variables if block is busy. + block->accelerate_until = accelerate_steps; + block->decelerate_after = accelerate_steps+plateau_steps; + block->initial_rate = initial_rate; + block->final_rate = final_rate; + #ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; + #endif //ADVANCE + } + CRITICAL_SECTION_END; +} + +// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the +// acceleration within the allotted distance. +inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { + return sqrt(target_velocity*target_velocity-2*acceleration*distance); +} + +// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. +// This method will calculate the junction jerk as the euclidean distance between the nominal +// velocities of the respective blocks. +//inline float junction_jerk(block_t *before, block_t *after) { +// return sqrt( +// pow((before->speed_x-after->speed_x), 2)+pow((before->speed_y-after->speed_y), 2)); +//} + + +// The kernel called by planner_recalculate() when scanning the plan from last to first entry. +void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { return; } + + if (next) { + // If entry speed is already at the maximum entry speed, no need to recheck. Block is cruising. + // If not, block in state of acceleration or deceleration. Reset entry speed to maximum and + // check for maximum allowable speed reductions to ensure maximum possible planned speed. + if (current->entry_speed != current->max_entry_speed) { + + // If nominal length true, max junction speed is guaranteed to be reached. Only compute + // for max allowable speed if block is decelerating and nominal length is false. + if ((!current->nominal_length_flag) && (current->max_entry_speed > next->entry_speed)) { + current->entry_speed = min( current->max_entry_speed, + max_allowable_speed(-current->acceleration,next->entry_speed,current->millimeters)); + } else { + current->entry_speed = current->max_entry_speed; + } + current->recalculate_flag = true; + + } + } // Skip last block. Already initialized and set for recalculation. +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the reverse pass. +void planner_reverse_pass() { + char block_index = block_buffer_head; + if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { + block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); + block_t *block[3] = { NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index = prev_block_index(block_index); + block[2]= block[1]; + block[1]= block[0]; + block[0] = &block_buffer[block_index]; + planner_reverse_pass_kernel(block[0], block[1], block[2]); + } + } +} + +// The kernel called by planner_recalculate() when scanning the plan from first to last entry. +void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!previous) { return; } + + // If the previous block is an acceleration block, but it is not long enough to complete the + // full speed change within the block, we need to adjust the entry speed accordingly. Entry + // speeds have already been reset, maximized, and reverse planned by reverse planner. + // If nominal length is true, max junction speed is guaranteed to be reached. No need to recheck. + if (!previous->nominal_length_flag) { + if (previous->entry_speed < current->entry_speed) { + double entry_speed = min( current->entry_speed, + max_allowable_speed(-previous->acceleration,previous->entry_speed,previous->millimeters) ); + + // Check for junction speed change + if (current->entry_speed != entry_speed) { + current->entry_speed = entry_speed; + current->recalculate_flag = true; + } + } + } +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the forward pass. +void planner_forward_pass() { + char block_index = block_buffer_tail; + block_t *block[3] = { NULL, NULL, NULL }; + + while(block_index != block_buffer_head) { + block[0] = block[1]; + block[1] = block[2]; + block[2] = &block_buffer[block_index]; + planner_forward_pass_kernel(block[0],block[1],block[2]); + block_index = next_block_index(block_index); + } + planner_forward_pass_kernel(block[1], block[2], NULL); +} + +// Recalculates the trapezoid speed profiles for all blocks in the plan according to the +// entry_factor for each junction. Must be called by planner_recalculate() after +// updating the blocks. +void planner_recalculate_trapezoids() { + int8_t block_index = block_buffer_tail; + block_t *current; + block_t *next = NULL; + + while(block_index != block_buffer_head) { + current = next; + next = &block_buffer[block_index]; + if (current) { + // Recalculate if current block entry or exit junction speed has changed. + if (current->recalculate_flag || next->recalculate_flag) { + // NOTE: Entry and exit factors always > 0 by all previous logic operations. + calculate_trapezoid_for_block(current, current->entry_speed/current->nominal_speed, + next->entry_speed/current->nominal_speed); + current->recalculate_flag = false; // Reset current only to ensure next trapezoid is computed + } + } + block_index = next_block_index( block_index ); + } + // Last/newest block in buffer. Exit speed is set with MINIMUM_PLANNER_SPEED. Always recalculated. + if(next != NULL) { + calculate_trapezoid_for_block(next, next->entry_speed/next->nominal_speed, + MINIMUM_PLANNER_SPEED/next->nominal_speed); + next->recalculate_flag = false; + } +} + +// Recalculates the motion plan according to the following algorithm: +// +// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) +// so that: +// a. The junction jerk is within the set limit +// b. No speed reduction within one block requires faster deceleration than the one, true constant +// acceleration. +// 2. Go over every block in chronological order and dial down junction speed reduction values if +// a. The speed increase within one block would require faster accelleration than the one, true +// constant acceleration. +// +// When these stages are complete all blocks have an entry_factor that will allow all speed changes to +// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than +// the set limit. Finally it will: +// +// 3. Recalculate trapezoids for all blocks. + +void planner_recalculate() { + planner_reverse_pass(); + planner_forward_pass(); + planner_recalculate_trapezoids(); +} + +void plan_init() { + block_buffer_head = 0; + block_buffer_tail = 0; + memset(position, 0, sizeof(position)); // clear position + previous_speed[0] = 0.0; + previous_speed[1] = 0.0; + previous_speed[2] = 0.0; + previous_speed[3] = 0.0; + previous_nominal_speed = 0.0; +} + + +void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); + } +} + +block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} + +void check_axes_activity() { + unsigned char x_active = 0; + unsigned char y_active = 0; + unsigned char z_active = 0; + unsigned char e_active = 0; + block_t *block; + + if(block_buffer_tail != block_buffer_head) { + char block_index = block_buffer_tail; + while(block_index != block_buffer_head) { + block = &block_buffer[block_index]; + if(block->steps_x != 0) x_active++; + if(block->steps_y != 0) y_active++; + if(block->steps_z != 0) z_active++; + if(block->steps_e != 0) e_active++; + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + } + if((DISABLE_X) && (x_active == 0)) disable_x(); + if((DISABLE_Y) && (y_active == 0)) disable_y(); + if((DISABLE_Z) && (z_active == 0)) disable_z(); + if((DISABLE_E) && (e_active == 0)) disable_e(); +} + + +float junction_deviation = 0.1; +// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in +// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration +// calculation the caller must also provide the physical length of the line in millimeters. +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate) +{ + // Calculate the buffer head after we push this byte + int next_buffer_head = next_block_index(block_buffer_head); + + // If the buffer is full: good! That means we are well ahead of the robot. + // Rest here until there is room in the buffer. + while(block_buffer_tail == next_buffer_head) { + manage_heater(); + manage_inactivity(1); + LCD_STATUS; + } + + // The target position of the tool in absolute steps + // Calculate target position in absolute steps + //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow + long target[4]; + target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + // Prepare to set up new block + block_t *block = &block_buffer[block_buffer_head]; + + // Mark block as not busy (Not executed by the stepper interrupt) + block->busy = false; + + // Number of steps for each axis + block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); + block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); + block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); + block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); + + // Bail if this is a zero-length block + if (block->step_event_count <=dropsegments) { return; }; + + // Compute direction bits for this block + block->direction_bits = 0; + if (target[X_AXIS] < position[X_AXIS]) { block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); + + float delta_mm[4]; + delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; + delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + + square(delta_mm[Z_AXIS])); + float inverse_millimeters = 1.0/block->millimeters; // Inverse millimeters to remove multiple divides + + // Calculate speed in mm/second for each axis. No divide by zero due to previous checks. + float inverse_second = feed_rate * inverse_millimeters; + + block->nominal_speed = block->millimeters * inverse_second; // (mm/sec) Always > 0 + block->nominal_rate = ceil(block->step_event_count * inverse_second); // (step/sec) Always > 0 + +// unsigned long microseconds; +#if 0 + if (block->steps_e == 0) { + if(feed_ratemillimeters/feed_rate)*1000000); + + // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill + // reduces/removes corner blobs as the machine won't come to a full stop. + int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); + + if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { + if (microseconds max_feedrate[i]) + speed_factor = min(speed_factor, max_feedrate[i] / abs(current_speed[i])); + } + +// Max segement time in us. + +#ifdef XY_FREQUENCY_LIMIT +#define MAX_FREQ_TIME (1000000.0/XY_FREQUENCY_LIMIT) + + // Check and limit the xy direction change frequency + unsigned char direction_change = block->direction_bits ^ old_direction_bits; + old_direction_bits = block->direction_bits; + long segment_time = lround(1000000.0/inverse_second); + if((direction_change & (1< max_feedrate[i]) + speed_factor = min(speed_factor, max_feedrate[i] / abs(current_speed[i])); +// Serial.print("current_speed"); Serial.print(i); Serial.print(" : "); Serial.println(current_speed[i]); + } + for(unsigned char i=0; i < 4; i++) { + current_speed[i] *= speed_factor; + } + block->nominal_speed *= speed_factor; + block->nominal_rate *= speed_factor; + } + + // Compute and limit the acceleration rate for the trapezoid generator. + float steps_per_mm = block->step_event_count/block->millimeters; + if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { + block->acceleration_st = ceil(retract_acceleration * steps_per_mm); // convert to: acceleration steps/sec^2 + } + else { + block->acceleration_st = ceil(acceleration * steps_per_mm); // convert to: acceleration steps/sec^2 + // Limit acceleration per axis + if(((float)block->acceleration_st * (float)block->steps_x / (float)block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; + if(((float)block->acceleration_st * (float)block->steps_y / (float)block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; + if(((float)block->acceleration_st * (float)block->steps_e / (float)block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; + if(((float)block->acceleration_st * (float)block->steps_z / (float)block->step_event_count ) > axis_steps_per_sqr_second[Z_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; + } + block->acceleration = block->acceleration_st / steps_per_mm; + block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); + +#if 0 // Use old jerk for now + // Compute path unit vector + double unit_vec[3]; + + unit_vec[X_AXIS] = delta_mm[X_AXIS]*inverse_millimeters; + unit_vec[Y_AXIS] = delta_mm[Y_AXIS]*inverse_millimeters; + unit_vec[Z_AXIS] = delta_mm[Z_AXIS]*inverse_millimeters; + + // Compute maximum allowable entry speed at junction by centripetal acceleration approximation. + // Let a circle be tangent to both previous and current path line segments, where the junction + // deviation is defined as the distance from the junction to the closest edge of the circle, + // colinear with the circle center. The circular segment joining the two paths represents the + // path of centripetal acceleration. Solve for max velocity based on max acceleration about the + // radius of the circle, defined indirectly by junction deviation. This may be also viewed as + // path width or max_jerk in the previous grbl version. This approach does not actually deviate + // from path, but used as a robust way to compute cornering speeds, as it takes into account the + // nonlinearities of both the junction angle and junction velocity. + double vmax_junction = MINIMUM_PLANNER_SPEED; // Set default max junction speed + + // Skip first block or when previous_nominal_speed is used as a flag for homing and offset cycles. + if ((block_buffer_head != block_buffer_tail) && (previous_nominal_speed > 0.0)) { + // Compute cosine of angle between previous and current path. (prev_unit_vec is negative) + // NOTE: Max junction velocity is computed without sin() or acos() by trig half angle identity. + double cos_theta = - previous_unit_vec[X_AXIS] * unit_vec[X_AXIS] + - previous_unit_vec[Y_AXIS] * unit_vec[Y_AXIS] + - previous_unit_vec[Z_AXIS] * unit_vec[Z_AXIS] ; + + // Skip and use default max junction speed for 0 degree acute junction. + if (cos_theta < 0.95) { + vmax_junction = min(previous_nominal_speed,block->nominal_speed); + // Skip and avoid divide by zero for straight junctions at 180 degrees. Limit to min() of nominal speeds. + if (cos_theta > -0.95) { + // Compute maximum junction velocity based on maximum acceleration and junction deviation + double sin_theta_d2 = sqrt(0.5*(1.0-cos_theta)); // Trig half angle identity. Always positive. + vmax_junction = min(vmax_junction, + sqrt(block->acceleration * junction_deviation * sin_theta_d2/(1.0-sin_theta_d2)) ); + } + } + } +#endif + // Start with a safe speed + float vmax_junction = max_xy_jerk/2; + if(abs(current_speed[Z_AXIS]) > max_z_jerk/2) + vmax_junction = max_z_jerk/2; + vmax_junction = min(vmax_junction, block->nominal_speed); + + if ((block_buffer_head != block_buffer_tail) && (previous_nominal_speed > 0.0)) { + float jerk = sqrt(pow((current_speed[X_AXIS]-previous_speed[X_AXIS]), 2)+pow((current_speed[Y_AXIS]-previous_speed[Y_AXIS]), 2)); + if((previous_speed[X_AXIS] != 0.0) || (previous_speed[Y_AXIS] != 0.0)) { + vmax_junction = block->nominal_speed; + } + if (jerk > max_xy_jerk) { + vmax_junction *= (max_xy_jerk/jerk); + } + if(abs(current_speed[Z_AXIS] - previous_speed[Z_AXIS]) > max_z_jerk) { + vmax_junction *= (max_z_jerk/abs(current_speed[Z_AXIS] - previous_speed[Z_AXIS])); + } + } + block->max_entry_speed = vmax_junction; + + // Initialize block entry speed. Compute based on deceleration to user-defined MINIMUM_PLANNER_SPEED. + double v_allowable = max_allowable_speed(-block->acceleration,MINIMUM_PLANNER_SPEED,block->millimeters); + block->entry_speed = min(vmax_junction, v_allowable); + + // Initialize planner efficiency flags + // Set flag if block will always reach maximum junction speed regardless of entry/exit speeds. + // If a block can de/ac-celerate from nominal speed to zero within the length of the block, then + // the current block and next block junction speeds are guaranteed to always be at their maximum + // junction speeds in deceleration and acceleration, respectively. This is due to how the current + // block nominal speed limits both the current and next maximum junction speeds. Hence, in both + // the reverse and forward planners, the corresponding block junction speed will always be at the + // the maximum junction speed and may always be ignored for any speed reduction checks. + if (block->nominal_speed <= v_allowable) { block->nominal_length_flag = true; } + else { block->nominal_length_flag = false; } + block->recalculate_flag = true; // Always calculate trapezoid for new block + + // Update previous path unit_vector and nominal speed + memcpy(previous_speed, current_speed, sizeof(previous_speed)); // previous_speed[] = current_speed[] + previous_nominal_speed = block->nominal_speed; + + #ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { + block->advance_rate = 0; + block->advance = 0; + } + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } + #endif // ADVANCE + + + + + calculate_trapezoid_for_block(block, block->entry_speed/block->nominal_speed, + MINIMUM_PLANNER_SPEED/block->nominal_speed); + + // Move buffer head + block_buffer_head = next_buffer_head; + + // Update position + memcpy(position, target, sizeof(target)); // position[] = target[] + + planner_recalculate(); + + st_wake_up(); +} + +void plan_set_position(const float &x, const float &y, const float &z, const float &e) +{ + position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + previous_nominal_speed = 0.0; // Resets planner junction speeds. Assumes start from rest. + previous_speed[0] = 0.0; + previous_speed[1] = 0.0; + previous_speed[2] = 0.0; + previous_speed[3] = 0.0; +} diff --git a/Marlin/planner.h b/Marlin/planner.h index 79f54d879..40f214ebf 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -1,93 +1,96 @@ -/* - planner.h - buffers movement commands and manages the acceleration profile plan - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -// This module is to be considered a sub-module of stepper.c. Please don't include -// this file from any other module. - -#ifndef planner_h -#define planner_h - -#include "Configuration.h" - -// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in -// the source g-code and may never actually be reached if acceleration management is active. -typedef struct { - // Fields used by the bresenham algorithm for tracing the line - long steps_x, steps_y, steps_z, steps_e; // Step count along each axis - long step_event_count; // The number of step events required to complete this block - volatile long accelerate_until; // The index of the step event on which to stop acceleration - volatile long decelerate_after; // The index of the step event on which to start decelerating - volatile long acceleration_rate; // The acceleration rate used for acceleration calculation - unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) - #ifdef ADVANCE - long advance_rate; - volatile long initial_advance; - volatile long final_advance; - float advance; - #endif - - // Fields used by the motion planner to manage acceleration - float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis - float nominal_speed; // The nominal speed for this block in mm/min - float millimeters; // The total travel of this block in mm - float entry_speed; - float acceleration; // acceleration mm/sec^2 - - // Settings for the trapezoid generator - long nominal_rate; // The nominal step rate for this block in step_events/sec - volatile long initial_rate; // The jerk-adjusted step rate at start of block - volatile long final_rate; // The minimal rate at exit - long acceleration_st; // acceleration steps/sec^2 - volatile char busy; -} block_t; - -// Initialize the motion plan subsystem -void plan_init(); - -// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in -// millimaters. Feed rate specifies the speed of the motion. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate); - -// Set position. Used for G92 instructions. -void plan_set_position(const float &x, const float &y, const float &z, const float &e); - - -// Called when the current block is no longer needed. Discards the block and makes the memory -// availible for new blocks. -void plan_discard_current_block(); - -// Gets the current block. Returns NULL if buffer empty -block_t *plan_get_current_block(); - -void check_axes_activity(); - -extern unsigned long minsegmenttime; -extern float max_feedrate[4]; // set the max speeds -extern float axis_steps_per_unit[4]; -extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software -extern float minimumfeedrate; -extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX -extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX -extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. -extern float max_z_jerk; -extern float mintravelfeedrate; -extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; - +/* + planner.h - buffers movement commands and manages the acceleration profile plan + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +// This module is to be considered a sub-module of stepper.c. Please don't include +// this file from any other module. + +#ifndef planner_h +#define planner_h + +#include "Configuration.h" + +// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in +// the source g-code and may never actually be reached if acceleration management is active. +typedef struct { + // Fields used by the bresenham algorithm for tracing the line + long steps_x, steps_y, steps_z, steps_e; // Step count along each axis + long step_event_count; // The number of step events required to complete this block + volatile long accelerate_until; // The index of the step event on which to stop acceleration + volatile long decelerate_after; // The index of the step event on which to start decelerating + volatile long acceleration_rate; // The acceleration rate used for acceleration calculation + unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) + #ifdef ADVANCE +// long advance_rate; +// volatile long initial_advance; +// volatile long final_advance; +// float advance; + #endif + + // Fields used by the motion planner to manage acceleration +// float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis + float nominal_speed; // The nominal speed for this block in mm/min + float entry_speed; // Entry speed at previous-current junction in mm/min + float max_entry_speed; // Maximum allowable junction entry speed in mm/min + float millimeters; // The total travel of this block in mm + float acceleration; // acceleration mm/sec^2 + unsigned char recalculate_flag; // Planner flag to recalculate trapezoids on entry junction + unsigned char nominal_length_flag; // Planner flag for nominal speed always reached + + // Settings for the trapezoid generator + long nominal_rate; // The nominal step rate for this block in step_events/sec + volatile long initial_rate; // The jerk-adjusted step rate at start of block + volatile long final_rate; // The minimal rate at exit + long acceleration_st; // acceleration steps/sec^2 + volatile char busy; +} block_t; + +// Initialize the motion plan subsystem +void plan_init(); + +// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in +// millimaters. Feed rate specifies the speed of the motion. +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate); + +// Set position. Used for G92 instructions. +void plan_set_position(const float &x, const float &y, const float &z, const float &e); + + +// Called when the current block is no longer needed. Discards the block and makes the memory +// availible for new blocks. +void plan_discard_current_block(); + +// Gets the current block. Returns NULL if buffer empty +block_t *plan_get_current_block(); + +void check_axes_activity(); + +extern unsigned long minsegmenttime; +extern float max_feedrate[4]; // set the max speeds +extern float axis_steps_per_unit[4]; +extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +extern float minimumfeedrate; +extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +extern float max_z_jerk; +extern float mintravelfeedrate; +extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + #endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 7d94d8063..e50818ca8 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -1,612 +1,617 @@ -/* - stepper.c - stepper motor driver: executes motion plans using stepper motors - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith - and Philipp Tiefenbacher. */ - -#include "stepper.h" -#include "Configuration.h" -#include "Marlin.h" -#include "planner.h" -#include "pins.h" -#include "fastio.h" -#include "temperature.h" -#include "ultralcd.h" - -#include "speed_lookuptable.h" - - -//=========================================================================== -//=============================public variables ============================ -//=========================================================================== -block_t *current_block; // A pointer to the block currently being traced - - -//=========================================================================== -//=============================private variables ============================ -//=========================================================================== -//static makes it inpossible to be called from outside of this file by extern.! - -// Variables used by The Stepper Driver Interrupt -static unsigned char out_bits; // The next stepping-bits to be output -static long counter_x, // Counter variables for the bresenham line tracer - counter_y, - counter_z, - counter_e; -static unsigned long step_events_completed; // The number of step events executed in the current block -#ifdef ADVANCE - static long advance_rate, advance, final_advance = 0; - static short old_advance = 0; - static short e_steps; -#endif -static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. -static long acceleration_time, deceleration_time; -//static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; -static unsigned short acc_step_rate; // needed for deccelaration start point -static char step_loops; - - - -// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. -// for debugging purposes only, should be disabled by default -#ifdef DEBUG_STEPS - volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; - volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; -#endif - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== - - -// intRes = intIn1 * intIn2 >> 16 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 24 bit result -#define MultiU16X8toH16(intRes, charIn1, intIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %A1, %A2 \n\t" \ -"add %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r0 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (charIn1), \ -"d" (intIn2) \ -: \ -"r26" \ -) - -// intRes = longIn1 * longIn2 >> 24 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 48bit result -#define MultiU24X24toH16(intRes, longIn1, longIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"mov r27, r1 \n\t" \ -"mul %B1, %C2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %C1, %C2 \n\t" \ -"add %B0, r0 \n\t" \ -"mul %C1, %B2 \n\t" \ -"add %A0, r0 \n\t" \ -"adc %B0, r1 \n\t" \ -"mul %A1, %C2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %B2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %C1, %A2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %A2 \n\t" \ -"add r27, r1 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r27 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (longIn1), \ -"d" (longIn2) \ -: \ -"r26" , "r27" \ -) - -// Some useful constants - -#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< -// -// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates -// first block->accelerate_until step_events_completed, then keeps going at constant speed until -// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. -// The slope of acceleration is calculated with the leib ramp alghorithm. - -void st_wake_up() { - // TCNT1 = 0; - ENABLE_STEPPER_DRIVER_INTERRUPT(); -} - -inline unsigned short calc_timer(unsigned short step_rate) { - unsigned short timer; - if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; - - if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times - step_rate = step_rate >> 2; - step_loops = 4; - } - else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times - step_rate = step_rate >> 1; - step_loops = 2; - } - else { - step_loops = 1; - } - - if(step_rate < 32) step_rate = 32; - step_rate -= 32; // Correct for minimal speed - if(step_rate >= (8*256)){ // higher step rate - unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; - unsigned char tmp_step_rate = (step_rate & 0x00ff); - unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); - MultiU16X8toH16(timer, tmp_step_rate, gain); - timer = (unsigned short)pgm_read_word_near(table_address) - timer; - } - else { // lower step rates - unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; - table_address += ((step_rate)>>1) & 0xfffc; - timer = (unsigned short)pgm_read_word_near(table_address); - timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); - } - if(timer < 100) timer = 100; - return timer; -} - -// Initializes the trapezoid generator from the current block. Called whenever a new -// block begins. -inline void trapezoid_generator_reset() { - #ifdef ADVANCE - advance = current_block->initial_advance; - final_advance = current_block->final_advance; - #endif - deceleration_time = 0; - // advance_rate = current_block->advance_rate; - // step_rate to timer interval - acc_step_rate = current_block->initial_rate; - acceleration_time = calc_timer(acc_step_rate); - OCR1A = acceleration_time; -} - -// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. -// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. -ISR(TIMER1_COMPA_vect) -{ - if(busy){ - SERIAL_ERRORLN(*(unsigned short *)OCR1A<< " ISR overtaking itself."); - return; - } // The busy-flag is used to avoid reentering this interrupt - - busy = true; - sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) - - // If there is no current block, attempt to pop one from the buffer - if (current_block == NULL) { - // Anything in the buffer? - current_block = plan_get_current_block(); - if (current_block != NULL) { - trapezoid_generator_reset(); - counter_x = -(current_block->step_event_count >> 1); - counter_y = counter_x; - counter_z = counter_x; - counter_e = counter_x; - step_events_completed = 0; - #ifdef ADVANCE - e_steps = 0; - #endif - } - else { -// DISABLE_STEPPER_DRIVER_INTERRUPT(); - } - } - - if (current_block != NULL) { - // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt - out_bits = current_block->direction_bits; - - #ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; - #endif //ADVANCE - - // Set direction en check limit switches - if ((out_bits & (1< -1 - if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } - #endif - } - else { // +direction - WRITE(X_DIR_PIN,!INVERT_X_DIR); - #ifdef DEBUG_STEPS - count_direction[X_AXIS]=1; - #endif - #if X_MAX_PIN > -1 - if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ - step_events_completed = current_block->step_event_count; - } - #endif - } - - if ((out_bits & (1< -1 - if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } - #endif - } - else { // +direction - WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - #ifdef DEBUG_STEPS - count_direction[Y_AXIS]=1; - #endif - #if Y_MAX_PIN > -1 - if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ - step_events_completed = current_block->step_event_count; - } - #endif - } - - if ((out_bits & (1< -1 - if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { - step_events_completed = current_block->step_event_count; - } - #endif - } - else { // +direction - WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - #ifdef DEBUG_STEPS - count_direction[Z_AXIS]=1; - #endif - #if Z_MAX_PIN > -1 - if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ - step_events_completed = current_block->step_event_count; - } - #endif - } - - #ifndef ADVANCE - if ((out_bits & (1<steps_x; - if (counter_x > 0) { - WRITE(X_STEP_PIN, HIGH); - counter_x -= current_block->step_event_count; - WRITE(X_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[X_AXIS]+=count_direction[X_AXIS]; - #endif - } - - counter_y += current_block->steps_y; - if (counter_y > 0) { - WRITE(Y_STEP_PIN, HIGH); - counter_y -= current_block->step_event_count; - WRITE(Y_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - #endif - } - - counter_z += current_block->steps_z; - if (counter_z > 0) { - WRITE(Z_STEP_PIN, HIGH); - counter_z -= current_block->step_event_count; - WRITE(Z_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Z_AXIS]+=count_direction[Z_AXIS]; - #endif - } - - #ifndef ADVANCE - counter_e += current_block->steps_e; - if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); - counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); - } - #endif //!ADVANCE - step_events_completed += 1; - if(step_events_completed >= current_block->step_event_count) break; - } - // Calculare new timer value - unsigned short timer; - unsigned short step_rate; - if (step_events_completed <= current_block->accelerate_until) { - MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); - acc_step_rate += current_block->initial_rate; - - // upper limit - if(acc_step_rate > current_block->nominal_rate) - acc_step_rate = current_block->nominal_rate; - - // step_rate to timer interval - timer = calc_timer(acc_step_rate); - #ifdef ADVANCE - advance += advance_rate; - #endif - acceleration_time += timer; - OCR1A = timer; - } - else if (step_events_completed > current_block->decelerate_after) { - MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); - - if(step_rate > acc_step_rate) { // Check step_rate stays positive - step_rate = current_block->final_rate; - } - else { - step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. - } - - // lower limit - if(step_rate < current_block->final_rate) - step_rate = current_block->final_rate; - - // step_rate to timer interval - timer = calc_timer(step_rate); - #ifdef ADVANCE - advance -= advance_rate; - if(advance < final_advance) - advance = final_advance; - #endif //ADVANCE - deceleration_time += timer; - OCR1A = timer; - } - // If current block is finished, reset pointer - if (step_events_completed >= current_block->step_event_count) { - current_block = NULL; - plan_discard_current_block(); - } - } - cli(); // disable interrupts - busy=false; -} - -#ifdef ADVANCE - unsigned char old_OCR0A; - // Timer interrupt for E. e_steps is set in the main routine; - // Timer 0 is shared with millies - ISR(TIMER0_COMPA_vect) - { - // Critical section needed because Timer 1 interrupt has higher priority. - // The pin set functions are placed on trategic position to comply with the stepper driver timing. - WRITE(E_STEP_PIN, LOW); - // Set E direction (Depends on E direction + advance) - if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); - e_steps++; - WRITE(E_STEP_PIN, HIGH); - } - if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); - } - old_OCR0A += 25; // 10kHz interrupt - OCR0A = old_OCR0A; - } -#endif // ADVANCE - -void st_init() -{ - //Initialize Dir Pins - #if X_DIR_PIN > -1 - SET_OUTPUT(X_DIR_PIN); - #endif - #if Y_DIR_PIN > -1 - SET_OUTPUT(Y_DIR_PIN); - #endif - #if Z_DIR_PIN > -1 - SET_OUTPUT(Z_DIR_PIN); - #endif - #if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); - #endif - - //Initialize Enable Pins - steppers default to disabled. - - #if (X_ENABLE_PIN > -1) - SET_OUTPUT(X_ENABLE_PIN); - if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); - #endif - #if (Y_ENABLE_PIN > -1) - SET_OUTPUT(Y_ENABLE_PIN); - if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); - #endif - #if (Z_ENABLE_PIN > -1) - SET_OUTPUT(Z_ENABLE_PIN); - if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); - #endif - #if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); - #endif - - //endstops and pullups - #ifdef ENDSTOPPULLUPS - #if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - WRITE(X_MIN_PIN,HIGH); - #endif - #if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - WRITE(X_MAX_PIN,HIGH); - #endif - #if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - WRITE(Y_MIN_PIN,HIGH); - #endif - #if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - WRITE(Y_MAX_PIN,HIGH); - #endif - #if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - WRITE(Z_MIN_PIN,HIGH); - #endif - #if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - WRITE(Z_MAX_PIN,HIGH); - #endif - #else //ENDSTOPPULLUPS - #if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - #endif - #if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - #endif - #if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - #endif - #if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - #endif - #if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - #endif - #if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - #endif - #endif //ENDSTOPPULLUPS - - - //Initialize Step Pins - #if (X_STEP_PIN > -1) - SET_OUTPUT(X_STEP_PIN); - #endif - #if (Y_STEP_PIN > -1) - SET_OUTPUT(Y_STEP_PIN); - #endif - #if (Z_STEP_PIN > -1) - SET_OUTPUT(Z_STEP_PIN); - #endif - #if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); - #endif - - // waveform generation = 0100 = CTC - TCCR1B &= ~(1<. +*/ + +/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith + and Philipp Tiefenbacher. */ + +#include "stepper.h" +#include "Configuration.h" +#include "Marlin.h" +#include "planner.h" +#include "pins.h" +#include "fastio.h" +#include "temperature.h" +#include "ultralcd.h" + +#include "speed_lookuptable.h" + + +//=========================================================================== +//=============================public variables ============================ +//=========================================================================== +block_t *current_block; // A pointer to the block currently being traced + + +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== +//static makes it inpossible to be called from outside of this file by extern.! + +// Variables used by The Stepper Driver Interrupt +static unsigned char out_bits; // The next stepping-bits to be output +static long counter_x, // Counter variables for the bresenham line tracer + counter_y, + counter_z, + counter_e; +static unsigned long step_events_completed; // The number of step events executed in the current block +#ifdef ADVANCE + static long advance_rate, advance, final_advance = 0; + static short old_advance = 0; + static short e_steps; +#endif +static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. +static long acceleration_time, deceleration_time; +//static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; +static unsigned short acc_step_rate; // needed for deccelaration start point +static char step_loops; + + + +// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. +// for debugging purposes only, should be disabled by default +#ifdef DEBUG_STEPS + volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; + volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; +#endif + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + + +// intRes = intIn1 * intIn2 >> 16 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 24 bit result +#define MultiU16X8toH16(intRes, charIn1, intIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %A1, %A2 \n\t" \ +"add %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r0 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (charIn1), \ +"d" (intIn2) \ +: \ +"r26" \ +) + +// intRes = longIn1 * longIn2 >> 24 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 48bit result +#define MultiU24X24toH16(intRes, longIn1, longIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"mov r27, r1 \n\t" \ +"mul %B1, %C2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %C1, %C2 \n\t" \ +"add %B0, r0 \n\t" \ +"mul %C1, %B2 \n\t" \ +"add %A0, r0 \n\t" \ +"adc %B0, r1 \n\t" \ +"mul %A1, %C2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %B2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %C1, %A2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %A2 \n\t" \ +"add r27, r1 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r27 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (longIn1), \ +"d" (longIn2) \ +: \ +"r26" , "r27" \ +) + +// Some useful constants + +#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. +// The slope of acceleration is calculated with the leib ramp alghorithm. + +void st_wake_up() { + // TCNT1 = 0; + if(busy == false) + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + +inline unsigned short calc_timer(unsigned short step_rate) { + unsigned short timer; + if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; + + if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times + step_rate = step_rate >> 2; + step_loops = 4; + } + else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times + step_rate = step_rate >> 1; + step_loops = 2; + } + else { + step_loops = 1; + } + + if(step_rate < 32) step_rate = 32; + step_rate -= 32; // Correct for minimal speed + if(step_rate >= (8*256)){ // higher step rate + unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; + unsigned char tmp_step_rate = (step_rate & 0x00ff); + unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); + MultiU16X8toH16(timer, tmp_step_rate, gain); + timer = (unsigned short)pgm_read_word_near(table_address) - timer; + } + else { // lower step rates + unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; + table_address += ((step_rate)>>1) & 0xfffc; + timer = (unsigned short)pgm_read_word_near(table_address); + timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); + } + //if(timer < 100) timer = 100; + return timer; +} + +// Initializes the trapezoid generator from the current block. Called whenever a new +// block begins. +inline void trapezoid_generator_reset() { + #ifdef ADVANCE + advance = current_block->initial_advance; + final_advance = current_block->final_advance; + #endif + deceleration_time = 0; + // step_rate to timer interval + acc_step_rate = current_block->initial_rate; + acceleration_time = calc_timer(acc_step_rate); + OCR1A = acceleration_time; +} + +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +ISR(TIMER1_COMPA_vect) +{ + if(busy){ +/* SERIAL_ERRORLN(*(unsigned short *)OCR1A<< " ISR overtaking itself.");*/ + return; + } // The busy-flag is used to avoid reentering this interrupt + + busy = true; + sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) + + // If there is no current block, attempt to pop one from the buffer + if (current_block == NULL) { + // Anything in the buffer? + current_block = plan_get_current_block(); + if (current_block != NULL) { + trapezoid_generator_reset(); + counter_x = -(current_block->step_event_count >> 1); + counter_y = counter_x; + counter_z = counter_x; + counter_e = counter_x; + step_events_completed = 0; + #ifdef ADVANCE + e_steps = 0; + #endif + } + else { +// DISABLE_STEPPER_DRIVER_INTERRUPT(); + } + } + + if (current_block != NULL) { + // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt + out_bits = current_block->direction_bits; + + #ifdef ADVANCE + // Calculate E early. + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; + #endif //ADVANCE + + // Set direction en check limit switches + if ((out_bits & (1< -1 + if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } + #endif + } + else { // +direction + WRITE(X_DIR_PIN,!INVERT_X_DIR); + #ifdef DEBUG_STEPS + count_direction[X_AXIS]=1; + #endif + #if X_MAX_PIN > -1 + if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ + step_events_completed = current_block->step_event_count; + } + #endif + } + + if ((out_bits & (1< -1 + if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } + #endif + } + else { // +direction + WRITE(Y_DIR_PIN,!INVERT_Y_DIR); + #ifdef DEBUG_STEPS + count_direction[Y_AXIS]=1; + #endif + #if Y_MAX_PIN > -1 + if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ + step_events_completed = current_block->step_event_count; + } + #endif + } + + if ((out_bits & (1< -1 + if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { + step_events_completed = current_block->step_event_count; + } + #endif + } + else { // +direction + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + #ifdef DEBUG_STEPS + count_direction[Z_AXIS]=1; + #endif + #if Z_MAX_PIN > -1 + if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ + step_events_completed = current_block->step_event_count; + } + #endif + } + + #ifndef ADVANCE + if ((out_bits & (1<steps_x; + if (counter_x > 0) { + WRITE(X_STEP_PIN, HIGH); + counter_x -= current_block->step_event_count; + WRITE(X_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[X_AXIS]+=count_direction[X_AXIS]; + #endif + } + + counter_y += current_block->steps_y; + if (counter_y > 0) { + WRITE(Y_STEP_PIN, HIGH); + counter_y -= current_block->step_event_count; + WRITE(Y_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Y_AXIS]+=count_direction[Y_AXIS]; + #endif + } + + counter_z += current_block->steps_z; + if (counter_z > 0) { + WRITE(Z_STEP_PIN, HIGH); + counter_z -= current_block->step_event_count; + WRITE(Z_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Z_AXIS]+=count_direction[Z_AXIS]; + #endif + } + + #ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } + #endif //!ADVANCE + step_events_completed += 1; + if(step_events_completed >= current_block->step_event_count) break; + } + // Calculare new timer value + unsigned short timer; + unsigned short step_rate; + if (step_events_completed <= current_block->accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); + acc_step_rate += current_block->initial_rate; + + // upper limit + if(acc_step_rate > current_block->nominal_rate) + acc_step_rate = current_block->nominal_rate; + + // step_rate to timer interval + timer = calc_timer(acc_step_rate); + #ifdef ADVANCE + advance += advance_rate; + #endif + acceleration_time += timer; + OCR1A = timer; + } + else if (step_events_completed > current_block->decelerate_after) { + MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); + + if(step_rate > acc_step_rate) { // Check step_rate stays positive + step_rate = current_block->final_rate; + } + else { + step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. + } + + // lower limit + if(step_rate < current_block->final_rate) + step_rate = current_block->final_rate; + + // step_rate to timer interval + timer = calc_timer(step_rate); + #ifdef ADVANCE + advance -= advance_rate; + if(advance < final_advance) + advance = final_advance; + #endif //ADVANCE + deceleration_time += timer; + OCR1A = timer; + } + else { + timer = calc_timer(current_block->nominal_rate); + OCR1A = timer; + } + + // If current block is finished, reset pointer + if (step_events_completed >= current_block->step_event_count) { + current_block = NULL; + plan_discard_current_block(); + } + } + cli(); // disable interrupts + busy=false; +} + +#ifdef ADVANCE + unsigned char old_OCR0A; + // Timer interrupt for E. e_steps is set in the main routine; + // Timer 0 is shared with millies + ISR(TIMER0_COMPA_vect) + { + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; + } +#endif // ADVANCE + +void st_init() +{ + //Initialize Dir Pins + #if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); + #endif + #if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); + #endif + #if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); + #endif + #if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); + #endif + + //Initialize Enable Pins - steppers default to disabled. + + #if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); + #endif + #if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); + #endif + #if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); + #endif + #if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); + #endif + + //endstops and pullups + #ifdef ENDSTOPPULLUPS + #if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); + #endif + #if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); + #endif + #if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); + #endif + #if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); + #endif + #if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); + #endif + #if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); + #endif + #else //ENDSTOPPULLUPS + #if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + #endif + #if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + #endif + #if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + #endif + #if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + #endif + #if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + #endif + #if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + #endif + #endif //ENDSTOPPULLUPS + + + //Initialize Step Pins + #if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); + #endif + #if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); + #endif + #if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); + #endif + #if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); + #endif + + // waveform generation = 0100 = CTC + TCCR1B &= ~(1<. - */ - -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - This firmware is optimized for gen6 electronics. - */ - -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "streaming.h" -#include "temperature.h" -#include "watchdog.h" - -//=========================================================================== -//=============================public variables============================ -//=========================================================================== -int target_raw[3] = {0, 0, 0}; -int current_raw[3] = {0, 0, 0}; - -#ifdef PIDTEMP - - // probably used external - float HeaterPower; - float pid_setpoint = 0.0; - - - float Kp=DEFAULT_Kp; - float Ki=DEFAULT_Ki; - float Kd=DEFAULT_Kd; - float Kc=DEFAULT_Kc; -#endif //PIDTEMP - - -//=========================================================================== -//=============================private variables============================ -//=========================================================================== -static bool temp_meas_ready = false; - -static unsigned long previous_millis_heater, previous_millis_bed_heater; - -#ifdef PIDTEMP - //static cannot be external: - static float temp_iState = 0; - static float temp_dState = 0; - static float pTerm; - static float iTerm; - static float dTerm; - //int output; - static float pid_error; - static float temp_iState_min; - static float temp_iState_max; - static float pid_input; - static float pid_output; - static bool pid_reset; - -#endif //PIDTEMP - -#ifdef WATCHPERIOD - static int watch_raw[3] = {-1000,-1000,-1000}; - static unsigned long watchmillis = 0; -#endif //WATCHPERIOD - -#ifdef HEATER_0_MINTEMP - static int minttemp_0 = temp2analog(HEATER_0_MINTEMP); -#endif //MINTEMP -#ifdef HEATER_0_MAXTEMP - static int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); -#endif //MAXTEMP - -#ifdef HEATER_1_MINTEMP - static int minttemp_1 = temp2analog(HEATER_1_MINTEMP); -#endif //MINTEMP -#ifdef HEATER_1_MAXTEMP - static int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); -#endif //MAXTEMP - -#ifdef BED_MINTEMP - static int bed_minttemp = temp2analog(BED_MINTEMP); -#endif //BED_MINTEMP -#ifdef BED_MAXTEMP - static int bed_maxttemp = temp2analog(BED_MAXTEMP); -#endif //BED_MAXTEMP - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== - -void manage_heater() -{ - #ifdef USE_WATCHDOG - wd_reset(); - #endif - - float pid_input; - float pid_output; - if(temp_meas_ready != true) //better readability - return; - - CRITICAL_SECTION_START; - temp_meas_ready = false; - CRITICAL_SECTION_END; - - #ifdef PIDTEMP - pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); - - #ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ - pid_output = PID_MAX; - pid_reset = true; - } - else if(pid_error < -10) { - pid_output = 0; - pid_reset = true; - } - else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; - } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; - //K1 defined in Configuration.h in the PID settings - #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; - #ifdef PID_ADD_EXTRUSION_RATE - pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high - #endif - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - } - #endif //PID_OPENLOOP - #ifdef PID_DEBUG - SERIAL_ECHOLN(" PIDDEBUG Input "<= target_raw[0]) - { - WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } - #endif - - if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) - return; - previous_millis_bed_heater = millis(); - - #if TEMP_1_PIN > -1 - if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) - { - WRITE(HEATER_1_PIN,LOW); - } - else - { - WRITE(HEATER_1_PIN,HIGH); - } - #endif -} - -// Takes hot end temperature value as input and returns corresponding raw value. -// For a thermistor, it uses the RepRap thermistor temp table. -// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. -// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -int temp2analog(int celsius) { - #ifdef HEATER_0_USES_THERMISTOR - int raw = 0; - byte i; - - for (i=1; i raw) - { - celsius = heater_0_temptable[i-1][1] + - (raw - heater_0_temptable[i-1][0]) * - (float)(heater_0_temptable[i][1] - heater_0_temptable[i-1][1]) / - (float)(heater_0_temptable[i][0] - heater_0_temptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_0) celsius = heater_0_temptable[i-1][1]; - - return celsius; - #elif defined HEATER_0_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -// Derived from RepRap FiveD extruder::getTemperature() -// For bed temperature measurement. -float analog2tempBed(int raw) { - #ifdef BED_USES_THERMISTOR - int celsius = 0; - byte i; - - raw = (1023 * OVERSAMPLENR) - raw; - - for (i=1; i raw) - { - celsius = bedtemptable[i-1][1] + - (raw - bedtemptable[i-1][0]) * - (bedtemptable[i][1] - bedtemptable[i-1][1]) / - (bedtemptable[i][0] - bedtemptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; - - return celsius; - - #elif defined BED_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -void tp_init() -{ - #if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); - #endif - #if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); - #endif - #if (HEATER_2_PIN > -1) - SET_OUTPUT(HEATER_2_PIN); - #endif - - #ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; - #endif //PIDTEMP - - // Set analog inputs - ADCSRA = 1< -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif -} - -// Timer 0 is shared with millies -ISR(TIMER0_COMPB_vect) -{ - //these variables are only accesible from the ISR, but static, so they don't loose their value - static unsigned char temp_count = 0; - static unsigned long raw_temp_0_value = 0; - static unsigned long raw_temp_1_value = 0; - static unsigned long raw_temp_2_value = 0; - static unsigned char temp_state = 0; - - switch(temp_state) { - case 0: // Prepare TEMP_0 - #if (TEMP_0_PIN > -1) - #if TEMP_0_PIN < 8 - DIDR0 = 1 << TEMP_0_PIN; - #else - DIDR2 = 1<<(TEMP_0_PIN - 8); - ADCSRB = 1< -1) - raw_temp_0_value += ADC; - #endif - temp_state = 2; - break; - case 2: // Prepare TEMP_1 - #if (TEMP_1_PIN > -1) - #if TEMP_1_PIN < 7 - DIDR0 = 1< -1) - raw_temp_1_value += ADC; - #endif - temp_state = 4; - break; - case 4: // Prepare TEMP_2 - #if (TEMP_2_PIN > -1) - #if TEMP_2_PIN < 7 - DIDR0 = 1 << TEMP_2_PIN; - #else - DIDR2 = 1<<(TEMP_2_PIN - 8); - ADCSRB = 1< -1) - raw_temp_2_value += ADC; - #endif - temp_state = 0; - temp_count++; - break; - default: - SERIAL_ERRORLN("Temp measurement error!"); - break; - } - - if(temp_count >= 16) // 6 ms * 16 = 96ms. - { - #ifdef HEATER_0_USES_AD595 - current_raw[0] = raw_temp_0_value; - #else - current_raw[0] = 16383 - raw_temp_0_value; - #endif - - #ifdef HEATER_1_USES_AD595 - current_raw[2] = raw_temp_2_value; - #else - current_raw[2] = 16383 - raw_temp_2_value; - #endif - - #ifdef BED_USES_AD595 - current_raw[1] = raw_temp_1_value; - #else - current_raw[1] = 16383 - raw_temp_1_value; - #endif - - temp_meas_ready = true; - temp_count = 0; - raw_temp_0_value = 0; - raw_temp_1_value = 0; - raw_temp_2_value = 0; - #ifdef HEATER_0_MAXTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 0 switched off. MAXTEMP triggered !!"); - kill(); - } - #endif - #endif - #ifdef HEATER_1_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - if(current_raw[2] >= maxttemp_1) { - analogWrite(HEATER_2_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 1 switched off. MAXTEMP triggered !!"); - kill() - } - #endif - #endif //MAXTEMP - - #ifdef HEATER_0_MINTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 0 switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif - - #ifdef HEATER_1_MINTEMP - #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - analogWrite(HEATER_2_PIN, 0); - SERIAL_ERRORLN("Temperature extruder 1 switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif //MAXTEMP - - #ifdef BED_MINTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - SERIAL_ERRORLN("Temperatur heated bed switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif - - #ifdef BED_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - SERIAL_ERRORLN("Temperature heated bed switched off. MAXTEMP triggered !!"); - kill(); - } - #endif - #endif - } -} - +/* + temperature.c - temperature control + Part of Marlin + + 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + + This firmware is optimized for gen6 electronics. + */ +#include + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "streaming.h" +#include "temperature.h" +#include "watchdog.h" + +//=========================================================================== +//=============================public variables============================ +//=========================================================================== +int target_raw[3] = {0, 0, 0}; +int current_raw[3] = {0, 0, 0}; + +#ifdef PIDTEMP + + // probably used external + float HeaterPower; + float pid_setpoint = 0.0; + + + float Kp=DEFAULT_Kp; + float Ki=DEFAULT_Ki; + float Kd=DEFAULT_Kd; + #ifdef PID_ADD_EXTRUSION_RATE + float Kc=DEFAULT_Kc; + #endif +#endif //PIDTEMP + + +//=========================================================================== +//=============================private variables============================ +//=========================================================================== +static bool temp_meas_ready = false; + +static unsigned long previous_millis_heater, previous_millis_bed_heater; + +#ifdef PIDTEMP + //static cannot be external: + static float temp_iState = 0; + static float temp_dState = 0; + static float pTerm; + static float iTerm; + static float dTerm; + //int output; + static float pid_error; + static float temp_iState_min; + static float temp_iState_max; + static float pid_input; + static float pid_output; + static bool pid_reset; + +#endif //PIDTEMP + +#ifdef WATCHPERIOD + static int watch_raw[3] = {-1000,-1000,-1000}; + static unsigned long watchmillis = 0; +#endif //WATCHPERIOD + +#ifdef HEATER_0_MINTEMP + static int minttemp_0 = temp2analog(HEATER_0_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_0_MAXTEMP + static int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); +#endif //MAXTEMP + +#ifdef HEATER_1_MINTEMP + static int minttemp_1 = temp2analog(HEATER_1_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_1_MAXTEMP + static int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); +#endif //MAXTEMP + +#ifdef BED_MINTEMP + static int bed_minttemp = temp2analog(BED_MINTEMP); +#endif //BED_MINTEMP +#ifdef BED_MAXTEMP + static int bed_maxttemp = temp2analog(BED_MAXTEMP); +#endif //BED_MAXTEMP + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + +void manage_heater() +{ + #ifdef USE_WATCHDOG + wd_reset(); + #endif + + float pid_input; + float pid_output; + if(temp_meas_ready != true) //better readability + return; + + CRITICAL_SECTION_START; + temp_meas_ready = false; + CRITICAL_SECTION_END; + + #ifdef PIDTEMP + pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + + #ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + //K1 defined in Configuration.h in the PID settings + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; +// #ifdef PID_ADD_EXTRUSION_RATE +// pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high +// #endif + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + } + #endif //PID_OPENLOOP + #ifdef PID_DEBUG + SERIAL_ECHOLN(" PIDDEBUG Input "<= target_raw[0]) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } + #endif + + if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) + return; + previous_millis_bed_heater = millis(); + + #if TEMP_1_PIN > -1 + if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) + { + WRITE(HEATER_1_PIN,LOW); + } + else + { + WRITE(HEATER_1_PIN,HIGH); + } + #endif +} + +// Takes hot end temperature value as input and returns corresponding raw value. +// For a thermistor, it uses the RepRap thermistor temp table. +// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. +// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. +int temp2analog(int celsius) { + #ifdef HEATER_0_USES_THERMISTOR + int raw = 0; + byte i; + + for (i=1; i raw) + { + celsius = (short)pgm_read_word(&heater_0_temptable[i-1][1]) + + (raw - (short)pgm_read_word(&heater_0_temptable[i-1][0])) * + (float)((short)pgm_read_word(&heater_0_temptable[i][1]) - (short)pgm_read_word(&heater_0_temptable[i-1][1])) / + (float)((short)pgm_read_word(&heater_0_temptable[i][0]) - (short)pgm_read_word(&heater_0_temptable[i-1][0])); + break; + } + } + + // Overflow: Set to last value in the table + if (i == NUMTEMPS_HEATER_0) celsius = (short)pgm_read_word(&(heater_0_temptable[i-1][1])); + + return celsius; + #elif defined HEATER_0_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +// Derived from RepRap FiveD extruder::getTemperature() +// For bed temperature measurement. +float analog2tempBed(int raw) { + #ifdef BED_USES_THERMISTOR + int celsius = 0; + byte i; + + raw = (1023 * OVERSAMPLENR) - raw; + + for (i=1; i raw) + { + celsius = pgm_read_word(&(bedtemptable[i-1][1])) + + (raw - pgm_read_word(&(bedtemptable[i-1][0]))) * + (pgm_read_word(&(bedtemptable[i][1])) - pgm_read_word(&(bedtemptable[i-1][1]))) / + (pgm_read_word(&(bedtemptable[i][0])) - pgm_read_word(&(bedtemptable[i-1][0]))); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == BNUMTEMPS) celsius = pgm_read_word(&(bedtemptable[i-1][1])); + + return celsius; + + #elif defined BED_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +void tp_init() +{ + #if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); + #endif + #if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); + #endif + #if (HEATER_2_PIN > -1) + SET_OUTPUT(HEATER_2_PIN); + #endif + + #ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + #endif //PIDTEMP + + // Set analog inputs + ADCSRA = 1< -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif +} + +// Timer 0 is shared with millies +ISR(TIMER0_COMPB_vect) +{ + //these variables are only accesible from the ISR, but static, so they don't loose their value + static unsigned char temp_count = 0; + static unsigned long raw_temp_0_value = 0; + static unsigned long raw_temp_1_value = 0; + static unsigned long raw_temp_2_value = 0; + static unsigned char temp_state = 0; + + switch(temp_state) { + case 0: // Prepare TEMP_0 + #if (TEMP_0_PIN > -1) + #if TEMP_0_PIN < 8 + DIDR0 = 1 << TEMP_0_PIN; + #else + DIDR2 = 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) + raw_temp_0_value += ADC; + #endif + temp_state = 2; + break; + case 2: // Prepare TEMP_1 + #if (TEMP_1_PIN > -1) + #if TEMP_1_PIN < 7 + DIDR0 = 1< -1) + raw_temp_1_value += ADC; + #endif + temp_state = 4; + break; + case 4: // Prepare TEMP_2 + #if (TEMP_2_PIN > -1) + #if TEMP_2_PIN < 7 + DIDR0 = 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) + raw_temp_2_value += ADC; + #endif + temp_state = 0; + temp_count++; + break; + default: + SERIAL_ERRORLN("Temp measurement error!"); + break; + } + + if(temp_count >= 16) // 6 ms * 16 = 96ms. + { + #ifdef HEATER_0_USES_AD595 + current_raw[0] = raw_temp_0_value; + #else + current_raw[0] = 16383 - raw_temp_0_value; + #endif + + #ifdef HEATER_1_USES_AD595 + current_raw[2] = raw_temp_2_value; + #else + current_raw[2] = 16383 - raw_temp_2_value; + #endif + + #ifdef BED_USES_AD595 + current_raw[1] = raw_temp_1_value; + #else + current_raw[1] = 16383 - raw_temp_1_value; + #endif + + temp_meas_ready = true; + temp_count = 0; + raw_temp_0_value = 0; + raw_temp_1_value = 0; + raw_temp_2_value = 0; + #ifdef HEATER_0_MAXTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 0 switched off. MAXTEMP triggered !!"); + kill(); + } + #endif + #endif + #ifdef HEATER_1_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + if(current_raw[2] >= maxttemp_1) { + analogWrite(HEATER_2_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 1 switched off. MAXTEMP triggered !!"); + kill() + } + #endif + #endif //MAXTEMP + + #ifdef HEATER_0_MINTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 0 switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif + + #ifdef HEATER_1_MINTEMP + #if (HEATER_2_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + analogWrite(HEATER_2_PIN, 0); + SERIAL_ERRORLN("Temperature extruder 1 switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif //MAXTEMP + + #ifdef BED_MINTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + SERIAL_ERRORLN("Temperatur heated bed switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif + + #ifdef BED_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + SERIAL_ERRORLN("Temperature heated bed switched off. MAXTEMP triggered !!"); + kill(); + } + #endif + #endif + } +} + diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index fbd2ef144..22d9f0248 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -1,12 +1,14 @@ #ifndef THERMISTORTABLES_H_ #define THERMISTORTABLES_H_ +#include + #define OVERSAMPLENR 16 #if (THERMISTORHEATER_0 == 1) || (THERMISTORHEATER_1 == 1) || (THERMISTORBED == 1) //100k bed thermistor #define NUMTEMPS_1 61 -const short temptable_1[NUMTEMPS_1][2] = { +const short temptable_1[NUMTEMPS_1][2] PROGMEM = { { 23*OVERSAMPLENR , 300 }, { 25*OVERSAMPLENR , 295 }, { 27*OVERSAMPLENR , 290 }, @@ -72,7 +74,7 @@ const short temptable_1[NUMTEMPS_1][2] = { #endif #if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORBED == 2) //200k bed thermistor #define NUMTEMPS_2 21 -const short temptable_2[NUMTEMPS_2][2] = { +const short temptable_2[NUMTEMPS_2][2] PROGMEM = { {1*OVERSAMPLENR, 848}, {54*OVERSAMPLENR, 275}, {107*OVERSAMPLENR, 228}, @@ -99,7 +101,7 @@ const short temptable_2[NUMTEMPS_2][2] = { #endif #if (THERMISTORHEATER_0 == 3) || (THERMISTORHEATER_1 == 3) || (THERMISTORBED == 3) //mendel-parts #define NUMTEMPS_3 28 -const short temptable_3[NUMTEMPS_3][2] = { +const short temptable_3[NUMTEMPS_3][2] PROGMEM = { {1*OVERSAMPLENR,864}, {21*OVERSAMPLENR,300}, {25*OVERSAMPLENR,290}, @@ -134,7 +136,7 @@ const short temptable_3[NUMTEMPS_3][2] = { #if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORBED == 4) //10k thermistor #define NUMTEMPS_4 20 -short temptable_4[NUMTEMPS_4][2] = { +const short temptable_4[NUMTEMPS_4][2] PROGMEM = { {1*OVERSAMPLENR, 430}, {54*OVERSAMPLENR, 137}, {107*OVERSAMPLENR, 107}, @@ -161,7 +163,7 @@ short temptable_4[NUMTEMPS_4][2] = { #if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) #define NUMTEMPS_5 61 -const short temptable_5[NUMTEMPS_5][2] = { +const short temptable_5[NUMTEMPS_5][2] PROGMEM = { {1*OVERSAMPLENR, 713}, {18*OVERSAMPLENR, 316}, {35*OVERSAMPLENR, 266}, @@ -228,7 +230,7 @@ const short temptable_5[NUMTEMPS_5][2] = { #if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor #define NUMTEMPS_6 36 -const short temptable_6[NUMTEMPS_6][2] = { +const short temptable_6[NUMTEMPS_6][2] PROGMEM = { {28*OVERSAMPLENR, 250}, {31*OVERSAMPLENR, 245}, {35*OVERSAMPLENR, 240}, @@ -270,7 +272,7 @@ const short temptable_6[NUMTEMPS_6][2] = { #if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 #define NUMTEMPS_7 54 -const short temptable_7[NUMTEMPS_7][2] = { +const short temptable_7[NUMTEMPS_7][2] PROGMEM = { {46*OVERSAMPLENR, 270}, {50*OVERSAMPLENR, 265}, {54*OVERSAMPLENR, 260}, From c57906b627bf7245578522ab50e9d35e9c6bc96b Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 13 Nov 2011 21:43:26 +0100 Subject: [PATCH 050/430] fixed bug with adjusting ki in realtime. --- Marlin/Configuration.h | 8 ++++---- Marlin/Marlin.pde | 40 ++++++++++++++++++++++------------------ Marlin/temperature.cpp | 7 +++++++ Marlin/temperature.h | 1 + 4 files changed, 34 insertions(+), 22 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 8661ae438..5b15dd0a4 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -95,11 +95,11 @@ // PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain // usually further manual tunine is necessary. - #define PID_CRITIAL_GAIN 3000 - #define PID_SWING_AT_CRITIAL 45 //seconds + #define PID_CRITIAL_GAIN 50 + #define PID_SWING_AT_CRITIAL 47 //seconds - #define PID_PI //no differentail term - //#define PID_PID //normal PID + //#define PID_PI //no differentail term + #define PID_PID //normal PID #ifdef PID_PID //PID according to Ziegler-Nichols method diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index e15f02551..84f07b3e6 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -898,24 +898,28 @@ inline void process_commands() #ifdef PIDTEMP case 301: // M301 - if(code_seen('P')) Kp = code_value(); - if(code_seen('I')) Ki = code_value()*PID_dT; - if(code_seen('D')) Kd = code_value()/PID_dT; - #ifdef PID_ADD_EXTRUSION_RATE - if(code_seen('C')) Kc = code_value(); - #endif - SERIAL_PROTOCOL("ok p:"); - SERIAL_PROTOCOL(Kp); - SERIAL_PROTOCOL(" i:"); - SERIAL_PROTOCOL(Ki/PID_dT); - SERIAL_PROTOCOL(" d:"); - SERIAL_PROTOCOL(Kd*PID_dT); - #ifdef PID_ADD_EXTRUSION_RATE - SERIAL_PROTOCOL(" c:"); - SERIAL_PROTOCOL(Kc*PID_dT); - #endif - SERIAL_PROTOCOLLN(""); - + { + + + if(code_seen('P')) Kp = code_value(); + if(code_seen('I')) Ki = code_value()*PID_dT; + if(code_seen('D')) Kd = code_value()/PID_dT; + #ifdef PID_ADD_EXTRUSION_RATE + if(code_seen('C')) Kc = code_value(); + #endif + updatePID(); + SERIAL_PROTOCOL("ok p:"); + SERIAL_PROTOCOL(Kp); + SERIAL_PROTOCOL(" i:"); + SERIAL_PROTOCOL(Ki/PID_dT); + SERIAL_PROTOCOL(" d:"); + SERIAL_PROTOCOL(Kd*PID_dT); + #ifdef PID_ADD_EXTRUSION_RATE + SERIAL_PROTOCOL(" c:"); + SERIAL_PROTOCOL(Kc*PID_dT); + #endif + SERIAL_PROTOCOLLN(""); + } break; #endif //PIDTEMP case 400: // finish all moves diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 8ea8ee008..ac299399d 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -111,6 +111,13 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; //=============================functions ============================ //=========================================================================== +void updatePID() +{ +#ifdef PIDTEMP + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif +} + void manage_heater() { #ifdef USE_WATCHDOG diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 9c4b59a24..0f0de985f 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -87,6 +87,7 @@ inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMP void disable_heater(); void setWatch(); +void updatePID(); #endif From 1d0452f10ce6d067836e483e3512c4099b4ca524 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 14 Nov 2011 18:24:02 +0100 Subject: [PATCH 051/430] 250000 baud --- Marlin/Configuration.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 6c8b3a4ec..6a48635f5 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,8 +4,8 @@ // This determines the communication speed of the printer -//#define BAUDRATE 250000 -#define BAUDRATE 115200 +#define BAUDRATE 250000 +//#define BAUDRATE 115200 //#define BAUDRATE 230400 From 2643ae93d69b4171acb18bf9994b12076b4f2496 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 14 Nov 2011 18:27:47 +0100 Subject: [PATCH 052/430] Added modified Sanguino files --- Marlin/Sanguino/boards.txt | 16 + .../bootloaders/atmega644p/ATmegaBOOT.c | 713 ++++++++++++++++++ .../atmega644p/ATmegaBOOT_324P.hex | 121 +++ .../bootloaders/atmega644p/ATmegaBOOT_644.hex | 120 +++ .../atmega644p/ATmegaBOOT_644P.hex | 121 +++ .../Sanguino/bootloaders/atmega644p/Makefile | 56 ++ .../bootloaders/atmega644p/README.txt | 3 + .../cores/Copy of arduino/HardwareSerial.cpp | 303 ++++++++ .../cores/Copy of arduino/HardwareSerial.h | 76 ++ .../Sanguino/cores/Copy of arduino/Print.cpp | 220 ++++++ Marlin/Sanguino/cores/Copy of arduino/Print.h | 66 ++ .../Sanguino/cores/Copy of arduino/Tone.cpp | 515 +++++++++++++ .../cores/Copy of arduino/WCharacter.h | 168 +++++ .../cores/Copy of arduino/WConstants.h | 1 + .../cores/Copy of arduino/WInterrupts.c | 87 +++ .../Sanguino/cores/Copy of arduino/WMath.cpp | 60 ++ .../Sanguino/cores/Copy of arduino/WProgram.h | 63 ++ .../cores/Copy of arduino/WString.cpp | 443 +++++++++++ .../Sanguino/cores/Copy of arduino/WString.h | 112 +++ .../Sanguino/cores/Copy of arduino/binary.h | 515 +++++++++++++ .../Sanguino/cores/Copy of arduino/main.cpp | 14 + .../cores/Copy of arduino/pins_arduino.c | 200 +++++ .../cores/Copy of arduino/pins_arduino.h | 65 ++ .../Sanguino/cores/Copy of arduino/wiring.c | 289 +++++++ .../Sanguino/cores/Copy of arduino/wiring.h | 135 ++++ .../cores/Copy of arduino/wiring_analog.c | 116 +++ .../cores/Copy of arduino/wiring_digital.c | 95 +++ .../cores/Copy of arduino/wiring_private.h | 60 ++ .../cores/Copy of arduino/wiring_pulse.c | 69 ++ .../cores/Copy of arduino/wiring_shift.c | 55 ++ .../Sanguino/cores/arduino/Copy of wiring.h | 135 ++++ .../Sanguino/cores/arduino/HardwareSerial.cpp | 303 ++++++++ .../Sanguino/cores/arduino/HardwareSerial.h | 76 ++ Marlin/Sanguino/cores/arduino/Print.cpp | 220 ++++++ Marlin/Sanguino/cores/arduino/Print.h | 66 ++ Marlin/Sanguino/cores/arduino/Stream.h | 35 + Marlin/Sanguino/cores/arduino/Tone.cpp | 601 +++++++++++++++ Marlin/Sanguino/cores/arduino/WCharacter.h | 168 +++++ Marlin/Sanguino/cores/arduino/WConstants.h | 1 + Marlin/Sanguino/cores/arduino/WInterrupts.c | 249 ++++++ Marlin/Sanguino/cores/arduino/WMath.cpp | 60 ++ Marlin/Sanguino/cores/arduino/WProgram.h | 63 ++ Marlin/Sanguino/cores/arduino/WString.cpp | 443 +++++++++++ Marlin/Sanguino/cores/arduino/WString.h | 112 +++ Marlin/Sanguino/cores/arduino/binary.h | 515 +++++++++++++ Marlin/Sanguino/cores/arduino/main.cpp | 14 + Marlin/Sanguino/cores/arduino/pins_arduino.c | 200 +++++ Marlin/Sanguino/cores/arduino/pins_arduino.h | 65 ++ Marlin/Sanguino/cores/arduino/wiring.c | 289 +++++++ Marlin/Sanguino/cores/arduino/wiring.h | 135 ++++ Marlin/Sanguino/cores/arduino/wiring_analog.c | 259 +++++++ .../Sanguino/cores/arduino/wiring_digital.c | 166 ++++ .../Sanguino/cores/arduino/wiring_private.h | 68 ++ Marlin/Sanguino/cores/arduino/wiring_pulse.c | 69 ++ Marlin/Sanguino/cores/arduino/wiring_shift.c | 55 ++ Marlin/Sanguino/programmers.txt | 20 + 56 files changed, 9264 insertions(+) create mode 100644 Marlin/Sanguino/boards.txt create mode 100644 Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c create mode 100644 Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT_324P.hex create mode 100644 Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT_644.hex create mode 100644 Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.hex create mode 100644 Marlin/Sanguino/bootloaders/atmega644p/Makefile create mode 100644 Marlin/Sanguino/bootloaders/atmega644p/README.txt create mode 100644 Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp create mode 100644 Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/Print.cpp create mode 100644 Marlin/Sanguino/cores/Copy of arduino/Print.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/Tone.cpp create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WCharacter.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WConstants.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WMath.cpp create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WProgram.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WString.cpp create mode 100644 Marlin/Sanguino/cores/Copy of arduino/WString.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/binary.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/main.cpp create mode 100644 Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c create mode 100644 Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring.c create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_private.h create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c create mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c create mode 100644 Marlin/Sanguino/cores/arduino/Copy of wiring.h create mode 100644 Marlin/Sanguino/cores/arduino/HardwareSerial.cpp create mode 100644 Marlin/Sanguino/cores/arduino/HardwareSerial.h create mode 100644 Marlin/Sanguino/cores/arduino/Print.cpp create mode 100644 Marlin/Sanguino/cores/arduino/Print.h create mode 100644 Marlin/Sanguino/cores/arduino/Stream.h create mode 100644 Marlin/Sanguino/cores/arduino/Tone.cpp create mode 100644 Marlin/Sanguino/cores/arduino/WCharacter.h create mode 100644 Marlin/Sanguino/cores/arduino/WConstants.h create mode 100644 Marlin/Sanguino/cores/arduino/WInterrupts.c create mode 100644 Marlin/Sanguino/cores/arduino/WMath.cpp create mode 100644 Marlin/Sanguino/cores/arduino/WProgram.h create mode 100644 Marlin/Sanguino/cores/arduino/WString.cpp create mode 100644 Marlin/Sanguino/cores/arduino/WString.h create mode 100644 Marlin/Sanguino/cores/arduino/binary.h create mode 100644 Marlin/Sanguino/cores/arduino/main.cpp create mode 100644 Marlin/Sanguino/cores/arduino/pins_arduino.c create mode 100644 Marlin/Sanguino/cores/arduino/pins_arduino.h create mode 100644 Marlin/Sanguino/cores/arduino/wiring.c create mode 100644 Marlin/Sanguino/cores/arduino/wiring.h create mode 100644 Marlin/Sanguino/cores/arduino/wiring_analog.c create mode 100644 Marlin/Sanguino/cores/arduino/wiring_digital.c create mode 100644 Marlin/Sanguino/cores/arduino/wiring_private.h create mode 100644 Marlin/Sanguino/cores/arduino/wiring_pulse.c create mode 100644 Marlin/Sanguino/cores/arduino/wiring_shift.c create mode 100644 Marlin/Sanguino/programmers.txt diff --git a/Marlin/Sanguino/boards.txt b/Marlin/Sanguino/boards.txt new file mode 100644 index 000000000..4f71b8ae5 --- /dev/null +++ b/Marlin/Sanguino/boards.txt @@ -0,0 +1,16 @@ +############################################################## + +sanguino.name=Sanguino +sanguino.upload.protocol=stk500 +sanguino.upload.maximum_size=63488 +sanguino.upload.speed=38400 +sanguino.bootloader.low_fuses=0xFF +sanguino.bootloader.high_fuses=0xDC +sanguino.bootloader.extended_fuses=0xFD +sanguino.bootloader.path=atmega644p +sanguino.bootloader.file=ATmegaBOOT_644P.hex +sanguino.bootloader.unlock_bits=0x3F +sanguino.bootloader.lock_bits=0x0F +sanguino.build.mcu=atmega644p +sanguino.build.f_cpu=16000000L +sanguino.build.core=arduino diff --git a/Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c b/Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c new file mode 100644 index 000000000..171101445 --- /dev/null +++ b/Marlin/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c @@ -0,0 +1,713 @@ +/**********************************************************/ +/* Serial Bootloader for Atmel megaAVR Controllers */ +/* */ +/* tested with ATmega644 and ATmega644P */ +/* should work with other mega's, see code for details */ +/* */ +/* ATmegaBOOT.c */ +/* */ +/* 20090131: Added 324P support from Alex Leone */ +/* Marius Kintel */ +/* 20080915: applied ADABoot mods for Sanguino 644P */ +/* Brian Riley */ +/* 20080711: hacked for Sanguino by Zach Smith */ +/* and Justin Day */ +/* 20070626: hacked for Arduino Diecimila (which auto- */ +/* resets when a USB connection is made to it) */ +/* by D. Mellis */ +/* 20060802: hacked for Arduino by D. Cuartielles */ +/* based on a previous hack by D. Mellis */ +/* and D. Cuartielles */ +/* */ +/* Monitor and debug functions were added to the original */ +/* code by Dr. Erik Lins, chip45.com. (See below) */ +/* */ +/* Thanks to Karl Pitrich for fixing a bootloader pin */ +/* problem and more informative LED blinking! */ +/* */ +/* For the latest version see: */ +/* http://www.chip45.com/ */ +/* */ +/* ------------------------------------------------------ */ +/* */ +/* based on stk500boot.c */ +/* Copyright (c) 2003, Jason P. Kyle */ +/* All rights reserved. */ +/* see avr1.org for original file and information */ +/* */ +/* 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 2 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, write */ +/* to the Free Software Foundation, Inc., */ +/* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ +/* */ +/* Licence can be viewed at */ +/* http://www.fsf.org/licenses/gpl.txt */ +/* */ +/* Target = Atmel AVR m128,m64,m32,m16,m8,m162,m163,m169, */ +/* m8515,m8535. ATmega161 has a very small boot block so */ +/* isn't supported. */ +/* */ +/* Tested with m168 */ +/**********************************************************/ + +/* $Id$ */ + + +/* some includes */ +#include +#include +#include +#include +#include +#include + +#ifdef ADABOOT + #define NUM_LED_FLASHES 3 + #define ADABOOT_VER 1 +#endif + + +/* 20070707: hacked by David A. Mellis - after this many errors give up and launch application */ +#define MAX_ERROR_COUNT 5 + +/* set the UART baud rate */ +/* 20080711: hack by Zach Hoeken */ +#define BAUD_RATE 38400 + +/* SW_MAJOR and MINOR needs to be updated from time to time to avoid warning message from AVR Studio */ +/* never allow AVR Studio to do an update !!!! */ +#define HW_VER 0x02 +#define SW_MAJOR 0x01 +#define SW_MINOR 0x10 + +/* onboard LED is used to indicate, that the bootloader was entered (3x flashing) */ +/* if monitor functions are included, LED goes on after monitor was entered */ +#define LED_DDR DDRB +#define LED_PORT PORTB +#define LED_PIN PINB +#define LED PINB0 + +/* define various device id's */ +/* manufacturer byte is always the same */ +#define SIG1 0x1E // Yep, Atmel is the only manufacturer of AVR micros. Single source :( +#if defined(__AVR_ATmega644P__) +#define SIG2 0x96 +#define SIG3 0x0A +#elif defined(__AVR_ATmega644__) +#define SIG2 0x96 +#define SIG3 0x09 +#elif defined(__AVR_ATmega324P__) +#define SIG2 0x95 +#define SIG3 0x08 +#endif +#define PAGE_SIZE 0x080U //128 words +#define PAGE_SIZE_BYTES 0x100U //256 bytes + +/* function prototypes */ +void putch(char); +char getch(void); +void getNch(uint8_t); +void byte_response(uint8_t); +void nothing_response(void); +char gethex(void); +void puthex(char); +void flash_led(uint8_t); + +/* some variables */ +union address_union +{ + uint16_t word; + uint8_t byte[2]; +} address; + +union length_union +{ + uint16_t word; + uint8_t byte[2]; +} length; + +struct flags_struct +{ + unsigned eeprom : 1; + unsigned rampz : 1; +} flags; + +uint8_t buff[256]; + +uint8_t error_count = 0; +uint8_t sreg; + +void (*app_start)(void) = 0x0000; + +/* main program starts here */ +int main(void) +{ + uint8_t ch,ch2; + uint16_t w; + uint16_t i; + + asm volatile("nop\n\t"); + +#ifdef ADABOOT // BBR/LF 10/8/2007 & 9/13/2008 + ch = MCUSR; + MCUSR = 0; + + WDTCSR |= _BV(WDCE) | _BV(WDE); + WDTCSR = 0; + + // Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot. + if (! (ch & _BV(EXTRF))) // if its a not an external reset... + app_start(); // skip bootloader +#endif + + + //initialize our serial port. + UBRR0L = (uint8_t)(F_CPU/(BAUD_RATE*16L)-1); + UBRR0H = (F_CPU/(BAUD_RATE*16L)-1) >> 8; + UCSR0B = (1< 0x85) + getch(); + nothing_response(); + } + + + /* AVR ISP/STK500 board requests */ + else if(ch=='A') + { + ch2 = getch(); + if(ch2 == 0x80) + byte_response(HW_VER); // Hardware version + else if(ch2==0x81) + byte_response(SW_MAJOR); // Software major version + else if(ch2==0x82) + byte_response(SW_MINOR); // Software minor version + else if(ch2==0x98) + byte_response(0x03); // Unknown but seems to be required by avr studio 3.56 + else + byte_response(0x00); // Covers various unnecessary responses we don't care about + } + + + /* Device Parameters DON'T CARE, DEVICE IS FIXED */ + else if(ch=='B') + { + getNch(20); + nothing_response(); + } + + + /* Parallel programming stuff DON'T CARE */ + else if(ch=='E') + { + getNch(5); + nothing_response(); + } + + + /* Enter programming mode */ + else if(ch=='P') + { + nothing_response(); + } + + + /* Leave programming mode */ + else if(ch=='Q') + { + nothing_response(); +#ifdef ADABOOT + // autoreset via watchdog (sneaky!) BBR/LF 9/13/2008 + WDTCSR = _BV(WDE); + while (1); // 16 ms +#endif + } + + + /* Erase device, don't care as we will erase one page at a time anyway. */ + else if(ch=='R') + { + nothing_response(); + } + + + /* Set address, little endian. EEPROM in bytes, FLASH in words */ + /* Perhaps extra address bytes may be added in future to support > 128kB FLASH. */ + /* This might explain why little endian was used here, big endian used everywhere else. */ + else if(ch=='U') + { + address.byte[0] = getch(); + address.byte[1] = getch(); + nothing_response(); + } + + + /* Universal SPI programming command, disabled. Would be used for fuses and lock bits. */ + else if(ch=='V') + { + getNch(4); + byte_response(0x00); + } + + + /* Write memory, length is big endian and is in bytes */ + else if(ch=='d') + { + length.byte[1] = getch(); + length.byte[0] = getch(); + + flags.eeprom = 0; + if (getch() == 'E') + flags.eeprom = 1; + + for (i=0; i byte location + address.word = address.word << 1; + + //Even up an odd number of bytes + if ((length.byte[0] & 0x01)) + length.word++; + + // HACKME: EEPE used to be EEWE + //Wait for previous EEPROM writes to complete + //while(bit_is_set(EECR,EEPE)); + while(EECR & (1< byte location + } + + // Command terminator + if (getch() == ' ') + { + putch(0x14); + for (w=0; w= 'a') + ah = ah - 'a' + 0x0a; + else if(ah >= '0') + ah -= '0'; + if(al >= 'a') + al = al - 'a' + 0x0a; + else if(al >= '0') + al -= '0'; + + return (ah << 4) + al; +} + + +void puthex(char ch) +{ + char ah,al; + + ah = (ch & 0xf0) >> 4; + if(ah >= 0x0a) + ah = ah - 0x0a + 'a'; + else + ah += '0'; + + al = (ch & 0x0f); + if(al >= 0x0a) + al = al - 0x0a + 'a'; + else + al += '0'; + + putch(ah); + putch(al); +} + + +void putch(char ch) +{ + while (!(UCSR0A & _BV(UDRE0))); + UDR0 = ch; +} + + + + +char getch(void) +{ + uint32_t count = 0; + +#ifdef ADABOOT + LED_PORT &= ~_BV(LED); // toggle LED to show activity - BBR/LF 10/3/2007 & 9/13/2008 +#endif + + while(!(UCSR0A & _BV(RXC0))) + { + /* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/ + /* HACKME:: here is a good place to count times*/ + count++; + if (count > MAX_TIME_COUNT) + app_start(); + } + +#ifdef ADABOOT + LED_PORT |= _BV(LED); // toggle LED to show activity - BBR/LF 10/3/2007 & 9/13/2008 +#endif + + return UDR0; +} + + +void getNch(uint8_t count) +{ + uint8_t i; + for(i=0;i $@ + +%.srec: %.elf + $(OBJCOPY) -j .text -j .data -O srec $< $@ + +%.bin: %.elf + $(OBJCOPY) -j .text -j .data -O binary $< $@ + +clean: + rm -rf *.o *.elf *.lst *.map *.sym *.lss *.eep *.srec *.bin *.hex + \ No newline at end of file diff --git a/Marlin/Sanguino/bootloaders/atmega644p/README.txt b/Marlin/Sanguino/bootloaders/atmega644p/README.txt new file mode 100644 index 000000000..828600785 --- /dev/null +++ b/Marlin/Sanguino/bootloaders/atmega644p/README.txt @@ -0,0 +1,3 @@ +Note: This bootloader support ATmega644, ATmega644P and ATmega324P. +To build, set PROGRAM and MCU_TARGET in the Makefile according to your target device. + diff --git a/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp b/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp new file mode 100644 index 000000000..4397efb7e --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp @@ -0,0 +1,303 @@ +/* + HardwareSerial.cpp - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + Modified 28 September 2010 by Mark Sproul +*/ + +#include +#include +#include +#include +#include "wiring.h" +#include "wiring_private.h" + +// this next line disables the entire HardwareSerial.cpp, +// this is so I can support Attiny series and any other chip without a uart +#if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) + +#include "HardwareSerial.h" + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#if (RAMEND < 1000) + #define RX_BUFFER_SIZE 32 +#else + #define RX_BUFFER_SIZE 128 +#endif + +struct ring_buffer +{ + unsigned char buffer[RX_BUFFER_SIZE]; + int head; + int tail; +}; + +#if defined(UBRRH) || defined(UBRR0H) + ring_buffer rx_buffer = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR1H) + ring_buffer rx_buffer1 = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR2H) + ring_buffer rx_buffer2 = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR3H) + ring_buffer rx_buffer3 = { { 0 }, 0, 0 }; +#endif + +inline void store_char(unsigned char c, ring_buffer *rx_buffer) +{ + int i = (unsigned int)(rx_buffer->head + 1) % RX_BUFFER_SIZE; + + // if we should be storing the received character into the location + // just before the tail (meaning that the head would advance to the + // current location of the tail), we're about to overflow the buffer + // and so we don't write the character or advance the head. + if (i != rx_buffer->tail) { + rx_buffer->buffer[rx_buffer->head] = c; + rx_buffer->head = i; + } +} + +#if defined(USART_RX_vect) + SIGNAL(USART_RX_vect) + { + #if defined(UDR0) + unsigned char c = UDR0; + #elif defined(UDR) + unsigned char c = UDR; // atmega8535 + #else + #error UDR not defined + #endif + store_char(c, &rx_buffer); + } +#elif defined(SIG_USART0_RECV) && defined(UDR0) + SIGNAL(SIG_USART0_RECV) + { + unsigned char c = UDR0; + store_char(c, &rx_buffer); + } +#elif defined(SIG_UART0_RECV) && defined(UDR0) + SIGNAL(SIG_UART0_RECV) + { + unsigned char c = UDR0; + store_char(c, &rx_buffer); + } +//#elif defined(SIG_USART_RECV) +#elif defined(USART0_RX_vect) + // fixed by Mark Sproul this is on the 644/644p + //SIGNAL(SIG_USART_RECV) + SIGNAL(USART0_RX_vect) + { + #if defined(UDR0) + unsigned char c = UDR0; + #elif defined(UDR) + unsigned char c = UDR; // atmega8, atmega32 + #else + #error UDR not defined + #endif + store_char(c, &rx_buffer); + } +#elif defined(SIG_UART_RECV) + // this is for atmega8 + SIGNAL(SIG_UART_RECV) + { + #if defined(UDR0) + unsigned char c = UDR0; // atmega645 + #elif defined(UDR) + unsigned char c = UDR; // atmega8 + #endif + store_char(c, &rx_buffer); + } +#elif defined(USBCON) + #warning No interrupt handler for usart 0 + #warning Serial(0) is on USB interface +#else + #error No interrupt handler for usart 0 +#endif + +//#if defined(SIG_USART1_RECV) +#if defined(USART1_RX_vect) + //SIGNAL(SIG_USART1_RECV) + SIGNAL(USART1_RX_vect) + { + unsigned char c = UDR1; + store_char(c, &rx_buffer1); + } +#elif defined(SIG_USART1_RECV) + #error SIG_USART1_RECV +#endif + +#if defined(USART2_RX_vect) && defined(UDR2) + SIGNAL(USART2_RX_vect) + { + unsigned char c = UDR2; + store_char(c, &rx_buffer2); + } +#elif defined(SIG_USART2_RECV) + #error SIG_USART2_RECV +#endif + +#if defined(USART3_RX_vect) && defined(UDR3) + SIGNAL(USART3_RX_vect) + { + unsigned char c = UDR3; + store_char(c, &rx_buffer3); + } +#elif defined(SIG_USART3_RECV) + #error SIG_USART3_RECV +#endif + + + +// Constructors //////////////////////////////////////////////////////////////// + +HardwareSerial::HardwareSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) +{ + _rx_buffer = rx_buffer; + _ubrrh = ubrrh; + _ubrrl = ubrrl; + _ucsra = ucsra; + _ucsrb = ucsrb; + _udr = udr; + _rxen = rxen; + _txen = txen; + _rxcie = rxcie; + _udre = udre; + _u2x = u2x; +} + +// Public Methods ////////////////////////////////////////////////////////////// + +void HardwareSerial::begin(long baud) +{ + uint16_t baud_setting; + bool use_u2x = true; + +#if F_CPU == 16000000UL + // hardcoded exception for compatibility with the bootloader shipped + // with the Duemilanove and previous boards and the firmware on the 8U2 + // on the Uno and Mega 2560. + if (baud == 57600) { + use_u2x = false; + } +#endif + + if (use_u2x) { + *_ucsra = 1 << _u2x; + baud_setting = (F_CPU / 4 / baud - 1) / 2; + } else { + *_ucsra = 0; + baud_setting = (F_CPU / 8 / baud - 1) / 2; + } + + // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) + *_ubrrh = baud_setting >> 8; + *_ubrrl = baud_setting; + + sbi(*_ucsrb, _rxen); + sbi(*_ucsrb, _txen); + sbi(*_ucsrb, _rxcie); +} + +void HardwareSerial::end() +{ + cbi(*_ucsrb, _rxen); + cbi(*_ucsrb, _txen); + cbi(*_ucsrb, _rxcie); +} + +int HardwareSerial::available(void) +{ + return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; +} + +int HardwareSerial::peek(void) +{ + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + return _rx_buffer->buffer[_rx_buffer->tail]; + } +} + +int HardwareSerial::read(void) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; + _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % RX_BUFFER_SIZE; + return c; + } +} + +void HardwareSerial::flush() +{ + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // were full, not empty. + _rx_buffer->head = _rx_buffer->tail; +} + +void HardwareSerial::write(uint8_t c) +{ + while (!((*_ucsra) & (1 << _udre))) + ; + + *_udr = c; +} + +// Preinstantiate Objects ////////////////////////////////////////////////////// + +#if defined(UBRRH) && defined(UBRRL) + HardwareSerial Serial(&rx_buffer, &UBRRH, &UBRRL, &UCSRA, &UCSRB, &UDR, RXEN, TXEN, RXCIE, UDRE, U2X); +#elif defined(UBRR0H) && defined(UBRR0L) + HardwareSerial Serial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); +#elif defined(USBCON) + #warning no serial port defined (port 0) +#else + #error no serial port defined (port 0) +#endif + +#if defined(UBRR1H) + HardwareSerial Serial1(&rx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UDR1, RXEN1, TXEN1, RXCIE1, UDRE1, U2X1); +#endif +#if defined(UBRR2H) + HardwareSerial Serial2(&rx_buffer2, &UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UDR2, RXEN2, TXEN2, RXCIE2, UDRE2, U2X2); +#endif +#if defined(UBRR3H) + HardwareSerial Serial3(&rx_buffer3, &UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UDR3, RXEN3, TXEN3, RXCIE3, UDRE3, U2X3); +#endif + +#endif // whole file + diff --git a/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h b/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h new file mode 100644 index 000000000..3efa775f8 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h @@ -0,0 +1,76 @@ +/* + HardwareSerial.h - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 28 September 2010 by Mark Sproul +*/ + +#ifndef HardwareSerial_h +#define HardwareSerial_h + +#include + +#include "Stream.h" + +struct ring_buffer; + +class HardwareSerial : public Stream +{ + private: + ring_buffer *_rx_buffer; + volatile uint8_t *_ubrrh; + volatile uint8_t *_ubrrl; + volatile uint8_t *_ucsra; + volatile uint8_t *_ucsrb; + volatile uint8_t *_udr; + uint8_t _rxen; + uint8_t _txen; + uint8_t _rxcie; + uint8_t _udre; + uint8_t _u2x; + public: + HardwareSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); + void begin(long); + void end(); + virtual int available(void); + virtual int peek(void); + virtual int read(void); + virtual void flush(void); + virtual void write(uint8_t); + using Print::write; // pull in write(str) and write(buf, size) from Print +}; + +#if defined(UBRRH) || defined(UBRR0H) + extern HardwareSerial Serial; +#elif defined(USBCON) + #include "usb_api.h" +#endif +#if defined(UBRR1H) + extern HardwareSerial Serial1; +#endif +#if defined(UBRR2H) + extern HardwareSerial Serial2; +#endif +#if defined(UBRR3H) + extern HardwareSerial Serial3; +#endif + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/Print.cpp b/Marlin/Sanguino/cores/Copy of arduino/Print.cpp new file mode 100644 index 000000000..4ee556dd8 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/Print.cpp @@ -0,0 +1,220 @@ +/* + Print.cpp - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + */ + +#include +#include +#include +#include +#include "wiring.h" + +#include "Print.h" + +// Public Methods ////////////////////////////////////////////////////////////// + +/* default implementation: may be overridden */ +void Print::write(const char *str) +{ + while (*str) + write(*str++); +} + +/* default implementation: may be overridden */ +void Print::write(const uint8_t *buffer, size_t size) +{ + while (size--) + write(*buffer++); +} + +void Print::print(const String &s) +{ + for (int i = 0; i < s.length(); i++) { + write(s[i]); + } +} + +void Print::print(const char str[]) +{ + write(str); +} + +void Print::print(char c, int base) +{ + print((long) c, base); +} + +void Print::print(unsigned char b, int base) +{ + print((unsigned long) b, base); +} + +void Print::print(int n, int base) +{ + print((long) n, base); +} + +void Print::print(unsigned int n, int base) +{ + print((unsigned long) n, base); +} + +void Print::print(long n, int base) +{ + if (base == 0) { + write(n); + } else if (base == 10) { + if (n < 0) { + print('-'); + n = -n; + } + printNumber(n, 10); + } else { + printNumber(n, base); + } +} + +void Print::print(unsigned long n, int base) +{ + if (base == 0) write(n); + else printNumber(n, base); +} + +void Print::print(double n, int digits) +{ + printFloat(n, digits); +} + +void Print::println(void) +{ + print('\r'); + print('\n'); +} + +void Print::println(const String &s) +{ + print(s); + println(); +} + +void Print::println(const char c[]) +{ + print(c); + println(); +} + +void Print::println(char c, int base) +{ + print(c, base); + println(); +} + +void Print::println(unsigned char b, int base) +{ + print(b, base); + println(); +} + +void Print::println(int n, int base) +{ + print(n, base); + println(); +} + +void Print::println(unsigned int n, int base) +{ + print(n, base); + println(); +} + +void Print::println(long n, int base) +{ + print(n, base); + println(); +} + +void Print::println(unsigned long n, int base) +{ + print(n, base); + println(); +} + +void Print::println(double n, int digits) +{ + print(n, digits); + println(); +} + +// Private Methods ///////////////////////////////////////////////////////////// + +void Print::printNumber(unsigned long n, uint8_t base) +{ + unsigned char buf[8 * sizeof(long)]; // Assumes 8-bit chars. + unsigned long i = 0; + + if (n == 0) { + print('0'); + return; + } + + while (n > 0) { + buf[i++] = n % base; + n /= base; + } + + for (; i > 0; i--) + print((char) (buf[i - 1] < 10 ? + '0' + buf[i - 1] : + 'A' + buf[i - 1] - 10)); +} + +void Print::printFloat(double number, uint8_t digits) +{ + // Handle negative numbers + if (number < 0.0) + { + print('-'); + number = -number; + } + + // Round correctly so that print(1.999, 2) prints as "2.00" + double rounding = 0.5; + for (uint8_t i=0; i 0) + print("."); + + // Extract digits from the remainder one at a time + while (digits-- > 0) + { + remainder *= 10.0; + int toPrint = int(remainder); + print(toPrint); + remainder -= toPrint; + } +} diff --git a/Marlin/Sanguino/cores/Copy of arduino/Print.h b/Marlin/Sanguino/cores/Copy of arduino/Print.h new file mode 100644 index 000000000..b092ae51d --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/Print.h @@ -0,0 +1,66 @@ +/* + Print.h - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Print_h +#define Print_h + +#include +#include // for size_t + +#include "WString.h" + +#define DEC 10 +#define HEX 16 +#define OCT 8 +#define BIN 2 +#define BYTE 0 + +class Print +{ + private: + void printNumber(unsigned long, uint8_t); + void printFloat(double, uint8_t); + public: + virtual void write(uint8_t) = 0; + virtual void write(const char *str); + virtual void write(const uint8_t *buffer, size_t size); + + void print(const String &); + void print(const char[]); + void print(char, int = BYTE); + void print(unsigned char, int = BYTE); + void print(int, int = DEC); + void print(unsigned int, int = DEC); + void print(long, int = DEC); + void print(unsigned long, int = DEC); + void print(double, int = 2); + + void println(const String &s); + void println(const char[]); + void println(char, int = BYTE); + void println(unsigned char, int = BYTE); + void println(int, int = DEC); + void println(unsigned int, int = DEC); + void println(long, int = DEC); + void println(unsigned long, int = DEC); + void println(double, int = 2); + void println(void); +}; + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/Tone.cpp b/Marlin/Sanguino/cores/Copy of arduino/Tone.cpp new file mode 100644 index 000000000..827fe49ef --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/Tone.cpp @@ -0,0 +1,515 @@ +/* Tone.cpp + + A Tone Generator Library + + Written by Brett Hagman + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Version Modified By Date Comments +------- ----------- -------- -------- +0001 B Hagman 09/08/02 Initial coding +0002 B Hagman 09/08/18 Multiple pins +0003 B Hagman 09/08/18 Moved initialization from constructor to begin() +0004 B Hagman 09/09/26 Fixed problems with ATmega8 +0005 B Hagman 09/11/23 Scanned prescalars for best fit on 8 bit timers + 09/11/25 Changed pin toggle method to XOR + 09/11/25 Fixed timer0 from being excluded +0006 D Mellis 09/12/29 Replaced objects with functions + +*************************************************/ + +#include +#include +#include +#include + +#if defined(__AVR_ATmega8__) +#define TCCR2A TCCR2 +#define TCCR2B TCCR2 +#define COM2A1 COM21 +#define COM2A0 COM20 +#define OCR2A OCR2 +#define TIMSK2 TIMSK +#define OCIE2A OCIE2 +#define TIMER2_COMPA_vect TIMER2_COMP_vect +#define TIMSK1 TIMSK +#endif + +// timerx_toggle_count: +// > 0 - duration specified +// = 0 - stopped +// < 0 - infinitely (until stop() method called, or new play() called) + +#if !defined(__AVR_ATmega8__) +volatile long timer0_toggle_count; +volatile uint8_t *timer0_pin_port; +volatile uint8_t timer0_pin_mask; +#endif + +volatile long timer1_toggle_count; +volatile uint8_t *timer1_pin_port; +volatile uint8_t timer1_pin_mask; +volatile long timer2_toggle_count; +volatile uint8_t *timer2_pin_port; +volatile uint8_t timer2_pin_mask; + +#if defined(__AVR_ATmega1280__) +volatile long timer3_toggle_count; +volatile uint8_t *timer3_pin_port; +volatile uint8_t timer3_pin_mask; +volatile long timer4_toggle_count; +volatile uint8_t *timer4_pin_port; +volatile uint8_t timer4_pin_mask; +volatile long timer5_toggle_count; +volatile uint8_t *timer5_pin_port; +volatile uint8_t timer5_pin_mask; +#endif + + +#if defined(__AVR_ATmega1280__) + +#define AVAILABLE_TONE_PINS 1 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 3, 4, 5, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255, 255, 255, 255 */ }; + +#elif defined(__AVR_ATmega8__) + +#define AVAILABLE_TONE_PINS 1 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255 */ }; + +#else + +#define AVAILABLE_TONE_PINS 1 + +// Leave timer 0 to last. +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255 */ }; + +#endif + + + +static int8_t toneBegin(uint8_t _pin) +{ + int8_t _timer = -1; + + // if we're already using the pin, the timer should be configured. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + return pgm_read_byte(tone_pin_to_timer_PGM + i); + } + } + + // search for an unused timer. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == 255) { + tone_pins[i] = _pin; + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + break; + } + } + + if (_timer != -1) + { + // Set timer specific stuff + // All timers in CTC mode + // 8 bit timers will require changing prescalar values, + // whereas 16 bit timers are set to either ck/1 or ck/64 prescalar + switch (_timer) + { +#if !defined(__AVR_ATmega8__) + case 0: + // 8 bit timer + TCCR0A = 0; + TCCR0B = 0; + bitWrite(TCCR0A, WGM01, 1); + bitWrite(TCCR0B, CS00, 1); + timer0_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer0_pin_mask = digitalPinToBitMask(_pin); + break; +#endif + + case 1: + // 16 bit timer + TCCR1A = 0; + TCCR1B = 0; + bitWrite(TCCR1B, WGM12, 1); + bitWrite(TCCR1B, CS10, 1); + timer1_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer1_pin_mask = digitalPinToBitMask(_pin); + break; + case 2: + // 8 bit timer + TCCR2A = 0; + TCCR2B = 0; + bitWrite(TCCR2A, WGM21, 1); + bitWrite(TCCR2B, CS20, 1); + timer2_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer2_pin_mask = digitalPinToBitMask(_pin); + break; + +#if defined(__AVR_ATmega1280__) + case 3: + // 16 bit timer + TCCR3A = 0; + TCCR3B = 0; + bitWrite(TCCR3B, WGM32, 1); + bitWrite(TCCR3B, CS30, 1); + timer3_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer3_pin_mask = digitalPinToBitMask(_pin); + break; + case 4: + // 16 bit timer + TCCR4A = 0; + TCCR4B = 0; + bitWrite(TCCR4B, WGM42, 1); + bitWrite(TCCR4B, CS40, 1); + timer4_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer4_pin_mask = digitalPinToBitMask(_pin); + break; + case 5: + // 16 bit timer + TCCR5A = 0; + TCCR5B = 0; + bitWrite(TCCR5B, WGM52, 1); + bitWrite(TCCR5B, CS50, 1); + timer5_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer5_pin_mask = digitalPinToBitMask(_pin); + break; +#endif + } + } + + return _timer; +} + + + +// frequency (in hertz) and duration (in milliseconds). + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration) +{ + uint8_t prescalarbits = 0b001; + long toggle_count = 0; + uint32_t ocr = 0; + int8_t _timer; + + _timer = toneBegin(_pin); + + if (_timer >= 0) + { + // Set the pinMode as OUTPUT + pinMode(_pin, OUTPUT); + + // if we are using an 8 bit timer, scan through prescalars to find the best fit + if (_timer == 0 || _timer == 2) + { + ocr = F_CPU / frequency / 2 - 1; + prescalarbits = 0b001; // ck/1: same for both timers + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 8 - 1; + prescalarbits = 0b010; // ck/8: same for both timers + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 32 - 1; + prescalarbits = 0b011; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = _timer == 0 ? 0b011 : 0b100; + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 128 - 1; + prescalarbits = 0b101; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 256 - 1; + prescalarbits = _timer == 0 ? 0b100 : 0b110; + if (ocr > 255) + { + // can't do any better than /1024 + ocr = F_CPU / frequency / 2 / 1024 - 1; + prescalarbits = _timer == 0 ? 0b101 : 0b111; + } + } + } + } + +#if !defined(__AVR_ATmega8__) + if (_timer == 0) + TCCR0B = prescalarbits; + else +#endif + TCCR2B = prescalarbits; + } + else + { + // two choices for the 16 bit timers: ck/1 or ck/64 + ocr = F_CPU / frequency / 2 - 1; + + prescalarbits = 0b001; + if (ocr > 0xffff) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = 0b011; + } + + if (_timer == 1) + TCCR1B = (TCCR1B & 0b11111000) | prescalarbits; +#if defined(__AVR_ATmega1280__) + else if (_timer == 3) + TCCR3B = (TCCR3B & 0b11111000) | prescalarbits; + else if (_timer == 4) + TCCR4B = (TCCR4B & 0b11111000) | prescalarbits; + else if (_timer == 5) + TCCR5B = (TCCR5B & 0b11111000) | prescalarbits; +#endif + + } + + + // Calculate the toggle count + if (duration > 0) + { + toggle_count = 2 * frequency * duration / 1000; + } + else + { + toggle_count = -1; + } + + // Set the OCR for the given timer, + // set the toggle count, + // then turn on the interrupts + switch (_timer) + { + +#if !defined(__AVR_ATmega8__) + case 0: + OCR0A = ocr; + timer0_toggle_count = toggle_count; + bitWrite(TIMSK0, OCIE0A, 1); + break; +#endif + + case 1: + OCR1A = ocr; + timer1_toggle_count = toggle_count; + bitWrite(TIMSK1, OCIE1A, 1); + break; + case 2: + OCR2A = ocr; + timer2_toggle_count = toggle_count; + bitWrite(TIMSK2, OCIE2A, 1); + break; + +#if defined(__AVR_ATmega1280__) + case 3: + OCR3A = ocr; + timer3_toggle_count = toggle_count; + bitWrite(TIMSK3, OCIE3A, 1); + break; + case 4: + OCR4A = ocr; + timer4_toggle_count = toggle_count; + bitWrite(TIMSK4, OCIE4A, 1); + break; + case 5: + OCR5A = ocr; + timer5_toggle_count = toggle_count; + bitWrite(TIMSK5, OCIE5A, 1); + break; +#endif + + } + } +} + + +void noTone(uint8_t _pin) +{ + int8_t _timer = -1; + + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + tone_pins[i] = 255; + } + } + + switch (_timer) + { +#if defined(__AVR_ATmega8__) + case 1: + bitWrite(TIMSK1, OCIE1A, 0); + break; + case 2: + bitWrite(TIMSK2, OCIE2A, 0); + break; + +#else + case 0: + TIMSK0 = 0; + break; + case 1: + TIMSK1 = 0; + break; + case 2: + TIMSK2 = 0; + break; +#endif + +#if defined(__AVR_ATmega1280__) + case 3: + TIMSK3 = 0; + break; + case 4: + TIMSK4 = 0; + break; + case 5: + TIMSK5 = 0; + break; +#endif + } + + digitalWrite(_pin, 0); +} + +#if 0 +#if !defined(__AVR_ATmega8__) +ISR(TIMER0_COMPA_vect) +{ + if (timer0_toggle_count != 0) + { + // toggle the pin + *timer0_pin_port ^= timer0_pin_mask; + + if (timer0_toggle_count > 0) + timer0_toggle_count--; + } + else + { + TIMSK0 = 0; // disable the interrupt + *timer0_pin_port &= ~(timer0_pin_mask); // keep pin low after stop + } +} +#endif + + +ISR(TIMER1_COMPA_vect) +{ + if (timer1_toggle_count != 0) + { + // toggle the pin + *timer1_pin_port ^= timer1_pin_mask; + + if (timer1_toggle_count > 0) + timer1_toggle_count--; + } + else + { + TIMSK1 = 0; // disable the interrupt + *timer1_pin_port &= ~(timer1_pin_mask); // keep pin low after stop + } +} +#endif + + +ISR(TIMER2_COMPA_vect) +{ + + if (timer2_toggle_count != 0) + { + // toggle the pin + *timer2_pin_port ^= timer2_pin_mask; + + if (timer2_toggle_count > 0) + timer2_toggle_count--; + } + else + { + TIMSK2 = 0; // disable the interrupt + *timer2_pin_port &= ~(timer2_pin_mask); // keep pin low after stop + } +} + + + +//#if defined(__AVR_ATmega1280__) +#if 0 + +ISR(TIMER3_COMPA_vect) +{ + if (timer3_toggle_count != 0) + { + // toggle the pin + *timer3_pin_port ^= timer3_pin_mask; + + if (timer3_toggle_count > 0) + timer3_toggle_count--; + } + else + { + TIMSK3 = 0; // disable the interrupt + *timer3_pin_port &= ~(timer3_pin_mask); // keep pin low after stop + } +} + +ISR(TIMER4_COMPA_vect) +{ + if (timer4_toggle_count != 0) + { + // toggle the pin + *timer4_pin_port ^= timer4_pin_mask; + + if (timer4_toggle_count > 0) + timer4_toggle_count--; + } + else + { + TIMSK4 = 0; // disable the interrupt + *timer4_pin_port &= ~(timer4_pin_mask); // keep pin low after stop + } +} + +ISR(TIMER5_COMPA_vect) +{ + if (timer5_toggle_count != 0) + { + // toggle the pin + *timer5_pin_port ^= timer5_pin_mask; + + if (timer5_toggle_count > 0) + timer5_toggle_count--; + } + else + { + TIMSK5 = 0; // disable the interrupt + *timer5_pin_port &= ~(timer5_pin_mask); // keep pin low after stop + } +} + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/WCharacter.h b/Marlin/Sanguino/cores/Copy of arduino/WCharacter.h new file mode 100644 index 000000000..79733b50a --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WCharacter.h @@ -0,0 +1,168 @@ +/* + WCharacter.h - Character utility functions for Wiring & Arduino + Copyright (c) 2010 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef Character_h +#define Character_h + +#include + +// WCharacter.h prototypes +inline boolean isAlphaNumeric(int c) __attribute__((always_inline)); +inline boolean isAlpha(int c) __attribute__((always_inline)); +inline boolean isAscii(int c) __attribute__((always_inline)); +inline boolean isWhitespace(int c) __attribute__((always_inline)); +inline boolean isControl(int c) __attribute__((always_inline)); +inline boolean isDigit(int c) __attribute__((always_inline)); +inline boolean isGraph(int c) __attribute__((always_inline)); +inline boolean isLowerCase(int c) __attribute__((always_inline)); +inline boolean isPrintable(int c) __attribute__((always_inline)); +inline boolean isPunct(int c) __attribute__((always_inline)); +inline boolean isSpace(int c) __attribute__((always_inline)); +inline boolean isUpperCase(int c) __attribute__((always_inline)); +inline boolean isHexadecimalDigit(int c) __attribute__((always_inline)); +inline int toAscii(int c) __attribute__((always_inline)); +inline int toLowerCase(int c) __attribute__((always_inline)); +inline int toUpperCase(int c)__attribute__((always_inline)); + + +// Checks for an alphanumeric character. +// It is equivalent to (isalpha(c) || isdigit(c)). +inline boolean isAlphaNumeric(int c) +{ + return ( isalnum(c) == 0 ? false : true); +} + + +// Checks for an alphabetic character. +// It is equivalent to (isupper(c) || islower(c)). +inline boolean isAlpha(int c) +{ + return ( isalpha(c) == 0 ? false : true); +} + + +// Checks whether c is a 7-bit unsigned char value +// that fits into the ASCII character set. +inline boolean isAscii(int c) +{ + return ( isascii (c) == 0 ? false : true); +} + + +// Checks for a blank character, that is, a space or a tab. +inline boolean isWhitespace(int c) +{ + return ( isblank (c) == 0 ? false : true); +} + + +// Checks for a control character. +inline boolean isControl(int c) +{ + return ( iscntrl (c) == 0 ? false : true); +} + + +// Checks for a digit (0 through 9). +inline boolean isDigit(int c) +{ + return ( isdigit (c) == 0 ? false : true); +} + + +// Checks for any printable character except space. +inline boolean isGraph(int c) +{ + return ( isgraph (c) == 0 ? false : true); +} + + +// Checks for a lower-case character. +inline boolean isLowerCase(int c) +{ + return (islower (c) == 0 ? false : true); +} + + +// Checks for any printable character including space. +inline boolean isPrintable(int c) +{ + return ( isprint (c) == 0 ? false : true); +} + + +// Checks for any printable character which is not a space +// or an alphanumeric character. +inline boolean isPunct(int c) +{ + return ( ispunct (c) == 0 ? false : true); +} + + +// Checks for white-space characters. For the avr-libc library, +// these are: space, formfeed ('\f'), newline ('\n'), carriage +// return ('\r'), horizontal tab ('\t'), and vertical tab ('\v'). +inline boolean isSpace(int c) +{ + return ( isspace (c) == 0 ? false : true); +} + + +// Checks for an uppercase letter. +inline boolean isUpperCase(int c) +{ + return ( isupper (c) == 0 ? false : true); +} + + +// Checks for a hexadecimal digits, i.e. one of 0 1 2 3 4 5 6 7 +// 8 9 a b c d e f A B C D E F. +inline boolean isHexadecimalDigit(int c) +{ + return ( isxdigit (c) == 0 ? false : true); +} + + +// Converts c to a 7-bit unsigned char value that fits into the +// ASCII character set, by clearing the high-order bits. +inline int toAscii(int c) +{ + return toascii (c); +} + + +// Warning: +// Many people will be unhappy if you use this function. +// This function will convert accented letters into random +// characters. + +// Converts the letter c to lower case, if possible. +inline int toLowerCase(int c) +{ + return tolower (c); +} + + +// Converts the letter c to upper case, if possible. +inline int toUpperCase(int c) +{ + return toupper (c); +} + +#endif \ No newline at end of file diff --git a/Marlin/Sanguino/cores/Copy of arduino/WConstants.h b/Marlin/Sanguino/cores/Copy of arduino/WConstants.h new file mode 100644 index 000000000..3e19ac44a --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WConstants.h @@ -0,0 +1 @@ +#include "wiring.h" diff --git a/Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c b/Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c new file mode 100644 index 000000000..6f3f0b130 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c @@ -0,0 +1,87 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.uniandes.edu.co + + Copyright (c) 2004-05 Hernando Barragan + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 24 November 2006 by David A. Mellis +*/ + +#include +#include +#include +#include +#include + +#include "WConstants.h" +#include "wiring_private.h" + +volatile static voidFuncPtr intFunc[EXTERNAL_NUM_INTERRUPTS]; +// volatile static voidFuncPtr twiIntFunc; + +void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode) +{ + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) + { + intFunc[interruptNum] = userFunc; + + //clear the config for the change settings + EICRA &= ~(B00000011 << (interruptNum * 2)); + + //set our mode. + EICRA |= (mode << (interruptNum * 2)); + + // Enable the interrupt. + EIMSK |= (1 << interruptNum); + } +} + +void detachInterrupt(uint8_t interruptNum) +{ + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) + { + // Disable the interrupt. + EIMSK &= ~(1 << interruptNum); + + intFunc[interruptNum] = 0; + } +} + +ISR(INT0_vect) { + if(intFunc[EXTERNAL_INT_0]) + intFunc[EXTERNAL_INT_0](); +} + +ISR(INT1_vect) { + if(intFunc[EXTERNAL_INT_1]) + intFunc[EXTERNAL_INT_1](); +} + +ISR(INT2_vect) { + if(intFunc[EXTERNAL_INT_2]) + intFunc[EXTERNAL_INT_2](); +} + +/* +SIGNAL(SIG_2WIRE_SERIAL) { + if(twiIntFunc) + twiIntFunc(); +} +*/ + diff --git a/Marlin/Sanguino/cores/Copy of arduino/WMath.cpp b/Marlin/Sanguino/cores/Copy of arduino/WMath.cpp new file mode 100644 index 000000000..2120c4cc1 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WMath.cpp @@ -0,0 +1,60 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.org.co + Copyright (c) 2004-06 Hernando Barragan + Modified 13 August 2006, David A. Mellis for Arduino - http://www.arduino.cc/ + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +extern "C" { + #include "stdlib.h" +} + +void randomSeed(unsigned int seed) +{ + if (seed != 0) { + srandom(seed); + } +} + +long random(long howbig) +{ + if (howbig == 0) { + return 0; + } + return random() % howbig; +} + +long random(long howsmall, long howbig) +{ + if (howsmall >= howbig) { + return howsmall; + } + long diff = howbig - howsmall; + return random(diff) + howsmall; +} + +long map(long x, long in_min, long in_max, long out_min, long out_max) +{ + return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; +} + +unsigned int makeWord(unsigned int w) { return w; } +unsigned int makeWord(unsigned char h, unsigned char l) { return (h << 8) | l; } \ No newline at end of file diff --git a/Marlin/Sanguino/cores/Copy of arduino/WProgram.h b/Marlin/Sanguino/cores/Copy of arduino/WProgram.h new file mode 100644 index 000000000..f73e760bb --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WProgram.h @@ -0,0 +1,63 @@ +#ifndef WProgram_h +#define WProgram_h + +#include +#include +#include + +#include + +#include "wiring.h" + +#ifdef __cplusplus +#include "WCharacter.h" +#include "WString.h" +#include "HardwareSerial.h" + +uint16_t makeWord(uint16_t w); +uint16_t makeWord(byte h, byte l); + +#define word(...) makeWord(__VA_ARGS__) + +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout = 1000000L); + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration = 0); +void noTone(uint8_t _pin); + +// WMath prototypes +long random(long); +long random(long, long); +void randomSeed(unsigned int); +long map(long, long, long, long, long); + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +const static uint8_t A0 = 54; +const static uint8_t A1 = 55; +const static uint8_t A2 = 56; +const static uint8_t A3 = 57; +const static uint8_t A4 = 58; +const static uint8_t A5 = 59; +const static uint8_t A6 = 60; +const static uint8_t A7 = 61; +const static uint8_t A8 = 62; +const static uint8_t A9 = 63; +const static uint8_t A10 = 64; +const static uint8_t A11 = 65; +const static uint8_t A12 = 66; +const static uint8_t A13 = 67; +const static uint8_t A14 = 68; +const static uint8_t A15 = 69; +#else +const static uint8_t A0 = 14; +const static uint8_t A1 = 15; +const static uint8_t A2 = 16; +const static uint8_t A3 = 17; +const static uint8_t A4 = 18; +const static uint8_t A5 = 19; +const static uint8_t A6 = 20; +const static uint8_t A7 = 21; +#endif + +#endif + +#endif \ No newline at end of file diff --git a/Marlin/Sanguino/cores/Copy of arduino/WString.cpp b/Marlin/Sanguino/cores/Copy of arduino/WString.cpp new file mode 100644 index 000000000..db5a441dc --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WString.cpp @@ -0,0 +1,443 @@ +/* + WString.cpp - String library for Wiring & Arduino + Copyright (c) 2009-10 Hernando Barragan. All rights reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include +#include "WProgram.h" +#include "WString.h" + + +String::String( const char *value ) +{ + if ( value == NULL ) + value = ""; + getBuffer( _length = strlen( value ) ); + if ( _buffer != NULL ) + strcpy( _buffer, value ); +} + +String::String( const String &value ) +{ + getBuffer( _length = value._length ); + if ( _buffer != NULL ) + strcpy( _buffer, value._buffer ); +} + +String::String( const char value ) +{ + _length = 1; + getBuffer(1); + if ( _buffer != NULL ) { + _buffer[0] = value; + _buffer[1] = 0; + } +} + +String::String( const unsigned char value ) +{ + _length = 1; + getBuffer(1); + if ( _buffer != NULL) { + _buffer[0] = value; + _buffer[1] = 0; + } +} + +String::String( const int value, const int base ) +{ + char buf[33]; + itoa((signed long)value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const unsigned int value, const int base ) +{ + char buf[33]; + ultoa((unsigned long)value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const long value, const int base ) +{ + char buf[33]; + ltoa(value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const unsigned long value, const int base ) +{ + char buf[33]; + ultoa(value, buf, 10); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +char String::charAt( unsigned int loc ) const +{ + return operator[]( loc ); +} + +void String::setCharAt( unsigned int loc, const char aChar ) +{ + if(_buffer == NULL) return; + if(_length > loc) { + _buffer[loc] = aChar; + } +} + +int String::compareTo( const String &s2 ) const +{ + return strcmp( _buffer, s2._buffer ); +} + +const String & String::concat( const String &s2 ) +{ + return (*this) += s2; +} + +const String & String::operator=( const String &rhs ) +{ + if ( this == &rhs ) + return *this; + + if ( rhs._length > _length ) + { + free(_buffer); + getBuffer( rhs._length ); + } + + if ( _buffer != NULL ) { + _length = rhs._length; + strcpy( _buffer, rhs._buffer ); + } + return *this; +} + +//const String & String::operator+=( const char aChar ) +//{ +// if ( _length == _capacity ) +// doubleBuffer(); +// +// _buffer[ _length++ ] = aChar; +// _buffer[ _length ] = '\0'; +// return *this; +//} + +const String & String::operator+=( const String &other ) +{ + _length += other._length; + if ( _length > _capacity ) + { + char *temp = (char *)realloc(_buffer, _length + 1); + if ( temp != NULL ) { + _buffer = temp; + _capacity = _length; + } else { + _length -= other._length; + return *this; + } + } + strcat( _buffer, other._buffer ); + return *this; +} + + +int String::operator==( const String &rhs ) const +{ + return ( _length == rhs._length && strcmp( _buffer, rhs._buffer ) == 0 ); +} + +int String::operator!=( const String &rhs ) const +{ + return ( _length != rhs.length() || strcmp( _buffer, rhs._buffer ) != 0 ); +} + +int String::operator<( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) < 0; +} + +int String::operator>( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) > 0; +} + +int String::operator<=( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) <= 0; +} + +int String::operator>=( const String & rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) >= 0; +} + +char & String::operator[]( unsigned int index ) +{ + static char dummy_writable_char; + if (index >= _length || !_buffer) { + dummy_writable_char = 0; + return dummy_writable_char; + } + return _buffer[ index ]; +} + +char String::operator[]( unsigned int index ) const +{ + // need to check for valid index, to do later + return _buffer[ index ]; +} + +boolean String::endsWith( const String &s2 ) const +{ + if ( _length < s2._length ) + return 0; + + return strcmp( &_buffer[ _length - s2._length], s2._buffer ) == 0; +} + +boolean String::equals( const String &s2 ) const +{ + return ( _length == s2._length && strcmp( _buffer,s2._buffer ) == 0 ); +} + +boolean String::equalsIgnoreCase( const String &s2 ) const +{ + if ( this == &s2 ) + return true; //1; + else if ( _length != s2._length ) + return false; //0; + + return strcmp(toLowerCase()._buffer, s2.toLowerCase()._buffer) == 0; +} + +String String::replace( char findChar, char replaceChar ) +{ + if ( _buffer == NULL ) return *this; + String theReturn = _buffer; + char* temp = theReturn._buffer; + while( (temp = strchr( temp, findChar )) != 0 ) + *temp = replaceChar; + + return theReturn; +} + +String String::replace( const String& match, const String& replace ) +{ + if ( _buffer == NULL ) return *this; + String temp = _buffer, newString; + + int loc; + while ( (loc = temp.indexOf( match )) != -1 ) + { + newString += temp.substring( 0, loc ); + newString += replace; + temp = temp.substring( loc + match._length ); + } + newString += temp; + return newString; +} + +int String::indexOf( char temp ) const +{ + return indexOf( temp, 0 ); +} + +int String::indexOf( char ch, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + const char* temp = strchr( &_buffer[fromIndex], ch ); + if ( temp == NULL ) + return -1; + + return temp - _buffer; +} + +int String::indexOf( const String &s2 ) const +{ + return indexOf( s2, 0 ); +} + +int String::indexOf( const String &s2, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + const char *theFind = strstr( &_buffer[ fromIndex ], s2._buffer ); + + if ( theFind == NULL ) + return -1; + + return theFind - _buffer; // pointer subtraction +} + +int String::lastIndexOf( char theChar ) const +{ + return lastIndexOf( theChar, _length - 1 ); +} + +int String::lastIndexOf( char ch, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + char tempchar = _buffer[fromIndex + 1]; + _buffer[fromIndex + 1] = '\0'; + char* temp = strrchr( _buffer, ch ); + _buffer[fromIndex + 1] = tempchar; + + if ( temp == NULL ) + return -1; + + return temp - _buffer; +} + +int String::lastIndexOf( const String &s2 ) const +{ + return lastIndexOf( s2, _length - s2._length ); +} + +int String::lastIndexOf( const String &s2, unsigned int fromIndex ) const +{ + // check for empty strings + if ( s2._length == 0 || s2._length - 1 > fromIndex || fromIndex >= _length ) + return -1; + + // matching first character + char temp = s2[ 0 ]; + + for ( int i = fromIndex; i >= 0; i-- ) + { + if ( _buffer[ i ] == temp && (*this).substring( i, i + s2._length ).equals( s2 ) ) + return i; + } + return -1; +} + +boolean String::startsWith( const String &s2 ) const +{ + if ( _length < s2._length ) + return 0; + + return startsWith( s2, 0 ); +} + +boolean String::startsWith( const String &s2, unsigned int offset ) const +{ + if ( offset > _length - s2._length ) + return 0; + + return strncmp( &_buffer[offset], s2._buffer, s2._length ) == 0; +} + +String String::substring( unsigned int left ) const +{ + return substring( left, _length ); +} + +String String::substring( unsigned int left, unsigned int right ) const +{ + if ( left > right ) + { + int temp = right; + right = left; + left = temp; + } + + if ( right > _length ) + { + right = _length; + } + + char temp = _buffer[ right ]; // save the replaced character + _buffer[ right ] = '\0'; + String outPut = ( _buffer + left ); // pointer arithmetic + _buffer[ right ] = temp; //restore character + return outPut; +} + +String String::toLowerCase() const +{ + String temp = _buffer; + + for ( unsigned int i = 0; i < _length; i++ ) + temp._buffer[ i ] = (char)tolower( temp._buffer[ i ] ); + return temp; +} + +String String::toUpperCase() const +{ + String temp = _buffer; + + for ( unsigned int i = 0; i < _length; i++ ) + temp._buffer[ i ] = (char)toupper( temp._buffer[ i ] ); + return temp; +} + +String String::trim() const +{ + if ( _buffer == NULL ) return *this; + String temp = _buffer; + unsigned int i,j; + + for ( i = 0; i < _length; i++ ) + { + if ( !isspace(_buffer[i]) ) + break; + } + + for ( j = temp._length - 1; j > i; j-- ) + { + if ( !isspace(_buffer[j]) ) + break; + } + + return temp.substring( i, j + 1); +} + +void String::getBytes(unsigned char *buf, unsigned int bufsize) +{ + if (!bufsize || !buf) return; + unsigned int len = bufsize - 1; + if (len > _length) len = _length; + strncpy((char *)buf, _buffer, len); + buf[len] = 0; +} + +void String::toCharArray(char *buf, unsigned int bufsize) +{ + if (!bufsize || !buf) return; + unsigned int len = bufsize - 1; + if (len > _length) len = _length; + strncpy(buf, _buffer, len); + buf[len] = 0; +} + + +long String::toInt() { + return atol(_buffer); +} diff --git a/Marlin/Sanguino/cores/Copy of arduino/WString.h b/Marlin/Sanguino/cores/Copy of arduino/WString.h new file mode 100644 index 000000000..cadddb947 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/WString.h @@ -0,0 +1,112 @@ +/* + WString.h - String library for Wiring & Arduino + Copyright (c) 2009-10 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef String_h +#define String_h + +//#include "WProgram.h" +#include +#include +#include + +class String +{ + public: + // constructors + String( const char *value = "" ); + String( const String &value ); + String( const char ); + String( const unsigned char ); + String( const int, const int base=10); + String( const unsigned int, const int base=10 ); + String( const long, const int base=10 ); + String( const unsigned long, const int base=10 ); + ~String() { free(_buffer); _length = _capacity = 0;} //added _length = _capacity = 0; + + // operators + const String & operator = ( const String &rhs ); + const String & operator +=( const String &rhs ); + //const String & operator +=( const char ); + int operator ==( const String &rhs ) const; + int operator !=( const String &rhs ) const; + int operator < ( const String &rhs ) const; + int operator > ( const String &rhs ) const; + int operator <=( const String &rhs ) const; + int operator >=( const String &rhs ) const; + char operator []( unsigned int index ) const; + char& operator []( unsigned int index ); + //operator const char *() const { return _buffer; } + + // general methods + char charAt( unsigned int index ) const; + int compareTo( const String &anotherString ) const; + unsigned char endsWith( const String &suffix ) const; + unsigned char equals( const String &anObject ) const; + unsigned char equalsIgnoreCase( const String &anotherString ) const; + int indexOf( char ch ) const; + int indexOf( char ch, unsigned int fromIndex ) const; + int indexOf( const String &str ) const; + int indexOf( const String &str, unsigned int fromIndex ) const; + int lastIndexOf( char ch ) const; + int lastIndexOf( char ch, unsigned int fromIndex ) const; + int lastIndexOf( const String &str ) const; + int lastIndexOf( const String &str, unsigned int fromIndex ) const; + const unsigned int length( ) const { return _length; } + void setCharAt(unsigned int index, const char ch); + unsigned char startsWith( const String &prefix ) const; + unsigned char startsWith( const String &prefix, unsigned int toffset ) const; + String substring( unsigned int beginIndex ) const; + String substring( unsigned int beginIndex, unsigned int endIndex ) const; + String toLowerCase( ) const; + String toUpperCase( ) const; + String trim( ) const; + void getBytes(unsigned char *buf, unsigned int bufsize); + void toCharArray(char *buf, unsigned int bufsize); + long toInt( ); + const String& concat( const String &str ); + String replace( char oldChar, char newChar ); + String replace( const String& match, const String& replace ); + friend String operator + ( String lhs, const String &rhs ); + + protected: + char *_buffer; // the actual char array + unsigned int _capacity; // the array length minus one (for the '\0') + unsigned int _length; // the String length (not counting the '\0') + + void getBuffer(unsigned int maxStrLen); + + private: + +}; + +// allocate buffer space +inline void String::getBuffer(unsigned int maxStrLen) +{ + _capacity = maxStrLen; + _buffer = (char *) malloc(_capacity + 1); + if (_buffer == NULL) _length = _capacity = 0; +} + +inline String operator+( String lhs, const String &rhs ) +{ + return lhs += rhs; +} + + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/binary.h b/Marlin/Sanguino/cores/Copy of arduino/binary.h new file mode 100644 index 000000000..af1498033 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/binary.h @@ -0,0 +1,515 @@ +#ifndef Binary_h +#define Binary_h + +#define B0 0 +#define B00 0 +#define B000 0 +#define B0000 0 +#define B00000 0 +#define B000000 0 +#define B0000000 0 +#define B00000000 0 +#define B1 1 +#define B01 1 +#define B001 1 +#define B0001 1 +#define B00001 1 +#define B000001 1 +#define B0000001 1 +#define B00000001 1 +#define B10 2 +#define B010 2 +#define B0010 2 +#define B00010 2 +#define B000010 2 +#define B0000010 2 +#define B00000010 2 +#define B11 3 +#define B011 3 +#define B0011 3 +#define B00011 3 +#define B000011 3 +#define B0000011 3 +#define B00000011 3 +#define B100 4 +#define B0100 4 +#define B00100 4 +#define B000100 4 +#define B0000100 4 +#define B00000100 4 +#define B101 5 +#define B0101 5 +#define B00101 5 +#define B000101 5 +#define B0000101 5 +#define B00000101 5 +#define B110 6 +#define B0110 6 +#define B00110 6 +#define B000110 6 +#define B0000110 6 +#define B00000110 6 +#define B111 7 +#define B0111 7 +#define B00111 7 +#define B000111 7 +#define B0000111 7 +#define B00000111 7 +#define B1000 8 +#define B01000 8 +#define B001000 8 +#define B0001000 8 +#define B00001000 8 +#define B1001 9 +#define B01001 9 +#define B001001 9 +#define B0001001 9 +#define B00001001 9 +#define B1010 10 +#define B01010 10 +#define B001010 10 +#define B0001010 10 +#define B00001010 10 +#define B1011 11 +#define B01011 11 +#define B001011 11 +#define B0001011 11 +#define B00001011 11 +#define B1100 12 +#define B01100 12 +#define B001100 12 +#define B0001100 12 +#define B00001100 12 +#define B1101 13 +#define B01101 13 +#define B001101 13 +#define B0001101 13 +#define B00001101 13 +#define B1110 14 +#define B01110 14 +#define B001110 14 +#define B0001110 14 +#define B00001110 14 +#define B1111 15 +#define B01111 15 +#define B001111 15 +#define B0001111 15 +#define B00001111 15 +#define B10000 16 +#define B010000 16 +#define B0010000 16 +#define B00010000 16 +#define B10001 17 +#define B010001 17 +#define B0010001 17 +#define B00010001 17 +#define B10010 18 +#define B010010 18 +#define B0010010 18 +#define B00010010 18 +#define B10011 19 +#define B010011 19 +#define B0010011 19 +#define B00010011 19 +#define B10100 20 +#define B010100 20 +#define B0010100 20 +#define B00010100 20 +#define B10101 21 +#define B010101 21 +#define B0010101 21 +#define B00010101 21 +#define B10110 22 +#define B010110 22 +#define B0010110 22 +#define B00010110 22 +#define B10111 23 +#define B010111 23 +#define B0010111 23 +#define B00010111 23 +#define B11000 24 +#define B011000 24 +#define B0011000 24 +#define B00011000 24 +#define B11001 25 +#define B011001 25 +#define B0011001 25 +#define B00011001 25 +#define B11010 26 +#define B011010 26 +#define B0011010 26 +#define B00011010 26 +#define B11011 27 +#define B011011 27 +#define B0011011 27 +#define B00011011 27 +#define B11100 28 +#define B011100 28 +#define B0011100 28 +#define B00011100 28 +#define B11101 29 +#define B011101 29 +#define B0011101 29 +#define B00011101 29 +#define B11110 30 +#define B011110 30 +#define B0011110 30 +#define B00011110 30 +#define B11111 31 +#define B011111 31 +#define B0011111 31 +#define B00011111 31 +#define B100000 32 +#define B0100000 32 +#define B00100000 32 +#define B100001 33 +#define B0100001 33 +#define B00100001 33 +#define B100010 34 +#define B0100010 34 +#define B00100010 34 +#define B100011 35 +#define B0100011 35 +#define B00100011 35 +#define B100100 36 +#define B0100100 36 +#define B00100100 36 +#define B100101 37 +#define B0100101 37 +#define B00100101 37 +#define B100110 38 +#define B0100110 38 +#define B00100110 38 +#define B100111 39 +#define B0100111 39 +#define B00100111 39 +#define B101000 40 +#define B0101000 40 +#define B00101000 40 +#define B101001 41 +#define B0101001 41 +#define B00101001 41 +#define B101010 42 +#define B0101010 42 +#define B00101010 42 +#define B101011 43 +#define B0101011 43 +#define B00101011 43 +#define B101100 44 +#define B0101100 44 +#define B00101100 44 +#define B101101 45 +#define B0101101 45 +#define B00101101 45 +#define B101110 46 +#define B0101110 46 +#define B00101110 46 +#define B101111 47 +#define B0101111 47 +#define B00101111 47 +#define B110000 48 +#define B0110000 48 +#define B00110000 48 +#define B110001 49 +#define B0110001 49 +#define B00110001 49 +#define B110010 50 +#define B0110010 50 +#define B00110010 50 +#define B110011 51 +#define B0110011 51 +#define B00110011 51 +#define B110100 52 +#define B0110100 52 +#define B00110100 52 +#define B110101 53 +#define B0110101 53 +#define B00110101 53 +#define B110110 54 +#define B0110110 54 +#define B00110110 54 +#define B110111 55 +#define B0110111 55 +#define B00110111 55 +#define B111000 56 +#define B0111000 56 +#define B00111000 56 +#define B111001 57 +#define B0111001 57 +#define B00111001 57 +#define B111010 58 +#define B0111010 58 +#define B00111010 58 +#define B111011 59 +#define B0111011 59 +#define B00111011 59 +#define B111100 60 +#define B0111100 60 +#define B00111100 60 +#define B111101 61 +#define B0111101 61 +#define B00111101 61 +#define B111110 62 +#define B0111110 62 +#define B00111110 62 +#define B111111 63 +#define B0111111 63 +#define B00111111 63 +#define B1000000 64 +#define B01000000 64 +#define B1000001 65 +#define B01000001 65 +#define B1000010 66 +#define B01000010 66 +#define B1000011 67 +#define B01000011 67 +#define B1000100 68 +#define B01000100 68 +#define B1000101 69 +#define B01000101 69 +#define B1000110 70 +#define B01000110 70 +#define B1000111 71 +#define B01000111 71 +#define B1001000 72 +#define B01001000 72 +#define B1001001 73 +#define B01001001 73 +#define B1001010 74 +#define B01001010 74 +#define B1001011 75 +#define B01001011 75 +#define B1001100 76 +#define B01001100 76 +#define B1001101 77 +#define B01001101 77 +#define B1001110 78 +#define B01001110 78 +#define B1001111 79 +#define B01001111 79 +#define B1010000 80 +#define B01010000 80 +#define B1010001 81 +#define B01010001 81 +#define B1010010 82 +#define B01010010 82 +#define B1010011 83 +#define B01010011 83 +#define B1010100 84 +#define B01010100 84 +#define B1010101 85 +#define B01010101 85 +#define B1010110 86 +#define B01010110 86 +#define B1010111 87 +#define B01010111 87 +#define B1011000 88 +#define B01011000 88 +#define B1011001 89 +#define B01011001 89 +#define B1011010 90 +#define B01011010 90 +#define B1011011 91 +#define B01011011 91 +#define B1011100 92 +#define B01011100 92 +#define B1011101 93 +#define B01011101 93 +#define B1011110 94 +#define B01011110 94 +#define B1011111 95 +#define B01011111 95 +#define B1100000 96 +#define B01100000 96 +#define B1100001 97 +#define B01100001 97 +#define B1100010 98 +#define B01100010 98 +#define B1100011 99 +#define B01100011 99 +#define B1100100 100 +#define B01100100 100 +#define B1100101 101 +#define B01100101 101 +#define B1100110 102 +#define B01100110 102 +#define B1100111 103 +#define B01100111 103 +#define B1101000 104 +#define B01101000 104 +#define B1101001 105 +#define B01101001 105 +#define B1101010 106 +#define B01101010 106 +#define B1101011 107 +#define B01101011 107 +#define B1101100 108 +#define B01101100 108 +#define B1101101 109 +#define B01101101 109 +#define B1101110 110 +#define B01101110 110 +#define B1101111 111 +#define B01101111 111 +#define B1110000 112 +#define B01110000 112 +#define B1110001 113 +#define B01110001 113 +#define B1110010 114 +#define B01110010 114 +#define B1110011 115 +#define B01110011 115 +#define B1110100 116 +#define B01110100 116 +#define B1110101 117 +#define B01110101 117 +#define B1110110 118 +#define B01110110 118 +#define B1110111 119 +#define B01110111 119 +#define B1111000 120 +#define B01111000 120 +#define B1111001 121 +#define B01111001 121 +#define B1111010 122 +#define B01111010 122 +#define B1111011 123 +#define B01111011 123 +#define B1111100 124 +#define B01111100 124 +#define B1111101 125 +#define B01111101 125 +#define B1111110 126 +#define B01111110 126 +#define B1111111 127 +#define B01111111 127 +#define B10000000 128 +#define B10000001 129 +#define B10000010 130 +#define B10000011 131 +#define B10000100 132 +#define B10000101 133 +#define B10000110 134 +#define B10000111 135 +#define B10001000 136 +#define B10001001 137 +#define B10001010 138 +#define B10001011 139 +#define B10001100 140 +#define B10001101 141 +#define B10001110 142 +#define B10001111 143 +#define B10010000 144 +#define B10010001 145 +#define B10010010 146 +#define B10010011 147 +#define B10010100 148 +#define B10010101 149 +#define B10010110 150 +#define B10010111 151 +#define B10011000 152 +#define B10011001 153 +#define B10011010 154 +#define B10011011 155 +#define B10011100 156 +#define B10011101 157 +#define B10011110 158 +#define B10011111 159 +#define B10100000 160 +#define B10100001 161 +#define B10100010 162 +#define B10100011 163 +#define B10100100 164 +#define B10100101 165 +#define B10100110 166 +#define B10100111 167 +#define B10101000 168 +#define B10101001 169 +#define B10101010 170 +#define B10101011 171 +#define B10101100 172 +#define B10101101 173 +#define B10101110 174 +#define B10101111 175 +#define B10110000 176 +#define B10110001 177 +#define B10110010 178 +#define B10110011 179 +#define B10110100 180 +#define B10110101 181 +#define B10110110 182 +#define B10110111 183 +#define B10111000 184 +#define B10111001 185 +#define B10111010 186 +#define B10111011 187 +#define B10111100 188 +#define B10111101 189 +#define B10111110 190 +#define B10111111 191 +#define B11000000 192 +#define B11000001 193 +#define B11000010 194 +#define B11000011 195 +#define B11000100 196 +#define B11000101 197 +#define B11000110 198 +#define B11000111 199 +#define B11001000 200 +#define B11001001 201 +#define B11001010 202 +#define B11001011 203 +#define B11001100 204 +#define B11001101 205 +#define B11001110 206 +#define B11001111 207 +#define B11010000 208 +#define B11010001 209 +#define B11010010 210 +#define B11010011 211 +#define B11010100 212 +#define B11010101 213 +#define B11010110 214 +#define B11010111 215 +#define B11011000 216 +#define B11011001 217 +#define B11011010 218 +#define B11011011 219 +#define B11011100 220 +#define B11011101 221 +#define B11011110 222 +#define B11011111 223 +#define B11100000 224 +#define B11100001 225 +#define B11100010 226 +#define B11100011 227 +#define B11100100 228 +#define B11100101 229 +#define B11100110 230 +#define B11100111 231 +#define B11101000 232 +#define B11101001 233 +#define B11101010 234 +#define B11101011 235 +#define B11101100 236 +#define B11101101 237 +#define B11101110 238 +#define B11101111 239 +#define B11110000 240 +#define B11110001 241 +#define B11110010 242 +#define B11110011 243 +#define B11110100 244 +#define B11110101 245 +#define B11110110 246 +#define B11110111 247 +#define B11111000 248 +#define B11111001 249 +#define B11111010 250 +#define B11111011 251 +#define B11111100 252 +#define B11111101 253 +#define B11111110 254 +#define B11111111 255 + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/main.cpp b/Marlin/Sanguino/cores/Copy of arduino/main.cpp new file mode 100644 index 000000000..cc6e81d90 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/main.cpp @@ -0,0 +1,14 @@ +#include + +int main(void) +{ + init(); + + setup(); + + for (;;) + loop(); + + return 0; +} + diff --git a/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c b/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c new file mode 100644 index 000000000..ccb88fe98 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c @@ -0,0 +1,200 @@ +/* + pins_arduino.c - pin definitions for the Arduino board + Part of Arduino / Wiring Lite + + Copyright (c) 2005 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: pins_arduino.c 254 2007-04-20 23:17:38Z mellis $ +*/ + +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +// On the Sanguino board, digital pins are also used +// for the analog output (software PWM). Analog input +// pins are a separate set. + +// ATMEL ATMEGA644P / SANGUINO +// +// +---\/---+ +// INT0 (D 0) PB0 1| |40 PA0 (AI 0 / D31) +// INT1 (D 1) PB1 2| |39 PA1 (AI 1 / D30) +// INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +// PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +// PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +// MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +// MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +// SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +// RST 9| |32 AREF +// VCC 10| |31 GND +// GND 11| |30 AVCC +// XTAL2 12| |29 PC7 (D 23) +// XTAL1 13| |28 PC6 (D 22) +// RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +// TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +// RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +// TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +// PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +// PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +// PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +// +--------+ +// + +#define PA 1 +#define PB 2 +#define PC 3 +#define PD 4 + +// these arrays map port names (e.g. port B) to the +// appropriate addresses for various functions (e.g. reading +// and writing) +const uint8_t PROGMEM port_to_mode_PGM[] = +{ + NOT_A_PORT, + &DDRA, + &DDRB, + &DDRC, + &DDRD, +}; + +const uint8_t PROGMEM port_to_output_PGM[] = +{ + NOT_A_PORT, + &PORTA, + &PORTB, + &PORTC, + &PORTD, +}; + +const uint8_t PROGMEM port_to_input_PGM[] = +{ + NOT_A_PORT, + &PINA, + &PINB, + &PINC, + &PIND, +}; + +const uint8_t PROGMEM digital_pin_to_port_PGM[] = +{ + PB, /* 0 */ + PB, + PB, + PB, + PB, + PB, + PB, + PB, + PD, /* 8 */ + PD, + PD, + PD, + PD, + PD, + PD, + PD, + PC, /* 16 */ + PC, + PC, + PC, + PC, + PC, + PC, + PC, + PA, /* 24 */ + PA, + PA, + PA, + PA, + PA, + PA, + PA /* 31 */ +}; + +const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = +{ + _BV(0), /* 0, port B */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(0), /* 8, port D */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(0), /* 16, port C */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(7), /* 24, port A */ + _BV(6), + _BV(5), + _BV(4), + _BV(3), + _BV(2), + _BV(1), + _BV(0) +}; + +const uint8_t PROGMEM digital_pin_to_timer_PGM[] = +{ + NOT_ON_TIMER, /* 0 - PB0 */ + NOT_ON_TIMER, /* 1 - PB1 */ + NOT_ON_TIMER, /* 2 - PB2 */ + TIMER0A, /* 3 - PB3 */ + TIMER0B, /* 4 - PB4 */ + NOT_ON_TIMER, /* 5 - PB5 */ + NOT_ON_TIMER, /* 6 - PB6 */ + NOT_ON_TIMER, /* 7 - PB7 */ + NOT_ON_TIMER, /* 8 - PD0 */ + NOT_ON_TIMER, /* 9 - PD1 */ + NOT_ON_TIMER, /* 10 - PD2 */ + NOT_ON_TIMER, /* 11 - PD3 */ + TIMER1B, /* 12 - PD4 */ + TIMER1A, /* 13 - PD5 */ + TIMER2B, /* 14 - PD6 */ + TIMER2A, /* 15 - PD7 */ + NOT_ON_TIMER, /* 16 - PC0 */ + NOT_ON_TIMER, /* 17 - PC1 */ + NOT_ON_TIMER, /* 18 - PC2 */ + NOT_ON_TIMER, /* 19 - PC3 */ + NOT_ON_TIMER, /* 20 - PC4 */ + NOT_ON_TIMER, /* 21 - PC5 */ + NOT_ON_TIMER, /* 22 - PC6 */ + NOT_ON_TIMER, /* 23 - PC7 */ + NOT_ON_TIMER, /* 24 - PA0 */ + NOT_ON_TIMER, /* 25 - PA1 */ + NOT_ON_TIMER, /* 26 - PA2 */ + NOT_ON_TIMER, /* 27 - PA3 */ + NOT_ON_TIMER, /* 28 - PA4 */ + NOT_ON_TIMER, /* 29 - PA5 */ + NOT_ON_TIMER, /* 30 - PA6 */ + NOT_ON_TIMER /* 31 - PA7 */ +}; diff --git a/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h b/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h new file mode 100644 index 000000000..e0b7add86 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h @@ -0,0 +1,65 @@ +/* + pins_arduino.h - Pin definition functions for Arduino + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2007 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 249 2007-02-03 16:52:51Z mellis $ +*/ + +#ifndef Pins_Arduino_h +#define Pins_Arduino_h + +#include + +#define NOT_A_PIN 0 +#define NOT_A_PORT 0 + +#define NOT_ON_TIMER 0 +#define TIMER0A 1 +#define TIMER0B 2 +#define TIMER1A 3 +#define TIMER1B 4 +#define TIMER2 5 +#define TIMER2A 6 +#define TIMER2B 7 + +extern const uint8_t PROGMEM port_to_mode_PGM[]; +extern const uint8_t PROGMEM port_to_input_PGM[]; +extern const uint8_t PROGMEM port_to_output_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_port_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; + +// Get the bit location within the hardware port of the given virtual pin. +// This comes from the pins_*.c file for the active board configuration. +// +// These perform slightly better as macros compared to inline functions +// +#define digitalPinToPort(P) ( pgm_read_byte( digital_pin_to_port_PGM + (P) ) ) +#define digitalPinToBitMask(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM + (P) ) ) +#define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) ) +#define analogInPinToBit(P) (P) +#define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) ) +#define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) ) +#define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_mode_PGM + (P))) ) + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring.c b/Marlin/Sanguino/cores/Copy of arduino/wiring.c new file mode 100644 index 000000000..b90d07e59 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring.c @@ -0,0 +1,289 @@ +/* + wiring.c - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#include "wiring_private.h" + +// the prescaler is set so that timer0 ticks every 64 clock cycles, and the +// the overflow handler is called every 256 ticks. +#define MICROSECONDS_PER_TIMER0_OVERFLOW (clockCyclesToMicroseconds(64 * 256)) + +// the whole number of milliseconds per timer0 overflow +#define MILLIS_INC (MICROSECONDS_PER_TIMER0_OVERFLOW / 1000) + +// the fractional number of milliseconds per timer0 overflow. we shift right +// by three to fit these numbers into a byte. (for the clock speeds we care +// about - 8 and 16 MHz - this doesn't lose precision.) +#define FRACT_INC ((MICROSECONDS_PER_TIMER0_OVERFLOW % 1000) >> 3) +#define FRACT_MAX (1000 >> 3) + +volatile unsigned long timer0_overflow_count = 0; +volatile unsigned long timer0_millis = 0; +static unsigned char timer0_fract = 0; + +SIGNAL(TIMER0_OVF_vect) +{ + // copy these to local variables so they can be stored in registers + // (volatile variables must be read from memory on every access) + unsigned long m = timer0_millis; + unsigned char f = timer0_fract; + + m += MILLIS_INC; + f += FRACT_INC; + if (f >= FRACT_MAX) { + f -= FRACT_MAX; + m += 1; + } + + timer0_fract = f; + timer0_millis = m; + timer0_overflow_count++; +} + +unsigned long millis() +{ + unsigned long m; + uint8_t oldSREG = SREG; + + // disable interrupts while we read timer0_millis or we might get an + // inconsistent value (e.g. in the middle of a write to timer0_millis) + cli(); + m = timer0_millis; + SREG = oldSREG; + + return m; +} + +unsigned long micros() { + unsigned long m; + uint8_t oldSREG = SREG, t; + + cli(); + m = timer0_overflow_count; +#if defined(TCNT0) + t = TCNT0; +#elif defined(TCNT0L) + t = TCNT0L; +#else + #error TIMER 0 not defined +#endif + + +#ifdef TIFR0 + if ((TIFR0 & _BV(TOV0)) && (t < 255)) + m++; +#else + if ((TIFR & _BV(TOV0)) && (t < 255)) + m++; +#endif + + SREG = oldSREG; + + return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond()); +} + +void delay(unsigned long ms) +{ + uint16_t start = (uint16_t)micros(); + + while (ms > 0) { + if (((uint16_t)micros() - start) >= 1000) { + ms--; + start += 1000; + } + } +} + +/* Delay for the given number of microseconds. Assumes a 8 or 16 MHz clock. */ +void delayMicroseconds(unsigned int us) +{ + // calling avrlib's delay_us() function with low values (e.g. 1 or + // 2 microseconds) gives delays longer than desired. + //delay_us(us); + +#if F_CPU >= 16000000L + // for the 16 MHz clock on most Arduino boards + + // for a one-microsecond delay, simply return. the overhead + // of the function call yields a delay of approximately 1 1/8 us. + if (--us == 0) + return; + + // the following loop takes a quarter of a microsecond (4 cycles) + // per iteration, so execute it four times for each microsecond of + // delay requested. + us <<= 2; + + // account for the time taken in the preceeding commands. + us -= 2; +#else + // for the 8 MHz internal clock on the ATmega168 + + // for a one- or two-microsecond delay, simply return. the overhead of + // the function calls takes more than two microseconds. can't just + // subtract two, since us is unsigned; we'd overflow. + if (--us == 0) + return; + if (--us == 0) + return; + + // the following loop takes half of a microsecond (4 cycles) + // per iteration, so execute it twice for each microsecond of + // delay requested. + us <<= 1; + + // partially compensate for the time taken by the preceeding commands. + // we can't subtract any more than this or we'd overflow w/ small delays. + us--; +#endif + + // busy wait + __asm__ __volatile__ ( + "1: sbiw %0,1" "\n\t" // 2 cycles + "brne 1b" : "=w" (us) : "0" (us) // 2 cycles + ); +} + +void init() +{ + // this needs to be called before setup() or some functions won't + // work there + sei(); + + // on the ATmega168, timer 0 is also used for fast hardware pwm + // (using phase-correct PWM would mean that timer 0 overflowed half as often + // resulting in different millis() behavior on the ATmega8 and ATmega168) +#if defined(TCCR0A) && defined(WGM01) + sbi(TCCR0A, WGM01); + sbi(TCCR0A, WGM00); +#endif + + // set timer 0 prescale factor to 64 +#if defined(__AVR_ATmega128__) + // CPU specific: different values for the ATmega128 + sbi(TCCR0, CS02); +#elif defined(TCCR0) && defined(CS01) && defined(CS00) + // this combination is for the standard atmega8 + sbi(TCCR0, CS01); + sbi(TCCR0, CS00); +#elif defined(TCCR0B) && defined(CS01) && defined(CS00) + // this combination is for the standard 168/328/1280/2560 + sbi(TCCR0B, CS01); + sbi(TCCR0B, CS00); +#elif defined(TCCR0A) && defined(CS01) && defined(CS00) + // this combination is for the __AVR_ATmega645__ series + sbi(TCCR0A, CS01); + sbi(TCCR0A, CS00); +#else + #error Timer 0 prescale factor 64 not set correctly +#endif + + // enable timer 0 overflow interrupt +#if defined(TIMSK) && defined(TOIE0) + sbi(TIMSK, TOIE0); +#elif defined(TIMSK0) && defined(TOIE0) + sbi(TIMSK0, TOIE0); +#else + #error Timer 0 overflow interrupt not set correctly +#endif + + // timers 1 and 2 are used for phase-correct hardware pwm + // this is better for motors as it ensures an even waveform + // note, however, that fast pwm mode can achieve a frequency of up + // 8 MHz (with a 16 MHz clock) at 50% duty cycle + + TCCR1B = 0; + + // set timer 1 prescale factor to 64 +#if defined(TCCR1B) && defined(CS11) && defined(CS10) + sbi(TCCR1B, CS11); + sbi(TCCR1B, CS10); +#elif defined(TCCR1) && defined(CS11) && defined(CS10) + sbi(TCCR1, CS11); + sbi(TCCR1, CS10); +#endif + // put timer 1 in 8-bit phase correct pwm mode +#if defined(TCCR1A) && defined(WGM10) + sbi(TCCR1A, WGM10); +#elif defined(TCCR1) + #warning this needs to be finished +#endif + + // set timer 2 prescale factor to 64 +#if defined(TCCR2) && defined(CS22) + sbi(TCCR2, CS22); +#elif defined(TCCR2B) && defined(CS22) + sbi(TCCR2B, CS22); +#else + #warning Timer 2 not finished (may not be present on this CPU) +#endif + + // configure timer 2 for phase correct pwm (8-bit) +#if defined(TCCR2) && defined(WGM20) + sbi(TCCR2, WGM20); +#elif defined(TCCR2A) && defined(WGM20) + sbi(TCCR2A, WGM20); +#else + #warning Timer 2 not finished (may not be present on this CPU) +#endif + +#if defined(TCCR3B) && defined(CS31) && defined(WGM30) + sbi(TCCR3B, CS31); // set timer 3 prescale factor to 64 + sbi(TCCR3B, CS30); + sbi(TCCR3A, WGM30); // put timer 3 in 8-bit phase correct pwm mode +#endif + +#if defined(TCCR4B) && defined(CS41) && defined(WGM40) + sbi(TCCR4B, CS41); // set timer 4 prescale factor to 64 + sbi(TCCR4B, CS40); + sbi(TCCR4A, WGM40); // put timer 4 in 8-bit phase correct pwm mode +#endif + +#if defined(TCCR5B) && defined(CS51) && defined(WGM50) + sbi(TCCR5B, CS51); // set timer 5 prescale factor to 64 + sbi(TCCR5B, CS50); + sbi(TCCR5A, WGM50); // put timer 5 in 8-bit phase correct pwm mode +#endif + +#if defined(ADCSRA) + // set a2d prescale factor to 128 + // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. + // XXX: this will not work properly for other clock speeds, and + // this code should use F_CPU to determine the prescale factor. + sbi(ADCSRA, ADPS2); + sbi(ADCSRA, ADPS1); + sbi(ADCSRA, ADPS0); + + // enable a2d conversions + sbi(ADCSRA, ADEN); +#endif + + // the bootloader connects pins 0 and 1 to the USART; disconnect them + // here so they can be used as normal digital i/o; they will be + // reconnected in Serial.begin() +#if defined(UCSRB) + UCSRB = 0; +#elif defined(UCSR0B) + UCSR0B = 0; +#endif +} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring.h b/Marlin/Sanguino/cores/Copy of arduino/wiring.h new file mode 100644 index 000000000..e29959b86 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring.h @@ -0,0 +1,135 @@ +/* + wiring.h - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#ifndef Wiring_h +#define Wiring_h + +#include +#include +#include "binary.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#define HIGH 0x1 +#define LOW 0x0 + +#define INPUT 0x0 +#define OUTPUT 0x1 + +#define true 0x1 +#define false 0x0 + +#define PI 3.1415926535897932384626433832795 +#define HALF_PI 1.5707963267948966192313216916398 +#define TWO_PI 6.283185307179586476925286766559 +#define DEG_TO_RAD 0.017453292519943295769236907684886 +#define RAD_TO_DEG 57.295779513082320876798154814105 + +#define SERIAL 0x0 +#define DISPLAY 0x1 + +#define LSBFIRST 0 +#define MSBFIRST 1 + +#define CHANGE 1 +#define FALLING 2 +#define RISING 3 + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define INTERNAL1V1 2 +#define INTERNAL2V56 3 +#else +#define INTERNAL 3 +#endif +#define DEFAULT 1 +#define EXTERNAL 0 + +// undefine stdlib's abs if encountered +#ifdef abs +#undef abs +#endif + +#define min(a,b) ((a)<(b)?(a):(b)) +#define max(a,b) ((a)>(b)?(a):(b)) +#define abs(x) ((x)>0?(x):-(x)) +#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) +#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) +#define radians(deg) ((deg)*DEG_TO_RAD) +#define degrees(rad) ((rad)*RAD_TO_DEG) +#define sq(x) ((x)*(x)) + +#define interrupts() sei() +#define noInterrupts() cli() + +#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) +#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (F_CPU / 1000L) ) +#define microsecondsToClockCycles(a) ( ((a) * (F_CPU / 1000L)) / 1000L ) + +#define lowByte(w) ((uint8_t) ((w) & 0xff)) +#define highByte(w) ((uint8_t) ((w) >> 8)) + +#define bitRead(value, bit) (((value) >> (bit)) & 0x01) +#define bitSet(value, bit) ((value) |= (1UL << (bit))) +#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) +#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) + + +typedef unsigned int word; + +#define bit(b) (1UL << (b)) + +typedef uint8_t boolean; +typedef uint8_t byte; + +void init(void); + +void pinMode(uint8_t, uint8_t); +void digitalWrite(uint8_t, uint8_t); +int digitalRead(uint8_t); +int analogRead(uint8_t); +void analogReference(uint8_t mode); +void analogWrite(uint8_t, int); + +unsigned long millis(void); +unsigned long micros(void); +void delay(unsigned long); +void delayMicroseconds(unsigned int us); +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); + +void attachInterrupt(uint8_t, void (*)(void), int mode); +void detachInterrupt(uint8_t); + +void setup(void); +void loop(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c new file mode 100644 index 000000000..b98bb1a19 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c @@ -0,0 +1,116 @@ +/* + wiring_analog.c - analog input and output + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +uint8_t analog_reference = DEFAULT; + +void analogReference(uint8_t mode) +{ + // can't actually set the register here because the default setting + // will connect AVCC and the AREF pin, which would cause a short if + // there's something connected to AREF. + analog_reference = mode; +} + +int analogRead(uint8_t pin) +{ + uint8_t low, high, ch = analogInPinToBit(pin); + + // set the analog reference (high two bits of ADMUX) and select the + // channel (low 4 bits). this also sets ADLAR (left-adjust result) + // to 0 (the default). + // the final AND is to clear the pos/neg reference bits + ADMUX = ((analog_reference << 6) | (pin & 0x0f)) & B11000111; + + // without a delay, we seem to read from the wrong channel + //delay(1); + + // start the conversion + sbi(ADCSRA, ADSC); + + // ADSC is cleared when the conversion finishes + while (bit_is_set(ADCSRA, ADSC)); + + // we have to read ADCL first; doing so locks both ADCL + // and ADCH until ADCH is read. reading ADCL second would + // cause the results of each conversion to be discarded, + // as ADCL and ADCH would be locked when it completed. + low = ADCL; + high = ADCH; + + // combine the two bytes + return (high << 8) | low; +} + +// Right now, PWM output only works on the pins with +// hardware support. These are defined in the appropriate +// pins_*.c file. For the rest of the pins, we default +// to digital output. +void analogWrite(uint8_t pin, int val) +{ + // We need to make sure the PWM output is enabled for those pins + // that support it, as we turn it off when digitally reading or + // writing with them. Also, make sure the pin is in output mode + // for consistenty with Wiring, which doesn't require a pinMode + // call for the analog output pins. + pinMode(pin, OUTPUT); + + if (digitalPinToTimer(pin) == TIMER1A) { + // connect pwm to pin on timer 1, channel A + sbi(TCCR1A, COM1A1); + // set pwm duty + OCR1A = val; + } else if (digitalPinToTimer(pin) == TIMER1B) { + // connect pwm to pin on timer 1, channel B + sbi(TCCR1A, COM1B1); + // set pwm duty + OCR1B = val; + } else if (digitalPinToTimer(pin) == TIMER0A) { + // connect pwm to pin on timer 0, channel A + sbi(TCCR0A, COM0A1); + // set pwm duty + OCR0A = val; + } else if (digitalPinToTimer(pin) == TIMER0B) { + // connect pwm to pin on timer 0, channel B + sbi(TCCR0A, COM0B1); + // set pwm duty + OCR0B = val; + } else if (digitalPinToTimer(pin) == TIMER2A) { + // connect pwm to pin on timer 2, channel A + sbi(TCCR2A, COM2A1); + // set pwm duty + OCR2A = val; + } else if (digitalPinToTimer(pin) == TIMER2B) { + // connect pwm to pin on timer 2, channel B + sbi(TCCR2A, COM2B1); + // set pwm duty + OCR2B = val; + } else if (val < 128) + //fail semi-intelligently + digitalWrite(pin, LOW); + else + digitalWrite(pin, HIGH); +} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c new file mode 100644 index 000000000..3d4b4ebd1 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c @@ -0,0 +1,95 @@ +/* + wiring_digital.c - digital input and output functions + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +void pinMode(uint8_t pin, uint8_t mode) +{ + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *reg; + + if (port == NOT_A_PIN) return; + + // JWS: can I let the optimizer do this? + reg = portModeRegister(port); + + if (mode == INPUT) *reg &= ~bit; + else *reg |= bit; +} + +// Forcing this inline keeps the callers from having to push their own stuff +// on the stack. It is a good performance win and only takes 1 more byte per +// user than calling. (It will take more bytes on the 168.) +// +// But shouldn't this be moved into pinMode? Seems silly to check and do on +// each digitalread or write. +// +static inline void turnOffPWM(uint8_t timer) __attribute__ ((always_inline)); +static inline void turnOffPWM(uint8_t timer) +{ + if (timer == TIMER0A) cbi(TCCR0A, COM0A1); + if (timer == TIMER0B) cbi(TCCR0A, COM0B1); + if (timer == TIMER1A) cbi(TCCR1A, COM1A1); + if (timer == TIMER1B) cbi(TCCR1A, COM1B1); + if (timer == TIMER2A) cbi(TCCR2A, COM2A1); + if (timer == TIMER2B) cbi(TCCR2A, COM2B1); +} + +void digitalWrite(uint8_t pin, uint8_t val) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *out; + + if (port == NOT_A_PIN) return; + + // If the pin that support PWM output, we need to turn it off + // before doing a digital write. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + out = portOutputRegister(port); + + if (val == LOW) *out &= ~bit; + else *out |= bit; +} + +int digitalRead(uint8_t pin) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + + if (port == NOT_A_PIN) return LOW; + + // If the pin that support PWM output, we need to turn it off + // before getting a digital reading. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + if (*portInputRegister(port) & bit) return HIGH; + + return LOW; +} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_private.h b/Marlin/Sanguino/cores/Copy of arduino/wiring_private.h new file mode 100644 index 000000000..14394a0b6 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring_private.h @@ -0,0 +1,60 @@ +/* + wiring_private.h - Internal header file. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 239 2007-01-12 17:58:39Z mellis $ +*/ + +#ifndef WiringPrivate_h +#define WiringPrivate_h + +#include +#include +#include +#include +#include +#include + +#include "wiring.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#ifndef cbi +#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) +#endif +#ifndef sbi +#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) +#endif + +#define EXTERNAL_INT_0 0 +#define EXTERNAL_INT_1 1 +#define EXTERNAL_INT_2 2 + +#define EXTERNAL_NUM_INTERRUPTS 3 + +typedef void (*voidFuncPtr)(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c new file mode 100644 index 000000000..0d968865d --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c @@ -0,0 +1,69 @@ +/* + wiring_pulse.c - pulseIn() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH + * or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds + * to 3 minutes in length, but must be called at least a few dozen microseconds + * before the start of the pulse. */ +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout) +{ + // cache the port and bit of the pin in order to speed up the + // pulse width measuring loop and achieve finer resolution. calling + // digitalRead() instead yields much coarser resolution. + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + uint8_t stateMask = (state ? bit : 0); + unsigned long width = 0; // keep initialization out of time critical area + + // convert the timeout from microseconds to a number of times through + // the initial loop; it takes 16 clock cycles per iteration. + unsigned long numloops = 0; + unsigned long maxloops = microsecondsToClockCycles(timeout) / 16; + + // wait for any previous pulse to end + while ((*portInputRegister(port) & bit) == stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to start + while ((*portInputRegister(port) & bit) != stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to stop + while ((*portInputRegister(port) & bit) == stateMask) { + if (numloops++ == maxloops) + return 0; + width++; + } + + // convert the reading to microseconds. The loop has been determined + // to be 20 clock cycles long and have about 16 clocks between the edge + // and the start of the loop. There will be some error introduced by + // the interrupt handlers. + return clockCyclesToMicroseconds(width * 21 + 16); +} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c new file mode 100644 index 000000000..cfe786758 --- /dev/null +++ b/Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c @@ -0,0 +1,55 @@ +/* + wiring_shift.c - shiftOut() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" + +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder) { + uint8_t value = 0; + uint8_t i; + + for (i = 0; i < 8; ++i) { + digitalWrite(clockPin, HIGH); + if (bitOrder == LSBFIRST) + value |= digitalRead(dataPin) << i; + else + value |= digitalRead(dataPin) << (7 - i); + digitalWrite(clockPin, LOW); + } + return value; +} + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val) +{ + uint8_t i; + + for (i = 0; i < 8; i++) { + if (bitOrder == LSBFIRST) + digitalWrite(dataPin, !!(val & (1 << i))); + else + digitalWrite(dataPin, !!(val & (1 << (7 - i)))); + + digitalWrite(clockPin, HIGH); + digitalWrite(clockPin, LOW); + } +} diff --git a/Marlin/Sanguino/cores/arduino/Copy of wiring.h b/Marlin/Sanguino/cores/arduino/Copy of wiring.h new file mode 100644 index 000000000..e29959b86 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/Copy of wiring.h @@ -0,0 +1,135 @@ +/* + wiring.h - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#ifndef Wiring_h +#define Wiring_h + +#include +#include +#include "binary.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#define HIGH 0x1 +#define LOW 0x0 + +#define INPUT 0x0 +#define OUTPUT 0x1 + +#define true 0x1 +#define false 0x0 + +#define PI 3.1415926535897932384626433832795 +#define HALF_PI 1.5707963267948966192313216916398 +#define TWO_PI 6.283185307179586476925286766559 +#define DEG_TO_RAD 0.017453292519943295769236907684886 +#define RAD_TO_DEG 57.295779513082320876798154814105 + +#define SERIAL 0x0 +#define DISPLAY 0x1 + +#define LSBFIRST 0 +#define MSBFIRST 1 + +#define CHANGE 1 +#define FALLING 2 +#define RISING 3 + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define INTERNAL1V1 2 +#define INTERNAL2V56 3 +#else +#define INTERNAL 3 +#endif +#define DEFAULT 1 +#define EXTERNAL 0 + +// undefine stdlib's abs if encountered +#ifdef abs +#undef abs +#endif + +#define min(a,b) ((a)<(b)?(a):(b)) +#define max(a,b) ((a)>(b)?(a):(b)) +#define abs(x) ((x)>0?(x):-(x)) +#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) +#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) +#define radians(deg) ((deg)*DEG_TO_RAD) +#define degrees(rad) ((rad)*RAD_TO_DEG) +#define sq(x) ((x)*(x)) + +#define interrupts() sei() +#define noInterrupts() cli() + +#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) +#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (F_CPU / 1000L) ) +#define microsecondsToClockCycles(a) ( ((a) * (F_CPU / 1000L)) / 1000L ) + +#define lowByte(w) ((uint8_t) ((w) & 0xff)) +#define highByte(w) ((uint8_t) ((w) >> 8)) + +#define bitRead(value, bit) (((value) >> (bit)) & 0x01) +#define bitSet(value, bit) ((value) |= (1UL << (bit))) +#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) +#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) + + +typedef unsigned int word; + +#define bit(b) (1UL << (b)) + +typedef uint8_t boolean; +typedef uint8_t byte; + +void init(void); + +void pinMode(uint8_t, uint8_t); +void digitalWrite(uint8_t, uint8_t); +int digitalRead(uint8_t); +int analogRead(uint8_t); +void analogReference(uint8_t mode); +void analogWrite(uint8_t, int); + +unsigned long millis(void); +unsigned long micros(void); +void delay(unsigned long); +void delayMicroseconds(unsigned int us); +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); + +void attachInterrupt(uint8_t, void (*)(void), int mode); +void detachInterrupt(uint8_t); + +void setup(void); +void loop(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp b/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp new file mode 100644 index 000000000..4397efb7e --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp @@ -0,0 +1,303 @@ +/* + HardwareSerial.cpp - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + Modified 28 September 2010 by Mark Sproul +*/ + +#include +#include +#include +#include +#include "wiring.h" +#include "wiring_private.h" + +// this next line disables the entire HardwareSerial.cpp, +// this is so I can support Attiny series and any other chip without a uart +#if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) + +#include "HardwareSerial.h" + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#if (RAMEND < 1000) + #define RX_BUFFER_SIZE 32 +#else + #define RX_BUFFER_SIZE 128 +#endif + +struct ring_buffer +{ + unsigned char buffer[RX_BUFFER_SIZE]; + int head; + int tail; +}; + +#if defined(UBRRH) || defined(UBRR0H) + ring_buffer rx_buffer = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR1H) + ring_buffer rx_buffer1 = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR2H) + ring_buffer rx_buffer2 = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR3H) + ring_buffer rx_buffer3 = { { 0 }, 0, 0 }; +#endif + +inline void store_char(unsigned char c, ring_buffer *rx_buffer) +{ + int i = (unsigned int)(rx_buffer->head + 1) % RX_BUFFER_SIZE; + + // if we should be storing the received character into the location + // just before the tail (meaning that the head would advance to the + // current location of the tail), we're about to overflow the buffer + // and so we don't write the character or advance the head. + if (i != rx_buffer->tail) { + rx_buffer->buffer[rx_buffer->head] = c; + rx_buffer->head = i; + } +} + +#if defined(USART_RX_vect) + SIGNAL(USART_RX_vect) + { + #if defined(UDR0) + unsigned char c = UDR0; + #elif defined(UDR) + unsigned char c = UDR; // atmega8535 + #else + #error UDR not defined + #endif + store_char(c, &rx_buffer); + } +#elif defined(SIG_USART0_RECV) && defined(UDR0) + SIGNAL(SIG_USART0_RECV) + { + unsigned char c = UDR0; + store_char(c, &rx_buffer); + } +#elif defined(SIG_UART0_RECV) && defined(UDR0) + SIGNAL(SIG_UART0_RECV) + { + unsigned char c = UDR0; + store_char(c, &rx_buffer); + } +//#elif defined(SIG_USART_RECV) +#elif defined(USART0_RX_vect) + // fixed by Mark Sproul this is on the 644/644p + //SIGNAL(SIG_USART_RECV) + SIGNAL(USART0_RX_vect) + { + #if defined(UDR0) + unsigned char c = UDR0; + #elif defined(UDR) + unsigned char c = UDR; // atmega8, atmega32 + #else + #error UDR not defined + #endif + store_char(c, &rx_buffer); + } +#elif defined(SIG_UART_RECV) + // this is for atmega8 + SIGNAL(SIG_UART_RECV) + { + #if defined(UDR0) + unsigned char c = UDR0; // atmega645 + #elif defined(UDR) + unsigned char c = UDR; // atmega8 + #endif + store_char(c, &rx_buffer); + } +#elif defined(USBCON) + #warning No interrupt handler for usart 0 + #warning Serial(0) is on USB interface +#else + #error No interrupt handler for usart 0 +#endif + +//#if defined(SIG_USART1_RECV) +#if defined(USART1_RX_vect) + //SIGNAL(SIG_USART1_RECV) + SIGNAL(USART1_RX_vect) + { + unsigned char c = UDR1; + store_char(c, &rx_buffer1); + } +#elif defined(SIG_USART1_RECV) + #error SIG_USART1_RECV +#endif + +#if defined(USART2_RX_vect) && defined(UDR2) + SIGNAL(USART2_RX_vect) + { + unsigned char c = UDR2; + store_char(c, &rx_buffer2); + } +#elif defined(SIG_USART2_RECV) + #error SIG_USART2_RECV +#endif + +#if defined(USART3_RX_vect) && defined(UDR3) + SIGNAL(USART3_RX_vect) + { + unsigned char c = UDR3; + store_char(c, &rx_buffer3); + } +#elif defined(SIG_USART3_RECV) + #error SIG_USART3_RECV +#endif + + + +// Constructors //////////////////////////////////////////////////////////////// + +HardwareSerial::HardwareSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) +{ + _rx_buffer = rx_buffer; + _ubrrh = ubrrh; + _ubrrl = ubrrl; + _ucsra = ucsra; + _ucsrb = ucsrb; + _udr = udr; + _rxen = rxen; + _txen = txen; + _rxcie = rxcie; + _udre = udre; + _u2x = u2x; +} + +// Public Methods ////////////////////////////////////////////////////////////// + +void HardwareSerial::begin(long baud) +{ + uint16_t baud_setting; + bool use_u2x = true; + +#if F_CPU == 16000000UL + // hardcoded exception for compatibility with the bootloader shipped + // with the Duemilanove and previous boards and the firmware on the 8U2 + // on the Uno and Mega 2560. + if (baud == 57600) { + use_u2x = false; + } +#endif + + if (use_u2x) { + *_ucsra = 1 << _u2x; + baud_setting = (F_CPU / 4 / baud - 1) / 2; + } else { + *_ucsra = 0; + baud_setting = (F_CPU / 8 / baud - 1) / 2; + } + + // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) + *_ubrrh = baud_setting >> 8; + *_ubrrl = baud_setting; + + sbi(*_ucsrb, _rxen); + sbi(*_ucsrb, _txen); + sbi(*_ucsrb, _rxcie); +} + +void HardwareSerial::end() +{ + cbi(*_ucsrb, _rxen); + cbi(*_ucsrb, _txen); + cbi(*_ucsrb, _rxcie); +} + +int HardwareSerial::available(void) +{ + return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; +} + +int HardwareSerial::peek(void) +{ + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + return _rx_buffer->buffer[_rx_buffer->tail]; + } +} + +int HardwareSerial::read(void) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; + _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % RX_BUFFER_SIZE; + return c; + } +} + +void HardwareSerial::flush() +{ + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // were full, not empty. + _rx_buffer->head = _rx_buffer->tail; +} + +void HardwareSerial::write(uint8_t c) +{ + while (!((*_ucsra) & (1 << _udre))) + ; + + *_udr = c; +} + +// Preinstantiate Objects ////////////////////////////////////////////////////// + +#if defined(UBRRH) && defined(UBRRL) + HardwareSerial Serial(&rx_buffer, &UBRRH, &UBRRL, &UCSRA, &UCSRB, &UDR, RXEN, TXEN, RXCIE, UDRE, U2X); +#elif defined(UBRR0H) && defined(UBRR0L) + HardwareSerial Serial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); +#elif defined(USBCON) + #warning no serial port defined (port 0) +#else + #error no serial port defined (port 0) +#endif + +#if defined(UBRR1H) + HardwareSerial Serial1(&rx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UDR1, RXEN1, TXEN1, RXCIE1, UDRE1, U2X1); +#endif +#if defined(UBRR2H) + HardwareSerial Serial2(&rx_buffer2, &UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UDR2, RXEN2, TXEN2, RXCIE2, UDRE2, U2X2); +#endif +#if defined(UBRR3H) + HardwareSerial Serial3(&rx_buffer3, &UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UDR3, RXEN3, TXEN3, RXCIE3, UDRE3, U2X3); +#endif + +#endif // whole file + diff --git a/Marlin/Sanguino/cores/arduino/HardwareSerial.h b/Marlin/Sanguino/cores/arduino/HardwareSerial.h new file mode 100644 index 000000000..3efa775f8 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/HardwareSerial.h @@ -0,0 +1,76 @@ +/* + HardwareSerial.h - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 28 September 2010 by Mark Sproul +*/ + +#ifndef HardwareSerial_h +#define HardwareSerial_h + +#include + +#include "Stream.h" + +struct ring_buffer; + +class HardwareSerial : public Stream +{ + private: + ring_buffer *_rx_buffer; + volatile uint8_t *_ubrrh; + volatile uint8_t *_ubrrl; + volatile uint8_t *_ucsra; + volatile uint8_t *_ucsrb; + volatile uint8_t *_udr; + uint8_t _rxen; + uint8_t _txen; + uint8_t _rxcie; + uint8_t _udre; + uint8_t _u2x; + public: + HardwareSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); + void begin(long); + void end(); + virtual int available(void); + virtual int peek(void); + virtual int read(void); + virtual void flush(void); + virtual void write(uint8_t); + using Print::write; // pull in write(str) and write(buf, size) from Print +}; + +#if defined(UBRRH) || defined(UBRR0H) + extern HardwareSerial Serial; +#elif defined(USBCON) + #include "usb_api.h" +#endif +#if defined(UBRR1H) + extern HardwareSerial Serial1; +#endif +#if defined(UBRR2H) + extern HardwareSerial Serial2; +#endif +#if defined(UBRR3H) + extern HardwareSerial Serial3; +#endif + +#endif diff --git a/Marlin/Sanguino/cores/arduino/Print.cpp b/Marlin/Sanguino/cores/arduino/Print.cpp new file mode 100644 index 000000000..4ee556dd8 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/Print.cpp @@ -0,0 +1,220 @@ +/* + Print.cpp - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + */ + +#include +#include +#include +#include +#include "wiring.h" + +#include "Print.h" + +// Public Methods ////////////////////////////////////////////////////////////// + +/* default implementation: may be overridden */ +void Print::write(const char *str) +{ + while (*str) + write(*str++); +} + +/* default implementation: may be overridden */ +void Print::write(const uint8_t *buffer, size_t size) +{ + while (size--) + write(*buffer++); +} + +void Print::print(const String &s) +{ + for (int i = 0; i < s.length(); i++) { + write(s[i]); + } +} + +void Print::print(const char str[]) +{ + write(str); +} + +void Print::print(char c, int base) +{ + print((long) c, base); +} + +void Print::print(unsigned char b, int base) +{ + print((unsigned long) b, base); +} + +void Print::print(int n, int base) +{ + print((long) n, base); +} + +void Print::print(unsigned int n, int base) +{ + print((unsigned long) n, base); +} + +void Print::print(long n, int base) +{ + if (base == 0) { + write(n); + } else if (base == 10) { + if (n < 0) { + print('-'); + n = -n; + } + printNumber(n, 10); + } else { + printNumber(n, base); + } +} + +void Print::print(unsigned long n, int base) +{ + if (base == 0) write(n); + else printNumber(n, base); +} + +void Print::print(double n, int digits) +{ + printFloat(n, digits); +} + +void Print::println(void) +{ + print('\r'); + print('\n'); +} + +void Print::println(const String &s) +{ + print(s); + println(); +} + +void Print::println(const char c[]) +{ + print(c); + println(); +} + +void Print::println(char c, int base) +{ + print(c, base); + println(); +} + +void Print::println(unsigned char b, int base) +{ + print(b, base); + println(); +} + +void Print::println(int n, int base) +{ + print(n, base); + println(); +} + +void Print::println(unsigned int n, int base) +{ + print(n, base); + println(); +} + +void Print::println(long n, int base) +{ + print(n, base); + println(); +} + +void Print::println(unsigned long n, int base) +{ + print(n, base); + println(); +} + +void Print::println(double n, int digits) +{ + print(n, digits); + println(); +} + +// Private Methods ///////////////////////////////////////////////////////////// + +void Print::printNumber(unsigned long n, uint8_t base) +{ + unsigned char buf[8 * sizeof(long)]; // Assumes 8-bit chars. + unsigned long i = 0; + + if (n == 0) { + print('0'); + return; + } + + while (n > 0) { + buf[i++] = n % base; + n /= base; + } + + for (; i > 0; i--) + print((char) (buf[i - 1] < 10 ? + '0' + buf[i - 1] : + 'A' + buf[i - 1] - 10)); +} + +void Print::printFloat(double number, uint8_t digits) +{ + // Handle negative numbers + if (number < 0.0) + { + print('-'); + number = -number; + } + + // Round correctly so that print(1.999, 2) prints as "2.00" + double rounding = 0.5; + for (uint8_t i=0; i 0) + print("."); + + // Extract digits from the remainder one at a time + while (digits-- > 0) + { + remainder *= 10.0; + int toPrint = int(remainder); + print(toPrint); + remainder -= toPrint; + } +} diff --git a/Marlin/Sanguino/cores/arduino/Print.h b/Marlin/Sanguino/cores/arduino/Print.h new file mode 100644 index 000000000..b092ae51d --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/Print.h @@ -0,0 +1,66 @@ +/* + Print.h - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Print_h +#define Print_h + +#include +#include // for size_t + +#include "WString.h" + +#define DEC 10 +#define HEX 16 +#define OCT 8 +#define BIN 2 +#define BYTE 0 + +class Print +{ + private: + void printNumber(unsigned long, uint8_t); + void printFloat(double, uint8_t); + public: + virtual void write(uint8_t) = 0; + virtual void write(const char *str); + virtual void write(const uint8_t *buffer, size_t size); + + void print(const String &); + void print(const char[]); + void print(char, int = BYTE); + void print(unsigned char, int = BYTE); + void print(int, int = DEC); + void print(unsigned int, int = DEC); + void print(long, int = DEC); + void print(unsigned long, int = DEC); + void print(double, int = 2); + + void println(const String &s); + void println(const char[]); + void println(char, int = BYTE); + void println(unsigned char, int = BYTE); + void println(int, int = DEC); + void println(unsigned int, int = DEC); + void println(long, int = DEC); + void println(unsigned long, int = DEC); + void println(double, int = 2); + void println(void); +}; + +#endif diff --git a/Marlin/Sanguino/cores/arduino/Stream.h b/Marlin/Sanguino/cores/arduino/Stream.h new file mode 100644 index 000000000..93d8275dc --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/Stream.h @@ -0,0 +1,35 @@ +/* + Stream.h - base class for character-based streams. + Copyright (c) 2010 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Stream_h +#define Stream_h + +#include +#include "Print.h" + +class Stream : public Print +{ + public: + virtual int available() = 0; + virtual int read() = 0; + virtual int peek() = 0; + virtual void flush() = 0; +}; + +#endif diff --git a/Marlin/Sanguino/cores/arduino/Tone.cpp b/Marlin/Sanguino/cores/arduino/Tone.cpp new file mode 100644 index 000000000..c3910e7a6 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/Tone.cpp @@ -0,0 +1,601 @@ +/* Tone.cpp + + A Tone Generator Library + + Written by Brett Hagman + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Version Modified By Date Comments +------- ----------- -------- -------- +0001 B Hagman 09/08/02 Initial coding +0002 B Hagman 09/08/18 Multiple pins +0003 B Hagman 09/08/18 Moved initialization from constructor to begin() +0004 B Hagman 09/09/26 Fixed problems with ATmega8 +0005 B Hagman 09/11/23 Scanned prescalars for best fit on 8 bit timers + 09/11/25 Changed pin toggle method to XOR + 09/11/25 Fixed timer0 from being excluded +0006 D Mellis 09/12/29 Replaced objects with functions +0007 M Sproul 10/08/29 Changed #ifdefs from cpu to register +*************************************************/ + +#include +#include +#include "wiring.h" +#include "pins_arduino.h" + +#if defined(__AVR_ATmega8__) || defined(__AVR_ATmega128__) +#define TCCR2A TCCR2 +#define TCCR2B TCCR2 +#define COM2A1 COM21 +#define COM2A0 COM20 +#define OCR2A OCR2 +#define TIMSK2 TIMSK +#define OCIE2A OCIE2 +#define TIMER2_COMPA_vect TIMER2_COMP_vect +#define TIMSK1 TIMSK +#endif + +// timerx_toggle_count: +// > 0 - duration specified +// = 0 - stopped +// < 0 - infinitely (until stop() method called, or new play() called) + +#if !defined(__AVR_ATmega8__) +volatile long timer0_toggle_count; +volatile uint8_t *timer0_pin_port; +volatile uint8_t timer0_pin_mask; +#endif + +volatile long timer1_toggle_count; +volatile uint8_t *timer1_pin_port; +volatile uint8_t timer1_pin_mask; +volatile long timer2_toggle_count; +volatile uint8_t *timer2_pin_port; +volatile uint8_t timer2_pin_mask; + +#if defined(TIMSK3) +volatile long timer3_toggle_count; +volatile uint8_t *timer3_pin_port; +volatile uint8_t timer3_pin_mask; +#endif + +#if defined(TIMSK4) +volatile long timer4_toggle_count; +volatile uint8_t *timer4_pin_port; +volatile uint8_t timer4_pin_mask; +#endif + +#if defined(TIMSK5) +volatile long timer5_toggle_count; +volatile uint8_t *timer5_pin_port; +volatile uint8_t timer5_pin_mask; +#endif + + +// MLS: This does not make sense, the 3 options are the same +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) + +#define AVAILABLE_TONE_PINS 1 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 3, 4, 5, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255, 255, 255, 255 */ }; + +#elif defined(__AVR_ATmega8__) + +#define AVAILABLE_TONE_PINS 1 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255 */ }; + +#else + +#define AVAILABLE_TONE_PINS 1 + +// Leave timer 0 to last. +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255 */ }; + +#endif + + + +static int8_t toneBegin(uint8_t _pin) +{ + int8_t _timer = -1; + + // if we're already using the pin, the timer should be configured. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + return pgm_read_byte(tone_pin_to_timer_PGM + i); + } + } + + // search for an unused timer. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == 255) { + tone_pins[i] = _pin; + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + break; + } + } + + if (_timer != -1) + { + // Set timer specific stuff + // All timers in CTC mode + // 8 bit timers will require changing prescalar values, + // whereas 16 bit timers are set to either ck/1 or ck/64 prescalar + switch (_timer) + { + #if defined(TCCR0A) && defined(TCCR0B) + case 0: + // 8 bit timer + TCCR0A = 0; + TCCR0B = 0; + bitWrite(TCCR0A, WGM01, 1); + bitWrite(TCCR0B, CS00, 1); + timer0_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer0_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR1A) && defined(TCCR1B) && defined(WGM12) + case 1: + // 16 bit timer + TCCR1A = 0; + TCCR1B = 0; + bitWrite(TCCR1B, WGM12, 1); + bitWrite(TCCR1B, CS10, 1); + timer1_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer1_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR2A) && defined(TCCR2B) + case 2: + // 8 bit timer + TCCR2A = 0; + TCCR2B = 0; + bitWrite(TCCR2A, WGM21, 1); + bitWrite(TCCR2B, CS20, 1); + timer2_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer2_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR3A) && defined(TCCR3B) && defined(TIMSK3) + case 3: + // 16 bit timer + TCCR3A = 0; + TCCR3B = 0; + bitWrite(TCCR3B, WGM32, 1); + bitWrite(TCCR3B, CS30, 1); + timer3_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer3_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR4A) && defined(TCCR4B) && defined(TIMSK4) + case 4: + // 16 bit timer + TCCR4A = 0; + TCCR4B = 0; + #if defined(WGM42) + bitWrite(TCCR4B, WGM42, 1); + #elif defined(CS43) + #warning this may not be correct + // atmega32u4 + bitWrite(TCCR4B, CS43, 1); + #endif + bitWrite(TCCR4B, CS40, 1); + timer4_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer4_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR5A) && defined(TCCR5B) && defined(TIMSK5) + case 5: + // 16 bit timer + TCCR5A = 0; + TCCR5B = 0; + bitWrite(TCCR5B, WGM52, 1); + bitWrite(TCCR5B, CS50, 1); + timer5_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer5_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + } + } + + return _timer; +} + + + +// frequency (in hertz) and duration (in milliseconds). + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration) +{ + uint8_t prescalarbits = 0b001; + long toggle_count = 0; + uint32_t ocr = 0; + int8_t _timer; + + _timer = toneBegin(_pin); + + if (_timer >= 0) + { + // Set the pinMode as OUTPUT + pinMode(_pin, OUTPUT); + + // if we are using an 8 bit timer, scan through prescalars to find the best fit + if (_timer == 0 || _timer == 2) + { + ocr = F_CPU / frequency / 2 - 1; + prescalarbits = 0b001; // ck/1: same for both timers + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 8 - 1; + prescalarbits = 0b010; // ck/8: same for both timers + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 32 - 1; + prescalarbits = 0b011; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = _timer == 0 ? 0b011 : 0b100; + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 128 - 1; + prescalarbits = 0b101; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 256 - 1; + prescalarbits = _timer == 0 ? 0b100 : 0b110; + if (ocr > 255) + { + // can't do any better than /1024 + ocr = F_CPU / frequency / 2 / 1024 - 1; + prescalarbits = _timer == 0 ? 0b101 : 0b111; + } + } + } + } + +#if defined(TCCR0B) + if (_timer == 0) + { + TCCR0B = prescalarbits; + } + else +#endif +#if defined(TCCR2B) + { + TCCR2B = prescalarbits; + } +#else + { + // dummy place holder to make the above ifdefs work + } +#endif + } + else + { + // two choices for the 16 bit timers: ck/1 or ck/64 + ocr = F_CPU / frequency / 2 - 1; + + prescalarbits = 0b001; + if (ocr > 0xffff) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = 0b011; + } + + if (_timer == 1) + { +#if defined(TCCR1B) + TCCR1B = (TCCR1B & 0b11111000) | prescalarbits; +#endif + } +#if defined(TCCR3B) + else if (_timer == 3) + TCCR3B = (TCCR3B & 0b11111000) | prescalarbits; +#endif +#if defined(TCCR4B) + else if (_timer == 4) + TCCR4B = (TCCR4B & 0b11111000) | prescalarbits; +#endif +#if defined(TCCR5B) + else if (_timer == 5) + TCCR5B = (TCCR5B & 0b11111000) | prescalarbits; +#endif + + } + + + // Calculate the toggle count + if (duration > 0) + { + toggle_count = 2 * frequency * duration / 1000; + } + else + { + toggle_count = -1; + } + + // Set the OCR for the given timer, + // set the toggle count, + // then turn on the interrupts + switch (_timer) + { + +#if defined(OCR0A) && defined(TIMSK0) && defined(OCIE0A) + case 0: + OCR0A = ocr; + timer0_toggle_count = toggle_count; + bitWrite(TIMSK0, OCIE0A, 1); + break; +#endif + + case 1: +#if defined(OCR1A) && defined(TIMSK1) && defined(OCIE1A) + OCR1A = ocr; + timer1_toggle_count = toggle_count; + bitWrite(TIMSK1, OCIE1A, 1); +#elif defined(OCR1A) && defined(TIMSK) && defined(OCIE1A) + // this combination is for at least the ATmega32 + OCR1A = ocr; + timer1_toggle_count = toggle_count; + bitWrite(TIMSK, OCIE1A, 1); +#endif + break; + +#if defined(OCR2A) && defined(TIMSK2) && defined(OCIE2A) + case 2: + OCR2A = ocr; + timer2_toggle_count = toggle_count; + bitWrite(TIMSK2, OCIE2A, 1); + break; +#endif + +#if defined(TIMSK3) + case 3: + OCR3A = ocr; + timer3_toggle_count = toggle_count; + bitWrite(TIMSK3, OCIE3A, 1); + break; +#endif + +#if defined(TIMSK4) + case 4: + OCR4A = ocr; + timer4_toggle_count = toggle_count; + bitWrite(TIMSK4, OCIE4A, 1); + break; +#endif + +#if defined(OCR5A) && defined(TIMSK5) && defined(OCIE5A) + case 5: + OCR5A = ocr; + timer5_toggle_count = toggle_count; + bitWrite(TIMSK5, OCIE5A, 1); + break; +#endif + + } + } +} + + +// XXX: this function only works properly for timer 2 (the only one we use +// currently). for the others, it should end the tone, but won't restore +// proper PWM functionality for the timer. +void disableTimer(uint8_t _timer) +{ + switch (_timer) + { + case 0: + #if defined(TIMSK0) + TIMSK0 = 0; + #elif defined(TIMSK) + TIMSK = 0; // atmega32 + #endif + break; + +#if defined(TIMSK1) && defined(OCIE1A) + case 1: + bitWrite(TIMSK1, OCIE1A, 0); + break; +#endif + + case 2: + #if defined(TIMSK2) && defined(OCIE2A) + bitWrite(TIMSK2, OCIE2A, 0); // disable interrupt + #endif + #if defined(TCCR2A) && defined(WGM20) + TCCR2A = (1 << WGM20); + #endif + #if defined(TCCR2B) && defined(CS22) + TCCR2B = (TCCR2B & 0b11111000) | (1 << CS22); + #endif + #if defined(OCR2A) + OCR2A = 0; + #endif + break; + +#if defined(TIMSK3) + case 3: + TIMSK3 = 0; + break; +#endif + +#if defined(TIMSK4) + case 4: + TIMSK4 = 0; + break; +#endif + +#if defined(TIMSK5) + case 5: + TIMSK5 = 0; + break; +#endif + } +} + + +void noTone(uint8_t _pin) +{ + int8_t _timer = -1; + + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + tone_pins[i] = 255; + } + } + + disableTimer(_timer); + + digitalWrite(_pin, 0); +} + +#if 0 +#if !defined(__AVR_ATmega8__) +ISR(TIMER0_COMPA_vect) +{ + if (timer0_toggle_count != 0) + { + // toggle the pin + *timer0_pin_port ^= timer0_pin_mask; + + if (timer0_toggle_count > 0) + timer0_toggle_count--; + } + else + { + disableTimer(0); + *timer0_pin_port &= ~(timer0_pin_mask); // keep pin low after stop + } +} +#endif + + +ISR(TIMER1_COMPA_vect) +{ + if (timer1_toggle_count != 0) + { + // toggle the pin + *timer1_pin_port ^= timer1_pin_mask; + + if (timer1_toggle_count > 0) + timer1_toggle_count--; + } + else + { + disableTimer(1); + *timer1_pin_port &= ~(timer1_pin_mask); // keep pin low after stop + } +} +#endif + + +ISR(TIMER2_COMPA_vect) +{ + + if (timer2_toggle_count != 0) + { + // toggle the pin + *timer2_pin_port ^= timer2_pin_mask; + + if (timer2_toggle_count > 0) + timer2_toggle_count--; + } + else + { + // need to call noTone() so that the tone_pins[] entry is reset, so the + // timer gets initialized next time we call tone(). + // XXX: this assumes timer 2 is always the first one used. + noTone(tone_pins[0]); +// disableTimer(2); +// *timer2_pin_port &= ~(timer2_pin_mask); // keep pin low after stop + } +} + + + +//#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#if 0 + +ISR(TIMER3_COMPA_vect) +{ + if (timer3_toggle_count != 0) + { + // toggle the pin + *timer3_pin_port ^= timer3_pin_mask; + + if (timer3_toggle_count > 0) + timer3_toggle_count--; + } + else + { + disableTimer(3); + *timer3_pin_port &= ~(timer3_pin_mask); // keep pin low after stop + } +} + +ISR(TIMER4_COMPA_vect) +{ + if (timer4_toggle_count != 0) + { + // toggle the pin + *timer4_pin_port ^= timer4_pin_mask; + + if (timer4_toggle_count > 0) + timer4_toggle_count--; + } + else + { + disableTimer(4); + *timer4_pin_port &= ~(timer4_pin_mask); // keep pin low after stop + } +} + +ISR(TIMER5_COMPA_vect) +{ + if (timer5_toggle_count != 0) + { + // toggle the pin + *timer5_pin_port ^= timer5_pin_mask; + + if (timer5_toggle_count > 0) + timer5_toggle_count--; + } + else + { + disableTimer(5); + *timer5_pin_port &= ~(timer5_pin_mask); // keep pin low after stop + } +} + +#endif diff --git a/Marlin/Sanguino/cores/arduino/WCharacter.h b/Marlin/Sanguino/cores/arduino/WCharacter.h new file mode 100644 index 000000000..79733b50a --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WCharacter.h @@ -0,0 +1,168 @@ +/* + WCharacter.h - Character utility functions for Wiring & Arduino + Copyright (c) 2010 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef Character_h +#define Character_h + +#include + +// WCharacter.h prototypes +inline boolean isAlphaNumeric(int c) __attribute__((always_inline)); +inline boolean isAlpha(int c) __attribute__((always_inline)); +inline boolean isAscii(int c) __attribute__((always_inline)); +inline boolean isWhitespace(int c) __attribute__((always_inline)); +inline boolean isControl(int c) __attribute__((always_inline)); +inline boolean isDigit(int c) __attribute__((always_inline)); +inline boolean isGraph(int c) __attribute__((always_inline)); +inline boolean isLowerCase(int c) __attribute__((always_inline)); +inline boolean isPrintable(int c) __attribute__((always_inline)); +inline boolean isPunct(int c) __attribute__((always_inline)); +inline boolean isSpace(int c) __attribute__((always_inline)); +inline boolean isUpperCase(int c) __attribute__((always_inline)); +inline boolean isHexadecimalDigit(int c) __attribute__((always_inline)); +inline int toAscii(int c) __attribute__((always_inline)); +inline int toLowerCase(int c) __attribute__((always_inline)); +inline int toUpperCase(int c)__attribute__((always_inline)); + + +// Checks for an alphanumeric character. +// It is equivalent to (isalpha(c) || isdigit(c)). +inline boolean isAlphaNumeric(int c) +{ + return ( isalnum(c) == 0 ? false : true); +} + + +// Checks for an alphabetic character. +// It is equivalent to (isupper(c) || islower(c)). +inline boolean isAlpha(int c) +{ + return ( isalpha(c) == 0 ? false : true); +} + + +// Checks whether c is a 7-bit unsigned char value +// that fits into the ASCII character set. +inline boolean isAscii(int c) +{ + return ( isascii (c) == 0 ? false : true); +} + + +// Checks for a blank character, that is, a space or a tab. +inline boolean isWhitespace(int c) +{ + return ( isblank (c) == 0 ? false : true); +} + + +// Checks for a control character. +inline boolean isControl(int c) +{ + return ( iscntrl (c) == 0 ? false : true); +} + + +// Checks for a digit (0 through 9). +inline boolean isDigit(int c) +{ + return ( isdigit (c) == 0 ? false : true); +} + + +// Checks for any printable character except space. +inline boolean isGraph(int c) +{ + return ( isgraph (c) == 0 ? false : true); +} + + +// Checks for a lower-case character. +inline boolean isLowerCase(int c) +{ + return (islower (c) == 0 ? false : true); +} + + +// Checks for any printable character including space. +inline boolean isPrintable(int c) +{ + return ( isprint (c) == 0 ? false : true); +} + + +// Checks for any printable character which is not a space +// or an alphanumeric character. +inline boolean isPunct(int c) +{ + return ( ispunct (c) == 0 ? false : true); +} + + +// Checks for white-space characters. For the avr-libc library, +// these are: space, formfeed ('\f'), newline ('\n'), carriage +// return ('\r'), horizontal tab ('\t'), and vertical tab ('\v'). +inline boolean isSpace(int c) +{ + return ( isspace (c) == 0 ? false : true); +} + + +// Checks for an uppercase letter. +inline boolean isUpperCase(int c) +{ + return ( isupper (c) == 0 ? false : true); +} + + +// Checks for a hexadecimal digits, i.e. one of 0 1 2 3 4 5 6 7 +// 8 9 a b c d e f A B C D E F. +inline boolean isHexadecimalDigit(int c) +{ + return ( isxdigit (c) == 0 ? false : true); +} + + +// Converts c to a 7-bit unsigned char value that fits into the +// ASCII character set, by clearing the high-order bits. +inline int toAscii(int c) +{ + return toascii (c); +} + + +// Warning: +// Many people will be unhappy if you use this function. +// This function will convert accented letters into random +// characters. + +// Converts the letter c to lower case, if possible. +inline int toLowerCase(int c) +{ + return tolower (c); +} + + +// Converts the letter c to upper case, if possible. +inline int toUpperCase(int c) +{ + return toupper (c); +} + +#endif \ No newline at end of file diff --git a/Marlin/Sanguino/cores/arduino/WConstants.h b/Marlin/Sanguino/cores/arduino/WConstants.h new file mode 100644 index 000000000..3e19ac44a --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WConstants.h @@ -0,0 +1 @@ +#include "wiring.h" diff --git a/Marlin/Sanguino/cores/arduino/WInterrupts.c b/Marlin/Sanguino/cores/arduino/WInterrupts.c new file mode 100644 index 000000000..3b3e0c9ec --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WInterrupts.c @@ -0,0 +1,249 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.uniandes.edu.co + + Copyright (c) 2004-05 Hernando Barragan + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 24 November 2006 by David A. Mellis + Modified 1 August 2010 by Mark Sproul +*/ + +#include +#include +#include +#include +#include + +#include "WConstants.h" +#include "wiring_private.h" + +volatile static voidFuncPtr intFunc[EXTERNAL_NUM_INTERRUPTS]; +// volatile static voidFuncPtr twiIntFunc; + +void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode) { + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) { + intFunc[interruptNum] = userFunc; + + // Configure the interrupt mode (trigger on low input, any change, rising + // edge, or falling edge). The mode constants were chosen to correspond + // to the configuration bits in the hardware register, so we simply shift + // the mode into place. + + // Enable the interrupt. + + switch (interruptNum) { +#if defined(EICRA) && defined(EICRB) && defined(EIMSK) + case 2: + EICRA = (EICRA & ~((1 << ISC00) | (1 << ISC01))) | (mode << ISC00); + EIMSK |= (1 << INT0); + break; + case 3: + EICRA = (EICRA & ~((1 << ISC10) | (1 << ISC11))) | (mode << ISC10); + EIMSK |= (1 << INT1); + break; + case 4: + EICRA = (EICRA & ~((1 << ISC20) | (1 << ISC21))) | (mode << ISC20); + EIMSK |= (1 << INT2); + break; + case 5: + EICRA = (EICRA & ~((1 << ISC30) | (1 << ISC31))) | (mode << ISC30); + EIMSK |= (1 << INT3); + break; + case 0: + EICRB = (EICRB & ~((1 << ISC40) | (1 << ISC41))) | (mode << ISC40); + EIMSK |= (1 << INT4); + break; + case 1: + EICRB = (EICRB & ~((1 << ISC50) | (1 << ISC51))) | (mode << ISC50); + EIMSK |= (1 << INT5); + break; + case 6: + EICRB = (EICRB & ~((1 << ISC60) | (1 << ISC61))) | (mode << ISC60); + EIMSK |= (1 << INT6); + break; + case 7: + EICRB = (EICRB & ~((1 << ISC70) | (1 << ISC71))) | (mode << ISC70); + EIMSK |= (1 << INT7); + break; +#else + case 0: + #if defined(EICRA) && defined(ISC00) && defined(EIMSK) + EICRA = (EICRA & ~((1 << ISC00) | (1 << ISC01))) | (mode << ISC00); + EIMSK |= (1 << INT0); + #elif defined(MCUCR) && defined(ISC00) && defined(GICR) + MCUCR = (MCUCR & ~((1 << ISC00) | (1 << ISC01))) | (mode << ISC00); + GICR |= (1 << INT0); + #elif defined(MCUCR) && defined(ISC00) && defined(GIMSK) + MCUCR = (MCUCR & ~((1 << ISC00) | (1 << ISC01))) | (mode << ISC00); + GIMSK |= (1 << INT0); + #else + #error attachInterrupt not finished for this CPU (case 0) + #endif + break; + + case 1: + #if defined(EICRA) && defined(ISC10) && defined(ISC11) && defined(EIMSK) + EICRA = (EICRA & ~((1 << ISC10) | (1 << ISC11))) | (mode << ISC10); + EIMSK |= (1 << INT1); + #elif defined(MCUCR) && defined(ISC10) && defined(ISC11) && defined(GICR) + MCUCR = (MCUCR & ~((1 << ISC10) | (1 << ISC11))) | (mode << ISC10); + GICR |= (1 << INT1); + #elif defined(MCUCR) && defined(ISC10) && defined(GIMSK) && defined(GIMSK) + MCUCR = (MCUCR & ~((1 << ISC10) | (1 << ISC11))) | (mode << ISC10); + GIMSK |= (1 << INT1); + #else + #warning attachInterrupt may need some more work for this cpu (case 1) + #endif + break; +#endif + } + } +} + +void detachInterrupt(uint8_t interruptNum) { + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) { + // Disable the interrupt. (We can't assume that interruptNum is equal + // to the number of the EIMSK bit to clear, as this isn't true on the + // ATmega8. There, INT0 is 6 and INT1 is 7.) + switch (interruptNum) { +#if defined(EICRA) && defined(EICRB) && defined(EIMSK) + case 2: + EIMSK &= ~(1 << INT0); + break; + case 3: + EIMSK &= ~(1 << INT1); + break; + case 4: + EIMSK &= ~(1 << INT2); + break; + case 5: + EIMSK &= ~(1 << INT3); + break; + case 0: + EIMSK &= ~(1 << INT4); + break; + case 1: + EIMSK &= ~(1 << INT5); + break; + case 6: + EIMSK &= ~(1 << INT6); + break; + case 7: + EIMSK &= ~(1 << INT7); + break; +#else + case 0: + #if defined(EIMSK) && defined(INT0) + EIMSK &= ~(1 << INT0); + #elif defined(GICR) && defined(ISC00) + GICR &= ~(1 << INT0); // atmega32 + #elif defined(GIMSK) && defined(INT0) + GIMSK &= ~(1 << INT0); + #else + #error detachInterrupt not finished for this cpu + #endif + break; + + case 1: + #if defined(EIMSK) && defined(INT1) + EIMSK &= ~(1 << INT1); + #elif defined(GICR) && defined(INT1) + GICR &= ~(1 << INT1); // atmega32 + #elif defined(GIMSK) && defined(INT1) + GIMSK &= ~(1 << INT1); + #else + #warning detachInterrupt may need some more work for this cpu (case 1) + #endif + break; +#endif + } + + intFunc[interruptNum] = 0; + } +} + +/* +void attachInterruptTwi(void (*userFunc)(void) ) { + twiIntFunc = userFunc; +} +*/ + +#if defined(EICRA) && defined(EICRB) + +SIGNAL(INT0_vect) { + if(intFunc[EXTERNAL_INT_2]) + intFunc[EXTERNAL_INT_2](); +} + +SIGNAL(INT1_vect) { + if(intFunc[EXTERNAL_INT_3]) + intFunc[EXTERNAL_INT_3](); +} + +SIGNAL(INT2_vect) { + if(intFunc[EXTERNAL_INT_4]) + intFunc[EXTERNAL_INT_4](); +} + +SIGNAL(INT3_vect) { + if(intFunc[EXTERNAL_INT_5]) + intFunc[EXTERNAL_INT_5](); +} + +SIGNAL(INT4_vect) { + if(intFunc[EXTERNAL_INT_0]) + intFunc[EXTERNAL_INT_0](); +} + +SIGNAL(INT5_vect) { + if(intFunc[EXTERNAL_INT_1]) + intFunc[EXTERNAL_INT_1](); +} + +SIGNAL(INT6_vect) { + if(intFunc[EXTERNAL_INT_6]) + intFunc[EXTERNAL_INT_6](); +} + +SIGNAL(INT7_vect) { + if(intFunc[EXTERNAL_INT_7]) + intFunc[EXTERNAL_INT_7](); +} + +#else + +SIGNAL(INT0_vect) { + if(intFunc[EXTERNAL_INT_0]) + intFunc[EXTERNAL_INT_0](); +} + +SIGNAL(INT1_vect) { + if(intFunc[EXTERNAL_INT_1]) + intFunc[EXTERNAL_INT_1](); +} + +#endif + +/* +SIGNAL(SIG_2WIRE_SERIAL) { + if(twiIntFunc) + twiIntFunc(); +} +*/ + diff --git a/Marlin/Sanguino/cores/arduino/WMath.cpp b/Marlin/Sanguino/cores/arduino/WMath.cpp new file mode 100644 index 000000000..2120c4cc1 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WMath.cpp @@ -0,0 +1,60 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.org.co + Copyright (c) 2004-06 Hernando Barragan + Modified 13 August 2006, David A. Mellis for Arduino - http://www.arduino.cc/ + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +extern "C" { + #include "stdlib.h" +} + +void randomSeed(unsigned int seed) +{ + if (seed != 0) { + srandom(seed); + } +} + +long random(long howbig) +{ + if (howbig == 0) { + return 0; + } + return random() % howbig; +} + +long random(long howsmall, long howbig) +{ + if (howsmall >= howbig) { + return howsmall; + } + long diff = howbig - howsmall; + return random(diff) + howsmall; +} + +long map(long x, long in_min, long in_max, long out_min, long out_max) +{ + return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; +} + +unsigned int makeWord(unsigned int w) { return w; } +unsigned int makeWord(unsigned char h, unsigned char l) { return (h << 8) | l; } \ No newline at end of file diff --git a/Marlin/Sanguino/cores/arduino/WProgram.h b/Marlin/Sanguino/cores/arduino/WProgram.h new file mode 100644 index 000000000..f73e760bb --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WProgram.h @@ -0,0 +1,63 @@ +#ifndef WProgram_h +#define WProgram_h + +#include +#include +#include + +#include + +#include "wiring.h" + +#ifdef __cplusplus +#include "WCharacter.h" +#include "WString.h" +#include "HardwareSerial.h" + +uint16_t makeWord(uint16_t w); +uint16_t makeWord(byte h, byte l); + +#define word(...) makeWord(__VA_ARGS__) + +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout = 1000000L); + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration = 0); +void noTone(uint8_t _pin); + +// WMath prototypes +long random(long); +long random(long, long); +void randomSeed(unsigned int); +long map(long, long, long, long, long); + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +const static uint8_t A0 = 54; +const static uint8_t A1 = 55; +const static uint8_t A2 = 56; +const static uint8_t A3 = 57; +const static uint8_t A4 = 58; +const static uint8_t A5 = 59; +const static uint8_t A6 = 60; +const static uint8_t A7 = 61; +const static uint8_t A8 = 62; +const static uint8_t A9 = 63; +const static uint8_t A10 = 64; +const static uint8_t A11 = 65; +const static uint8_t A12 = 66; +const static uint8_t A13 = 67; +const static uint8_t A14 = 68; +const static uint8_t A15 = 69; +#else +const static uint8_t A0 = 14; +const static uint8_t A1 = 15; +const static uint8_t A2 = 16; +const static uint8_t A3 = 17; +const static uint8_t A4 = 18; +const static uint8_t A5 = 19; +const static uint8_t A6 = 20; +const static uint8_t A7 = 21; +#endif + +#endif + +#endif \ No newline at end of file diff --git a/Marlin/Sanguino/cores/arduino/WString.cpp b/Marlin/Sanguino/cores/arduino/WString.cpp new file mode 100644 index 000000000..db5a441dc --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WString.cpp @@ -0,0 +1,443 @@ +/* + WString.cpp - String library for Wiring & Arduino + Copyright (c) 2009-10 Hernando Barragan. All rights reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include +#include "WProgram.h" +#include "WString.h" + + +String::String( const char *value ) +{ + if ( value == NULL ) + value = ""; + getBuffer( _length = strlen( value ) ); + if ( _buffer != NULL ) + strcpy( _buffer, value ); +} + +String::String( const String &value ) +{ + getBuffer( _length = value._length ); + if ( _buffer != NULL ) + strcpy( _buffer, value._buffer ); +} + +String::String( const char value ) +{ + _length = 1; + getBuffer(1); + if ( _buffer != NULL ) { + _buffer[0] = value; + _buffer[1] = 0; + } +} + +String::String( const unsigned char value ) +{ + _length = 1; + getBuffer(1); + if ( _buffer != NULL) { + _buffer[0] = value; + _buffer[1] = 0; + } +} + +String::String( const int value, const int base ) +{ + char buf[33]; + itoa((signed long)value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const unsigned int value, const int base ) +{ + char buf[33]; + ultoa((unsigned long)value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const long value, const int base ) +{ + char buf[33]; + ltoa(value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const unsigned long value, const int base ) +{ + char buf[33]; + ultoa(value, buf, 10); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +char String::charAt( unsigned int loc ) const +{ + return operator[]( loc ); +} + +void String::setCharAt( unsigned int loc, const char aChar ) +{ + if(_buffer == NULL) return; + if(_length > loc) { + _buffer[loc] = aChar; + } +} + +int String::compareTo( const String &s2 ) const +{ + return strcmp( _buffer, s2._buffer ); +} + +const String & String::concat( const String &s2 ) +{ + return (*this) += s2; +} + +const String & String::operator=( const String &rhs ) +{ + if ( this == &rhs ) + return *this; + + if ( rhs._length > _length ) + { + free(_buffer); + getBuffer( rhs._length ); + } + + if ( _buffer != NULL ) { + _length = rhs._length; + strcpy( _buffer, rhs._buffer ); + } + return *this; +} + +//const String & String::operator+=( const char aChar ) +//{ +// if ( _length == _capacity ) +// doubleBuffer(); +// +// _buffer[ _length++ ] = aChar; +// _buffer[ _length ] = '\0'; +// return *this; +//} + +const String & String::operator+=( const String &other ) +{ + _length += other._length; + if ( _length > _capacity ) + { + char *temp = (char *)realloc(_buffer, _length + 1); + if ( temp != NULL ) { + _buffer = temp; + _capacity = _length; + } else { + _length -= other._length; + return *this; + } + } + strcat( _buffer, other._buffer ); + return *this; +} + + +int String::operator==( const String &rhs ) const +{ + return ( _length == rhs._length && strcmp( _buffer, rhs._buffer ) == 0 ); +} + +int String::operator!=( const String &rhs ) const +{ + return ( _length != rhs.length() || strcmp( _buffer, rhs._buffer ) != 0 ); +} + +int String::operator<( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) < 0; +} + +int String::operator>( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) > 0; +} + +int String::operator<=( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) <= 0; +} + +int String::operator>=( const String & rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) >= 0; +} + +char & String::operator[]( unsigned int index ) +{ + static char dummy_writable_char; + if (index >= _length || !_buffer) { + dummy_writable_char = 0; + return dummy_writable_char; + } + return _buffer[ index ]; +} + +char String::operator[]( unsigned int index ) const +{ + // need to check for valid index, to do later + return _buffer[ index ]; +} + +boolean String::endsWith( const String &s2 ) const +{ + if ( _length < s2._length ) + return 0; + + return strcmp( &_buffer[ _length - s2._length], s2._buffer ) == 0; +} + +boolean String::equals( const String &s2 ) const +{ + return ( _length == s2._length && strcmp( _buffer,s2._buffer ) == 0 ); +} + +boolean String::equalsIgnoreCase( const String &s2 ) const +{ + if ( this == &s2 ) + return true; //1; + else if ( _length != s2._length ) + return false; //0; + + return strcmp(toLowerCase()._buffer, s2.toLowerCase()._buffer) == 0; +} + +String String::replace( char findChar, char replaceChar ) +{ + if ( _buffer == NULL ) return *this; + String theReturn = _buffer; + char* temp = theReturn._buffer; + while( (temp = strchr( temp, findChar )) != 0 ) + *temp = replaceChar; + + return theReturn; +} + +String String::replace( const String& match, const String& replace ) +{ + if ( _buffer == NULL ) return *this; + String temp = _buffer, newString; + + int loc; + while ( (loc = temp.indexOf( match )) != -1 ) + { + newString += temp.substring( 0, loc ); + newString += replace; + temp = temp.substring( loc + match._length ); + } + newString += temp; + return newString; +} + +int String::indexOf( char temp ) const +{ + return indexOf( temp, 0 ); +} + +int String::indexOf( char ch, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + const char* temp = strchr( &_buffer[fromIndex], ch ); + if ( temp == NULL ) + return -1; + + return temp - _buffer; +} + +int String::indexOf( const String &s2 ) const +{ + return indexOf( s2, 0 ); +} + +int String::indexOf( const String &s2, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + const char *theFind = strstr( &_buffer[ fromIndex ], s2._buffer ); + + if ( theFind == NULL ) + return -1; + + return theFind - _buffer; // pointer subtraction +} + +int String::lastIndexOf( char theChar ) const +{ + return lastIndexOf( theChar, _length - 1 ); +} + +int String::lastIndexOf( char ch, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + char tempchar = _buffer[fromIndex + 1]; + _buffer[fromIndex + 1] = '\0'; + char* temp = strrchr( _buffer, ch ); + _buffer[fromIndex + 1] = tempchar; + + if ( temp == NULL ) + return -1; + + return temp - _buffer; +} + +int String::lastIndexOf( const String &s2 ) const +{ + return lastIndexOf( s2, _length - s2._length ); +} + +int String::lastIndexOf( const String &s2, unsigned int fromIndex ) const +{ + // check for empty strings + if ( s2._length == 0 || s2._length - 1 > fromIndex || fromIndex >= _length ) + return -1; + + // matching first character + char temp = s2[ 0 ]; + + for ( int i = fromIndex; i >= 0; i-- ) + { + if ( _buffer[ i ] == temp && (*this).substring( i, i + s2._length ).equals( s2 ) ) + return i; + } + return -1; +} + +boolean String::startsWith( const String &s2 ) const +{ + if ( _length < s2._length ) + return 0; + + return startsWith( s2, 0 ); +} + +boolean String::startsWith( const String &s2, unsigned int offset ) const +{ + if ( offset > _length - s2._length ) + return 0; + + return strncmp( &_buffer[offset], s2._buffer, s2._length ) == 0; +} + +String String::substring( unsigned int left ) const +{ + return substring( left, _length ); +} + +String String::substring( unsigned int left, unsigned int right ) const +{ + if ( left > right ) + { + int temp = right; + right = left; + left = temp; + } + + if ( right > _length ) + { + right = _length; + } + + char temp = _buffer[ right ]; // save the replaced character + _buffer[ right ] = '\0'; + String outPut = ( _buffer + left ); // pointer arithmetic + _buffer[ right ] = temp; //restore character + return outPut; +} + +String String::toLowerCase() const +{ + String temp = _buffer; + + for ( unsigned int i = 0; i < _length; i++ ) + temp._buffer[ i ] = (char)tolower( temp._buffer[ i ] ); + return temp; +} + +String String::toUpperCase() const +{ + String temp = _buffer; + + for ( unsigned int i = 0; i < _length; i++ ) + temp._buffer[ i ] = (char)toupper( temp._buffer[ i ] ); + return temp; +} + +String String::trim() const +{ + if ( _buffer == NULL ) return *this; + String temp = _buffer; + unsigned int i,j; + + for ( i = 0; i < _length; i++ ) + { + if ( !isspace(_buffer[i]) ) + break; + } + + for ( j = temp._length - 1; j > i; j-- ) + { + if ( !isspace(_buffer[j]) ) + break; + } + + return temp.substring( i, j + 1); +} + +void String::getBytes(unsigned char *buf, unsigned int bufsize) +{ + if (!bufsize || !buf) return; + unsigned int len = bufsize - 1; + if (len > _length) len = _length; + strncpy((char *)buf, _buffer, len); + buf[len] = 0; +} + +void String::toCharArray(char *buf, unsigned int bufsize) +{ + if (!bufsize || !buf) return; + unsigned int len = bufsize - 1; + if (len > _length) len = _length; + strncpy(buf, _buffer, len); + buf[len] = 0; +} + + +long String::toInt() { + return atol(_buffer); +} diff --git a/Marlin/Sanguino/cores/arduino/WString.h b/Marlin/Sanguino/cores/arduino/WString.h new file mode 100644 index 000000000..cadddb947 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/WString.h @@ -0,0 +1,112 @@ +/* + WString.h - String library for Wiring & Arduino + Copyright (c) 2009-10 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef String_h +#define String_h + +//#include "WProgram.h" +#include +#include +#include + +class String +{ + public: + // constructors + String( const char *value = "" ); + String( const String &value ); + String( const char ); + String( const unsigned char ); + String( const int, const int base=10); + String( const unsigned int, const int base=10 ); + String( const long, const int base=10 ); + String( const unsigned long, const int base=10 ); + ~String() { free(_buffer); _length = _capacity = 0;} //added _length = _capacity = 0; + + // operators + const String & operator = ( const String &rhs ); + const String & operator +=( const String &rhs ); + //const String & operator +=( const char ); + int operator ==( const String &rhs ) const; + int operator !=( const String &rhs ) const; + int operator < ( const String &rhs ) const; + int operator > ( const String &rhs ) const; + int operator <=( const String &rhs ) const; + int operator >=( const String &rhs ) const; + char operator []( unsigned int index ) const; + char& operator []( unsigned int index ); + //operator const char *() const { return _buffer; } + + // general methods + char charAt( unsigned int index ) const; + int compareTo( const String &anotherString ) const; + unsigned char endsWith( const String &suffix ) const; + unsigned char equals( const String &anObject ) const; + unsigned char equalsIgnoreCase( const String &anotherString ) const; + int indexOf( char ch ) const; + int indexOf( char ch, unsigned int fromIndex ) const; + int indexOf( const String &str ) const; + int indexOf( const String &str, unsigned int fromIndex ) const; + int lastIndexOf( char ch ) const; + int lastIndexOf( char ch, unsigned int fromIndex ) const; + int lastIndexOf( const String &str ) const; + int lastIndexOf( const String &str, unsigned int fromIndex ) const; + const unsigned int length( ) const { return _length; } + void setCharAt(unsigned int index, const char ch); + unsigned char startsWith( const String &prefix ) const; + unsigned char startsWith( const String &prefix, unsigned int toffset ) const; + String substring( unsigned int beginIndex ) const; + String substring( unsigned int beginIndex, unsigned int endIndex ) const; + String toLowerCase( ) const; + String toUpperCase( ) const; + String trim( ) const; + void getBytes(unsigned char *buf, unsigned int bufsize); + void toCharArray(char *buf, unsigned int bufsize); + long toInt( ); + const String& concat( const String &str ); + String replace( char oldChar, char newChar ); + String replace( const String& match, const String& replace ); + friend String operator + ( String lhs, const String &rhs ); + + protected: + char *_buffer; // the actual char array + unsigned int _capacity; // the array length minus one (for the '\0') + unsigned int _length; // the String length (not counting the '\0') + + void getBuffer(unsigned int maxStrLen); + + private: + +}; + +// allocate buffer space +inline void String::getBuffer(unsigned int maxStrLen) +{ + _capacity = maxStrLen; + _buffer = (char *) malloc(_capacity + 1); + if (_buffer == NULL) _length = _capacity = 0; +} + +inline String operator+( String lhs, const String &rhs ) +{ + return lhs += rhs; +} + + +#endif diff --git a/Marlin/Sanguino/cores/arduino/binary.h b/Marlin/Sanguino/cores/arduino/binary.h new file mode 100644 index 000000000..af1498033 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/binary.h @@ -0,0 +1,515 @@ +#ifndef Binary_h +#define Binary_h + +#define B0 0 +#define B00 0 +#define B000 0 +#define B0000 0 +#define B00000 0 +#define B000000 0 +#define B0000000 0 +#define B00000000 0 +#define B1 1 +#define B01 1 +#define B001 1 +#define B0001 1 +#define B00001 1 +#define B000001 1 +#define B0000001 1 +#define B00000001 1 +#define B10 2 +#define B010 2 +#define B0010 2 +#define B00010 2 +#define B000010 2 +#define B0000010 2 +#define B00000010 2 +#define B11 3 +#define B011 3 +#define B0011 3 +#define B00011 3 +#define B000011 3 +#define B0000011 3 +#define B00000011 3 +#define B100 4 +#define B0100 4 +#define B00100 4 +#define B000100 4 +#define B0000100 4 +#define B00000100 4 +#define B101 5 +#define B0101 5 +#define B00101 5 +#define B000101 5 +#define B0000101 5 +#define B00000101 5 +#define B110 6 +#define B0110 6 +#define B00110 6 +#define B000110 6 +#define B0000110 6 +#define B00000110 6 +#define B111 7 +#define B0111 7 +#define B00111 7 +#define B000111 7 +#define B0000111 7 +#define B00000111 7 +#define B1000 8 +#define B01000 8 +#define B001000 8 +#define B0001000 8 +#define B00001000 8 +#define B1001 9 +#define B01001 9 +#define B001001 9 +#define B0001001 9 +#define B00001001 9 +#define B1010 10 +#define B01010 10 +#define B001010 10 +#define B0001010 10 +#define B00001010 10 +#define B1011 11 +#define B01011 11 +#define B001011 11 +#define B0001011 11 +#define B00001011 11 +#define B1100 12 +#define B01100 12 +#define B001100 12 +#define B0001100 12 +#define B00001100 12 +#define B1101 13 +#define B01101 13 +#define B001101 13 +#define B0001101 13 +#define B00001101 13 +#define B1110 14 +#define B01110 14 +#define B001110 14 +#define B0001110 14 +#define B00001110 14 +#define B1111 15 +#define B01111 15 +#define B001111 15 +#define B0001111 15 +#define B00001111 15 +#define B10000 16 +#define B010000 16 +#define B0010000 16 +#define B00010000 16 +#define B10001 17 +#define B010001 17 +#define B0010001 17 +#define B00010001 17 +#define B10010 18 +#define B010010 18 +#define B0010010 18 +#define B00010010 18 +#define B10011 19 +#define B010011 19 +#define B0010011 19 +#define B00010011 19 +#define B10100 20 +#define B010100 20 +#define B0010100 20 +#define B00010100 20 +#define B10101 21 +#define B010101 21 +#define B0010101 21 +#define B00010101 21 +#define B10110 22 +#define B010110 22 +#define B0010110 22 +#define B00010110 22 +#define B10111 23 +#define B010111 23 +#define B0010111 23 +#define B00010111 23 +#define B11000 24 +#define B011000 24 +#define B0011000 24 +#define B00011000 24 +#define B11001 25 +#define B011001 25 +#define B0011001 25 +#define B00011001 25 +#define B11010 26 +#define B011010 26 +#define B0011010 26 +#define B00011010 26 +#define B11011 27 +#define B011011 27 +#define B0011011 27 +#define B00011011 27 +#define B11100 28 +#define B011100 28 +#define B0011100 28 +#define B00011100 28 +#define B11101 29 +#define B011101 29 +#define B0011101 29 +#define B00011101 29 +#define B11110 30 +#define B011110 30 +#define B0011110 30 +#define B00011110 30 +#define B11111 31 +#define B011111 31 +#define B0011111 31 +#define B00011111 31 +#define B100000 32 +#define B0100000 32 +#define B00100000 32 +#define B100001 33 +#define B0100001 33 +#define B00100001 33 +#define B100010 34 +#define B0100010 34 +#define B00100010 34 +#define B100011 35 +#define B0100011 35 +#define B00100011 35 +#define B100100 36 +#define B0100100 36 +#define B00100100 36 +#define B100101 37 +#define B0100101 37 +#define B00100101 37 +#define B100110 38 +#define B0100110 38 +#define B00100110 38 +#define B100111 39 +#define B0100111 39 +#define B00100111 39 +#define B101000 40 +#define B0101000 40 +#define B00101000 40 +#define B101001 41 +#define B0101001 41 +#define B00101001 41 +#define B101010 42 +#define B0101010 42 +#define B00101010 42 +#define B101011 43 +#define B0101011 43 +#define B00101011 43 +#define B101100 44 +#define B0101100 44 +#define B00101100 44 +#define B101101 45 +#define B0101101 45 +#define B00101101 45 +#define B101110 46 +#define B0101110 46 +#define B00101110 46 +#define B101111 47 +#define B0101111 47 +#define B00101111 47 +#define B110000 48 +#define B0110000 48 +#define B00110000 48 +#define B110001 49 +#define B0110001 49 +#define B00110001 49 +#define B110010 50 +#define B0110010 50 +#define B00110010 50 +#define B110011 51 +#define B0110011 51 +#define B00110011 51 +#define B110100 52 +#define B0110100 52 +#define B00110100 52 +#define B110101 53 +#define B0110101 53 +#define B00110101 53 +#define B110110 54 +#define B0110110 54 +#define B00110110 54 +#define B110111 55 +#define B0110111 55 +#define B00110111 55 +#define B111000 56 +#define B0111000 56 +#define B00111000 56 +#define B111001 57 +#define B0111001 57 +#define B00111001 57 +#define B111010 58 +#define B0111010 58 +#define B00111010 58 +#define B111011 59 +#define B0111011 59 +#define B00111011 59 +#define B111100 60 +#define B0111100 60 +#define B00111100 60 +#define B111101 61 +#define B0111101 61 +#define B00111101 61 +#define B111110 62 +#define B0111110 62 +#define B00111110 62 +#define B111111 63 +#define B0111111 63 +#define B00111111 63 +#define B1000000 64 +#define B01000000 64 +#define B1000001 65 +#define B01000001 65 +#define B1000010 66 +#define B01000010 66 +#define B1000011 67 +#define B01000011 67 +#define B1000100 68 +#define B01000100 68 +#define B1000101 69 +#define B01000101 69 +#define B1000110 70 +#define B01000110 70 +#define B1000111 71 +#define B01000111 71 +#define B1001000 72 +#define B01001000 72 +#define B1001001 73 +#define B01001001 73 +#define B1001010 74 +#define B01001010 74 +#define B1001011 75 +#define B01001011 75 +#define B1001100 76 +#define B01001100 76 +#define B1001101 77 +#define B01001101 77 +#define B1001110 78 +#define B01001110 78 +#define B1001111 79 +#define B01001111 79 +#define B1010000 80 +#define B01010000 80 +#define B1010001 81 +#define B01010001 81 +#define B1010010 82 +#define B01010010 82 +#define B1010011 83 +#define B01010011 83 +#define B1010100 84 +#define B01010100 84 +#define B1010101 85 +#define B01010101 85 +#define B1010110 86 +#define B01010110 86 +#define B1010111 87 +#define B01010111 87 +#define B1011000 88 +#define B01011000 88 +#define B1011001 89 +#define B01011001 89 +#define B1011010 90 +#define B01011010 90 +#define B1011011 91 +#define B01011011 91 +#define B1011100 92 +#define B01011100 92 +#define B1011101 93 +#define B01011101 93 +#define B1011110 94 +#define B01011110 94 +#define B1011111 95 +#define B01011111 95 +#define B1100000 96 +#define B01100000 96 +#define B1100001 97 +#define B01100001 97 +#define B1100010 98 +#define B01100010 98 +#define B1100011 99 +#define B01100011 99 +#define B1100100 100 +#define B01100100 100 +#define B1100101 101 +#define B01100101 101 +#define B1100110 102 +#define B01100110 102 +#define B1100111 103 +#define B01100111 103 +#define B1101000 104 +#define B01101000 104 +#define B1101001 105 +#define B01101001 105 +#define B1101010 106 +#define B01101010 106 +#define B1101011 107 +#define B01101011 107 +#define B1101100 108 +#define B01101100 108 +#define B1101101 109 +#define B01101101 109 +#define B1101110 110 +#define B01101110 110 +#define B1101111 111 +#define B01101111 111 +#define B1110000 112 +#define B01110000 112 +#define B1110001 113 +#define B01110001 113 +#define B1110010 114 +#define B01110010 114 +#define B1110011 115 +#define B01110011 115 +#define B1110100 116 +#define B01110100 116 +#define B1110101 117 +#define B01110101 117 +#define B1110110 118 +#define B01110110 118 +#define B1110111 119 +#define B01110111 119 +#define B1111000 120 +#define B01111000 120 +#define B1111001 121 +#define B01111001 121 +#define B1111010 122 +#define B01111010 122 +#define B1111011 123 +#define B01111011 123 +#define B1111100 124 +#define B01111100 124 +#define B1111101 125 +#define B01111101 125 +#define B1111110 126 +#define B01111110 126 +#define B1111111 127 +#define B01111111 127 +#define B10000000 128 +#define B10000001 129 +#define B10000010 130 +#define B10000011 131 +#define B10000100 132 +#define B10000101 133 +#define B10000110 134 +#define B10000111 135 +#define B10001000 136 +#define B10001001 137 +#define B10001010 138 +#define B10001011 139 +#define B10001100 140 +#define B10001101 141 +#define B10001110 142 +#define B10001111 143 +#define B10010000 144 +#define B10010001 145 +#define B10010010 146 +#define B10010011 147 +#define B10010100 148 +#define B10010101 149 +#define B10010110 150 +#define B10010111 151 +#define B10011000 152 +#define B10011001 153 +#define B10011010 154 +#define B10011011 155 +#define B10011100 156 +#define B10011101 157 +#define B10011110 158 +#define B10011111 159 +#define B10100000 160 +#define B10100001 161 +#define B10100010 162 +#define B10100011 163 +#define B10100100 164 +#define B10100101 165 +#define B10100110 166 +#define B10100111 167 +#define B10101000 168 +#define B10101001 169 +#define B10101010 170 +#define B10101011 171 +#define B10101100 172 +#define B10101101 173 +#define B10101110 174 +#define B10101111 175 +#define B10110000 176 +#define B10110001 177 +#define B10110010 178 +#define B10110011 179 +#define B10110100 180 +#define B10110101 181 +#define B10110110 182 +#define B10110111 183 +#define B10111000 184 +#define B10111001 185 +#define B10111010 186 +#define B10111011 187 +#define B10111100 188 +#define B10111101 189 +#define B10111110 190 +#define B10111111 191 +#define B11000000 192 +#define B11000001 193 +#define B11000010 194 +#define B11000011 195 +#define B11000100 196 +#define B11000101 197 +#define B11000110 198 +#define B11000111 199 +#define B11001000 200 +#define B11001001 201 +#define B11001010 202 +#define B11001011 203 +#define B11001100 204 +#define B11001101 205 +#define B11001110 206 +#define B11001111 207 +#define B11010000 208 +#define B11010001 209 +#define B11010010 210 +#define B11010011 211 +#define B11010100 212 +#define B11010101 213 +#define B11010110 214 +#define B11010111 215 +#define B11011000 216 +#define B11011001 217 +#define B11011010 218 +#define B11011011 219 +#define B11011100 220 +#define B11011101 221 +#define B11011110 222 +#define B11011111 223 +#define B11100000 224 +#define B11100001 225 +#define B11100010 226 +#define B11100011 227 +#define B11100100 228 +#define B11100101 229 +#define B11100110 230 +#define B11100111 231 +#define B11101000 232 +#define B11101001 233 +#define B11101010 234 +#define B11101011 235 +#define B11101100 236 +#define B11101101 237 +#define B11101110 238 +#define B11101111 239 +#define B11110000 240 +#define B11110001 241 +#define B11110010 242 +#define B11110011 243 +#define B11110100 244 +#define B11110101 245 +#define B11110110 246 +#define B11110111 247 +#define B11111000 248 +#define B11111001 249 +#define B11111010 250 +#define B11111011 251 +#define B11111100 252 +#define B11111101 253 +#define B11111110 254 +#define B11111111 255 + +#endif diff --git a/Marlin/Sanguino/cores/arduino/main.cpp b/Marlin/Sanguino/cores/arduino/main.cpp new file mode 100644 index 000000000..cc6e81d90 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/main.cpp @@ -0,0 +1,14 @@ +#include + +int main(void) +{ + init(); + + setup(); + + for (;;) + loop(); + + return 0; +} + diff --git a/Marlin/Sanguino/cores/arduino/pins_arduino.c b/Marlin/Sanguino/cores/arduino/pins_arduino.c new file mode 100644 index 000000000..ccb88fe98 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/pins_arduino.c @@ -0,0 +1,200 @@ +/* + pins_arduino.c - pin definitions for the Arduino board + Part of Arduino / Wiring Lite + + Copyright (c) 2005 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: pins_arduino.c 254 2007-04-20 23:17:38Z mellis $ +*/ + +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +// On the Sanguino board, digital pins are also used +// for the analog output (software PWM). Analog input +// pins are a separate set. + +// ATMEL ATMEGA644P / SANGUINO +// +// +---\/---+ +// INT0 (D 0) PB0 1| |40 PA0 (AI 0 / D31) +// INT1 (D 1) PB1 2| |39 PA1 (AI 1 / D30) +// INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +// PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +// PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +// MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +// MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +// SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +// RST 9| |32 AREF +// VCC 10| |31 GND +// GND 11| |30 AVCC +// XTAL2 12| |29 PC7 (D 23) +// XTAL1 13| |28 PC6 (D 22) +// RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +// TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +// RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +// TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +// PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +// PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +// PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +// +--------+ +// + +#define PA 1 +#define PB 2 +#define PC 3 +#define PD 4 + +// these arrays map port names (e.g. port B) to the +// appropriate addresses for various functions (e.g. reading +// and writing) +const uint8_t PROGMEM port_to_mode_PGM[] = +{ + NOT_A_PORT, + &DDRA, + &DDRB, + &DDRC, + &DDRD, +}; + +const uint8_t PROGMEM port_to_output_PGM[] = +{ + NOT_A_PORT, + &PORTA, + &PORTB, + &PORTC, + &PORTD, +}; + +const uint8_t PROGMEM port_to_input_PGM[] = +{ + NOT_A_PORT, + &PINA, + &PINB, + &PINC, + &PIND, +}; + +const uint8_t PROGMEM digital_pin_to_port_PGM[] = +{ + PB, /* 0 */ + PB, + PB, + PB, + PB, + PB, + PB, + PB, + PD, /* 8 */ + PD, + PD, + PD, + PD, + PD, + PD, + PD, + PC, /* 16 */ + PC, + PC, + PC, + PC, + PC, + PC, + PC, + PA, /* 24 */ + PA, + PA, + PA, + PA, + PA, + PA, + PA /* 31 */ +}; + +const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = +{ + _BV(0), /* 0, port B */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(0), /* 8, port D */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(0), /* 16, port C */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(7), /* 24, port A */ + _BV(6), + _BV(5), + _BV(4), + _BV(3), + _BV(2), + _BV(1), + _BV(0) +}; + +const uint8_t PROGMEM digital_pin_to_timer_PGM[] = +{ + NOT_ON_TIMER, /* 0 - PB0 */ + NOT_ON_TIMER, /* 1 - PB1 */ + NOT_ON_TIMER, /* 2 - PB2 */ + TIMER0A, /* 3 - PB3 */ + TIMER0B, /* 4 - PB4 */ + NOT_ON_TIMER, /* 5 - PB5 */ + NOT_ON_TIMER, /* 6 - PB6 */ + NOT_ON_TIMER, /* 7 - PB7 */ + NOT_ON_TIMER, /* 8 - PD0 */ + NOT_ON_TIMER, /* 9 - PD1 */ + NOT_ON_TIMER, /* 10 - PD2 */ + NOT_ON_TIMER, /* 11 - PD3 */ + TIMER1B, /* 12 - PD4 */ + TIMER1A, /* 13 - PD5 */ + TIMER2B, /* 14 - PD6 */ + TIMER2A, /* 15 - PD7 */ + NOT_ON_TIMER, /* 16 - PC0 */ + NOT_ON_TIMER, /* 17 - PC1 */ + NOT_ON_TIMER, /* 18 - PC2 */ + NOT_ON_TIMER, /* 19 - PC3 */ + NOT_ON_TIMER, /* 20 - PC4 */ + NOT_ON_TIMER, /* 21 - PC5 */ + NOT_ON_TIMER, /* 22 - PC6 */ + NOT_ON_TIMER, /* 23 - PC7 */ + NOT_ON_TIMER, /* 24 - PA0 */ + NOT_ON_TIMER, /* 25 - PA1 */ + NOT_ON_TIMER, /* 26 - PA2 */ + NOT_ON_TIMER, /* 27 - PA3 */ + NOT_ON_TIMER, /* 28 - PA4 */ + NOT_ON_TIMER, /* 29 - PA5 */ + NOT_ON_TIMER, /* 30 - PA6 */ + NOT_ON_TIMER /* 31 - PA7 */ +}; diff --git a/Marlin/Sanguino/cores/arduino/pins_arduino.h b/Marlin/Sanguino/cores/arduino/pins_arduino.h new file mode 100644 index 000000000..e0b7add86 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/pins_arduino.h @@ -0,0 +1,65 @@ +/* + pins_arduino.h - Pin definition functions for Arduino + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2007 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 249 2007-02-03 16:52:51Z mellis $ +*/ + +#ifndef Pins_Arduino_h +#define Pins_Arduino_h + +#include + +#define NOT_A_PIN 0 +#define NOT_A_PORT 0 + +#define NOT_ON_TIMER 0 +#define TIMER0A 1 +#define TIMER0B 2 +#define TIMER1A 3 +#define TIMER1B 4 +#define TIMER2 5 +#define TIMER2A 6 +#define TIMER2B 7 + +extern const uint8_t PROGMEM port_to_mode_PGM[]; +extern const uint8_t PROGMEM port_to_input_PGM[]; +extern const uint8_t PROGMEM port_to_output_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_port_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; + +// Get the bit location within the hardware port of the given virtual pin. +// This comes from the pins_*.c file for the active board configuration. +// +// These perform slightly better as macros compared to inline functions +// +#define digitalPinToPort(P) ( pgm_read_byte( digital_pin_to_port_PGM + (P) ) ) +#define digitalPinToBitMask(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM + (P) ) ) +#define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) ) +#define analogInPinToBit(P) (P) +#define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) ) +#define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) ) +#define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_mode_PGM + (P))) ) + +#endif diff --git a/Marlin/Sanguino/cores/arduino/wiring.c b/Marlin/Sanguino/cores/arduino/wiring.c new file mode 100644 index 000000000..b90d07e59 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring.c @@ -0,0 +1,289 @@ +/* + wiring.c - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#include "wiring_private.h" + +// the prescaler is set so that timer0 ticks every 64 clock cycles, and the +// the overflow handler is called every 256 ticks. +#define MICROSECONDS_PER_TIMER0_OVERFLOW (clockCyclesToMicroseconds(64 * 256)) + +// the whole number of milliseconds per timer0 overflow +#define MILLIS_INC (MICROSECONDS_PER_TIMER0_OVERFLOW / 1000) + +// the fractional number of milliseconds per timer0 overflow. we shift right +// by three to fit these numbers into a byte. (for the clock speeds we care +// about - 8 and 16 MHz - this doesn't lose precision.) +#define FRACT_INC ((MICROSECONDS_PER_TIMER0_OVERFLOW % 1000) >> 3) +#define FRACT_MAX (1000 >> 3) + +volatile unsigned long timer0_overflow_count = 0; +volatile unsigned long timer0_millis = 0; +static unsigned char timer0_fract = 0; + +SIGNAL(TIMER0_OVF_vect) +{ + // copy these to local variables so they can be stored in registers + // (volatile variables must be read from memory on every access) + unsigned long m = timer0_millis; + unsigned char f = timer0_fract; + + m += MILLIS_INC; + f += FRACT_INC; + if (f >= FRACT_MAX) { + f -= FRACT_MAX; + m += 1; + } + + timer0_fract = f; + timer0_millis = m; + timer0_overflow_count++; +} + +unsigned long millis() +{ + unsigned long m; + uint8_t oldSREG = SREG; + + // disable interrupts while we read timer0_millis or we might get an + // inconsistent value (e.g. in the middle of a write to timer0_millis) + cli(); + m = timer0_millis; + SREG = oldSREG; + + return m; +} + +unsigned long micros() { + unsigned long m; + uint8_t oldSREG = SREG, t; + + cli(); + m = timer0_overflow_count; +#if defined(TCNT0) + t = TCNT0; +#elif defined(TCNT0L) + t = TCNT0L; +#else + #error TIMER 0 not defined +#endif + + +#ifdef TIFR0 + if ((TIFR0 & _BV(TOV0)) && (t < 255)) + m++; +#else + if ((TIFR & _BV(TOV0)) && (t < 255)) + m++; +#endif + + SREG = oldSREG; + + return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond()); +} + +void delay(unsigned long ms) +{ + uint16_t start = (uint16_t)micros(); + + while (ms > 0) { + if (((uint16_t)micros() - start) >= 1000) { + ms--; + start += 1000; + } + } +} + +/* Delay for the given number of microseconds. Assumes a 8 or 16 MHz clock. */ +void delayMicroseconds(unsigned int us) +{ + // calling avrlib's delay_us() function with low values (e.g. 1 or + // 2 microseconds) gives delays longer than desired. + //delay_us(us); + +#if F_CPU >= 16000000L + // for the 16 MHz clock on most Arduino boards + + // for a one-microsecond delay, simply return. the overhead + // of the function call yields a delay of approximately 1 1/8 us. + if (--us == 0) + return; + + // the following loop takes a quarter of a microsecond (4 cycles) + // per iteration, so execute it four times for each microsecond of + // delay requested. + us <<= 2; + + // account for the time taken in the preceeding commands. + us -= 2; +#else + // for the 8 MHz internal clock on the ATmega168 + + // for a one- or two-microsecond delay, simply return. the overhead of + // the function calls takes more than two microseconds. can't just + // subtract two, since us is unsigned; we'd overflow. + if (--us == 0) + return; + if (--us == 0) + return; + + // the following loop takes half of a microsecond (4 cycles) + // per iteration, so execute it twice for each microsecond of + // delay requested. + us <<= 1; + + // partially compensate for the time taken by the preceeding commands. + // we can't subtract any more than this or we'd overflow w/ small delays. + us--; +#endif + + // busy wait + __asm__ __volatile__ ( + "1: sbiw %0,1" "\n\t" // 2 cycles + "brne 1b" : "=w" (us) : "0" (us) // 2 cycles + ); +} + +void init() +{ + // this needs to be called before setup() or some functions won't + // work there + sei(); + + // on the ATmega168, timer 0 is also used for fast hardware pwm + // (using phase-correct PWM would mean that timer 0 overflowed half as often + // resulting in different millis() behavior on the ATmega8 and ATmega168) +#if defined(TCCR0A) && defined(WGM01) + sbi(TCCR0A, WGM01); + sbi(TCCR0A, WGM00); +#endif + + // set timer 0 prescale factor to 64 +#if defined(__AVR_ATmega128__) + // CPU specific: different values for the ATmega128 + sbi(TCCR0, CS02); +#elif defined(TCCR0) && defined(CS01) && defined(CS00) + // this combination is for the standard atmega8 + sbi(TCCR0, CS01); + sbi(TCCR0, CS00); +#elif defined(TCCR0B) && defined(CS01) && defined(CS00) + // this combination is for the standard 168/328/1280/2560 + sbi(TCCR0B, CS01); + sbi(TCCR0B, CS00); +#elif defined(TCCR0A) && defined(CS01) && defined(CS00) + // this combination is for the __AVR_ATmega645__ series + sbi(TCCR0A, CS01); + sbi(TCCR0A, CS00); +#else + #error Timer 0 prescale factor 64 not set correctly +#endif + + // enable timer 0 overflow interrupt +#if defined(TIMSK) && defined(TOIE0) + sbi(TIMSK, TOIE0); +#elif defined(TIMSK0) && defined(TOIE0) + sbi(TIMSK0, TOIE0); +#else + #error Timer 0 overflow interrupt not set correctly +#endif + + // timers 1 and 2 are used for phase-correct hardware pwm + // this is better for motors as it ensures an even waveform + // note, however, that fast pwm mode can achieve a frequency of up + // 8 MHz (with a 16 MHz clock) at 50% duty cycle + + TCCR1B = 0; + + // set timer 1 prescale factor to 64 +#if defined(TCCR1B) && defined(CS11) && defined(CS10) + sbi(TCCR1B, CS11); + sbi(TCCR1B, CS10); +#elif defined(TCCR1) && defined(CS11) && defined(CS10) + sbi(TCCR1, CS11); + sbi(TCCR1, CS10); +#endif + // put timer 1 in 8-bit phase correct pwm mode +#if defined(TCCR1A) && defined(WGM10) + sbi(TCCR1A, WGM10); +#elif defined(TCCR1) + #warning this needs to be finished +#endif + + // set timer 2 prescale factor to 64 +#if defined(TCCR2) && defined(CS22) + sbi(TCCR2, CS22); +#elif defined(TCCR2B) && defined(CS22) + sbi(TCCR2B, CS22); +#else + #warning Timer 2 not finished (may not be present on this CPU) +#endif + + // configure timer 2 for phase correct pwm (8-bit) +#if defined(TCCR2) && defined(WGM20) + sbi(TCCR2, WGM20); +#elif defined(TCCR2A) && defined(WGM20) + sbi(TCCR2A, WGM20); +#else + #warning Timer 2 not finished (may not be present on this CPU) +#endif + +#if defined(TCCR3B) && defined(CS31) && defined(WGM30) + sbi(TCCR3B, CS31); // set timer 3 prescale factor to 64 + sbi(TCCR3B, CS30); + sbi(TCCR3A, WGM30); // put timer 3 in 8-bit phase correct pwm mode +#endif + +#if defined(TCCR4B) && defined(CS41) && defined(WGM40) + sbi(TCCR4B, CS41); // set timer 4 prescale factor to 64 + sbi(TCCR4B, CS40); + sbi(TCCR4A, WGM40); // put timer 4 in 8-bit phase correct pwm mode +#endif + +#if defined(TCCR5B) && defined(CS51) && defined(WGM50) + sbi(TCCR5B, CS51); // set timer 5 prescale factor to 64 + sbi(TCCR5B, CS50); + sbi(TCCR5A, WGM50); // put timer 5 in 8-bit phase correct pwm mode +#endif + +#if defined(ADCSRA) + // set a2d prescale factor to 128 + // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. + // XXX: this will not work properly for other clock speeds, and + // this code should use F_CPU to determine the prescale factor. + sbi(ADCSRA, ADPS2); + sbi(ADCSRA, ADPS1); + sbi(ADCSRA, ADPS0); + + // enable a2d conversions + sbi(ADCSRA, ADEN); +#endif + + // the bootloader connects pins 0 and 1 to the USART; disconnect them + // here so they can be used as normal digital i/o; they will be + // reconnected in Serial.begin() +#if defined(UCSRB) + UCSRB = 0; +#elif defined(UCSR0B) + UCSR0B = 0; +#endif +} diff --git a/Marlin/Sanguino/cores/arduino/wiring.h b/Marlin/Sanguino/cores/arduino/wiring.h new file mode 100644 index 000000000..e29959b86 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring.h @@ -0,0 +1,135 @@ +/* + wiring.h - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#ifndef Wiring_h +#define Wiring_h + +#include +#include +#include "binary.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#define HIGH 0x1 +#define LOW 0x0 + +#define INPUT 0x0 +#define OUTPUT 0x1 + +#define true 0x1 +#define false 0x0 + +#define PI 3.1415926535897932384626433832795 +#define HALF_PI 1.5707963267948966192313216916398 +#define TWO_PI 6.283185307179586476925286766559 +#define DEG_TO_RAD 0.017453292519943295769236907684886 +#define RAD_TO_DEG 57.295779513082320876798154814105 + +#define SERIAL 0x0 +#define DISPLAY 0x1 + +#define LSBFIRST 0 +#define MSBFIRST 1 + +#define CHANGE 1 +#define FALLING 2 +#define RISING 3 + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define INTERNAL1V1 2 +#define INTERNAL2V56 3 +#else +#define INTERNAL 3 +#endif +#define DEFAULT 1 +#define EXTERNAL 0 + +// undefine stdlib's abs if encountered +#ifdef abs +#undef abs +#endif + +#define min(a,b) ((a)<(b)?(a):(b)) +#define max(a,b) ((a)>(b)?(a):(b)) +#define abs(x) ((x)>0?(x):-(x)) +#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) +#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) +#define radians(deg) ((deg)*DEG_TO_RAD) +#define degrees(rad) ((rad)*RAD_TO_DEG) +#define sq(x) ((x)*(x)) + +#define interrupts() sei() +#define noInterrupts() cli() + +#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) +#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (F_CPU / 1000L) ) +#define microsecondsToClockCycles(a) ( ((a) * (F_CPU / 1000L)) / 1000L ) + +#define lowByte(w) ((uint8_t) ((w) & 0xff)) +#define highByte(w) ((uint8_t) ((w) >> 8)) + +#define bitRead(value, bit) (((value) >> (bit)) & 0x01) +#define bitSet(value, bit) ((value) |= (1UL << (bit))) +#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) +#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) + + +typedef unsigned int word; + +#define bit(b) (1UL << (b)) + +typedef uint8_t boolean; +typedef uint8_t byte; + +void init(void); + +void pinMode(uint8_t, uint8_t); +void digitalWrite(uint8_t, uint8_t); +int digitalRead(uint8_t); +int analogRead(uint8_t); +void analogReference(uint8_t mode); +void analogWrite(uint8_t, int); + +unsigned long millis(void); +unsigned long micros(void); +void delay(unsigned long); +void delayMicroseconds(unsigned int us); +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); + +void attachInterrupt(uint8_t, void (*)(void), int mode); +void detachInterrupt(uint8_t); + +void setup(void); +void loop(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Sanguino/cores/arduino/wiring_analog.c b/Marlin/Sanguino/cores/arduino/wiring_analog.c new file mode 100644 index 000000000..d248f4ce8 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring_analog.c @@ -0,0 +1,259 @@ +/* + wiring_analog.c - analog input and output + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 28 September 2010 by Mark Sproul + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +uint8_t analog_reference = DEFAULT; + +void analogReference(uint8_t mode) +{ + // can't actually set the register here because the default setting + // will connect AVCC and the AREF pin, which would cause a short if + // there's something connected to AREF. + analog_reference = mode; +} + +int analogRead(uint8_t pin) +{ + uint8_t low, high; + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) + if (pin >= 54) pin -= 54; // allow for channel or pin numbers +#else + if (pin >= 14) pin -= 14; // allow for channel or pin numbers +#endif + +#if defined(ADCSRB) && defined(MUX5) + // the MUX5 bit of ADCSRB selects whether we're reading from channels + // 0 to 7 (MUX5 low) or 8 to 15 (MUX5 high). + ADCSRB = (ADCSRB & ~(1 << MUX5)) | (((pin >> 3) & 0x01) << MUX5); +#endif + + // set the analog reference (high two bits of ADMUX) and select the + // channel (low 4 bits). this also sets ADLAR (left-adjust result) + // to 0 (the default). +#if defined(ADMUX) + ADMUX = (analog_reference << 6) | (pin & 0x07); +#endif + + // without a delay, we seem to read from the wrong channel + //delay(1); + +#if defined(ADCSRA) && defined(ADCL) + // start the conversion + sbi(ADCSRA, ADSC); + + // ADSC is cleared when the conversion finishes + while (bit_is_set(ADCSRA, ADSC)); + + // we have to read ADCL first; doing so locks both ADCL + // and ADCH until ADCH is read. reading ADCL second would + // cause the results of each conversion to be discarded, + // as ADCL and ADCH would be locked when it completed. + low = ADCL; + high = ADCH; +#else + // we dont have an ADC, return 0 + low = 0; + high = 0; +#endif + + // combine the two bytes + return (high << 8) | low; +} + +// Right now, PWM output only works on the pins with +// hardware support. These are defined in the appropriate +// pins_*.c file. For the rest of the pins, we default +// to digital output. +void analogWrite(uint8_t pin, int val) +{ + // We need to make sure the PWM output is enabled for those pins + // that support it, as we turn it off when digitally reading or + // writing with them. Also, make sure the pin is in output mode + // for consistenty with Wiring, which doesn't require a pinMode + // call for the analog output pins. + pinMode(pin, OUTPUT); + if (val == 0) + { + digitalWrite(pin, LOW); + } + else if (val == 255) + { + digitalWrite(pin, HIGH); + } + else + { + switch(digitalPinToTimer(pin)) + { + // XXX fix needed for atmega8 + #if defined(TCCR0) && defined(COM00) && !defined(__AVR_ATmega8__) + case TIMER0A: + // connect pwm to pin on timer 0 + sbi(TCCR0, COM00); + OCR0 = val; // set pwm duty + break; + #endif + + #if defined(TCCR0A) && defined(COM0A1) + case TIMER0A: + // connect pwm to pin on timer 0, channel A + sbi(TCCR0A, COM0A1); + OCR0A = val; // set pwm duty + break; + #endif + + #if defined(TCCR0A) && defined(COM0B1) + case TIMER0B: + // connect pwm to pin on timer 0, channel B + sbi(TCCR0A, COM0B1); + OCR0B = val; // set pwm duty + break; + #endif + + #if defined(TCCR1A) && defined(COM1A1) + case TIMER1A: + // connect pwm to pin on timer 1, channel A + sbi(TCCR1A, COM1A1); + OCR1A = val; // set pwm duty + break; + #endif + + #if defined(TCCR1A) && defined(COM1B1) + case TIMER1B: + // connect pwm to pin on timer 1, channel B + sbi(TCCR1A, COM1B1); + OCR1B = val; // set pwm duty + break; + #endif + + #if defined(TCCR2) && defined(COM21) + case TIMER2: + // connect pwm to pin on timer 2 + sbi(TCCR2, COM21); + OCR2 = val; // set pwm duty + break; + #endif + + #if defined(TCCR2A) && defined(COM2A1) + case TIMER2A: + // connect pwm to pin on timer 2, channel A + sbi(TCCR2A, COM2A1); + OCR2A = val; // set pwm duty + break; + #endif + + #if defined(TCCR2A) && defined(COM2B1) + case TIMER2B: + // connect pwm to pin on timer 2, channel B + sbi(TCCR2A, COM2B1); + OCR2B = val; // set pwm duty + break; + #endif + + #if defined(TCCR3A) && defined(COM3A1) + case TIMER3A: + // connect pwm to pin on timer 3, channel A + sbi(TCCR3A, COM3A1); + OCR3A = val; // set pwm duty + break; + #endif + + #if defined(TCCR3A) && defined(COM3B1) + case TIMER3B: + // connect pwm to pin on timer 3, channel B + sbi(TCCR3A, COM3B1); + OCR3B = val; // set pwm duty + break; + #endif + + #if defined(TCCR3A) && defined(COM3C1) + case TIMER3C: + // connect pwm to pin on timer 3, channel C + sbi(TCCR3A, COM3C1); + OCR3C = val; // set pwm duty + break; + #endif + + #if defined(TCCR4A) && defined(COM4A1) + case TIMER4A: + // connect pwm to pin on timer 4, channel A + sbi(TCCR4A, COM4A1); + OCR4A = val; // set pwm duty + break; + #endif + + #if defined(TCCR4A) && defined(COM4B1) + case TIMER4B: + // connect pwm to pin on timer 4, channel B + sbi(TCCR4A, COM4B1); + OCR4B = val; // set pwm duty + break; + #endif + + #if defined(TCCR4A) && defined(COM4C1) + case TIMER4C: + // connect pwm to pin on timer 4, channel C + sbi(TCCR4A, COM4C1); + OCR4C = val; // set pwm duty + break; + #endif + + #if defined(TCCR5A) && defined(COM5A1) + case TIMER5A: + // connect pwm to pin on timer 5, channel A + sbi(TCCR5A, COM5A1); + OCR5A = val; // set pwm duty + break; + #endif + + #if defined(TCCR5A) && defined(COM5B1) + case TIMER5B: + // connect pwm to pin on timer 5, channel B + sbi(TCCR5A, COM5B1); + OCR5B = val; // set pwm duty + break; + #endif + + #if defined(TCCR5A) && defined(COM5C1) + case TIMER5C: + // connect pwm to pin on timer 5, channel C + sbi(TCCR5A, COM5C1); + OCR5C = val; // set pwm duty + break; + #endif + + case NOT_ON_TIMER: + default: + if (val < 128) { + digitalWrite(pin, LOW); + } else { + digitalWrite(pin, HIGH); + } + } + } +} diff --git a/Marlin/Sanguino/cores/arduino/wiring_digital.c b/Marlin/Sanguino/cores/arduino/wiring_digital.c new file mode 100644 index 000000000..0949da42d --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring_digital.c @@ -0,0 +1,166 @@ +/* + wiring_digital.c - digital input and output functions + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 28 September 2010 by Mark Sproul + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +void pinMode(uint8_t pin, uint8_t mode) +{ + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *reg; + + if (port == NOT_A_PIN) return; + + // JWS: can I let the optimizer do this? + reg = portModeRegister(port); + + if (mode == INPUT) { + uint8_t oldSREG = SREG; + cli(); + *reg &= ~bit; + SREG = oldSREG; + } else { + uint8_t oldSREG = SREG; + cli(); + *reg |= bit; + SREG = oldSREG; + } +} + +// Forcing this inline keeps the callers from having to push their own stuff +// on the stack. It is a good performance win and only takes 1 more byte per +// user than calling. (It will take more bytes on the 168.) +// +// But shouldn't this be moved into pinMode? Seems silly to check and do on +// each digitalread or write. +// +// Mark Sproul: +// - Removed inline. Save 170 bytes on atmega1280 +// - changed to a switch statment; added 32 bytes but much easier to read and maintain. +// - Added more #ifdefs, now compiles for atmega645 +// +//static inline void turnOffPWM(uint8_t timer) __attribute__ ((always_inline)); +//static inline void turnOffPWM(uint8_t timer) +static void turnOffPWM(uint8_t timer) +{ + switch (timer) + { + #if defined(TCCR1A) && defined(COM1A1) + case TIMER1A: cbi(TCCR1A, COM1A1); break; + #endif + #if defined(TCCR1A) && defined(COM1B1) + case TIMER1B: cbi(TCCR1A, COM1B1); break; + #endif + + #if defined(TCCR2) && defined(COM21) + case TIMER2: cbi(TCCR2, COM21); break; + #endif + + #if defined(TCCR0A) && defined(COM0A1) + case TIMER0A: cbi(TCCR0A, COM0A1); break; + #endif + + #if defined(TIMER0B) && defined(COM0B1) + case TIMER0B: cbi(TCCR0A, COM0B1); break; + #endif + #if defined(TCCR2A) && defined(COM2A1) + case TIMER2A: cbi(TCCR2A, COM2A1); break; + #endif + #if defined(TCCR2A) && defined(COM2B1) + case TIMER2B: cbi(TCCR2A, COM2B1); break; + #endif + + #if defined(TCCR3A) && defined(COM3A1) + case TIMER3A: cbi(TCCR3A, COM3A1); break; + #endif + #if defined(TCCR3A) && defined(COM3B1) + case TIMER3B: cbi(TCCR3A, COM3B1); break; + #endif + #if defined(TCCR3A) && defined(COM3C1) + case TIMER3C: cbi(TCCR3A, COM3C1); break; + #endif + + #if defined(TCCR4A) && defined(COM4A1) + case TIMER4A: cbi(TCCR4A, COM4A1); break; + #endif + #if defined(TCCR4A) && defined(COM4B1) + case TIMER4B: cbi(TCCR4A, COM4B1); break; + #endif + #if defined(TCCR4A) && defined(COM4C1) + case TIMER4C: cbi(TCCR4A, COM4C1); break; + #endif + #if defined(TCCR5A) + case TIMER5A: cbi(TCCR5A, COM5A1); break; + case TIMER5B: cbi(TCCR5A, COM5B1); break; + case TIMER5C: cbi(TCCR5A, COM5C1); break; + #endif + } +} + +void digitalWrite(uint8_t pin, uint8_t val) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *out; + + if (port == NOT_A_PIN) return; + + // If the pin that support PWM output, we need to turn it off + // before doing a digital write. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + out = portOutputRegister(port); + + if (val == LOW) { + uint8_t oldSREG = SREG; + cli(); + *out &= ~bit; + SREG = oldSREG; + } else { + uint8_t oldSREG = SREG; + cli(); + *out |= bit; + SREG = oldSREG; + } +} + +int digitalRead(uint8_t pin) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + + if (port == NOT_A_PIN) return LOW; + + // If the pin that support PWM output, we need to turn it off + // before getting a digital reading. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + if (*portInputRegister(port) & bit) return HIGH; + return LOW; +} diff --git a/Marlin/Sanguino/cores/arduino/wiring_private.h b/Marlin/Sanguino/cores/arduino/wiring_private.h new file mode 100644 index 000000000..11f6f00f2 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring_private.h @@ -0,0 +1,68 @@ +/* + wiring_private.h - Internal header file. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 239 2007-01-12 17:58:39Z mellis $ +*/ + +#ifndef WiringPrivate_h +#define WiringPrivate_h + +#include +#include +#include +#include +#include + +#include "wiring.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#ifndef cbi +#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) +#endif +#ifndef sbi +#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) +#endif + +#define EXTERNAL_INT_0 0 +#define EXTERNAL_INT_1 1 +#define EXTERNAL_INT_2 2 +#define EXTERNAL_INT_3 3 +#define EXTERNAL_INT_4 4 +#define EXTERNAL_INT_5 5 +#define EXTERNAL_INT_6 6 +#define EXTERNAL_INT_7 7 + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define EXTERNAL_NUM_INTERRUPTS 8 +#else +#define EXTERNAL_NUM_INTERRUPTS 2 +#endif + +typedef void (*voidFuncPtr)(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Sanguino/cores/arduino/wiring_pulse.c b/Marlin/Sanguino/cores/arduino/wiring_pulse.c new file mode 100644 index 000000000..0d968865d --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring_pulse.c @@ -0,0 +1,69 @@ +/* + wiring_pulse.c - pulseIn() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH + * or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds + * to 3 minutes in length, but must be called at least a few dozen microseconds + * before the start of the pulse. */ +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout) +{ + // cache the port and bit of the pin in order to speed up the + // pulse width measuring loop and achieve finer resolution. calling + // digitalRead() instead yields much coarser resolution. + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + uint8_t stateMask = (state ? bit : 0); + unsigned long width = 0; // keep initialization out of time critical area + + // convert the timeout from microseconds to a number of times through + // the initial loop; it takes 16 clock cycles per iteration. + unsigned long numloops = 0; + unsigned long maxloops = microsecondsToClockCycles(timeout) / 16; + + // wait for any previous pulse to end + while ((*portInputRegister(port) & bit) == stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to start + while ((*portInputRegister(port) & bit) != stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to stop + while ((*portInputRegister(port) & bit) == stateMask) { + if (numloops++ == maxloops) + return 0; + width++; + } + + // convert the reading to microseconds. The loop has been determined + // to be 20 clock cycles long and have about 16 clocks between the edge + // and the start of the loop. There will be some error introduced by + // the interrupt handlers. + return clockCyclesToMicroseconds(width * 21 + 16); +} diff --git a/Marlin/Sanguino/cores/arduino/wiring_shift.c b/Marlin/Sanguino/cores/arduino/wiring_shift.c new file mode 100644 index 000000000..cfe786758 --- /dev/null +++ b/Marlin/Sanguino/cores/arduino/wiring_shift.c @@ -0,0 +1,55 @@ +/* + wiring_shift.c - shiftOut() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" + +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder) { + uint8_t value = 0; + uint8_t i; + + for (i = 0; i < 8; ++i) { + digitalWrite(clockPin, HIGH); + if (bitOrder == LSBFIRST) + value |= digitalRead(dataPin) << i; + else + value |= digitalRead(dataPin) << (7 - i); + digitalWrite(clockPin, LOW); + } + return value; +} + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val) +{ + uint8_t i; + + for (i = 0; i < 8; i++) { + if (bitOrder == LSBFIRST) + digitalWrite(dataPin, !!(val & (1 << i))); + else + digitalWrite(dataPin, !!(val & (1 << (7 - i)))); + + digitalWrite(clockPin, HIGH); + digitalWrite(clockPin, LOW); + } +} diff --git a/Marlin/Sanguino/programmers.txt b/Marlin/Sanguino/programmers.txt new file mode 100644 index 000000000..466f602a3 --- /dev/null +++ b/Marlin/Sanguino/programmers.txt @@ -0,0 +1,20 @@ +avrisp.name=AVR ISP +avrisp.communication=serial +avrisp.protocol=stk500v1 + +avrispmkii.name=AVRISP mkII +avrispmkii.communication=usb +avrispmkii.protocol=stk500v2 + +usbtinyisp.name=USBtinyISP +usbtinyisp.protocol=usbtiny + +parallel.name=Parallel Programmer +parallel.protocol=dapa +parallel.force=true +# parallel.delay=200 + +arduinoisp.name=Arduino as ISP +arduinoisp.communication=serial +arduinoisp.protocol=stk500v1 +arduinoisp.speed=19200 From 331e82dcd3d7eaf9f76dbec8759f2f730335fea3 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 14 Nov 2011 18:53:09 +0100 Subject: [PATCH 053/430] Buffer size > 16 --- Marlin/Configuration.h | 4 +- Marlin/temperature.cpp | 49 +++++----- Marlin/ultralcd.h | 203 +++++++++++++++++++++-------------------- 3 files changed, 129 insertions(+), 127 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 2d890b721..89104fde9 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -311,9 +311,9 @@ const int dropsegments=0; //everything with less than this number of steps will // The number of linear motions that can be in the plan at any give time. // THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, i.g. 8,16,32 because shifts and ors are used to do the ringbuffering. #if defined SDSUPPORT - #define BLOCK_BUFFER_SIZE 8 // SD,LCD,Buttons take more memory, block buffer needs to be smaller + #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller #else - #define BLOCK_BUFFER_SIZE 8 // maximize block buffer + #define BLOCK_BUFFER_SIZE 16 // maximize block buffer #endif diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 89ee47d84..42064104b 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -203,6 +203,7 @@ void manage_heater() #endif } +#define PGM_RD_W(x) (short)pgm_read_word(&x) // Takes hot end temperature value as input and returns corresponding raw value. // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. @@ -214,18 +215,18 @@ int temp2analog(int celsius) { for (i=1; i raw) + if (PGM_RD_W(heater_0_temptable[i][0]) > raw) { - celsius = (short)pgm_read_word(&heater_0_temptable[i-1][1]) + - (raw - (short)pgm_read_word(&heater_0_temptable[i-1][0])) * - (float)((short)pgm_read_word(&heater_0_temptable[i][1]) - (short)pgm_read_word(&heater_0_temptable[i-1][1])) / - (float)((short)pgm_read_word(&heater_0_temptable[i][0]) - (short)pgm_read_word(&heater_0_temptable[i-1][0])); + celsius = PGM_RD_W(heater_0_temptable[i-1][1]) + + (raw - PGM_RD_W(heater_0_temptable[i-1][0])) * + (float)(PGM_RD_W(heater_0_temptable[i][1]) - PGM_RD_W(heater_0_temptable[i-1][1])) / + (float)(PGM_RD_W(heater_0_temptable[i][0]) - PGM_RD_W(heater_0_temptable[i-1][0])); break; } } // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_0) celsius = (short)pgm_read_word(&(heater_0_temptable[i-1][1])); + if (i == NUMTEMPS_HEATER_0) celsius = PGM_RD_W(heater_0_temptable[i-1][1]); return celsius; #elif defined HEATER_0_USES_AD595 @@ -304,19 +305,19 @@ float analog2tempBed(int raw) { for (i=1; i raw) + if (PGM_RD_W(bedtemptable[i][0]) > raw) { - celsius = pgm_read_word(&(bedtemptable[i-1][1])) + - (raw - pgm_read_word(&(bedtemptable[i-1][0]))) * - (pgm_read_word(&(bedtemptable[i][1])) - pgm_read_word(&(bedtemptable[i-1][1]))) / - (pgm_read_word(&(bedtemptable[i][0])) - pgm_read_word(&(bedtemptable[i-1][0]))); + celsius = PGM_RD_W(bedtemptable[i-1][1]) + + (raw - PGM_RD_W(bedtemptable[i-1][0])) * + (PGM_RD_W(bedtemptable[i][1]) - PGM_RD_W(bedtemptable[i-1][1])) / + (PGM_RD_W(bedtemptable[i][0]) - PGM_RD_W(bedtemptable[i-1][0])); break; } } // Overflow: Set to last value in the table - if (i == BNUMTEMPS) celsius = pgm_read_word(&(bedtemptable[i-1][1])); + if (i == BNUMTEMPS) celsius = PGM_RD_W(bedtemptable[i-1][1]); return celsius; diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 4c725329d..bc07c25a8 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -1,102 +1,103 @@ -#ifndef __ULTRALCDH -#define __ULTRALCDH -#include "Configuration.h" - -#ifdef ULTRA_LCD - - void lcd_status(); - void lcd_init(); - void lcd_status(const char* message); - void beep(); - void buttons_check(); - - - #define LCD_UPDATE_INTERVAL 100 - #define STATUSTIMEOUT 15000 - - - #include - extern LiquidCrystal lcd; - - - #ifdef NEWPANEL - - - #define EN_C (1< + extern LiquidCrystal lcd; + + + #ifdef NEWPANEL + + + #define EN_C (1< Date: Mon, 14 Nov 2011 20:04:29 +0100 Subject: [PATCH 054/430] Added slowdown --- Marlin/Configuration.h | 7 +++++-- Marlin/planner.cpp | 32 +++++++++++++++++++------------- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 89104fde9..5a6fc4702 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -18,6 +18,9 @@ // if unwanted behavior is observed on a user's machine when running at very slow speeds. #define MINIMUM_PLANNER_SPEED 2.0 // (mm/sec) +// If defined the movements slow down when the look ahead buffer is only half full +#define SLOWDOWN + // BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration //// The following define selects which electronics board you have. Please choose the one that matches your setup @@ -210,7 +213,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define DEFAULT_MINTRAVELFEEDRATE 0 // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. -#define DEFAULT_MINSEGMENTTIME 20000 +#define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this #define DEFAULT_XYJERK 30.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) @@ -269,7 +272,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define ULTIPANEL #ifdef ULTIPANEL - #define NEWPANEL //enable this if you have a click-encoder panel +// #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT #define ULTRA_LCD #define LCD_WIDTH 20 diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 998a60910..8dfa44f54 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -499,31 +499,37 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa block->nominal_speed = block->millimeters * inverse_second; // (mm/sec) Always > 0 block->nominal_rate = ceil(block->step_event_count * inverse_second); // (step/sec) Always > 0 -// unsigned long microseconds; -#if 0 + // segment time im micro seconds + long segment_time = lround(1000000.0/inverse_second); + + if (block->steps_e == 0) { if(feed_ratemillimeters/feed_rate)*1000000); - + +#ifdef SLOWDOWN // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill - // reduces/removes corner blobs as the machine won't come to a full stop. - int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); + int moves_queued=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); + + if(moves_queued < (BLOCK_BUFFER_SIZE * 0.5)) feed_rate = feed_rate / ((BLOCK_BUFFER_SIZE * 0.5)/moves_queued); +#endif + +/* + if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { - if (microsecondsdirection_bits ^ old_direction_bits; old_direction_bits = block->direction_bits; - long segment_time = lround(1000000.0/inverse_second); + if((direction_change & (1< Date: Mon, 14 Nov 2011 23:57:34 +0100 Subject: [PATCH 055/430] Some fixes in planner --- Marlin/Configuration.h | 22 +++++++++++++--------- Marlin/planner.cpp | 9 +++------ Marlin/stepper.cpp | 16 ++++++++-------- 3 files changed, 24 insertions(+), 23 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 5a6fc4702..135b61e01 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -115,11 +115,15 @@ #ifdef PID_PID //PID according to Ziegler-Nichols method - #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) - #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) +// #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) +// #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) +// #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) + + #define DEFAULT_Kp 22.2 + #define DEFAULT_Ki (1.25*PID_dT) + #define DEFAULT_Kd (99/PID_dT) #endif - + #ifdef PID_PI //PI according to Ziegler-Nichols method #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) @@ -197,20 +201,20 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define AXIS_RELATIVE_MODES {false, false, false, false} -#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) +#define MAX_STEP_FREQUENCY 40000L // Max step frequency for Ultimaker (5000 pps / half step) // default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker +#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,760*1.1} // default steps per unit for ultimaker //#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} -#define DEFAULT_MAX_FEEDRATE {500, 500, 10, 500000} // (mm/min) +#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 200000} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves #define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts -#define DEFAULT_MINIMUMFEEDRATE 0 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 0 +#define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 0.0 // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. #define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 8dfa44f54..a3dde6c31 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -490,7 +490,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + - square(delta_mm[Z_AXIS])); + square(delta_mm[Z_AXIS]) + square(delta_mm[E_AXIS])); float inverse_millimeters = 1.0/block->millimeters; // Inverse millimeters to remove multiple divides // Calculate speed in mm/second for each axis. No divide by zero due to previous checks. @@ -502,7 +502,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa // segment time im micro seconds long segment_time = lround(1000000.0/inverse_second); - + if (block->steps_e == 0) { if(feed_rate0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { if (segment_time MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times - step_rate = step_rate >> 2; + step_rate = (step_rate >> 2)&0x3fff; step_loops = 4; } else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times - step_rate = step_rate >> 1; + step_rate = (step_rate >> 1)&0x7fff; step_loops = 2; } else { @@ -253,7 +253,7 @@ inline unsigned short calc_timer(unsigned short step_rate) { timer = (unsigned short)pgm_read_word_near(table_address); timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); } - //if(timer < 100) timer = 100; + if(timer < 100) timer = 100; //(20kHz this should never happen) return timer; } @@ -340,7 +340,7 @@ ISR(TIMER1_COMPA_vect) #endif #if X_MIN_PIN > -1 if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - endstops_triggered(step_events_completed); + // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -352,7 +352,7 @@ ISR(TIMER1_COMPA_vect) #endif #if X_MAX_PIN > -1 if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ - endstops_triggered(step_events_completed); + // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -365,7 +365,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Y_MIN_PIN > -1 if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { - endstops_triggered(step_events_completed); + // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -377,7 +377,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Y_MAX_PIN > -1 if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ - endstops_triggered(step_events_completed); + // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -402,7 +402,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Z_MAX_PIN > -1 if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ - endstops_triggered(step_events_completed); + // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif From 805d37f77b25fba70c05518cda4edd1c349b7f04 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Tue, 15 Nov 2011 18:14:00 +0100 Subject: [PATCH 056/430] Fixed some small planner bugs --- Marlin/Configuration.h | 5 +++-- Marlin/planner.cpp | 15 ++++++++++----- Marlin/planner.h | 20 ++++++++++---------- Marlin/stepper.cpp | 2 +- 4 files changed, 24 insertions(+), 18 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 135b61e01..3b0cfacfe 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -11,7 +11,8 @@ // Frequency limit // See nophead's blog for more info -#define XY_FREQUENCY_LIMIT 15 +// Not working OK +//#define XY_FREQUENCY_LIMIT 15 // Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end // of the buffer and all stops. This should not be much greater than zero and should only be changed @@ -201,7 +202,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define AXIS_RELATIVE_MODES {false, false, false, false} -#define MAX_STEP_FREQUENCY 40000L // Max step frequency for Ultimaker (5000 pps / half step) +#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) // default settings diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index a3dde6c31..c27d58601 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -72,7 +72,7 @@ unsigned long minsegmenttime; float max_feedrate[4]; // set the max speeds float axis_steps_per_unit[4]; -long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +unsigned long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software float minimumfeedrate; float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX @@ -153,8 +153,8 @@ inline float intersection_distance(float initial_rate, float final_rate, float a // Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exit_factor) { - long initial_rate = ceil(block->nominal_rate*entry_factor); // (step/min) - long final_rate = ceil(block->nominal_rate*exit_factor); // (step/min) + unsigned long initial_rate = ceil(block->nominal_rate*entry_factor); // (step/min) + unsigned long final_rate = ceil(block->nominal_rate*exit_factor); // (step/min) // Limit minimal step rate (Otherwise the timer will overflow.) if(initial_rate <120) {initial_rate=120; } @@ -570,7 +570,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa long max_x_segment_time = max(x_segment_time[0], max(x_segment_time[1], x_segment_time[2])); long max_y_segment_time = max(y_segment_time[0], max(y_segment_time[1], y_segment_time[2])); long min_xy_segment_time =min(max_x_segment_time, max_y_segment_time); - if(min_xy_segment_time < MAX_FREQ_TIME) speed_factor = min(speed_factor, (float)min_xy_segment_time / (float)MAX_FREQ_TIME); + if(min_xy_segment_time < MAX_FREQ_TIME) speed_factor = min(speed_factor, speed_factor * (float)min_xy_segment_time / (float)MAX_FREQ_TIME); #endif // Correct the speed @@ -579,7 +579,12 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa for(int i=0; i < 4; i++) { if(abs(current_speed[i]) > max_feedrate[i]) speed_factor = min(speed_factor, max_feedrate[i] / abs(current_speed[i])); -// Serial.print("current_speed"); Serial.print(i); Serial.print(" : "); Serial.println(current_speed[i]); + /* + if(speed_factor < 0.1) { + Serial.print("speed factor : "); Serial.println(speed_factor); + Serial.print("current_speed"); Serial.print(i); Serial.print(" : "); Serial.println(current_speed[i]); + } + */ } for(unsigned char i=0; i < 4; i++) { current_speed[i] *= speed_factor; diff --git a/Marlin/planner.h b/Marlin/planner.h index f5c01ea26..be1587d6b 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -32,9 +32,9 @@ typedef struct { // Fields used by the bresenham algorithm for tracing the line long steps_x, steps_y, steps_z, steps_e; // Step count along each axis long step_event_count; // The number of step events required to complete this block - volatile long accelerate_until; // The index of the step event on which to stop acceleration - volatile long decelerate_after; // The index of the step event on which to start decelerating - volatile long acceleration_rate; // The acceleration rate used for acceleration calculation + long accelerate_until; // The index of the step event on which to stop acceleration + long decelerate_after; // The index of the step event on which to start decelerating + long acceleration_rate; // The acceleration rate used for acceleration calculation unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) #ifdef ADVANCE // long advance_rate; @@ -50,14 +50,14 @@ typedef struct { float max_entry_speed; // Maximum allowable junction entry speed in mm/min float millimeters; // The total travel of this block in mm float acceleration; // acceleration mm/sec^2 - unsigned char recalculate_flag; // Planner flag to recalculate trapezoids on entry junction - unsigned char nominal_length_flag; // Planner flag for nominal speed always reached + unsigned char recalculate_flag; // Planner flag to recalculate trapezoids on entry junction + unsigned char nominal_length_flag; // Planner flag for nominal speed always reached // Settings for the trapezoid generator - long nominal_rate; // The nominal step rate for this block in step_events/sec - volatile long initial_rate; // The jerk-adjusted step rate at start of block - volatile long final_rate; // The minimal rate at exit - long acceleration_st; // acceleration steps/sec^2 + unsigned long nominal_rate; // The nominal step rate for this block in step_events/sec + unsigned long initial_rate; // The jerk-adjusted step rate at start of block + unsigned long final_rate; // The minimal rate at exit + unsigned long acceleration_st; // acceleration steps/sec^2 volatile char busy; } block_t; @@ -84,7 +84,7 @@ void check_axes_activity(); extern unsigned long minsegmenttime; extern float max_feedrate[4]; // set the max speeds extern float axis_steps_per_unit[4]; -extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +extern unsigned long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software extern float minimumfeedrate; extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 96a43ed7e..2e232201b 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -253,7 +253,7 @@ inline unsigned short calc_timer(unsigned short step_rate) { timer = (unsigned short)pgm_read_word_near(table_address); timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); } - if(timer < 100) timer = 100; //(20kHz this should never happen) + if(timer < 100) { timer = 100; Serial.print("Steprate to high : "); Serial.println(step_rate); }//(20kHz this should never happen) return timer; } From 7919a40d066116203dd2e703df9af7f3fe4d1bd4 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Tue, 15 Nov 2011 20:54:40 +0100 Subject: [PATCH 057/430] watchdog,percent done, --- Marlin/Configuration.h | 11 ++++---- Marlin/Marlin.h | 2 +- Marlin/Marlin.pde | 60 ++++++++++++++++++++++++------------------ Marlin/cardreader.h | 1 + Marlin/ultralcd.h | 2 +- Marlin/ultralcd.pde | 10 +++++++ Marlin/watchdog.pde | 2 ++ 7 files changed, 55 insertions(+), 33 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 5b15dd0a4..f0dbe6a6e 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -220,11 +220,12 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // this enables the watchdog interrupt. -#define USE_WATCHDOG -// you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: -#define RESET_MANUAL -#define WATCHDOG_TIMEOUT 4 //seconds - +//#define USE_WATCHDOG +#ifdef USE_WATCHDOG + // you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: + #define RESET_MANUAL + #define WATCHDOG_TIMEOUT 4 //seconds +#endif diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 440a44a57..acfc3c2fa 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -100,7 +100,7 @@ void prepare_move(); void kill(); void enquecommand(const char *cmd); //put an ascii command at the end of the current buffer. - +void prepare_arc_move(char isclockwise); #ifndef CRITICAL_SECTION_START #define CRITICAL_SECTION_START unsigned char _sreg = SREG; cli(); diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 84f07b3e6..cacd72874 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -37,6 +37,7 @@ #include "temperature.h" #include "motion_control.h" #include "cardreader.h" +#include "watchdog.h" #define VERSION_STRING "1.0.0 Alpha 1" @@ -191,6 +192,36 @@ extern "C"{ } + +inline void get_coordinates() +{ + for(int8_t i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} + +inline void get_arc_coordinates() +{ + get_coordinates(); + if(code_seen('I')) offset[0] = code_value(); + if(code_seen('J')) offset[1] = code_value(); +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); + for(int8_t i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} + + + //adds an command to the main command buffer //thats really done in a non-safe way. //needs overworking someday @@ -234,6 +265,7 @@ void setup() plan_init(); // Initialize planner; st_init(); // Initialize stepper; tp_init(); // Initialize temperature loop + wd_init(); } @@ -656,7 +688,8 @@ inline void process_commands() break; case 105: // M105 //SERIAL_ECHOLN(freeMemory()); - + //test watchdog: + //delay(20000); #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) SERIAL_PROTOCOLPGM("ok T:"); SERIAL_PROTOCOL( degHotend0()); @@ -975,32 +1008,7 @@ void ClearToSend() SERIAL_PROTOCOLLNPGM("ok"); } -inline void get_coordinates() -{ - for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? - } - if(code_seen('F')) { - next_feedrate = code_value(); - if(next_feedrate > 0.0) feedrate = next_feedrate; - } -} -inline void get_arc_coordinates() -{ - get_coordinates(); - if(code_seen('I')) offset[0] = code_value(); - if(code_seen('J')) offset[1] = code_value(); -} - -void prepare_move() -{ - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); - for(int8_t i=0; i < NUM_AXIS; i++) { - current_position[i] = destination[i]; - } -} void prepare_arc_move(char isclockwise) { float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index b3f514f61..d75f93a52 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -33,6 +33,7 @@ public: inline bool eof() { return sdpos>=filesize ;}; inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; + inline uint8_t percentDone(){if(!sdprinting) return 0; if(filesize) return sdpos*100/filesize; else return 0;}; public: bool saving; diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 4c725329d..c836757e1 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -96,7 +96,7 @@ #define BLOCK ; #endif - +void lcd_statuspgm(const char* message); #endif //ULTRALCD diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index d95167166..1bf225641 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -374,6 +374,16 @@ void MainMenu::showStatus() lcd.print(fillto(LCD_WIDTH,messagetext)); messagetext[0]='\0'; } + + static uint8_t oldpercent=101; + uint8_t percent=card.percentDone(); + if(oldpercent!=percent) + { + lcd.setCursor(6,3); + lcd.print(oldpercent); + lcdprintPGM("done"); + } + #else //smaller LCDS---------------------------------- static int olddegHotEnd0=-1; static int oldtargetHotEnd0=-1; diff --git a/Marlin/watchdog.pde b/Marlin/watchdog.pde index 9cf710a0c..6c883c9d4 100644 --- a/Marlin/watchdog.pde +++ b/Marlin/watchdog.pde @@ -42,10 +42,12 @@ ISR(WDT_vect) #ifdef RESET_MANUAL LCD_MESSAGEPGM("Please Reset!"); + LCD_STATUS; SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Something is wrong, please turn off the printer."); #else LCD_MESSAGEPGM("Timeout, resetting!"); + LCD_STATUS; #endif //disable watchdog, it will survife reboot. WDTCSR |= (1< Date: Tue, 15 Nov 2011 20:55:00 +0100 Subject: [PATCH 058/430] show sd% --- Marlin/ultralcd.pde | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 1bf225641..51a3c46f9 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -377,11 +377,12 @@ void MainMenu::showStatus() static uint8_t oldpercent=101; uint8_t percent=card.percentDone(); - if(oldpercent!=percent) + if(oldpercent!=percent ||force_lcd_update) { - lcd.setCursor(6,3); - lcd.print(oldpercent); - lcdprintPGM("done"); + lcd.setCursor(7,2); + lcd.print(itostr3((int)percent)); + lcdprintPGM("%SD"); + } #else //smaller LCDS---------------------------------- From a9c7da06e398101517acc5b7a07e8dcb544df294 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Tue, 15 Nov 2011 22:50:43 +0100 Subject: [PATCH 059/430] and changed ultipanel to have the mm/sec and not mm/min Merge branch 'Marlin_v1' of https://github.com/ErikZalm/Marlin into Marlin_v1 Conflicts: Marlin/Marlin.pde Marlin/ultralcd.h --- Marlin/Configuration.h | 50 +- Marlin/Marlin.pde | 55 +- Marlin/planner.cpp | 1376 ++++++++++++++++++++----------------- Marlin/planner.h | 193 +++--- Marlin/stepper.cpp | 1333 +++++++++++++++++------------------ Marlin/temperature.cpp | 1157 +++++++++++++++---------------- Marlin/thermistortables.h | 16 +- Marlin/ultralcd.h | 205 +++--- Marlin/ultralcd.pde | 24 +- 9 files changed, 2284 insertions(+), 2125 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f0dbe6a6e..f1f0c651c 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -9,6 +9,19 @@ //#define BAUDRATE 230400 +// Frequency limit +// See nophead's blog for more info +// Not working OK +//#define XY_FREQUENCY_LIMIT 15 + +// Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end +// of the buffer and all stops. This should not be much greater than zero and should only be changed +// if unwanted behavior is observed on a user's machine when running at very slow speeds. +#define MINIMUM_PLANNER_SPEED 2.0 // (mm/sec) + +// If defined the movements slow down when the look ahead buffer is only half full +#define SLOWDOWN + // BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration //// The following define selects which electronics board you have. Please choose the one that matches your setup @@ -45,7 +58,6 @@ //#define BED_USES_THERMISTOR //#define BED_USES_AD595 -#define HEATER_CHECK_INTERVAL 50 //ms #define BED_CHECK_INTERVAL 5000 //ms //// Experimental watchdog and minimal temp @@ -103,11 +115,15 @@ #ifdef PID_PID //PID according to Ziegler-Nichols method - #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) - #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) +// #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) +// #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) +// #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) + + #define DEFAULT_Kp 22.2 + #define DEFAULT_Ki (1.25*PID_dT) + #define DEFAULT_Kd (99/PID_dT) #endif - + #ifdef PID_PI //PI according to Ziegler-Nichols method #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) @@ -156,6 +172,11 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define DISABLE_E false // Inverting axis direction +//#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true +//#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false +//#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true +//#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false + #define INVERT_X_DIR true // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true @@ -176,7 +197,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E //note: on bernhards ultimaker 200 200 12 are working well. -#define HOMING_FEEDRATE {50*60, 50*60, 12*60, 0} // set the homing speeds +#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) #define AXIS_RELATIVE_MODES {false, false, false, false} @@ -184,20 +205,21 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,14} // default steps per unit for ultimaker -#define DEFAULT_MAX_FEEDRATE {160*60, 160*60, 10*60, 500000} -#define DEFAULT_MAX_ACCELERATION {9000,9000,150,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. +#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,760*1.1} // default steps per unit for ultimaker +//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} +#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 200000} // (mm/sec) +#define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves #define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts -#define DEFAULT_MINIMUMFEEDRATE 10 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 10 +#define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 0.0 // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. -#define DEFAULT_MINSEGMENTTIME 20000 -#define DEFAULT_XYJERK 30.0*60 -#define DEFAULT_ZJERK 10.0*60 +#define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this +#define DEFAULT_XYJERK 30.0 // (mm/sec) +#define DEFAULT_ZJERK 0.4 // (mm/sec) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index cacd72874..f808742c9 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -116,7 +116,9 @@ extern float HeaterPower; //=========================================================================== //=============================public variables============================= //=========================================================================== +#ifdef SDSUPPORT CardReader card; +#endif float homing_feedrate[] = HOMING_FEEDRATE; bool axis_relative_modes[] = AXIS_RELATIVE_MODES; volatile int feedmultiply=100; //100->1 200->2 @@ -193,32 +195,8 @@ extern "C"{ -inline void get_coordinates() -{ - for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; - else destination[i] = current_position[i]; //Are these else lines really needed? - } - if(code_seen('F')) { - next_feedrate = code_value(); - if(next_feedrate > 0.0) feedrate = next_feedrate; - } -} -inline void get_arc_coordinates() -{ - get_coordinates(); - if(code_seen('I')) offset[0] = code_value(); - if(code_seen('J')) offset[1] = code_value(); -} -void prepare_move() -{ - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60.0/100.0); - for(int8_t i=0; i < NUM_AXIS; i++) { - current_position[i] = destination[i]; - } -} @@ -273,7 +251,9 @@ void loop() { if(buflen<3) get_command(); + #ifdef SDSUPPORT card.checkautostart(false); + #endif if(buflen) { #ifdef SDSUPPORT @@ -1008,13 +988,38 @@ void ClearToSend() SERIAL_PROTOCOLLNPGM("ok"); } +inline void get_coordinates() +{ + for(int8_t i=0; i < NUM_AXIS; i++) { + if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; + else destination[i] = current_position[i]; //Are these else lines really needed? + } + if(code_seen('F')) { + next_feedrate = code_value(); + if(next_feedrate > 0.0) feedrate = next_feedrate; + } +} +inline void get_arc_coordinates() +{ + get_coordinates(); + if(code_seen('I')) offset[0] = code_value(); + if(code_seen('J')) offset[1] = code_value(); +} + +void prepare_move() +{ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0); + for(int8_t i=0; i < NUM_AXIS; i++) { + current_position[i] = destination[i]; + } +} void prepare_arc_move(char isclockwise) { float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc // Trace the arc - mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60.0/100.0, r, isclockwise); + mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60/100.0, r, isclockwise); // As far as the parser is concerned, the position is now == target. In reality the // motion control system might still be processing the action and the real tool position diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 863b116a5..c27d58601 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -1,629 +1,747 @@ -/* - planner.c - buffers movement commands and manages the acceleration profile plan - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ - -/* - Reasoning behind the mathematics in this module (in the key of 'Mathematica'): - - s == speed, a == acceleration, t == time, d == distance - - Basic definitions: - - Speed[s_, a_, t_] := s + (a*t) - Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] - - Distance to reach a specific speed with a constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] - d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() - - Speed after a given distance of travel with constant acceleration: - - Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] - m -> Sqrt[2 a d + s^2] - - DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] - - When to start braking (di) to reach a specified destionation speed (s2) after accelerating - from initial speed s1 without ever stopping at a plateau: - - Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] - di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() - - IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) -*/ - - -//#include -//#include -//#include - -#include "Marlin.h" -#include "Configuration.h" -#include "pins.h" -#include "fastio.h" -#include "planner.h" -#include "stepper.h" -#include "temperature.h" -#include "ultralcd.h" - -//=========================================================================== -//=============================public variables ============================ -//=========================================================================== - -unsigned long minsegmenttime; -float max_feedrate[4]; // set the max speeds -float axis_steps_per_unit[4]; -long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software -float minimumfeedrate; -float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX -float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX -float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. -float max_z_jerk; -float mintravelfeedrate; -unsigned long axis_steps_per_sqr_second[NUM_AXIS]; - -// The current position of the tool in absolute steps -long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode - -#ifdef AUTOTEMP -float high_e_speed=0; -#endif - - -//=========================================================================== -//=============================private variables ============================ -//=========================================================================== -static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions -static volatile unsigned char block_buffer_head; // Index of the next block to be pushed -static volatile unsigned char block_buffer_tail; // Index of the block to process now - - - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== -#define ONE_MINUTE_OF_MICROSECONDS 60000000.0 - -// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the -// given acceleration: -inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { - if (acceleration!=0) { - return((target_rate*target_rate-initial_rate*initial_rate)/ - (2.0*acceleration)); - } - else { - return 0.0; // acceleration was 0, set acceleration distance to 0 - } -} - -// This function gives you the point at which you must start braking (at the rate of -acceleration) if -// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after -// a total travel of distance. This can be used to compute the intersection point between acceleration and -// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) - -inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { - if (acceleration!=0) { - return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ - (4.0*acceleration) ); - } - else { - return 0.0; // acceleration was 0, set intersection distance to 0 - } -} - -// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. - -void calculate_trapezoid_for_block(block_t *block, float entry_speed, float exit_speed) { - if(block->busy == true) return; // If block is busy then bail out. - float entry_factor = entry_speed / block->nominal_speed; - float exit_factor = exit_speed / block->nominal_speed; - long initial_rate = ceil(block->nominal_rate*entry_factor); - long final_rate = ceil(block->nominal_rate*exit_factor); - - #ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; - #endif // ADVANCE - - // Limit minimal step rate (Otherwise the timer will overflow.) - if(initial_rate <120) initial_rate=120; - if(final_rate < 120) final_rate=120; - - // Calculate the acceleration steps - long acceleration = block->acceleration_st; - long accelerate_steps = estimate_acceleration_distance(initial_rate, block->nominal_rate, acceleration); - long decelerate_steps = estimate_acceleration_distance(final_rate, block->nominal_rate, acceleration); - // Calculate the size of Plateau of Nominal Rate. - long plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; - - // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will - // have to use intersection_distance() to calculate when to abort acceleration and start braking - // in order to reach the final_rate exactly at the end of this block. - if (plateau_steps < 0) { - accelerate_steps = intersection_distance(initial_rate, final_rate, acceleration, block->step_event_count); - plateau_steps = 0; - } - - long decelerate_after = accelerate_steps+plateau_steps; - - CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section - if(block->busy == false) { // Don't update variables if block is busy. - block->accelerate_until = accelerate_steps; - block->decelerate_after = decelerate_after; - block->initial_rate = initial_rate; - block->final_rate = final_rate; - #ifdef ADVANCE - block->initial_advance = initial_advance; - block->final_advance = final_advance; - #endif //ADVANCE - } - CRITICAL_SECTION_END; -} - -// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the -// acceleration within the allotted distance. -inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { - return sqrt(target_velocity*target_velocity-2*acceleration*60*60*distance); -} - -// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. -// This method will calculate the junction jerk as the euclidean distance between the nominal -// velocities of the respective blocks. -inline float junction_jerk(block_t *before, block_t *after) { - return sqrt( - pow((before->speed_x-after->speed_x), 2)+pow((before->speed_y-after->speed_y), 2)); -} - -// Return the safe speed which is max_jerk/2, e.g. the -// speed under which you cannot exceed max_jerk no matter what you do. -float safe_speed(block_t *block) { - float safe_speed; - safe_speed = max_xy_jerk/2; - if(abs(block->speed_z) > max_z_jerk/2) - safe_speed = max_z_jerk/2; - if (safe_speed > block->nominal_speed) - safe_speed = block->nominal_speed; - return safe_speed; -} - -// The kernel called by planner_recalculate() when scanning the plan from last to first entry. -void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - - float entry_speed = current->nominal_speed; - float exit_factor; - float exit_speed; - if (next) { - exit_speed = next->entry_speed; - } - else { - exit_speed = safe_speed(current); - } - - // Calculate the entry_factor for the current block. - if (previous) { - // Reduce speed so that junction_jerk is within the maximum allowed - float jerk = junction_jerk(previous, current); - if((previous->steps_x == 0) && (previous->steps_y == 0)) { - entry_speed = safe_speed(current); - } - else if (jerk > max_xy_jerk) { - entry_speed = (max_xy_jerk/jerk) * entry_speed; - } - if(abs(previous->speed_z - current->speed_z) > max_z_jerk) { - entry_speed = (max_z_jerk/abs(previous->speed_z - current->speed_z)) * entry_speed; - } - // If the required deceleration across the block is too rapid, reduce the entry_factor accordingly. - if (entry_speed > exit_speed) { - float max_entry_speed = max_allowable_speed(-current->acceleration,exit_speed, current->millimeters); - if (max_entry_speed < entry_speed) { - entry_speed = max_entry_speed; - } - } - } - else { - entry_speed = safe_speed(current); - } - // Store result - current->entry_speed = entry_speed; -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the reverse pass. -void planner_reverse_pass() { - char block_index = block_buffer_head; - if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { - block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); - block_t *block[5] = { - NULL, NULL, NULL, NULL, NULL }; - while(block_index != block_buffer_tail) { - block_index = (block_index-1) & (BLOCK_BUFFER_SIZE -1); - block[2]= block[1]; - block[1]= block[0]; - block[0] = &block_buffer[block_index]; - planner_reverse_pass_kernel(block[0], block[1], block[2]); - } - planner_reverse_pass_kernel(NULL, block[0], block[1]); - } -} - -// The kernel called by planner_recalculate() when scanning the plan from first to last entry. -void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { - if(!current) { - return; - } - if(previous) { - // If the previous block is an acceleration block, but it is not long enough to - // complete the full speed change within the block, we need to adjust out entry - // speed accordingly. Remember current->entry_factor equals the exit factor of - // the previous block. - if(previous->entry_speed < current->entry_speed) { - float max_entry_speed = max_allowable_speed(-previous->acceleration, previous->entry_speed, previous->millimeters); - if (max_entry_speed < current->entry_speed) { - current->entry_speed = max_entry_speed; - } - } - } -} - -// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This -// implements the forward pass. -void planner_forward_pass() { - char block_index = block_buffer_tail; - block_t *block[3] = { - NULL, NULL, NULL }; - - while(block_index != block_buffer_head) { - block[0] = block[1]; - block[1] = block[2]; - block[2] = &block_buffer[block_index]; - planner_forward_pass_kernel(block[0],block[1],block[2]); - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - planner_forward_pass_kernel(block[1], block[2], NULL); -} - -// Recalculates the trapezoid speed profiles for all blocks in the plan according to the -// entry_factor for each junction. Must be called by planner_recalculate() after -// updating the blocks. -void planner_recalculate_trapezoids() { - char block_index = block_buffer_tail; - block_t *current; - block_t *next = NULL; - while(block_index != block_buffer_head) { - current = next; - next = &block_buffer[block_index]; - if (current) { - calculate_trapezoid_for_block(current, current->entry_speed, next->entry_speed); - } - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - calculate_trapezoid_for_block(next, next->entry_speed, safe_speed(next)); -} - -// Recalculates the motion plan according to the following algorithm: -// -// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) -// so that: -// a. The junction jerk is within the set limit -// b. No speed reduction within one block requires faster deceleration than the one, true constant -// acceleration. -// 2. Go over every block in chronological order and dial down junction speed reduction values if -// a. The speed increase within one block would require faster accelleration than the one, true -// constant acceleration. -// -// When these stages are complete all blocks have an entry_factor that will allow all speed changes to -// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than -// the set limit. Finally it will: -// -// 3. Recalculate trapezoids for all blocks. - -void planner_recalculate() { - planner_reverse_pass(); - planner_forward_pass(); - planner_recalculate_trapezoids(); -} - -void plan_init() { - block_buffer_head = 0; - block_buffer_tail = 0; - memset(position, 0, sizeof(position)); // clear position -} - - -void plan_discard_current_block() { - if (block_buffer_head != block_buffer_tail) { - block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); - } -} - -block_t *plan_get_current_block() { - if (block_buffer_head == block_buffer_tail) { - return(NULL); - } - block_t *block = &block_buffer[block_buffer_tail]; - block->busy = true; - return(block); -} - -#ifdef AUTOTEMP -void getHighESpeed() -{ - if(degTargetHotend0()+2high) - { - high=se; - } - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - high_e_speed=high*axis_steps_per_unit[E_AXIS]/(1000000.0); //so it is independent of the esteps/mm. before - - float g=AUTOTEMP_MIN+high_e_speed*AUTOTEMP_FACTOR; - float t=constrain(AUTOTEMP_MIN,g,AUTOTEMP_MAX); - setTargetHotend0(t); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR("highe",high_e_speed); - SERIAL_ECHOPAIR(" t",t); - SERIAL_ECHOLN(""); -} -#endif - -void check_axes_activity() { - unsigned char x_active = 0; - unsigned char y_active = 0; - unsigned char z_active = 0; - unsigned char e_active = 0; - block_t *block; - - if(block_buffer_tail != block_buffer_head) { - char block_index = block_buffer_tail; - while(block_index != block_buffer_head) { - block = &block_buffer[block_index]; - if(block->steps_x != 0) x_active++; - if(block->steps_y != 0) y_active++; - if(block->steps_z != 0) z_active++; - if(block->steps_e != 0) e_active++; - block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); - } - } - if((DISABLE_X) && (x_active == 0)) disable_x(); - if((DISABLE_Y) && (y_active == 0)) disable_y(); - if((DISABLE_Z) && (z_active == 0)) disable_z(); - if((DISABLE_E) && (e_active == 0)) disable_e(); -} - -// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in -// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration -// calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate) -{ - // Calculate the buffer head after we push this byte - int next_buffer_head = (block_buffer_head + 1) & (BLOCK_BUFFER_SIZE - 1); - - // If the buffer is full: good! That means we are well ahead of the robot. - // Rest here until there is room in the buffer. - while(block_buffer_tail == next_buffer_head) { - manage_heater(); - manage_inactivity(1); - LCD_STATUS; - } - - // The target position of the tool in absolute steps - // Calculate target position in absolute steps - //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow - long target[4]; - target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); - target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); - target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - - // Prepare to set up new block - block_t *block = &block_buffer[block_buffer_head]; - - // Mark block as not busy (Not executed by the stepper interrupt) - block->busy = false; - - // Number of steps for each axis - block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); - block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); - block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); - block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); - block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); - - // Bail if this is a zero-length block - if (block->step_event_count <=dropsegments) { - return; - }; - - //enable active axes - if(block->steps_x != 0) enable_x(); - if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - - float delta_x_mm = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; - float delta_y_mm = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; - float delta_z_mm = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; - float delta_e_mm = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; - block->millimeters = sqrt(square(delta_x_mm) + square(delta_y_mm) + square(delta_z_mm) + square(delta_e_mm)); - - unsigned long microseconds; - - if (block->steps_e == 0) { - if(feed_ratemillimeters/feed_rate)*1000000); - - // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill - // reduces/removes corner blobs as the machine won't come to a full stop. - int blockcount=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); - - if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { - if (microsecondsspeed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - - - // Limit speed per axis - float speed_factor = 1; //factor <=1 do decrease speed - if(abs(block->speed_x) > max_feedrate[X_AXIS]) { - speed_factor = max_feedrate[X_AXIS] / abs(block->speed_x); - //if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; /is not need here because auf the init above - } - if(abs(block->speed_y) > max_feedrate[Y_AXIS]){ - float tmp_speed_factor = max_feedrate[Y_AXIS] / abs(block->speed_y); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_z) > max_feedrate[Z_AXIS]){ - float tmp_speed_factor = max_feedrate[Z_AXIS] / abs(block->speed_z); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - if(abs(block->speed_e) > max_feedrate[E_AXIS]){ - float tmp_speed_factor = max_feedrate[E_AXIS] / abs(block->speed_e); - if(speed_factor > tmp_speed_factor) speed_factor = tmp_speed_factor; - } - multiplier = multiplier * speed_factor; - block->speed_z = delta_z_mm * multiplier; - block->speed_x = delta_x_mm * multiplier; - block->speed_y = delta_y_mm * multiplier; - block->speed_e = delta_e_mm * multiplier; - block->nominal_speed = block->millimeters * multiplier; - block->nominal_rate = ceil(block->step_event_count * multiplier / 60); - - if(block->nominal_rate < 120) - block->nominal_rate = 120; - block->entry_speed = safe_speed(block); - - // Compute the acceleration rate for the trapezoid generator. - float travel_per_step = block->millimeters/block->step_event_count; - if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { - block->acceleration_st = ceil( (retract_acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - } - else { - block->acceleration_st = ceil( (acceleration)/travel_per_step); // convert to: acceleration steps/sec^2 - float tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - // Limit acceleration per axis - if((tmp_acceleration * block->steps_x) > axis_steps_per_sqr_second[X_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_y) > axis_steps_per_sqr_second[Y_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_e) > axis_steps_per_sqr_second[E_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - if((tmp_acceleration * block->steps_z) > axis_steps_per_sqr_second[Z_AXIS]) { - block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; - tmp_acceleration = (float)block->acceleration_st / (float)block->step_event_count; - } - } - block->acceleration = block->acceleration_st * travel_per_step; - block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); - - #ifdef ADVANCE - // Calculate advance rate - if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { - block->advance_rate = 0; - block->advance = 0; - } - else { - long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); - float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; - block->advance = advance; - if(acc_dist == 0) { - block->advance_rate = 0; - } - else { - block->advance_rate = advance / (float)acc_dist; - } - } - #endif // ADVANCE - - // compute a preliminary conservative acceleration trapezoid - float safespeed = safe_speed(block); - calculate_trapezoid_for_block(block, safespeed, safespeed); - - // Compute direction bits for this block - block->direction_bits = 0; - if (target[X_AXIS] < position[X_AXIS]) { - block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<. +*/ + +/* The ring buffer implementation gleaned from the wiring_serial library by David A. Mellis. */ + +/* + Reasoning behind the mathematics in this module (in the key of 'Mathematica'): + + s == speed, a == acceleration, t == time, d == distance + + Basic definitions: + + Speed[s_, a_, t_] := s + (a*t) + Travel[s_, a_, t_] := Integrate[Speed[s, a, t], t] + + Distance to reach a specific speed with a constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, d, t] + d -> (m^2 - s^2)/(2 a) --> estimate_acceleration_distance() + + Speed after a given distance of travel with constant acceleration: + + Solve[{Speed[s, a, t] == m, Travel[s, a, t] == d}, m, t] + m -> Sqrt[2 a d + s^2] + + DestinationSpeed[s_, a_, d_] := Sqrt[2 a d + s^2] + + When to start braking (di) to reach a specified destionation speed (s2) after accelerating + from initial speed s1 without ever stopping at a plateau: + + Solve[{DestinationSpeed[s1, a, di] == DestinationSpeed[s2, a, d - di]}, di] + di -> (2 a d - s1^2 + s2^2)/(4 a) --> intersection_distance() + + IntersectionDistance[s1_, s2_, a_, d_] := (2 a d - s1^2 + s2^2)/(4 a) +*/ + + +//#include +//#include +//#include + +#include "Marlin.h" +#include "Configuration.h" +#include "pins.h" +#include "fastio.h" +#include "planner.h" +#include "stepper.h" +#include "temperature.h" +#include "ultralcd.h" + +//=========================================================================== +//=============================public variables ============================ +//=========================================================================== + +unsigned long minsegmenttime; +float max_feedrate[4]; // set the max speeds +float axis_steps_per_unit[4]; +unsigned long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +float minimumfeedrate; +float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +float max_z_jerk; +float mintravelfeedrate; +unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + +// The current position of the tool in absolute steps +long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode +static float previous_speed[4]; // Speed of previous path line segment +static float previous_nominal_speed; // Nominal speed of previous path line segment + +#ifdef AUTOTEMP +float high_e_speed=0; +#endif + + +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== +static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions +static volatile unsigned char block_buffer_head; // Index of the next block to be pushed +static volatile unsigned char block_buffer_tail; // Index of the block to process now + +// Used for the frequency limit +static unsigned char old_direction_bits = 0; // Old direction bits. Used for speed calculations +static long x_segment_time[3]={0,0,0}; // Segment times (in us). Used for speed calculations +static long y_segment_time[3]={0,0,0}; + +// Returns the index of the next block in the ring buffer +// NOTE: Removed modulo (%) operator, which uses an expensive divide and multiplication. +static int8_t next_block_index(int8_t block_index) { + block_index++; + if (block_index == BLOCK_BUFFER_SIZE) { block_index = 0; } + return(block_index); +} + + +// Returns the index of the previous block in the ring buffer +static int8_t prev_block_index(int8_t block_index) { + if (block_index == 0) { block_index = BLOCK_BUFFER_SIZE; } + block_index--; + return(block_index); +} + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + +// Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the +// given acceleration: +inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { + if (acceleration!=0) { + return((target_rate*target_rate-initial_rate*initial_rate)/ + (2.0*acceleration)); + } + else { + return 0.0; // acceleration was 0, set acceleration distance to 0 + } +} + +// This function gives you the point at which you must start braking (at the rate of -acceleration) if +// you started at speed initial_rate and accelerated until this point and want to end at the final_rate after +// a total travel of distance. This can be used to compute the intersection point between acceleration and +// deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) + +inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { + if (acceleration!=0) { + return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ + (4.0*acceleration) ); + } + else { + return 0.0; // acceleration was 0, set intersection distance to 0 + } +} + +// Calculates trapezoid parameters so that the entry- and exit-speed is compensated by the provided factors. + +void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exit_factor) { + unsigned long initial_rate = ceil(block->nominal_rate*entry_factor); // (step/min) + unsigned long final_rate = ceil(block->nominal_rate*exit_factor); // (step/min) + + // Limit minimal step rate (Otherwise the timer will overflow.) + if(initial_rate <120) {initial_rate=120; } + if(final_rate < 120) {final_rate=120; } + + long acceleration = block->acceleration_st; + int32_t accelerate_steps = + ceil(estimate_acceleration_distance(block->initial_rate, block->nominal_rate, acceleration)); + int32_t decelerate_steps = + floor(estimate_acceleration_distance(block->nominal_rate, block->final_rate, -acceleration)); + + // Calculate the size of Plateau of Nominal Rate. + int32_t plateau_steps = block->step_event_count-accelerate_steps-decelerate_steps; + + // Is the Plateau of Nominal Rate smaller than nothing? That means no cruising, and we will + // have to use intersection_distance() to calculate when to abort acceleration and start braking + // in order to reach the final_rate exactly at the end of this block. + if (plateau_steps < 0) { + accelerate_steps = ceil( + intersection_distance(block->initial_rate, block->final_rate, acceleration, block->step_event_count)); + accelerate_steps = max(accelerate_steps,0); // Check limits due to numerical round-off + accelerate_steps = min(accelerate_steps,block->step_event_count); + plateau_steps = 0; + } + + #ifdef ADVANCE + long initial_advance = block->advance*entry_factor*entry_factor; + long final_advance = block->advance*exit_factor*exit_factor; + #endif // ADVANCE + + // block->accelerate_until = accelerate_steps; + // block->decelerate_after = accelerate_steps+plateau_steps; + + CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section + if(block->busy == false) { // Don't update variables if block is busy. + block->accelerate_until = accelerate_steps; + block->decelerate_after = accelerate_steps+plateau_steps; + block->initial_rate = initial_rate; + block->final_rate = final_rate; + #ifdef ADVANCE + block->initial_advance = initial_advance; + block->final_advance = final_advance; + #endif //ADVANCE + } + CRITICAL_SECTION_END; +} + +// Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the +// acceleration within the allotted distance. +inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { + return sqrt(target_velocity*target_velocity-2*acceleration*distance); +} + +// "Junction jerk" in this context is the immediate change in speed at the junction of two blocks. +// This method will calculate the junction jerk as the euclidean distance between the nominal +// velocities of the respective blocks. +//inline float junction_jerk(block_t *before, block_t *after) { +// return sqrt( +// pow((before->speed_x-after->speed_x), 2)+pow((before->speed_y-after->speed_y), 2)); +//} + + +// The kernel called by planner_recalculate() when scanning the plan from last to first entry. +void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!current) { return; } + + if (next) { + // If entry speed is already at the maximum entry speed, no need to recheck. Block is cruising. + // If not, block in state of acceleration or deceleration. Reset entry speed to maximum and + // check for maximum allowable speed reductions to ensure maximum possible planned speed. + if (current->entry_speed != current->max_entry_speed) { + + // If nominal length true, max junction speed is guaranteed to be reached. Only compute + // for max allowable speed if block is decelerating and nominal length is false. + if ((!current->nominal_length_flag) && (current->max_entry_speed > next->entry_speed)) { + current->entry_speed = min( current->max_entry_speed, + max_allowable_speed(-current->acceleration,next->entry_speed,current->millimeters)); + } else { + current->entry_speed = current->max_entry_speed; + } + current->recalculate_flag = true; + + } + } // Skip last block. Already initialized and set for recalculation. +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the reverse pass. +void planner_reverse_pass() { + char block_index = block_buffer_head; + if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { + block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); + block_t *block[3] = { NULL, NULL, NULL }; + while(block_index != block_buffer_tail) { + block_index = prev_block_index(block_index); + block[2]= block[1]; + block[1]= block[0]; + block[0] = &block_buffer[block_index]; + planner_reverse_pass_kernel(block[0], block[1], block[2]); + } + } +} + +// The kernel called by planner_recalculate() when scanning the plan from first to last entry. +void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *next) { + if(!previous) { return; } + + // If the previous block is an acceleration block, but it is not long enough to complete the + // full speed change within the block, we need to adjust the entry speed accordingly. Entry + // speeds have already been reset, maximized, and reverse planned by reverse planner. + // If nominal length is true, max junction speed is guaranteed to be reached. No need to recheck. + if (!previous->nominal_length_flag) { + if (previous->entry_speed < current->entry_speed) { + double entry_speed = min( current->entry_speed, + max_allowable_speed(-previous->acceleration,previous->entry_speed,previous->millimeters) ); + + // Check for junction speed change + if (current->entry_speed != entry_speed) { + current->entry_speed = entry_speed; + current->recalculate_flag = true; + } + } + } +} + +// planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This +// implements the forward pass. +void planner_forward_pass() { + char block_index = block_buffer_tail; + block_t *block[3] = { NULL, NULL, NULL }; + + while(block_index != block_buffer_head) { + block[0] = block[1]; + block[1] = block[2]; + block[2] = &block_buffer[block_index]; + planner_forward_pass_kernel(block[0],block[1],block[2]); + block_index = next_block_index(block_index); + } + planner_forward_pass_kernel(block[1], block[2], NULL); +} + +// Recalculates the trapezoid speed profiles for all blocks in the plan according to the +// entry_factor for each junction. Must be called by planner_recalculate() after +// updating the blocks. +void planner_recalculate_trapezoids() { + int8_t block_index = block_buffer_tail; + block_t *current; + block_t *next = NULL; + + while(block_index != block_buffer_head) { + current = next; + next = &block_buffer[block_index]; + if (current) { + // Recalculate if current block entry or exit junction speed has changed. + if (current->recalculate_flag || next->recalculate_flag) { + // NOTE: Entry and exit factors always > 0 by all previous logic operations. + calculate_trapezoid_for_block(current, current->entry_speed/current->nominal_speed, + next->entry_speed/current->nominal_speed); + current->recalculate_flag = false; // Reset current only to ensure next trapezoid is computed + } + } + block_index = next_block_index( block_index ); + } + // Last/newest block in buffer. Exit speed is set with MINIMUM_PLANNER_SPEED. Always recalculated. + if(next != NULL) { + calculate_trapezoid_for_block(next, next->entry_speed/next->nominal_speed, + MINIMUM_PLANNER_SPEED/next->nominal_speed); + next->recalculate_flag = false; + } +} + +// Recalculates the motion plan according to the following algorithm: +// +// 1. Go over every block in reverse order and calculate a junction speed reduction (i.e. block_t.entry_factor) +// so that: +// a. The junction jerk is within the set limit +// b. No speed reduction within one block requires faster deceleration than the one, true constant +// acceleration. +// 2. Go over every block in chronological order and dial down junction speed reduction values if +// a. The speed increase within one block would require faster accelleration than the one, true +// constant acceleration. +// +// When these stages are complete all blocks have an entry_factor that will allow all speed changes to +// be performed using only the one, true constant acceleration, and where no junction jerk is jerkier than +// the set limit. Finally it will: +// +// 3. Recalculate trapezoids for all blocks. + +void planner_recalculate() { + planner_reverse_pass(); + planner_forward_pass(); + planner_recalculate_trapezoids(); +} + +void plan_init() { + block_buffer_head = 0; + block_buffer_tail = 0; + memset(position, 0, sizeof(position)); // clear position + previous_speed[0] = 0.0; + previous_speed[1] = 0.0; + previous_speed[2] = 0.0; + previous_speed[3] = 0.0; + previous_nominal_speed = 0.0; +} + + +void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); + } +} + +block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} + +#ifdef AUTOTEMP +void getHighESpeed() +{ + if(degTargetHotend0()+2high) + { + high=se; + } + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + high_e_speed=high*axis_steps_per_unit[E_AXIS]/(1000000.0); //so it is independent of the esteps/mm. before + + float g=AUTOTEMP_MIN+high_e_speed*AUTOTEMP_FACTOR; + float t=constrain(AUTOTEMP_MIN,g,AUTOTEMP_MAX); + setTargetHotend0(t); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR("highe",high_e_speed); + SERIAL_ECHOPAIR(" t",t); + SERIAL_ECHOLN(""); +} +#endif + +void check_axes_activity() { + unsigned char x_active = 0; + unsigned char y_active = 0; + unsigned char z_active = 0; + unsigned char e_active = 0; + block_t *block; + + if(block_buffer_tail != block_buffer_head) { + char block_index = block_buffer_tail; + while(block_index != block_buffer_head) { + block = &block_buffer[block_index]; + if(block->steps_x != 0) x_active++; + if(block->steps_y != 0) y_active++; + if(block->steps_z != 0) z_active++; + if(block->steps_e != 0) e_active++; + block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); + } + } + if((DISABLE_X) && (x_active == 0)) disable_x(); + if((DISABLE_Y) && (y_active == 0)) disable_y(); + if((DISABLE_Z) && (z_active == 0)) disable_z(); + if((DISABLE_E) && (e_active == 0)) disable_e(); +} + + +float junction_deviation = 0.1; +// Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in +// mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration +// calculation the caller must also provide the physical length of the line in millimeters. +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate) +{ + // Calculate the buffer head after we push this byte + int next_buffer_head = next_block_index(block_buffer_head); + + // If the buffer is full: good! That means we are well ahead of the robot. + // Rest here until there is room in the buffer. + while(block_buffer_tail == next_buffer_head) { + manage_heater(); + manage_inactivity(1); + LCD_STATUS; + } + + // The target position of the tool in absolute steps + // Calculate target position in absolute steps + //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow + long target[4]; + target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + // Prepare to set up new block + block_t *block = &block_buffer[block_buffer_head]; + + // Mark block as not busy (Not executed by the stepper interrupt) + block->busy = false; + + // Number of steps for each axis + block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); + block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); + block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); + block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); + + // Bail if this is a zero-length block + if (block->step_event_count <=dropsegments) { return; }; + + // Compute direction bits for this block + block->direction_bits = 0; + if (target[X_AXIS] < position[X_AXIS]) { block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<steps_x != 0) enable_x(); + if(block->steps_y != 0) enable_y(); + if(block->steps_z != 0) enable_z(); + if(block->steps_e != 0) enable_e(); + + float delta_mm[4]; + delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; + delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + + square(delta_mm[Z_AXIS]) + square(delta_mm[E_AXIS])); + float inverse_millimeters = 1.0/block->millimeters; // Inverse millimeters to remove multiple divides + + // Calculate speed in mm/second for each axis. No divide by zero due to previous checks. + float inverse_second = feed_rate * inverse_millimeters; + + block->nominal_speed = block->millimeters * inverse_second; // (mm/sec) Always > 0 + block->nominal_rate = ceil(block->step_event_count * inverse_second); // (step/sec) Always > 0 + + // segment time im micro seconds + long segment_time = lround(1000000.0/inverse_second); + + + if (block->steps_e == 0) { + if(feed_rate0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { + if (segment_time max_feedrate[i]) + speed_factor = min(speed_factor, max_feedrate[i] / abs(current_speed[i])); + } + +// Max segement time in us. +#ifdef XY_FREQUENCY_LIMIT +#define MAX_FREQ_TIME (1000000.0/XY_FREQUENCY_LIMIT) + + // Check and limit the xy direction change frequency + unsigned char direction_change = block->direction_bits ^ old_direction_bits; + old_direction_bits = block->direction_bits; + + if((direction_change & (1< max_feedrate[i]) + speed_factor = min(speed_factor, max_feedrate[i] / abs(current_speed[i])); + /* + if(speed_factor < 0.1) { + Serial.print("speed factor : "); Serial.println(speed_factor); + Serial.print("current_speed"); Serial.print(i); Serial.print(" : "); Serial.println(current_speed[i]); + } + */ + } + for(unsigned char i=0; i < 4; i++) { + current_speed[i] *= speed_factor; + } + block->nominal_speed *= speed_factor; + block->nominal_rate *= speed_factor; + } + + // Compute and limit the acceleration rate for the trapezoid generator. + float steps_per_mm = block->step_event_count/block->millimeters; + if(block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0) { + block->acceleration_st = ceil(retract_acceleration * steps_per_mm); // convert to: acceleration steps/sec^2 + } + else { + block->acceleration_st = ceil(acceleration * steps_per_mm); // convert to: acceleration steps/sec^2 + // Limit acceleration per axis + if(((float)block->acceleration_st * (float)block->steps_x / (float)block->step_event_count) > axis_steps_per_sqr_second[X_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[X_AXIS]; + if(((float)block->acceleration_st * (float)block->steps_y / (float)block->step_event_count) > axis_steps_per_sqr_second[Y_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[Y_AXIS]; + if(((float)block->acceleration_st * (float)block->steps_e / (float)block->step_event_count) > axis_steps_per_sqr_second[E_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[E_AXIS]; + if(((float)block->acceleration_st * (float)block->steps_z / (float)block->step_event_count ) > axis_steps_per_sqr_second[Z_AXIS]) + block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; + } + block->acceleration = block->acceleration_st / steps_per_mm; + block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); + +#if 0 // Use old jerk for now + // Compute path unit vector + double unit_vec[3]; + + unit_vec[X_AXIS] = delta_mm[X_AXIS]*inverse_millimeters; + unit_vec[Y_AXIS] = delta_mm[Y_AXIS]*inverse_millimeters; + unit_vec[Z_AXIS] = delta_mm[Z_AXIS]*inverse_millimeters; + + // Compute maximum allowable entry speed at junction by centripetal acceleration approximation. + // Let a circle be tangent to both previous and current path line segments, where the junction + // deviation is defined as the distance from the junction to the closest edge of the circle, + // colinear with the circle center. The circular segment joining the two paths represents the + // path of centripetal acceleration. Solve for max velocity based on max acceleration about the + // radius of the circle, defined indirectly by junction deviation. This may be also viewed as + // path width or max_jerk in the previous grbl version. This approach does not actually deviate + // from path, but used as a robust way to compute cornering speeds, as it takes into account the + // nonlinearities of both the junction angle and junction velocity. + double vmax_junction = MINIMUM_PLANNER_SPEED; // Set default max junction speed + + // Skip first block or when previous_nominal_speed is used as a flag for homing and offset cycles. + if ((block_buffer_head != block_buffer_tail) && (previous_nominal_speed > 0.0)) { + // Compute cosine of angle between previous and current path. (prev_unit_vec is negative) + // NOTE: Max junction velocity is computed without sin() or acos() by trig half angle identity. + double cos_theta = - previous_unit_vec[X_AXIS] * unit_vec[X_AXIS] + - previous_unit_vec[Y_AXIS] * unit_vec[Y_AXIS] + - previous_unit_vec[Z_AXIS] * unit_vec[Z_AXIS] ; + + // Skip and use default max junction speed for 0 degree acute junction. + if (cos_theta < 0.95) { + vmax_junction = min(previous_nominal_speed,block->nominal_speed); + // Skip and avoid divide by zero for straight junctions at 180 degrees. Limit to min() of nominal speeds. + if (cos_theta > -0.95) { + // Compute maximum junction velocity based on maximum acceleration and junction deviation + double sin_theta_d2 = sqrt(0.5*(1.0-cos_theta)); // Trig half angle identity. Always positive. + vmax_junction = min(vmax_junction, + sqrt(block->acceleration * junction_deviation * sin_theta_d2/(1.0-sin_theta_d2)) ); + } + } + } +#endif + // Start with a safe speed + float vmax_junction = max_xy_jerk/2; + if(abs(current_speed[Z_AXIS]) > max_z_jerk/2) + vmax_junction = max_z_jerk/2; + vmax_junction = min(vmax_junction, block->nominal_speed); + + if ((block_buffer_head != block_buffer_tail) && (previous_nominal_speed > 0.0)) { + float jerk = sqrt(pow((current_speed[X_AXIS]-previous_speed[X_AXIS]), 2)+pow((current_speed[Y_AXIS]-previous_speed[Y_AXIS]), 2)); + if((previous_speed[X_AXIS] != 0.0) || (previous_speed[Y_AXIS] != 0.0)) { + vmax_junction = block->nominal_speed; + } + if (jerk > max_xy_jerk) { + vmax_junction *= (max_xy_jerk/jerk); + } + if(abs(current_speed[Z_AXIS] - previous_speed[Z_AXIS]) > max_z_jerk) { + vmax_junction *= (max_z_jerk/abs(current_speed[Z_AXIS] - previous_speed[Z_AXIS])); + } + } + block->max_entry_speed = vmax_junction; + + // Initialize block entry speed. Compute based on deceleration to user-defined MINIMUM_PLANNER_SPEED. + double v_allowable = max_allowable_speed(-block->acceleration,MINIMUM_PLANNER_SPEED,block->millimeters); + block->entry_speed = min(vmax_junction, v_allowable); + + // Initialize planner efficiency flags + // Set flag if block will always reach maximum junction speed regardless of entry/exit speeds. + // If a block can de/ac-celerate from nominal speed to zero within the length of the block, then + // the current block and next block junction speeds are guaranteed to always be at their maximum + // junction speeds in deceleration and acceleration, respectively. This is due to how the current + // block nominal speed limits both the current and next maximum junction speeds. Hence, in both + // the reverse and forward planners, the corresponding block junction speed will always be at the + // the maximum junction speed and may always be ignored for any speed reduction checks. + if (block->nominal_speed <= v_allowable) { block->nominal_length_flag = true; } + else { block->nominal_length_flag = false; } + block->recalculate_flag = true; // Always calculate trapezoid for new block + + // Update previous path unit_vector and nominal speed + memcpy(previous_speed, current_speed, sizeof(previous_speed)); // previous_speed[] = current_speed[] + previous_nominal_speed = block->nominal_speed; + + #ifdef ADVANCE + // Calculate advance rate + if((block->steps_e == 0) || (block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0)) { + block->advance_rate = 0; + block->advance = 0; + } + else { + long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); + float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * + (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + block->advance = advance; + if(acc_dist == 0) { + block->advance_rate = 0; + } + else { + block->advance_rate = advance / (float)acc_dist; + } + } + #endif // ADVANCE + + + + + calculate_trapezoid_for_block(block, block->entry_speed/block->nominal_speed, + MINIMUM_PLANNER_SPEED/block->nominal_speed); + + // Move buffer head + block_buffer_head = next_buffer_head; + + // Update position + memcpy(position, target, sizeof(target)); // position[] = target[] + + planner_recalculate(); + #ifdef AUTOTEMP + getHighESpeed(); + #endif + st_wake_up(); +} + +void plan_set_position(const float &x, const float &y, const float &z, const float &e) +{ + position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); + position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); + position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); + position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + previous_nominal_speed = 0.0; // Resets planner junction speeds. Assumes start from rest. + previous_speed[0] = 0.0; + previous_speed[1] = 0.0; + previous_speed[2] = 0.0; + previous_speed[3] = 0.0; +} + diff --git a/Marlin/planner.h b/Marlin/planner.h index c5bc5b8aa..be1587d6b 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -1,95 +1,98 @@ -/* - planner.h - buffers movement commands and manages the acceleration profile plan - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -// This module is to be considered a sub-module of stepper.c. Please don't include -// this file from any other module. - -#ifndef planner_h -#define planner_h - -#include "Configuration.h" - -// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in -// the source g-code and may never actually be reached if acceleration management is active. -typedef struct { - // Fields used by the bresenham algorithm for tracing the line - long steps_x, steps_y, steps_z, steps_e; // Step count along each axis - long step_event_count; // The number of step events required to complete this block - volatile long accelerate_until; // The index of the step event on which to stop acceleration - volatile long decelerate_after; // The index of the step event on which to start decelerating - volatile long acceleration_rate; // The acceleration rate used for acceleration calculation - unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) - #ifdef ADVANCE - long advance_rate; - volatile long initial_advance; - volatile long final_advance; - float advance; - #endif - - // Fields used by the motion planner to manage acceleration - float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis - float nominal_speed; // The nominal speed for this block in mm/min - float millimeters; // The total travel of this block in mm - float entry_speed; - float acceleration; // acceleration mm/sec^2 - - // Settings for the trapezoid generator - long nominal_rate; // The nominal step rate for this block in step_events/sec - volatile long initial_rate; // The jerk-adjusted step rate at start of block - volatile long final_rate; // The minimal rate at exit - long acceleration_st; // acceleration steps/sec^2 - volatile char busy; -} block_t; - -// Initialize the motion plan subsystem -void plan_init(); - -// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in -// millimaters. Feed rate specifies the speed of the motion. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate); - -// Set position. Used for G92 instructions. -void plan_set_position(const float &x, const float &y, const float &z, const float &e); - - -// Called when the current block is no longer needed. Discards the block and makes the memory -// availible for new blocks. -void plan_discard_current_block(); - -// Gets the current block. Returns NULL if buffer empty -block_t *plan_get_current_block(); - -void check_axes_activity(); - -extern unsigned long minsegmenttime; -extern float max_feedrate[4]; // set the max speeds -extern float axis_steps_per_unit[4]; -extern long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software -extern float minimumfeedrate; -extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX -extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX -extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. -extern float max_z_jerk; -extern float mintravelfeedrate; -extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; -#ifdef AUTOTEMP -extern float high_e_speed; -#endif -#endif +/* + planner.h - buffers movement commands and manages the acceleration profile plan + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +// This module is to be considered a sub-module of stepper.c. Please don't include +// this file from any other module. + +#ifndef planner_h +#define planner_h + +#include "Configuration.h" + +// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in +// the source g-code and may never actually be reached if acceleration management is active. +typedef struct { + // Fields used by the bresenham algorithm for tracing the line + long steps_x, steps_y, steps_z, steps_e; // Step count along each axis + long step_event_count; // The number of step events required to complete this block + long accelerate_until; // The index of the step event on which to stop acceleration + long decelerate_after; // The index of the step event on which to start decelerating + long acceleration_rate; // The acceleration rate used for acceleration calculation + unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) + #ifdef ADVANCE +// long advance_rate; +// volatile long initial_advance; +// volatile long final_advance; +// float advance; + #endif + + // Fields used by the motion planner to manage acceleration +// float speed_x, speed_y, speed_z, speed_e; // Nominal mm/minute for each axis + float nominal_speed; // The nominal speed for this block in mm/min + float entry_speed; // Entry speed at previous-current junction in mm/min + float max_entry_speed; // Maximum allowable junction entry speed in mm/min + float millimeters; // The total travel of this block in mm + float acceleration; // acceleration mm/sec^2 + unsigned char recalculate_flag; // Planner flag to recalculate trapezoids on entry junction + unsigned char nominal_length_flag; // Planner flag for nominal speed always reached + + // Settings for the trapezoid generator + unsigned long nominal_rate; // The nominal step rate for this block in step_events/sec + unsigned long initial_rate; // The jerk-adjusted step rate at start of block + unsigned long final_rate; // The minimal rate at exit + unsigned long acceleration_st; // acceleration steps/sec^2 + volatile char busy; +} block_t; + +// Initialize the motion plan subsystem +void plan_init(); + +// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in +// millimaters. Feed rate specifies the speed of the motion. +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate); + +// Set position. Used for G92 instructions. +void plan_set_position(const float &x, const float &y, const float &z, const float &e); + + +// Called when the current block is no longer needed. Discards the block and makes the memory +// availible for new blocks. +void plan_discard_current_block(); + +// Gets the current block. Returns NULL if buffer empty +block_t *plan_get_current_block(); + +void check_axes_activity(); + +extern unsigned long minsegmenttime; +extern float max_feedrate[4]; // set the max speeds +extern float axis_steps_per_unit[4]; +extern unsigned long max_acceleration_units_per_sq_second[4]; // Use M201 to override by software +extern float minimumfeedrate; +extern float acceleration; // Normal acceleration mm/s^2 THIS IS THE DEFAULT ACCELERATION for all moves. M204 SXXXX +extern float retract_acceleration; // mm/s^2 filament pull-pack and push-forward while standing still in the other axis M204 TXXXX +extern float max_xy_jerk; //speed than can be stopped at once, if i understand correctly. +extern float max_z_jerk; +extern float mintravelfeedrate; +extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +#ifdef AUTOTEMP +extern float high_e_speed; +#endif +#endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 23066ef32..2e232201b 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -1,664 +1,669 @@ -/* - stepper.c - stepper motor driver: executes motion plans using stepper motors - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith - and Philipp Tiefenbacher. */ - -#include "stepper.h" -#include "Configuration.h" -#include "Marlin.h" -#include "planner.h" -#include "pins.h" -#include "fastio.h" -#include "temperature.h" -#include "ultralcd.h" - -#include "speed_lookuptable.h" - - - -//=========================================================================== -//=============================public variables ============================ -//=========================================================================== -block_t *current_block; // A pointer to the block currently being traced - - - -//=========================================================================== -//=============================private variables ============================ -//=========================================================================== -//static makes it inpossible to be called from outside of this file by extern.! - -// Variables used by The Stepper Driver Interrupt -static unsigned char out_bits; // The next stepping-bits to be output -static long counter_x, // Counter variables for the bresenham line tracer - counter_y, - counter_z, - counter_e; -static unsigned long step_events_completed; // The number of step events executed in the current block -#ifdef ADVANCE - static long advance_rate, advance, final_advance = 0; - static short old_advance = 0; - static short e_steps; -#endif -static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. -static long acceleration_time, deceleration_time; -//static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; -static unsigned short acc_step_rate; // needed for deccelaration start point -static char step_loops; - -volatile long endstops_trigsteps[3]={0,0,0}; -volatile long endstops_stepsTotal,endstops_stepsDone; -static volatile bool endstops_hit=false; - -// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. -// for debugging purposes only, should be disabled by default -#ifdef DEBUG_STEPS - volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; - volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; -#endif - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== - - -// intRes = intIn1 * intIn2 >> 16 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 24 bit result -#define MultiU16X8toH16(intRes, charIn1, intIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %A1, %A2 \n\t" \ -"add %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r0 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (charIn1), \ -"d" (intIn2) \ -: \ -"r26" \ -) - -// intRes = longIn1 * longIn2 >> 24 -// uses: -// r26 to store 0 -// r27 to store the byte 1 of the 48bit result -#define MultiU24X24toH16(intRes, longIn1, longIn2) \ -asm volatile ( \ -"clr r26 \n\t" \ -"mul %A1, %B2 \n\t" \ -"mov r27, r1 \n\t" \ -"mul %B1, %C2 \n\t" \ -"movw %A0, r0 \n\t" \ -"mul %C1, %C2 \n\t" \ -"add %B0, r0 \n\t" \ -"mul %C1, %B2 \n\t" \ -"add %A0, r0 \n\t" \ -"adc %B0, r1 \n\t" \ -"mul %A1, %C2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %B2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %C1, %A2 \n\t" \ -"add r27, r0 \n\t" \ -"adc %A0, r1 \n\t" \ -"adc %B0, r26 \n\t" \ -"mul %B1, %A2 \n\t" \ -"add r27, r1 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"lsr r27 \n\t" \ -"adc %A0, r26 \n\t" \ -"adc %B0, r26 \n\t" \ -"clr r1 \n\t" \ -: \ -"=&r" (intRes) \ -: \ -"d" (longIn1), \ -"d" (longIn2) \ -: \ -"r26" , "r27" \ -) - -// Some useful constants - -#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1<step_event_count; - endstops_stepsDone=stepstaken; - endstops_trigsteps[0]=current_block->steps_x; - endstops_trigsteps[1]=current_block->steps_y; - endstops_trigsteps[2]=current_block->steps_z; - - endstops_hit=true; -} - -void checkHitEndstops() -{ - if( !endstops_hit) - return; - float endstops_triggerpos[3]={0,0,0}; - float ratiodone=endstops_stepsDone/float(endstops_stepsTotal); //ratio of current_block thas was performed - - endstops_triggerpos[0]=current_position[0]-(endstops_trigsteps[0]*ratiodone)/float(axis_steps_per_unit[0]); - endstops_triggerpos[1]=current_position[1]-(endstops_trigsteps[1]*ratiodone)/float(axis_steps_per_unit[1]); - endstops_triggerpos[2]=current_position[2]-(endstops_trigsteps[2]*ratiodone)/float(axis_steps_per_unit[2]); - SERIAL_ECHO_START; - SERIAL_ECHOPGM("endstops hit: "); - SERIAL_ECHOPAIR(" X:",endstops_triggerpos[0]); - SERIAL_ECHOPAIR(" Y:",endstops_triggerpos[1]); - SERIAL_ECHOPAIR(" Z:",endstops_triggerpos[2]); - SERIAL_ECHOLN(""); - endstops_hit=false; -} - -void endstops_hit_on_purpose() -{ - endstops_hit=false; -} - -// __________________________ -// /| |\ _________________ ^ -// / | | \ /| |\ | -// / | | \ / | | \ s -// / | | | | | \ p -// / | | | | | \ e -// +-----+------------------------+---+--+---------------+----+ e -// | BLOCK 1 | BLOCK 2 | d -// -// time -----> -// -// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates -// first block->accelerate_until step_events_completed, then keeps going at constant speed until -// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. -// The slope of acceleration is calculated with the leib ramp alghorithm. - -void st_wake_up() { - // TCNT1 = 0; - ENABLE_STEPPER_DRIVER_INTERRUPT(); -} - -inline unsigned short calc_timer(unsigned short step_rate) { - unsigned short timer; - if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; - - if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times - step_rate = step_rate >> 2; - step_loops = 4; - } - else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times - step_rate = step_rate >> 1; - step_loops = 2; - } - else { - step_loops = 1; - } - - if(step_rate < 32) step_rate = 32; - step_rate -= 32; // Correct for minimal speed - if(step_rate >= (8*256)){ // higher step rate - unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; - unsigned char tmp_step_rate = (step_rate & 0x00ff); - unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); - MultiU16X8toH16(timer, tmp_step_rate, gain); - timer = (unsigned short)pgm_read_word_near(table_address) - timer; - } - else { // lower step rates - unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; - table_address += ((step_rate)>>1) & 0xfffc; - timer = (unsigned short)pgm_read_word_near(table_address); - timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); - } - if(timer < 100) timer = 100; - return timer; -} - -// Initializes the trapezoid generator from the current block. Called whenever a new -// block begins. -inline void trapezoid_generator_reset() { - #ifdef ADVANCE - advance = current_block->initial_advance; - final_advance = current_block->final_advance; - #endif - deceleration_time = 0; - // advance_rate = current_block->advance_rate; - // step_rate to timer interval - acc_step_rate = current_block->initial_rate; - acceleration_time = calc_timer(acc_step_rate); - OCR1A = acceleration_time; -} - -// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. -// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. -ISR(TIMER1_COMPA_vect) -{ - if(busy){ - SERIAL_ERROR_START - SERIAL_ERROR(*(unsigned short *)OCR1A); - SERIAL_ERRORLNPGM(" ISR overtaking itself."); - return; - } // The busy-flag is used to avoid reentering this interrupt - - busy = true; - sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) - - // If there is no current block, attempt to pop one from the buffer - if (current_block == NULL) { - // Anything in the buffer? - current_block = plan_get_current_block(); - if (current_block != NULL) { - trapezoid_generator_reset(); - counter_x = -(current_block->step_event_count >> 1); - counter_y = counter_x; - counter_z = counter_x; - counter_e = counter_x; - step_events_completed = 0; - #ifdef ADVANCE - e_steps = 0; - #endif - } - else { -// DISABLE_STEPPER_DRIVER_INTERRUPT(); - } - } - - if (current_block != NULL) { - // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt - out_bits = current_block->direction_bits; - - #ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; - #endif //ADVANCE - - // Set direction en check limit switches - if ((out_bits & (1< -1 - if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } - #endif - } - else { // +direction - WRITE(X_DIR_PIN,!INVERT_X_DIR); - #ifdef DEBUG_STEPS - count_direction[X_AXIS]=1; - #endif - #if X_MAX_PIN > -1 - if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ - endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } - #endif - } - - if ((out_bits & (1< -1 - if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { - endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } - #endif - } - else { // +direction - WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - #ifdef DEBUG_STEPS - count_direction[Y_AXIS]=1; - #endif - #if Y_MAX_PIN > -1 - if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ - endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } - #endif - } - - if ((out_bits & (1< -1 - if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { - endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } - #endif - } - else { // +direction - WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - #ifdef DEBUG_STEPS - count_direction[Z_AXIS]=1; - #endif - #if Z_MAX_PIN > -1 - if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ - endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } - #endif - } - - #ifndef ADVANCE - if ((out_bits & (1<steps_x; - if (counter_x > 0) { - WRITE(X_STEP_PIN, HIGH); - counter_x -= current_block->step_event_count; - WRITE(X_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[X_AXIS]+=count_direction[X_AXIS]; - #endif - } - - counter_y += current_block->steps_y; - if (counter_y > 0) { - WRITE(Y_STEP_PIN, HIGH); - counter_y -= current_block->step_event_count; - WRITE(Y_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - #endif - } - - counter_z += current_block->steps_z; - if (counter_z > 0) { - WRITE(Z_STEP_PIN, HIGH); - counter_z -= current_block->step_event_count; - WRITE(Z_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Z_AXIS]+=count_direction[Z_AXIS]; - #endif - } - - #ifndef ADVANCE - counter_e += current_block->steps_e; - if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); - counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); - } - #endif //!ADVANCE - step_events_completed += 1; - if(step_events_completed >= current_block->step_event_count) break; - } - // Calculare new timer value - unsigned short timer; - unsigned short step_rate; - if (step_events_completed <= current_block->accelerate_until) { - MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); - acc_step_rate += current_block->initial_rate; - - // upper limit - if(acc_step_rate > current_block->nominal_rate) - acc_step_rate = current_block->nominal_rate; - - // step_rate to timer interval - timer = calc_timer(acc_step_rate); - #ifdef ADVANCE - advance += advance_rate; - #endif - acceleration_time += timer; - OCR1A = timer; - } - else if (step_events_completed > current_block->decelerate_after) { - MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); - - if(step_rate > acc_step_rate) { // Check step_rate stays positive - step_rate = current_block->final_rate; - } - else { - step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. - } - - // lower limit - if(step_rate < current_block->final_rate) - step_rate = current_block->final_rate; - - // step_rate to timer interval - timer = calc_timer(step_rate); - #ifdef ADVANCE - advance -= advance_rate; - if(advance < final_advance) - advance = final_advance; - #endif //ADVANCE - deceleration_time += timer; - OCR1A = timer; - } - // If current block is finished, reset pointer - if (step_events_completed >= current_block->step_event_count) { - current_block = NULL; - plan_discard_current_block(); - } - } - cli(); // disable interrupts - busy=false; -} - -#ifdef ADVANCE - unsigned char old_OCR0A; - // Timer interrupt for E. e_steps is set in the main routine; - // Timer 0 is shared with millies - ISR(TIMER0_COMPA_vect) - { - // Critical section needed because Timer 1 interrupt has higher priority. - // The pin set functions are placed on trategic position to comply with the stepper driver timing. - WRITE(E_STEP_PIN, LOW); - // Set E direction (Depends on E direction + advance) - if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); - e_steps++; - WRITE(E_STEP_PIN, HIGH); - } - if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); - } - old_OCR0A += 25; // 10kHz interrupt - OCR0A = old_OCR0A; - } -#endif // ADVANCE - -void st_init() -{ - //Initialize Dir Pins - #if X_DIR_PIN > -1 - SET_OUTPUT(X_DIR_PIN); - #endif - #if Y_DIR_PIN > -1 - SET_OUTPUT(Y_DIR_PIN); - #endif - #if Z_DIR_PIN > -1 - SET_OUTPUT(Z_DIR_PIN); - #endif - #if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); - #endif - - //Initialize Enable Pins - steppers default to disabled. - - #if (X_ENABLE_PIN > -1) - SET_OUTPUT(X_ENABLE_PIN); - if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); - #endif - #if (Y_ENABLE_PIN > -1) - SET_OUTPUT(Y_ENABLE_PIN); - if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); - #endif - #if (Z_ENABLE_PIN > -1) - SET_OUTPUT(Z_ENABLE_PIN); - if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); - #endif - #if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); - #endif - - //endstops and pullups - #ifdef ENDSTOPPULLUPS - #if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - WRITE(X_MIN_PIN,HIGH); - #endif - #if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - WRITE(X_MAX_PIN,HIGH); - #endif - #if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - WRITE(Y_MIN_PIN,HIGH); - #endif - #if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - WRITE(Y_MAX_PIN,HIGH); - #endif - #if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - WRITE(Z_MIN_PIN,HIGH); - #endif - #if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - WRITE(Z_MAX_PIN,HIGH); - #endif - #else //ENDSTOPPULLUPS - #if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); - #endif - #if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); - #endif - #if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); - #endif - #if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); - #endif - #if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); - #endif - #if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); - #endif - #endif //ENDSTOPPULLUPS - - - //Initialize Step Pins - #if (X_STEP_PIN > -1) - SET_OUTPUT(X_STEP_PIN); - #endif - #if (Y_STEP_PIN > -1) - SET_OUTPUT(Y_STEP_PIN); - #endif - #if (Z_STEP_PIN > -1) - SET_OUTPUT(Z_STEP_PIN); - #endif - #if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); - #endif - - // waveform generation = 0100 = CTC - TCCR1B &= ~(1<. +*/ + +/* The timer calculations of this module informed by the 'RepRap cartesian firmware' by Zack Smith + and Philipp Tiefenbacher. */ + +#include "stepper.h" +#include "Configuration.h" +#include "Marlin.h" +#include "planner.h" +#include "pins.h" +#include "fastio.h" +#include "temperature.h" +#include "ultralcd.h" + +#include "speed_lookuptable.h" + + + +//=========================================================================== +//=============================public variables ============================ +//=========================================================================== +block_t *current_block; // A pointer to the block currently being traced + + + +//=========================================================================== +//=============================private variables ============================ +//=========================================================================== +//static makes it inpossible to be called from outside of this file by extern.! + +// Variables used by The Stepper Driver Interrupt +static unsigned char out_bits; // The next stepping-bits to be output +static long counter_x, // Counter variables for the bresenham line tracer + counter_y, + counter_z, + counter_e; +static unsigned long step_events_completed; // The number of step events executed in the current block +#ifdef ADVANCE + static long advance_rate, advance, final_advance = 0; + static short old_advance = 0; + static short e_steps; +#endif +static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. +static long acceleration_time, deceleration_time; +//static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; +static unsigned short acc_step_rate; // needed for deccelaration start point +static char step_loops; + +volatile long endstops_trigsteps[3]={0,0,0}; +volatile long endstops_stepsTotal,endstops_stepsDone; +static volatile bool endstops_hit=false; + +// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. +// for debugging purposes only, should be disabled by default +#ifdef DEBUG_STEPS + volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; + volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; +#endif + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + + +// intRes = intIn1 * intIn2 >> 16 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 24 bit result +#define MultiU16X8toH16(intRes, charIn1, intIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %A1, %A2 \n\t" \ +"add %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r0 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (charIn1), \ +"d" (intIn2) \ +: \ +"r26" \ +) + +// intRes = longIn1 * longIn2 >> 24 +// uses: +// r26 to store 0 +// r27 to store the byte 1 of the 48bit result +#define MultiU24X24toH16(intRes, longIn1, longIn2) \ +asm volatile ( \ +"clr r26 \n\t" \ +"mul %A1, %B2 \n\t" \ +"mov r27, r1 \n\t" \ +"mul %B1, %C2 \n\t" \ +"movw %A0, r0 \n\t" \ +"mul %C1, %C2 \n\t" \ +"add %B0, r0 \n\t" \ +"mul %C1, %B2 \n\t" \ +"add %A0, r0 \n\t" \ +"adc %B0, r1 \n\t" \ +"mul %A1, %C2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %B2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %C1, %A2 \n\t" \ +"add r27, r0 \n\t" \ +"adc %A0, r1 \n\t" \ +"adc %B0, r26 \n\t" \ +"mul %B1, %A2 \n\t" \ +"add r27, r1 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"lsr r27 \n\t" \ +"adc %A0, r26 \n\t" \ +"adc %B0, r26 \n\t" \ +"clr r1 \n\t" \ +: \ +"=&r" (intRes) \ +: \ +"d" (longIn1), \ +"d" (longIn2) \ +: \ +"r26" , "r27" \ +) + +// Some useful constants + +#define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1<step_event_count; + endstops_stepsDone=stepstaken; + endstops_trigsteps[0]=current_block->steps_x; + endstops_trigsteps[1]=current_block->steps_y; + endstops_trigsteps[2]=current_block->steps_z; + + endstops_hit=true; +} + +void checkHitEndstops() +{ + if( !endstops_hit) + return; + float endstops_triggerpos[3]={0,0,0}; + float ratiodone=endstops_stepsDone/float(endstops_stepsTotal); //ratio of current_block thas was performed + + endstops_triggerpos[0]=current_position[0]-(endstops_trigsteps[0]*ratiodone)/float(axis_steps_per_unit[0]); + endstops_triggerpos[1]=current_position[1]-(endstops_trigsteps[1]*ratiodone)/float(axis_steps_per_unit[1]); + endstops_triggerpos[2]=current_position[2]-(endstops_trigsteps[2]*ratiodone)/float(axis_steps_per_unit[2]); + SERIAL_ECHO_START; + SERIAL_ECHOPGM("endstops hit: "); + SERIAL_ECHOPAIR(" X:",endstops_triggerpos[0]); + SERIAL_ECHOPAIR(" Y:",endstops_triggerpos[1]); + SERIAL_ECHOPAIR(" Z:",endstops_triggerpos[2]); + SERIAL_ECHOLN(""); + endstops_hit=false; +} + +void endstops_hit_on_purpose() +{ + endstops_hit=false; +} + +// __________________________ +// /| |\ _________________ ^ +// / | | \ /| |\ | +// / | | \ / | | \ s +// / | | | | | \ p +// / | | | | | \ e +// +-----+------------------------+---+--+---------------+----+ e +// | BLOCK 1 | BLOCK 2 | d +// +// time -----> +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. +// The slope of acceleration is calculated with the leib ramp alghorithm. + +void st_wake_up() { + // TCNT1 = 0; + if(busy == false) + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + +inline unsigned short calc_timer(unsigned short step_rate) { + unsigned short timer; + if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; + + if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times + step_rate = (step_rate >> 2)&0x3fff; + step_loops = 4; + } + else if(step_rate > 10000) { // If steprate > 10kHz >> step 2 times + step_rate = (step_rate >> 1)&0x7fff; + step_loops = 2; + } + else { + step_loops = 1; + } + + if(step_rate < 32) step_rate = 32; + step_rate -= 32; // Correct for minimal speed + if(step_rate >= (8*256)){ // higher step rate + unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; + unsigned char tmp_step_rate = (step_rate & 0x00ff); + unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); + MultiU16X8toH16(timer, tmp_step_rate, gain); + timer = (unsigned short)pgm_read_word_near(table_address) - timer; + } + else { // lower step rates + unsigned short table_address = (unsigned short)&speed_lookuptable_slow[0][0]; + table_address += ((step_rate)>>1) & 0xfffc; + timer = (unsigned short)pgm_read_word_near(table_address); + timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); + } + if(timer < 100) { timer = 100; Serial.print("Steprate to high : "); Serial.println(step_rate); }//(20kHz this should never happen) + return timer; +} + +// Initializes the trapezoid generator from the current block. Called whenever a new +// block begins. +inline void trapezoid_generator_reset() { + #ifdef ADVANCE + advance = current_block->initial_advance; + final_advance = current_block->final_advance; + #endif + deceleration_time = 0; + // step_rate to timer interval + acc_step_rate = current_block->initial_rate; + acceleration_time = calc_timer(acc_step_rate); + OCR1A = acceleration_time; +} + +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +ISR(TIMER1_COMPA_vect) +{ + if(busy){ + SERIAL_ERROR_START + SERIAL_ERROR(*(unsigned short *)OCR1A); + SERIAL_ERRORLNPGM(" ISR overtaking itself."); + return; + } // The busy-flag is used to avoid reentering this interrupt + + busy = true; + sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) + + // If there is no current block, attempt to pop one from the buffer + if (current_block == NULL) { + // Anything in the buffer? + current_block = plan_get_current_block(); + if (current_block != NULL) { + trapezoid_generator_reset(); + counter_x = -(current_block->step_event_count >> 1); + counter_y = counter_x; + counter_z = counter_x; + counter_e = counter_x; + step_events_completed = 0; + #ifdef ADVANCE + e_steps = 0; + #endif + } + else { +// DISABLE_STEPPER_DRIVER_INTERRUPT(); + } + } + + if (current_block != NULL) { + // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt + out_bits = current_block->direction_bits; + + #ifdef ADVANCE + // Calculate E early. + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; + #endif //ADVANCE + + // Set direction en check limit switches + if ((out_bits & (1< -1 + if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + // endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } + #endif + } + else { // +direction + WRITE(X_DIR_PIN,!INVERT_X_DIR); + #ifdef DEBUG_STEPS + count_direction[X_AXIS]=1; + #endif + #if X_MAX_PIN > -1 + if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ + // endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } + #endif + } + + if ((out_bits & (1< -1 + if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { + // endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } + #endif + } + else { // +direction + WRITE(Y_DIR_PIN,!INVERT_Y_DIR); + #ifdef DEBUG_STEPS + count_direction[Y_AXIS]=1; + #endif + #if Y_MAX_PIN > -1 + if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ + // endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } + #endif + } + + if ((out_bits & (1< -1 + if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { + endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } + #endif + } + else { // +direction + WRITE(Z_DIR_PIN,!INVERT_Z_DIR); + #ifdef DEBUG_STEPS + count_direction[Z_AXIS]=1; + #endif + #if Z_MAX_PIN > -1 + if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ + // endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } + #endif + } + + #ifndef ADVANCE + if ((out_bits & (1<steps_x; + if (counter_x > 0) { + WRITE(X_STEP_PIN, HIGH); + counter_x -= current_block->step_event_count; + WRITE(X_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[X_AXIS]+=count_direction[X_AXIS]; + #endif + } + + counter_y += current_block->steps_y; + if (counter_y > 0) { + WRITE(Y_STEP_PIN, HIGH); + counter_y -= current_block->step_event_count; + WRITE(Y_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Y_AXIS]+=count_direction[Y_AXIS]; + #endif + } + + counter_z += current_block->steps_z; + if (counter_z > 0) { + WRITE(Z_STEP_PIN, HIGH); + counter_z -= current_block->step_event_count; + WRITE(Z_STEP_PIN, LOW); + #ifdef DEBUG_STEPS + count_position[Z_AXIS]+=count_direction[Z_AXIS]; + #endif + } + + #ifndef ADVANCE + counter_e += current_block->steps_e; + if (counter_e > 0) { + WRITE(E_STEP_PIN, HIGH); + counter_e -= current_block->step_event_count; + WRITE(E_STEP_PIN, LOW); + } + #endif //!ADVANCE + step_events_completed += 1; + if(step_events_completed >= current_block->step_event_count) break; + } + // Calculare new timer value + unsigned short timer; + unsigned short step_rate; + if (step_events_completed <= current_block->accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); + acc_step_rate += current_block->initial_rate; + + // upper limit + if(acc_step_rate > current_block->nominal_rate) + acc_step_rate = current_block->nominal_rate; + + // step_rate to timer interval + timer = calc_timer(acc_step_rate); + #ifdef ADVANCE + advance += advance_rate; + #endif + acceleration_time += timer; + OCR1A = timer; + } + else if (step_events_completed > current_block->decelerate_after) { + MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); + + if(step_rate > acc_step_rate) { // Check step_rate stays positive + step_rate = current_block->final_rate; + } + else { + step_rate = acc_step_rate - step_rate; // Decelerate from aceleration end point. + } + + // lower limit + if(step_rate < current_block->final_rate) + step_rate = current_block->final_rate; + + // step_rate to timer interval + timer = calc_timer(step_rate); + #ifdef ADVANCE + advance -= advance_rate; + if(advance < final_advance) + advance = final_advance; + #endif //ADVANCE + deceleration_time += timer; + OCR1A = timer; + } + else { + timer = calc_timer(current_block->nominal_rate); + OCR1A = timer; + } + + // If current block is finished, reset pointer + if (step_events_completed >= current_block->step_event_count) { + current_block = NULL; + plan_discard_current_block(); + } + } + cli(); // disable interrupts + busy=false; +} + +#ifdef ADVANCE + unsigned char old_OCR0A; + // Timer interrupt for E. e_steps is set in the main routine; + // Timer 0 is shared with millies + ISR(TIMER0_COMPA_vect) + { + // Critical section needed because Timer 1 interrupt has higher priority. + // The pin set functions are placed on trategic position to comply with the stepper driver timing. + WRITE(E_STEP_PIN, LOW); + // Set E direction (Depends on E direction + advance) + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + old_OCR0A += 25; // 10kHz interrupt + OCR0A = old_OCR0A; + } +#endif // ADVANCE + +void st_init() +{ + //Initialize Dir Pins + #if X_DIR_PIN > -1 + SET_OUTPUT(X_DIR_PIN); + #endif + #if Y_DIR_PIN > -1 + SET_OUTPUT(Y_DIR_PIN); + #endif + #if Z_DIR_PIN > -1 + SET_OUTPUT(Z_DIR_PIN); + #endif + #if E_DIR_PIN > -1 + SET_OUTPUT(E_DIR_PIN); + #endif + + //Initialize Enable Pins - steppers default to disabled. + + #if (X_ENABLE_PIN > -1) + SET_OUTPUT(X_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); + #endif + #if (Y_ENABLE_PIN > -1) + SET_OUTPUT(Y_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); + #endif + #if (Z_ENABLE_PIN > -1) + SET_OUTPUT(Z_ENABLE_PIN); + if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); + #endif + #if (E_ENABLE_PIN > -1) + SET_OUTPUT(E_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); + #endif + + //endstops and pullups + #ifdef ENDSTOPPULLUPS + #if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + WRITE(X_MIN_PIN,HIGH); + #endif + #if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + WRITE(X_MAX_PIN,HIGH); + #endif + #if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + WRITE(Y_MIN_PIN,HIGH); + #endif + #if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + WRITE(Y_MAX_PIN,HIGH); + #endif + #if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + WRITE(Z_MIN_PIN,HIGH); + #endif + #if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + WRITE(Z_MAX_PIN,HIGH); + #endif + #else //ENDSTOPPULLUPS + #if X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); + #endif + #if X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); + #endif + #if Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); + #endif + #if Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); + #endif + #if Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); + #endif + #if Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); + #endif + #endif //ENDSTOPPULLUPS + + + //Initialize Step Pins + #if (X_STEP_PIN > -1) + SET_OUTPUT(X_STEP_PIN); + #endif + #if (Y_STEP_PIN > -1) + SET_OUTPUT(Y_STEP_PIN); + #endif + #if (Z_STEP_PIN > -1) + SET_OUTPUT(Z_STEP_PIN); + #endif + #if (E_STEP_PIN > -1) + SET_OUTPUT(E_STEP_PIN); + #endif + + // waveform generation = 0100 = CTC + TCCR1B &= ~(1<. - */ - -/* - This firmware is a mashup between Sprinter and grbl. - (https://github.com/kliment/Sprinter) - (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm - http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - This firmware is optimized for gen6 electronics. - */ - -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" -#include "Marlin.h" -#include "ultralcd.h" -#include "temperature.h" -#include "watchdog.h" - -//=========================================================================== -//=============================public variables============================ -//=========================================================================== -int target_raw[3] = {0, 0, 0}; -int current_raw[3] = {0, 0, 0}; - -#ifdef PIDTEMP - - // probably used external - float HeaterPower; - float pid_setpoint = 0.0; - - - float Kp=DEFAULT_Kp; - float Ki=DEFAULT_Ki; - float Kd=DEFAULT_Kd; - float Kc=DEFAULT_Kc; -#endif //PIDTEMP - - -//=========================================================================== -//=============================private variables============================ -//=========================================================================== -static bool temp_meas_ready = false; - -static unsigned long previous_millis_heater, previous_millis_bed_heater; - -#ifdef PIDTEMP - //static cannot be external: - static float temp_iState = 0; - static float temp_dState = 0; - static float pTerm; - static float iTerm; - static float dTerm; - //int output; - static float pid_error; - static float temp_iState_min; - static float temp_iState_max; - static float pid_input; - static float pid_output; - static bool pid_reset; - -#endif //PIDTEMP - -#ifdef WATCHPERIOD - static int watch_raw[3] = {-1000,-1000,-1000}; - static unsigned long watchmillis = 0; -#endif //WATCHPERIOD - -#ifdef HEATER_0_MINTEMP - static int minttemp_0 = temp2analog(HEATER_0_MINTEMP); -#endif //MINTEMP -#ifdef HEATER_0_MAXTEMP - static int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); -#endif //MAXTEMP - -#ifdef HEATER_1_MINTEMP - static int minttemp_1 = temp2analog(HEATER_1_MINTEMP); -#endif //MINTEMP -#ifdef HEATER_1_MAXTEMP - static int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); -#endif //MAXTEMP - -#ifdef BED_MINTEMP - static int bed_minttemp = temp2analog(BED_MINTEMP); -#endif //BED_MINTEMP -#ifdef BED_MAXTEMP - static int bed_maxttemp = temp2analog(BED_MAXTEMP); -#endif //BED_MAXTEMP - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== - -void updatePID() -{ -#ifdef PIDTEMP - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; -#endif -} - -void manage_heater() -{ - #ifdef USE_WATCHDOG - wd_reset(); - #endif - - float pid_input; - float pid_output; - if(temp_meas_ready != true) //better readability - return; - - CRITICAL_SECTION_START; - temp_meas_ready = false; - CRITICAL_SECTION_END; - - #ifdef PIDTEMP - pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); - - #ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ - pid_output = PID_MAX; - pid_reset = true; - } - else if(pid_error < -10) { - pid_output = 0; - pid_reset = true; - } - else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; - } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; - //K1 defined in Configuration.h in the PID settings - #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; - #ifdef PID_ADD_EXTRUSION_RATE - pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high - #endif - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - - } - #endif //PID_OPENLOOP - #ifdef PID_DEBUG - //SERIAL_ECHOLN(" PIDDEBUG Input "<= target_raw[0]) - { - WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } - #endif - - if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) - return; - previous_millis_bed_heater = millis(); - - #if TEMP_1_PIN > -1 - if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) - { - WRITE(HEATER_1_PIN,LOW); - } - else - { - WRITE(HEATER_1_PIN,HIGH); - } - #endif -} - -// Takes hot end temperature value as input and returns corresponding raw value. -// For a thermistor, it uses the RepRap thermistor temp table. -// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. -// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -int temp2analog(int celsius) { - #ifdef HEATER_0_USES_THERMISTOR - int raw = 0; - byte i; - - for (i=1; i raw) - { - celsius = heater_0_temptable[i-1][1] + - (raw - heater_0_temptable[i-1][0]) * - (float)(heater_0_temptable[i][1] - heater_0_temptable[i-1][1]) / - (float)(heater_0_temptable[i][0] - heater_0_temptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_0) celsius = heater_0_temptable[i-1][1]; - - return celsius; - #elif defined HEATER_0_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -// Derived from RepRap FiveD extruder::getTemperature() -// For bed temperature measurement. -float analog2tempBed(int raw) { - #ifdef BED_USES_THERMISTOR - int celsius = 0; - byte i; - - raw = (1023 * OVERSAMPLENR) - raw; - - for (i=1; i raw) - { - celsius = bedtemptable[i-1][1] + - (raw - bedtemptable[i-1][0]) * - (bedtemptable[i][1] - bedtemptable[i-1][1]) / - (bedtemptable[i][0] - bedtemptable[i-1][0]); - - break; - } - } - - // Overflow: Set to last value in the table - if (i == BNUMTEMPS) celsius = bedtemptable[i-1][1]; - - return celsius; - - #elif defined BED_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #endif -} - -void tp_init() -{ - #if (HEATER_0_PIN > -1) - SET_OUTPUT(HEATER_0_PIN); - #endif - #if (HEATER_1_PIN > -1) - SET_OUTPUT(HEATER_1_PIN); - #endif - #if (HEATER_2_PIN > -1) - SET_OUTPUT(HEATER_2_PIN); - #endif - - #ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; - #endif //PIDTEMP - - // Set analog inputs - ADCSRA = 1< -1 - target_raw[0]=0; - #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); - #endif - #endif - - #if TEMP_1_PIN > -1 - target_raw[1]=0; - #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); - #endif - #endif - - #if TEMP_2_PIN > -1 - target_raw[2]=0; - #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); - #endif - #endif -} - -// Timer 0 is shared with millies -ISR(TIMER0_COMPB_vect) -{ - //these variables are only accesible from the ISR, but static, so they don't loose their value - static unsigned char temp_count = 0; - static unsigned long raw_temp_0_value = 0; - static unsigned long raw_temp_1_value = 0; - static unsigned long raw_temp_2_value = 0; - static unsigned char temp_state = 0; - - switch(temp_state) { - case 0: // Prepare TEMP_0 - #if (TEMP_0_PIN > -1) - #if TEMP_0_PIN < 8 - DIDR0 = 1 << TEMP_0_PIN; - #else - DIDR2 = 1<<(TEMP_0_PIN - 8); - ADCSRB = 1< -1) - raw_temp_0_value += ADC; - #endif - temp_state = 2; - break; - case 2: // Prepare TEMP_1 - #if (TEMP_1_PIN > -1) - #if TEMP_1_PIN < 7 - DIDR0 = 1< -1) - raw_temp_1_value += ADC; - #endif - temp_state = 4; - break; - case 4: // Prepare TEMP_2 - #if (TEMP_2_PIN > -1) - #if TEMP_2_PIN < 7 - DIDR0 = 1 << TEMP_2_PIN; - #else - DIDR2 = 1<<(TEMP_2_PIN - 8); - ADCSRB = 1< -1) - raw_temp_2_value += ADC; - #endif - temp_state = 0; - temp_count++; - break; - default: - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temp measurement error!"); - break; - } - - if(temp_count >= 16) // 6 ms * 16 = 96ms. - { - #ifdef HEATER_0_USES_AD595 - current_raw[0] = raw_temp_0_value; - #else - current_raw[0] = 16383 - raw_temp_0_value; - #endif - - #ifdef HEATER_1_USES_AD595 - current_raw[2] = raw_temp_2_value; - #else - current_raw[2] = 16383 - raw_temp_2_value; - #endif - - #ifdef BED_USES_AD595 - current_raw[1] = raw_temp_1_value; - #else - current_raw[1] = 16383 - raw_temp_1_value; - #endif - - temp_meas_ready = true; - temp_count = 0; - raw_temp_0_value = 0; - raw_temp_1_value = 0; - raw_temp_2_value = 0; - #ifdef HEATER_0_MAXTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MAXTEMP triggered !!"); - kill(); - } - #endif - #endif - #ifdef HEATER_1_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - if(current_raw[2] >= maxttemp_1) { - analogWrite(HEATER_2_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MAXTEMP triggered !!"); - kill() - } - #endif - #endif //MAXTEMP - - #ifdef HEATER_0_MINTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif - - #ifdef HEATER_1_MINTEMP - #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - analogWrite(HEATER_2_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif //MAXTEMP - - #ifdef BED_MINTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperatur heated bed switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif - - #ifdef BED_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); - kill(); - } - #endif - #endif - } -} - - +/* + temperature.c - temperature control + Part of Marlin + + 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 . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + + This firmware is optimized for gen6 electronics. + */ +#include + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" +#include "Marlin.h" +#include "ultralcd.h" +#include "temperature.h" +#include "watchdog.h" + +//=========================================================================== +//=============================public variables============================ +//=========================================================================== +int target_raw[3] = {0, 0, 0}; +int current_raw[3] = {0, 0, 0}; + +#ifdef PIDTEMP + + // probably used external + float HeaterPower; + float pid_setpoint = 0.0; + + + float Kp=DEFAULT_Kp; + float Ki=DEFAULT_Ki; + float Kd=DEFAULT_Kd; + #ifdef PID_ADD_EXTRUSION_RATE + float Kc=DEFAULT_Kc; + #endif +#endif //PIDTEMP + + +//=========================================================================== +//=============================private variables============================ +//=========================================================================== +static bool temp_meas_ready = false; + +static unsigned long previous_millis_heater, previous_millis_bed_heater; + +#ifdef PIDTEMP + //static cannot be external: + static float temp_iState = 0; + static float temp_dState = 0; + static float pTerm; + static float iTerm; + static float dTerm; + //int output; + static float pid_error; + static float temp_iState_min; + static float temp_iState_max; + static float pid_input; + static float pid_output; + static bool pid_reset; + +#endif //PIDTEMP + +#ifdef WATCHPERIOD + static int watch_raw[3] = {-1000,-1000,-1000}; + static unsigned long watchmillis = 0; +#endif //WATCHPERIOD + +#ifdef HEATER_0_MINTEMP + static int minttemp_0 = temp2analog(HEATER_0_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_0_MAXTEMP + static int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); +#endif //MAXTEMP + +#ifdef HEATER_1_MINTEMP + static int minttemp_1 = temp2analog(HEATER_1_MINTEMP); +#endif //MINTEMP +#ifdef HEATER_1_MAXTEMP + static int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); +#endif //MAXTEMP + +#ifdef BED_MINTEMP + static int bed_minttemp = temp2analog(BED_MINTEMP); +#endif //BED_MINTEMP +#ifdef BED_MAXTEMP + static int bed_maxttemp = temp2analog(BED_MAXTEMP); +#endif //BED_MAXTEMP + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + +void updatePID() +{ +#ifdef PIDTEMP + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif +} + +void manage_heater() +{ + #ifdef USE_WATCHDOG + wd_reset(); + #endif + + float pid_input; + float pid_output; + if(temp_meas_ready != true) //better readability + return; + + CRITICAL_SECTION_START; + temp_meas_ready = false; + CRITICAL_SECTION_END; + + #ifdef PIDTEMP + pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + + #ifndef PID_OPENLOOP + pid_error = pid_setpoint - pid_input; + if(pid_error > 10){ + pid_output = PID_MAX; + pid_reset = true; + } + else if(pid_error < -10) { + pid_output = 0; + pid_reset = true; + } + else { + if(pid_reset == true) { + temp_iState = 0.0; + pid_reset = false; + } + pTerm = Kp * pid_error; + temp_iState += pid_error; + temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); + iTerm = Ki * temp_iState; + //K1 defined in Configuration.h in the PID settings + #define K2 (1.0-K1) + dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); + temp_dState = pid_input; +// #ifdef PID_ADD_EXTRUSION_RATE +// pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high +// #endif + pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); + + } + #endif //PID_OPENLOOP + #ifdef PID_DEBUG + //SERIAL_ECHOLN(" PIDDEBUG Input "<= target_raw[0]) + { + WRITE(HEATER_0_PIN,LOW); + } + else + { + WRITE(HEATER_0_PIN,HIGH); + } + #endif + + if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) + return; + previous_millis_bed_heater = millis(); + + #if TEMP_1_PIN > -1 + if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) + { + WRITE(HEATER_1_PIN,LOW); + } + else + { + WRITE(HEATER_1_PIN,HIGH); + } + #endif +} + +#define PGM_RD_W(x) (short)pgm_read_word(&x) +// Takes hot end temperature value as input and returns corresponding raw value. +// For a thermistor, it uses the RepRap thermistor temp table. +// This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. +// This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. +int temp2analog(int celsius) { + #ifdef HEATER_0_USES_THERMISTOR + int raw = 0; + byte i; + + for (i=1; i raw) + { + celsius = PGM_RD_W(heater_0_temptable[i-1][1]) + + (raw - PGM_RD_W(heater_0_temptable[i-1][0])) * + (float)(PGM_RD_W(heater_0_temptable[i][1]) - PGM_RD_W(heater_0_temptable[i-1][1])) / + (float)(PGM_RD_W(heater_0_temptable[i][0]) - PGM_RD_W(heater_0_temptable[i-1][0])); + break; + } + } + + // Overflow: Set to last value in the table + if (i == NUMTEMPS_HEATER_0) celsius = PGM_RD_W(heater_0_temptable[i-1][1]); + + return celsius; + #elif defined HEATER_0_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +// Derived from RepRap FiveD extruder::getTemperature() +// For bed temperature measurement. +float analog2tempBed(int raw) { + #ifdef BED_USES_THERMISTOR + int celsius = 0; + byte i; + + raw = (1023 * OVERSAMPLENR) - raw; + + for (i=1; i raw) + { + celsius = PGM_RD_W(bedtemptable[i-1][1]) + + (raw - PGM_RD_W(bedtemptable[i-1][0])) * + (PGM_RD_W(bedtemptable[i][1]) - PGM_RD_W(bedtemptable[i-1][1])) / + (PGM_RD_W(bedtemptable[i][0]) - PGM_RD_W(bedtemptable[i-1][0])); + + break; + } + } + + // Overflow: Set to last value in the table + if (i == BNUMTEMPS) celsius = PGM_RD_W(bedtemptable[i-1][1]); + + return celsius; + + #elif defined BED_USES_AD595 + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #endif +} + +void tp_init() +{ + #if (HEATER_0_PIN > -1) + SET_OUTPUT(HEATER_0_PIN); + #endif + #if (HEATER_1_PIN > -1) + SET_OUTPUT(HEATER_1_PIN); + #endif + #if (HEATER_2_PIN > -1) + SET_OUTPUT(HEATER_2_PIN); + #endif + + #ifdef PIDTEMP + temp_iState_min = 0.0; + temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + #endif //PIDTEMP + + // Set analog inputs + ADCSRA = 1< -1 + target_raw[0]=0; + #if HEATER_0_PIN > -1 + WRITE(HEATER_0_PIN,LOW); + #endif + #endif + + #if TEMP_1_PIN > -1 + target_raw[1]=0; + #if HEATER_1_PIN > -1 + WRITE(HEATER_1_PIN,LOW); + #endif + #endif + + #if TEMP_2_PIN > -1 + target_raw[2]=0; + #if HEATER_2_PIN > -1 + WRITE(HEATER_2_PIN,LOW); + #endif + #endif +} + +// Timer 0 is shared with millies +ISR(TIMER0_COMPB_vect) +{ + //these variables are only accesible from the ISR, but static, so they don't loose their value + static unsigned char temp_count = 0; + static unsigned long raw_temp_0_value = 0; + static unsigned long raw_temp_1_value = 0; + static unsigned long raw_temp_2_value = 0; + static unsigned char temp_state = 0; + + switch(temp_state) { + case 0: // Prepare TEMP_0 + #if (TEMP_0_PIN > -1) + #if TEMP_0_PIN < 8 + DIDR0 = 1 << TEMP_0_PIN; + #else + DIDR2 = 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) + raw_temp_0_value += ADC; + #endif + temp_state = 2; + break; + case 2: // Prepare TEMP_1 + #if (TEMP_1_PIN > -1) + #if TEMP_1_PIN < 7 + DIDR0 = 1< -1) + raw_temp_1_value += ADC; + #endif + temp_state = 4; + break; + case 4: // Prepare TEMP_2 + #if (TEMP_2_PIN > -1) + #if TEMP_2_PIN < 7 + DIDR0 = 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) + raw_temp_2_value += ADC; + #endif + temp_state = 0; + temp_count++; + break; + default: + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temp measurement error!"); + break; + } + + if(temp_count >= 16) // 6 ms * 16 = 96ms. + { + #ifdef HEATER_0_USES_AD595 + current_raw[0] = raw_temp_0_value; + #else + current_raw[0] = 16383 - raw_temp_0_value; + #endif + + #ifdef HEATER_1_USES_AD595 + current_raw[2] = raw_temp_2_value; + #else + current_raw[2] = 16383 - raw_temp_2_value; + #endif + + #ifdef BED_USES_AD595 + current_raw[1] = raw_temp_1_value; + #else + current_raw[1] = 16383 - raw_temp_1_value; + #endif + + temp_meas_ready = true; + temp_count = 0; + raw_temp_0_value = 0; + raw_temp_1_value = 0; + raw_temp_2_value = 0; + #ifdef HEATER_0_MAXTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MAXTEMP triggered !!"); + kill(); + } + #endif + #endif + #ifdef HEATER_1_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + if(current_raw[2] >= maxttemp_1) { + analogWrite(HEATER_2_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MAXTEMP triggered !!"); + kill() + } + #endif + #endif //MAXTEMP + + #ifdef HEATER_0_MINTEMP + #if (HEATER_0_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { + target_raw[TEMPSENSOR_HOTEND_0] = 0; + analogWrite(HEATER_0_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif + + #ifdef HEATER_1_MINTEMP + #if (HEATER_2_PIN > -1) + if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { + target_raw[TEMPSENSOR_HOTEND_1] = 0; + analogWrite(HEATER_2_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif //MAXTEMP + + #ifdef BED_MINTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] <= bed_minttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperatur heated bed switched off. MINTEMP triggered !!"); + kill(); + } + #endif + #endif + + #ifdef BED_MAXTEMP + #if (HEATER_1_PIN > -1) + if(current_raw[1] >= bed_maxttemp) { + target_raw[1] = 0; + WRITE(HEATER_1_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); + kill(); + } + #endif + #endif + } +} + + diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index fbd2ef144..22d9f0248 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -1,12 +1,14 @@ #ifndef THERMISTORTABLES_H_ #define THERMISTORTABLES_H_ +#include + #define OVERSAMPLENR 16 #if (THERMISTORHEATER_0 == 1) || (THERMISTORHEATER_1 == 1) || (THERMISTORBED == 1) //100k bed thermistor #define NUMTEMPS_1 61 -const short temptable_1[NUMTEMPS_1][2] = { +const short temptable_1[NUMTEMPS_1][2] PROGMEM = { { 23*OVERSAMPLENR , 300 }, { 25*OVERSAMPLENR , 295 }, { 27*OVERSAMPLENR , 290 }, @@ -72,7 +74,7 @@ const short temptable_1[NUMTEMPS_1][2] = { #endif #if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORBED == 2) //200k bed thermistor #define NUMTEMPS_2 21 -const short temptable_2[NUMTEMPS_2][2] = { +const short temptable_2[NUMTEMPS_2][2] PROGMEM = { {1*OVERSAMPLENR, 848}, {54*OVERSAMPLENR, 275}, {107*OVERSAMPLENR, 228}, @@ -99,7 +101,7 @@ const short temptable_2[NUMTEMPS_2][2] = { #endif #if (THERMISTORHEATER_0 == 3) || (THERMISTORHEATER_1 == 3) || (THERMISTORBED == 3) //mendel-parts #define NUMTEMPS_3 28 -const short temptable_3[NUMTEMPS_3][2] = { +const short temptable_3[NUMTEMPS_3][2] PROGMEM = { {1*OVERSAMPLENR,864}, {21*OVERSAMPLENR,300}, {25*OVERSAMPLENR,290}, @@ -134,7 +136,7 @@ const short temptable_3[NUMTEMPS_3][2] = { #if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORBED == 4) //10k thermistor #define NUMTEMPS_4 20 -short temptable_4[NUMTEMPS_4][2] = { +const short temptable_4[NUMTEMPS_4][2] PROGMEM = { {1*OVERSAMPLENR, 430}, {54*OVERSAMPLENR, 137}, {107*OVERSAMPLENR, 107}, @@ -161,7 +163,7 @@ short temptable_4[NUMTEMPS_4][2] = { #if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) #define NUMTEMPS_5 61 -const short temptable_5[NUMTEMPS_5][2] = { +const short temptable_5[NUMTEMPS_5][2] PROGMEM = { {1*OVERSAMPLENR, 713}, {18*OVERSAMPLENR, 316}, {35*OVERSAMPLENR, 266}, @@ -228,7 +230,7 @@ const short temptable_5[NUMTEMPS_5][2] = { #if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor #define NUMTEMPS_6 36 -const short temptable_6[NUMTEMPS_6][2] = { +const short temptable_6[NUMTEMPS_6][2] PROGMEM = { {28*OVERSAMPLENR, 250}, {31*OVERSAMPLENR, 245}, {35*OVERSAMPLENR, 240}, @@ -270,7 +272,7 @@ const short temptable_6[NUMTEMPS_6][2] = { #if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 #define NUMTEMPS_7 54 -const short temptable_7[NUMTEMPS_7][2] = { +const short temptable_7[NUMTEMPS_7][2] PROGMEM = { {46*OVERSAMPLENR, 270}, {50*OVERSAMPLENR, 265}, {54*OVERSAMPLENR, 260}, diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index c836757e1..6bae43dcc 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -1,102 +1,103 @@ -#ifndef __ULTRALCDH -#define __ULTRALCDH -#include "Configuration.h" - -#ifdef ULTRA_LCD - - void lcd_status(); - void lcd_init(); - void lcd_status(const char* message); - void beep(); - void buttons_check(); - - - #define LCD_UPDATE_INTERVAL 100 - #define STATUSTIMEOUT 15000 - - - #include - extern LiquidCrystal lcd; - - - #ifdef NEWPANEL - - - #define EN_C (1< + extern LiquidCrystal lcd; + + + #ifdef NEWPANEL + + + #define EN_C (1< Date: Fri, 18 Nov 2011 18:59:17 +0100 Subject: [PATCH 060/430] Advance experiments. Not working yet. --- Marlin/Configuration.h | 45 ++++++++++++-------------- Marlin/Marlin.pde | 3 +- Marlin/stepper.cpp | 72 ++++++++++++++++++++++-------------------- Marlin/watchdog.pde | 6 ++-- 4 files changed, 61 insertions(+), 65 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 3b0cfacfe..7cbb66cf7 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -11,7 +11,7 @@ // Frequency limit // See nophead's blog for more info -// Not working OK +// Not working O //#define XY_FREQUENCY_LIMIT 15 // Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end @@ -31,7 +31,7 @@ // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, // Teensylu = 8 -#define MOTHERBOARD 7 +#define MOTHERBOARD 5 //=========================================================================== //=============================Thermal Settings ============================ @@ -45,9 +45,9 @@ // 5 is ParCan supplied 104GT-2 100K // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define THERMISTORHEATER_0 3 -#define THERMISTORHEATER_1 3 -#define THERMISTORBED 3 +//#define THERMISTORHEATER_0 3 +//#define THERMISTORHEATER_1 3 +//#define THERMISTORBED 3 //#define HEATER_0_USES_THERMISTOR //#define HEATER_1_USES_THERMISTOR @@ -120,9 +120,15 @@ // #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) // #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) +// Ultitmaker #define DEFAULT_Kp 22.2 #define DEFAULT_Ki (1.25*PID_dT) #define DEFAULT_Kd (99/PID_dT) + +// Mendel Parts V9 on 12V +// #define DEFAULT_Kp 63.0 +// #define DEFAULT_Ki (2.25*PID_dT) +// #define DEFAULT_Kd (440/PID_dT) #endif #ifdef PID_PI @@ -141,13 +147,6 @@ #endif // PIDTEMP - - - - - - - //=========================================================================== //=============================Mechanical Settings=========================== //=========================================================================== @@ -178,10 +177,10 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true //#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +//#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +//#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +//#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +//#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false //// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN @@ -243,13 +242,10 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // this enables the watchdog interrupt. -#define USE_WATCHDOG +//#define USE_WATCHDOG // you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: -#define RESET_MANUAL -#define WATCHDOG_TIMEOUT 4 //seconds - - - +//#define RESET_MANUAL +//#define WATCHDOG_TIMEOUT 4 //seconds // extruder advance constant (s2/mm3) // @@ -275,7 +271,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //#define ULTRA_LCD //general lcd support, also 16x2 //#define SDSUPPORT // Enable SD Card Support in Hardware Console -#define ULTIPANEL +//#define ULTIPANEL #ifdef ULTIPANEL // #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT @@ -307,8 +303,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define AUTOTEMP_FACTOR 1000. //current target temperature= min+largest buffered espeeds)*FACTOR - -const int dropsegments=0; //everything with less than this number of steps will be ignored as move and joined with the next movement +const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement //=========================================================================== //=============================Buffers ============================ diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 9f84f6c33..3a6d4e672 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -232,10 +232,9 @@ void setup() axis_steps_per_sqr_second[i] = max_acceleration_units_per_sq_second[i] * axis_steps_per_unit[i]; } - + tp_init(); // Initialize temperature loop plan_init(); // Initialize planner; st_init(); // Initialize stepper; - tp_init(); // Initialize temperature loop } diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 2e232201b..b08e61ae4 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -56,8 +56,8 @@ static unsigned long step_events_completed; // The number of step events execute #ifdef ADVANCE static long advance_rate, advance, final_advance = 0; static short old_advance = 0; - static short e_steps; #endif +static short e_steps; static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. static long acceleration_time, deceleration_time; //static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; @@ -156,7 +156,7 @@ asm volatile ( \ #define DISABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 &= ~(1< interrupt out_bits = current_block->direction_bits; - #ifdef ADVANCE - // Calculate E early. - counter_e += current_block->steps_e; - if (counter_e > 0) { - counter_e -= current_block->step_event_count; - if ((out_bits & (1<> 16) - old_advance); - CRITICAL_SECTION_END; - old_advance = advance >> 16; - #endif //ADVANCE - // Set direction en check limit switches if ((out_bits & (1< -1 - if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - // endstops_triggered(step_events_completed); - step_events_completed = current_block->step_event_count; - } + if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { + // endstops_triggered(step_events_completed); + step_events_completed = current_block->step_event_count; + } #endif } else { // +direction @@ -355,7 +332,7 @@ ISR(TIMER1_COMPA_vect) // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } - #endif + #endif } if ((out_bits & (1< -1 if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { - // endstops_triggered(step_events_completed); +// endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -390,7 +367,7 @@ ISR(TIMER1_COMPA_vect) #endif #if Z_MIN_PIN > -1 if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { - endstops_triggered(step_events_completed); + // endstops_triggered(step_events_completed); step_events_completed = current_block->step_event_count; } #endif @@ -416,6 +393,30 @@ ISR(TIMER1_COMPA_vect) #endif //!ADVANCE for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) + /* + counter_e += current_block->steps_e; + if (counter_e > 0) { + counter_e -= current_block->step_event_count; + if ((out_bits & (1<> 16) - old_advance); + CRITICAL_SECTION_END; + old_advance = advance >> 16; + */ + counter_x += current_block->steps_x; if (counter_x > 0) { WRITE(X_STEP_PIN, HIGH); @@ -649,7 +650,8 @@ void st_init() TCCR1B = (TCCR1B & ~(0x07< Date: Fri, 18 Nov 2011 19:46:16 +0100 Subject: [PATCH 061/430] Fixed bug in configuration.h --- Marlin/Configuration.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index cf38cea36..9bcddc872 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -31,7 +31,7 @@ // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, // Teensylu = 8 -#define MOTHERBOARD 5 +#define MOTHERBOARD 7 //=========================================================================== //=============================Thermal Settings ============================ @@ -176,10 +176,10 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true //#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false -//#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -//#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -//#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -//#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false //// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN @@ -242,11 +242,11 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // this enables the watchdog interrupt. //#define USE_WATCHDOG -#ifdef USE_WATCHDOG +//#ifdef USE_WATCHDOG // you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: //#define RESET_MANUAL //#define WATCHDOG_TIMEOUT 4 //seconds - +//#endif // extruder advance constant (s2/mm3) // @@ -272,7 +272,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //#define ULTRA_LCD //general lcd support, also 16x2 //#define SDSUPPORT // Enable SD Card Support in Hardware Console -//#define ULTIPANEL +#define ULTIPANEL #ifdef ULTIPANEL // #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT From 64f2121ab1ba530753715c19574721f55076bdb0 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Fri, 18 Nov 2011 22:17:37 +0100 Subject: [PATCH 062/430] updated to sdfatlib2010902 --- Marlin/Configuration.h | 6 +- Marlin/Marlin.pde | 20 +- Marlin/Sd2Card.cpp | 443 +++--- Marlin/Sd2Card.h | 253 ++-- Marlin/Sd2PinMap.h | 83 +- Marlin/SdBaseFile.cpp | 1818 +++++++++++++++++++++++ Marlin/SdBaseFile.h | 489 ++++++ Marlin/SdFat.cpp | 329 ++++ Marlin/SdFat.h | 561 +------ Marlin/SdFatConfig.h | 108 ++ Marlin/{FatStructs.h => SdFatStructs.h} | 1022 +++++++------ Marlin/SdFatUtil.cpp | 74 + Marlin/SdFatUtil.h | 54 +- Marlin/SdFatmainpage.h | 202 --- Marlin/SdFile.cpp | 1215 +-------------- Marlin/SdFile.h | 42 + Marlin/SdInfo.h | 237 +-- Marlin/SdVolume.cpp | 278 ++-- Marlin/SdVolume.h | 211 +++ Marlin/cardreader.h | 1 + merging still needs.txt | 58 - 21 files changed, 4502 insertions(+), 3002 deletions(-) create mode 100644 Marlin/SdBaseFile.cpp create mode 100644 Marlin/SdBaseFile.h create mode 100644 Marlin/SdFat.cpp create mode 100644 Marlin/SdFatConfig.h rename Marlin/{FatStructs.h => SdFatStructs.h} (59%) create mode 100644 Marlin/SdFatUtil.cpp delete mode 100644 Marlin/SdFatmainpage.h create mode 100644 Marlin/SdFile.h create mode 100644 Marlin/SdVolume.h delete mode 100644 merging still needs.txt diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 1e12d4e22..f1f0c651c 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,8 +4,8 @@ // This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 +//#define BAUDRATE 250000 +#define BAUDRATE 115200 //#define BAUDRATE 230400 @@ -277,7 +277,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define ULTIPANEL #ifdef ULTIPANEL -// #define NEWPANEL //enable this if you have a click-encoder panel + #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT #define ULTRA_LCD #define LCD_WIDTH 20 diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index f808742c9..db5136139 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -26,6 +26,7 @@ */ #include + #include "EEPROMwrite.h" #include "fastio.h" #include "Configuration.h" @@ -391,9 +392,15 @@ inline void get_command() while( !card.eof() && buflen < BUFSIZE) { int16_t n=card.get(); serial_char = (char)n; +// Serial.print((char)serial_char); +// Serial.print(" "); +// Serial.println((int)serial_count); if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1)||n==-1) { - +// if(serial_char == '\n' || serial_char == '\r' ) +// Serial.println("newline or :"); +// if(serial_count >= (MAX_CMD_SIZE - 1)) +// Serial.println("too long line"); if(card.eof()){ card.sdprinting = false; SERIAL_PROTOCOLLNPGM("Done printing file"); @@ -409,15 +416,20 @@ inline void get_command() LCD_MESSAGE(time); card.checkautostart(true); } - if(!serial_count) - return; //if empty line + if(serial_char=='\n') + comment_mode = false; //for new command + if(!serial_count) + { +// Serial.println("empty line"); + return; //if empty line + } cmdbuffer[bufindw][serial_count] = 0; //terminate string if(!comment_mode){ fromsd[bufindw] = true; buflen += 1; bufindw = (bufindw + 1)%BUFSIZE; } - comment_mode = false; //for new command + serial_count = 0; //clear buffer } else diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp index 8222cfd93..ab060c121 100644 --- a/Marlin/Sd2Card.cpp +++ b/Marlin/Sd2Card.cpp @@ -17,28 +17,77 @@ * along with the Arduino Sd2Card Library. If not, see * . */ +#if ARDUINO < 100 #include +#else // ARDUINO +#include +#endif // ARDUINO #include "Sd2Card.h" //------------------------------------------------------------------------------ #ifndef SOFTWARE_SPI // functions for hardware SPI -/** Send a byte to the card */ +//------------------------------------------------------------------------------ +// make sure SPCR rate is in expected bits +#if (SPR0 != 0 || SPR1 != 1) +#error unexpected SPCR bits +#endif +/** + * Initialize hardware SPI + * Set SCK rate to F_CPU/pow(2, 1 + spiRate) for spiRate [0,6] + */ +static void spiInit(uint8_t spiRate) { + // See avr processor documentation + SPCR = (1 << SPE) | (1 << MSTR) | (spiRate >> 1); + SPSR = spiRate & 1 || spiRate == 6 ? 0 : 1 << SPI2X; +} +//------------------------------------------------------------------------------ +/** SPI receive a byte */ +static uint8_t spiRec() { + SPDR = 0XFF; + while (!(SPSR & (1 << SPIF))); + return SPDR; +} +//------------------------------------------------------------------------------ +/** SPI read data - only one call so force inline */ +static inline __attribute__((always_inline)) + void spiRead(uint8_t* buf, uint16_t nbyte) { + if (nbyte-- == 0) return; + SPDR = 0XFF; + for (uint16_t i = 0; i < nbyte; i++) { + while (!(SPSR & (1 << SPIF))); + buf[i] = SPDR; + SPDR = 0XFF; + } + while (!(SPSR & (1 << SPIF))); + buf[nbyte] = SPDR; +} +//------------------------------------------------------------------------------ +/** SPI send a byte */ static void spiSend(uint8_t b) { SPDR = b; while (!(SPSR & (1 << SPIF))); } -/** Receive a byte from the card */ -static uint8_t spiRec(void) { - spiSend(0XFF); - return SPDR; +//------------------------------------------------------------------------------ +/** SPI send block - only one call so force inline */ +static inline __attribute__((always_inline)) + void spiSendBlock(uint8_t token, const uint8_t* buf) { + SPDR = token; + for (uint16_t i = 0; i < 512; i += 2) { + while (!(SPSR & (1 << SPIF))); + SPDR = buf[i]; + while (!(SPSR & (1 << SPIF))); + SPDR = buf[i + 1]; + } + while (!(SPSR & (1 << SPIF))); } +//------------------------------------------------------------------------------ #else // SOFTWARE_SPI //------------------------------------------------------------------------------ /** nop to tune soft SPI timing */ #define nop asm volatile ("nop\n\t") //------------------------------------------------------------------------------ -/** Soft SPI receive */ -uint8_t spiRec(void) { +/** Soft SPI receive byte */ +static uint8_t spiRec() { uint8_t data = 0; // no interrupts during byte receive - about 8 us cli(); @@ -63,8 +112,15 @@ uint8_t spiRec(void) { return data; } //------------------------------------------------------------------------------ -/** Soft SPI send */ -void spiSend(uint8_t data) { +/** Soft SPI read data */ +static void spiRead(uint8_t* buf, uint16_t nbyte) { + for (uint16_t i = 0; i < nbyte; i++) { + buf[i] = spiRec(); + } +} +//------------------------------------------------------------------------------ +/** Soft SPI send byte */ +static void spiSend(uint8_t data) { // no interrupts during byte send - about 8 us cli(); for (uint8_t i = 0; i < 8; i++) { @@ -86,13 +142,18 @@ void spiSend(uint8_t data) { // enable interrupts sei(); } +//------------------------------------------------------------------------------ +/** Soft SPI send block */ + void spiSendBlock(uint8_t token, const uint8_t* buf) { + spiSend(token); + for (uint16_t i = 0; i < 512; i++) { + spiSend(buf[i]); + } +} #endif // SOFTWARE_SPI //------------------------------------------------------------------------------ // send command and return error code. Return zero for OK uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { - // end read if in partialBlockRead mode - readEnd(); - // select card chipSelectLow(); @@ -111,6 +172,9 @@ uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA spiSend(crc); + // skip stuff byte for stop read + if (cmd == CMD12) spiRec(); + // wait for response for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); return status_; @@ -122,7 +186,7 @@ uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { * \return The number of 512 byte data blocks in the card * or zero if an error occurs. */ -uint32_t Sd2Card::cardSize(void) { +uint32_t Sd2Card::cardSize() { csd_t csd; if (!readCSD(&csd)) return 0; if (csd.v1.csd_ver == 0) { @@ -142,11 +206,14 @@ uint32_t Sd2Card::cardSize(void) { } } //------------------------------------------------------------------------------ -void Sd2Card::chipSelectHigh(void) { +void Sd2Card::chipSelectHigh() { digitalWrite(chipSelectPin_, HIGH); } //------------------------------------------------------------------------------ -void Sd2Card::chipSelectLow(void) { +void Sd2Card::chipSelectLow() { +#ifndef SOFTWARE_SPI + spiInit(spiRate_); +#endif // SOFTWARE_SPI digitalWrite(chipSelectPin_, LOW); } //------------------------------------------------------------------------------ @@ -163,10 +230,18 @@ void Sd2Card::chipSelectLow(void) { * \return The value one, true, is returned for success and * the value zero, false, is returned for failure. */ -uint8_t Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { - if (!eraseSingleBlockEnable()) { - error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); - goto fail; +bool Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { + csd_t csd; + if (!readCSD(&csd)) goto fail; + // check for single block erase + if (!csd.v1.erase_blk_en) { + // erase size mask + uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; + if ((firstBlock & m) != 0 || ((lastBlock + 1) & m) != 0) { + // error card can't erase specified area + error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); + goto fail; + } } if (type_ != SD_CARD_TYPE_SDHC) { firstBlock <<= 9; @@ -195,9 +270,9 @@ uint8_t Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { * \return The value one, true, is returned if single block erase is supported. * The value zero, false, is returned if single block erase is not supported. */ -uint8_t Sd2Card::eraseSingleBlockEnable(void) { +bool Sd2Card::eraseSingleBlockEnable() { csd_t csd; - return readCSD(&csd) ? csd.v1.erase_blk_en : 0; + return readCSD(&csd) ? csd.v1.erase_blk_en : false; } //------------------------------------------------------------------------------ /** @@ -210,8 +285,8 @@ uint8_t Sd2Card::eraseSingleBlockEnable(void) { * the value zero, false, is returned for failure. The reason for failure * can be determined by calling errorCode() and errorData(). */ -uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { - errorCode_ = inBlock_ = partialBlockRead_ = type_ = 0; +bool Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { + errorCode_ = type_ = 0; chipSelectPin_ = chipSelectPin; // 16-bit init start time allows over a minute uint16_t t0 = (uint16_t)millis(); @@ -227,17 +302,18 @@ uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { #ifndef SOFTWARE_SPI // SS must be in output mode even it is not chip select pinMode(SS_PIN, OUTPUT); - // Enable SPI, Master, clock rate f_osc/128 - SPCR = (1 << SPE) | (1 << MSTR) | (1 << SPR1) | (1 << SPR0); - // clear double speed - SPSR &= ~(1 << SPI2X); + // set SS high - may be chip select for another SPI device +#if SET_SPI_SS_HIGH + digitalWrite(SS_PIN, HIGH); +#endif // SET_SPI_SS_HIGH + // set SCK rate for initialization commands + spiRate_ = SPI_SD_INIT_RATE; + spiInit(spiRate_); #endif // SOFTWARE_SPI // must supply min of 74 clock cycles with CS high. for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); - chipSelectLow(); - // command to go idle in SPI mode while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { @@ -291,105 +367,60 @@ uint8_t Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { } //------------------------------------------------------------------------------ /** - * Enable or disable partial block reads. + * Read a 512 byte block from an SD card. * - * Enabling partial block reads improves performance by allowing a block - * to be read over the SPI bus as several sub-blocks. Errors may occur - * if the time between reads is too long since the SD card may timeout. - * The SPI SS line will be held low until the entire block is read or - * readEnd() is called. - * - * Use this for applications like the Adafruit Wave Shield. - * - * \param[in] value The value TRUE (non-zero) or FALSE (zero).) - */ -void Sd2Card::partialBlockRead(uint8_t value) { - readEnd(); - partialBlockRead_ = value; -} -//------------------------------------------------------------------------------ -/** - * Read a 512 byte block from an SD card device. - * - * \param[in] block Logical block to be read. + * \param[in] blockNumber Logical block to be read. * \param[out] dst Pointer to the location that will receive the data. * \return The value one, true, is returned for success and * the value zero, false, is returned for failure. */ -uint8_t Sd2Card::readBlock(uint32_t block, uint8_t* dst) { - return readData(block, 0, 512, dst); -} -//------------------------------------------------------------------------------ -/** - * Read part of a 512 byte block from an SD card. - * - * \param[in] block Logical block to be read. - * \param[in] offset Number of bytes to skip at start of block - * \param[out] dst Pointer to the location that will receive the data. - * \param[in] count Number of bytes to read - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t Sd2Card::readData(uint32_t block, - uint16_t offset, uint16_t count, uint8_t* dst) { - uint16_t n; - if (count == 0) return true; - if ((count + offset) > 512) { +bool Sd2Card::readBlock(uint32_t blockNumber, uint8_t* dst) { + // use address if not SDHC card + if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD17, blockNumber)) { + error(SD_CARD_ERROR_CMD17); goto fail; } - if (!inBlock_ || block != block_ || offset < offset_) { - block_ = block; - // use address if not SDHC card - if (type()!= SD_CARD_TYPE_SDHC) block <<= 9; - if (cardCommand(CMD17, block)) { - error(SD_CARD_ERROR_CMD17); + return readData(dst, 512); + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Read one data block in a multiple block read sequence + * + * \param[in] dst Pointer to the location for the data to be read. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readData(uint8_t *dst) { + chipSelectLow(); + return readData(dst, 512); +} +//------------------------------------------------------------------------------ +bool Sd2Card::readData(uint8_t* dst, uint16_t count) { + // wait for start block token + uint16_t t0 = millis(); + while ((status_ = spiRec()) == 0XFF) { + if (((uint16_t)millis() - t0) > SD_READ_TIMEOUT) { + error(SD_CARD_ERROR_READ_TIMEOUT); goto fail; } - if (!waitStartBlock()) { - goto fail; - } - offset_ = 0; - inBlock_ = 1; } - -#ifdef OPTIMIZE_HARDWARE_SPI - // start first spi transfer - SPDR = 0XFF; - - // skip data before offset - for (;offset_ < offset; offset_++) { - while (!(SPSR & (1 << SPIF))); - SPDR = 0XFF; + if (status_ != DATA_START_BLOCK) { + error(SD_CARD_ERROR_READ); + goto fail; } // transfer data - n = count - 1; - for (uint16_t i = 0; i < n; i++) { - while (!(SPSR & (1 << SPIF))); - dst[i] = SPDR; - SPDR = 0XFF; - } - // wait for last byte - while (!(SPSR & (1 << SPIF))); - dst[n] = SPDR; + spiRead(dst, count); -#else // OPTIMIZE_HARDWARE_SPI - - // skip data before offset - for (;offset_ < offset; offset_++) { - spiRec(); - } - // transfer data - for (uint16_t i = 0; i < count; i++) { - dst[i] = spiRec(); - } -#endif // OPTIMIZE_HARDWARE_SPI - - offset_ += count; - if (!partialBlockRead_ || offset_ >= 512) { - // read rest of data, checksum and set chip select high - readEnd(); - } + // discard CRC + spiRec(); + spiRec(); + chipSelectHigh(); return true; fail: @@ -397,39 +428,55 @@ uint8_t Sd2Card::readData(uint32_t block, return false; } //------------------------------------------------------------------------------ -/** Skip remaining data in a block when in partial block read mode. */ -void Sd2Card::readEnd(void) { - if (inBlock_) { - // skip data and crc -#ifdef OPTIMIZE_HARDWARE_SPI - // optimize skip for hardware - SPDR = 0XFF; - while (offset_++ < 513) { - while (!(SPSR & (1 << SPIF))); - SPDR = 0XFF; - } - // wait for last crc byte - while (!(SPSR & (1 << SPIF))); -#else // OPTIMIZE_HARDWARE_SPI - while (offset_++ < 514) spiRec(); -#endif // OPTIMIZE_HARDWARE_SPI - chipSelectHigh(); - inBlock_ = 0; - } -} -//------------------------------------------------------------------------------ /** read CID or CSR register */ -uint8_t Sd2Card::readRegister(uint8_t cmd, void* buf) { +bool Sd2Card::readRegister(uint8_t cmd, void* buf) { uint8_t* dst = reinterpret_cast(buf); if (cardCommand(cmd, 0)) { error(SD_CARD_ERROR_READ_REG); goto fail; } - if (!waitStartBlock()) goto fail; - // transfer data - for (uint16_t i = 0; i < 16; i++) dst[i] = spiRec(); - spiRec(); // get first crc byte - spiRec(); // get second crc byte + return readData(dst, 16); + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Start a read multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * + * \note This function is used with readData() and readStop() for optimized + * multiple block reads. SPI chipSelect must be low for the entire sequence. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readStart(uint32_t blockNumber) { + if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD18, blockNumber)) { + error(SD_CARD_ERROR_CMD18); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a read multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readStop() { + chipSelectLow(); + if (cardCommand(CMD12, 0)) { + error(SD_CARD_ERROR_CMD12); + goto fail; + } chipSelectHigh(); return true; @@ -450,50 +497,24 @@ uint8_t Sd2Card::readRegister(uint8_t cmd, void* buf) { * \return The value one, true, is returned for success and the value zero, * false, is returned for an invalid value of \a sckRateID. */ -uint8_t Sd2Card::setSckRate(uint8_t sckRateID) { +bool Sd2Card::setSckRate(uint8_t sckRateID) { if (sckRateID > 6) { error(SD_CARD_ERROR_SCK_RATE); return false; } - // see avr processor datasheet for SPI register bit definitions - if ((sckRateID & 1) || sckRateID == 6) { - SPSR &= ~(1 << SPI2X); - } else { - SPSR |= (1 << SPI2X); - } - SPCR &= ~((1 < SD_READ_TIMEOUT) { - error(SD_CARD_ERROR_READ_TIMEOUT); - goto fail; - } - } - if (status_ != DATA_START_BLOCK) { - error(SD_CARD_ERROR_READ); - goto fail; + while (spiRec() != 0XFF) { + if (((uint16_t)millis() - t0) >= timeoutMillis) goto fail; } return true; fail: - chipSelectHigh(); return false; } //------------------------------------------------------------------------------ @@ -505,15 +526,7 @@ uint8_t Sd2Card::waitStartBlock(void) { * \return The value one, true, is returned for success and * the value zero, false, is returned for failure. */ -uint8_t Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { -#if SD_PROTECT_BLOCK_ZERO - // don't allow write to first block - if (blockNumber == 0) { - error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); - goto fail; - } -#endif // SD_PROTECT_BLOCK_ZERO - +bool Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { // use address if not SDHC card if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; if (cardCommand(CMD24, blockNumber)) { @@ -540,51 +553,42 @@ uint8_t Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { return false; } //------------------------------------------------------------------------------ -/** Write one data block in a multiple block write sequence */ -uint8_t Sd2Card::writeData(const uint8_t* src) { +/** Write one data block in a multiple block write sequence + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeData(const uint8_t* src) { + chipSelectLow(); // wait for previous write to finish - if (!waitNotBusy(SD_WRITE_TIMEOUT)) { - error(SD_CARD_ERROR_WRITE_MULTIPLE); - chipSelectHigh(); - return false; - } - return writeData(WRITE_MULTIPLE_TOKEN, src); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + if (!writeData(WRITE_MULTIPLE_TOKEN, src)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_WRITE_MULTIPLE); + chipSelectHigh(); + return false; } //------------------------------------------------------------------------------ // send one block of data for write block or write multiple blocks -uint8_t Sd2Card::writeData(uint8_t token, const uint8_t* src) { -#ifdef OPTIMIZE_HARDWARE_SPI +bool Sd2Card::writeData(uint8_t token, const uint8_t* src) { + spiSendBlock(token, src); - // send data - optimized loop - SPDR = token; - - // send two byte per iteration - for (uint16_t i = 0; i < 512; i += 2) { - while (!(SPSR & (1 << SPIF))); - SPDR = src[i]; - while (!(SPSR & (1 << SPIF))); - SPDR = src[i+1]; - } - - // wait for last data byte - while (!(SPSR & (1 << SPIF))); - -#else // OPTIMIZE_HARDWARE_SPI - spiSend(token); - for (uint16_t i = 0; i < 512; i++) { - spiSend(src[i]); - } -#endif // OPTIMIZE_HARDWARE_SPI spiSend(0xff); // dummy crc spiSend(0xff); // dummy crc status_ = spiRec(); if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { error(SD_CARD_ERROR_WRITE); - chipSelectHigh(); - return false; + goto fail; } return true; + + fail: + chipSelectHigh(); + return false; } //------------------------------------------------------------------------------ /** Start a write multiple blocks sequence. @@ -598,14 +602,7 @@ uint8_t Sd2Card::writeData(uint8_t token, const uint8_t* src) { * \return The value one, true, is returned for success and * the value zero, false, is returned for failure. */ -uint8_t Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { -#if SD_PROTECT_BLOCK_ZERO - // don't allow write to first block - if (blockNumber == 0) { - error(SD_CARD_ERROR_WRITE_BLOCK_ZERO); - goto fail; - } -#endif // SD_PROTECT_BLOCK_ZERO +bool Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { // send pre-erase count if (cardAcmd(ACMD23, eraseCount)) { error(SD_CARD_ERROR_ACMD23); @@ -617,6 +614,7 @@ uint8_t Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { error(SD_CARD_ERROR_CMD25); goto fail; } + chipSelectHigh(); return true; fail: @@ -629,7 +627,8 @@ uint8_t Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { * \return The value one, true, is returned for success and * the value zero, false, is returned for failure. */ -uint8_t Sd2Card::writeStop(void) { +bool Sd2Card::writeStop() { + chipSelectLow(); if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; spiSend(STOP_TRAN_TOKEN); if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; diff --git a/Marlin/Sd2Card.h b/Marlin/Sd2Card.h index 73b46fb44..0e8b6665e 100644 --- a/Marlin/Sd2Card.h +++ b/Marlin/Sd2Card.h @@ -21,67 +21,24 @@ #define Sd2Card_h /** * \file - * Sd2Card class + * \brief Sd2Card class for V2 SD/SDHC cards */ +#include "SdFatConfig.h" #include "Sd2PinMap.h" #include "SdInfo.h" +//------------------------------------------------------------------------------ +// SPI speed is F_CPU/2^(1 + index), 0 <= index <= 6 /** Set SCK to max rate of F_CPU/2. See Sd2Card::setSckRate(). */ uint8_t const SPI_FULL_SPEED = 0; /** Set SCK rate to F_CPU/4. See Sd2Card::setSckRate(). */ uint8_t const SPI_HALF_SPEED = 1; -/** Set SCK rate to F_CPU/8. Sd2Card::setSckRate(). */ +/** Set SCK rate to F_CPU/8. See Sd2Card::setSckRate(). */ uint8_t const SPI_QUARTER_SPEED = 2; -/** - * Define MEGA_SOFT_SPI non-zero to use software SPI on Mega Arduinos. - * Pins used are SS 10, MOSI 11, MISO 12, and SCK 13. - * - * MEGA_SOFT_SPI allows an unmodified Adafruit GPS Shield to be used - * on Mega Arduinos. Software SPI works well with GPS Shield V1.1 - * but many SD cards will fail with GPS Shield V1.0. - */ -#define MEGA_SOFT_SPI 0 +/** Set SCK rate to F_CPU/16. See Sd2Card::setSckRate(). */ +uint8_t const SPI_EIGHTH_SPEED = 3; +/** Set SCK rate to F_CPU/32. See Sd2Card::setSckRate(). */ +uint8_t const SPI_SIXTEENTH_SPEED = 4; //------------------------------------------------------------------------------ -#if MEGA_SOFT_SPI && (defined(__AVR_ATmega1280__)||defined(__AVR_ATmega2560__)) -#define SOFTWARE_SPI -#endif // MEGA_SOFT_SPI -//------------------------------------------------------------------------------ -// SPI pin definitions -// -#ifndef SOFTWARE_SPI -// hardware pin defs -/** - * SD Chip Select pin - * - * Warning if this pin is redefined the hardware SS will pin will be enabled - * as an output by init(). An avr processor will not function as an SPI - * master unless SS is set to output mode. - */ -/** The default chip select pin for the SD card is SS. */ -uint8_t const SD_CHIP_SELECT_PIN = SS_PIN; -// The following three pins must not be redefined for hardware SPI. -/** SPI Master Out Slave In pin */ -uint8_t const SPI_MOSI_PIN = MOSI_PIN; -/** SPI Master In Slave Out pin */ -uint8_t const SPI_MISO_PIN = MISO_PIN; -/** SPI Clock pin */ -uint8_t const SPI_SCK_PIN = SCK_PIN; -/** optimize loops for hardware SPI */ -#define OPTIMIZE_HARDWARE_SPI - -#else // SOFTWARE_SPI -// define software SPI pins so Mega can use unmodified GPS Shield -/** SPI chip select pin */ -uint8_t const SD_CHIP_SELECT_PIN = 10; -/** SPI Master Out Slave In pin */ -uint8_t const SPI_MOSI_PIN = 11; -/** SPI Master In Slave Out pin */ -uint8_t const SPI_MISO_PIN = 12; -/** SPI Clock pin */ -uint8_t const SPI_SCK_PIN = 13; -#endif // SOFTWARE_SPI -//------------------------------------------------------------------------------ -/** Protect block zero from write if nonzero */ -#define SD_PROTECT_BLOCK_ZERO 1 /** init timeout ms */ uint16_t const SD_INIT_TIMEOUT = 2000; /** erase timeout ms */ @@ -92,58 +49,99 @@ uint16_t const SD_READ_TIMEOUT = 300; uint16_t const SD_WRITE_TIMEOUT = 600; //------------------------------------------------------------------------------ // SD card errors -/** timeout error for command CMD0 */ +/** timeout error for command CMD0 (initialize card in SPI mode) */ uint8_t const SD_CARD_ERROR_CMD0 = 0X1; /** CMD8 was not accepted - not a valid SD card*/ uint8_t const SD_CARD_ERROR_CMD8 = 0X2; +/** card returned an error response for CMD12 (write stop) */ +uint8_t const SD_CARD_ERROR_CMD12 = 0X3; /** card returned an error response for CMD17 (read block) */ -uint8_t const SD_CARD_ERROR_CMD17 = 0X3; +uint8_t const SD_CARD_ERROR_CMD17 = 0X4; +/** card returned an error response for CMD18 (read multiple block) */ +uint8_t const SD_CARD_ERROR_CMD18 = 0X5; /** card returned an error response for CMD24 (write block) */ -uint8_t const SD_CARD_ERROR_CMD24 = 0X4; +uint8_t const SD_CARD_ERROR_CMD24 = 0X6; /** WRITE_MULTIPLE_BLOCKS command failed */ -uint8_t const SD_CARD_ERROR_CMD25 = 0X05; +uint8_t const SD_CARD_ERROR_CMD25 = 0X7; /** card returned an error response for CMD58 (read OCR) */ -uint8_t const SD_CARD_ERROR_CMD58 = 0X06; +uint8_t const SD_CARD_ERROR_CMD58 = 0X8; /** SET_WR_BLK_ERASE_COUNT failed */ -uint8_t const SD_CARD_ERROR_ACMD23 = 0X07; -/** card's ACMD41 initialization process timeout */ -uint8_t const SD_CARD_ERROR_ACMD41 = 0X08; +uint8_t const SD_CARD_ERROR_ACMD23 = 0X9; +/** ACMD41 initialization process timeout */ +uint8_t const SD_CARD_ERROR_ACMD41 = 0XA; /** card returned a bad CSR version field */ -uint8_t const SD_CARD_ERROR_BAD_CSD = 0X09; +uint8_t const SD_CARD_ERROR_BAD_CSD = 0XB; /** erase block group command failed */ -uint8_t const SD_CARD_ERROR_ERASE = 0X0A; +uint8_t const SD_CARD_ERROR_ERASE = 0XC; /** card not capable of single block erase */ -uint8_t const SD_CARD_ERROR_ERASE_SINGLE_BLOCK = 0X0B; +uint8_t const SD_CARD_ERROR_ERASE_SINGLE_BLOCK = 0XD; /** Erase sequence timed out */ -uint8_t const SD_CARD_ERROR_ERASE_TIMEOUT = 0X0C; +uint8_t const SD_CARD_ERROR_ERASE_TIMEOUT = 0XE; /** card returned an error token instead of read data */ -uint8_t const SD_CARD_ERROR_READ = 0X0D; +uint8_t const SD_CARD_ERROR_READ = 0XF; /** read CID or CSD failed */ -uint8_t const SD_CARD_ERROR_READ_REG = 0X0E; +uint8_t const SD_CARD_ERROR_READ_REG = 0X10; /** timeout while waiting for start of read data */ -uint8_t const SD_CARD_ERROR_READ_TIMEOUT = 0X0F; +uint8_t const SD_CARD_ERROR_READ_TIMEOUT = 0X11; /** card did not accept STOP_TRAN_TOKEN */ -uint8_t const SD_CARD_ERROR_STOP_TRAN = 0X10; +uint8_t const SD_CARD_ERROR_STOP_TRAN = 0X12; /** card returned an error token as a response to a write operation */ -uint8_t const SD_CARD_ERROR_WRITE = 0X11; +uint8_t const SD_CARD_ERROR_WRITE = 0X13; /** attempt to write protected block zero */ -uint8_t const SD_CARD_ERROR_WRITE_BLOCK_ZERO = 0X12; +uint8_t const SD_CARD_ERROR_WRITE_BLOCK_ZERO = 0X14; // REMOVE - not used /** card did not go ready for a multiple block write */ -uint8_t const SD_CARD_ERROR_WRITE_MULTIPLE = 0X13; +uint8_t const SD_CARD_ERROR_WRITE_MULTIPLE = 0X15; /** card returned an error to a CMD13 status check after a write */ -uint8_t const SD_CARD_ERROR_WRITE_PROGRAMMING = 0X14; +uint8_t const SD_CARD_ERROR_WRITE_PROGRAMMING = 0X16; /** timeout occurred during write programming */ -uint8_t const SD_CARD_ERROR_WRITE_TIMEOUT = 0X15; +uint8_t const SD_CARD_ERROR_WRITE_TIMEOUT = 0X17; /** incorrect rate selected */ -uint8_t const SD_CARD_ERROR_SCK_RATE = 0X16; +uint8_t const SD_CARD_ERROR_SCK_RATE = 0X18; +/** init() not called */ +uint8_t const SD_CARD_ERROR_INIT_NOT_CALLED = 0X19; //------------------------------------------------------------------------------ // card types /** Standard capacity V1 SD card */ -uint8_t const SD_CARD_TYPE_SD1 = 1; +uint8_t const SD_CARD_TYPE_SD1 = 1; /** Standard capacity V2 SD card */ -uint8_t const SD_CARD_TYPE_SD2 = 2; +uint8_t const SD_CARD_TYPE_SD2 = 2; /** High Capacity SD card */ uint8_t const SD_CARD_TYPE_SDHC = 3; +/** + * define SOFTWARE_SPI to use bit-bang SPI + */ +//------------------------------------------------------------------------------ +#if MEGA_SOFT_SPI && (defined(__AVR_ATmega1280__)||defined(__AVR_ATmega2560__)) +#define SOFTWARE_SPI +#elif USE_SOFTWARE_SPI +#define SOFTWARE_SPI +#endif // MEGA_SOFT_SPI +//------------------------------------------------------------------------------ +// SPI pin definitions - do not edit here - change in SdFatConfig.h +// +#ifndef SOFTWARE_SPI +// hardware pin defs +/** The default chip select pin for the SD card is SS. */ +uint8_t const SD_CHIP_SELECT_PIN = SS_PIN; +// The following three pins must not be redefined for hardware SPI. +/** SPI Master Out Slave In pin */ +uint8_t const SPI_MOSI_PIN = MOSI_PIN; +/** SPI Master In Slave Out pin */ +uint8_t const SPI_MISO_PIN = MISO_PIN; +/** SPI Clock pin */ +uint8_t const SPI_SCK_PIN = SCK_PIN; + +#else // SOFTWARE_SPI + +/** SPI chip select pin */ +uint8_t const SD_CHIP_SELECT_PIN = SOFT_SPI_CS_PIN; +/** SPI Master Out Slave In pin */ +uint8_t const SPI_MOSI_PIN = SOFT_SPI_MOSI_PIN; +/** SPI Master In Slave Out pin */ +uint8_t const SPI_MISO_PIN = SOFT_SPI_MISO_PIN; +/** SPI Clock pin */ +uint8_t const SPI_SCK_PIN = SOFT_SPI_SCK_PIN; +#endif // SOFTWARE_SPI //------------------------------------------------------------------------------ /** * \class Sd2Card @@ -152,66 +150,70 @@ uint8_t const SD_CARD_TYPE_SDHC = 3; class Sd2Card { public: /** Construct an instance of Sd2Card. */ - Sd2Card(void) : errorCode_(0), inBlock_(0), partialBlockRead_(0), type_(0) {} - uint32_t cardSize(void); - uint8_t erase(uint32_t firstBlock, uint32_t lastBlock); - uint8_t eraseSingleBlockEnable(void); + Sd2Card() : errorCode_(SD_CARD_ERROR_INIT_NOT_CALLED), type_(0) {} + uint32_t cardSize(); + bool erase(uint32_t firstBlock, uint32_t lastBlock); + bool eraseSingleBlockEnable(); + /** + * Set SD error code. + * \param[in] code value for error code. + */ + void error(uint8_t code) {errorCode_ = code;} /** * \return error code for last error. See Sd2Card.h for a list of error codes. */ - uint8_t errorCode(void) const {return errorCode_;} + int errorCode() const {return errorCode_;} /** \return error data for last error. */ - uint8_t errorData(void) const {return status_;} + int errorData() const {return status_;} /** * Initialize an SD flash memory card with default clock rate and chip * select pin. See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). + * + * \return true for success or false for failure. */ - uint8_t init(void) { - return init(SPI_FULL_SPEED, SD_CHIP_SELECT_PIN); - } + bool init(uint8_t sckRateID = SPI_FULL_SPEED, + uint8_t chipSelectPin = SD_CHIP_SELECT_PIN); + bool readBlock(uint32_t block, uint8_t* dst); /** - * Initialize an SD flash memory card with the selected SPI clock rate - * and the default SD chip select pin. - * See sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin). - */ - uint8_t init(uint8_t sckRateID) { - return init(sckRateID, SD_CHIP_SELECT_PIN); - } - uint8_t init(uint8_t sckRateID, uint8_t chipSelectPin); - void partialBlockRead(uint8_t value); - /** Returns the current value, true or false, for partial block read. */ - uint8_t partialBlockRead(void) const {return partialBlockRead_;} - uint8_t readBlock(uint32_t block, uint8_t* dst); - uint8_t readData(uint32_t block, - uint16_t offset, uint16_t count, uint8_t* dst); - /** - * Read a cards CID register. The CID contains card identification + * Read a card's CID register. The CID contains card identification * information such as Manufacturer ID, Product name, Product serial - * number and Manufacturing date. */ - uint8_t readCID(cid_t* cid) { + * number and Manufacturing date. + * + * \param[out] cid pointer to area for returned data. + * + * \return true for success or false for failure. + */ + bool readCID(cid_t* cid) { return readRegister(CMD10, cid); } /** - * Read a cards CSD register. The CSD contains Card-Specific Data that - * provides information regarding access to the card's contents. */ - uint8_t readCSD(csd_t* csd) { + * Read a card's CSD register. The CSD contains Card-Specific Data that + * provides information regarding access to the card's contents. + * + * \param[out] csd pointer to area for returned data. + * + * \return true for success or false for failure. + */ + bool readCSD(csd_t* csd) { return readRegister(CMD9, csd); } - void readEnd(void); - uint8_t setSckRate(uint8_t sckRateID); - /** Return the card type: SD V1, SD V2 or SDHC */ - uint8_t type(void) const {return type_;} - uint8_t writeBlock(uint32_t blockNumber, const uint8_t* src); - uint8_t writeData(const uint8_t* src); - uint8_t writeStart(uint32_t blockNumber, uint32_t eraseCount); - uint8_t writeStop(void); + bool readData(uint8_t *dst); + bool readStart(uint32_t blockNumber); + bool readStop(); + bool setSckRate(uint8_t sckRateID); + /** Return the card type: SD V1, SD V2 or SDHC + * \return 0 - SD V1, 1 - SD V2, or 3 - SDHC. + */ + int type() const {return type_;} + bool writeBlock(uint32_t blockNumber, const uint8_t* src); + bool writeData(const uint8_t* src); + bool writeStart(uint32_t blockNumber, uint32_t eraseCount); + bool writeStop(); private: - uint32_t block_; + //---------------------------------------------------------------------------- uint8_t chipSelectPin_; uint8_t errorCode_; - uint8_t inBlock_; - uint16_t offset_; - uint8_t partialBlockRead_; + uint8_t spiRate_; uint8_t status_; uint8_t type_; // private functions @@ -220,14 +222,13 @@ class Sd2Card { return cardCommand(cmd, arg); } uint8_t cardCommand(uint8_t cmd, uint32_t arg); - void error(uint8_t code) {errorCode_ = code;} - uint8_t readRegister(uint8_t cmd, void* buf); - uint8_t sendWriteCommand(uint32_t blockNumber, uint32_t eraseCount); - void chipSelectHigh(void); - void chipSelectLow(void); + + bool readData(uint8_t* dst, uint16_t count); + bool readRegister(uint8_t cmd, void* buf); + void chipSelectHigh(); + void chipSelectLow(); void type(uint8_t value) {type_ = value;} - uint8_t waitNotBusy(uint16_t timeoutMillis); - uint8_t writeData(uint8_t token, const uint8_t* src); - uint8_t waitStartBlock(void); + bool waitNotBusy(uint16_t timeoutMillis); + bool writeData(uint8_t token, const uint8_t* src); }; #endif // Sd2Card_h diff --git a/Marlin/Sd2PinMap.h b/Marlin/Sd2PinMap.h index 4bd75a35d..847f9f33b 100644 --- a/Marlin/Sd2PinMap.h +++ b/Marlin/Sd2PinMap.h @@ -21,7 +21,6 @@ #ifndef Sd2PinMap_h #define Sd2PinMap_h #include - //------------------------------------------------------------------------------ /** struct for mapping digital pins */ struct pin_map_t { @@ -31,18 +30,19 @@ struct pin_map_t { uint8_t bit; }; //------------------------------------------------------------------------------ -#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#if defined(__AVR_ATmega1280__)\ +|| defined(__AVR_ATmega2560__) // Mega // Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 20; -uint8_t const SCL_PIN = 21; +uint8_t const SDA_PIN = 20; // D1 +uint8_t const SCL_PIN = 21; // D0 // SPI port -uint8_t const SS_PIN = 53; -uint8_t const MOSI_PIN = 51; -uint8_t const MISO_PIN = 50; -uint8_t const SCK_PIN = 52; +uint8_t const SS_PIN = 53; // B0 +uint8_t const MOSI_PIN = 51; // B2 +uint8_t const MISO_PIN = 50; // B3 +uint8_t const SCK_PIN = 52; // B1 static const pin_map_t digitalPinMap[] = { {&DDRE, &PINE, &PORTE, 0}, // E0 0 @@ -117,18 +117,20 @@ static const pin_map_t digitalPinMap[] = { {&DDRK, &PINK, &PORTK, 7} // K7 69 }; //------------------------------------------------------------------------------ -#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__) +#elif defined(__AVR_ATmega644P__)\ +|| defined(__AVR_ATmega644__)\ +|| defined(__AVR_ATmega1284P__) // Sanguino // Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 17; -uint8_t const SCL_PIN = 18; +uint8_t const SDA_PIN = 17; // C1 +uint8_t const SCL_PIN = 18; // C2 // SPI port -uint8_t const SS_PIN = 4; -uint8_t const MOSI_PIN = 5; -uint8_t const MISO_PIN = 6; -uint8_t const SCK_PIN = 7; +uint8_t const SS_PIN = 4; // B4 +uint8_t const MOSI_PIN = 5; // B5 +uint8_t const MISO_PIN = 6; // B6 +uint8_t const SCK_PIN = 7; // B7 static const pin_map_t digitalPinMap[] = { {&DDRB, &PINB, &PORTB, 0}, // B0 0 @@ -169,14 +171,14 @@ static const pin_map_t digitalPinMap[] = { // Teensy 2.0 // Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 6; -uint8_t const SCL_PIN = 5; +uint8_t const SDA_PIN = 6; // D1 +uint8_t const SCL_PIN = 5; // D0 // SPI port -uint8_t const SS_PIN = 0; -uint8_t const MOSI_PIN = 2; -uint8_t const MISO_PIN = 3; -uint8_t const SCK_PIN = 1; +uint8_t const SS_PIN = 0; // B0 +uint8_t const MOSI_PIN = 2; // B2 +uint8_t const MISO_PIN = 3; // B3 +uint8_t const SCK_PIN = 1; // B1 static const pin_map_t digitalPinMap[] = { {&DDRB, &PINB, &PORTB, 0}, // B0 0 @@ -206,18 +208,19 @@ static const pin_map_t digitalPinMap[] = { {&DDRE, &PINE, &PORTE, 6} // E6 24 }; //------------------------------------------------------------------------------ -#elif defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) +#elif defined(__AVR_AT90USB646__)\ +|| defined(__AVR_AT90USB1286__) // Teensy++ 1.0 & 2.0 // Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 1; -uint8_t const SCL_PIN = 0; +uint8_t const SDA_PIN = 1; // D1 +uint8_t const SCL_PIN = 0; // D0 // SPI port -uint8_t const SS_PIN = 20; -uint8_t const MOSI_PIN = 22; -uint8_t const MISO_PIN = 23; -uint8_t const SCK_PIN = 21; +uint8_t const SS_PIN = 20; // B0 +uint8_t const MOSI_PIN = 22; // B2 +uint8_t const MISO_PIN = 23; // B3 +uint8_t const SCK_PIN = 21; // B1 static const pin_map_t digitalPinMap[] = { {&DDRD, &PIND, &PORTD, 0}, // D0 0 @@ -268,18 +271,20 @@ static const pin_map_t digitalPinMap[] = { {&DDRF, &PINF, &PORTF, 7} // F7 45 }; //------------------------------------------------------------------------------ -#else // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#elif defined(__AVR_ATmega168__)\ +||defined(__AVR_ATmega168P__)\ +||defined(__AVR_ATmega328P__) // 168 and 328 Arduinos // Two Wire (aka I2C) ports -uint8_t const SDA_PIN = 18; -uint8_t const SCL_PIN = 19; +uint8_t const SDA_PIN = 18; // C4 +uint8_t const SCL_PIN = 19; // C5 // SPI port -uint8_t const SS_PIN = 10; -uint8_t const MOSI_PIN = 11; -uint8_t const MISO_PIN = 12; -uint8_t const SCK_PIN = 13; +uint8_t const SS_PIN = 10; // B2 +uint8_t const MOSI_PIN = 11; // B3 +uint8_t const MISO_PIN = 12; // B4 +uint8_t const SCK_PIN = 13; // B5 static const pin_map_t digitalPinMap[] = { {&DDRD, &PIND, &PORTD, 0}, // D0 0 @@ -303,7 +308,9 @@ static const pin_map_t digitalPinMap[] = { {&DDRC, &PINC, &PORTC, 4}, // C4 18 {&DDRC, &PINC, &PORTC, 5} // C5 19 }; -#endif // defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#else // defined(__AVR_ATmega1280__) +#error unknown chip +#endif // defined(__AVR_ATmega1280__) //------------------------------------------------------------------------------ static const uint8_t digitalPinCount = sizeof(digitalPinMap)/sizeof(pin_map_t); @@ -311,7 +318,7 @@ uint8_t badPinNumber(void) __attribute__((error("Pin number is too large or not a constant"))); static inline __attribute__((always_inline)) - uint8_t getPinMode(uint8_t pin) { + bool getPinMode(uint8_t pin) { if (__builtin_constant_p(pin) && pin < digitalPinCount) { return (*digitalPinMap[pin].ddr >> digitalPinMap[pin].bit) & 1; } else { @@ -331,7 +338,7 @@ static inline __attribute__((always_inline)) } } static inline __attribute__((always_inline)) - uint8_t fastDigitalRead(uint8_t pin) { + bool fastDigitalRead(uint8_t pin) { if (__builtin_constant_p(pin) && pin < digitalPinCount) { return (*digitalPinMap[pin].pin >> digitalPinMap[pin].bit) & 1; } else { diff --git a/Marlin/SdBaseFile.cpp b/Marlin/SdBaseFile.cpp new file mode 100644 index 000000000..dda44ec3c --- /dev/null +++ b/Marlin/SdBaseFile.cpp @@ -0,0 +1,1818 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdBaseFile.h" +//------------------------------------------------------------------------------ +// pointer to cwd directory +SdBaseFile* SdBaseFile::cwd_ = 0; +// callback function for date/time +void (*SdBaseFile::dateTime_)(uint16_t* date, uint16_t* time) = 0; +//------------------------------------------------------------------------------ +// add a cluster to a file +bool SdBaseFile::addCluster() { + if (!vol_->allocContiguous(1, &curCluster_)) goto fail; + + // if first cluster of file link to directory entry + if (firstCluster_ == 0) { + firstCluster_ = curCluster_; + flags_ |= F_FILE_DIR_DIRTY; + } + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +// Add a cluster to a directory file and zero the cluster. +// return with first block of cluster in the cache +bool SdBaseFile::addDirCluster() { + uint32_t block; + // max folder size + if (fileSize_/sizeof(dir_t) >= 0XFFFF) goto fail; + + if (!addCluster()) goto fail; + if (!vol_->cacheFlush()) goto fail; + + block = vol_->clusterStartBlock(curCluster_); + + // set cache to first block of cluster + vol_->cacheSetBlockNumber(block, true); + + // zero first block of cluster + memset(vol_->cacheBuffer_.data, 0, 512); + + // zero rest of cluster + for (uint8_t i = 1; i < vol_->blocksPerCluster_; i++) { + if (!vol_->writeBlock(block + i, vol_->cacheBuffer_.data)) goto fail; + } + // Increase directory file size by cluster size + fileSize_ += 512UL << vol_->clusterSizeShift_; + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +// cache a file's directory entry +// return pointer to cached entry or null for failure +dir_t* SdBaseFile::cacheDirEntry(uint8_t action) { + if (!vol_->cacheRawBlock(dirBlock_, action)) goto fail; + return vol_->cache()->dir + dirIndex_; + + fail: + return 0; +} +//------------------------------------------------------------------------------ +/** Close a file and force cached data and directory information + * to be written to the storage device. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include no file is open or an I/O error. + */ +bool SdBaseFile::close() { + bool rtn = sync(); + type_ = FAT_FILE_TYPE_CLOSED; + return rtn; +} +//------------------------------------------------------------------------------ +/** Check for contiguous file and return its raw block range. + * + * \param[out] bgnBlock the first block address for the file. + * \param[out] endBlock the last block address for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is not contiguous, file has zero length + * or an I/O error occurred. + */ +bool SdBaseFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock) { + // error if no blocks + if (firstCluster_ == 0) goto fail; + + for (uint32_t c = firstCluster_; ; c++) { + uint32_t next; + if (!vol_->fatGet(c, &next)) goto fail; + + // check for contiguous + if (next != (c + 1)) { + // error if not end of chain + if (!vol_->isEOC(next)) goto fail; + *bgnBlock = vol_->clusterStartBlock(firstCluster_); + *endBlock = vol_->clusterStartBlock(c) + + vol_->blocksPerCluster_ - 1; + return true; + } + } + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Create and open a new contiguous file of a specified size. + * + * \note This function only supports short DOS 8.3 names. + * See open() for more information. + * + * \param[in] dirFile The directory where the file will be created. + * \param[in] path A path with a valid DOS 8.3 file name. + * \param[in] size The desired file size. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include \a path contains + * an invalid DOS 8.3 file name, the FAT volume has not been initialized, + * a file is already open, the file already exists, the root + * directory is full or an I/O error. + * + */ +bool SdBaseFile::createContiguous(SdBaseFile* dirFile, + const char* path, uint32_t size) { + uint32_t count; + // don't allow zero length file + if (size == 0) goto fail; + if (!open(dirFile, path, O_CREAT | O_EXCL | O_RDWR)) goto fail; + + // calculate number of clusters needed + count = ((size - 1) >> (vol_->clusterSizeShift_ + 9)) + 1; + + // allocate clusters + if (!vol_->allocContiguous(count, &firstCluster_)) { + remove(); + goto fail; + } + fileSize_ = size; + + // insure sync() will update dir entry + flags_ |= F_FILE_DIR_DIRTY; + + return sync(); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Return a file's directory entry. + * + * \param[out] dir Location for return of the file's directory entry. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::dirEntry(dir_t* dir) { + dir_t* p; + // make sure fields on SD are correct + if (!sync()) goto fail; + + // read entry + p = cacheDirEntry(SdVolume::CACHE_FOR_READ); + if (!p) goto fail; + + // copy to caller's struct + memcpy(dir, p, sizeof(dir_t)); + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Format the name field of \a dir into the 13 byte array + * \a name in standard 8.3 short name format. + * + * \param[in] dir The directory structure containing the name. + * \param[out] name A 13 byte char array for the formatted name. + */ +void SdBaseFile::dirName(const dir_t& dir, char* name) { + uint8_t j = 0; + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) name[j++] = '.'; + name[j++] = dir.name[i]; + } + name[j] = 0; +} +//------------------------------------------------------------------------------ +/** Test for the existence of a file in a directory + * + * \param[in] name Name of the file to be tested for. + * + * The calling instance must be an open directory file. + * + * dirFile.exists("TOFIND.TXT") searches for "TOFIND.TXT" in the directory + * dirFile. + * + * \return true if the file exists else false. + */ +bool SdBaseFile::exists(const char* name) { + SdBaseFile file; + return file.open(this, name, O_READ); +} +//------------------------------------------------------------------------------ +/** + * Get a string from a file. + * + * fgets() reads bytes from a file into the array pointed to by \a str, until + * \a num - 1 bytes are read, or a delimiter is read and transferred to \a str, + * or end-of-file is encountered. The string is then terminated + * with a null byte. + * + * fgets() deletes CR, '\\r', from the string. This insures only a '\\n' + * terminates the string for Windows text files which use CRLF for newline. + * + * \param[out] str Pointer to the array where the string is stored. + * \param[in] num Maximum number of characters to be read + * (including the final null byte). Usually the length + * of the array \a str is used. + * \param[in] delim Optional set of delimiters. The default is "\n". + * + * \return For success fgets() returns the length of the string in \a str. + * If no data is read, fgets() returns zero for EOF or -1 if an error occurred. + **/ +int16_t SdBaseFile::fgets(char* str, int16_t num, char* delim) { + char ch; + int16_t n = 0; + int16_t r = -1; + while ((n + 1) < num && (r = read(&ch, 1)) == 1) { + // delete CR + if (ch == '\r') continue; + str[n++] = ch; + if (!delim) { + if (ch == '\n') break; + } else { + if (strchr(delim, ch)) break; + } + } + if (r < 0) { + // read error + return -1; + } + str[n] = '\0'; + return n; +} +//------------------------------------------------------------------------------ +/** Get a file's name + * + * \param[out] name An array of 13 characters for the file's name. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::getFilename(char* name) { + if (!isOpen()) return false; + + if (isRoot()) { + name[0] = '/'; + name[1] = '\0'; + return true; + } + // cache entry + dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_READ); + if (!p) return false; + + // format name + dirName(*p, name); + return true; +} +//------------------------------------------------------------------------------ +void SdBaseFile::getpos(fpos_t* pos) { + pos->position = curPosition_; + pos->cluster = curCluster_; +} +//------------------------------------------------------------------------------ +/** List directory contents to Serial. + * + * \param[in] flags The inclusive OR of + * + * LS_DATE - %Print file modification date + * + * LS_SIZE - %Print file size. + * + * LS_R - Recursive list of subdirectories. + */ +void SdBaseFile::ls(uint8_t flags) { + ls(&Serial, flags, 0); +} +//------------------------------------------------------------------------------ +/** List directory contents. + * + * \param[in] pr Print stream for list. + * + * \param[in] flags The inclusive OR of + * + * LS_DATE - %Print file modification date + * + * LS_SIZE - %Print file size. + * + * LS_R - Recursive list of subdirectories. + * + * \param[in] indent Amount of space before file name. Used for recursive + * list to indicate subdirectory level. + */ +void SdBaseFile::ls(Print* pr, uint8_t flags, uint8_t indent) { + rewind(); + int8_t status; + while ((status = lsPrintNext(pr, flags, indent))) { + if (status > 1 && (flags & LS_R)) { + uint16_t index = curPosition()/32 - 1; + SdBaseFile s; + if (s.open(this, index, O_READ)) s.ls(pr, flags, indent + 2); + seekSet(32 * (index + 1)); + } + } +} +//------------------------------------------------------------------------------ +// saves 32 bytes on stack for ls recursion +// return 0 - EOF, 1 - normal file, or 2 - directory +int8_t SdBaseFile::lsPrintNext(Print *pr, uint8_t flags, uint8_t indent) { + dir_t dir; + uint8_t w = 0; + + while (1) { + if (read(&dir, sizeof(dir)) != sizeof(dir)) return 0; + if (dir.name[0] == DIR_NAME_FREE) return 0; + + // skip deleted entry and entries for . and .. + if (dir.name[0] != DIR_NAME_DELETED && dir.name[0] != '.' + && DIR_IS_FILE_OR_SUBDIR(&dir)) break; + } + // indent for dir level + for (uint8_t i = 0; i < indent; i++) pr->write(' '); + + // print name + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) { + pr->write('.'); + w++; + } + pr->write(dir.name[i]); + w++; + } + if (DIR_IS_SUBDIR(&dir)) { + pr->write('/'); + w++; + } + if (flags & (LS_DATE | LS_SIZE)) { + while (w++ < 14) pr->write(' '); + } + // print modify date/time if requested + if (flags & LS_DATE) { + pr->write(' '); + printFatDate(pr, dir.lastWriteDate); + pr->write(' '); + printFatTime(pr, dir.lastWriteTime); + } + // print size if requested + if (!DIR_IS_SUBDIR(&dir) && (flags & LS_SIZE)) { + pr->write(' '); + pr->print(dir.fileSize); + } + pr->println(); + return DIR_IS_FILE(&dir) ? 1 : 2; +} +//------------------------------------------------------------------------------ +// format directory name field from a 8.3 name string +bool SdBaseFile::make83Name(const char* str, uint8_t* name, const char** ptr) { + uint8_t c; + uint8_t n = 7; // max index for part before dot + uint8_t i = 0; + // blank fill name and extension + while (i < 11) name[i++] = ' '; + i = 0; + while (*str != '\0' && *str != '/') { + c = *str++; + if (c == '.') { + if (n == 10) goto fail; // only one dot allowed + n = 10; // max index for full 8.3 name + i = 8; // place for extension + } else { + // illegal FAT characters + PGM_P p = PSTR("|<>^+=?/[];,*\"\\"); + uint8_t b; + while ((b = pgm_read_byte(p++))) if (b == c) goto fail; + // check size and only allow ASCII printable characters + if (i > n || c < 0X21 || c > 0X7E)goto fail; + // only upper case allowed in 8.3 names - convert lower to upper + name[i++] = c < 'a' || c > 'z' ? c : c + ('A' - 'a'); + } + } + *ptr = str; + // must have a file name, extension is optional + return name[0] != ' '; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Make a new directory. + * + * \param[in] parent An open SdFat instance for the directory that will contain + * the new directory. + * + * \param[in] path A path with a valid 8.3 DOS name for the new directory. + * + * \param[in] pFlag Create missing parent directories if true. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include this file is already open, \a parent is not a + * directory, \a path is invalid or already exists in \a parent. + */ +bool SdBaseFile::mkdir(SdBaseFile* parent, const char* path, bool pFlag) { + uint8_t dname[11]; + SdBaseFile dir1, dir2; + SdBaseFile* sub = &dir1; + SdBaseFile* start = parent; + + if (!parent || isOpen()) goto fail; + + if (*path == '/') { + while (*path == '/') path++; + if (!parent->isRoot()) { + if (!dir2.openRoot(parent->vol_)) goto fail; + parent = &dir2; + } + } + while (1) { + if (!make83Name(path, dname, &path)) goto fail; + while (*path == '/') path++; + if (!*path) break; + if (!sub->open(parent, dname, O_READ)) { + if (!pFlag || !sub->mkdir(parent, dname)) { + goto fail; + } + } + if (parent != start) parent->close(); + parent = sub; + sub = parent != &dir1 ? &dir1 : &dir2; + } + return mkdir(parent, dname); + + fail: + return false; +} +//------------------------------------------------------------------------------ +bool SdBaseFile::mkdir(SdBaseFile* parent, const uint8_t dname[11]) { + uint32_t block; + dir_t d; + dir_t* p; + + if (!parent->isDir()) goto fail; + + // create a normal file + if (!open(parent, dname, O_CREAT | O_EXCL | O_RDWR)) goto fail; + + // convert file to directory + flags_ = O_READ; + type_ = FAT_FILE_TYPE_SUBDIR; + + // allocate and zero first cluster + if (!addDirCluster())goto fail; + + // force entry to SD + if (!sync()) goto fail; + + // cache entry - should already be in cache due to sync() call + p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!p) goto fail; + + // change directory entry attribute + p->attributes = DIR_ATT_DIRECTORY; + + // make entry for '.' + memcpy(&d, p, sizeof(d)); + d.name[0] = '.'; + for (uint8_t i = 1; i < 11; i++) d.name[i] = ' '; + + // cache block for '.' and '..' + block = vol_->clusterStartBlock(firstCluster_); + if (!vol_->cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) goto fail; + + // copy '.' to block + memcpy(&vol_->cache()->dir[0], &d, sizeof(d)); + + // make entry for '..' + d.name[1] = '.'; + if (parent->isRoot()) { + d.firstClusterLow = 0; + d.firstClusterHigh = 0; + } else { + d.firstClusterLow = parent->firstCluster_ & 0XFFFF; + d.firstClusterHigh = parent->firstCluster_ >> 16; + } + // copy '..' to block + memcpy(&vol_->cache()->dir[1], &d, sizeof(d)); + + // write first block + return vol_->cacheFlush(); + + fail: + return false; +} +//------------------------------------------------------------------------------ + /** Open a file in the current working directory. + * + * \param[in] path A path with a valid 8.3 DOS name for a file to be opened. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of open flags. see SdBaseFile::open(SdBaseFile*, const char*, uint8_t). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ + bool SdBaseFile::open(const char* path, uint8_t oflag) { + return open(cwd_, path, oflag); + } +//------------------------------------------------------------------------------ +/** Open a file or directory by name. + * + * \param[in] dirFile An open SdFat instance for the directory containing the + * file to be opened. + * + * \param[in] path A path with a valid 8.3 DOS name for a file to be opened. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags from the following list + * + * O_READ - Open for reading. + * + * O_RDONLY - Same as O_READ. + * + * O_WRITE - Open for writing. + * + * O_WRONLY - Same as O_WRITE. + * + * O_RDWR - Open for reading and writing. + * + * O_APPEND - If set, the file offset shall be set to the end of the + * file prior to each write. + * + * O_AT_END - Set the initial position at the end of the file. + * + * O_CREAT - If the file exists, this flag has no effect except as noted + * under O_EXCL below. Otherwise, the file shall be created + * + * O_EXCL - If O_CREAT and O_EXCL are set, open() shall fail if the file exists. + * + * O_SYNC - Call sync() after each write. This flag should not be used with + * write(uint8_t), write_P(PGM_P), writeln_P(PGM_P), or the Arduino Print class. + * These functions do character at a time writes so sync() will be called + * after each byte. + * + * O_TRUNC - If the file exists and is a regular file, and the file is + * successfully opened and is not read only, its length shall be truncated to 0. + * + * WARNING: A given file must not be opened by more than one SdBaseFile object + * of file corruption may occur. + * + * \note Directory files must be opened read only. Write and truncation is + * not allowed for directory files. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include this file is already open, \a dirFile is not + * a directory, \a path is invalid, the file does not exist + * or can't be opened in the access mode specified by oflag. + */ +bool SdBaseFile::open(SdBaseFile* dirFile, const char* path, uint8_t oflag) { + uint8_t dname[11]; + SdBaseFile dir1, dir2; + SdBaseFile *parent = dirFile; + SdBaseFile *sub = &dir1; + + if (!dirFile) goto fail; + + // error if already open + if (isOpen()) goto fail; + + if (*path == '/') { + while (*path == '/') path++; + if (!dirFile->isRoot()) { + if (!dir2.openRoot(dirFile->vol_)) goto fail; + parent = &dir2; + } + } + while (1) { + if (!make83Name(path, dname, &path)) goto fail; + while (*path == '/') path++; + if (!*path) break; + if (!sub->open(parent, dname, O_READ)) goto fail; + if (parent != dirFile) parent->close(); + parent = sub; + sub = parent != &dir1 ? &dir1 : &dir2; + } + return open(parent, dname, oflag); + + fail: + return false; +} +//------------------------------------------------------------------------------ +// open with filename in dname +bool SdBaseFile::open(SdBaseFile* dirFile, + const uint8_t dname[11], uint8_t oflag) { + bool emptyFound = false; + bool fileFound = false; + uint8_t index; + dir_t* p; + + vol_ = dirFile->vol_; + + dirFile->rewind(); + // search for file + + while (dirFile->curPosition_ < dirFile->fileSize_) { + index = 0XF & (dirFile->curPosition_ >> 5); + p = dirFile->readDirCache(); + if (!p) goto fail; + + if (p->name[0] == DIR_NAME_FREE || p->name[0] == DIR_NAME_DELETED) { + // remember first empty slot + if (!emptyFound) { + dirBlock_ = dirFile->vol_->cacheBlockNumber(); + dirIndex_ = index; + emptyFound = true; + } + // done if no entries follow + if (p->name[0] == DIR_NAME_FREE) break; + } else if (!memcmp(dname, p->name, 11)) { + fileFound = true; + break; + } + } + if (fileFound) { + // don't open existing file if O_EXCL + if (oflag & O_EXCL) goto fail; + } else { + // don't create unless O_CREAT and O_WRITE + if (!(oflag & O_CREAT) || !(oflag & O_WRITE)) goto fail; + if (emptyFound) { + index = dirIndex_; + p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!p) goto fail; + } else { + if (dirFile->type_ == FAT_FILE_TYPE_ROOT_FIXED) goto fail; + + // add and zero cluster for dirFile - first cluster is in cache for write + if (!dirFile->addDirCluster()) goto fail; + + // use first entry in cluster + p = dirFile->vol_->cache()->dir; + index = 0; + } + // initialize as empty file + memset(p, 0, sizeof(dir_t)); + memcpy(p->name, dname, 11); + + // set timestamps + if (dateTime_) { + // call user date/time function + dateTime_(&p->creationDate, &p->creationTime); + } else { + // use default date/time + p->creationDate = FAT_DEFAULT_DATE; + p->creationTime = FAT_DEFAULT_TIME; + } + p->lastAccessDate = p->creationDate; + p->lastWriteDate = p->creationDate; + p->lastWriteTime = p->creationTime; + + // write entry to SD + if (!dirFile->vol_->cacheFlush()) goto fail; + } + // open entry in cache + return openCachedEntry(index, oflag); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Open a file by index. + * + * \param[in] dirFile An open SdFat instance for the directory. + * + * \param[in] index The \a index of the directory entry for the file to be + * opened. The value for \a index is (directory file position)/32. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. + * + * See open() by path for definition of flags. + * \return true for success or false for failure. + */ +bool SdBaseFile::open(SdBaseFile* dirFile, uint16_t index, uint8_t oflag) { + dir_t* p; + + vol_ = dirFile->vol_; + + // error if already open + if (isOpen() || !dirFile) goto fail; + + // don't open existing file if O_EXCL - user call error + if (oflag & O_EXCL) goto fail; + + // seek to location of entry + if (!dirFile->seekSet(32 * index)) goto fail; + + // read entry into cache + p = dirFile->readDirCache(); + if (!p) goto fail; + + // error if empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_FREE || + p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') { + goto fail; + } + // open cached entry + return openCachedEntry(index & 0XF, oflag); + + fail: + return false; +} +//------------------------------------------------------------------------------ +// open a cached directory entry. Assumes vol_ is initialized +bool SdBaseFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { + // location of entry in cache + dir_t* p = &vol_->cache()->dir[dirIndex]; + + // write or truncate is an error for a directory or read-only file + if (p->attributes & (DIR_ATT_READ_ONLY | DIR_ATT_DIRECTORY)) { + if (oflag & (O_WRITE | O_TRUNC)) goto fail; + } + // remember location of directory entry on SD + dirBlock_ = vol_->cacheBlockNumber(); + dirIndex_ = dirIndex; + + // copy first cluster number for directory fields + firstCluster_ = (uint32_t)p->firstClusterHigh << 16; + firstCluster_ |= p->firstClusterLow; + + // make sure it is a normal file or subdirectory + if (DIR_IS_FILE(p)) { + fileSize_ = p->fileSize; + type_ = FAT_FILE_TYPE_NORMAL; + } else if (DIR_IS_SUBDIR(p)) { + if (!vol_->chainSize(firstCluster_, &fileSize_)) goto fail; + type_ = FAT_FILE_TYPE_SUBDIR; + } else { + goto fail; + } + // save open flags for read/write + flags_ = oflag & F_OFLAG; + + // set to start of file + curCluster_ = 0; + curPosition_ = 0; + if ((oflag & O_TRUNC) && !truncate(0)) return false; + return oflag & O_AT_END ? seekEnd(0) : true; + + fail: + type_ = FAT_FILE_TYPE_CLOSED; + return false; +} +//------------------------------------------------------------------------------ +/** Open the next file or subdirectory in a directory. + * + * \param[in] dirFile An open SdFat instance for the directory containing the + * file to be opened. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. + * + * See open() by path for definition of flags. + * \return true for success or false for failure. + */ +bool SdBaseFile::openNext(SdBaseFile* dirFile, uint8_t oflag) { + dir_t* p; + uint8_t index; + + if (!dirFile) goto fail; + + // error if already open + if (isOpen()) goto fail; + + vol_ = dirFile->vol_; + + while (1) { + index = 0XF & (dirFile->curPosition_ >> 5); + + // read entry into cache + p = dirFile->readDirCache(); + if (!p) goto fail; + + // done if last entry + if (p->name[0] == DIR_NAME_FREE) goto fail; + + // skip empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') { + continue; + } + // must be file or dir + if (DIR_IS_FILE_OR_SUBDIR(p)) { + return openCachedEntry(index, oflag); + } + } + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Open a directory's parent directory. + * + * \param[in] dir Parent of this directory will be opened. Must not be root. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::openParent(SdBaseFile* dir) { + dir_t entry; + dir_t* p; + SdBaseFile file; + uint32_t c; + uint32_t cluster; + uint32_t lbn; + // error if already open or dir is root or dir is not a directory + if (isOpen() || !dir || dir->isRoot() || !dir->isDir()) goto fail; + vol_ = dir->vol_; + // position to '..' + if (!dir->seekSet(32)) goto fail; + // read '..' entry + if (dir->read(&entry, sizeof(entry)) != 32) goto fail; + // verify it is '..' + if (entry.name[0] != '.' || entry.name[1] != '.') goto fail; + // start cluster for '..' + cluster = entry.firstClusterLow; + cluster |= (uint32_t)entry.firstClusterHigh << 16; + if (cluster == 0) return openRoot(vol_); + // start block for '..' + lbn = vol_->clusterStartBlock(cluster); + // first block of parent dir + if (!vol_->cacheRawBlock(lbn, SdVolume::CACHE_FOR_READ)) { + goto fail; + } + p = &vol_->cacheBuffer_.dir[1]; + // verify name for '../..' + if (p->name[0] != '.' || p->name[1] != '.') goto fail; + // '..' is pointer to first cluster of parent. open '../..' to find parent + if (p->firstClusterHigh == 0 && p->firstClusterLow == 0) { + if (!file.openRoot(dir->volume())) goto fail; + } else { + if (!file.openCachedEntry(1, O_READ)) goto fail; + } + // search for parent in '../..' + do { + if (file.readDir(&entry) != 32) goto fail; + c = entry.firstClusterLow; + c |= (uint32_t)entry.firstClusterHigh << 16; + } while (c != cluster); + // open parent + return open(&file, file.curPosition()/32 - 1, O_READ); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Open a volume's root directory. + * + * \param[in] vol The FAT volume containing the root directory to be opened. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is already open, the FAT volume has + * not been initialized or it a FAT12 volume. + */ +bool SdBaseFile::openRoot(SdVolume* vol) { + // error if file is already open + if (isOpen()) goto fail; + + if (vol->fatType() == 16 || (FAT12_SUPPORT && vol->fatType() == 12)) { + type_ = FAT_FILE_TYPE_ROOT_FIXED; + firstCluster_ = 0; + fileSize_ = 32 * vol->rootDirEntryCount(); + } else if (vol->fatType() == 32) { + type_ = FAT_FILE_TYPE_ROOT32; + firstCluster_ = vol->rootDirStart(); + if (!vol->chainSize(firstCluster_, &fileSize_)) goto fail; + } else { + // volume is not initialized, invalid, or FAT12 without support + return false; + } + vol_ = vol; + // read only + flags_ = O_READ; + + // set to start of file + curCluster_ = 0; + curPosition_ = 0; + + // root has no directory entry + dirBlock_ = 0; + dirIndex_ = 0; + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Return the next available byte without consuming it. + * + * \return The byte if no error and not at eof else -1; + */ +int SdBaseFile::peek() { + fpos_t pos; + getpos(&pos); + int c = read(); + if (c >= 0) setpos(&pos); + return c; +} +//------------------------------------------------------------------------------ +/** %Print the name field of a directory entry in 8.3 format to Serial. + * + * \param[in] dir The directory structure containing the name. + * \param[in] width Blank fill name if length is less than \a width. + * \param[in] printSlash Print '/' after directory names if true. + */ +void SdBaseFile::printDirName(const dir_t& dir, + uint8_t width, bool printSlash) { + printDirName(&Serial, dir, width, printSlash); +} +//------------------------------------------------------------------------------ +/** %Print the name field of a directory entry in 8.3 format. + * \param[in] pr Print stream for output. + * \param[in] dir The directory structure containing the name. + * \param[in] width Blank fill name if length is less than \a width. + * \param[in] printSlash Print '/' after directory names if true. + */ +void SdBaseFile::printDirName(Print* pr, const dir_t& dir, + uint8_t width, bool printSlash) { + uint8_t w = 0; + for (uint8_t i = 0; i < 11; i++) { + if (dir.name[i] == ' ')continue; + if (i == 8) { + pr->write('.'); + w++; + } + pr->write(dir.name[i]); + w++; + } + if (DIR_IS_SUBDIR(&dir) && printSlash) { + pr->write('/'); + w++; + } + while (w < width) { + pr->write(' '); + w++; + } +} +//------------------------------------------------------------------------------ +// print uint8_t with width 2 +static void print2u(Print* pr, uint8_t v) { + if (v < 10) pr->write('0'); + pr->print(v, DEC); +} +//------------------------------------------------------------------------------ +/** %Print a directory date field to Serial. + * + * Format is yyyy-mm-dd. + * + * \param[in] fatDate The date field from a directory entry. + */ +void SdBaseFile::printFatDate(uint16_t fatDate) { + printFatDate(&Serial, fatDate); +} +//------------------------------------------------------------------------------ +/** %Print a directory date field. + * + * Format is yyyy-mm-dd. + * + * \param[in] pr Print stream for output. + * \param[in] fatDate The date field from a directory entry. + */ +void SdBaseFile::printFatDate(Print* pr, uint16_t fatDate) { + pr->print(FAT_YEAR(fatDate)); + pr->write('-'); + print2u(pr, FAT_MONTH(fatDate)); + pr->write('-'); + print2u(pr, FAT_DAY(fatDate)); +} +//------------------------------------------------------------------------------ +/** %Print a directory time field to Serial. + * + * Format is hh:mm:ss. + * + * \param[in] fatTime The time field from a directory entry. + */ +void SdBaseFile::printFatTime(uint16_t fatTime) { + printFatTime(&Serial, fatTime); +} +//------------------------------------------------------------------------------ +/** %Print a directory time field. + * + * Format is hh:mm:ss. + * + * \param[in] pr Print stream for output. + * \param[in] fatTime The time field from a directory entry. + */ +void SdBaseFile::printFatTime(Print* pr, uint16_t fatTime) { + print2u(pr, FAT_HOUR(fatTime)); + pr->write(':'); + print2u(pr, FAT_MINUTE(fatTime)); + pr->write(':'); + print2u(pr, FAT_SECOND(fatTime)); +} +//------------------------------------------------------------------------------ +/** Print a file's name to Serial + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::printName() { + char name[13]; + if (!getFilename(name)) return false; + Serial.print(name); + return true; +} +//------------------------------------------------------------------------------ +/** Read the next byte from a file. + * + * \return For success read returns the next byte in the file as an int. + * If an error occurs or end of file is reached -1 is returned. + */ +int16_t SdBaseFile::read() { + uint8_t b; + return read(&b, 1) == 1 ? b : -1; +} +//------------------------------------------------------------------------------ +/** Read data from a file starting at the current position. + * + * \param[out] buf Pointer to the location that will receive the data. + * + * \param[in] nbyte Maximum number of bytes to read. + * + * \return For success read() returns the number of bytes read. + * A value less than \a nbyte, including zero, will be returned + * if end of file is reached. + * If an error occurs, read() returns -1. Possible errors include + * read() called before a file has been opened, corrupt file system + * or an I/O error occurred. + */ +int16_t SdBaseFile::read(void* buf, uint16_t nbyte) { + uint8_t* dst = reinterpret_cast(buf); + uint16_t offset; + uint16_t toRead; + uint32_t block; // raw device block number + + // error if not open or write only + if (!isOpen() || !(flags_ & O_READ)) goto fail; + + // max bytes left in file + if (nbyte >= (fileSize_ - curPosition_)) { + nbyte = fileSize_ - curPosition_; + } + // amount left to read + toRead = nbyte; + while (toRead > 0) { + offset = curPosition_ & 0X1FF; // offset in block + if (type_ == FAT_FILE_TYPE_ROOT_FIXED) { + block = vol_->rootDirStart() + (curPosition_ >> 9); + } else { + uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); + if (offset == 0 && blockOfCluster == 0) { + // start of new cluster + if (curPosition_ == 0) { + // use first cluster in file + curCluster_ = firstCluster_; + } else { + // get next cluster from FAT + if (!vol_->fatGet(curCluster_, &curCluster_)) goto fail; + } + } + block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; + } + uint16_t n = toRead; + + // amount to be read from current block + if (n > (512 - offset)) n = 512 - offset; + + // no buffering needed if n == 512 + if (n == 512 && block != vol_->cacheBlockNumber()) { + if (!vol_->readBlock(block, dst)) goto fail; + } else { + // read block to cache and copy data to caller + if (!vol_->cacheRawBlock(block, SdVolume::CACHE_FOR_READ)) goto fail; + uint8_t* src = vol_->cache()->data + offset; + memcpy(dst, src, n); + } + dst += n; + curPosition_ += n; + toRead -= n; + } + return nbyte; + + fail: + return -1; +} +//------------------------------------------------------------------------------ +/** Read the next directory entry from a directory file. + * + * \param[out] dir The dir_t struct that will receive the data. + * + * \return For success readDir() returns the number of bytes read. + * A value of zero will be returned if end of file is reached. + * If an error occurs, readDir() returns -1. Possible errors include + * readDir() called before a directory has been opened, this is not + * a directory file or an I/O error occurred. + */ +int8_t SdBaseFile::readDir(dir_t* dir) { + int16_t n; + // if not a directory file or miss-positioned return an error + if (!isDir() || (0X1F & curPosition_)) return -1; + + while (1) { + n = read(dir, sizeof(dir_t)); + if (n != sizeof(dir_t)) return n == 0 ? 0 : -1; + // last entry if DIR_NAME_FREE + if (dir->name[0] == DIR_NAME_FREE) return 0; + // skip empty entries and entry for . and .. + if (dir->name[0] == DIR_NAME_DELETED || dir->name[0] == '.') continue; + // return if normal file or subdirectory + if (DIR_IS_FILE_OR_SUBDIR(dir)) return n; + } +} +//------------------------------------------------------------------------------ +// Read next directory entry into the cache +// Assumes file is correctly positioned +dir_t* SdBaseFile::readDirCache() { + uint8_t i; + // error if not directory + if (!isDir()) goto fail; + + // index of entry in cache + i = (curPosition_ >> 5) & 0XF; + + // use read to locate and cache block + if (read() < 0) goto fail; + + // advance to next entry + curPosition_ += 31; + + // return pointer to entry + return vol_->cache()->dir + i; + + fail: + return 0; +} +//------------------------------------------------------------------------------ +/** Remove a file. + * + * The directory entry and all data for the file are deleted. + * + * \note This function should not be used to delete the 8.3 version of a + * file that has a long name. For example if a file has the long name + * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file read-only, is a directory, + * or an I/O error occurred. + */ +bool SdBaseFile::remove() { + dir_t* d; + // free any clusters - will fail if read-only or directory + if (!truncate(0)) goto fail; + + // cache directory entry + d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) goto fail; + + // mark entry deleted + d->name[0] = DIR_NAME_DELETED; + + // set this file closed + type_ = FAT_FILE_TYPE_CLOSED; + + // write entry to SD + return vol_->cacheFlush(); + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Remove a file. + * + * The directory entry and all data for the file are deleted. + * + * \param[in] dirFile The directory that contains the file. + * \param[in] path Path for the file to be removed. + * + * \note This function should not be used to delete the 8.3 version of a + * file that has a long name. For example if a file has the long name + * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is a directory, is read only, + * \a dirFile is not a directory, \a path is not found + * or an I/O error occurred. + */ +bool SdBaseFile::remove(SdBaseFile* dirFile, const char* path) { + SdBaseFile file; + if (!file.open(dirFile, path, O_WRITE)) goto fail; + return file.remove(); + + fail: + // can't set iostate - static function + return false; +} +//------------------------------------------------------------------------------ +/** Rename a file or subdirectory. + * + * \param[in] dirFile Directory for the new path. + * \param[in] newPath New path name for the file/directory. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include \a dirFile is not open or is not a directory + * file, newPath is invalid or already exists, or an I/O error occurs. + */ +bool SdBaseFile::rename(SdBaseFile* dirFile, const char* newPath) { + dir_t entry; + uint32_t dirCluster = 0; + SdBaseFile file; + dir_t* d; + + // must be an open file or subdirectory + if (!(isFile() || isSubDir())) goto fail; + + // can't move file + if (vol_ != dirFile->vol_) goto fail; + + // sync() and cache directory entry + sync(); + d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) goto fail; + + // save directory entry + memcpy(&entry, d, sizeof(entry)); + + // mark entry deleted + d->name[0] = DIR_NAME_DELETED; + + // make directory entry for new path + if (isFile()) { + if (!file.open(dirFile, newPath, O_CREAT | O_EXCL | O_WRITE)) { + goto restore; + } + } else { + // don't create missing path prefix components + if (!file.mkdir(dirFile, newPath, false)) { + goto restore; + } + // save cluster containing new dot dot + dirCluster = file.firstCluster_; + } + // change to new directory entry + dirBlock_ = file.dirBlock_; + dirIndex_ = file.dirIndex_; + + // mark closed to avoid possible destructor close call + file.type_ = FAT_FILE_TYPE_CLOSED; + + // cache new directory entry + d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) goto fail; + + // copy all but name field to new directory entry + memcpy(&d->attributes, &entry.attributes, sizeof(entry) - sizeof(d->name)); + + // update dot dot if directory + if (dirCluster) { + // get new dot dot + uint32_t block = vol_->clusterStartBlock(dirCluster); + if (!vol_->cacheRawBlock(block, SdVolume::CACHE_FOR_READ)) goto fail; + memcpy(&entry, &vol_->cache()->dir[1], sizeof(entry)); + + // free unused cluster + if (!vol_->freeChain(dirCluster)) goto fail; + + // store new dot dot + block = vol_->clusterStartBlock(firstCluster_); + if (!vol_->cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) goto fail; + memcpy(&vol_->cache()->dir[1], &entry, sizeof(entry)); + } + return vol_->cacheFlush(); + + restore: + d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) goto fail; + // restore entry + d->name[0] = entry.name[0]; + vol_->cacheFlush(); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Remove a directory file. + * + * The directory file will be removed only if it is empty and is not the + * root directory. rmdir() follows DOS and Windows and ignores the + * read-only attribute for the directory. + * + * \note This function should not be used to delete the 8.3 version of a + * directory that has a long name. For example if a directory has the + * long name "New folder" you should not delete the 8.3 name "NEWFOL~1". + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include the file is not a directory, is the root + * directory, is not empty, or an I/O error occurred. + */ +bool SdBaseFile::rmdir() { + // must be open subdirectory + if (!isSubDir()) goto fail; + + rewind(); + + // make sure directory is empty + while (curPosition_ < fileSize_) { + dir_t* p = readDirCache(); + if (!p) goto fail; + // done if past last used entry + if (p->name[0] == DIR_NAME_FREE) break; + // skip empty slot, '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + // error not empty + if (DIR_IS_FILE_OR_SUBDIR(p)) goto fail; + } + // convert empty directory to normal file for remove + type_ = FAT_FILE_TYPE_NORMAL; + flags_ |= O_WRITE; + return remove(); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Recursively delete a directory and all contained files. + * + * This is like the Unix/Linux 'rm -rf *' if called with the root directory + * hence the name. + * + * Warning - This will remove all contents of the directory including + * subdirectories. The directory will then be removed if it is not root. + * The read-only attribute for files will be ignored. + * + * \note This function should not be used to delete the 8.3 version of + * a directory that has a long name. See remove() and rmdir(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::rmRfStar() { + uint16_t index; + SdBaseFile f; + rewind(); + while (curPosition_ < fileSize_) { + // remember position + index = curPosition_/32; + + dir_t* p = readDirCache(); + if (!p) goto fail; + + // done if past last entry + if (p->name[0] == DIR_NAME_FREE) break; + + // skip empty slot or '.' or '..' + if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; + + // skip if part of long file name or volume label in root + if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; + + if (!f.open(this, index, O_READ)) goto fail; + if (f.isSubDir()) { + // recursively delete + if (!f.rmRfStar()) goto fail; + } else { + // ignore read-only + f.flags_ |= O_WRITE; + if (!f.remove()) goto fail; + } + // position to next entry if required + if (curPosition_ != (32*(index + 1))) { + if (!seekSet(32*(index + 1))) goto fail; + } + } + // don't try to delete root + if (!isRoot()) { + if (!rmdir()) goto fail; + } + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Create a file object and open it in the current working directory. + * + * \param[in] path A path with a valid 8.3 DOS name for a file to be opened. + * + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of open flags. see SdBaseFile::open(SdBaseFile*, const char*, uint8_t). + */ +SdBaseFile::SdBaseFile(const char* path, uint8_t oflag) { + type_ = FAT_FILE_TYPE_CLOSED; + writeError = false; + open(path, oflag); +} +//------------------------------------------------------------------------------ +/** Sets a file's position. + * + * \param[in] pos The new position in bytes from the beginning of the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::seekSet(uint32_t pos) { + uint32_t nCur; + uint32_t nNew; + // error if file not open or seek past end of file + if (!isOpen() || pos > fileSize_) goto fail; + + if (type_ == FAT_FILE_TYPE_ROOT_FIXED) { + curPosition_ = pos; + goto done; + } + if (pos == 0) { + // set position to start of file + curCluster_ = 0; + curPosition_ = 0; + goto done; + } + // calculate cluster index for cur and new position + nCur = (curPosition_ - 1) >> (vol_->clusterSizeShift_ + 9); + nNew = (pos - 1) >> (vol_->clusterSizeShift_ + 9); + + if (nNew < nCur || curPosition_ == 0) { + // must follow chain from first cluster + curCluster_ = firstCluster_; + } else { + // advance from curPosition + nNew -= nCur; + } + while (nNew--) { + if (!vol_->fatGet(curCluster_, &curCluster_)) goto fail; + } + curPosition_ = pos; + + done: + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +void SdBaseFile::setpos(fpos_t* pos) { + curPosition_ = pos->position; + curCluster_ = pos->cluster; +} +//------------------------------------------------------------------------------ +/** The sync() call causes all modified data and directory fields + * to be written to the storage device. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include a call to sync() before a file has been + * opened or an I/O error. + */ +bool SdBaseFile::sync() { + // only allow open files and directories + if (!isOpen()) goto fail; + + if (flags_ & F_FILE_DIR_DIRTY) { + dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + // check for deleted by another open file object + if (!d || d->name[0] == DIR_NAME_DELETED) goto fail; + + // do not set filesize for dir files + if (!isDir()) d->fileSize = fileSize_; + + // update first cluster fields + d->firstClusterLow = firstCluster_ & 0XFFFF; + d->firstClusterHigh = firstCluster_ >> 16; + + // set modify time if user supplied a callback date/time function + if (dateTime_) { + dateTime_(&d->lastWriteDate, &d->lastWriteTime); + d->lastAccessDate = d->lastWriteDate; + } + // clear directory dirty + flags_ &= ~F_FILE_DIR_DIRTY; + } + return vol_->cacheFlush(); + + fail: + writeError = true; + return false; +} +//------------------------------------------------------------------------------ +/** Copy a file's timestamps + * + * \param[in] file File to copy timestamps from. + * + * \note + * Modify and access timestamps may be overwritten if a date time callback + * function has been set by dateTimeCallback(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::timestamp(SdBaseFile* file) { + dir_t* d; + dir_t dir; + + // get timestamps + if (!file->dirEntry(&dir)) goto fail; + + // update directory fields + if (!sync()) goto fail; + + d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) goto fail; + + // copy timestamps + d->lastAccessDate = dir.lastAccessDate; + d->creationDate = dir.creationDate; + d->creationTime = dir.creationTime; + d->creationTimeTenths = dir.creationTimeTenths; + d->lastWriteDate = dir.lastWriteDate; + d->lastWriteTime = dir.lastWriteTime; + + // write back entry + return vol_->cacheFlush(); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Set a file's timestamps in its directory entry. + * + * \param[in] flags Values for \a flags are constructed by a bitwise-inclusive + * OR of flags from the following list + * + * T_ACCESS - Set the file's last access date. + * + * T_CREATE - Set the file's creation date and time. + * + * T_WRITE - Set the file's last write/modification date and time. + * + * \param[in] year Valid range 1980 - 2107 inclusive. + * + * \param[in] month Valid range 1 - 12 inclusive. + * + * \param[in] day Valid range 1 - 31 inclusive. + * + * \param[in] hour Valid range 0 - 23 inclusive. + * + * \param[in] minute Valid range 0 - 59 inclusive. + * + * \param[in] second Valid range 0 - 59 inclusive + * + * \note It is possible to set an invalid date since there is no check for + * the number of days in a month. + * + * \note + * Modify and access timestamps may be overwritten if a date time callback + * function has been set by dateTimeCallback(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdBaseFile::timestamp(uint8_t flags, uint16_t year, uint8_t month, + uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) { + uint16_t dirDate; + uint16_t dirTime; + dir_t* d; + + if (!isOpen() + || year < 1980 + || year > 2107 + || month < 1 + || month > 12 + || day < 1 + || day > 31 + || hour > 23 + || minute > 59 + || second > 59) { + goto fail; + } + // update directory entry + if (!sync()) goto fail; + + d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); + if (!d) goto fail; + + dirDate = FAT_DATE(year, month, day); + dirTime = FAT_TIME(hour, minute, second); + if (flags & T_ACCESS) { + d->lastAccessDate = dirDate; + } + if (flags & T_CREATE) { + d->creationDate = dirDate; + d->creationTime = dirTime; + // seems to be units of 1/100 second not 1/10 as Microsoft states + d->creationTimeTenths = second & 1 ? 100 : 0; + } + if (flags & T_WRITE) { + d->lastWriteDate = dirDate; + d->lastWriteTime = dirTime; + } + return vol_->cacheFlush(); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Truncate a file to a specified length. The current file position + * will be maintained if it is less than or equal to \a length otherwise + * it will be set to end of file. + * + * \param[in] length The desired length for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is read only, file is a directory, + * \a length is greater than the current file size or an I/O error occurs. + */ +bool SdBaseFile::truncate(uint32_t length) { + uint32_t newPos; + // error if not a normal file or read-only + if (!isFile() || !(flags_ & O_WRITE)) goto fail; + + // error if length is greater than current size + if (length > fileSize_) goto fail; + + // fileSize and length are zero - nothing to do + if (fileSize_ == 0) return true; + + // remember position for seek after truncation + newPos = curPosition_ > length ? length : curPosition_; + + // position to last cluster in truncated file + if (!seekSet(length)) goto fail; + + if (length == 0) { + // free all clusters + if (!vol_->freeChain(firstCluster_)) goto fail; + firstCluster_ = 0; + } else { + uint32_t toFree; + if (!vol_->fatGet(curCluster_, &toFree)) goto fail; + + if (!vol_->isEOC(toFree)) { + // free extra clusters + if (!vol_->freeChain(toFree)) goto fail; + + // current cluster is end of chain + if (!vol_->fatPutEOC(curCluster_)) goto fail; + } + } + fileSize_ = length; + + // need to update directory entry + flags_ |= F_FILE_DIR_DIRTY; + + if (!sync()) goto fail; + + // set file to correct position + return seekSet(newPos); + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Write data to an open file. + * + * \note Data is moved to the cache but may not be written to the + * storage device until sync() is called. + * + * \param[in] buf Pointer to the location of the data to be written. + * + * \param[in] nbyte Number of bytes to write. + * + * \return For success write() returns the number of bytes written, always + * \a nbyte. If an error occurs, write() returns -1. Possible errors + * include write() is called before a file has been opened, write is called + * for a read-only file, device is full, a corrupt file system or an I/O error. + * + */ +int16_t SdBaseFile::write(const void* buf, uint16_t nbyte) { + // convert void* to uint8_t* - must be before goto statements + const uint8_t* src = reinterpret_cast(buf); + + // number of bytes left to write - must be before goto statements + uint16_t nToWrite = nbyte; + + // error if not a normal file or is read-only + if (!isFile() || !(flags_ & O_WRITE)) goto fail; + + // seek to end of file if append flag + if ((flags_ & O_APPEND) && curPosition_ != fileSize_) { + if (!seekEnd()) goto fail; + } + + while (nToWrite > 0) { + uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); + uint16_t blockOffset = curPosition_ & 0X1FF; + if (blockOfCluster == 0 && blockOffset == 0) { + // start of new cluster + if (curCluster_ == 0) { + if (firstCluster_ == 0) { + // allocate first cluster of file + if (!addCluster()) goto fail; + } else { + curCluster_ = firstCluster_; + } + } else { + uint32_t next; + if (!vol_->fatGet(curCluster_, &next)) goto fail; + if (vol_->isEOC(next)) { + // add cluster if at end of chain + if (!addCluster()) goto fail; + } else { + curCluster_ = next; + } + } + } + // max space in block + uint16_t n = 512 - blockOffset; + + // lesser of space and amount to write + if (n > nToWrite) n = nToWrite; + + // block for data write + uint32_t block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; + if (n == 512) { + // full block - don't need to use cache + if (vol_->cacheBlockNumber() == block) { + // invalidate cache if block is in cache + vol_->cacheSetBlockNumber(0XFFFFFFFF, false); + } + if (!vol_->writeBlock(block, src)) goto fail; + } else { + if (blockOffset == 0 && curPosition_ >= fileSize_) { + // start of new block don't need to read into cache + if (!vol_->cacheFlush()) goto fail; + // set cache dirty and SD address of block + vol_->cacheSetBlockNumber(block, true); + } else { + // rewrite part of block + if (!vol_->cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) goto fail; + } + uint8_t* dst = vol_->cache()->data + blockOffset; + memcpy(dst, src, n); + } + curPosition_ += n; + src += n; + nToWrite -= n; + } + if (curPosition_ > fileSize_) { + // update fileSize and insure sync will update dir entry + fileSize_ = curPosition_; + flags_ |= F_FILE_DIR_DIRTY; + } else if (dateTime_ && nbyte) { + // insure sync will update modified date and time + flags_ |= F_FILE_DIR_DIRTY; + } + + if (flags_ & O_SYNC) { + if (!sync()) goto fail; + } + return nbyte; + + fail: + // return for write error + writeError = true; + return -1; +} +//------------------------------------------------------------------------------ +// suppress cpplint warnings with NOLINT comment +#if ALLOW_DEPRECATED_FUNCTIONS && !defined(DOXYGEN) +void (*SdBaseFile::oldDateTime_)(uint16_t& date, uint16_t& time) = 0; // NOLINT +#endif // ALLOW_DEPRECATED_FUNCTIONS diff --git a/Marlin/SdBaseFile.h b/Marlin/SdBaseFile.h new file mode 100644 index 000000000..9363401c9 --- /dev/null +++ b/Marlin/SdBaseFile.h @@ -0,0 +1,489 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdBaseFile_h +#define SdBaseFile_h +/** + * \file + * \brief SdBaseFile class + */ +#include +#if ARDUINO < 100 +#include +#else // ARDUINO +#include +#endif // ARDUINO +#include "SdFatConfig.h" +#include "SdVolume.h" +//------------------------------------------------------------------------------ +/** + * \struct fpos_t + * \brief internal type for istream + * do not use in user apps + */ +struct fpos_t { + /** stream position */ + uint32_t position; + /** cluster for position */ + uint32_t cluster; + fpos_t() : position(0), cluster(0) {} +}; + +// use the gnu style oflag in open() +/** open() oflag for reading */ +uint8_t const O_READ = 0X01; +/** open() oflag - same as O_IN */ +uint8_t const O_RDONLY = O_READ; +/** open() oflag for write */ +uint8_t const O_WRITE = 0X02; +/** open() oflag - same as O_WRITE */ +uint8_t const O_WRONLY = O_WRITE; +/** open() oflag for reading and writing */ +uint8_t const O_RDWR = (O_READ | O_WRITE); +/** open() oflag mask for access modes */ +uint8_t const O_ACCMODE = (O_READ | O_WRITE); +/** The file offset shall be set to the end of the file prior to each write. */ +uint8_t const O_APPEND = 0X04; +/** synchronous writes - call sync() after each write */ +uint8_t const O_SYNC = 0X08; +/** truncate the file to zero length */ +uint8_t const O_TRUNC = 0X10; +/** set the initial position at the end of the file */ +uint8_t const O_AT_END = 0X20; +/** create the file if nonexistent */ +uint8_t const O_CREAT = 0X40; +/** If O_CREAT and O_EXCL are set, open() shall fail if the file exists */ +uint8_t const O_EXCL = 0X80; + +// SdBaseFile class static and const definitions +// flags for ls() +/** ls() flag to print modify date */ +uint8_t const LS_DATE = 1; +/** ls() flag to print file size */ +uint8_t const LS_SIZE = 2; +/** ls() flag for recursive list of subdirectories */ +uint8_t const LS_R = 4; + + +// flags for timestamp +/** set the file's last access date */ +uint8_t const T_ACCESS = 1; +/** set the file's creation date and time */ +uint8_t const T_CREATE = 2; +/** Set the file's write date and time */ +uint8_t const T_WRITE = 4; +// values for type_ +/** This file has not been opened. */ +uint8_t const FAT_FILE_TYPE_CLOSED = 0; +/** A normal file */ +uint8_t const FAT_FILE_TYPE_NORMAL = 1; +/** A FAT12 or FAT16 root directory */ +uint8_t const FAT_FILE_TYPE_ROOT_FIXED = 2; +/** A FAT32 root directory */ +uint8_t const FAT_FILE_TYPE_ROOT32 = 3; +/** A subdirectory file*/ +uint8_t const FAT_FILE_TYPE_SUBDIR = 4; +/** Test value for directory type */ +uint8_t const FAT_FILE_TYPE_MIN_DIR = FAT_FILE_TYPE_ROOT_FIXED; + +/** date field for FAT directory entry + * \param[in] year [1980,2107] + * \param[in] month [1,12] + * \param[in] day [1,31] + * + * \return Packed date for dir_t entry. + */ +static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { + return (year - 1980) << 9 | month << 5 | day; +} +/** year part of FAT directory date field + * \param[in] fatDate Date in packed dir format. + * + * \return Extracted year [1980,2107] + */ +static inline uint16_t FAT_YEAR(uint16_t fatDate) { + return 1980 + (fatDate >> 9); +} +/** month part of FAT directory date field + * \param[in] fatDate Date in packed dir format. + * + * \return Extracted month [1,12] + */ +static inline uint8_t FAT_MONTH(uint16_t fatDate) { + return (fatDate >> 5) & 0XF; +} +/** day part of FAT directory date field + * \param[in] fatDate Date in packed dir format. + * + * \return Extracted day [1,31] + */ +static inline uint8_t FAT_DAY(uint16_t fatDate) { + return fatDate & 0X1F; +} +/** time field for FAT directory entry + * \param[in] hour [0,23] + * \param[in] minute [0,59] + * \param[in] second [0,59] + * + * \return Packed time for dir_t entry. + */ +static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { + return hour << 11 | minute << 5 | second >> 1; +} +/** hour part of FAT directory time field + * \param[in] fatTime Time in packed dir format. + * + * \return Extracted hour [0,23] + */ +static inline uint8_t FAT_HOUR(uint16_t fatTime) { + return fatTime >> 11; +} +/** minute part of FAT directory time field + * \param[in] fatTime Time in packed dir format. + * + * \return Extracted minute [0,59] + */ +static inline uint8_t FAT_MINUTE(uint16_t fatTime) { + return(fatTime >> 5) & 0X3F; +} +/** second part of FAT directory time field + * Note second/2 is stored in packed time. + * + * \param[in] fatTime Time in packed dir format. + * + * \return Extracted second [0,58] + */ +static inline uint8_t FAT_SECOND(uint16_t fatTime) { + return 2*(fatTime & 0X1F); +} +/** Default date for file timestamps is 1 Jan 2000 */ +uint16_t const FAT_DEFAULT_DATE = ((2000 - 1980) << 9) | (1 << 5) | 1; +/** Default time for file timestamp is 1 am */ +uint16_t const FAT_DEFAULT_TIME = (1 << 11); +//------------------------------------------------------------------------------ +/** + * \class SdBaseFile + * \brief Base class for SdFile with Print and C++ streams. + */ +class SdBaseFile { + public: + /** Create an instance. */ + SdBaseFile() : writeError(false), type_(FAT_FILE_TYPE_CLOSED) {} + SdBaseFile(const char* path, uint8_t oflag); + ~SdBaseFile() {if(isOpen()) close();} + /** + * writeError is set to true if an error occurs during a write(). + * Set writeError to false before calling print() and/or write() and check + * for true after calls to print() and/or write(). + */ + bool writeError; + //---------------------------------------------------------------------------- + // helpers for stream classes + /** get position for streams + * \param[out] pos struct to receive position + */ + void getpos(fpos_t* pos); + /** set position for streams + * \param[out] pos struct with value for new position + */ + void setpos(fpos_t* pos); + //---------------------------------------------------------------------------- + bool close(); + bool contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); + bool createContiguous(SdBaseFile* dirFile, + const char* path, uint32_t size); + /** \return The current cluster number for a file or directory. */ + uint32_t curCluster() const {return curCluster_;} + /** \return The current position for a file or directory. */ + uint32_t curPosition() const {return curPosition_;} + /** \return Current working directory */ + static SdBaseFile* cwd() {return cwd_;} + /** Set the date/time callback function + * + * \param[in] dateTime The user's call back function. The callback + * function is of the form: + * + * \code + * void dateTime(uint16_t* date, uint16_t* time) { + * uint16_t year; + * uint8_t month, day, hour, minute, second; + * + * // User gets date and time from GPS or real-time clock here + * + * // return date using FAT_DATE macro to format fields + * *date = FAT_DATE(year, month, day); + * + * // return time using FAT_TIME macro to format fields + * *time = FAT_TIME(hour, minute, second); + * } + * \endcode + * + * Sets the function that is called when a file is created or when + * a file's directory entry is modified by sync(). All timestamps, + * access, creation, and modify, are set when a file is created. + * sync() maintains the last access date and last modify date/time. + * + * See the timestamp() function. + */ + static void dateTimeCallback( + void (*dateTime)(uint16_t* date, uint16_t* time)) { + dateTime_ = dateTime; + } + /** Cancel the date/time callback function. */ + static void dateTimeCallbackCancel() {dateTime_ = 0;} + bool dirEntry(dir_t* dir); + static void dirName(const dir_t& dir, char* name); + bool exists(const char* name); + int16_t fgets(char* str, int16_t num, char* delim = 0); + /** \return The total number of bytes in a file or directory. */ + uint32_t fileSize() const {return fileSize_;} + /** \return The first cluster number for a file or directory. */ + uint32_t firstCluster() const {return firstCluster_;} + bool getFilename(char* name); + /** \return True if this is a directory else false. */ + bool isDir() const {return type_ >= FAT_FILE_TYPE_MIN_DIR;} + /** \return True if this is a normal file else false. */ + bool isFile() const {return type_ == FAT_FILE_TYPE_NORMAL;} + /** \return True if this is an open file/directory else false. */ + bool isOpen() const {return type_ != FAT_FILE_TYPE_CLOSED;} + /** \return True if this is a subdirectory else false. */ + bool isSubDir() const {return type_ == FAT_FILE_TYPE_SUBDIR;} + /** \return True if this is the root directory. */ + bool isRoot() const { + return type_ == FAT_FILE_TYPE_ROOT_FIXED || type_ == FAT_FILE_TYPE_ROOT32; + } + void ls(Print* pr, uint8_t flags = 0, uint8_t indent = 0); + void ls(uint8_t flags = 0); + bool mkdir(SdBaseFile* dir, const char* path, bool pFlag = true); + // alias for backward compactability + bool makeDir(SdBaseFile* dir, const char* path) { + return mkdir(dir, path, false); + } + bool open(SdBaseFile* dirFile, uint16_t index, uint8_t oflag); + bool open(SdBaseFile* dirFile, const char* path, uint8_t oflag); + bool open(const char* path, uint8_t oflag = O_READ); + bool openNext(SdBaseFile* dirFile, uint8_t oflag); + bool openRoot(SdVolume* vol); + int peek(); + static void printFatDate(uint16_t fatDate); + static void printFatDate(Print* pr, uint16_t fatDate); + static void printFatTime(uint16_t fatTime); + static void printFatTime(Print* pr, uint16_t fatTime); + bool printName(); + int16_t read(); + int16_t read(void* buf, uint16_t nbyte); + int8_t readDir(dir_t* dir); + static bool remove(SdBaseFile* dirFile, const char* path); + bool remove(); + /** Set the file's current position to zero. */ + void rewind() {seekSet(0);} + bool rename(SdBaseFile* dirFile, const char* newPath); + bool rmdir(); + // for backward compatibility + bool rmDir() {return rmdir();} + bool rmRfStar(); + /** Set the files position to current position + \a pos. See seekSet(). + * \param[in] offset The new position in bytes from the current position. + * \return true for success or false for failure. + */ + bool seekCur(int32_t offset) { + return seekSet(curPosition_ + offset); + } + /** Set the files position to end-of-file + \a offset. See seekSet(). + * \param[in] offset The new position in bytes from end-of-file. + * \return true for success or false for failure. + */ + bool seekEnd(int32_t offset = 0) {return seekSet(fileSize_ + offset);} + bool seekSet(uint32_t pos); + bool sync(); + bool timestamp(SdBaseFile* file); + bool timestamp(uint8_t flag, uint16_t year, uint8_t month, uint8_t day, + uint8_t hour, uint8_t minute, uint8_t second); + /** Type of file. You should use isFile() or isDir() instead of type() + * if possible. + * + * \return The file or directory type. + */ + uint8_t type() const {return type_;} + bool truncate(uint32_t size); + /** \return SdVolume that contains this file. */ + SdVolume* volume() const {return vol_;} + int16_t write(const void* buf, uint16_t nbyte); +//------------------------------------------------------------------------------ + private: + // allow SdFat to set cwd_ + friend class SdFat; + // global pointer to cwd dir + static SdBaseFile* cwd_; + // data time callback function + static void (*dateTime_)(uint16_t* date, uint16_t* time); + // bits defined in flags_ + // should be 0X0F + static uint8_t const F_OFLAG = (O_ACCMODE | O_APPEND | O_SYNC); + // sync of directory entry required + static uint8_t const F_FILE_DIR_DIRTY = 0X80; + + // private data + uint8_t flags_; // See above for definition of flags_ bits + uint8_t fstate_; // error and eof indicator + uint8_t type_; // type of file see above for values + uint32_t curCluster_; // cluster for current file position + uint32_t curPosition_; // current file position in bytes from beginning + uint32_t dirBlock_; // block for this files directory entry + uint8_t dirIndex_; // index of directory entry in dirBlock + uint32_t fileSize_; // file size in bytes + uint32_t firstCluster_; // first cluster of file + SdVolume* vol_; // volume where file is located + + /** experimental don't use */ + bool openParent(SdBaseFile* dir); + // private functions + bool addCluster(); + bool addDirCluster(); + dir_t* cacheDirEntry(uint8_t action); + int8_t lsPrintNext(Print *pr, uint8_t flags, uint8_t indent); + static bool make83Name(const char* str, uint8_t* name, const char** ptr); + bool mkdir(SdBaseFile* parent, const uint8_t dname[11]); + bool open(SdBaseFile* dirFile, const uint8_t dname[11], uint8_t oflag); + bool openCachedEntry(uint8_t cacheIndex, uint8_t oflags); + dir_t* readDirCache(); +//------------------------------------------------------------------------------ +// to be deleted + static void printDirName(const dir_t& dir, + uint8_t width, bool printSlash); + static void printDirName(Print* pr, const dir_t& dir, + uint8_t width, bool printSlash); +//------------------------------------------------------------------------------ +// Deprecated functions - suppress cpplint warnings with NOLINT comment +#if ALLOW_DEPRECATED_FUNCTIONS && !defined(DOXYGEN) + public: + /** \deprecated Use: + * bool contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); + * \param[out] bgnBlock the first block address for the file. + * \param[out] endBlock the last block address for the file. + * \return true for success or false for failure. + */ + bool contiguousRange(uint32_t& bgnBlock, uint32_t& endBlock) { // NOLINT + return contiguousRange(&bgnBlock, &endBlock); + } + /** \deprecated Use: + * bool createContiguous(SdBaseFile* dirFile, + * const char* path, uint32_t size) + * \param[in] dirFile The directory where the file will be created. + * \param[in] path A path with a valid DOS 8.3 file name. + * \param[in] size The desired file size. + * \return true for success or false for failure. + */ + bool createContiguous(SdBaseFile& dirFile, // NOLINT + const char* path, uint32_t size) { + return createContiguous(&dirFile, path, size); + } + /** \deprecated Use: + * static void dateTimeCallback( + * void (*dateTime)(uint16_t* date, uint16_t* time)); + * \param[in] dateTime The user's call back function. + */ + static void dateTimeCallback( + void (*dateTime)(uint16_t& date, uint16_t& time)) { // NOLINT + oldDateTime_ = dateTime; + dateTime_ = dateTime ? oldToNew : 0; + } + /** \deprecated Use: bool dirEntry(dir_t* dir); + * \param[out] dir Location for return of the file's directory entry. + * \return true for success or false for failure. + */ + bool dirEntry(dir_t& dir) {return dirEntry(&dir);} // NOLINT + /** \deprecated Use: + * bool mkdir(SdBaseFile* dir, const char* path); + * \param[in] dir An open SdFat instance for the directory that will contain + * the new directory. + * \param[in] path A path with a valid 8.3 DOS name for the new directory. + * \return true for success or false for failure. + */ + bool mkdir(SdBaseFile& dir, const char* path) { // NOLINT + return mkdir(&dir, path); + } + /** \deprecated Use: + * bool open(SdBaseFile* dirFile, const char* path, uint8_t oflag); + * \param[in] dirFile An open SdFat instance for the directory containing the + * file to be opened. + * \param[in] path A path with a valid 8.3 DOS name for the file. + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. + * \return true for success or false for failure. + */ + bool open(SdBaseFile& dirFile, // NOLINT + const char* path, uint8_t oflag) { + return open(&dirFile, path, oflag); + } + /** \deprecated Do not use in new apps + * \param[in] dirFile An open SdFat instance for the directory containing the + * file to be opened. + * \param[in] path A path with a valid 8.3 DOS name for a file to be opened. + * \return true for success or false for failure. + */ + bool open(SdBaseFile& dirFile, const char* path) { // NOLINT + return open(dirFile, path, O_RDWR); + } + /** \deprecated Use: + * bool open(SdBaseFile* dirFile, uint16_t index, uint8_t oflag); + * \param[in] dirFile An open SdFat instance for the directory. + * \param[in] index The \a index of the directory entry for the file to be + * opened. The value for \a index is (directory file position)/32. + * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive + * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. + * \return true for success or false for failure. + */ + bool open(SdBaseFile& dirFile, uint16_t index, uint8_t oflag) { // NOLINT + return open(&dirFile, index, oflag); + } + /** \deprecated Use: bool openRoot(SdVolume* vol); + * \param[in] vol The FAT volume containing the root directory to be opened. + * \return true for success or false for failure. + */ + bool openRoot(SdVolume& vol) {return openRoot(&vol);} // NOLINT + /** \deprecated Use: int8_t readDir(dir_t* dir); + * \param[out] dir The dir_t struct that will receive the data. + * \return bytes read for success zero for eof or -1 for failure. + */ + int8_t readDir(dir_t& dir) {return readDir(&dir);} // NOLINT + /** \deprecated Use: + * static uint8_t remove(SdBaseFile* dirFile, const char* path); + * \param[in] dirFile The directory that contains the file. + * \param[in] path The name of the file to be removed. + * \return true for success or false for failure. + */ + static bool remove(SdBaseFile& dirFile, const char* path) { // NOLINT + return remove(&dirFile, path); + } +//------------------------------------------------------------------------------ +// rest are private + private: + static void (*oldDateTime_)(uint16_t& date, uint16_t& time); // NOLINT + static void oldToNew(uint16_t* date, uint16_t* time) { + uint16_t d; + uint16_t t; + oldDateTime_(d, t); + *date = d; + *time = t; + } +#endif // ALLOW_DEPRECATED_FUNCTIONS +}; + +#endif // SdBaseFile_h diff --git a/Marlin/SdFat.cpp b/Marlin/SdFat.cpp new file mode 100644 index 000000000..494fd4822 --- /dev/null +++ b/Marlin/SdFat.cpp @@ -0,0 +1,329 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdFat.h" +#include "SdFatUtil.h" +//------------------------------------------------------------------------------ +/** Change a volume's working directory to root + * + * Changes the volume's working directory to the SD's root directory. + * Optionally set the current working directory to the volume's + * working directory. + * + * \param[in] set_cwd Set the current working directory to this volume's + * working directory if true. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdFat::chdir(bool set_cwd) { + if (set_cwd) SdBaseFile::cwd_ = &vwd_; + vwd_.close(); + return vwd_.openRoot(&vol_); +} +//------------------------------------------------------------------------------ +/** Change a volume's working directory + * + * Changes the volume working directory to the \a path subdirectory. + * Optionally set the current working directory to the volume's + * working directory. + * + * Example: If the volume's working directory is "/DIR", chdir("SUB") + * will change the volume's working directory from "/DIR" to "/DIR/SUB". + * + * If path is "/", the volume's working directory will be changed to the + * root directory + * + * \param[in] path The name of the subdirectory. + * + * \param[in] set_cwd Set the current working directory to this volume's + * working directory if true. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdFat::chdir(const char *path, bool set_cwd) { + SdBaseFile dir; + if (path[0] == '/' && path[1] == '\0') return chdir(set_cwd); + if (!dir.open(&vwd_, path, O_READ)) goto fail; + if (!dir.isDir()) goto fail; + vwd_ = dir; + if (set_cwd) SdBaseFile::cwd_ = &vwd_; + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** Set the current working directory to a volume's working directory. + * + * This is useful with multiple SD cards. + * + * The current working directory is changed to this volume's working directory. + * + * This is like the Windows/DOS \: command. + */ +void SdFat::chvol() { + SdBaseFile::cwd_ = &vwd_; +} +//------------------------------------------------------------------------------ +/** %Print any SD error code and halt. */ +void SdFat::errorHalt() { + errorPrint(); + while (1); +} +//------------------------------------------------------------------------------ +/** %Print msg, any SD error code, and halt. + * + * \param[in] msg Message to print. + */ +void SdFat::errorHalt(char const* msg) { + errorPrint(msg); + while (1); +} +//------------------------------------------------------------------------------ +/** %Print msg, any SD error code, and halt. + * + * \param[in] msg Message in program space (flash memory) to print. + */ +void SdFat::errorHalt_P(PGM_P msg) { + errorPrint_P(msg); + while (1); +} +//------------------------------------------------------------------------------ +/** %Print any SD error code. */ +void SdFat::errorPrint() { + if (!card_.errorCode()) return; + PgmPrint("SD errorCode: 0X"); + Serial.println(card_.errorCode(), HEX); +} +//------------------------------------------------------------------------------ +/** %Print msg, any SD error code. + * + * \param[in] msg Message to print. + */ +void SdFat::errorPrint(char const* msg) { + PgmPrint("error: "); + Serial.println(msg); + errorPrint(); +} +//------------------------------------------------------------------------------ +/** %Print msg, any SD error code. + * + * \param[in] msg Message in program space (flash memory) to print. + */ +void SdFat::errorPrint_P(PGM_P msg) { + PgmPrint("error: "); + SerialPrintln_P(msg); + errorPrint(); +} +//------------------------------------------------------------------------------ +/** + * Test for the existence of a file. + * + * \param[in] name Name of the file to be tested for. + * + * \return true if the file exists else false. + */ +bool SdFat::exists(const char* name) { + return vwd_.exists(name); +} +//------------------------------------------------------------------------------ +/** + * Initialize an SdFat object. + * + * Initializes the SD card, SD volume, and root directory. + * + * \param[in] sckRateID value for SPI SCK rate. See Sd2Card::init(). + * \param[in] chipSelectPin SD chip select pin. See Sd2Card::init(). + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdFat::init(uint8_t sckRateID, uint8_t chipSelectPin) { + return card_.init(sckRateID, chipSelectPin) && vol_.init(&card_) && chdir(1); +} +//------------------------------------------------------------------------------ +/** %Print error details and halt after SdFat::init() fails. */ +void SdFat::initErrorHalt() { + initErrorPrint(); + while (1); +} +//------------------------------------------------------------------------------ +/**Print message, error details, and halt after SdFat::init() fails. + * + * \param[in] msg Message to print. + */ +void SdFat::initErrorHalt(char const *msg) { + Serial.println(msg); + initErrorHalt(); +} +//------------------------------------------------------------------------------ +/**Print message, error details, and halt after SdFat::init() fails. + * + * \param[in] msg Message in program space (flash memory) to print. + */ +void SdFat::initErrorHalt_P(PGM_P msg) { + SerialPrintln_P(msg); + initErrorHalt(); +} +//------------------------------------------------------------------------------ +/** Print error details after SdFat::init() fails. */ +void SdFat::initErrorPrint() { + if (card_.errorCode()) { + PgmPrintln("Can't access SD card. Do not reformat."); + if (card_.errorCode() == SD_CARD_ERROR_CMD0) { + PgmPrintln("No card, wrong chip select pin, or SPI problem?"); + } + errorPrint(); + } else if (vol_.fatType() == 0) { + PgmPrintln("Invalid format, reformat SD."); + } else if (!vwd_.isOpen()) { + PgmPrintln("Can't open root directory."); + } else { + PgmPrintln("No error found."); + } +} +//------------------------------------------------------------------------------ +/**Print message and error details and halt after SdFat::init() fails. + * + * \param[in] msg Message to print. + */ +void SdFat::initErrorPrint(char const *msg) { + Serial.println(msg); + initErrorPrint(); +} +//------------------------------------------------------------------------------ +/**Print message and error details after SdFat::init() fails. + * + * \param[in] msg Message in program space (flash memory) to print. + */ +void SdFat::initErrorPrint_P(PGM_P msg) { + SerialPrintln_P(msg); + initErrorHalt(); +} +//------------------------------------------------------------------------------ +/** List the directory contents of the volume working directory to Serial. + * + * \param[in] flags The inclusive OR of + * + * LS_DATE - %Print file modification date + * + * LS_SIZE - %Print file size. + * + * LS_R - Recursive list of subdirectories. + */ +void SdFat::ls(uint8_t flags) { + vwd_.ls(&Serial, flags); +} +//------------------------------------------------------------------------------ +/** List the directory contents of the volume working directory to Serial. + * + * \param[in] pr Print stream for list. + * + * \param[in] flags The inclusive OR of + * + * LS_DATE - %Print file modification date + * + * LS_SIZE - %Print file size. + * + * LS_R - Recursive list of subdirectories. + */ +void SdFat::ls(Print* pr, uint8_t flags) { + vwd_.ls(pr, flags); +} +//------------------------------------------------------------------------------ +/** Make a subdirectory in the volume working directory. + * + * \param[in] path A path with a valid 8.3 DOS name for the subdirectory. + * + * \param[in] pFlag Create missing parent directories if true. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdFat::mkdir(const char* path, bool pFlag) { + SdBaseFile sub; + return sub.mkdir(&vwd_, path, pFlag); +} +//------------------------------------------------------------------------------ +/** Remove a file from the volume working directory. +* +* \param[in] path A path with a valid 8.3 DOS name for the file. +* +* \return The value one, true, is returned for success and +* the value zero, false, is returned for failure. +*/ +bool SdFat::remove(const char* path) { + return SdBaseFile::remove(&vwd_, path); +} +//------------------------------------------------------------------------------ +/** Rename a file or subdirectory. + * + * \param[in] oldPath Path name to the file or subdirectory to be renamed. + * + * \param[in] newPath New path name of the file or subdirectory. + * + * The \a newPath object must not exist before the rename call. + * + * The file to be renamed must not be open. The directory entry may be + * moved and file system corruption could occur if the file is accessed by + * a file object that was opened before the rename() call. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdFat::rename(const char *oldPath, const char *newPath) { + SdBaseFile file; + if (!file.open(oldPath, O_READ)) return false; + return file.rename(&vwd_, newPath); +} +//------------------------------------------------------------------------------ +/** Remove a subdirectory from the volume's working directory. + * + * \param[in] path A path with a valid 8.3 DOS name for the subdirectory. + * + * The subdirectory file will be removed only if it is empty. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool SdFat::rmdir(const char* path) { + SdBaseFile sub; + if (!sub.open(path, O_READ)) return false; + return sub.rmdir(); +} +//------------------------------------------------------------------------------ +/** Truncate a file to a specified length. The current file position + * will be maintained if it is less than or equal to \a length otherwise + * it will be set to end of file. + * + * \param[in] path A path with a valid 8.3 DOS name for the file. + * \param[in] length The desired length for the file. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + * Reasons for failure include file is read only, file is a directory, + * \a length is greater than the current file size or an I/O error occurs. + */ +bool SdFat::truncate(const char* path, uint32_t length) { + SdBaseFile file; + if (!file.open(path, O_WRITE)) return false; + return file.truncate(length); +} diff --git a/Marlin/SdFat.h b/Marlin/SdFat.h index 048fa711e..1a184d084 100644 --- a/Marlin/SdFat.h +++ b/Marlin/SdFat.h @@ -21,527 +21,56 @@ #define SdFat_h /** * \file - * SdFile and SdVolume classes + * \brief SdFat class */ -#include -#include "Sd2Card.h" -#include "FatStructs.h" -#include "Print.h" +#include "SdFile.h" +//#include +//#include +//------------------------------------------------------------------------------ +/** SdFat version YYYYMMDD */ +#define SD_FAT_VERSION 20110902 //------------------------------------------------------------------------------ /** - * Allow use of deprecated functions if non-zero + * \class SdFat + * \brief Integration class for the %SdFat library. */ -#define ALLOW_DEPRECATED_FUNCTIONS 1 -//------------------------------------------------------------------------------ -// forward declaration since SdVolume is used in SdFile -class SdVolume; -//============================================================================== -// SdFile class - -// flags for ls() -/** ls() flag to print modify date */ -uint8_t const LS_DATE = 1; -/** ls() flag to print file size */ -uint8_t const LS_SIZE = 2; -/** ls() flag for recursive list of subdirectories */ -uint8_t const LS_R = 4; - -// use the gnu style oflag in open() -/** open() oflag for reading */ -uint8_t const O_READ = 0X01; -/** open() oflag - same as O_READ */ -uint8_t const O_RDONLY = O_READ; -/** open() oflag for write */ -uint8_t const O_WRITE = 0X02; -/** open() oflag - same as O_WRITE */ -uint8_t const O_WRONLY = O_WRITE; -/** open() oflag for reading and writing */ -uint8_t const O_RDWR = (O_READ | O_WRITE); -/** open() oflag mask for access modes */ -uint8_t const O_ACCMODE = (O_READ | O_WRITE); -/** The file offset shall be set to the end of the file prior to each write. */ -uint8_t const O_APPEND = 0X04; -/** synchronous writes - call sync() after each write */ -uint8_t const O_SYNC = 0X08; -/** create the file if nonexistent */ -uint8_t const O_CREAT = 0X10; -/** If O_CREAT and O_EXCL are set, open() shall fail if the file exists */ -uint8_t const O_EXCL = 0X20; -/** truncate the file to zero length */ -uint8_t const O_TRUNC = 0X40; - -// flags for timestamp -/** set the file's last access date */ -uint8_t const T_ACCESS = 1; -/** set the file's creation date and time */ -uint8_t const T_CREATE = 2; -/** Set the file's write date and time */ -uint8_t const T_WRITE = 4; -// values for type_ -/** This SdFile has not been opened. */ -uint8_t const FAT_FILE_TYPE_CLOSED = 0; -/** SdFile for a file */ -uint8_t const FAT_FILE_TYPE_NORMAL = 1; -/** SdFile for a FAT16 root directory */ -uint8_t const FAT_FILE_TYPE_ROOT16 = 2; -/** SdFile for a FAT32 root directory */ -uint8_t const FAT_FILE_TYPE_ROOT32 = 3; -/** SdFile for a subdirectory */ -uint8_t const FAT_FILE_TYPE_SUBDIR = 4; -/** Test value for directory type */ -uint8_t const FAT_FILE_TYPE_MIN_DIR = FAT_FILE_TYPE_ROOT16; - -/** date field for FAT directory entry */ -static inline uint16_t FAT_DATE(uint16_t year, uint8_t month, uint8_t day) { - return (year - 1980) << 9 | month << 5 | day; -} -/** year part of FAT directory date field */ -static inline uint16_t FAT_YEAR(uint16_t fatDate) { - return 1980 + (fatDate >> 9); -} -/** month part of FAT directory date field */ -static inline uint8_t FAT_MONTH(uint16_t fatDate) { - return (fatDate >> 5) & 0XF; -} -/** day part of FAT directory date field */ -static inline uint8_t FAT_DAY(uint16_t fatDate) { - return fatDate & 0X1F; -} -/** time field for FAT directory entry */ -static inline uint16_t FAT_TIME(uint8_t hour, uint8_t minute, uint8_t second) { - return hour << 11 | minute << 5 | second >> 1; -} -/** hour part of FAT directory time field */ -static inline uint8_t FAT_HOUR(uint16_t fatTime) { - return fatTime >> 11; -} -/** minute part of FAT directory time field */ -static inline uint8_t FAT_MINUTE(uint16_t fatTime) { - return(fatTime >> 5) & 0X3F; -} -/** second part of FAT directory time field */ -static inline uint8_t FAT_SECOND(uint16_t fatTime) { - return 2*(fatTime & 0X1F); -} -/** Default date for file timestamps is 1 Jan 2000 */ -uint16_t const FAT_DEFAULT_DATE = ((2000 - 1980) << 9) | (1 << 5) | 1; -/** Default time for file timestamp is 1 am */ -uint16_t const FAT_DEFAULT_TIME = (1 << 11); -//------------------------------------------------------------------------------ -/** - * \class SdFile - * \brief Access FAT16 and FAT32 files on SD and SDHC cards. - */ -class SdFile : public Print { +class SdFat { public: - /** Create an instance of SdFile. */ - SdFile(void) : type_(FAT_FILE_TYPE_CLOSED) {} - /** - * writeError is set to true if an error occurs during a write(). - * Set writeError to false before calling print() and/or write() and check - * for true after calls to print() and/or write(). - */ - bool writeError; - /** - * Cancel unbuffered reads for this file. - * See setUnbufferedRead() - */ - void clearUnbufferedRead(void) { - flags_ &= ~F_FILE_UNBUFFERED_READ; - } - uint8_t close(void); - uint8_t contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); - uint8_t createContiguous(SdFile* dirFile, - const char* fileName, uint32_t size); - /** \return The current cluster number for a file or directory. */ - uint32_t curCluster(void) const {return curCluster_;} - /** \return The current position for a file or directory. */ - uint32_t curPosition(void) const {return curPosition_;} - /** - * Set the date/time callback function - * - * \param[in] dateTime The user's call back function. The callback - * function is of the form: - * - * \code - * void dateTime(uint16_t* date, uint16_t* time) { - * uint16_t year; - * uint8_t month, day, hour, minute, second; - * - * // User gets date and time from GPS or real-time clock here - * - * // return date using FAT_DATE macro to format fields - * *date = FAT_DATE(year, month, day); - * - * // return time using FAT_TIME macro to format fields - * *time = FAT_TIME(hour, minute, second); - * } - * \endcode - * - * Sets the function that is called when a file is created or when - * a file's directory entry is modified by sync(). All timestamps, - * access, creation, and modify, are set when a file is created. - * sync() maintains the last access date and last modify date/time. - * - * See the timestamp() function. - */ - static void dateTimeCallback( - void (*dateTime)(uint16_t* date, uint16_t* time)) { - dateTime_ = dateTime; - } - /** - * Cancel the date/time callback function. - */ - static void dateTimeCallbackCancel(void) { - // use explicit zero since NULL is not defined for Sanguino - dateTime_ = 0; - } - /** \return Address of the block that contains this file's directory. */ - uint32_t dirBlock(void) const {return dirBlock_;} - uint8_t dirEntry(dir_t* dir); - /** \return Index of this file's directory in the block dirBlock. */ - uint8_t dirIndex(void) const {return dirIndex_;} - static void dirName(const dir_t& dir, char* name); - /** \return The total number of bytes in a file or directory. */ - uint32_t fileSize(void) const {return fileSize_;} - /** \return The first cluster number for a file or directory. */ - uint32_t firstCluster(void) const {return firstCluster_;} - /** \return True if this is a SdFile for a directory else false. */ - uint8_t isDir(void) const {return type_ >= FAT_FILE_TYPE_MIN_DIR;} - /** \return True if this is a SdFile for a file else false. */ - uint8_t isFile(void) const {return type_ == FAT_FILE_TYPE_NORMAL;} - /** \return True if this is a SdFile for an open file/directory else false. */ - uint8_t isOpen(void) const {return type_ != FAT_FILE_TYPE_CLOSED;} - /** \return True if this is a SdFile for a subdirectory else false. */ - uint8_t isSubDir(void) const {return type_ == FAT_FILE_TYPE_SUBDIR;} - /** \return True if this is a SdFile for the root directory. */ - uint8_t isRoot(void) const { - return type_ == FAT_FILE_TYPE_ROOT16 || type_ == FAT_FILE_TYPE_ROOT32; - } - void ls(uint8_t flags = 0, uint8_t indent = 0); - uint8_t makeDir(SdFile* dir, const char* dirName); - uint8_t open(SdFile* dirFile, uint16_t index, uint8_t oflag); - uint8_t open(SdFile* dirFile, const char* fileName, uint8_t oflag); - - uint8_t openRoot(SdVolume* vol); - static void printDirName(const dir_t& dir, uint8_t width); - static void printFatDate(uint16_t fatDate); - static void printFatTime(uint16_t fatTime); - static void printTwoDigits(uint8_t v); - /** - * Read the next byte from a file. - * - * \return For success read returns the next byte in the file as an int. - * If an error occurs or end of file is reached -1 is returned. - */ - int16_t read(void) { - uint8_t b; - return read(&b, 1) == 1 ? b : -1; - } - int16_t read(void* buf, uint16_t nbyte); - int8_t readDir(dir_t* dir); - static uint8_t remove(SdFile* dirFile, const char* fileName); - uint8_t remove(void); - /** Set the file's current position to zero. */ - void rewind(void) { - curPosition_ = curCluster_ = 0; - } - uint8_t rmDir(void); - uint8_t rmRfStar(void); - /** Set the files position to current position + \a pos. See seekSet(). */ - uint8_t seekCur(uint32_t pos) { - return seekSet(curPosition_ + pos); - } - /** - * Set the files current position to end of file. Useful to position - * a file for append. See seekSet(). - */ - uint8_t seekEnd(void) {return seekSet(fileSize_);} - uint8_t seekSet(uint32_t pos); - /** - * Use unbuffered reads to access this file. Used with Wave - * Shield ISR. Used with Sd2Card::partialBlockRead() in WaveRP. - * - * Not recommended for normal applications. - */ - void setUnbufferedRead(void) { - if (isFile()) flags_ |= F_FILE_UNBUFFERED_READ; - } - uint8_t timestamp(uint8_t flag, uint16_t year, uint8_t month, uint8_t day, - uint8_t hour, uint8_t minute, uint8_t second); - uint8_t sync(void); - /** Type of this SdFile. You should use isFile() or isDir() instead of type() - * if possible. - * - * \return The file or directory type. - */ - uint8_t type(void) const {return type_;} - uint8_t truncate(uint32_t size); - /** \return Unbuffered read flag. */ - uint8_t unbufferedRead(void) const { - return flags_ & F_FILE_UNBUFFERED_READ; - } - /** \return SdVolume that contains this file. */ - SdVolume* volume(void) const {return vol_;} - void write(uint8_t b); - int16_t write(const void* buf, uint16_t nbyte); - void write(const char* str); - void write_P(PGM_P str); - void writeln_P(PGM_P str); -//------------------------------------------------------------------------------ -#if ALLOW_DEPRECATED_FUNCTIONS -// Deprecated functions - suppress cpplint warnings with NOLINT comment - /** \deprecated Use: - * uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock); - */ - uint8_t contiguousRange(uint32_t& bgnBlock, uint32_t& endBlock) { // NOLINT - return contiguousRange(&bgnBlock, &endBlock); - } - /** \deprecated Use: - * uint8_t SdFile::createContiguous(SdFile* dirFile, - * const char* fileName, uint32_t size) - */ - uint8_t createContiguous(SdFile& dirFile, // NOLINT - const char* fileName, uint32_t size) { - return createContiguous(&dirFile, fileName, size); - } - - /** - * \deprecated Use: - * static void SdFile::dateTimeCallback( - * void (*dateTime)(uint16_t* date, uint16_t* time)); - */ - static void dateTimeCallback( - void (*dateTime)(uint16_t& date, uint16_t& time)) { // NOLINT - oldDateTime_ = dateTime; - dateTime_ = dateTime ? oldToNew : 0; - } - /** \deprecated Use: uint8_t SdFile::dirEntry(dir_t* dir); */ - uint8_t dirEntry(dir_t& dir) {return dirEntry(&dir);} // NOLINT - /** \deprecated Use: - * uint8_t SdFile::makeDir(SdFile* dir, const char* dirName); - */ - uint8_t makeDir(SdFile& dir, const char* dirName) { // NOLINT - return makeDir(&dir, dirName); - } - /** \deprecated Use: - * uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag); - */ - uint8_t open(SdFile& dirFile, // NOLINT - const char* fileName, uint8_t oflag) { - return open(&dirFile, fileName, oflag); - } - /** \deprecated Do not use in new apps */ - uint8_t open(SdFile& dirFile, const char* fileName) { // NOLINT - return open(dirFile, fileName, O_RDWR); - } - /** \deprecated Use: - * uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag); - */ - uint8_t open(SdFile& dirFile, uint16_t index, uint8_t oflag) { // NOLINT - return open(&dirFile, index, oflag); - } - /** \deprecated Use: uint8_t SdFile::openRoot(SdVolume* vol); */ - uint8_t openRoot(SdVolume& vol) {return openRoot(&vol);} // NOLINT - - /** \deprecated Use: int8_t SdFile::readDir(dir_t* dir); */ - int8_t readDir(dir_t& dir) {return readDir(&dir);} // NOLINT - /** \deprecated Use: - * static uint8_t SdFile::remove(SdFile* dirFile, const char* fileName); - */ - static uint8_t remove(SdFile& dirFile, const char* fileName) { // NOLINT - return remove(&dirFile, fileName); - } -//------------------------------------------------------------------------------ -// rest are private + SdFat() {} + /** \return a pointer to the Sd2Card object. */ + Sd2Card* card() {return &card_;} + bool chdir(bool set_cwd = false); + bool chdir(const char* path, bool set_cwd = false); + void chvol(); + void errorHalt(); + void errorHalt_P(PGM_P msg); + void errorHalt(char const *msg); + void errorPrint(); + void errorPrint_P(PGM_P msg); + void errorPrint(char const *msg); + bool exists(const char* name); + bool init(uint8_t sckRateID = SPI_FULL_SPEED, + uint8_t chipSelectPin = SD_CHIP_SELECT_PIN); + void initErrorHalt(); + void initErrorHalt(char const *msg); + void initErrorHalt_P(PGM_P msg); + void initErrorPrint(); + void initErrorPrint(char const *msg); + void initErrorPrint_P(PGM_P msg); + void ls(uint8_t flags = 0); + void ls(Print* pr, uint8_t flags = 0); + bool mkdir(const char* path, bool pFlag = true); + bool remove(const char* path); + bool rename(const char *oldPath, const char *newPath); + bool rmdir(const char* path); + bool truncate(const char* path, uint32_t length); + /** \return a pointer to the SdVolume object. */ + SdVolume* vol() {return &vol_;} + /** \return a pointer to the volume working directory. */ + SdBaseFile* vwd() {return &vwd_;} private: - static void (*oldDateTime_)(uint16_t& date, uint16_t& time); // NOLINT - static void oldToNew(uint16_t* date, uint16_t* time) { - uint16_t d; - uint16_t t; - oldDateTime_(d, t); - *date = d; - *time = t; - } -#endif // ALLOW_DEPRECATED_FUNCTIONS - private: - // bits defined in flags_ - // should be 0XF - static uint8_t const F_OFLAG = (O_ACCMODE | O_APPEND | O_SYNC); - // available bits - static uint8_t const F_UNUSED = 0X30; - // use unbuffered SD read - static uint8_t const F_FILE_UNBUFFERED_READ = 0X40; - // sync of directory entry required - static uint8_t const F_FILE_DIR_DIRTY = 0X80; - -// make sure F_OFLAG is ok -#if ((F_UNUSED | F_FILE_UNBUFFERED_READ | F_FILE_DIR_DIRTY) & F_OFLAG) -#error flags_ bits conflict -#endif // flags_ bits - - // private data - uint8_t flags_; // See above for definition of flags_ bits - uint8_t type_; // type of file see above for values - uint32_t curCluster_; // cluster for current file position - uint32_t curPosition_; // current file position in bytes from beginning - uint32_t dirBlock_; // SD block that contains directory entry for file - uint8_t dirIndex_; // index of entry in dirBlock 0 <= dirIndex_ <= 0XF - uint32_t fileSize_; // file size in bytes - uint32_t firstCluster_; // first cluster of file - SdVolume* vol_; // volume where file is located - - // private functions - uint8_t addCluster(void); - uint8_t addDirCluster(void); - dir_t* cacheDirEntry(uint8_t action); - static void (*dateTime_)(uint16_t* date, uint16_t* time); - static uint8_t make83Name(const char* str, uint8_t* name); - uint8_t openCachedEntry(uint8_t cacheIndex, uint8_t oflags); - dir_t* readDirCache(void); -}; -//============================================================================== -// SdVolume class -/** - * \brief Cache for an SD data block - */ -union cache_t { - /** Used to access cached file data blocks. */ - uint8_t data[512]; - /** Used to access cached FAT16 entries. */ - uint16_t fat16[256]; - /** Used to access cached FAT32 entries. */ - uint32_t fat32[128]; - /** Used to access cached directory entries. */ - dir_t dir[16]; - /** Used to access a cached MasterBoot Record. */ - mbr_t mbr; - /** Used to access to a cached FAT boot sector. */ - fbs_t fbs; -}; -//------------------------------------------------------------------------------ -/** - * \class SdVolume - * \brief Access FAT16 and FAT32 volumes on SD and SDHC cards. - */ -class SdVolume { - public: - /** Create an instance of SdVolume */ - SdVolume(void) :allocSearchStart_(2), fatType_(0) {} - /** Clear the cache and returns a pointer to the cache. Used by the WaveRP - * recorder to do raw write to the SD card. Not for normal apps. - */ - static uint8_t* cacheClear(void) { - cacheFlush(); - cacheBlockNumber_ = 0XFFFFFFFF; - return cacheBuffer_.data; - } - /** - * Initialize a FAT volume. Try partition one first then try super - * floppy format. - * - * \param[in] dev The Sd2Card where the volume is located. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. Reasons for - * failure include not finding a valid partition, not finding a valid - * FAT file system or an I/O error. - */ - uint8_t init(Sd2Card* dev) { return init(dev, 1) ? true : init(dev, 0);} - uint8_t init(Sd2Card* dev, uint8_t part); - - // inline functions that return volume info - /** \return The volume's cluster size in blocks. */ - uint8_t blocksPerCluster(void) const {return blocksPerCluster_;} - /** \return The number of blocks in one FAT. */ - uint32_t blocksPerFat(void) const {return blocksPerFat_;} - /** \return The total number of clusters in the volume. */ - uint32_t clusterCount(void) const {return clusterCount_;} - /** \return The shift count required to multiply by blocksPerCluster. */ - uint8_t clusterSizeShift(void) const {return clusterSizeShift_;} - /** \return The logical block number for the start of file data. */ - uint32_t dataStartBlock(void) const {return dataStartBlock_;} - /** \return The number of FAT structures on the volume. */ - uint8_t fatCount(void) const {return fatCount_;} - /** \return The logical block number for the start of the first FAT. */ - uint32_t fatStartBlock(void) const {return fatStartBlock_;} - /** \return The FAT type of the volume. Values are 12, 16 or 32. */ - uint8_t fatType(void) const {return fatType_;} - /** \return The number of entries in the root directory for FAT16 volumes. */ - uint32_t rootDirEntryCount(void) const {return rootDirEntryCount_;} - /** \return The logical block number for the start of the root directory - on FAT16 volumes or the first cluster number on FAT32 volumes. */ - uint32_t rootDirStart(void) const {return rootDirStart_;} - /** return a pointer to the Sd2Card object for this volume */ - static Sd2Card* sdCard(void) {return sdCard_;} -//------------------------------------------------------------------------------ -#if ALLOW_DEPRECATED_FUNCTIONS - // Deprecated functions - suppress cpplint warnings with NOLINT comment - /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev); */ - uint8_t init(Sd2Card& dev) {return init(&dev);} // NOLINT - - /** \deprecated Use: uint8_t SdVolume::init(Sd2Card* dev, uint8_t vol); */ - uint8_t init(Sd2Card& dev, uint8_t part) { // NOLINT - return init(&dev, part); - } -#endif // ALLOW_DEPRECATED_FUNCTIONS -//------------------------------------------------------------------------------ - private: - // Allow SdFile access to SdVolume private data. - friend class SdFile; - - // value for action argument in cacheRawBlock to indicate read from cache - static uint8_t const CACHE_FOR_READ = 0; - // value for action argument in cacheRawBlock to indicate cache dirty - static uint8_t const CACHE_FOR_WRITE = 1; - - static cache_t cacheBuffer_; // 512 byte cache for device blocks - static uint32_t cacheBlockNumber_; // Logical number of block in the cache - static Sd2Card* sdCard_; // Sd2Card object for cache - static uint8_t cacheDirty_; // cacheFlush() will write block if true - static uint32_t cacheMirrorBlock_; // block number for mirror FAT -// - uint32_t allocSearchStart_; // start cluster for alloc search - uint8_t blocksPerCluster_; // cluster size in blocks - uint32_t blocksPerFat_; // FAT size in blocks - uint32_t clusterCount_; // clusters in one FAT - uint8_t clusterSizeShift_; // shift to convert cluster count to block count - uint32_t dataStartBlock_; // first data block number - uint8_t fatCount_; // number of FATs on volume - uint32_t fatStartBlock_; // start block for first FAT - uint8_t fatType_; // volume type (12, 16, OR 32) - uint16_t rootDirEntryCount_; // number of entries in FAT16 root dir - uint32_t rootDirStart_; // root start block for FAT16, cluster for FAT32 - //---------------------------------------------------------------------------- - uint8_t allocContiguous(uint32_t count, uint32_t* curCluster); - uint8_t blockOfCluster(uint32_t position) const { - return (position >> 9) & (blocksPerCluster_ - 1);} - uint32_t clusterStartBlock(uint32_t cluster) const { - return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_);} - uint32_t blockNumber(uint32_t cluster, uint32_t position) const { - return clusterStartBlock(cluster) + blockOfCluster(position);} - static uint8_t cacheFlush(void); - static uint8_t cacheRawBlock(uint32_t blockNumber, uint8_t action); - static void cacheSetDirty(void) {cacheDirty_ |= CACHE_FOR_WRITE;} - static uint8_t cacheZeroBlock(uint32_t blockNumber); - uint8_t chainSize(uint32_t beginCluster, uint32_t* size) const; - uint8_t fatGet(uint32_t cluster, uint32_t* value) const; - uint8_t fatPut(uint32_t cluster, uint32_t value); - uint8_t fatPutEOC(uint32_t cluster) { - return fatPut(cluster, 0x0FFFFFFF); - } - uint8_t freeChain(uint32_t cluster); - uint8_t isEOC(uint32_t cluster) const { - return cluster >= (fatType_ == 16 ? FAT16EOC_MIN : FAT32EOC_MIN); - } - uint8_t readBlock(uint32_t block, uint8_t* dst) { - return sdCard_->readBlock(block, dst);} - uint8_t readData(uint32_t block, uint16_t offset, - uint16_t count, uint8_t* dst) { - return sdCard_->readData(block, offset, count, dst); - } - uint8_t writeBlock(uint32_t block, const uint8_t* dst) { - return sdCard_->writeBlock(block, dst); - } + Sd2Card card_; + SdVolume vol_; + SdBaseFile vwd_; }; #endif // SdFat_h diff --git a/Marlin/SdFatConfig.h b/Marlin/SdFatConfig.h new file mode 100644 index 000000000..036bdb9c6 --- /dev/null +++ b/Marlin/SdFatConfig.h @@ -0,0 +1,108 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +/** + * \file + * \brief configuration definitions + */ +#ifndef SdFatConfig_h +#define SdFatConfig_h +#include +//------------------------------------------------------------------------------ +/** + * To use multiple SD cards set USE_MULTIPLE_CARDS nonzero. + * + * Using multiple cards costs 400 - 500 bytes of flash. + * + * Each card requires about 550 bytes of SRAM so use of a Mega is recommended. + */ +#define USE_MULTIPLE_CARDS 0 +//------------------------------------------------------------------------------ +/** + * Call flush for endl if ENDL_CALLS_FLUSH is nonzero + * + * The standard for iostreams is to call flush. This is very costly for + * SdFat. Each call to flush causes 2048 bytes of I/O to the SD. + * + * SdFat has a single 512 byte buffer for SD I/O so it must write the current + * data block to the SD, read the directory block from the SD, update the + * directory entry, write the directory block to the SD and read the data + * block back into the buffer. + * + * The SD flash memory controller is not designed for this many rewrites + * so performance may be reduced by more than a factor of 100. + * + * If ENDL_CALLS_FLUSH is zero, you must call flush and/or close to force + * all data to be written to the SD. + */ +#define ENDL_CALLS_FLUSH 0 +//------------------------------------------------------------------------------ +/** + * Allow use of deprecated functions if ALLOW_DEPRECATED_FUNCTIONS is nonzero + */ +#define ALLOW_DEPRECATED_FUNCTIONS 1 +//------------------------------------------------------------------------------ +/** + * Allow FAT12 volumes if FAT12_SUPPORT is nonzero. + * FAT12 has not been well tested. + */ +#define FAT12_SUPPORT 0 +//------------------------------------------------------------------------------ +/** + * SPI init rate for SD initialization commands. Must be 5 (F_CPU/64) + * or 6 (F_CPU/128). + */ +#define SPI_SD_INIT_RATE 5 +//------------------------------------------------------------------------------ +/** + * Set the SS pin high for hardware SPI. If SS is chip select for another SPI + * device this will disable that device during the SD init phase. + */ +#define SET_SPI_SS_HIGH 1 +//------------------------------------------------------------------------------ +/** + * Define MEGA_SOFT_SPI nonzero to use software SPI on Mega Arduinos. + * Pins used are SS 10, MOSI 11, MISO 12, and SCK 13. + * + * MEGA_SOFT_SPI allows an unmodified Adafruit GPS Shield to be used + * on Mega Arduinos. Software SPI works well with GPS Shield V1.1 + * but many SD cards will fail with GPS Shield V1.0. + */ +#define MEGA_SOFT_SPI 0 +//------------------------------------------------------------------------------ +/** + * Set USE_SOFTWARE_SPI nonzero to always use software SPI. + */ +#define USE_SOFTWARE_SPI 0 +// define software SPI pins so Mega can use unmodified 168/328 shields +/** Software SPI chip select pin for the SD */ +uint8_t const SOFT_SPI_CS_PIN = 10; +/** Software SPI Master Out Slave In pin */ +uint8_t const SOFT_SPI_MOSI_PIN = 11; +/** Software SPI Master In Slave Out pin */ +uint8_t const SOFT_SPI_MISO_PIN = 12; +/** Software SPI Clock pin */ +uint8_t const SOFT_SPI_SCK_PIN = 13; +//------------------------------------------------------------------------------ +/** + * The __cxa_pure_virtual function is an error handler that is invoked when + * a pure virtual function is called. + */ +#define USE_CXA_PURE_VIRTUAL 1 +#endif // SdFatConfig_h diff --git a/Marlin/FatStructs.h b/Marlin/SdFatStructs.h similarity index 59% rename from Marlin/FatStructs.h rename to Marlin/SdFatStructs.h index f5bdaa594..4ea82b766 100644 --- a/Marlin/FatStructs.h +++ b/Marlin/SdFatStructs.h @@ -1,418 +1,604 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef FatStructs_h -#define FatStructs_h -/** - * \file - * FAT file structures - */ -/* - * mostly from Microsoft document fatgen103.doc - * http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx - */ -//------------------------------------------------------------------------------ -/** Value for byte 510 of boot block or MBR */ -uint8_t const BOOTSIG0 = 0X55; -/** Value for byte 511 of boot block or MBR */ -uint8_t const BOOTSIG1 = 0XAA; -//------------------------------------------------------------------------------ -/** - * \struct partitionTable - * \brief MBR partition table entry - * - * A partition table entry for a MBR formatted storage device. - * The MBR partition table has four entries. - */ -struct partitionTable { - /** - * Boot Indicator . Indicates whether the volume is the active - * partition. Legal values include: 0X00. Do not use for booting. - * 0X80 Active partition. - */ - uint8_t boot; - /** - * Head part of Cylinder-head-sector address of the first block in - * the partition. Legal values are 0-255. Only used in old PC BIOS. - */ - uint8_t beginHead; - /** - * Sector part of Cylinder-head-sector address of the first block in - * the partition. Legal values are 1-63. Only used in old PC BIOS. - */ - unsigned beginSector : 6; - /** High bits cylinder for first block in partition. */ - unsigned beginCylinderHigh : 2; - /** - * Combine beginCylinderLow with beginCylinderHigh. Legal values - * are 0-1023. Only used in old PC BIOS. - */ - uint8_t beginCylinderLow; - /** - * Partition type. See defines that begin with PART_TYPE_ for - * some Microsoft partition types. - */ - uint8_t type; - /** - * head part of cylinder-head-sector address of the last sector in the - * partition. Legal values are 0-255. Only used in old PC BIOS. - */ - uint8_t endHead; - /** - * Sector part of cylinder-head-sector address of the last sector in - * the partition. Legal values are 1-63. Only used in old PC BIOS. - */ - unsigned endSector : 6; - /** High bits of end cylinder */ - unsigned endCylinderHigh : 2; - /** - * Combine endCylinderLow with endCylinderHigh. Legal values - * are 0-1023. Only used in old PC BIOS. - */ - uint8_t endCylinderLow; - /** Logical block address of the first block in the partition. */ - uint32_t firstSector; - /** Length of the partition, in blocks. */ - uint32_t totalSectors; -}; -/** Type name for partitionTable */ -typedef struct partitionTable part_t; -//------------------------------------------------------------------------------ -/** - * \struct masterBootRecord - * - * \brief Master Boot Record - * - * The first block of a storage device that is formatted with a MBR. - */ -struct masterBootRecord { - /** Code Area for master boot program. */ - uint8_t codeArea[440]; - /** Optional WindowsNT disk signature. May contain more boot code. */ - uint32_t diskSignature; - /** Usually zero but may be more boot code. */ - uint16_t usuallyZero; - /** Partition tables. */ - part_t part[4]; - /** First MBR signature byte. Must be 0X55 */ - uint8_t mbrSig0; - /** Second MBR signature byte. Must be 0XAA */ - uint8_t mbrSig1; -}; -/** Type name for masterBootRecord */ -typedef struct masterBootRecord mbr_t; -//------------------------------------------------------------------------------ -/** - * \struct biosParmBlock - * - * \brief BIOS parameter block - * - * The BIOS parameter block describes the physical layout of a FAT volume. - */ -struct biosParmBlock { - /** - * Count of bytes per sector. This value may take on only the - * following values: 512, 1024, 2048 or 4096 - */ - uint16_t bytesPerSector; - /** - * Number of sectors per allocation unit. This value must be a - * power of 2 that is greater than 0. The legal values are - * 1, 2, 4, 8, 16, 32, 64, and 128. - */ - uint8_t sectorsPerCluster; - /** - * Number of sectors before the first FAT. - * This value must not be zero. - */ - uint16_t reservedSectorCount; - /** The count of FAT data structures on the volume. This field should - * always contain the value 2 for any FAT volume of any type. - */ - uint8_t fatCount; - /** - * For FAT12 and FAT16 volumes, this field contains the count of - * 32-byte directory entries in the root directory. For FAT32 volumes, - * this field must be set to 0. For FAT12 and FAT16 volumes, this - * value should always specify a count that when multiplied by 32 - * results in a multiple of bytesPerSector. FAT16 volumes should - * use the value 512. - */ - uint16_t rootDirEntryCount; - /** - * This field is the old 16-bit total count of sectors on the volume. - * This count includes the count of all sectors in all four regions - * of the volume. This field can be 0; if it is 0, then totalSectors32 - * must be non-zero. For FAT32 volumes, this field must be 0. For - * FAT12 and FAT16 volumes, this field contains the sector count, and - * totalSectors32 is 0 if the total sector count fits - * (is less than 0x10000). - */ - uint16_t totalSectors16; - /** - * This dates back to the old MS-DOS 1.x media determination and is - * no longer usually used for anything. 0xF8 is the standard value - * for fixed (non-removable) media. For removable media, 0xF0 is - * frequently used. Legal values are 0xF0 or 0xF8-0xFF. - */ - uint8_t mediaType; - /** - * Count of sectors occupied by one FAT on FAT12/FAT16 volumes. - * On FAT32 volumes this field must be 0, and sectorsPerFat32 - * contains the FAT size count. - */ - uint16_t sectorsPerFat16; - /** Sectors per track for interrupt 0x13. Not used otherwise. */ - uint16_t sectorsPerTrtack; - /** Number of heads for interrupt 0x13. Not used otherwise. */ - uint16_t headCount; - /** - * Count of hidden sectors preceding the partition that contains this - * FAT volume. This field is generally only relevant for media - * visible on interrupt 0x13. - */ - uint32_t hidddenSectors; - /** - * This field is the new 32-bit total count of sectors on the volume. - * This count includes the count of all sectors in all four regions - * of the volume. This field can be 0; if it is 0, then - * totalSectors16 must be non-zero. - */ - uint32_t totalSectors32; - /** - * Count of sectors occupied by one FAT on FAT32 volumes. - */ - uint32_t sectorsPerFat32; - /** - * This field is only defined for FAT32 media and does not exist on - * FAT12 and FAT16 media. - * Bits 0-3 -- Zero-based number of active FAT. - * Only valid if mirroring is disabled. - * Bits 4-6 -- Reserved. - * Bit 7 -- 0 means the FAT is mirrored at runtime into all FATs. - * -- 1 means only one FAT is active; it is the one referenced in bits 0-3. - * Bits 8-15 -- Reserved. - */ - uint16_t fat32Flags; - /** - * FAT32 version. High byte is major revision number. - * Low byte is minor revision number. Only 0.0 define. - */ - uint16_t fat32Version; - /** - * Cluster number of the first cluster of the root directory for FAT32. - * This usually 2 but not required to be 2. - */ - uint32_t fat32RootCluster; - /** - * Sector number of FSINFO structure in the reserved area of the - * FAT32 volume. Usually 1. - */ - uint16_t fat32FSInfo; - /** - * If non-zero, indicates the sector number in the reserved area - * of the volume of a copy of the boot record. Usually 6. - * No value other than 6 is recommended. - */ - uint16_t fat32BackBootBlock; - /** - * Reserved for future expansion. Code that formats FAT32 volumes - * should always set all of the bytes of this field to 0. - */ - uint8_t fat32Reserved[12]; -}; -/** Type name for biosParmBlock */ -typedef struct biosParmBlock bpb_t; -//------------------------------------------------------------------------------ -/** - * \struct fat32BootSector - * - * \brief Boot sector for a FAT16 or FAT32 volume. - * - */ -struct fat32BootSector { - /** X86 jmp to boot program */ - uint8_t jmpToBootCode[3]; - /** informational only - don't depend on it */ - char oemName[8]; - /** BIOS Parameter Block */ - bpb_t bpb; - /** for int0x13 use value 0X80 for hard drive */ - uint8_t driveNumber; - /** used by Windows NT - should be zero for FAT */ - uint8_t reserved1; - /** 0X29 if next three fields are valid */ - uint8_t bootSignature; - /** usually generated by combining date and time */ - uint32_t volumeSerialNumber; - /** should match volume label in root dir */ - char volumeLabel[11]; - /** informational only - don't depend on it */ - char fileSystemType[8]; - /** X86 boot code */ - uint8_t bootCode[420]; - /** must be 0X55 */ - uint8_t bootSectorSig0; - /** must be 0XAA */ - uint8_t bootSectorSig1; -}; -//------------------------------------------------------------------------------ -// End Of Chain values for FAT entries -/** FAT16 end of chain value used by Microsoft. */ -uint16_t const FAT16EOC = 0XFFFF; -/** Minimum value for FAT16 EOC. Use to test for EOC. */ -uint16_t const FAT16EOC_MIN = 0XFFF8; -/** FAT32 end of chain value used by Microsoft. */ -uint32_t const FAT32EOC = 0X0FFFFFFF; -/** Minimum value for FAT32 EOC. Use to test for EOC. */ -uint32_t const FAT32EOC_MIN = 0X0FFFFFF8; -/** Mask a for FAT32 entry. Entries are 28 bits. */ -uint32_t const FAT32MASK = 0X0FFFFFFF; - -/** Type name for fat32BootSector */ -typedef struct fat32BootSector fbs_t; -//------------------------------------------------------------------------------ -/** - * \struct directoryEntry - * \brief FAT short directory entry - * - * Short means short 8.3 name, not the entry size. - * - * Date Format. A FAT directory entry date stamp is a 16-bit field that is - * basically a date relative to the MS-DOS epoch of 01/01/1980. Here is the - * format (bit 0 is the LSB of the 16-bit word, bit 15 is the MSB of the - * 16-bit word): - * - * Bits 9-15: Count of years from 1980, valid value range 0-127 - * inclusive (1980-2107). - * - * Bits 5-8: Month of year, 1 = January, valid value range 1-12 inclusive. - * - * Bits 0-4: Day of month, valid value range 1-31 inclusive. - * - * Time Format. A FAT directory entry time stamp is a 16-bit field that has - * a granularity of 2 seconds. Here is the format (bit 0 is the LSB of the - * 16-bit word, bit 15 is the MSB of the 16-bit word). - * - * Bits 11-15: Hours, valid value range 0-23 inclusive. - * - * Bits 5-10: Minutes, valid value range 0-59 inclusive. - * - * Bits 0-4: 2-second count, valid value range 0-29 inclusive (0 - 58 seconds). - * - * The valid time range is from Midnight 00:00:00 to 23:59:58. - */ -struct directoryEntry { - /** - * Short 8.3 name. - * The first eight bytes contain the file name with blank fill. - * The last three bytes contain the file extension with blank fill. - */ - uint8_t name[11]; - /** Entry attributes. - * - * The upper two bits of the attribute byte are reserved and should - * always be set to 0 when a file is created and never modified or - * looked at after that. See defines that begin with DIR_ATT_. - */ - uint8_t attributes; - /** - * Reserved for use by Windows NT. Set value to 0 when a file is - * created and never modify or look at it after that. - */ - uint8_t reservedNT; - /** - * The granularity of the seconds part of creationTime is 2 seconds - * so this field is a count of tenths of a second and its valid - * value range is 0-199 inclusive. (WHG note - seems to be hundredths) - */ - uint8_t creationTimeTenths; - /** Time file was created. */ - uint16_t creationTime; - /** Date file was created. */ - uint16_t creationDate; - /** - * Last access date. Note that there is no last access time, only - * a date. This is the date of last read or write. In the case of - * a write, this should be set to the same date as lastWriteDate. - */ - uint16_t lastAccessDate; - /** - * High word of this entry's first cluster number (always 0 for a - * FAT12 or FAT16 volume). - */ - uint16_t firstClusterHigh; - /** Time of last write. File creation is considered a write. */ - uint16_t lastWriteTime; - /** Date of last write. File creation is considered a write. */ - uint16_t lastWriteDate; - /** Low word of this entry's first cluster number. */ - uint16_t firstClusterLow; - /** 32-bit unsigned holding this file's size in bytes. */ - uint32_t fileSize; -}; -//------------------------------------------------------------------------------ -// Definitions for directory entries -// -/** Type name for directoryEntry */ -typedef struct directoryEntry dir_t; -/** escape for name[0] = 0XE5 */ -uint8_t const DIR_NAME_0XE5 = 0X05; -/** name[0] value for entry that is free after being "deleted" */ -uint8_t const DIR_NAME_DELETED = 0XE5; -/** name[0] value for entry that is free and no allocated entries follow */ -uint8_t const DIR_NAME_FREE = 0X00; -/** file is read-only */ -uint8_t const DIR_ATT_READ_ONLY = 0X01; -/** File should hidden in directory listings */ -uint8_t const DIR_ATT_HIDDEN = 0X02; -/** Entry is for a system file */ -uint8_t const DIR_ATT_SYSTEM = 0X04; -/** Directory entry contains the volume label */ -uint8_t const DIR_ATT_VOLUME_ID = 0X08; -/** Entry is for a directory */ -uint8_t const DIR_ATT_DIRECTORY = 0X10; -/** Old DOS archive bit for backup support */ -uint8_t const DIR_ATT_ARCHIVE = 0X20; -/** Test value for long name entry. Test is - (d->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME. */ -uint8_t const DIR_ATT_LONG_NAME = 0X0F; -/** Test mask for long name entry */ -uint8_t const DIR_ATT_LONG_NAME_MASK = 0X3F; -/** defined attribute bits */ -uint8_t const DIR_ATT_DEFINED_BITS = 0X3F; -/** Directory entry is part of a long name */ -static inline uint8_t DIR_IS_LONG_NAME(const dir_t* dir) { - return (dir->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME; -} -/** Mask for file/subdirectory tests */ -uint8_t const DIR_ATT_FILE_TYPE_MASK = (DIR_ATT_VOLUME_ID | DIR_ATT_DIRECTORY); -/** Directory entry is for a file */ -static inline uint8_t DIR_IS_FILE(const dir_t* dir) { - return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == 0; -} -/** Directory entry is for a subdirectory */ -static inline uint8_t DIR_IS_SUBDIR(const dir_t* dir) { - return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == DIR_ATT_DIRECTORY; -} -/** Directory entry is for a file or subdirectory */ -static inline uint8_t DIR_IS_FILE_OR_SUBDIR(const dir_t* dir) { - return (dir->attributes & DIR_ATT_VOLUME_ID) == 0; -} -#endif // FatStructs_h +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFatStructs_h +#define SdFatStructs_h +/** + * \file + * \brief FAT file structures + */ +/* + * mostly from Microsoft document fatgen103.doc + * http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx + */ +//------------------------------------------------------------------------------ +/** Value for byte 510 of boot block or MBR */ +uint8_t const BOOTSIG0 = 0X55; +/** Value for byte 511 of boot block or MBR */ +uint8_t const BOOTSIG1 = 0XAA; +/** Value for bootSignature field int FAT/FAT32 boot sector */ +uint8_t const EXTENDED_BOOT_SIG = 0X29; +//------------------------------------------------------------------------------ +/** + * \struct partitionTable + * \brief MBR partition table entry + * + * A partition table entry for a MBR formatted storage device. + * The MBR partition table has four entries. + */ +struct partitionTable { + /** + * Boot Indicator . Indicates whether the volume is the active + * partition. Legal values include: 0X00. Do not use for booting. + * 0X80 Active partition. + */ + uint8_t boot; + /** + * Head part of Cylinder-head-sector address of the first block in + * the partition. Legal values are 0-255. Only used in old PC BIOS. + */ + uint8_t beginHead; + /** + * Sector part of Cylinder-head-sector address of the first block in + * the partition. Legal values are 1-63. Only used in old PC BIOS. + */ + unsigned beginSector : 6; + /** High bits cylinder for first block in partition. */ + unsigned beginCylinderHigh : 2; + /** + * Combine beginCylinderLow with beginCylinderHigh. Legal values + * are 0-1023. Only used in old PC BIOS. + */ + uint8_t beginCylinderLow; + /** + * Partition type. See defines that begin with PART_TYPE_ for + * some Microsoft partition types. + */ + uint8_t type; + /** + * head part of cylinder-head-sector address of the last sector in the + * partition. Legal values are 0-255. Only used in old PC BIOS. + */ + uint8_t endHead; + /** + * Sector part of cylinder-head-sector address of the last sector in + * the partition. Legal values are 1-63. Only used in old PC BIOS. + */ + unsigned endSector : 6; + /** High bits of end cylinder */ + unsigned endCylinderHigh : 2; + /** + * Combine endCylinderLow with endCylinderHigh. Legal values + * are 0-1023. Only used in old PC BIOS. + */ + uint8_t endCylinderLow; + /** Logical block address of the first block in the partition. */ + uint32_t firstSector; + /** Length of the partition, in blocks. */ + uint32_t totalSectors; +}; +/** Type name for partitionTable */ +typedef struct partitionTable part_t; +//------------------------------------------------------------------------------ +/** + * \struct masterBootRecord + * + * \brief Master Boot Record + * + * The first block of a storage device that is formatted with a MBR. + */ +struct masterBootRecord { + /** Code Area for master boot program. */ + uint8_t codeArea[440]; + /** Optional Windows NT disk signature. May contain boot code. */ + uint32_t diskSignature; + /** Usually zero but may be more boot code. */ + uint16_t usuallyZero; + /** Partition tables. */ + part_t part[4]; + /** First MBR signature byte. Must be 0X55 */ + uint8_t mbrSig0; + /** Second MBR signature byte. Must be 0XAA */ + uint8_t mbrSig1; +}; +/** Type name for masterBootRecord */ +typedef struct masterBootRecord mbr_t; +//------------------------------------------------------------------------------ +/** + * \struct fat_boot + * + * \brief Boot sector for a FAT12/FAT16 volume. + * + */ +struct fat_boot { + /** + * The first three bytes of the boot sector must be valid, + * executable x 86-based CPU instructions. This includes a + * jump instruction that skips the next nonexecutable bytes. + */ + uint8_t jump[3]; + /** + * This is typically a string of characters that identifies + * the operating system that formatted the volume. + */ + char oemId[8]; + /** + * The size of a hardware sector. Valid decimal values for this + * field are 512, 1024, 2048, and 4096. For most disks used in + * the United States, the value of this field is 512. + */ + uint16_t bytesPerSector; + /** + * Number of sectors per allocation unit. This value must be a + * power of 2 that is greater than 0. The legal values are + * 1, 2, 4, 8, 16, 32, 64, and 128. 128 should be avoided. + */ + uint8_t sectorsPerCluster; + /** + * The number of sectors preceding the start of the first FAT, + * including the boot sector. The value of this field is always 1. + */ + uint16_t reservedSectorCount; + /** + * The number of copies of the FAT on the volume. + * The value of this field is always 2. + */ + uint8_t fatCount; + /** + * For FAT12 and FAT16 volumes, this field contains the count of + * 32-byte directory entries in the root directory. For FAT32 volumes, + * this field must be set to 0. For FAT12 and FAT16 volumes, this + * value should always specify a count that when multiplied by 32 + * results in a multiple of bytesPerSector. FAT16 volumes should + * use the value 512. + */ + uint16_t rootDirEntryCount; + /** + * This field is the old 16-bit total count of sectors on the volume. + * This count includes the count of all sectors in all four regions + * of the volume. This field can be 0; if it is 0, then totalSectors32 + * must be nonzero. For FAT32 volumes, this field must be 0. For + * FAT12 and FAT16 volumes, this field contains the sector count, and + * totalSectors32 is 0 if the total sector count fits + * (is less than 0x10000). + */ + uint16_t totalSectors16; + /** + * This dates back to the old MS-DOS 1.x media determination and is + * no longer usually used for anything. 0xF8 is the standard value + * for fixed (nonremovable) media. For removable media, 0xF0 is + * frequently used. Legal values are 0xF0 or 0xF8-0xFF. + */ + uint8_t mediaType; + /** + * Count of sectors occupied by one FAT on FAT12/FAT16 volumes. + * On FAT32 volumes this field must be 0, and sectorsPerFat32 + * contains the FAT size count. + */ + uint16_t sectorsPerFat16; + /** Sectors per track for interrupt 0x13. Not used otherwise. */ + uint16_t sectorsPerTrack; + /** Number of heads for interrupt 0x13. Not used otherwise. */ + uint16_t headCount; + /** + * Count of hidden sectors preceding the partition that contains this + * FAT volume. This field is generally only relevant for media + * visible on interrupt 0x13. + */ + uint32_t hidddenSectors; + /** + * This field is the new 32-bit total count of sectors on the volume. + * This count includes the count of all sectors in all four regions + * of the volume. This field can be 0; if it is 0, then + * totalSectors16 must be nonzero. + */ + uint32_t totalSectors32; + /** + * Related to the BIOS physical drive number. Floppy drives are + * identified as 0x00 and physical hard disks are identified as + * 0x80, regardless of the number of physical disk drives. + * Typically, this value is set prior to issuing an INT 13h BIOS + * call to specify the device to access. The value is only + * relevant if the device is a boot device. + */ + uint8_t driveNumber; + /** used by Windows NT - should be zero for FAT */ + uint8_t reserved1; + /** 0X29 if next three fields are valid */ + uint8_t bootSignature; + /** + * A random serial number created when formatting a disk, + * which helps to distinguish between disks. + * Usually generated by combining date and time. + */ + uint32_t volumeSerialNumber; + /** + * A field once used to store the volume label. The volume label + * is now stored as a special file in the root directory. + */ + char volumeLabel[11]; + /** + * A field with a value of either FAT, FAT12 or FAT16, + * depending on the disk format. + */ + char fileSystemType[8]; + /** X86 boot code */ + uint8_t bootCode[448]; + /** must be 0X55 */ + uint8_t bootSectorSig0; + /** must be 0XAA */ + uint8_t bootSectorSig1; +}; +/** Type name for FAT Boot Sector */ +typedef struct fat_boot fat_boot_t; +//------------------------------------------------------------------------------ +/** + * \struct fat32_boot + * + * \brief Boot sector for a FAT32 volume. + * + */ +struct fat32_boot { + /** + * The first three bytes of the boot sector must be valid, + * executable x 86-based CPU instructions. This includes a + * jump instruction that skips the next nonexecutable bytes. + */ + uint8_t jump[3]; + /** + * This is typically a string of characters that identifies + * the operating system that formatted the volume. + */ + char oemId[8]; + /** + * The size of a hardware sector. Valid decimal values for this + * field are 512, 1024, 2048, and 4096. For most disks used in + * the United States, the value of this field is 512. + */ + uint16_t bytesPerSector; + /** + * Number of sectors per allocation unit. This value must be a + * power of 2 that is greater than 0. The legal values are + * 1, 2, 4, 8, 16, 32, 64, and 128. 128 should be avoided. + */ + uint8_t sectorsPerCluster; + /** + * The number of sectors preceding the start of the first FAT, + * including the boot sector. Must not be zero + */ + uint16_t reservedSectorCount; + /** + * The number of copies of the FAT on the volume. + * The value of this field is always 2. + */ + uint8_t fatCount; + /** + * FAT12/FAT16 only. For FAT32 volumes, this field must be set to 0. + */ + uint16_t rootDirEntryCount; + /** + * For FAT32 volumes, this field must be 0. + */ + uint16_t totalSectors16; + /** + * This dates back to the old MS-DOS 1.x media determination and is + * no longer usually used for anything. 0xF8 is the standard value + * for fixed (nonremovable) media. For removable media, 0xF0 is + * frequently used. Legal values are 0xF0 or 0xF8-0xFF. + */ + uint8_t mediaType; + /** + * On FAT32 volumes this field must be 0, and sectorsPerFat32 + * contains the FAT size count. + */ + uint16_t sectorsPerFat16; + /** Sectors per track for interrupt 0x13. Not used otherwise. */ + uint16_t sectorsPerTrack; + /** Number of heads for interrupt 0x13. Not used otherwise. */ + uint16_t headCount; + /** + * Count of hidden sectors preceding the partition that contains this + * FAT volume. This field is generally only relevant for media + * visible on interrupt 0x13. + */ + uint32_t hidddenSectors; + /** + * Contains the total number of sectors in the FAT32 volume. + */ + uint32_t totalSectors32; + /** + * Count of sectors occupied by one FAT on FAT32 volumes. + */ + uint32_t sectorsPerFat32; + /** + * This field is only defined for FAT32 media and does not exist on + * FAT12 and FAT16 media. + * Bits 0-3 -- Zero-based number of active FAT. + * Only valid if mirroring is disabled. + * Bits 4-6 -- Reserved. + * Bit 7 -- 0 means the FAT is mirrored at runtime into all FATs. + * -- 1 means only one FAT is active; it is the one referenced + * in bits 0-3. + * Bits 8-15 -- Reserved. + */ + uint16_t fat32Flags; + /** + * FAT32 version. High byte is major revision number. + * Low byte is minor revision number. Only 0.0 define. + */ + uint16_t fat32Version; + /** + * Cluster number of the first cluster of the root directory for FAT32. + * This usually 2 but not required to be 2. + */ + uint32_t fat32RootCluster; + /** + * Sector number of FSINFO structure in the reserved area of the + * FAT32 volume. Usually 1. + */ + uint16_t fat32FSInfo; + /** + * If nonzero, indicates the sector number in the reserved area + * of the volume of a copy of the boot record. Usually 6. + * No value other than 6 is recommended. + */ + uint16_t fat32BackBootBlock; + /** + * Reserved for future expansion. Code that formats FAT32 volumes + * should always set all of the bytes of this field to 0. + */ + uint8_t fat32Reserved[12]; + /** + * Related to the BIOS physical drive number. Floppy drives are + * identified as 0x00 and physical hard disks are identified as + * 0x80, regardless of the number of physical disk drives. + * Typically, this value is set prior to issuing an INT 13h BIOS + * call to specify the device to access. The value is only + * relevant if the device is a boot device. + */ + uint8_t driveNumber; + /** used by Windows NT - should be zero for FAT */ + uint8_t reserved1; + /** 0X29 if next three fields are valid */ + uint8_t bootSignature; + /** + * A random serial number created when formatting a disk, + * which helps to distinguish between disks. + * Usually generated by combining date and time. + */ + uint32_t volumeSerialNumber; + /** + * A field once used to store the volume label. The volume label + * is now stored as a special file in the root directory. + */ + char volumeLabel[11]; + /** + * A text field with a value of FAT32. + */ + char fileSystemType[8]; + /** X86 boot code */ + uint8_t bootCode[420]; + /** must be 0X55 */ + uint8_t bootSectorSig0; + /** must be 0XAA */ + uint8_t bootSectorSig1; +}; +/** Type name for FAT32 Boot Sector */ +typedef struct fat32_boot fat32_boot_t; +//------------------------------------------------------------------------------ +/** Lead signature for a FSINFO sector */ +uint32_t const FSINFO_LEAD_SIG = 0x41615252; +/** Struct signature for a FSINFO sector */ +uint32_t const FSINFO_STRUCT_SIG = 0x61417272; +/** + * \struct fat32_fsinfo + * + * \brief FSINFO sector for a FAT32 volume. + * + */ +struct fat32_fsinfo { + /** must be 0X52, 0X52, 0X61, 0X41 */ + uint32_t leadSignature; + /** must be zero */ + uint8_t reserved1[480]; + /** must be 0X72, 0X72, 0X41, 0X61 */ + uint32_t structSignature; + /** + * Contains the last known free cluster count on the volume. + * If the value is 0xFFFFFFFF, then the free count is unknown + * and must be computed. Any other value can be used, but is + * not necessarily correct. It should be range checked at least + * to make sure it is <= volume cluster count. + */ + uint32_t freeCount; + /** + * This is a hint for the FAT driver. It indicates the cluster + * number at which the driver should start looking for free clusters. + * If the value is 0xFFFFFFFF, then there is no hint and the driver + * should start looking at cluster 2. + */ + uint32_t nextFree; + /** must be zero */ + uint8_t reserved2[12]; + /** must be 0X00, 0X00, 0X55, 0XAA */ + uint8_t tailSignature[4]; +}; +/** Type name for FAT32 FSINFO Sector */ +typedef struct fat32_fsinfo fat32_fsinfo_t; +//------------------------------------------------------------------------------ +// End Of Chain values for FAT entries +/** FAT12 end of chain value used by Microsoft. */ +uint16_t const FAT12EOC = 0XFFF; +/** Minimum value for FAT12 EOC. Use to test for EOC. */ +uint16_t const FAT12EOC_MIN = 0XFF8; +/** FAT16 end of chain value used by Microsoft. */ +uint16_t const FAT16EOC = 0XFFFF; +/** Minimum value for FAT16 EOC. Use to test for EOC. */ +uint16_t const FAT16EOC_MIN = 0XFFF8; +/** FAT32 end of chain value used by Microsoft. */ +uint32_t const FAT32EOC = 0X0FFFFFFF; +/** Minimum value for FAT32 EOC. Use to test for EOC. */ +uint32_t const FAT32EOC_MIN = 0X0FFFFFF8; +/** Mask a for FAT32 entry. Entries are 28 bits. */ +uint32_t const FAT32MASK = 0X0FFFFFFF; +//------------------------------------------------------------------------------ +/** + * \struct directoryEntry + * \brief FAT short directory entry + * + * Short means short 8.3 name, not the entry size. + * + * Date Format. A FAT directory entry date stamp is a 16-bit field that is + * basically a date relative to the MS-DOS epoch of 01/01/1980. Here is the + * format (bit 0 is the LSB of the 16-bit word, bit 15 is the MSB of the + * 16-bit word): + * + * Bits 9-15: Count of years from 1980, valid value range 0-127 + * inclusive (1980-2107). + * + * Bits 5-8: Month of year, 1 = January, valid value range 1-12 inclusive. + * + * Bits 0-4: Day of month, valid value range 1-31 inclusive. + * + * Time Format. A FAT directory entry time stamp is a 16-bit field that has + * a granularity of 2 seconds. Here is the format (bit 0 is the LSB of the + * 16-bit word, bit 15 is the MSB of the 16-bit word). + * + * Bits 11-15: Hours, valid value range 0-23 inclusive. + * + * Bits 5-10: Minutes, valid value range 0-59 inclusive. + * + * Bits 0-4: 2-second count, valid value range 0-29 inclusive (0 - 58 seconds). + * + * The valid time range is from Midnight 00:00:00 to 23:59:58. + */ +struct directoryEntry { + /** Short 8.3 name. + * + * The first eight bytes contain the file name with blank fill. + * The last three bytes contain the file extension with blank fill. + */ + uint8_t name[11]; + /** Entry attributes. + * + * The upper two bits of the attribute byte are reserved and should + * always be set to 0 when a file is created and never modified or + * looked at after that. See defines that begin with DIR_ATT_. + */ + uint8_t attributes; + /** + * Reserved for use by Windows NT. Set value to 0 when a file is + * created and never modify or look at it after that. + */ + uint8_t reservedNT; + /** + * The granularity of the seconds part of creationTime is 2 seconds + * so this field is a count of tenths of a second and its valid + * value range is 0-199 inclusive. (WHG note - seems to be hundredths) + */ + uint8_t creationTimeTenths; + /** Time file was created. */ + uint16_t creationTime; + /** Date file was created. */ + uint16_t creationDate; + /** + * Last access date. Note that there is no last access time, only + * a date. This is the date of last read or write. In the case of + * a write, this should be set to the same date as lastWriteDate. + */ + uint16_t lastAccessDate; + /** + * High word of this entry's first cluster number (always 0 for a + * FAT12 or FAT16 volume). + */ + uint16_t firstClusterHigh; + /** Time of last write. File creation is considered a write. */ + uint16_t lastWriteTime; + /** Date of last write. File creation is considered a write. */ + uint16_t lastWriteDate; + /** Low word of this entry's first cluster number. */ + uint16_t firstClusterLow; + /** 32-bit unsigned holding this file's size in bytes. */ + uint32_t fileSize; +}; +//------------------------------------------------------------------------------ +// Definitions for directory entries +// +/** Type name for directoryEntry */ +typedef struct directoryEntry dir_t; +/** escape for name[0] = 0XE5 */ +uint8_t const DIR_NAME_0XE5 = 0X05; +/** name[0] value for entry that is free after being "deleted" */ +uint8_t const DIR_NAME_DELETED = 0XE5; +/** name[0] value for entry that is free and no allocated entries follow */ +uint8_t const DIR_NAME_FREE = 0X00; +/** file is read-only */ +uint8_t const DIR_ATT_READ_ONLY = 0X01; +/** File should hidden in directory listings */ +uint8_t const DIR_ATT_HIDDEN = 0X02; +/** Entry is for a system file */ +uint8_t const DIR_ATT_SYSTEM = 0X04; +/** Directory entry contains the volume label */ +uint8_t const DIR_ATT_VOLUME_ID = 0X08; +/** Entry is for a directory */ +uint8_t const DIR_ATT_DIRECTORY = 0X10; +/** Old DOS archive bit for backup support */ +uint8_t const DIR_ATT_ARCHIVE = 0X20; +/** Test value for long name entry. Test is + (d->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME. */ +uint8_t const DIR_ATT_LONG_NAME = 0X0F; +/** Test mask for long name entry */ +uint8_t const DIR_ATT_LONG_NAME_MASK = 0X3F; +/** defined attribute bits */ +uint8_t const DIR_ATT_DEFINED_BITS = 0X3F; +/** Directory entry is part of a long name + * \param[in] dir Pointer to a directory entry. + * + * \return true if the entry is for part of a long name else false. + */ +static inline uint8_t DIR_IS_LONG_NAME(const dir_t* dir) { + return (dir->attributes & DIR_ATT_LONG_NAME_MASK) == DIR_ATT_LONG_NAME; +} +/** Mask for file/subdirectory tests */ +uint8_t const DIR_ATT_FILE_TYPE_MASK = (DIR_ATT_VOLUME_ID | DIR_ATT_DIRECTORY); +/** Directory entry is for a file + * \param[in] dir Pointer to a directory entry. + * + * \return true if the entry is for a normal file else false. + */ +static inline uint8_t DIR_IS_FILE(const dir_t* dir) { + return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == 0; +} +/** Directory entry is for a subdirectory + * \param[in] dir Pointer to a directory entry. + * + * \return true if the entry is for a subdirectory else false. + */ +static inline uint8_t DIR_IS_SUBDIR(const dir_t* dir) { + return (dir->attributes & DIR_ATT_FILE_TYPE_MASK) == DIR_ATT_DIRECTORY; +} +/** Directory entry is for a file or subdirectory + * \param[in] dir Pointer to a directory entry. + * + * \return true if the entry is for a normal file or subdirectory else false. + */ +static inline uint8_t DIR_IS_FILE_OR_SUBDIR(const dir_t* dir) { + return (dir->attributes & DIR_ATT_VOLUME_ID) == 0; +} +#endif // SdFatStructs_h diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp new file mode 100644 index 000000000..1870980b1 --- /dev/null +++ b/Marlin/SdFatUtil.cpp @@ -0,0 +1,74 @@ +/* Arduino SdFat Library + * Copyright (C) 2008 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#include "SdFatUtil.h" +//------------------------------------------------------------------------------ +/** Amount of free RAM + * \return The number of free bytes. + */ +int SdFatUtil::FreeRam() { + extern int __bss_end; + extern int* __brkval; + int free_memory; + if (reinterpret_cast(__brkval) == 0) { + // if no heap use from end of bss section + free_memory = reinterpret_cast(&free_memory) + - reinterpret_cast(&__bss_end); + } else { + // use from top of stack to heap + free_memory = reinterpret_cast(&free_memory) + - reinterpret_cast(__brkval); + } + return free_memory; +} +//------------------------------------------------------------------------------ +/** %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(Print* pr, PGM_P str) { + for (uint8_t c; (c = pgm_read_byte(str)); str++) pr->write(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(Print* pr, PGM_P str) { + print_P(pr, str); + pr->println(); +} +//------------------------------------------------------------------------------ +/** %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(&Serial, 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(&Serial, str); +} diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index 8bf90483d..b4112aa2d 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -21,50 +21,26 @@ #define SdFatUtil_h /** * \file - * Useful utility functions. + * \brief Useful utility functions. */ -#include #include +#if ARDUINO < 100 +#include +#else // ARDUINO +#include +#endif // ARDUINO /** Store and print a string in flash memory.*/ #define PgmPrint(x) SerialPrint_P(PSTR(x)) /** Store and print a string in flash memory followed by a CR/LF.*/ #define PgmPrintln(x) SerialPrintln_P(PSTR(x)) -/** Defined so doxygen works for function definitions. */ -#define NOINLINE __attribute__((noinline)) -//------------------------------------------------------------------------------ -/** Return the number of bytes currently free in RAM. */ -static int FreeRam(void) { - extern int __bss_end; - extern int* __brkval; - int free_memory; - if (reinterpret_cast(__brkval) == 0) { - // if no heap use from end of bss section - free_memory = reinterpret_cast(&free_memory) - - reinterpret_cast(&__bss_end); - } else { - // use from top of stack to heap - free_memory = reinterpret_cast(&free_memory) - - reinterpret_cast(__brkval); - } - return free_memory; -} -//------------------------------------------------------------------------------ -/** - * %Print a string in flash memory to the serial port. - * - * \param[in] str Pointer to string stored in flash memory. - */ -static NOINLINE void SerialPrint_P(PGM_P str) { - for (uint8_t c; (c = pgm_read_byte(str)); str++) Serial.print(c); -} -//------------------------------------------------------------------------------ -/** - * %Print a string in flash memory followed by a CR/LF. - * - * \param[in] str Pointer to string stored in flash memory. - */ -static NOINLINE void SerialPrintln_P(PGM_P str) { - SerialPrint_P(str); - Serial.println(); + +namespace SdFatUtil { + int FreeRam(); + void print_P(Print* pr, PGM_P str); + void println_P(Print* pr, PGM_P str); + void SerialPrint_P(PGM_P str); + void SerialPrintln_P(PGM_P str); } + +using namespace SdFatUtil; // NOLINT #endif // #define SdFatUtil_h diff --git a/Marlin/SdFatmainpage.h b/Marlin/SdFatmainpage.h deleted file mode 100644 index 73b3b63bd..000000000 --- a/Marlin/SdFatmainpage.h +++ /dev/null @@ -1,202 +0,0 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ - -/** -\mainpage Arduino SdFat Library -
Copyright © 2009 by William Greiman -
- -\section Intro Introduction -The Arduino SdFat Library is a minimal implementation of FAT16 and FAT32 -file systems on SD flash memory cards. Standard SD and high capacity -SDHC cards are supported. - -The SdFat only supports short 8.3 names. - -The main classes in SdFat are Sd2Card, SdVolume, and SdFile. - -The Sd2Card class supports access to standard SD cards and SDHC cards. Most -applications will only need to call the Sd2Card::init() member function. - -The SdVolume class supports FAT16 and FAT32 partitions. Most applications -will only need to call the SdVolume::init() member function. - -The SdFile class provides file access functions such as open(), read(), -remove(), write(), close() and sync(). This class supports access to the root -directory and subdirectories. - -A number of example are provided in the SdFat/examples folder. These were -developed to test SdFat and illustrate its use. - -SdFat was developed for high speed data recording. SdFat was used to implement -an audio record/play class, WaveRP, for the Adafruit Wave Shield. This -application uses special Sd2Card calls to write to contiguous files in raw mode. -These functions reduce write latency so that audio can be recorded with the -small amount of RAM in the Arduino. - -\section SDcard SD\SDHC Cards - -Arduinos access SD cards using the cards SPI protocol. PCs, Macs, and -most consumer devices use the 4-bit parallel SD protocol. A card that -functions well on A PC or Mac may not work well on the Arduino. - -Most cards have good SPI read performance but cards vary widely in SPI -write performance. Write performance is limited by how efficiently the -card manages internal erase/remapping operations. The Arduino cannot -optimize writes to reduce erase operations because of its limit RAM. - -SanDisk cards generally have good write performance. They seem to have -more internal RAM buffering than other cards and therefore can limit -the number of flash erase operations that the Arduino forces due to its -limited RAM. - -\section Hardware Hardware Configuration - -SdFat was developed using an - Adafruit Industries - Wave Shield. - -The hardware interface to the SD card should not use a resistor based level -shifter. SdFat sets the SPI bus frequency to 8 MHz which results in signal -rise times that are too slow for the edge detectors in many newer SD card -controllers when resistor voltage dividers are used. - -The 5 to 3.3 V level shifter for 5 V Arduinos should be IC based like the -74HC4050N based circuit shown in the file SdLevel.png. The Adafruit Wave Shield -uses a 74AHC125N. Gravitech sells SD and MicroSD Card Adapters based on the -74LCX245. - -If you are using a resistor based level shifter and are having problems try -setting the SPI bus frequency to 4 MHz. This can be done by using -card.init(SPI_HALF_SPEED) to initialize the SD card. - -\section comment Bugs and Comments - -If you wish to report bugs or have comments, send email to fat16lib@sbcglobal.net. - -\section SdFatClass SdFat Usage - -SdFat uses a slightly restricted form of short names. -Only printable ASCII characters are supported. No characters with code point -values greater than 127 are allowed. Space is not allowed even though space -was allowed in the API of early versions of DOS. - -Short names are limited to 8 characters followed by an optional period (.) -and extension of up to 3 characters. The characters may be any combination -of letters and digits. The following special characters are also allowed: - -$ % ' - _ @ ~ ` ! ( ) { } ^ # & - -Short names are always converted to upper case and their original case -value is lost. - -\note - The Arduino Print class uses character -at a time writes so it was necessary to use a \link SdFile::sync() sync() \endlink -function to control when data is written to the SD card. - -\par -An application which writes to a file using \link Print::print() print()\endlink, -\link Print::println() println() \endlink -or \link SdFile::write write() \endlink must call \link SdFile::sync() sync() \endlink -at the appropriate time to force data and directory information to be written -to the SD Card. Data and directory information are also written to the SD card -when \link SdFile::close() close() \endlink is called. - -\par -Applications must use care calling \link SdFile::sync() sync() \endlink -since 2048 bytes of I/O is required to update file and -directory information. This includes writing the current data block, reading -the block that contains the directory entry for update, writing the directory -block back and reading back the current data block. - -It is possible to open a file with two or more instances of SdFile. A file may -be corrupted if data is written to the file by more than one instance of SdFile. - -\section HowTo How to format SD Cards as FAT Volumes - -You should use a freshly formatted SD card for best performance. FAT -file systems become slower if many files have been created and deleted. -This is because the directory entry for a deleted file is marked as deleted, -but is not deleted. When a new file is created, these entries must be scanned -before creating the file, a flaw in the FAT design. Also files can become -fragmented which causes reads and writes to be slower. - -Microsoft operating systems support removable media formatted with a -Master Boot Record, MBR, or formatted as a super floppy with a FAT Boot Sector -in block zero. - -Microsoft operating systems expect MBR formatted removable media -to have only one partition. The first partition should be used. - -Microsoft operating systems do not support partitioning SD flash cards. -If you erase an SD card with a program like KillDisk, Most versions of -Windows will format the card as a super floppy. - -The best way to restore an SD card's format is to use SDFormatter -which can be downloaded from: - -http://www.sdcard.org/consumers/formatter/ - -SDFormatter aligns flash erase boundaries with file -system structures which reduces write latency and file system overhead. - -SDFormatter does not have an option for FAT type so it may format -small cards as FAT12. - -After the MBR is restored by SDFormatter you may need to reformat small -cards that have been formatted FAT12 to force the volume type to be FAT16. - -If you reformat the SD card with an OS utility, choose a cluster size that -will result in: - -4084 < CountOfClusters && CountOfClusters < 65525 - -The volume will then be FAT16. - -If you are formatting an SD card on OS X or Linux, be sure to use the first -partition. Format this partition with a cluster count in above range. - -\section References References - -Adafruit Industries: - -http://www.adafruit.com/ - -http://www.ladyada.net/make/waveshield/ - -The Arduino site: - -http://www.arduino.cc/ - -For more information about FAT file systems see: - -http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx - -For information about using SD cards as SPI devices see: - -http://www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf - -The ATmega328 datasheet: - -http://www.atmel.com/dyn/resources/prod_documents/doc8161.pdf - - - */ diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index e7e23d1db..0496a6ab9 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -17,1096 +17,18 @@ * along with the Arduino SdFat Library. If not, see * . */ -#include "SdFat.h" -#include -#include -//------------------------------------------------------------------------------ -// callback function for date/time -void (*SdFile::dateTime_)(uint16_t* date, uint16_t* time) = NULL; - -#if ALLOW_DEPRECATED_FUNCTIONS -// suppress cpplint warnings with NOLINT comment -void (*SdFile::oldDateTime_)(uint16_t& date, uint16_t& time) = NULL; // NOLINT -#endif // ALLOW_DEPRECATED_FUNCTIONS -//------------------------------------------------------------------------------ -// add a cluster to a file -uint8_t SdFile::addCluster() { - if (!vol_->allocContiguous(1, &curCluster_)) return false; - - // if first cluster of file link to directory entry - if (firstCluster_ == 0) { - firstCluster_ = curCluster_; - flags_ |= F_FILE_DIR_DIRTY; - } - return true; -} -//------------------------------------------------------------------------------ -// Add a cluster to a directory file and zero the cluster. -// return with first block of cluster in the cache -uint8_t SdFile::addDirCluster(void) { - if (!addCluster()) return false; - - // zero data in cluster insure first cluster is in cache - uint32_t block = vol_->clusterStartBlock(curCluster_); - for (uint8_t i = vol_->blocksPerCluster_; i != 0; i--) { - if (!SdVolume::cacheZeroBlock(block + i - 1)) return false; - } - // Increase directory file size by cluster size - fileSize_ += 512UL << vol_->clusterSizeShift_; - return true; -} -//------------------------------------------------------------------------------ -// cache a file's directory entry -// return pointer to cached entry or null for failure -dir_t* SdFile::cacheDirEntry(uint8_t action) { - if (!SdVolume::cacheRawBlock(dirBlock_, action)) return NULL; - return SdVolume::cacheBuffer_.dir + dirIndex_; -} -//------------------------------------------------------------------------------ -/** - * Close a file and force cached data and directory information - * to be written to the storage device. +#include "SdFile.h" +/** Create a file object and open it in the current working directory. * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include no file is open or an I/O error. - */ -uint8_t SdFile::close(void) { - if (!sync())return false; - type_ = FAT_FILE_TYPE_CLOSED; - return true; -} -//------------------------------------------------------------------------------ -/** - * Check for contiguous file and return its raw block range. - * - * \param[out] bgnBlock the first block address for the file. - * \param[out] endBlock the last block address for the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include file is not contiguous, file has zero length - * or an I/O error occurred. - */ -uint8_t SdFile::contiguousRange(uint32_t* bgnBlock, uint32_t* endBlock) { - // error if no blocks - if (firstCluster_ == 0) return false; - - for (uint32_t c = firstCluster_; ; c++) { - uint32_t next; - if (!vol_->fatGet(c, &next)) return false; - - // check for contiguous - if (next != (c + 1)) { - // error if not end of chain - if (!vol_->isEOC(next)) return false; - *bgnBlock = vol_->clusterStartBlock(firstCluster_); - *endBlock = vol_->clusterStartBlock(c) - + vol_->blocksPerCluster_ - 1; - return true; - } - } -} -//------------------------------------------------------------------------------ -/** - * Create and open a new contiguous file of a specified size. - * - * \note This function only supports short DOS 8.3 names. - * See open() for more information. - * - * \param[in] dirFile The directory where the file will be created. - * \param[in] fileName A valid DOS 8.3 file name. - * \param[in] size The desired file size. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include \a fileName contains - * an invalid DOS 8.3 file name, the FAT volume has not been initialized, - * a file is already open, the file already exists, the root - * directory is full or an I/O error. - * - */ -uint8_t SdFile::createContiguous(SdFile* dirFile, - const char* fileName, uint32_t size) { - // don't allow zero length file - if (size == 0) return false; - if (!open(dirFile, fileName, O_CREAT | O_EXCL | O_RDWR)) return false; - - // calculate number of clusters needed - uint32_t count = ((size - 1) >> (vol_->clusterSizeShift_ + 9)) + 1; - - // allocate clusters - if (!vol_->allocContiguous(count, &firstCluster_)) { - remove(); - return false; - } - fileSize_ = size; - - // insure sync() will update dir entry - flags_ |= F_FILE_DIR_DIRTY; - return sync(); -} -//------------------------------------------------------------------------------ -/** - * Return a files directory entry - * - * \param[out] dir Location for return of the files directory entry. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::dirEntry(dir_t* dir) { - // make sure fields on SD are correct - if (!sync()) return false; - - // read entry - dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_READ); - if (!p) return false; - - // copy to caller's struct - memcpy(dir, p, sizeof(dir_t)); - return true; -} -//------------------------------------------------------------------------------ -/** - * Format the name field of \a dir into the 13 byte array - * \a name in standard 8.3 short name format. - * - * \param[in] dir The directory structure containing the name. - * \param[out] name A 13 byte char array for the formatted name. - */ -void SdFile::dirName(const dir_t& dir, char* name) { - uint8_t j = 0; - for (uint8_t i = 0; i < 11; i++) { - if (dir.name[i] == ' ')continue; - if (i == 8) name[j++] = '.'; - name[j++] = dir.name[i]; - } - name[j] = 0; -} -//------------------------------------------------------------------------------ -/** List directory contents to Serial. - * - * \param[in] flags The inclusive OR of - * - * LS_DATE - %Print file modification date - * - * LS_SIZE - %Print file size. - * - * LS_R - Recursive list of subdirectories. - * - * \param[in] indent Amount of space before file name. Used for recursive - * list to indicate subdirectory level. - */ -void SdFile::ls(uint8_t flags, uint8_t indent) { - dir_t* p; - - rewind(); - while ((p = readDirCache())) { - // done if past last used entry - if (p->name[0] == DIR_NAME_FREE) break; - - // skip deleted entry and entries for . and .. - if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; - - // only list subdirectories and files - if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; - - // print any indent spaces - for (int8_t i = 0; i < indent; i++) Serial.print(' '); - - // print file name with possible blank fill - printDirName(*p, flags & (LS_DATE | LS_SIZE) ? 14 : 0); - - // print modify date/time if requested - if (flags & LS_DATE) { - printFatDate(p->lastWriteDate); - Serial.print(' '); - printFatTime(p->lastWriteTime); - } - // print size if requested - if (!DIR_IS_SUBDIR(p) && (flags & LS_SIZE)) { - Serial.print(' '); - Serial.print(p->fileSize); - } - Serial.println(); - - // list subdirectory content if requested - if ((flags & LS_R) && DIR_IS_SUBDIR(p)) { - uint16_t index = curPosition()/32 - 1; - SdFile s; - if (s.open(this, index, O_READ)) s.ls(flags, indent + 2); - seekSet(32 * (index + 1)); - } - } -} -//------------------------------------------------------------------------------ -// format directory name field from a 8.3 name string -uint8_t SdFile::make83Name(const char* str, uint8_t* name) { - uint8_t c; - uint8_t n = 7; // max index for part before dot - uint8_t i = 0; - // blank fill name and extension - while (i < 11) name[i++] = ' '; - i = 0; - while ((c = *str++) != '\0') { - if (c == '.') { - if (n == 10) return false; // only one dot allowed - n = 10; // max index for full 8.3 name - i = 8; // place for extension - } else { - // illegal FAT characters - PGM_P p = PSTR("|<>^+=?/[];,*\"\\"); - uint8_t b; - while ((b = pgm_read_byte(p++))) if (b == c) return false; - // check size and only allow ASCII printable characters - if (i > n || c < 0X21 || c > 0X7E)return false; - // only upper case allowed in 8.3 names - convert lower to upper - name[i++] = c < 'a' || c > 'z' ? c : c + ('A' - 'a'); - } - } - // must have a file name, extension is optional - return name[0] != ' '; -} -//------------------------------------------------------------------------------ -/** Make a new directory. - * - * \param[in] dir An open SdFat instance for the directory that will containing - * the new directory. - * - * \param[in] dirName A valid 8.3 DOS name for the new directory. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include this SdFile is already open, \a dir is not a - * directory, \a dirName is invalid or already exists in \a dir. - */ -uint8_t SdFile::makeDir(SdFile* dir, const char* dirName) { - dir_t d; - - // create a normal file - if (!open(dir, dirName, O_CREAT | O_EXCL | O_RDWR)) return false; - - // convert SdFile to directory - flags_ = O_READ; - type_ = FAT_FILE_TYPE_SUBDIR; - - // allocate and zero first cluster - if (!addDirCluster())return false; - - // force entry to SD - if (!sync()) return false; - - // cache entry - should already be in cache due to sync() call - dir_t* p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!p) return false; - - // change directory entry attribute - p->attributes = DIR_ATT_DIRECTORY; - - // make entry for '.' - memcpy(&d, p, sizeof(d)); - for (uint8_t i = 1; i < 11; i++) d.name[i] = ' '; - d.name[0] = '.'; - - // cache block for '.' and '..' - uint32_t block = vol_->clusterStartBlock(firstCluster_); - if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) return false; - - // copy '.' to block - memcpy(&SdVolume::cacheBuffer_.dir[0], &d, sizeof(d)); - - // make entry for '..' - d.name[1] = '.'; - if (dir->isRoot()) { - d.firstClusterLow = 0; - d.firstClusterHigh = 0; - } else { - d.firstClusterLow = dir->firstCluster_ & 0XFFFF; - d.firstClusterHigh = dir->firstCluster_ >> 16; - } - // copy '..' to block - memcpy(&SdVolume::cacheBuffer_.dir[1], &d, sizeof(d)); - - // set position after '..' - curPosition_ = 2 * sizeof(d); - - // write first block - return SdVolume::cacheFlush(); -} -//------------------------------------------------------------------------------ -/** - * Open a file or directory by name. - * - * \param[in] dirFile An open SdFat instance for the directory containing the - * file to be opened. - * - * \param[in] fileName A valid 8.3 DOS name for a file to be opened. + * \param[in] path A path with a valid 8.3 DOS name for a file to be opened. * * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive - * OR of flags from the following list - * - * O_READ - Open for reading. - * - * O_RDONLY - Same as O_READ. - * - * O_WRITE - Open for writing. - * - * O_WRONLY - Same as O_WRITE. - * - * O_RDWR - Open for reading and writing. - * - * O_APPEND - If set, the file offset shall be set to the end of the - * file prior to each write. - * - * O_CREAT - If the file exists, this flag has no effect except as noted - * under O_EXCL below. Otherwise, the file shall be created - * - * O_EXCL - If O_CREAT and O_EXCL are set, open() shall fail if the file exists. - * - * O_SYNC - Call sync() after each write. This flag should not be used with - * write(uint8_t), write_P(PGM_P), writeln_P(PGM_P), or the Arduino Print class. - * These functions do character at a time writes so sync() will be called - * after each byte. - * - * O_TRUNC - If the file exists and is a regular file, and the file is - * successfully opened and is not read only, its length shall be truncated to 0. - * - * \note Directory files must be opened read only. Write and truncation is - * not allowed for directory files. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include this SdFile is already open, \a difFile is not - * a directory, \a fileName is invalid, the file does not exist - * or can't be opened in the access mode specified by oflag. + * OR of open flags. see SdBaseFile::open(SdBaseFile*, const char*, uint8_t). */ -uint8_t SdFile::open(SdFile* dirFile, const char* fileName, uint8_t oflag) { - uint8_t dname[11]; - dir_t* p; - - // error if already open - if (isOpen())return false; - - if (!make83Name(fileName, dname)) return false; - vol_ = dirFile->vol_; - dirFile->rewind(); - - // bool for empty entry found - uint8_t emptyFound = false; - - // search for file - while (dirFile->curPosition_ < dirFile->fileSize_) { - uint8_t index = 0XF & (dirFile->curPosition_ >> 5); - p = dirFile->readDirCache(); - if (p == NULL) return false; - - if (p->name[0] == DIR_NAME_FREE || p->name[0] == DIR_NAME_DELETED) { - // remember first empty slot - if (!emptyFound) { - emptyFound = true; - dirIndex_ = index; - dirBlock_ = SdVolume::cacheBlockNumber_; - } - // done if no entries follow - if (p->name[0] == DIR_NAME_FREE) break; - } else if (!memcmp(dname, p->name, 11)) { - // don't open existing file if O_CREAT and O_EXCL - if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; - - // open found file - return openCachedEntry(0XF & index, oflag); - } - } - // only create file if O_CREAT and O_WRITE - if ((oflag & (O_CREAT | O_WRITE)) != (O_CREAT | O_WRITE)) return false; - - // cache found slot or add cluster if end of file - if (emptyFound) { - p = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!p) return false; - } else { - if (dirFile->type_ == FAT_FILE_TYPE_ROOT16) return false; - - // add and zero cluster for dirFile - first cluster is in cache for write - if (!dirFile->addDirCluster()) return false; - - // use first entry in cluster - dirIndex_ = 0; - p = SdVolume::cacheBuffer_.dir; - } - // initialize as empty file - memset(p, 0, sizeof(dir_t)); - memcpy(p->name, dname, 11); - - // set timestamps - if (dateTime_) { - // call user function - dateTime_(&p->creationDate, &p->creationTime); - } else { - // use default date/time - p->creationDate = FAT_DEFAULT_DATE; - p->creationTime = FAT_DEFAULT_TIME; - } - p->lastAccessDate = p->creationDate; - p->lastWriteDate = p->creationDate; - p->lastWriteTime = p->creationTime; - - // force write of entry to SD - if (!SdVolume::cacheFlush()) return false; - - // open entry in cache - return openCachedEntry(dirIndex_, oflag); +SdFile::SdFile(const char* path, uint8_t oflag) : SdBaseFile(path, oflag) { } //------------------------------------------------------------------------------ -/** - * Open a file by index. - * - * \param[in] dirFile An open SdFat instance for the directory. - * - * \param[in] index The \a index of the directory entry for the file to be - * opened. The value for \a index is (directory file position)/32. - * - * \param[in] oflag Values for \a oflag are constructed by a bitwise-inclusive - * OR of flags O_READ, O_WRITE, O_TRUNC, and O_SYNC. - * - * See open() by fileName for definition of flags and return values. - * - */ -uint8_t SdFile::open(SdFile* dirFile, uint16_t index, uint8_t oflag) { - // error if already open - if (isOpen())return false; - - // don't open existing file if O_CREAT and O_EXCL - user call error - if ((oflag & (O_CREAT | O_EXCL)) == (O_CREAT | O_EXCL)) return false; - - vol_ = dirFile->vol_; - - // seek to location of entry - if (!dirFile->seekSet(32 * index)) return false; - - // read entry into cache - dir_t* p = dirFile->readDirCache(); - if (p == NULL) return false; - - // error if empty slot or '.' or '..' - if (p->name[0] == DIR_NAME_FREE || - p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') { - return false; - } - // open cached entry - return openCachedEntry(index & 0XF, oflag); -} -//------------------------------------------------------------------------------ -// open a cached directory entry. Assumes vol_ is initializes -uint8_t SdFile::openCachedEntry(uint8_t dirIndex, uint8_t oflag) { - // location of entry in cache - dir_t* p = SdVolume::cacheBuffer_.dir + dirIndex; - - // write or truncate is an error for a directory or read-only file - if (p->attributes & (DIR_ATT_READ_ONLY | DIR_ATT_DIRECTORY)) { - if (oflag & (O_WRITE | O_TRUNC)) return false; - } - // remember location of directory entry on SD - dirIndex_ = dirIndex; - dirBlock_ = SdVolume::cacheBlockNumber_; - - // copy first cluster number for directory fields - firstCluster_ = (uint32_t)p->firstClusterHigh << 16; - firstCluster_ |= p->firstClusterLow; - - // make sure it is a normal file or subdirectory - if (DIR_IS_FILE(p)) { - fileSize_ = p->fileSize; - type_ = FAT_FILE_TYPE_NORMAL; - } else if (DIR_IS_SUBDIR(p)) { - if (!vol_->chainSize(firstCluster_, &fileSize_)) return false; - type_ = FAT_FILE_TYPE_SUBDIR; - } else { - return false; - } - // save open flags for read/write - flags_ = oflag & (O_ACCMODE | O_SYNC | O_APPEND); - - // set to start of file - curCluster_ = 0; - curPosition_ = 0; - - // truncate file to zero length if requested - if (oflag & O_TRUNC) return truncate(0); - return true; -} -//------------------------------------------------------------------------------ -/** - * Open a volume's root directory. - * - * \param[in] vol The FAT volume containing the root directory to be opened. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the FAT volume has not been initialized - * or it a FAT12 volume. - */ -uint8_t SdFile::openRoot(SdVolume* vol) { - // error if file is already open - if (isOpen()) return false; - - if (vol->fatType() == 16) { - type_ = FAT_FILE_TYPE_ROOT16; - firstCluster_ = 0; - fileSize_ = 32 * vol->rootDirEntryCount(); - } else if (vol->fatType() == 32) { - type_ = FAT_FILE_TYPE_ROOT32; - firstCluster_ = vol->rootDirStart(); - if (!vol->chainSize(firstCluster_, &fileSize_)) return false; - } else { - // volume is not initialized or FAT12 - return false; - } - vol_ = vol; - // read only - flags_ = O_READ; - - // set to start of file - curCluster_ = 0; - curPosition_ = 0; - - // root has no directory entry - dirBlock_ = 0; - dirIndex_ = 0; - return true; -} -//------------------------------------------------------------------------------ -/** %Print the name field of a directory entry in 8.3 format to Serial. - * - * \param[in] dir The directory structure containing the name. - * \param[in] width Blank fill name if length is less than \a width. - */ -void SdFile::printDirName(const dir_t& dir, uint8_t width) { - uint8_t w = 0; - for (uint8_t i = 0; i < 11; i++) { - if (dir.name[i] == ' ')continue; - if (i == 8) { - Serial.print('.'); - w++; - } - Serial.print(dir.name[i]); - w++; - } - if (DIR_IS_SUBDIR(&dir)) { - Serial.print('/'); - w++; - } - while (w < width) { - Serial.print(' '); - w++; - } -} -//------------------------------------------------------------------------------ -/** %Print a directory date field to Serial. - * - * Format is yyyy-mm-dd. - * - * \param[in] fatDate The date field from a directory entry. - */ -void SdFile::printFatDate(uint16_t fatDate) { - Serial.print(FAT_YEAR(fatDate)); - Serial.print('-'); - printTwoDigits(FAT_MONTH(fatDate)); - Serial.print('-'); - printTwoDigits(FAT_DAY(fatDate)); -} -//------------------------------------------------------------------------------ -/** %Print a directory time field to Serial. - * - * Format is hh:mm:ss. - * - * \param[in] fatTime The time field from a directory entry. - */ -void SdFile::printFatTime(uint16_t fatTime) { - printTwoDigits(FAT_HOUR(fatTime)); - Serial.print(':'); - printTwoDigits(FAT_MINUTE(fatTime)); - Serial.print(':'); - printTwoDigits(FAT_SECOND(fatTime)); -} -//------------------------------------------------------------------------------ -/** %Print a value as two digits to Serial. - * - * \param[in] v Value to be printed, 0 <= \a v <= 99 - */ -void SdFile::printTwoDigits(uint8_t v) { - char str[3]; - str[0] = '0' + v/10; - str[1] = '0' + v % 10; - str[2] = 0; - Serial.print(str); -} -//------------------------------------------------------------------------------ -/** - * Read data from a file starting at the current position. - * - * \param[out] buf Pointer to the location that will receive the data. - * - * \param[in] nbyte Maximum number of bytes to read. - * - * \return For success read() returns the number of bytes read. - * A value less than \a nbyte, including zero, will be returned - * if end of file is reached. - * If an error occurs, read() returns -1. Possible errors include - * read() called before a file has been opened, corrupt file system - * or an I/O error occurred. - */ -int16_t SdFile::read(void* buf, uint16_t nbyte) { - uint8_t* dst = reinterpret_cast(buf); - - // error if not open or write only - if (!isOpen() || !(flags_ & O_READ)) return -1; - - // max bytes left in file - if (nbyte > (fileSize_ - curPosition_)) nbyte = fileSize_ - curPosition_; - - // amount left to read - uint16_t toRead = nbyte; - while (toRead > 0) { - uint32_t block; // raw device block number - uint16_t offset = curPosition_ & 0X1FF; // offset in block - if (type_ == FAT_FILE_TYPE_ROOT16) { - block = vol_->rootDirStart() + (curPosition_ >> 9); - } else { - uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); - if (offset == 0 && blockOfCluster == 0) { - // start of new cluster - if (curPosition_ == 0) { - // use first cluster in file - curCluster_ = firstCluster_; - } else { - // get next cluster from FAT - if (!vol_->fatGet(curCluster_, &curCluster_)) return -1; - } - } - block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; - } - uint16_t n = toRead; - - // amount to be read from current block - if (n > (512 - offset)) n = 512 - offset; - - // no buffering needed if n == 512 or user requests no buffering - if ((unbufferedRead() || n == 512) && - block != SdVolume::cacheBlockNumber_) { - if (!vol_->readData(block, offset, n, dst)) return -1; - dst += n; - } else { - // read block to cache and copy data to caller - if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_READ)) return -1; - uint8_t* src = SdVolume::cacheBuffer_.data + offset; - uint8_t* end = src + n; - while (src != end) *dst++ = *src++; - } - curPosition_ += n; - toRead -= n; - } - return nbyte; -} -//------------------------------------------------------------------------------ -/** - * Read the next directory entry from a directory file. - * - * \param[out] dir The dir_t struct that will receive the data. - * - * \return For success readDir() returns the number of bytes read. - * A value of zero will be returned if end of file is reached. - * If an error occurs, readDir() returns -1. Possible errors include - * readDir() called before a directory has been opened, this is not - * a directory file or an I/O error occurred. - */ -int8_t SdFile::readDir(dir_t* dir) { - int8_t n; - // if not a directory file or miss-positioned return an error - if (!isDir() || (0X1F & curPosition_)) return -1; - - while ((n = read(dir, sizeof(dir_t))) == sizeof(dir_t)) { - // last entry if DIR_NAME_FREE - if (dir->name[0] == DIR_NAME_FREE) break; - // skip empty entries and entry for . and .. - if (dir->name[0] == DIR_NAME_DELETED || dir->name[0] == '.') continue; - // return if normal file or subdirectory - if (DIR_IS_FILE_OR_SUBDIR(dir)) return n; - } - // error, end of file, or past last entry - return n < 0 ? -1 : 0; -} -//------------------------------------------------------------------------------ -// Read next directory entry into the cache -// Assumes file is correctly positioned -dir_t* SdFile::readDirCache(void) { - // error if not directory - if (!isDir()) return NULL; - - // index of entry in cache - uint8_t i = (curPosition_ >> 5) & 0XF; - - // use read to locate and cache block - if (read() < 0) return NULL; - - // advance to next entry - curPosition_ += 31; - - // return pointer to entry - return (SdVolume::cacheBuffer_.dir + i); -} -//------------------------------------------------------------------------------ -/** - * Remove a file. - * - * The directory entry and all data for the file are deleted. - * - * \note This function should not be used to delete the 8.3 version of a - * file that has a long name. For example if a file has the long name - * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the file read-only, is a directory, - * or an I/O error occurred. - */ -uint8_t SdFile::remove(void) { - // free any clusters - will fail if read-only or directory - if (!truncate(0)) return false; - - // cache directory entry - dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!d) return false; - - // mark entry deleted - d->name[0] = DIR_NAME_DELETED; - - // set this SdFile closed - type_ = FAT_FILE_TYPE_CLOSED; - - // write entry to SD - return SdVolume::cacheFlush(); -} -//------------------------------------------------------------------------------ -/** - * Remove a file. - * - * The directory entry and all data for the file are deleted. - * - * \param[in] dirFile The directory that contains the file. - * \param[in] fileName The name of the file to be removed. - * - * \note This function should not be used to delete the 8.3 version of a - * file that has a long name. For example if a file has the long name - * "New Text Document.txt" you should not delete the 8.3 name "NEWTEX~1.TXT". - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the file is a directory, is read only, - * \a dirFile is not a directory, \a fileName is not found - * or an I/O error occurred. - */ -uint8_t SdFile::remove(SdFile* dirFile, const char* fileName) { - SdFile file; - if (!file.open(dirFile, fileName, O_WRITE)) return false; - return file.remove(); -} -//------------------------------------------------------------------------------ -/** Remove a directory file. - * - * The directory file will be removed only if it is empty and is not the - * root directory. rmDir() follows DOS and Windows and ignores the - * read-only attribute for the directory. - * - * \note This function should not be used to delete the 8.3 version of a - * directory that has a long name. For example if a directory has the - * long name "New folder" you should not delete the 8.3 name "NEWFOL~1". - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include the file is not a directory, is the root - * directory, is not empty, or an I/O error occurred. - */ -uint8_t SdFile::rmDir(void) { - // must be open subdirectory - if (!isSubDir()) return false; - - rewind(); - - // make sure directory is empty - while (curPosition_ < fileSize_) { - dir_t* p = readDirCache(); - if (p == NULL) return false; - // done if past last used entry - if (p->name[0] == DIR_NAME_FREE) break; - // skip empty slot or '.' or '..' - if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; - // error not empty - if (DIR_IS_FILE_OR_SUBDIR(p)) return false; - } - // convert empty directory to normal file for remove - type_ = FAT_FILE_TYPE_NORMAL; - flags_ |= O_WRITE; - return remove(); -} -//------------------------------------------------------------------------------ -/** Recursively delete a directory and all contained files. - * - * This is like the Unix/Linux 'rm -rf *' if called with the root directory - * hence the name. - * - * Warning - This will remove all contents of the directory including - * subdirectories. The directory will then be removed if it is not root. - * The read-only attribute for files will be ignored. - * - * \note This function should not be used to delete the 8.3 version of - * a directory that has a long name. See remove() and rmDir(). - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::rmRfStar(void) { - rewind(); - while (curPosition_ < fileSize_) { - SdFile f; - - // remember position - uint16_t index = curPosition_/32; - - dir_t* p = readDirCache(); - if (!p) return false; - - // done if past last entry - if (p->name[0] == DIR_NAME_FREE) break; - - // skip empty slot or '.' or '..' - if (p->name[0] == DIR_NAME_DELETED || p->name[0] == '.') continue; - - // skip if part of long file name or volume label in root - if (!DIR_IS_FILE_OR_SUBDIR(p)) continue; - - if (!f.open(this, index, O_READ)) return false; - if (f.isSubDir()) { - // recursively delete - if (!f.rmRfStar()) return false; - } else { - // ignore read-only - f.flags_ |= O_WRITE; - if (!f.remove()) return false; - } - // position to next entry if required - if (curPosition_ != (32*(index + 1))) { - if (!seekSet(32*(index + 1))) return false; - } - } - // don't try to delete root - if (isRoot()) return true; - return rmDir(); -} -//------------------------------------------------------------------------------ -/** - * Sets a file's position. - * - * \param[in] pos The new position in bytes from the beginning of the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::seekSet(uint32_t pos) { - // error if file not open or seek past end of file - if (!isOpen() || pos > fileSize_) return false; - - if (type_ == FAT_FILE_TYPE_ROOT16) { - curPosition_ = pos; - return true; - } - if (pos == 0) { - // set position to start of file - curCluster_ = 0; - curPosition_ = 0; - return true; - } - // calculate cluster index for cur and new position - uint32_t nCur = (curPosition_ - 1) >> (vol_->clusterSizeShift_ + 9); - uint32_t nNew = (pos - 1) >> (vol_->clusterSizeShift_ + 9); - - if (nNew < nCur || curPosition_ == 0) { - // must follow chain from first cluster - curCluster_ = firstCluster_; - } else { - // advance from curPosition - nNew -= nCur; - } - while (nNew--) { - if (!vol_->fatGet(curCluster_, &curCluster_)) return false; - } - curPosition_ = pos; - return true; -} -//------------------------------------------------------------------------------ -/** - * The sync() call causes all modified data and directory fields - * to be written to the storage device. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include a call to sync() before a file has been - * opened or an I/O error. - */ -uint8_t SdFile::sync(void) { - // only allow open files and directories - if (!isOpen()) return false; - - if (flags_ & F_FILE_DIR_DIRTY) { - dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!d) return false; - - // do not set filesize for dir files - if (!isDir()) d->fileSize = fileSize_; - - // update first cluster fields - d->firstClusterLow = firstCluster_ & 0XFFFF; - d->firstClusterHigh = firstCluster_ >> 16; - - // set modify time if user supplied a callback date/time function - if (dateTime_) { - dateTime_(&d->lastWriteDate, &d->lastWriteTime); - d->lastAccessDate = d->lastWriteDate; - } - // clear directory dirty - flags_ &= ~F_FILE_DIR_DIRTY; - } - return SdVolume::cacheFlush(); -} -//------------------------------------------------------------------------------ -/** - * Set a file's timestamps in its directory entry. - * - * \param[in] flags Values for \a flags are constructed by a bitwise-inclusive - * OR of flags from the following list - * - * T_ACCESS - Set the file's last access date. - * - * T_CREATE - Set the file's creation date and time. - * - * T_WRITE - Set the file's last write/modification date and time. - * - * \param[in] year Valid range 1980 - 2107 inclusive. - * - * \param[in] month Valid range 1 - 12 inclusive. - * - * \param[in] day Valid range 1 - 31 inclusive. - * - * \param[in] hour Valid range 0 - 23 inclusive. - * - * \param[in] minute Valid range 0 - 59 inclusive. - * - * \param[in] second Valid range 0 - 59 inclusive - * - * \note It is possible to set an invalid date since there is no check for - * the number of days in a month. - * - * \note - * Modify and access timestamps may be overwritten if a date time callback - * function has been set by dateTimeCallback(). - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -uint8_t SdFile::timestamp(uint8_t flags, uint16_t year, uint8_t month, - uint8_t day, uint8_t hour, uint8_t minute, uint8_t second) { - if (!isOpen() - || year < 1980 - || year > 2107 - || month < 1 - || month > 12 - || day < 1 - || day > 31 - || hour > 23 - || minute > 59 - || second > 59) { - return false; - } - dir_t* d = cacheDirEntry(SdVolume::CACHE_FOR_WRITE); - if (!d) return false; - - uint16_t dirDate = FAT_DATE(year, month, day); - uint16_t dirTime = FAT_TIME(hour, minute, second); - if (flags & T_ACCESS) { - d->lastAccessDate = dirDate; - } - if (flags & T_CREATE) { - d->creationDate = dirDate; - d->creationTime = dirTime; - // seems to be units of 1/100 second not 1/10 as Microsoft states - d->creationTimeTenths = second & 1 ? 100 : 0; - } - if (flags & T_WRITE) { - d->lastWriteDate = dirDate; - d->lastWriteTime = dirTime; - } - SdVolume::cacheSetDirty(); - return sync(); -} -//------------------------------------------------------------------------------ -/** - * Truncate a file to a specified length. The current file position - * will be maintained if it is less than or equal to \a length otherwise - * it will be set to end of file. - * - * \param[in] length The desired length for the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include file is read only, file is a directory, - * \a length is greater than the current file size or an I/O error occurs. - */ -uint8_t SdFile::truncate(uint32_t length) { -// error if not a normal file or read-only - if (!isFile() || !(flags_ & O_WRITE)) return false; - - // error if length is greater than current size - if (length > fileSize_) return false; - - // fileSize and length are zero - nothing to do - if (fileSize_ == 0) return true; - - // remember position for seek after truncation - uint32_t newPos = curPosition_ > length ? length : curPosition_; - - // position to last cluster in truncated file - if (!seekSet(length)) return false; - - if (length == 0) { - // free all clusters - if (!vol_->freeChain(firstCluster_)) return false; - firstCluster_ = 0; - } else { - uint32_t toFree; - if (!vol_->fatGet(curCluster_, &toFree)) return false; - - if (!vol_->isEOC(toFree)) { - // free extra clusters - if (!vol_->freeChain(toFree)) return false; - - // current cluster is end of chain - if (!vol_->fatPutEOC(curCluster_)) return false; - } - } - fileSize_ = length; - - // need to update directory entry - flags_ |= F_FILE_DIR_DIRTY; - - if (!sync()) return false; - - // set file to correct position - return seekSet(newPos); -} -//------------------------------------------------------------------------------ -/** - * Write data to an open file. +/** Write data to an open file. * * \note Data is moved to the cache but may not be written to the * storage device until sync() is called. @@ -1122,131 +44,38 @@ uint8_t SdFile::truncate(uint32_t length) { * */ int16_t SdFile::write(const void* buf, uint16_t nbyte) { - // convert void* to uint8_t* - must be before goto statements - const uint8_t* src = reinterpret_cast(buf); - - // number of bytes left to write - must be before goto statements - uint16_t nToWrite = nbyte; - - // error if not a normal file or is read-only - if (!isFile() || !(flags_ & O_WRITE)) goto writeErrorReturn; - - // seek to end of file if append flag - if ((flags_ & O_APPEND) && curPosition_ != fileSize_) { - if (!seekEnd()) goto writeErrorReturn; - } - - while (nToWrite > 0) { - uint8_t blockOfCluster = vol_->blockOfCluster(curPosition_); - uint16_t blockOffset = curPosition_ & 0X1FF; - if (blockOfCluster == 0 && blockOffset == 0) { - // start of new cluster - if (curCluster_ == 0) { - if (firstCluster_ == 0) { - // allocate first cluster of file - if (!addCluster()) goto writeErrorReturn; - } else { - curCluster_ = firstCluster_; - } - } else { - uint32_t next; - if (!vol_->fatGet(curCluster_, &next)) return false; - if (vol_->isEOC(next)) { - // add cluster if at end of chain - if (!addCluster()) goto writeErrorReturn; - } else { - curCluster_ = next; - } - } - } - // max space in block - uint16_t n = 512 - blockOffset; - - // lesser of space and amount to write - if (n > nToWrite) n = nToWrite; - - // block for data write - uint32_t block = vol_->clusterStartBlock(curCluster_) + blockOfCluster; - if (n == 512) { - // full block - don't need to use cache - // invalidate cache if block is in cache - if (SdVolume::cacheBlockNumber_ == block) { - SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; - } - if (!vol_->writeBlock(block, src)) goto writeErrorReturn; - src += 512; - } else { - if (blockOffset == 0 && curPosition_ >= fileSize_) { - // start of new block don't need to read into cache - if (!SdVolume::cacheFlush()) goto writeErrorReturn; - SdVolume::cacheBlockNumber_ = block; - SdVolume::cacheSetDirty(); - } else { - // rewrite part of block - if (!SdVolume::cacheRawBlock(block, SdVolume::CACHE_FOR_WRITE)) { - goto writeErrorReturn; - } - } - uint8_t* dst = SdVolume::cacheBuffer_.data + blockOffset; - uint8_t* end = dst + n; - while (dst != end) *dst++ = *src++; - } - nToWrite -= n; - curPosition_ += n; - } - if (curPosition_ > fileSize_) { - // update fileSize and insure sync will update dir entry - fileSize_ = curPosition_; - flags_ |= F_FILE_DIR_DIRTY; - } else if (dateTime_ && nbyte) { - // insure sync will update modified date and time - flags_ |= F_FILE_DIR_DIRTY; - } - - if (flags_ & O_SYNC) { - if (!sync()) goto writeErrorReturn; - } - return nbyte; - - writeErrorReturn: - // return for write error - writeError = true; - return -1; + return SdBaseFile::write(buf, nbyte); } //------------------------------------------------------------------------------ -/** - * Write a byte to a file. Required by the Arduino Print class. - * - * Use SdFile::writeError to check for errors. +/** Write a byte to a file. Required by the Arduino Print class. + * \param[in] b the byte to be written. + * Use writeError to check for errors. */ void SdFile::write(uint8_t b) { - write(&b, 1); + SdBaseFile::write(&b, 1); } //------------------------------------------------------------------------------ -/** - * Write a string to a file. Used by the Arduino Print class. - * - * Use SdFile::writeError to check for errors. +/** Write a string to a file. Used by the Arduino Print class. + * \param[in] str Pointer to the string. + * Use writeError to check for errors. */ void SdFile::write(const char* str) { - write(str, strlen(str)); + SdBaseFile::write(str, strlen(str)); } //------------------------------------------------------------------------------ -/** - * Write a PROGMEM string to a file. - * - * Use SdFile::writeError to check for errors. +/** Write a PROGMEM string to a file. + * \param[in] str Pointer to the PROGMEM string. + * Use writeError to check for errors. */ void SdFile::write_P(PGM_P str) { for (uint8_t c; (c = pgm_read_byte(str)); str++) write(c); } //------------------------------------------------------------------------------ -/** - * Write a PROGMEM string followed by CR/LF to a file. - * - * Use SdFile::writeError to check for errors. +/** Write a PROGMEM string followed by CR/LF to a file. + * \param[in] str Pointer to the PROGMEM string. + * Use writeError to check for errors. */ void SdFile::writeln_P(PGM_P str) { write_P(str); - println(); + write_P(PSTR("\r\n")); } diff --git a/Marlin/SdFile.h b/Marlin/SdFile.h new file mode 100644 index 000000000..d5f8ec089 --- /dev/null +++ b/Marlin/SdFile.h @@ -0,0 +1,42 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +/** + * \file + * \brief SdFile class + */ +#include "SdBaseFile.h" +#ifndef SdFile_h +#define SdFile_h +//------------------------------------------------------------------------------ +/** + * \class SdFile + * \brief SdBaseFile with Print. + */ +class SdFile : public SdBaseFile, public Print { + public: + SdFile() {} + SdFile(const char* name, uint8_t oflag); + void write(uint8_t b); + int16_t write(const void* buf, uint16_t nbyte); + void write(const char* str); + void write_P(PGM_P str); + void writeln_P(PGM_P str); +}; +#endif // SdFile_h diff --git a/Marlin/SdInfo.h b/Marlin/SdInfo.h index acde74d97..2a58eb7db 100644 --- a/Marlin/SdInfo.h +++ b/Marlin/SdInfo.h @@ -26,10 +26,10 @@ // Part 1 // Physical Layer // Simplified Specification -// Version 2.00 -// September 25, 2006 +// Version 3.01 +// May 18, 2010 // -// www.sdcard.org/developers/tech/sdcard/pls/Simplified_Physical_Layer_Spec.pdf +// http://www.sdcard.org/developers/tech/sdcard/pls/simplified_specs //------------------------------------------------------------------------------ // SD card commands /** GO_IDLE_STATE - init card in spi mode if CS low */ @@ -40,10 +40,14 @@ uint8_t const CMD8 = 0X08; uint8_t const CMD9 = 0X09; /** SEND_CID - read the card identification information (CID register) */ uint8_t const CMD10 = 0X0A; +/** STOP_TRANSMISSION - end multiple block read sequence */ +uint8_t const CMD12 = 0X0C; /** SEND_STATUS - read the card status register */ uint8_t const CMD13 = 0X0D; -/** READ_BLOCK - read a single data block from the card */ +/** READ_SINGLE_BLOCK - read a single data block from the card */ uint8_t const CMD17 = 0X11; +/** READ_MULTIPLE_BLOCK - read a multiple data blocks from the card */ +uint8_t const CMD18 = 0X12; /** WRITE_BLOCK - write a single data block to the card */ uint8_t const CMD24 = 0X18; /** WRITE_MULTIPLE_BLOCK - write blocks of data until a STOP_TRANSMISSION */ @@ -83,148 +87,187 @@ uint8_t const DATA_RES_MASK = 0X1F; /** write data accepted token */ uint8_t const DATA_RES_ACCEPTED = 0X05; //------------------------------------------------------------------------------ +/** Card IDentification (CID) register */ typedef struct CID { // byte 0 - uint8_t mid; // Manufacturer ID + /** Manufacturer ID */ + unsigned char mid; // byte 1-2 - char oid[2]; // OEM/Application ID + /** OEM/Application ID */ + char oid[2]; // byte 3-7 - char pnm[5]; // Product name + /** Product name */ + char pnm[5]; // byte 8 - unsigned prv_m : 4; // Product revision n.m - unsigned prv_n : 4; + /** Product revision least significant digit */ + unsigned char prv_m : 4; + /** Product revision most significant digit */ + unsigned char prv_n : 4; // byte 9-12 - uint32_t psn; // Product serial number + /** Product serial number */ + uint32_t psn; // byte 13 - unsigned mdt_year_high : 4; // Manufacturing date - unsigned reserved : 4; + /** Manufacturing date year low digit */ + unsigned char mdt_year_high : 4; + /** not used */ + unsigned char reserved : 4; // byte 14 - unsigned mdt_month : 4; - unsigned mdt_year_low :4; + /** Manufacturing date month */ + unsigned char mdt_month : 4; + /** Manufacturing date year low digit */ + unsigned char mdt_year_low :4; // byte 15 - unsigned always1 : 1; - unsigned crc : 7; + /** not used always 1 */ + unsigned char always1 : 1; + /** CRC7 checksum */ + unsigned char crc : 7; }cid_t; //------------------------------------------------------------------------------ -// CSD for version 1.00 cards +/** CSD for version 1.00 cards */ typedef struct CSDV1 { // byte 0 - unsigned reserved1 : 6; - unsigned csd_ver : 2; + unsigned char reserved1 : 6; + unsigned char csd_ver : 2; // byte 1 - uint8_t taac; + unsigned char taac; // byte 2 - uint8_t nsac; + unsigned char nsac; // byte 3 - uint8_t tran_speed; + unsigned char tran_speed; // byte 4 - uint8_t ccc_high; + unsigned char ccc_high; // byte 5 - unsigned read_bl_len : 4; - unsigned ccc_low : 4; + unsigned char read_bl_len : 4; + unsigned char ccc_low : 4; // byte 6 - unsigned c_size_high : 2; - unsigned reserved2 : 2; - unsigned dsr_imp : 1; - unsigned read_blk_misalign :1; - unsigned write_blk_misalign : 1; - unsigned read_bl_partial : 1; + unsigned char c_size_high : 2; + unsigned char reserved2 : 2; + unsigned char dsr_imp : 1; + unsigned char read_blk_misalign :1; + unsigned char write_blk_misalign : 1; + unsigned char read_bl_partial : 1; // byte 7 - uint8_t c_size_mid; + unsigned char c_size_mid; // byte 8 - unsigned vdd_r_curr_max : 3; - unsigned vdd_r_curr_min : 3; - unsigned c_size_low :2; + unsigned char vdd_r_curr_max : 3; + unsigned char vdd_r_curr_min : 3; + unsigned char c_size_low :2; // byte 9 - unsigned c_size_mult_high : 2; - unsigned vdd_w_cur_max : 3; - unsigned vdd_w_curr_min : 3; + unsigned char c_size_mult_high : 2; + unsigned char vdd_w_cur_max : 3; + unsigned char vdd_w_curr_min : 3; // byte 10 - unsigned sector_size_high : 6; - unsigned erase_blk_en : 1; - unsigned c_size_mult_low : 1; + unsigned char sector_size_high : 6; + unsigned char erase_blk_en : 1; + unsigned char c_size_mult_low : 1; // byte 11 - unsigned wp_grp_size : 7; - unsigned sector_size_low : 1; + unsigned char wp_grp_size : 7; + unsigned char sector_size_low : 1; // byte 12 - unsigned write_bl_len_high : 2; - unsigned r2w_factor : 3; - unsigned reserved3 : 2; - unsigned wp_grp_enable : 1; + unsigned char write_bl_len_high : 2; + unsigned char r2w_factor : 3; + unsigned char reserved3 : 2; + unsigned char wp_grp_enable : 1; // byte 13 - unsigned reserved4 : 5; - unsigned write_partial : 1; - unsigned write_bl_len_low : 2; + unsigned char reserved4 : 5; + unsigned char write_partial : 1; + unsigned char write_bl_len_low : 2; // byte 14 - unsigned reserved5: 2; - unsigned file_format : 2; - unsigned tmp_write_protect : 1; - unsigned perm_write_protect : 1; - unsigned copy : 1; - unsigned file_format_grp : 1; + unsigned char reserved5: 2; + unsigned char file_format : 2; + unsigned char tmp_write_protect : 1; + unsigned char perm_write_protect : 1; + unsigned char copy : 1; + /** Indicates the file format on the card */ + unsigned char file_format_grp : 1; // byte 15 - unsigned always1 : 1; - unsigned crc : 7; + unsigned char always1 : 1; + unsigned char crc : 7; }csd1_t; //------------------------------------------------------------------------------ -// CSD for version 2.00 cards +/** CSD for version 2.00 cards */ typedef struct CSDV2 { // byte 0 - unsigned reserved1 : 6; - unsigned csd_ver : 2; + unsigned char reserved1 : 6; + unsigned char csd_ver : 2; // byte 1 - uint8_t taac; + /** fixed to 0X0E */ + unsigned char taac; // byte 2 - uint8_t nsac; + /** fixed to 0 */ + unsigned char nsac; // byte 3 - uint8_t tran_speed; + unsigned char tran_speed; // byte 4 - uint8_t ccc_high; + unsigned char ccc_high; // byte 5 - unsigned read_bl_len : 4; - unsigned ccc_low : 4; + /** This field is fixed to 9h, which indicates READ_BL_LEN=512 Byte */ + unsigned char read_bl_len : 4; + unsigned char ccc_low : 4; // byte 6 - unsigned reserved2 : 4; - unsigned dsr_imp : 1; - unsigned read_blk_misalign :1; - unsigned write_blk_misalign : 1; - unsigned read_bl_partial : 1; + /** not used */ + unsigned char reserved2 : 4; + unsigned char dsr_imp : 1; + /** fixed to 0 */ + unsigned char read_blk_misalign :1; + /** fixed to 0 */ + unsigned char write_blk_misalign : 1; + /** fixed to 0 - no partial read */ + unsigned char read_bl_partial : 1; // byte 7 - unsigned reserved3 : 2; - unsigned c_size_high : 6; + /** not used */ + unsigned char reserved3 : 2; + /** high part of card size */ + unsigned char c_size_high : 6; // byte 8 - uint8_t c_size_mid; + /** middle part of card size */ + unsigned char c_size_mid; // byte 9 - uint8_t c_size_low; + /** low part of card size */ + unsigned char c_size_low; // byte 10 - unsigned sector_size_high : 6; - unsigned erase_blk_en : 1; - unsigned reserved4 : 1; + /** sector size is fixed at 64 KB */ + unsigned char sector_size_high : 6; + /** fixed to 1 - erase single is supported */ + unsigned char erase_blk_en : 1; + /** not used */ + unsigned char reserved4 : 1; // byte 11 - unsigned wp_grp_size : 7; - unsigned sector_size_low : 1; + unsigned char wp_grp_size : 7; + /** sector size is fixed at 64 KB */ + unsigned char sector_size_low : 1; // byte 12 - unsigned write_bl_len_high : 2; - unsigned r2w_factor : 3; - unsigned reserved5 : 2; - unsigned wp_grp_enable : 1; + /** write_bl_len fixed for 512 byte blocks */ + unsigned char write_bl_len_high : 2; + /** fixed value of 2 */ + unsigned char r2w_factor : 3; + /** not used */ + unsigned char reserved5 : 2; + /** fixed value of 0 - no write protect groups */ + unsigned char wp_grp_enable : 1; // byte 13 - unsigned reserved6 : 5; - unsigned write_partial : 1; - unsigned write_bl_len_low : 2; + unsigned char reserved6 : 5; + /** always zero - no partial block read*/ + unsigned char write_partial : 1; + /** write_bl_len fixed for 512 byte blocks */ + unsigned char write_bl_len_low : 2; // byte 14 - unsigned reserved7: 2; - unsigned file_format : 2; - unsigned tmp_write_protect : 1; - unsigned perm_write_protect : 1; - unsigned copy : 1; - unsigned file_format_grp : 1; + unsigned char reserved7: 2; + /** Do not use always 0 */ + unsigned char file_format : 2; + unsigned char tmp_write_protect : 1; + unsigned char perm_write_protect : 1; + unsigned char copy : 1; + /** Do not use always 0 */ + unsigned char file_format_grp : 1; // byte 15 - unsigned always1 : 1; - unsigned crc : 7; + /** not used always 1 */ + unsigned char always1 : 1; + /** checksum */ + unsigned char crc : 7; }csd2_t; //------------------------------------------------------------------------------ -// union of old and new style CSD register +/** union of old and new style CSD register */ union csd_t { csd1_t v1; csd2_t v2; diff --git a/Marlin/SdVolume.cpp b/Marlin/SdVolume.cpp index 2fbb8100b..a14bb627e 100644 --- a/Marlin/SdVolume.cpp +++ b/Marlin/SdVolume.cpp @@ -17,23 +17,28 @@ * along with the Arduino SdFat Library. If not, see * . */ -#include "SdFat.h" +#include "SdVolume.h" //------------------------------------------------------------------------------ +#if !USE_MULTIPLE_CARDS // raw block cache -// init cacheBlockNumber_to invalid SD block number -uint32_t SdVolume::cacheBlockNumber_ = 0XFFFFFFFF; -cache_t SdVolume::cacheBuffer_; // 512 byte cache for Sd2Card -Sd2Card* SdVolume::sdCard_; // pointer to SD card object -uint8_t SdVolume::cacheDirty_ = 0; // cacheFlush() will write block if true -uint32_t SdVolume::cacheMirrorBlock_ = 0; // mirror block for second FAT +uint32_t SdVolume::cacheBlockNumber_; // current block number +cache_t SdVolume::cacheBuffer_; // 512 byte cache for Sd2Card +Sd2Card* SdVolume::sdCard_; // pointer to SD card object +bool SdVolume::cacheDirty_; // cacheFlush() will write block if true +uint32_t SdVolume::cacheMirrorBlock_; // mirror block for second FAT +#endif // USE_MULTIPLE_CARDS //------------------------------------------------------------------------------ // find a contiguous group of clusters -uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { +bool SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { // start of group uint32_t bgnCluster; + // end of group + uint32_t endCluster; + // last cluster of FAT + uint32_t fatEnd = clusterCount_ + 1; // flag to save place to start next search - uint8_t setStart; + bool setStart; // set search start cluster if (*curCluster) { @@ -47,25 +52,22 @@ uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { bgnCluster = allocSearchStart_; // save next search start if one cluster - setStart = 1 == count; + setStart = count == 1; } // end of group - uint32_t endCluster = bgnCluster; - - // last cluster of FAT - uint32_t fatEnd = clusterCount_ + 1; + endCluster = bgnCluster; // search the FAT for free clusters for (uint32_t n = 0;; n++, endCluster++) { // can't find space checked all clusters - if (n >= clusterCount_) return false; + if (n >= clusterCount_) goto fail; // past end - start from beginning of FAT if (endCluster > fatEnd) { bgnCluster = endCluster = 2; } uint32_t f; - if (!fatGet(endCluster, &f)) return false; + if (!fatGet(endCluster, &f)) goto fail; if (f != 0) { // cluster in use try next cluster as bgnCluster @@ -76,16 +78,16 @@ uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { } } // mark end of chain - if (!fatPutEOC(endCluster)) return false; + if (!fatPutEOC(endCluster)) goto fail; // link clusters while (endCluster > bgnCluster) { - if (!fatPut(endCluster - 1, endCluster)) return false; + if (!fatPut(endCluster - 1, endCluster)) goto fail; endCluster--; } if (*curCluster != 0) { // connect chains - if (!fatPut(*curCluster, bgnCluster)) return false; + if (!fatPut(*curCluster, bgnCluster)) goto fail; } // return first cluster number to caller *curCluster = bgnCluster; @@ -94,66 +96,87 @@ uint8_t SdVolume::allocContiguous(uint32_t count, uint32_t* curCluster) { if (setStart) allocSearchStart_ = bgnCluster + 1; return true; + + fail: + return false; } //------------------------------------------------------------------------------ -uint8_t SdVolume::cacheFlush(void) { +bool SdVolume::cacheFlush() { if (cacheDirty_) { if (!sdCard_->writeBlock(cacheBlockNumber_, cacheBuffer_.data)) { - return false; + goto fail; } // mirror FAT tables if (cacheMirrorBlock_) { if (!sdCard_->writeBlock(cacheMirrorBlock_, cacheBuffer_.data)) { - return false; + goto fail; } cacheMirrorBlock_ = 0; } cacheDirty_ = 0; } return true; + + fail: + return false; } //------------------------------------------------------------------------------ -uint8_t SdVolume::cacheRawBlock(uint32_t blockNumber, uint8_t action) { +bool SdVolume::cacheRawBlock(uint32_t blockNumber, bool dirty) { if (cacheBlockNumber_ != blockNumber) { - if (!cacheFlush()) return false; - if (!sdCard_->readBlock(blockNumber, cacheBuffer_.data)) return false; + if (!cacheFlush()) goto fail; + if (!sdCard_->readBlock(blockNumber, cacheBuffer_.data)) goto fail; cacheBlockNumber_ = blockNumber; } - cacheDirty_ |= action; + if (dirty) cacheDirty_ = true; return true; -} -//------------------------------------------------------------------------------ -// cache a zero block for blockNumber -uint8_t SdVolume::cacheZeroBlock(uint32_t blockNumber) { - if (!cacheFlush()) return false; - // loop take less flash than memset(cacheBuffer_.data, 0, 512); - for (uint16_t i = 0; i < 512; i++) { - cacheBuffer_.data[i] = 0; - } - cacheBlockNumber_ = blockNumber; - cacheSetDirty(); - return true; + fail: + return false; } //------------------------------------------------------------------------------ // return the size in bytes of a cluster chain -uint8_t SdVolume::chainSize(uint32_t cluster, uint32_t* size) const { +bool SdVolume::chainSize(uint32_t cluster, uint32_t* size) { uint32_t s = 0; do { - if (!fatGet(cluster, &cluster)) return false; + if (!fatGet(cluster, &cluster)) goto fail; s += 512UL << clusterSizeShift_; } while (!isEOC(cluster)); *size = s; return true; + + fail: + return false; } //------------------------------------------------------------------------------ // Fetch a FAT entry -uint8_t SdVolume::fatGet(uint32_t cluster, uint32_t* value) const { - if (cluster > (clusterCount_ + 1)) return false; - uint32_t lba = fatStartBlock_; - lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; +bool SdVolume::fatGet(uint32_t cluster, uint32_t* value) { + uint32_t lba; + if (cluster > (clusterCount_ + 1)) goto fail; + if (FAT12_SUPPORT && fatType_ == 12) { + uint16_t index = cluster; + index += index >> 1; + lba = fatStartBlock_ + (index >> 9); + if (!cacheRawBlock(lba, CACHE_FOR_READ)) goto fail; + index &= 0X1FF; + uint16_t tmp = cacheBuffer_.data[index]; + index++; + if (index == 512) { + if (!cacheRawBlock(lba + 1, CACHE_FOR_READ)) goto fail; + index = 0; + } + tmp |= cacheBuffer_.data[index] << 8; + *value = cluster & 1 ? tmp >> 4 : tmp & 0XFFF; + return true; + } + if (fatType_ == 16) { + lba = fatStartBlock_ + (cluster >> 8); + } else if (fatType_ == 32) { + lba = fatStartBlock_ + (cluster >> 7); + } else { + goto fail; + } if (lba != cacheBlockNumber_) { - if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; + if (!cacheRawBlock(lba, CACHE_FOR_READ)) goto fail; } if (fatType_ == 16) { *value = cacheBuffer_.fat16[cluster & 0XFF]; @@ -161,56 +184,127 @@ uint8_t SdVolume::fatGet(uint32_t cluster, uint32_t* value) const { *value = cacheBuffer_.fat32[cluster & 0X7F] & FAT32MASK; } return true; + + fail: + return false; } //------------------------------------------------------------------------------ // Store a FAT entry -uint8_t SdVolume::fatPut(uint32_t cluster, uint32_t value) { +bool SdVolume::fatPut(uint32_t cluster, uint32_t value) { + uint32_t lba; // error if reserved cluster - if (cluster < 2) return false; + if (cluster < 2) goto fail; // error if not in FAT - if (cluster > (clusterCount_ + 1)) return false; + if (cluster > (clusterCount_ + 1)) goto fail; - // calculate block address for entry - uint32_t lba = fatStartBlock_; - lba += fatType_ == 16 ? cluster >> 8 : cluster >> 7; - - if (lba != cacheBlockNumber_) { - if (!cacheRawBlock(lba, CACHE_FOR_READ)) return false; + if (FAT12_SUPPORT && fatType_ == 12) { + uint16_t index = cluster; + index += index >> 1; + lba = fatStartBlock_ + (index >> 9); + if (!cacheRawBlock(lba, CACHE_FOR_WRITE)) goto fail; + // mirror second FAT + if (fatCount_ > 1) cacheMirrorBlock_ = lba + blocksPerFat_; + index &= 0X1FF; + uint8_t tmp = value; + if (cluster & 1) { + tmp = (cacheBuffer_.data[index] & 0XF) | tmp << 4; + } + cacheBuffer_.data[index] = tmp; + index++; + if (index == 512) { + lba++; + index = 0; + if (!cacheRawBlock(lba, CACHE_FOR_WRITE)) goto fail; + // mirror second FAT + if (fatCount_ > 1) cacheMirrorBlock_ = lba + blocksPerFat_; + } + tmp = value >> 4; + if (!(cluster & 1)) { + tmp = ((cacheBuffer_.data[index] & 0XF0)) | tmp >> 4; + } + cacheBuffer_.data[index] = tmp; + return true; } + if (fatType_ == 16) { + lba = fatStartBlock_ + (cluster >> 8); + } else if (fatType_ == 32) { + lba = fatStartBlock_ + (cluster >> 7); + } else { + goto fail; + } + if (!cacheRawBlock(lba, CACHE_FOR_WRITE)) goto fail; // store entry if (fatType_ == 16) { cacheBuffer_.fat16[cluster & 0XFF] = value; } else { cacheBuffer_.fat32[cluster & 0X7F] = value; } - cacheSetDirty(); - // mirror second FAT if (fatCount_ > 1) cacheMirrorBlock_ = lba + blocksPerFat_; return true; + + fail: + return false; } //------------------------------------------------------------------------------ // free a cluster chain -uint8_t SdVolume::freeChain(uint32_t cluster) { +bool SdVolume::freeChain(uint32_t cluster) { + uint32_t next; + // clear free cluster location allocSearchStart_ = 2; do { - uint32_t next; - if (!fatGet(cluster, &next)) return false; + if (!fatGet(cluster, &next)) goto fail; // free cluster - if (!fatPut(cluster, 0)) return false; + if (!fatPut(cluster, 0)) goto fail; cluster = next; } while (!isEOC(cluster)); return true; + + fail: + return false; } //------------------------------------------------------------------------------ -/** - * Initialize a FAT volume. +/** Volume free space in clusters. + * + * \return Count of free clusters for success or -1 if an error occurs. + */ +int32_t SdVolume::freeClusterCount() { + uint32_t free = 0; + uint16_t n; + uint32_t todo = clusterCount_ + 2; + + if (fatType_ == 16) { + n = 256; + } else if (fatType_ == 32) { + n = 128; + } else { + // put FAT12 here + return -1; + } + + for (uint32_t lba = fatStartBlock_; todo; todo -= n, lba++) { + if (!cacheRawBlock(lba, CACHE_FOR_READ)) return -1; + if (todo < n) n = todo; + if (fatType_ == 16) { + for (uint16_t i = 0; i < n; i++) { + if (cacheBuffer_.fat16[i] == 0) free++; + } + } else { + for (uint16_t i = 0; i < n; i++) { + if (cacheBuffer_.fat32[i] == 0) free++; + } + } + } + return free; +} +//------------------------------------------------------------------------------ +/** Initialize a FAT volume. * * \param[in] dev The SD card where the volume is located. * @@ -224,58 +318,66 @@ uint8_t SdVolume::freeChain(uint32_t cluster) { * failure include not finding a valid partition, not finding a valid * FAT file system in the specified partition or an I/O error. */ -uint8_t SdVolume::init(Sd2Card* dev, uint8_t part) { +bool SdVolume::init(Sd2Card* dev, uint8_t part) { + uint32_t totalBlocks; uint32_t volumeStartBlock = 0; + fat32_boot_t* fbs; + sdCard_ = dev; + fatType_ = 0; + allocSearchStart_ = 2; + cacheDirty_ = 0; // cacheFlush() will write block if true + cacheMirrorBlock_ = 0; + cacheBlockNumber_ = 0XFFFFFFFF; + // if part == 0 assume super floppy with FAT boot sector in block zero // if part > 0 assume mbr volume with partition table if (part) { - if (part > 4)return false; - if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; + if (part > 4)goto fail; + if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) goto fail; part_t* p = &cacheBuffer_.mbr.part[part-1]; if ((p->boot & 0X7F) !=0 || p->totalSectors < 100 || p->firstSector == 0) { // not a valid partition - return false; + goto fail; } volumeStartBlock = p->firstSector; } - if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) return false; - bpb_t* bpb = &cacheBuffer_.fbs.bpb; - if (bpb->bytesPerSector != 512 || - bpb->fatCount == 0 || - bpb->reservedSectorCount == 0 || - bpb->sectorsPerCluster == 0) { + if (!cacheRawBlock(volumeStartBlock, CACHE_FOR_READ)) goto fail; + fbs = &cacheBuffer_.fbs32; + if (fbs->bytesPerSector != 512 || + fbs->fatCount == 0 || + fbs->reservedSectorCount == 0 || + fbs->sectorsPerCluster == 0) { // not valid FAT volume - return false; + goto fail; } - fatCount_ = bpb->fatCount; - blocksPerCluster_ = bpb->sectorsPerCluster; - + fatCount_ = fbs->fatCount; + blocksPerCluster_ = fbs->sectorsPerCluster; // determine shift that is same as multiply by blocksPerCluster_ clusterSizeShift_ = 0; while (blocksPerCluster_ != (1 << clusterSizeShift_)) { // error if not power of 2 - if (clusterSizeShift_++ > 7) return false; + if (clusterSizeShift_++ > 7) goto fail; } - blocksPerFat_ = bpb->sectorsPerFat16 ? - bpb->sectorsPerFat16 : bpb->sectorsPerFat32; + blocksPerFat_ = fbs->sectorsPerFat16 ? + fbs->sectorsPerFat16 : fbs->sectorsPerFat32; - fatStartBlock_ = volumeStartBlock + bpb->reservedSectorCount; + fatStartBlock_ = volumeStartBlock + fbs->reservedSectorCount; // count for FAT16 zero for FAT32 - rootDirEntryCount_ = bpb->rootDirEntryCount; + rootDirEntryCount_ = fbs->rootDirEntryCount; // directory start for FAT16 dataStart for FAT32 - rootDirStart_ = fatStartBlock_ + bpb->fatCount * blocksPerFat_; + rootDirStart_ = fatStartBlock_ + fbs->fatCount * blocksPerFat_; // data start for FAT16 and FAT32 - dataStartBlock_ = rootDirStart_ + ((32 * bpb->rootDirEntryCount + 511)/512); + dataStartBlock_ = rootDirStart_ + ((32 * fbs->rootDirEntryCount + 511)/512); // total blocks for FAT16 or FAT32 - uint32_t totalBlocks = bpb->totalSectors16 ? - bpb->totalSectors16 : bpb->totalSectors32; + totalBlocks = fbs->totalSectors16 ? + fbs->totalSectors16 : fbs->totalSectors32; // total data blocks clusterCount_ = totalBlocks - (dataStartBlock_ - volumeStartBlock); @@ -285,11 +387,15 @@ uint8_t SdVolume::init(Sd2Card* dev, uint8_t part) { // FAT type is determined by cluster count if (clusterCount_ < 4085) { fatType_ = 12; + if (!FAT12_SUPPORT) goto fail; } else if (clusterCount_ < 65525) { fatType_ = 16; } else { - rootDirStart_ = bpb->fat32RootCluster; + rootDirStart_ = fbs->fat32RootCluster; fatType_ = 32; } return true; + + fail: + return false; } diff --git a/Marlin/SdVolume.h b/Marlin/SdVolume.h new file mode 100644 index 000000000..0f2e55ab2 --- /dev/null +++ b/Marlin/SdVolume.h @@ -0,0 +1,211 @@ +/* Arduino SdFat Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdVolume_h +#define SdVolume_h +/** + * \file + * \brief SdVolume class + */ +#include "SdFatConfig.h" +#include "Sd2Card.h" +#include "SdFatStructs.h" + +//============================================================================== +// SdVolume class +/** + * \brief Cache for an SD data block + */ +union cache_t { + /** Used to access cached file data blocks. */ + uint8_t data[512]; + /** Used to access cached FAT16 entries. */ + uint16_t fat16[256]; + /** Used to access cached FAT32 entries. */ + uint32_t fat32[128]; + /** Used to access cached directory entries. */ + dir_t dir[16]; + /** Used to access a cached Master Boot Record. */ + mbr_t mbr; + /** Used to access to a cached FAT boot sector. */ + fat_boot_t fbs; + /** Used to access to a cached FAT32 boot sector. */ + fat32_boot_t fbs32; + /** Used to access to a cached FAT32 FSINFO sector. */ + fat32_fsinfo_t fsinfo; +}; +//------------------------------------------------------------------------------ +/** + * \class SdVolume + * \brief Access FAT16 and FAT32 volumes on SD and SDHC cards. + */ +class SdVolume { + public: + /** Create an instance of SdVolume */ + SdVolume() : fatType_(0) {} + /** Clear the cache and returns a pointer to the cache. Used by the WaveRP + * recorder to do raw write to the SD card. Not for normal apps. + * \return A pointer to the cache buffer or zero if an error occurs. + */ + cache_t* cacheClear() { + if (!cacheFlush()) return 0; + cacheBlockNumber_ = 0XFFFFFFFF; + return &cacheBuffer_; + } + /** Initialize a FAT volume. Try partition one first then try super + * floppy format. + * + * \param[in] dev The Sd2Card where the volume is located. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. Reasons for + * failure include not finding a valid partition, not finding a valid + * FAT file system or an I/O error. + */ + bool init(Sd2Card* dev) { return init(dev, 1) ? true : init(dev, 0);} + bool init(Sd2Card* dev, uint8_t part); + + // inline functions that return volume info + /** \return The volume's cluster size in blocks. */ + uint8_t blocksPerCluster() const {return blocksPerCluster_;} + /** \return The number of blocks in one FAT. */ + uint32_t blocksPerFat() const {return blocksPerFat_;} + /** \return The total number of clusters in the volume. */ + uint32_t clusterCount() const {return clusterCount_;} + /** \return The shift count required to multiply by blocksPerCluster. */ + uint8_t clusterSizeShift() const {return clusterSizeShift_;} + /** \return The logical block number for the start of file data. */ + uint32_t dataStartBlock() const {return dataStartBlock_;} + /** \return The number of FAT structures on the volume. */ + uint8_t fatCount() const {return fatCount_;} + /** \return The logical block number for the start of the first FAT. */ + uint32_t fatStartBlock() const {return fatStartBlock_;} + /** \return The FAT type of the volume. Values are 12, 16 or 32. */ + uint8_t fatType() const {return fatType_;} + int32_t freeClusterCount(); + /** \return The number of entries in the root directory for FAT16 volumes. */ + uint32_t rootDirEntryCount() const {return rootDirEntryCount_;} + /** \return The logical block number for the start of the root directory + on FAT16 volumes or the first cluster number on FAT32 volumes. */ + uint32_t rootDirStart() const {return rootDirStart_;} + /** Sd2Card object for this volume + * \return pointer to Sd2Card object. + */ + Sd2Card* sdCard() {return sdCard_;} + /** Debug access to FAT table + * + * \param[in] n cluster number. + * \param[out] v value of entry + * \return true for success or false for failure + */ + bool dbgFat(uint32_t n, uint32_t* v) {return fatGet(n, v);} +//------------------------------------------------------------------------------ + private: + // Allow SdBaseFile access to SdVolume private data. + friend class SdBaseFile; + + // value for dirty argument in cacheRawBlock to indicate read from cache + static bool const CACHE_FOR_READ = false; + // value for dirty argument in cacheRawBlock to indicate write to cache + static bool const CACHE_FOR_WRITE = true; + +#if USE_MULTIPLE_CARDS + cache_t cacheBuffer_; // 512 byte cache for device blocks + uint32_t cacheBlockNumber_; // Logical number of block in the cache + Sd2Card* sdCard_; // Sd2Card object for cache + bool cacheDirty_; // cacheFlush() will write block if true + uint32_t cacheMirrorBlock_; // block number for mirror FAT +#else // USE_MULTIPLE_CARDS + static cache_t cacheBuffer_; // 512 byte cache for device blocks + static uint32_t cacheBlockNumber_; // Logical number of block in the cache + static Sd2Card* sdCard_; // Sd2Card object for cache + static bool cacheDirty_; // cacheFlush() will write block if true + static uint32_t cacheMirrorBlock_; // block number for mirror FAT +#endif // USE_MULTIPLE_CARDS + uint32_t allocSearchStart_; // start cluster for alloc search + uint8_t blocksPerCluster_; // cluster size in blocks + uint32_t blocksPerFat_; // FAT size in blocks + uint32_t clusterCount_; // clusters in one FAT + uint8_t clusterSizeShift_; // shift to convert cluster count to block count + uint32_t dataStartBlock_; // first data block number + uint8_t fatCount_; // number of FATs on volume + uint32_t fatStartBlock_; // start block for first FAT + uint8_t fatType_; // volume type (12, 16, OR 32) + uint16_t rootDirEntryCount_; // number of entries in FAT16 root dir + uint32_t rootDirStart_; // root start block for FAT16, cluster for FAT32 + //---------------------------------------------------------------------------- + bool allocContiguous(uint32_t count, uint32_t* curCluster); + uint8_t blockOfCluster(uint32_t position) const { + return (position >> 9) & (blocksPerCluster_ - 1);} + uint32_t clusterStartBlock(uint32_t cluster) const { + return dataStartBlock_ + ((cluster - 2) << clusterSizeShift_);} + uint32_t blockNumber(uint32_t cluster, uint32_t position) const { + return clusterStartBlock(cluster) + blockOfCluster(position);} + cache_t *cache() {return &cacheBuffer_;} + uint32_t cacheBlockNumber() {return cacheBlockNumber_;} +#if USE_MULTIPLE_CARDS + bool cacheFlush(); + bool cacheRawBlock(uint32_t blockNumber, bool dirty); +#else // USE_MULTIPLE_CARDS + static bool cacheFlush(); + static bool cacheRawBlock(uint32_t blockNumber, bool dirty); +#endif // USE_MULTIPLE_CARDS + // used by SdBaseFile write to assign cache to SD location + void cacheSetBlockNumber(uint32_t blockNumber, bool dirty) { + cacheDirty_ = dirty; + cacheBlockNumber_ = blockNumber; + } + void cacheSetDirty() {cacheDirty_ |= CACHE_FOR_WRITE;} + bool chainSize(uint32_t beginCluster, uint32_t* size); + bool fatGet(uint32_t cluster, uint32_t* value); + bool fatPut(uint32_t cluster, uint32_t value); + bool fatPutEOC(uint32_t cluster) { + return fatPut(cluster, 0x0FFFFFFF); + } + bool freeChain(uint32_t cluster); + bool isEOC(uint32_t cluster) const { + if (FAT12_SUPPORT && fatType_ == 12) return cluster >= FAT12EOC_MIN; + if (fatType_ == 16) return cluster >= FAT16EOC_MIN; + return cluster >= FAT32EOC_MIN; + } + bool readBlock(uint32_t block, uint8_t* dst) { + return sdCard_->readBlock(block, dst);} + bool writeBlock(uint32_t block, const uint8_t* dst) { + return sdCard_->writeBlock(block, dst); + } +//------------------------------------------------------------------------------ + // Deprecated functions - suppress cpplint warnings with NOLINT comment +#if ALLOW_DEPRECATED_FUNCTIONS && !defined(DOXYGEN) + public: + /** \deprecated Use: bool SdVolume::init(Sd2Card* dev); + * \param[in] dev The SD card where the volume is located. + * \return true for success or false for failure. + */ + bool init(Sd2Card& dev) {return init(&dev);} // NOLINT + /** \deprecated Use: bool SdVolume::init(Sd2Card* dev, uint8_t vol); + * \param[in] dev The SD card where the volume is located. + * \param[in] part The partition to be used. + * \return true for success or false for failure. + */ + bool init(Sd2Card& dev, uint8_t part) { // NOLINT + return init(&dev, part); + } +#endif // ALLOW_DEPRECATED_FUNCTIONS +}; +#endif // SdVolume diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index d75f93a52..04076bfda 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -3,6 +3,7 @@ #ifdef SDSUPPORT + #include "SdFat.h" class CardReader diff --git a/merging still needs.txt b/merging still needs.txt deleted file mode 100644 index 18e91dcad..000000000 --- a/merging still needs.txt +++ /dev/null @@ -1,58 +0,0 @@ -files to compare manually: -planner.cpp -stepper.cpp -temperature.cpp - ---- -things that changed: -* planner.cpp -estimate_acc_distance now works with floats. -in calculate_trapezoid:for_block - long acceleration_rate=(long)((float)acceleration*8.388608) is gone - so is block_>acceleration_rate -void planner_reverse_pass: - some stuff I don't understand right now changed -in planner_forward_pass: - done: BLOCK_BUFFER_SIZE is now necessarily power of 2 (aka 8 16, 32). Inportant to document this somewhere. -no more inline in void plan_discard_current_block() -no more inline in plan_get_current_block() -in plan_buffer_line(...) - the long target[4]; and calculations of thoose should go after the while(block_buffer_tail==..). if the axis_steps_per_unit are changed from the gcode (M92) the calculation for the currently planned buffer move will be corrupt, because Target is calculated with one value, and the stuff afterwards with another. At least this solved the problem I had with the M92 E* changes in the code. Very sure about this, I took me 20min to find this as the solution for the bug I was hunting. -around if(feed_rate!true+return? -done #define K1 0.95 maybe in the configuration.h? -semi-done: PID-C checking needed. Untested but added. ----- - -still needed to finish the merge, before testin! - - manage_heater - ISR - movement planner - -TODO: - -remove traveling at maxpseed -remove Simplelcd - -remove DEBUG_STEPS? - -block_t -pid_dt ->0.1 whats the changes to the PID, checking needed - - ----- -second merge saturday morning: -done: PID_dt->0.1 \ No newline at end of file From 5df5727e939de26c828041ea7083a07c72f475da Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Fri, 18 Nov 2011 22:20:53 +0100 Subject: [PATCH 063/430] removed some debugging comments --- Marlin/Marlin.pde | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index db5136139..18f382c8c 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -392,15 +392,8 @@ inline void get_command() while( !card.eof() && buflen < BUFSIZE) { int16_t n=card.get(); serial_char = (char)n; -// Serial.print((char)serial_char); -// Serial.print(" "); -// Serial.println((int)serial_count); if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1)||n==-1) { -// if(serial_char == '\n' || serial_char == '\r' ) -// Serial.println("newline or :"); -// if(serial_count >= (MAX_CMD_SIZE - 1)) -// Serial.println("too long line"); if(card.eof()){ card.sdprinting = false; SERIAL_PROTOCOLLNPGM("Done printing file"); @@ -420,7 +413,6 @@ inline void get_command() comment_mode = false; //for new command if(!serial_count) { -// Serial.println("empty line"); return; //if empty line } cmdbuffer[bufindw][serial_count] = 0; //terminate string @@ -428,8 +420,7 @@ inline void get_command() fromsd[bufindw] = true; buflen += 1; bufindw = (bufindw + 1)%BUFSIZE; - } - + } serial_count = 0; //clear buffer } else From edb5ea7efa555b59f17655e20e93d9e93499d5d8 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Fri, 18 Nov 2011 22:22:07 +0100 Subject: [PATCH 064/430] the normal config again.. --- Marlin/Configuration.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f1f0c651c..1e12d4e22 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,8 +4,8 @@ // This determines the communication speed of the printer -//#define BAUDRATE 250000 -#define BAUDRATE 115200 +#define BAUDRATE 250000 +//#define BAUDRATE 115200 //#define BAUDRATE 230400 @@ -277,7 +277,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define ULTIPANEL #ifdef ULTIPANEL - #define NEWPANEL //enable this if you have a click-encoder panel +// #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT #define ULTRA_LCD #define LCD_WIDTH 20 From ff69e0a772c71226be7d6000c5096c0a850e3a62 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 19 Nov 2011 12:19:53 +0100 Subject: [PATCH 065/430] Changed max/min temp init. Removed second uart from sabguino core --- .../cores/Copy of arduino/HardwareSerial.cpp | 303 ----------- .../cores/Copy of arduino/HardwareSerial.h | 76 --- .../Sanguino/cores/Copy of arduino/Print.cpp | 220 -------- Marlin/Sanguino/cores/Copy of arduino/Print.h | 66 --- .../Sanguino/cores/Copy of arduino/Tone.cpp | 515 ------------------ .../cores/Copy of arduino/WCharacter.h | 168 ------ .../cores/Copy of arduino/WConstants.h | 1 - .../cores/Copy of arduino/WInterrupts.c | 87 --- .../Sanguino/cores/Copy of arduino/WMath.cpp | 60 -- .../Sanguino/cores/Copy of arduino/WProgram.h | 63 --- .../cores/Copy of arduino/WString.cpp | 443 --------------- .../Sanguino/cores/Copy of arduino/WString.h | 112 ---- .../Sanguino/cores/Copy of arduino/binary.h | 515 ------------------ .../Sanguino/cores/Copy of arduino/main.cpp | 14 - .../cores/Copy of arduino/pins_arduino.c | 200 ------- .../cores/Copy of arduino/pins_arduino.h | 65 --- .../Sanguino/cores/Copy of arduino/wiring.c | 289 ---------- .../Sanguino/cores/Copy of arduino/wiring.h | 135 ----- .../cores/Copy of arduino/wiring_analog.c | 116 ---- .../cores/Copy of arduino/wiring_digital.c | 95 ---- .../cores/Copy of arduino/wiring_private.h | 60 -- .../cores/Copy of arduino/wiring_pulse.c | 69 --- .../cores/Copy of arduino/wiring_shift.c | 55 -- .../Sanguino/cores/arduino/HardwareSerial.cpp | 142 +---- Marlin/temperature.cpp | 61 ++- 25 files changed, 68 insertions(+), 3862 deletions(-) delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/Print.cpp delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/Print.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/Tone.cpp delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WCharacter.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WConstants.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WMath.cpp delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WProgram.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WString.cpp delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/WString.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/binary.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/main.cpp delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring.c delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_private.h delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c delete mode 100644 Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c diff --git a/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp b/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp deleted file mode 100644 index 4397efb7e..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.cpp +++ /dev/null @@ -1,303 +0,0 @@ -/* - HardwareSerial.cpp - Hardware serial library for Wiring - Copyright (c) 2006 Nicholas Zambetti. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - Modified 23 November 2006 by David A. Mellis - Modified 28 September 2010 by Mark Sproul -*/ - -#include -#include -#include -#include -#include "wiring.h" -#include "wiring_private.h" - -// this next line disables the entire HardwareSerial.cpp, -// this is so I can support Attiny series and any other chip without a uart -#if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) - -#include "HardwareSerial.h" - -// Define constants and variables for buffering incoming serial data. We're -// using a ring buffer (I think), in which rx_buffer_head is the index of the -// location to which to write the next incoming character and rx_buffer_tail -// is the index of the location from which to read. -#if (RAMEND < 1000) - #define RX_BUFFER_SIZE 32 -#else - #define RX_BUFFER_SIZE 128 -#endif - -struct ring_buffer -{ - unsigned char buffer[RX_BUFFER_SIZE]; - int head; - int tail; -}; - -#if defined(UBRRH) || defined(UBRR0H) - ring_buffer rx_buffer = { { 0 }, 0, 0 }; -#endif -#if defined(UBRR1H) - ring_buffer rx_buffer1 = { { 0 }, 0, 0 }; -#endif -#if defined(UBRR2H) - ring_buffer rx_buffer2 = { { 0 }, 0, 0 }; -#endif -#if defined(UBRR3H) - ring_buffer rx_buffer3 = { { 0 }, 0, 0 }; -#endif - -inline void store_char(unsigned char c, ring_buffer *rx_buffer) -{ - int i = (unsigned int)(rx_buffer->head + 1) % RX_BUFFER_SIZE; - - // if we should be storing the received character into the location - // just before the tail (meaning that the head would advance to the - // current location of the tail), we're about to overflow the buffer - // and so we don't write the character or advance the head. - if (i != rx_buffer->tail) { - rx_buffer->buffer[rx_buffer->head] = c; - rx_buffer->head = i; - } -} - -#if defined(USART_RX_vect) - SIGNAL(USART_RX_vect) - { - #if defined(UDR0) - unsigned char c = UDR0; - #elif defined(UDR) - unsigned char c = UDR; // atmega8535 - #else - #error UDR not defined - #endif - store_char(c, &rx_buffer); - } -#elif defined(SIG_USART0_RECV) && defined(UDR0) - SIGNAL(SIG_USART0_RECV) - { - unsigned char c = UDR0; - store_char(c, &rx_buffer); - } -#elif defined(SIG_UART0_RECV) && defined(UDR0) - SIGNAL(SIG_UART0_RECV) - { - unsigned char c = UDR0; - store_char(c, &rx_buffer); - } -//#elif defined(SIG_USART_RECV) -#elif defined(USART0_RX_vect) - // fixed by Mark Sproul this is on the 644/644p - //SIGNAL(SIG_USART_RECV) - SIGNAL(USART0_RX_vect) - { - #if defined(UDR0) - unsigned char c = UDR0; - #elif defined(UDR) - unsigned char c = UDR; // atmega8, atmega32 - #else - #error UDR not defined - #endif - store_char(c, &rx_buffer); - } -#elif defined(SIG_UART_RECV) - // this is for atmega8 - SIGNAL(SIG_UART_RECV) - { - #if defined(UDR0) - unsigned char c = UDR0; // atmega645 - #elif defined(UDR) - unsigned char c = UDR; // atmega8 - #endif - store_char(c, &rx_buffer); - } -#elif defined(USBCON) - #warning No interrupt handler for usart 0 - #warning Serial(0) is on USB interface -#else - #error No interrupt handler for usart 0 -#endif - -//#if defined(SIG_USART1_RECV) -#if defined(USART1_RX_vect) - //SIGNAL(SIG_USART1_RECV) - SIGNAL(USART1_RX_vect) - { - unsigned char c = UDR1; - store_char(c, &rx_buffer1); - } -#elif defined(SIG_USART1_RECV) - #error SIG_USART1_RECV -#endif - -#if defined(USART2_RX_vect) && defined(UDR2) - SIGNAL(USART2_RX_vect) - { - unsigned char c = UDR2; - store_char(c, &rx_buffer2); - } -#elif defined(SIG_USART2_RECV) - #error SIG_USART2_RECV -#endif - -#if defined(USART3_RX_vect) && defined(UDR3) - SIGNAL(USART3_RX_vect) - { - unsigned char c = UDR3; - store_char(c, &rx_buffer3); - } -#elif defined(SIG_USART3_RECV) - #error SIG_USART3_RECV -#endif - - - -// Constructors //////////////////////////////////////////////////////////////// - -HardwareSerial::HardwareSerial(ring_buffer *rx_buffer, - volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, - volatile uint8_t *ucsra, volatile uint8_t *ucsrb, - volatile uint8_t *udr, - uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) -{ - _rx_buffer = rx_buffer; - _ubrrh = ubrrh; - _ubrrl = ubrrl; - _ucsra = ucsra; - _ucsrb = ucsrb; - _udr = udr; - _rxen = rxen; - _txen = txen; - _rxcie = rxcie; - _udre = udre; - _u2x = u2x; -} - -// Public Methods ////////////////////////////////////////////////////////////// - -void HardwareSerial::begin(long baud) -{ - uint16_t baud_setting; - bool use_u2x = true; - -#if F_CPU == 16000000UL - // hardcoded exception for compatibility with the bootloader shipped - // with the Duemilanove and previous boards and the firmware on the 8U2 - // on the Uno and Mega 2560. - if (baud == 57600) { - use_u2x = false; - } -#endif - - if (use_u2x) { - *_ucsra = 1 << _u2x; - baud_setting = (F_CPU / 4 / baud - 1) / 2; - } else { - *_ucsra = 0; - baud_setting = (F_CPU / 8 / baud - 1) / 2; - } - - // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) - *_ubrrh = baud_setting >> 8; - *_ubrrl = baud_setting; - - sbi(*_ucsrb, _rxen); - sbi(*_ucsrb, _txen); - sbi(*_ucsrb, _rxcie); -} - -void HardwareSerial::end() -{ - cbi(*_ucsrb, _rxen); - cbi(*_ucsrb, _txen); - cbi(*_ucsrb, _rxcie); -} - -int HardwareSerial::available(void) -{ - return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; -} - -int HardwareSerial::peek(void) -{ - if (_rx_buffer->head == _rx_buffer->tail) { - return -1; - } else { - return _rx_buffer->buffer[_rx_buffer->tail]; - } -} - -int HardwareSerial::read(void) -{ - // if the head isn't ahead of the tail, we don't have any characters - if (_rx_buffer->head == _rx_buffer->tail) { - return -1; - } else { - unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; - _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % RX_BUFFER_SIZE; - return c; - } -} - -void HardwareSerial::flush() -{ - // don't reverse this or there may be problems if the RX interrupt - // occurs after reading the value of rx_buffer_head but before writing - // the value to rx_buffer_tail; the previous value of rx_buffer_head - // may be written to rx_buffer_tail, making it appear as if the buffer - // don't reverse this or there may be problems if the RX interrupt - // occurs after reading the value of rx_buffer_head but before writing - // the value to rx_buffer_tail; the previous value of rx_buffer_head - // may be written to rx_buffer_tail, making it appear as if the buffer - // were full, not empty. - _rx_buffer->head = _rx_buffer->tail; -} - -void HardwareSerial::write(uint8_t c) -{ - while (!((*_ucsra) & (1 << _udre))) - ; - - *_udr = c; -} - -// Preinstantiate Objects ////////////////////////////////////////////////////// - -#if defined(UBRRH) && defined(UBRRL) - HardwareSerial Serial(&rx_buffer, &UBRRH, &UBRRL, &UCSRA, &UCSRB, &UDR, RXEN, TXEN, RXCIE, UDRE, U2X); -#elif defined(UBRR0H) && defined(UBRR0L) - HardwareSerial Serial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); -#elif defined(USBCON) - #warning no serial port defined (port 0) -#else - #error no serial port defined (port 0) -#endif - -#if defined(UBRR1H) - HardwareSerial Serial1(&rx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UDR1, RXEN1, TXEN1, RXCIE1, UDRE1, U2X1); -#endif -#if defined(UBRR2H) - HardwareSerial Serial2(&rx_buffer2, &UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UDR2, RXEN2, TXEN2, RXCIE2, UDRE2, U2X2); -#endif -#if defined(UBRR3H) - HardwareSerial Serial3(&rx_buffer3, &UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UDR3, RXEN3, TXEN3, RXCIE3, UDRE3, U2X3); -#endif - -#endif // whole file - diff --git a/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h b/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h deleted file mode 100644 index 3efa775f8..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/HardwareSerial.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - HardwareSerial.h - Hardware serial library for Wiring - Copyright (c) 2006 Nicholas Zambetti. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - Modified 28 September 2010 by Mark Sproul -*/ - -#ifndef HardwareSerial_h -#define HardwareSerial_h - -#include - -#include "Stream.h" - -struct ring_buffer; - -class HardwareSerial : public Stream -{ - private: - ring_buffer *_rx_buffer; - volatile uint8_t *_ubrrh; - volatile uint8_t *_ubrrl; - volatile uint8_t *_ucsra; - volatile uint8_t *_ucsrb; - volatile uint8_t *_udr; - uint8_t _rxen; - uint8_t _txen; - uint8_t _rxcie; - uint8_t _udre; - uint8_t _u2x; - public: - HardwareSerial(ring_buffer *rx_buffer, - volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, - volatile uint8_t *ucsra, volatile uint8_t *ucsrb, - volatile uint8_t *udr, - uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); - void begin(long); - void end(); - virtual int available(void); - virtual int peek(void); - virtual int read(void); - virtual void flush(void); - virtual void write(uint8_t); - using Print::write; // pull in write(str) and write(buf, size) from Print -}; - -#if defined(UBRRH) || defined(UBRR0H) - extern HardwareSerial Serial; -#elif defined(USBCON) - #include "usb_api.h" -#endif -#if defined(UBRR1H) - extern HardwareSerial Serial1; -#endif -#if defined(UBRR2H) - extern HardwareSerial Serial2; -#endif -#if defined(UBRR3H) - extern HardwareSerial Serial3; -#endif - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/Print.cpp b/Marlin/Sanguino/cores/Copy of arduino/Print.cpp deleted file mode 100644 index 4ee556dd8..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/Print.cpp +++ /dev/null @@ -1,220 +0,0 @@ -/* - Print.cpp - Base class that provides print() and println() - Copyright (c) 2008 David A. Mellis. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - - Modified 23 November 2006 by David A. Mellis - */ - -#include -#include -#include -#include -#include "wiring.h" - -#include "Print.h" - -// Public Methods ////////////////////////////////////////////////////////////// - -/* default implementation: may be overridden */ -void Print::write(const char *str) -{ - while (*str) - write(*str++); -} - -/* default implementation: may be overridden */ -void Print::write(const uint8_t *buffer, size_t size) -{ - while (size--) - write(*buffer++); -} - -void Print::print(const String &s) -{ - for (int i = 0; i < s.length(); i++) { - write(s[i]); - } -} - -void Print::print(const char str[]) -{ - write(str); -} - -void Print::print(char c, int base) -{ - print((long) c, base); -} - -void Print::print(unsigned char b, int base) -{ - print((unsigned long) b, base); -} - -void Print::print(int n, int base) -{ - print((long) n, base); -} - -void Print::print(unsigned int n, int base) -{ - print((unsigned long) n, base); -} - -void Print::print(long n, int base) -{ - if (base == 0) { - write(n); - } else if (base == 10) { - if (n < 0) { - print('-'); - n = -n; - } - printNumber(n, 10); - } else { - printNumber(n, base); - } -} - -void Print::print(unsigned long n, int base) -{ - if (base == 0) write(n); - else printNumber(n, base); -} - -void Print::print(double n, int digits) -{ - printFloat(n, digits); -} - -void Print::println(void) -{ - print('\r'); - print('\n'); -} - -void Print::println(const String &s) -{ - print(s); - println(); -} - -void Print::println(const char c[]) -{ - print(c); - println(); -} - -void Print::println(char c, int base) -{ - print(c, base); - println(); -} - -void Print::println(unsigned char b, int base) -{ - print(b, base); - println(); -} - -void Print::println(int n, int base) -{ - print(n, base); - println(); -} - -void Print::println(unsigned int n, int base) -{ - print(n, base); - println(); -} - -void Print::println(long n, int base) -{ - print(n, base); - println(); -} - -void Print::println(unsigned long n, int base) -{ - print(n, base); - println(); -} - -void Print::println(double n, int digits) -{ - print(n, digits); - println(); -} - -// Private Methods ///////////////////////////////////////////////////////////// - -void Print::printNumber(unsigned long n, uint8_t base) -{ - unsigned char buf[8 * sizeof(long)]; // Assumes 8-bit chars. - unsigned long i = 0; - - if (n == 0) { - print('0'); - return; - } - - while (n > 0) { - buf[i++] = n % base; - n /= base; - } - - for (; i > 0; i--) - print((char) (buf[i - 1] < 10 ? - '0' + buf[i - 1] : - 'A' + buf[i - 1] - 10)); -} - -void Print::printFloat(double number, uint8_t digits) -{ - // Handle negative numbers - if (number < 0.0) - { - print('-'); - number = -number; - } - - // Round correctly so that print(1.999, 2) prints as "2.00" - double rounding = 0.5; - for (uint8_t i=0; i 0) - print("."); - - // Extract digits from the remainder one at a time - while (digits-- > 0) - { - remainder *= 10.0; - int toPrint = int(remainder); - print(toPrint); - remainder -= toPrint; - } -} diff --git a/Marlin/Sanguino/cores/Copy of arduino/Print.h b/Marlin/Sanguino/cores/Copy of arduino/Print.h deleted file mode 100644 index b092ae51d..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/Print.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - Print.h - Base class that provides print() and println() - Copyright (c) 2008 David A. Mellis. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#ifndef Print_h -#define Print_h - -#include -#include // for size_t - -#include "WString.h" - -#define DEC 10 -#define HEX 16 -#define OCT 8 -#define BIN 2 -#define BYTE 0 - -class Print -{ - private: - void printNumber(unsigned long, uint8_t); - void printFloat(double, uint8_t); - public: - virtual void write(uint8_t) = 0; - virtual void write(const char *str); - virtual void write(const uint8_t *buffer, size_t size); - - void print(const String &); - void print(const char[]); - void print(char, int = BYTE); - void print(unsigned char, int = BYTE); - void print(int, int = DEC); - void print(unsigned int, int = DEC); - void print(long, int = DEC); - void print(unsigned long, int = DEC); - void print(double, int = 2); - - void println(const String &s); - void println(const char[]); - void println(char, int = BYTE); - void println(unsigned char, int = BYTE); - void println(int, int = DEC); - void println(unsigned int, int = DEC); - void println(long, int = DEC); - void println(unsigned long, int = DEC); - void println(double, int = 2); - void println(void); -}; - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/Tone.cpp b/Marlin/Sanguino/cores/Copy of arduino/Tone.cpp deleted file mode 100644 index 827fe49ef..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/Tone.cpp +++ /dev/null @@ -1,515 +0,0 @@ -/* Tone.cpp - - A Tone Generator Library - - Written by Brett Hagman - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -Version Modified By Date Comments -------- ----------- -------- -------- -0001 B Hagman 09/08/02 Initial coding -0002 B Hagman 09/08/18 Multiple pins -0003 B Hagman 09/08/18 Moved initialization from constructor to begin() -0004 B Hagman 09/09/26 Fixed problems with ATmega8 -0005 B Hagman 09/11/23 Scanned prescalars for best fit on 8 bit timers - 09/11/25 Changed pin toggle method to XOR - 09/11/25 Fixed timer0 from being excluded -0006 D Mellis 09/12/29 Replaced objects with functions - -*************************************************/ - -#include -#include -#include -#include - -#if defined(__AVR_ATmega8__) -#define TCCR2A TCCR2 -#define TCCR2B TCCR2 -#define COM2A1 COM21 -#define COM2A0 COM20 -#define OCR2A OCR2 -#define TIMSK2 TIMSK -#define OCIE2A OCIE2 -#define TIMER2_COMPA_vect TIMER2_COMP_vect -#define TIMSK1 TIMSK -#endif - -// timerx_toggle_count: -// > 0 - duration specified -// = 0 - stopped -// < 0 - infinitely (until stop() method called, or new play() called) - -#if !defined(__AVR_ATmega8__) -volatile long timer0_toggle_count; -volatile uint8_t *timer0_pin_port; -volatile uint8_t timer0_pin_mask; -#endif - -volatile long timer1_toggle_count; -volatile uint8_t *timer1_pin_port; -volatile uint8_t timer1_pin_mask; -volatile long timer2_toggle_count; -volatile uint8_t *timer2_pin_port; -volatile uint8_t timer2_pin_mask; - -#if defined(__AVR_ATmega1280__) -volatile long timer3_toggle_count; -volatile uint8_t *timer3_pin_port; -volatile uint8_t timer3_pin_mask; -volatile long timer4_toggle_count; -volatile uint8_t *timer4_pin_port; -volatile uint8_t timer4_pin_mask; -volatile long timer5_toggle_count; -volatile uint8_t *timer5_pin_port; -volatile uint8_t timer5_pin_mask; -#endif - - -#if defined(__AVR_ATmega1280__) - -#define AVAILABLE_TONE_PINS 1 - -const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 3, 4, 5, 1, 0 */ }; -static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255, 255, 255, 255 */ }; - -#elif defined(__AVR_ATmega8__) - -#define AVAILABLE_TONE_PINS 1 - -const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1 */ }; -static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255 */ }; - -#else - -#define AVAILABLE_TONE_PINS 1 - -// Leave timer 0 to last. -const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1, 0 */ }; -static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255 */ }; - -#endif - - - -static int8_t toneBegin(uint8_t _pin) -{ - int8_t _timer = -1; - - // if we're already using the pin, the timer should be configured. - for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { - if (tone_pins[i] == _pin) { - return pgm_read_byte(tone_pin_to_timer_PGM + i); - } - } - - // search for an unused timer. - for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { - if (tone_pins[i] == 255) { - tone_pins[i] = _pin; - _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); - break; - } - } - - if (_timer != -1) - { - // Set timer specific stuff - // All timers in CTC mode - // 8 bit timers will require changing prescalar values, - // whereas 16 bit timers are set to either ck/1 or ck/64 prescalar - switch (_timer) - { -#if !defined(__AVR_ATmega8__) - case 0: - // 8 bit timer - TCCR0A = 0; - TCCR0B = 0; - bitWrite(TCCR0A, WGM01, 1); - bitWrite(TCCR0B, CS00, 1); - timer0_pin_port = portOutputRegister(digitalPinToPort(_pin)); - timer0_pin_mask = digitalPinToBitMask(_pin); - break; -#endif - - case 1: - // 16 bit timer - TCCR1A = 0; - TCCR1B = 0; - bitWrite(TCCR1B, WGM12, 1); - bitWrite(TCCR1B, CS10, 1); - timer1_pin_port = portOutputRegister(digitalPinToPort(_pin)); - timer1_pin_mask = digitalPinToBitMask(_pin); - break; - case 2: - // 8 bit timer - TCCR2A = 0; - TCCR2B = 0; - bitWrite(TCCR2A, WGM21, 1); - bitWrite(TCCR2B, CS20, 1); - timer2_pin_port = portOutputRegister(digitalPinToPort(_pin)); - timer2_pin_mask = digitalPinToBitMask(_pin); - break; - -#if defined(__AVR_ATmega1280__) - case 3: - // 16 bit timer - TCCR3A = 0; - TCCR3B = 0; - bitWrite(TCCR3B, WGM32, 1); - bitWrite(TCCR3B, CS30, 1); - timer3_pin_port = portOutputRegister(digitalPinToPort(_pin)); - timer3_pin_mask = digitalPinToBitMask(_pin); - break; - case 4: - // 16 bit timer - TCCR4A = 0; - TCCR4B = 0; - bitWrite(TCCR4B, WGM42, 1); - bitWrite(TCCR4B, CS40, 1); - timer4_pin_port = portOutputRegister(digitalPinToPort(_pin)); - timer4_pin_mask = digitalPinToBitMask(_pin); - break; - case 5: - // 16 bit timer - TCCR5A = 0; - TCCR5B = 0; - bitWrite(TCCR5B, WGM52, 1); - bitWrite(TCCR5B, CS50, 1); - timer5_pin_port = portOutputRegister(digitalPinToPort(_pin)); - timer5_pin_mask = digitalPinToBitMask(_pin); - break; -#endif - } - } - - return _timer; -} - - - -// frequency (in hertz) and duration (in milliseconds). - -void tone(uint8_t _pin, unsigned int frequency, unsigned long duration) -{ - uint8_t prescalarbits = 0b001; - long toggle_count = 0; - uint32_t ocr = 0; - int8_t _timer; - - _timer = toneBegin(_pin); - - if (_timer >= 0) - { - // Set the pinMode as OUTPUT - pinMode(_pin, OUTPUT); - - // if we are using an 8 bit timer, scan through prescalars to find the best fit - if (_timer == 0 || _timer == 2) - { - ocr = F_CPU / frequency / 2 - 1; - prescalarbits = 0b001; // ck/1: same for both timers - if (ocr > 255) - { - ocr = F_CPU / frequency / 2 / 8 - 1; - prescalarbits = 0b010; // ck/8: same for both timers - - if (_timer == 2 && ocr > 255) - { - ocr = F_CPU / frequency / 2 / 32 - 1; - prescalarbits = 0b011; - } - - if (ocr > 255) - { - ocr = F_CPU / frequency / 2 / 64 - 1; - prescalarbits = _timer == 0 ? 0b011 : 0b100; - - if (_timer == 2 && ocr > 255) - { - ocr = F_CPU / frequency / 2 / 128 - 1; - prescalarbits = 0b101; - } - - if (ocr > 255) - { - ocr = F_CPU / frequency / 2 / 256 - 1; - prescalarbits = _timer == 0 ? 0b100 : 0b110; - if (ocr > 255) - { - // can't do any better than /1024 - ocr = F_CPU / frequency / 2 / 1024 - 1; - prescalarbits = _timer == 0 ? 0b101 : 0b111; - } - } - } - } - -#if !defined(__AVR_ATmega8__) - if (_timer == 0) - TCCR0B = prescalarbits; - else -#endif - TCCR2B = prescalarbits; - } - else - { - // two choices for the 16 bit timers: ck/1 or ck/64 - ocr = F_CPU / frequency / 2 - 1; - - prescalarbits = 0b001; - if (ocr > 0xffff) - { - ocr = F_CPU / frequency / 2 / 64 - 1; - prescalarbits = 0b011; - } - - if (_timer == 1) - TCCR1B = (TCCR1B & 0b11111000) | prescalarbits; -#if defined(__AVR_ATmega1280__) - else if (_timer == 3) - TCCR3B = (TCCR3B & 0b11111000) | prescalarbits; - else if (_timer == 4) - TCCR4B = (TCCR4B & 0b11111000) | prescalarbits; - else if (_timer == 5) - TCCR5B = (TCCR5B & 0b11111000) | prescalarbits; -#endif - - } - - - // Calculate the toggle count - if (duration > 0) - { - toggle_count = 2 * frequency * duration / 1000; - } - else - { - toggle_count = -1; - } - - // Set the OCR for the given timer, - // set the toggle count, - // then turn on the interrupts - switch (_timer) - { - -#if !defined(__AVR_ATmega8__) - case 0: - OCR0A = ocr; - timer0_toggle_count = toggle_count; - bitWrite(TIMSK0, OCIE0A, 1); - break; -#endif - - case 1: - OCR1A = ocr; - timer1_toggle_count = toggle_count; - bitWrite(TIMSK1, OCIE1A, 1); - break; - case 2: - OCR2A = ocr; - timer2_toggle_count = toggle_count; - bitWrite(TIMSK2, OCIE2A, 1); - break; - -#if defined(__AVR_ATmega1280__) - case 3: - OCR3A = ocr; - timer3_toggle_count = toggle_count; - bitWrite(TIMSK3, OCIE3A, 1); - break; - case 4: - OCR4A = ocr; - timer4_toggle_count = toggle_count; - bitWrite(TIMSK4, OCIE4A, 1); - break; - case 5: - OCR5A = ocr; - timer5_toggle_count = toggle_count; - bitWrite(TIMSK5, OCIE5A, 1); - break; -#endif - - } - } -} - - -void noTone(uint8_t _pin) -{ - int8_t _timer = -1; - - for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { - if (tone_pins[i] == _pin) { - _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); - tone_pins[i] = 255; - } - } - - switch (_timer) - { -#if defined(__AVR_ATmega8__) - case 1: - bitWrite(TIMSK1, OCIE1A, 0); - break; - case 2: - bitWrite(TIMSK2, OCIE2A, 0); - break; - -#else - case 0: - TIMSK0 = 0; - break; - case 1: - TIMSK1 = 0; - break; - case 2: - TIMSK2 = 0; - break; -#endif - -#if defined(__AVR_ATmega1280__) - case 3: - TIMSK3 = 0; - break; - case 4: - TIMSK4 = 0; - break; - case 5: - TIMSK5 = 0; - break; -#endif - } - - digitalWrite(_pin, 0); -} - -#if 0 -#if !defined(__AVR_ATmega8__) -ISR(TIMER0_COMPA_vect) -{ - if (timer0_toggle_count != 0) - { - // toggle the pin - *timer0_pin_port ^= timer0_pin_mask; - - if (timer0_toggle_count > 0) - timer0_toggle_count--; - } - else - { - TIMSK0 = 0; // disable the interrupt - *timer0_pin_port &= ~(timer0_pin_mask); // keep pin low after stop - } -} -#endif - - -ISR(TIMER1_COMPA_vect) -{ - if (timer1_toggle_count != 0) - { - // toggle the pin - *timer1_pin_port ^= timer1_pin_mask; - - if (timer1_toggle_count > 0) - timer1_toggle_count--; - } - else - { - TIMSK1 = 0; // disable the interrupt - *timer1_pin_port &= ~(timer1_pin_mask); // keep pin low after stop - } -} -#endif - - -ISR(TIMER2_COMPA_vect) -{ - - if (timer2_toggle_count != 0) - { - // toggle the pin - *timer2_pin_port ^= timer2_pin_mask; - - if (timer2_toggle_count > 0) - timer2_toggle_count--; - } - else - { - TIMSK2 = 0; // disable the interrupt - *timer2_pin_port &= ~(timer2_pin_mask); // keep pin low after stop - } -} - - - -//#if defined(__AVR_ATmega1280__) -#if 0 - -ISR(TIMER3_COMPA_vect) -{ - if (timer3_toggle_count != 0) - { - // toggle the pin - *timer3_pin_port ^= timer3_pin_mask; - - if (timer3_toggle_count > 0) - timer3_toggle_count--; - } - else - { - TIMSK3 = 0; // disable the interrupt - *timer3_pin_port &= ~(timer3_pin_mask); // keep pin low after stop - } -} - -ISR(TIMER4_COMPA_vect) -{ - if (timer4_toggle_count != 0) - { - // toggle the pin - *timer4_pin_port ^= timer4_pin_mask; - - if (timer4_toggle_count > 0) - timer4_toggle_count--; - } - else - { - TIMSK4 = 0; // disable the interrupt - *timer4_pin_port &= ~(timer4_pin_mask); // keep pin low after stop - } -} - -ISR(TIMER5_COMPA_vect) -{ - if (timer5_toggle_count != 0) - { - // toggle the pin - *timer5_pin_port ^= timer5_pin_mask; - - if (timer5_toggle_count > 0) - timer5_toggle_count--; - } - else - { - TIMSK5 = 0; // disable the interrupt - *timer5_pin_port &= ~(timer5_pin_mask); // keep pin low after stop - } -} - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/WCharacter.h b/Marlin/Sanguino/cores/Copy of arduino/WCharacter.h deleted file mode 100644 index 79733b50a..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WCharacter.h +++ /dev/null @@ -1,168 +0,0 @@ -/* - WCharacter.h - Character utility functions for Wiring & Arduino - Copyright (c) 2010 Hernando Barragan. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef Character_h -#define Character_h - -#include - -// WCharacter.h prototypes -inline boolean isAlphaNumeric(int c) __attribute__((always_inline)); -inline boolean isAlpha(int c) __attribute__((always_inline)); -inline boolean isAscii(int c) __attribute__((always_inline)); -inline boolean isWhitespace(int c) __attribute__((always_inline)); -inline boolean isControl(int c) __attribute__((always_inline)); -inline boolean isDigit(int c) __attribute__((always_inline)); -inline boolean isGraph(int c) __attribute__((always_inline)); -inline boolean isLowerCase(int c) __attribute__((always_inline)); -inline boolean isPrintable(int c) __attribute__((always_inline)); -inline boolean isPunct(int c) __attribute__((always_inline)); -inline boolean isSpace(int c) __attribute__((always_inline)); -inline boolean isUpperCase(int c) __attribute__((always_inline)); -inline boolean isHexadecimalDigit(int c) __attribute__((always_inline)); -inline int toAscii(int c) __attribute__((always_inline)); -inline int toLowerCase(int c) __attribute__((always_inline)); -inline int toUpperCase(int c)__attribute__((always_inline)); - - -// Checks for an alphanumeric character. -// It is equivalent to (isalpha(c) || isdigit(c)). -inline boolean isAlphaNumeric(int c) -{ - return ( isalnum(c) == 0 ? false : true); -} - - -// Checks for an alphabetic character. -// It is equivalent to (isupper(c) || islower(c)). -inline boolean isAlpha(int c) -{ - return ( isalpha(c) == 0 ? false : true); -} - - -// Checks whether c is a 7-bit unsigned char value -// that fits into the ASCII character set. -inline boolean isAscii(int c) -{ - return ( isascii (c) == 0 ? false : true); -} - - -// Checks for a blank character, that is, a space or a tab. -inline boolean isWhitespace(int c) -{ - return ( isblank (c) == 0 ? false : true); -} - - -// Checks for a control character. -inline boolean isControl(int c) -{ - return ( iscntrl (c) == 0 ? false : true); -} - - -// Checks for a digit (0 through 9). -inline boolean isDigit(int c) -{ - return ( isdigit (c) == 0 ? false : true); -} - - -// Checks for any printable character except space. -inline boolean isGraph(int c) -{ - return ( isgraph (c) == 0 ? false : true); -} - - -// Checks for a lower-case character. -inline boolean isLowerCase(int c) -{ - return (islower (c) == 0 ? false : true); -} - - -// Checks for any printable character including space. -inline boolean isPrintable(int c) -{ - return ( isprint (c) == 0 ? false : true); -} - - -// Checks for any printable character which is not a space -// or an alphanumeric character. -inline boolean isPunct(int c) -{ - return ( ispunct (c) == 0 ? false : true); -} - - -// Checks for white-space characters. For the avr-libc library, -// these are: space, formfeed ('\f'), newline ('\n'), carriage -// return ('\r'), horizontal tab ('\t'), and vertical tab ('\v'). -inline boolean isSpace(int c) -{ - return ( isspace (c) == 0 ? false : true); -} - - -// Checks for an uppercase letter. -inline boolean isUpperCase(int c) -{ - return ( isupper (c) == 0 ? false : true); -} - - -// Checks for a hexadecimal digits, i.e. one of 0 1 2 3 4 5 6 7 -// 8 9 a b c d e f A B C D E F. -inline boolean isHexadecimalDigit(int c) -{ - return ( isxdigit (c) == 0 ? false : true); -} - - -// Converts c to a 7-bit unsigned char value that fits into the -// ASCII character set, by clearing the high-order bits. -inline int toAscii(int c) -{ - return toascii (c); -} - - -// Warning: -// Many people will be unhappy if you use this function. -// This function will convert accented letters into random -// characters. - -// Converts the letter c to lower case, if possible. -inline int toLowerCase(int c) -{ - return tolower (c); -} - - -// Converts the letter c to upper case, if possible. -inline int toUpperCase(int c) -{ - return toupper (c); -} - -#endif \ No newline at end of file diff --git a/Marlin/Sanguino/cores/Copy of arduino/WConstants.h b/Marlin/Sanguino/cores/Copy of arduino/WConstants.h deleted file mode 100644 index 3e19ac44a..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WConstants.h +++ /dev/null @@ -1 +0,0 @@ -#include "wiring.h" diff --git a/Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c b/Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c deleted file mode 100644 index 6f3f0b130..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WInterrupts.c +++ /dev/null @@ -1,87 +0,0 @@ -/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ - -/* - Part of the Wiring project - http://wiring.uniandes.edu.co - - Copyright (c) 2004-05 Hernando Barragan - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - Modified 24 November 2006 by David A. Mellis -*/ - -#include -#include -#include -#include -#include - -#include "WConstants.h" -#include "wiring_private.h" - -volatile static voidFuncPtr intFunc[EXTERNAL_NUM_INTERRUPTS]; -// volatile static voidFuncPtr twiIntFunc; - -void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode) -{ - if(interruptNum < EXTERNAL_NUM_INTERRUPTS) - { - intFunc[interruptNum] = userFunc; - - //clear the config for the change settings - EICRA &= ~(B00000011 << (interruptNum * 2)); - - //set our mode. - EICRA |= (mode << (interruptNum * 2)); - - // Enable the interrupt. - EIMSK |= (1 << interruptNum); - } -} - -void detachInterrupt(uint8_t interruptNum) -{ - if(interruptNum < EXTERNAL_NUM_INTERRUPTS) - { - // Disable the interrupt. - EIMSK &= ~(1 << interruptNum); - - intFunc[interruptNum] = 0; - } -} - -ISR(INT0_vect) { - if(intFunc[EXTERNAL_INT_0]) - intFunc[EXTERNAL_INT_0](); -} - -ISR(INT1_vect) { - if(intFunc[EXTERNAL_INT_1]) - intFunc[EXTERNAL_INT_1](); -} - -ISR(INT2_vect) { - if(intFunc[EXTERNAL_INT_2]) - intFunc[EXTERNAL_INT_2](); -} - -/* -SIGNAL(SIG_2WIRE_SERIAL) { - if(twiIntFunc) - twiIntFunc(); -} -*/ - diff --git a/Marlin/Sanguino/cores/Copy of arduino/WMath.cpp b/Marlin/Sanguino/cores/Copy of arduino/WMath.cpp deleted file mode 100644 index 2120c4cc1..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WMath.cpp +++ /dev/null @@ -1,60 +0,0 @@ -/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ - -/* - Part of the Wiring project - http://wiring.org.co - Copyright (c) 2004-06 Hernando Barragan - Modified 13 August 2006, David A. Mellis for Arduino - http://www.arduino.cc/ - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id$ -*/ - -extern "C" { - #include "stdlib.h" -} - -void randomSeed(unsigned int seed) -{ - if (seed != 0) { - srandom(seed); - } -} - -long random(long howbig) -{ - if (howbig == 0) { - return 0; - } - return random() % howbig; -} - -long random(long howsmall, long howbig) -{ - if (howsmall >= howbig) { - return howsmall; - } - long diff = howbig - howsmall; - return random(diff) + howsmall; -} - -long map(long x, long in_min, long in_max, long out_min, long out_max) -{ - return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; -} - -unsigned int makeWord(unsigned int w) { return w; } -unsigned int makeWord(unsigned char h, unsigned char l) { return (h << 8) | l; } \ No newline at end of file diff --git a/Marlin/Sanguino/cores/Copy of arduino/WProgram.h b/Marlin/Sanguino/cores/Copy of arduino/WProgram.h deleted file mode 100644 index f73e760bb..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WProgram.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef WProgram_h -#define WProgram_h - -#include -#include -#include - -#include - -#include "wiring.h" - -#ifdef __cplusplus -#include "WCharacter.h" -#include "WString.h" -#include "HardwareSerial.h" - -uint16_t makeWord(uint16_t w); -uint16_t makeWord(byte h, byte l); - -#define word(...) makeWord(__VA_ARGS__) - -unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout = 1000000L); - -void tone(uint8_t _pin, unsigned int frequency, unsigned long duration = 0); -void noTone(uint8_t _pin); - -// WMath prototypes -long random(long); -long random(long, long); -void randomSeed(unsigned int); -long map(long, long, long, long, long); - -#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) -const static uint8_t A0 = 54; -const static uint8_t A1 = 55; -const static uint8_t A2 = 56; -const static uint8_t A3 = 57; -const static uint8_t A4 = 58; -const static uint8_t A5 = 59; -const static uint8_t A6 = 60; -const static uint8_t A7 = 61; -const static uint8_t A8 = 62; -const static uint8_t A9 = 63; -const static uint8_t A10 = 64; -const static uint8_t A11 = 65; -const static uint8_t A12 = 66; -const static uint8_t A13 = 67; -const static uint8_t A14 = 68; -const static uint8_t A15 = 69; -#else -const static uint8_t A0 = 14; -const static uint8_t A1 = 15; -const static uint8_t A2 = 16; -const static uint8_t A3 = 17; -const static uint8_t A4 = 18; -const static uint8_t A5 = 19; -const static uint8_t A6 = 20; -const static uint8_t A7 = 21; -#endif - -#endif - -#endif \ No newline at end of file diff --git a/Marlin/Sanguino/cores/Copy of arduino/WString.cpp b/Marlin/Sanguino/cores/Copy of arduino/WString.cpp deleted file mode 100644 index db5a441dc..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WString.cpp +++ /dev/null @@ -1,443 +0,0 @@ -/* - WString.cpp - String library for Wiring & Arduino - Copyright (c) 2009-10 Hernando Barragan. All rights reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#include -#include "WProgram.h" -#include "WString.h" - - -String::String( const char *value ) -{ - if ( value == NULL ) - value = ""; - getBuffer( _length = strlen( value ) ); - if ( _buffer != NULL ) - strcpy( _buffer, value ); -} - -String::String( const String &value ) -{ - getBuffer( _length = value._length ); - if ( _buffer != NULL ) - strcpy( _buffer, value._buffer ); -} - -String::String( const char value ) -{ - _length = 1; - getBuffer(1); - if ( _buffer != NULL ) { - _buffer[0] = value; - _buffer[1] = 0; - } -} - -String::String( const unsigned char value ) -{ - _length = 1; - getBuffer(1); - if ( _buffer != NULL) { - _buffer[0] = value; - _buffer[1] = 0; - } -} - -String::String( const int value, const int base ) -{ - char buf[33]; - itoa((signed long)value, buf, base); - getBuffer( _length = strlen(buf) ); - if ( _buffer != NULL ) - strcpy( _buffer, buf ); -} - -String::String( const unsigned int value, const int base ) -{ - char buf[33]; - ultoa((unsigned long)value, buf, base); - getBuffer( _length = strlen(buf) ); - if ( _buffer != NULL ) - strcpy( _buffer, buf ); -} - -String::String( const long value, const int base ) -{ - char buf[33]; - ltoa(value, buf, base); - getBuffer( _length = strlen(buf) ); - if ( _buffer != NULL ) - strcpy( _buffer, buf ); -} - -String::String( const unsigned long value, const int base ) -{ - char buf[33]; - ultoa(value, buf, 10); - getBuffer( _length = strlen(buf) ); - if ( _buffer != NULL ) - strcpy( _buffer, buf ); -} - -char String::charAt( unsigned int loc ) const -{ - return operator[]( loc ); -} - -void String::setCharAt( unsigned int loc, const char aChar ) -{ - if(_buffer == NULL) return; - if(_length > loc) { - _buffer[loc] = aChar; - } -} - -int String::compareTo( const String &s2 ) const -{ - return strcmp( _buffer, s2._buffer ); -} - -const String & String::concat( const String &s2 ) -{ - return (*this) += s2; -} - -const String & String::operator=( const String &rhs ) -{ - if ( this == &rhs ) - return *this; - - if ( rhs._length > _length ) - { - free(_buffer); - getBuffer( rhs._length ); - } - - if ( _buffer != NULL ) { - _length = rhs._length; - strcpy( _buffer, rhs._buffer ); - } - return *this; -} - -//const String & String::operator+=( const char aChar ) -//{ -// if ( _length == _capacity ) -// doubleBuffer(); -// -// _buffer[ _length++ ] = aChar; -// _buffer[ _length ] = '\0'; -// return *this; -//} - -const String & String::operator+=( const String &other ) -{ - _length += other._length; - if ( _length > _capacity ) - { - char *temp = (char *)realloc(_buffer, _length + 1); - if ( temp != NULL ) { - _buffer = temp; - _capacity = _length; - } else { - _length -= other._length; - return *this; - } - } - strcat( _buffer, other._buffer ); - return *this; -} - - -int String::operator==( const String &rhs ) const -{ - return ( _length == rhs._length && strcmp( _buffer, rhs._buffer ) == 0 ); -} - -int String::operator!=( const String &rhs ) const -{ - return ( _length != rhs.length() || strcmp( _buffer, rhs._buffer ) != 0 ); -} - -int String::operator<( const String &rhs ) const -{ - return strcmp( _buffer, rhs._buffer ) < 0; -} - -int String::operator>( const String &rhs ) const -{ - return strcmp( _buffer, rhs._buffer ) > 0; -} - -int String::operator<=( const String &rhs ) const -{ - return strcmp( _buffer, rhs._buffer ) <= 0; -} - -int String::operator>=( const String & rhs ) const -{ - return strcmp( _buffer, rhs._buffer ) >= 0; -} - -char & String::operator[]( unsigned int index ) -{ - static char dummy_writable_char; - if (index >= _length || !_buffer) { - dummy_writable_char = 0; - return dummy_writable_char; - } - return _buffer[ index ]; -} - -char String::operator[]( unsigned int index ) const -{ - // need to check for valid index, to do later - return _buffer[ index ]; -} - -boolean String::endsWith( const String &s2 ) const -{ - if ( _length < s2._length ) - return 0; - - return strcmp( &_buffer[ _length - s2._length], s2._buffer ) == 0; -} - -boolean String::equals( const String &s2 ) const -{ - return ( _length == s2._length && strcmp( _buffer,s2._buffer ) == 0 ); -} - -boolean String::equalsIgnoreCase( const String &s2 ) const -{ - if ( this == &s2 ) - return true; //1; - else if ( _length != s2._length ) - return false; //0; - - return strcmp(toLowerCase()._buffer, s2.toLowerCase()._buffer) == 0; -} - -String String::replace( char findChar, char replaceChar ) -{ - if ( _buffer == NULL ) return *this; - String theReturn = _buffer; - char* temp = theReturn._buffer; - while( (temp = strchr( temp, findChar )) != 0 ) - *temp = replaceChar; - - return theReturn; -} - -String String::replace( const String& match, const String& replace ) -{ - if ( _buffer == NULL ) return *this; - String temp = _buffer, newString; - - int loc; - while ( (loc = temp.indexOf( match )) != -1 ) - { - newString += temp.substring( 0, loc ); - newString += replace; - temp = temp.substring( loc + match._length ); - } - newString += temp; - return newString; -} - -int String::indexOf( char temp ) const -{ - return indexOf( temp, 0 ); -} - -int String::indexOf( char ch, unsigned int fromIndex ) const -{ - if ( fromIndex >= _length ) - return -1; - - const char* temp = strchr( &_buffer[fromIndex], ch ); - if ( temp == NULL ) - return -1; - - return temp - _buffer; -} - -int String::indexOf( const String &s2 ) const -{ - return indexOf( s2, 0 ); -} - -int String::indexOf( const String &s2, unsigned int fromIndex ) const -{ - if ( fromIndex >= _length ) - return -1; - - const char *theFind = strstr( &_buffer[ fromIndex ], s2._buffer ); - - if ( theFind == NULL ) - return -1; - - return theFind - _buffer; // pointer subtraction -} - -int String::lastIndexOf( char theChar ) const -{ - return lastIndexOf( theChar, _length - 1 ); -} - -int String::lastIndexOf( char ch, unsigned int fromIndex ) const -{ - if ( fromIndex >= _length ) - return -1; - - char tempchar = _buffer[fromIndex + 1]; - _buffer[fromIndex + 1] = '\0'; - char* temp = strrchr( _buffer, ch ); - _buffer[fromIndex + 1] = tempchar; - - if ( temp == NULL ) - return -1; - - return temp - _buffer; -} - -int String::lastIndexOf( const String &s2 ) const -{ - return lastIndexOf( s2, _length - s2._length ); -} - -int String::lastIndexOf( const String &s2, unsigned int fromIndex ) const -{ - // check for empty strings - if ( s2._length == 0 || s2._length - 1 > fromIndex || fromIndex >= _length ) - return -1; - - // matching first character - char temp = s2[ 0 ]; - - for ( int i = fromIndex; i >= 0; i-- ) - { - if ( _buffer[ i ] == temp && (*this).substring( i, i + s2._length ).equals( s2 ) ) - return i; - } - return -1; -} - -boolean String::startsWith( const String &s2 ) const -{ - if ( _length < s2._length ) - return 0; - - return startsWith( s2, 0 ); -} - -boolean String::startsWith( const String &s2, unsigned int offset ) const -{ - if ( offset > _length - s2._length ) - return 0; - - return strncmp( &_buffer[offset], s2._buffer, s2._length ) == 0; -} - -String String::substring( unsigned int left ) const -{ - return substring( left, _length ); -} - -String String::substring( unsigned int left, unsigned int right ) const -{ - if ( left > right ) - { - int temp = right; - right = left; - left = temp; - } - - if ( right > _length ) - { - right = _length; - } - - char temp = _buffer[ right ]; // save the replaced character - _buffer[ right ] = '\0'; - String outPut = ( _buffer + left ); // pointer arithmetic - _buffer[ right ] = temp; //restore character - return outPut; -} - -String String::toLowerCase() const -{ - String temp = _buffer; - - for ( unsigned int i = 0; i < _length; i++ ) - temp._buffer[ i ] = (char)tolower( temp._buffer[ i ] ); - return temp; -} - -String String::toUpperCase() const -{ - String temp = _buffer; - - for ( unsigned int i = 0; i < _length; i++ ) - temp._buffer[ i ] = (char)toupper( temp._buffer[ i ] ); - return temp; -} - -String String::trim() const -{ - if ( _buffer == NULL ) return *this; - String temp = _buffer; - unsigned int i,j; - - for ( i = 0; i < _length; i++ ) - { - if ( !isspace(_buffer[i]) ) - break; - } - - for ( j = temp._length - 1; j > i; j-- ) - { - if ( !isspace(_buffer[j]) ) - break; - } - - return temp.substring( i, j + 1); -} - -void String::getBytes(unsigned char *buf, unsigned int bufsize) -{ - if (!bufsize || !buf) return; - unsigned int len = bufsize - 1; - if (len > _length) len = _length; - strncpy((char *)buf, _buffer, len); - buf[len] = 0; -} - -void String::toCharArray(char *buf, unsigned int bufsize) -{ - if (!bufsize || !buf) return; - unsigned int len = bufsize - 1; - if (len > _length) len = _length; - strncpy(buf, _buffer, len); - buf[len] = 0; -} - - -long String::toInt() { - return atol(_buffer); -} diff --git a/Marlin/Sanguino/cores/Copy of arduino/WString.h b/Marlin/Sanguino/cores/Copy of arduino/WString.h deleted file mode 100644 index cadddb947..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/WString.h +++ /dev/null @@ -1,112 +0,0 @@ -/* - WString.h - String library for Wiring & Arduino - Copyright (c) 2009-10 Hernando Barragan. All right reserved. - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#ifndef String_h -#define String_h - -//#include "WProgram.h" -#include -#include -#include - -class String -{ - public: - // constructors - String( const char *value = "" ); - String( const String &value ); - String( const char ); - String( const unsigned char ); - String( const int, const int base=10); - String( const unsigned int, const int base=10 ); - String( const long, const int base=10 ); - String( const unsigned long, const int base=10 ); - ~String() { free(_buffer); _length = _capacity = 0;} //added _length = _capacity = 0; - - // operators - const String & operator = ( const String &rhs ); - const String & operator +=( const String &rhs ); - //const String & operator +=( const char ); - int operator ==( const String &rhs ) const; - int operator !=( const String &rhs ) const; - int operator < ( const String &rhs ) const; - int operator > ( const String &rhs ) const; - int operator <=( const String &rhs ) const; - int operator >=( const String &rhs ) const; - char operator []( unsigned int index ) const; - char& operator []( unsigned int index ); - //operator const char *() const { return _buffer; } - - // general methods - char charAt( unsigned int index ) const; - int compareTo( const String &anotherString ) const; - unsigned char endsWith( const String &suffix ) const; - unsigned char equals( const String &anObject ) const; - unsigned char equalsIgnoreCase( const String &anotherString ) const; - int indexOf( char ch ) const; - int indexOf( char ch, unsigned int fromIndex ) const; - int indexOf( const String &str ) const; - int indexOf( const String &str, unsigned int fromIndex ) const; - int lastIndexOf( char ch ) const; - int lastIndexOf( char ch, unsigned int fromIndex ) const; - int lastIndexOf( const String &str ) const; - int lastIndexOf( const String &str, unsigned int fromIndex ) const; - const unsigned int length( ) const { return _length; } - void setCharAt(unsigned int index, const char ch); - unsigned char startsWith( const String &prefix ) const; - unsigned char startsWith( const String &prefix, unsigned int toffset ) const; - String substring( unsigned int beginIndex ) const; - String substring( unsigned int beginIndex, unsigned int endIndex ) const; - String toLowerCase( ) const; - String toUpperCase( ) const; - String trim( ) const; - void getBytes(unsigned char *buf, unsigned int bufsize); - void toCharArray(char *buf, unsigned int bufsize); - long toInt( ); - const String& concat( const String &str ); - String replace( char oldChar, char newChar ); - String replace( const String& match, const String& replace ); - friend String operator + ( String lhs, const String &rhs ); - - protected: - char *_buffer; // the actual char array - unsigned int _capacity; // the array length minus one (for the '\0') - unsigned int _length; // the String length (not counting the '\0') - - void getBuffer(unsigned int maxStrLen); - - private: - -}; - -// allocate buffer space -inline void String::getBuffer(unsigned int maxStrLen) -{ - _capacity = maxStrLen; - _buffer = (char *) malloc(_capacity + 1); - if (_buffer == NULL) _length = _capacity = 0; -} - -inline String operator+( String lhs, const String &rhs ) -{ - return lhs += rhs; -} - - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/binary.h b/Marlin/Sanguino/cores/Copy of arduino/binary.h deleted file mode 100644 index af1498033..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/binary.h +++ /dev/null @@ -1,515 +0,0 @@ -#ifndef Binary_h -#define Binary_h - -#define B0 0 -#define B00 0 -#define B000 0 -#define B0000 0 -#define B00000 0 -#define B000000 0 -#define B0000000 0 -#define B00000000 0 -#define B1 1 -#define B01 1 -#define B001 1 -#define B0001 1 -#define B00001 1 -#define B000001 1 -#define B0000001 1 -#define B00000001 1 -#define B10 2 -#define B010 2 -#define B0010 2 -#define B00010 2 -#define B000010 2 -#define B0000010 2 -#define B00000010 2 -#define B11 3 -#define B011 3 -#define B0011 3 -#define B00011 3 -#define B000011 3 -#define B0000011 3 -#define B00000011 3 -#define B100 4 -#define B0100 4 -#define B00100 4 -#define B000100 4 -#define B0000100 4 -#define B00000100 4 -#define B101 5 -#define B0101 5 -#define B00101 5 -#define B000101 5 -#define B0000101 5 -#define B00000101 5 -#define B110 6 -#define B0110 6 -#define B00110 6 -#define B000110 6 -#define B0000110 6 -#define B00000110 6 -#define B111 7 -#define B0111 7 -#define B00111 7 -#define B000111 7 -#define B0000111 7 -#define B00000111 7 -#define B1000 8 -#define B01000 8 -#define B001000 8 -#define B0001000 8 -#define B00001000 8 -#define B1001 9 -#define B01001 9 -#define B001001 9 -#define B0001001 9 -#define B00001001 9 -#define B1010 10 -#define B01010 10 -#define B001010 10 -#define B0001010 10 -#define B00001010 10 -#define B1011 11 -#define B01011 11 -#define B001011 11 -#define B0001011 11 -#define B00001011 11 -#define B1100 12 -#define B01100 12 -#define B001100 12 -#define B0001100 12 -#define B00001100 12 -#define B1101 13 -#define B01101 13 -#define B001101 13 -#define B0001101 13 -#define B00001101 13 -#define B1110 14 -#define B01110 14 -#define B001110 14 -#define B0001110 14 -#define B00001110 14 -#define B1111 15 -#define B01111 15 -#define B001111 15 -#define B0001111 15 -#define B00001111 15 -#define B10000 16 -#define B010000 16 -#define B0010000 16 -#define B00010000 16 -#define B10001 17 -#define B010001 17 -#define B0010001 17 -#define B00010001 17 -#define B10010 18 -#define B010010 18 -#define B0010010 18 -#define B00010010 18 -#define B10011 19 -#define B010011 19 -#define B0010011 19 -#define B00010011 19 -#define B10100 20 -#define B010100 20 -#define B0010100 20 -#define B00010100 20 -#define B10101 21 -#define B010101 21 -#define B0010101 21 -#define B00010101 21 -#define B10110 22 -#define B010110 22 -#define B0010110 22 -#define B00010110 22 -#define B10111 23 -#define B010111 23 -#define B0010111 23 -#define B00010111 23 -#define B11000 24 -#define B011000 24 -#define B0011000 24 -#define B00011000 24 -#define B11001 25 -#define B011001 25 -#define B0011001 25 -#define B00011001 25 -#define B11010 26 -#define B011010 26 -#define B0011010 26 -#define B00011010 26 -#define B11011 27 -#define B011011 27 -#define B0011011 27 -#define B00011011 27 -#define B11100 28 -#define B011100 28 -#define B0011100 28 -#define B00011100 28 -#define B11101 29 -#define B011101 29 -#define B0011101 29 -#define B00011101 29 -#define B11110 30 -#define B011110 30 -#define B0011110 30 -#define B00011110 30 -#define B11111 31 -#define B011111 31 -#define B0011111 31 -#define B00011111 31 -#define B100000 32 -#define B0100000 32 -#define B00100000 32 -#define B100001 33 -#define B0100001 33 -#define B00100001 33 -#define B100010 34 -#define B0100010 34 -#define B00100010 34 -#define B100011 35 -#define B0100011 35 -#define B00100011 35 -#define B100100 36 -#define B0100100 36 -#define B00100100 36 -#define B100101 37 -#define B0100101 37 -#define B00100101 37 -#define B100110 38 -#define B0100110 38 -#define B00100110 38 -#define B100111 39 -#define B0100111 39 -#define B00100111 39 -#define B101000 40 -#define B0101000 40 -#define B00101000 40 -#define B101001 41 -#define B0101001 41 -#define B00101001 41 -#define B101010 42 -#define B0101010 42 -#define B00101010 42 -#define B101011 43 -#define B0101011 43 -#define B00101011 43 -#define B101100 44 -#define B0101100 44 -#define B00101100 44 -#define B101101 45 -#define B0101101 45 -#define B00101101 45 -#define B101110 46 -#define B0101110 46 -#define B00101110 46 -#define B101111 47 -#define B0101111 47 -#define B00101111 47 -#define B110000 48 -#define B0110000 48 -#define B00110000 48 -#define B110001 49 -#define B0110001 49 -#define B00110001 49 -#define B110010 50 -#define B0110010 50 -#define B00110010 50 -#define B110011 51 -#define B0110011 51 -#define B00110011 51 -#define B110100 52 -#define B0110100 52 -#define B00110100 52 -#define B110101 53 -#define B0110101 53 -#define B00110101 53 -#define B110110 54 -#define B0110110 54 -#define B00110110 54 -#define B110111 55 -#define B0110111 55 -#define B00110111 55 -#define B111000 56 -#define B0111000 56 -#define B00111000 56 -#define B111001 57 -#define B0111001 57 -#define B00111001 57 -#define B111010 58 -#define B0111010 58 -#define B00111010 58 -#define B111011 59 -#define B0111011 59 -#define B00111011 59 -#define B111100 60 -#define B0111100 60 -#define B00111100 60 -#define B111101 61 -#define B0111101 61 -#define B00111101 61 -#define B111110 62 -#define B0111110 62 -#define B00111110 62 -#define B111111 63 -#define B0111111 63 -#define B00111111 63 -#define B1000000 64 -#define B01000000 64 -#define B1000001 65 -#define B01000001 65 -#define B1000010 66 -#define B01000010 66 -#define B1000011 67 -#define B01000011 67 -#define B1000100 68 -#define B01000100 68 -#define B1000101 69 -#define B01000101 69 -#define B1000110 70 -#define B01000110 70 -#define B1000111 71 -#define B01000111 71 -#define B1001000 72 -#define B01001000 72 -#define B1001001 73 -#define B01001001 73 -#define B1001010 74 -#define B01001010 74 -#define B1001011 75 -#define B01001011 75 -#define B1001100 76 -#define B01001100 76 -#define B1001101 77 -#define B01001101 77 -#define B1001110 78 -#define B01001110 78 -#define B1001111 79 -#define B01001111 79 -#define B1010000 80 -#define B01010000 80 -#define B1010001 81 -#define B01010001 81 -#define B1010010 82 -#define B01010010 82 -#define B1010011 83 -#define B01010011 83 -#define B1010100 84 -#define B01010100 84 -#define B1010101 85 -#define B01010101 85 -#define B1010110 86 -#define B01010110 86 -#define B1010111 87 -#define B01010111 87 -#define B1011000 88 -#define B01011000 88 -#define B1011001 89 -#define B01011001 89 -#define B1011010 90 -#define B01011010 90 -#define B1011011 91 -#define B01011011 91 -#define B1011100 92 -#define B01011100 92 -#define B1011101 93 -#define B01011101 93 -#define B1011110 94 -#define B01011110 94 -#define B1011111 95 -#define B01011111 95 -#define B1100000 96 -#define B01100000 96 -#define B1100001 97 -#define B01100001 97 -#define B1100010 98 -#define B01100010 98 -#define B1100011 99 -#define B01100011 99 -#define B1100100 100 -#define B01100100 100 -#define B1100101 101 -#define B01100101 101 -#define B1100110 102 -#define B01100110 102 -#define B1100111 103 -#define B01100111 103 -#define B1101000 104 -#define B01101000 104 -#define B1101001 105 -#define B01101001 105 -#define B1101010 106 -#define B01101010 106 -#define B1101011 107 -#define B01101011 107 -#define B1101100 108 -#define B01101100 108 -#define B1101101 109 -#define B01101101 109 -#define B1101110 110 -#define B01101110 110 -#define B1101111 111 -#define B01101111 111 -#define B1110000 112 -#define B01110000 112 -#define B1110001 113 -#define B01110001 113 -#define B1110010 114 -#define B01110010 114 -#define B1110011 115 -#define B01110011 115 -#define B1110100 116 -#define B01110100 116 -#define B1110101 117 -#define B01110101 117 -#define B1110110 118 -#define B01110110 118 -#define B1110111 119 -#define B01110111 119 -#define B1111000 120 -#define B01111000 120 -#define B1111001 121 -#define B01111001 121 -#define B1111010 122 -#define B01111010 122 -#define B1111011 123 -#define B01111011 123 -#define B1111100 124 -#define B01111100 124 -#define B1111101 125 -#define B01111101 125 -#define B1111110 126 -#define B01111110 126 -#define B1111111 127 -#define B01111111 127 -#define B10000000 128 -#define B10000001 129 -#define B10000010 130 -#define B10000011 131 -#define B10000100 132 -#define B10000101 133 -#define B10000110 134 -#define B10000111 135 -#define B10001000 136 -#define B10001001 137 -#define B10001010 138 -#define B10001011 139 -#define B10001100 140 -#define B10001101 141 -#define B10001110 142 -#define B10001111 143 -#define B10010000 144 -#define B10010001 145 -#define B10010010 146 -#define B10010011 147 -#define B10010100 148 -#define B10010101 149 -#define B10010110 150 -#define B10010111 151 -#define B10011000 152 -#define B10011001 153 -#define B10011010 154 -#define B10011011 155 -#define B10011100 156 -#define B10011101 157 -#define B10011110 158 -#define B10011111 159 -#define B10100000 160 -#define B10100001 161 -#define B10100010 162 -#define B10100011 163 -#define B10100100 164 -#define B10100101 165 -#define B10100110 166 -#define B10100111 167 -#define B10101000 168 -#define B10101001 169 -#define B10101010 170 -#define B10101011 171 -#define B10101100 172 -#define B10101101 173 -#define B10101110 174 -#define B10101111 175 -#define B10110000 176 -#define B10110001 177 -#define B10110010 178 -#define B10110011 179 -#define B10110100 180 -#define B10110101 181 -#define B10110110 182 -#define B10110111 183 -#define B10111000 184 -#define B10111001 185 -#define B10111010 186 -#define B10111011 187 -#define B10111100 188 -#define B10111101 189 -#define B10111110 190 -#define B10111111 191 -#define B11000000 192 -#define B11000001 193 -#define B11000010 194 -#define B11000011 195 -#define B11000100 196 -#define B11000101 197 -#define B11000110 198 -#define B11000111 199 -#define B11001000 200 -#define B11001001 201 -#define B11001010 202 -#define B11001011 203 -#define B11001100 204 -#define B11001101 205 -#define B11001110 206 -#define B11001111 207 -#define B11010000 208 -#define B11010001 209 -#define B11010010 210 -#define B11010011 211 -#define B11010100 212 -#define B11010101 213 -#define B11010110 214 -#define B11010111 215 -#define B11011000 216 -#define B11011001 217 -#define B11011010 218 -#define B11011011 219 -#define B11011100 220 -#define B11011101 221 -#define B11011110 222 -#define B11011111 223 -#define B11100000 224 -#define B11100001 225 -#define B11100010 226 -#define B11100011 227 -#define B11100100 228 -#define B11100101 229 -#define B11100110 230 -#define B11100111 231 -#define B11101000 232 -#define B11101001 233 -#define B11101010 234 -#define B11101011 235 -#define B11101100 236 -#define B11101101 237 -#define B11101110 238 -#define B11101111 239 -#define B11110000 240 -#define B11110001 241 -#define B11110010 242 -#define B11110011 243 -#define B11110100 244 -#define B11110101 245 -#define B11110110 246 -#define B11110111 247 -#define B11111000 248 -#define B11111001 249 -#define B11111010 250 -#define B11111011 251 -#define B11111100 252 -#define B11111101 253 -#define B11111110 254 -#define B11111111 255 - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/main.cpp b/Marlin/Sanguino/cores/Copy of arduino/main.cpp deleted file mode 100644 index cc6e81d90..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/main.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include - -int main(void) -{ - init(); - - setup(); - - for (;;) - loop(); - - return 0; -} - diff --git a/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c b/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c deleted file mode 100644 index ccb88fe98..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.c +++ /dev/null @@ -1,200 +0,0 @@ -/* - pins_arduino.c - pin definitions for the Arduino board - Part of Arduino / Wiring Lite - - Copyright (c) 2005 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: pins_arduino.c 254 2007-04-20 23:17:38Z mellis $ -*/ - -#include -#include "wiring_private.h" -#include "pins_arduino.h" - -// On the Sanguino board, digital pins are also used -// for the analog output (software PWM). Analog input -// pins are a separate set. - -// ATMEL ATMEGA644P / SANGUINO -// -// +---\/---+ -// INT0 (D 0) PB0 1| |40 PA0 (AI 0 / D31) -// INT1 (D 1) PB1 2| |39 PA1 (AI 1 / D30) -// INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) -// PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) -// PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) -// MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) -// MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) -// SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) -// RST 9| |32 AREF -// VCC 10| |31 GND -// GND 11| |30 AVCC -// XTAL2 12| |29 PC7 (D 23) -// XTAL1 13| |28 PC6 (D 22) -// RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI -// TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO -// RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS -// TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK -// PWM (D 12) PD4 18| |23 PC1 (D 17) SDA -// PWM (D 13) PD5 19| |22 PC0 (D 16) SCL -// PWM (D 14) PD6 20| |21 PD7 (D 15) PWM -// +--------+ -// - -#define PA 1 -#define PB 2 -#define PC 3 -#define PD 4 - -// these arrays map port names (e.g. port B) to the -// appropriate addresses for various functions (e.g. reading -// and writing) -const uint8_t PROGMEM port_to_mode_PGM[] = -{ - NOT_A_PORT, - &DDRA, - &DDRB, - &DDRC, - &DDRD, -}; - -const uint8_t PROGMEM port_to_output_PGM[] = -{ - NOT_A_PORT, - &PORTA, - &PORTB, - &PORTC, - &PORTD, -}; - -const uint8_t PROGMEM port_to_input_PGM[] = -{ - NOT_A_PORT, - &PINA, - &PINB, - &PINC, - &PIND, -}; - -const uint8_t PROGMEM digital_pin_to_port_PGM[] = -{ - PB, /* 0 */ - PB, - PB, - PB, - PB, - PB, - PB, - PB, - PD, /* 8 */ - PD, - PD, - PD, - PD, - PD, - PD, - PD, - PC, /* 16 */ - PC, - PC, - PC, - PC, - PC, - PC, - PC, - PA, /* 24 */ - PA, - PA, - PA, - PA, - PA, - PA, - PA /* 31 */ -}; - -const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = -{ - _BV(0), /* 0, port B */ - _BV(1), - _BV(2), - _BV(3), - _BV(4), - _BV(5), - _BV(6), - _BV(7), - _BV(0), /* 8, port D */ - _BV(1), - _BV(2), - _BV(3), - _BV(4), - _BV(5), - _BV(6), - _BV(7), - _BV(0), /* 16, port C */ - _BV(1), - _BV(2), - _BV(3), - _BV(4), - _BV(5), - _BV(6), - _BV(7), - _BV(7), /* 24, port A */ - _BV(6), - _BV(5), - _BV(4), - _BV(3), - _BV(2), - _BV(1), - _BV(0) -}; - -const uint8_t PROGMEM digital_pin_to_timer_PGM[] = -{ - NOT_ON_TIMER, /* 0 - PB0 */ - NOT_ON_TIMER, /* 1 - PB1 */ - NOT_ON_TIMER, /* 2 - PB2 */ - TIMER0A, /* 3 - PB3 */ - TIMER0B, /* 4 - PB4 */ - NOT_ON_TIMER, /* 5 - PB5 */ - NOT_ON_TIMER, /* 6 - PB6 */ - NOT_ON_TIMER, /* 7 - PB7 */ - NOT_ON_TIMER, /* 8 - PD0 */ - NOT_ON_TIMER, /* 9 - PD1 */ - NOT_ON_TIMER, /* 10 - PD2 */ - NOT_ON_TIMER, /* 11 - PD3 */ - TIMER1B, /* 12 - PD4 */ - TIMER1A, /* 13 - PD5 */ - TIMER2B, /* 14 - PD6 */ - TIMER2A, /* 15 - PD7 */ - NOT_ON_TIMER, /* 16 - PC0 */ - NOT_ON_TIMER, /* 17 - PC1 */ - NOT_ON_TIMER, /* 18 - PC2 */ - NOT_ON_TIMER, /* 19 - PC3 */ - NOT_ON_TIMER, /* 20 - PC4 */ - NOT_ON_TIMER, /* 21 - PC5 */ - NOT_ON_TIMER, /* 22 - PC6 */ - NOT_ON_TIMER, /* 23 - PC7 */ - NOT_ON_TIMER, /* 24 - PA0 */ - NOT_ON_TIMER, /* 25 - PA1 */ - NOT_ON_TIMER, /* 26 - PA2 */ - NOT_ON_TIMER, /* 27 - PA3 */ - NOT_ON_TIMER, /* 28 - PA4 */ - NOT_ON_TIMER, /* 29 - PA5 */ - NOT_ON_TIMER, /* 30 - PA6 */ - NOT_ON_TIMER /* 31 - PA7 */ -}; diff --git a/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h b/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h deleted file mode 100644 index e0b7add86..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/pins_arduino.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - pins_arduino.h - Pin definition functions for Arduino - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2007 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.h 249 2007-02-03 16:52:51Z mellis $ -*/ - -#ifndef Pins_Arduino_h -#define Pins_Arduino_h - -#include - -#define NOT_A_PIN 0 -#define NOT_A_PORT 0 - -#define NOT_ON_TIMER 0 -#define TIMER0A 1 -#define TIMER0B 2 -#define TIMER1A 3 -#define TIMER1B 4 -#define TIMER2 5 -#define TIMER2A 6 -#define TIMER2B 7 - -extern const uint8_t PROGMEM port_to_mode_PGM[]; -extern const uint8_t PROGMEM port_to_input_PGM[]; -extern const uint8_t PROGMEM port_to_output_PGM[]; - -extern const uint8_t PROGMEM digital_pin_to_port_PGM[]; -extern const uint8_t PROGMEM digital_pin_to_bit_PGM[]; -extern const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[]; - -extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; - -// Get the bit location within the hardware port of the given virtual pin. -// This comes from the pins_*.c file for the active board configuration. -// -// These perform slightly better as macros compared to inline functions -// -#define digitalPinToPort(P) ( pgm_read_byte( digital_pin_to_port_PGM + (P) ) ) -#define digitalPinToBitMask(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM + (P) ) ) -#define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) ) -#define analogInPinToBit(P) (P) -#define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) ) -#define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) ) -#define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_mode_PGM + (P))) ) - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring.c b/Marlin/Sanguino/cores/Copy of arduino/wiring.c deleted file mode 100644 index b90d07e59..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring.c +++ /dev/null @@ -1,289 +0,0 @@ -/* - wiring.c - Partial implementation of the Wiring API for the ATmega8. - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id$ -*/ - -#include "wiring_private.h" - -// the prescaler is set so that timer0 ticks every 64 clock cycles, and the -// the overflow handler is called every 256 ticks. -#define MICROSECONDS_PER_TIMER0_OVERFLOW (clockCyclesToMicroseconds(64 * 256)) - -// the whole number of milliseconds per timer0 overflow -#define MILLIS_INC (MICROSECONDS_PER_TIMER0_OVERFLOW / 1000) - -// the fractional number of milliseconds per timer0 overflow. we shift right -// by three to fit these numbers into a byte. (for the clock speeds we care -// about - 8 and 16 MHz - this doesn't lose precision.) -#define FRACT_INC ((MICROSECONDS_PER_TIMER0_OVERFLOW % 1000) >> 3) -#define FRACT_MAX (1000 >> 3) - -volatile unsigned long timer0_overflow_count = 0; -volatile unsigned long timer0_millis = 0; -static unsigned char timer0_fract = 0; - -SIGNAL(TIMER0_OVF_vect) -{ - // copy these to local variables so they can be stored in registers - // (volatile variables must be read from memory on every access) - unsigned long m = timer0_millis; - unsigned char f = timer0_fract; - - m += MILLIS_INC; - f += FRACT_INC; - if (f >= FRACT_MAX) { - f -= FRACT_MAX; - m += 1; - } - - timer0_fract = f; - timer0_millis = m; - timer0_overflow_count++; -} - -unsigned long millis() -{ - unsigned long m; - uint8_t oldSREG = SREG; - - // disable interrupts while we read timer0_millis or we might get an - // inconsistent value (e.g. in the middle of a write to timer0_millis) - cli(); - m = timer0_millis; - SREG = oldSREG; - - return m; -} - -unsigned long micros() { - unsigned long m; - uint8_t oldSREG = SREG, t; - - cli(); - m = timer0_overflow_count; -#if defined(TCNT0) - t = TCNT0; -#elif defined(TCNT0L) - t = TCNT0L; -#else - #error TIMER 0 not defined -#endif - - -#ifdef TIFR0 - if ((TIFR0 & _BV(TOV0)) && (t < 255)) - m++; -#else - if ((TIFR & _BV(TOV0)) && (t < 255)) - m++; -#endif - - SREG = oldSREG; - - return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond()); -} - -void delay(unsigned long ms) -{ - uint16_t start = (uint16_t)micros(); - - while (ms > 0) { - if (((uint16_t)micros() - start) >= 1000) { - ms--; - start += 1000; - } - } -} - -/* Delay for the given number of microseconds. Assumes a 8 or 16 MHz clock. */ -void delayMicroseconds(unsigned int us) -{ - // calling avrlib's delay_us() function with low values (e.g. 1 or - // 2 microseconds) gives delays longer than desired. - //delay_us(us); - -#if F_CPU >= 16000000L - // for the 16 MHz clock on most Arduino boards - - // for a one-microsecond delay, simply return. the overhead - // of the function call yields a delay of approximately 1 1/8 us. - if (--us == 0) - return; - - // the following loop takes a quarter of a microsecond (4 cycles) - // per iteration, so execute it four times for each microsecond of - // delay requested. - us <<= 2; - - // account for the time taken in the preceeding commands. - us -= 2; -#else - // for the 8 MHz internal clock on the ATmega168 - - // for a one- or two-microsecond delay, simply return. the overhead of - // the function calls takes more than two microseconds. can't just - // subtract two, since us is unsigned; we'd overflow. - if (--us == 0) - return; - if (--us == 0) - return; - - // the following loop takes half of a microsecond (4 cycles) - // per iteration, so execute it twice for each microsecond of - // delay requested. - us <<= 1; - - // partially compensate for the time taken by the preceeding commands. - // we can't subtract any more than this or we'd overflow w/ small delays. - us--; -#endif - - // busy wait - __asm__ __volatile__ ( - "1: sbiw %0,1" "\n\t" // 2 cycles - "brne 1b" : "=w" (us) : "0" (us) // 2 cycles - ); -} - -void init() -{ - // this needs to be called before setup() or some functions won't - // work there - sei(); - - // on the ATmega168, timer 0 is also used for fast hardware pwm - // (using phase-correct PWM would mean that timer 0 overflowed half as often - // resulting in different millis() behavior on the ATmega8 and ATmega168) -#if defined(TCCR0A) && defined(WGM01) - sbi(TCCR0A, WGM01); - sbi(TCCR0A, WGM00); -#endif - - // set timer 0 prescale factor to 64 -#if defined(__AVR_ATmega128__) - // CPU specific: different values for the ATmega128 - sbi(TCCR0, CS02); -#elif defined(TCCR0) && defined(CS01) && defined(CS00) - // this combination is for the standard atmega8 - sbi(TCCR0, CS01); - sbi(TCCR0, CS00); -#elif defined(TCCR0B) && defined(CS01) && defined(CS00) - // this combination is for the standard 168/328/1280/2560 - sbi(TCCR0B, CS01); - sbi(TCCR0B, CS00); -#elif defined(TCCR0A) && defined(CS01) && defined(CS00) - // this combination is for the __AVR_ATmega645__ series - sbi(TCCR0A, CS01); - sbi(TCCR0A, CS00); -#else - #error Timer 0 prescale factor 64 not set correctly -#endif - - // enable timer 0 overflow interrupt -#if defined(TIMSK) && defined(TOIE0) - sbi(TIMSK, TOIE0); -#elif defined(TIMSK0) && defined(TOIE0) - sbi(TIMSK0, TOIE0); -#else - #error Timer 0 overflow interrupt not set correctly -#endif - - // timers 1 and 2 are used for phase-correct hardware pwm - // this is better for motors as it ensures an even waveform - // note, however, that fast pwm mode can achieve a frequency of up - // 8 MHz (with a 16 MHz clock) at 50% duty cycle - - TCCR1B = 0; - - // set timer 1 prescale factor to 64 -#if defined(TCCR1B) && defined(CS11) && defined(CS10) - sbi(TCCR1B, CS11); - sbi(TCCR1B, CS10); -#elif defined(TCCR1) && defined(CS11) && defined(CS10) - sbi(TCCR1, CS11); - sbi(TCCR1, CS10); -#endif - // put timer 1 in 8-bit phase correct pwm mode -#if defined(TCCR1A) && defined(WGM10) - sbi(TCCR1A, WGM10); -#elif defined(TCCR1) - #warning this needs to be finished -#endif - - // set timer 2 prescale factor to 64 -#if defined(TCCR2) && defined(CS22) - sbi(TCCR2, CS22); -#elif defined(TCCR2B) && defined(CS22) - sbi(TCCR2B, CS22); -#else - #warning Timer 2 not finished (may not be present on this CPU) -#endif - - // configure timer 2 for phase correct pwm (8-bit) -#if defined(TCCR2) && defined(WGM20) - sbi(TCCR2, WGM20); -#elif defined(TCCR2A) && defined(WGM20) - sbi(TCCR2A, WGM20); -#else - #warning Timer 2 not finished (may not be present on this CPU) -#endif - -#if defined(TCCR3B) && defined(CS31) && defined(WGM30) - sbi(TCCR3B, CS31); // set timer 3 prescale factor to 64 - sbi(TCCR3B, CS30); - sbi(TCCR3A, WGM30); // put timer 3 in 8-bit phase correct pwm mode -#endif - -#if defined(TCCR4B) && defined(CS41) && defined(WGM40) - sbi(TCCR4B, CS41); // set timer 4 prescale factor to 64 - sbi(TCCR4B, CS40); - sbi(TCCR4A, WGM40); // put timer 4 in 8-bit phase correct pwm mode -#endif - -#if defined(TCCR5B) && defined(CS51) && defined(WGM50) - sbi(TCCR5B, CS51); // set timer 5 prescale factor to 64 - sbi(TCCR5B, CS50); - sbi(TCCR5A, WGM50); // put timer 5 in 8-bit phase correct pwm mode -#endif - -#if defined(ADCSRA) - // set a2d prescale factor to 128 - // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. - // XXX: this will not work properly for other clock speeds, and - // this code should use F_CPU to determine the prescale factor. - sbi(ADCSRA, ADPS2); - sbi(ADCSRA, ADPS1); - sbi(ADCSRA, ADPS0); - - // enable a2d conversions - sbi(ADCSRA, ADEN); -#endif - - // the bootloader connects pins 0 and 1 to the USART; disconnect them - // here so they can be used as normal digital i/o; they will be - // reconnected in Serial.begin() -#if defined(UCSRB) - UCSRB = 0; -#elif defined(UCSR0B) - UCSR0B = 0; -#endif -} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring.h b/Marlin/Sanguino/cores/Copy of arduino/wiring.h deleted file mode 100644 index e29959b86..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring.h +++ /dev/null @@ -1,135 +0,0 @@ -/* - wiring.h - Partial implementation of the Wiring API for the ATmega8. - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id$ -*/ - -#ifndef Wiring_h -#define Wiring_h - -#include -#include -#include "binary.h" - -#ifdef __cplusplus -extern "C"{ -#endif - -#define HIGH 0x1 -#define LOW 0x0 - -#define INPUT 0x0 -#define OUTPUT 0x1 - -#define true 0x1 -#define false 0x0 - -#define PI 3.1415926535897932384626433832795 -#define HALF_PI 1.5707963267948966192313216916398 -#define TWO_PI 6.283185307179586476925286766559 -#define DEG_TO_RAD 0.017453292519943295769236907684886 -#define RAD_TO_DEG 57.295779513082320876798154814105 - -#define SERIAL 0x0 -#define DISPLAY 0x1 - -#define LSBFIRST 0 -#define MSBFIRST 1 - -#define CHANGE 1 -#define FALLING 2 -#define RISING 3 - -#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) -#define INTERNAL1V1 2 -#define INTERNAL2V56 3 -#else -#define INTERNAL 3 -#endif -#define DEFAULT 1 -#define EXTERNAL 0 - -// undefine stdlib's abs if encountered -#ifdef abs -#undef abs -#endif - -#define min(a,b) ((a)<(b)?(a):(b)) -#define max(a,b) ((a)>(b)?(a):(b)) -#define abs(x) ((x)>0?(x):-(x)) -#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) -#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) -#define radians(deg) ((deg)*DEG_TO_RAD) -#define degrees(rad) ((rad)*RAD_TO_DEG) -#define sq(x) ((x)*(x)) - -#define interrupts() sei() -#define noInterrupts() cli() - -#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) -#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (F_CPU / 1000L) ) -#define microsecondsToClockCycles(a) ( ((a) * (F_CPU / 1000L)) / 1000L ) - -#define lowByte(w) ((uint8_t) ((w) & 0xff)) -#define highByte(w) ((uint8_t) ((w) >> 8)) - -#define bitRead(value, bit) (((value) >> (bit)) & 0x01) -#define bitSet(value, bit) ((value) |= (1UL << (bit))) -#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) -#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) - - -typedef unsigned int word; - -#define bit(b) (1UL << (b)) - -typedef uint8_t boolean; -typedef uint8_t byte; - -void init(void); - -void pinMode(uint8_t, uint8_t); -void digitalWrite(uint8_t, uint8_t); -int digitalRead(uint8_t); -int analogRead(uint8_t); -void analogReference(uint8_t mode); -void analogWrite(uint8_t, int); - -unsigned long millis(void); -unsigned long micros(void); -void delay(unsigned long); -void delayMicroseconds(unsigned int us); -unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); - -void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); -uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); - -void attachInterrupt(uint8_t, void (*)(void), int mode); -void detachInterrupt(uint8_t); - -void setup(void); -void loop(void); - -#ifdef __cplusplus -} // extern "C" -#endif - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c deleted file mode 100644 index b98bb1a19..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring_analog.c +++ /dev/null @@ -1,116 +0,0 @@ -/* - wiring_analog.c - analog input and output - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ -*/ - -#include "wiring_private.h" -#include "pins_arduino.h" - -uint8_t analog_reference = DEFAULT; - -void analogReference(uint8_t mode) -{ - // can't actually set the register here because the default setting - // will connect AVCC and the AREF pin, which would cause a short if - // there's something connected to AREF. - analog_reference = mode; -} - -int analogRead(uint8_t pin) -{ - uint8_t low, high, ch = analogInPinToBit(pin); - - // set the analog reference (high two bits of ADMUX) and select the - // channel (low 4 bits). this also sets ADLAR (left-adjust result) - // to 0 (the default). - // the final AND is to clear the pos/neg reference bits - ADMUX = ((analog_reference << 6) | (pin & 0x0f)) & B11000111; - - // without a delay, we seem to read from the wrong channel - //delay(1); - - // start the conversion - sbi(ADCSRA, ADSC); - - // ADSC is cleared when the conversion finishes - while (bit_is_set(ADCSRA, ADSC)); - - // we have to read ADCL first; doing so locks both ADCL - // and ADCH until ADCH is read. reading ADCL second would - // cause the results of each conversion to be discarded, - // as ADCL and ADCH would be locked when it completed. - low = ADCL; - high = ADCH; - - // combine the two bytes - return (high << 8) | low; -} - -// Right now, PWM output only works on the pins with -// hardware support. These are defined in the appropriate -// pins_*.c file. For the rest of the pins, we default -// to digital output. -void analogWrite(uint8_t pin, int val) -{ - // We need to make sure the PWM output is enabled for those pins - // that support it, as we turn it off when digitally reading or - // writing with them. Also, make sure the pin is in output mode - // for consistenty with Wiring, which doesn't require a pinMode - // call for the analog output pins. - pinMode(pin, OUTPUT); - - if (digitalPinToTimer(pin) == TIMER1A) { - // connect pwm to pin on timer 1, channel A - sbi(TCCR1A, COM1A1); - // set pwm duty - OCR1A = val; - } else if (digitalPinToTimer(pin) == TIMER1B) { - // connect pwm to pin on timer 1, channel B - sbi(TCCR1A, COM1B1); - // set pwm duty - OCR1B = val; - } else if (digitalPinToTimer(pin) == TIMER0A) { - // connect pwm to pin on timer 0, channel A - sbi(TCCR0A, COM0A1); - // set pwm duty - OCR0A = val; - } else if (digitalPinToTimer(pin) == TIMER0B) { - // connect pwm to pin on timer 0, channel B - sbi(TCCR0A, COM0B1); - // set pwm duty - OCR0B = val; - } else if (digitalPinToTimer(pin) == TIMER2A) { - // connect pwm to pin on timer 2, channel A - sbi(TCCR2A, COM2A1); - // set pwm duty - OCR2A = val; - } else if (digitalPinToTimer(pin) == TIMER2B) { - // connect pwm to pin on timer 2, channel B - sbi(TCCR2A, COM2B1); - // set pwm duty - OCR2B = val; - } else if (val < 128) - //fail semi-intelligently - digitalWrite(pin, LOW); - else - digitalWrite(pin, HIGH); -} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c deleted file mode 100644 index 3d4b4ebd1..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring_digital.c +++ /dev/null @@ -1,95 +0,0 @@ -/* - wiring_digital.c - digital input and output functions - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ -*/ - -#include "wiring_private.h" -#include "pins_arduino.h" - -void pinMode(uint8_t pin, uint8_t mode) -{ - uint8_t bit = digitalPinToBitMask(pin); - uint8_t port = digitalPinToPort(pin); - volatile uint8_t *reg; - - if (port == NOT_A_PIN) return; - - // JWS: can I let the optimizer do this? - reg = portModeRegister(port); - - if (mode == INPUT) *reg &= ~bit; - else *reg |= bit; -} - -// Forcing this inline keeps the callers from having to push their own stuff -// on the stack. It is a good performance win and only takes 1 more byte per -// user than calling. (It will take more bytes on the 168.) -// -// But shouldn't this be moved into pinMode? Seems silly to check and do on -// each digitalread or write. -// -static inline void turnOffPWM(uint8_t timer) __attribute__ ((always_inline)); -static inline void turnOffPWM(uint8_t timer) -{ - if (timer == TIMER0A) cbi(TCCR0A, COM0A1); - if (timer == TIMER0B) cbi(TCCR0A, COM0B1); - if (timer == TIMER1A) cbi(TCCR1A, COM1A1); - if (timer == TIMER1B) cbi(TCCR1A, COM1B1); - if (timer == TIMER2A) cbi(TCCR2A, COM2A1); - if (timer == TIMER2B) cbi(TCCR2A, COM2B1); -} - -void digitalWrite(uint8_t pin, uint8_t val) -{ - uint8_t timer = digitalPinToTimer(pin); - uint8_t bit = digitalPinToBitMask(pin); - uint8_t port = digitalPinToPort(pin); - volatile uint8_t *out; - - if (port == NOT_A_PIN) return; - - // If the pin that support PWM output, we need to turn it off - // before doing a digital write. - if (timer != NOT_ON_TIMER) turnOffPWM(timer); - - out = portOutputRegister(port); - - if (val == LOW) *out &= ~bit; - else *out |= bit; -} - -int digitalRead(uint8_t pin) -{ - uint8_t timer = digitalPinToTimer(pin); - uint8_t bit = digitalPinToBitMask(pin); - uint8_t port = digitalPinToPort(pin); - - if (port == NOT_A_PIN) return LOW; - - // If the pin that support PWM output, we need to turn it off - // before getting a digital reading. - if (timer != NOT_ON_TIMER) turnOffPWM(timer); - - if (*portInputRegister(port) & bit) return HIGH; - - return LOW; -} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_private.h b/Marlin/Sanguino/cores/Copy of arduino/wiring_private.h deleted file mode 100644 index 14394a0b6..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring_private.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - wiring_private.h - Internal header file. - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.h 239 2007-01-12 17:58:39Z mellis $ -*/ - -#ifndef WiringPrivate_h -#define WiringPrivate_h - -#include -#include -#include -#include -#include -#include - -#include "wiring.h" - -#ifdef __cplusplus -extern "C"{ -#endif - -#ifndef cbi -#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) -#endif -#ifndef sbi -#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) -#endif - -#define EXTERNAL_INT_0 0 -#define EXTERNAL_INT_1 1 -#define EXTERNAL_INT_2 2 - -#define EXTERNAL_NUM_INTERRUPTS 3 - -typedef void (*voidFuncPtr)(void); - -#ifdef __cplusplus -} // extern "C" -#endif - -#endif diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c deleted file mode 100644 index 0d968865d..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring_pulse.c +++ /dev/null @@ -1,69 +0,0 @@ -/* - wiring_pulse.c - pulseIn() function - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ -*/ - -#include "wiring_private.h" -#include "pins_arduino.h" - -/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH - * or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds - * to 3 minutes in length, but must be called at least a few dozen microseconds - * before the start of the pulse. */ -unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout) -{ - // cache the port and bit of the pin in order to speed up the - // pulse width measuring loop and achieve finer resolution. calling - // digitalRead() instead yields much coarser resolution. - uint8_t bit = digitalPinToBitMask(pin); - uint8_t port = digitalPinToPort(pin); - uint8_t stateMask = (state ? bit : 0); - unsigned long width = 0; // keep initialization out of time critical area - - // convert the timeout from microseconds to a number of times through - // the initial loop; it takes 16 clock cycles per iteration. - unsigned long numloops = 0; - unsigned long maxloops = microsecondsToClockCycles(timeout) / 16; - - // wait for any previous pulse to end - while ((*portInputRegister(port) & bit) == stateMask) - if (numloops++ == maxloops) - return 0; - - // wait for the pulse to start - while ((*portInputRegister(port) & bit) != stateMask) - if (numloops++ == maxloops) - return 0; - - // wait for the pulse to stop - while ((*portInputRegister(port) & bit) == stateMask) { - if (numloops++ == maxloops) - return 0; - width++; - } - - // convert the reading to microseconds. The loop has been determined - // to be 20 clock cycles long and have about 16 clocks between the edge - // and the start of the loop. There will be some error introduced by - // the interrupt handlers. - return clockCyclesToMicroseconds(width * 21 + 16); -} diff --git a/Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c b/Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c deleted file mode 100644 index cfe786758..000000000 --- a/Marlin/Sanguino/cores/Copy of arduino/wiring_shift.c +++ /dev/null @@ -1,55 +0,0 @@ -/* - wiring_shift.c - shiftOut() function - Part of Arduino - http://www.arduino.cc/ - - Copyright (c) 2005-2006 David A. Mellis - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General - Public License along with this library; if not, write to the - Free Software Foundation, Inc., 59 Temple Place, Suite 330, - Boston, MA 02111-1307 USA - - $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ -*/ - -#include "wiring_private.h" - -uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder) { - uint8_t value = 0; - uint8_t i; - - for (i = 0; i < 8; ++i) { - digitalWrite(clockPin, HIGH); - if (bitOrder == LSBFIRST) - value |= digitalRead(dataPin) << i; - else - value |= digitalRead(dataPin) << (7 - i); - digitalWrite(clockPin, LOW); - } - return value; -} - -void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val) -{ - uint8_t i; - - for (i = 0; i < 8; i++) { - if (bitOrder == LSBFIRST) - digitalWrite(dataPin, !!(val & (1 << i))); - else - digitalWrite(dataPin, !!(val & (1 << (7 - i)))); - - digitalWrite(clockPin, HIGH); - digitalWrite(clockPin, LOW); - } -} diff --git a/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp b/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp index 4397efb7e..d4931b4a4 100644 --- a/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp +++ b/Marlin/Sanguino/cores/arduino/HardwareSerial.cpp @@ -37,11 +37,7 @@ // using a ring buffer (I think), in which rx_buffer_head is the index of the // location to which to write the next incoming character and rx_buffer_tail // is the index of the location from which to read. -#if (RAMEND < 1000) - #define RX_BUFFER_SIZE 32 -#else - #define RX_BUFFER_SIZE 128 -#endif +#define RX_BUFFER_SIZE 128 struct ring_buffer { @@ -50,22 +46,11 @@ struct ring_buffer int tail; }; -#if defined(UBRRH) || defined(UBRR0H) - ring_buffer rx_buffer = { { 0 }, 0, 0 }; -#endif -#if defined(UBRR1H) - ring_buffer rx_buffer1 = { { 0 }, 0, 0 }; -#endif -#if defined(UBRR2H) - ring_buffer rx_buffer2 = { { 0 }, 0, 0 }; -#endif -#if defined(UBRR3H) - ring_buffer rx_buffer3 = { { 0 }, 0, 0 }; -#endif +ring_buffer rx_buffer = { { 0 }, 0, 0 }; inline void store_char(unsigned char c, ring_buffer *rx_buffer) { - int i = (unsigned int)(rx_buffer->head + 1) % RX_BUFFER_SIZE; + int i = (unsigned int)(rx_buffer->head + 1) & (RX_BUFFER_SIZE -1); // if we should be storing the received character into the location // just before the tail (meaning that the head would advance to the @@ -77,95 +62,13 @@ inline void store_char(unsigned char c, ring_buffer *rx_buffer) } } -#if defined(USART_RX_vect) - SIGNAL(USART_RX_vect) - { - #if defined(UDR0) - unsigned char c = UDR0; - #elif defined(UDR) - unsigned char c = UDR; // atmega8535 - #else - #error UDR not defined - #endif - store_char(c, &rx_buffer); - } -#elif defined(SIG_USART0_RECV) && defined(UDR0) - SIGNAL(SIG_USART0_RECV) - { - unsigned char c = UDR0; - store_char(c, &rx_buffer); - } -#elif defined(SIG_UART0_RECV) && defined(UDR0) - SIGNAL(SIG_UART0_RECV) - { - unsigned char c = UDR0; - store_char(c, &rx_buffer); - } -//#elif defined(SIG_USART_RECV) -#elif defined(USART0_RX_vect) - // fixed by Mark Sproul this is on the 644/644p - //SIGNAL(SIG_USART_RECV) - SIGNAL(USART0_RX_vect) - { - #if defined(UDR0) - unsigned char c = UDR0; - #elif defined(UDR) - unsigned char c = UDR; // atmega8, atmega32 - #else - #error UDR not defined - #endif - store_char(c, &rx_buffer); - } -#elif defined(SIG_UART_RECV) - // this is for atmega8 - SIGNAL(SIG_UART_RECV) - { - #if defined(UDR0) - unsigned char c = UDR0; // atmega645 - #elif defined(UDR) - unsigned char c = UDR; // atmega8 - #endif - store_char(c, &rx_buffer); - } -#elif defined(USBCON) - #warning No interrupt handler for usart 0 - #warning Serial(0) is on USB interface -#else - #error No interrupt handler for usart 0 -#endif - -//#if defined(SIG_USART1_RECV) -#if defined(USART1_RX_vect) - //SIGNAL(SIG_USART1_RECV) - SIGNAL(USART1_RX_vect) - { - unsigned char c = UDR1; - store_char(c, &rx_buffer1); - } -#elif defined(SIG_USART1_RECV) - #error SIG_USART1_RECV -#endif - -#if defined(USART2_RX_vect) && defined(UDR2) - SIGNAL(USART2_RX_vect) - { - unsigned char c = UDR2; - store_char(c, &rx_buffer2); - } -#elif defined(SIG_USART2_RECV) - #error SIG_USART2_RECV -#endif - -#if defined(USART3_RX_vect) && defined(UDR3) - SIGNAL(USART3_RX_vect) - { - unsigned char c = UDR3; - store_char(c, &rx_buffer3); - } -#elif defined(SIG_USART3_RECV) - #error SIG_USART3_RECV -#endif - +// fixed by Mark Sproul this is on the 644/644p +//SIGNAL(SIG_USART_RECV) +SIGNAL(USART0_RX_vect) +{ + unsigned char c = UDR0; + store_char(c, &rx_buffer); +} // Constructors //////////////////////////////////////////////////////////////// @@ -231,7 +134,7 @@ void HardwareSerial::end() int HardwareSerial::available(void) { - return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; + return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) & (RX_BUFFER_SIZE-1); } int HardwareSerial::peek(void) @@ -250,7 +153,7 @@ int HardwareSerial::read(void) return -1; } else { unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; - _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % RX_BUFFER_SIZE; + _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) & (RX_BUFFER_SIZE-1); return c; } } @@ -278,26 +181,7 @@ void HardwareSerial::write(uint8_t c) } // Preinstantiate Objects ////////////////////////////////////////////////////// - -#if defined(UBRRH) && defined(UBRRL) - HardwareSerial Serial(&rx_buffer, &UBRRH, &UBRRL, &UCSRA, &UCSRB, &UDR, RXEN, TXEN, RXCIE, UDRE, U2X); -#elif defined(UBRR0H) && defined(UBRR0L) - HardwareSerial Serial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); -#elif defined(USBCON) - #warning no serial port defined (port 0) -#else - #error no serial port defined (port 0) -#endif - -#if defined(UBRR1H) - HardwareSerial Serial1(&rx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UDR1, RXEN1, TXEN1, RXCIE1, UDRE1, U2X1); -#endif -#if defined(UBRR2H) - HardwareSerial Serial2(&rx_buffer2, &UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UDR2, RXEN2, TXEN2, RXCIE2, UDRE2, U2X2); -#endif -#if defined(UBRR3H) - HardwareSerial Serial3(&rx_buffer3, &UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UDR3, RXEN3, TXEN3, RXCIE3, UDRE3, U2X3); -#endif +HardwareSerial Serial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); #endif // whole file diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 42064104b..b08a800f6 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -89,25 +89,50 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; static unsigned long watchmillis = 0; #endif //WATCHPERIOD +// Init min and max temp with extreme values to prevent false errors during startup #ifdef HEATER_0_MINTEMP - static int minttemp_0 = temp2analog(HEATER_0_MINTEMP); + #ifdef HEATER_0_USES_AD595 + static int minttemp_0 = 0; + #else + static int minttemp_0 = 16383; + #endif #endif //MINTEMP #ifdef HEATER_0_MAXTEMP - static int maxttemp_0 = temp2analog(HEATER_0_MAXTEMP); + #ifdef HEATER_0_USES_AD595 + static int maxttemp_0 = 0; + #else + static int maxttemp_0 = 16383; + #endif #endif //MAXTEMP #ifdef HEATER_1_MINTEMP - static int minttemp_1 = temp2analog(HEATER_1_MINTEMP); + #ifdef HEATER_1_USES_AD595 + static int minttemp_1 = 0; + #else + static int minttemp_1 = 16383; + #endif #endif //MINTEMP #ifdef HEATER_1_MAXTEMP - static int maxttemp_1 = temp2analog(HEATER_1_MAXTEMP); + #ifdef HEATER_1_USES_AD595 + static int maxttemp_1 = 0; + #else + static int maxttemp_1 = 16383; + #endif #endif //MAXTEMP #ifdef BED_MINTEMP - static int bed_minttemp = temp2analog(BED_MINTEMP); + #ifdef BED_USES_AD595 + static int bed_minttemp = 0; + #else + static int bed_minttemp = 16383; + #endif #endif //BED_MINTEMP #ifdef BED_MAXTEMP - static int bed_maxttemp = temp2analog(BED_MAXTEMP); + #ifdef BED_USES_AD595 + static int bed_maxttemp = 0; + #else + static int bed_maxttemp = 16383; + #endif #endif //BED_MAXTEMP //=========================================================================== @@ -350,6 +375,30 @@ void tp_init() // Interleave temperature interrupt with millies interrupt OCR0B = 128; TIMSK0 |= (1< Date: Sat, 19 Nov 2011 13:13:34 +0100 Subject: [PATCH 066/430] overworked cardreader for folder support; not finished yet. --- Marlin/Marlin.pde | 5 +- Marlin/SdFat.cpp | 329 ------------------------------------------ Marlin/SdFat.h | 76 ---------- Marlin/cardreader.h | 25 ++-- Marlin/cardreader.pde | 193 +++++++++++++++++-------- 5 files changed, 154 insertions(+), 474 deletions(-) delete mode 100644 Marlin/SdFat.cpp delete mode 100644 Marlin/SdFat.h diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 8dc8d0822..34d50e3c4 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -176,6 +176,7 @@ static unsigned long stoptime=0; //=============================ROUTINES============================= //=========================================================================== +void get_arc_coordinates(); extern "C"{ extern unsigned int __bss_end; @@ -588,7 +589,7 @@ inline void process_commands() starpos = (strchr(strchr_pointer + 4,'*')); if(starpos!=NULL) *(starpos-1)='\0'; - card.selectFile(strchr_pointer + 4); + card.openFile(strchr_pointer + 4,true); break; case 24: //M24 - Start SD print card.startFileprint(); @@ -613,7 +614,7 @@ inline void process_commands() strchr_pointer = strchr(npos,' ') + 1; *(starpos-1) = '\0'; } - card.startFilewrite(strchr_pointer+4); + card.openFile(strchr_pointer+4,false); break; case 29: //M29 - Stop SD write diff --git a/Marlin/SdFat.cpp b/Marlin/SdFat.cpp deleted file mode 100644 index 494fd4822..000000000 --- a/Marlin/SdFat.cpp +++ /dev/null @@ -1,329 +0,0 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#include "SdFat.h" -#include "SdFatUtil.h" -//------------------------------------------------------------------------------ -/** Change a volume's working directory to root - * - * Changes the volume's working directory to the SD's root directory. - * Optionally set the current working directory to the volume's - * working directory. - * - * \param[in] set_cwd Set the current working directory to this volume's - * working directory if true. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool SdFat::chdir(bool set_cwd) { - if (set_cwd) SdBaseFile::cwd_ = &vwd_; - vwd_.close(); - return vwd_.openRoot(&vol_); -} -//------------------------------------------------------------------------------ -/** Change a volume's working directory - * - * Changes the volume working directory to the \a path subdirectory. - * Optionally set the current working directory to the volume's - * working directory. - * - * Example: If the volume's working directory is "/DIR", chdir("SUB") - * will change the volume's working directory from "/DIR" to "/DIR/SUB". - * - * If path is "/", the volume's working directory will be changed to the - * root directory - * - * \param[in] path The name of the subdirectory. - * - * \param[in] set_cwd Set the current working directory to this volume's - * working directory if true. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool SdFat::chdir(const char *path, bool set_cwd) { - SdBaseFile dir; - if (path[0] == '/' && path[1] == '\0') return chdir(set_cwd); - if (!dir.open(&vwd_, path, O_READ)) goto fail; - if (!dir.isDir()) goto fail; - vwd_ = dir; - if (set_cwd) SdBaseFile::cwd_ = &vwd_; - return true; - - fail: - return false; -} -//------------------------------------------------------------------------------ -/** Set the current working directory to a volume's working directory. - * - * This is useful with multiple SD cards. - * - * The current working directory is changed to this volume's working directory. - * - * This is like the Windows/DOS \: command. - */ -void SdFat::chvol() { - SdBaseFile::cwd_ = &vwd_; -} -//------------------------------------------------------------------------------ -/** %Print any SD error code and halt. */ -void SdFat::errorHalt() { - errorPrint(); - while (1); -} -//------------------------------------------------------------------------------ -/** %Print msg, any SD error code, and halt. - * - * \param[in] msg Message to print. - */ -void SdFat::errorHalt(char const* msg) { - errorPrint(msg); - while (1); -} -//------------------------------------------------------------------------------ -/** %Print msg, any SD error code, and halt. - * - * \param[in] msg Message in program space (flash memory) to print. - */ -void SdFat::errorHalt_P(PGM_P msg) { - errorPrint_P(msg); - while (1); -} -//------------------------------------------------------------------------------ -/** %Print any SD error code. */ -void SdFat::errorPrint() { - if (!card_.errorCode()) return; - PgmPrint("SD errorCode: 0X"); - Serial.println(card_.errorCode(), HEX); -} -//------------------------------------------------------------------------------ -/** %Print msg, any SD error code. - * - * \param[in] msg Message to print. - */ -void SdFat::errorPrint(char const* msg) { - PgmPrint("error: "); - Serial.println(msg); - errorPrint(); -} -//------------------------------------------------------------------------------ -/** %Print msg, any SD error code. - * - * \param[in] msg Message in program space (flash memory) to print. - */ -void SdFat::errorPrint_P(PGM_P msg) { - PgmPrint("error: "); - SerialPrintln_P(msg); - errorPrint(); -} -//------------------------------------------------------------------------------ -/** - * Test for the existence of a file. - * - * \param[in] name Name of the file to be tested for. - * - * \return true if the file exists else false. - */ -bool SdFat::exists(const char* name) { - return vwd_.exists(name); -} -//------------------------------------------------------------------------------ -/** - * Initialize an SdFat object. - * - * Initializes the SD card, SD volume, and root directory. - * - * \param[in] sckRateID value for SPI SCK rate. See Sd2Card::init(). - * \param[in] chipSelectPin SD chip select pin. See Sd2Card::init(). - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool SdFat::init(uint8_t sckRateID, uint8_t chipSelectPin) { - return card_.init(sckRateID, chipSelectPin) && vol_.init(&card_) && chdir(1); -} -//------------------------------------------------------------------------------ -/** %Print error details and halt after SdFat::init() fails. */ -void SdFat::initErrorHalt() { - initErrorPrint(); - while (1); -} -//------------------------------------------------------------------------------ -/**Print message, error details, and halt after SdFat::init() fails. - * - * \param[in] msg Message to print. - */ -void SdFat::initErrorHalt(char const *msg) { - Serial.println(msg); - initErrorHalt(); -} -//------------------------------------------------------------------------------ -/**Print message, error details, and halt after SdFat::init() fails. - * - * \param[in] msg Message in program space (flash memory) to print. - */ -void SdFat::initErrorHalt_P(PGM_P msg) { - SerialPrintln_P(msg); - initErrorHalt(); -} -//------------------------------------------------------------------------------ -/** Print error details after SdFat::init() fails. */ -void SdFat::initErrorPrint() { - if (card_.errorCode()) { - PgmPrintln("Can't access SD card. Do not reformat."); - if (card_.errorCode() == SD_CARD_ERROR_CMD0) { - PgmPrintln("No card, wrong chip select pin, or SPI problem?"); - } - errorPrint(); - } else if (vol_.fatType() == 0) { - PgmPrintln("Invalid format, reformat SD."); - } else if (!vwd_.isOpen()) { - PgmPrintln("Can't open root directory."); - } else { - PgmPrintln("No error found."); - } -} -//------------------------------------------------------------------------------ -/**Print message and error details and halt after SdFat::init() fails. - * - * \param[in] msg Message to print. - */ -void SdFat::initErrorPrint(char const *msg) { - Serial.println(msg); - initErrorPrint(); -} -//------------------------------------------------------------------------------ -/**Print message and error details after SdFat::init() fails. - * - * \param[in] msg Message in program space (flash memory) to print. - */ -void SdFat::initErrorPrint_P(PGM_P msg) { - SerialPrintln_P(msg); - initErrorHalt(); -} -//------------------------------------------------------------------------------ -/** List the directory contents of the volume working directory to Serial. - * - * \param[in] flags The inclusive OR of - * - * LS_DATE - %Print file modification date - * - * LS_SIZE - %Print file size. - * - * LS_R - Recursive list of subdirectories. - */ -void SdFat::ls(uint8_t flags) { - vwd_.ls(&Serial, flags); -} -//------------------------------------------------------------------------------ -/** List the directory contents of the volume working directory to Serial. - * - * \param[in] pr Print stream for list. - * - * \param[in] flags The inclusive OR of - * - * LS_DATE - %Print file modification date - * - * LS_SIZE - %Print file size. - * - * LS_R - Recursive list of subdirectories. - */ -void SdFat::ls(Print* pr, uint8_t flags) { - vwd_.ls(pr, flags); -} -//------------------------------------------------------------------------------ -/** Make a subdirectory in the volume working directory. - * - * \param[in] path A path with a valid 8.3 DOS name for the subdirectory. - * - * \param[in] pFlag Create missing parent directories if true. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool SdFat::mkdir(const char* path, bool pFlag) { - SdBaseFile sub; - return sub.mkdir(&vwd_, path, pFlag); -} -//------------------------------------------------------------------------------ -/** Remove a file from the volume working directory. -* -* \param[in] path A path with a valid 8.3 DOS name for the file. -* -* \return The value one, true, is returned for success and -* the value zero, false, is returned for failure. -*/ -bool SdFat::remove(const char* path) { - return SdBaseFile::remove(&vwd_, path); -} -//------------------------------------------------------------------------------ -/** Rename a file or subdirectory. - * - * \param[in] oldPath Path name to the file or subdirectory to be renamed. - * - * \param[in] newPath New path name of the file or subdirectory. - * - * The \a newPath object must not exist before the rename call. - * - * The file to be renamed must not be open. The directory entry may be - * moved and file system corruption could occur if the file is accessed by - * a file object that was opened before the rename() call. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool SdFat::rename(const char *oldPath, const char *newPath) { - SdBaseFile file; - if (!file.open(oldPath, O_READ)) return false; - return file.rename(&vwd_, newPath); -} -//------------------------------------------------------------------------------ -/** Remove a subdirectory from the volume's working directory. - * - * \param[in] path A path with a valid 8.3 DOS name for the subdirectory. - * - * The subdirectory file will be removed only if it is empty. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool SdFat::rmdir(const char* path) { - SdBaseFile sub; - if (!sub.open(path, O_READ)) return false; - return sub.rmdir(); -} -//------------------------------------------------------------------------------ -/** Truncate a file to a specified length. The current file position - * will be maintained if it is less than or equal to \a length otherwise - * it will be set to end of file. - * - * \param[in] path A path with a valid 8.3 DOS name for the file. - * \param[in] length The desired length for the file. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - * Reasons for failure include file is read only, file is a directory, - * \a length is greater than the current file size or an I/O error occurs. - */ -bool SdFat::truncate(const char* path, uint32_t length) { - SdBaseFile file; - if (!file.open(path, O_WRITE)) return false; - return file.truncate(length); -} diff --git a/Marlin/SdFat.h b/Marlin/SdFat.h deleted file mode 100644 index 1a184d084..000000000 --- a/Marlin/SdFat.h +++ /dev/null @@ -1,76 +0,0 @@ -/* Arduino SdFat Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef SdFat_h -#define SdFat_h -/** - * \file - * \brief SdFat class - */ -#include "SdFile.h" -//#include -//#include -//------------------------------------------------------------------------------ -/** SdFat version YYYYMMDD */ -#define SD_FAT_VERSION 20110902 -//------------------------------------------------------------------------------ -/** - * \class SdFat - * \brief Integration class for the %SdFat library. - */ -class SdFat { - public: - SdFat() {} - /** \return a pointer to the Sd2Card object. */ - Sd2Card* card() {return &card_;} - bool chdir(bool set_cwd = false); - bool chdir(const char* path, bool set_cwd = false); - void chvol(); - void errorHalt(); - void errorHalt_P(PGM_P msg); - void errorHalt(char const *msg); - void errorPrint(); - void errorPrint_P(PGM_P msg); - void errorPrint(char const *msg); - bool exists(const char* name); - bool init(uint8_t sckRateID = SPI_FULL_SPEED, - uint8_t chipSelectPin = SD_CHIP_SELECT_PIN); - void initErrorHalt(); - void initErrorHalt(char const *msg); - void initErrorHalt_P(PGM_P msg); - void initErrorPrint(); - void initErrorPrint(char const *msg); - void initErrorPrint_P(PGM_P msg); - void ls(uint8_t flags = 0); - void ls(Print* pr, uint8_t flags = 0); - bool mkdir(const char* path, bool pFlag = true); - bool remove(const char* path); - bool rename(const char *oldPath, const char *newPath); - bool rmdir(const char* path); - bool truncate(const char* path, uint32_t length); - /** \return a pointer to the SdVolume object. */ - SdVolume* vol() {return &vol_;} - /** \return a pointer to the volume working directory. */ - SdBaseFile* vwd() {return &vwd_;} - private: - Sd2Card card_; - SdVolume vol_; - SdBaseFile vwd_; -}; -#endif // SdFat_h diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 04076bfda..d96715807 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -3,9 +3,8 @@ #ifdef SDSUPPORT - -#include "SdFat.h" - +#include "SdFile.h" +enum LsAction {LS_SerialPrint,LS_Count,LS_GetFilename}; class CardReader { public: @@ -17,20 +16,22 @@ public: //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset void checkautostart(bool x); - + void openFile(char* name,bool read); void closefile(); void release(); void startFileprint(); - void startFilewrite(char *name); + //void startFilewrite(char *name); void pauseSDPrint(); void getStatus(); - - void selectFile(char* name); + void cd(char * absolutPath); + //void selectFile(char* name); void getfilename(const uint8_t nr); - uint8_t getnrfilenames(); + uint16_t getnrfilenames(); - inline void ls() {root.ls();}; + void ls(); + void lsDive(char *prepend,SdFile parent); + inline bool eof() { return sdpos>=filesize ;}; inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; @@ -42,7 +43,7 @@ public: bool cardOK ; char filename[11]; private: - SdFile root; + SdFile root,*curDir; Sd2Card card; SdVolume volume; SdFile file; @@ -52,6 +53,10 @@ private: uint32_t sdpos ; bool autostart_stilltocheck; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. + + LsAction lsAction; //stored for recursion. + int16_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; }; diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 605af11bf..77a8f692b 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -20,6 +20,106 @@ CardReader::CardReader() autostart_atmillis=millis()+5000; } +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; +} + +// bool SdFat::chdir(bool set_cwd) { +// if (set_cwd) SdBaseFile::cwd_ = &vwd_; +// vwd_.close(); +// return vwd_.openRoot(&vol_); +// } +void CardReader::lsDive(char *prepend,SdFile parent) +{ + dir_t p; + uint8_t cnt=0; + + while (parent.readDir(p) > 0) + { + if( DIR_IS_SUBDIR(&p) && lsAction!=LS_Count && lsAction!=LS_GetFilename) + { + + char path[13*2]; + char lfilename[13]; + createFilename(lfilename,p); + + path[0]=0; + if(strlen(prepend)==0) //avoid leading / if already in prepend + { + strcat(path,"/"); + } + strcat(path,prepend); + strcat(path,lfilename); + strcat(path,"/"); + + Serial.print(path); + + SdFile dir; + if(!dir.open(parent,lfilename, O_READ)) + { + if(lsAction==LS_SerialPrint) + { + SERIAL_ECHO_START; + SERIAL_ECHOLN("Cannot open subdir"); + SERIAL_ECHOLN(lfilename); + } + } + lsDive(path,dir); + //close done automatically by destructor of SdFile + + + } + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + + + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + //if(cnt++!=nr) continue; + createFilename(filename,p); + if(lsAction==LS_SerialPrint) + { + SERIAL_PROTOCOL(prepend); + SERIAL_PROTOCOLLN(filename); + } + else if(lsAction==LS_Count) + { + nrFiles++; + } + else if(lsAction==LS_GetFilename) + { + if(cnt==nrFiles) + return; + cnt++; + + } + } +} + +void CardReader::ls() +{ + lsAction=LS_SerialPrint; + if(lsAction==LS_Count) + nrFiles=0; + + root.rewind(); + lsDive("",root); +} + + void CardReader::initsd() { cardOK = false; @@ -48,6 +148,7 @@ void CardReader::initsd() SERIAL_ECHO_START; SERIAL_ECHOLNPGM("SD card ok"); } + curDir=&root; #endif //SDSS } void CardReader::release() @@ -73,13 +174,20 @@ void CardReader::pauseSDPrint() } } -void CardReader::selectFile(char* name) + + +void CardReader::openFile(char* name,bool read) { - if(cardOK){ - sdprinting = false; - file.close(); - - if (file.open(&root, name, O_READ)) { + if(!cardOK) + return; + + + file.close(); + sdprinting = false; + if(read) + { + if (file.open(&root, name, O_READ)) + { filesize = file.fileSize(); SERIAL_PROTOCOLPGM("File opened:"); SERIAL_PROTOCOL(name); @@ -89,32 +197,27 @@ void CardReader::selectFile(char* name) SERIAL_PROTOCOLLNPGM("File selected"); } - else{ + else + { SERIAL_PROTOCOLLNPGM("file.open failed"); } } -} - -void CardReader::startFilewrite(char *name) -{ - if(cardOK) - { - - file.close(); - sdprinting = false; - + else + { //write if (!file.open(&root, name, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) { SERIAL_PROTOCOLPGM("open failed, File: "); SERIAL_PROTOCOL(name); SERIAL_PROTOCOLLNPGM("."); } - else{ + else + { saving = true; SERIAL_PROTOCOLPGM("Writing to file: "); SERIAL_PROTOCOLLN(name); } } + } void CardReader::getStatus() @@ -212,49 +315,25 @@ void CardReader::closefile() void CardReader::getfilename(const uint8_t nr) { - - dir_t p; - root.rewind(); - uint8_t cnt=0; - filename[0]='\0'; - while (root.readDir(p) > 0) - { - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - if(cnt++!=nr) continue; - //Serial.println((char*)p.name); - uint8_t writepos=0; - for (int8_t i = 0; i < 11; i++) - { - if (p.name[i] == ' ') continue; - if (i == 8) { - filename[writepos++]='.'; - } - filename[writepos++]=p.name[i]; - } - filename[writepos++]=0; - } + lsAction=LS_GetFilename; + nrFiles=nr; + curDir->rewind(); + lsDive("",*curDir); + } -uint8_t CardReader::getnrfilenames() +uint16_t CardReader::getnrfilenames() { - dir_t p; - root.rewind(); - uint8_t cnt=0; - while (root.readDir(p) > 0) - { - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - cnt++; - } - return cnt; + lsAction=LS_Count; + nrFiles=0; + curDir->rewind(); + lsDive("",*curDir); + return nrFiles; } +void CardReader::cd(char * absolutPath) +{ + +} #endif //SDSUPPORT \ No newline at end of file From 869cee74e6cdca8caccd281daf2f45cc8e1944b7 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 14:34:27 +0100 Subject: [PATCH 067/430] host-based sd card printing seems now to work with folders --- Marlin/cardreader.pde | 101 ++++++++++++++++++++++++++++++------------ 1 file changed, 72 insertions(+), 29 deletions(-) diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 77a8f692b..4c869e427 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -64,7 +64,7 @@ void CardReader::lsDive(char *prepend,SdFile parent) strcat(path,lfilename); strcat(path,"/"); - Serial.print(path); + //Serial.print(path); SdFile dir; if(!dir.open(parent,lfilename, O_READ)) @@ -81,30 +81,33 @@ void CardReader::lsDive(char *prepend,SdFile parent) } - if (p.name[0] == DIR_NAME_FREE) break; - if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; - if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; - - - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; - //if(cnt++!=nr) continue; - createFilename(filename,p); - if(lsAction==LS_SerialPrint) + else { - SERIAL_PROTOCOL(prepend); - SERIAL_PROTOCOLLN(filename); - } - else if(lsAction==LS_Count) - { - nrFiles++; - } - else if(lsAction==LS_GetFilename) - { - if(cnt==nrFiles) - return; - cnt++; + if (p.name[0] == DIR_NAME_FREE) break; + if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + //if(cnt++!=nr) continue; + createFilename(filename,p); + if(lsAction==LS_SerialPrint) + { + SERIAL_PROTOCOL(prepend); + SERIAL_PROTOCOLLN(filename); + } + else if(lsAction==LS_Count) + { + nrFiles++; + } + else if(lsAction==LS_GetFilename) + { + if(cnt==nrFiles) + return; + cnt++; + + } } } } @@ -180,17 +183,57 @@ void CardReader::openFile(char* name,bool read) { if(!cardOK) return; - - file.close(); sdprinting = false; + + + SdFile myDir; + curDir=&root; + char *fname=name; + + char *dirname_start,*dirname_end; + dirname_start=strchr(name,'/')+1; + while(dirname_start!=NULL) + { + dirname_end=strchr(dirname_start,'/'); + //SERIAL_ECHO("start:");SERIAL_ECHOLN((int)(dirname_start-name)); + //SERIAL_ECHO("end :");SERIAL_ECHOLN((int)(dirname_end-name)); + if(dirname_end!=NULL && dirname_end>dirname_start) + { + char subdirname[13]; + strncpy(subdirname, dirname_start, dirname_end-dirname_start); + subdirname[dirname_end-dirname_start]=0; + SERIAL_ECHOLN(subdirname); + if(!myDir.open(curDir,subdirname,O_READ)) + { + SERIAL_PROTOCOLPGM("open failed, File: "); + SERIAL_PROTOCOL(subdirname); + SERIAL_PROTOCOLLNPGM("."); + return; + } + else + SERIAL_ECHOLN("dive ok"); + + curDir=&myDir; + dirname_start=dirname_end+1; + } + else // the reminder after all /fsa/fdsa/ is the filename + { + fname=dirname_start; + //SERIAL_ECHOLN("remaider"); + //SERIAL_ECHOLN(fname); + break; + } + + } + if(read) { - if (file.open(&root, name, O_READ)) + if (file.open(curDir, fname, O_READ)) { filesize = file.fileSize(); SERIAL_PROTOCOLPGM("File opened:"); - SERIAL_PROTOCOL(name); + SERIAL_PROTOCOL(fname); SERIAL_PROTOCOLPGM(" Size:"); SERIAL_PROTOCOLLN(filesize); sdpos = 0; @@ -204,10 +247,10 @@ void CardReader::openFile(char* name,bool read) } else { //write - if (!file.open(&root, name, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) + if (!file.open(curDir, fname, O_CREAT | O_APPEND | O_WRITE | O_TRUNC)) { SERIAL_PROTOCOLPGM("open failed, File: "); - SERIAL_PROTOCOL(name); + SERIAL_PROTOCOL(fname); SERIAL_PROTOCOLLNPGM("."); } else From 70650c331da1fca53eafc5616dabdb4e9c4a6693 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 14:50:31 +0100 Subject: [PATCH 068/430] corrected the ultimaker default values, the previous had a calculation error: see: http://groups.google.com/group/ultimaker/browse_thread/thread/91906788639703cf --- Marlin/Configuration.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 9bcddc872..800bb9b32 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -204,7 +204,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {79.87220447,79.87220447,200*8/3,760*1.1} // default steps per unit for ultimaker +#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker //#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 200000} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. @@ -274,7 +274,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define ULTIPANEL #ifdef ULTIPANEL -// #define NEWPANEL //enable this if you have a click-encoder panel + //#define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT #define ULTRA_LCD #define LCD_WIDTH 20 From f0154de5b3d1fea9d9ca62265c739e039576249c Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 15:36:49 +0100 Subject: [PATCH 069/430] found bug that disabled printing from root. --- Marlin/cardreader.pde | 64 +++++++++++++++++++++++-------------------- 1 file changed, 34 insertions(+), 30 deletions(-) diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 4c869e427..2771668a4 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -192,41 +192,43 @@ void CardReader::openFile(char* name,bool read) char *fname=name; char *dirname_start,*dirname_end; - dirname_start=strchr(name,'/')+1; - while(dirname_start!=NULL) + if(name[0]=='/') { - dirname_end=strchr(dirname_start,'/'); - //SERIAL_ECHO("start:");SERIAL_ECHOLN((int)(dirname_start-name)); - //SERIAL_ECHO("end :");SERIAL_ECHOLN((int)(dirname_end-name)); - if(dirname_end!=NULL && dirname_end>dirname_start) + dirname_start=strchr(name,'/')+1; + while(dirname_start>0) { - char subdirname[13]; - strncpy(subdirname, dirname_start, dirname_end-dirname_start); - subdirname[dirname_end-dirname_start]=0; - SERIAL_ECHOLN(subdirname); - if(!myDir.open(curDir,subdirname,O_READ)) + dirname_end=strchr(dirname_start,'/'); + //SERIAL_ECHO("start:");SERIAL_ECHOLN((int)(dirname_start-name)); + //SERIAL_ECHO("end :");SERIAL_ECHOLN((int)(dirname_end-name)); + if(dirname_end>0 && dirname_end>dirname_start) { - SERIAL_PROTOCOLPGM("open failed, File: "); - SERIAL_PROTOCOL(subdirname); - SERIAL_PROTOCOLLNPGM("."); - return; + char subdirname[13]; + strncpy(subdirname, dirname_start, dirname_end-dirname_start); + subdirname[dirname_end-dirname_start]=0; + SERIAL_ECHOLN(subdirname); + if(!myDir.open(curDir,subdirname,O_READ)) + { + SERIAL_PROTOCOLPGM("open failed, File: "); + SERIAL_PROTOCOL(subdirname); + SERIAL_PROTOCOLLNPGM("."); + return; + } + else + ;//SERIAL_ECHOLN("dive ok"); + + curDir=&myDir; + dirname_start=dirname_end+1; } - else - SERIAL_ECHOLN("dive ok"); - - curDir=&myDir; - dirname_start=dirname_end+1; + else // the reminder after all /fsa/fdsa/ is the filename + { + fname=dirname_start; + //SERIAL_ECHOLN("remaider"); + //SERIAL_ECHOLN(fname); + break; + } + } - else // the reminder after all /fsa/fdsa/ is the filename - { - fname=dirname_start; - //SERIAL_ECHOLN("remaider"); - //SERIAL_ECHOLN(fname); - break; - } - } - if(read) { if (file.open(curDir, fname, O_READ)) @@ -242,7 +244,9 @@ void CardReader::openFile(char* name,bool read) } else { - SERIAL_PROTOCOLLNPGM("file.open failed"); + SERIAL_PROTOCOLPGM("open failed, File: "); + SERIAL_PROTOCOL(fname); + SERIAL_PROTOCOLLNPGM("."); } } else From 8a08b8e07e0bd84c1778eca7f3f32fafff5c3af5 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 15:37:10 +0100 Subject: [PATCH 070/430] trying to get autotemp to work. --- Marlin/Marlin.pde | 10 ++++++++++ Marlin/planner.cpp | 20 +++++++++++++------- Marlin/planner.h | 8 +++++++- 3 files changed, 30 insertions(+), 8 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 34d50e3c4..c0fc8675c 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -695,7 +695,17 @@ inline void process_commands() case 109: {// M109 - Wait for extruder heater to reach target. LCD_MESSAGEPGM("Heating..."); + autotemp_enabled=false; if (code_seen('S')) setTargetHotend0(code_value()); + #ifdef AUTOTEMP + if (code_seen('S')) autotemp_min=code_value(); + if (code_seen('T')) autotemp_max=code_value(); + if (code_seen('F')) + { + autotemp_factor=code_value(); + autotemp_enabled=true; + } + #endif setWatch(); codenum = millis(); diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index c27d58601..0a226c66f 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -87,7 +87,10 @@ static float previous_speed[4]; // Speed of previous path line segment static float previous_nominal_speed; // Nominal speed of previous path line segment #ifdef AUTOTEMP -float high_e_speed=0; + float autotemp_max=250; + float autotemp_min=210; + float autotemp_factor=1; + bool autotemp_enabled=false; #endif @@ -379,26 +382,29 @@ block_t *plan_get_current_block() { #ifdef AUTOTEMP void getHighESpeed() { - if(degTargetHotend0()+2high) { high=se; } block_index = (block_index+1) & (BLOCK_BUFFER_SIZE - 1); } - high_e_speed=high*axis_steps_per_unit[E_AXIS]/(1000000.0); //so it is independent of the esteps/mm. before - float g=AUTOTEMP_MIN+high_e_speed*AUTOTEMP_FACTOR; - float t=constrain(AUTOTEMP_MIN,g,AUTOTEMP_MAX); + float g=autotemp_min+high*autotemp_factor; + float t=constrain(autotemp_min,g,autotemp_max); setTargetHotend0(t); SERIAL_ECHO_START; - SERIAL_ECHOPAIR("highe",high_e_speed); + SERIAL_ECHOPAIR("highe",high); SERIAL_ECHOPAIR(" t",t); SERIAL_ECHOLN(""); } diff --git a/Marlin/planner.h b/Marlin/planner.h index be1587d6b..ec497d506 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -92,7 +92,13 @@ extern float max_xy_jerk; //speed than can be stopped at once, if i understand c extern float max_z_jerk; extern float mintravelfeedrate; extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; + + #ifdef AUTOTEMP -extern float high_e_speed; + extern bool autotemp_enabled; + extern float autotemp_max; + extern float autotemp_min; + extern float autotemp_factor; #endif + #endif From 6841a10446f27ab18e573d1d5b5e6e0da7566552 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 19 Nov 2011 16:16:26 +0100 Subject: [PATCH 071/430] Fixed max/min temperature bug --- Marlin/temperature.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index b08a800f6..857814732 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -99,9 +99,9 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; #endif //MINTEMP #ifdef HEATER_0_MAXTEMP #ifdef HEATER_0_USES_AD595 - static int maxttemp_0 = 0; - #else static int maxttemp_0 = 16383; + #else + static int maxttemp_0 = 0; #endif #endif //MAXTEMP @@ -114,9 +114,9 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; #endif //MINTEMP #ifdef HEATER_1_MAXTEMP #ifdef HEATER_1_USES_AD595 - static int maxttemp_1 = 0; - #else static int maxttemp_1 = 16383; + #else + static int maxttemp_1 = 0; #endif #endif //MAXTEMP @@ -129,9 +129,9 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; #endif //BED_MINTEMP #ifdef BED_MAXTEMP #ifdef BED_USES_AD595 - static int bed_maxttemp = 0; - #else static int bed_maxttemp = 16383; + #else + static int bed_maxttemp = 0; #endif #endif //BED_MAXTEMP @@ -377,7 +377,7 @@ void tp_init() TIMSK0 |= (1< Date: Sat, 19 Nov 2011 17:07:44 +0100 Subject: [PATCH 072/430] autotemp working, default=disabled. --- Marlin/Configuration.h | 7 +++---- Marlin/planner.cpp | 20 +++++++++++++++----- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 800bb9b32..f9a136702 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -297,11 +297,10 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //automatic temperature: just for testing, this is very dangerous, keep disabled! // not working yet. -//Erik: the settings currently depend dramatically on skeinforge39 or 41. //#define AUTOTEMP -#define AUTOTEMP_MIN 190 -#define AUTOTEMP_MAX 260 -#define AUTOTEMP_FACTOR 1000. //current target temperature= min+largest buffered espeeds)*FACTOR +#ifdef AUTOTEMP + #define AUTOTEMP_OLDWEIGHT 0.98 +#endif const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 0a226c66f..b7f98b6d1 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -382,6 +382,7 @@ block_t *plan_get_current_block() { #ifdef AUTOTEMP void getHighESpeed() { + static float oldt=0; if(!autotemp_enabled) return; if(degTargetHotend0()+2autotemp_max) + t=autotemp_max; + if(oldt>t) + { + t=AUTOTEMP_OLDWEIGHT*oldt+(1-AUTOTEMP_OLDWEIGHT)*t; + } + oldt=t; setTargetHotend0(t); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR("highe",high); - SERIAL_ECHOPAIR(" t",t); - SERIAL_ECHOLN(""); +// SERIAL_ECHO_START; +// SERIAL_ECHOPAIR("highe",high); +// SERIAL_ECHOPAIR(" t",t); +// SERIAL_ECHOLN(""); } #endif From 2a6afee83292e5b741cb99ca4b7b30b7acfe7529 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 17:09:33 +0100 Subject: [PATCH 073/430] make it compile without autotemp --- Marlin/Marlin.pde | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c0fc8675c..f619854da 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -694,8 +694,10 @@ inline void process_commands() break; case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGEPGM("Heating..."); - autotemp_enabled=false; + LCD_MESSAGEPGM("Heating..."); + #ifdef AUTOTEMP + autotemp_enabled=false; + #endif if (code_seen('S')) setTargetHotend0(code_value()); #ifdef AUTOTEMP if (code_seen('S')) autotemp_min=code_value(); From 537b5c155dd0e35080528bcaba088d0d177aa2bd Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 19 Nov 2011 17:23:28 +0100 Subject: [PATCH 074/430] Fixed arc flowrate. --- Marlin/motion_control.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index c2fce52c7..ff3f8c2f2 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -123,7 +123,7 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 arc_target[axis_1] = center_axis1 + r_axis1; arc_target[axis_linear] += linear_per_segment; arc_target[E_AXIS] += extruder_per_segment; - plan_buffer_line(arc_target[X_AXIS], arc_target[Y_AXIS], arc_target[Z_AXIS], target[E_AXIS], feed_rate); + plan_buffer_line(arc_target[X_AXIS], arc_target[Y_AXIS], arc_target[Z_AXIS], arc_target[E_AXIS], feed_rate); } // Ensure last segment arrives at target location. From 7a2d1f5aeb85225a7d71e8b95982e36c5fb17722 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 18:22:22 +0100 Subject: [PATCH 075/430] add M17, so the enable stepper button works in repg. --- Marlin/Marlin.pde | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index f619854da..021a921f7 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -70,6 +70,8 @@ // M114 - Display current position //Custom M Codes +// M17 - Enable/Power all stepper motors +// M18 - Disaable all stepper motors; same as M84 // M20 - List SD card // M21 - Init SD card // M22 - Release SD card @@ -569,6 +571,13 @@ inline void process_commands() switch( (int)code_value() ) { + case 17: + LCD_MESSAGEPGM("No move."); + enable_x(); + enable_y(); + enable_z(); + enable_e(); + break; #ifdef SDSUPPORT case 20: // M20 - list SD card From 5ad1d19384ba3ea8a1e6c33babc63de1d28acf31 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 20:18:54 +0100 Subject: [PATCH 076/430] make it compile without sd_support --- Marlin/cardreader.h | 14 +++++++------- Marlin/cardreader.pde | 6 +----- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index d96715807..653f59452 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -20,17 +20,15 @@ public: void closefile(); void release(); void startFileprint(); - //void startFilewrite(char *name); void pauseSDPrint(); void getStatus(); - void cd(char * absolutPath); - //void selectFile(char* name); + void getfilename(const uint8_t nr); uint16_t getnrfilenames(); void ls(); - void lsDive(char *prepend,SdFile parent); + inline bool eof() { return sdpos>=filesize ;}; inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; @@ -57,10 +55,13 @@ private: LsAction lsAction; //stored for recursion. int16_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(char *prepend,SdFile parent); }; #else + +#define dir_t bool class CardReader { public: @@ -71,6 +72,7 @@ public: inline static void checkautostart(bool x) {}; + inline static void openFile(char* name,bool read){}; inline static void closefile() {}; inline static void release(){}; inline static void startFileprint(){}; @@ -87,9 +89,7 @@ public: inline static bool eof() {return true;}; inline static char get() {return 0;}; inline static void setIndex(){}; + inline uint8_t percentDone(){return 0;}; }; #endif //SDSUPPORT - - - #endif \ No newline at end of file diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 2771668a4..bab87834e 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -1,5 +1,5 @@ -#ifdef SDSUPPORT #include "cardreader.h" +#ifdef SDSUPPORT CardReader::CardReader() { @@ -378,9 +378,5 @@ uint16_t CardReader::getnrfilenames() return nrFiles; } -void CardReader::cd(char * absolutPath) -{ - -} #endif //SDSUPPORT \ No newline at end of file From 8a1e719a3fd064c0ac0e64ce22d7e6fcd797d342 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 20:52:43 +0100 Subject: [PATCH 077/430] overworked config file --- Marlin/Configuration.h | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f9a136702..31884782d 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -90,6 +90,9 @@ #define PIDTEMP #ifdef PIDTEMP + #if MOTHERBOARD == 62 + #error Sanguinololu does not support PID, sorry. Please disable it. + #endif //#define PID_DEBUG // Sends debug data to the serial port. //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % @@ -195,7 +198,6 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -//note: on bernhards ultimaker 200 200 12 are working well. #define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) #define AXIS_RELATIVE_MODES {false, false, false, false} @@ -205,7 +207,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the // default settings #define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker -//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} +//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} //sells mendel with v9 extruder #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 200000} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. @@ -239,7 +241,8 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define EEPROM_CHITCHAT -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// The hardware watchdog should halt the Microcontroller, in case the firmware gets stuck somewhere. However: +// the Watchdog is not working well, so please only enable this for testing // this enables the watchdog interrupt. //#define USE_WATCHDOG //#ifdef USE_WATCHDOG @@ -272,7 +275,7 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the //#define ULTRA_LCD //general lcd support, also 16x2 //#define SDSUPPORT // Enable SD Card Support in Hardware Console -#define ULTIPANEL +//#define ULTIPANEL #ifdef ULTIPANEL //#define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT @@ -295,8 +298,13 @@ const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the #define N_ARC_CORRECTION 25 -//automatic temperature: just for testing, this is very dangerous, keep disabled! -// not working yet. +//automatic temperature: The hot end target temperature is calculated by all the buffered lines of gcode. +//The maximum buffered steps/sec of the extruder motor are called "se". +//You enter the autotemp mode by a M109 S T F +// the target temperature is set to mintemp+factor*se[steps/sec] and limited by mintemp and maxtemp +// you exit the value by any M109 without F* +// Also, if the temperature is set to a value Date: Sat, 19 Nov 2011 21:01:07 +0100 Subject: [PATCH 078/430] update mcode documentation --- Marlin/Marlin.pde | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 021a921f7..d942047b7 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -71,7 +71,7 @@ //Custom M Codes // M17 - Enable/Power all stepper motors -// M18 - Disaable all stepper motors; same as M84 +// M18 - Disable all stepper motors; same as M84 // M20 - List SD card // M21 - Init SD card // M22 - Release SD card @@ -92,7 +92,9 @@ // or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. // M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) // M92 - Set axis_steps_per_unit - same syntax as G92 +// M114 - Output current position to serial port // M115 - Capabilities string +// M119 - Output Endstop status to serial port // M140 - Set bed target temp // M190 - Wait for bed current temp to reach target temp. // M200 - Set filament diameter From 915ef2d4a136df67f468917c725d032919e189d4 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 19 Nov 2011 21:32:47 +0100 Subject: [PATCH 079/430] Added software endstops --- Marlin/Marlin.pde | 12 ++++++++++++ Marlin/planner.h | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index f619854da..aee00ac4a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1024,6 +1024,18 @@ inline void get_arc_coordinates() void prepare_move() { + if (min_software_endstops) { + if (destination[X_AXIS] < 0) destination[X_AXIS] = 0.0; + if (destination[Y_AXIS] < 0) destination[Y_AXIS] = 0.0; + if (destination[Z_AXIS] < 0) destination[Z_AXIS] = 0.0; + } + + if (max_software_endstops) { + if (destination[X_AXIS] > X_MAX_LENGTH) destination[X_AXIS] = X_MAX_LENGTH; + if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH; + if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; + } + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0); for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; diff --git a/Marlin/planner.h b/Marlin/planner.h index ec497d506..52a6fba81 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -31,7 +31,7 @@ typedef struct { // Fields used by the bresenham algorithm for tracing the line long steps_x, steps_y, steps_z, steps_e; // Step count along each axis - long step_event_count; // The number of step events required to complete this block + unsigned long step_event_count; // The number of step events required to complete this block long accelerate_until; // The index of the step event on which to stop acceleration long decelerate_after; // The index of the step event on which to start decelerating long acceleration_rate; // The acceleration rate used for acceleration calculation From 61e0740bf03523b861915f5d272851999e934b20 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sat, 19 Nov 2011 22:04:37 +0100 Subject: [PATCH 080/430] overworked readme --- README.md | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 117 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 699ebdd64..e79c142d2 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,9 @@ This RepRap firmware is a mashup between T F you enter the autotemp mode. +You can leave it by calling M109 without any F. +If active, the maximal extruder stepper rate of all buffered moves will be calculated, and named "maxerate" [steps/sec]. +The wanted temperature then will be set to t=tempmin+factor*maxerate, while being limited between tempmin and tempmax. +If the target temperature is set manually or by gcode to a value less then tempmin, it will be kept without change. +Ideally, your gcode can be completely free of temperature controls, apart from a M109 S T F in the start.gcode, and a M109 S0 in the end.gcode. + +EEPROM: +If you know your PID values, the acceleration and max-velocities of your unique machine, you can set them, and finally store them in the EEPROM. +After each reboot, it will magically load them from EEPROM, independent what your Configuration.h says. + +LCD Menu: +If your hardware supports it, you can build yourself a LCD-CardReader+Click+encoder combination. It will enable you to realtime tune temperatures, +accelerations, velocities, flow rates, select and print files from the SD card, preheat, disable the steppers, and do other fancy stuff. +One working hardware is documented here: http://www.thingiverse.com/thing:12663 +Also, with just a 20x4 or 16x2 display, useful data is shown. + +SD card folders: +If you have an SD card reader attached to your controller, also folders work now. Listing the files in pronterface will show "/path/subpath/file.g". +You can write to file in a subfolder by specifying a similar text using small letters in the path. +Also, backup copies of various operating systems are hidden, as well as files not ending with ".g". + +Endstop trigger reporting: +If an endstop is hit while moving towards the endstop, the location at which the firmware thinks that the endstop was triggered is outputed on the serial port. +This is useful, because the user gets a warning message. +However, also tools like QTMarlin can use this for finding acceptable combinations of velocity+acceleration. + +Coding paradigm: +Not relevant from a user side, but Marlin was split into thematic junks, and has tried to partially enforced private variables. +This is intended to make it clearer, what interacts which what, and leads to a higher level of modularization. +We think that this is a useful prestep for porting this firmware to e.g. an ARM platform in the future. +A lot of RAM (with enabled LCD ~2200 bytes) was saved by storing char []="some message" in Program memory. +In the serial communication, a #define based level of abstraction was enforced, so that it is clear that +some transfer is information (usually beginning with "echo:"), an error "error:", or just normal protocol, +necessary for backwards compatibility. + +Interrupt based temperature measurements: +An interrupt is used to manage ADC conversions, and enforce checking for critical temperatures. +This leads to less blocking in the heater management routine. + +======================================================================================== +Non-standard M-Codes, different to an old version of sprinter: + +G2 - CW ARC +G3 - CCW ARC + +General: +M17 - Enable/Power all stepper motors +M18 - Disable all stepper motors; same as M84 +M30 - Print time since last M109 or SD card start to serial +M42 - Change pin status via gcode +M80 - Turn on Power Supply +M81 - Turn off Power Supply +M114 - Output current position to serial port +M119 - Output Endstop status to serial port +Movement variables: +M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +M220 - set build speed factor override percentage S:factor in percent ; aka "realtime tuneing in the gcode" +M301 - Set PID parameters P I and D +M400 - Finish all moves + +Advance: +M200 - Set filament diameter for advance +M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + +EEPROM: +M500 - stores paramters in EEPROM +M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +======================================================================================== + + Configuring and compilation -Install the latest arduino software IDE/toolset (currently 0022) +Install the arduino software IDE/toolset v22 http://www.arduino.cc/en/Main/Software Install Ultimaker's RepG 25 build http://software.ultimaker.com -(or alternatively install Kliment's printrun/pronterface https://github.com/kliment/Printrun_) +For SD handling and as better substitute (apart from stl manipulation) download +the very nice Kliment's printrun/pronterface https://github.com/kliment/Printrun Copy the Ultimaker Marlin firmware - https:/github.com/bkubicek/Marlin + https://github.com/ErikZalm/Marlin/tree/Marlin_v1 (Use the download button) Start the arduino IDE. -Select Tools -> Board -> Arduino Mega 2560 +Select Tools -> Board -> Arduino Mega 2560 or your microcontroller Select the correct serial port in Tools ->Serial Port Open Marlin.pde From 827cd7270378102c7c1ce7ecbb8a41fcd6fa0ed4 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 09:00:19 +0100 Subject: [PATCH 081/430] format readme. --- README.md | 61 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 35 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index e79c142d2..83bf8093f 100644 --- a/README.md +++ b/README.md @@ -14,26 +14,26 @@ Lampmaker, Bradley Feldman, and others... Features: - - Interrupt based movement with real linear acceleration - - High steprate - - Look ahead (Keep the speed high when possible. High cornering speed) - - Interrupt based temperature protection - - preliminary support for Matthew Roberts advance algorithm - For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - - Full endstop support - - SD Card support - - SD Card folders (works in pronterface) - - LCD support (ideally 20x4) - - LCD menu system for autonomous SD card printing, controlled by an click-encoder. - - EEPROM storage of e.g. max-velocity, max-acceleration, and similar variables - - many small but handy things originating from bkubicek's fork. - - Arc support - - Temperature oversampling - - Dynamic Temperature setpointing aka "AutoTemp" - - Support for QTMarlin, a very beta GUI for PID-tuning and velocity-acceleration testing. https://github.com/bkubicek/QTMarlin - - Endstop trigger reporting to the host software. - - Updated sdcardlib - - Heater power reporting. Useful for PID monitoring. +* Interrupt based movement with real linear acceleration +* High steprate +* Look ahead (Keep the speed high when possible. High cornering speed) +* Interrupt based temperature protection +* preliminary support for Matthew Roberts advance algorithm +* For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html +* Full endstop support +* SD Card support +* SD Card folders (works in pronterface) +* LCD support (ideally 20x4) +* LCD menu system for autonomous SD card printing, controlled by an click-encoder. +* EEPROM storage of e.g. max-velocity, max-acceleration, and similar variables +* many small but handy things originating from bkubicek's fork. +* Arc support +* Temperature oversampling +* Dynamic Temperature setpointing aka "AutoTemp" +* Support for QTMarlin, a very beta GUI for PID-tuning and velocity-acceleration testing. https://github.com/bkubicek/QTMarlin +* Endstop trigger reporting to the host software. +* Updated sdcardlib +* Heater power reporting. Useful for PID monitoring. This firmware is optimized for Ultimaker's gen6 electronics (including the Ultimaker 1.5.x daughterboard and Arduino Mega 2560). @@ -42,15 +42,18 @@ The default baudrate is 250000. This baudrate has less jitter and hence errors t ======================================================================================== Differences and additions to the already good Sprinter firmware: +================================================================ Look-ahead: +----------- Marlin has look-ahead. While sprinter has to break and re-accelerate at each corner, lookahead will only decelerate and accelerate to a velocity, so that the change in vectorial velocity magnitude is less than the xy_jerk_velocity. This is only possible, if some future moves are already processed, hence the name. It leads to less over-deposition at corners, especially at flat angles. -Arc support: +Arc support: +------------ Splic3r can find curves that, although broken into segments, were ment to describe an arc. Marlin is able to print those arcs. The advantage is the firmware can choose the resolution, and can perform the arc with nearly constant velocity, resulting in a nice finish. @@ -60,10 +63,12 @@ Temperature Oversampling: To reduce noise and make the PID-differential term more useful, 16 ADC conversion results are averaged. AutoTemp: +--------- If your gcode contains a wide spread of extruder velocities, or you realtime change the building speed, the temperature should be changed accordingly. Usually, higher speed requires higher temperature. This can now be performed by the AutoTemp function By calling M109 S T F you enter the autotemp mode. + You can leave it by calling M109 without any F. If active, the maximal extruder stepper rate of all buffered moves will be calculated, and named "maxerate" [steps/sec]. The wanted temperature then will be set to t=tempmin+factor*maxerate, while being limited between tempmin and tempmax. @@ -71,26 +76,31 @@ If the target temperature is set manually or by gcode to a value less then tempm Ideally, your gcode can be completely free of temperature controls, apart from a M109 S T F in the start.gcode, and a M109 S0 in the end.gcode. EEPROM: +------- If you know your PID values, the acceleration and max-velocities of your unique machine, you can set them, and finally store them in the EEPROM. After each reboot, it will magically load them from EEPROM, independent what your Configuration.h says. LCD Menu: +--------- If your hardware supports it, you can build yourself a LCD-CardReader+Click+encoder combination. It will enable you to realtime tune temperatures, accelerations, velocities, flow rates, select and print files from the SD card, preheat, disable the steppers, and do other fancy stuff. One working hardware is documented here: http://www.thingiverse.com/thing:12663 Also, with just a 20x4 or 16x2 display, useful data is shown. SD card folders: +---------------- If you have an SD card reader attached to your controller, also folders work now. Listing the files in pronterface will show "/path/subpath/file.g". You can write to file in a subfolder by specifying a similar text using small letters in the path. Also, backup copies of various operating systems are hidden, as well as files not ending with ".g". Endstop trigger reporting: +-------------------------- If an endstop is hit while moving towards the endstop, the location at which the firmware thinks that the endstop was triggered is outputed on the serial port. This is useful, because the user gets a warning message. However, also tools like QTMarlin can use this for finding acceptable combinations of velocity+acceleration. Coding paradigm: +---------------- Not relevant from a user side, but Marlin was split into thematic junks, and has tried to partially enforced private variables. This is intended to make it clearer, what interacts which what, and leads to a higher level of modularization. We think that this is a useful prestep for porting this firmware to e.g. an ARM platform in the future. @@ -100,12 +110,13 @@ some transfer is information (usually beginning with "echo:"), an error "error:" necessary for backwards compatibility. Interrupt based temperature measurements: +----------------------------------------- An interrupt is used to manage ADC conversions, and enforce checking for critical temperatures. This leads to less blocking in the heater management routine. ======================================================================================== Non-standard M-Codes, different to an old version of sprinter: - +============================================================== G2 - CW ARC G3 - CCW ARC @@ -135,10 +146,8 @@ M500 - stores paramters in EEPROM M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. ======================================================================================== - - - -Configuring and compilation +Configuring and compilation: +============================ Install the arduino software IDE/toolset v22 From 4258841241d9d18e00f1f362cca90d288e6a896f Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 09:03:42 +0100 Subject: [PATCH 082/430] format --- README.md | 51 ++++++++++++++++++++++++++------------------------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 83bf8093f..5c2b44c3d 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,11 @@ -WARNING: THIS IN A PROCESS OF HEAVY OVERWORKING. + +WARNING: +-------- +THIS IN A PROCESS OF HEAVY OVERWORKING. DO NOT USE THIS ON YOUR MACHINE UNTIL FURTHER NOTICE!!! -=========================================== - +Quick Information +=================== This RepRap firmware is a mashup between Sprinter, grbl and many original parts. Derived from Sprinter and Grbl by Erik van der Zalm. @@ -14,33 +17,32 @@ Lampmaker, Bradley Feldman, and others... Features: -* Interrupt based movement with real linear acceleration -* High steprate -* Look ahead (Keep the speed high when possible. High cornering speed) -* Interrupt based temperature protection -* preliminary support for Matthew Roberts advance algorithm -* For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html -* Full endstop support -* SD Card support -* SD Card folders (works in pronterface) -* LCD support (ideally 20x4) -* LCD menu system for autonomous SD card printing, controlled by an click-encoder. -* EEPROM storage of e.g. max-velocity, max-acceleration, and similar variables -* many small but handy things originating from bkubicek's fork. -* Arc support -* Temperature oversampling -* Dynamic Temperature setpointing aka "AutoTemp" -* Support for QTMarlin, a very beta GUI for PID-tuning and velocity-acceleration testing. https://github.com/bkubicek/QTMarlin -* Endstop trigger reporting to the host software. -* Updated sdcardlib -* Heater power reporting. Useful for PID monitoring. +* Interrupt based movement with real linear acceleration +* High steprate +* Look ahead (Keep the speed high when possible. High cornering speed) +* Interrupt based temperature protection +* preliminary support for Matthew Roberts advance algorithm +* For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html +* Full endstop support +* SD Card support +* SD Card folders (works in pronterface) +* LCD support (ideally 20x4) +* LCD menu system for autonomous SD card printing, controlled by an click-encoder. +* EEPROM storage of e.g. max-velocity, max-acceleration, and similar variables +* many small but handy things originating from bkubicek's fork. +* Arc support +* Temperature oversampling +* Dynamic Temperature setpointing aka "AutoTemp" +* Support for QTMarlin, a very beta GUI for PID-tuning and velocity-acceleration testing. https://github.com/bkubicek/QTMarlin +* Endstop trigger reporting to the host software. +* Updated sdcardlib +* Heater power reporting. Useful for PID monitoring. This firmware is optimized for Ultimaker's gen6 electronics (including the Ultimaker 1.5.x daughterboard and Arduino Mega 2560). The default baudrate is 250000. This baudrate has less jitter and hence errors than the usual 115200 baud, but is less supported by drivers and host-environments. -======================================================================================== Differences and additions to the already good Sprinter firmware: ================================================================ @@ -114,7 +116,6 @@ Interrupt based temperature measurements: An interrupt is used to manage ADC conversions, and enforce checking for critical temperatures. This leads to less blocking in the heater management routine. -======================================================================================== Non-standard M-Codes, different to an old version of sprinter: ============================================================== G2 - CW ARC From 4687c56f532c99a1481af36ee26d52c47034323b Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 09:06:05 +0100 Subject: [PATCH 083/430] format --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5c2b44c3d..3a13d9207 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ Lampmaker, Bradley Feldman, and others... Features: + * Interrupt based movement with real linear acceleration * High steprate * Look ahead (Keep the speed high when possible. High cornering speed) @@ -146,7 +147,7 @@ EEPROM: M500 - stores paramters in EEPROM M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. -======================================================================================== + Configuring and compilation: ============================ From 6dba34ab0ed5b5f89b70ebe71086200606319bd8 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 09:09:11 +0100 Subject: [PATCH 084/430] even more format. --- README.md | 85 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 45 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index 3a13d9207..16c1a632f 100644 --- a/README.md +++ b/README.md @@ -47,26 +47,26 @@ The default baudrate is 250000. This baudrate has less jitter and hence errors t Differences and additions to the already good Sprinter firmware: ================================================================ -Look-ahead: ------------ +*Look-ahead:* + Marlin has look-ahead. While sprinter has to break and re-accelerate at each corner, lookahead will only decelerate and accelerate to a velocity, so that the change in vectorial velocity magnitude is less than the xy_jerk_velocity. This is only possible, if some future moves are already processed, hence the name. It leads to less over-deposition at corners, especially at flat angles. -Arc support: ------------- +*Arc support:* Splic3r can find curves that, although broken into segments, were ment to describe an arc. Marlin is able to print those arcs. The advantage is the firmware can choose the resolution, and can perform the arc with nearly constant velocity, resulting in a nice finish. Also, less serial communication is needed. -Temperature Oversampling: +*Temperature Oversampling:* + To reduce noise and make the PID-differential term more useful, 16 ADC conversion results are averaged. -AutoTemp: ---------- +*AutoTemp:* + If your gcode contains a wide spread of extruder velocities, or you realtime change the building speed, the temperature should be changed accordingly. Usually, higher speed requires higher temperature. This can now be performed by the AutoTemp function @@ -78,32 +78,32 @@ The wanted temperature then will be set to t=tempmin+factor*maxerate, while bein If the target temperature is set manually or by gcode to a value less then tempmin, it will be kept without change. Ideally, your gcode can be completely free of temperature controls, apart from a M109 S T F in the start.gcode, and a M109 S0 in the end.gcode. -EEPROM: -------- +*EEPROM:* + If you know your PID values, the acceleration and max-velocities of your unique machine, you can set them, and finally store them in the EEPROM. After each reboot, it will magically load them from EEPROM, independent what your Configuration.h says. -LCD Menu: ---------- +*LCD Menu:* + If your hardware supports it, you can build yourself a LCD-CardReader+Click+encoder combination. It will enable you to realtime tune temperatures, accelerations, velocities, flow rates, select and print files from the SD card, preheat, disable the steppers, and do other fancy stuff. One working hardware is documented here: http://www.thingiverse.com/thing:12663 Also, with just a 20x4 or 16x2 display, useful data is shown. -SD card folders: ----------------- +*SD card folders:* + If you have an SD card reader attached to your controller, also folders work now. Listing the files in pronterface will show "/path/subpath/file.g". You can write to file in a subfolder by specifying a similar text using small letters in the path. Also, backup copies of various operating systems are hidden, as well as files not ending with ".g". -Endstop trigger reporting: --------------------------- +*Endstop trigger reporting:* + If an endstop is hit while moving towards the endstop, the location at which the firmware thinks that the endstop was triggered is outputed on the serial port. This is useful, because the user gets a warning message. However, also tools like QTMarlin can use this for finding acceptable combinations of velocity+acceleration. -Coding paradigm: ----------------- +*Coding paradigm:* + Not relevant from a user side, but Marlin was split into thematic junks, and has tried to partially enforced private variables. This is intended to make it clearer, what interacts which what, and leads to a higher level of modularization. We think that this is a useful prestep for porting this firmware to e.g. an ARM platform in the future. @@ -112,41 +112,46 @@ In the serial communication, a #define based level of abstraction was enforced, some transfer is information (usually beginning with "echo:"), an error "error:", or just normal protocol, necessary for backwards compatibility. -Interrupt based temperature measurements: ------------------------------------------ +*Interrupt based temperature measurements:* + An interrupt is used to manage ADC conversions, and enforce checking for critical temperatures. This leads to less blocking in the heater management routine. + Non-standard M-Codes, different to an old version of sprinter: ============================================================== -G2 - CW ARC -G3 - CCW ARC +* G2 - CW ARC +* G3 - CCW ARC General: -M17 - Enable/Power all stepper motors -M18 - Disable all stepper motors; same as M84 -M30 - Print time since last M109 or SD card start to serial -M42 - Change pin status via gcode -M80 - Turn on Power Supply -M81 - Turn off Power Supply -M114 - Output current position to serial port -M119 - Output Endstop status to serial port + +* M17 - Enable/Power all stepper motors +* M18 - Disable all stepper motors; same as M84 +* M30 - Print time since last M109 or SD card start to serial +* M42 - Change pin status via gcode +* M80 - Turn on Power Supply +* M81 - Turn off Power Supply +* M114 - Output current position to serial port +* M119 - Output Endstop status to serial port + Movement variables: -M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! -M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec -M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate -M220 - set build speed factor override percentage S:factor in percent ; aka "realtime tuneing in the gcode" -M301 - Set PID parameters P I and D -M400 - Finish all moves + +* M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +* M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +* M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +* M220 - set build speed factor override percentage S:factor in percent ; aka "realtime tuneing in the gcode" +* M301 - Set PID parameters P I and D +* M400 - Finish all moves Advance: -M200 - Set filament diameter for advance -M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk + +* M200 - Set filament diameter for advance +* M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk EEPROM: -M500 - stores paramters in EEPROM -M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). -M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +* M500 - stores paramters in EEPROM +* M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +* M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. Configuring and compilation: ============================ From d8e7e2f72e28d2df29f3f8b23215419e21b0727b Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 11:55:06 +0100 Subject: [PATCH 085/430] more readme --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 16c1a632f..5b1ead203 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,7 @@ This is only possible, if some future moves are already processed, hence the nam It leads to less over-deposition at corners, especially at flat angles. *Arc support:* + Splic3r can find curves that, although broken into segments, were ment to describe an arc. Marlin is able to print those arcs. The advantage is the firmware can choose the resolution, and can perform the arc with nearly constant velocity, resulting in a nice finish. @@ -120,13 +121,15 @@ This leads to less blocking in the heater management routine. Non-standard M-Codes, different to an old version of sprinter: ============================================================== +Movement: + * G2 - CW ARC * G3 - CCW ARC General: -* M17 - Enable/Power all stepper motors -* M18 - Disable all stepper motors; same as M84 +* M17 - Enable/Power all stepper motors. Compatibility to ReplicatorG. +* M18 - Disable all stepper motors; same as M84.Compatibility to ReplicatorG. * M30 - Print time since last M109 or SD card start to serial * M42 - Change pin status via gcode * M80 - Turn on Power Supply @@ -139,9 +142,9 @@ Movement variables: * M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! * M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec * M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate -* M220 - set build speed factor override percentage S:factor in percent ; aka "realtime tuneing in the gcode" +* M220 - set build speed mulitplying S:factor in percent ; aka "realtime tuneing in the gcode". So you can slow down if you have islands in one height-range, and speed up otherwise. * M301 - Set PID parameters P I and D -* M400 - Finish all moves +* M400 - Finish all buffered moves. Advance: From cd2268f10a88de393a565c887c8891c7f7979a97 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 11:55:33 +0100 Subject: [PATCH 086/430] code cleanup in ultralcd. --- Marlin/ultralcd.h | 49 +++++++ Marlin/ultralcd.pde | 326 +++++++++----------------------------------- 2 files changed, 112 insertions(+), 263 deletions(-) diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 6bae43dcc..d3496bec9 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -72,6 +72,55 @@ int8_t lastlineoffset; bool linechanging; + + private: + inline void updateActiveLines(const uint8_t &maxlines,volatile int &encoderpos) + { + if(linechanging) return; // an item is changint its value, do not switch lines hence + lastlineoffset=lineoffset; + int curencoderpos=encoderpos; + force_lcd_update=false; + if( (abs(curencoderpos-lastencoderpos)(LCD_HEIGHT-1+1)*lcdslow) + { + lineoffset++; + curencoderpos=(LCD_HEIGHT-1)*lcdslow; + if(lineoffset>(maxlines+1-LCD_HEIGHT)) + lineoffset=maxlines+1-LCD_HEIGHT; + if(curencoderpos>maxlines*lcdslow) + curencoderpos=maxlines*lcdslow; + force_lcd_update=true; + } + lastencoderpos=encoderpos=curencoderpos; + activeline=curencoderpos/lcdslow; + if(activeline<0) activeline=0; + if(activeline>LCD_HEIGHT-1) activeline=LCD_HEIGHT-1; + if(activeline>maxlines) + { + activeline=maxlines; + curencoderpos=maxlines*lcdslow; + } + lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); + } + } + + inline void clearIfNecessary() + { + if(lastlineoffset!=lineoffset ||force_lcd_update) + { + force_lcd_update=true; + lcd.clear(); + } + } }; //conversion routines, could need some overworking diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index c4ea23488..aa30a3dd0 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -279,7 +279,6 @@ MainMenu::MainMenu() linechanging=false; } - void MainMenu::showStatus() { #if LCD_HEIGHT==4 @@ -426,131 +425,46 @@ void MainMenu::showStatus() enum {ItemP_exit, ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude, ItemP_disstep}; +//any action must not contain a ',' character anywhere, or this breaks: +#define MENUITEM(repaint_action, click_action) \ + {\ + if(force_lcd_update) { lcd.setCursor(0,line); repaint_action; } \ + if((activeline==line) && CLICKED) {click_action} \ + } + void MainMenu::showPrepare() { uint8_t line=0; - if(lastlineoffset!=lineoffset) - { - force_lcd_update=true; - clear(); - } + clearIfNecessary(); for(int8_t i=lineoffset;i3) - { - lineoffset++; - encoderpos=3*lcdslow; - if(lineoffset>(ItemP_disstep+1-LCD_HEIGHT)) - lineoffset=ItemP_disstep+1-LCD_HEIGHT; - force_lcd_update=true; - } - //encoderpos=encoderpos%LCD_HEIGHT; - lastencoderpos=encoderpos; - activeline=encoderpos/lcdslow; - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); - } + updateActiveLines(ItemP_disstep,encoderpos); } enum { ItemC_exit, ItemC_nozzle, @@ -563,31 +477,35 @@ enum { ItemC_aret,ItemC_esteps, ItemC_store, ItemC_load,ItemC_failsafe }; +//does not work +// #define MENUCHANGEITEM(repaint_action, enter_action, accept_action, change_action) \ +// {\ +// if(force_lcd_update) { lcd.setCursor(0,line); repaint_action; } \ +// if(activeline==line) \ +// { \ +// if(CLICKED) \ +// { \ +// linechanging=!linechanging; \ +// if(linechanging) {enter_action;} \ +// else {accept_action;} \ +// } \ +// else \ +// if(linechanging) {change_action};}\ +// } +// + + void MainMenu::showControl() { uint8_t line=0; - if((lastlineoffset!=lineoffset)||force_lcd_update) - { - force_lcd_update=true; - clear(); - } + clearIfNecessary(); for(int8_t i=lineoffset;i3) - { - lineoffset++; - encoderpos=3*lcdslow; - if(lineoffset>(ItemC_failsafe+1-LCD_HEIGHT)) - lineoffset=ItemC_failsafe+1-LCD_HEIGHT; - force_lcd_update=true; - } - //encoderpos=encoderpos%LCD_HEIGHT; - lastencoderpos=encoderpos; - activeline=encoderpos/lcdslow; - if(activeline>3) activeline=3; - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); - } + updateActiveLines(ItemC_failsafe,encoderpos); } @@ -1175,14 +1065,11 @@ void MainMenu::showSD() #ifdef SDSUPPORT uint8_t line=0; - if(lastlineoffset!=lineoffset) - { - force_lcd_update=true; - } + clearIfNecessary(); static uint8_t nrfiles=0; if(force_lcd_update) { - clear(); + clear(); if(card.cardOK) { nrfiles=card.getnrfilenames(); @@ -1192,7 +1079,6 @@ void MainMenu::showSD() nrfiles=0; lineoffset=0; } - //Serial.print("Nr files:"); Serial.println((int)nrfiles); } for(int8_t i=lineoffset;i3) - { - lineoffset++; - encoderpos=3*lcdslow; - if(lineoffset>(1+nrfiles+1-LCD_HEIGHT)) - lineoffset=1+nrfiles+1-LCD_HEIGHT; - force_lcd_update=true; - - } - lastencoderpos=encoderpos; - activeline=encoderpos; - if(activeline>3) - { - activeline=3; - } - if(activeline<0) - { - activeline=0; - } - if(activeline>1+nrfiles) activeline=1+nrfiles; - if(lineoffset>1+nrfiles) lineoffset=1+nrfiles; - lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); - - } + updateActiveLines(1+nrfiles,encoderpos); #endif } enum {ItemM_watch, ItemM_prepare, ItemM_control, ItemM_file }; void MainMenu::showMainMenu() { - //if(int(encoderpos/lcdslow)!=int(lastencoderpos/lcdslow)) - // force_lcd_update=true; + #ifndef ULTIPANEL force_lcd_update=false; #endif - //Serial.println((int)activeline); - if(force_lcd_update) - clear(); + + clearIfNecessary(); for(int8_t line=0;line=LCD_HEIGHT) - activeline=LCD_HEIGHT-1; - if((encoderpos!=lastencoderpos)||force_lcd_update) - { - lcd.setCursor(0,activeline);lcd.print(activeline?' ':' '); - if(encoderpos<0) encoderpos=0; - if(encoderpos>3*lcdslow) - encoderpos=3*lcdslow; - activeline=abs(encoderpos/lcdslow)%LCD_HEIGHT; - if(activeline<0) - activeline=0; - if(activeline>=LCD_HEIGHT) - activeline=LCD_HEIGHT-1; - lastencoderpos=encoderpos; - lcd.setCursor(0,activeline);lcd.print(activeline?'>':'\003'); - } + updateActiveLines(3,encoderpos); } void MainMenu::update() @@ -1433,20 +1235,18 @@ void MainMenu::update() if(CARDINSERTED) { card.initsd(); - lcd_status("Card inserted"); + LCD_MESSAGEPGM("Card inserted"); } else { card.release(); - lcd_status("Card removed"); + LCD_MESSAGEPGM("Card removed"); } } #endif if(status!=oldstatus) { - //Serial.println(status); - //clear(); force_lcd_update=true; encoderpos=0; lineoffset=0; From 2e43f9c80987576441f66040afd20b456ed44636 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 20 Nov 2011 13:14:58 +0100 Subject: [PATCH 087/430] Changed min max temperature code. --- Marlin/Configuration.h | 2 +- Marlin/temperature.cpp | 154 ++++++++++++++++++++--------------------- 2 files changed, 76 insertions(+), 80 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 31884782d..da5372021 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -80,7 +80,7 @@ // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // You should use MINTEMP for thermistor short/failure protection. #define HEATER_0_MAXTEMP 275 -//#define_HEATER_1_MAXTEMP 275 +//#define HEATER_1_MAXTEMP 275 //#define BED_MAXTEMP 150 diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 857814732..f5df6f617 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -90,50 +90,12 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; #endif //WATCHPERIOD // Init min and max temp with extreme values to prevent false errors during startup -#ifdef HEATER_0_MINTEMP - #ifdef HEATER_0_USES_AD595 - static int minttemp_0 = 0; - #else - static int minttemp_0 = 16383; - #endif -#endif //MINTEMP -#ifdef HEATER_0_MAXTEMP - #ifdef HEATER_0_USES_AD595 - static int maxttemp_0 = 16383; - #else - static int maxttemp_0 = 0; - #endif -#endif //MAXTEMP - -#ifdef HEATER_1_MINTEMP - #ifdef HEATER_1_USES_AD595 - static int minttemp_1 = 0; - #else - static int minttemp_1 = 16383; - #endif -#endif //MINTEMP -#ifdef HEATER_1_MAXTEMP - #ifdef HEATER_1_USES_AD595 - static int maxttemp_1 = 16383; - #else - static int maxttemp_1 = 0; - #endif -#endif //MAXTEMP - -#ifdef BED_MINTEMP - #ifdef BED_USES_AD595 - static int bed_minttemp = 0; - #else - static int bed_minttemp = 16383; - #endif -#endif //BED_MINTEMP -#ifdef BED_MAXTEMP - #ifdef BED_USES_AD595 - static int bed_maxttemp = 16383; - #else - static int bed_maxttemp = 0; - #endif -#endif //BED_MAXTEMP + static int minttemp_0 = 0; + static int maxttemp_0 = 16383; + static int minttemp_1 = 0; + static int maxttemp_1 = 16383; + static int bed_minttemp = 0; + static int bed_maxttemp = 16383; //=========================================================================== //=============================functions ============================ @@ -198,18 +160,28 @@ void manage_heater() //SERIAL_ECHOLN(" PIDDEBUG Input "< minttemp_0) && (current_raw[TEMPSENSOR_HOTEND_0] < maxttemp_0)) { + analogWrite(HEATER_0_PIN, pid_output); + } + else { + analogWrite(HEATER_0_PIN, 0); + } #endif //PIDTEMP #ifndef PIDTEMP - if(current_raw[0] >= target_raw[0]) - { + // Check if temperature is within the correct range + if((current_raw[TEMPSENSOR_HOTEND_0] > minttemp_0) && (current_raw[TEMPSENSOR_HOTEND_0] < maxttemp_0)) { + if(current_raw[TEMPSENSOR_HOTEND_0] >= target_raw[TEMPSENSOR_HOTEND_0]) { + WRITE(HEATER_0_PIN,LOW); + } + else { + WRITE(HEATER_0_PIN,HIGH); + } + } + else { WRITE(HEATER_0_PIN,LOW); - } - else - { - WRITE(HEATER_0_PIN,HIGH); - } + } #endif if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) @@ -217,14 +189,20 @@ void manage_heater() previous_millis_bed_heater = millis(); #if TEMP_1_PIN > -1 - if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) - { + // Check if temperature is within the correct range + if((current_raw[TEMPSENSOR_BED] > bed_minttemp) && (current_raw[TEMPSENSOR_BED] < bed_maxttemp)) { + if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) + { + WRITE(HEATER_1_PIN,LOW); + } + else + { + WRITE(HEATER_1_PIN,HIGH); + } + } + else { WRITE(HEATER_1_PIN,LOW); - } - else - { - WRITE(HEATER_1_PIN,HIGH); - } + } #endif } @@ -370,6 +348,34 @@ void tp_init() // Set analog inputs ADCSRA = 1< -1) + #if TEMP_0_PIN < 8 + DIDR0 |= 1 << TEMP_0_PIN; + #else + DIDR2 |= 1<<(TEMP_0_PIN - 8); + ADCSRB = 1< -1) + #if TEMP_1_PIN < 8 + DIDR0 |= 1< -1) + #if TEMP_2_PIN < 8 + DIDR0 |= 1 << TEMP_2_PIN; + #else + DIDR2 = 1<<(TEMP_2_PIN - 8); + ADCSRB = 1< -1) - #if TEMP_0_PIN < 8 - DIDR0 = 1 << TEMP_0_PIN; - #else - DIDR2 = 1<<(TEMP_0_PIN - 8); + #if TEMP_0_PIN > 7 ADCSRB = 1< -1) - #if TEMP_1_PIN < 7 - DIDR0 = 1< 7 ADCSRB = 1< -1) - #if TEMP_2_PIN < 7 - DIDR0 = 1 << TEMP_2_PIN; - #else - DIDR2 = 1<<(TEMP_2_PIN - 8); + #if TEMP_2_PIN > 7 ADCSRB = 1< -1) if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); + digitalWrite(HEATER_0_PIN, 0); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MAXTEMP triggered !!"); kill(); @@ -567,11 +564,10 @@ ISR(TIMER0_COMPB_vect) #if (HEATER_1_PIN > -1) if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { target_raw[TEMPSENSOR_HOTEND_1] = 0; - if(current_raw[2] >= maxttemp_1) { - analogWrite(HEATER_2_PIN, 0); + digitalWrite(HEATER_2_PIN, 0); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MAXTEMP triggered !!"); - kill() + kill(); } #endif #endif //MAXTEMP @@ -580,7 +576,7 @@ ISR(TIMER0_COMPB_vect) #if (HEATER_0_PIN > -1) if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { target_raw[TEMPSENSOR_HOTEND_0] = 0; - analogWrite(HEATER_0_PIN, 0); + digitalWrite(HEATER_0_PIN, 0); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MINTEMP triggered !!"); kill(); @@ -592,7 +588,7 @@ ISR(TIMER0_COMPB_vect) #if (HEATER_2_PIN > -1) if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { target_raw[TEMPSENSOR_HOTEND_1] = 0; - analogWrite(HEATER_2_PIN, 0); + digitalWrite(HEATER_2_PIN, 0); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MINTEMP triggered !!"); kill(); @@ -604,7 +600,7 @@ ISR(TIMER0_COMPB_vect) #if (HEATER_1_PIN > -1) if(current_raw[1] <= bed_minttemp) { target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); + digitalWrite(HEATER_1_PIN, 0); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Temperatur heated bed switched off. MINTEMP triggered !!"); kill(); @@ -616,7 +612,7 @@ ISR(TIMER0_COMPB_vect) #if (HEATER_1_PIN > -1) if(current_raw[1] >= bed_maxttemp) { target_raw[1] = 0; - WRITE(HEATER_1_PIN, 0); + digitalWrite(HEATER_1_PIN, 0); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); kill(); From 85c8a87e7087ca1a639947e17f6a71ac8a5f8140 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 20 Nov 2011 13:31:07 +0100 Subject: [PATCH 088/430] Small changes to README.md --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 16c1a632f..22b3c9a0f 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ This RepRap firmware is a mashup between \hardware\Sanguino + Install Ultimaker's RepG 25 build http://software.ultimaker.com For SD handling and as better substitute (apart from stl manipulation) download From b21d5193f25e3e388ddc3787aba7f0086a1abad7 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 14:43:47 +0100 Subject: [PATCH 089/430] made ultralcd compatible with folders. --- Marlin/cardreader.h | 6 +- Marlin/cardreader.pde | 115 +++++++---- Marlin/ultralcd.h | 6 +- Marlin/ultralcd.pde | 461 +++++++++++++++++++++++++----------------- 4 files changed, 366 insertions(+), 222 deletions(-) diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 653f59452..44ebf0e2c 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -28,7 +28,8 @@ public: void ls(); - + void chdir(const char * relpath); + void updir(); inline bool eof() { return sdpos>=filesize ;}; inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; @@ -40,8 +41,9 @@ public: bool sdprinting ; bool cardOK ; char filename[11]; + bool filenameIsDir; private: - SdFile root,*curDir; + SdFile root,*curDir,workDir,workDirParent,workDirParentParent; Sd2Card card; SdVolume volume; SdFile file; diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index bab87834e..c0dbc58e4 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -1,4 +1,5 @@ #include "cardreader.h" +//#include #ifdef SDSUPPORT CardReader::CardReader() @@ -36,11 +37,7 @@ char *createFilename(char *buffer,const dir_t &p) //buffer>12characters return buffer; } -// bool SdFat::chdir(bool set_cwd) { -// if (set_cwd) SdBaseFile::cwd_ = &vwd_; -// vwd_.close(); -// return vwd_.openRoot(&vol_); -// } + void CardReader::lsDive(char *prepend,SdFile parent) { dir_t p; @@ -85,11 +82,19 @@ void CardReader::lsDive(char *prepend,SdFile parent) { if (p.name[0] == DIR_NAME_FREE) break; if (p.name[0] == DIR_NAME_DELETED || p.name[0] == '.'|| p.name[0] == '_') continue; + if ( p.name[0] == '.') + { + if ( p.name[1] != '.') + continue; + } if (!DIR_IS_FILE_OR_SUBDIR(&p)) continue; + filenameIsDir=DIR_IS_SUBDIR(&p); - - if(p.name[8]!='G') continue; - if(p.name[9]=='~') continue; + if(!filenameIsDir) + { + if(p.name[8]!='G') continue; + if(p.name[9]=='~') continue; + } //if(cnt++!=nr) continue; createFilename(filename,p); if(lsAction==LS_SerialPrint) @@ -126,33 +131,35 @@ void CardReader::ls() void CardReader::initsd() { cardOK = false; - #if SDSS >- 1 - if(root.isOpen()) - root.close(); - if (!card.init(SPI_FULL_SPEED,SDSS)) - { - //if (!card.init(SPI_HALF_SPEED,SDSS)) - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("SD init fail"); - } - else if (!volume.init(&card)) - { - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("volume.init failed"); - } - else if (!root.openRoot(&volume)) - { - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("openRoot failed"); - } - else - { - cardOK = true; - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("SD card ok"); - } - curDir=&root; - #endif //SDSS + if(root.isOpen()) + root.close(); + if (!card.init(SPI_FULL_SPEED,SDSS)) + { + //if (!card.init(SPI_HALF_SPEED,SDSS)) + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("SD init fail"); + } + else if (!volume.init(&card)) + { + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("volume.init failed"); + } + else if (!root.openRoot(&volume)) + { + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("openRoot failed"); + } + else + { + cardOK = true; + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("SD card ok"); + } + curDir=&root; + if(!workDir.openRoot(&volume)) + { + SERIAL_ECHOLNPGM("workDir open failed"); + } } void CardReader::release() { @@ -229,6 +236,10 @@ void CardReader::openFile(char* name,bool read) } } + else //relative path + { + curDir=&workDir; + } if(read) { if (file.open(curDir, fname, O_READ)) @@ -362,6 +373,7 @@ void CardReader::closefile() void CardReader::getfilename(const uint8_t nr) { + curDir=&workDir; lsAction=LS_GetFilename; nrFiles=nr; curDir->rewind(); @@ -371,12 +383,45 @@ void CardReader::getfilename(const uint8_t nr) uint16_t CardReader::getnrfilenames() { + curDir=&workDir; lsAction=LS_Count; nrFiles=0; curDir->rewind(); lsDive("",*curDir); + //SERIAL_ECHOLN(nrFiles); return nrFiles; } +void CardReader::chdir(const char * relpath) +{ + SdFile newfile; + SdFile *parent=&root; + + if(workDir.isOpen()) + parent=&workDir; + + if(!newfile.open(*parent,relpath, O_READ)) + { + SERIAL_ECHO_START; + SERIAL_ECHOPGM("Cannot enter subdir:"); + SERIAL_ECHOLN(relpath); + } + else + { + workDirParentParent=workDirParent; + workDirParent=*parent; + + workDir=newfile; + } +} + +void CardReader::updir() +{ + if(!workDir.isRoot()) + { + workDir=workDirParent; + workDirParent=workDirParentParent; + } +} #endif //SDSUPPORT \ No newline at end of file diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index d3496bec9..6222c70c2 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -51,13 +51,13 @@ #define blocktime 500 #define lcdslow 5 - enum MainStatus{Main_Status, Main_Menu, Main_Prepare, Main_Control, Main_SD}; + enum MainStatus{Main_Status, Main_Menu, Main_Prepare, Main_Control, Main_SD,Sub_TempControl,Sub_MotionControl}; class MainMenu{ public: MainMenu(); void update(); - uint8_t activeline; + int8_t activeline; MainStatus status; uint8_t displayStartingRow; @@ -65,6 +65,8 @@ void showMainMenu(); void showPrepare(); void showControl(); + void showControlMotion(); + void showControlTemp(); void showSD(); bool force_lcd_update; int lastencoderpos; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index aa30a3dd0..57f63c106 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -114,11 +114,13 @@ void lcd_init() }; byte uplevel[8]={0x04, 0x0e, 0x1f, 0x04, 0x1c, 0x00, 0x00, 0x00};//thanks joris byte refresh[8]={0x00, 0x06, 0x19, 0x18, 0x03, 0x13, 0x0c, 0x00}; //thanks joris + byte folder [8]={0x00, 0x1c, 0x1f, 0x11, 0x11, 0x1f, 0x00, 0x00}; //thanks joris lcd.begin(LCD_WIDTH, LCD_HEIGHT); lcd.createChar(1,Degree); lcd.createChar(2,Thermometer); lcd.createChar(3,uplevel); lcd.createChar(4,refresh); + lcd.createChar(5,folder); LCD_MESSAGEPGM("UltiMarlin ready."); } @@ -224,6 +226,7 @@ void buttons_check() buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 #endif + //manage encoder rotation char enc=0; if(buttons&EN_A) enc|=(1<<0); @@ -311,22 +314,22 @@ void MainMenu::showStatus() oldtargetHotEnd0=ttHotEnd0; } #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - static int oldtBed=-1; - static int oldtargetBed=-1; - int tBed=intround(degBed()); - if((tBed!=oldtBed)||force_lcd_update) - { - lcd.setCursor(1,0); - lcd.print(ftostr3(tBed)); - olddegHotEnd0=tBed; - } - int targetBed=intround(degTargetBed()); - if((targetBed!=oldtargetBed)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(targetBed)); - oldtargetBed=targetBed; - } + static int oldtBed=-1; + static int oldtargetBed=-1; + int tBed=intround(degBed()); + if((tBed!=oldtBed)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(tBed)); + oldtBed=tBed; + } + int targetBed=intround(degTargetBed()); + if((targetBed!=oldtargetBed)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(targetBed)); + oldtargetBed=targetBed; + } #endif //starttime=2; static uint16_t oldtime=0; @@ -421,6 +424,7 @@ void MainMenu::showStatus() } #endif + force_lcd_update=false; } enum {ItemP_exit, ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude, ItemP_disstep}; @@ -466,16 +470,7 @@ void MainMenu::showPrepare() } updateActiveLines(ItemP_disstep,encoderpos); } -enum { - ItemC_exit, ItemC_nozzle, - ItemC_PID_P,ItemC_PID_I,ItemC_PID_D,ItemC_PID_C, - ItemC_fan, - ItemC_acc, ItemC_xyjerk, - ItemC_vmaxx, ItemC_vmaxy, ItemC_vmaxz, ItemC_vmaxe, - ItemC_vtravmin,ItemC_vmin, - ItemC_amaxx, ItemC_amaxy, ItemC_amaxz, ItemC_amaxe, - ItemC_aret,ItemC_esteps, ItemC_store, ItemC_load,ItemC_failsafe -}; + //does not work // #define MENUCHANGEITEM(repaint_action, enter_action, accept_action, change_action) \ @@ -494,19 +489,23 @@ enum { // } // - -void MainMenu::showControl() +enum { + ItemCT_exit, ItemCT_nozzle, ItemCT_fan, + ItemCT_PID_P,ItemCT_PID_I,ItemCT_PID_D,ItemCT_PID_C +}; + +void MainMenu::showControlTemp() { - uint8_t line=0; + uint8_t line=0; clearIfNecessary(); for(int8_t i=lineoffset;i990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); - } - } - }break; - case ItemC_xyjerk: //max_xy_jerk - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Vxy-jerk: "); - lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk)); - } - - if((activeline==line) ) - { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_xy_jerk; - } - else - { - max_xy_jerk= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - } - }break; - case ItemC_PID_P: + case ItemCT_PID_P: { if(force_lcd_update) { @@ -678,7 +610,7 @@ void MainMenu::showControl() } } }break; - case ItemC_PID_I: + case ItemCT_PID_I: { if(force_lcd_update) { @@ -712,7 +644,7 @@ void MainMenu::showControl() } } }break; - case ItemC_PID_D: + case ItemCT_PID_D: { if(force_lcd_update) { @@ -745,11 +677,9 @@ void MainMenu::showControl() lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); } } - }break; - - - - case ItemC_PID_C: + }break; + case ItemCT_PID_C: + #ifdef PID_ADD_EXTRUSION_RATE { if(force_lcd_update) { @@ -782,20 +712,50 @@ void MainMenu::showControl() lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); } } - }break; - case ItemC_vmaxx: - case ItemC_vmaxy: - case ItemC_vmaxz: - case ItemC_vmaxe: - { + } + #endif + break; + default: + break; + } + line++; + } + #ifdef PID_ADD_EXTRUSION_RATE + updateActiveLines(ItemCT_PID_C,encoderpos); + #else + updateActiveLines(ItemCT_PID_D,encoderpos); + #endif +} + + +enum { + ItemCM_exit, + ItemCM_acc, ItemCM_xyjerk, + ItemCM_vmaxx, ItemCM_vmaxy, ItemCM_vmaxz, ItemCM_vmaxe, + ItemCM_vtravmin,ItemCM_vmin, + ItemCM_amaxx, ItemCM_amaxy, ItemCM_amaxz, ItemCM_amaxe, + ItemCM_aret,ItemCM_esteps +}; + + + +void MainMenu::showControlMotion() +{ + uint8_t line=0; + clearIfNecessary(); + for(int8_t i=lineoffset;i990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + } + }break; + case ItemCM_xyjerk: //max_xy_jerk + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Vxy-jerk: "); + lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_xy_jerk; + } + else + { + max_xy_jerk= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemCM_vmaxx: + case ItemCM_vmaxy: + case ItemCM_vmaxz: + case ItemCM_vmaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Vmax "); + if(i==ItemCM_vmaxx)lcdprintPGM("x:"); + if(i==ItemCM_vmaxy)lcdprintPGM("y:"); + if(i==ItemCM_vmaxz)lcdprintPGM("z:"); + if(i==ItemCM_vmaxe)lcdprintPGM("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemCM_vmaxx])); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_feedrate[i-ItemCM_vmaxx]; + } + else + { + max_feedrate[i-ItemCM_vmaxx]= encoderpos; encoderpos=activeline*lcdslow; } @@ -825,7 +860,7 @@ void MainMenu::showControl() } }break; - case ItemC_vmin: + case ItemCM_vmin: { if(force_lcd_update) { @@ -859,7 +894,7 @@ void MainMenu::showControl() } } }break; - case ItemC_vtravmin: + case ItemCM_vtravmin: { if(force_lcd_update) { @@ -894,19 +929,19 @@ void MainMenu::showControl() } }break; - case ItemC_amaxx: - case ItemC_amaxy: - case ItemC_amaxz: - case ItemC_amaxe: + case ItemCM_amaxx: + case ItemCM_amaxy: + case ItemCM_amaxz: + case ItemCM_amaxe: { if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" Amax "); - if(i==ItemC_amaxx)lcdprintPGM("x:"); - if(i==ItemC_amaxy)lcdprintPGM("y:"); - if(i==ItemC_amaxz)lcdprintPGM("z:"); - if(i==ItemC_amaxe)lcdprintPGM("e:"); - lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100));lcdprintPGM("00"); + if(i==ItemCM_amaxx)lcdprintPGM("x:"); + if(i==ItemCM_amaxy)lcdprintPGM("y:"); + if(i==ItemCM_amaxz)lcdprintPGM("z:"); + if(i==ItemCM_amaxe)lcdprintPGM("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100));lcdprintPGM("00"); } if((activeline==line) ) @@ -916,11 +951,11 @@ void MainMenu::showControl() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemC_amaxx]/100; + encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100; } else { - max_acceleration_units_per_sq_second[i-ItemC_amaxx]= encoderpos*100; + max_acceleration_units_per_sq_second[i-ItemCM_amaxx]= encoderpos*100; encoderpos=activeline*lcdslow; } BLOCK; @@ -934,7 +969,7 @@ void MainMenu::showControl() } } }break; - case ItemC_aret://float retract_acceleration = 7000; + case ItemCM_aret://float retract_acceleration = 7000; { if(force_lcd_update) { @@ -968,7 +1003,7 @@ void MainMenu::showControl() } } }break; - case ItemC_esteps://axis_steps_per_unit[i] = code_value(); + case ItemCM_esteps://axis_steps_per_unit[i] = code_value(); { if(force_lcd_update) { @@ -1005,6 +1040,37 @@ void MainMenu::showControl() } } }break; + default: + break; + } + line++; + } + updateActiveLines(ItemCM_esteps,encoderpos); +} + + +enum { + ItemC_exit,ItemC_temp,ItemC_move, + ItemC_store, ItemC_load,ItemC_failsafe +}; + +void MainMenu::showControl() +{ + uint8_t line=0; + clearIfNecessary(); + for(int8_t i=lineoffset;i Date: Sun, 20 Nov 2011 14:50:08 +0100 Subject: [PATCH 090/430] Added endstop reporting --- Marlin/Marlin.pde | 24 ++++--- Marlin/planner.cpp | 1 + Marlin/stepper.cpp | 159 ++++++++++++++++++++++----------------------- Marlin/stepper.h | 100 ++++++++++++++-------------- 4 files changed, 138 insertions(+), 146 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 754dc3618..8ee165693 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -465,24 +465,22 @@ inline bool code_seen(char code) destination[LETTER##_AXIS] = 1.5 * LETTER##_MAX_LENGTH * LETTER##_HOME_DIR; \ feedrate = homing_feedrate[LETTER##_AXIS]; \ prepare_move(); \ - st_synchronize();\ \ current_position[LETTER##_AXIS] = 0;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = -5 * LETTER##_HOME_DIR;\ prepare_move(); \ - st_synchronize();\ \ destination[LETTER##_AXIS] = 10 * LETTER##_HOME_DIR;\ feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ prepare_move(); \ - st_synchronize();\ \ current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? 0 : LETTER##_MAX_LENGTH;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = current_position[LETTER##_AXIS];\ feedrate = 0.0;\ st_synchronize();\ + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ endstops_hit_on_purpose();\ } @@ -680,7 +678,7 @@ inline void process_commands() case 140: // M140 set bed temp if (code_seen('S')) setTargetBed(code_value()); break; - case 105: // M105 + case 105 : // M105 //SERIAL_ECHOLN(freeMemory()); //test watchdog: //delay(20000); @@ -817,7 +815,7 @@ inline void process_commands() axis_relative_modes[3] = true; break; case 18: //compatibility - case 84: + case 84: // M84 if(code_seen('S')){ stepper_inactive_time = code_value() * 1000; } @@ -854,14 +852,14 @@ inline void process_commands() SERIAL_PROTOCOL(current_position[Z_AXIS]); SERIAL_PROTOCOLPGM("E:"); SERIAL_PROTOCOL(current_position[E_AXIS]); - #ifdef DEBUG_STEPS - SERIAL_PROTOCOLPGM(" Count X:"); - SERIAL_PROTOCOL(float(count_position[X_AXIS])/axis_steps_per_unit[X_AXIS]); - SERIAL_PROTOCOLPGM("Y:"); - SERIAL_PROTOCOL(float(count_position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]); - SERIAL_PROTOCOLPGM("Z:"); - SERIAL_PROTOCOL(float(count_position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]); - #endif + + SERIAL_PROTOCOLPGM(" Count X:"); + SERIAL_PROTOCOL(float(st_get_position(X_AXIS))/axis_steps_per_unit[X_AXIS]); + SERIAL_PROTOCOLPGM("Y:"); + SERIAL_PROTOCOL(float(st_get_position(Y_AXIS))/axis_steps_per_unit[Y_AXIS]); + SERIAL_PROTOCOLPGM("Z:"); + SERIAL_PROTOCOL(float(st_get_position(Z_AXIS))/axis_steps_per_unit[Z_AXIS]); + SERIAL_PROTOCOLLN(""); break; case 119: // M119 diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index b7f98b6d1..a59945da8 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -754,6 +754,7 @@ void plan_set_position(const float &x, const float &y, const float &z, const flo position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + st_set_position(position[X_AXIS], position[Y_AXIS], position[Z_AXIS], position[E_AXIS]); previous_nominal_speed = 0.0; // Resets planner junction speeds. Assumes start from rest. previous_speed[0] = 0.0; previous_speed[1] = 0.0; diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index b08e61ae4..771bccfd4 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -66,14 +66,12 @@ static char step_loops; volatile long endstops_trigsteps[3]={0,0,0}; volatile long endstops_stepsTotal,endstops_stepsDone; -static volatile bool endstops_hit=false; +static volatile bool endstop_x_hit=false; +static volatile bool endstop_y_hit=false; +static volatile bool endstop_z_hit=false; -// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. -// for debugging purposes only, should be disabled by default -#ifdef DEBUG_STEPS - volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; - volatile int count_direction[NUM_AXIS] = { 1, 1, 1, 1}; -#endif +volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; +volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; //=========================================================================== //=============================functions ============================ @@ -155,49 +153,32 @@ asm volatile ( \ #define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1<step_event_count; - endstops_stepsDone=stepstaken; - endstops_trigsteps[0]=current_block->steps_x; - endstops_trigsteps[1]=current_block->steps_y; - endstops_trigsteps[2]=current_block->steps_z; - - endstops_hit=true; -} - void checkHitEndstops() { - if( !endstops_hit) - return; - float endstops_triggerpos[3]={0,0,0}; - float ratiodone=endstops_stepsDone/float(endstops_stepsTotal); //ratio of current_block thas was performed - - endstops_triggerpos[0]=current_position[0]-(endstops_trigsteps[0]*ratiodone)/float(axis_steps_per_unit[0]); - endstops_triggerpos[1]=current_position[1]-(endstops_trigsteps[1]*ratiodone)/float(axis_steps_per_unit[1]); - endstops_triggerpos[2]=current_position[2]-(endstops_trigsteps[2]*ratiodone)/float(axis_steps_per_unit[2]); - SERIAL_ECHO_START; - SERIAL_ECHOPGM("endstops hit: "); - SERIAL_ECHOPAIR(" X:",endstops_triggerpos[0]); - SERIAL_ECHOPAIR(" Y:",endstops_triggerpos[1]); - SERIAL_ECHOPAIR(" Z:",endstops_triggerpos[2]); - SERIAL_ECHOLN(""); - endstops_hit=false; + if( endstop_x_hit || endstop_y_hit || endstop_z_hit) { + SERIAL_ECHO_START; + SERIAL_ECHOPGM("endstops hit: "); + if(endstop_x_hit) { + SERIAL_ECHOPAIR(" X:",(float)endstops_trigsteps[X_AXIS]/axis_steps_per_unit[X_AXIS]); + } + if(endstop_y_hit) { + SERIAL_ECHOPAIR(" Y:",(float)endstops_trigsteps[Y_AXIS]/axis_steps_per_unit[Y_AXIS]); + } + if(endstop_z_hit) { + SERIAL_ECHOPAIR(" Z:",(float)endstops_trigsteps[Z_AXIS]/axis_steps_per_unit[Z_AXIS]); + } + SERIAL_ECHOLN(""); + endstop_x_hit=false; + endstop_y_hit=false; + endstop_z_hit=false; + } } void endstops_hit_on_purpose() { - endstops_hit=false; + endstop_x_hit=false; + endstop_y_hit=false; + endstop_z_hit=false; } // __________________________ @@ -312,24 +293,22 @@ ISR(TIMER1_COMPA_vect) // Set direction en check limit switches if ((out_bits & (1< -1 - if(READ(X_MIN_PIN) != ENDSTOPS_INVERTING) { - // endstops_triggered(step_events_completed); + if((READ(X_MIN_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x > 0)) { + endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; + endstop_x_hit=true; step_events_completed = current_block->step_event_count; } #endif } else { // +direction WRITE(X_DIR_PIN,!INVERT_X_DIR); - #ifdef DEBUG_STEPS - count_direction[X_AXIS]=1; - #endif + count_direction[X_AXIS]=1; #if X_MAX_PIN > -1 - if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x >0)){ - // endstops_triggered(step_events_completed); + if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x > 0)){ + endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; + endstop_x_hit=true; step_events_completed = current_block->step_event_count; } #endif @@ -337,24 +316,22 @@ ISR(TIMER1_COMPA_vect) if ((out_bits & (1< -1 - if(READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) { -// endstops_triggered(step_events_completed); + if((READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y > 0)) { + endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; + endstop_y_hit=true; step_events_completed = current_block->step_event_count; } #endif } else { // +direction WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - #ifdef DEBUG_STEPS - count_direction[Y_AXIS]=1; - #endif + count_direction[Y_AXIS]=1; #if Y_MAX_PIN > -1 - if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y >0)){ - // endstops_triggered(step_events_completed); + if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y > 0)){ + endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; + endstop_y_hit=true; step_events_completed = current_block->step_event_count; } #endif @@ -362,34 +339,36 @@ ISR(TIMER1_COMPA_vect) if ((out_bits & (1< -1 - if(READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) { - // endstops_triggered(step_events_completed); + if((READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z > 0)) { + endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; + endstop_z_hit=true; step_events_completed = current_block->step_event_count; } #endif } else { // +direction WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - #ifdef DEBUG_STEPS count_direction[Z_AXIS]=1; - #endif #if Z_MAX_PIN > -1 - if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z >0)){ - // endstops_triggered(step_events_completed); + if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z > 0)){ + endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; + endstop_z_hit=true; step_events_completed = current_block->step_event_count; } #endif } #ifndef ADVANCE - if ((out_bits & (1<step_event_count; WRITE(X_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[X_AXIS]+=count_direction[X_AXIS]; - #endif + count_position[X_AXIS]+=count_direction[X_AXIS]; } counter_y += current_block->steps_y; @@ -432,9 +409,7 @@ ISR(TIMER1_COMPA_vect) WRITE(Y_STEP_PIN, HIGH); counter_y -= current_block->step_event_count; WRITE(Y_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - #endif + count_position[Y_AXIS]+=count_direction[Y_AXIS]; } counter_z += current_block->steps_z; @@ -442,9 +417,7 @@ ISR(TIMER1_COMPA_vect) WRITE(Z_STEP_PIN, HIGH); counter_z -= current_block->step_event_count; WRITE(Z_STEP_PIN, LOW); - #ifdef DEBUG_STEPS - count_position[Z_AXIS]+=count_direction[Z_AXIS]; - #endif + count_position[Z_AXIS]+=count_direction[Z_AXIS]; } #ifndef ADVANCE @@ -453,6 +426,7 @@ ISR(TIMER1_COMPA_vect) WRITE(E_STEP_PIN, HIGH); counter_e -= current_block->step_event_count; WRITE(E_STEP_PIN, LOW); + count_position[E_AXIS]+=count_direction[E_AXIS]; } #endif //!ADVANCE step_events_completed += 1; @@ -669,3 +643,22 @@ void st_synchronize() LCD_STATUS; } } + +void st_set_position(const long &x, const long &y, const long &z, const long &e) +{ + CRITICAL_SECTION_START; + count_position[X_AXIS] = x; + count_position[Y_AXIS] = y; + count_position[Z_AXIS] = z; + count_position[E_AXIS] = e; + CRITICAL_SECTION_END; +} + +long st_get_position(char axis) +{ + long count_pos; + CRITICAL_SECTION_START; + count_pos = count_position[axis]; + CRITICAL_SECTION_END; + return count_pos; +} diff --git a/Marlin/stepper.h b/Marlin/stepper.h index ecbc713e3..eb07fa9ce 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -1,51 +1,51 @@ -/* - stepper.h - stepper motor driver: executes motion plans of planner.c using the stepper motors - Part of Grbl - - Copyright (c) 2009-2011 Simen Svale Skogsrud - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -#ifndef stepper_h -#define stepper_h - -#include "planner.h" - -// Initialize and start the stepper motor subsystem -void st_init(); - -// Block until all buffered steps are executed -void st_synchronize(); - -// The stepper subsystem goes to sleep when it runs out of things to execute. Call this -// to notify the subsystem that it is time to go to work. -void st_wake_up(); - -// if DEBUG_STEPS is enabled, M114 can be used to compare two methods of determining the X,Y,Z position of the printer. -// for debugging purposes only, should be disabled by default -#ifdef DEBUG_STEPS - extern volatile long count_position[NUM_AXIS]; - extern volatile int count_direction[NUM_AXIS]; -#endif - -void checkHitEndstops(); //call from somwhere to create an serial error message with the locations the endstops where hit, in case they were triggered -void endstops_hit_on_purpose(); //avoid creation of the message, i.e. after homeing and before a routine call of checkHitEndstops(); - - - -extern block_t *current_block; // A pointer to the block currently being traced - - +/* + stepper.h - stepper motor driver: executes motion plans of planner.c using the stepper motors + Part of Grbl + + Copyright (c) 2009-2011 Simen Svale Skogsrud + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +#ifndef stepper_h +#define stepper_h + +#include "planner.h" + +// Initialize and start the stepper motor subsystem +void st_init(); + +// Block until all buffered steps are executed +void st_synchronize(); + +// Set current position in steps +void st_set_position(const long &x, const long &y, const long &z, const long &e); + +// Get current position in steps +long st_get_position(char axis); + +// The stepper subsystem goes to sleep when it runs out of things to execute. Call this +// to notify the subsystem that it is time to go to work. +void st_wake_up(); + + +void checkHitEndstops(); //call from somwhere to create an serial error message with the locations the endstops where hit, in case they were triggered +void endstops_hit_on_purpose(); //avoid creation of the message, i.e. after homeing and before a routine call of checkHitEndstops(); + + + +extern block_t *current_block; // A pointer to the block currently being traced + + #endif From 959d82e81e3a8185992a4c8edeff171fed9f01ca Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 20 Nov 2011 15:03:35 +0100 Subject: [PATCH 091/430] Small temperature disable bug. --- Marlin/temperature.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index f5df6f617..04353b566 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -430,21 +430,21 @@ void disable_heater() #if TEMP_0_PIN > -1 target_raw[0]=0; #if HEATER_0_PIN > -1 - WRITE(HEATER_0_PIN,LOW); + digitalWrite(HEATER_0_PIN,LOW); #endif #endif #if TEMP_1_PIN > -1 target_raw[1]=0; #if HEATER_1_PIN > -1 - WRITE(HEATER_1_PIN,LOW); + digitalWrite(HEATER_1_PIN,LOW); #endif #endif #if TEMP_2_PIN > -1 target_raw[2]=0; #if HEATER_2_PIN > -1 - WRITE(HEATER_2_PIN,LOW); + digitalWrite(HEATER_2_PIN,LOW); #endif #endif } From 379ea642e181ee072a80d361dfb043e7f3318103 Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 16:05:42 +0100 Subject: [PATCH 092/430] make tuneing sub-menu. --- Marlin/cardreader.pde | 4 +- Marlin/planner.cpp | 4 + Marlin/planner.h | 1 + Marlin/ultralcd.h | 13 ++- Marlin/ultralcd.pde | 231 ++++++++++++++++++++++++++++++++++++------ 5 files changed, 216 insertions(+), 37 deletions(-) diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index c0dbc58e4..eec10f199 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -252,10 +252,11 @@ void CardReader::openFile(char* name,bool read) sdpos = 0; SERIAL_PROTOCOLLNPGM("File selected"); + LCD_MESSAGE(fname); } else { - SERIAL_PROTOCOLPGM("open failed, File: "); + SERIAL_PROTOCOLPGM("open failed, File: "); SERIAL_PROTOCOL(fname); SERIAL_PROTOCOLLNPGM("."); } @@ -273,6 +274,7 @@ void CardReader::openFile(char* name,bool read) saving = true; SERIAL_PROTOCOLPGM("Writing to file: "); SERIAL_PROTOCOLLN(name); + LCD_MESSAGE(fname); } } diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index a59945da8..214226e2c 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -762,3 +762,7 @@ void plan_set_position(const float &x, const float &y, const float &z, const flo previous_speed[3] = 0.0; } +uint8_t movesplanned() +{ + return (block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); +} diff --git a/Marlin/planner.h b/Marlin/planner.h index 52a6fba81..511f532d7 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -80,6 +80,7 @@ void plan_discard_current_block(); block_t *plan_get_current_block(); void check_axes_activity(); +uint8_t movesplanned(); extern unsigned long minsegmenttime; extern float max_feedrate[4]; // set the max speeds diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 6222c70c2..8b7d3ce83 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -64,6 +64,7 @@ void showStatus(); void showMainMenu(); void showPrepare(); + void showTune(); void showControl(); void showControlMotion(); void showControlTemp(); @@ -75,6 +76,8 @@ bool linechanging; + bool tune; + private: inline void updateActiveLines(const uint8_t &maxlines,volatile int &encoderpos) { @@ -89,8 +92,7 @@ { lineoffset--; if(lineoffset<0) lineoffset=0; - curencoderpos=lcdslow-1; - force_lcd_update=true; + curencoderpos=lcdslow-1; } if(curencoderpos>(LCD_HEIGHT-1+1)*lcdslow) { @@ -100,9 +102,9 @@ lineoffset=maxlines+1-LCD_HEIGHT; if(curencoderpos>maxlines*lcdslow) curencoderpos=maxlines*lcdslow; - force_lcd_update=true; } - lastencoderpos=encoderpos=curencoderpos; + lastencoderpos=encoderpos=curencoderpos; + int lastactiveline=activeline; activeline=curencoderpos/lcdslow; if(activeline<0) activeline=0; if(activeline>LCD_HEIGHT-1) activeline=LCD_HEIGHT-1; @@ -111,6 +113,8 @@ activeline=maxlines; curencoderpos=maxlines*lcdslow; } + if(lastactiveline!=activeline ||lastlineoffset!=lineoffset) + force_lcd_update=true; lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); } } @@ -126,7 +130,6 @@ }; //conversion routines, could need some overworking - char *fillto(int8_t n,char *c); char *ftostr51(const float &x); char *ftostr31(const float &x); char *ftostr3(const float &x); diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 57f63c106..e2a75df10 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -65,6 +65,7 @@ inline int intround(const float &x){return int(0.5+x);} void lcd_status(const char* message) { strncpy(messagetext,message,LCD_WIDTH); + messagetext[strlen(message)]=0; } void lcd_statuspgm(const char* message) @@ -79,6 +80,7 @@ void lcd_statuspgm(const char* message) cnt++; ch=pgm_read_byte(++message); } + *target=0; } inline void clear() @@ -280,6 +282,7 @@ MainMenu::MainMenu() #endif lcd_init(); linechanging=false; + tune=false; } void MainMenu::showStatus() @@ -373,7 +376,11 @@ void MainMenu::showStatus() if(messagetext[0]!='\0') { lcd.setCursor(0,LCD_HEIGHT-1); - lcd.print(fillto(LCD_WIDTH,messagetext)); + lcd.print(messagetext); + uint8_t n=strlen(messagetext); + for(int8_t i=0;i400) encoderpos=400; + feedmultiply = encoderpos; + feedmultiplychanged=true; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemT_nozzle: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002Nozzle:"); + lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetHotend0()))); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(degTargetHotend0()); + } + else + { + setTargetHotend0(encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + + case ItemT_fan: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Fan speed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); + } + + if((activeline==line) ) + { + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=fanpwm; + } + else + { + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemT_flow://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Flow:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[3]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + } + }break; + default: + break; + } + line++; + } + updateActiveLines(ItemT_fan,encoderpos); +} //does not work // #define MENUCHANGEITEM(repaint_action, enter_action, accept_action, change_action) \ @@ -510,7 +680,7 @@ void MainMenu::showControlTemp() if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" \002Nozzle:"); - lcd.setCursor(13,line);lcd.print(ftostr3(intround(degHotend0()))); + lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetHotend0()))); } if((activeline==line) ) @@ -520,7 +690,7 @@ void MainMenu::showControlTemp() linechanging=!linechanging; if(linechanging) { - encoderpos=intround(degHotend0()); + encoderpos=intround(degTargetHotend0()); } else { @@ -558,10 +728,7 @@ void MainMenu::showControlTemp() } else { - fanpwm = constrain(encoderpos,0,255); - encoderpos=fanpwm; - analogWrite(FAN_PIN, fanpwm); - + encoderpos=activeline*lcdslow; beepshort(); } BLOCK; @@ -1246,7 +1413,22 @@ void MainMenu::showMainMenu() #ifndef ULTIPANEL force_lcd_update=false; #endif - + if(tune) + { + if(!(movesplanned() ||card.sdprinting)) + { + force_lcd_update=true; + tune=false; + } + } + else + { + if(movesplanned() ||card.sdprinting) + { + force_lcd_update=true; + tune=true; + } + } clearIfNecessary(); for(int8_t line=0;line Date: Sun, 20 Nov 2011 16:37:01 +0100 Subject: [PATCH 093/430] less lcd flickering --- Marlin/ultralcd.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 8b7d3ce83..85a8df74c 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -113,7 +113,7 @@ activeline=maxlines; curencoderpos=maxlines*lcdslow; } - if(lastactiveline!=activeline ||lastlineoffset!=lineoffset) + if(lastlineoffset!=lineoffset) force_lcd_update=true; lcd.setCursor(0,activeline);lcd.print((activeline+lineoffset)?'>':'\003'); } From 5535e51bf678a367aa6e5d53068f5d20b1c15e0c Mon Sep 17 00:00:00 2001 From: Bernhard Kubicek Date: Sun, 20 Nov 2011 17:04:57 +0100 Subject: [PATCH 094/430] Yes, thats the beta. --- Marlin/Marlin.pde | 2 +- Marlin/planner.h | 2 +- README.md | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 8ee165693..1a2fadc5a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -41,7 +41,7 @@ #include "watchdog.h" -#define VERSION_STRING "1.0.0 Alpha 1" +#define VERSION_STRING "1.0.0 Beta 1" diff --git a/Marlin/planner.h b/Marlin/planner.h index 511f532d7..95ca548c5 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -80,7 +80,7 @@ void plan_discard_current_block(); block_t *plan_get_current_block(); void check_axes_activity(); -uint8_t movesplanned(); +uint8_t movesplanned(); //return the nr of buffered moves extern unsigned long minsegmenttime; extern float max_feedrate[4]; // set the max speeds diff --git a/README.md b/README.md index 988bf9a6e..b6d22ab48 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,7 @@ WARNING: -------- -THIS IN A PROCESS OF HEAVY OVERWORKING. -DO NOT USE THIS ON YOUR MACHINE UNTIL FURTHER NOTICE!!! +THIS IS THE BETA 1 FOR MARLIN 1.0.0 Quick Information =================== @@ -150,6 +149,7 @@ Advance: * M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk EEPROM: + * M500 - stores paramters in EEPROM * M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). * M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. From 1022a5eaa70a8f6157af4752709f0dd4c5433ed0 Mon Sep 17 00:00:00 2001 From: ErikZalm Date: Sun, 20 Nov 2011 19:21:19 +0100 Subject: [PATCH 095/430] Update README --- README | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README b/README index c11f90c65..d0dbca149 100644 --- a/README +++ b/README @@ -1,3 +1,7 @@ +A new beta version is avaiable. +Look under the Marlin_v1 branch. We also made a tag that you can download. + + This firmware is a mashup between Sprinter, grbl and many original parts. (https://github.com/kliment/Sprinter) (https://github.com/simen/grbl/tree) From c9005865ed8ebacfa7bf09303be39288ecd882cd Mon Sep 17 00:00:00 2001 From: ErikZalm Date: Sun, 20 Nov 2011 19:21:51 +0100 Subject: [PATCH 096/430] Update README --- README | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/README b/README index d0dbca149..f93900133 100644 --- a/README +++ b/README @@ -2,6 +2,19 @@ A new beta version is avaiable. Look under the Marlin_v1 branch. We also made a tag that you can download. + + + + + + + + + + + + + This firmware is a mashup between Sprinter, grbl and many original parts. (https://github.com/kliment/Sprinter) (https://github.com/simen/grbl/tree) From 0db97b9c7f4cb26e4a767c9aa2a4b8be4007e209 Mon Sep 17 00:00:00 2001 From: ErikZalm Date: Mon, 21 Nov 2011 22:40:47 +0100 Subject: [PATCH 097/430] Update README.md --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index b6d22ab48..0beb13fe5 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,3 @@ - WARNING: -------- THIS IS THE BETA 1 FOR MARLIN 1.0.0 @@ -54,7 +53,7 @@ It leads to less over-deposition at corners, especially at flat angles. *Arc support:* -Splic3r can find curves that, although broken into segments, were ment to describe an arc. +Slic3r can find curves that, although broken into segments, were ment to describe an arc. Marlin is able to print those arcs. The advantage is the firmware can choose the resolution, and can perform the arc with nearly constant velocity, resulting in a nice finish. Also, less serial communication is needed. From c0f8c9fd7213d30708071b3d3e94ddc898aa92ac Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 25 Nov 2011 13:43:06 +0100 Subject: [PATCH 098/430] Seperate ENDSTOP_INVERTING for X Y and Z Added simple endstop filter. Corrected M114 count display. --- Marlin/Configuration.h | 4 +++- Marlin/Marlin.pde | 25 ++++++++++++++++--------- Marlin/planner.cpp | 7 +++++++ Marlin/planner.h | 2 +- Marlin/stepper.cpp | 39 +++++++++++++++++++++++++++++++++------ Marlin/stepper.h | 3 ++- 6 files changed, 62 insertions(+), 18 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index da5372021..f8bb40e12 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -157,7 +157,9 @@ // Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 1a2fadc5a..61078eee7 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -556,12 +556,19 @@ inline void process_commands() relative_mode = true; break; case 92: // G92 - if(!code_seen(axis_codes[E_AXIS])) + if(!code_seen(axis_codes[E_AXIS])) st_synchronize(); for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) current_position[i] = code_value(); + if(code_seen(axis_codes[i])) { + current_position[i] = code_value(); + if(i == E_AXIS) { + plan_set_e_position(current_position[E_AXIS]); + } + else { + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + } + } } - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); break; } } @@ -865,27 +872,27 @@ inline void process_commands() case 119: // M119 #if (X_MIN_PIN > -1) SERIAL_PROTOCOLPGM("x_min:"); - SERIAL_PROTOCOL(((READ(X_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); + SERIAL_PROTOCOL(((READ(X_MIN_PIN)^X_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (X_MAX_PIN > -1) SERIAL_PROTOCOLPGM("x_max:"); - SERIAL_PROTOCOL(((READ(X_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); + SERIAL_PROTOCOL(((READ(X_MAX_PIN)^X_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MIN_PIN > -1) SERIAL_PROTOCOLPGM("y_min:"); - SERIAL_PROTOCOL(((READ(Y_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); + SERIAL_PROTOCOL(((READ(Y_MIN_PIN)^Y_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MAX_PIN > -1) SERIAL_PROTOCOLPGM("y_max:"); - SERIAL_PROTOCOL(((READ(Y_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); + SERIAL_PROTOCOL(((READ(Y_MAX_PIN)^Y_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MIN_PIN > -1) SERIAL_PROTOCOLPGM("z_min:"); - SERIAL_PROTOCOL(((READ(Z_MIN_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); + SERIAL_PROTOCOL(((READ(Z_MIN_PIN)^Z_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MAX_PIN > -1) SERIAL_PROTOCOLPGM("z_max:"); - SERIAL_PROTOCOL(((READ(Z_MAX_PIN)^ENDSTOPS_INVERTING)?"H ":"L ")); + SERIAL_PROTOCOL(((READ(Z_MAX_PIN)^Z_ENDSTOPS_INVERTING)?"H ":"L ")); #endif SERIAL_PROTOCOLLN(""); break; diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 214226e2c..8a27a2cc2 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -762,7 +762,14 @@ void plan_set_position(const float &x, const float &y, const float &z, const flo previous_speed[3] = 0.0; } +void plan_set_e_position(const float &e) +{ + position[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + st_set_e_position(position[E_AXIS]); +} + uint8_t movesplanned() { return (block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); } + diff --git a/Marlin/planner.h b/Marlin/planner.h index 95ca548c5..9aa121aca 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -70,7 +70,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa // Set position. Used for G92 instructions. void plan_set_position(const float &x, const float &y, const float &z, const float &e); - +void plan_set_e_position(const float &e); // Called when the current block is no longer needed. Discards the block and makes the memory // availible for new blocks. diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 771bccfd4..ad1fda9e0 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -70,6 +70,13 @@ static volatile bool endstop_x_hit=false; static volatile bool endstop_y_hit=false; static volatile bool endstop_z_hit=false; +static bool old_x_min_endstop=false; +static bool old_x_max_endstop=false; +static bool old_y_min_endstop=false; +static bool old_y_max_endstop=false; +static bool old_z_min_endstop=false; +static bool old_z_max_endstop=false; + volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; @@ -260,6 +267,7 @@ ISR(TIMER1_COMPA_vect) SERIAL_ERROR_START SERIAL_ERROR(*(unsigned short *)OCR1A); SERIAL_ERRORLNPGM(" ISR overtaking itself."); + OCR1A = 0x30000; return; } // The busy-flag is used to avoid reentering this interrupt @@ -295,22 +303,26 @@ ISR(TIMER1_COMPA_vect) WRITE(X_DIR_PIN, INVERT_X_DIR); count_direction[X_AXIS]=-1; #if X_MIN_PIN > -1 - if((READ(X_MIN_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x > 0)) { + bool x_min_endstop=(READ(X_MIN_PIN) != X_ENDSTOPS_INVERTING); + if(x_min_endstop && old_x_min_endstop && (current_block->steps_x > 0)) { endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; endstop_x_hit=true; step_events_completed = current_block->step_event_count; } + old_x_min_endstop = x_min_endstop; #endif } else { // +direction WRITE(X_DIR_PIN,!INVERT_X_DIR); count_direction[X_AXIS]=1; #if X_MAX_PIN > -1 - if((READ(X_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_x > 0)){ + bool x_max_endstop=(READ(X_MAX_PIN) != X_ENDSTOPS_INVERTING); + if(x_max_endstop && old_x_max_endstop && (current_block->steps_x > 0)){ endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; endstop_x_hit=true; step_events_completed = current_block->step_event_count; } + old_x_max_endstop = x_max_endstop; #endif } @@ -318,22 +330,26 @@ ISR(TIMER1_COMPA_vect) WRITE(Y_DIR_PIN,INVERT_Y_DIR); count_direction[Y_AXIS]=-1; #if Y_MIN_PIN > -1 - if((READ(Y_MIN_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y > 0)) { + bool y_min_endstop=(READ(Y_MIN_PIN) != Y_ENDSTOPS_INVERTING); + if(y_min_endstop && old_y_min_endstop && (current_block->steps_y > 0)) { endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; endstop_y_hit=true; step_events_completed = current_block->step_event_count; } + old_y_min_endstop = y_min_endstop; #endif } else { // +direction WRITE(Y_DIR_PIN,!INVERT_Y_DIR); count_direction[Y_AXIS]=1; #if Y_MAX_PIN > -1 - if((READ(Y_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_y > 0)){ + bool y_max_endstop=(READ(Y_MAX_PIN) != Y_ENDSTOPS_INVERTING); + if(y_max_endstop && old_y_max_endstop && (current_block->steps_y > 0)){ endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; endstop_y_hit=true; step_events_completed = current_block->step_event_count; } + old_y_max_endstop = y_max_endstop; #endif } @@ -341,22 +357,26 @@ ISR(TIMER1_COMPA_vect) WRITE(Z_DIR_PIN,INVERT_Z_DIR); count_direction[Z_AXIS]=-1; #if Z_MIN_PIN > -1 - if((READ(Z_MIN_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z > 0)) { + bool z_min_endstop=(READ(Z_MIN_PIN) != Z_ENDSTOPS_INVERTING); + if(z_min_endstop && old_z_min_endstop && (current_block->steps_z > 0)) { endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; endstop_z_hit=true; step_events_completed = current_block->step_event_count; } + old_z_min_endstop = z_min_endstop; #endif } else { // +direction WRITE(Z_DIR_PIN,!INVERT_Z_DIR); count_direction[Z_AXIS]=1; #if Z_MAX_PIN > -1 - if((READ(Z_MAX_PIN) != ENDSTOPS_INVERTING) && (current_block->steps_z > 0)){ + bool z_max_endstop=(READ(Z_MAX_PIN) != Z_ENDSTOPS_INVERTING); + if(z_max_endstop && old_z_max_endstop && (current_block->steps_z > 0)) { endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; endstop_z_hit=true; step_events_completed = current_block->step_event_count; } + old_z_max_endstop = z_max_endstop; #endif } @@ -654,6 +674,13 @@ void st_set_position(const long &x, const long &y, const long &z, const long &e) CRITICAL_SECTION_END; } +void st_set_e_position(const long &e) +{ + CRITICAL_SECTION_START; + count_position[E_AXIS] = e; + CRITICAL_SECTION_END; +} + long st_get_position(char axis) { long count_pos; diff --git a/Marlin/stepper.h b/Marlin/stepper.h index eb07fa9ce..468838486 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -31,6 +31,7 @@ void st_synchronize(); // Set current position in steps void st_set_position(const long &x, const long &y, const long &z, const long &e); +void st_set_e_position(const long &e); // Get current position in steps long st_get_position(char axis); @@ -48,4 +49,4 @@ void endstops_hit_on_purpose(); //avoid creation of the message, i.e. after home extern block_t *current_block; // A pointer to the block currently being traced -#endif +#endif From 0e0e4945d8ad060aa50552a0b27369c18442c2d0 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 25 Nov 2011 13:59:58 +0100 Subject: [PATCH 099/430] Removed ISR overtaken message from ISR routine --- Marlin/Marlin.pde | 1 + Marlin/stepper.cpp | 18 +++++++++++++++--- Marlin/stepper.h | 2 +- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 61078eee7..edba13f35 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -289,6 +289,7 @@ void loop() manage_heater(); manage_inactivity(1); checkHitEndstops(); + checkStepperErrors(); LCD_STATUS; } diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index ad1fda9e0..2a3b8d8ca 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -77,6 +77,9 @@ static bool old_y_max_endstop=false; static bool old_z_min_endstop=false; static bool old_z_max_endstop=false; +static bool bussy_error=false; +unsigned char OCR1A_error=12345; + volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; @@ -160,6 +163,16 @@ asm volatile ( \ #define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1< Date: Fri, 25 Nov 2011 15:32:50 +0100 Subject: [PATCH 100/430] Small nominal speed improvement. --- Marlin/stepper.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 2a3b8d8ca..19f5bd9d0 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -78,7 +78,8 @@ static bool old_z_min_endstop=false; static bool old_z_max_endstop=false; static bool bussy_error=false; -unsigned char OCR1A_error=12345; +unsigned short OCR1A_error=12345; +unsigned short OCR1A_nominal; volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; @@ -270,6 +271,7 @@ inline void trapezoid_generator_reset() { acc_step_rate = current_block->initial_rate; acceleration_time = calc_timer(acc_step_rate); OCR1A = acceleration_time; + OCR1A_nominal = calc_timer(current_block->nominal_rate); } // "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. @@ -477,11 +479,11 @@ ISR(TIMER1_COMPA_vect) // step_rate to timer interval timer = calc_timer(acc_step_rate); + OCR1A = timer; + acceleration_time += timer; #ifdef ADVANCE advance += advance_rate; #endif - acceleration_time += timer; - OCR1A = timer; } else if (step_events_completed > current_block->decelerate_after) { MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); @@ -499,17 +501,16 @@ ISR(TIMER1_COMPA_vect) // step_rate to timer interval timer = calc_timer(step_rate); + OCR1A = timer; + deceleration_time += timer; #ifdef ADVANCE advance -= advance_rate; if(advance < final_advance) advance = final_advance; #endif //ADVANCE - deceleration_time += timer; - OCR1A = timer; } else { - timer = calc_timer(current_block->nominal_rate); - OCR1A = timer; + OCR1A = OCR1A_nominal; } // If current block is finished, reset pointer From 6ac9b2e7614766a38276d143592ba0b6e8f31271 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 25 Nov 2011 19:34:36 +0100 Subject: [PATCH 101/430] Fixed residency time bug. (Thanks to Sound :-) ) --- Marlin/Marlin.pde | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index edba13f35..c55d7b7da 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -737,7 +737,7 @@ inline void process_commands() residencyStart = -1; /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) || + while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0())) || (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) ) { From cdf0bd4e635508ba622e0a333ddf5ffbde90cfa3 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 25 Nov 2011 20:07:30 +0100 Subject: [PATCH 102/430] Fixed config bug when EEPROM was disabled --- Marlin/EEPROMwrite.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 3d8a0b2b9..be3210fc9 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -102,6 +102,7 @@ inline void RetrieveSettings(bool def=false) SERIAL_ECHOLNPGM("Stored settings retreived:"); } else + #endif { float tmp1[]=DEFAULT_AXIS_STEPS_PER_UNIT; float tmp2[]=DEFAULT_MAX_FEEDRATE; @@ -173,8 +174,6 @@ inline void RetrieveSettings(bool def=false) SERIAL_ECHOLN(""); #endif #endif - - #endif //EEPROM_SETTINGS } #endif From 27654bfe697ee08a83f4f39567357827ef77fd1f Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 25 Nov 2011 22:10:06 +0100 Subject: [PATCH 103/430] Fixed variable (removed 0x) --- Marlin/stepper.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 19f5bd9d0..cae5b61cd 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -281,7 +281,7 @@ ISR(TIMER1_COMPA_vect) if(busy){ OCR1A_error = OCR1A; bussy_error = true; - OCR1A = 0x30000; + OCR1A = 30000; return; } // The busy-flag is used to avoid reentering this interrupt From 235051253a504fa6f4866bda604f2612df7aad0e Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 25 Nov 2011 22:14:29 +0100 Subject: [PATCH 104/430] overworked lcd+eeprom to have only mm/sec and PID including pid_dt --- Marlin/EEPROMwrite.h | 22 +++++++++++----------- Marlin/ultralcd.pde | 24 ++++++++++++------------ 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index be3210fc9..3d559c026 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -136,10 +136,10 @@ inline void RetrieveSettings(bool def=false) SERIAL_ECHO_START; SERIAL_ECHOLNPGM("Maximum feedrates (mm/s):"); SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M203 X",max_feedrate[0]/60); - SERIAL_ECHOPAIR(" Y",max_feedrate[1]/60 ); - SERIAL_ECHOPAIR(" Z", max_feedrate[2]/60 ); - SERIAL_ECHOPAIR(" E", max_feedrate[3]/60); + SERIAL_ECHOPAIR(" M203 X",max_feedrate[0]); + SERIAL_ECHOPAIR(" Y",max_feedrate[1] ); + SERIAL_ECHOPAIR(" Z", max_feedrate[2] ); + SERIAL_ECHOPAIR(" E", max_feedrate[3]); SERIAL_ECHOLN(""); SERIAL_ECHO_START; SERIAL_ECHOLNPGM("Maximum Acceleration (mm/s2):"); @@ -158,19 +158,19 @@ inline void RetrieveSettings(bool def=false) SERIAL_ECHO_START; SERIAL_ECHOLNPGM("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M205 S",minimumfeedrate/60 ); - SERIAL_ECHOPAIR(" T" ,mintravelfeedrate/60 ); + SERIAL_ECHOPAIR(" M205 S",minimumfeedrate ); + SERIAL_ECHOPAIR(" T" ,mintravelfeedrate ); SERIAL_ECHOPAIR(" B" ,minsegmenttime ); - SERIAL_ECHOPAIR(" X" ,max_xy_jerk/60 ); - SERIAL_ECHOPAIR(" Z" ,max_z_jerk/60); + SERIAL_ECHOPAIR(" X" ,max_xy_jerk ); + SERIAL_ECHOPAIR(" Z" ,max_z_jerk); SERIAL_ECHOLN(""); #ifdef PIDTEMP SERIAL_ECHO_START; SERIAL_ECHOLNPGM("PID settings:"); SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M301 P",Kp ); - SERIAL_ECHOPAIR(" I" ,Ki ); - SERIAL_ECHOPAIR(" D" ,Kd); + SERIAL_ECHOPAIR(" M301 P",Kp); + SERIAL_ECHOPAIR(" I" ,Ki/PID_dT); + SERIAL_ECHOPAIR(" D" ,Kd*PID_dT); SERIAL_ECHOLN(""); #endif #endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index e2a75df10..e6a16a408 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -758,11 +758,11 @@ void MainMenu::showControlTemp() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Kp/5; + encoderpos=(int)Kp; } else { - Kp= encoderpos*5; + Kp= encoderpos; encoderpos=activeline*lcdslow; } @@ -772,8 +772,8 @@ void MainMenu::showControlTemp() if(linechanging) { if(encoderpos<1) encoderpos=1; - if(encoderpos>9990/5) encoderpos=9990/5; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); } } }break; @@ -782,7 +782,7 @@ void MainMenu::showControlTemp() if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" PID-I: "); - lcd.setCursor(13,line);lcd.print(ftostr51(Ki)); + lcd.setCursor(13,line);lcd.print(ftostr51(Ki/PID_dT)); } if((activeline==line) ) @@ -792,11 +792,11 @@ void MainMenu::showControlTemp() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)(Ki*10); + encoderpos=(int)(Ki*10/PID_dT); } else { - Ki= encoderpos/10.; + Ki= encoderpos/10.*PID_dT; encoderpos=activeline*lcdslow; } @@ -816,7 +816,7 @@ void MainMenu::showControlTemp() if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" PID-D: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kd)); + lcd.setCursor(13,line);lcd.print(itostr4(Kd*PID_dT)); } if((activeline==line) ) @@ -826,11 +826,11 @@ void MainMenu::showControlTemp() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)Kd/5; + encoderpos=(int)(Kd/5./PID_dT); } else { - Kd= encoderpos*5; + Kd= encoderpos; encoderpos=activeline*lcdslow; } @@ -840,8 +840,8 @@ void MainMenu::showControlTemp() if(linechanging) { if(encoderpos<0) encoderpos=0; - if(encoderpos>9990/5) encoderpos=9990/5; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos*5)); + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); } } }break; From b58787a3672111d487bbc53049329a92792a161d Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 25 Nov 2011 22:32:26 +0100 Subject: [PATCH 105/430] now velocities are also set in mm/sec in gcode. --- Marlin/Marlin.pde | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c55d7b7da..6cc7d6c03 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -913,7 +913,7 @@ inline void process_commands() #endif case 203: // M203 max feedrate mm/sec for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) max_feedrate[i] = code_value()*60 ; + if(code_seen(axis_codes[i])) max_feedrate[i] = code_value(); } break; case 204: // M204 acclereration S normal moves T filmanent only moves @@ -924,11 +924,11 @@ inline void process_commands() break; case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk { - if(code_seen('S')) minimumfeedrate = code_value()*60 ; - if(code_seen('T')) mintravelfeedrate = code_value()*60 ; + if(code_seen('S')) minimumfeedrate = code_value(); + if(code_seen('T')) mintravelfeedrate = code_value(); if(code_seen('B')) minsegmenttime = code_value() ; - if(code_seen('X')) max_xy_jerk = code_value()*60 ; - if(code_seen('Z')) max_z_jerk = code_value()*60 ; + if(code_seen('X')) max_xy_jerk = code_value() ; + if(code_seen('Z')) max_z_jerk = code_value()s ; } break; case 220: // M220 S- set speed factor override percentage From 57e163e98999b45b9fff814dfee20d2ea01947f1 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 25 Nov 2011 22:34:12 +0100 Subject: [PATCH 106/430] typo --- Marlin/Marlin.pde | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 6cc7d6c03..381d6aa9b 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -928,7 +928,7 @@ inline void process_commands() if(code_seen('T')) mintravelfeedrate = code_value(); if(code_seen('B')) minsegmenttime = code_value() ; if(code_seen('X')) max_xy_jerk = code_value() ; - if(code_seen('Z')) max_z_jerk = code_value()s ; + if(code_seen('Z')) max_z_jerk = code_value() ; } break; case 220: // M220 S- set speed factor override percentage From a6823a84e18f7738cafe309c21b55a110ea51d6d Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 25 Nov 2011 22:36:33 +0100 Subject: [PATCH 107/430] another typo --- Marlin/stepper.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index cae5b61cd..0c3f0ee1b 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -77,7 +77,7 @@ static bool old_y_max_endstop=false; static bool old_z_min_endstop=false; static bool old_z_max_endstop=false; -static bool bussy_error=false; +static bool busy_error=false; unsigned short OCR1A_error=12345; unsigned short OCR1A_nominal; @@ -166,11 +166,11 @@ asm volatile ( \ void checkStepperErrors() { - if(bussy_error) { + if(busy_error) { SERIAL_ERROR_START SERIAL_ERROR(OCR1A_error); SERIAL_ERRORLNPGM(" ISR overtaking itself."); - bussy_error = false; + busy_error = false; } } @@ -280,7 +280,7 @@ ISR(TIMER1_COMPA_vect) { if(busy){ OCR1A_error = OCR1A; - bussy_error = true; + busy_error = true; OCR1A = 30000; return; } // The busy-flag is used to avoid reentering this interrupt From c54a80782418a65b6bb7137850ac2129b9f4f7c5 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 25 Nov 2011 23:37:08 +0100 Subject: [PATCH 108/430] overworked ultralcd a bit --- Marlin/cardreader.h | 1 + Marlin/ultralcd.pde | 18 +++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 44ebf0e2c..18086e576 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -35,6 +35,7 @@ public: inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; inline uint8_t percentDone(){if(!sdprinting) return 0; if(filesize) return sdpos*100/filesize; else return 0;}; + inline char* getWorkDirName(){workDir.getFilename(filename);return filename;}; public: bool saving; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index e6a16a408..47396e4c1 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -456,7 +456,7 @@ void MainMenu::showPrepare() switch(i) { case ItemP_exit: - MENUITEM( lcdprintPGM(" Prepare") , BLOCK;status=Main_Menu;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; case ItemP_home: MENUITEM( lcdprintPGM(" Auto Home") , BLOCK;enquecommand("G28 X-105 Y-105 Z0");beepshort(); ) ; @@ -493,7 +493,7 @@ void MainMenu::showTune() switch(i) { case ItemT_exit: - MENUITEM( lcdprintPGM(" Tune") , BLOCK;status=Main_Menu;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; case ItemT_speed: { @@ -673,7 +673,7 @@ void MainMenu::showControlTemp() switch(i) { case ItemCT_exit: - MENUITEM( lcdprintPGM(" Temperature") , BLOCK;status=Main_Control;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Control \003") , BLOCK;status=Main_Control;beepshort(); ) ; break; case ItemCT_nozzle: { @@ -915,7 +915,7 @@ void MainMenu::showControlMotion() switch(i) { case ItemCM_exit: - MENUITEM( lcdprintPGM(" Motion") , BLOCK;status=Main_Control;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Control \003") , BLOCK;status=Main_Control;beepshort(); ) ; break; case ItemCM_acc: { @@ -1230,7 +1230,7 @@ void MainMenu::showControl() switch(i) { case ItemC_exit: - MENUITEM( lcdprintPGM(" Control \x7E") , BLOCK;status=Main_Menu;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; case ItemC_temp: MENUITEM( lcdprintPGM(" Temperature \x7E") , BLOCK;status=Sub_TempControl;beepshort(); ) ; @@ -1317,7 +1317,7 @@ void MainMenu::showSD() switch(i) { case 0: - MENUITEM( lcdprintPGM(" File") , BLOCK;status=Main_Menu;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; // case 1: // { @@ -1348,7 +1348,7 @@ void MainMenu::showSD() // } // }break; case 1: - MENUITEM( lcdprintPGM(" ..") , BLOCK;card.updir();enforceupdate=true;lineoffset=0;beepshort(); ) ; + MENUITEM( lcd.print(" ");card.getWorkDirName();if(card.filename[0]=='/') lcdprintPGM("\004Refresh");else {lcd.print("\005");lcd.print(card.filename);lcd.print("/..");} , BLOCK;card.updir();enforceupdate=true;lineoffset=0;beepshort(); ) ; break; default: @@ -1435,10 +1435,10 @@ void MainMenu::showMainMenu() switch(line) { case ItemM_watch: - MENUITEM( lcdprintPGM(" Watch") , BLOCK;status=Main_Status;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Watch \003") , BLOCK;status=Main_Status;beepshort(); ) ; break; case ItemM_prepare: - MENUITEM( if(!tune) lcdprintPGM(" Prepare \x7E");else lcdprintPGM(" Tune \x7E"); , BLOCK;status=Main_Prepare;beepshort(); ) ; + MENUITEM( if(!tune) lcdprintPGM(" Prepare \x7E");else lcdprintPGM(" Tune \x7E"); , BLOCK;status=Main_Prepare;beepshort(); ) ; break; case ItemM_control: From 191f36b4933be2686a51dd62dbe532ee90f38ab5 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 25 Nov 2011 23:59:30 +0100 Subject: [PATCH 109/430] slowdown --- Marlin/planner.cpp | 2 +- Marlin/ultralcd.pde | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 8a27a2cc2..bb2e2a672 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -530,7 +530,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill int moves_queued=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); - if(moves_queued < (BLOCK_BUFFER_SIZE * 0.5)) feed_rate = feed_rate / ((BLOCK_BUFFER_SIZE * 0.5)/moves_queued); + if(moves_queued < (BLOCK_BUFFER_SIZE * 0.5)) feed_rate = feed_rate*moves_queued / (BLOCK_BUFFER_SIZE * 0.5); #endif /* diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 47396e4c1..91bb43d43 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1435,7 +1435,7 @@ void MainMenu::showMainMenu() switch(line) { case ItemM_watch: - MENUITEM( lcdprintPGM(" Watch \003") , BLOCK;status=Main_Status;beepshort(); ) ; + MENUITEM( lcdprintPGM(" Watch \003") , BLOCK;status=Main_Status;beepshort(); ) ; break; case ItemM_prepare: MENUITEM( if(!tune) lcdprintPGM(" Prepare \x7E");else lcdprintPGM(" Tune \x7E"); , BLOCK;status=Main_Prepare;beepshort(); ) ; From 74d0032e258dd66009a81f4d0e70eaee987be192 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sat, 26 Nov 2011 09:03:12 +0100 Subject: [PATCH 110/430] cooldown blocking selectable by #define. --- Marlin/Configuration.h | 5 +++++ Marlin/Marlin.pde | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f8bb40e12..4dea777cf 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -84,6 +84,11 @@ //#define BED_MAXTEMP 150 +// Wait for Cooldown +// This defines if the M109 call should not block if it is cooling down. +// example: From a current temp of 220, you set M109 S200. +// if CooldownNoWait is defined M109 will not wait for the cooldown to finish +#define CooldownNoWait true // PID settings: // Uncomment the following line to enable PID support. diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 381d6aa9b..60ec2b22e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -517,7 +517,10 @@ inline void process_commands() codenum = 0; if(code_seen('P')) codenum = code_value(); // milliseconds to wait if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait + + st_synchronize(); codenum += millis(); // keep track of when we started waiting + while(millis() < codenum ){ manage_heater(); } @@ -579,7 +582,7 @@ inline void process_commands() switch( (int)code_value() ) { - case 17: + case 17: LCD_MESSAGEPGM("No move."); enable_x(); enable_y(); @@ -740,7 +743,7 @@ inline void process_commands() while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0())) || (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else - while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) ) { + while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down From 4d6a5c29df87270b13c6ec7b5adb58c1aa29e3a8 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sat, 26 Nov 2011 11:50:23 +0100 Subject: [PATCH 111/430] disable steppers as routine in stepper.cpp --- Marlin/Marlin.pde | 8 ++------ Marlin/stepper.cpp | 10 ++++++++++ Marlin/stepper.h | 2 ++ 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 60ec2b22e..d94f810c1 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -641,6 +641,7 @@ inline void process_commands() //processed in write to file routine above //card,saving = false; break; + #endif //SDSUPPORT case 30: //M30 take time since the start of the SD print or an M109 command @@ -832,12 +833,7 @@ inline void process_commands() } else { - st_synchronize(); - LCD_MESSAGEPGM("Free move."); - disable_x(); - disable_y(); - disable_z(); - disable_e(); + finishAndDisableSteppers(); } break; case 85: // M85 diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 0c3f0ee1b..491b6e7f2 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -702,3 +702,13 @@ long st_get_position(char axis) CRITICAL_SECTION_END; return count_pos; } + +void finishAndDisableSteppers() +{ + st_synchronize(); + LCD_MESSAGEPGM("Released."); + disable_x(); + disable_y(); + disable_z(); + disable_e(); +} diff --git a/Marlin/stepper.h b/Marlin/stepper.h index 97f72bf2e..73b7efb1c 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -46,6 +46,8 @@ void endstops_hit_on_purpose(); //avoid creation of the message, i.e. after home void checkStepperErrors(); //Print errors detected by the stepper +void finishAndDisableSteppers(); + extern block_t *current_block; // A pointer to the block currently being traced From 6d6f323535c8523341359ff3747516c86906969c Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sat, 26 Nov 2011 11:51:38 +0100 Subject: [PATCH 112/430] make an option if sd-card stop should release the steppers. --- Marlin/Configuration.h | 1 + Marlin/cardreader.h | 3 ++- Marlin/cardreader.pde | 11 +++++++++++ Marlin/ultralcd.pde | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 4dea777cf..17a885463 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -281,6 +281,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 //#define SDSUPPORT // Enable SD Card Support in Hardware Console +#define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? //#define ULTIPANEL #ifdef ULTIPANEL diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 18086e576..4530e4e20 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -2,7 +2,7 @@ #define __CARDREADERH #ifdef SDSUPPORT - + #include "SdFile.h" enum LsAction {LS_SerialPrint,LS_Count,LS_GetFilename}; class CardReader @@ -22,6 +22,7 @@ public: void startFileprint(); void pauseSDPrint(); void getStatus(); + void printingHasFinished(); void getfilename(const uint8_t nr); uint16_t getnrfilenames(); diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index eec10f199..03f3f4638 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -2,6 +2,8 @@ //#include #ifdef SDSUPPORT +#include "Configuration.h" + CardReader::CardReader() { filesize = 0; @@ -426,4 +428,13 @@ void CardReader::updir() } } + +void CardReader::printingHasFinished() +{ + sdprinting = false; + if(SD_FINISHED_STEPPERRELEASE) + { + finishAndDisableSteppers(); + } +} #endif //SDSUPPORT \ No newline at end of file diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 91bb43d43..a90a6c66d 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1471,7 +1471,7 @@ void MainMenu::showMainMenu() #endif if((activeline==line)&&CLICKED) { - card.sdprinting = false; + card.printingHasFinished(); BLOCK; status=Main_SD; beepshort(); From a0dc66f7bfab6815c4a64a1fbf02dd82d1d75d11 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sat, 26 Nov 2011 12:04:06 +0100 Subject: [PATCH 113/430] Home retract distance configureable per axis. --- Marlin/Configuration.h | 5 +++++ Marlin/Marlin.pde | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 17a885463..7bd94f640 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -207,6 +207,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E #define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +//homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: +#define X_HOME_RETRACT_MM 5 +#define Y_HOME_RETRACT_MM 5 +#define Z_HOME_RETRACT_MM 1 + #define AXIS_RELATIVE_MODES {false, false, false, false} #define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d94f810c1..d765d222b 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -469,10 +469,10 @@ inline bool code_seen(char code) \ current_position[LETTER##_AXIS] = 0;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ - destination[LETTER##_AXIS] = -5 * LETTER##_HOME_DIR;\ + destination[LETTER##_AXIS] = -LETTER##_HOME_RETRACT_MM * LETTER##_HOME_DIR;\ prepare_move(); \ \ - destination[LETTER##_AXIS] = 10 * LETTER##_HOME_DIR;\ + destination[LETTER##_AXIS] = 2*LETTER##_HOME_RETRACT_MM * LETTER##_HOME_DIR;\ feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ prepare_move(); \ \ From aad4b75b94094142ece357b1bbcc25a080bbd9ac Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 26 Nov 2011 17:33:25 +0100 Subject: [PATCH 114/430] First parts 2nd extruder --- Marlin/Configuration.h | 1 + Marlin/Marlin.pde | 122 ++++++++++++++++++++++++++--------------- Marlin/planner.cpp | 2 + Marlin/planner.h | 1 + Marlin/temperature.h | 21 +++++++ 5 files changed, 104 insertions(+), 43 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 7bd94f640..3a1983956 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -8,6 +8,7 @@ //#define BAUDRATE 115200 //#define BAUDRATE 230400 +#define EXTRUDERS 1 // Frequency limit // See nophead's blog for more info diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d765d222b..836f5aa9a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -174,7 +174,7 @@ static unsigned long stepper_inactive_time = 0; static unsigned long starttime=0; static unsigned long stoptime=0; - +static uint8_t tmp_extruder; //=========================================================================== //=============================ROUTINES============================= @@ -641,7 +641,6 @@ inline void process_commands() //processed in write to file routine above //card,saving = false; break; - #endif //SDSUPPORT case 30: //M30 take time since the start of the SD print or an M109 command @@ -684,19 +683,36 @@ inline void process_commands() } break; case 104: // M104 - if (code_seen('S')) setTargetHotend0(code_value()); + tmp_extruder = active_extruder; + if(code_seen('T')) { + tmp_extruder = code_value(); + if(tmp_extruder >= EXTRUDERS) { + SERIAL_ECHO_START; + SERIAL_ECHO("M104 Invalid extruder "); + SERIAL_ECHOLN(tmp_extruder); + break; + } + } + if (code_seen('S')) setTargetHotend(code_value(), tmp_extruder); setWatch(); break; case 140: // M140 set bed temp if (code_seen('S')) setTargetBed(code_value()); break; case 105 : // M105 - //SERIAL_ECHOLN(freeMemory()); - //test watchdog: - //delay(20000); - #if (TEMP_0_PIN > -1) || defined (HEATER_USES_AD595) + tmp_extruder = active_extruder; + if(code_seen('T')) { + tmp_extruder = code_value(); + if(tmp_extruder >= EXTRUDERS) { + SERIAL_ECHO_START; + SERIAL_ECHO("M105 Invalid extruder "); + SERIAL_ECHOLN(tmp_extruder); + break; + } + } + #if (TEMP_0_PIN > -1) || (TEMP_2_PIN > -1) SERIAL_PROTOCOLPGM("ok T:"); - SERIAL_PROTOCOL( degHotend0()); + SERIAL_PROTOCOL( degHotend(tmp_extruder)); #if TEMP_1_PIN > -1 SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOL(degBed()); @@ -715,41 +731,51 @@ inline void process_commands() break; case 109: {// M109 - Wait for extruder heater to reach target. - LCD_MESSAGEPGM("Heating..."); - #ifdef AUTOTEMP - autotemp_enabled=false; - #endif - if (code_seen('S')) setTargetHotend0(code_value()); - #ifdef AUTOTEMP - if (code_seen('S')) autotemp_min=code_value(); - if (code_seen('T')) autotemp_max=code_value(); - if (code_seen('F')) - { - autotemp_factor=code_value(); - autotemp_enabled=true; - } - #endif - - setWatch(); - codenum = millis(); + tmp_extruder = active_extruder; + if(code_seen('T')) { + tmp_extruder = code_value(); + if(tmp_extruder >= EXTRUDERS) { + SERIAL_ECHO_START; + SERIAL_ECHO("M109 Invalid extruder "); + SERIAL_ECHOLN(tmp_extruder); + break; + } + } + LCD_MESSAGEPGM("Heating..."); + #ifdef AUTOTEMP + autotemp_enabled=false; + #endif + if (code_seen('S')) setTargetHotend(code_value(), tmp_extruder); + #ifdef AUTOTEMP + if (code_seen('S')) autotemp_min=code_value(); + if (code_seen('G')) autotemp_max=code_value(); + if (code_seen('F')) + { + autotemp_factor=code_value(); + autotemp_enabled=true; + } + #endif + + setWatch(); + codenum = millis(); - /* See if we are heating up or cooling down */ - bool target_direction = isHeatingHotend0(); // true if heating, false if cooling + /* See if we are heating up or cooling down */ + bool target_direction = isHeatingHotend(tmp_extruder); // true if heating, false if cooling - #ifdef TEMP_RESIDENCY_TIME - long residencyStart; - residencyStart = -1; - /* continue to loop until we have reached the target temp - _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0())) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { - #else - while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()&&(CooldownNoWait==false)) ) { - #endif //TEMP_RESIDENCY_TIME + #ifdef TEMP_RESIDENCY_TIME + long residencyStart; + residencyStart = -1; + /* continue to loop until we have reached the target temp + _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ + while((target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder))) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + #else + while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { + #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading every 1 second while heating up/cooling down SERIAL_PROTOCOLPGM("T:"); - SERIAL_PROTOCOLLN( degHotend0() ); + SERIAL_PROTOCOLLN( degHotend(tmp_extruder) ); codenum = millis(); } manage_heater(); @@ -757,9 +783,9 @@ inline void process_commands() #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ - if ((residencyStart == -1 && target_direction && !isHeatingHotend0()) || - (residencyStart == -1 && !target_direction && !isCoolingHotend0()) || - (residencyStart > -1 && labs(degHotend0() - degTargetHotend0()) > TEMP_HYSTERESIS) ) + if ((residencyStart == -1 && target_direction && !isHeatingHotend(tmp_extruder)) || + (residencyStart == -1 && !target_direction && !isCoolingHotend(tmp_extruder)) || + (residencyStart > -1 && labs(degHotend(tmp_extruder) - degTargetHotend(tmp_extruder)) > TEMP_HYSTERESIS) ) { residencyStart = millis(); } @@ -943,8 +969,6 @@ inline void process_commands() #ifdef PIDTEMP case 301: // M301 { - - if(code_seen('P')) Kp = code_value(); if(code_seen('I')) Ki = code_value()*PID_dT; if(code_seen('D')) Kd = code_value()/PID_dT; @@ -989,6 +1013,18 @@ inline void process_commands() } } + else if(code_seen('T')) { + tmp_extruder = code_value(); + if(tmp_extruder >= EXTRUDERS) { + SERIAL_ECHO_START; + SERIAL_ECHO("T"); + SERIAL_ECHO(tmp_extruder); + SERIAL_ECHOLN("Invalid extruder"); + } + else { + active_extruder = tmp_extruder; + } + } else { SERIAL_ECHO_START; diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index bb2e2a672..0f9b1eb9e 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -81,6 +81,8 @@ float max_z_jerk; float mintravelfeedrate; unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +uint8_t active_extruder = 0; + // The current position of the tool in absolute steps long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode static float previous_speed[4]; // Speed of previous path line segment diff --git a/Marlin/planner.h b/Marlin/planner.h index 9aa121aca..57c59a0b0 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -94,6 +94,7 @@ extern float max_z_jerk; extern float mintravelfeedrate; extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +extern uint8_t active_extruder; #ifdef AUTOTEMP extern bool autotemp_enabled; diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 0f0de985f..e832eb623 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -62,9 +62,18 @@ extern float Kp,Ki,Kd,Kc; inline float degHotend0(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]);}; inline float degHotend1(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]);}; inline float degBed() { return analog2tempBed(current_raw[TEMPSENSOR_BED]);}; +inline float degHotend(uint8_t extruder){ + if(extruder == 0) return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + if(extruder == 1) return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]); +}; inline float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]);}; inline float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; +inline float degTargetHotend(uint8_t extruder){ + if(extruder == 0) return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]); + if(extruder == 1) return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]); +}; + inline float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSOR_BED]);}; inline void setTargetHotend0(const float &celsius) @@ -75,14 +84,26 @@ inline void setTargetHotend0(const float &celsius) #endif //PIDTEMP }; inline void setTargetHotend1(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; +inline float setTargetHotend(const float &celcius, uint8_t extruder){ + if(extruder == 0) setTargetHotend0(celcius); + if(extruder == 1) setTargetHotend1(celcius); +}; inline void setTargetBed(const float &celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; inline bool isHeatingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; inline bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; +inline float isHeatingHotend(uint8_t extruder){ + if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]; + if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1]; +}; inline bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; inline bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; inline bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; +inline float isCoolingHotend(uint8_t extruder){ + if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0]; + if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1]; +}; inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; void disable_heater(); From f8e170a44bca32500c6c809b8a61f2721a4a13bf Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 27 Nov 2011 14:57:12 +0100 Subject: [PATCH 115/430] planner optimization by inline functions --- Marlin/planner.cpp | 23 +++++++---------------- Marlin/planner.h | 29 ++++++++++++++++++++++++----- 2 files changed, 31 insertions(+), 21 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index bb2e2a672..2367e313a 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -93,13 +93,17 @@ static float previous_nominal_speed; // Nominal speed of previous path line segm bool autotemp_enabled=false; #endif + +//=========================================================================== +//=================semi-private variables, used in inline functions ===== +//=========================================================================== +block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions +volatile unsigned char block_buffer_head; // Index of the next block to be pushed +volatile unsigned char block_buffer_tail; // Index of the block to process now //=========================================================================== //=============================private variables ============================ //=========================================================================== -static block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions -static volatile unsigned char block_buffer_head; // Index of the next block to be pushed -static volatile unsigned char block_buffer_tail; // Index of the block to process now // Used for the frequency limit static unsigned char old_direction_bits = 0; // Old direction bits. Used for speed calculations @@ -364,20 +368,7 @@ void plan_init() { } -void plan_discard_current_block() { - if (block_buffer_head != block_buffer_tail) { - block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); - } -} -block_t *plan_get_current_block() { - if (block_buffer_head == block_buffer_tail) { - return(NULL); - } - block_t *block = &block_buffer[block_buffer_tail]; - block->busy = true; - return(block); -} #ifdef AUTOTEMP void getHighESpeed() diff --git a/Marlin/planner.h b/Marlin/planner.h index 9aa121aca..7bae9a1c9 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -72,12 +72,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa void plan_set_position(const float &x, const float &y, const float &z, const float &e); void plan_set_e_position(const float &e); -// Called when the current block is no longer needed. Discards the block and makes the memory -// availible for new blocks. -void plan_discard_current_block(); -// Gets the current block. Returns NULL if buffer empty -block_t *plan_get_current_block(); void check_axes_activity(); uint8_t movesplanned(); //return the nr of buffered moves @@ -102,4 +97,28 @@ extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; extern float autotemp_factor; #endif + +/////semi-private stuff +#include + +extern block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions +extern volatile unsigned char block_buffer_head; // Index of the next block to be pushed +extern volatile unsigned char block_buffer_tail; +// Called when the current block is no longer needed. Discards the block and makes the memory +// availible for new blocks. +inline void plan_discard_current_block() { + if (block_buffer_head != block_buffer_tail) { + block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); + } +} + +// Gets the current block. Returns NULL if buffer empty +inline block_t *plan_get_current_block() { + if (block_buffer_head == block_buffer_tail) { + return(NULL); + } + block_t *block = &block_buffer[block_buffer_tail]; + block->busy = true; + return(block); +} #endif From 26a1de1e448cd254f6d69a2a7098c290933d269e Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 27 Nov 2011 16:04:58 +0100 Subject: [PATCH 116/430] force inline --- Marlin/EEPROMwrite.h | 4 ++-- Marlin/Marlin.h | 4 +++- Marlin/cardreader.h | 48 ++++++++++++++++++++++---------------------- Marlin/planner.cpp | 8 +++++--- Marlin/planner.h | 7 +++++-- Marlin/temperature.h | 30 +++++++++++++-------------- Marlin/ultralcd.h | 6 +++--- Marlin/watchdog.h | 4 ++-- 8 files changed, 59 insertions(+), 52 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 3d559c026..08b344af6 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -38,7 +38,7 @@ template int EEPROM_readAnything(int &ee, T& value) // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. #define EEPROM_VERSION "V04" -inline void StoreSettings() +FORCE_INLINE void StoreSettings() { #ifdef EEPROM_SETTINGS char ver[4]= "000"; @@ -71,7 +71,7 @@ inline void StoreSettings() #endif //EEPROM_SETTINGS } -inline void RetrieveSettings(bool def=false) +FORCE_INLINE void RetrieveSettings(bool def=false) { // if def=true, the default values will be used #ifdef EEPROM_SETTINGS int i=EEPROM_OFFSET; diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index acfc3c2fa..20032a685 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -8,6 +8,8 @@ #include #include "Configuration.h" + +#define FORCE_INLINE __attribute__((always_inline)) inline //#define SERIAL_ECHO(x) Serial << "echo: " << x; //#define SERIAL_ECHOLN(x) Serial << "echo: "<=filesize ;}; - inline int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; - inline void setIndex(long index) {sdpos = index;file.seekSet(index);}; - inline uint8_t percentDone(){if(!sdprinting) return 0; if(filesize) return sdpos*100/filesize; else return 0;}; - inline char* getWorkDirName(){workDir.getFilename(filename);return filename;}; + FORCE_INLINE bool eof() { return sdpos>=filesize ;}; + FORCE_INLINE int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; + FORCE_INLINE void setIndex(long index) {sdpos = index;file.seekSet(index);}; + FORCE_INLINE uint8_t percentDone(){if(!sdprinting) return 0; if(filesize) return sdpos*100/filesize; else return 0;}; + FORCE_INLINE char* getWorkDirName(){workDir.getFilename(filename);return filename;}; public: bool saving; @@ -69,31 +69,31 @@ private: class CardReader { public: - inline CardReader(){}; + FORCE_INLINE CardReader(){}; - inline static void initsd(){}; - inline static void write_command(char *buf){}; + FORCE_INLINE static void initsd(){}; + FORCE_INLINE static void write_command(char *buf){}; - inline static void checkautostart(bool x) {}; + FORCE_INLINE static void checkautostart(bool x) {}; - inline static void openFile(char* name,bool read){}; - inline static void closefile() {}; - inline static void release(){}; - inline static void startFileprint(){}; - inline static void startFilewrite(char *name){}; - inline static void pauseSDPrint(){}; - inline static void getStatus(){}; + FORCE_INLINE static void openFile(char* name,bool read){}; + FORCE_INLINE static void closefile() {}; + FORCE_INLINE static void release(){}; + FORCE_INLINE static void startFileprint(){}; + FORCE_INLINE static void startFilewrite(char *name){}; + FORCE_INLINE static void pauseSDPrint(){}; + FORCE_INLINE static void getStatus(){}; - inline static void selectFile(char* name){}; - inline static void getfilename(const uint8_t nr){}; - inline static uint8_t getnrfilenames(){return 0;}; + FORCE_INLINE static void selectFile(char* name){}; + FORCE_INLINE static void getfilename(const uint8_t nr){}; + FORCE_INLINE static uint8_t getnrfilenames(){return 0;}; - inline static void ls() {}; - inline static bool eof() {return true;}; - inline static char get() {return 0;}; - inline static void setIndex(){}; - inline uint8_t percentDone(){return 0;}; + FORCE_INLINE static void ls() {}; + FORCE_INLINE static bool eof() {return true;}; + FORCE_INLINE static char get() {return 0;}; + FORCE_INLINE static void setIndex(){}; + FORCE_INLINE uint8_t percentDone(){return 0;}; }; #endif //SDSUPPORT #endif \ No newline at end of file diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 2367e313a..2c2ba3f77 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -132,7 +132,8 @@ static int8_t prev_block_index(int8_t block_index) { // Calculates the distance (not time) it takes to accelerate from initial_rate to target_rate using the // given acceleration: -inline float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) { +FORCE_INLINE float estimate_acceleration_distance(float initial_rate, float target_rate, float acceleration) +{ if (acceleration!=0) { return((target_rate*target_rate-initial_rate*initial_rate)/ (2.0*acceleration)); @@ -147,7 +148,8 @@ inline float estimate_acceleration_distance(float initial_rate, float target_rat // a total travel of distance. This can be used to compute the intersection point between acceleration and // deceleration in the cases where the trapezoid has no plateau (i.e. never reaches maximum speed) -inline float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) { +FORCE_INLINE float intersection_distance(float initial_rate, float final_rate, float acceleration, float distance) +{ if (acceleration!=0) { return((2.0*acceleration*distance-initial_rate*initial_rate+final_rate*final_rate)/ (4.0*acceleration) ); @@ -211,7 +213,7 @@ void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exi // Calculates the maximum allowable speed at this point when you must be able to reach target_velocity using the // acceleration within the allotted distance. -inline float max_allowable_speed(float acceleration, float target_velocity, float distance) { +FORCE_INLINE float max_allowable_speed(float acceleration, float target_velocity, float distance) { return sqrt(target_velocity*target_velocity-2*acceleration*distance); } diff --git a/Marlin/planner.h b/Marlin/planner.h index 7bae9a1c9..e17580dad 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -25,6 +25,7 @@ #define planner_h #include "Configuration.h" +#include "Marlin.h" // This struct is used when buffering the setup for each linear movement "nominal" values are as specified in // the source g-code and may never actually be reached if acceleration management is active. @@ -106,14 +107,16 @@ extern volatile unsigned char block_buffer_head; // Index of the next extern volatile unsigned char block_buffer_tail; // Called when the current block is no longer needed. Discards the block and makes the memory // availible for new blocks. -inline void plan_discard_current_block() { +FORCE_INLINE void plan_discard_current_block() +{ if (block_buffer_head != block_buffer_tail) { block_buffer_tail = (block_buffer_tail + 1) & (BLOCK_BUFFER_SIZE - 1); } } // Gets the current block. Returns NULL if buffer empty -inline block_t *plan_get_current_block() { +FORCE_INLINE block_t *plan_get_current_block() +{ if (block_buffer_head == block_buffer_tail) { return(NULL); } diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 0f0de985f..9057c1c90 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -59,31 +59,31 @@ extern float Kp,Ki,Kd,Kc; //inline so that there is no performance decrease. //deg=degreeCelsius -inline float degHotend0(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]);}; -inline float degHotend1(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]);}; -inline float degBed() { return analog2tempBed(current_raw[TEMPSENSOR_BED]);}; +FORCE_INLINE float degHotend0(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]);}; +FORCE_INLINE float degHotend1(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]);}; +FORCE_INLINE float degBed() { return analog2tempBed(current_raw[TEMPSENSOR_BED]);}; -inline float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]);}; -inline float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; -inline float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSOR_BED]);}; +FORCE_INLINE float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]);}; +FORCE_INLINE float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; +FORCE_INLINE float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSOR_BED]);}; -inline void setTargetHotend0(const float &celsius) +FORCE_INLINE void setTargetHotend0(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius); #ifdef PIDTEMP pid_setpoint = celsius; #endif //PIDTEMP }; -inline void setTargetHotend1(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; -inline void setTargetBed(const float &celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; +FORCE_INLINE void setTargetHotend1(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; +FORCE_INLINE void setTargetBed(const float &celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; -inline bool isHeatingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; -inline bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; -inline bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; +FORCE_INLINE bool isHeatingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; +FORCE_INLINE bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; +FORCE_INLINE bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; -inline bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; -inline bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; -inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; +FORCE_INLINE bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; +FORCE_INLINE bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; +FORCE_INLINE bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; void disable_heater(); void setWatch(); diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 85a8df74c..887dc04f2 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -79,7 +79,7 @@ bool tune; private: - inline void updateActiveLines(const uint8_t &maxlines,volatile int &encoderpos) + FORCE_INLINE void updateActiveLines(const uint8_t &maxlines,volatile int &encoderpos) { if(linechanging) return; // an item is changint its value, do not switch lines hence lastlineoffset=lineoffset; @@ -119,7 +119,7 @@ } } - inline void clearIfNecessary() + FORCE_INLINE void clearIfNecessary() { if(lastlineoffset!=lineoffset ||force_lcd_update) { @@ -143,7 +143,7 @@ #define LCD_STATUS #define LCD_MESSAGE(x) #define LCD_MESSAGEPGM(x) - inline void lcd_status() {}; + FORCE_INLINE void lcd_status() {}; #endif #ifndef ULTIPANEL diff --git a/Marlin/watchdog.h b/Marlin/watchdog.h index 44ee9de35..1d4148827 100644 --- a/Marlin/watchdog.h +++ b/Marlin/watchdog.h @@ -9,8 +9,8 @@ void wd_reset(); #else - inline void wd_init() {}; - inline void wd_reset() {}; + FORCE_INLINE void wd_init() {}; + FORCE_INLINE void wd_reset() {}; #endif #endif From b128d25f27142381c3f035d1754e28c4a4bb1bf1 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 27 Nov 2011 16:45:00 +0100 Subject: [PATCH 117/430] overlooked some inlines.. --- Marlin/stepper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 491b6e7f2..03ea11be7 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -224,7 +224,7 @@ void st_wake_up() { ENABLE_STEPPER_DRIVER_INTERRUPT(); } -inline unsigned short calc_timer(unsigned short step_rate) { +FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) { unsigned short timer; if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; @@ -261,7 +261,7 @@ inline unsigned short calc_timer(unsigned short step_rate) { // Initializes the trapezoid generator from the current block. Called whenever a new // block begins. -inline void trapezoid_generator_reset() { +FORCE_INLINE void trapezoid_generator_reset() { #ifdef ADVANCE advance = current_block->initial_advance; final_advance = current_block->final_advance; From 6aecf80278c8b3e5eab716592f314554efbca0ea Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 27 Nov 2011 16:45:19 +0100 Subject: [PATCH 118/430] add autotemp support to the lcd --- Marlin/ultralcd.pde | 143 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 141 insertions(+), 2 deletions(-) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index a90a6c66d..a4bb640b7 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -660,7 +660,12 @@ void MainMenu::showTune() // enum { - ItemCT_exit, ItemCT_nozzle, ItemCT_fan, + ItemCT_exit,ItemCT_nozzle, +#ifdef AUTOTEMP + ItemCT_autotempactive, + ItemCT_autotempmin,ItemCT_autotempmax,ItemCT_autotempfact, +#endif + ItemCT_fan, ItemCT_PID_P,ItemCT_PID_I,ItemCT_PID_D,ItemCT_PID_C }; @@ -708,7 +713,128 @@ void MainMenu::showControlTemp() } } }break; - + #ifdef AUTOTEMP + case ItemCT_autotempmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002 Min:"); + lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_max)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(autotemp_max); + } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemCT_autotempmax: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002 Max:"); + lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_max)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(autotemp_max); + } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } + }break; + case ItemCT_autotempfact: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002 Fact:"); + lcd.setCursor(13,line);lcd.print(ftostr32(autotemp_factor)); + } + + if((activeline==line) ) + { + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(autotemp_factor*100); + } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>99) encoderpos=99; + lcd.setCursor(13,line);lcd.print(ftostr32(encoderpos/100.)); + } + } + }break; + case ItemCT_autotempactive: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Autotemp:"); + lcd.setCursor(13,line); + if(autotemp_enabled) + lcdprintPGM("On"); + else + lcdprintPGM("Off"); + } + + if((activeline==line) ) + { + if(CLICKED) + { + autotemp_enabled=!autotemp_enabled; + BLOCK; + } + } + }break; + #endif //autotemp case ItemCT_fan: { if(force_lcd_update) @@ -1620,6 +1746,19 @@ char *ftostr31(const float &x) return conv; } +char *ftostr32(const float &x) +{ + int xx=x*100; + conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/100)%10+'0'; + conv[2]='.'; + conv[3]=(xx/10)%10+'0'; + conv[4]=(xx)%10+'0'; + conv[6]=0; + return conv; +} + char *itostr31(const int &xx) { conv[0]=(xx>=0)?'+':'-'; From d2f034ba84192093bcbe96eae1bd835e407bed79 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 27 Nov 2011 16:53:11 +0100 Subject: [PATCH 119/430] lcd message from gcode, m117 --- Marlin/Marlin.pde | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d765d222b..9cf499809 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -94,6 +94,7 @@ // M92 - Set axis_steps_per_unit - same syntax as G92 // M114 - Output current position to serial port // M115 - Capabilities string +// M117 - display message // M119 - Output Endstop status to serial port // M140 - Set bed target temp // M190 - Wait for bed current temp to reach target temp. @@ -850,6 +851,9 @@ inline void process_commands() case 115: // M115 SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); break; + case 117: // M117 display message + LCD_MESSAGE(cmdbuffer[bufindr]+5); + break; case 114: // M114 SERIAL_PROTOCOLPGM("X:"); SERIAL_PROTOCOL(current_position[X_AXIS]); From 2d9a7156555e0cdd969b44cc7c4d3c8a18875cfe Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 27 Nov 2011 17:27:17 +0100 Subject: [PATCH 120/430] first naive attempt to have a offset in the homeing procedure. Does not enable to move into regions not allowed by endstops. --- Marlin/Marlin.h | 1 + Marlin/Marlin.pde | 17 ++++++++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 20032a685..69a0cf3e2 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -112,5 +112,6 @@ void prepare_arc_move(char isclockwise); extern float homing_feedrate[]; extern bool axis_relative_modes[]; extern float current_position[NUM_AXIS] ; +extern float add_homeing[3]; #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 9cf499809..6a07cf989 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -104,6 +104,7 @@ // M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec // M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate // M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk +// M206 - set additional homeing offset // M220 - set speed factor override percentage S:factor in percent // M301 - Set PID parameters P I and D // M400 - Finish all moves @@ -131,7 +132,7 @@ volatile int feedmultiply=100; //100->1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; - +float add_homeing[3]={0,0,0}; //=========================================================================== //=============================private variables============================= @@ -536,19 +537,23 @@ inline void process_commands() } feedrate = 0.0; home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - + if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { HOMEAXIS(X); + current_position[0]=code_value()+add_homeing[0]; } if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { HOMEAXIS(Y); + current_position[1]=code_value()+add_homeing[1]; } if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { HOMEAXIS(Z); + current_position[2]=code_value()+add_homeing[2]; } + feedrate = saved_feedrate; feedmultiply = saved_feedmultiply; previous_millis_cmd = millis(); @@ -565,7 +570,7 @@ inline void process_commands() st_synchronize(); for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) { - current_position[i] = code_value(); + current_position[i] = code_value()+add_homeing[i]; if(i == E_AXIS) { plan_set_e_position(current_position[E_AXIS]); } @@ -934,6 +939,12 @@ inline void process_commands() if(code_seen('Z')) max_z_jerk = code_value() ; } break; + case 206: // M206 additional homeing offset + for(int8_t i=0; i < 3; i++) + { + if(code_seen(axis_codes[i])) add_homeing[i] = code_value(); + } + break; case 220: // M220 S- set speed factor override percentage { if(code_seen('S')) From f75f426dfae5190d3e637b247030d3a244968c2a Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 27 Nov 2011 21:12:55 +0100 Subject: [PATCH 121/430] Removed interrupt nesting in the stepper ISR. Add serial checkRx in stepper ISR. Copied HardwareSerial to MarlinSerial (Needed for checkRx). --- Marlin/Configuration.h | 2 +- Marlin/EEPROMwrite.h | 1 + Marlin/Marlin.h | 10 +- Marlin/Marlin.pde | 25 +- Marlin/MarlinSerial.cpp | 213 ++++++ Marlin/MarlinSerial.h | 66 ++ Marlin/Sd2Card.cpp | 1283 +++++++++++++++++++------------------ Marlin/SdBaseFile.cpp | 10 +- Marlin/SdBaseFile.h | 2 + Marlin/SdFatUtil.cpp | 4 +- Marlin/SdFatUtil.h | 92 +-- Marlin/motion_control.cpp | 6 +- Marlin/motion_control.h | 2 +- Marlin/planner.cpp | 6 +- Marlin/planner.h | 2 +- Marlin/stepper.cpp | 37 +- 16 files changed, 1007 insertions(+), 754 deletions(-) create mode 100644 Marlin/MarlinSerial.cpp create mode 100644 Marlin/MarlinSerial.h diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 3a1983956..558044e28 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -232,7 +232,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. #define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this -#define DEFAULT_XYJERK 30.0 // (mm/sec) +#define DEFAULT_XYJERK 20.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 3d559c026..c298c9735 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -4,6 +4,7 @@ #include "Marlin.h" #include "planner.h" #include "temperature.h" + #include template int EEPROM_writeAnything(int &ee, const T& value) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index acfc3c2fa..57f403dff 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -3,10 +3,12 @@ // Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. // Licence: GPL +#define HardwareSerial_h // trick to disable the standard HWserial #include #include "fastio.h" #include #include "Configuration.h" +#include "MarlinSerial.h" //#define SERIAL_ECHO(x) Serial << "echo: " << x; //#define SERIAL_ECHOLN(x) Serial << "echo: "< 0 && buflen < BUFSIZE) { - serial_char = Serial.read(); + while( MSerial.available() > 0 && buflen < BUFSIZE) { + serial_char = MSerial.read(); if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) { if(!serial_count) return; //if empty line @@ -1039,7 +1032,7 @@ inline void process_commands() void FlushSerialRequestResend() { //char cmdbuffer[bufindr][100]="Resend:"; - Serial.flush(); + MSerial.flush(); SERIAL_PROTOCOLPGM("Resend:"); SERIAL_PROTOCOLLN(gcode_LastN + 1); ClearToSend(); @@ -1088,7 +1081,7 @@ void prepare_move() if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; } - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0); + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } @@ -1098,7 +1091,7 @@ void prepare_arc_move(char isclockwise) { float r = hypot(offset[X_AXIS], offset[Y_AXIS]); // Compute arc radius for mc_arc // Trace the arc - mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60/100.0, r, isclockwise); + mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60/100.0, r, isclockwise, active_extruder); // As far as the parser is concerned, the position is now == target. In reality the // motion control system might still be processing the action and the real tool position @@ -1108,10 +1101,6 @@ void prepare_arc_move(char isclockwise) { } } - - - - void manage_inactivity(byte debug) { if( (millis()-previous_millis_cmd) > max_inactive_time ) diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp new file mode 100644 index 000000000..fade8b293 --- /dev/null +++ b/Marlin/MarlinSerial.cpp @@ -0,0 +1,213 @@ +/* + HardwareSerial.cpp - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + Modified 28 September 2010 by Mark Sproul +*/ + +#include +#include +#include +#include +#include "wiring.h" +#include "wiring_private.h" + +// this next line disables the entire HardwareSerial.cpp, +// this is so I can support Attiny series and any other chip without a uart +#if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) + +#include "MarlinSerial.h" + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#define RX_BUFFER_SIZE 128 + +struct ring_buffer +{ + unsigned char buffer[RX_BUFFER_SIZE]; + int head; + int tail; +}; + +#if defined(UBRRH) || defined(UBRR0H) + ring_buffer rx_buffer = { { 0 }, 0, 0 }; +#endif + + +inline void store_char(unsigned char c, ring_buffer *rx_buffer) +{ + int i = (unsigned int)(rx_buffer->head + 1) % RX_BUFFER_SIZE; + + // if we should be storing the received character into the location + // just before the tail (meaning that the head would advance to the + // current location of the tail), we're about to overflow the buffer + // and so we don't write the character or advance the head. + if (i != rx_buffer->tail) { + rx_buffer->buffer[rx_buffer->head] = c; + rx_buffer->head = i; + } +} + + +//#elif defined(SIG_USART_RECV) +#if defined(USART0_RX_vect) + // fixed by Mark Sproul this is on the 644/644p + //SIGNAL(SIG_USART_RECV) + SIGNAL(USART0_RX_vect) + { + #if defined(UDR0) + unsigned char c = UDR0; + #elif defined(UDR) + unsigned char c = UDR; // atmega8, atmega32 + #else + #error UDR not defined + #endif + store_char(c, &rx_buffer); + } +#endif + +// Constructors //////////////////////////////////////////////////////////////// + +MarlinSerial::MarlinSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) +{ + _rx_buffer = rx_buffer; + _ubrrh = ubrrh; + _ubrrl = ubrrl; + _ucsra = ucsra; + _ucsrb = ucsrb; + _udr = udr; + _rxen = rxen; + _txen = txen; + _rxcie = rxcie; + _udre = udre; + _u2x = u2x; +} + +// Public Methods ////////////////////////////////////////////////////////////// + +void MarlinSerial::begin(long baud) +{ + uint16_t baud_setting; + bool use_u2x = true; + +#if F_CPU == 16000000UL + // hardcoded exception for compatibility with the bootloader shipped + // with the Duemilanove and previous boards and the firmware on the 8U2 + // on the Uno and Mega 2560. + if (baud == 57600) { + use_u2x = false; + } +#endif + + if (use_u2x) { + *_ucsra = 1 << _u2x; + baud_setting = (F_CPU / 4 / baud - 1) / 2; + } else { + *_ucsra = 0; + baud_setting = (F_CPU / 8 / baud - 1) / 2; + } + + // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) + *_ubrrh = baud_setting >> 8; + *_ubrrl = baud_setting; + + sbi(*_ucsrb, _rxen); + sbi(*_ucsrb, _txen); + sbi(*_ucsrb, _rxcie); +} + +void MarlinSerial::end() +{ + cbi(*_ucsrb, _rxen); + cbi(*_ucsrb, _txen); + cbi(*_ucsrb, _rxcie); +} + +int MarlinSerial::available(void) +{ + return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; +} + +int MarlinSerial::peek(void) +{ + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + return _rx_buffer->buffer[_rx_buffer->tail]; + } +} + +int MarlinSerial::read(void) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; + _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % RX_BUFFER_SIZE; + return c; + } +} + +void MarlinSerial::flush() +{ + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // were full, not empty. + _rx_buffer->head = _rx_buffer->tail; +} + +void MarlinSerial::write(uint8_t c) +{ + while (!((*_ucsra) & (1 << _udre))) + ; + + *_udr = c; +} + +void MarlinSerial::checkRx() +{ + if((UCSR0A & (1< + +#include "Stream.h" + +struct ring_buffer; + +class MarlinSerial : public Stream +{ + private: + ring_buffer *_rx_buffer; + volatile uint8_t *_ubrrh; + volatile uint8_t *_ubrrl; + volatile uint8_t *_ucsra; + volatile uint8_t *_ucsrb; + volatile uint8_t *_udr; + uint8_t _rxen; + uint8_t _txen; + uint8_t _rxcie; + uint8_t _udre; + uint8_t _u2x; + public: + MarlinSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); + void begin(long); + void end(); + virtual int available(void); + virtual int peek(void); + virtual int read(void); + virtual void flush(void); + virtual void write(uint8_t); + virtual void checkRx(void); + using Print::write; // pull in write(str) and write(buf, size) from Print +}; + +#if defined(UBRRH) || defined(UBRR0H) + extern MarlinSerial MSerial; +#endif + +#endif diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp index ab060c121..4ca641ef9 100644 --- a/Marlin/Sd2Card.cpp +++ b/Marlin/Sd2Card.cpp @@ -1,642 +1,643 @@ -/* Arduino Sd2Card Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino Sd2Card Library - * - * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see - * . - */ -#if ARDUINO < 100 -#include -#else // ARDUINO -#include -#endif // ARDUINO -#include "Sd2Card.h" -//------------------------------------------------------------------------------ -#ifndef SOFTWARE_SPI -// functions for hardware SPI -//------------------------------------------------------------------------------ -// make sure SPCR rate is in expected bits -#if (SPR0 != 0 || SPR1 != 1) -#error unexpected SPCR bits -#endif -/** - * Initialize hardware SPI - * Set SCK rate to F_CPU/pow(2, 1 + spiRate) for spiRate [0,6] - */ -static void spiInit(uint8_t spiRate) { - // See avr processor documentation - SPCR = (1 << SPE) | (1 << MSTR) | (spiRate >> 1); - SPSR = spiRate & 1 || spiRate == 6 ? 0 : 1 << SPI2X; -} -//------------------------------------------------------------------------------ -/** SPI receive a byte */ -static uint8_t spiRec() { - SPDR = 0XFF; - while (!(SPSR & (1 << SPIF))); - return SPDR; -} -//------------------------------------------------------------------------------ -/** SPI read data - only one call so force inline */ -static inline __attribute__((always_inline)) - void spiRead(uint8_t* buf, uint16_t nbyte) { - if (nbyte-- == 0) return; - SPDR = 0XFF; - for (uint16_t i = 0; i < nbyte; i++) { - while (!(SPSR & (1 << SPIF))); - buf[i] = SPDR; - SPDR = 0XFF; - } - while (!(SPSR & (1 << SPIF))); - buf[nbyte] = SPDR; -} -//------------------------------------------------------------------------------ -/** SPI send a byte */ -static void spiSend(uint8_t b) { - SPDR = b; - while (!(SPSR & (1 << SPIF))); -} -//------------------------------------------------------------------------------ -/** SPI send block - only one call so force inline */ -static inline __attribute__((always_inline)) - void spiSendBlock(uint8_t token, const uint8_t* buf) { - SPDR = token; - for (uint16_t i = 0; i < 512; i += 2) { - while (!(SPSR & (1 << SPIF))); - SPDR = buf[i]; - while (!(SPSR & (1 << SPIF))); - SPDR = buf[i + 1]; - } - while (!(SPSR & (1 << SPIF))); -} -//------------------------------------------------------------------------------ -#else // SOFTWARE_SPI -//------------------------------------------------------------------------------ -/** nop to tune soft SPI timing */ -#define nop asm volatile ("nop\n\t") -//------------------------------------------------------------------------------ -/** Soft SPI receive byte */ -static uint8_t spiRec() { - uint8_t data = 0; - // no interrupts during byte receive - about 8 us - cli(); - // output pin high - like sending 0XFF - fastDigitalWrite(SPI_MOSI_PIN, HIGH); - - for (uint8_t i = 0; i < 8; i++) { - fastDigitalWrite(SPI_SCK_PIN, HIGH); - - // adjust so SCK is nice - nop; - nop; - - data <<= 1; - - if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; - - fastDigitalWrite(SPI_SCK_PIN, LOW); - } - // enable interrupts - sei(); - return data; -} -//------------------------------------------------------------------------------ -/** Soft SPI read data */ -static void spiRead(uint8_t* buf, uint16_t nbyte) { - for (uint16_t i = 0; i < nbyte; i++) { - buf[i] = spiRec(); - } -} -//------------------------------------------------------------------------------ -/** Soft SPI send byte */ -static void spiSend(uint8_t data) { - // no interrupts during byte send - about 8 us - cli(); - for (uint8_t i = 0; i < 8; i++) { - fastDigitalWrite(SPI_SCK_PIN, LOW); - - fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); - - data <<= 1; - - fastDigitalWrite(SPI_SCK_PIN, HIGH); - } - // hold SCK high for a few ns - nop; - nop; - nop; - nop; - - fastDigitalWrite(SPI_SCK_PIN, LOW); - // enable interrupts - sei(); -} -//------------------------------------------------------------------------------ -/** Soft SPI send block */ - void spiSendBlock(uint8_t token, const uint8_t* buf) { - spiSend(token); - for (uint16_t i = 0; i < 512; i++) { - spiSend(buf[i]); - } -} -#endif // SOFTWARE_SPI -//------------------------------------------------------------------------------ -// send command and return error code. Return zero for OK -uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { - // select card - chipSelectLow(); - - // wait up to 300 ms if busy - waitNotBusy(300); - - // send command - spiSend(cmd | 0x40); - - // send argument - for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); - - // send CRC - uint8_t crc = 0XFF; - if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 - if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA - spiSend(crc); - - // skip stuff byte for stop read - if (cmd == CMD12) spiRec(); - - // wait for response - for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); - return status_; -} -//------------------------------------------------------------------------------ -/** - * Determine the size of an SD flash memory card. - * - * \return The number of 512 byte data blocks in the card - * or zero if an error occurs. - */ -uint32_t Sd2Card::cardSize() { - csd_t csd; - if (!readCSD(&csd)) return 0; - if (csd.v1.csd_ver == 0) { - uint8_t read_bl_len = csd.v1.read_bl_len; - uint16_t c_size = (csd.v1.c_size_high << 10) - | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; - uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) - | csd.v1.c_size_mult_low; - return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); - } else if (csd.v2.csd_ver == 1) { - uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) - | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; - return (c_size + 1) << 10; - } else { - error(SD_CARD_ERROR_BAD_CSD); - return 0; - } -} -//------------------------------------------------------------------------------ -void Sd2Card::chipSelectHigh() { - digitalWrite(chipSelectPin_, HIGH); -} -//------------------------------------------------------------------------------ -void Sd2Card::chipSelectLow() { -#ifndef SOFTWARE_SPI - spiInit(spiRate_); -#endif // SOFTWARE_SPI - digitalWrite(chipSelectPin_, LOW); -} -//------------------------------------------------------------------------------ -/** Erase a range of blocks. - * - * \param[in] firstBlock The address of the first block in the range. - * \param[in] lastBlock The address of the last block in the range. - * - * \note This function requests the SD card to do a flash erase for a - * range of blocks. The data on the card after an erase operation is - * either 0 or 1, depends on the card vendor. The card must support - * single block erase. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { - csd_t csd; - if (!readCSD(&csd)) goto fail; - // check for single block erase - if (!csd.v1.erase_blk_en) { - // erase size mask - uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; - if ((firstBlock & m) != 0 || ((lastBlock + 1) & m) != 0) { - // error card can't erase specified area - error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); - goto fail; - } - } - if (type_ != SD_CARD_TYPE_SDHC) { - firstBlock <<= 9; - lastBlock <<= 9; - } - if (cardCommand(CMD32, firstBlock) - || cardCommand(CMD33, lastBlock) - || cardCommand(CMD38, 0)) { - error(SD_CARD_ERROR_ERASE); - goto fail; - } - if (!waitNotBusy(SD_ERASE_TIMEOUT)) { - error(SD_CARD_ERROR_ERASE_TIMEOUT); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Determine if card supports single block erase. - * - * \return The value one, true, is returned if single block erase is supported. - * The value zero, false, is returned if single block erase is not supported. - */ -bool Sd2Card::eraseSingleBlockEnable() { - csd_t csd; - return readCSD(&csd) ? csd.v1.erase_blk_en : false; -} -//------------------------------------------------------------------------------ -/** - * Initialize an SD flash memory card. - * - * \param[in] sckRateID SPI clock rate selector. See setSckRate(). - * \param[in] chipSelectPin SD chip select pin number. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. The reason for failure - * can be determined by calling errorCode() and errorData(). - */ -bool Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { - errorCode_ = type_ = 0; - chipSelectPin_ = chipSelectPin; - // 16-bit init start time allows over a minute - uint16_t t0 = (uint16_t)millis(); - uint32_t arg; - - // set pin modes - pinMode(chipSelectPin_, OUTPUT); - chipSelectHigh(); - pinMode(SPI_MISO_PIN, INPUT); - pinMode(SPI_MOSI_PIN, OUTPUT); - pinMode(SPI_SCK_PIN, OUTPUT); - -#ifndef SOFTWARE_SPI - // SS must be in output mode even it is not chip select - pinMode(SS_PIN, OUTPUT); - // set SS high - may be chip select for another SPI device -#if SET_SPI_SS_HIGH - digitalWrite(SS_PIN, HIGH); -#endif // SET_SPI_SS_HIGH - // set SCK rate for initialization commands - spiRate_ = SPI_SD_INIT_RATE; - spiInit(spiRate_); -#endif // SOFTWARE_SPI - - // must supply min of 74 clock cycles with CS high. - for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); - - // command to go idle in SPI mode - while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { - if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { - error(SD_CARD_ERROR_CMD0); - goto fail; - } - } - // check SD version - if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { - type(SD_CARD_TYPE_SD1); - } else { - // only need last byte of r7 response - for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); - if (status_ != 0XAA) { - error(SD_CARD_ERROR_CMD8); - goto fail; - } - type(SD_CARD_TYPE_SD2); - } - // initialize card and send host supports SDHC if SD2 - arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; - - while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { - // check for timeout - if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { - error(SD_CARD_ERROR_ACMD41); - goto fail; - } - } - // if SD2 read OCR register to check for SDHC card - if (type() == SD_CARD_TYPE_SD2) { - if (cardCommand(CMD58, 0)) { - error(SD_CARD_ERROR_CMD58); - goto fail; - } - if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); - // discard rest of ocr - contains allowed voltage range - for (uint8_t i = 0; i < 3; i++) spiRec(); - } - chipSelectHigh(); - -#ifndef SOFTWARE_SPI - return setSckRate(sckRateID); -#else // SOFTWARE_SPI - return true; -#endif // SOFTWARE_SPI - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Read a 512 byte block from an SD card. - * - * \param[in] blockNumber Logical block to be read. - * \param[out] dst Pointer to the location that will receive the data. - - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readBlock(uint32_t blockNumber, uint8_t* dst) { - // use address if not SDHC card - if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD17, blockNumber)) { - error(SD_CARD_ERROR_CMD17); - goto fail; - } - return readData(dst, 512); - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Read one data block in a multiple block read sequence - * - * \param[in] dst Pointer to the location for the data to be read. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readData(uint8_t *dst) { - chipSelectLow(); - return readData(dst, 512); -} -//------------------------------------------------------------------------------ -bool Sd2Card::readData(uint8_t* dst, uint16_t count) { - // wait for start block token - uint16_t t0 = millis(); - while ((status_ = spiRec()) == 0XFF) { - if (((uint16_t)millis() - t0) > SD_READ_TIMEOUT) { - error(SD_CARD_ERROR_READ_TIMEOUT); - goto fail; - } - } - if (status_ != DATA_START_BLOCK) { - error(SD_CARD_ERROR_READ); - goto fail; - } - // transfer data - spiRead(dst, count); - - // discard CRC - spiRec(); - spiRec(); - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** read CID or CSR register */ -bool Sd2Card::readRegister(uint8_t cmd, void* buf) { - uint8_t* dst = reinterpret_cast(buf); - if (cardCommand(cmd, 0)) { - error(SD_CARD_ERROR_READ_REG); - goto fail; - } - return readData(dst, 16); - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Start a read multiple blocks sequence. - * - * \param[in] blockNumber Address of first block in sequence. - * - * \note This function is used with readData() and readStop() for optimized - * multiple block reads. SPI chipSelect must be low for the entire sequence. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readStart(uint32_t blockNumber) { - if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD18, blockNumber)) { - error(SD_CARD_ERROR_CMD18); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** End a read multiple blocks sequence. - * -* \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readStop() { - chipSelectLow(); - if (cardCommand(CMD12, 0)) { - error(SD_CARD_ERROR_CMD12); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Set the SPI clock rate. - * - * \param[in] sckRateID A value in the range [0, 6]. - * - * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum - * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 - * for \a scsRateID = 6. - * - * \return The value one, true, is returned for success and the value zero, - * false, is returned for an invalid value of \a sckRateID. - */ -bool Sd2Card::setSckRate(uint8_t sckRateID) { - if (sckRateID > 6) { - error(SD_CARD_ERROR_SCK_RATE); - return false; - } - spiRate_ = sckRateID; - return true; -} -//------------------------------------------------------------------------------ -// wait for card to go not busy -bool Sd2Card::waitNotBusy(uint16_t timeoutMillis) { - uint16_t t0 = millis(); - while (spiRec() != 0XFF) { - if (((uint16_t)millis() - t0) >= timeoutMillis) goto fail; - } - return true; - - fail: - return false; -} -//------------------------------------------------------------------------------ -/** - * Writes a 512 byte block to an SD card. - * - * \param[in] blockNumber Logical block to be written. - * \param[in] src Pointer to the location of the data to be written. - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { - // use address if not SDHC card - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD24, blockNumber)) { - error(SD_CARD_ERROR_CMD24); - goto fail; - } - if (!writeData(DATA_START_BLOCK, src)) goto fail; - - // wait for flash programming to complete - if (!waitNotBusy(SD_WRITE_TIMEOUT)) { - error(SD_CARD_ERROR_WRITE_TIMEOUT); - goto fail; - } - // response is r2 so get and check two bytes for nonzero - if (cardCommand(CMD13, 0) || spiRec()) { - error(SD_CARD_ERROR_WRITE_PROGRAMMING); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Write one data block in a multiple block write sequence - * \param[in] src Pointer to the location of the data to be written. - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeData(const uint8_t* src) { - chipSelectLow(); - // wait for previous write to finish - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - if (!writeData(WRITE_MULTIPLE_TOKEN, src)) goto fail; - chipSelectHigh(); - return true; - - fail: - error(SD_CARD_ERROR_WRITE_MULTIPLE); - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -// send one block of data for write block or write multiple blocks -bool Sd2Card::writeData(uint8_t token, const uint8_t* src) { - spiSendBlock(token, src); - - spiSend(0xff); // dummy crc - spiSend(0xff); // dummy crc - - status_ = spiRec(); - if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { - error(SD_CARD_ERROR_WRITE); - goto fail; - } - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Start a write multiple blocks sequence. - * - * \param[in] blockNumber Address of first block in sequence. - * \param[in] eraseCount The number of blocks to be pre-erased. - * - * \note This function is used with writeData() and writeStop() - * for optimized multiple block writes. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { - // send pre-erase count - if (cardAcmd(ACMD23, eraseCount)) { - error(SD_CARD_ERROR_ACMD23); - goto fail; - } - // use address if not SDHC card - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD25, blockNumber)) { - error(SD_CARD_ERROR_CMD25); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** End a write multiple blocks sequence. - * -* \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeStop() { - chipSelectLow(); - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - spiSend(STOP_TRAN_TOKEN); - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - chipSelectHigh(); - return true; - - fail: - error(SD_CARD_ERROR_STOP_TRAN); - chipSelectHigh(); - return false; +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#if ARDUINO < 100 +#define HardwareSerial_h // trick to disable the standard HWserial +#include +#else // ARDUINO +#include +#endif // ARDUINO +#include "Sd2Card.h" +//------------------------------------------------------------------------------ +#ifndef SOFTWARE_SPI +// functions for hardware SPI +//------------------------------------------------------------------------------ +// make sure SPCR rate is in expected bits +#if (SPR0 != 0 || SPR1 != 1) +#error unexpected SPCR bits +#endif +/** + * Initialize hardware SPI + * Set SCK rate to F_CPU/pow(2, 1 + spiRate) for spiRate [0,6] + */ +static void spiInit(uint8_t spiRate) { + // See avr processor documentation + SPCR = (1 << SPE) | (1 << MSTR) | (spiRate >> 1); + SPSR = spiRate & 1 || spiRate == 6 ? 0 : 1 << SPI2X; +} +//------------------------------------------------------------------------------ +/** SPI receive a byte */ +static uint8_t spiRec() { + SPDR = 0XFF; + while (!(SPSR & (1 << SPIF))); + return SPDR; +} +//------------------------------------------------------------------------------ +/** SPI read data - only one call so force inline */ +static inline __attribute__((always_inline)) + void spiRead(uint8_t* buf, uint16_t nbyte) { + if (nbyte-- == 0) return; + SPDR = 0XFF; + for (uint16_t i = 0; i < nbyte; i++) { + while (!(SPSR & (1 << SPIF))); + buf[i] = SPDR; + SPDR = 0XFF; + } + while (!(SPSR & (1 << SPIF))); + buf[nbyte] = SPDR; +} +//------------------------------------------------------------------------------ +/** SPI send a byte */ +static void spiSend(uint8_t b) { + SPDR = b; + while (!(SPSR & (1 << SPIF))); +} +//------------------------------------------------------------------------------ +/** SPI send block - only one call so force inline */ +static inline __attribute__((always_inline)) + void spiSendBlock(uint8_t token, const uint8_t* buf) { + SPDR = token; + for (uint16_t i = 0; i < 512; i += 2) { + while (!(SPSR & (1 << SPIF))); + SPDR = buf[i]; + while (!(SPSR & (1 << SPIF))); + SPDR = buf[i + 1]; + } + while (!(SPSR & (1 << SPIF))); +} +//------------------------------------------------------------------------------ +#else // SOFTWARE_SPI +//------------------------------------------------------------------------------ +/** nop to tune soft SPI timing */ +#define nop asm volatile ("nop\n\t") +//------------------------------------------------------------------------------ +/** Soft SPI receive byte */ +static uint8_t spiRec() { + uint8_t data = 0; + // no interrupts during byte receive - about 8 us + cli(); + // output pin high - like sending 0XFF + fastDigitalWrite(SPI_MOSI_PIN, HIGH); + + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, HIGH); + + // adjust so SCK is nice + nop; + nop; + + data <<= 1; + + if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + } + // enable interrupts + sei(); + return data; +} +//------------------------------------------------------------------------------ +/** Soft SPI read data */ +static void spiRead(uint8_t* buf, uint16_t nbyte) { + for (uint16_t i = 0; i < nbyte; i++) { + buf[i] = spiRec(); + } +} +//------------------------------------------------------------------------------ +/** Soft SPI send byte */ +static void spiSend(uint8_t data) { + // no interrupts during byte send - about 8 us + cli(); + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, LOW); + + fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); + + data <<= 1; + + fastDigitalWrite(SPI_SCK_PIN, HIGH); + } + // hold SCK high for a few ns + nop; + nop; + nop; + nop; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + // enable interrupts + sei(); +} +//------------------------------------------------------------------------------ +/** Soft SPI send block */ + void spiSendBlock(uint8_t token, const uint8_t* buf) { + spiSend(token); + for (uint16_t i = 0; i < 512; i++) { + spiSend(buf[i]); + } +} +#endif // SOFTWARE_SPI +//------------------------------------------------------------------------------ +// send command and return error code. Return zero for OK +uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { + // select card + chipSelectLow(); + + // wait up to 300 ms if busy + waitNotBusy(300); + + // send command + spiSend(cmd | 0x40); + + // send argument + for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); + + // send CRC + uint8_t crc = 0XFF; + if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 + if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA + spiSend(crc); + + // skip stuff byte for stop read + if (cmd == CMD12) spiRec(); + + // wait for response + for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); + return status_; +} +//------------------------------------------------------------------------------ +/** + * Determine the size of an SD flash memory card. + * + * \return The number of 512 byte data blocks in the card + * or zero if an error occurs. + */ +uint32_t Sd2Card::cardSize() { + csd_t csd; + if (!readCSD(&csd)) return 0; + if (csd.v1.csd_ver == 0) { + uint8_t read_bl_len = csd.v1.read_bl_len; + uint16_t c_size = (csd.v1.c_size_high << 10) + | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; + uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) + | csd.v1.c_size_mult_low; + return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); + } else if (csd.v2.csd_ver == 1) { + uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) + | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; + return (c_size + 1) << 10; + } else { + error(SD_CARD_ERROR_BAD_CSD); + return 0; + } +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectHigh() { + digitalWrite(chipSelectPin_, HIGH); +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectLow() { +#ifndef SOFTWARE_SPI + spiInit(spiRate_); +#endif // SOFTWARE_SPI + digitalWrite(chipSelectPin_, LOW); +} +//------------------------------------------------------------------------------ +/** Erase a range of blocks. + * + * \param[in] firstBlock The address of the first block in the range. + * \param[in] lastBlock The address of the last block in the range. + * + * \note This function requests the SD card to do a flash erase for a + * range of blocks. The data on the card after an erase operation is + * either 0 or 1, depends on the card vendor. The card must support + * single block erase. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { + csd_t csd; + if (!readCSD(&csd)) goto fail; + // check for single block erase + if (!csd.v1.erase_blk_en) { + // erase size mask + uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; + if ((firstBlock & m) != 0 || ((lastBlock + 1) & m) != 0) { + // error card can't erase specified area + error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); + goto fail; + } + } + if (type_ != SD_CARD_TYPE_SDHC) { + firstBlock <<= 9; + lastBlock <<= 9; + } + if (cardCommand(CMD32, firstBlock) + || cardCommand(CMD33, lastBlock) + || cardCommand(CMD38, 0)) { + error(SD_CARD_ERROR_ERASE); + goto fail; + } + if (!waitNotBusy(SD_ERASE_TIMEOUT)) { + error(SD_CARD_ERROR_ERASE_TIMEOUT); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Determine if card supports single block erase. + * + * \return The value one, true, is returned if single block erase is supported. + * The value zero, false, is returned if single block erase is not supported. + */ +bool Sd2Card::eraseSingleBlockEnable() { + csd_t csd; + return readCSD(&csd) ? csd.v1.erase_blk_en : false; +} +//------------------------------------------------------------------------------ +/** + * Initialize an SD flash memory card. + * + * \param[in] sckRateID SPI clock rate selector. See setSckRate(). + * \param[in] chipSelectPin SD chip select pin number. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. The reason for failure + * can be determined by calling errorCode() and errorData(). + */ +bool Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { + errorCode_ = type_ = 0; + chipSelectPin_ = chipSelectPin; + // 16-bit init start time allows over a minute + uint16_t t0 = (uint16_t)millis(); + uint32_t arg; + + // set pin modes + pinMode(chipSelectPin_, OUTPUT); + chipSelectHigh(); + pinMode(SPI_MISO_PIN, INPUT); + pinMode(SPI_MOSI_PIN, OUTPUT); + pinMode(SPI_SCK_PIN, OUTPUT); + +#ifndef SOFTWARE_SPI + // SS must be in output mode even it is not chip select + pinMode(SS_PIN, OUTPUT); + // set SS high - may be chip select for another SPI device +#if SET_SPI_SS_HIGH + digitalWrite(SS_PIN, HIGH); +#endif // SET_SPI_SS_HIGH + // set SCK rate for initialization commands + spiRate_ = SPI_SD_INIT_RATE; + spiInit(spiRate_); +#endif // SOFTWARE_SPI + + // must supply min of 74 clock cycles with CS high. + for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); + + // command to go idle in SPI mode + while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_CMD0); + goto fail; + } + } + // check SD version + if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { + type(SD_CARD_TYPE_SD1); + } else { + // only need last byte of r7 response + for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); + if (status_ != 0XAA) { + error(SD_CARD_ERROR_CMD8); + goto fail; + } + type(SD_CARD_TYPE_SD2); + } + // initialize card and send host supports SDHC if SD2 + arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; + + while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { + // check for timeout + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_ACMD41); + goto fail; + } + } + // if SD2 read OCR register to check for SDHC card + if (type() == SD_CARD_TYPE_SD2) { + if (cardCommand(CMD58, 0)) { + error(SD_CARD_ERROR_CMD58); + goto fail; + } + if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); + // discard rest of ocr - contains allowed voltage range + for (uint8_t i = 0; i < 3; i++) spiRec(); + } + chipSelectHigh(); + +#ifndef SOFTWARE_SPI + return setSckRate(sckRateID); +#else // SOFTWARE_SPI + return true; +#endif // SOFTWARE_SPI + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Read a 512 byte block from an SD card. + * + * \param[in] blockNumber Logical block to be read. + * \param[out] dst Pointer to the location that will receive the data. + + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readBlock(uint32_t blockNumber, uint8_t* dst) { + // use address if not SDHC card + if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD17, blockNumber)) { + error(SD_CARD_ERROR_CMD17); + goto fail; + } + return readData(dst, 512); + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Read one data block in a multiple block read sequence + * + * \param[in] dst Pointer to the location for the data to be read. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readData(uint8_t *dst) { + chipSelectLow(); + return readData(dst, 512); +} +//------------------------------------------------------------------------------ +bool Sd2Card::readData(uint8_t* dst, uint16_t count) { + // wait for start block token + uint16_t t0 = millis(); + while ((status_ = spiRec()) == 0XFF) { + if (((uint16_t)millis() - t0) > SD_READ_TIMEOUT) { + error(SD_CARD_ERROR_READ_TIMEOUT); + goto fail; + } + } + if (status_ != DATA_START_BLOCK) { + error(SD_CARD_ERROR_READ); + goto fail; + } + // transfer data + spiRead(dst, count); + + // discard CRC + spiRec(); + spiRec(); + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** read CID or CSR register */ +bool Sd2Card::readRegister(uint8_t cmd, void* buf) { + uint8_t* dst = reinterpret_cast(buf); + if (cardCommand(cmd, 0)) { + error(SD_CARD_ERROR_READ_REG); + goto fail; + } + return readData(dst, 16); + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Start a read multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * + * \note This function is used with readData() and readStop() for optimized + * multiple block reads. SPI chipSelect must be low for the entire sequence. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readStart(uint32_t blockNumber) { + if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD18, blockNumber)) { + error(SD_CARD_ERROR_CMD18); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a read multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readStop() { + chipSelectLow(); + if (cardCommand(CMD12, 0)) { + error(SD_CARD_ERROR_CMD12); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Set the SPI clock rate. + * + * \param[in] sckRateID A value in the range [0, 6]. + * + * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum + * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 + * for \a scsRateID = 6. + * + * \return The value one, true, is returned for success and the value zero, + * false, is returned for an invalid value of \a sckRateID. + */ +bool Sd2Card::setSckRate(uint8_t sckRateID) { + if (sckRateID > 6) { + error(SD_CARD_ERROR_SCK_RATE); + return false; + } + spiRate_ = sckRateID; + return true; +} +//------------------------------------------------------------------------------ +// wait for card to go not busy +bool Sd2Card::waitNotBusy(uint16_t timeoutMillis) { + uint16_t t0 = millis(); + while (spiRec() != 0XFF) { + if (((uint16_t)millis() - t0) >= timeoutMillis) goto fail; + } + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** + * Writes a 512 byte block to an SD card. + * + * \param[in] blockNumber Logical block to be written. + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD24, blockNumber)) { + error(SD_CARD_ERROR_CMD24); + goto fail; + } + if (!writeData(DATA_START_BLOCK, src)) goto fail; + + // wait for flash programming to complete + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_TIMEOUT); + goto fail; + } + // response is r2 so get and check two bytes for nonzero + if (cardCommand(CMD13, 0) || spiRec()) { + error(SD_CARD_ERROR_WRITE_PROGRAMMING); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Write one data block in a multiple block write sequence + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeData(const uint8_t* src) { + chipSelectLow(); + // wait for previous write to finish + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + if (!writeData(WRITE_MULTIPLE_TOKEN, src)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_WRITE_MULTIPLE); + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +// send one block of data for write block or write multiple blocks +bool Sd2Card::writeData(uint8_t token, const uint8_t* src) { + spiSendBlock(token, src); + + spiSend(0xff); // dummy crc + spiSend(0xff); // dummy crc + + status_ = spiRec(); + if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { + error(SD_CARD_ERROR_WRITE); + goto fail; + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Start a write multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * \param[in] eraseCount The number of blocks to be pre-erased. + * + * \note This function is used with writeData() and writeStop() + * for optimized multiple block writes. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { + // send pre-erase count + if (cardAcmd(ACMD23, eraseCount)) { + error(SD_CARD_ERROR_ACMD23); + goto fail; + } + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD25, blockNumber)) { + error(SD_CARD_ERROR_CMD25); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a write multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeStop() { + chipSelectLow(); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + spiSend(STOP_TRAN_TOKEN); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_STOP_TRAN); + chipSelectHigh(); + return false; } diff --git a/Marlin/SdBaseFile.cpp b/Marlin/SdBaseFile.cpp index dda44ec3c..a485199b3 100644 --- a/Marlin/SdBaseFile.cpp +++ b/Marlin/SdBaseFile.cpp @@ -306,7 +306,7 @@ void SdBaseFile::getpos(fpos_t* pos) { * LS_R - Recursive list of subdirectories. */ void SdBaseFile::ls(uint8_t flags) { - ls(&Serial, flags, 0); + ls(&MSerial, flags, 0); } //------------------------------------------------------------------------------ /** List directory contents. @@ -949,7 +949,7 @@ int SdBaseFile::peek() { */ void SdBaseFile::printDirName(const dir_t& dir, uint8_t width, bool printSlash) { - printDirName(&Serial, dir, width, printSlash); + printDirName(&MSerial, dir, width, printSlash); } //------------------------------------------------------------------------------ /** %Print the name field of a directory entry in 8.3 format. @@ -993,7 +993,7 @@ static void print2u(Print* pr, uint8_t v) { * \param[in] fatDate The date field from a directory entry. */ void SdBaseFile::printFatDate(uint16_t fatDate) { - printFatDate(&Serial, fatDate); + printFatDate(&MSerial, fatDate); } //------------------------------------------------------------------------------ /** %Print a directory date field. @@ -1018,7 +1018,7 @@ void SdBaseFile::printFatDate(Print* pr, uint16_t fatDate) { * \param[in] fatTime The time field from a directory entry. */ void SdBaseFile::printFatTime(uint16_t fatTime) { - printFatTime(&Serial, fatTime); + printFatTime(&MSerial, fatTime); } //------------------------------------------------------------------------------ /** %Print a directory time field. @@ -1044,7 +1044,7 @@ void SdBaseFile::printFatTime(Print* pr, uint16_t fatTime) { bool SdBaseFile::printName() { char name[13]; if (!getFilename(name)) return false; - Serial.print(name); + MSerial.print(name); return true; } //------------------------------------------------------------------------------ diff --git a/Marlin/SdBaseFile.h b/Marlin/SdBaseFile.h index 9363401c9..e02ec3c7a 100644 --- a/Marlin/SdBaseFile.h +++ b/Marlin/SdBaseFile.h @@ -25,7 +25,9 @@ */ #include #if ARDUINO < 100 +#define HardwareSerial_h // trick to disable the standard HWserial #include +#include "MarlinSerial.h" #else // ARDUINO #include #endif // ARDUINO diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp index 1870980b1..7f82a7083 100644 --- a/Marlin/SdFatUtil.cpp +++ b/Marlin/SdFatUtil.cpp @@ -62,7 +62,7 @@ void SdFatUtil::println_P(Print* pr, PGM_P str) { * \param[in] str Pointer to string stored in flash memory. */ void SdFatUtil::SerialPrint_P(PGM_P str) { - print_P(&Serial, str); + print_P(&MSerial, str); } //------------------------------------------------------------------------------ /** %Print a string in flash memory to Serial followed by a CR/LF. @@ -70,5 +70,5 @@ void SdFatUtil::SerialPrint_P(PGM_P str) { * \param[in] str Pointer to string stored in flash memory. */ void SdFatUtil::SerialPrintln_P(PGM_P str) { - println_P(&Serial, str); + println_P(&MSerial, str); } diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index b4112aa2d..c49e77df8 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -1,46 +1,48 @@ -/* Arduino SdFat Library - * Copyright (C) 2008 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef SdFatUtil_h -#define SdFatUtil_h -/** - * \file - * \brief Useful utility functions. - */ -#include -#if ARDUINO < 100 -#include -#else // ARDUINO -#include -#endif // ARDUINO -/** Store and print a string in flash memory.*/ -#define PgmPrint(x) SerialPrint_P(PSTR(x)) -/** Store and print a string in flash memory followed by a CR/LF.*/ -#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) - -namespace SdFatUtil { - int FreeRam(); - void print_P(Print* pr, PGM_P str); - void println_P(Print* pr, PGM_P str); - void SerialPrint_P(PGM_P str); - void SerialPrintln_P(PGM_P str); -} - -using namespace SdFatUtil; // NOLINT +/* Arduino SdFat Library + * Copyright (C) 2008 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFatUtil_h +#define SdFatUtil_h +/** + * \file + * \brief Useful utility functions. + */ +#include +#if ARDUINO < 100 +#define HardwareSerial_h // trick to disable the standard HWserial +#include +#include "MarlinSerial.h" +#else // ARDUINO +#include +#endif // ARDUINO +/** Store and print a string in flash memory.*/ +#define PgmPrint(x) SerialPrint_P(PSTR(x)) +/** Store and print a string in flash memory followed by a CR/LF.*/ +#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) + +namespace SdFatUtil { + int FreeRam(); + void print_P(Print* pr, PGM_P str); + void println_P(Print* pr, PGM_P str); + void SerialPrint_P(PGM_P str); + void SerialPrintln_P(PGM_P str); +} + +using namespace SdFatUtil; // NOLINT #endif // #define SdFatUtil_h diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index ff3f8c2f2..8ecc1a044 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -27,7 +27,7 @@ // The arc is approximated by generating a huge number of tiny, linear segments. The length of each // segment is configured in settings.mm_per_arc_segment. void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8_t axis_1, - uint8_t axis_linear, float feed_rate, float radius, uint8_t isclockwise) + uint8_t axis_linear, float feed_rate, float radius, uint8_t isclockwise, uint8_t extruder) { // int acceleration_manager_was_enabled = plan_is_acceleration_manager_enabled(); // plan_set_acceleration_manager_enabled(false); // disable acceleration management for the duration of the arc @@ -123,11 +123,11 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 arc_target[axis_1] = center_axis1 + r_axis1; arc_target[axis_linear] += linear_per_segment; arc_target[E_AXIS] += extruder_per_segment; - plan_buffer_line(arc_target[X_AXIS], arc_target[Y_AXIS], arc_target[Z_AXIS], arc_target[E_AXIS], feed_rate); + plan_buffer_line(arc_target[X_AXIS], arc_target[Y_AXIS], arc_target[Z_AXIS], arc_target[E_AXIS], feed_rate, extruder); } // Ensure last segment arrives at target location. - plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feed_rate); + plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feed_rate, extruder); // plan_set_acceleration_manager_enabled(acceleration_manager_was_enabled); } diff --git a/Marlin/motion_control.h b/Marlin/motion_control.h index 9bcff4bf4..ca50f8098 100644 --- a/Marlin/motion_control.h +++ b/Marlin/motion_control.h @@ -27,6 +27,6 @@ // the direction of helical travel, radius == circle radius, isclockwise boolean. Used // for vector transformation direction. void mc_arc(float *position, float *target, float *offset, unsigned char axis_0, unsigned char axis_1, - unsigned char axis_linear, float feed_rate, float radius, unsigned char isclockwise); + unsigned char axis_linear, float feed_rate, float radius, unsigned char isclockwise, uint8_t extruder); #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 0f9b1eb9e..47286983b 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -451,7 +451,7 @@ float junction_deviation = 0.1; // Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in // mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration // calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate) +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder) { // Calculate the buffer head after we push this byte int next_buffer_head = next_block_index(block_buffer_head); @@ -527,12 +527,12 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa else { if(feed_rate 1) feed_rate = feed_rate*moves_queued / (BLOCK_BUFFER_SIZE * 0.5); #endif /* diff --git a/Marlin/planner.h b/Marlin/planner.h index 57c59a0b0..8ef8fec17 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -66,7 +66,7 @@ void plan_init(); // Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in // millimaters. Feed rate specifies the speed of the motion. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate); +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder); // Set position. Used for G92 instructions. void plan_set_position(const float &x, const float &y, const float &z, const float &e); diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 491b6e7f2..34c7153c6 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -52,7 +52,7 @@ static long counter_x, // Counter variables for the bresenham line tracer counter_y, counter_z, counter_e; -static unsigned long step_events_completed; // The number of step events executed in the current block +volatile static unsigned long step_events_completed; // The number of step events executed in the current block #ifdef ADVANCE static long advance_rate, advance, final_advance = 0; static short old_advance = 0; @@ -63,6 +63,7 @@ static long acceleration_time, deceleration_time; //static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; static unsigned short acc_step_rate; // needed for deccelaration start point static char step_loops; +static unsigned short OCR1A_nominal; volatile long endstops_trigsteps[3]={0,0,0}; volatile long endstops_stepsTotal,endstops_stepsDone; @@ -77,10 +78,6 @@ static bool old_y_max_endstop=false; static bool old_z_min_endstop=false; static bool old_z_max_endstop=false; -static bool busy_error=false; -unsigned short OCR1A_error=12345; -unsigned short OCR1A_nominal; - volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; @@ -164,15 +161,6 @@ asm volatile ( \ #define ENABLE_STEPPER_DRIVER_INTERRUPT() TIMSK1 |= (1<>3); } - if(timer < 100) { timer = 100; Serial.print("Steprate to high : "); Serial.println(step_rate); }//(20kHz this should never happen) + if(timer < 100) { timer = 100; MSerial.print("Steprate to high : "); MSerial.println(step_rate); }//(20kHz this should never happen) return timer; } @@ -277,17 +265,7 @@ inline void trapezoid_generator_reset() { // "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. // It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. ISR(TIMER1_COMPA_vect) -{ - if(busy){ - OCR1A_error = OCR1A; - busy_error = true; - OCR1A = 30000; - return; - } // The busy-flag is used to avoid reentering this interrupt - - busy = true; - sei(); // Re enable interrupts (normally disabled while inside an interrupt handler) - +{ // If there is no current block, attempt to pop one from the buffer if (current_block == NULL) { // Anything in the buffer? @@ -304,7 +282,7 @@ ISR(TIMER1_COMPA_vect) // #endif } else { -// DISABLE_STEPPER_DRIVER_INTERRUPT(); + OCR1A=2000; // 1kHz. } } @@ -404,8 +382,8 @@ ISR(TIMER1_COMPA_vect) count_direction[E_AXIS]=-1; } #endif //!ADVANCE - for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) + MSerial.checkRx(); /* counter_e += current_block->steps_e; if (counter_e > 0) { @@ -470,6 +448,7 @@ ISR(TIMER1_COMPA_vect) unsigned short timer; unsigned short step_rate; if (step_events_completed <= current_block->accelerate_until) { + MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); acc_step_rate += current_block->initial_rate; @@ -519,8 +498,6 @@ ISR(TIMER1_COMPA_vect) plan_discard_current_block(); } } - cli(); // disable interrupts - busy=false; } #ifdef ADVANCE From dd5296ad4d35fdea84b12e4cfd68691c1288ec3a Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 28 Nov 2011 17:42:49 +0100 Subject: [PATCH 122/430] Fixed temperature reading bug. (When using the lower and upper adc input bank) --- Marlin/temperature.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 04353b566..77aa6485b 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -464,6 +464,8 @@ ISR(TIMER0_COMPB_vect) #if (TEMP_0_PIN > -1) #if TEMP_0_PIN > 7 ADCSRB = 1< -1) #if TEMP_1_PIN > 7 ADCSRB = 1< -1) #if TEMP_2_PIN > 7 ADCSRB = 1< Date: Mon, 28 Nov 2011 19:13:40 +0100 Subject: [PATCH 123/430] get rid of indirect ringbuffer calls, made some inlines, removed virtual and streaming class requirements. --- Marlin/MarlinSerial.cpp | 242 +++++++++++++++++++++++++++++++++------- Marlin/MarlinSerial.h | 95 ++++++++++++++-- Marlin/SdBaseFile.cpp | 116 +++++++------------ Marlin/SdBaseFile.h | 13 +-- Marlin/SdFatUtil.cpp | 14 +-- Marlin/SdFatUtil.h | 94 ++++++++-------- 6 files changed, 386 insertions(+), 188 deletions(-) diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index fade8b293..34ae6d767 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -33,35 +33,25 @@ #include "MarlinSerial.h" -// Define constants and variables for buffering incoming serial data. We're -// using a ring buffer (I think), in which rx_buffer_head is the index of the -// location to which to write the next incoming character and rx_buffer_tail -// is the index of the location from which to read. -#define RX_BUFFER_SIZE 128 -struct ring_buffer -{ - unsigned char buffer[RX_BUFFER_SIZE]; - int head; - int tail; -}; + #if defined(UBRRH) || defined(UBRR0H) ring_buffer rx_buffer = { { 0 }, 0, 0 }; #endif -inline void store_char(unsigned char c, ring_buffer *rx_buffer) +inline void store_char(unsigned char c) { - int i = (unsigned int)(rx_buffer->head + 1) % RX_BUFFER_SIZE; + int i = (unsigned int)(rx_buffer.head + 1) % RX_BUFFER_SIZE; // if we should be storing the received character into the location // just before the tail (meaning that the head would advance to the // current location of the tail), we're about to overflow the buffer // and so we don't write the character or advance the head. - if (i != rx_buffer->tail) { - rx_buffer->buffer[rx_buffer->head] = c; - rx_buffer->head = i; + if (i != rx_buffer.tail) { + rx_buffer.buffer[rx_buffer.head] = c; + rx_buffer.head = i; } } @@ -79,19 +69,18 @@ inline void store_char(unsigned char c, ring_buffer *rx_buffer) #else #error UDR not defined #endif - store_char(c, &rx_buffer); + store_char(c); } #endif // Constructors //////////////////////////////////////////////////////////////// -MarlinSerial::MarlinSerial(ring_buffer *rx_buffer, +MarlinSerial::MarlinSerial( volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, volatile uint8_t *ucsra, volatile uint8_t *ucsrb, volatile uint8_t *udr, uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) { - _rx_buffer = rx_buffer; _ubrrh = ubrrh; _ubrrl = ubrrl; _ucsra = ucsra; @@ -144,28 +133,25 @@ void MarlinSerial::end() cbi(*_ucsrb, _rxcie); } -int MarlinSerial::available(void) -{ - return (unsigned int)(RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; -} + int MarlinSerial::peek(void) { - if (_rx_buffer->head == _rx_buffer->tail) { + if (rx_buffer.head == rx_buffer.tail) { return -1; } else { - return _rx_buffer->buffer[_rx_buffer->tail]; + return rx_buffer.buffer[rx_buffer.tail]; } } int MarlinSerial::read(void) { // if the head isn't ahead of the tail, we don't have any characters - if (_rx_buffer->head == _rx_buffer->tail) { + if (rx_buffer.head == rx_buffer.tail) { return -1; } else { - unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; - _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % RX_BUFFER_SIZE; + unsigned char c = rx_buffer.buffer[rx_buffer.tail]; + rx_buffer.tail = (unsigned int)(rx_buffer.tail + 1) % RX_BUFFER_SIZE; return c; } } @@ -181,29 +167,207 @@ void MarlinSerial::flush() // the value to rx_buffer_tail; the previous value of rx_buffer_head // may be written to rx_buffer_tail, making it appear as if the buffer // were full, not empty. - _rx_buffer->head = _rx_buffer->tail; + rx_buffer.head = rx_buffer.tail; } -void MarlinSerial::write(uint8_t c) -{ - while (!((*_ucsra) & (1 << _udre))) - ; - *_udr = c; + + +/// imports from print.h +/* default implementation: may be overridden */ +void MarlinSerial::write(const char *str) +{ + while (*str) + write(*str++); } -void MarlinSerial::checkRx() +/* default implementation: may be overridden */ +void MarlinSerial::write(const uint8_t *buffer, size_t size) { - if((UCSR0A & (1< 0) { + buf[i++] = n % base; + n /= base; + } + + for (; i > 0; i--) + print((char) (buf[i - 1] < 10 ? + '0' + buf[i - 1] : + 'A' + buf[i - 1] - 10)); +} + +void MarlinSerial::printFloat(double number, uint8_t digits) +{ + // Handle negative numbers + if (number < 0.0) + { + print('-'); + number = -number; + } + + // Round correctly so that print(1.999, 2) prints as "2.00" + double rounding = 0.5; + for (uint8_t i=0; i 0) + print("."); + + // Extract digits from the remainder one at a time + while (digits-- > 0) + { + remainder *= 10.0; + int toPrint = int(remainder); + print(toPrint); + remainder -= toPrint; + } +} + // Preinstantiate Objects ////////////////////////////////////////////////////// #if defined(UBRR0H) && defined(UBRR0L) - MarlinSerial MSerial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); + MarlinSerial MSerial( &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); #else #error no serial port defined (port 0) #endif diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 79454492a..3c7381ad1 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -23,15 +23,30 @@ #define MarlinSerial_h #include +#include -#include "Stream.h" -struct ring_buffer; +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#define RX_BUFFER_SIZE 128 -class MarlinSerial : public Stream + +struct ring_buffer +{ + unsigned char buffer[RX_BUFFER_SIZE]; + int head; + int tail; +}; + +#if defined(UBRRH) || defined(UBRR0H) + extern ring_buffer rx_buffer; +#endif + +class MarlinSerial //: public Stream { private: - ring_buffer *_rx_buffer; volatile uint8_t *_ubrrh; volatile uint8_t *_ubrrl; volatile uint8_t *_ucsra; @@ -43,20 +58,76 @@ class MarlinSerial : public Stream uint8_t _udre; uint8_t _u2x; public: - MarlinSerial(ring_buffer *rx_buffer, + MarlinSerial( volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, volatile uint8_t *ucsra, volatile uint8_t *ucsrb, volatile uint8_t *udr, uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); void begin(long); void end(); - virtual int available(void); - virtual int peek(void); - virtual int read(void); - virtual void flush(void); - virtual void write(uint8_t); - virtual void checkRx(void); - using Print::write; // pull in write(str) and write(buf, size) from Print + inline int available(void) + { + return (unsigned int)(RX_BUFFER_SIZE + rx_buffer.head - rx_buffer.tail) % RX_BUFFER_SIZE; + } + int peek(void); + int read(void); + void flush(void); + inline void write(uint8_t c) + { + while (!((*_ucsra) & (1 << _udre))) + ; + + *_udr = c; + } + + + inline void checkRx(void) + { + if((UCSR0A & (1<. */ + +#define SERIAL MSerial #include "SdBaseFile.h" //------------------------------------------------------------------------------ // pointer to cwd directory @@ -294,20 +296,7 @@ void SdBaseFile::getpos(fpos_t* pos) { pos->position = curPosition_; pos->cluster = curCluster_; } -//------------------------------------------------------------------------------ -/** List directory contents to Serial. - * - * \param[in] flags The inclusive OR of - * - * LS_DATE - %Print file modification date - * - * LS_SIZE - %Print file size. - * - * LS_R - Recursive list of subdirectories. - */ -void SdBaseFile::ls(uint8_t flags) { - ls(&MSerial, flags, 0); -} + //------------------------------------------------------------------------------ /** List directory contents. * @@ -324,14 +313,14 @@ void SdBaseFile::ls(uint8_t flags) { * \param[in] indent Amount of space before file name. Used for recursive * list to indicate subdirectory level. */ -void SdBaseFile::ls(Print* pr, uint8_t flags, uint8_t indent) { +void SdBaseFile::ls(uint8_t flags, uint8_t indent) { rewind(); int8_t status; - while ((status = lsPrintNext(pr, flags, indent))) { + while ((status = lsPrintNext( flags, indent))) { if (status > 1 && (flags & LS_R)) { uint16_t index = curPosition()/32 - 1; SdBaseFile s; - if (s.open(this, index, O_READ)) s.ls(pr, flags, indent + 2); + if (s.open(this, index, O_READ)) s.ls( flags, indent + 2); seekSet(32 * (index + 1)); } } @@ -339,7 +328,7 @@ void SdBaseFile::ls(Print* pr, uint8_t flags, uint8_t indent) { //------------------------------------------------------------------------------ // saves 32 bytes on stack for ls recursion // return 0 - EOF, 1 - normal file, or 2 - directory -int8_t SdBaseFile::lsPrintNext(Print *pr, uint8_t flags, uint8_t indent) { +int8_t SdBaseFile::lsPrintNext( uint8_t flags, uint8_t indent) { dir_t dir; uint8_t w = 0; @@ -352,38 +341,38 @@ int8_t SdBaseFile::lsPrintNext(Print *pr, uint8_t flags, uint8_t indent) { && DIR_IS_FILE_OR_SUBDIR(&dir)) break; } // indent for dir level - for (uint8_t i = 0; i < indent; i++) pr->write(' '); + for (uint8_t i = 0; i < indent; i++) MSerial.write(' '); // print name for (uint8_t i = 0; i < 11; i++) { if (dir.name[i] == ' ')continue; if (i == 8) { - pr->write('.'); + MSerial.write('.'); w++; } - pr->write(dir.name[i]); + MSerial.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir)) { - pr->write('/'); + MSerial.write('/'); w++; } if (flags & (LS_DATE | LS_SIZE)) { - while (w++ < 14) pr->write(' '); + while (w++ < 14) MSerial.write(' '); } // print modify date/time if requested if (flags & LS_DATE) { - pr->write(' '); - printFatDate(pr, dir.lastWriteDate); - pr->write(' '); - printFatTime(pr, dir.lastWriteTime); + MSerial.write(' '); + printFatDate( dir.lastWriteDate); + MSerial.write(' '); + printFatTime( dir.lastWriteTime); } // print size if requested if (!DIR_IS_SUBDIR(&dir) && (flags & LS_SIZE)) { - pr->write(' '); - pr->print(dir.fileSize); + MSerial.write(' '); + MSerial.print(dir.fileSize); } - pr->println(); + MSerial.println(); return DIR_IS_FILE(&dir) ? 1 : 2; } //------------------------------------------------------------------------------ @@ -940,17 +929,7 @@ int SdBaseFile::peek() { if (c >= 0) setpos(&pos); return c; } -//------------------------------------------------------------------------------ -/** %Print the name field of a directory entry in 8.3 format to Serial. - * - * \param[in] dir The directory structure containing the name. - * \param[in] width Blank fill name if length is less than \a width. - * \param[in] printSlash Print '/' after directory names if true. - */ -void SdBaseFile::printDirName(const dir_t& dir, - uint8_t width, bool printSlash) { - printDirName(&MSerial, dir, width, printSlash); -} + //------------------------------------------------------------------------------ /** %Print the name field of a directory entry in 8.3 format. * \param[in] pr Print stream for output. @@ -958,32 +937,32 @@ void SdBaseFile::printDirName(const dir_t& dir, * \param[in] width Blank fill name if length is less than \a width. * \param[in] printSlash Print '/' after directory names if true. */ -void SdBaseFile::printDirName(Print* pr, const dir_t& dir, +void SdBaseFile::printDirName(const dir_t& dir, uint8_t width, bool printSlash) { uint8_t w = 0; for (uint8_t i = 0; i < 11; i++) { if (dir.name[i] == ' ')continue; if (i == 8) { - pr->write('.'); + MSerial.write('.'); w++; } - pr->write(dir.name[i]); + MSerial.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir) && printSlash) { - pr->write('/'); + MSerial.write('/'); w++; } while (w < width) { - pr->write(' '); + MSerial.write(' '); w++; } } //------------------------------------------------------------------------------ // print uint8_t with width 2 -static void print2u(Print* pr, uint8_t v) { - if (v < 10) pr->write('0'); - pr->print(v, DEC); +static void print2u( uint8_t v) { + if (v < 10) MSerial.write('0'); + MSerial.print(v, DEC); } //------------------------------------------------------------------------------ /** %Print a directory date field to Serial. @@ -992,9 +971,7 @@ static void print2u(Print* pr, uint8_t v) { * * \param[in] fatDate The date field from a directory entry. */ -void SdBaseFile::printFatDate(uint16_t fatDate) { - printFatDate(&MSerial, fatDate); -} + //------------------------------------------------------------------------------ /** %Print a directory date field. * @@ -1003,23 +980,14 @@ void SdBaseFile::printFatDate(uint16_t fatDate) { * \param[in] pr Print stream for output. * \param[in] fatDate The date field from a directory entry. */ -void SdBaseFile::printFatDate(Print* pr, uint16_t fatDate) { - pr->print(FAT_YEAR(fatDate)); - pr->write('-'); - print2u(pr, FAT_MONTH(fatDate)); - pr->write('-'); - print2u(pr, FAT_DAY(fatDate)); -} -//------------------------------------------------------------------------------ -/** %Print a directory time field to Serial. - * - * Format is hh:mm:ss. - * - * \param[in] fatTime The time field from a directory entry. - */ -void SdBaseFile::printFatTime(uint16_t fatTime) { - printFatTime(&MSerial, fatTime); +void SdBaseFile::printFatDate(uint16_t fatDate) { + MSerial.print(FAT_YEAR(fatDate)); + MSerial.write('-'); + print2u( FAT_MONTH(fatDate)); + MSerial.write('-'); + print2u( FAT_DAY(fatDate)); } + //------------------------------------------------------------------------------ /** %Print a directory time field. * @@ -1028,12 +996,12 @@ void SdBaseFile::printFatTime(uint16_t fatTime) { * \param[in] pr Print stream for output. * \param[in] fatTime The time field from a directory entry. */ -void SdBaseFile::printFatTime(Print* pr, uint16_t fatTime) { - print2u(pr, FAT_HOUR(fatTime)); - pr->write(':'); - print2u(pr, FAT_MINUTE(fatTime)); - pr->write(':'); - print2u(pr, FAT_SECOND(fatTime)); +void SdBaseFile::printFatTime( uint16_t fatTime) { + print2u( FAT_HOUR(fatTime)); + MSerial.write(':'); + print2u( FAT_MINUTE(fatTime)); + MSerial.write(':'); + print2u( FAT_SECOND(fatTime)); } //------------------------------------------------------------------------------ /** Print a file's name to Serial diff --git a/Marlin/SdBaseFile.h b/Marlin/SdBaseFile.h index e02ec3c7a..e184acd96 100644 --- a/Marlin/SdBaseFile.h +++ b/Marlin/SdBaseFile.h @@ -270,8 +270,7 @@ class SdBaseFile { bool isRoot() const { return type_ == FAT_FILE_TYPE_ROOT_FIXED || type_ == FAT_FILE_TYPE_ROOT32; } - void ls(Print* pr, uint8_t flags = 0, uint8_t indent = 0); - void ls(uint8_t flags = 0); + void ls( uint8_t flags = 0, uint8_t indent = 0); bool mkdir(SdBaseFile* dir, const char* path, bool pFlag = true); // alias for backward compactability bool makeDir(SdBaseFile* dir, const char* path) { @@ -284,9 +283,7 @@ class SdBaseFile { bool openRoot(SdVolume* vol); int peek(); static void printFatDate(uint16_t fatDate); - static void printFatDate(Print* pr, uint16_t fatDate); - static void printFatTime(uint16_t fatTime); - static void printFatTime(Print* pr, uint16_t fatTime); + static void printFatTime( uint16_t fatTime); bool printName(); int16_t read(); int16_t read(void* buf, uint16_t nbyte); @@ -359,7 +356,7 @@ class SdBaseFile { bool addCluster(); bool addDirCluster(); dir_t* cacheDirEntry(uint8_t action); - int8_t lsPrintNext(Print *pr, uint8_t flags, uint8_t indent); + int8_t lsPrintNext( uint8_t flags, uint8_t indent); static bool make83Name(const char* str, uint8_t* name, const char** ptr); bool mkdir(SdBaseFile* parent, const uint8_t dname[11]); bool open(SdBaseFile* dirFile, const uint8_t dname[11], uint8_t oflag); @@ -367,9 +364,7 @@ class SdBaseFile { dir_t* readDirCache(); //------------------------------------------------------------------------------ // to be deleted - static void printDirName(const dir_t& dir, - uint8_t width, bool printSlash); - static void printDirName(Print* pr, const dir_t& dir, + static void printDirName( const dir_t& dir, uint8_t width, bool printSlash); //------------------------------------------------------------------------------ // Deprecated functions - suppress cpplint warnings with NOLINT comment diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp index 7f82a7083..0bf86f295 100644 --- a/Marlin/SdFatUtil.cpp +++ b/Marlin/SdFatUtil.cpp @@ -43,8 +43,8 @@ int SdFatUtil::FreeRam() { * \param[in] pr Print object for output. * \param[in] str Pointer to string stored in flash memory. */ -void SdFatUtil::print_P(Print* pr, PGM_P str) { - for (uint8_t c; (c = pgm_read_byte(str)); str++) pr->write(c); +void SdFatUtil::print_P( PGM_P str) { + for (uint8_t c; (c = pgm_read_byte(str)); str++) MSerial.write(c); } //------------------------------------------------------------------------------ /** %Print a string in flash memory followed by a CR/LF. @@ -52,9 +52,9 @@ void SdFatUtil::print_P(Print* pr, PGM_P str) { * \param[in] pr Print object for output. * \param[in] str Pointer to string stored in flash memory. */ -void SdFatUtil::println_P(Print* pr, PGM_P str) { - print_P(pr, str); - pr->println(); +void SdFatUtil::println_P( PGM_P str) { + print_P( str); + MSerial.println(); } //------------------------------------------------------------------------------ /** %Print a string in flash memory to Serial. @@ -62,7 +62,7 @@ void SdFatUtil::println_P(Print* pr, PGM_P str) { * \param[in] str Pointer to string stored in flash memory. */ void SdFatUtil::SerialPrint_P(PGM_P str) { - print_P(&MSerial, str); + print_P(str); } //------------------------------------------------------------------------------ /** %Print a string in flash memory to Serial followed by a CR/LF. @@ -70,5 +70,5 @@ void SdFatUtil::SerialPrint_P(PGM_P str) { * \param[in] str Pointer to string stored in flash memory. */ void SdFatUtil::SerialPrintln_P(PGM_P str) { - println_P(&MSerial, str); + println_P( str); } diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index c49e77df8..6e3cb4936 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -1,48 +1,48 @@ -/* Arduino SdFat Library - * Copyright (C) 2008 by William Greiman - * - * This file is part of the Arduino SdFat Library - * - * This Library 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 Library 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 the Arduino SdFat Library. If not, see - * . - */ -#ifndef SdFatUtil_h -#define SdFatUtil_h -/** - * \file - * \brief Useful utility functions. - */ -#include -#if ARDUINO < 100 -#define HardwareSerial_h // trick to disable the standard HWserial -#include -#include "MarlinSerial.h" -#else // ARDUINO -#include -#endif // ARDUINO -/** Store and print a string in flash memory.*/ -#define PgmPrint(x) SerialPrint_P(PSTR(x)) -/** Store and print a string in flash memory followed by a CR/LF.*/ -#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) - -namespace SdFatUtil { - int FreeRam(); - void print_P(Print* pr, PGM_P str); - void println_P(Print* pr, PGM_P str); - void SerialPrint_P(PGM_P str); - void SerialPrintln_P(PGM_P str); -} - -using namespace SdFatUtil; // NOLINT +/* Arduino SdFat Library + * Copyright (C) 2008 by William Greiman + * + * This file is part of the Arduino SdFat Library + * + * This Library 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 Library 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 the Arduino SdFat Library. If not, see + * . + */ +#ifndef SdFatUtil_h +#define SdFatUtil_h +/** + * \file + * \brief Useful utility functions. + */ +#include +#if ARDUINO < 100 +#define HardwareSerial_h // trick to disable the standard HWserial +#include +#include "MarlinSerial.h" +#else // ARDUINO +#include +#endif // ARDUINO +/** Store and print a string in flash memory.*/ +#define PgmPrint(x) SerialPrint_P(PSTR(x)) +/** Store and print a string in flash memory followed by a CR/LF.*/ +#define PgmPrintln(x) SerialPrintln_P(PSTR(x)) + +namespace SdFatUtil { + int FreeRam(); + void print_P( PGM_P str); + void println_P( PGM_P str); + void SerialPrint_P(PGM_P str); + void SerialPrintln_P(PGM_P str); +} + +using namespace SdFatUtil; // NOLINT #endif // #define SdFatUtil_h From b9ad0bb2ce7f6d92375de204536b46cce7bc930a Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 28 Nov 2011 19:28:38 +0100 Subject: [PATCH 124/430] removed unecessary indirect register adressing in serial. --- Marlin/MarlinSerial.cpp | 45 +++++++++++++++-------------------------- Marlin/MarlinSerial.h | 22 ++++---------------- 2 files changed, 20 insertions(+), 47 deletions(-) diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index 34ae6d767..fb34ab19b 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -75,22 +75,9 @@ inline void store_char(unsigned char c) // Constructors //////////////////////////////////////////////////////////////// -MarlinSerial::MarlinSerial( - volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, - volatile uint8_t *ucsra, volatile uint8_t *ucsrb, - volatile uint8_t *udr, - uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) +MarlinSerial::MarlinSerial() { - _ubrrh = ubrrh; - _ubrrl = ubrrl; - _ucsra = ucsra; - _ucsrb = ucsrb; - _udr = udr; - _rxen = rxen; - _txen = txen; - _rxcie = rxcie; - _udre = udre; - _u2x = u2x; + } // Public Methods ////////////////////////////////////////////////////////////// @@ -98,39 +85,39 @@ MarlinSerial::MarlinSerial( void MarlinSerial::begin(long baud) { uint16_t baud_setting; - bool use_u2x = true; + bool useU2X0 = true; #if F_CPU == 16000000UL // hardcoded exception for compatibility with the bootloader shipped // with the Duemilanove and previous boards and the firmware on the 8U2 // on the Uno and Mega 2560. if (baud == 57600) { - use_u2x = false; + useU2X0 = false; } #endif - if (use_u2x) { - *_ucsra = 1 << _u2x; + if (useU2X0) { + UCSR0A = 1 << U2X0; baud_setting = (F_CPU / 4 / baud - 1) / 2; } else { - *_ucsra = 0; + UCSR0A = 0; baud_setting = (F_CPU / 8 / baud - 1) / 2; } // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) - *_ubrrh = baud_setting >> 8; - *_ubrrl = baud_setting; + UBRR0H = baud_setting >> 8; + UBRR0L = baud_setting; - sbi(*_ucsrb, _rxen); - sbi(*_ucsrb, _txen); - sbi(*_ucsrb, _rxcie); + sbi(UCSR0B, RXEN0); + sbi(UCSR0B, TXEN0); + sbi(UCSR0B, RXCIE0); } void MarlinSerial::end() { - cbi(*_ucsrb, _rxen); - cbi(*_ucsrb, _txen); - cbi(*_ucsrb, _rxcie); + cbi(UCSR0B, RXEN0); + cbi(UCSR0B, TXEN0); + cbi(UCSR0B, RXCIE0); } @@ -367,7 +354,7 @@ void MarlinSerial::printFloat(double number, uint8_t digits) // Preinstantiate Objects ////////////////////////////////////////////////////// #if defined(UBRR0H) && defined(UBRR0L) - MarlinSerial MSerial( &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); + MarlinSerial MSerial; #else #error no serial port defined (port 0) #endif diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 3c7381ad1..30c0f5a34 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -46,23 +46,9 @@ struct ring_buffer class MarlinSerial //: public Stream { - private: - volatile uint8_t *_ubrrh; - volatile uint8_t *_ubrrl; - volatile uint8_t *_ucsra; - volatile uint8_t *_ucsrb; - volatile uint8_t *_udr; - uint8_t _rxen; - uint8_t _txen; - uint8_t _rxcie; - uint8_t _udre; - uint8_t _u2x; + public: - MarlinSerial( - volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, - volatile uint8_t *ucsra, volatile uint8_t *ucsrb, - volatile uint8_t *udr, - uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); + MarlinSerial(); void begin(long); void end(); inline int available(void) @@ -74,10 +60,10 @@ class MarlinSerial //: public Stream void flush(void); inline void write(uint8_t c) { - while (!((*_ucsra) & (1 << _udre))) + while (!((UCSR0A) & (1 << UDRE0))) ; - *_udr = c; + UDR0 = c; } From 85da81e67349ab815985b5651aecfb7943201b3c Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 28 Nov 2011 19:34:42 +0100 Subject: [PATCH 125/430] inlineing of small functions in serial --- Marlin/MarlinSerial.cpp | 28 +--------------------------- Marlin/MarlinSerial.h | 36 +++++++++++++++++++++++++++++------- 2 files changed, 30 insertions(+), 34 deletions(-) diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index fb34ab19b..6cf47eafe 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -161,31 +161,9 @@ void MarlinSerial::flush() /// imports from print.h -/* default implementation: may be overridden */ -void MarlinSerial::write(const char *str) -{ - while (*str) - write(*str++); -} -/* default implementation: may be overridden */ -void MarlinSerial::write(const uint8_t *buffer, size_t size) -{ - while (size--) - write(*buffer++); -} -void MarlinSerial::print(const String &s) -{ - for (int i = 0; i < s.length(); i++) { - write(s[i]); - } -} -void MarlinSerial::print(const char str[]) -{ - write(str); -} void MarlinSerial::print(char c, int base) { @@ -353,11 +331,7 @@ void MarlinSerial::printFloat(double number, uint8_t digits) // Preinstantiate Objects ////////////////////////////////////////////////////// -#if defined(UBRR0H) && defined(UBRR0L) - MarlinSerial MSerial; -#else - #error no serial port defined (port 0) -#endif +MarlinSerial MSerial; #endif // whole file diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 30c0f5a34..9ff07912b 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -51,13 +51,15 @@ class MarlinSerial //: public Stream MarlinSerial(); void begin(long); void end(); + int peek(void); + int read(void); + void flush(void); + inline int available(void) { return (unsigned int)(RX_BUFFER_SIZE + rx_buffer.head - rx_buffer.tail) % RX_BUFFER_SIZE; } - int peek(void); - int read(void); - void flush(void); + inline void write(uint8_t c) { while (!((UCSR0A) & (1 << UDRE0))) @@ -91,11 +93,31 @@ class MarlinSerial //: public Stream public: - void write(const char *str); - void write( const uint8_t *buffer, size_t size); - void print(const String &); - void print(const char[]); + inline void write(const char *str) + { + while (*str) + write(*str++); + } + + + inline void write(const uint8_t *buffer, size_t size) + { + while (size--) + write(*buffer++); + } + + inline void print(const String &s) + { + for (int i = 0; i < s.length(); i++) { + write(s[i]); + } + } + + inline void print(const char *str) + { + write(str); + } void print(char, int = BYTE); void print(unsigned char, int = BYTE); void print(int, int = DEC); From 98805c922892edc2d6fbb2ea39574d7cde1b492f Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 28 Nov 2011 20:51:01 +0100 Subject: [PATCH 126/430] Added M88 command. (Request from Action68) --- Marlin/Marlin.pde | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 4c1535bf5..a803ba375 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -866,6 +866,16 @@ inline void process_commands() axis_steps_per_unit[i] = code_value(); } break; + case 88: //M88 + if(code_seen('S')) { + stepper_inactive_time = code_value() * 1000; + } + else { + st_synchronize() + LCD_MESSAGEPGM("Free Move"); + disable_e(); + } + break; case 115: // M115 SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); break; From 7216a128566c173ebd2d799498bf53af182e9acf Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 28 Nov 2011 21:17:06 +0100 Subject: [PATCH 127/430] Disabled M88 for boards that don't have seperate enable pins. --- Marlin/Marlin.pde | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index a803ba375..191f70b64 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -867,14 +867,19 @@ inline void process_commands() } break; case 88: //M88 - if(code_seen('S')) { - stepper_inactive_time = code_value() * 1000; - } - else { - st_synchronize() - LCD_MESSAGEPGM("Free Move"); - disable_e(); - } + #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS + if(code_seen('S')) { + stepper_inactive_time = code_value() * 1000; + } + else { + st_synchronize() + LCD_MESSAGEPGM("Free Move"); + disable_e(); + } + #else + SERIAL_ECHO_START; + SERIAL_ECHOLN("M88 not supported"); + #endif break; case 115: // M115 SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); From 6d95644c0d7dcb17b9723374b92aaceed11c6548 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 28 Nov 2011 21:49:54 +0100 Subject: [PATCH 128/430] Moved M88 into M84. (M84 E) --- Marlin/Marlin.pde | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 191f70b64..86f562659 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -852,7 +852,18 @@ inline void process_commands() } else { - finishAndDisableSteppers(); + #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS + if(code_seen('E')) { + st_synchronize() + LCD_MESSAGEPGM("Free Move"); + disable_e(); + } + else { + finishAndDisableSteppers(); + } + #else + finishAndDisableSteppers(); + #endif } break; case 85: // M85 @@ -866,21 +877,6 @@ inline void process_commands() axis_steps_per_unit[i] = code_value(); } break; - case 88: //M88 - #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS - if(code_seen('S')) { - stepper_inactive_time = code_value() * 1000; - } - else { - st_synchronize() - LCD_MESSAGEPGM("Free Move"); - disable_e(); - } - #else - SERIAL_ECHO_START; - SERIAL_ECHOLN("M88 not supported"); - #endif - break; case 115: // M115 SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); break; From b19c8b74b9b5a5359c8cf508cca17480003e189e Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 28 Nov 2011 21:51:44 +0100 Subject: [PATCH 129/430] force inline --- Marlin/MarlinSerial.cpp | 3 ++- Marlin/MarlinSerial.h | 16 +++++++++------- Marlin/temperature.h | 16 ++++++++-------- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index 6cf47eafe..d1ec0fec9 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -32,6 +32,7 @@ #if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) #include "MarlinSerial.h" +#include "Marlin.h" @@ -41,7 +42,7 @@ #endif -inline void store_char(unsigned char c) +FORCE_INLINE void store_char(unsigned char c) { int i = (unsigned int)(rx_buffer.head + 1) % RX_BUFFER_SIZE; diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 9ff07912b..6bc9ffb26 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -24,6 +24,8 @@ #include #include +#define FORCE_INLINE __attribute__((always_inline)) inline + // Define constants and variables for buffering incoming serial data. We're @@ -55,12 +57,12 @@ class MarlinSerial //: public Stream int read(void); void flush(void); - inline int available(void) + FORCE_INLINE int available(void) { return (unsigned int)(RX_BUFFER_SIZE + rx_buffer.head - rx_buffer.tail) % RX_BUFFER_SIZE; } - inline void write(uint8_t c) + FORCE_INLINE void write(uint8_t c) { while (!((UCSR0A) & (1 << UDRE0))) ; @@ -69,7 +71,7 @@ class MarlinSerial //: public Stream } - inline void checkRx(void) + FORCE_INLINE void checkRx(void) { if((UCSR0A & (1< current_raw[TEMPSENSOR_HOTEND_0];}; FORCE_INLINE bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; -inline float isHeatingHotend(uint8_t extruder){ +FORCE_INLINE float isHeatingHotend(uint8_t extruder){ if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]; if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1]; }; -inline bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; +FORCE_INLINE bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; FORCE_INLINE bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; FORCE_INLINE bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; -inline float isCoolingHotend(uint8_t extruder){ +FORCE_INLINE float isCoolingHotend(uint8_t extruder){ if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0]; if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1]; }; -inline bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; +FORCE_INLINE bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; void disable_heater(); void setWatch(); From 8cb29921a0b897aaa700ea8312330c294e4b640a Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 28 Nov 2011 22:09:17 +0100 Subject: [PATCH 130/430] possible stepper release after sd printing --- Marlin/Marlin.pde | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 32e0b812d..11bdec472 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -395,7 +395,6 @@ inline void get_command() if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1)||n==-1) { if(card.eof()){ - card.sdprinting = false; SERIAL_PROTOCOLLNPGM("Done printing file"); stoptime=millis(); char time[30]; @@ -407,7 +406,9 @@ inline void get_command() SERIAL_ECHO_START; SERIAL_ECHOLN(time); LCD_MESSAGE(time); + card.printingHasFinished(); card.checkautostart(true); + } if(serial_char=='\n') comment_mode = false; //for new command @@ -860,7 +861,7 @@ inline void process_commands() { #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS if(code_seen('E')) { - st_synchronize() + st_synchronize(); LCD_MESSAGEPGM("Free Move"); disable_e(); } From e4ab0e598226e6d5fbca46dc7762af4ab6a83e6b Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 28 Nov 2011 22:11:17 +0100 Subject: [PATCH 131/430] more inlines --- Marlin/Marlin.pde | 16 ++++++++-------- Marlin/temperature.h | 2 +- Marlin/ultralcd.pde | 4 ++-- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 11bdec472..3c6791336 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -289,7 +289,7 @@ void loop() } -inline void get_command() +FORCE_INLINE void get_command() { while( MSerial.available() > 0 && buflen < BUFSIZE) { serial_char = MSerial.read(); @@ -436,20 +436,20 @@ inline void get_command() } -inline float code_value() +FORCE_INLINE float code_value() { return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); } -inline long code_value_long() +FORCE_INLINE long code_value_long() { return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); } -inline bool code_seen(char code_string[]) //Return True if the string was found +FORCE_INLINE bool code_seen(char code_string[]) //Return True if the string was found { return (strstr(cmdbuffer[bufindr], code_string) != NULL); } -inline bool code_seen(char code) +FORCE_INLINE bool code_seen(char code) { strchr_pointer = strchr(cmdbuffer[bufindr], code); return (strchr_pointer != NULL); //Return True if a character was found @@ -481,7 +481,7 @@ inline bool code_seen(char code) endstops_hit_on_purpose();\ } -inline void process_commands() +FORCE_INLINE void process_commands() { unsigned long codenum; //throw away variable char *starpos = NULL; @@ -1075,7 +1075,7 @@ void ClearToSend() SERIAL_PROTOCOLLNPGM("ok"); } -inline void get_coordinates() +FORCE_INLINE void get_coordinates() { for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; @@ -1087,7 +1087,7 @@ inline void get_coordinates() } } -inline void get_arc_coordinates() +FORCE_INLINE void get_arc_coordinates() { get_coordinates(); if(code_seen('I')) offset[0] = code_value(); diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 13a0e0c1f..a12ef0310 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -69,7 +69,7 @@ FORCE_INLINE float degHotend(uint8_t extruder){ FORCE_INLINE float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]);}; FORCE_INLINE float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; -inline float degTargetHotend(uint8_t extruder){ +FORCE_INLINE float degTargetHotend(uint8_t extruder){ if(extruder == 0) return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]); if(extruder == 1) return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]); }; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index a4bb640b7..4ca93aa0c 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -60,7 +60,7 @@ void lcdProgMemprint(const char *str) //=============================functions ============================ //=========================================================================== -inline int intround(const float &x){return int(0.5+x);} +FORCE_INLINE int intround(const float &x){return int(0.5+x);} void lcd_status(const char* message) { @@ -83,7 +83,7 @@ void lcd_statuspgm(const char* message) *target=0; } -inline void clear() +FORCE_INLINE void clear() { lcd.clear(); } From d00b7e558745608a95075ba1c3202a30c69d1438 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 28 Nov 2011 22:45:40 +0100 Subject: [PATCH 132/430] repaired compiliation in windows --- Marlin/MarlinSerial.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index d1ec0fec9..854c4a824 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -24,6 +24,7 @@ #include #include #include +#include #include "wiring.h" #include "wiring_private.h" From 716e89b87c15085d781379f9ffdfd376da415c6b Mon Sep 17 00:00:00 2001 From: Bernhard Date: Tue, 29 Nov 2011 22:06:31 +0100 Subject: [PATCH 133/430] first homing move diagonal towards home switches. --- Marlin/Marlin.pde | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 3c6791336..7c0d31011 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -532,6 +532,19 @@ FORCE_INLINE void process_commands() feedrate = 0.0; home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); + if( code_seen(axis_codes[0]) && code_seen(axis_codes[1]) ) //first diagonal move + { + current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; + destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate =homing_feedrate[X_AXIS]; + if(homing_feedrate[Y_AXIS] Date: Wed, 30 Nov 2011 08:32:28 +0100 Subject: [PATCH 134/430] made it compile if arduino decides to include files in a differnt order. DEC HEX and stuff now defined in MarlinSerial.h --- Marlin/MarlinSerial.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 6bc9ffb26..9fc9f0070 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -24,8 +24,17 @@ #include #include +#include #define FORCE_INLINE __attribute__((always_inline)) inline +#include "WString.h" + +#define DEC 10 +#define HEX 16 +#define OCT 8 +#define BIN 2 +#define BYTE 0 + // Define constants and variables for buffering incoming serial data. We're From 59205ac5fcf9fb00ca2748ffe0bddd1a47b239fe Mon Sep 17 00:00:00 2001 From: Bernhard Date: Wed, 30 Nov 2011 08:51:46 +0100 Subject: [PATCH 135/430] preliminiary implementation for the early heating finish. Might be replaced by something more clever, e.g. by erik, and does not yet support the second extruder or the bed. its kind of not so cool, because you need 6 more ints. Maybe isheating() should use the degrees directly, as it is not used in time-critical anyways. Then it would be much easier. to have the offsets without additional variables. --- Marlin/Configuration.h | 2 ++ Marlin/temperature.cpp | 2 ++ Marlin/temperature.h | 6 ++++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 558044e28..483b8cf83 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -91,6 +91,8 @@ // if CooldownNoWait is defined M109 will not wait for the cooldown to finish #define CooldownNoWait true +// Heating is finished if a temperature close to this degree shift is reached +#define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree // PID settings: // Uncomment the following line to enable PID support. diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 77aa6485b..93364f8cb 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -43,6 +43,8 @@ //=========================================================================== int target_raw[3] = {0, 0, 0}; int current_raw[3] = {0, 0, 0}; +int heatingtarget_raw[3]= {0, 0, 0}; + #ifdef PIDTEMP diff --git a/Marlin/temperature.h b/Marlin/temperature.h index a12ef0310..ba1043b6d 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -41,6 +41,7 @@ int temp2analogBed(int celsius); float analog2temp(int raw); float analog2tempBed(int raw); extern int target_raw[3]; +extern int heatingtarget_raw[3]; extern int current_raw[3]; extern float Kp,Ki,Kd,Kc; @@ -79,6 +80,7 @@ FORCE_INLINE float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSO FORCE_INLINE void setTargetHotend0(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius); + heatingtarget_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius-HEATING_EARLY_FINISH_DEG_OFFSET); #ifdef PIDTEMP pid_setpoint = celsius; #endif //PIDTEMP @@ -90,10 +92,10 @@ FORCE_INLINE float setTargetHotend(const float &celcius, uint8_t extruder){ }; FORCE_INLINE void setTargetBed(const float &celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; -FORCE_INLINE bool isHeatingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; +FORCE_INLINE bool isHeatingHotend0() {return heatingtarget_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; FORCE_INLINE bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; FORCE_INLINE float isHeatingHotend(uint8_t extruder){ - if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]; + if(extruder == 0) return heatingtarget_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]; if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1]; }; FORCE_INLINE bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; From 9c57453168f88907c5e5b40c3aa7c23ce5d9a01f Mon Sep 17 00:00:00 2001 From: Bernhard Date: Wed, 30 Nov 2011 08:57:30 +0100 Subject: [PATCH 136/430] removed stream.h referenece from marlinserial. --- Marlin/MarlinSerial.h | 2 +- Marlin/SdFile.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 9fc9f0070..051070fde 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -23,7 +23,7 @@ #define MarlinSerial_h #include -#include +//#include #include #define FORCE_INLINE __attribute__((always_inline)) inline diff --git a/Marlin/SdFile.h b/Marlin/SdFile.h index d5f8ec089..e59bb8abe 100644 --- a/Marlin/SdFile.h +++ b/Marlin/SdFile.h @@ -22,6 +22,7 @@ * \brief SdFile class */ #include "SdBaseFile.h" +#include #ifndef SdFile_h #define SdFile_h //------------------------------------------------------------------------------ From b0c3871750d55ab66f5233f7c318375aa1b61e43 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Wed, 30 Nov 2011 09:07:56 +0100 Subject: [PATCH 137/430] more fixing of the sanguino math round problem --- Marlin/Marlin.h | 1 + Marlin/Marlin.pde | 3 ++- Marlin/MarlinSerial.h | 2 +- Marlin/Sanguino/cores/arduino/wiring.h | 1 + Marlin/Sanguino/cores/arduino/wiring_private.h | 2 +- Marlin/pins.h | 1 + Marlin/planner.h | 2 +- 7 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 464d7ebf5..574a85ec5 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -4,6 +4,7 @@ // Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. // Licence: GPL #define HardwareSerial_h // trick to disable the standard HWserial +#include #include #include "fastio.h" #include diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 7c0d31011..06fd09776 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -25,8 +25,8 @@ http://reprap.org/pipermail/reprap-dev/2011-May/003323.html */ +#include #include - #include "EEPROMwrite.h" #include "fastio.h" #include "Configuration.h" @@ -39,6 +39,7 @@ #include "motion_control.h" #include "cardreader.h" #include "watchdog.h" +#include #define VERSION_STRING "1.0.0 Beta 1" diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 051070fde..76d5a35a1 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -21,7 +21,7 @@ #ifndef MarlinSerial_h #define MarlinSerial_h - +#include #include //#include #include diff --git a/Marlin/Sanguino/cores/arduino/wiring.h b/Marlin/Sanguino/cores/arduino/wiring.h index e29959b86..0a9367805 100644 --- a/Marlin/Sanguino/cores/arduino/wiring.h +++ b/Marlin/Sanguino/cores/arduino/wiring.h @@ -25,6 +25,7 @@ #ifndef Wiring_h #define Wiring_h +#include #include #include #include "binary.h" diff --git a/Marlin/Sanguino/cores/arduino/wiring_private.h b/Marlin/Sanguino/cores/arduino/wiring_private.h index 11f6f00f2..56c471353 100644 --- a/Marlin/Sanguino/cores/arduino/wiring_private.h +++ b/Marlin/Sanguino/cores/arduino/wiring_private.h @@ -24,7 +24,7 @@ #ifndef WiringPrivate_h #define WiringPrivate_h - +#include #include #include #include diff --git a/Marlin/pins.h b/Marlin/pins.h index fbb4f194c..60dd6e514 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -427,6 +427,7 @@ #define TX_ENABLE_PIN 12 #define RX_ENABLE_PIN 13 + #endif /**************************************************************************************** diff --git a/Marlin/planner.h b/Marlin/planner.h index 741c6f902..05bef3a23 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -23,7 +23,7 @@ #ifndef planner_h #define planner_h - +#include #include "Configuration.h" #include "Marlin.h" From 0bc9daa4f7636858cdcff66e847cc414b18bb51b Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 1 Dec 2011 16:38:01 +0100 Subject: [PATCH 138/430] make it compile with arduino 1.0 ; function is still untested. --- Marlin/Marlin.h | 7 +- Marlin/MarlinSerial.cpp | 6 +- Marlin/Sd2Card.cpp | 1284 +++++++++++++++++++-------------------- Marlin/SdBaseFile.h | 4 +- Marlin/SdFatUtil.h | 5 +- Marlin/SdFile.cpp | 7 +- Marlin/SdFile.h | 7 +- Marlin/planner.h | 6 +- 8 files changed, 675 insertions(+), 651 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 574a85ec5..8afc87bc9 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -5,7 +5,12 @@ // Licence: GPL #define HardwareSerial_h // trick to disable the standard HWserial #include -#include +#if ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif + #include "fastio.h" #include #include "Configuration.h" diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index 854c4a824..54db90732 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -25,7 +25,11 @@ #include #include #include -#include "wiring.h" +#if ARDUINO >= 100 + #include "Arduino.h" +#else + #include "wiring.h" +#endif #include "wiring_private.h" // this next line disables the entire HardwareSerial.cpp, diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp index 4ca641ef9..d7f018e4b 100644 --- a/Marlin/Sd2Card.cpp +++ b/Marlin/Sd2Card.cpp @@ -1,643 +1,643 @@ -/* Arduino Sd2Card Library - * Copyright (C) 2009 by William Greiman - * - * This file is part of the Arduino Sd2Card Library - * - * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see - * . - */ -#if ARDUINO < 100 -#define HardwareSerial_h // trick to disable the standard HWserial -#include -#else // ARDUINO -#include -#endif // ARDUINO -#include "Sd2Card.h" -//------------------------------------------------------------------------------ -#ifndef SOFTWARE_SPI -// functions for hardware SPI -//------------------------------------------------------------------------------ -// make sure SPCR rate is in expected bits -#if (SPR0 != 0 || SPR1 != 1) -#error unexpected SPCR bits -#endif -/** - * Initialize hardware SPI - * Set SCK rate to F_CPU/pow(2, 1 + spiRate) for spiRate [0,6] - */ -static void spiInit(uint8_t spiRate) { - // See avr processor documentation - SPCR = (1 << SPE) | (1 << MSTR) | (spiRate >> 1); - SPSR = spiRate & 1 || spiRate == 6 ? 0 : 1 << SPI2X; -} -//------------------------------------------------------------------------------ -/** SPI receive a byte */ -static uint8_t spiRec() { - SPDR = 0XFF; - while (!(SPSR & (1 << SPIF))); - return SPDR; -} -//------------------------------------------------------------------------------ -/** SPI read data - only one call so force inline */ -static inline __attribute__((always_inline)) - void spiRead(uint8_t* buf, uint16_t nbyte) { - if (nbyte-- == 0) return; - SPDR = 0XFF; - for (uint16_t i = 0; i < nbyte; i++) { - while (!(SPSR & (1 << SPIF))); - buf[i] = SPDR; - SPDR = 0XFF; - } - while (!(SPSR & (1 << SPIF))); - buf[nbyte] = SPDR; -} -//------------------------------------------------------------------------------ -/** SPI send a byte */ -static void spiSend(uint8_t b) { - SPDR = b; - while (!(SPSR & (1 << SPIF))); -} -//------------------------------------------------------------------------------ -/** SPI send block - only one call so force inline */ -static inline __attribute__((always_inline)) - void spiSendBlock(uint8_t token, const uint8_t* buf) { - SPDR = token; - for (uint16_t i = 0; i < 512; i += 2) { - while (!(SPSR & (1 << SPIF))); - SPDR = buf[i]; - while (!(SPSR & (1 << SPIF))); - SPDR = buf[i + 1]; - } - while (!(SPSR & (1 << SPIF))); -} -//------------------------------------------------------------------------------ -#else // SOFTWARE_SPI -//------------------------------------------------------------------------------ -/** nop to tune soft SPI timing */ -#define nop asm volatile ("nop\n\t") -//------------------------------------------------------------------------------ -/** Soft SPI receive byte */ -static uint8_t spiRec() { - uint8_t data = 0; - // no interrupts during byte receive - about 8 us - cli(); - // output pin high - like sending 0XFF - fastDigitalWrite(SPI_MOSI_PIN, HIGH); - - for (uint8_t i = 0; i < 8; i++) { - fastDigitalWrite(SPI_SCK_PIN, HIGH); - - // adjust so SCK is nice - nop; - nop; - - data <<= 1; - - if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; - - fastDigitalWrite(SPI_SCK_PIN, LOW); - } - // enable interrupts - sei(); - return data; -} -//------------------------------------------------------------------------------ -/** Soft SPI read data */ -static void spiRead(uint8_t* buf, uint16_t nbyte) { - for (uint16_t i = 0; i < nbyte; i++) { - buf[i] = spiRec(); - } -} -//------------------------------------------------------------------------------ -/** Soft SPI send byte */ -static void spiSend(uint8_t data) { - // no interrupts during byte send - about 8 us - cli(); - for (uint8_t i = 0; i < 8; i++) { - fastDigitalWrite(SPI_SCK_PIN, LOW); - - fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); - - data <<= 1; - - fastDigitalWrite(SPI_SCK_PIN, HIGH); - } - // hold SCK high for a few ns - nop; - nop; - nop; - nop; - - fastDigitalWrite(SPI_SCK_PIN, LOW); - // enable interrupts - sei(); -} -//------------------------------------------------------------------------------ -/** Soft SPI send block */ - void spiSendBlock(uint8_t token, const uint8_t* buf) { - spiSend(token); - for (uint16_t i = 0; i < 512; i++) { - spiSend(buf[i]); - } -} -#endif // SOFTWARE_SPI -//------------------------------------------------------------------------------ -// send command and return error code. Return zero for OK -uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { - // select card - chipSelectLow(); - - // wait up to 300 ms if busy - waitNotBusy(300); - - // send command - spiSend(cmd | 0x40); - - // send argument - for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); - - // send CRC - uint8_t crc = 0XFF; - if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 - if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA - spiSend(crc); - - // skip stuff byte for stop read - if (cmd == CMD12) spiRec(); - - // wait for response - for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); - return status_; -} -//------------------------------------------------------------------------------ -/** - * Determine the size of an SD flash memory card. - * - * \return The number of 512 byte data blocks in the card - * or zero if an error occurs. - */ -uint32_t Sd2Card::cardSize() { - csd_t csd; - if (!readCSD(&csd)) return 0; - if (csd.v1.csd_ver == 0) { - uint8_t read_bl_len = csd.v1.read_bl_len; - uint16_t c_size = (csd.v1.c_size_high << 10) - | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; - uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) - | csd.v1.c_size_mult_low; - return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); - } else if (csd.v2.csd_ver == 1) { - uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) - | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; - return (c_size + 1) << 10; - } else { - error(SD_CARD_ERROR_BAD_CSD); - return 0; - } -} -//------------------------------------------------------------------------------ -void Sd2Card::chipSelectHigh() { - digitalWrite(chipSelectPin_, HIGH); -} -//------------------------------------------------------------------------------ -void Sd2Card::chipSelectLow() { -#ifndef SOFTWARE_SPI - spiInit(spiRate_); -#endif // SOFTWARE_SPI - digitalWrite(chipSelectPin_, LOW); -} -//------------------------------------------------------------------------------ -/** Erase a range of blocks. - * - * \param[in] firstBlock The address of the first block in the range. - * \param[in] lastBlock The address of the last block in the range. - * - * \note This function requests the SD card to do a flash erase for a - * range of blocks. The data on the card after an erase operation is - * either 0 or 1, depends on the card vendor. The card must support - * single block erase. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { - csd_t csd; - if (!readCSD(&csd)) goto fail; - // check for single block erase - if (!csd.v1.erase_blk_en) { - // erase size mask - uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; - if ((firstBlock & m) != 0 || ((lastBlock + 1) & m) != 0) { - // error card can't erase specified area - error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); - goto fail; - } - } - if (type_ != SD_CARD_TYPE_SDHC) { - firstBlock <<= 9; - lastBlock <<= 9; - } - if (cardCommand(CMD32, firstBlock) - || cardCommand(CMD33, lastBlock) - || cardCommand(CMD38, 0)) { - error(SD_CARD_ERROR_ERASE); - goto fail; - } - if (!waitNotBusy(SD_ERASE_TIMEOUT)) { - error(SD_CARD_ERROR_ERASE_TIMEOUT); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Determine if card supports single block erase. - * - * \return The value one, true, is returned if single block erase is supported. - * The value zero, false, is returned if single block erase is not supported. - */ -bool Sd2Card::eraseSingleBlockEnable() { - csd_t csd; - return readCSD(&csd) ? csd.v1.erase_blk_en : false; -} -//------------------------------------------------------------------------------ -/** - * Initialize an SD flash memory card. - * - * \param[in] sckRateID SPI clock rate selector. See setSckRate(). - * \param[in] chipSelectPin SD chip select pin number. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. The reason for failure - * can be determined by calling errorCode() and errorData(). - */ -bool Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { - errorCode_ = type_ = 0; - chipSelectPin_ = chipSelectPin; - // 16-bit init start time allows over a minute - uint16_t t0 = (uint16_t)millis(); - uint32_t arg; - - // set pin modes - pinMode(chipSelectPin_, OUTPUT); - chipSelectHigh(); - pinMode(SPI_MISO_PIN, INPUT); - pinMode(SPI_MOSI_PIN, OUTPUT); - pinMode(SPI_SCK_PIN, OUTPUT); - -#ifndef SOFTWARE_SPI - // SS must be in output mode even it is not chip select - pinMode(SS_PIN, OUTPUT); - // set SS high - may be chip select for another SPI device -#if SET_SPI_SS_HIGH - digitalWrite(SS_PIN, HIGH); -#endif // SET_SPI_SS_HIGH - // set SCK rate for initialization commands - spiRate_ = SPI_SD_INIT_RATE; - spiInit(spiRate_); -#endif // SOFTWARE_SPI - - // must supply min of 74 clock cycles with CS high. - for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); - - // command to go idle in SPI mode - while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { - if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { - error(SD_CARD_ERROR_CMD0); - goto fail; - } - } - // check SD version - if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { - type(SD_CARD_TYPE_SD1); - } else { - // only need last byte of r7 response - for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); - if (status_ != 0XAA) { - error(SD_CARD_ERROR_CMD8); - goto fail; - } - type(SD_CARD_TYPE_SD2); - } - // initialize card and send host supports SDHC if SD2 - arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; - - while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { - // check for timeout - if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { - error(SD_CARD_ERROR_ACMD41); - goto fail; - } - } - // if SD2 read OCR register to check for SDHC card - if (type() == SD_CARD_TYPE_SD2) { - if (cardCommand(CMD58, 0)) { - error(SD_CARD_ERROR_CMD58); - goto fail; - } - if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); - // discard rest of ocr - contains allowed voltage range - for (uint8_t i = 0; i < 3; i++) spiRec(); - } - chipSelectHigh(); - -#ifndef SOFTWARE_SPI - return setSckRate(sckRateID); -#else // SOFTWARE_SPI - return true; -#endif // SOFTWARE_SPI - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Read a 512 byte block from an SD card. - * - * \param[in] blockNumber Logical block to be read. - * \param[out] dst Pointer to the location that will receive the data. - - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readBlock(uint32_t blockNumber, uint8_t* dst) { - // use address if not SDHC card - if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD17, blockNumber)) { - error(SD_CARD_ERROR_CMD17); - goto fail; - } - return readData(dst, 512); - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Read one data block in a multiple block read sequence - * - * \param[in] dst Pointer to the location for the data to be read. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readData(uint8_t *dst) { - chipSelectLow(); - return readData(dst, 512); -} -//------------------------------------------------------------------------------ -bool Sd2Card::readData(uint8_t* dst, uint16_t count) { - // wait for start block token - uint16_t t0 = millis(); - while ((status_ = spiRec()) == 0XFF) { - if (((uint16_t)millis() - t0) > SD_READ_TIMEOUT) { - error(SD_CARD_ERROR_READ_TIMEOUT); - goto fail; - } - } - if (status_ != DATA_START_BLOCK) { - error(SD_CARD_ERROR_READ); - goto fail; - } - // transfer data - spiRead(dst, count); - - // discard CRC - spiRec(); - spiRec(); - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** read CID or CSR register */ -bool Sd2Card::readRegister(uint8_t cmd, void* buf) { - uint8_t* dst = reinterpret_cast(buf); - if (cardCommand(cmd, 0)) { - error(SD_CARD_ERROR_READ_REG); - goto fail; - } - return readData(dst, 16); - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Start a read multiple blocks sequence. - * - * \param[in] blockNumber Address of first block in sequence. - * - * \note This function is used with readData() and readStop() for optimized - * multiple block reads. SPI chipSelect must be low for the entire sequence. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readStart(uint32_t blockNumber) { - if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD18, blockNumber)) { - error(SD_CARD_ERROR_CMD18); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** End a read multiple blocks sequence. - * -* \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::readStop() { - chipSelectLow(); - if (cardCommand(CMD12, 0)) { - error(SD_CARD_ERROR_CMD12); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** - * Set the SPI clock rate. - * - * \param[in] sckRateID A value in the range [0, 6]. - * - * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum - * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 - * for \a scsRateID = 6. - * - * \return The value one, true, is returned for success and the value zero, - * false, is returned for an invalid value of \a sckRateID. - */ -bool Sd2Card::setSckRate(uint8_t sckRateID) { - if (sckRateID > 6) { - error(SD_CARD_ERROR_SCK_RATE); - return false; - } - spiRate_ = sckRateID; - return true; -} -//------------------------------------------------------------------------------ -// wait for card to go not busy -bool Sd2Card::waitNotBusy(uint16_t timeoutMillis) { - uint16_t t0 = millis(); - while (spiRec() != 0XFF) { - if (((uint16_t)millis() - t0) >= timeoutMillis) goto fail; - } - return true; - - fail: - return false; -} -//------------------------------------------------------------------------------ -/** - * Writes a 512 byte block to an SD card. - * - * \param[in] blockNumber Logical block to be written. - * \param[in] src Pointer to the location of the data to be written. - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { - // use address if not SDHC card - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD24, blockNumber)) { - error(SD_CARD_ERROR_CMD24); - goto fail; - } - if (!writeData(DATA_START_BLOCK, src)) goto fail; - - // wait for flash programming to complete - if (!waitNotBusy(SD_WRITE_TIMEOUT)) { - error(SD_CARD_ERROR_WRITE_TIMEOUT); - goto fail; - } - // response is r2 so get and check two bytes for nonzero - if (cardCommand(CMD13, 0) || spiRec()) { - error(SD_CARD_ERROR_WRITE_PROGRAMMING); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Write one data block in a multiple block write sequence - * \param[in] src Pointer to the location of the data to be written. - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeData(const uint8_t* src) { - chipSelectLow(); - // wait for previous write to finish - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - if (!writeData(WRITE_MULTIPLE_TOKEN, src)) goto fail; - chipSelectHigh(); - return true; - - fail: - error(SD_CARD_ERROR_WRITE_MULTIPLE); - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -// send one block of data for write block or write multiple blocks -bool Sd2Card::writeData(uint8_t token, const uint8_t* src) { - spiSendBlock(token, src); - - spiSend(0xff); // dummy crc - spiSend(0xff); // dummy crc - - status_ = spiRec(); - if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { - error(SD_CARD_ERROR_WRITE); - goto fail; - } - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** Start a write multiple blocks sequence. - * - * \param[in] blockNumber Address of first block in sequence. - * \param[in] eraseCount The number of blocks to be pre-erased. - * - * \note This function is used with writeData() and writeStop() - * for optimized multiple block writes. - * - * \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { - // send pre-erase count - if (cardAcmd(ACMD23, eraseCount)) { - error(SD_CARD_ERROR_ACMD23); - goto fail; - } - // use address if not SDHC card - if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; - if (cardCommand(CMD25, blockNumber)) { - error(SD_CARD_ERROR_CMD25); - goto fail; - } - chipSelectHigh(); - return true; - - fail: - chipSelectHigh(); - return false; -} -//------------------------------------------------------------------------------ -/** End a write multiple blocks sequence. - * -* \return The value one, true, is returned for success and - * the value zero, false, is returned for failure. - */ -bool Sd2Card::writeStop() { - chipSelectLow(); - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - spiSend(STOP_TRAN_TOKEN); - if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; - chipSelectHigh(); - return true; - - fail: - error(SD_CARD_ERROR_STOP_TRAN); - chipSelectHigh(); - return false; +/* Arduino Sd2Card Library + * Copyright (C) 2009 by William Greiman + * + * This file is part of the Arduino Sd2Card Library + * + * This Library 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 Library 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 the Arduino Sd2Card Library. If not, see + * . + */ +#define HardwareSerial_h // trick to disable the standard HWserial +#if ARDUINO < 100 +#include +#else // ARDUINO +#include +#endif // ARDUINO +#include "Sd2Card.h" +//------------------------------------------------------------------------------ +#ifndef SOFTWARE_SPI +// functions for hardware SPI +//------------------------------------------------------------------------------ +// make sure SPCR rate is in expected bits +#if (SPR0 != 0 || SPR1 != 1) +#error unexpected SPCR bits +#endif +/** + * Initialize hardware SPI + * Set SCK rate to F_CPU/pow(2, 1 + spiRate) for spiRate [0,6] + */ +static void spiInit(uint8_t spiRate) { + // See avr processor documentation + SPCR = (1 << SPE) | (1 << MSTR) | (spiRate >> 1); + SPSR = spiRate & 1 || spiRate == 6 ? 0 : 1 << SPI2X; +} +//------------------------------------------------------------------------------ +/** SPI receive a byte */ +static uint8_t spiRec() { + SPDR = 0XFF; + while (!(SPSR & (1 << SPIF))); + return SPDR; +} +//------------------------------------------------------------------------------ +/** SPI read data - only one call so force inline */ +static inline __attribute__((always_inline)) + void spiRead(uint8_t* buf, uint16_t nbyte) { + if (nbyte-- == 0) return; + SPDR = 0XFF; + for (uint16_t i = 0; i < nbyte; i++) { + while (!(SPSR & (1 << SPIF))); + buf[i] = SPDR; + SPDR = 0XFF; + } + while (!(SPSR & (1 << SPIF))); + buf[nbyte] = SPDR; +} +//------------------------------------------------------------------------------ +/** SPI send a byte */ +static void spiSend(uint8_t b) { + SPDR = b; + while (!(SPSR & (1 << SPIF))); +} +//------------------------------------------------------------------------------ +/** SPI send block - only one call so force inline */ +static inline __attribute__((always_inline)) + void spiSendBlock(uint8_t token, const uint8_t* buf) { + SPDR = token; + for (uint16_t i = 0; i < 512; i += 2) { + while (!(SPSR & (1 << SPIF))); + SPDR = buf[i]; + while (!(SPSR & (1 << SPIF))); + SPDR = buf[i + 1]; + } + while (!(SPSR & (1 << SPIF))); +} +//------------------------------------------------------------------------------ +#else // SOFTWARE_SPI +//------------------------------------------------------------------------------ +/** nop to tune soft SPI timing */ +#define nop asm volatile ("nop\n\t") +//------------------------------------------------------------------------------ +/** Soft SPI receive byte */ +static uint8_t spiRec() { + uint8_t data = 0; + // no interrupts during byte receive - about 8 us + cli(); + // output pin high - like sending 0XFF + fastDigitalWrite(SPI_MOSI_PIN, HIGH); + + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, HIGH); + + // adjust so SCK is nice + nop; + nop; + + data <<= 1; + + if (fastDigitalRead(SPI_MISO_PIN)) data |= 1; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + } + // enable interrupts + sei(); + return data; +} +//------------------------------------------------------------------------------ +/** Soft SPI read data */ +static void spiRead(uint8_t* buf, uint16_t nbyte) { + for (uint16_t i = 0; i < nbyte; i++) { + buf[i] = spiRec(); + } +} +//------------------------------------------------------------------------------ +/** Soft SPI send byte */ +static void spiSend(uint8_t data) { + // no interrupts during byte send - about 8 us + cli(); + for (uint8_t i = 0; i < 8; i++) { + fastDigitalWrite(SPI_SCK_PIN, LOW); + + fastDigitalWrite(SPI_MOSI_PIN, data & 0X80); + + data <<= 1; + + fastDigitalWrite(SPI_SCK_PIN, HIGH); + } + // hold SCK high for a few ns + nop; + nop; + nop; + nop; + + fastDigitalWrite(SPI_SCK_PIN, LOW); + // enable interrupts + sei(); +} +//------------------------------------------------------------------------------ +/** Soft SPI send block */ + void spiSendBlock(uint8_t token, const uint8_t* buf) { + spiSend(token); + for (uint16_t i = 0; i < 512; i++) { + spiSend(buf[i]); + } +} +#endif // SOFTWARE_SPI +//------------------------------------------------------------------------------ +// send command and return error code. Return zero for OK +uint8_t Sd2Card::cardCommand(uint8_t cmd, uint32_t arg) { + // select card + chipSelectLow(); + + // wait up to 300 ms if busy + waitNotBusy(300); + + // send command + spiSend(cmd | 0x40); + + // send argument + for (int8_t s = 24; s >= 0; s -= 8) spiSend(arg >> s); + + // send CRC + uint8_t crc = 0XFF; + if (cmd == CMD0) crc = 0X95; // correct crc for CMD0 with arg 0 + if (cmd == CMD8) crc = 0X87; // correct crc for CMD8 with arg 0X1AA + spiSend(crc); + + // skip stuff byte for stop read + if (cmd == CMD12) spiRec(); + + // wait for response + for (uint8_t i = 0; ((status_ = spiRec()) & 0X80) && i != 0XFF; i++); + return status_; +} +//------------------------------------------------------------------------------ +/** + * Determine the size of an SD flash memory card. + * + * \return The number of 512 byte data blocks in the card + * or zero if an error occurs. + */ +uint32_t Sd2Card::cardSize() { + csd_t csd; + if (!readCSD(&csd)) return 0; + if (csd.v1.csd_ver == 0) { + uint8_t read_bl_len = csd.v1.read_bl_len; + uint16_t c_size = (csd.v1.c_size_high << 10) + | (csd.v1.c_size_mid << 2) | csd.v1.c_size_low; + uint8_t c_size_mult = (csd.v1.c_size_mult_high << 1) + | csd.v1.c_size_mult_low; + return (uint32_t)(c_size + 1) << (c_size_mult + read_bl_len - 7); + } else if (csd.v2.csd_ver == 1) { + uint32_t c_size = ((uint32_t)csd.v2.c_size_high << 16) + | (csd.v2.c_size_mid << 8) | csd.v2.c_size_low; + return (c_size + 1) << 10; + } else { + error(SD_CARD_ERROR_BAD_CSD); + return 0; + } +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectHigh() { + digitalWrite(chipSelectPin_, HIGH); +} +//------------------------------------------------------------------------------ +void Sd2Card::chipSelectLow() { +#ifndef SOFTWARE_SPI + spiInit(spiRate_); +#endif // SOFTWARE_SPI + digitalWrite(chipSelectPin_, LOW); +} +//------------------------------------------------------------------------------ +/** Erase a range of blocks. + * + * \param[in] firstBlock The address of the first block in the range. + * \param[in] lastBlock The address of the last block in the range. + * + * \note This function requests the SD card to do a flash erase for a + * range of blocks. The data on the card after an erase operation is + * either 0 or 1, depends on the card vendor. The card must support + * single block erase. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::erase(uint32_t firstBlock, uint32_t lastBlock) { + csd_t csd; + if (!readCSD(&csd)) goto fail; + // check for single block erase + if (!csd.v1.erase_blk_en) { + // erase size mask + uint8_t m = (csd.v1.sector_size_high << 1) | csd.v1.sector_size_low; + if ((firstBlock & m) != 0 || ((lastBlock + 1) & m) != 0) { + // error card can't erase specified area + error(SD_CARD_ERROR_ERASE_SINGLE_BLOCK); + goto fail; + } + } + if (type_ != SD_CARD_TYPE_SDHC) { + firstBlock <<= 9; + lastBlock <<= 9; + } + if (cardCommand(CMD32, firstBlock) + || cardCommand(CMD33, lastBlock) + || cardCommand(CMD38, 0)) { + error(SD_CARD_ERROR_ERASE); + goto fail; + } + if (!waitNotBusy(SD_ERASE_TIMEOUT)) { + error(SD_CARD_ERROR_ERASE_TIMEOUT); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Determine if card supports single block erase. + * + * \return The value one, true, is returned if single block erase is supported. + * The value zero, false, is returned if single block erase is not supported. + */ +bool Sd2Card::eraseSingleBlockEnable() { + csd_t csd; + return readCSD(&csd) ? csd.v1.erase_blk_en : false; +} +//------------------------------------------------------------------------------ +/** + * Initialize an SD flash memory card. + * + * \param[in] sckRateID SPI clock rate selector. See setSckRate(). + * \param[in] chipSelectPin SD chip select pin number. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. The reason for failure + * can be determined by calling errorCode() and errorData(). + */ +bool Sd2Card::init(uint8_t sckRateID, uint8_t chipSelectPin) { + errorCode_ = type_ = 0; + chipSelectPin_ = chipSelectPin; + // 16-bit init start time allows over a minute + uint16_t t0 = (uint16_t)millis(); + uint32_t arg; + + // set pin modes + pinMode(chipSelectPin_, OUTPUT); + chipSelectHigh(); + pinMode(SPI_MISO_PIN, INPUT); + pinMode(SPI_MOSI_PIN, OUTPUT); + pinMode(SPI_SCK_PIN, OUTPUT); + +#ifndef SOFTWARE_SPI + // SS must be in output mode even it is not chip select + pinMode(SS_PIN, OUTPUT); + // set SS high - may be chip select for another SPI device +#if SET_SPI_SS_HIGH + digitalWrite(SS_PIN, HIGH); +#endif // SET_SPI_SS_HIGH + // set SCK rate for initialization commands + spiRate_ = SPI_SD_INIT_RATE; + spiInit(spiRate_); +#endif // SOFTWARE_SPI + + // must supply min of 74 clock cycles with CS high. + for (uint8_t i = 0; i < 10; i++) spiSend(0XFF); + + // command to go idle in SPI mode + while ((status_ = cardCommand(CMD0, 0)) != R1_IDLE_STATE) { + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_CMD0); + goto fail; + } + } + // check SD version + if ((cardCommand(CMD8, 0x1AA) & R1_ILLEGAL_COMMAND)) { + type(SD_CARD_TYPE_SD1); + } else { + // only need last byte of r7 response + for (uint8_t i = 0; i < 4; i++) status_ = spiRec(); + if (status_ != 0XAA) { + error(SD_CARD_ERROR_CMD8); + goto fail; + } + type(SD_CARD_TYPE_SD2); + } + // initialize card and send host supports SDHC if SD2 + arg = type() == SD_CARD_TYPE_SD2 ? 0X40000000 : 0; + + while ((status_ = cardAcmd(ACMD41, arg)) != R1_READY_STATE) { + // check for timeout + if (((uint16_t)millis() - t0) > SD_INIT_TIMEOUT) { + error(SD_CARD_ERROR_ACMD41); + goto fail; + } + } + // if SD2 read OCR register to check for SDHC card + if (type() == SD_CARD_TYPE_SD2) { + if (cardCommand(CMD58, 0)) { + error(SD_CARD_ERROR_CMD58); + goto fail; + } + if ((spiRec() & 0XC0) == 0XC0) type(SD_CARD_TYPE_SDHC); + // discard rest of ocr - contains allowed voltage range + for (uint8_t i = 0; i < 3; i++) spiRec(); + } + chipSelectHigh(); + +#ifndef SOFTWARE_SPI + return setSckRate(sckRateID); +#else // SOFTWARE_SPI + return true; +#endif // SOFTWARE_SPI + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Read a 512 byte block from an SD card. + * + * \param[in] blockNumber Logical block to be read. + * \param[out] dst Pointer to the location that will receive the data. + + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readBlock(uint32_t blockNumber, uint8_t* dst) { + // use address if not SDHC card + if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD17, blockNumber)) { + error(SD_CARD_ERROR_CMD17); + goto fail; + } + return readData(dst, 512); + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Read one data block in a multiple block read sequence + * + * \param[in] dst Pointer to the location for the data to be read. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readData(uint8_t *dst) { + chipSelectLow(); + return readData(dst, 512); +} +//------------------------------------------------------------------------------ +bool Sd2Card::readData(uint8_t* dst, uint16_t count) { + // wait for start block token + uint16_t t0 = millis(); + while ((status_ = spiRec()) == 0XFF) { + if (((uint16_t)millis() - t0) > SD_READ_TIMEOUT) { + error(SD_CARD_ERROR_READ_TIMEOUT); + goto fail; + } + } + if (status_ != DATA_START_BLOCK) { + error(SD_CARD_ERROR_READ); + goto fail; + } + // transfer data + spiRead(dst, count); + + // discard CRC + spiRec(); + spiRec(); + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** read CID or CSR register */ +bool Sd2Card::readRegister(uint8_t cmd, void* buf) { + uint8_t* dst = reinterpret_cast(buf); + if (cardCommand(cmd, 0)) { + error(SD_CARD_ERROR_READ_REG); + goto fail; + } + return readData(dst, 16); + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Start a read multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * + * \note This function is used with readData() and readStop() for optimized + * multiple block reads. SPI chipSelect must be low for the entire sequence. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readStart(uint32_t blockNumber) { + if (type()!= SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD18, blockNumber)) { + error(SD_CARD_ERROR_CMD18); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a read multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::readStop() { + chipSelectLow(); + if (cardCommand(CMD12, 0)) { + error(SD_CARD_ERROR_CMD12); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** + * Set the SPI clock rate. + * + * \param[in] sckRateID A value in the range [0, 6]. + * + * The SPI clock will be set to F_CPU/pow(2, 1 + sckRateID). The maximum + * SPI rate is F_CPU/2 for \a sckRateID = 0 and the minimum rate is F_CPU/128 + * for \a scsRateID = 6. + * + * \return The value one, true, is returned for success and the value zero, + * false, is returned for an invalid value of \a sckRateID. + */ +bool Sd2Card::setSckRate(uint8_t sckRateID) { + if (sckRateID > 6) { + error(SD_CARD_ERROR_SCK_RATE); + return false; + } + spiRate_ = sckRateID; + return true; +} +//------------------------------------------------------------------------------ +// wait for card to go not busy +bool Sd2Card::waitNotBusy(uint16_t timeoutMillis) { + uint16_t t0 = millis(); + while (spiRec() != 0XFF) { + if (((uint16_t)millis() - t0) >= timeoutMillis) goto fail; + } + return true; + + fail: + return false; +} +//------------------------------------------------------------------------------ +/** + * Writes a 512 byte block to an SD card. + * + * \param[in] blockNumber Logical block to be written. + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeBlock(uint32_t blockNumber, const uint8_t* src) { + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD24, blockNumber)) { + error(SD_CARD_ERROR_CMD24); + goto fail; + } + if (!writeData(DATA_START_BLOCK, src)) goto fail; + + // wait for flash programming to complete + if (!waitNotBusy(SD_WRITE_TIMEOUT)) { + error(SD_CARD_ERROR_WRITE_TIMEOUT); + goto fail; + } + // response is r2 so get and check two bytes for nonzero + if (cardCommand(CMD13, 0) || spiRec()) { + error(SD_CARD_ERROR_WRITE_PROGRAMMING); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Write one data block in a multiple block write sequence + * \param[in] src Pointer to the location of the data to be written. + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeData(const uint8_t* src) { + chipSelectLow(); + // wait for previous write to finish + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + if (!writeData(WRITE_MULTIPLE_TOKEN, src)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_WRITE_MULTIPLE); + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +// send one block of data for write block or write multiple blocks +bool Sd2Card::writeData(uint8_t token, const uint8_t* src) { + spiSendBlock(token, src); + + spiSend(0xff); // dummy crc + spiSend(0xff); // dummy crc + + status_ = spiRec(); + if ((status_ & DATA_RES_MASK) != DATA_RES_ACCEPTED) { + error(SD_CARD_ERROR_WRITE); + goto fail; + } + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** Start a write multiple blocks sequence. + * + * \param[in] blockNumber Address of first block in sequence. + * \param[in] eraseCount The number of blocks to be pre-erased. + * + * \note This function is used with writeData() and writeStop() + * for optimized multiple block writes. + * + * \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeStart(uint32_t blockNumber, uint32_t eraseCount) { + // send pre-erase count + if (cardAcmd(ACMD23, eraseCount)) { + error(SD_CARD_ERROR_ACMD23); + goto fail; + } + // use address if not SDHC card + if (type() != SD_CARD_TYPE_SDHC) blockNumber <<= 9; + if (cardCommand(CMD25, blockNumber)) { + error(SD_CARD_ERROR_CMD25); + goto fail; + } + chipSelectHigh(); + return true; + + fail: + chipSelectHigh(); + return false; +} +//------------------------------------------------------------------------------ +/** End a write multiple blocks sequence. + * +* \return The value one, true, is returned for success and + * the value zero, false, is returned for failure. + */ +bool Sd2Card::writeStop() { + chipSelectLow(); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + spiSend(STOP_TRAN_TOKEN); + if (!waitNotBusy(SD_WRITE_TIMEOUT)) goto fail; + chipSelectHigh(); + return true; + + fail: + error(SD_CARD_ERROR_STOP_TRAN); + chipSelectHigh(); + return false; } diff --git a/Marlin/SdBaseFile.h b/Marlin/SdBaseFile.h index e184acd96..f5c5e4de3 100644 --- a/Marlin/SdBaseFile.h +++ b/Marlin/SdBaseFile.h @@ -24,13 +24,13 @@ * \brief SdBaseFile class */ #include -#if ARDUINO < 100 #define HardwareSerial_h // trick to disable the standard HWserial +#if ARDUINO < 100 #include -#include "MarlinSerial.h" #else // ARDUINO #include #endif // ARDUINO +#include "MarlinSerial.h" #include "SdFatConfig.h" #include "SdVolume.h" //------------------------------------------------------------------------------ diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index 6e3cb4936..fc7a17e5b 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -24,13 +24,14 @@ * \brief Useful utility functions. */ #include -#if ARDUINO < 100 + #define HardwareSerial_h // trick to disable the standard HWserial +#if ARDUINO < 100 #include -#include "MarlinSerial.h" #else // ARDUINO #include #endif // ARDUINO +#include "MarlinSerial.h" /** Store and print a string in flash memory.*/ #define PgmPrint(x) SerialPrint_P(PSTR(x)) /** Store and print a string in flash memory followed by a CR/LF.*/ diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index 0496a6ab9..68f14b193 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -51,7 +51,12 @@ int16_t SdFile::write(const void* buf, uint16_t nbyte) { * \param[in] b the byte to be written. * Use writeError to check for errors. */ -void SdFile::write(uint8_t b) { +#if ARDUINO >= 100 + size_t SdFile::write(uint8_t b) +#else + void SdFile::write(uint8_t b) +#endif +{ SdBaseFile::write(&b, 1); } //------------------------------------------------------------------------------ diff --git a/Marlin/SdFile.h b/Marlin/SdFile.h index e59bb8abe..931486285 100644 --- a/Marlin/SdFile.h +++ b/Marlin/SdFile.h @@ -34,7 +34,12 @@ class SdFile : public SdBaseFile, public Print { public: SdFile() {} SdFile(const char* name, uint8_t oflag); - void write(uint8_t b); + #if ARDUINO >= 100 + size_t write(uint8_t b); +#else + void write(uint8_t b); +#endif + int16_t write(const void* buf, uint16_t nbyte); void write(const char* str); void write_P(PGM_P str); diff --git a/Marlin/planner.h b/Marlin/planner.h index 05bef3a23..703bbe9fd 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -101,7 +101,11 @@ extern uint8_t active_extruder; /////semi-private stuff -#include +#if ARDUINO >= 100 + #include "Arduino.h" +#else + #include "WProgram.h" +#endif extern block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions extern volatile unsigned char block_buffer_head; // Index of the next block to be pushed From 6b86f1568607acc39dccea40647374f6f373f3e7 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 2 Dec 2011 17:45:05 +0100 Subject: [PATCH 139/430] More 2nd extruder implementation. (Not usable) Advance (not tested) --- Marlin/Configuration.h | 4 +-- Marlin/planner.cpp | 15 ++++++++--- Marlin/planner.h | 9 ++++--- Marlin/stepper.cpp | 59 +++++++++++++++++++++++------------------- 4 files changed, 52 insertions(+), 35 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 483b8cf83..066e61005 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -223,11 +223,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker //#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} //sells mendel with v9 extruder -#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 200000} // (mm/sec) +#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts +#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts #define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate #define DEFAULT_MINTRAVELFEEDRATE 0.0 diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index f26ae101b..1674fcc7d 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -489,12 +489,21 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa if (target[Z_AXIS] < position[Z_AXIS]) { block->direction_bits |= (1<direction_bits |= (1<active_extruder = extruder; + //enable active axes if(block->steps_x != 0) enable_x(); if(block->steps_y != 0) enable_y(); if(block->steps_z != 0) enable_z(); - if(block->steps_e != 0) enable_e(); - + if(extruder == 0) { + if(block->steps_e != 0) enable_e(); + } + #if (EXTRUDERS > 1) + if(extruder == 1) { + if(block->steps_e != 0) enable_e1(); + } + #endif + float delta_mm[4]; delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; @@ -713,7 +722,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa else { long acc_dist = estimate_acceleration_distance(0, block->nominal_rate, block->acceleration_st); float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (block->speed_e * block->speed_e * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + (current_speed[E_AXIS] * current_speed[E_AXIS] * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; block->advance = advance; if(acc_dist == 0) { block->advance_rate = 0; diff --git a/Marlin/planner.h b/Marlin/planner.h index 703bbe9fd..53ac3d844 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -37,11 +37,12 @@ typedef struct { long decelerate_after; // The index of the step event on which to start decelerating long acceleration_rate; // The acceleration rate used for acceleration calculation unsigned char direction_bits; // The direction bit set for this block (refers to *_DIRECTION_BIT in config.h) + unsigned char active_extruder; // Selects the active extruder #ifdef ADVANCE -// long advance_rate; -// volatile long initial_advance; -// volatile long final_advance; -// float advance; + long advance_rate; + volatile long initial_advance; + volatile long final_advance; + float advance; #endif // Fields used by the motion planner to manage acceleration diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index fcc0aceec..0eabc753d 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -383,8 +383,9 @@ ISR(TIMER1_COMPA_vect) } #endif //!ADVANCE for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) - MSerial.checkRx(); - /* + MSerial.checkRx(); // Check for serial chars. + + #ifdef ADVANCE counter_e += current_block->steps_e; if (counter_e > 0) { counter_e -= current_block->step_event_count; @@ -399,15 +400,11 @@ ISR(TIMER1_COMPA_vect) CRITICAL_SECTION_END; } } - */ - /* // Do E steps + advance steps - CRITICAL_SECTION_START; e_steps += ((advance >> 16) - old_advance); - CRITICAL_SECTION_END; old_advance = advance >> 16; - */ - + #endif //ADVANCE + counter_x += current_block->steps_x; if (counter_x > 0) { WRITE(X_STEP_PIN, HIGH); @@ -461,7 +458,9 @@ ISR(TIMER1_COMPA_vect) OCR1A = timer; acceleration_time += timer; #ifdef ADVANCE - advance += advance_rate; + for(int8_t i=0; i < step_loops; i++) { + advance += advance_rate; + } #endif } else if (step_events_completed > current_block->decelerate_after) { @@ -483,7 +482,9 @@ ISR(TIMER1_COMPA_vect) OCR1A = timer; deceleration_time += timer; #ifdef ADVANCE - advance -= advance_rate; + for(int8_t i=0; i < step_loops; i++) { + advance -= advance_rate; + } if(advance < final_advance) advance = final_advance; #endif //ADVANCE @@ -491,7 +492,7 @@ ISR(TIMER1_COMPA_vect) else { OCR1A = OCR1A_nominal; } - + // If current block is finished, reset pointer if (step_events_completed >= current_block->step_event_count) { current_block = NULL; @@ -506,22 +507,24 @@ ISR(TIMER1_COMPA_vect) // Timer 0 is shared with millies ISR(TIMER0_COMPA_vect) { - // Critical section needed because Timer 1 interrupt has higher priority. - // The pin set functions are placed on trategic position to comply with the stepper driver timing. - WRITE(E_STEP_PIN, LOW); - // Set E direction (Depends on E direction + advance) - if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); - e_steps++; - WRITE(E_STEP_PIN, HIGH); - } - if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); - e_steps--; - WRITE(E_STEP_PIN, HIGH); - } - old_OCR0A += 25; // 10kHz interrupt + old_OCR0A += 25; // ~10kHz interrupt OCR0A = old_OCR0A; + // Set E direction (Depends on E direction + advance) + for(unsigned char i=0; i<4;) { + WRITE(E_STEP_PIN, LOW); + if (e_steps == 0) break; + i++; + if (e_steps < 0) { + WRITE(E_DIR_PIN,INVERT_E_DIR); + e_steps++; + WRITE(E_STEP_PIN, HIGH); + } + if (e_steps > 0) { + WRITE(E_DIR_PIN,!INVERT_E_DIR); + e_steps--; + WRITE(E_STEP_PIN, HIGH); + } + } } #endif // ADVANCE @@ -638,6 +641,10 @@ void st_init() ENABLE_STEPPER_DRIVER_INTERRUPT(); #ifdef ADVANCE + #if defined(TCCR0A) && defined(WGM01) + TCCR0A &= ~(1< Date: Sun, 4 Dec 2011 09:02:09 +0100 Subject: [PATCH 140/430] make QUICKHOME configureable --- Marlin/Configuration.h | 1 + Marlin/Marlin.pde | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 066e61005..6f40bbb73 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -214,6 +214,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define X_HOME_RETRACT_MM 5 #define Y_HOME_RETRACT_MM 5 #define Z_HOME_RETRACT_MM 1 +#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially. #define AXIS_RELATIVE_MODES {false, false, false, false} diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 06fd09776..39f42f0ac 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -532,7 +532,7 @@ FORCE_INLINE void process_commands() } feedrate = 0.0; home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - + #ifdef QUICK_HOME if( code_seen(axis_codes[0]) && code_seen(axis_codes[1]) ) //first diagonal move { current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0; @@ -545,6 +545,7 @@ FORCE_INLINE void process_commands() prepare_move(); current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0; } + #endif if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) { From dfd240b260cb50fb2a1403211c51e497ef81e9c9 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 4 Dec 2011 09:48:53 +0100 Subject: [PATCH 141/430] overworked autotemp, removed one layer of nesting from the ultralcd. --- Marlin/Marlin.pde | 1 + Marlin/cardreader.pde | 1 + Marlin/planner.cpp | 2 +- Marlin/temperature.h | 10 + Marlin/ultralcd.pde | 887 ++++++++++++++++++++++-------------------- 5 files changed, 470 insertions(+), 431 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 39f42f0ac..b0e375fd3 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -670,6 +670,7 @@ FORCE_INLINE void process_commands() SERIAL_ECHO_START; SERIAL_ECHOLN(time); LCD_MESSAGE(time); + autotempShutdown(); } break; case 42: //M42 -Change pin status via gcode diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 03f3f4638..d355ea3ef 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -436,5 +436,6 @@ void CardReader::printingHasFinished() { finishAndDisableSteppers(); } + autotempShutdown(); } #endif //SDSUPPORT \ No newline at end of file diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 1674fcc7d..bef74a2e8 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -91,7 +91,7 @@ static float previous_nominal_speed; // Nominal speed of previous path line segm #ifdef AUTOTEMP float autotemp_max=250; float autotemp_min=210; - float autotemp_factor=1; + float autotemp_factor=0.1; bool autotemp_enabled=false; #endif diff --git a/Marlin/temperature.h b/Marlin/temperature.h index ba1043b6d..e9395e008 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -108,6 +108,16 @@ FORCE_INLINE float isCoolingHotend(uint8_t extruder){ }; FORCE_INLINE bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; +FORCE_INLINE void autotempShutdown(){ + #ifdef AUTOTEMP + if(autotemp_enabled) + { + autotemp_enabled=false; + if(degTargetHotend0()>autotemp_min) + setTargetHotend0(0); + } + #endif +} void disable_heater(); void setWatch(); void updatePID(); diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 4ca93aa0c..54ea809df 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -503,31 +503,32 @@ void MainMenu::showTune() lcd.setCursor(13,line);lcd.print(ftostr3(feedmultiply)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); { - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=feedmultiply; - } - else - { - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>400) encoderpos=400; - feedmultiply = encoderpos; - feedmultiplychanged=true; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=feedmultiply; } + else + { + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>400) encoderpos=400; + feedmultiply = encoderpos; + feedmultiplychanged=true; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemT_nozzle: { @@ -537,29 +538,29 @@ void MainMenu::showTune() lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetHotend0()))); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(degTargetHotend0()); - } - else - { - setTargetHotend0(encoderpos); - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=intround(degTargetHotend0()); } + else + { + setTargetHotend0(encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); } }break; @@ -571,31 +572,32 @@ void MainMenu::showTune() lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); { - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=fanpwm; - } - else - { - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>255) encoderpos=255; - fanpwm=encoderpos; - analogWrite(FAN_PIN, fanpwm); - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=fanpwm; } + else + { + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemT_flow://axis_steps_per_unit[i] = code_value(); { @@ -605,34 +607,35 @@ void MainMenu::showTune() lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)axis_steps_per_unit[3]; - } - else - { - float factor=float(encoderpos)/float(axis_steps_per_unit[3]); - position[E_AXIS]=lround(position[E_AXIS]*factor); - //current_position[3]*=factor; - axis_steps_per_unit[E_AXIS]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<5) encoderpos=5; - if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + encoderpos=(int)axis_steps_per_unit[3]; } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + }break; default: break; @@ -688,30 +691,31 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetHotend0()))); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(degTargetHotend0()); - } - else - { - setTargetHotend0(encoderpos); - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=intround(degTargetHotend0()); } + else + { + setTargetHotend0(encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; #ifdef AUTOTEMP case ItemCT_autotempmin: @@ -719,33 +723,34 @@ void MainMenu::showControlTemp() if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" \002 Min:"); - lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_max)); + lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_min)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(autotemp_max); - } - else - { - autotemp_max=encoderpos; - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=intround(autotemp_min); } + else + { + autotemp_min=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCT_autotempmax: { @@ -755,30 +760,31 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_max)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(autotemp_max); - } - else - { - autotemp_max=encoderpos; - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=intround(autotemp_max); } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCT_autotempfact: { @@ -788,30 +794,31 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(ftostr32(autotemp_factor)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(autotemp_factor*100); - } - else - { - autotemp_max=encoderpos; - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>99) encoderpos=99; - lcd.setCursor(13,line);lcd.print(ftostr32(encoderpos/100.)); + encoderpos=intround(autotemp_factor*100); } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>99) encoderpos=99; + lcd.setCursor(13,line);lcd.print(ftostr32(encoderpos/100.)); + } + }break; case ItemCT_autotempactive: { @@ -819,20 +826,26 @@ void MainMenu::showControlTemp() { lcd.setCursor(0,line);lcdprintPGM(" Autotemp:"); lcd.setCursor(13,line); - if(autotemp_enabled) - lcdprintPGM("On"); - else - lcdprintPGM("Off"); + if(autotemp_enabled) + lcdprintPGM("On"); + else + lcdprintPGM("Off"); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - autotemp_enabled=!autotemp_enabled; - BLOCK; - } + autotemp_enabled=!autotemp_enabled; + lcd.setCursor(13,line); + if(autotemp_enabled) + lcdprintPGM("On "); + else + lcdprintPGM("Off"); + BLOCK; } + }break; #endif //autotemp case ItemCT_fan: @@ -843,31 +856,32 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); { - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=fanpwm; - } - else - { - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>255) encoderpos=255; - fanpwm=encoderpos; - analogWrite(FAN_PIN, fanpwm); - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=fanpwm; } + else + { + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCT_PID_P: { @@ -877,31 +891,32 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(itostr4(Kp)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kp; - } - else - { - Kp= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + encoderpos=(int)Kp; } + else + { + Kp= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + }break; case ItemCT_PID_I: { @@ -911,31 +926,32 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(ftostr51(Ki/PID_dT)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(Ki*10/PID_dT); - } - else - { - Ki= encoderpos/10.*PID_dT; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); + encoderpos=(int)(Ki*10/PID_dT); } + else + { + Ki= encoderpos/10.*PID_dT; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); + } + }break; case ItemCT_PID_D: { @@ -945,31 +961,33 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(itostr4(Kd*PID_dT)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(Kd/5./PID_dT); - } - else - { - Kd= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + encoderpos=(int)(Kd/5./PID_dT); } + else + { + Kd= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + }break; case ItemCT_PID_C: #ifdef PID_ADD_EXTRUSION_RATE @@ -980,31 +998,32 @@ void MainMenu::showControlTemp() lcd.setCursor(13,line);lcd.print(itostr3(Kc)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kc; - } - else - { - Kc= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=(int)Kc; } + else + { + Kc= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + } #endif break; @@ -1051,30 +1070,31 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr3(acceleration/100));lcdprintPGM("00"); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)acceleration/100; - } - else - { - acceleration= encoderpos*100; - encoderpos=activeline*lcdslow; - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<5) encoderpos=5; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + encoderpos=(int)acceleration/100; } + else + { + acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + }break; case ItemCM_xyjerk: //max_xy_jerk { @@ -1084,31 +1104,32 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_xy_jerk; - } - else - { - max_xy_jerk= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=(int)max_xy_jerk; } + else + { + max_xy_jerk= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCM_vmaxx: @@ -1126,31 +1147,32 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemCM_vmaxx])); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_feedrate[i-ItemCM_vmaxx]; - } - else - { - max_feedrate[i-ItemCM_vmaxx]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=(int)max_feedrate[i-ItemCM_vmaxx]; } + else + { + max_feedrate[i-ItemCM_vmaxx]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCM_vmin: @@ -1161,31 +1183,32 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(minimumfeedrate); - } - else - { - minimumfeedrate= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=(int)(minimumfeedrate); } + else + { + minimumfeedrate= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCM_vtravmin: { @@ -1195,31 +1218,32 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate)); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)mintravelfeedrate; - } - else - { - mintravelfeedrate= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + encoderpos=(int)mintravelfeedrate; } + else + { + mintravelfeedrate= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; case ItemCM_amaxx: @@ -1237,30 +1261,31 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100));lcdprintPGM("00"); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100; - } - else - { - max_acceleration_units_per_sq_second[i-ItemCM_amaxx]= encoderpos*100; - encoderpos=activeline*lcdslow; - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100; } + else + { + max_acceleration_units_per_sq_second[i-ItemCM_amaxx]= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + }break; case ItemCM_aret://float retract_acceleration = 7000; { @@ -1270,31 +1295,32 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcdprintPGM("00"); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)retract_acceleration/100; - } - else - { - retract_acceleration= encoderpos*100; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<10) encoderpos=10; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + encoderpos=(int)retract_acceleration/100; } + else + { + retract_acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<10) encoderpos=10; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + }break; case ItemCM_esteps://axis_steps_per_unit[i] = code_value(); { @@ -1304,34 +1330,35 @@ void MainMenu::showControlMotion() lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); } - if((activeline==line) ) + if((activeline!=line) ) + break; + + if(CLICKED) { - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)axis_steps_per_unit[3]; - } - else - { - float factor=float(encoderpos)/float(axis_steps_per_unit[3]); - position[E_AXIS]=lround(position[E_AXIS]*factor); - //current_position[3]*=factor; - axis_steps_per_unit[E_AXIS]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } + linechanging=!linechanging; if(linechanging) { - if(encoderpos<5) encoderpos=5; - if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + encoderpos=(int)axis_steps_per_unit[3]; } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + }break; default: break; From 7714b98da74b0b84cb620474fd8e4cb19d15bfc0 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 4 Dec 2011 12:40:18 +0100 Subject: [PATCH 142/430] solved some compiler warnings that are now visible in arduino 1.0. Found a couple of unused variables, that I commented. Tried to solve the program memory warning message, and failed. --- Marlin/Marlin.h | 21 +++++++++++++++------ Marlin/Marlin.pde | 3 ++- Marlin/MarlinSerial.cpp | 1 + Marlin/MarlinSerial.h | 2 +- Marlin/cardreader.h | 2 +- Marlin/cardreader.pde | 2 +- Marlin/planner.cpp | 23 +++++++++++++---------- Marlin/stepper.cpp | 7 ++++--- Marlin/stepper.h | 2 +- Marlin/temperature.cpp | 19 ++++++++++++++----- Marlin/temperature.h | 8 +++++--- Marlin/ultralcd.h | 5 ++--- Marlin/ultralcd.pde | 6 +++--- 13 files changed, 63 insertions(+), 38 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 8afc87bc9..910cf46ad 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -16,7 +16,6 @@ #include "Configuration.h" #include "MarlinSerial.h" - #define FORCE_INLINE __attribute__((always_inline)) inline //#define SERIAL_ECHO(x) Serial << "echo: " << x; //#define SERIAL_ECHOLN(x) Serial << "echo: "< #include #include diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 76d5a35a1..0fe0c5227 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -120,7 +120,7 @@ class MarlinSerial //: public Stream FORCE_INLINE void print(const String &s) { - for (int i = 0; i < s.length(); i++) { + for (int i = 0; i < (int)s.length(); i++) { write(s[i]); } } diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index c8ef9dbb4..70244a877 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -59,7 +59,7 @@ private: LsAction lsAction; //stored for recursion. int16_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(char *prepend,SdFile parent); + void lsDive(const char *prepend,SdFile parent); }; diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index d355ea3ef..1eb19ba00 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -40,7 +40,7 @@ char *createFilename(char *buffer,const dir_t &p) //buffer>12characters } -void CardReader::lsDive(char *prepend,SdFile parent) +void CardReader::lsDive(const char *prepend,SdFile parent) { dir_t p; uint8_t cnt=0; diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index bef74a2e8..61f27fc22 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -107,10 +107,12 @@ volatile unsigned char block_buffer_tail; // Index of the block to pro //=============================private variables ============================ //=========================================================================== -// Used for the frequency limit -static unsigned char old_direction_bits = 0; // Old direction bits. Used for speed calculations -static long x_segment_time[3]={0,0,0}; // Segment times (in us). Used for speed calculations -static long y_segment_time[3]={0,0,0}; +#ifdef XY_FREQUENCY_LIMIT + // Used for the frequency limit + static unsigned char old_direction_bits = 0; // Old direction bits. Used for speed calculations + static long x_segment_time[3]={0,0,0}; // Segment times (in us). Used for speed calculations + static long y_segment_time[3]={0,0,0}; +#endif // Returns the index of the next block in the ring buffer // NOTE: Removed modulo (%) operator, which uses an expensive divide and multiplication. @@ -255,7 +257,7 @@ void planner_reverse_pass_kernel(block_t *previous, block_t *current, block_t *n // planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This // implements the reverse pass. void planner_reverse_pass() { - char block_index = block_buffer_head; + uint8_t block_index = block_buffer_head; if(((block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1)) > 3) { block_index = (block_buffer_head - 3) & (BLOCK_BUFFER_SIZE - 1); block_t *block[3] = { NULL, NULL, NULL }; @@ -294,7 +296,7 @@ void planner_forward_pass_kernel(block_t *previous, block_t *current, block_t *n // planner_recalculate() needs to go over the current plan twice. Once in reverse and once forward. This // implements the forward pass. void planner_forward_pass() { - char block_index = block_buffer_tail; + uint8_t block_index = block_buffer_tail; block_t *block[3] = { NULL, NULL, NULL }; while(block_index != block_buffer_head) { @@ -384,7 +386,7 @@ void getHighESpeed() return; //do nothing float high=0; - char block_index = block_buffer_tail; + uint8_t block_index = block_buffer_tail; while(block_index != block_buffer_head) { float se=block_buffer[block_index].steps_e/float(block_buffer[block_index].step_event_count)*block_buffer[block_index].nominal_rate; @@ -423,7 +425,7 @@ void check_axes_activity() { block_t *block; if(block_buffer_tail != block_buffer_head) { - char block_index = block_buffer_tail; + uint8_t block_index = block_buffer_tail; while(block_index != block_buffer_head) { block = &block_buffer[block_index]; if(block->steps_x != 0) x_active++; @@ -519,8 +521,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa block->nominal_speed = block->millimeters * inverse_second; // (mm/sec) Always > 0 block->nominal_rate = ceil(block->step_event_count * inverse_second); // (step/sec) Always > 0 - // segment time im micro seconds - long segment_time = lround(1000000.0/inverse_second); + if (block->steps_e == 0) { @@ -538,6 +539,8 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa #endif /* + // segment time im micro seconds + long segment_time = lround(1000000.0/inverse_second); if ((blockcount>0) && (blockcount < (BLOCK_BUFFER_SIZE - 4))) { if (segment_timeaccelerate_until) { + if (step_events_completed <= (unsigned long int)current_block->accelerate_until) { MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); acc_step_rate += current_block->initial_rate; @@ -463,7 +464,7 @@ ISR(TIMER1_COMPA_vect) } #endif } - else if (step_events_completed > current_block->decelerate_after) { + else if (step_events_completed > (unsigned long int)current_block->decelerate_after) { MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); if(step_rate > acc_step_rate) { // Check step_rate stays positive @@ -678,7 +679,7 @@ void st_set_e_position(const long &e) CRITICAL_SECTION_END; } -long st_get_position(char axis) +long st_get_position(uint8_t axis) { long count_pos; CRITICAL_SECTION_START; diff --git a/Marlin/stepper.h b/Marlin/stepper.h index 73b7efb1c..e11f5e5a9 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -34,7 +34,7 @@ void st_set_position(const long &x, const long &y, const long &z, const long &e) void st_set_e_position(const long &e); // Get current position in steps -long st_get_position(char axis); +long st_get_position(uint8_t axis); // The stepper subsystem goes to sleep when it runs out of things to execute. Call this // to notify the subsystem that it is time to go to work. diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 93364f8cb..ac5aeaa3e 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -67,7 +67,8 @@ int heatingtarget_raw[3]= {0, 0, 0}; //=========================================================================== static bool temp_meas_ready = false; -static unsigned long previous_millis_heater, previous_millis_bed_heater; +static unsigned long previous_millis_bed_heater; +//static unsigned long previous_millis_heater; #ifdef PIDTEMP //static cannot be external: @@ -80,8 +81,8 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; static float pid_error; static float temp_iState_min; static float temp_iState_max; - static float pid_input; - static float pid_output; + // static float pid_input; + // static float pid_output; static bool pid_reset; #endif //PIDTEMP @@ -94,8 +95,8 @@ static unsigned long previous_millis_heater, previous_millis_bed_heater; // Init min and max temp with extreme values to prevent false errors during startup static int minttemp_0 = 0; static int maxttemp_0 = 16383; - static int minttemp_1 = 0; - static int maxttemp_1 = 16383; + //static int minttemp_1 = 0; + //static int maxttemp_1 = 16383; static int bed_minttemp = 0; static int bed_maxttemp = 16383; @@ -268,7 +269,10 @@ int temp2analogBed(int celsius) { return (1023 * OVERSAMPLENR) - raw; #elif defined BED_USES_AD595 return lround(celsius * (1024.0 * OVERSAMPLENR/ (5.0 * 100.0) ) ); + #else + #warning No heater-type defined for the bed. #endif + return 0; } // Derived from RepRap FiveD extruder::getTemperature() @@ -296,6 +300,8 @@ float analog2temp(int raw) { return celsius; #elif defined HEATER_0_USES_AD595 return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #else + #error PLEASE DEFINE HEATER TYPE #endif } @@ -328,7 +334,10 @@ float analog2tempBed(int raw) { #elif defined BED_USES_AD595 return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + #else + #warning No heater-type defined for the bed. #endif + return 0; } void tp_init() diff --git a/Marlin/temperature.h b/Marlin/temperature.h index e9395e008..623f890bb 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -86,7 +86,7 @@ FORCE_INLINE void setTargetHotend0(const float &celsius) #endif //PIDTEMP }; FORCE_INLINE void setTargetHotend1(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; -FORCE_INLINE float setTargetHotend(const float &celcius, uint8_t extruder){ +FORCE_INLINE void setTargetHotend(const float &celcius, uint8_t extruder){ if(extruder == 0) setTargetHotend0(celcius); if(extruder == 1) setTargetHotend1(celcius); }; @@ -94,17 +94,19 @@ FORCE_INLINE void setTargetBed(const float &celsius) { target_raw[TEMPSENSO FORCE_INLINE bool isHeatingHotend0() {return heatingtarget_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; FORCE_INLINE bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; -FORCE_INLINE float isHeatingHotend(uint8_t extruder){ +FORCE_INLINE bool isHeatingHotend(uint8_t extruder){ if(extruder == 0) return heatingtarget_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]; if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1]; + return false; }; FORCE_INLINE bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; FORCE_INLINE bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; FORCE_INLINE bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; -FORCE_INLINE float isCoolingHotend(uint8_t extruder){ +FORCE_INLINE bool isCoolingHotend(uint8_t extruder){ if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0]; if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1]; + return false; }; FORCE_INLINE bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 887dc04f2..93fa4895d 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -1,7 +1,7 @@ #ifndef __ULTRALCDH #define __ULTRALCDH #include "Configuration.h" - +#include "Marlin.h" #ifdef ULTRA_LCD void lcd_status(); @@ -104,7 +104,6 @@ curencoderpos=maxlines*lcdslow; } lastencoderpos=encoderpos=curencoderpos; - int lastactiveline=activeline; activeline=curencoderpos/lcdslow; if(activeline<0) activeline=0; if(activeline>LCD_HEIGHT-1) activeline=LCD_HEIGHT-1; @@ -137,7 +136,7 @@ #define LCD_MESSAGE(x) lcd_status(x); - #define LCD_MESSAGEPGM(x) lcd_statuspgm(PSTR(x)); + #define LCD_MESSAGEPGM(x) lcd_statuspgm(MYPGM(x)); #define LCD_STATUS lcd_status() #else //no lcd #define LCD_STATUS diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 54ea809df..65ba86f10 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -53,7 +53,7 @@ void lcdProgMemprint(const char *str) ch=pgm_read_byte(++str); } } -#define lcdprintPGM(x) lcdProgMemprint(PSTR(x)) +#define lcdprintPGM(x) lcdProgMemprint(MYPGM(x)) //=========================================================================== @@ -159,8 +159,8 @@ void lcd_status() { #ifdef ULTIPANEL static uint8_t oldbuttons=0; - static long previous_millis_buttons=0; - static long previous_lcdinit=0; + //static long previous_millis_buttons=0; + //static long previous_lcdinit=0; // buttons_check(); // Done in temperature interrupt //previous_millis_buttons=millis(); From af22e9cd38c9684bd64cc7307137abe9efbba6d0 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 4 Dec 2011 19:54:07 +0100 Subject: [PATCH 143/430] Some advance modifications --- Marlin/Configuration.h | 4 ++-- Marlin/planner.cpp | 12 +++++++++--- Marlin/stepper.cpp | 43 +++++++++++++++++++++++++++++------------- 3 files changed, 41 insertions(+), 18 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 066e61005..08bf6ea9e 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -278,8 +278,8 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #ifdef ADVANCE #define EXTRUDER_ADVANCE_K .3 - #define D_FILAMENT 1.7 - #define STEPS_MM_E 65 + #define D_FILAMENT 2.85 + #define STEPS_MM_E 836 #define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) #define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 1674fcc7d..7a7a35db4 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -198,7 +198,6 @@ void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exi // block->accelerate_until = accelerate_steps; // block->decelerate_after = accelerate_steps+plateau_steps; - CRITICAL_SECTION_START; // Fill variables used by the stepper in a critical section if(block->busy == false) { // Don't update variables if block is busy. block->accelerate_until = accelerate_steps; @@ -482,7 +481,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa // Bail if this is a zero-length block if (block->step_event_count <=dropsegments) { return; }; - // Compute direction bits for this block + // Compute direction bits for this block block->direction_bits = 0; if (target[X_AXIS] < position[X_AXIS]) { block->direction_bits |= (1<direction_bits |= (1<nominal_rate, block->acceleration_st); float advance = (STEPS_PER_CUBIC_MM_E * EXTRUDER_ADVANCE_K) * - (current_speed[E_AXIS] * current_speed[E_AXIS] * EXTRUTION_AREA * EXTRUTION_AREA / 3600.0)*65536; + (current_speed[E_AXIS] * current_speed[E_AXIS] * EXTRUTION_AREA * EXTRUTION_AREA)*256; block->advance = advance; if(acc_dist == 0) { block->advance_rate = 0; @@ -731,6 +730,13 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa block->advance_rate = advance / (float)acc_dist; } } + /* + SERIAL_ECHO_START; + SERIAL_ECHOPGM("advance :"); + SERIAL_ECHO(block->advance/256.0); + SERIAL_ECHOPGM("advance rate :"); + SERIAL_ECHOLN(block->advance_rate/256.0); + */ #endif // ADVANCE diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 0eabc753d..bcad026fb 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -55,9 +55,9 @@ static long counter_x, // Counter variables for the bresenham line tracer volatile static unsigned long step_events_completed; // The number of step events executed in the current block #ifdef ADVANCE static long advance_rate, advance, final_advance = 0; - static short old_advance = 0; + static long old_advance = 0; #endif -static short e_steps; +static long e_steps; static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. static long acceleration_time, deceleration_time; //static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; @@ -253,6 +253,9 @@ FORCE_INLINE void trapezoid_generator_reset() { #ifdef ADVANCE advance = current_block->initial_advance; final_advance = current_block->final_advance; + // Do E steps + advance steps + e_steps += ((advance >>8) - old_advance); + old_advance = advance >>8; #endif deceleration_time = 0; // step_rate to timer interval @@ -260,6 +263,17 @@ FORCE_INLINE void trapezoid_generator_reset() { acceleration_time = calc_timer(acc_step_rate); OCR1A = acceleration_time; OCR1A_nominal = calc_timer(current_block->nominal_rate); + +// SERIAL_ECHO_START; +// SERIAL_ECHOPGM("advance :"); +// SERIAL_ECHO(current_block->advance/256.0); +// SERIAL_ECHOPGM("advance rate :"); +// SERIAL_ECHO(current_block->advance_rate/256.0); +// SERIAL_ECHOPGM("initial advance :"); +// SERIAL_ECHO(current_block->initial_advance/256.0); +// SERIAL_ECHOPGM("final advance :"); +// SERIAL_ECHOLN(current_block->final_advance/256.0); + } // "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. @@ -382,6 +396,9 @@ ISR(TIMER1_COMPA_vect) count_direction[E_AXIS]=-1; } #endif //!ADVANCE + + + for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) MSerial.checkRx(); // Check for serial chars. @@ -390,19 +407,12 @@ ISR(TIMER1_COMPA_vect) if (counter_e > 0) { counter_e -= current_block->step_event_count; if ((out_bits & (1<> 16) - old_advance); - old_advance = advance >> 16; #endif //ADVANCE counter_x += current_block->steps_x; @@ -461,6 +471,11 @@ ISR(TIMER1_COMPA_vect) for(int8_t i=0; i < step_loops; i++) { advance += advance_rate; } + //if(advance > current_block->advance) advance = current_block->advance; + // Do E steps + advance steps + e_steps += ((advance >>8) - old_advance); + old_advance = advance >>8; + #endif } else if (step_events_completed > current_block->decelerate_after) { @@ -485,8 +500,10 @@ ISR(TIMER1_COMPA_vect) for(int8_t i=0; i < step_loops; i++) { advance -= advance_rate; } - if(advance < final_advance) - advance = final_advance; + if(advance < final_advance) advance = final_advance; + // Do E steps + advance steps + e_steps += ((advance >>8) - old_advance); + old_advance = advance >>8; #endif //ADVANCE } else { @@ -507,7 +524,7 @@ ISR(TIMER1_COMPA_vect) // Timer 0 is shared with millies ISR(TIMER0_COMPA_vect) { - old_OCR0A += 25; // ~10kHz interrupt + old_OCR0A += 52; // ~10kHz interrupt (250000 / 26 = 9615kHz) OCR0A = old_OCR0A; // Set E direction (Depends on E direction + advance) for(unsigned char i=0; i<4;) { @@ -519,7 +536,7 @@ ISR(TIMER1_COMPA_vect) e_steps++; WRITE(E_STEP_PIN, HIGH); } - if (e_steps > 0) { + else if (e_steps > 0) { WRITE(E_DIR_PIN,!INVERT_E_DIR); e_steps--; WRITE(E_STEP_PIN, HIGH); From b99c49ec3b2f03e302926f5665dee7172df2deff Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 4 Dec 2011 20:17:21 +0100 Subject: [PATCH 144/430] Add option to only check endstop when homing --- Marlin/Configuration.h | 1 + Marlin/Marlin.pde | 5 ++ Marlin/stepper.cpp | 136 ++++++++++++++++++++++++----------------- Marlin/stepper.h | 2 + 4 files changed, 89 insertions(+), 55 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f288aba97..e8b960f78 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -170,6 +170,7 @@ const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false +//#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 016702ee3..0a51b1edb 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -528,6 +528,8 @@ FORCE_INLINE void process_commands() saved_feedmultiply = feedmultiply; feedmultiply = 100; + enable_endstops(true); + for(int8_t i=0; i < NUM_AXIS; i++) { destination[i] = current_position[i]; } @@ -563,6 +565,9 @@ FORCE_INLINE void process_commands() HOMEAXIS(Z); current_position[2]=code_value()+add_homeing[2]; } + #ifdef ENDSTOPS_ONLY_FOR_HOMING + enable_endstops(false); + #endif feedrate = saved_feedrate; feedmultiply = saved_feedmultiply; diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index e25d179df..1f688ff90 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -79,6 +79,8 @@ static bool old_y_max_endstop=false; static bool old_z_min_endstop=false; static bool old_z_max_endstop=false; +static bool check_endstops = true; + volatile long count_position[NUM_AXIS] = { 0, 0, 0, 0}; volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; @@ -191,6 +193,11 @@ void endstops_hit_on_purpose() endstop_z_hit=false; } +void enable_endstops(bool check) +{ + check_endstops = check; +} + // __________________________ // /| |\ _________________ ^ // / | | \ /| |\ | @@ -309,82 +316,94 @@ ISR(TIMER1_COMPA_vect) if ((out_bits & (1< -1 - bool x_min_endstop=(READ(X_MIN_PIN) != X_ENDSTOPS_INVERTING); - if(x_min_endstop && old_x_min_endstop && (current_block->steps_x > 0)) { - endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; - endstop_x_hit=true; - step_events_completed = current_block->step_event_count; - } - old_x_min_endstop = x_min_endstop; - #endif + if(check_endstops) { + #if X_MIN_PIN > -1 + bool x_min_endstop=(READ(X_MIN_PIN) != X_ENDSTOPS_INVERTING); + if(x_min_endstop && old_x_min_endstop && (current_block->steps_x > 0)) { + endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; + endstop_x_hit=true; + step_events_completed = current_block->step_event_count; + } + old_x_min_endstop = x_min_endstop; + #endif + } } else { // +direction WRITE(X_DIR_PIN,!INVERT_X_DIR); count_direction[X_AXIS]=1; - #if X_MAX_PIN > -1 - bool x_max_endstop=(READ(X_MAX_PIN) != X_ENDSTOPS_INVERTING); - if(x_max_endstop && old_x_max_endstop && (current_block->steps_x > 0)){ - endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; - endstop_x_hit=true; - step_events_completed = current_block->step_event_count; - } - old_x_max_endstop = x_max_endstop; - #endif + if(check_endstops) { + #if X_MAX_PIN > -1 + bool x_max_endstop=(READ(X_MAX_PIN) != X_ENDSTOPS_INVERTING); + if(x_max_endstop && old_x_max_endstop && (current_block->steps_x > 0)){ + endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; + endstop_x_hit=true; + step_events_completed = current_block->step_event_count; + } + old_x_max_endstop = x_max_endstop; + #endif + } } if ((out_bits & (1< -1 - bool y_min_endstop=(READ(Y_MIN_PIN) != Y_ENDSTOPS_INVERTING); - if(y_min_endstop && old_y_min_endstop && (current_block->steps_y > 0)) { - endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; - endstop_y_hit=true; - step_events_completed = current_block->step_event_count; - } - old_y_min_endstop = y_min_endstop; - #endif + if(check_endstops) { + #if Y_MIN_PIN > -1 + bool y_min_endstop=(READ(Y_MIN_PIN) != Y_ENDSTOPS_INVERTING); + if(y_min_endstop && old_y_min_endstop && (current_block->steps_y > 0)) { + endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; + endstop_y_hit=true; + step_events_completed = current_block->step_event_count; + } + old_y_min_endstop = y_min_endstop; + #endif + } } else { // +direction WRITE(Y_DIR_PIN,!INVERT_Y_DIR); count_direction[Y_AXIS]=1; - #if Y_MAX_PIN > -1 - bool y_max_endstop=(READ(Y_MAX_PIN) != Y_ENDSTOPS_INVERTING); - if(y_max_endstop && old_y_max_endstop && (current_block->steps_y > 0)){ - endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; - endstop_y_hit=true; - step_events_completed = current_block->step_event_count; - } - old_y_max_endstop = y_max_endstop; - #endif + if(check_endstops) { + #if Y_MAX_PIN > -1 + bool y_max_endstop=(READ(Y_MAX_PIN) != Y_ENDSTOPS_INVERTING); + if(y_max_endstop && old_y_max_endstop && (current_block->steps_y > 0)){ + endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; + endstop_y_hit=true; + step_events_completed = current_block->step_event_count; + } + old_y_max_endstop = y_max_endstop; + #endif + } } if ((out_bits & (1< -1 - bool z_min_endstop=(READ(Z_MIN_PIN) != Z_ENDSTOPS_INVERTING); - if(z_min_endstop && old_z_min_endstop && (current_block->steps_z > 0)) { - endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; - endstop_z_hit=true; - step_events_completed = current_block->step_event_count; - } - old_z_min_endstop = z_min_endstop; - #endif + if(check_endstops) { + #if Z_MIN_PIN > -1 + bool z_min_endstop=(READ(Z_MIN_PIN) != Z_ENDSTOPS_INVERTING); + if(z_min_endstop && old_z_min_endstop && (current_block->steps_z > 0)) { + endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; + endstop_z_hit=true; + step_events_completed = current_block->step_event_count; + } + old_z_min_endstop = z_min_endstop; + #endif + } } else { // +direction WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - count_direction[Z_AXIS]=1; - #if Z_MAX_PIN > -1 - bool z_max_endstop=(READ(Z_MAX_PIN) != Z_ENDSTOPS_INVERTING); - if(z_max_endstop && old_z_max_endstop && (current_block->steps_z > 0)) { - endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; - endstop_z_hit=true; - step_events_completed = current_block->step_event_count; - } - old_z_max_endstop = z_max_endstop; - #endif + count_direction[Z_AXIS]=1; + if(check_endstops) { + #if Z_MAX_PIN > -1 + bool z_max_endstop=(READ(Z_MAX_PIN) != Z_ENDSTOPS_INVERTING); + if(z_max_endstop && old_z_max_endstop && (current_block->steps_z > 0)) { + endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; + endstop_z_hit=true; + step_events_completed = current_block->step_event_count; + } + old_z_max_endstop = z_max_endstop; + #endif + } } #ifndef ADVANCE @@ -666,6 +685,13 @@ void st_init() e_steps = 0; TIMSK0 |= (1< Date: Sun, 4 Dec 2011 21:03:02 +0100 Subject: [PATCH 145/430] Update endstops only for homing. (use less resources when not used) --- Marlin/stepper.cpp | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 1f688ff90..9cf8ddd17 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -87,7 +87,12 @@ volatile char count_direction[NUM_AXIS] = { 1, 1, 1, 1}; //=========================================================================== //=============================functions ============================ //=========================================================================== - + +#ifdef ENDSTOPS_ONLY_FOR_HOMING + #define CHECK_ENDSTOPS if(check_endstops) +#else + #define CHECK_ENDSTOPS +#endif // intRes = intIn1 * intIn2 >> 16 // uses: @@ -316,7 +321,8 @@ ISR(TIMER1_COMPA_vect) if ((out_bits & (1< -1 bool x_min_endstop=(READ(X_MIN_PIN) != X_ENDSTOPS_INVERTING); if(x_min_endstop && old_x_min_endstop && (current_block->steps_x > 0)) { @@ -331,7 +337,8 @@ ISR(TIMER1_COMPA_vect) else { // +direction WRITE(X_DIR_PIN,!INVERT_X_DIR); count_direction[X_AXIS]=1; - if(check_endstops) { + CHECK_ENDSTOPS + { #if X_MAX_PIN > -1 bool x_max_endstop=(READ(X_MAX_PIN) != X_ENDSTOPS_INVERTING); if(x_max_endstop && old_x_max_endstop && (current_block->steps_x > 0)){ @@ -347,7 +354,8 @@ ISR(TIMER1_COMPA_vect) if ((out_bits & (1< -1 bool y_min_endstop=(READ(Y_MIN_PIN) != Y_ENDSTOPS_INVERTING); if(y_min_endstop && old_y_min_endstop && (current_block->steps_y > 0)) { @@ -362,7 +370,8 @@ ISR(TIMER1_COMPA_vect) else { // +direction WRITE(Y_DIR_PIN,!INVERT_Y_DIR); count_direction[Y_AXIS]=1; - if(check_endstops) { + CHECK_ENDSTOPS + { #if Y_MAX_PIN > -1 bool y_max_endstop=(READ(Y_MAX_PIN) != Y_ENDSTOPS_INVERTING); if(y_max_endstop && old_y_max_endstop && (current_block->steps_y > 0)){ @@ -378,7 +387,8 @@ ISR(TIMER1_COMPA_vect) if ((out_bits & (1< -1 bool z_min_endstop=(READ(Z_MIN_PIN) != Z_ENDSTOPS_INVERTING); if(z_min_endstop && old_z_min_endstop && (current_block->steps_z > 0)) { @@ -393,7 +403,8 @@ ISR(TIMER1_COMPA_vect) else { // +direction WRITE(Z_DIR_PIN,!INVERT_Z_DIR); count_direction[Z_AXIS]=1; - if(check_endstops) { + CHECK_ENDSTOPS + { #if Z_MAX_PIN > -1 bool z_max_endstop=(READ(Z_MAX_PIN) != Z_ENDSTOPS_INVERTING); if(z_max_endstop && old_z_max_endstop && (current_block->steps_z > 0)) { From cf50ba140fdc1c3ef3e21fa7a83a6cc036d61967 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 4 Dec 2011 22:26:42 +0100 Subject: [PATCH 146/430] added M503 to display eeprom storage, and renamed eeprom routings. This version is compatible with the qtmarlin eeprom-tab. --- Marlin/EEPROMwrite.h | 111 +++++++++++++++++++++++-------------------- Marlin/Marlin.pde | 14 ++++-- Marlin/ultralcd.pde | 6 +-- 3 files changed, 73 insertions(+), 58 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 1099d0886..8680a5fdc 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -39,7 +39,7 @@ template int EEPROM_readAnything(int &ee, T& value) // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. #define EEPROM_VERSION "V04" -FORCE_INLINE void StoreSettings() +inline void EEPROM_StoreSettings() { #ifdef EEPROM_SETTINGS char ver[4]= "000"; @@ -72,7 +72,64 @@ FORCE_INLINE void StoreSettings() #endif //EEPROM_SETTINGS } -FORCE_INLINE void RetrieveSettings(bool def=false) + +inline void EEPROM_printSettings() +{ // if def=true, the default values will be used + #ifdef EEPROM_SETTINGS + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Steps per unit:"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M92 X",axis_steps_per_unit[0]); + SERIAL_ECHOPAIR(" Y",axis_steps_per_unit[1]); + SERIAL_ECHOPAIR(" Z",axis_steps_per_unit[2]); + SERIAL_ECHOPAIR(" E",axis_steps_per_unit[3]); + SERIAL_ECHOLN(""); + + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Maximum feedrates (mm/s):"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M203 X",max_feedrate[0]); + SERIAL_ECHOPAIR(" Y",max_feedrate[1] ); + SERIAL_ECHOPAIR(" Z", max_feedrate[2] ); + SERIAL_ECHOPAIR(" E", max_feedrate[3]); + SERIAL_ECHOLN(""); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Maximum Acceleration (mm/s2):"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M201 X" ,max_acceleration_units_per_sq_second[0] ); + SERIAL_ECHOPAIR(" Y" , max_acceleration_units_per_sq_second[1] ); + SERIAL_ECHOPAIR(" Z" ,max_acceleration_units_per_sq_second[2] ); + SERIAL_ECHOPAIR(" E" ,max_acceleration_units_per_sq_second[3]); + SERIAL_ECHOLN(""); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Acceleration: S=acceleration, T=retract acceleration"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M204 S",acceleration ); + SERIAL_ECHOPAIR(" T" ,retract_acceleration); + SERIAL_ECHOLN(""); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M205 S",minimumfeedrate ); + SERIAL_ECHOPAIR(" T" ,mintravelfeedrate ); + SERIAL_ECHOPAIR(" B" ,minsegmenttime ); + SERIAL_ECHOPAIR(" X" ,max_xy_jerk ); + SERIAL_ECHOPAIR(" Z" ,max_z_jerk); + SERIAL_ECHOLN(""); + #ifdef PIDTEMP + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("PID settings:"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M301 P",Kp); + SERIAL_ECHOPAIR(" I" ,Ki/PID_dT); + SERIAL_ECHOPAIR(" D" ,Kd*PID_dT); + SERIAL_ECHOLN(""); + #endif + #endif +} + + +inline void EEPROM_RetrieveSettings(bool def=false) { // if def=true, the default values will be used #ifdef EEPROM_SETTINGS int i=EEPROM_OFFSET; @@ -125,55 +182,7 @@ FORCE_INLINE void RetrieveSettings(bool def=false) SERIAL_ECHOLN("Using Default settings:"); } #ifdef EEPROM_CHITCHAT - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Steps per unit:"); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M92 X",axis_steps_per_unit[0]); - SERIAL_ECHOPAIR(" Y",axis_steps_per_unit[1]); - SERIAL_ECHOPAIR(" Z",axis_steps_per_unit[2]); - SERIAL_ECHOPAIR(" E",axis_steps_per_unit[3]); - SERIAL_ECHOLN(""); - - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Maximum feedrates (mm/s):"); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M203 X",max_feedrate[0]); - SERIAL_ECHOPAIR(" Y",max_feedrate[1] ); - SERIAL_ECHOPAIR(" Z", max_feedrate[2] ); - SERIAL_ECHOPAIR(" E", max_feedrate[3]); - SERIAL_ECHOLN(""); - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Maximum Acceleration (mm/s2):"); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M201 X" ,max_acceleration_units_per_sq_second[0] ); - SERIAL_ECHOPAIR(" Y" , max_acceleration_units_per_sq_second[1] ); - SERIAL_ECHOPAIR(" Z" ,max_acceleration_units_per_sq_second[2] ); - SERIAL_ECHOPAIR(" E" ,max_acceleration_units_per_sq_second[3]); - SERIAL_ECHOLN(""); - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Acceleration: S=acceleration, T=retract acceleration"); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M204 S",acceleration ); - SERIAL_ECHOPAIR(" T" ,retract_acceleration); - SERIAL_ECHOLN(""); - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s)"); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M205 S",minimumfeedrate ); - SERIAL_ECHOPAIR(" T" ,mintravelfeedrate ); - SERIAL_ECHOPAIR(" B" ,minsegmenttime ); - SERIAL_ECHOPAIR(" X" ,max_xy_jerk ); - SERIAL_ECHOPAIR(" Z" ,max_z_jerk); - SERIAL_ECHOLN(""); - #ifdef PIDTEMP - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("PID settings:"); - SERIAL_ECHO_START; - SERIAL_ECHOPAIR(" M301 P",Kp); - SERIAL_ECHOPAIR(" I" ,Ki/PID_dT); - SERIAL_ECHOPAIR(" D" ,Kd*PID_dT); - SERIAL_ECHOLN(""); - #endif + EEPROM_printSettings(); #endif } diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 016702ee3..9985471b7 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -112,6 +112,7 @@ // M500 - stores paramters in EEPROM // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). // M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +// M503 - print the current settings (from memory not from eeprom) //Stepper Movement Variables @@ -236,7 +237,7 @@ void setup() fromsd[i] = false; } - RetrieveSettings(); // loads data from EEPROM if available + EEPROM_RetrieveSettings(); // loads data from EEPROM if available for(int8_t i=0; i < NUM_AXIS; i++) { @@ -1034,17 +1035,22 @@ FORCE_INLINE void process_commands() break; case 500: // Store settings in EEPROM { - StoreSettings(); + EEPROM_StoreSettings(); } break; case 501: // Read settings from EEPROM { - RetrieveSettings(); + EEPROM_RetrieveSettings(); } break; case 502: // Revert to default settings { - RetrieveSettings(true); + EEPROM_RetrieveSettings(true); + } + break; + case 503: // print settings currently in memory + { + EEPROM_printSettings(); } break; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 65ba86f10..88f8f32fb 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1402,7 +1402,7 @@ void MainMenu::showControl() //enquecommand("M84"); beepshort(); BLOCK; - StoreSettings(); + EEPROM_StoreSettings(); } }break; case ItemC_load: @@ -1416,7 +1416,7 @@ void MainMenu::showControl() //enquecommand("M84"); beepshort(); BLOCK; - RetrieveSettings(); + EEPROM_RetrieveSettings(); } }break; case ItemC_failsafe: @@ -1430,7 +1430,7 @@ void MainMenu::showControl() //enquecommand("M84"); beepshort(); BLOCK; - RetrieveSettings(true); + EEPROM_RetrieveSettings(true); } }break; default: From 4fd75dc813fd40ea91323c04323055fbbe077d52 Mon Sep 17 00:00:00 2001 From: Denis B Date: Mon, 5 Dec 2011 23:33:33 -0500 Subject: [PATCH 147/430] Working version of multiple extruders (up to 3) - The temperature control is pretty much complete (not sure what to do w/ autotemp though) Changed the pins assignment to clearly separate bed and extruder heaters and temp sensors, changed a bit how termistor tables are handled. - The steppers control is rudimentary (only chanages what pins it uses depending on the active_extruder var, but that's enough for switching extruder in the start.gcode in the the profiles) - Tested only w/ RAMPS 1.4 --- Marlin/Configuration.h | 72 +++--- Marlin/Marlin.h | 32 ++- Marlin/Marlin.pde | 107 +++++---- Marlin/cardreader.pde | 2 +- Marlin/fastio.h | 16 +- Marlin/pins.h | 179 ++++++++------ Marlin/planner.cpp | 20 +- Marlin/planner.h | 2 - Marlin/stepper.cpp | 61 +++-- Marlin/temperature.cpp | 494 +++++++++++++++++++++----------------- Marlin/temperature.h | 119 +++++---- Marlin/thermistortables.h | 147 +++++------- 12 files changed, 703 insertions(+), 548 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e8b960f78..346db503f 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,11 +4,11 @@ // This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 +//#define BAUDRATE 250000 +#define BAUDRATE 115200 //#define BAUDRATE 230400 -#define EXTRUDERS 1 +#define EXTRUDERS 2 // Frequency limit // See nophead's blog for more info @@ -32,7 +32,7 @@ // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, // Teensylu = 8 -#define MOTHERBOARD 7 +#define MOTHERBOARD 33 //=========================================================================== //=============================Thermal Settings ============================ @@ -46,17 +46,16 @@ // 5 is ParCan supplied 104GT-2 100K // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -//#define THERMISTORHEATER_0 3 -//#define THERMISTORHEATER_1 3 -//#define THERMISTORBED 3 - -//#define HEATER_0_USES_THERMISTOR -//#define HEATER_1_USES_THERMISTOR -#define HEATER_0_USES_AD595 +#define THERMISTORHEATER_0 1 +#define THERMISTORHEATER_1 1 +#define HEATER_0_USES_THERMISTOR +#define HEATER_1_USES_THERMISTOR +//#define HEATER_0_USES_AD595 //#define HEATER_1_USES_AD595 // Select one of these only to define how the bed temp is read. -//#define BED_USES_THERMISTOR +#define THERMISTORBED 1 +#define BED_USES_THERMISTOR //#define BED_USES_AD595 #define BED_CHECK_INTERVAL 5000 //ms @@ -68,13 +67,13 @@ //#define WATCHPERIOD 5000 //5 seconds // Actual temperature must be close to target for this long before M109 returns success -//#define TEMP_RESIDENCY_TIME 20 // (seconds) -//#define TEMP_HYSTERESIS 5 // (C°) range of +/- temperatures considered "close" to the target one +#define TEMP_RESIDENCY_TIME 30 // (seconds) +#define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one //// The minimal temperature defines the temperature below which the heater will not be enabled #define HEATER_0_MINTEMP 5 //#define HEATER_1_MINTEMP 5 -//#define BED_MINTEMP 5 +#define BED_MINTEMP 5 // When temperature exceeds max temp, your heater will be switched off. @@ -82,7 +81,7 @@ // You should use MINTEMP for thermistor short/failure protection. #define HEATER_0_MAXTEMP 275 //#define HEATER_1_MAXTEMP 275 -//#define BED_MAXTEMP 150 +#define BED_MAXTEMP 150 // Wait for Cooldown @@ -131,9 +130,14 @@ // #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) // Ultitmaker - #define DEFAULT_Kp 22.2 - #define DEFAULT_Ki (1.25*PID_dT) - #define DEFAULT_Kd (99/PID_dT) +// #define DEFAULT_Kp 22.2 +// #define DEFAULT_Ki (1.25*PID_dT) +// #define DEFAULT_Kd (99/PID_dT) + +// Makergear + #define DEFAULT_Kp 7.0 + #define DEFAULT_Ki 0.1 + #define DEFAULT_Kd 12 // Mendel Parts V9 on 12V // #define DEFAULT_Kp 63.0 @@ -152,7 +156,7 @@ // if Kc is choosen well, the additional required power due to increased melting should be compensated. #define PID_ADD_EXTRUSION_RATE #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (3) //heatingpower=Kc*(e_speed) + #define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) #endif #endif // PIDTEMP @@ -164,10 +168,11 @@ // Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors + // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false //#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing @@ -176,24 +181,26 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define X_ENABLE_ON 0 #define Y_ENABLE_ON 0 #define Z_ENABLE_ON 0 -#define E_ENABLE_ON 0 +#define E_ENABLE_ON 0 // For all extruders // Disables axis when it's not being used. #define DISABLE_X false #define DISABLE_Y false -#define DISABLE_Z false -#define DISABLE_E false +#define DISABLE_Z true +#define DISABLE_E false // For all extruders // Inverting axis direction //#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true //#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false //#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true -//#define INVERT_E_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false +//#define INVERT_E*_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false, used for all extruders -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_E_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E1_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false //// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN @@ -209,7 +216,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +#define HOMING_FEEDRATE {30*60, 30*60, 2*60, 0} // set the homing speeds (mm/min) //homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: #define X_HOME_RETRACT_MM 5 @@ -223,8 +230,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker +//#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker //#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} //sells mendel with v9 extruder +#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. @@ -290,7 +298,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -//#define SDSUPPORT // Enable SD Card Support in Hardware Console +#define SDSUPPORT // Enable SD Card Support in Hardware Console #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? //#define ULTIPANEL diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 910cf46ad..626f61b6c 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -57,6 +57,8 @@ const prog_char echomagic[] PROGMEM ="echo:"; #define SERIAL_ECHOPAIR(name,value) {SERIAL_ECHOPGM(name);SERIAL_ECHO(value);} +// Macro for getting current active extruder +#define ACTIVE_EXTRUDER (active_extruder) //things to write to serial from Programmemory. saves 400 to 2k of RAM. #define SerialprintPGM(x) serialprintPGM(MYPGM(x)) @@ -100,14 +102,31 @@ void manage_inactivity(byte debug); #define disable_z() ; #endif -#if E_ENABLE_PIN > -1 - #define enable_e() WRITE(E_ENABLE_PIN, E_ENABLE_ON) - #define disable_e() WRITE(E_ENABLE_PIN,!E_ENABLE_ON) +#if defined(E0_ENABLE_PIN) && (E0_ENABLE_PIN > -1) + #define enable_e0() WRITE(E0_ENABLE_PIN, E_ENABLE_ON) + #define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON) #else - #define enable_e() ; - #define disable_e() ; + #define enable_e0() /* nothing */ + #define disable_e0() /* nothing */ #endif +#if (EXTRUDERS > 1) && defined(E1_ENABLE_PIN) && (E1_ENABLE_PIN > -1) + #define enable_e1() WRITE(E1_ENABLE_PIN, E_ENABLE_ON) + #define disable_e1() WRITE(E1_ENABLE_PIN,!E_ENABLE_ON) +#else + #define enable_e1() /* nothing */ + #define disable_e1() /* nothing */ +#endif + +#if (EXTRUDERS > 2) && defined(E2_ENABLE_PIN) && (E2_ENABLE_PIN > -1) + #define enable_e2() WRITE(E2_ENABLE_PIN, E_ENABLE_ON) + #define disable_e2() WRITE(E2_ENABLE_PIN,!E_ENABLE_ON) +#else + #define enable_e2() /* nothing */ + #define disable_e2() /* nothing */ +#endif + + enum AxisEnum {X_AXIS=0, Y_AXIS=1, Z_AXIS=2, E_AXIS=3}; @@ -131,4 +150,7 @@ extern bool axis_relative_modes[]; extern float current_position[NUM_AXIS] ; extern float add_homeing[3]; +// Handling multiple extruders pins +extern uint8_t active_extruder; + #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 226a7d35d..9b765ebd0 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -119,7 +119,6 @@ //=========================================================================== //=============================imported variables============================ //=========================================================================== -extern float HeaterPower; //=========================================================================== @@ -133,8 +132,10 @@ bool axis_relative_modes[] = AXIS_RELATIVE_MODES; volatile int feedmultiply=100; //100->1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; -float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; +float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 }; float add_homeing[3]={0,0,0}; +uint8_t active_extruder = 0; + //=========================================================================== //=============================private variables============================= @@ -601,7 +602,6 @@ FORCE_INLINE void process_commands() else if(code_seen('M')) { - switch( (int)code_value() ) { case 17: @@ -609,10 +609,12 @@ FORCE_INLINE void process_commands() enable_x(); enable_y(); enable_z(); - enable_e(); + enable_e0(); + enable_e1(); + enable_e2(); break; - #ifdef SDSUPPORT +#ifdef SDSUPPORT case 20: // M20 - list SD card SERIAL_PROTOCOLLNPGM("Begin file list"); card.ls(); @@ -641,9 +643,8 @@ FORCE_INLINE void process_commands() card.pauseSDPrint(); break; case 26: //M26 - Set SD index - if(card.cardOK && code_seen('S')){ + if(card.cardOK && code_seen('S')) { card.setIndex(code_value_long()); - } break; case 27: //M27 - Get SD status @@ -657,16 +658,15 @@ FORCE_INLINE void process_commands() *(starpos-1) = '\0'; } card.openFile(strchr_pointer+4,false); - break; case 29: //M29 - Stop SD write //processed in write to file routine above //card,saving = false; break; - #endif //SDSUPPORT +#endif //SDSUPPORT case 30: //M30 take time since the start of the SD print or an M109 command - { + { stoptime=millis(); char time[30]; unsigned long t=(stoptime-starttime)/1000; @@ -678,8 +678,8 @@ FORCE_INLINE void process_commands() SERIAL_ECHOLN(time); LCD_MESSAGE(time); autotempShutdown(); - } - break; + } + break; case 42: //M42 -Change pin status via gcode if (code_seen('S')) { @@ -723,7 +723,7 @@ FORCE_INLINE void process_commands() if (code_seen('S')) setTargetBed(code_value()); break; case 105 : // M105 - tmp_extruder = active_extruder; + tmp_extruder = ACTIVE_EXTRUDER; if(code_seen('T')) { tmp_extruder = code_value(); if(tmp_extruder >= EXTRUDERS) { @@ -733,21 +733,16 @@ FORCE_INLINE void process_commands() break; } } - #if (TEMP_0_PIN > -1) || (TEMP_2_PIN > -1) + #if (TEMP_0_PIN > -1) SERIAL_PROTOCOLPGM("ok T:"); - SERIAL_PROTOCOL( degHotend(tmp_extruder)); - #if TEMP_1_PIN > -1 + SERIAL_PROTOCOL(degHotend(tmp_extruder)); + #if TEMP_BED_PIN > -1 SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOL(degBed()); - #endif //TEMP_1_PIN + #endif //TEMP_BED_PIN #else SERIAL_ERROR_START; SERIAL_ERRORLNPGM("No thermistors - no temp"); - #endif - #ifdef PIDTEMP - SERIAL_PROTOCOLPGM(" @:"); - SERIAL_PROTOCOL( HeaterPower); - #endif SERIAL_PROTOCOLLN(""); return; @@ -790,19 +785,31 @@ FORCE_INLINE void process_commands() residencyStart = -1; /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ - while((target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder))) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + while((residencyStart == -1) || + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else - while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { + while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) - { //Print Temp Reading every 1 second while heating up/cooling down - SERIAL_PROTOCOLPGM("T:"); - SERIAL_PROTOCOLLN( degHotend(tmp_extruder) ); - codenum = millis(); - } - manage_heater(); - LCD_STATUS; + if( (millis() - codenum) > 1000 ) + { //Print Temp Reading and remaining time every 1 second while heating up/cooling down + SERIAL_PROTOCOLPGM("T:"); + SERIAL_PROTOCOLLN( degHotend(tmp_extruder) ); + SERIAL_PROTOCOLPGM(" E:"); + SERIAL_PROTOCOLLN( (int)tmp_extruder ); + SERIAL_PROTOCOLPGM(" W:"); + if(residencyStart > -1) + { + codenum = TEMP_RESIDENCY_TIME - ((millis() - residencyStart) / 1000); + SERIAL_PROTOCOLLN( codenum ); + } + else + { + SERIAL_PROTOCOLLN( "?" ); + } + codenum = millis(); + } + manage_heater(); + LCD_STATUS; #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ @@ -818,8 +825,8 @@ FORCE_INLINE void process_commands() starttime=millis(); } break; - case 190: // M190 - Wait bed for heater to reach target. - #if TEMP_1_PIN > -1 + case 190: // M190 - Wait for bed heater to reach target. + #if TEMP_BED_PIN > -1 LCD_MESSAGEPGM("Bed Heating."); if (code_seen('S')) setTargetBed(code_value()); codenum = millis(); @@ -827,13 +834,13 @@ FORCE_INLINE void process_commands() { if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { - float tt=degHotend0(); + float tt=degHotend(ACTIVE_EXTRUDER); SERIAL_PROTOCOLPGM("T:"); - SERIAL_PROTOCOLLN(tt ); - SERIAL_PROTOCOLPGM("ok T:"); - SERIAL_PROTOCOL(tt ); + SERIAL_PROTOCOL(tt); + SERIAL_PROTOCOLPGM(" E:"); + SERIAL_PROTOCOLLN( (int)tmp_extruder ); SERIAL_PROTOCOLPGM(" B:"); - SERIAL_PROTOCOLLN(degBed() ); + SERIAL_PROTOCOLLN(degBed()); codenum = millis(); } manage_heater(); @@ -886,7 +893,9 @@ FORCE_INLINE void process_commands() if(code_seen('E')) { st_synchronize(); LCD_MESSAGEPGM("Free Move"); - disable_e(); + disable_e0(); + disable_e1(); + disable_e2(); } else { finishAndDisableSteppers(); @@ -1061,7 +1070,9 @@ FORCE_INLINE void process_commands() } } - else if(code_seen('T')) { + + else if(code_seen('T')) + { tmp_extruder = code_value(); if(tmp_extruder >= EXTRUDERS) { SERIAL_ECHO_START; @@ -1071,8 +1082,12 @@ FORCE_INLINE void process_commands() } else { active_extruder = tmp_extruder; + SERIAL_ECHO_START; + SERIAL_ECHO("Active Extruder: "); + SERIAL_PROTOCOLLN((int)active_extruder); } } + else { SERIAL_ECHO_START; @@ -1167,7 +1182,9 @@ void manage_inactivity(byte debug) disable_x(); disable_y(); disable_z(); - disable_e(); + disable_e0(); + disable_e1(); + disable_e2(); } check_axes_activity(); } @@ -1179,7 +1196,9 @@ void kill() disable_x(); disable_y(); disable_z(); - disable_e(); + disable_e0(); + disable_e1(); + disable_e2(); if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); SERIAL_ERROR_START; diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 1eb19ba00..4d3eac789 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -438,4 +438,4 @@ void CardReader::printingHasFinished() } autotempShutdown(); } -#endif //SDSUPPORT \ No newline at end of file +#endif //SDSUPPORT diff --git a/Marlin/fastio.h b/Marlin/fastio.h index 7fd42a6c8..634571e3a 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -44,9 +44,23 @@ // why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html /// Read a pin wrapper -#define READ(IO) _READ(IO) +#define READ(IO) _READ(IO) /// Write to a pin wrapper #define WRITE(IO, v) _WRITE(IO, v) +#if EXTRUDERS > 2 + #define WRITE_E_STEP(v) { if(ACTIVE_EXTRUDER == 2) { WRITE(E2_STEP_PIN, v); } else { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }}} + #define NORM_E_DIR() { if(ACTIVE_EXTRUDER == 2) { WRITE(E2_DIR_PIN, INVERT_E2_DIR); } else { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }}} + #define REV_E_DIR() { if(ACTIVE_EXTRUDER == 2) { WRITE(E2_DIR_PIN, !INVERT_E2_DIR); } else { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }}} +#elif EXTRUDERS > 1 + #define WRITE_E_STEP(v) { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }} + #define NORM_E_DIR() { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }} + #define REV_E_DIR() { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }} +#else + #define WRITE_E_STEP(v) WRITE(E0_STEP_PIN, v) + #define NORM_E_DIR() WRITE(E0_DIR_PIN, INVERT_E0_DIR) + #define REV_E_DIR() WRITE(E0_DIR_PIN, !INVERT_E0_DIR) +#endif + /// toggle a pin wrapper #define TOGGLE(IO) _TOGGLE(IO) diff --git a/Marlin/pins.h b/Marlin/pins.h index 60dd6e514..2c2bc9144 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -47,9 +47,9 @@ #define Z_MIN_PIN 17 #define Z_MAX_PIN 16 -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 +#define E0_STEP_PIN 11 +#define E0_DIR_PIN 12 +#define E0_ENABLE_PIN -1 #define SDPOWER -1 #define SDSS -1 @@ -59,9 +59,13 @@ #define KILL_PIN -1 #define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! #define HEATER_1_PIN -1 #define HEATER_2_PIN -1 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 #endif @@ -120,9 +124,9 @@ #define Z_MIN_PIN 2 #define Z_MAX_PIN 1 -#define E_STEP_PIN 12 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN 3 +#define E0_STEP_PIN 12 +#define E0_DIR_PIN 16 +#define E0_ENABLE_PIN 3 #define SDPOWER -1 #define SDSS -1 @@ -132,9 +136,13 @@ #define KILL_PIN -1 #define HEATER_0_PIN 14 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 #define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 /* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ @@ -171,9 +179,9 @@ #define Z_MIN_PIN 30 #define Z_MAX_PIN 31 -#define E_STEP_PIN 17 -#define E_DIR_PIN 16 -#define E_ENABLE_PIN -1 +#define E0_STEP_PIN 17 +#define E0_DIR_PIN 16 +#define E0_ENABLE_PIN -1 #define SDPOWER -1 #define SDSS 4 @@ -194,11 +202,13 @@ #define KILL_PIN -1 #define HEATER_0_PIN -1 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 #define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - - +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 #endif @@ -230,37 +240,43 @@ #define X_DIR_PIN 55 #define X_ENABLE_PIN 38 #define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. +#define X_MAX_PIN 2 //2 //Max endstops default to disabled "-1", set to commented value to enable. #define Y_STEP_PIN 60 #define Y_DIR_PIN 61 #define Y_ENABLE_PIN 56 #define Y_MIN_PIN 14 -#define Y_MAX_PIN -1 //15 +#define Y_MAX_PIN 15 //15 #define Z_STEP_PIN 46 #define Z_DIR_PIN 48 #define Z_ENABLE_PIN 62 #define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 +#define Z_MAX_PIN 19 //19 -#define E_STEP_PIN 26 -#define E_DIR_PIN 28 -#define E_ENABLE_PIN 24 +#define E0_STEP_PIN 26 +#define E0_DIR_PIN 28 +#define E0_ENABLE_PIN 24 + +#define E1_STEP_PIN 36 +#define E1_DIR_PIN 34 +#define E1_ENABLE_PIN 30 #define SDPOWER -1 #define SDSS 53 #define LED_PIN 13 -#define FAN_PIN 9 +#define FAN_PIN 4 #define PS_ON_PIN 12 #define KILL_PIN -1 -#define HEATER_0_PIN 10 -#define HEATER_1_PIN 8 -#define HEATER_2_PIN -1 +#define HEATER_0_PIN 10 // EXTRUDER 1 +#define HEATER_1_PIN 9 // EXTRUDER 2 +#define HEATER_2_PIN -1 // EXTRUDER 2 #define TEMP_0_PIN 13 // ANALOG NUMBERING -#define TEMP_1_PIN 14 // ANALOG NUMBERING +#define TEMP_1_PIN 15 // ANALOG NUMBERING #define TEMP_2_PIN -1 // ANALOG NUMBERING +#define HEATER_BED_PIN 8 // BED +#define TEMP_BED_PIN 14 // ANALOG NUMBERING #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default @@ -283,9 +299,9 @@ #define Z_MIN_PIN 18 #define Z_MAX_PIN -1 //19 -#define E_STEP_PIN 32 -#define E_DIR_PIN 34 -#define E_ENABLE_PIN 30 +#define E0_STEP_PIN 32 +#define E0_DIR_PIN 34 +#define E0_ENABLE_PIN 30 #define SDPOWER 48 #define SDSS 53 @@ -297,18 +313,19 @@ #ifdef RAMPS_V_1_0 // RAMPS_V_1_0 #define HEATER_0_PIN 12 // RAMPS 1.0 - #define HEATER_1_PIN -1 // RAMPS 1.0 + #define HEATER_BED_PIN -1 // RAMPS 1.0 #define FAN_PIN 11 // RAMPS 1.0 - #else // RAMPS_V_1_1 or RAMPS_V_1_2 #define HEATER_0_PIN 10 // RAMPS 1.1 - #define HEATER_1_PIN 8 // RAMPS 1.1 + #define HEATER_BED_PIN 8 // RAMPS 1.1 #define FAN_PIN 9 // RAMPS 1.1 #endif +#define HEATER_1_PIN -1 #define HEATER_2_PIN -1 #define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! #endif // SPI for Max6675 Thermocouple @@ -353,9 +370,9 @@ #define Z_MIN_PIN 4 #define Z_MAX_PIN -1 -#define E_STEP_PIN 11 -#define E_DIR_PIN 12 -#define E_ENABLE_PIN -1 +#define E0_STEP_PIN 11 +#define E0_DIR_PIN 12 +#define E0_ENABLE_PIN -1 #define SDPOWER -1 #define SDSS -1 @@ -365,9 +382,13 @@ #define KILL_PIN -1 #define HEATER_0_PIN 6 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! #define HEATER_1_PIN -1 #define HEATER_2_PIN -1 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 #endif @@ -404,19 +425,21 @@ #define Z_MAX_PIN -1 //extruder pins - #define E_STEP_PIN 4 //Edited @ EJE Electronics 20100715 - #define E_DIR_PIN 2 //Edited @ EJE Electronics 20100715 - #define E_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 + #define E0_STEP_PIN 4 //Edited @ EJE Electronics 20100715 + #define E0_DIR_PIN 2 //Edited @ EJE Electronics 20100715 + #define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 + #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_2_PIN -1 //changed @ rkoeppl 20110410 #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 - #define HEATER_1_PIN -1 //changed @ rkoeppl 20110410 - #define HEATER_2_PIN -1 + #define HEATER_1_PIN -1 + #define HEATER_2_PIN -1 + #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410 #define SDPOWER -1 #define SDSS 17 #define LED_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_2_PIN -1 #define FAN_PIN -1 //changed @ rkoeppl 20110410 #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 //our pin for debugging. @@ -459,8 +482,8 @@ #define Z_MIN_PIN 20 #define Z_MAX_PIN -1 -#define E_STEP_PIN 1 -#define E_DIR_PIN 0 +#define E0_STEP_PIN 1 +#define E0_DIR_PIN 0 #define LED_PIN -1 @@ -470,31 +493,33 @@ #define KILL_PIN -1 #define HEATER_0_PIN 13 // (extruder) +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 #ifdef SANGUINOLOLU_V_1_2 -#define HEATER_1_PIN 12 // (bed) +#define HEATER_BED_PIN 12 // (bed) #define X_ENABLE_PIN 14 #define Y_ENABLE_PIN 14 #define Z_ENABLE_PIN 26 -#define E_ENABLE_PIN 14 +#define E0_ENABLE_PIN 14 #else -#define HEATER_1_PIN 14 // (bed) +#define HEATER_BED_PIN 14 // (bed) #define X_ENABLE_PIN -1 #define Y_ENABLE_PIN -1 #define Z_ENABLE_PIN -1 -#define E_ENABLE_PIN -1 +#define E0_ENABLE_PIN -1 #endif #define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) -#define TEMP_1_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define TEMP_1_PIN -1 #define TEMP_2_PIN -1 +#define TEMP_BED_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) #define SDPOWER -1 #define SDSS 31 -#define HEATER_2_PIN -1 #endif @@ -529,8 +554,8 @@ #define Z_MAX_PIN 32 #define Z_ENABLE_PIN 35 -#define HEATER_1_PIN 4 -#define TEMP_1_PIN 11 +#define HEATER_BED_PIN 4 +#define TEMP_BED_PIN 11 #define EXTRUDER_0_STEP_PIN 43 #define EXTRUDER_0_DIR_PIN 45 @@ -543,14 +568,14 @@ #define EXTRUDER_1_ENABLE_PIN 51 #define EXTRUDER_1_HEATER_PIN 3 #define EXTRUDER_1_TEMPERATURE_PIN 10 -#define HEATER_2_PIN 51 -#define TEMP_2_PIN 3 +#define HEATER_1_PIN 51 +#define TEMP_1_PIN 3 -#define E_STEP_PIN EXTRUDER_0_STEP_PIN -#define E_DIR_PIN EXTRUDER_0_DIR_PIN -#define E_ENABLE_PIN EXTRUDER_0_ENABLE_PIN +#define E0_STEP_PIN EXTRUDER_0_STEP_PIN +#define E0_DIR_PIN EXTRUDER_0_DIR_PIN +#define E0_ENABLE_PIN EXTRUDER_0_ENABLE_PIN #define SDPOWER -1 #define SDSS 53 @@ -655,20 +680,22 @@ #define Z_MIN_PIN 15 #define Z_MAX_PIN -1 -#define E_STEP_PIN 6 -#define E_DIR_PIN 7 -#define E_ENABLE_PIN 19 +#define E0_STEP_PIN 6 +#define E0_DIR_PIN 7 +#define E0_ENABLE_PIN 19 #define HEATER_0_PIN 21 // Extruder -#define HEATER_1_PIN 20 // Bed +#define HEATER_1_PIN -1 #define HEATER_2_PIN -1 +#define HEATER_BED_PIN 20 // Bed #define FAN_PIN 22 // Fan #define TEMP_0_PIN 7 // Extruder -#define TEMP_1_PIN 6 // Bed +#define TEMP_1_PIN -1 #define TEMP_2_PIN -1 +#define TEMP_BED_PIN 6 // Bed #define SDPOWER -1 #define SDSS 8 @@ -690,6 +717,22 @@ #endif //List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, E_STEP_PIN, E_DIR_PIN, E_ENABLE_PIN, LED_PIN, PS_ON_PIN, HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, FAN_PIN, TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN} - +#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN +#if EXTRUDERS == 3 + #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN + #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN +#elif EXTRUDERS == 2 + #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN + #define _E2_PINS -1 +#elif EXTRUDERS == 1 + #define _E1_PINS -1 + #define _E2_PINS -1 +#else + #error Unsupported number of extruders +#endif +#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, LED_PIN, PS_ON_PIN, \ + HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, \ + HEATER_BED_PIN, FAN_PIN, \ + _E0_PINS, _E1_PINS, _E2_PINS, \ + TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN, TEMP_BED_PIN } #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index a8f41d353..d2179301f 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -56,9 +56,9 @@ //#include //#include -#include "Marlin.h" #include "Configuration.h" #include "pins.h" +#include "Marlin.h" #include "fastio.h" #include "planner.h" #include "stepper.h" @@ -81,8 +81,6 @@ float max_z_jerk; float mintravelfeedrate; unsigned long axis_steps_per_sqr_second[NUM_AXIS]; -uint8_t active_extruder = 0; - // The current position of the tool in absolute steps long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode static float previous_speed[4]; // Speed of previous path line segment @@ -95,7 +93,6 @@ static float previous_nominal_speed; // Nominal speed of previous path line segm bool autotemp_enabled=false; #endif - //=========================================================================== //=================semi-private variables, used in inline functions ===== //=========================================================================== @@ -437,7 +434,7 @@ void check_axes_activity() { if((DISABLE_X) && (x_active == 0)) disable_x(); if((DISABLE_Y) && (y_active == 0)) disable_y(); if((DISABLE_Z) && (z_active == 0)) disable_z(); - if((DISABLE_E) && (e_active == 0)) disable_e(); + if((DISABLE_E) && (e_active == 0)) { disable_e0();disable_e1();disable_e2(); } } @@ -496,15 +493,10 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa if(block->steps_x != 0) enable_x(); if(block->steps_y != 0) enable_y(); if(block->steps_z != 0) enable_z(); - if(extruder == 0) { - if(block->steps_e != 0) enable_e(); - } - #if (EXTRUDERS > 1) - if(extruder == 1) { - if(block->steps_e != 0) enable_e1(); - } - #endif - + + // Enable all + if(block->steps_e != 0) { enable_e0();enable_e1();enable_e2(); } + float delta_mm[4]; delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; diff --git a/Marlin/planner.h b/Marlin/planner.h index 53ac3d844..66bd9025c 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -91,8 +91,6 @@ extern float max_z_jerk; extern float mintravelfeedrate; extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; -extern uint8_t active_extruder; - #ifdef AUTOTEMP extern bool autotemp_enabled; extern float autotemp_max; diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 9cf8ddd17..465ab89dd 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -24,9 +24,9 @@ #include "stepper.h" #include "Configuration.h" +#include "pins.h" #include "Marlin.h" #include "planner.h" -#include "pins.h" #include "fastio.h" #include "temperature.h" #include "ultralcd.h" @@ -41,7 +41,6 @@ block_t *current_block; // A pointer to the block currently being traced - //=========================================================================== //=============================private variables ============================ //=========================================================================== @@ -419,11 +418,11 @@ ISR(TIMER1_COMPA_vect) #ifndef ADVANCE if ((out_bits & (1<steps_e; if (counter_e > 0) { - WRITE(E_STEP_PIN, HIGH); + WRITE_E_STEP(HIGH); counter_e -= current_block->step_event_count; - WRITE(E_STEP_PIN, LOW); + WRITE_E_STEP(LOW); count_position[E_AXIS]+=count_direction[E_AXIS]; } #endif //!ADVANCE @@ -559,18 +558,18 @@ ISR(TIMER1_COMPA_vect) OCR0A = old_OCR0A; // Set E direction (Depends on E direction + advance) for(unsigned char i=0; i<4;) { - WRITE(E_STEP_PIN, LOW); + WRITE_E_STEP(LOW); if (e_steps == 0) break; i++; if (e_steps < 0) { - WRITE(E_DIR_PIN,INVERT_E_DIR); + WRITE_E_DIR(INVERT_E_DIR); e_steps++; - WRITE(E_STEP_PIN, HIGH); + WRITE_E_STEP(HIGH); } else if (e_steps > 0) { - WRITE(E_DIR_PIN,!INVERT_E_DIR); + WRITE_E_DIR(!INVERT_E_DIR); e_steps--; - WRITE(E_STEP_PIN, HIGH); + WRITE_E_STEP(HIGH); } } } @@ -578,7 +577,7 @@ ISR(TIMER1_COMPA_vect) void st_init() { - //Initialize Dir Pins + //Initialize Dir Pins #if X_DIR_PIN > -1 SET_OUTPUT(X_DIR_PIN); #endif @@ -588,8 +587,14 @@ void st_init() #if Z_DIR_PIN > -1 SET_OUTPUT(Z_DIR_PIN); #endif - #if E_DIR_PIN > -1 - SET_OUTPUT(E_DIR_PIN); + #if E0_DIR_PIN > -1 + SET_OUTPUT(E0_DIR_PIN); + #endif + #if defined(E1_DIR_PIN) && (E1_DIR_PIN > -1) + SET_OUTPUT(E1_DIR_PIN); + #endif + #if defined(E2_DIR_PIN) && (E2_DIR_PIN > -1) + SET_OUTPUT(E2_DIR_PIN); #endif //Initialize Enable Pins - steppers default to disabled. @@ -606,9 +611,17 @@ void st_init() SET_OUTPUT(Z_ENABLE_PIN); if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); #endif - #if (E_ENABLE_PIN > -1) - SET_OUTPUT(E_ENABLE_PIN); - if(!E_ENABLE_ON) WRITE(E_ENABLE_PIN,HIGH); + #if (E0_ENABLE_PIN > -1) + SET_OUTPUT(E0_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E0_ENABLE_PIN,HIGH); + #endif + #if defined(E1_ENABLE_PIN) && (E1_ENABLE_PIN > -1) + SET_OUTPUT(E1_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E1_ENABLE_PIN,HIGH); + #endif + #if defined(E2_ENABLE_PIN) && (E2_ENABLE_PIN > -1) + SET_OUTPUT(E2_ENABLE_PIN); + if(!E_ENABLE_ON) WRITE(E2_ENABLE_PIN,HIGH); #endif //endstops and pullups @@ -669,8 +682,14 @@ void st_init() #if (Z_STEP_PIN > -1) SET_OUTPUT(Z_STEP_PIN); #endif - #if (E_STEP_PIN > -1) - SET_OUTPUT(E_STEP_PIN); + #if (E0_STEP_PIN > -1) + SET_OUTPUT(E0_STEP_PIN); + #endif + #if defined(E1_STEP_PIN) && (E1_STEP_PIN > -1) + SET_OUTPUT(E1_STEP_PIN); + #endif + #if defined(E2_STEP_PIN) && (E2_STEP_PIN > -1) + SET_OUTPUT(E2_STEP_PIN); #endif // waveform generation = 0100 = CTC @@ -749,5 +768,7 @@ void finishAndDisableSteppers() disable_x(); disable_y(); disable_z(); - disable_e(); + disable_e0(); + disable_e1(); + disable_e2(); } diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index ac5aeaa3e..72b895979 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -41,17 +41,14 @@ //=========================================================================== //=============================public variables============================ //=========================================================================== -int target_raw[3] = {0, 0, 0}; -int current_raw[3] = {0, 0, 0}; -int heatingtarget_raw[3]= {0, 0, 0}; - +int target_raw[EXTRUDERS] = { 0 }; +int target_raw_bed = 0; +int current_raw[EXTRUDERS] = { 0 }; +int current_raw_bed = 0; #ifdef PIDTEMP - - // probably used external - float HeaterPower; - float pid_setpoint = 0.0; - + // used external + float pid_setpoint[EXTRUDERS] = { 0.0 }; float Kp=DEFAULT_Kp; float Ki=DEFAULT_Ki; @@ -72,42 +69,74 @@ static unsigned long previous_millis_bed_heater; #ifdef PIDTEMP //static cannot be external: - static float temp_iState = 0; - static float temp_dState = 0; - static float pTerm; - static float iTerm; - static float dTerm; + static float temp_iState[EXTRUDERS] = { 0 }; + static float temp_dState[EXTRUDERS] = { 0 }; + static float pTerm[EXTRUDERS]; + static float iTerm[EXTRUDERS]; + static float dTerm[EXTRUDERS]; //int output; - static float pid_error; - static float temp_iState_min; - static float temp_iState_max; - // static float pid_input; - // static float pid_output; - static bool pid_reset; - + static float pid_error[EXTRUDERS]; + static float temp_iState_min[EXTRUDERS]; + static float temp_iState_max[EXTRUDERS]; + // static float pid_input[EXTRUDERS]; + // static float pid_output[EXTRUDERS]; + static bool pid_reset[EXTRUDERS]; #endif //PIDTEMP #ifdef WATCHPERIOD - static int watch_raw[3] = {-1000,-1000,-1000}; + static int watch_raw[EXTRUDERS] = { -1000 }; // the first value used for all static unsigned long watchmillis = 0; #endif //WATCHPERIOD // Init min and max temp with extreme values to prevent false errors during startup - static int minttemp_0 = 0; - static int maxttemp_0 = 16383; - //static int minttemp_1 = 0; - //static int maxttemp_1 = 16383; + static int minttemp[EXTRUDERS] = { 0 }; + static int maxttemp[EXTRUDERS] = { 16383 }; // the first value used for all static int bed_minttemp = 0; static int bed_maxttemp = 16383; + static int heater_pin_map[EXTRUDERS] = { HEATER_0_PIN +#if EXTRUDERS > 1 + , HEATER_1_PIN +#endif +#if EXTRUDERS > 2 + , HEATER_2_PIN +#endif +#if EXTRUDERS > 3 + #error Unsupported number of extruders +#endif + }; + static void *heater_ttbl_map[EXTRUDERS] = { (void *)heater_0_temptable +#if EXTRUDERS > 1 + , (void *)heater_1_temptable +#endif +#if EXTRUDERS > 2 + , (void *)heater_2_temptable +#endif +#if EXTRUDERS > 3 + #error Unsupported number of extruders +#endif + }; + static int heater_ttbllen_map[EXTRUDERS] = { heater_0_temptable_len +#if EXTRUDERS > 1 + , heater_1_temptable_len +#endif +#if EXTRUDERS > 2 + , heater_2_temptable_len +#endif +#if EXTRUDERS > 3 + #error Unsupported number of extruders +#endif + }; //=========================================================================== -//=============================functions ============================ +//============================= functions ============================ //=========================================================================== void updatePID() { #ifdef PIDTEMP - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; + for(int e = 0; e < EXTRUDERS; e++) { + temp_iState_max[e] = PID_INTEGRAL_DRIVE_MAX / Ki; + } #endif } @@ -119,92 +148,85 @@ void manage_heater() float pid_input; float pid_output; + if(temp_meas_ready != true) //better readability return; CRITICAL_SECTION_START; - temp_meas_ready = false; + temp_meas_ready = false; CRITICAL_SECTION_END; + for(int e = 0; e < EXTRUDERS; e++) + { + #ifdef PIDTEMP - pid_input = analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); + pid_input = analog2temp(current_raw[e], e); #ifndef PID_OPENLOOP - pid_error = pid_setpoint - pid_input; - if(pid_error > 10){ + pid_error[e] = pid_setpoint[e] - pid_input; + if(pid_error[e] > 10) { pid_output = PID_MAX; - pid_reset = true; + pid_reset[e] = true; } - else if(pid_error < -10) { + else if(pid_error[e] < -10) { pid_output = 0; - pid_reset = true; + pid_reset[e] = true; } else { - if(pid_reset == true) { - temp_iState = 0.0; - pid_reset = false; + if(pid_reset[e] == true) { + temp_iState[e] = 0.0; + pid_reset[e] = false; } - pTerm = Kp * pid_error; - temp_iState += pid_error; - temp_iState = constrain(temp_iState, temp_iState_min, temp_iState_max); - iTerm = Ki * temp_iState; + pTerm[e] = Kp * pid_error[e]; + temp_iState[e] += pid_error[e]; + temp_iState[e] = constrain(temp_iState[e], temp_iState_min[e], temp_iState_max[e]); + iTerm[e] = Ki * temp_iState[e]; //K1 defined in Configuration.h in the PID settings #define K2 (1.0-K1) - dTerm = (Kd * (pid_input - temp_dState))*K2 + (K1 * dTerm); - temp_dState = pid_input; -// #ifdef PID_ADD_EXTRUSION_RATE -// pTerm+=Kc*current_block->speed_e; //additional heating if extrusion speed is high -// #endif - pid_output = constrain(pTerm + iTerm - dTerm, 0, PID_MAX); - + dTerm[e] = (Kd * (pid_input - temp_dState[e]))*K2 + (K1 * dTerm[e]); + temp_dState[e] = pid_input; + pid_output = constrain(pTerm[e] + iTerm[e] - dTerm[e], 0, PID_MAX); } #endif //PID_OPENLOOP #ifdef PID_DEBUG - //SERIAL_ECHOLN(" PIDDEBUG Input "< minttemp_0) && (current_raw[TEMPSENSOR_HOTEND_0] < maxttemp_0)) { - analogWrite(HEATER_0_PIN, pid_output); + #else /* PID off */ + pid_output = 0; + if(current_raw[e] < target_raw[e]) { + pid_output = PID_MAX; } - else { - analogWrite(HEATER_0_PIN, 0); - } - #endif //PIDTEMP - - #ifndef PIDTEMP - // Check if temperature is within the correct range - if((current_raw[TEMPSENSOR_HOTEND_0] > minttemp_0) && (current_raw[TEMPSENSOR_HOTEND_0] < maxttemp_0)) { - if(current_raw[TEMPSENSOR_HOTEND_0] >= target_raw[TEMPSENSOR_HOTEND_0]) { - WRITE(HEATER_0_PIN,LOW); - } - else { - WRITE(HEATER_0_PIN,HIGH); - } - } - else { - WRITE(HEATER_0_PIN,LOW); - } #endif + + // Check if temperature is within the correct range + if((current_raw[e] > minttemp[e]) && (current_raw[e] < maxttemp[e])) + { + analogWrite(heater_pin_map[e], pid_output); + } + else { + analogWrite(heater_pin_map[e], 0); + } + + } // End extruder for loop if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) return; previous_millis_bed_heater = millis(); - #if TEMP_1_PIN > -1 + #if TEMP_BED_PIN > -1 // Check if temperature is within the correct range - if((current_raw[TEMPSENSOR_BED] > bed_minttemp) && (current_raw[TEMPSENSOR_BED] < bed_maxttemp)) { - if(current_raw[TEMPSENSOR_BED] >= target_raw[TEMPSENSOR_BED]) + if((current_raw_bed > bed_minttemp) && (current_raw_bed < bed_maxttemp)) { + if(current_raw_bed >= target_raw_bed) { - WRITE(HEATER_1_PIN,LOW); + WRITE(HEATER_BED_PIN,LOW); } else { - WRITE(HEATER_1_PIN,HIGH); + WRITE(HEATER_BED_PIN,HIGH); } } else { - WRITE(HEATER_1_PIN,LOW); + WRITE(HEATER_BED_PIN,LOW); } #endif } @@ -214,30 +236,38 @@ void manage_heater() // For a thermistor, it uses the RepRap thermistor temp table. // This is needed because PID in hydra firmware hovers around a given analog value, not a temp value. // This function is derived from inversing the logic from a portion of getTemperature() in FiveD RepRap firmware. -int temp2analog(int celsius) { - #ifdef HEATER_0_USES_THERMISTOR +int temp2analog(int celsius, uint8_t e) { + if(e >= EXTRUDERS) + { + SERIAL_ERROR_START; + SERIAL_ERROR((int)e); + SERIAL_ERRORLNPGM(" - Invalid extruder number!"); + kill(); + } + if(heater_ttbl_map[e] != 0) + { int raw = 0; byte i; + short (*tt)[][2] = (short (*)[][2])(heater_ttbl_map[e]); - for (i=1; i= EXTRUDERS) + { + SERIAL_ERROR_START; + SERIAL_ERROR((int)e); + SERIAL_ERRORLNPGM(" - Invalid extruder number !"); + kill(); + } + if(heater_ttbl_map[e] != 0) + { float celsius = 0; byte i; + short (*tt)[][2] = (short (*)[][2])(heater_ttbl_map[e]); + raw = (1023 * OVERSAMPLENR) - raw; - for (i=1; i raw) + if (PGM_RD_W((*tt)[i][0]) > raw) { - celsius = PGM_RD_W(heater_0_temptable[i-1][1]) + - (raw - PGM_RD_W(heater_0_temptable[i-1][0])) * - (float)(PGM_RD_W(heater_0_temptable[i][1]) - PGM_RD_W(heater_0_temptable[i-1][1])) / - (float)(PGM_RD_W(heater_0_temptable[i][0]) - PGM_RD_W(heater_0_temptable[i-1][0])); + celsius = PGM_RD_W((*tt)[i-1][1]) + + (raw - PGM_RD_W((*tt)[i-1][0])) * + (float)(PGM_RD_W((*tt)[i][1]) - PGM_RD_W((*tt)[i-1][1])) / + (float)(PGM_RD_W((*tt)[i][0]) - PGM_RD_W((*tt)[i-1][0])); break; } } // Overflow: Set to last value in the table - if (i == NUMTEMPS_HEATER_0) celsius = PGM_RD_W(heater_0_temptable[i-1][1]); + if (i == heater_ttbllen_map[e]) celsius = PGM_RD_W((*tt)[i-1][1]); return celsius; - #elif defined HEATER_0_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; - #else - #error PLEASE DEFINE HEATER TYPE - #endif + } + return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; } // Derived from RepRap FiveD extruder::getTemperature() @@ -314,7 +350,7 @@ float analog2tempBed(int raw) { raw = (1023 * OVERSAMPLENR) - raw; - for (i=1; i raw) { @@ -328,7 +364,7 @@ float analog2tempBed(int raw) { } // Overflow: Set to last value in the table - if (i == BNUMTEMPS) celsius = PGM_RD_W(bedtemptable[i-1][1]); + if (i == bedtemptable_len) celsius = PGM_RD_W(bedtemptable[i-1][1]); return celsius; @@ -342,6 +378,19 @@ float analog2tempBed(int raw) { void tp_init() { + // Finish init of mult extruder arrays + for(int e = 0; e < EXTRUDERS; e++) { + // populate with the first value +#ifdef WATCHPERIOD + watch_raw[e] = watch_raw[0]; +#endif + maxttemp[e] = maxttemp[0]; +#ifdef PIDTEMP + temp_iState_min[e] = 0.0; + temp_iState_max[e] = PID_INTEGRAL_DRIVE_MAX / Ki; +#endif //PIDTEMP + } + #if (HEATER_0_PIN > -1) SET_OUTPUT(HEATER_0_PIN); #endif @@ -351,11 +400,12 @@ void tp_init() #if (HEATER_2_PIN > -1) SET_OUTPUT(HEATER_2_PIN); #endif - - #ifdef PIDTEMP - temp_iState_min = 0.0; - temp_iState_max = PID_INTEGRAL_DRIVE_MAX / Ki; - #endif //PIDTEMP + #if (HEATER_BED_PIN > -1) + SET_OUTPUT(HEATER_BED_PIN); + #endif + #if (FAN_PIN > -1) + SET_OUTPUT(FAN_PIN); + #endif // Set analog inputs ADCSRA = 1< -1) + #if TEMP_BED_PIN < 8 + DIDR0 |= 1< 1) && defined(HEATER_1_MINTEMP) + minttemp[1] = temp2analog(HEATER_1_MINTEMP, 1); +#endif // MINTEMP 1 +#if (EXTRUDERS > 1) && defined(HEATER_1_MAXTEMP) + maxttemp[1] = temp2analog(HEATER_1_MAXTEMP, 1); +#endif //MAXTEMP 1 + +#if (EXTRUDERS > 2) && defined(HEATER_2_MINTEMP) + minttemp[2] = temp2analog(HEATER_2_MINTEMP, 2); +#endif //MINTEMP 2 +#if (EXTRUDERS > 2) && defined(HEATER_2_MAXTEMP) + maxttemp[2] = temp2analog(HEATER_2_MAXTEMP, 2); +#endif //MAXTEMP 2 #ifdef BED_MINTEMP - bed_minttemp = temp2analog(BED_MINTEMP); + bed_minttemp = temp2analogBed(BED_MINTEMP); #endif //BED_MINTEMP #ifdef BED_MAXTEMP - bed_maxttemp = temp2analog(BED_MAXTEMP); + bed_maxttemp = temp2analogBed(BED_MAXTEMP); #endif //BED_MAXTEMP } @@ -423,15 +488,16 @@ void tp_init() void setWatch() { #ifdef WATCHPERIOD - if(isHeatingHotend0()) + int t = 0; + for (int e = 0; e < EXTRUDERS; e++) { - watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + if(isHeatingHotend(e)) + { + t = max(t,millis()); + watch_raw[e] = current_raw[e]; + } } - else - { - watchmillis = 0; - } + watchmillis = t; #endif } @@ -458,6 +524,13 @@ void disable_heater() digitalWrite(HEATER_2_PIN,LOW); #endif #endif + + #if TEMP_BED_PIN > -1 + target_raw_bed=0; + #if HEATER_BED_PIN > -1 + digitalWrite(HEATER_BED_PIN,LOW); + #endif + #endif } // Timer 0 is shared with millies @@ -468,6 +541,7 @@ ISR(TIMER0_COMPB_vect) static unsigned long raw_temp_0_value = 0; static unsigned long raw_temp_1_value = 0; static unsigned long raw_temp_2_value = 0; + static unsigned long raw_temp_bed_value = 0; static unsigned char temp_state = 0; switch(temp_state) { @@ -492,7 +566,26 @@ ISR(TIMER0_COMPB_vect) #endif temp_state = 2; break; - case 2: // Prepare TEMP_1 + case 2: // Prepare TEMP_BED + #if (TEMP_BED_PIN > -1) + #if TEMP_BED_PIN > 7 + ADCSRB = 1< -1) + raw_temp_bed_value += ADC; + #endif + temp_state = 4; + break; + case 4: // Prepare TEMP_1 #if (TEMP_1_PIN > -1) #if TEMP_1_PIN > 7 ADCSRB = 1< -1) raw_temp_1_value += ADC; #endif - temp_state = 4; + temp_state = 6; break; - case 4: // Prepare TEMP_2 + case 6: // Prepare TEMP_2 #if (TEMP_2_PIN > -1) #if TEMP_2_PIN > 7 ADCSRB = 1< -1) raw_temp_2_value += ADC; #endif @@ -541,24 +634,34 @@ ISR(TIMER0_COMPB_vect) break; } - if(temp_count >= 16) // 6 ms * 16 = 96ms. + if(temp_count >= 16) // 8 ms * 16 = 128ms. { #ifdef HEATER_0_USES_AD595 current_raw[0] = raw_temp_0_value; #else current_raw[0] = 16383 - raw_temp_0_value; #endif - + +#if EXTRUDERS > 1 #ifdef HEATER_1_USES_AD595 + current_raw[1] = raw_temp_1_value; + #else + current_raw[1] = 16383 - raw_temp_1_value; + #endif +#endif + +#if EXTRUDERS > 2 + #ifdef HEATER_2_USES_AD595 current_raw[2] = raw_temp_2_value; #else current_raw[2] = 16383 - raw_temp_2_value; #endif +#endif #ifdef BED_USES_AD595 - current_raw[1] = raw_temp_1_value; + current_raw_bed = raw_temp_bed_value; #else - current_raw[1] = 16383 - raw_temp_1_value; + current_raw_bed = 16383 - raw_temp_bed_value; #endif temp_meas_ready = true; @@ -566,77 +669,36 @@ ISR(TIMER0_COMPB_vect) raw_temp_0_value = 0; raw_temp_1_value = 0; raw_temp_2_value = 0; - #ifdef HEATER_0_MAXTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] >= maxttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - digitalWrite(HEATER_0_PIN, 0); + raw_temp_bed_value = 0; + + for(int e = 0; e < EXTRUDERS; e++) { + if(current_raw[e] >= maxttemp[e]) { + target_raw[e] = 0; + digitalWrite(heater_pin_map[e], 0); SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MAXTEMP triggered !!"); + SERIAL_ERRORLN((int)e); + SERIAL_ERRORLNPGM(": Extruder switched off. MAXTEMP triggered !"); kill(); - } - #endif - #endif - #ifdef HEATER_1_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] >= maxttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - digitalWrite(HEATER_2_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MAXTEMP triggered !!"); - kill(); - } - #endif - #endif //MAXTEMP + } + if(current_raw[e] <= minttemp[e]) { + target_raw[e] = 0; + digitalWrite(heater_pin_map[e], 0); + SERIAL_ERROR_START; + SERIAL_ERRORLN(e); + SERIAL_ERRORLNPGM(": Extruder switched off. MINTEMP triggered !"); + kill(); + } + } - #ifdef HEATER_0_MINTEMP - #if (HEATER_0_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_0] <= minttemp_0) { - target_raw[TEMPSENSOR_HOTEND_0] = 0; - digitalWrite(HEATER_0_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 0 switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif - - #ifdef HEATER_1_MINTEMP - #if (HEATER_2_PIN > -1) - if(current_raw[TEMPSENSOR_HOTEND_1] <= minttemp_1) { - target_raw[TEMPSENSOR_HOTEND_1] = 0; - digitalWrite(HEATER_2_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature extruder 1 switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif //MAXTEMP - - #ifdef BED_MINTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] <= bed_minttemp) { - target_raw[1] = 0; - digitalWrite(HEATER_1_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperatur heated bed switched off. MINTEMP triggered !!"); - kill(); - } - #endif - #endif - - #ifdef BED_MAXTEMP - #if (HEATER_1_PIN > -1) - if(current_raw[1] >= bed_maxttemp) { - target_raw[1] = 0; - digitalWrite(HEATER_1_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); - kill(); - } - #endif - #endif +#if defined(BED_MAXTEMP) && (HEATER_BED_PIN > -1) + if(current_raw_bed >= bed_maxttemp) { + target_raw_bed = 0; + digitalWrite(HEATER_BED_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); + kill(); + } +#endif } } - diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 623f890bb..15bc8a835 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -31,95 +31,110 @@ void tp_init(); //initialise the heating void manage_heater(); //it is critical that this is called periodically. - -enum TempSensor {TEMPSENSOR_HOTEND_0=0,TEMPSENSOR_BED=1, TEMPSENSOR_HOTEND_1=2}; - //low leven conversion routines // do not use this routines and variables outsie of temperature.cpp -int temp2analog(int celsius); +int temp2analog(int celsius, uint8_t e); int temp2analogBed(int celsius); -float analog2temp(int raw); +float analog2temp(int raw, uint8_t e); float analog2tempBed(int raw); -extern int target_raw[3]; -extern int heatingtarget_raw[3]; -extern int current_raw[3]; +extern int target_raw[EXTRUDERS]; +extern int heatingtarget_raw[EXTRUDERS]; +extern int current_raw[EXTRUDERS]; +extern int target_raw_bed; +extern int current_raw_bed; extern float Kp,Ki,Kd,Kc; #ifdef PIDTEMP - extern float pid_setpoint ; + extern float pid_setpoint[EXTRUDERS]; #endif #ifdef WATCHPERIOD - extern int watch_raw[3] ; + extern int watch_raw[EXTRUDERS] ; extern unsigned long watchmillis; #endif - //high level conversion routines, for use outside of temperature.cpp //inline so that there is no performance decrease. //deg=degreeCelsius -FORCE_INLINE float degHotend0(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]);}; -FORCE_INLINE float degHotend1(){ return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]);}; -FORCE_INLINE float degBed() { return analog2tempBed(current_raw[TEMPSENSOR_BED]);}; -FORCE_INLINE float degHotend(uint8_t extruder){ - if(extruder == 0) return analog2temp(current_raw[TEMPSENSOR_HOTEND_0]); - if(extruder == 1) return analog2temp(current_raw[TEMPSENSOR_HOTEND_1]); +FORCE_INLINE float degHotend(uint8_t extruder) { + return analog2temp(current_raw[extruder], extruder); }; -FORCE_INLINE float degTargetHotend0() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]);}; -FORCE_INLINE float degTargetHotend1() { return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]);}; -FORCE_INLINE float degTargetHotend(uint8_t extruder){ - if(extruder == 0) return analog2temp(target_raw[TEMPSENSOR_HOTEND_0]); - if(extruder == 1) return analog2temp(target_raw[TEMPSENSOR_HOTEND_1]); +FORCE_INLINE float degBed() { + return analog2tempBed(current_raw_bed); }; -FORCE_INLINE float degTargetBed() { return analog2tempBed(target_raw[TEMPSENSOR_BED]);}; - -FORCE_INLINE void setTargetHotend0(const float &celsius) -{ - target_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius); - heatingtarget_raw[TEMPSENSOR_HOTEND_0]=temp2analog(celsius-HEATING_EARLY_FINISH_DEG_OFFSET); - #ifdef PIDTEMP - pid_setpoint = celsius; - #endif //PIDTEMP +FORCE_INLINE float degTargetHotend(uint8_t extruder) { + return analog2temp(target_raw[extruder], extruder); +}; + +FORCE_INLINE float degTargetBed() { + return analog2tempBed(target_raw_bed); +}; + +FORCE_INLINE void setTargetHotend(const float &celsius, uint8_t extruder) { + target_raw[extruder] = temp2analog(celsius, extruder); +#ifdef PIDTEMP + pid_setpoint[extruder] = celsius; +#endif //PIDTEMP +}; + +FORCE_INLINE void setTargetBed(const float &celsius) { + target_raw_bed = temp2analogBed(celsius); }; -FORCE_INLINE void setTargetHotend1(const float &celsius) { target_raw[TEMPSENSOR_HOTEND_1]=temp2analog(celsius);}; -FORCE_INLINE void setTargetHotend(const float &celcius, uint8_t extruder){ - if(extruder == 0) setTargetHotend0(celcius); - if(extruder == 1) setTargetHotend1(celcius); -}; -FORCE_INLINE void setTargetBed(const float &celsius) { target_raw[TEMPSENSOR_BED ]=temp2analogBed(celsius);}; -FORCE_INLINE bool isHeatingHotend0() {return heatingtarget_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0];}; -FORCE_INLINE bool isHeatingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1];}; FORCE_INLINE bool isHeatingHotend(uint8_t extruder){ - if(extruder == 0) return heatingtarget_raw[TEMPSENSOR_HOTEND_0] > current_raw[TEMPSENSOR_HOTEND_0]; - if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] > current_raw[TEMPSENSOR_HOTEND_1]; - return false; + return target_raw[extruder] > current_raw[extruder]; }; -FORCE_INLINE bool isHeatingBed() {return target_raw[TEMPSENSOR_BED] > current_raw[TEMPSENSOR_BED];}; -FORCE_INLINE bool isCoolingHotend0() {return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0];}; -FORCE_INLINE bool isCoolingHotend1() {return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1];}; -FORCE_INLINE bool isCoolingHotend(uint8_t extruder){ - if(extruder == 0) return target_raw[TEMPSENSOR_HOTEND_0] < current_raw[TEMPSENSOR_HOTEND_0]; - if(extruder == 1) return target_raw[TEMPSENSOR_HOTEND_1] < current_raw[TEMPSENSOR_HOTEND_1]; - return false; +FORCE_INLINE bool isHeatingBed() { + return target_raw_bed > current_raw_bed; }; -FORCE_INLINE bool isCoolingBed() {return target_raw[TEMPSENSOR_BED] < current_raw[TEMPSENSOR_BED];}; + +FORCE_INLINE bool isCoolingHotend(uint8_t extruder) { + return target_raw[extruder] < current_raw[extruder]; +}; + +FORCE_INLINE bool isCoolingBed() { + return target_raw_bed < current_raw_bed; +}; + +#define degHotend0() degHotend(0) +#define degTargetHotend0() degTargetHotend(0) +#define setTargetHotend0(_celsius) setTargetHotend((_celsius), 0) +#define isHeatingHotend0() isHeatingHotend(0) +#define isCoolingHotend0() isCoolingHotend(0) +#if EXTRUDERS > 1 +#define degHotend1() degHotend(1) +#define degTargetHotend1() degTargetHotend(1) +#define setTargetHotend1(_celsius) setTargetHotend((_celsius), 1) +#define isHeatingHotend1() isHeatingHotend(1) +#define isCoolingHotend1() isCoolingHotend(1) +#endif +#if EXTRUDERS > 2 +#define degHotend2() degHotend(2) +#define degTargetHotend2() degTargetHotend(2) +#define setTargetHotend2(_celsius) setTargetHotend((_celsius), 2) +#define isHeatingHotend2() isHeatingHotend(2) +#define isCoolingHotend2() isCoolingHotend(2) +#endif +#if EXTRUDERS > 3 +#error Invalid number of extruders +#endif FORCE_INLINE void autotempShutdown(){ #ifdef AUTOTEMP if(autotemp_enabled) { autotemp_enabled=false; - if(degTargetHotend0()>autotemp_min) - setTargetHotend0(0); + if(degTargetHotend(ACTIVE_EXTRUDER)>autotemp_min) + setTargetHotend(0,ACTIVE_EXTRUDER); } #endif } + void disable_heater(); void setWatch(); void updatePID(); diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 22d9f0248..30f5b62ac 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -5,10 +5,9 @@ #define OVERSAMPLENR 16 -#if (THERMISTORHEATER_0 == 1) || (THERMISTORHEATER_1 == 1) || (THERMISTORBED == 1) //100k bed thermistor +#if (THERMISTORHEATER_0 == 1) || (THERMISTORHEATER_1 == 1) || (THERMISTORHEATER_2 == 1) || (THERMISTORBED == 1) //100k bed thermistor -#define NUMTEMPS_1 61 -const short temptable_1[NUMTEMPS_1][2] PROGMEM = { +const short temptable_1[][2] PROGMEM = { { 23*OVERSAMPLENR , 300 }, { 25*OVERSAMPLENR , 295 }, { 27*OVERSAMPLENR , 290 }, @@ -72,9 +71,8 @@ const short temptable_1[NUMTEMPS_1][2] PROGMEM = { { 1008*OVERSAMPLENR , 0 } //safety }; #endif -#if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORBED == 2) //200k bed thermistor -#define NUMTEMPS_2 21 -const short temptable_2[NUMTEMPS_2][2] PROGMEM = { +#if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor +const short temptable_2[][2] PROGMEM = { {1*OVERSAMPLENR, 848}, {54*OVERSAMPLENR, 275}, {107*OVERSAMPLENR, 228}, @@ -99,9 +97,8 @@ const short temptable_2[NUMTEMPS_2][2] PROGMEM = { }; #endif -#if (THERMISTORHEATER_0 == 3) || (THERMISTORHEATER_1 == 3) || (THERMISTORBED == 3) //mendel-parts -#define NUMTEMPS_3 28 -const short temptable_3[NUMTEMPS_3][2] PROGMEM = { +#if (THERMISTORHEATER_0 == 3) || (THERMISTORHEATER_1 == 3) || (THERMISTORHEATER_2 == 3) || (THERMISTORBED == 3) //mendel-parts +const short temptable_3[][2] PROGMEM = { {1*OVERSAMPLENR,864}, {21*OVERSAMPLENR,300}, {25*OVERSAMPLENR,290}, @@ -133,10 +130,8 @@ const short temptable_3[NUMTEMPS_3][2] PROGMEM = { }; #endif -#if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORBED == 4) //10k thermistor - -#define NUMTEMPS_4 20 -const short temptable_4[NUMTEMPS_4][2] PROGMEM = { +#if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor +const short temptable_4[][2] PROGMEM = { {1*OVERSAMPLENR, 430}, {54*OVERSAMPLENR, 137}, {107*OVERSAMPLENR, 107}, @@ -160,10 +155,8 @@ const short temptable_4[NUMTEMPS_4][2] PROGMEM = { }; #endif -#if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) - -#define NUMTEMPS_5 61 -const short temptable_5[NUMTEMPS_5][2] PROGMEM = { +#if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) +const short temptable_5[][2] PROGMEM = { {1*OVERSAMPLENR, 713}, {18*OVERSAMPLENR, 316}, {35*OVERSAMPLENR, 266}, @@ -228,9 +221,8 @@ const short temptable_5[NUMTEMPS_5][2] PROGMEM = { }; #endif -#if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor -#define NUMTEMPS_6 36 -const short temptable_6[NUMTEMPS_6][2] PROGMEM = { +#if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor +const short temptable_6[][2] PROGMEM = { {28*OVERSAMPLENR, 250}, {31*OVERSAMPLENR, 245}, {35*OVERSAMPLENR, 240}, @@ -270,9 +262,8 @@ const short temptable_6[NUMTEMPS_6][2] PROGMEM = { }; #endif -#if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 -#define NUMTEMPS_7 54 -const short temptable_7[NUMTEMPS_7][2] PROGMEM = { +#if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 +const short temptable_7[][2] PROGMEM = { {46*OVERSAMPLENR, 270}, {50*OVERSAMPLENR, 265}, {54*OVERSAMPLENR, 260}, @@ -330,82 +321,52 @@ const short temptable_7[NUMTEMPS_7][2] PROGMEM = { }; #endif +#define _TT_NAME(_N) temptable_ ## _N +#define TT_NAME(_N) _TT_NAME(_N) - -#if THERMISTORHEATER_0 == 1 -#define NUMTEMPS_HEATER_0 NUMTEMPS_1 -#define heater_0_temptable temptable_1 -#elif THERMISTORHEATER_0 == 2 -#define NUMTEMPS_HEATER_0 NUMTEMPS_2 -#define heater_0_temptable temptable_2 -#elif THERMISTORHEATER_0 == 3 -#define NUMTEMPS_HEATER_0 NUMTEMPS_3 -#define heater_0_temptable temptable_3 -#elif THERMISTORHEATER_0 == 4 -#define NUMTEMPS_HEATER_0 NUMTEMPS_4 -#define heater_0_temptable temptable_4 -#elif THERMISTORHEATER_0 == 5 -#define NUMTEMPS_HEATER_0 NUMTEMPS_5 -#define heater_0_temptable temptable_5 -#elif THERMISTORHEATER_0 == 6 -#define NUMTEMPS_HEATER_0 NUMTEMPS_6 -#define heater_0_temptable temptable_6 -#elif THERMISTORHEATER_0 == 7 -#define NUMTEMPS_HEATER_0 NUMTEMPS_7 -#define heater_0_temptable temptable_7 -#elif defined HEATER_0_USES_THERMISTOR -#error No heater 0 thermistor table specified +#ifdef THERMISTORHEATER_0 + #define heater_0_temptable TT_NAME(THERMISTORHEATER_0) + #define heater_0_temptable_len (sizeof(heater_0_temptable)/sizeof(*heater_0_temptable)) +#else +#ifdef HEATER_0_USES_THERMISTOR + #error No heater 0 thermistor table specified +#else // HEATER_0_USES_THERMISTOR + #define heater_0_temptable 0 + #define heater_0_temptable_len 0 +#endif // HEATER_0_USES_THERMISTOR #endif -#if THERMISTORHEATER_1 == 1 -#define NUMTEMPS_HEATER_1 NUMTEMPS_1 -#define heater_1_temptable temptable_1 -#elif THERMISTORHEATER_1 == 2 -#define NUMTEMPS_HEATER_1 NUMTEMPS_2 -#define heater_1_temptable temptable_2 -#elif THERMISTORHEATER_1 == 3 -#define NUMTEMPS_HEATER_1 NUMTEMPS_3 -#define heater_1_temptable temptable_3 -#elif THERMISTORHEATER_1 == 4 -#define NUMTEMPS_HEATER_1 NUMTEMPS_4 -#define heater_1_temptable temptable_4 -#elif THERMISTORHEATER_1 == 5 -#define NUMTEMPS_HEATER_1 NUMTEMPS_5 -#define heater_1_temptable temptable_5 -#elif THERMISTORHEATER_1 == 6 -#define NUMTEMPS_HEATER_1 NUMTEMPS_6 -#define heater_1_temptable temptable_6 -#elif THERMISTORHEATER_1 == 7 -#define NUMTEMPS_HEATER_1 NUMTEMPS_7 -#define heater_1_temptable temptable_7 -#elif defined HEATER_1_USES_THERMISTOR -#error No heater 1 thermistor table specified +#ifdef THERMISTORHEATER_1 + #define heater_1_temptable TT_NAME(THERMISTORHEATER_1) + #define heater_1_temptable_len (sizeof(heater_1_temptable)/sizeof(*heater_1_temptable)) +#else +#ifdef HEATER_1_USES_THERMISTOR + #error No heater 1 thermistor table specified +#else // HEATER_1_USES_THERMISTOR + #define heater_1_temptable 0 + #define heater_1_temptable_len 0 +#endif // HEATER_1_USES_THERMISTOR #endif +#ifdef THERMISTORHEATER_2 + #define heater_2_temptable TT_NAME(THERMISTORHEATER_2) + #define heater_2_temptable_len (sizeof(heater_2_temptable)/sizeof(*heater_2_temptable)) +#else +#ifdef HEATER_2_USES_THERMISTOR + #error No heater 2 thermistor table specified +#else // HEATER_2_USES_THERMISTOR + #define heater_2_temptable 0 + #define heater_2_temptable_len 0 +#endif // HEATER_2_USES_THERMISTOR +#endif -#if THERMISTORBED == 1 -#define BNUMTEMPS NUMTEMPS_1 -#define bedtemptable temptable_1 -#elif THERMISTORBED == 2 -#define BNUMTEMPS NUMTEMPS_2 -#define bedtemptable temptable_2 -#elif THERMISTORBED == 3 -#define BNUMTEMPS NUMTEMPS_3 -#define bedtemptable temptable_3 -#elif THERMISTORBED == 4 -#define BNUMTEMPS NUMTEMPS_4 -#define bedtemptable temptable_4 -#elif THERMISTORBED == 5 -#define BNUMTEMPS NUMTEMPS_5 -#define bedtemptable temptable_5 -#elif THERMISTORBED == 6 -#define BNUMTEMPS NUMTEMPS_6 -#define bedtemptable temptable_6 -#elif THERMISTORBED == 7 -#define BNUMTEMPS NUMTEMPS_7 -#define bedtemptable temptable_7 -#elif defined BED_USES_THERMISTOR -#error No bed thermistor table specified +#ifdef THERMISTORBED + #define bedtemptable TT_NAME(THERMISTORBED) + #define bedtemptable_len (sizeof(bedtemptable)/sizeof(*bedtemptable)) +#else +#ifdef BED_USES_THERMISTOR + #error No bed thermistor table specified +#endif // BED_USES_THERMISTOR #endif #endif //THERMISTORTABLES_H_ From 43f5c3e82b99210bb9dbda5937bd442485da04b1 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Wed, 7 Dec 2011 19:55:17 +0100 Subject: [PATCH 148/430] Merge branch 'Marlin_v1', remote-tracking branch 'origin/Marlin_v1' into Marlin_v1 From 460b788d78c81a63cf49e910a65bcc306ce94c55 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Wed, 7 Dec 2011 20:54:34 +0100 Subject: [PATCH 149/430] repaired homing position setting. --- Marlin/Marlin.pde | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 226a7d35d..d0b5a0925 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -539,33 +539,52 @@ FORCE_INLINE void process_commands() #ifdef QUICK_HOME if( code_seen(axis_codes[0]) && code_seen(axis_codes[1]) ) //first diagonal move { - current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0; + current_position[X_AXIS] = 0;current_position[Y_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate =homing_feedrate[X_AXIS]; + destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR;destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; + feedrate = homing_feedrate[X_AXIS]; if(homing_feedrate[Y_AXIS] Date: Wed, 7 Dec 2011 20:56:47 +0100 Subject: [PATCH 150/430] moved to more dominant location. --- Marlin/Marlin.h | 1 + Marlin/Marlin.pde | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 910cf46ad..73ffd421a 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -4,6 +4,7 @@ // Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. // Licence: GPL #define HardwareSerial_h // trick to disable the standard HWserial +#include #include #if ARDUINO >= 100 #include "Arduino.h" diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d0b5a0925..ac42c1584 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -27,6 +27,8 @@ #include #include +#include + #include "EEPROMwrite.h" #include "fastio.h" #include "Configuration.h" @@ -39,7 +41,7 @@ #include "motion_control.h" #include "cardreader.h" #include "watchdog.h" -#include + #define VERSION_STRING "1.0.0 Beta 1" From 754d2d69b2e39d4a5ce0cae66974af289f4d5c8e Mon Sep 17 00:00:00 2001 From: Bernhard Date: Wed, 7 Dec 2011 23:08:13 +0100 Subject: [PATCH 151/430] z homing sound fix, for now until the actual cause is found.. --- Marlin/stepper.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 9cf8ddd17..e993d7303 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -706,6 +706,10 @@ void st_init() sei(); } +#define TEMPORARY_Z_HOME_SOUND_FIX +#ifdef TEMPORARY_Z_HOME_SOUND_FIX + #include +#endif // Block until all buffered steps are executed void st_synchronize() { @@ -713,6 +717,10 @@ void st_synchronize() manage_heater(); manage_inactivity(1); LCD_STATUS; + #ifdef TEMPORARY_Z_HOME_SOUND_FIX + _delay_ms(200); + _delay_ms(200); + #endif } } From bae1e422f615d585081078e88103af6742ded8c4 Mon Sep 17 00:00:00 2001 From: Keegi Date: Thu, 8 Dec 2011 12:25:32 +0200 Subject: [PATCH 152/430] Fix M201 not saving settings in all places, so the changes did not get written into EEPROM --- Marlin/Marlin.pde | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index ac42c1584..9deac7966 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -984,7 +984,11 @@ FORCE_INLINE void process_commands() case 201: // M201 for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + if(code_seen(axis_codes[i])) + { + max_acceleration_units_per_sq_second[i] = code_value(); + axis_steps_per_sqr_second[i] = code_value() * axis_steps_per_unit[i]; + } } break; #if 0 // Not used for Sprinter/grbl gen6 From 61c943b4bfdb80ca8145cb66d16169a8891bdb94 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 12:32:31 +0100 Subject: [PATCH 153/430] fixed the st_synchronize. it would have continued if there is only the last move of the buffer being stepped. --- Marlin/planner.h | 10 ++++++++++ Marlin/stepper.cpp | 15 +++++---------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/Marlin/planner.h b/Marlin/planner.h index 53ac3d844..b1e028f00 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -130,4 +130,14 @@ FORCE_INLINE block_t *plan_get_current_block() block->busy = true; return(block); } + +// Gets the current block. Returns NULL if buffer empty +FORCE_INLINE bool blocks_queued() +{ + if (block_buffer_head == block_buffer_tail) { + return false; + } + else + return true; +} #endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index e993d7303..2ef077346 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -706,22 +706,17 @@ void st_init() sei(); } -#define TEMPORARY_Z_HOME_SOUND_FIX -#ifdef TEMPORARY_Z_HOME_SOUND_FIX - #include -#endif + +#include // Block until all buffered steps are executed void st_synchronize() { - while(plan_get_current_block()) { + while(current_block!=0 || blocks_queued()) { manage_heater(); manage_inactivity(1); LCD_STATUS; - #ifdef TEMPORARY_Z_HOME_SOUND_FIX - _delay_ms(200); - _delay_ms(200); - #endif - } + //_delay_ms(1); + } } void st_set_position(const long &x, const long &y, const long &z, const long &e) From cc4a9cdb69081f4498a5268a682c8d9674f66bcb Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 12:33:00 +0100 Subject: [PATCH 154/430] added autostart procedure trigger to the ultralcd menu --- Marlin/cardreader.h | 1 + Marlin/cardreader.pde | 6 ++++-- Marlin/ultralcd.pde | 15 ++++++++++----- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 70244a877..70f0d2c1d 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -44,6 +44,7 @@ public: bool cardOK ; char filename[11]; bool filenameIsDir; + int lastnr; //last number of the autostart; private: SdFile root,*curDir,workDir,workDirParent,workDirParentParent; Sd2Card card; diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 1eb19ba00..8355f6aed 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -14,6 +14,7 @@ CardReader::CardReader() autostart_atmillis=0; autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. + lastnr=0; //power to SD reader #if SDPOWER > -1 SET_OUTPUT(SDPOWER); @@ -334,7 +335,7 @@ void CardReader::checkautostart(bool force) if(!cardOK) //fail return; } - static int lastnr=0; + char autoname[30]; sprintf(autoname,"auto%i.g",lastnr); for(int8_t i=0;i<(int)strlen(autoname);i++) @@ -434,7 +435,8 @@ void CardReader::printingHasFinished() sdprinting = false; if(SD_FINISHED_STEPPERRELEASE) { - finishAndDisableSteppers(); + //finishAndDisableSteppers(); + enquecommand("M84"); } autotempShutdown(); } diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 88f8f32fb..e89474ed2 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -437,7 +437,7 @@ void MainMenu::showStatus() force_lcd_update=false; } -enum {ItemP_exit, ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude, ItemP_disstep}; +enum {ItemP_exit, ItemP_autostart,ItemP_disstep,ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude}; //any action must not contain a ',' character anywhere, or this breaks: #define MENUITEM(repaint_action, click_action) \ @@ -458,6 +458,12 @@ void MainMenu::showPrepare() case ItemP_exit: MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; + case ItemP_autostart: + MENUITEM( lcdprintPGM(" Autostart") , BLOCK;card.lastnr=0;card.checkautostart(true);beepshort(); ) ; + break; + case ItemP_disstep: + MENUITEM( lcdprintPGM(" Disable Steppers") , BLOCK;enquecommand("M84");beepshort(); ) ; + break; case ItemP_home: MENUITEM( lcdprintPGM(" Auto Home") , BLOCK;enquecommand("G28 X-105 Y-105 Z0");beepshort(); ) ; break; @@ -470,15 +476,14 @@ void MainMenu::showPrepare() case ItemP_extrude: MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E50");beepshort(); ) ; break; - case ItemP_disstep: - MENUITEM( lcdprintPGM(" Disable Steppers") , BLOCK;enquecommand("M84");beepshort(); ) ; - break; + + default: break; } line++; } - updateActiveLines(ItemP_disstep,encoderpos); + updateActiveLines(ItemP_extrude,encoderpos); } enum {ItemT_exit,ItemT_speed,ItemT_flow,ItemT_nozzle,ItemT_fan}; From 5b4625f79c9f5176168fd101b1cae74e829f6d93 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 12:51:08 +0100 Subject: [PATCH 155/430] added a partial release option to "m84" aka "stepper release". If you do tiny layers, you might want to keep the z-axis powered to not loose height positioning after homeing. --- Marlin/Configuration.h | 1 + Marlin/Marlin.pde | 24 ++++++++++++++---------- Marlin/cardreader.pde | 2 +- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e8b960f78..febc3bcca 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -292,6 +292,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //#define ULTRA_LCD //general lcd support, also 16x2 //#define SDSUPPORT // Enable SD Card Support in Hardware Console #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? +#define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. //#define ULTIPANEL #ifdef ULTIPANEL diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index ac42c1584..f3182a7d0 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -903,18 +903,22 @@ FORCE_INLINE void process_commands() } else { - #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS - if(code_seen('E')) { + bool all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))|| (code_seen(axis_codes[3]))); + if(all_axis) + { + finishAndDisableSteppers(); + } + else + { st_synchronize(); - LCD_MESSAGEPGM("Free Move"); - disable_e(); + if(code_seen('X')) disable_x(); + if(code_seen('Y')) disable_y(); + if(code_seen('Z')) disable_z(); + #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS + if(code_seen('E')) disable_e(); + #endif + LCD_MESSAGEPGM("Partial Release"); } - else { - finishAndDisableSteppers(); - } - #else - finishAndDisableSteppers(); - #endif } break; case 85: // M85 diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 8355f6aed..6ad04068e 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -436,7 +436,7 @@ void CardReader::printingHasFinished() if(SD_FINISHED_STEPPERRELEASE) { //finishAndDisableSteppers(); - enquecommand("M84"); + enquecommand(SD_FINISHED_RELEASECOMMAND); } autotempShutdown(); } From 1ec0c3b68a250ef5d947509122777ed5ba43a91f Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 13:39:00 +0100 Subject: [PATCH 156/430] extruder runout prevention. --- Marlin/Configuration.h | 8 ++++++++ Marlin/Marlin.pde | 24 ++++++++++++++++++++---- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index febc3bcca..222fb3ade 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -156,6 +156,14 @@ #endif #endif // PIDTEMP +// extruder run-out prevention. +//if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded +//#define EXTRUDER_RUNOUT_PREVENT +#define EXTRUDER_RUNOUT_MINTEMP 190 +#define EXTRUDER_RUNOUT_SECONDS 60 +#define EXTRUDER_RUNOUT_EXTRUDE 10 //mm filament +#define EXTRUDER_RUNOUT_SPEED 20 //extrusion speed + //=========================================================================== //=============================Mechanical Settings=========================== diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index f3182a7d0..e80628e8b 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -499,19 +499,16 @@ FORCE_INLINE void process_commands() case 1: // G1 get_coordinates(); // For X Y Z E F prepare_move(); - previous_millis_cmd = millis(); //ClearToSend(); return; //break; case 2: // G2 - CW ARC get_arc_coordinates(); prepare_arc_move(true); - previous_millis_cmd = millis(); return; case 3: // G3 - CCW ARC get_arc_coordinates(); prepare_arc_move(false); - previous_millis_cmd = millis(); return; case 4: // G4 dwell LCD_MESSAGEPGM("DWELL..."); @@ -521,7 +518,7 @@ FORCE_INLINE void process_commands() st_synchronize(); codenum += millis(); // keep track of when we started waiting - + previous_millis_cmd = millis(); while(millis() < codenum ){ manage_heater(); } @@ -837,6 +834,7 @@ FORCE_INLINE void process_commands() } LCD_MESSAGEPGM("Heating done."); starttime=millis(); + previous_millis_cmd = millis(); } break; case 190: // M190 - Wait bed for heater to reach target. @@ -860,6 +858,7 @@ FORCE_INLINE void process_commands() manage_heater(); } LCD_MESSAGEPGM("Bed done."); + previous_millis_cmd = millis(); #endif break; @@ -1149,6 +1148,7 @@ FORCE_INLINE void get_arc_coordinates() void prepare_move() { + if (min_software_endstops) { if (destination[X_AXIS] < 0) destination[X_AXIS] = 0.0; if (destination[Y_AXIS] < 0) destination[Y_AXIS] = 0.0; @@ -1165,6 +1165,7 @@ void prepare_move() for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } + previous_millis_cmd = millis(); } void prepare_arc_move(char isclockwise) { @@ -1179,6 +1180,7 @@ void prepare_arc_move(char isclockwise) { for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } + previous_millis_cmd = millis(); } void manage_inactivity(byte debug) @@ -1194,6 +1196,20 @@ void manage_inactivity(byte debug) disable_z(); disable_e(); } + #ifdef EXTRUDER_RUNOUT_PREVENT + if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) + if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) + { + enable_e(); + float oldepos=current_position[E_AXIS]; + float oldedes=destination[E_AXIS]; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE, EXTRUDER_RUNOUT_SPEED*feedmultiply/60/100.0, active_extruder); + current_position[E_AXIS]=oldepos; + destination[E_AXIS]=oldedes; + plan_set_e_position(oldepos); + previous_millis_cmd=millis(); + } + #endif check_axes_activity(); } From 87fd249c4311fc3de7e1872f742b5ae3b632e85b Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 13:56:28 +0100 Subject: [PATCH 157/430] made runout prevention independent of tempeorarily set esteps --- Marlin/Configuration.h | 5 +++-- Marlin/Marlin.pde | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 222fb3ade..9574e0982 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -161,8 +161,9 @@ //#define EXTRUDER_RUNOUT_PREVENT #define EXTRUDER_RUNOUT_MINTEMP 190 #define EXTRUDER_RUNOUT_SECONDS 60 -#define EXTRUDER_RUNOUT_EXTRUDE 10 //mm filament -#define EXTRUDER_RUNOUT_SPEED 20 //extrusion speed +#define EXTRUDER_RUNOUT_ESTEPS 14 //mm filament +#define EXTRUDER_RUNOUT_EXTRUDE 100 //mm filament +#define EXTRUDER_RUNOUT_SPEED 1500 //extrusion speed //=========================================================================== diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index e80628e8b..30d65d3d9 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1203,7 +1203,9 @@ void manage_inactivity(byte debug) enable_e(); float oldepos=current_position[E_AXIS]; float oldedes=destination[E_AXIS]; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE, EXTRUDER_RUNOUT_SPEED*feedmultiply/60/100.0, active_extruder); + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], + EXTRUDER_RUNOUT_SPEED*feedmultiply/60/100.0*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); current_position[E_AXIS]=oldepos; destination[E_AXIS]=oldedes; plan_set_e_position(oldepos); From aa4f9a64746f213cafce7cf58414d47619824a2b Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 14:07:32 +0100 Subject: [PATCH 158/430] better values. --- Marlin/Configuration.h | 8 ++++---- Marlin/Marlin.pde | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 9574e0982..47ad0b732 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -160,10 +160,10 @@ //if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded //#define EXTRUDER_RUNOUT_PREVENT #define EXTRUDER_RUNOUT_MINTEMP 190 -#define EXTRUDER_RUNOUT_SECONDS 60 -#define EXTRUDER_RUNOUT_ESTEPS 14 //mm filament -#define EXTRUDER_RUNOUT_EXTRUDE 100 //mm filament -#define EXTRUDER_RUNOUT_SPEED 1500 //extrusion speed +#define EXTRUDER_RUNOUT_SECONDS 60. +#define EXTRUDER_RUNOUT_ESTEPS 14. //mm filament +#define EXTRUDER_RUNOUT_EXTRUDE 50. //mm filament +#define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed //=========================================================================== diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 30d65d3d9..b3291cb0b 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1205,7 +1205,7 @@ void manage_inactivity(byte debug) float oldedes=destination[E_AXIS]; plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], - EXTRUDER_RUNOUT_SPEED*feedmultiply/60/100.0*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); + EXTRUDER_RUNOUT_SPEED/60.*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); current_position[E_AXIS]=oldepos; destination[E_AXIS]=oldedes; plan_set_e_position(oldepos); From 2bc5e7ec9efeeb2c72b1448565ce3c5481248f3b Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 15:09:52 +0100 Subject: [PATCH 159/430] prevent too long extrudes, or too cold extrudes --- Marlin/Configuration.h | 13 ++++++++++--- Marlin/Marlin.pde | 27 +++++++++++++++++++-------- Marlin/planner.cpp | 28 ++++++++++++++++++++++++++-- Marlin/planner.h | 2 ++ 4 files changed, 57 insertions(+), 13 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 47ad0b732..2b60c3602 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -20,9 +20,6 @@ // if unwanted behavior is observed on a user's machine when running at very slow speeds. #define MINIMUM_PLANNER_SPEED 2.0 // (mm/sec) -// If defined the movements slow down when the look ahead buffer is only half full -#define SLOWDOWN - // BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration //// The following define selects which electronics board you have. Please choose the one that matches your setup @@ -248,7 +245,12 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DEFAULT_XYJERK 20.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) +// If defined the movements slow down when the look ahead buffer is only half full +#define SLOWDOWN +//default stepper release if idle +#define DEFAULT_STEPPER_DEACTIVE_TIME 60 +#define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered //=========================================================================== @@ -338,6 +340,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define AUTOTEMP_OLDWEIGHT 0.98 #endif +//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit +//can be software-disabled for whatever purposes by +#define PREVENT_DANGEROUS_EXTRUDE +#define EXTRUDE_MINTEMP 190 +#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b3291cb0b..c6251927e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -110,6 +110,7 @@ // M206 - set additional homeing offset // M220 - set speed factor override percentage S:factor in percent // M301 - Set PID parameters P I and D +// M302 - Allow cold extrudes // M400 - Finish all moves // M500 - stores paramters in EEPROM // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). @@ -176,7 +177,8 @@ const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 //Inactivity shutdown variables static unsigned long previous_millis_cmd = 0; static unsigned long max_inactive_time = 0; -static unsigned long stepper_inactive_time = 0; +static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000; +static unsigned long last_stepperdisabled_time=30*1000; //first release check after 30 seconds static unsigned long starttime=0; static unsigned long stoptime=0; @@ -1057,6 +1059,12 @@ FORCE_INLINE void process_commands() } break; #endif //PIDTEMP + + case 302: // finish all moves + { + allow_cold_extrudes(true); + } + break; case 400: // finish all moves { st_synchronize(); @@ -1188,14 +1196,17 @@ void manage_inactivity(byte debug) if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if( (millis()-previous_millis_cmd) > stepper_inactive_time ) - if(stepper_inactive_time) - { - disable_x(); - disable_y(); - disable_z(); - disable_e(); + if(stepper_inactive_time) + if( (millis()-last_stepperdisabled_time) > stepper_inactive_time ) + { + if(previous_millis_cmd>last_stepperdisabled_time) + last_stepperdisabled_time=previous_millis_cmd; + else + { + enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + last_stepperdisabled_time=millis(); } + } #ifdef EXTRUDER_RUNOUT_PREVENT if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index a8f41d353..df255443d 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -106,7 +106,9 @@ volatile unsigned char block_buffer_tail; // Index of the block to pro //=========================================================================== //=============================private variables ============================ //=========================================================================== - +#ifdef PREVENT_DANGEROUS_EXTRUDE + bool allow_cold_extrude=false; +#endif #ifdef XY_FREQUENCY_LIMIT // Used for the frequency limit static unsigned char old_direction_bits = 0; // Old direction bits. Used for speed calculations @@ -465,7 +467,23 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa target[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); target[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); - target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + #ifdef PREVENT_DANGEROUS_EXTRUDE + if(target[E_AXIS]!=position[E_AXIS]) + if(degHotend(active_extruder)axis_steps_per_unit[E_AXIS]*EXTRUDE_MAXLENGTH) + { + position[E_AXIS]=target[E_AXIS]; //behave as if the move really took place, but ignore E part + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM(" too long extrusion prevented"); + } + #endif // Prepare to set up new block block_t *block = &block_buffer[block_buffer_head]; @@ -786,3 +804,9 @@ uint8_t movesplanned() return (block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); } +void allow_cold_extrudes(bool allow) +{ + #ifdef PREVENT_DANGEROUS_EXTRUDE + allow_cold_extrude=allow; + #endif +} \ No newline at end of file diff --git a/Marlin/planner.h b/Marlin/planner.h index b1e028f00..b2d1c6c6c 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -140,4 +140,6 @@ FORCE_INLINE bool blocks_queued() else return true; } + +void allow_cold_extrudes(bool allow); #endif From dde4b40fa9e312bb6cb76b7fe9c8e0f8a2e28caf Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 15:37:24 +0100 Subject: [PATCH 160/430] disable steppers in runout prevention --- Marlin/Marlin.pde | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c6251927e..05924b93a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1221,6 +1221,7 @@ void manage_inactivity(byte debug) destination[E_AXIS]=oldedes; plan_set_e_position(oldepos); previous_millis_cmd=millis(); + enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); } #endif check_axes_activity(); From b1d84d879b7ddb6119ce7c8a5ce2c8df9986636e Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 16:13:58 +0100 Subject: [PATCH 161/430] st_synchronize back to normal.. --- Marlin/stepper.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 2ef077346..33c7e154c 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -707,15 +707,13 @@ void st_init() } -#include // Block until all buffered steps are executed void st_synchronize() { - while(current_block!=0 || blocks_queued()) { + while( blocks_queued()) { manage_heater(); manage_inactivity(1); LCD_STATUS; - //_delay_ms(1); } } From 88ee053af0a7d71cea23cbc1adf5b101e0b1a7fa Mon Sep 17 00:00:00 2001 From: Bernhard Date: Fri, 9 Dec 2011 17:06:56 +0100 Subject: [PATCH 162/430] heating up santity, formarly knows as "watchdog", but renamed due to the existance of the real watchdog, works now. --- Marlin/Configuration.h | 10 +++++----- Marlin/temperature.cpp | 19 ++++++++++++++++--- Marlin/temperature.h | 8 ++++---- 3 files changed, 25 insertions(+), 12 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 2b60c3602..e2fe8403e 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -58,11 +58,11 @@ #define BED_CHECK_INTERVAL 5000 //ms -//// Experimental watchdog and minimal temp -// The watchdog waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -// If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 -/// CURRENTLY NOT IMPLEMENTED AND UNUSEABLE -//#define WATCHPERIOD 5000 //5 seconds +//// Heating sanity check: +// This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. +// It can be reset with another M104/M109 +//#define WATCHPERIOD 20000 //20 seconds // Actual temperature must be close to target for this long before M109 returns success //#define TEMP_RESIDENCY_TIME 20 // (seconds) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index ac5aeaa3e..785da6c92 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -88,7 +88,7 @@ static unsigned long previous_millis_bed_heater; #endif //PIDTEMP #ifdef WATCHPERIOD - static int watch_raw[3] = {-1000,-1000,-1000}; + static int watch_oldtemp[3] = {0,0,0}; static unsigned long watchmillis = 0; #endif //WATCHPERIOD @@ -186,7 +186,20 @@ void manage_heater() WRITE(HEATER_0_PIN,LOW); } #endif - + + #ifdef WATCHPERIOD + if(watchmillis && millis() - watchmillis > WATCHPERIOD){ + if(watch_oldtemp[TEMPSENSOR_HOTEND_0] >= degHotend(active_extruder)){ + setTargetHotend(0,active_extruder); + LCD_MESSAGEPGM("Heating failed"); + SERIAL_ECHO_START; + SERIAL_ECHOLN("Heating failed"); + }else{ + watchmillis = 0; + } + } + #endif + if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) return; previous_millis_bed_heater = millis(); @@ -426,7 +439,7 @@ void setWatch() if(isHeatingHotend0()) { watchmillis = max(1,millis()); - watch_raw[TEMPSENSOR_HOTEND_0] = current_raw[TEMPSENSOR_HOTEND_0]; + watch_oldtemp[TEMPSENSOR_HOTEND_0] = degHotend(0); } else { diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 623f890bb..fae27f734 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -49,10 +49,10 @@ extern float Kp,Ki,Kd,Kc; extern float pid_setpoint ; #endif -#ifdef WATCHPERIOD - extern int watch_raw[3] ; - extern unsigned long watchmillis; -#endif +// #ifdef WATCHPERIOD +// extern int watch_raw[3] ; +// extern unsigned long watchmillis; +// #endif From 01001b89d200111f95be0d7ce87aa16e91ddf998 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 11 Dec 2011 15:42:56 +0100 Subject: [PATCH 163/430] repaired nozzle runout prevention to not collide with automatic stepper disabeling. --- Marlin/Configuration.h | 3 +-- Marlin/Marlin.pde | 12 +++++++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e2fe8403e..dc8c799f5 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -157,9 +157,8 @@ //if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded //#define EXTRUDER_RUNOUT_PREVENT #define EXTRUDER_RUNOUT_MINTEMP 190 -#define EXTRUDER_RUNOUT_SECONDS 60. +#define EXTRUDER_RUNOUT_SECONDS 30. #define EXTRUDER_RUNOUT_ESTEPS 14. //mm filament -#define EXTRUDER_RUNOUT_EXTRUDE 50. //mm filament #define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 538920da2..0a8a80c4c 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -235,7 +235,9 @@ void setup() SERIAL_PROTOCOLLNPGM("start"); SERIAL_ECHO_START; SERIAL_ECHOPGM("Free Memory:"); - SERIAL_ECHOLN(freeMemory()); + SERIAL_ECHO(freeMemory()); + SERIAL_ECHOPGM(" PlannerBufferBytes:"); + SERIAL_ECHOLN((int)sizeof(block_t)*BLOCK_BUFFER_SIZE); for(int8_t i = 0; i < BUFSIZE; i++) { fromsd[i] = false; @@ -1207,7 +1209,8 @@ void manage_inactivity(byte debug) last_stepperdisabled_time=previous_millis_cmd; else { - enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + if( (X_ENABLE_ON && (READ(X_ENABLE_PIN)!=0)) || (!X_ENABLE_ON && READ(X_ENABLE_PIN)==0) ) + enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); last_stepperdisabled_time=millis(); } } @@ -1215,6 +1218,7 @@ void manage_inactivity(byte debug) if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) { + bool oldstatus=READ(E_ENABLE_PIN); enable_e(); float oldepos=current_position[E_AXIS]; float oldedes=destination[E_AXIS]; @@ -1225,7 +1229,9 @@ void manage_inactivity(byte debug) destination[E_AXIS]=oldedes; plan_set_e_position(oldepos); previous_millis_cmd=millis(); - enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + //enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + st_synchronize(); + WRITE(E_ENABLE_PIN,oldstatus); } #endif check_axes_activity(); From 82c99625facf9711dc974759f3ed31320abd90d2 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 11 Dec 2011 22:10:06 +0100 Subject: [PATCH 164/430] instant stop of sd prints from the panel. --- Marlin/cardreader.pde | 1 + Marlin/stepper.cpp | 9 +++++++++ Marlin/stepper.h | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 6ad04068e..735a1cdcd 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -432,6 +432,7 @@ void CardReader::updir() void CardReader::printingHasFinished() { + quickStop(); sdprinting = false; if(SD_FINISHED_STEPPERRELEASE) { diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 33c7e154c..51a9fe071 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -752,3 +752,12 @@ void finishAndDisableSteppers() disable_z(); disable_e(); } + +void quickStop() +{ + DISABLE_STEPPER_DRIVER_INTERRUPT(); + while(blocks_queued()) + plan_discard_current_block(); + ENABLE_STEPPER_DRIVER_INTERRUPT(); +} + diff --git a/Marlin/stepper.h b/Marlin/stepper.h index fd388ca68..37ce3b546 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -52,5 +52,5 @@ void finishAndDisableSteppers(); extern block_t *current_block; // A pointer to the block currently being traced - +void quickStop(); #endif From 06411d5c9e39bda41be21d56cec0f4cc21e2e612 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 11 Dec 2011 22:18:50 +0100 Subject: [PATCH 165/430] ultralcd can now also stop the wait loop for the hot-end m109 heating when stopping sd prints. --- Marlin/Marlin.h | 1 + Marlin/Marlin.pde | 3 ++- Marlin/cardreader.pde | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 73ffd421a..8f9824408 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -131,5 +131,6 @@ extern float homing_feedrate[]; extern bool axis_relative_modes[]; extern float current_position[NUM_AXIS] ; extern float add_homeing[3]; +extern bool stop_heating_wait; #endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 0a8a80c4c..4d031ea78 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -138,7 +138,7 @@ int saved_feedmultiply; volatile bool feedmultiplychanged=false; float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0}; float add_homeing[3]={0,0,0}; - +bool stop_heating_wait=false; //=========================================================================== //=============================private variables============================= //=========================================================================== @@ -825,6 +825,7 @@ FORCE_INLINE void process_commands() } manage_heater(); LCD_STATUS; + if(stop_heating_wait) break; #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 735a1cdcd..2cf44e6cd 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -434,6 +434,7 @@ void CardReader::printingHasFinished() { quickStop(); sdprinting = false; + stop_heating_wait=true; if(SD_FINISHED_STEPPERRELEASE) { //finishAndDisableSteppers(); From 3320a5b37d9125d29dba6108a2846257c3d3b470 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 11 Dec 2011 22:25:52 +0100 Subject: [PATCH 166/430] make autotemp compatile for use without pid --- Marlin/temperature.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/temperature.h b/Marlin/temperature.h index fae27f734..2580947e7 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -23,6 +23,7 @@ #include "Marlin.h" #include "fastio.h" +#include "planner.h" #ifdef PID_ADD_EXTRUSION_RATE #include "stepper.h" #endif From e017228569511382298c2ff9a347a78542351cd6 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 12 Dec 2011 19:34:37 +0100 Subject: [PATCH 167/430] Merged multiple extruder support. Soft PWM. (Sanguinololu can also have PID temperature control) Interrupt save WRITE for addresses > 0x0FF --- Marlin/Configuration.h | 95 +- Marlin/Marlin.h | 2 - Marlin/Marlin.pde | 46 +- Marlin/fastio.h | 5153 ++++++++++++++++++++-------------------- Marlin/pins.h | 1473 ++++++------ Marlin/planner.cpp | 4 +- Marlin/stepper.cpp | 80 +- Marlin/stepper.h | 15 + Marlin/temperature.cpp | 105 +- Marlin/temperature.h | 285 +-- Marlin/ultralcd.pde | 3680 ++++++++++++++-------------- 11 files changed, 5525 insertions(+), 5413 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 346db503f..d4e23bd16 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,11 +4,11 @@ // This determines the communication speed of the printer -//#define BAUDRATE 250000 -#define BAUDRATE 115200 +#define BAUDRATE 250000 +//#define BAUDRATE 115200 //#define BAUDRATE 230400 -#define EXTRUDERS 2 +#define EXTRUDERS 1 // Frequency limit // See nophead's blog for more info @@ -32,7 +32,7 @@ // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, // Teensylu = 8 -#define MOTHERBOARD 33 +#define MOTHERBOARD 7 //=========================================================================== //=============================Thermal Settings ============================ @@ -46,16 +46,21 @@ // 5 is ParCan supplied 104GT-2 100K // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define THERMISTORHEATER_0 1 -#define THERMISTORHEATER_1 1 -#define HEATER_0_USES_THERMISTOR -#define HEATER_1_USES_THERMISTOR -//#define HEATER_0_USES_AD595 + +//#define THERMISTORHEATER_0 3 +//#define THERMISTORHEATER_1 1 +//#define THERMISTORHEATER_2 1 + +//#define HEATER_0_USES_THERMISTOR +//#define HEATER_1_USES_THERMISTOR +//#define HEATER_2_USES_THERMISTOR +#define HEATER_0_USES_AD595 //#define HEATER_1_USES_AD595 +//#define HEATER_2_USES_AD595 // Select one of these only to define how the bed temp is read. -#define THERMISTORBED 1 -#define BED_USES_THERMISTOR +//#define THERMISTORBED 1 +//#define BED_USES_THERMISTOR //#define BED_USES_AD595 #define BED_CHECK_INTERVAL 5000 //ms @@ -73,7 +78,8 @@ //// The minimal temperature defines the temperature below which the heater will not be enabled #define HEATER_0_MINTEMP 5 //#define HEATER_1_MINTEMP 5 -#define BED_MINTEMP 5 +//#define HEATER_2_MINTEMP 5 +//#define BED_MINTEMP 5 // When temperature exceeds max temp, your heater will be switched off. @@ -81,7 +87,8 @@ // You should use MINTEMP for thermistor short/failure protection. #define HEATER_0_MAXTEMP 275 //#define HEATER_1_MAXTEMP 275 -#define BED_MAXTEMP 150 +//#define HEATER_2_MAXTEMP 275 +//#define BED_MAXTEMP 150 // Wait for Cooldown @@ -92,21 +99,17 @@ // Heating is finished if a temperature close to this degree shift is reached #define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree + // PID settings: // Uncomment the following line to enable PID support. - #define PIDTEMP +#define PID_MAX 255 // limits current to nozzle; 255=full current #ifdef PIDTEMP - #if MOTHERBOARD == 62 - #error Sanguinololu does not support PID, sorry. Please disable it. - #endif //#define PID_DEBUG // Sends debug data to the serial port. //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % - - #define PID_MAX 255 // limits current to nozzle; 255=full current #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term #define K1 0.95 //smoothing factor withing the PID - #define PID_dT 0.1 //sampling period of the PID + #define PID_dT 0.128 //sampling period of the PID //To develop some PID settings for your machine, you can initiall follow // the Ziegler-Nichols method. @@ -130,14 +133,14 @@ // #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) // Ultitmaker -// #define DEFAULT_Kp 22.2 -// #define DEFAULT_Ki (1.25*PID_dT) -// #define DEFAULT_Kd (99/PID_dT) + #define DEFAULT_Kp 22.2 + #define DEFAULT_Ki (1.25*PID_dT) + #define DEFAULT_Kd (99/PID_dT) // Makergear - #define DEFAULT_Kp 7.0 - #define DEFAULT_Ki 0.1 - #define DEFAULT_Kd 12 +// #define DEFAULT_Kp 7.0 +// #define DEFAULT_Ki 0.1 +// #define DEFAULT_Kd 12 // Mendel Parts V9 on 12V // #define DEFAULT_Kp 63.0 @@ -170,12 +173,12 @@ #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false -//#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing +#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -186,7 +189,7 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t // Disables axis when it's not being used. #define DISABLE_X false #define DISABLE_Y false -#define DISABLE_Z true +#define DISABLE_Z false #define DISABLE_E false // For all extruders // Inverting axis direction @@ -195,11 +198,11 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t //#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true //#define INVERT_E*_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false, used for all extruders -#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false -#define INVERT_E1_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false //// ENDSTOP SETTINGS: @@ -208,15 +211,15 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define Y_HOME_DIR -1 #define Z_HOME_DIR -1 -#define min_software_endstops false //If true, axis won't move to coordinates less than zero. -#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 210 -#define Y_MAX_LENGTH 210 -#define Z_MAX_LENGTH 210 +#define min_software_endstops true //If true, axis won't move to coordinates less than zero. +#define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 205 +#define Y_MAX_LENGTH 205 +#define Z_MAX_LENGTH 200 //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -#define HOMING_FEEDRATE {30*60, 30*60, 2*60, 0} // set the homing speeds (mm/min) +#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) //homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: #define X_HOME_RETRACT_MM 5 @@ -230,9 +233,9 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t // default settings -//#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker -//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 67} //sells mendel with v9 extruder -#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder +#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker +//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 360} //sells mendel with v9 extruder +//#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. @@ -283,10 +286,10 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t // hooke's law says: force = k * distance // bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant // so: v ^ 2 is proportional to number of steps we advance the extruder -//#define ADVANCE +#define ADVANCE #ifdef ADVANCE - #define EXTRUDER_ADVANCE_K .3 + #define EXTRUDER_ADVANCE_K .0 #define D_FILAMENT 2.85 #define STEPS_MM_E 836 @@ -298,10 +301,10 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -#define SDSUPPORT // Enable SD Card Support in Hardware Console +//#define SDSUPPORT // Enable SD Card Support in Hardware Console #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? -//#define ULTIPANEL +#define ULTIPANEL #ifdef ULTIPANEL //#define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 626f61b6c..d4654a386 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -57,8 +57,6 @@ const prog_char echomagic[] PROGMEM ="echo:"; #define SERIAL_ECHOPAIR(name,value) {SERIAL_ECHOPGM(name);SERIAL_ECHO(value);} -// Macro for getting current active extruder -#define ACTIVE_EXTRUDER (active_extruder) //things to write to serial from Programmemory. saves 400 to 2k of RAM. #define SerialprintPGM(x) serialprintPGM(MYPGM(x)) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 9b765ebd0..183002fe2 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -465,16 +465,16 @@ FORCE_INLINE bool code_seen(char code) plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); \ destination[LETTER##_AXIS] = 1.5 * LETTER##_MAX_LENGTH * LETTER##_HOME_DIR; \ feedrate = homing_feedrate[LETTER##_AXIS]; \ - prepare_move(); \ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ \ current_position[LETTER##_AXIS] = 0;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = -LETTER##_HOME_RETRACT_MM * LETTER##_HOME_DIR;\ - prepare_move(); \ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ \ destination[LETTER##_AXIS] = 2*LETTER##_HOME_RETRACT_MM * LETTER##_HOME_DIR;\ feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ - prepare_move(); \ + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ \ current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? 0 : LETTER##_MAX_LENGTH;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ @@ -541,6 +541,7 @@ FORCE_INLINE void process_commands() if( code_seen(axis_codes[0]) && code_seen(axis_codes[1]) ) //first diagonal move { current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; @@ -723,7 +724,7 @@ FORCE_INLINE void process_commands() if (code_seen('S')) setTargetBed(code_value()); break; case 105 : // M105 - tmp_extruder = ACTIVE_EXTRUDER; + tmp_extruder = active_extruder; if(code_seen('T')) { tmp_extruder = code_value(); if(tmp_extruder >= EXTRUDERS) { @@ -743,6 +744,10 @@ FORCE_INLINE void process_commands() #else SERIAL_ERROR_START; SERIAL_ERRORLNPGM("No thermistors - no temp"); + #endif + #ifdef PIDTEMP + SERIAL_PROTOCOLPGM(" @:"); + SERIAL_PROTOCOL(getHeaterPower(tmp_extruder)); #endif SERIAL_PROTOCOLLN(""); return; @@ -788,24 +793,26 @@ FORCE_INLINE void process_commands() while((residencyStart == -1) || (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else - while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { + while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME if( (millis() - codenum) > 1000 ) { //Print Temp Reading and remaining time every 1 second while heating up/cooling down SERIAL_PROTOCOLPGM("T:"); - SERIAL_PROTOCOLLN( degHotend(tmp_extruder) ); + SERIAL_PROTOCOL( degHotend(tmp_extruder) ); SERIAL_PROTOCOLPGM(" E:"); SERIAL_PROTOCOLLN( (int)tmp_extruder ); - SERIAL_PROTOCOLPGM(" W:"); - if(residencyStart > -1) - { - codenum = TEMP_RESIDENCY_TIME - ((millis() - residencyStart) / 1000); - SERIAL_PROTOCOLLN( codenum ); - } - else - { - SERIAL_PROTOCOLLN( "?" ); - } + #ifdef TEMP_RESIDENCY_TIME + SERIAL_PROTOCOLPGM(" W:"); + if(residencyStart > -1) + { + codenum = TEMP_RESIDENCY_TIME - ((millis() - residencyStart) / 1000); + SERIAL_PROTOCOLLN( codenum ); + } + else + { + SERIAL_PROTOCOLLN( "?" ); + } + #endif codenum = millis(); } manage_heater(); @@ -834,11 +841,11 @@ FORCE_INLINE void process_commands() { if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { - float tt=degHotend(ACTIVE_EXTRUDER); + float tt=degHotend(active_extruder); SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL(tt); SERIAL_PROTOCOLPGM(" E:"); - SERIAL_PROTOCOLLN( (int)tmp_extruder ); + SERIAL_PROTOCOLLN( (int)active_extruder ); SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOLLN(degBed()); codenum = millis(); @@ -1191,6 +1198,7 @@ void manage_inactivity(byte debug) void kill() { + cli(); // Stop interrupts disable_heater(); disable_x(); @@ -1207,4 +1215,4 @@ void kill() while(1); // Wait for reset } - + diff --git a/Marlin/fastio.h b/Marlin/fastio.h index 634571e3a..5188a0681 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -1,2573 +1,2582 @@ -/* - This code contibuted by Triffid_Hunter and modified by Kliment - why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html -*/ - -#ifndef _ARDUINO_H -#define _ARDUINO_H - -#include - -/* - utility functions -*/ - -#ifndef MASK -/// MASKING- returns \f$2^PIN\f$ - #define MASK(PIN) (1 << PIN) -#endif - -/* - magic I/O routines - - now you can simply SET_OUTPUT(STEP); WRITE(STEP, 1); WRITE(STEP, 0); -*/ - -/// Read a pin -#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) -/// write to a pin -#define _WRITE(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) -//#define _WRITE(IO, v) do { #if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_START; if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); };#if (DIO ## IO ## _WPORT >= 0x100) CRITICAL_SECTION_END; } while (0) -/// toggle a pin -#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) - -/// set pin as input -#define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) -/// set pin as output -#define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= MASK(DIO ## IO ## _PIN); } while (0) - -/// check if pin is an input -#define _GET_INPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) == 0) -/// check if pin is an output -#define _GET_OUTPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) != 0) - -// why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html - -/// Read a pin wrapper -#define READ(IO) _READ(IO) -/// Write to a pin wrapper -#define WRITE(IO, v) _WRITE(IO, v) -#if EXTRUDERS > 2 - #define WRITE_E_STEP(v) { if(ACTIVE_EXTRUDER == 2) { WRITE(E2_STEP_PIN, v); } else { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }}} - #define NORM_E_DIR() { if(ACTIVE_EXTRUDER == 2) { WRITE(E2_DIR_PIN, INVERT_E2_DIR); } else { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }}} - #define REV_E_DIR() { if(ACTIVE_EXTRUDER == 2) { WRITE(E2_DIR_PIN, !INVERT_E2_DIR); } else { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }}} -#elif EXTRUDERS > 1 - #define WRITE_E_STEP(v) { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }} - #define NORM_E_DIR() { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }} - #define REV_E_DIR() { if(ACTIVE_EXTRUDER == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }} -#else - #define WRITE_E_STEP(v) WRITE(E0_STEP_PIN, v) - #define NORM_E_DIR() WRITE(E0_DIR_PIN, INVERT_E0_DIR) - #define REV_E_DIR() WRITE(E0_DIR_PIN, !INVERT_E0_DIR) -#endif - -/// toggle a pin wrapper -#define TOGGLE(IO) _TOGGLE(IO) - -/// set pin as input wrapper -#define SET_INPUT(IO) _SET_INPUT(IO) -/// set pin as output wrapper -#define SET_OUTPUT(IO) _SET_OUTPUT(IO) - -/// check if pin is an input wrapper -#define GET_INPUT(IO) _GET_INPUT(IO) -/// check if pin is an output wrapper -#define GET_OUTPUT(IO) _GET_OUTPUT(IO) - -/* - ports and functions - - added as necessary or if I feel like it- not a comprehensive list! -*/ - -#if defined (__AVR_ATmega168__) || defined (__AVR_ATmega328__) || defined (__AVR_ATmega328P__) -// UART -#define RXD DIO0 -#define TXD DIO1 - -// SPI -#define SCK DIO13 -#define MISO DIO12 -#define MOSI DIO11 -#define SS DIO10 - -// TWI (I2C) -#define SCL AIO5 -#define SDA AIO4 - -// timers and PWM -#define OC0A DIO6 -#define OC0B DIO5 -#define OC1A DIO9 -#define OC1B DIO10 -#define OC2A DIO11 -#define OC2B DIO3 - -#define DEBUG_LED AIO5 - -/* -pins -*/ - -#define DIO0_PIN PIND0 -#define DIO0_RPORT PIND -#define DIO0_WPORT PORTD -#define DIO0_DDR DDRD -#define DIO0_PWM NULL - -#define DIO1_PIN PIND1 -#define DIO1_RPORT PIND -#define DIO1_WPORT PORTD -#define DIO1_DDR DDRD -#define DIO1_PWM NULL - -#define DIO2_PIN PIND2 -#define DIO2_RPORT PIND -#define DIO2_WPORT PORTD -#define DIO2_DDR DDRD -#define DIO2_PWM NULL - -#define DIO3_PIN PIND3 -#define DIO3_RPORT PIND -#define DIO3_WPORT PORTD -#define DIO3_DDR DDRD -#define DIO3_PWM &OCR2B - -#define DIO4_PIN PIND4 -#define DIO4_RPORT PIND -#define DIO4_WPORT PORTD -#define DIO4_DDR DDRD -#define DIO4_PWM NULL - -#define DIO5_PIN PIND5 -#define DIO5_RPORT PIND -#define DIO5_WPORT PORTD -#define DIO5_DDR DDRD -#define DIO5_PWM &OCR0B - -#define DIO6_PIN PIND6 -#define DIO6_RPORT PIND -#define DIO6_WPORT PORTD -#define DIO6_DDR DDRD -#define DIO6_PWM &OCR0A - -#define DIO7_PIN PIND7 -#define DIO7_RPORT PIND -#define DIO7_WPORT PORTD -#define DIO7_DDR DDRD -#define DIO7_PWM NULL - -#define DIO8_PIN PINB0 -#define DIO8_RPORT PINB -#define DIO8_WPORT PORTB -#define DIO8_DDR DDRB -#define DIO8_PWM NULL - -#define DIO9_PIN PINB1 -#define DIO9_RPORT PINB -#define DIO9_WPORT PORTB -#define DIO9_DDR DDRB -#define DIO9_PWM NULL - -#define DIO10_PIN PINB2 -#define DIO10_RPORT PINB -#define DIO10_WPORT PORTB -#define DIO10_DDR DDRB -#define DIO10_PWM NULL - -#define DIO11_PIN PINB3 -#define DIO11_RPORT PINB -#define DIO11_WPORT PORTB -#define DIO11_DDR DDRB -#define DIO11_PWM &OCR2A - -#define DIO12_PIN PINB4 -#define DIO12_RPORT PINB -#define DIO12_WPORT PORTB -#define DIO12_DDR DDRB -#define DIO12_PWM NULL - -#define DIO13_PIN PINB5 -#define DIO13_RPORT PINB -#define DIO13_WPORT PORTB -#define DIO13_DDR DDRB -#define DIO13_PWM NULL - - -#define DIO14_PIN PINC0 -#define DIO14_RPORT PINC -#define DIO14_WPORT PORTC -#define DIO14_DDR DDRC -#define DIO14_PWM NULL - -#define DIO15_PIN PINC1 -#define DIO15_RPORT PINC -#define DIO15_WPORT PORTC -#define DIO15_DDR DDRC -#define DIO15_PWM NULL - -#define DIO16_PIN PINC2 -#define DIO16_RPORT PINC -#define DIO16_WPORT PORTC -#define DIO16_DDR DDRC -#define DIO16_PWM NULL - -#define DIO17_PIN PINC3 -#define DIO17_RPORT PINC -#define DIO17_WPORT PORTC -#define DIO17_DDR DDRC -#define DIO17_PWM NULL - -#define DIO18_PIN PINC4 -#define DIO18_RPORT PINC -#define DIO18_WPORT PORTC -#define DIO18_DDR DDRC -#define DIO18_PWM NULL - -#define DIO19_PIN PINC5 -#define DIO19_RPORT PINC -#define DIO19_WPORT PORTC -#define DIO19_DDR DDRC -#define DIO19_PWM NULL - -#define DIO20_PIN PINC6 -#define DIO20_RPORT PINC -#define DIO20_WPORT PORTC -#define DIO20_DDR DDRC -#define DIO20_PWM NULL - -#define DIO21_PIN PINC7 -#define DIO21_RPORT PINC -#define DIO21_WPORT PORTC -#define DIO21_DDR DDRC -#define DIO21_PWM NULL - - - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_DDR DDRB -#define PB0_PWM NULL - -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_DDR DDRB -#define PB1_PWM NULL - -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_DDR DDRB -#define PB2_PWM NULL - -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_DDR DDRB -#define PB3_PWM &OCR2A - -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_DDR DDRB -#define PB4_PWM NULL - -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_DDR DDRB -#define PB5_PWM NULL - -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_DDR DDRB -#define PB6_PWM NULL - -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_DDR DDRB -#define PB7_PWM NULL - - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_DDR DDRC -#define PC0_PWM NULL - -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_DDR DDRC -#define PC1_PWM NULL - -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_DDR DDRC -#define PC2_PWM NULL - -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_DDR DDRC -#define PC3_PWM NULL - -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_DDR DDRC -#define PC4_PWM NULL - -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_DDR DDRC -#define PC5_PWM NULL - -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_DDR DDRC -#define PC6_PWM NULL - -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_DDR DDRC -#define PC7_PWM NULL - - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_DDR DDRD -#define PD0_PWM NULL - -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_DDR DDRD -#define PD1_PWM NULL - -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_DDR DDRD -#define PD2_PWM NULL - -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_DDR DDRD -#define PD3_PWM &OCR2B - -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_DDR DDRD -#define PD4_PWM NULL - -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_DDR DDRD -#define PD5_PWM &OCR0B - -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_DDR DDRD -#define PD6_PWM &OCR0A - -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_DDR DDRD -#define PD7_PWM NULL -#endif /* _AVR_ATmega{168,328,328P}__ */ - -#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) -// UART -#define RXD DIO8 -#define TXD DIO9 -#define RXD0 DIO8 -#define TXD0 DIO9 - -#define RXD1 DIO10 -#define TXD1 DIO11 - -// SPI -#define SCK DIO7 -#define MISO DIO6 -#define MOSI DIO5 -#define SS DIO4 - -// TWI (I2C) -#define SCL DIO16 -#define SDA DIO17 - -// timers and PWM -#define OC0A DIO3 -#define OC0B DIO4 -#define OC1A DIO13 -#define OC1B DIO12 -#define OC2A DIO15 -#define OC2B DIO14 - -#define DEBUG_LED DIO0 -/* -pins -*/ - -#define DIO0_PIN PINB0 -#define DIO0_RPORT PINB -#define DIO0_WPORT PORTB -#define DIO0_DDR DDRB -#define DIO0_PWM NULL - -#define DIO1_PIN PINB1 -#define DIO1_RPORT PINB -#define DIO1_WPORT PORTB -#define DIO1_DDR DDRB -#define DIO1_PWM NULL - -#define DIO2_PIN PINB2 -#define DIO2_RPORT PINB -#define DIO2_WPORT PORTB -#define DIO2_DDR DDRB -#define DIO2_PWM NULL - -#define DIO3_PIN PINB3 -#define DIO3_RPORT PINB -#define DIO3_WPORT PORTB -#define DIO3_DDR DDRB -#define DIO3_PWM &OCR0A - -#define DIO4_PIN PINB4 -#define DIO4_RPORT PINB -#define DIO4_WPORT PORTB -#define DIO4_DDR DDRB -#define DIO4_PWM &OCR0B - -#define DIO5_PIN PINB5 -#define DIO5_RPORT PINB -#define DIO5_WPORT PORTB -#define DIO5_DDR DDRB -#define DIO5_PWM NULL - -#define DIO6_PIN PINB6 -#define DIO6_RPORT PINB -#define DIO6_WPORT PORTB -#define DIO6_DDR DDRB -#define DIO6_PWM NULL - -#define DIO7_PIN PINB7 -#define DIO7_RPORT PINB -#define DIO7_WPORT PORTB -#define DIO7_DDR DDRB -#define DIO7_PWM NULL - -#define DIO8_PIN PIND0 -#define DIO8_RPORT PIND -#define DIO8_WPORT PORTD -#define DIO8_DDR DDRD -#define DIO8_PWM NULL - -#define DIO9_PIN PIND1 -#define DIO9_RPORT PIND -#define DIO9_WPORT PORTD -#define DIO9_DDR DDRD -#define DIO9_PWM NULL - -#define DIO10_PIN PIND2 -#define DIO10_RPORT PIND -#define DIO10_WPORT PORTD -#define DIO10_DDR DDRD -#define DIO10_PWM NULL - -#define DIO11_PIN PIND3 -#define DIO11_RPORT PIND -#define DIO11_WPORT PORTD -#define DIO11_DDR DDRD -#define DIO11_PWM NULL - -#define DIO12_PIN PIND4 -#define DIO12_RPORT PIND -#define DIO12_WPORT PORTD -#define DIO12_DDR DDRD -#define DIO12_PWM NULL - -#define DIO13_PIN PIND5 -#define DIO13_RPORT PIND -#define DIO13_WPORT PORTD -#define DIO13_DDR DDRD -#define DIO13_PWM NULL - -#define DIO14_PIN PIND6 -#define DIO14_RPORT PIND -#define DIO14_WPORT PORTD -#define DIO14_DDR DDRD -#define DIO14_PWM &OCR2B - -#define DIO15_PIN PIND7 -#define DIO15_RPORT PIND -#define DIO15_WPORT PORTD -#define DIO15_DDR DDRD -#define DIO15_PWM &OCR2A - -#define DIO16_PIN PINC0 -#define DIO16_RPORT PINC -#define DIO16_WPORT PORTC -#define DIO16_DDR DDRC -#define DIO16_PWM NULL - -#define DIO17_PIN PINC1 -#define DIO17_RPORT PINC -#define DIO17_WPORT PORTC -#define DIO17_DDR DDRC -#define DIO17_PWM NULL - -#define DIO18_PIN PINC2 -#define DIO18_RPORT PINC -#define DIO18_WPORT PORTC -#define DIO18_DDR DDRC -#define DIO18_PWM NULL - -#define DIO19_PIN PINC3 -#define DIO19_RPORT PINC -#define DIO19_WPORT PORTC -#define DIO19_DDR DDRC -#define DIO19_PWM NULL - -#define DIO20_PIN PINC4 -#define DIO20_RPORT PINC -#define DIO20_WPORT PORTC -#define DIO20_DDR DDRC -#define DIO20_PWM NULL - -#define DIO21_PIN PINC5 -#define DIO21_RPORT PINC -#define DIO21_WPORT PORTC -#define DIO21_DDR DDRC -#define DIO21_PWM NULL - -#define DIO22_PIN PINC6 -#define DIO22_RPORT PINC -#define DIO22_WPORT PORTC -#define DIO22_DDR DDRC -#define DIO22_PWM NULL - -#define DIO23_PIN PINC7 -#define DIO23_RPORT PINC -#define DIO23_WPORT PORTC -#define DIO23_DDR DDRC -#define DIO23_PWM NULL - -#define DIO24_PIN PINA7 -#define DIO24_RPORT PINA -#define DIO24_WPORT PORTA -#define DIO24_DDR DDRA -#define DIO24_PWM NULL - -#define DIO25_PIN PINA6 -#define DIO25_RPORT PINA -#define DIO25_WPORT PORTA -#define DIO25_DDR DDRA -#define DIO25_PWM NULL - -#define DIO26_PIN PINA5 -#define DIO26_RPORT PINA -#define DIO26_WPORT PORTA -#define DIO26_DDR DDRA -#define DIO26_PWM NULL - -#define DIO27_PIN PINA4 -#define DIO27_RPORT PINA -#define DIO27_WPORT PORTA -#define DIO27_DDR DDRA -#define DIO27_PWM NULL - -#define DIO28_PIN PINA3 -#define DIO28_RPORT PINA -#define DIO28_WPORT PORTA -#define DIO28_DDR DDRA -#define DIO28_PWM NULL - -#define DIO29_PIN PINA2 -#define DIO29_RPORT PINA -#define DIO29_WPORT PORTA -#define DIO29_DDR DDRA -#define DIO29_PWM NULL - -#define DIO30_PIN PINA1 -#define DIO30_RPORT PINA -#define DIO30_WPORT PORTA -#define DIO30_DDR DDRA -#define DIO30_PWM NULL - -#define DIO31_PIN PINA0 -#define DIO31_RPORT PINA -#define DIO31_WPORT PORTA -#define DIO31_DDR DDRA -#define DIO31_PWM NULL - -#define AIO0_PIN PINA0 -#define AIO0_RPORT PINA -#define AIO0_WPORT PORTA -#define AIO0_DDR DDRA -#define AIO0_PWM NULL - -#define AIO1_PIN PINA1 -#define AIO1_RPORT PINA -#define AIO1_WPORT PORTA -#define AIO1_DDR DDRA -#define AIO1_PWM NULL - -#define AIO2_PIN PINA2 -#define AIO2_RPORT PINA -#define AIO2_WPORT PORTA -#define AIO2_DDR DDRA -#define AIO2_PWM NULL - -#define AIO3_PIN PINA3 -#define AIO3_RPORT PINA -#define AIO3_WPORT PORTA -#define AIO3_DDR DDRA -#define AIO3_PWM NULL - -#define AIO4_PIN PINA4 -#define AIO4_RPORT PINA -#define AIO4_WPORT PORTA -#define AIO4_DDR DDRA -#define AIO4_PWM NULL - -#define AIO5_PIN PINA5 -#define AIO5_RPORT PINA -#define AIO5_WPORT PORTA -#define AIO5_DDR DDRA -#define AIO5_PWM NULL - -#define AIO6_PIN PINA6 -#define AIO6_RPORT PINA -#define AIO6_WPORT PORTA -#define AIO6_DDR DDRA -#define AIO6_PWM NULL - -#define AIO7_PIN PINA7 -#define AIO7_RPORT PINA -#define AIO7_WPORT PORTA -#define AIO7_DDR DDRA -#define AIO7_PWM NULL - - - -#undef PA0 -#define PA0_PIN PINA0 -#define PA0_RPORT PINA -#define PA0_WPORT PORTA -#define PA0_DDR DDRA -#define PA0_PWM NULL - -#undef PA1 -#define PA1_PIN PINA1 -#define PA1_RPORT PINA -#define PA1_WPORT PORTA -#define PA1_DDR DDRA -#define PA1_PWM NULL - -#undef PA2 -#define PA2_PIN PINA2 -#define PA2_RPORT PINA -#define PA2_WPORT PORTA -#define PA2_DDR DDRA -#define PA2_PWM NULL - -#undef PA3 -#define PA3_PIN PINA3 -#define PA3_RPORT PINA -#define PA3_WPORT PORTA -#define PA3_DDR DDRA -#define PA3_PWM NULL - -#undef PA4 -#define PA4_PIN PINA4 -#define PA4_RPORT PINA -#define PA4_WPORT PORTA -#define PA4_DDR DDRA -#define PA4_PWM NULL - -#undef PA5 -#define PA5_PIN PINA5 -#define PA5_RPORT PINA -#define PA5_WPORT PORTA -#define PA5_DDR DDRA -#define PA5_PWM NULL - -#undef PA6 -#define PA6_PIN PINA6 -#define PA6_RPORT PINA -#define PA6_WPORT PORTA -#define PA6_DDR DDRA -#define PA6_PWM NULL - -#undef PA7 -#define PA7_PIN PINA7 -#define PA7_RPORT PINA -#define PA7_WPORT PORTA -#define PA7_DDR DDRA -#define PA7_PWM NULL - - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_DDR DDRB -#define PB0_PWM NULL - -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_DDR DDRB -#define PB1_PWM NULL - -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_DDR DDRB -#define PB2_PWM NULL - -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_DDR DDRB -#define PB3_PWM &OCR0A - -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_DDR DDRB -#define PB4_PWM &OCR0B - -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_DDR DDRB -#define PB5_PWM NULL - -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_DDR DDRB -#define PB6_PWM NULL - -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_DDR DDRB -#define PB7_PWM NULL - - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_DDR DDRC -#define PC0_PWM NULL - -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_DDR DDRC -#define PC1_PWM NULL - -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_DDR DDRC -#define PC2_PWM NULL - -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_DDR DDRC -#define PC3_PWM NULL - -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_DDR DDRC -#define PC4_PWM NULL - -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_DDR DDRC -#define PC5_PWM NULL - -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_DDR DDRC -#define PC6_PWM NULL - -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_DDR DDRC -#define PC7_PWM NULL - - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_DDR DDRD -#define PD0_PWM NULL - -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_DDR DDRD -#define PD1_PWM NULL - -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_DDR DDRD -#define PD2_PWM NULL - -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_DDR DDRD -#define PD3_PWM NULL - -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_DDR DDRD -#define PD4_PWM NULL - -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_DDR DDRD -#define PD5_PWM NULL - -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_DDR DDRD -#define PD6_PWM &OCR2B - -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_DDR DDRD -#define PD7_PWM &OCR2A -#endif /* _AVR_ATmega{644,644P,644PA}__ */ - -#if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) -// UART -#define RXD DIO0 -#define TXD DIO1 - -// SPI -#define SCK DIO52 -#define MISO DIO50 -#define MOSI DIO51 -#define SS DIO53 - -// TWI (I2C) -#define SCL DIO21 -#define SDA DIO20 - -// timers and PWM -#define OC0A DIO13 -#define OC0B DIO4 -#define OC1A DIO11 -#define OC1B DIO12 -#define OC2A DIO10 -#define OC2B DIO9 -#define OC3A DIO5 -#define OC3B DIO2 -#define OC3C DIO3 -#define OC4A DIO6 -#define OC4B DIO7 -#define OC4C DIO8 -#define OC5A DIO46 -#define OC5B DIO45 -#define OC5C DIO44 - -// change for your board -#define DEBUG_LED DIO21 - -/* -pins -*/ -#define DIO0_PIN PINE0 -#define DIO0_RPORT PINE -#define DIO0_WPORT PORTE -#define DIO0_DDR DDRE -#define DIO0_PWM NULL - -#define DIO1_PIN PINE1 -#define DIO1_RPORT PINE -#define DIO1_WPORT PORTE -#define DIO1_DDR DDRE -#define DIO1_PWM NULL - -#define DIO2_PIN PINE4 -#define DIO2_RPORT PINE -#define DIO2_WPORT PORTE -#define DIO2_DDR DDRE -#define DIO2_PWM &OCR3BL - -#define DIO3_PIN PINE5 -#define DIO3_RPORT PINE -#define DIO3_WPORT PORTE -#define DIO3_DDR DDRE -#define DIO3_PWM &OCR3CL - -#define DIO4_PIN PING5 -#define DIO4_RPORT PING -#define DIO4_WPORT PORTG -#define DIO4_DDR DDRG -#define DIO4_PWM &OCR0B - -#define DIO5_PIN PINE3 -#define DIO5_RPORT PINE -#define DIO5_WPORT PORTE -#define DIO5_DDR DDRE -#define DIO5_PWM &OCR3AL - -#define DIO6_PIN PINH3 -#define DIO6_RPORT PINH -#define DIO6_WPORT PORTH -#define DIO6_DDR DDRH -#define DIO6_PWM &OCR4AL - -#define DIO7_PIN PINH4 -#define DIO7_RPORT PINH -#define DIO7_WPORT PORTH -#define DIO7_DDR DDRH -#define DIO7_PWM &OCR4BL - -#define DIO8_PIN PINH5 -#define DIO8_RPORT PINH -#define DIO8_WPORT PORTH -#define DIO8_DDR DDRH -#define DIO8_PWM &OCR4CL - -#define DIO9_PIN PINH6 -#define DIO9_RPORT PINH -#define DIO9_WPORT PORTH -#define DIO9_DDR DDRH -#define DIO9_PWM &OCR2B - -#define DIO10_PIN PINB4 -#define DIO10_RPORT PINB -#define DIO10_WPORT PORTB -#define DIO10_DDR DDRB -#define DIO10_PWM &OCR2A - -#define DIO11_PIN PINB5 -#define DIO11_RPORT PINB -#define DIO11_WPORT PORTB -#define DIO11_DDR DDRB -#define DIO11_PWM NULL - -#define DIO12_PIN PINB6 -#define DIO12_RPORT PINB -#define DIO12_WPORT PORTB -#define DIO12_DDR DDRB -#define DIO12_PWM NULL - -#define DIO13_PIN PINB7 -#define DIO13_RPORT PINB -#define DIO13_WPORT PORTB -#define DIO13_DDR DDRB -#define DIO13_PWM &OCR0A - -#define DIO14_PIN PINJ1 -#define DIO14_RPORT PINJ -#define DIO14_WPORT PORTJ -#define DIO14_DDR DDRJ -#define DIO14_PWM NULL - -#define DIO15_PIN PINJ0 -#define DIO15_RPORT PINJ -#define DIO15_WPORT PORTJ -#define DIO15_DDR DDRJ -#define DIO15_PWM NULL - -#define DIO16_PIN PINH1 -#define DIO16_RPORT PINH -#define DIO16_WPORT PORTH -#define DIO16_DDR DDRH -#define DIO16_PWM NULL - -#define DIO17_PIN PINH0 -#define DIO17_RPORT PINH -#define DIO17_WPORT PORTH -#define DIO17_DDR DDRH -#define DIO17_PWM NULL - -#define DIO18_PIN PIND3 -#define DIO18_RPORT PIND -#define DIO18_WPORT PORTD -#define DIO18_DDR DDRD -#define DIO18_PWM NULL - -#define DIO19_PIN PIND2 -#define DIO19_RPORT PIND -#define DIO19_WPORT PORTD -#define DIO19_DDR DDRD -#define DIO19_PWM NULL - -#define DIO20_PIN PIND1 -#define DIO20_RPORT PIND -#define DIO20_WPORT PORTD -#define DIO20_DDR DDRD -#define DIO20_PWM NULL - -#define DIO21_PIN PIND0 -#define DIO21_RPORT PIND -#define DIO21_WPORT PORTD -#define DIO21_DDR DDRD -#define DIO21_PWM NULL - -#define DIO22_PIN PINA0 -#define DIO22_RPORT PINA -#define DIO22_WPORT PORTA -#define DIO22_DDR DDRA -#define DIO22_PWM NULL - -#define DIO23_PIN PINA1 -#define DIO23_RPORT PINA -#define DIO23_WPORT PORTA -#define DIO23_DDR DDRA -#define DIO23_PWM NULL - -#define DIO24_PIN PINA2 -#define DIO24_RPORT PINA -#define DIO24_WPORT PORTA -#define DIO24_DDR DDRA -#define DIO24_PWM NULL - -#define DIO25_PIN PINA3 -#define DIO25_RPORT PINA -#define DIO25_WPORT PORTA -#define DIO25_DDR DDRA -#define DIO25_PWM NULL - -#define DIO26_PIN PINA4 -#define DIO26_RPORT PINA -#define DIO26_WPORT PORTA -#define DIO26_DDR DDRA -#define DIO26_PWM NULL - -#define DIO27_PIN PINA5 -#define DIO27_RPORT PINA -#define DIO27_WPORT PORTA -#define DIO27_DDR DDRA -#define DIO27_PWM NULL - -#define DIO28_PIN PINA6 -#define DIO28_RPORT PINA -#define DIO28_WPORT PORTA -#define DIO28_DDR DDRA -#define DIO28_PWM NULL - -#define DIO29_PIN PINA7 -#define DIO29_RPORT PINA -#define DIO29_WPORT PORTA -#define DIO29_DDR DDRA -#define DIO29_PWM NULL - -#define DIO30_PIN PINC7 -#define DIO30_RPORT PINC -#define DIO30_WPORT PORTC -#define DIO30_DDR DDRC -#define DIO30_PWM NULL - -#define DIO31_PIN PINC6 -#define DIO31_RPORT PINC -#define DIO31_WPORT PORTC -#define DIO31_DDR DDRC -#define DIO31_PWM NULL - -#define DIO32_PIN PINC5 -#define DIO32_RPORT PINC -#define DIO32_WPORT PORTC -#define DIO32_DDR DDRC -#define DIO32_PWM NULL - -#define DIO33_PIN PINC4 -#define DIO33_RPORT PINC -#define DIO33_WPORT PORTC -#define DIO33_DDR DDRC -#define DIO33_PWM NULL - -#define DIO34_PIN PINC3 -#define DIO34_RPORT PINC -#define DIO34_WPORT PORTC -#define DIO34_DDR DDRC -#define DIO34_PWM NULL - -#define DIO35_PIN PINC2 -#define DIO35_RPORT PINC -#define DIO35_WPORT PORTC -#define DIO35_DDR DDRC -#define DIO35_PWM NULL - -#define DIO36_PIN PINC1 -#define DIO36_RPORT PINC -#define DIO36_WPORT PORTC -#define DIO36_DDR DDRC -#define DIO36_PWM NULL - -#define DIO37_PIN PINC0 -#define DIO37_RPORT PINC -#define DIO37_WPORT PORTC -#define DIO37_DDR DDRC -#define DIO37_PWM NULL - -#define DIO38_PIN PIND7 -#define DIO38_RPORT PIND -#define DIO38_WPORT PORTD -#define DIO38_DDR DDRD -#define DIO38_PWM NULL - -#define DIO39_PIN PING2 -#define DIO39_RPORT PING -#define DIO39_WPORT PORTG -#define DIO39_DDR DDRG -#define DIO39_PWM NULL - -#define DIO40_PIN PING1 -#define DIO40_RPORT PING -#define DIO40_WPORT PORTG -#define DIO40_DDR DDRG -#define DIO40_PWM NULL - -#define DIO41_PIN PING0 -#define DIO41_RPORT PING -#define DIO41_WPORT PORTG -#define DIO41_DDR DDRG -#define DIO41_PWM NULL - -#define DIO42_PIN PINL7 -#define DIO42_RPORT PINL -#define DIO42_WPORT PORTL -#define DIO42_DDR DDRL -#define DIO42_PWM NULL - -#define DIO43_PIN PINL6 -#define DIO43_RPORT PINL -#define DIO43_WPORT PORTL -#define DIO43_DDR DDRL -#define DIO43_PWM NULL - -#define DIO44_PIN PINL5 -#define DIO44_RPORT PINL -#define DIO44_WPORT PORTL -#define DIO44_DDR DDRL -#define DIO44_PWM &OCR5CL - -#define DIO45_PIN PINL4 -#define DIO45_RPORT PINL -#define DIO45_WPORT PORTL -#define DIO45_DDR DDRL -#define DIO45_PWM &OCR5BL - -#define DIO46_PIN PINL3 -#define DIO46_RPORT PINL -#define DIO46_WPORT PORTL -#define DIO46_DDR DDRL -#define DIO46_PWM &OCR5AL - -#define DIO47_PIN PINL2 -#define DIO47_RPORT PINL -#define DIO47_WPORT PORTL -#define DIO47_DDR DDRL -#define DIO47_PWM NULL - -#define DIO48_PIN PINL1 -#define DIO48_RPORT PINL -#define DIO48_WPORT PORTL -#define DIO48_DDR DDRL -#define DIO48_PWM NULL - -#define DIO49_PIN PINL0 -#define DIO49_RPORT PINL -#define DIO49_WPORT PORTL -#define DIO49_DDR DDRL -#define DIO49_PWM NULL - -#define DIO50_PIN PINB3 -#define DIO50_RPORT PINB -#define DIO50_WPORT PORTB -#define DIO50_DDR DDRB -#define DIO50_PWM NULL - -#define DIO51_PIN PINB2 -#define DIO51_RPORT PINB -#define DIO51_WPORT PORTB -#define DIO51_DDR DDRB -#define DIO51_PWM NULL - -#define DIO52_PIN PINB1 -#define DIO52_RPORT PINB -#define DIO52_WPORT PORTB -#define DIO52_DDR DDRB -#define DIO52_PWM NULL - -#define DIO53_PIN PINB0 -#define DIO53_RPORT PINB -#define DIO53_WPORT PORTB -#define DIO53_DDR DDRB -#define DIO53_PWM NULL - -#define DIO54_PIN PINF0 -#define DIO54_RPORT PINF -#define DIO54_WPORT PORTF -#define DIO54_DDR DDRF -#define DIO54_PWM NULL - -#define DIO55_PIN PINF1 -#define DIO55_RPORT PINF -#define DIO55_WPORT PORTF -#define DIO55_DDR DDRF -#define DIO55_PWM NULL - -#define DIO56_PIN PINF2 -#define DIO56_RPORT PINF -#define DIO56_WPORT PORTF -#define DIO56_DDR DDRF -#define DIO56_PWM NULL - -#define DIO57_PIN PINF3 -#define DIO57_RPORT PINF -#define DIO57_WPORT PORTF -#define DIO57_DDR DDRF -#define DIO57_PWM NULL - -#define DIO58_PIN PINF4 -#define DIO58_RPORT PINF -#define DIO58_WPORT PORTF -#define DIO58_DDR DDRF -#define DIO58_PWM NULL - -#define DIO59_PIN PINF5 -#define DIO59_RPORT PINF -#define DIO59_WPORT PORTF -#define DIO59_DDR DDRF -#define DIO59_PWM NULL - -#define DIO60_PIN PINF6 -#define DIO60_RPORT PINF -#define DIO60_WPORT PORTF -#define DIO60_DDR DDRF -#define DIO60_PWM NULL - -#define DIO61_PIN PINF7 -#define DIO61_RPORT PINF -#define DIO61_WPORT PORTF -#define DIO61_DDR DDRF -#define DIO61_PWM NULL - -#define DIO62_PIN PINK0 -#define DIO62_RPORT PINK -#define DIO62_WPORT PORTK -#define DIO62_DDR DDRK -#define DIO62_PWM NULL - -#define DIO63_PIN PINK1 -#define DIO63_RPORT PINK -#define DIO63_WPORT PORTK -#define DIO63_DDR DDRK -#define DIO63_PWM NULL - -#define DIO64_PIN PINK2 -#define DIO64_RPORT PINK -#define DIO64_WPORT PORTK -#define DIO64_DDR DDRK -#define DIO64_PWM NULL - -#define DIO65_PIN PINK3 -#define DIO65_RPORT PINK -#define DIO65_WPORT PORTK -#define DIO65_DDR DDRK -#define DIO65_PWM NULL - -#define DIO66_PIN PINK4 -#define DIO66_RPORT PINK -#define DIO66_WPORT PORTK -#define DIO66_DDR DDRK -#define DIO66_PWM NULL - -#define DIO67_PIN PINK5 -#define DIO67_RPORT PINK -#define DIO67_WPORT PORTK -#define DIO67_DDR DDRK -#define DIO67_PWM NULL - -#define DIO68_PIN PINK6 -#define DIO68_RPORT PINK -#define DIO68_WPORT PORTK -#define DIO68_DDR DDRK -#define DIO68_PWM NULL - -#define DIO69_PIN PINK7 -#define DIO69_RPORT PINK -#define DIO69_WPORT PORTK -#define DIO69_DDR DDRK -#define DIO69_PWM NULL - - - -#undef PA0 -#define PA0_PIN PINA0 -#define PA0_RPORT PINA -#define PA0_WPORT PORTA -#define PA0_DDR DDRA -#define PA0_PWM NULL -#undef PA1 -#define PA1_PIN PINA1 -#define PA1_RPORT PINA -#define PA1_WPORT PORTA -#define PA1_DDR DDRA -#define PA1_PWM NULL -#undef PA2 -#define PA2_PIN PINA2 -#define PA2_RPORT PINA -#define PA2_WPORT PORTA -#define PA2_DDR DDRA -#define PA2_PWM NULL -#undef PA3 -#define PA3_PIN PINA3 -#define PA3_RPORT PINA -#define PA3_WPORT PORTA -#define PA3_DDR DDRA -#define PA3_PWM NULL -#undef PA4 -#define PA4_PIN PINA4 -#define PA4_RPORT PINA -#define PA4_WPORT PORTA -#define PA4_DDR DDRA -#define PA4_PWM NULL -#undef PA5 -#define PA5_PIN PINA5 -#define PA5_RPORT PINA -#define PA5_WPORT PORTA -#define PA5_DDR DDRA -#define PA5_PWM NULL -#undef PA6 -#define PA6_PIN PINA6 -#define PA6_RPORT PINA -#define PA6_WPORT PORTA -#define PA6_DDR DDRA -#define PA6_PWM NULL -#undef PA7 -#define PA7_PIN PINA7 -#define PA7_RPORT PINA -#define PA7_WPORT PORTA -#define PA7_DDR DDRA -#define PA7_PWM NULL - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_DDR DDRB -#define PB0_PWM NULL -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_DDR DDRB -#define PB1_PWM NULL -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_DDR DDRB -#define PB2_PWM NULL -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_DDR DDRB -#define PB3_PWM NULL -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_DDR DDRB -#define PB4_PWM &OCR2A -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_DDR DDRB -#define PB5_PWM NULL -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_DDR DDRB -#define PB6_PWM NULL -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_DDR DDRB -#define PB7_PWM &OCR0A - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_DDR DDRC -#define PC0_PWM NULL -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_DDR DDRC -#define PC1_PWM NULL -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_DDR DDRC -#define PC2_PWM NULL -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_DDR DDRC -#define PC3_PWM NULL -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_DDR DDRC -#define PC4_PWM NULL -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_DDR DDRC -#define PC5_PWM NULL -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_DDR DDRC -#define PC6_PWM NULL -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_DDR DDRC -#define PC7_PWM NULL - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_DDR DDRD -#define PD0_PWM NULL -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_DDR DDRD -#define PD1_PWM NULL -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_DDR DDRD -#define PD2_PWM NULL -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_DDR DDRD -#define PD3_PWM NULL -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_DDR DDRD -#define PD4_PWM NULL -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_DDR DDRD -#define PD5_PWM NULL -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_DDR DDRD -#define PD6_PWM NULL -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_DDR DDRD -#define PD7_PWM NULL - -#undef PE0 -#define PE0_PIN PINE0 -#define PE0_RPORT PINE -#define PE0_WPORT PORTE -#define PE0_DDR DDRE -#define PE0_PWM NULL -#undef PE1 -#define PE1_PIN PINE1 -#define PE1_RPORT PINE -#define PE1_WPORT PORTE -#define PE1_DDR DDRE -#define PE1_PWM NULL -#undef PE2 -#define PE2_PIN PINE2 -#define PE2_RPORT PINE -#define PE2_WPORT PORTE -#define PE2_DDR DDRE -#define PE2_PWM NULL -#undef PE3 -#define PE3_PIN PINE3 -#define PE3_RPORT PINE -#define PE3_WPORT PORTE -#define PE3_DDR DDRE -#define PE3_PWM &OCR3AL -#undef PE4 -#define PE4_PIN PINE4 -#define PE4_RPORT PINE -#define PE4_WPORT PORTE -#define PE4_DDR DDRE -#define PE4_PWM &OCR3BL -#undef PE5 -#define PE5_PIN PINE5 -#define PE5_RPORT PINE -#define PE5_WPORT PORTE -#define PE5_DDR DDRE -#define PE5_PWM &OCR3CL -#undef PE6 -#define PE6_PIN PINE6 -#define PE6_RPORT PINE -#define PE6_WPORT PORTE -#define PE6_DDR DDRE -#define PE6_PWM NULL -#undef PE7 -#define PE7_PIN PINE7 -#define PE7_RPORT PINE -#define PE7_WPORT PORTE -#define PE7_DDR DDRE -#define PE7_PWM NULL - -#undef PF0 -#define PF0_PIN PINF0 -#define PF0_RPORT PINF -#define PF0_WPORT PORTF -#define PF0_DDR DDRF -#define PF0_PWM NULL -#undef PF1 -#define PF1_PIN PINF1 -#define PF1_RPORT PINF -#define PF1_WPORT PORTF -#define PF1_DDR DDRF -#define PF1_PWM NULL -#undef PF2 -#define PF2_PIN PINF2 -#define PF2_RPORT PINF -#define PF2_WPORT PORTF -#define PF2_DDR DDRF -#define PF2_PWM NULL -#undef PF3 -#define PF3_PIN PINF3 -#define PF3_RPORT PINF -#define PF3_WPORT PORTF -#define PF3_DDR DDRF -#define PF3_PWM NULL -#undef PF4 -#define PF4_PIN PINF4 -#define PF4_RPORT PINF -#define PF4_WPORT PORTF -#define PF4_DDR DDRF -#define PF4_PWM NULL -#undef PF5 -#define PF5_PIN PINF5 -#define PF5_RPORT PINF -#define PF5_WPORT PORTF -#define PF5_DDR DDRF -#define PF5_PWM NULL -#undef PF6 -#define PF6_PIN PINF6 -#define PF6_RPORT PINF -#define PF6_WPORT PORTF -#define PF6_DDR DDRF -#define PF6_PWM NULL -#undef PF7 -#define PF7_PIN PINF7 -#define PF7_RPORT PINF -#define PF7_WPORT PORTF -#define PF7_DDR DDRF -#define PF7_PWM NULL - -#undef PG0 -#define PG0_PIN PING0 -#define PG0_RPORT PING -#define PG0_WPORT PORTG -#define PG0_DDR DDRG -#define PG0_PWM NULL -#undef PG1 -#define PG1_PIN PING1 -#define PG1_RPORT PING -#define PG1_WPORT PORTG -#define PG1_DDR DDRG -#define PG1_PWM NULL -#undef PG2 -#define PG2_PIN PING2 -#define PG2_RPORT PING -#define PG2_WPORT PORTG -#define PG2_DDR DDRG -#define PG2_PWM NULL -#undef PG3 -#define PG3_PIN PING3 -#define PG3_RPORT PING -#define PG3_WPORT PORTG -#define PG3_DDR DDRG -#define PG3_PWM NULL -#undef PG4 -#define PG4_PIN PING4 -#define PG4_RPORT PING -#define PG4_WPORT PORTG -#define PG4_DDR DDRG -#define PG4_PWM NULL -#undef PG5 -#define PG5_PIN PING5 -#define PG5_RPORT PING -#define PG5_WPORT PORTG -#define PG5_DDR DDRG -#define PG5_PWM &OCR0B -#undef PG6 -#define PG6_PIN PING6 -#define PG6_RPORT PING -#define PG6_WPORT PORTG -#define PG6_DDR DDRG -#define PG6_PWM NULL -#undef PG7 -#define PG7_PIN PING7 -#define PG7_RPORT PING -#define PG7_WPORT PORTG -#define PG7_DDR DDRG -#define PG7_PWM NULL - -#undef PH0 -#define PH0_PIN PINH0 -#define PH0_RPORT PINH -#define PH0_WPORT PORTH -#define PH0_DDR DDRH -#define PH0_PWM NULL -#undef PH1 -#define PH1_PIN PINH1 -#define PH1_RPORT PINH -#define PH1_WPORT PORTH -#define PH1_DDR DDRH -#define PH1_PWM NULL -#undef PH2 -#define PH2_PIN PINH2 -#define PH2_RPORT PINH -#define PH2_WPORT PORTH -#define PH2_DDR DDRH -#define PH2_PWM NULL -#undef PH3 -#define PH3_PIN PINH3 -#define PH3_RPORT PINH -#define PH3_WPORT PORTH -#define PH3_DDR DDRH -#define PH3_PWM &OCR4AL -#undef PH4 -#define PH4_PIN PINH4 -#define PH4_RPORT PINH -#define PH4_WPORT PORTH -#define PH4_DDR DDRH -#define PH4_PWM &OCR4BL -#undef PH5 -#define PH5_PIN PINH5 -#define PH5_RPORT PINH -#define PH5_WPORT PORTH -#define PH5_DDR DDRH -#define PH5_PWM &OCR4CL -#undef PH6 -#define PH6_PIN PINH6 -#define PH6_RPORT PINH -#define PH6_WPORT PORTH -#define PH6_DDR DDRH -#define PH6_PWM &OCR2B -#undef PH7 -#define PH7_PIN PINH7 -#define PH7_RPORT PINH -#define PH7_WPORT PORTH -#define PH7_DDR DDRH -#define PH7_PWM NULL - -#undef PJ0 -#define PJ0_PIN PINJ0 -#define PJ0_RPORT PINJ -#define PJ0_WPORT PORTJ -#define PJ0_DDR DDRJ -#define PJ0_PWM NULL -#undef PJ1 -#define PJ1_PIN PINJ1 -#define PJ1_RPORT PINJ -#define PJ1_WPORT PORTJ -#define PJ1_DDR DDRJ -#define PJ1_PWM NULL -#undef PJ2 -#define PJ2_PIN PINJ2 -#define PJ2_RPORT PINJ -#define PJ2_WPORT PORTJ -#define PJ2_DDR DDRJ -#define PJ2_PWM NULL -#undef PJ3 -#define PJ3_PIN PINJ3 -#define PJ3_RPORT PINJ -#define PJ3_WPORT PORTJ -#define PJ3_DDR DDRJ -#define PJ3_PWM NULL -#undef PJ4 -#define PJ4_PIN PINJ4 -#define PJ4_RPORT PINJ -#define PJ4_WPORT PORTJ -#define PJ4_DDR DDRJ -#define PJ4_PWM NULL -#undef PJ5 -#define PJ5_PIN PINJ5 -#define PJ5_RPORT PINJ -#define PJ5_WPORT PORTJ -#define PJ5_DDR DDRJ -#define PJ5_PWM NULL -#undef PJ6 -#define PJ6_PIN PINJ6 -#define PJ6_RPORT PINJ -#define PJ6_WPORT PORTJ -#define PJ6_DDR DDRJ -#define PJ6_PWM NULL -#undef PJ7 -#define PJ7_PIN PINJ7 -#define PJ7_RPORT PINJ -#define PJ7_WPORT PORTJ -#define PJ7_DDR DDRJ -#define PJ7_PWM NULL - -#undef PK0 -#define PK0_PIN PINK0 -#define PK0_RPORT PINK -#define PK0_WPORT PORTK -#define PK0_DDR DDRK -#define PK0_PWM NULL -#undef PK1 -#define PK1_PIN PINK1 -#define PK1_RPORT PINK -#define PK1_WPORT PORTK -#define PK1_DDR DDRK -#define PK1_PWM NULL -#undef PK2 -#define PK2_PIN PINK2 -#define PK2_RPORT PINK -#define PK2_WPORT PORTK -#define PK2_DDR DDRK -#define PK2_PWM NULL -#undef PK3 -#define PK3_PIN PINK3 -#define PK3_RPORT PINK -#define PK3_WPORT PORTK -#define PK3_DDR DDRK -#define PK3_PWM NULL -#undef PK4 -#define PK4_PIN PINK4 -#define PK4_RPORT PINK -#define PK4_WPORT PORTK -#define PK4_DDR DDRK -#define PK4_PWM NULL -#undef PK5 -#define PK5_PIN PINK5 -#define PK5_RPORT PINK -#define PK5_WPORT PORTK -#define PK5_DDR DDRK -#define PK5_PWM NULL -#undef PK6 -#define PK6_PIN PINK6 -#define PK6_RPORT PINK -#define PK6_WPORT PORTK -#define PK6_DDR DDRK -#define PK6_PWM NULL -#undef PK7 -#define PK7_PIN PINK7 -#define PK7_RPORT PINK -#define PK7_WPORT PORTK -#define PK7_DDR DDRK -#define PK7_PWM NULL - -#undef PL0 -#define PL0_PIN PINL0 -#define PL0_RPORT PINL -#define PL0_WPORT PORTL -#define PL0_DDR DDRL -#define PL0_PWM NULL -#undef PL1 -#define PL1_PIN PINL1 -#define PL1_RPORT PINL -#define PL1_WPORT PORTL -#define PL1_DDR DDRL -#define PL1_PWM NULL -#undef PL2 -#define PL2_PIN PINL2 -#define PL2_RPORT PINL -#define PL2_WPORT PORTL -#define PL2_DDR DDRL -#define PL2_PWM NULL -#undef PL3 -#define PL3_PIN PINL3 -#define PL3_RPORT PINL -#define PL3_WPORT PORTL -#define PL3_DDR DDRL -#define PL3_PWM &OCR5AL -#undef PL4 -#define PL4_PIN PINL4 -#define PL4_RPORT PINL -#define PL4_WPORT PORTL -#define PL4_DDR DDRL -#define PL4_PWM &OCR5BL -#undef PL5 -#define PL5_PIN PINL5 -#define PL5_RPORT PINL -#define PL5_WPORT PORTL -#define PL5_DDR DDRL -#define PL5_PWM &OCR5CL -#undef PL6 -#define PL6_PIN PINL6 -#define PL6_RPORT PINL -#define PL6_WPORT PORTL -#define PL6_DDR DDRL -#define PL6_PWM NULL -#undef PL7 -#define PL7_PIN PINL7 -#define PL7_RPORT PINL -#define PL7_WPORT PORTL -#define PL7_DDR DDRL -#define PL7_PWM NULL - -#endif - -#if defined (__AVR_AT90USB1287__) -// SPI -#define SCK DIO9 -#define MISO DIO11 -#define MOSI DIO10 -#define SS DIO8 - -// change for your board -#define DEBUG_LED DIO31 /* led D5 red */ - -/* -pins -*/ -#define DIO0_PIN PINA0 -#define DIO0_RPORT PINA -#define DIO0_WPORT PORTA -#define DIO0_PWM NULL -#define DIO0_DDR DDRA - -#define DIO1_PIN PINA1 -#define DIO1_RPORT PINA -#define DIO1_WPORT PORTA -#define DIO1_PWM NULL -#define DIO1_DDR DDRA - -#define DIO2_PIN PINA2 -#define DIO2_RPORT PINA -#define DIO2_WPORT PORTA -#define DIO2_PWM NULL -#define DIO2_DDR DDRA - -#define DIO3_PIN PINA3 -#define DIO3_RPORT PINA -#define DIO3_WPORT PORTA -#define DIO3_PWM NULL -#define DIO3_DDR DDRA - -#define DIO4_PIN PINA4 -#define DIO4_RPORT PINA -#define DIO4_WPORT PORTA -#define DIO4_PWM NULL -#define DIO4_DDR DDRA - -#define DIO5_PIN PINA5 -#define DIO5_RPORT PINA -#define DIO5_WPORT PORTA -#define DIO5_PWM NULL -#define DIO5_DDR DDRA - -#define DIO6_PIN PINA6 -#define DIO6_RPORT PINA -#define DIO6_WPORT PORTA -#define DIO6_PWM NULL -#define DIO6_DDR DDRA - -#define DIO7_PIN PINA7 -#define DIO7_RPORT PINA -#define DIO7_WPORT PORTA -#define DIO7_PWM NULL -#define DIO7_DDR DDRA - -#define DIO8_PIN PINB0 -#define DIO8_RPORT PINB -#define DIO8_WPORT PORTB -#define DIO8_PWM NULL -#define DIO8_DDR DDRB - -#define DIO9_PIN PINB1 -#define DIO9_RPORT PINB -#define DIO9_WPORT PORTB -#define DIO9_PWM NULL -#define DIO9_DDR DDRB - -#define DIO10_PIN PINB2 -#define DIO10_RPORT PINB -#define DIO10_WPORT PORTB -#define DIO10_PWM NULL -#define DIO10_DDR DDRB - -#define DIO11_PIN PINB3 -#define DIO11_RPORT PINB -#define DIO11_WPORT PORTB -#define DIO11_PWM NULL -#define DIO11_DDR DDRB - -#define DIO12_PIN PINB4 -#define DIO12_RPORT PINB -#define DIO12_WPORT PORTB -#define DIO12_PWM NULL -#define DIO12_DDR DDRB - -#define DIO13_PIN PINB5 -#define DIO13_RPORT PINB -#define DIO13_WPORT PORTB -#define DIO13_PWM NULL -#define DIO13_DDR DDRB - -#define DIO14_PIN PINB6 -#define DIO14_RPORT PINB -#define DIO14_WPORT PORTB -#define DIO14_PWM NULL -#define DIO14_DDR DDRB - -#define DIO15_PIN PINB7 -#define DIO15_RPORT PINB -#define DIO15_WPORT PORTB -#define DIO15_PWM NULL -#define DIO15_DDR DDRB - -#define DIO16_PIN PINC0 -#define DIO16_RPORT PINC -#define DIO16_WPORT PORTC -#define DIO16_PWM NULL -#define DIO16_DDR DDRC - -#define DIO17_PIN PINC1 -#define DIO17_RPORT PINC -#define DIO17_WPORT PORTC -#define DIO17_PWM NULL -#define DIO17_DDR DDRC - -#define DIO18_PIN PINC2 -#define DIO18_RPORT PINC -#define DIO18_WPORT PORTC -#define DIO18_PWM NULL -#define DIO18_DDR DDRC - -#define DIO19_PIN PINC3 -#define DIO19_RPORT PINC -#define DIO19_WPORT PORTC -#define DIO19_PWM NULL -#define DIO19_DDR DDRC - -#define DIO20_PIN PINC4 -#define DIO20_RPORT PINC -#define DIO20_WPORT PORTC -#define DIO20_PWM NULL -#define DIO20_DDR DDRC - -#define DIO21_PIN PINC5 -#define DIO21_RPORT PINC -#define DIO21_WPORT PORTC -#define DIO21_PWM NULL -#define DIO21_DDR DDRC - -#define DIO22_PIN PINC6 -#define DIO22_RPORT PINC -#define DIO22_WPORT PORTC -#define DIO22_PWM NULL -#define DIO22_DDR DDRC - -#define DIO23_PIN PINC7 -#define DIO23_RPORT PINC -#define DIO23_WPORT PORTC -#define DIO23_PWM NULL -#define DIO23_DDR DDRC - -#define DIO24_PIN PIND0 -#define DIO24_RPORT PIND -#define DIO24_WPORT PORTD -#define DIO24_PWM NULL -#define DIO24_DDR DDRD - -#define DIO25_PIN PIND1 -#define DIO25_RPORT PIND -#define DIO25_WPORT PORTD -#define DIO25_PWM NULL -#define DIO25_DDR DDRD - -#define DIO26_PIN PIND2 -#define DIO26_RPORT PIND -#define DIO26_WPORT PORTD -#define DIO26_PWM NULL -#define DIO26_DDR DDRD - -#define DIO27_PIN PIND3 -#define DIO27_RPORT PIND -#define DIO27_WPORT PORTD -#define DIO27_PWM NULL -#define DIO27_DDR DDRD - -#define DIO28_PIN PIND4 -#define DIO28_RPORT PIND -#define DIO28_WPORT PORTD -#define DIO28_PWM NULL -#define DIO28_DDR DDRD - -#define DIO29_PIN PIND5 -#define DIO29_RPORT PIND -#define DIO29_WPORT PORTD -#define DIO29_PWM NULL -#define DIO29_DDR DDRD - -#define DIO30_PIN PIND6 -#define DIO30_RPORT PIND -#define DIO30_WPORT PORTD -#define DIO30_PWM NULL -#define DIO30_DDR DDRD - -#define DIO31_PIN PIND7 -#define DIO31_RPORT PIND -#define DIO31_WPORT PORTD -#define DIO31_PWM NULL -#define DIO31_DDR DDRD - - -#define DIO32_PIN PINE0 -#define DIO32_RPORT PINE -#define DIO32_WPORT PORTE -#define DIO32_PWM NULL -#define DIO32_DDR DDRE - -#define DIO33_PIN PINE1 -#define DIO33_RPORT PINE -#define DIO33_WPORT PORTE -#define DIO33_PWM NULL -#define DIO33_DDR DDRE - -#define DIO34_PIN PINE2 -#define DIO34_RPORT PINE -#define DIO34_WPORT PORTE -#define DIO34_PWM NULL -#define DIO34_DDR DDRE - -#define DIO35_PIN PINE3 -#define DIO35_RPORT PINE -#define DIO35_WPORT PORTE -#define DIO35_PWM NULL -#define DIO35_DDR DDRE - -#define DIO36_PIN PINE4 -#define DIO36_RPORT PINE -#define DIO36_WPORT PORTE -#define DIO36_PWM NULL -#define DIO36_DDR DDRE - -#define DIO37_PIN PINE5 -#define DIO37_RPORT PINE -#define DIO37_WPORT PORTE -#define DIO37_PWM NULL -#define DIO37_DDR DDRE - -#define DIO38_PIN PINE6 -#define DIO38_RPORT PINE -#define DIO38_WPORT PORTE -#define DIO38_PWM NULL -#define DIO38_DDR DDRE - -#define DIO39_PIN PINE7 -#define DIO39_RPORT PINE -#define DIO39_WPORT PORTE -#define DIO39_PWM NULL -#define DIO39_DDR DDRE - -#define AIO0_PIN PINF0 -#define AIO0_RPORT PINF -#define AIO0_WPORT PORTF -#define AIO0_PWM NULL -#define AIO0_DDR DDRF - -#define AIO1_PIN PINF1 -#define AIO1_RPORT PINF -#define AIO1_WPORT PORTF -#define AIO1_PWM NULL -#define AIO1_DDR DDRF - -#define AIO2_PIN PINF2 -#define AIO2_RPORT PINF -#define AIO2_WPORT PORTF -#define AIO2_PWM NULL -#define AIO2_DDR DDRF - -#define AIO3_PIN PINF3 -#define AIO3_RPORT PINF -#define AIO3_WPORT PORTF -#define AIO3_PWM NULL -#define AIO3_DDR DDRF - -#define AIO4_PIN PINF4 -#define AIO4_RPORT PINF -#define AIO4_WPORT PORTF -#define AIO4_PWM NULL -#define AIO4_DDR DDRF - -#define AIO5_PIN PINF5 -#define AIO5_RPORT PINF -#define AIO5_WPORT PORTF -#define AIO5_PWM NULL -#define AIO5_DDR DDRF - -#define AIO6_PIN PINF6 -#define AIO6_RPORT PINF -#define AIO6_WPORT PORTF -#define AIO6_PWM NULL -#define AIO6_DDR DDRF - -#define AIO7_PIN PINF7 -#define AIO7_RPORT PINF -#define AIO7_WPORT PORTF -#define AIO7_PWM NULL -#define AIO7_DDR DDRF - -#define DIO40_PIN PINF0 -#define DIO40_RPORT PINF -#define DIO40_WPORT PORTF -#define DIO40_PWM NULL -#define DIO40_DDR DDRF - -#define DIO41_PIN PINF1 -#define DIO41_RPORT PINF -#define DIO41_WPORT PORTF -#define DIO41_PWM NULL -#define DIO41_DDR DDRF - -#define DIO42_PIN PINF2 -#define DIO42_RPORT PINF -#define DIO42_WPORT PORTF -#define DIO42_PWM NULL -#define DIO42_DDR DDRF - -#define DIO43_PIN PINF3 -#define DIO43_RPORT PINF -#define DIO43_WPORT PORTF -#define DIO43_PWM NULL -#define DIO43_DDR DDRF - -#define DIO44_PIN PINF4 -#define DIO44_RPORT PINF -#define DIO44_WPORT PORTF -#define DIO44_PWM NULL -#define DIO44_DDR DDRF - -#define DIO45_PIN PINF5 -#define DIO45_RPORT PINF -#define DIO45_WPORT PORTF -#define DIO45_PWM NULL -#define DIO45_DDR DDRF - -#define DIO46_PIN PINF6 -#define DIO46_RPORT PINF -#define DIO46_WPORT PORTF -#define DIO46_PWM NULL -#define DIO46_DDR DDRF - -#define DIO47_PIN PINF7 -#define DIO47_RPORT PINF -#define DIO47_WPORT PORTF -#define DIO47_PWM NULL -#define DIO47_DDR DDRF - - - -#undef PA0 -#define PA0_PIN PINA0 -#define PA0_RPORT PINA -#define PA0_WPORT PORTA -#define PA0_PWM NULL -#define PA0_DDR DDRA -#undef PA1 -#define PA1_PIN PINA1 -#define PA1_RPORT PINA -#define PA1_WPORT PORTA -#define PA1_PWM NULL -#define PA1_DDR DDRA -#undef PA2 -#define PA2_PIN PINA2 -#define PA2_RPORT PINA -#define PA2_WPORT PORTA -#define PA2_PWM NULL -#define PA2_DDR DDRA -#undef PA3 -#define PA3_PIN PINA3 -#define PA3_RPORT PINA -#define PA3_WPORT PORTA -#define PA3_PWM NULL -#define PA3_DDR DDRA -#undef PA4 -#define PA4_PIN PINA4 -#define PA4_RPORT PINA -#define PA4_WPORT PORTA -#define PA4_PWM NULL -#define PA4_DDR DDRA -#undef PA5 -#define PA5_PIN PINA5 -#define PA5_RPORT PINA -#define PA5_WPORT PORTA -#define PA5_PWM NULL -#define PA5_DDR DDRA -#undef PA6 -#define PA6_PIN PINA6 -#define PA6_RPORT PINA -#define PA6_WPORT PORTA -#define PA6_PWM NULL -#define PA6_DDR DDRA -#undef PA7 -#define PA7_PIN PINA7 -#define PA7_RPORT PINA -#define PA7_WPORT PORTA -#define PA7_PWM NULL -#define PA7_DDR DDRA - -#undef PB0 -#define PB0_PIN PINB0 -#define PB0_RPORT PINB -#define PB0_WPORT PORTB -#define PB0_PWM NULL -#define PB0_DDR DDRB -#undef PB1 -#define PB1_PIN PINB1 -#define PB1_RPORT PINB -#define PB1_WPORT PORTB -#define PB1_PWM NULL -#define PB1_DDR DDRB -#undef PB2 -#define PB2_PIN PINB2 -#define PB2_RPORT PINB -#define PB2_WPORT PORTB -#define PB2_PWM NULL -#define PB2_DDR DDRB -#undef PB3 -#define PB3_PIN PINB3 -#define PB3_RPORT PINB -#define PB3_WPORT PORTB -#define PB3_PWM NULL -#define PB3_DDR DDRB -#undef PB4 -#define PB4_PIN PINB4 -#define PB4_RPORT PINB -#define PB4_WPORT PORTB -#define PB4_PWM NULL -#define PB4_DDR DDRB -#undef PB5 -#define PB5_PIN PINB5 -#define PB5_RPORT PINB -#define PB5_WPORT PORTB -#define PB5_PWM NULL -#define PB5_DDR DDRB -#undef PB6 -#define PB6_PIN PINB6 -#define PB6_RPORT PINB -#define PB6_WPORT PORTB -#define PB6_PWM NULL -#define PB6_DDR DDRB -#undef PB7 -#define PB7_PIN PINB7 -#define PB7_RPORT PINB -#define PB7_WPORT PORTB -#define PB7_PWM NULL -#define PB7_DDR DDRB - -#undef PC0 -#define PC0_PIN PINC0 -#define PC0_RPORT PINC -#define PC0_WPORT PORTC -#define PC0_PWM NULL -#define PC0_DDR DDRC -#undef PC1 -#define PC1_PIN PINC1 -#define PC1_RPORT PINC -#define PC1_WPORT PORTC -#define PC1_PWM NULL -#define PC1_DDR DDRC -#undef PC2 -#define PC2_PIN PINC2 -#define PC2_RPORT PINC -#define PC2_WPORT PORTC -#define PC2_PWM NULL -#define PC2_DDR DDRC -#undef PC3 -#define PC3_PIN PINC3 -#define PC3_RPORT PINC -#define PC3_WPORT PORTC -#define PC3_PWM NULL -#define PC3_DDR DDRC -#undef PC4 -#define PC4_PIN PINC4 -#define PC4_RPORT PINC -#define PC4_WPORT PORTC -#define PC4_PWM NULL -#define PC4_DDR DDRC -#undef PC5 -#define PC5_PIN PINC5 -#define PC5_RPORT PINC -#define PC5_WPORT PORTC -#define PC5_PWM NULL -#define PC5_DDR DDRC -#undef PC6 -#define PC6_PIN PINC6 -#define PC6_RPORT PINC -#define PC6_WPORT PORTC -#define PC6_PWM NULL -#define PC6_DDR DDRC -#undef PC7 -#define PC7_PIN PINC7 -#define PC7_RPORT PINC -#define PC7_WPORT PORTC -#define PC7_PWM NULL -#define PC7_DDR DDRC - -#undef PD0 -#define PD0_PIN PIND0 -#define PD0_RPORT PIND -#define PD0_WPORT PORTD -#define PD0_PWM NULL -#define PD0_DDR DDRD -#undef PD1 -#define PD1_PIN PIND1 -#define PD1_RPORT PIND -#define PD1_WPORT PORTD -#define PD1_PWM NULL -#define PD1_DDR DDRD -#undef PD2 -#define PD2_PIN PIND2 -#define PD2_RPORT PIND -#define PD2_WPORT PORTD -#define PD2_PWM NULL -#define PD2_DDR DDRD -#undef PD3 -#define PD3_PIN PIND3 -#define PD3_RPORT PIND -#define PD3_WPORT PORTD -#define PD3_PWM NULL -#define PD3_DDR DDRD -#undef PD4 -#define PD4_PIN PIND4 -#define PD4_RPORT PIND -#define PD4_WPORT PORTD -#define PD4_PWM NULL -#define PD4_DDR DDRD -#undef PD5 -#define PD5_PIN PIND5 -#define PD5_RPORT PIND -#define PD5_WPORT PORTD -#define PD5_PWM NULL -#define PD5_DDR DDRD -#undef PD6 -#define PD6_PIN PIND6 -#define PD6_RPORT PIND -#define PD6_WPORT PORTD -#define PD6_PWM NULL -#define PD6_DDR DDRD -#undef PD7 -#define PD7_PIN PIND7 -#define PD7_RPORT PIND -#define PD7_WPORT PORTD -#define PD7_PWM NULL -#define PD7_DDR DDRD - -#undef PE0 -#define PE0_PIN PINE0 -#define PE0_RPORT PINE -#define PE0_WPORT PORTE -#define PE0_PWM NULL -#define PE0_DDR DDRE -#undef PE1 -#define PE1_PIN PINE1 -#define PE1_RPORT PINE -#define PE1_WPORT PORTE -#define PE1_PWM NULL -#define PE1_DDR DDRE -#undef PE2 -#define PE2_PIN PINE2 -#define PE2_RPORT PINE -#define PE2_WPORT PORTE -#define PE2_PWM NULL -#define PE2_DDR DDRE -#undef PE3 -#define PE3_PIN PINE3 -#define PE3_RPORT PINE -#define PE3_WPORT PORTE -#define PE3_PWM NULL -#define PE3_DDR DDRE -#undef PE4 -#define PE4_PIN PINE4 -#define PE4_RPORT PINE -#define PE4_WPORT PORTE -#define PE4_PWM NULL -#define PE4_DDR DDRE -#undef PE5 -#define PE5_PIN PINE5 -#define PE5_RPORT PINE -#define PE5_WPORT PORTE -#define PE5_PWM NULL -#define PE5_DDR DDRE -#undef PE6 -#define PE6_PIN PINE6 -#define PE6_RPORT PINE -#define PE6_WPORT PORTE -#define PE6_PWM NULL -#define PE6_DDR DDRE -#undef PE7 -#define PE7_PIN PINE7 -#define PE7_RPORT PINE -#define PE7_WPORT PORTE -#define PE7_PWM NULL -#define PE7_DDR DDRE - -#undef PF0 -#define PF0_PIN PINF0 -#define PF0_RPORT PINF -#define PF0_WPORT PORTF -#define PF0_PWM NULL -#define PF0_DDR DDRF -#undef PF1 -#define PF1_PIN PINF1 -#define PF1_RPORT PINF -#define PF1_WPORT PORTF -#define PF1_PWM NULL -#define PF1_DDR DDRF -#undef PF2 -#define PF2_PIN PINF2 -#define PF2_RPORT PINF -#define PF2_WPORT PORTF -#define PF2_PWM NULL -#define PF2_DDR DDRF -#undef PF3 -#define PF3_PIN PINF3 -#define PF3_RPORT PINF -#define PF3_WPORT PORTF -#define PF3_PWM NULL -#define PF3_DDR DDRF -#undef PF4 -#define PF4_PIN PINF4 -#define PF4_RPORT PINF -#define PF4_WPORT PORTF -#define PF4_PWM NULL -#define PF4_DDR DDRF -#undef PF5 -#define PF5_PIN PINF5 -#define PF5_RPORT PINF -#define PF5_WPORT PORTF -#define PF5_PWM NULL -#define PF5_DDR DDRF -#undef PF6 -#define PF6_PIN PINF6 -#define PF6_RPORT PINF -#define PF6_WPORT PORTF -#define PF6_PWM NULL -#define PF6_DDR DDRF -#undef PF7 -#define PF7_PIN PINF7 -#define PF7_RPORT PINF -#define PF7_WPORT PORTF -#define PF7_PWM NULL -#define PF7_DDR DDRF -#endif - -#ifndef DIO0_PIN -#error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request -#endif - +/* + This code contibuted by Triffid_Hunter and modified by Kliment + why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html +*/ + +#ifndef _ARDUINO_H +#define _ARDUINO_H + +#include + +/* + utility functions +*/ + +#ifndef MASK +/// MASKING- returns \f$2^PIN\f$ +#define MASK(PIN) (1 << PIN) +#endif + +/* + magic I/O routines + now you can simply SET_OUTPUT(STEP); WRITE(STEP, 1); WRITE(STEP, 0); +*/ + +/// Read a pin +#define _READ(IO) ((bool)(DIO ## IO ## _RPORT & MASK(DIO ## IO ## _PIN))) +/// write to a pin +// On some boards pins > 0x100 are used. These are not converted to atomic actions. An critical section is needed. + +#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0) + +#define _WRITE_C(IO, v) do { if (v) { \ + CRITICAL_SECTION_START; \ + {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); }\ + CRITICAL_SECTION_END; \ + }\ + else {\ + CRITICAL_SECTION_START; \ + {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }\ + CRITICAL_SECTION_END; \ + }\ + }\ + while (0) + +#define _WRITE(IO, v) do { if (&(DIO ## IO ## _RPORT) >= (uint8_t *)0x100) {_WRITE_C(IO, v); } else {_WRITE_NC(IO, v); }; } while (0) + +/// toggle a pin +#define _TOGGLE(IO) do {DIO ## IO ## _RPORT = MASK(DIO ## IO ## _PIN); } while (0) + +/// set pin as input +#define _SET_INPUT(IO) do {DIO ## IO ## _DDR &= ~MASK(DIO ## IO ## _PIN); } while (0) +/// set pin as output +#define _SET_OUTPUT(IO) do {DIO ## IO ## _DDR |= MASK(DIO ## IO ## _PIN); } while (0) + +/// check if pin is an input +#define _GET_INPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) == 0) +/// check if pin is an output +#define _GET_OUTPUT(IO) ((DIO ## IO ## _DDR & MASK(DIO ## IO ## _PIN)) != 0) + +/// check if pin is an timer +#define _GET_TIMER(IO) ((DIO ## IO ## _PWM) + +// why double up on these macros? see http://gcc.gnu.org/onlinedocs/cpp/Stringification.html + +/// Read a pin wrapper +#define READ(IO) _READ(IO) +/// Write to a pin wrapper +#define WRITE(IO, v) _WRITE(IO, v) + +/// toggle a pin wrapper +#define TOGGLE(IO) _TOGGLE(IO) + +/// set pin as input wrapper +#define SET_INPUT(IO) _SET_INPUT(IO) +/// set pin as output wrapper +#define SET_OUTPUT(IO) _SET_OUTPUT(IO) + +/// check if pin is an input wrapper +#define GET_INPUT(IO) _GET_INPUT(IO) +/// check if pin is an output wrapper +#define GET_OUTPUT(IO) _GET_OUTPUT(IO) + +/// check if pin is an timer wrapper +#define GET_TIMER(IO) _GET_TIMER(IO) + +/* + ports and functions + + added as necessary or if I feel like it- not a comprehensive list! +*/ + +#if defined (__AVR_ATmega168__) || defined (__AVR_ATmega328__) || defined (__AVR_ATmega328P__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO13 +#define MISO DIO12 +#define MOSI DIO11 +#define SS DIO10 + +// TWI (I2C) +#define SCL AIO5 +#define SDA AIO4 + +// timers and PWM +#define OC0A DIO6 +#define OC0B DIO5 +#define OC1A DIO9 +#define OC1B DIO10 +#define OC2A DIO11 +#define OC2B DIO3 + +#define DEBUG_LED AIO5 + +/* +pins +*/ + +#define DIO0_PIN PIND0 +#define DIO0_RPORT PIND +#define DIO0_WPORT PORTD +#define DIO0_DDR DDRD +#define DIO0_PWM NULL + +#define DIO1_PIN PIND1 +#define DIO1_RPORT PIND +#define DIO1_WPORT PORTD +#define DIO1_DDR DDRD +#define DIO1_PWM NULL + +#define DIO2_PIN PIND2 +#define DIO2_RPORT PIND +#define DIO2_WPORT PORTD +#define DIO2_DDR DDRD +#define DIO2_PWM NULL + +#define DIO3_PIN PIND3 +#define DIO3_RPORT PIND +#define DIO3_WPORT PORTD +#define DIO3_DDR DDRD +#define DIO3_PWM &OCR2B + +#define DIO4_PIN PIND4 +#define DIO4_RPORT PIND +#define DIO4_WPORT PORTD +#define DIO4_DDR DDRD +#define DIO4_PWM NULL + +#define DIO5_PIN PIND5 +#define DIO5_RPORT PIND +#define DIO5_WPORT PORTD +#define DIO5_DDR DDRD +#define DIO5_PWM &OCR0B + +#define DIO6_PIN PIND6 +#define DIO6_RPORT PIND +#define DIO6_WPORT PORTD +#define DIO6_DDR DDRD +#define DIO6_PWM &OCR0A + +#define DIO7_PIN PIND7 +#define DIO7_RPORT PIND +#define DIO7_WPORT PORTD +#define DIO7_DDR DDRD +#define DIO7_PWM NULL + +#define DIO8_PIN PINB0 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_DDR DDRB +#define DIO8_PWM NULL + +#define DIO9_PIN PINB1 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_DDR DDRB +#define DIO9_PWM NULL + +#define DIO10_PIN PINB2 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM NULL + +#define DIO11_PIN PINB3 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM &OCR2A + +#define DIO12_PIN PINB4 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINB5 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_DDR DDRB +#define DIO13_PWM NULL + + +#define DIO14_PIN PINC0 +#define DIO14_RPORT PINC +#define DIO14_WPORT PORTC +#define DIO14_DDR DDRC +#define DIO14_PWM NULL + +#define DIO15_PIN PINC1 +#define DIO15_RPORT PINC +#define DIO15_WPORT PORTC +#define DIO15_DDR DDRC +#define DIO15_PWM NULL + +#define DIO16_PIN PINC2 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_DDR DDRC +#define DIO16_PWM NULL + +#define DIO17_PIN PINC3 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_DDR DDRC +#define DIO17_PWM NULL + +#define DIO18_PIN PINC4 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_DDR DDRC +#define DIO18_PWM NULL + +#define DIO19_PIN PINC5 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_DDR DDRC +#define DIO19_PWM NULL + +#define DIO20_PIN PINC6 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_DDR DDRC +#define DIO20_PWM NULL + +#define DIO21_PIN PINC7 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_DDR DDRC +#define DIO21_PWM NULL + + + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL + +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL + +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL + +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM &OCR2A + +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM NULL + +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL + +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL + +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM NULL + + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL + +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL + +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL + +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL + +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL + +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL + +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL + +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL + +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL + +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL + +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM &OCR2B + +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL + +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM &OCR0B + +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM &OCR0A + +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL +#endif /* _AVR_ATmega{168,328,328P}__ */ + +#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) +// UART +#define RXD DIO8 +#define TXD DIO9 +#define RXD0 DIO8 +#define TXD0 DIO9 + +#define RXD1 DIO10 +#define TXD1 DIO11 + +// SPI +#define SCK DIO7 +#define MISO DIO6 +#define MOSI DIO5 +#define SS DIO4 + +// TWI (I2C) +#define SCL DIO16 +#define SDA DIO17 + +// timers and PWM +#define OC0A DIO3 +#define OC0B DIO4 +#define OC1A DIO13 +#define OC1B DIO12 +#define OC2A DIO15 +#define OC2B DIO14 + +#define DEBUG_LED DIO0 +/* +pins +*/ + +#define DIO0_PIN PINB0 +#define DIO0_RPORT PINB +#define DIO0_WPORT PORTB +#define DIO0_DDR DDRB +#define DIO0_PWM NULL + +#define DIO1_PIN PINB1 +#define DIO1_RPORT PINB +#define DIO1_WPORT PORTB +#define DIO1_DDR DDRB +#define DIO1_PWM NULL + +#define DIO2_PIN PINB2 +#define DIO2_RPORT PINB +#define DIO2_WPORT PORTB +#define DIO2_DDR DDRB +#define DIO2_PWM NULL + +#define DIO3_PIN PINB3 +#define DIO3_RPORT PINB +#define DIO3_WPORT PORTB +#define DIO3_DDR DDRB +#define DIO3_PWM OCR0A + +#define DIO4_PIN PINB4 +#define DIO4_RPORT PINB +#define DIO4_WPORT PORTB +#define DIO4_DDR DDRB +#define DIO4_PWM OCR0B + +#define DIO5_PIN PINB5 +#define DIO5_RPORT PINB +#define DIO5_WPORT PORTB +#define DIO5_DDR DDRB +#define DIO5_PWM NULL + +#define DIO6_PIN PINB6 +#define DIO6_RPORT PINB +#define DIO6_WPORT PORTB +#define DIO6_DDR DDRB +#define DIO6_PWM NULL + +#define DIO7_PIN PINB7 +#define DIO7_RPORT PINB +#define DIO7_WPORT PORTB +#define DIO7_DDR DDRB +#define DIO7_PWM NULL + +#define DIO8_PIN PIND0 +#define DIO8_RPORT PIND +#define DIO8_WPORT PORTD +#define DIO8_DDR DDRD +#define DIO8_PWM NULL + +#define DIO9_PIN PIND1 +#define DIO9_RPORT PIND +#define DIO9_WPORT PORTD +#define DIO9_DDR DDRD +#define DIO9_PWM NULL + +#define DIO10_PIN PIND2 +#define DIO10_RPORT PIND +#define DIO10_WPORT PORTD +#define DIO10_DDR DDRD +#define DIO10_PWM NULL + +#define DIO11_PIN PIND3 +#define DIO11_RPORT PIND +#define DIO11_WPORT PORTD +#define DIO11_DDR DDRD +#define DIO11_PWM NULL + +#define DIO12_PIN PIND4 +#define DIO12_RPORT PIND +#define DIO12_WPORT PORTD +#define DIO12_DDR DDRD +#define DIO12_PWM OCR1B + +#define DIO13_PIN PIND5 +#define DIO13_RPORT PIND +#define DIO13_WPORT PORTD +#define DIO13_DDR DDRD +#define DIO13_PWM OCR1A + +#define DIO14_PIN PIND6 +#define DIO14_RPORT PIND +#define DIO14_WPORT PORTD +#define DIO14_DDR DDRD +#define DIO14_PWM OCR2B + +#define DIO15_PIN PIND7 +#define DIO15_RPORT PIND +#define DIO15_WPORT PORTD +#define DIO15_DDR DDRD +#define DIO15_PWM OCR2A + +#define DIO16_PIN PINC0 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_DDR DDRC +#define DIO16_PWM NULL + +#define DIO17_PIN PINC1 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_DDR DDRC +#define DIO17_PWM NULL + +#define DIO18_PIN PINC2 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_DDR DDRC +#define DIO18_PWM NULL + +#define DIO19_PIN PINC3 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_DDR DDRC +#define DIO19_PWM NULL + +#define DIO20_PIN PINC4 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_DDR DDRC +#define DIO20_PWM NULL + +#define DIO21_PIN PINC5 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_DDR DDRC +#define DIO21_PWM NULL + +#define DIO22_PIN PINC6 +#define DIO22_RPORT PINC +#define DIO22_WPORT PORTC +#define DIO22_DDR DDRC +#define DIO22_PWM NULL + +#define DIO23_PIN PINC7 +#define DIO23_RPORT PINC +#define DIO23_WPORT PORTC +#define DIO23_DDR DDRC +#define DIO23_PWM NULL + +#define DIO24_PIN PINA7 +#define DIO24_RPORT PINA +#define DIO24_WPORT PORTA +#define DIO24_DDR DDRA +#define DIO24_PWM NULL + +#define DIO25_PIN PINA6 +#define DIO25_RPORT PINA +#define DIO25_WPORT PORTA +#define DIO25_DDR DDRA +#define DIO25_PWM NULL + +#define DIO26_PIN PINA5 +#define DIO26_RPORT PINA +#define DIO26_WPORT PORTA +#define DIO26_DDR DDRA +#define DIO26_PWM NULL + +#define DIO27_PIN PINA4 +#define DIO27_RPORT PINA +#define DIO27_WPORT PORTA +#define DIO27_DDR DDRA +#define DIO27_PWM NULL + +#define DIO28_PIN PINA3 +#define DIO28_RPORT PINA +#define DIO28_WPORT PORTA +#define DIO28_DDR DDRA +#define DIO28_PWM NULL + +#define DIO29_PIN PINA2 +#define DIO29_RPORT PINA +#define DIO29_WPORT PORTA +#define DIO29_DDR DDRA +#define DIO29_PWM NULL + +#define DIO30_PIN PINA1 +#define DIO30_RPORT PINA +#define DIO30_WPORT PORTA +#define DIO30_DDR DDRA +#define DIO30_PWM NULL + +#define DIO31_PIN PINA0 +#define DIO31_RPORT PINA +#define DIO31_WPORT PORTA +#define DIO31_DDR DDRA +#define DIO31_PWM NULL + +#define AIO0_PIN PINA0 +#define AIO0_RPORT PINA +#define AIO0_WPORT PORTA +#define AIO0_DDR DDRA +#define AIO0_PWM NULL + +#define AIO1_PIN PINA1 +#define AIO1_RPORT PINA +#define AIO1_WPORT PORTA +#define AIO1_DDR DDRA +#define AIO1_PWM NULL + +#define AIO2_PIN PINA2 +#define AIO2_RPORT PINA +#define AIO2_WPORT PORTA +#define AIO2_DDR DDRA +#define AIO2_PWM NULL + +#define AIO3_PIN PINA3 +#define AIO3_RPORT PINA +#define AIO3_WPORT PORTA +#define AIO3_DDR DDRA +#define AIO3_PWM NULL + +#define AIO4_PIN PINA4 +#define AIO4_RPORT PINA +#define AIO4_WPORT PORTA +#define AIO4_DDR DDRA +#define AIO4_PWM NULL + +#define AIO5_PIN PINA5 +#define AIO5_RPORT PINA +#define AIO5_WPORT PORTA +#define AIO5_DDR DDRA +#define AIO5_PWM NULL + +#define AIO6_PIN PINA6 +#define AIO6_RPORT PINA +#define AIO6_WPORT PORTA +#define AIO6_DDR DDRA +#define AIO6_PWM NULL + +#define AIO7_PIN PINA7 +#define AIO7_RPORT PINA +#define AIO7_WPORT PORTA +#define AIO7_DDR DDRA +#define AIO7_PWM NULL + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL + +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL + +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL + +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL + +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL + +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL + +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL + +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL + +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL + +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL + +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM OCR0A + +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM OCR0B + +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL + +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL + +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM NULL + + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL + +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL + +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL + +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL + +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL + +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL + +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL + +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL + +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL + +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL + +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL + +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL + +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL + +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM OCR2B + +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM OCR2A +#endif /* _AVR_ATmega{644,644P,644PA}__ */ + +#if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO52 +#define MISO DIO50 +#define MOSI DIO51 +#define SS DIO53 + +// TWI (I2C) +#define SCL DIO21 +#define SDA DIO20 + +// timers and PWM +#define OC0A DIO13 +#define OC0B DIO4 +#define OC1A DIO11 +#define OC1B DIO12 +#define OC2A DIO10 +#define OC2B DIO9 +#define OC3A DIO5 +#define OC3B DIO2 +#define OC3C DIO3 +#define OC4A DIO6 +#define OC4B DIO7 +#define OC4C DIO8 +#define OC5A DIO46 +#define OC5B DIO45 +#define OC5C DIO44 + +// change for your board +#define DEBUG_LED DIO21 + +/* +pins +*/ +#define DIO0_PIN PINE0 +#define DIO0_RPORT PINE +#define DIO0_WPORT PORTE +#define DIO0_DDR DDRE +#define DIO0_PWM NULL + +#define DIO1_PIN PINE1 +#define DIO1_RPORT PINE +#define DIO1_WPORT PORTE +#define DIO1_DDR DDRE +#define DIO1_PWM NULL + +#define DIO2_PIN PINE4 +#define DIO2_RPORT PINE +#define DIO2_WPORT PORTE +#define DIO2_DDR DDRE +#define DIO2_PWM &OCR3BL + +#define DIO3_PIN PINE5 +#define DIO3_RPORT PINE +#define DIO3_WPORT PORTE +#define DIO3_DDR DDRE +#define DIO3_PWM &OCR3CL + +#define DIO4_PIN PING5 +#define DIO4_RPORT PING +#define DIO4_WPORT PORTG +#define DIO4_DDR DDRG +#define DIO4_PWM &OCR0B + +#define DIO5_PIN PINE3 +#define DIO5_RPORT PINE +#define DIO5_WPORT PORTE +#define DIO5_DDR DDRE +#define DIO5_PWM &OCR3AL + +#define DIO6_PIN PINH3 +#define DIO6_RPORT PINH +#define DIO6_WPORT PORTH +#define DIO6_DDR DDRH +#define DIO6_PWM &OCR4AL + +#define DIO7_PIN PINH4 +#define DIO7_RPORT PINH +#define DIO7_WPORT PORTH +#define DIO7_DDR DDRH +#define DIO7_PWM &OCR4BL + +#define DIO8_PIN PINH5 +#define DIO8_RPORT PINH +#define DIO8_WPORT PORTH +#define DIO8_DDR DDRH +#define DIO8_PWM &OCR4CL + +#define DIO9_PIN PINH6 +#define DIO9_RPORT PINH +#define DIO9_WPORT PORTH +#define DIO9_DDR DDRH +#define DIO9_PWM &OCR2B + +#define DIO10_PIN PINB4 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM &OCR2A + +#define DIO11_PIN PINB5 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM NULL + +#define DIO12_PIN PINB6 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINB7 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_DDR DDRB +#define DIO13_PWM &OCR0A + +#define DIO14_PIN PINJ1 +#define DIO14_RPORT PINJ +#define DIO14_WPORT PORTJ +#define DIO14_DDR DDRJ +#define DIO14_PWM NULL + +#define DIO15_PIN PINJ0 +#define DIO15_RPORT PINJ +#define DIO15_WPORT PORTJ +#define DIO15_DDR DDRJ +#define DIO15_PWM NULL + +#define DIO16_PIN PINH1 +#define DIO16_RPORT PINH +#define DIO16_WPORT PORTH +#define DIO16_DDR DDRH +#define DIO16_PWM NULL + +#define DIO17_PIN PINH0 +#define DIO17_RPORT PINH +#define DIO17_WPORT PORTH +#define DIO17_DDR DDRH +#define DIO17_PWM NULL + +#define DIO18_PIN PIND3 +#define DIO18_RPORT PIND +#define DIO18_WPORT PORTD +#define DIO18_DDR DDRD +#define DIO18_PWM NULL + +#define DIO19_PIN PIND2 +#define DIO19_RPORT PIND +#define DIO19_WPORT PORTD +#define DIO19_DDR DDRD +#define DIO19_PWM NULL + +#define DIO20_PIN PIND1 +#define DIO20_RPORT PIND +#define DIO20_WPORT PORTD +#define DIO20_DDR DDRD +#define DIO20_PWM NULL + +#define DIO21_PIN PIND0 +#define DIO21_RPORT PIND +#define DIO21_WPORT PORTD +#define DIO21_DDR DDRD +#define DIO21_PWM NULL + +#define DIO22_PIN PINA0 +#define DIO22_RPORT PINA +#define DIO22_WPORT PORTA +#define DIO22_DDR DDRA +#define DIO22_PWM NULL + +#define DIO23_PIN PINA1 +#define DIO23_RPORT PINA +#define DIO23_WPORT PORTA +#define DIO23_DDR DDRA +#define DIO23_PWM NULL + +#define DIO24_PIN PINA2 +#define DIO24_RPORT PINA +#define DIO24_WPORT PORTA +#define DIO24_DDR DDRA +#define DIO24_PWM NULL + +#define DIO25_PIN PINA3 +#define DIO25_RPORT PINA +#define DIO25_WPORT PORTA +#define DIO25_DDR DDRA +#define DIO25_PWM NULL + +#define DIO26_PIN PINA4 +#define DIO26_RPORT PINA +#define DIO26_WPORT PORTA +#define DIO26_DDR DDRA +#define DIO26_PWM NULL + +#define DIO27_PIN PINA5 +#define DIO27_RPORT PINA +#define DIO27_WPORT PORTA +#define DIO27_DDR DDRA +#define DIO27_PWM NULL + +#define DIO28_PIN PINA6 +#define DIO28_RPORT PINA +#define DIO28_WPORT PORTA +#define DIO28_DDR DDRA +#define DIO28_PWM NULL + +#define DIO29_PIN PINA7 +#define DIO29_RPORT PINA +#define DIO29_WPORT PORTA +#define DIO29_DDR DDRA +#define DIO29_PWM NULL + +#define DIO30_PIN PINC7 +#define DIO30_RPORT PINC +#define DIO30_WPORT PORTC +#define DIO30_DDR DDRC +#define DIO30_PWM NULL + +#define DIO31_PIN PINC6 +#define DIO31_RPORT PINC +#define DIO31_WPORT PORTC +#define DIO31_DDR DDRC +#define DIO31_PWM NULL + +#define DIO32_PIN PINC5 +#define DIO32_RPORT PINC +#define DIO32_WPORT PORTC +#define DIO32_DDR DDRC +#define DIO32_PWM NULL + +#define DIO33_PIN PINC4 +#define DIO33_RPORT PINC +#define DIO33_WPORT PORTC +#define DIO33_DDR DDRC +#define DIO33_PWM NULL + +#define DIO34_PIN PINC3 +#define DIO34_RPORT PINC +#define DIO34_WPORT PORTC +#define DIO34_DDR DDRC +#define DIO34_PWM NULL + +#define DIO35_PIN PINC2 +#define DIO35_RPORT PINC +#define DIO35_WPORT PORTC +#define DIO35_DDR DDRC +#define DIO35_PWM NULL + +#define DIO36_PIN PINC1 +#define DIO36_RPORT PINC +#define DIO36_WPORT PORTC +#define DIO36_DDR DDRC +#define DIO36_PWM NULL + +#define DIO37_PIN PINC0 +#define DIO37_RPORT PINC +#define DIO37_WPORT PORTC +#define DIO37_DDR DDRC +#define DIO37_PWM NULL + +#define DIO38_PIN PIND7 +#define DIO38_RPORT PIND +#define DIO38_WPORT PORTD +#define DIO38_DDR DDRD +#define DIO38_PWM NULL + +#define DIO39_PIN PING2 +#define DIO39_RPORT PING +#define DIO39_WPORT PORTG +#define DIO39_DDR DDRG +#define DIO39_PWM NULL + +#define DIO40_PIN PING1 +#define DIO40_RPORT PING +#define DIO40_WPORT PORTG +#define DIO40_DDR DDRG +#define DIO40_PWM NULL + +#define DIO41_PIN PING0 +#define DIO41_RPORT PING +#define DIO41_WPORT PORTG +#define DIO41_DDR DDRG +#define DIO41_PWM NULL + +#define DIO42_PIN PINL7 +#define DIO42_RPORT PINL +#define DIO42_WPORT PORTL +#define DIO42_DDR DDRL +#define DIO42_PWM NULL + +#define DIO43_PIN PINL6 +#define DIO43_RPORT PINL +#define DIO43_WPORT PORTL +#define DIO43_DDR DDRL +#define DIO43_PWM NULL + +#define DIO44_PIN PINL5 +#define DIO44_RPORT PINL +#define DIO44_WPORT PORTL +#define DIO44_DDR DDRL +#define DIO44_PWM &OCR5CL + +#define DIO45_PIN PINL4 +#define DIO45_RPORT PINL +#define DIO45_WPORT PORTL +#define DIO45_DDR DDRL +#define DIO45_PWM &OCR5BL + +#define DIO46_PIN PINL3 +#define DIO46_RPORT PINL +#define DIO46_WPORT PORTL +#define DIO46_DDR DDRL +#define DIO46_PWM &OCR5AL + +#define DIO47_PIN PINL2 +#define DIO47_RPORT PINL +#define DIO47_WPORT PORTL +#define DIO47_DDR DDRL +#define DIO47_PWM NULL + +#define DIO48_PIN PINL1 +#define DIO48_RPORT PINL +#define DIO48_WPORT PORTL +#define DIO48_DDR DDRL +#define DIO48_PWM NULL + +#define DIO49_PIN PINL0 +#define DIO49_RPORT PINL +#define DIO49_WPORT PORTL +#define DIO49_DDR DDRL +#define DIO49_PWM NULL + +#define DIO50_PIN PINB3 +#define DIO50_RPORT PINB +#define DIO50_WPORT PORTB +#define DIO50_DDR DDRB +#define DIO50_PWM NULL + +#define DIO51_PIN PINB2 +#define DIO51_RPORT PINB +#define DIO51_WPORT PORTB +#define DIO51_DDR DDRB +#define DIO51_PWM NULL + +#define DIO52_PIN PINB1 +#define DIO52_RPORT PINB +#define DIO52_WPORT PORTB +#define DIO52_DDR DDRB +#define DIO52_PWM NULL + +#define DIO53_PIN PINB0 +#define DIO53_RPORT PINB +#define DIO53_WPORT PORTB +#define DIO53_DDR DDRB +#define DIO53_PWM NULL + +#define DIO54_PIN PINF0 +#define DIO54_RPORT PINF +#define DIO54_WPORT PORTF +#define DIO54_DDR DDRF +#define DIO54_PWM NULL + +#define DIO55_PIN PINF1 +#define DIO55_RPORT PINF +#define DIO55_WPORT PORTF +#define DIO55_DDR DDRF +#define DIO55_PWM NULL + +#define DIO56_PIN PINF2 +#define DIO56_RPORT PINF +#define DIO56_WPORT PORTF +#define DIO56_DDR DDRF +#define DIO56_PWM NULL + +#define DIO57_PIN PINF3 +#define DIO57_RPORT PINF +#define DIO57_WPORT PORTF +#define DIO57_DDR DDRF +#define DIO57_PWM NULL + +#define DIO58_PIN PINF4 +#define DIO58_RPORT PINF +#define DIO58_WPORT PORTF +#define DIO58_DDR DDRF +#define DIO58_PWM NULL + +#define DIO59_PIN PINF5 +#define DIO59_RPORT PINF +#define DIO59_WPORT PORTF +#define DIO59_DDR DDRF +#define DIO59_PWM NULL + +#define DIO60_PIN PINF6 +#define DIO60_RPORT PINF +#define DIO60_WPORT PORTF +#define DIO60_DDR DDRF +#define DIO60_PWM NULL + +#define DIO61_PIN PINF7 +#define DIO61_RPORT PINF +#define DIO61_WPORT PORTF +#define DIO61_DDR DDRF +#define DIO61_PWM NULL + +#define DIO62_PIN PINK0 +#define DIO62_RPORT PINK +#define DIO62_WPORT PORTK +#define DIO62_DDR DDRK +#define DIO62_PWM NULL + +#define DIO63_PIN PINK1 +#define DIO63_RPORT PINK +#define DIO63_WPORT PORTK +#define DIO63_DDR DDRK +#define DIO63_PWM NULL + +#define DIO64_PIN PINK2 +#define DIO64_RPORT PINK +#define DIO64_WPORT PORTK +#define DIO64_DDR DDRK +#define DIO64_PWM NULL + +#define DIO65_PIN PINK3 +#define DIO65_RPORT PINK +#define DIO65_WPORT PORTK +#define DIO65_DDR DDRK +#define DIO65_PWM NULL + +#define DIO66_PIN PINK4 +#define DIO66_RPORT PINK +#define DIO66_WPORT PORTK +#define DIO66_DDR DDRK +#define DIO66_PWM NULL + +#define DIO67_PIN PINK5 +#define DIO67_RPORT PINK +#define DIO67_WPORT PORTK +#define DIO67_DDR DDRK +#define DIO67_PWM NULL + +#define DIO68_PIN PINK6 +#define DIO68_RPORT PINK +#define DIO68_WPORT PORTK +#define DIO68_DDR DDRK +#define DIO68_PWM NULL + +#define DIO69_PIN PINK7 +#define DIO69_RPORT PINK +#define DIO69_WPORT PORTK +#define DIO69_DDR DDRK +#define DIO69_PWM NULL + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM NULL +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM &OCR2A +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM &OCR0A + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM NULL +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_DDR DDRE +#define PE0_PWM NULL +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_DDR DDRE +#define PE1_PWM NULL +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_DDR DDRE +#define PE2_PWM NULL +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_DDR DDRE +#define PE3_PWM &OCR3AL +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_DDR DDRE +#define PE4_PWM &OCR3BL +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_DDR DDRE +#define PE5_PWM &OCR3CL +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_DDR DDRE +#define PE6_PWM NULL +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_DDR DDRE +#define PE7_PWM NULL + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_DDR DDRF +#define PF0_PWM NULL +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_DDR DDRF +#define PF1_PWM NULL +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_DDR DDRF +#define PF2_PWM NULL +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_DDR DDRF +#define PF3_PWM NULL +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_DDR DDRF +#define PF4_PWM NULL +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_DDR DDRF +#define PF5_PWM NULL +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_DDR DDRF +#define PF6_PWM NULL +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_DDR DDRF +#define PF7_PWM NULL + +#undef PG0 +#define PG0_PIN PING0 +#define PG0_RPORT PING +#define PG0_WPORT PORTG +#define PG0_DDR DDRG +#define PG0_PWM NULL +#undef PG1 +#define PG1_PIN PING1 +#define PG1_RPORT PING +#define PG1_WPORT PORTG +#define PG1_DDR DDRG +#define PG1_PWM NULL +#undef PG2 +#define PG2_PIN PING2 +#define PG2_RPORT PING +#define PG2_WPORT PORTG +#define PG2_DDR DDRG +#define PG2_PWM NULL +#undef PG3 +#define PG3_PIN PING3 +#define PG3_RPORT PING +#define PG3_WPORT PORTG +#define PG3_DDR DDRG +#define PG3_PWM NULL +#undef PG4 +#define PG4_PIN PING4 +#define PG4_RPORT PING +#define PG4_WPORT PORTG +#define PG4_DDR DDRG +#define PG4_PWM NULL +#undef PG5 +#define PG5_PIN PING5 +#define PG5_RPORT PING +#define PG5_WPORT PORTG +#define PG5_DDR DDRG +#define PG5_PWM &OCR0B +#undef PG6 +#define PG6_PIN PING6 +#define PG6_RPORT PING +#define PG6_WPORT PORTG +#define PG6_DDR DDRG +#define PG6_PWM NULL +#undef PG7 +#define PG7_PIN PING7 +#define PG7_RPORT PING +#define PG7_WPORT PORTG +#define PG7_DDR DDRG +#define PG7_PWM NULL + +#undef PH0 +#define PH0_PIN PINH0 +#define PH0_RPORT PINH +#define PH0_WPORT PORTH +#define PH0_DDR DDRH +#define PH0_PWM NULL +#undef PH1 +#define PH1_PIN PINH1 +#define PH1_RPORT PINH +#define PH1_WPORT PORTH +#define PH1_DDR DDRH +#define PH1_PWM NULL +#undef PH2 +#define PH2_PIN PINH2 +#define PH2_RPORT PINH +#define PH2_WPORT PORTH +#define PH2_DDR DDRH +#define PH2_PWM NULL +#undef PH3 +#define PH3_PIN PINH3 +#define PH3_RPORT PINH +#define PH3_WPORT PORTH +#define PH3_DDR DDRH +#define PH3_PWM &OCR4AL +#undef PH4 +#define PH4_PIN PINH4 +#define PH4_RPORT PINH +#define PH4_WPORT PORTH +#define PH4_DDR DDRH +#define PH4_PWM &OCR4BL +#undef PH5 +#define PH5_PIN PINH5 +#define PH5_RPORT PINH +#define PH5_WPORT PORTH +#define PH5_DDR DDRH +#define PH5_PWM &OCR4CL +#undef PH6 +#define PH6_PIN PINH6 +#define PH6_RPORT PINH +#define PH6_WPORT PORTH +#define PH6_DDR DDRH +#define PH6_PWM &OCR2B +#undef PH7 +#define PH7_PIN PINH7 +#define PH7_RPORT PINH +#define PH7_WPORT PORTH +#define PH7_DDR DDRH +#define PH7_PWM NULL + +#undef PJ0 +#define PJ0_PIN PINJ0 +#define PJ0_RPORT PINJ +#define PJ0_WPORT PORTJ +#define PJ0_DDR DDRJ +#define PJ0_PWM NULL +#undef PJ1 +#define PJ1_PIN PINJ1 +#define PJ1_RPORT PINJ +#define PJ1_WPORT PORTJ +#define PJ1_DDR DDRJ +#define PJ1_PWM NULL +#undef PJ2 +#define PJ2_PIN PINJ2 +#define PJ2_RPORT PINJ +#define PJ2_WPORT PORTJ +#define PJ2_DDR DDRJ +#define PJ2_PWM NULL +#undef PJ3 +#define PJ3_PIN PINJ3 +#define PJ3_RPORT PINJ +#define PJ3_WPORT PORTJ +#define PJ3_DDR DDRJ +#define PJ3_PWM NULL +#undef PJ4 +#define PJ4_PIN PINJ4 +#define PJ4_RPORT PINJ +#define PJ4_WPORT PORTJ +#define PJ4_DDR DDRJ +#define PJ4_PWM NULL +#undef PJ5 +#define PJ5_PIN PINJ5 +#define PJ5_RPORT PINJ +#define PJ5_WPORT PORTJ +#define PJ5_DDR DDRJ +#define PJ5_PWM NULL +#undef PJ6 +#define PJ6_PIN PINJ6 +#define PJ6_RPORT PINJ +#define PJ6_WPORT PORTJ +#define PJ6_DDR DDRJ +#define PJ6_PWM NULL +#undef PJ7 +#define PJ7_PIN PINJ7 +#define PJ7_RPORT PINJ +#define PJ7_WPORT PORTJ +#define PJ7_DDR DDRJ +#define PJ7_PWM NULL + +#undef PK0 +#define PK0_PIN PINK0 +#define PK0_RPORT PINK +#define PK0_WPORT PORTK +#define PK0_DDR DDRK +#define PK0_PWM NULL +#undef PK1 +#define PK1_PIN PINK1 +#define PK1_RPORT PINK +#define PK1_WPORT PORTK +#define PK1_DDR DDRK +#define PK1_PWM NULL +#undef PK2 +#define PK2_PIN PINK2 +#define PK2_RPORT PINK +#define PK2_WPORT PORTK +#define PK2_DDR DDRK +#define PK2_PWM NULL +#undef PK3 +#define PK3_PIN PINK3 +#define PK3_RPORT PINK +#define PK3_WPORT PORTK +#define PK3_DDR DDRK +#define PK3_PWM NULL +#undef PK4 +#define PK4_PIN PINK4 +#define PK4_RPORT PINK +#define PK4_WPORT PORTK +#define PK4_DDR DDRK +#define PK4_PWM NULL +#undef PK5 +#define PK5_PIN PINK5 +#define PK5_RPORT PINK +#define PK5_WPORT PORTK +#define PK5_DDR DDRK +#define PK5_PWM NULL +#undef PK6 +#define PK6_PIN PINK6 +#define PK6_RPORT PINK +#define PK6_WPORT PORTK +#define PK6_DDR DDRK +#define PK6_PWM NULL +#undef PK7 +#define PK7_PIN PINK7 +#define PK7_RPORT PINK +#define PK7_WPORT PORTK +#define PK7_DDR DDRK +#define PK7_PWM NULL + +#undef PL0 +#define PL0_PIN PINL0 +#define PL0_RPORT PINL +#define PL0_WPORT PORTL +#define PL0_DDR DDRL +#define PL0_PWM NULL +#undef PL1 +#define PL1_PIN PINL1 +#define PL1_RPORT PINL +#define PL1_WPORT PORTL +#define PL1_DDR DDRL +#define PL1_PWM NULL +#undef PL2 +#define PL2_PIN PINL2 +#define PL2_RPORT PINL +#define PL2_WPORT PORTL +#define PL2_DDR DDRL +#define PL2_PWM NULL +#undef PL3 +#define PL3_PIN PINL3 +#define PL3_RPORT PINL +#define PL3_WPORT PORTL +#define PL3_DDR DDRL +#define PL3_PWM &OCR5AL +#undef PL4 +#define PL4_PIN PINL4 +#define PL4_RPORT PINL +#define PL4_WPORT PORTL +#define PL4_DDR DDRL +#define PL4_PWM &OCR5BL +#undef PL5 +#define PL5_PIN PINL5 +#define PL5_RPORT PINL +#define PL5_WPORT PORTL +#define PL5_DDR DDRL +#define PL5_PWM &OCR5CL +#undef PL6 +#define PL6_PIN PINL6 +#define PL6_RPORT PINL +#define PL6_WPORT PORTL +#define PL6_DDR DDRL +#define PL6_PWM NULL +#undef PL7 +#define PL7_PIN PINL7 +#define PL7_RPORT PINL +#define PL7_WPORT PORTL +#define PL7_DDR DDRL +#define PL7_PWM NULL + +#endif + +#if defined (__AVR_AT90USB1287__) +// SPI +#define SCK DIO9 +#define MISO DIO11 +#define MOSI DIO10 +#define SS DIO8 + +// change for your board +#define DEBUG_LED DIO31 /* led D5 red */ + +/* +pins +*/ +#define DIO0_PIN PINA0 +#define DIO0_RPORT PINA +#define DIO0_WPORT PORTA +#define DIO0_PWM NULL +#define DIO0_DDR DDRA + +#define DIO1_PIN PINA1 +#define DIO1_RPORT PINA +#define DIO1_WPORT PORTA +#define DIO1_PWM NULL +#define DIO1_DDR DDRA + +#define DIO2_PIN PINA2 +#define DIO2_RPORT PINA +#define DIO2_WPORT PORTA +#define DIO2_PWM NULL +#define DIO2_DDR DDRA + +#define DIO3_PIN PINA3 +#define DIO3_RPORT PINA +#define DIO3_WPORT PORTA +#define DIO3_PWM NULL +#define DIO3_DDR DDRA + +#define DIO4_PIN PINA4 +#define DIO4_RPORT PINA +#define DIO4_WPORT PORTA +#define DIO4_PWM NULL +#define DIO4_DDR DDRA + +#define DIO5_PIN PINA5 +#define DIO5_RPORT PINA +#define DIO5_WPORT PORTA +#define DIO5_PWM NULL +#define DIO5_DDR DDRA + +#define DIO6_PIN PINA6 +#define DIO6_RPORT PINA +#define DIO6_WPORT PORTA +#define DIO6_PWM NULL +#define DIO6_DDR DDRA + +#define DIO7_PIN PINA7 +#define DIO7_RPORT PINA +#define DIO7_WPORT PORTA +#define DIO7_PWM NULL +#define DIO7_DDR DDRA + +#define DIO8_PIN PINB0 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_PWM NULL +#define DIO8_DDR DDRB + +#define DIO9_PIN PINB1 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_PWM NULL +#define DIO9_DDR DDRB + +#define DIO10_PIN PINB2 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_PWM NULL +#define DIO10_DDR DDRB + +#define DIO11_PIN PINB3 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_PWM NULL +#define DIO11_DDR DDRB + +#define DIO12_PIN PINB4 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_PWM NULL +#define DIO12_DDR DDRB + +#define DIO13_PIN PINB5 +#define DIO13_RPORT PINB +#define DIO13_WPORT PORTB +#define DIO13_PWM NULL +#define DIO13_DDR DDRB + +#define DIO14_PIN PINB6 +#define DIO14_RPORT PINB +#define DIO14_WPORT PORTB +#define DIO14_PWM NULL +#define DIO14_DDR DDRB + +#define DIO15_PIN PINB7 +#define DIO15_RPORT PINB +#define DIO15_WPORT PORTB +#define DIO15_PWM NULL +#define DIO15_DDR DDRB + +#define DIO16_PIN PINC0 +#define DIO16_RPORT PINC +#define DIO16_WPORT PORTC +#define DIO16_PWM NULL +#define DIO16_DDR DDRC + +#define DIO17_PIN PINC1 +#define DIO17_RPORT PINC +#define DIO17_WPORT PORTC +#define DIO17_PWM NULL +#define DIO17_DDR DDRC + +#define DIO18_PIN PINC2 +#define DIO18_RPORT PINC +#define DIO18_WPORT PORTC +#define DIO18_PWM NULL +#define DIO18_DDR DDRC + +#define DIO19_PIN PINC3 +#define DIO19_RPORT PINC +#define DIO19_WPORT PORTC +#define DIO19_PWM NULL +#define DIO19_DDR DDRC + +#define DIO20_PIN PINC4 +#define DIO20_RPORT PINC +#define DIO20_WPORT PORTC +#define DIO20_PWM NULL +#define DIO20_DDR DDRC + +#define DIO21_PIN PINC5 +#define DIO21_RPORT PINC +#define DIO21_WPORT PORTC +#define DIO21_PWM NULL +#define DIO21_DDR DDRC + +#define DIO22_PIN PINC6 +#define DIO22_RPORT PINC +#define DIO22_WPORT PORTC +#define DIO22_PWM NULL +#define DIO22_DDR DDRC + +#define DIO23_PIN PINC7 +#define DIO23_RPORT PINC +#define DIO23_WPORT PORTC +#define DIO23_PWM NULL +#define DIO23_DDR DDRC + +#define DIO24_PIN PIND0 +#define DIO24_RPORT PIND +#define DIO24_WPORT PORTD +#define DIO24_PWM NULL +#define DIO24_DDR DDRD + +#define DIO25_PIN PIND1 +#define DIO25_RPORT PIND +#define DIO25_WPORT PORTD +#define DIO25_PWM NULL +#define DIO25_DDR DDRD + +#define DIO26_PIN PIND2 +#define DIO26_RPORT PIND +#define DIO26_WPORT PORTD +#define DIO26_PWM NULL +#define DIO26_DDR DDRD + +#define DIO27_PIN PIND3 +#define DIO27_RPORT PIND +#define DIO27_WPORT PORTD +#define DIO27_PWM NULL +#define DIO27_DDR DDRD + +#define DIO28_PIN PIND4 +#define DIO28_RPORT PIND +#define DIO28_WPORT PORTD +#define DIO28_PWM NULL +#define DIO28_DDR DDRD + +#define DIO29_PIN PIND5 +#define DIO29_RPORT PIND +#define DIO29_WPORT PORTD +#define DIO29_PWM NULL +#define DIO29_DDR DDRD + +#define DIO30_PIN PIND6 +#define DIO30_RPORT PIND +#define DIO30_WPORT PORTD +#define DIO30_PWM NULL +#define DIO30_DDR DDRD + +#define DIO31_PIN PIND7 +#define DIO31_RPORT PIND +#define DIO31_WPORT PORTD +#define DIO31_PWM NULL +#define DIO31_DDR DDRD + + +#define DIO32_PIN PINE0 +#define DIO32_RPORT PINE +#define DIO32_WPORT PORTE +#define DIO32_PWM NULL +#define DIO32_DDR DDRE + +#define DIO33_PIN PINE1 +#define DIO33_RPORT PINE +#define DIO33_WPORT PORTE +#define DIO33_PWM NULL +#define DIO33_DDR DDRE + +#define DIO34_PIN PINE2 +#define DIO34_RPORT PINE +#define DIO34_WPORT PORTE +#define DIO34_PWM NULL +#define DIO34_DDR DDRE + +#define DIO35_PIN PINE3 +#define DIO35_RPORT PINE +#define DIO35_WPORT PORTE +#define DIO35_PWM NULL +#define DIO35_DDR DDRE + +#define DIO36_PIN PINE4 +#define DIO36_RPORT PINE +#define DIO36_WPORT PORTE +#define DIO36_PWM NULL +#define DIO36_DDR DDRE + +#define DIO37_PIN PINE5 +#define DIO37_RPORT PINE +#define DIO37_WPORT PORTE +#define DIO37_PWM NULL +#define DIO37_DDR DDRE + +#define DIO38_PIN PINE6 +#define DIO38_RPORT PINE +#define DIO38_WPORT PORTE +#define DIO38_PWM NULL +#define DIO38_DDR DDRE + +#define DIO39_PIN PINE7 +#define DIO39_RPORT PINE +#define DIO39_WPORT PORTE +#define DIO39_PWM NULL +#define DIO39_DDR DDRE + +#define AIO0_PIN PINF0 +#define AIO0_RPORT PINF +#define AIO0_WPORT PORTF +#define AIO0_PWM NULL +#define AIO0_DDR DDRF + +#define AIO1_PIN PINF1 +#define AIO1_RPORT PINF +#define AIO1_WPORT PORTF +#define AIO1_PWM NULL +#define AIO1_DDR DDRF + +#define AIO2_PIN PINF2 +#define AIO2_RPORT PINF +#define AIO2_WPORT PORTF +#define AIO2_PWM NULL +#define AIO2_DDR DDRF + +#define AIO3_PIN PINF3 +#define AIO3_RPORT PINF +#define AIO3_WPORT PORTF +#define AIO3_PWM NULL +#define AIO3_DDR DDRF + +#define AIO4_PIN PINF4 +#define AIO4_RPORT PINF +#define AIO4_WPORT PORTF +#define AIO4_PWM NULL +#define AIO4_DDR DDRF + +#define AIO5_PIN PINF5 +#define AIO5_RPORT PINF +#define AIO5_WPORT PORTF +#define AIO5_PWM NULL +#define AIO5_DDR DDRF + +#define AIO6_PIN PINF6 +#define AIO6_RPORT PINF +#define AIO6_WPORT PORTF +#define AIO6_PWM NULL +#define AIO6_DDR DDRF + +#define AIO7_PIN PINF7 +#define AIO7_RPORT PINF +#define AIO7_WPORT PORTF +#define AIO7_PWM NULL +#define AIO7_DDR DDRF + +#define DIO40_PIN PINF0 +#define DIO40_RPORT PINF +#define DIO40_WPORT PORTF +#define DIO40_PWM NULL +#define DIO40_DDR DDRF + +#define DIO41_PIN PINF1 +#define DIO41_RPORT PINF +#define DIO41_WPORT PORTF +#define DIO41_PWM NULL +#define DIO41_DDR DDRF + +#define DIO42_PIN PINF2 +#define DIO42_RPORT PINF +#define DIO42_WPORT PORTF +#define DIO42_PWM NULL +#define DIO42_DDR DDRF + +#define DIO43_PIN PINF3 +#define DIO43_RPORT PINF +#define DIO43_WPORT PORTF +#define DIO43_PWM NULL +#define DIO43_DDR DDRF + +#define DIO44_PIN PINF4 +#define DIO44_RPORT PINF +#define DIO44_WPORT PORTF +#define DIO44_PWM NULL +#define DIO44_DDR DDRF + +#define DIO45_PIN PINF5 +#define DIO45_RPORT PINF +#define DIO45_WPORT PORTF +#define DIO45_PWM NULL +#define DIO45_DDR DDRF + +#define DIO46_PIN PINF6 +#define DIO46_RPORT PINF +#define DIO46_WPORT PORTF +#define DIO46_PWM NULL +#define DIO46_DDR DDRF + +#define DIO47_PIN PINF7 +#define DIO47_RPORT PINF +#define DIO47_WPORT PORTF +#define DIO47_PWM NULL +#define DIO47_DDR DDRF + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_PWM NULL +#define PA0_DDR DDRA +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_PWM NULL +#define PA1_DDR DDRA +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_PWM NULL +#define PA2_DDR DDRA +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_PWM NULL +#define PA3_DDR DDRA +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_PWM NULL +#define PA4_DDR DDRA +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_PWM NULL +#define PA5_DDR DDRA +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_PWM NULL +#define PA6_DDR DDRA +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_PWM NULL +#define PA7_DDR DDRA + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_PWM NULL +#define PB0_DDR DDRB +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_PWM NULL +#define PB1_DDR DDRB +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_PWM NULL +#define PB2_DDR DDRB +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_PWM NULL +#define PB3_DDR DDRB +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_PWM NULL +#define PB4_DDR DDRB +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_PWM NULL +#define PB5_DDR DDRB +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_PWM NULL +#define PB6_DDR DDRB +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_PWM NULL +#define PB7_DDR DDRB + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_PWM NULL +#define PC0_DDR DDRC +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_PWM NULL +#define PC1_DDR DDRC +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_PWM NULL +#define PC2_DDR DDRC +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_PWM NULL +#define PC3_DDR DDRC +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_PWM NULL +#define PC4_DDR DDRC +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_PWM NULL +#define PC5_DDR DDRC +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_PWM NULL +#define PC6_DDR DDRC +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_PWM NULL +#define PC7_DDR DDRC + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_PWM NULL +#define PD0_DDR DDRD +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_PWM NULL +#define PD1_DDR DDRD +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_PWM NULL +#define PD2_DDR DDRD +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_PWM NULL +#define PD3_DDR DDRD +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_PWM NULL +#define PD4_DDR DDRD +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_PWM NULL +#define PD5_DDR DDRD +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_PWM NULL +#define PD6_DDR DDRD +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_PWM NULL +#define PD7_DDR DDRD + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_PWM NULL +#define PE0_DDR DDRE +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_PWM NULL +#define PE1_DDR DDRE +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_PWM NULL +#define PE2_DDR DDRE +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_PWM NULL +#define PE3_DDR DDRE +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_PWM NULL +#define PE4_DDR DDRE +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_PWM NULL +#define PE5_DDR DDRE +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_PWM NULL +#define PE6_DDR DDRE +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_PWM NULL +#define PE7_DDR DDRE + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_PWM NULL +#define PF0_DDR DDRF +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_PWM NULL +#define PF1_DDR DDRF +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_PWM NULL +#define PF2_DDR DDRF +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_PWM NULL +#define PF3_DDR DDRF +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_PWM NULL +#define PF4_DDR DDRF +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_PWM NULL +#define PF5_DDR DDRF +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_PWM NULL +#define PF6_DDR DDRF +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_PWM NULL +#define PF7_DDR DDRF +#endif + +#ifndef DIO0_PIN +#error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request +#endif + #endif /* _ARDUINO_H */ diff --git a/Marlin/pins.h b/Marlin/pins.h index 2c2bc9144..4ec22793e 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -1,738 +1,737 @@ -#ifndef PINS_H -#define PINS_H - -/**************************************************************************************** -* Arduino pin assignment -* -* ATMega168 -* +-\/-+ -* PC6 1| |28 PC5 (AI 5 / D19) -* (D 0) PD0 2| |27 PC4 (AI 4 / D18) -* (D 1) PD1 3| |26 PC3 (AI 3 / D17) -* (D 2) PD2 4| |25 PC2 (AI 2 / D16) -* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) -* (D 4) PD4 6| |23 PC0 (AI 0 / D14) -* VCC 7| |22 GND -* GND 8| |21 AREF -* PB6 9| |20 AVCC -* PB7 10| |19 PB5 (D 13) -* PWM+ (D 5) PD5 11| |18 PB4 (D 12) -* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM -* (D 7) PD7 13| |16 PB2 (D 10) PWM -* (D 8) PB0 14| |15 PB1 (D 9) PWM -* +----+ -****************************************************************************************/ -#if MOTHERBOARD == 0 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega168__ -#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. -#endif - -#define X_STEP_PIN 2 -#define X_DIR_PIN 3 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 4 -#define X_MAX_PIN 9 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN 13 - -#define Z_STEP_PIN 19 -#define Z_DIR_PIN 18 -#define Z_ENABLE_PIN 5 -#define Z_MIN_PIN 17 -#define Z_MAX_PIN 16 - -#define E0_STEP_PIN 11 -#define E0_DIR_PIN 12 -#define E0_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN -1 -#define PS_ON_PIN 15 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 -#endif - - - -/**************************************************************************************** -* Sanguino/RepRap Motherboard with direct-drive extruders -* -* ATMega644P -* -* +---\/---+ -* (D 0) PB0 1| |40 PA0 (AI 0 / D31) -* (D 1) PB1 2| |39 PA1 (AI 1 / D30) -* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) -* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) -* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) -* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) -* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) -* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) -* RST 9| |32 AREF -* VCC 10| |31 GND -* GND 11| |30 AVCC -* XTAL2 12| |29 PC7 (D 23) -* XTAL1 13| |28 PC6 (D 22) -* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI -* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO -* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS -* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK -* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA -* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL -* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM -* +--------+ -* -****************************************************************************************/ -#if MOTHERBOARD == 1 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 19 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PIN 29 -#define Z_DIR_PIN 30 -#define Z_ENABLE_PIN 31 -#define Z_MIN_PIN 2 -#define Z_MAX_PIN 1 - -#define E0_STEP_PIN 12 -#define E0_DIR_PIN 16 -#define E0_ENABLE_PIN 3 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN 0 -#define FAN_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 14 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 -/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ - - - -#endif - - -/**************************************************************************************** -* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* -* -****************************************************************************************/ -#if MOTHERBOARD == 2 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 24 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PINN 27 -#define Z_DIR_PINN 28 -#define Z_ENABLE_PIN 29 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 31 - -#define E0_STEP_PIN 17 -#define E0_DIR_PIN 16 -#define E0_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS 4 -#define LED_PIN 0 - -#define SD_CARD_WRITE 2 -#define SD_CARD_DETECT 3 -#define SD_CARD_SELECT 4 - -//our RS485 pins -#define TX_ENABLE_PIN 12 -#define RX_ENABLE_PIN 13 - -//pin for controlling the PSU. -#define PS_ON_PIN 14 - -#define FAN_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN -1 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 - -#endif - -/**************************************************************************************** -* Arduino Mega pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 33 -#define MOTHERBOARD 3 -#define RAMPS_V_1_3 -#endif -#if MOTHERBOARD == 3 -#define KNOWN_BOARD 1 - -//////////////////FIX THIS////////////// -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 -// #define RAMPS_V_1_3 -// #define RAMPS_V_1_0 - -#ifdef RAMPS_V_1_3 - -#define X_STEP_PIN 54 -#define X_DIR_PIN 55 -#define X_ENABLE_PIN 38 -#define X_MIN_PIN 3 -#define X_MAX_PIN 2 //2 //Max endstops default to disabled "-1", set to commented value to enable. - -#define Y_STEP_PIN 60 -#define Y_DIR_PIN 61 -#define Y_ENABLE_PIN 56 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN 15 //15 - -#define Z_STEP_PIN 46 -#define Z_DIR_PIN 48 -#define Z_ENABLE_PIN 62 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN 19 //19 - -#define E0_STEP_PIN 26 -#define E0_DIR_PIN 28 -#define E0_ENABLE_PIN 24 - -#define E1_STEP_PIN 36 -#define E1_DIR_PIN 34 -#define E1_ENABLE_PIN 30 - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 4 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#define HEATER_0_PIN 10 // EXTRUDER 1 -#define HEATER_1_PIN 9 // EXTRUDER 2 -#define HEATER_2_PIN -1 // EXTRUDER 2 -#define TEMP_0_PIN 13 // ANALOG NUMBERING -#define TEMP_1_PIN 15 // ANALOG NUMBERING -#define TEMP_2_PIN -1 // ANALOG NUMBERING -#define HEATER_BED_PIN 8 // BED -#define TEMP_BED_PIN 14 // ANALOG NUMBERING - - -#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default - -#define X_STEP_PIN 26 -#define X_DIR_PIN 28 -#define X_ENABLE_PIN 24 -#define X_MIN_PIN 3 -#define X_MAX_PIN -1 //2 - -#define Y_STEP_PIN 38 -#define Y_DIR_PIN 40 -#define Y_ENABLE_PIN 36 -#define Y_MIN_PIN 16 -#define Y_MAX_PIN -1 //17 - -#define Z_STEP_PIN 44 -#define Z_DIR_PIN 46 -#define Z_ENABLE_PIN 42 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN -1 //19 - -#define E0_STEP_PIN 32 -#define E0_DIR_PIN 34 -#define E0_ENABLE_PIN 30 - -#define SDPOWER 48 -#define SDSS 53 -#define LED_PIN 13 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - - - -#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 - #define HEATER_0_PIN 12 // RAMPS 1.0 - #define HEATER_BED_PIN -1 // RAMPS 1.0 - #define FAN_PIN 11 // RAMPS 1.0 -#else // RAMPS_V_1_1 or RAMPS_V_1_2 - #define HEATER_0_PIN 10 // RAMPS 1.1 - #define HEATER_BED_PIN 8 // RAMPS 1.1 - #define FAN_PIN 9 // RAMPS 1.1 -#endif -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#endif - -// SPI for Max6675 Thermocouple - -#ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 - #define MISO_PIN 50 - #define MOSI_PIN 51 - #define MAX6675_SS 53 -#else - #define MAX6675_SS 49 -#endif - - -#endif -/**************************************************************************************** -* Duemilanove w/ ATMega328P pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 4 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega328P__ -#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 19 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 17 -#define X_MAX_PIN -1 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 13 -#define Z_DIR_PIN 3 -#define Z_ENABLE_PIN 2 -#define Z_MIN_PIN 4 -#define Z_MAX_PIN -1 - -#define E0_STEP_PIN 11 -#define E0_DIR_PIN 12 -#define E0_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN 5 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 - -#endif - -/**************************************************************************************** -* Gen6 pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 5 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega644P__ - #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -//x axis pins - #define X_STEP_PIN 15 - #define X_DIR_PIN 18 - #define X_ENABLE_PIN 19 - #define X_MIN_PIN 20 - #define X_MAX_PIN -1 - - //y axis pins - #define Y_STEP_PIN 23 - #define Y_DIR_PIN 22 - #define Y_ENABLE_PIN 24 - #define Y_MIN_PIN 25 - #define Y_MAX_PIN -1 - - //z axis pins - #define Z_STEP_PIN 27 - #define Z_DIR_PIN 28 - #define Z_ENABLE_PIN 29 - #define Z_MIN_PIN 30 - #define Z_MAX_PIN -1 - - //extruder pins - #define E0_STEP_PIN 4 //Edited @ EJE Electronics 20100715 - #define E0_DIR_PIN 2 //Edited @ EJE Electronics 20100715 - #define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 - #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 - #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_2_PIN -1 //changed @ rkoeppl 20110410 - #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 - #define HEATER_1_PIN -1 - #define HEATER_2_PIN -1 - #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410 - #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410 - - #define SDPOWER -1 - #define SDSS 17 - #define LED_PIN -1 //changed @ rkoeppl 20110410 - #define FAN_PIN -1 //changed @ rkoeppl 20110410 - #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 - //our pin for debugging. - - #define DEBUG_PIN 0 - - //our RS485 pins - #define TX_ENABLE_PIN 12 - #define RX_ENABLE_PIN 13 - - -#endif - -/**************************************************************************************** -* Sanguinololu pin assignment -* -****************************************************************************************/ -#if MOTHERBOARD == 62 -#define MOTHERBOARD 6 -#define SANGUINOLOLU_V_1_2 -#endif -#if MOTHERBOARD == 6 -#define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. -#endif - -#define X_STEP_PIN 15 -#define X_DIR_PIN 21 -#define X_MIN_PIN 18 -#define X_MAX_PIN -2 - -#define Y_STEP_PIN 22 -#define Y_DIR_PIN 23 -#define Y_MIN_PIN 19 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 3 -#define Z_DIR_PIN 2 -#define Z_MIN_PIN 20 -#define Z_MAX_PIN -1 - -#define E0_STEP_PIN 1 -#define E0_DIR_PIN 0 - -#define LED_PIN -1 - -#define FAN_PIN -1 - -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 13 // (extruder) -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 - -#ifdef SANGUINOLOLU_V_1_2 - -#define HEATER_BED_PIN 12 // (bed) -#define X_ENABLE_PIN 14 -#define Y_ENABLE_PIN 14 -#define Z_ENABLE_PIN 26 -#define E0_ENABLE_PIN 14 - -#else - -#define HEATER_BED_PIN 14 // (bed) -#define X_ENABLE_PIN -1 -#define Y_ENABLE_PIN -1 -#define Z_ENABLE_PIN -1 -#define E0_ENABLE_PIN -1 - -#endif - -#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define TEMP_BED_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) -#define SDPOWER -1 -#define SDSS 31 - -#endif - - -#if MOTHERBOARD == 7 -#define KNOWN_BOARD -/***************************************************************** -* Ultimaker pin assignment -******************************************************************/ - -#ifndef __AVR_ATmega1280__ - #ifndef __AVR_ATmega2560__ - #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. - #endif -#endif - -#define X_STEP_PIN 25 -#define X_DIR_PIN 23 -#define X_MIN_PIN 22 -#define X_MAX_PIN 24 -#define X_ENABLE_PIN 27 - -#define Y_STEP_PIN 31 -#define Y_DIR_PIN 33 -#define Y_MIN_PIN 26 -#define Y_MAX_PIN 28 -#define Y_ENABLE_PIN 29 - -#define Z_STEP_PIN 37 -#define Z_DIR_PIN 39 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 32 -#define Z_ENABLE_PIN 35 - -#define HEATER_BED_PIN 4 -#define TEMP_BED_PIN 11 - -#define EXTRUDER_0_STEP_PIN 43 -#define EXTRUDER_0_DIR_PIN 45 -#define EXTRUDER_0_ENABLE_PIN 41 -#define HEATER_0_PIN 2 -#define TEMP_0_PIN 8 - -#define EXTRUDER_1_STEP_PIN 49 -#define EXTRUDER_1_DIR_PIN 47 -#define EXTRUDER_1_ENABLE_PIN 51 -#define EXTRUDER_1_HEATER_PIN 3 -#define EXTRUDER_1_TEMPERATURE_PIN 10 -#define HEATER_1_PIN 51 -#define TEMP_1_PIN 3 - - - -#define E0_STEP_PIN EXTRUDER_0_STEP_PIN -#define E0_DIR_PIN EXTRUDER_0_DIR_PIN -#define E0_ENABLE_PIN EXTRUDER_0_ENABLE_PIN - -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 -#define FAN_PIN 7 -#define PS_ON_PIN 12 -#define KILL_PIN -1 - -#ifdef ULTRA_LCD - - #ifdef NEWPANEL - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - #define LCD_PINS_RS 20 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 5 - #define LCD_PINS_D7 6 - - //buttons are directly attached - #define BTN_EN1 40 - #define BTN_EN2 42 - #define BTN_ENC 19 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - - #define SDCARDDETECT 38 - - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - #else //old style panel with shift register - //arduino pin witch triggers an piezzo beeper - #define BEEPER 18 - - //buttons are attached to a shift register - #define SHIFT_CLK 38 - #define SHIFT_LD 42 - #define SHIFT_OUT 40 - #define SHIFT_EN 17 - - #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 5 - #define LCD_PINS_D4 6 - #define LCD_PINS_D5 21 - #define LCD_PINS_D6 20 - #define LCD_PINS_D7 19 - - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - - - //bits in the shift register that carry the buttons for: - // left up center down right red - #define BL_LE 7 - #define BL_UP 6 - #define BL_MI 5 - #define BL_DW 4 - #define BL_RI 3 - #define BL_ST 2 - - #define BLEN_B 1 - #define BLEN_A 0 - #endif -#endif //ULTRA_LCD - -#endif - -/**************************************************************************************** -* Teensylu 0.7 pin assingments (ATMEGA90USB) -* Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! -****************************************************************************************/ -#if MOTHERBOARD == 8 -#define MOTHERBOARD 8 -#define KNOWN_BOARD 1 - - -#define X_STEP_PIN 0 -#define X_DIR_PIN 1 -#define X_ENABLE_PIN 39 -#define X_MIN_PIN 13 -#define X_MAX_PIN -1 - -#define Y_STEP_PIN 2 -#define Y_DIR_PIN 3 -#define Y_ENABLE_PIN 38 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN -1 - -#define Z_STEP_PIN 4 -#define Z_DIR_PIN 5 -#define Z_ENABLE_PIN 23 -#define Z_MIN_PIN 15 -#define Z_MAX_PIN -1 - -#define E0_STEP_PIN 6 -#define E0_DIR_PIN 7 -#define E0_ENABLE_PIN 19 - - - -#define HEATER_0_PIN 21 // Extruder -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define HEATER_BED_PIN 20 // Bed -#define FAN_PIN 22 // Fan - -#define TEMP_0_PIN 7 // Extruder -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define TEMP_BED_PIN 6 // Bed - -#define SDPOWER -1 -#define SDSS 8 -#define LED_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 -#define ALARM_PIN -1 - -#ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support - #define SCK_PIN 9 - #define MISO_PIN 11 - #define MOSI_PIN 10 -#endif -#endif - -#ifndef KNOWN_BOARD -#error Unknown MOTHERBOARD value in configuration.h -#endif - -//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN -#if EXTRUDERS == 3 - #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN - #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN -#elif EXTRUDERS == 2 - #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN - #define _E2_PINS -1 -#elif EXTRUDERS == 1 - #define _E1_PINS -1 - #define _E2_PINS -1 -#else - #error Unsupported number of extruders -#endif -#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, LED_PIN, PS_ON_PIN, \ - HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, \ - HEATER_BED_PIN, FAN_PIN, \ - _E0_PINS, _E1_PINS, _E2_PINS, \ - TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN, TEMP_BED_PIN } +#ifndef PINS_H +#define PINS_H + +/**************************************************************************************** +* Arduino pin assignment +* +* ATMega168 +* +-\/-+ +* PC6 1| |28 PC5 (AI 5 / D19) +* (D 0) PD0 2| |27 PC4 (AI 4 / D18) +* (D 1) PD1 3| |26 PC3 (AI 3 / D17) +* (D 2) PD2 4| |25 PC2 (AI 2 / D16) +* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) +* (D 4) PD4 6| |23 PC0 (AI 0 / D14) +* VCC 7| |22 GND +* GND 8| |21 AREF +* PB6 9| |20 AVCC +* PB7 10| |19 PB5 (D 13) +* PWM+ (D 5) PD5 11| |18 PB4 (D 12) +* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM +* (D 7) PD7 13| |16 PB2 (D 10) PWM +* (D 8) PB0 14| |15 PB1 (D 9) PWM +* +----+ +****************************************************************************************/ +#if MOTHERBOARD == 0 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega168__ +#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. +#endif + +#define X_STEP_PIN 2 +#define X_DIR_PIN 3 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 4 +#define X_MAX_PIN 9 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN 13 + +#define Z_STEP_PIN 19 +#define Z_DIR_PIN 18 +#define Z_ENABLE_PIN 5 +#define Z_MIN_PIN 17 +#define Z_MAX_PIN 16 + +#define E0_STEP_PIN 11 +#define E0_DIR_PIN 12 +#define E0_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN 15 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 +#endif + + + +/**************************************************************************************** +* Sanguino/RepRap Motherboard with direct-drive extruders +* +* ATMega644P +* +* +---\/---+ +* (D 0) PB0 1| |40 PA0 (AI 0 / D31) +* (D 1) PB1 2| |39 PA1 (AI 1 / D30) +* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +* RST 9| |32 AREF +* VCC 10| |31 GND +* GND 11| |30 AVCC +* XTAL2 12| |29 PC7 (D 23) +* XTAL1 13| |28 PC6 (D 22) +* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +* +--------+ +* +****************************************************************************************/ +#if MOTHERBOARD == 1 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 19 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PIN 29 +#define Z_DIR_PIN 30 +#define Z_ENABLE_PIN 31 +#define Z_MIN_PIN 2 +#define Z_MAX_PIN 1 + +#define E0_STEP_PIN 12 +#define E0_DIR_PIN 16 +#define E0_ENABLE_PIN 3 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN 0 +#define FAN_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 14 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 +/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ + + + +#endif + + +/**************************************************************************************** +* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* +* +****************************************************************************************/ +#if MOTHERBOARD == 2 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN 21 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN 26 + +#define Z_STEP_PINN 27 +#define Z_DIR_PINN 28 +#define Z_ENABLE_PIN 29 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 31 + +#define E0_STEP_PIN 17 +#define E0_DIR_PIN 16 +#define E0_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS 4 +#define LED_PIN 0 + +#define SD_CARD_WRITE 2 +#define SD_CARD_DETECT 3 +#define SD_CARD_SELECT 4 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#define FAN_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN -1 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 + +#endif + +/**************************************************************************************** +* Arduino Mega pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 33 +#define MOTHERBOARD 3 +#define RAMPS_V_1_3 +#endif +#if MOTHERBOARD == 3 +#define KNOWN_BOARD 1 + +//////////////////FIX THIS////////////// +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +// uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 +// #define RAMPS_V_1_3 +// #define RAMPS_V_1_0 + +#ifdef RAMPS_V_1_3 + +#define X_STEP_PIN 54 +#define X_DIR_PIN 55 +#define X_ENABLE_PIN 38 +#define X_MIN_PIN 3 +#define X_MAX_PIN 2 //2 //Max endstops default to disabled "-1", set to commented value to enable. + +#define Y_STEP_PIN 60 +#define Y_DIR_PIN 61 +#define Y_ENABLE_PIN 56 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN 15 //15 + +#define Z_STEP_PIN 46 +#define Z_DIR_PIN 48 +#define Z_ENABLE_PIN 62 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN 19 //19 + +#define E0_STEP_PIN 26 +#define E0_DIR_PIN 28 +#define E0_ENABLE_PIN 24 + +#define E1_STEP_PIN 36 +#define E1_DIR_PIN 34 +#define E1_ENABLE_PIN 30 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 4 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#define HEATER_0_PIN 10 // EXTRUDER 1 +#define HEATER_1_PIN 9 // EXTRUDER 2 +#define HEATER_2_PIN -1 // EXTRUDER 2 +#define TEMP_0_PIN 13 // ANALOG NUMBERING +#define TEMP_1_PIN 15 // ANALOG NUMBERING +#define TEMP_2_PIN -1 // ANALOG NUMBERING +#define HEATER_BED_PIN 8 // BED +#define TEMP_BED_PIN 14 // ANALOG NUMBERING + + +#else // RAMPS_V_1_1 or RAMPS_V_1_2 as default + +#define X_STEP_PIN 26 +#define X_DIR_PIN 28 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 3 +#define X_MAX_PIN -1 //2 + +#define Y_STEP_PIN 38 +#define Y_DIR_PIN 40 +#define Y_ENABLE_PIN 36 +#define Y_MIN_PIN 16 +#define Y_MAX_PIN -1 //17 + +#define Z_STEP_PIN 44 +#define Z_DIR_PIN 46 +#define Z_ENABLE_PIN 42 +#define Z_MIN_PIN 18 +#define Z_MAX_PIN -1 //19 + +#define E0_STEP_PIN 32 +#define E0_DIR_PIN 34 +#define E0_ENABLE_PIN 30 + +#define SDPOWER 48 +#define SDSS 53 +#define LED_PIN 13 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + + + +#ifdef RAMPS_V_1_0 // RAMPS_V_1_0 + #define HEATER_0_PIN 12 // RAMPS 1.0 + #define HEATER_BED_PIN -1 // RAMPS 1.0 + #define FAN_PIN 11 // RAMPS 1.0 +#else // RAMPS_V_1_1 or RAMPS_V_1_2 + #define HEATER_0_PIN 10 // RAMPS 1.1 + #define HEATER_BED_PIN 8 // RAMPS 1.1 + #define FAN_PIN 9 // RAMPS 1.1 +#endif +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#endif + +// SPI for Max6675 Thermocouple + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 + #define MISO_PIN 50 + #define MOSI_PIN 51 + #define MAX6675_SS 53 +#else + #define MAX6675_SS 49 +#endif + + +#endif +/**************************************************************************************** +* Duemilanove w/ ATMega328P pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 4 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega328P__ +#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 17 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 10 +#define Y_DIR_PIN 7 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 8 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 13 +#define Z_DIR_PIN 3 +#define Z_ENABLE_PIN 2 +#define Z_MIN_PIN 4 +#define Z_MAX_PIN -1 + +#define E0_STEP_PIN 11 +#define E0_DIR_PIN 12 +#define E0_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN 5 +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 6 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 + +#endif + +/**************************************************************************************** +* Gen6 pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 5 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +//x axis pins + #define X_STEP_PIN 15 + #define X_DIR_PIN 18 + #define X_ENABLE_PIN 19 + #define X_MIN_PIN 20 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 25 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 27 + #define Z_DIR_PIN 28 + #define Z_ENABLE_PIN 29 + #define Z_MIN_PIN 30 + #define Z_MAX_PIN -1 + + //extruder pins + #define E0_STEP_PIN 4 //Edited @ EJE Electronics 20100715 + #define E0_DIR_PIN 2 //Edited @ EJE Electronics 20100715 + #define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 + #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 + #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_2_PIN -1 //changed @ rkoeppl 20110410 + #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 + #define HEATER_1_PIN -1 + #define HEATER_2_PIN -1 + #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410 + #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410 + + #define SDPOWER -1 + #define SDSS 17 + #define LED_PIN -1 //changed @ rkoeppl 20110410 + #define FAN_PIN -1 //changed @ rkoeppl 20110410 + #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 + //our pin for debugging. + + #define DEBUG_PIN 0 + + //our RS485 pins + #define TX_ENABLE_PIN 12 + #define RX_ENABLE_PIN 13 + + +#endif + +/**************************************************************************************** +* Sanguinololu pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 62 +#define MOTHERBOARD 6 +#define SANGUINOLOLU_V_1_2 +#endif +#if MOTHERBOARD == 6 +#define KNOWN_BOARD 1 +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 21 +#define X_MIN_PIN 18 +#define X_MAX_PIN -2 + +#define Y_STEP_PIN 22 +#define Y_DIR_PIN 23 +#define Y_MIN_PIN 19 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 3 +#define Z_DIR_PIN 2 +#define Z_MIN_PIN 20 +#define Z_MAX_PIN -1 + +#define E0_STEP_PIN 1 +#define E0_DIR_PIN 0 + +#define LED_PIN -1 + +#define FAN_PIN -1 + +#define PS_ON_PIN -1 +#define KILL_PIN -1 + +#define HEATER_0_PIN 13 // (extruder) +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 + +#ifdef SANGUINOLOLU_V_1_2 + +#define HEATER_BED_PIN 12 // (bed) +#define X_ENABLE_PIN 14 +#define Y_ENABLE_PIN 14 +#define Z_ENABLE_PIN 26 +#define E0_ENABLE_PIN 14 + +#else + +#define HEATER_BED_PIN 14 // (bed) +#define X_ENABLE_PIN -1 +#define Y_ENABLE_PIN -1 +#define Z_ENABLE_PIN -1 +#define E0_ENABLE_PIN -1 + +#endif + +#define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define SDPOWER -1 +#define SDSS 31 + +#endif + + +#if MOTHERBOARD == 7 +#define KNOWN_BOARD +/***************************************************************** +* Ultimaker pin assignment +******************************************************************/ + +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +#define X_STEP_PIN 25 +#define X_DIR_PIN 23 +#define X_MIN_PIN 22 +#define X_MAX_PIN 24 +#define X_ENABLE_PIN 27 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_MIN_PIN 26 +#define Y_MAX_PIN 28 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 37 +#define Z_DIR_PIN 39 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN 32 +#define Z_ENABLE_PIN 35 + +#define HEATER_BED_PIN 4 +#define TEMP_BED_PIN 11 + +#define HEATER_0_PIN 2 +#define TEMP_0_PIN 8 + +#define EXTRUDER_1_HEATER_PIN 3 +#define EXTRUDER_1_TEMPERATURE_PIN 10 +#define HEATER_1_PIN 51 +#define TEMP_1_PIN 3 + +#define HEATER_2_PIN -1 +#define TEMP_2_PIN -1 + +#define E0_STEP_PIN 43 +#define E0_DIR_PIN 45 +#define E0_ENABLE_PIN 41 + +#define E1_STEP_PIN 49 +#define E1_DIR_PIN 47 +#define E1_ENABLE_PIN 51 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN 13 +#define FAN_PIN 7 +#define PS_ON_PIN 12 +#define KILL_PIN -1 + +#ifdef ULTRA_LCD + + #ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + #define LCD_PINS_RS 20 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 5 + #define LCD_PINS_D7 6 + + //buttons are directly attached + #define BTN_EN1 40 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 38 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER 18 + + //buttons are attached to a shift register + #define SHIFT_CLK 38 + #define SHIFT_LD 42 + #define SHIFT_OUT 40 + #define SHIFT_EN 17 + + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 5 + #define LCD_PINS_D4 6 + #define LCD_PINS_D5 21 + #define LCD_PINS_D6 20 + #define LCD_PINS_D7 19 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + + //bits in the shift register that carry the buttons for: + // left up center down right red + #define BL_LE 7 + #define BL_UP 6 + #define BL_MI 5 + #define BL_DW 4 + #define BL_RI 3 + #define BL_ST 2 + + #define BLEN_B 1 + #define BLEN_A 0 + #endif +#endif //ULTRA_LCD + +#endif + +/**************************************************************************************** +* Teensylu 0.7 pin assingments (ATMEGA90USB) +* Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! +****************************************************************************************/ +#if MOTHERBOARD == 8 +#define MOTHERBOARD 8 +#define KNOWN_BOARD 1 + + +#define X_STEP_PIN 0 +#define X_DIR_PIN 1 +#define X_ENABLE_PIN 39 +#define X_MIN_PIN 13 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 2 +#define Y_DIR_PIN 3 +#define Y_ENABLE_PIN 38 +#define Y_MIN_PIN 14 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 4 +#define Z_DIR_PIN 5 +#define Z_ENABLE_PIN 23 +#define Z_MIN_PIN 15 +#define Z_MAX_PIN -1 + +#define E0_STEP_PIN 6 +#define E0_DIR_PIN 7 +#define E0_ENABLE_PIN 19 + + + +#define HEATER_0_PIN 21 // Extruder +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define HEATER_BED_PIN 20 // Bed +#define FAN_PIN 22 // Fan + +#define TEMP_0_PIN 7 // Extruder +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 6 // Bed + +#define SDPOWER -1 +#define SDSS 8 +#define LED_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 +#define ALARM_PIN -1 + +#ifndef SDSUPPORT +// these pins are defined in the SD library if building with SD support + #define SCK_PIN 9 + #define MISO_PIN 11 + #define MOSI_PIN 10 +#endif +#endif + +#ifndef KNOWN_BOARD +#error Unknown MOTHERBOARD value in configuration.h +#endif + +//List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! +#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN +#if EXTRUDERS == 3 + #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN + #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN +#elif EXTRUDERS == 2 + #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN + #define _E2_PINS -1 +#elif EXTRUDERS == 1 + #define _E1_PINS -1 + #define _E2_PINS -1 +#else + #error Unsupported number of extruders +#endif +#define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, LED_PIN, PS_ON_PIN, \ + HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, \ + HEATER_BED_PIN, FAN_PIN, \ + _E0_PINS, _E1_PINS, _E2_PINS, \ + TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN, TEMP_BED_PIN } #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index d2179301f..afe2f3e83 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -191,8 +191,8 @@ void calculate_trapezoid_for_block(block_t *block, float entry_factor, float exi } #ifdef ADVANCE - long initial_advance = block->advance*entry_factor*entry_factor; - long final_advance = block->advance*exit_factor*exit_factor; + volatile long initial_advance = block->advance*entry_factor*entry_factor; + volatile long final_advance = block->advance*exit_factor*exit_factor; #endif // ADVANCE // block->accelerate_until = accelerate_steps; diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 465ab89dd..586ea7c95 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -57,7 +57,7 @@ volatile static unsigned long step_events_completed; // The number of step event static long advance_rate, advance, final_advance = 0; static long old_advance = 0; #endif -static long e_steps; +static long e_steps[3]; static unsigned char busy = false; // TRUE when SIG_OUTPUT_COMPARE1A is being serviced. Used to avoid retriggering that handler. static long acceleration_time, deceleration_time; //static unsigned long accelerate_until, decelerate_after, acceleration_rate, initial_rate, final_rate, nominal_rate; @@ -266,7 +266,7 @@ FORCE_INLINE void trapezoid_generator_reset() { advance = current_block->initial_advance; final_advance = current_block->final_advance; // Do E steps + advance steps - e_steps += ((advance >>8) - old_advance); + e_steps[current_block->active_extruder] += ((advance >>8) - old_advance); old_advance = advance >>8; #endif deceleration_time = 0; @@ -303,8 +303,8 @@ ISR(TIMER1_COMPA_vect) counter_z = counter_x; counter_e = counter_x; step_events_completed = 0; - // #ifdef ADVANCE - e_steps = 0; +// #ifdef ADVANCE +// e_steps[current_block->active_extruder] = 0; // #endif } else { @@ -418,11 +418,11 @@ ISR(TIMER1_COMPA_vect) #ifndef ADVANCE if ((out_bits & (1< 0) { counter_e -= current_block->step_event_count; if ((out_bits & (1<active_extruder]--; } else { - e_steps++; + e_steps[current_block->active_extruder]++; } } #endif //ADVANCE @@ -503,7 +503,7 @@ ISR(TIMER1_COMPA_vect) } //if(advance > current_block->advance) advance = current_block->advance; // Do E steps + advance steps - e_steps += ((advance >>8) - old_advance); + e_steps[current_block->active_extruder] += ((advance >>8) - old_advance); old_advance = advance >>8; #endif @@ -532,7 +532,7 @@ ISR(TIMER1_COMPA_vect) } if(advance < final_advance) advance = final_advance; // Do E steps + advance steps - e_steps += ((advance >>8) - old_advance); + e_steps[current_block->active_extruder] += ((advance >>8) - old_advance); old_advance = advance >>8; #endif //ADVANCE } @@ -557,20 +557,50 @@ ISR(TIMER1_COMPA_vect) old_OCR0A += 52; // ~10kHz interrupt (250000 / 26 = 9615kHz) OCR0A = old_OCR0A; // Set E direction (Depends on E direction + advance) - for(unsigned char i=0; i<4;) { - WRITE_E_STEP(LOW); - if (e_steps == 0) break; - i++; - if (e_steps < 0) { - WRITE_E_DIR(INVERT_E_DIR); - e_steps++; - WRITE_E_STEP(HIGH); - } - else if (e_steps > 0) { - WRITE_E_DIR(!INVERT_E_DIR); - e_steps--; - WRITE_E_STEP(HIGH); + for(unsigned char i=0; i<4;i++) { + if (e_steps[0] != 0) { + WRITE(E0_STEP_PIN, LOW); + if (e_steps[0] < 0) { + WRITE(E0_DIR_PIN, INVERT_E0_DIR); + e_steps[0]++; + WRITE(E0_STEP_PIN, HIGH); + } + else if (e_steps[0] > 0) { + WRITE(E0_DIR_PIN, !INVERT_E0_DIR); + e_steps[0]--; + WRITE(E0_STEP_PIN, HIGH); + } } + #if EXTRUDERS > 1 + if (e_steps[1] != 0) { + WRITE(E1_STEP_PIN, LOW); + if (e_steps[1] < 0) { + WRITE(E1_DIR_PIN, INVERT_E1_DIR); + e_steps[1]++; + WRITE(E1_STEP_PIN, HIGH); + } + else if (e_steps[1] > 0) { + WRITE(E1_DIR_PIN, !INVERT_E1_DIR); + e_steps[1]--; + WRITE(E1_STEP_PIN, HIGH); + } + } + #endif + #if EXTRUDERS > 2 + if (e_steps[2] != 0) { + WRITE(E2_STEP_PIN, LOW); + if (e_steps[2] < 0) { + WRITE(E2_DIR_PIN, INVERT_E2_DIR); + e_steps[2]++; + WRITE(E2_STEP_PIN, HIGH); + } + else if (e_steps[2] > 0) { + WRITE(E2_DIR_PIN, !INVERT_E2_DIR); + e_steps[2]--; + WRITE(E2_STEP_PIN, HIGH); + } + } + #endif } } #endif // ADVANCE @@ -712,7 +742,9 @@ void st_init() TCCR0A &= ~(1< 2 + #define WRITE_E_STEP(v) { if(current_block->active_extruder == 2) { WRITE(E2_STEP_PIN, v); } else { if(current_block->active_extruder == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }}} + #define NORM_E_DIR() { if(current_block->active_extruder == 2) { WRITE(!E2_DIR_PIN, INVERT_E2_DIR); } else { if(current_block->active_extruder == 1) { WRITE(!E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }}} + #define REV_E_DIR() { if(current_block->active_extruder == 2) { WRITE(E2_DIR_PIN, INVERT_E2_DIR); } else { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }}} +#elif EXTRUDERS > 1 + #define WRITE_E_STEP(v) { if(current_block->active_extruder == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }} + #define NORM_E_DIR() { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }} + #define REV_E_DIR() { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }} +#else + #define WRITE_E_STEP(v) WRITE(E0_STEP_PIN, v) + #define NORM_E_DIR() WRITE(E0_DIR_PIN, !INVERT_E0_DIR) + #define REV_E_DIR() WRITE(E0_DIR_PIN, INVERT_E0_DIR) +#endif + + // Initialize and start the stepper motor subsystem void st_init(); diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 72b895979..761e136a3 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -26,7 +26,6 @@ It has preliminary support for Matthew Roberts advance algorithm http://reprap.org/pipermail/reprap-dev/2011-May/003323.html - This firmware is optimized for gen6 electronics. */ #include @@ -82,6 +81,7 @@ static unsigned long previous_millis_bed_heater; // static float pid_output[EXTRUDERS]; static bool pid_reset[EXTRUDERS]; #endif //PIDTEMP + static unsigned char soft_pwm[EXTRUDERS]; #ifdef WATCHPERIOD static int watch_raw[EXTRUDERS] = { -1000 }; // the first value used for all @@ -140,6 +140,10 @@ void updatePID() #endif } +int getHeaterPower(int heater) { + return soft_pwm[heater]; +} + void manage_heater() { #ifdef USE_WATCHDOG @@ -198,15 +202,16 @@ void manage_heater() } #endif - // Check if temperature is within the correct range - if((current_raw[e] > minttemp[e]) && (current_raw[e] < maxttemp[e])) - { - analogWrite(heater_pin_map[e], pid_output); - } - else { - analogWrite(heater_pin_map[e], 0); - } - + // Check if temperature is within the correct range + if((current_raw[e] > minttemp[e]) && (current_raw[e] < maxttemp[e])) + { + //analogWrite(heater_pin_map[e], pid_output); + soft_pwm[e] = (int)pid_output >> 1; + } + else { + //analogWrite(heater_pin_map[e], 0); + soft_pwm[e] = 0; + } } // End extruder for loop if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) @@ -418,7 +423,6 @@ void tp_init() DIDR0 |= 1 << TEMP_0_PIN; #else DIDR2 |= 1<<(TEMP_0_PIN - 8); - ADCSRB = 1< -1) @@ -426,7 +430,6 @@ void tp_init() DIDR0 |= 1< -1) @@ -434,7 +437,6 @@ void tp_init() DIDR0 |= 1 << TEMP_2_PIN; #else DIDR2 = 1<<(TEMP_2_PIN - 8); - ADCSRB = 1< -1) @@ -442,7 +444,6 @@ void tp_init() DIDR0 |= 1< -1 target_raw[0]=0; + soft_pwm[0]=0; #if HEATER_0_PIN > -1 digitalWrite(HEATER_0_PIN,LOW); #endif @@ -513,6 +515,7 @@ void disable_heater() #if TEMP_1_PIN > -1 target_raw[1]=0; + soft_pwm[1]=0; #if HEATER_1_PIN > -1 digitalWrite(HEATER_1_PIN,LOW); #endif @@ -520,6 +523,7 @@ void disable_heater() #if TEMP_2_PIN > -1 target_raw[2]=0; + soft_pwm[2]=0; #if HEATER_2_PIN > -1 digitalWrite(HEATER_2_PIN,LOW); #endif @@ -533,6 +537,26 @@ void disable_heater() #endif } +void max_temp_error(uint8_t e) { + digitalWrite(heater_pin_map[e], 0); + SERIAL_ERROR_START; + SERIAL_ERRORLN(e); + SERIAL_ERRORLNPGM(": Extruder switched off. MAXTEMP triggered !"); +} + +void min_temp_error(uint8_t e) { + digitalWrite(heater_pin_map[e], 0); + SERIAL_ERROR_START; + SERIAL_ERRORLN(e); + SERIAL_ERRORLNPGM(": Extruder switched off. MINTEMP triggered !"); +} + +void bed_max_temp_error(void) { + digitalWrite(HEATER_BED_PIN, 0); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); +} + // Timer 0 is shared with millies ISR(TIMER0_COMPB_vect) { @@ -543,6 +567,33 @@ ISR(TIMER0_COMPB_vect) static unsigned long raw_temp_2_value = 0; static unsigned long raw_temp_bed_value = 0; static unsigned char temp_state = 0; + static unsigned char pwm_count = 1; + static unsigned char soft_pwm_0; + static unsigned char soft_pwm_1; + static unsigned char soft_pwm_2; + + if(pwm_count == 0){ + soft_pwm_0 = soft_pwm[0]; + if(soft_pwm_0 > 0) WRITE(HEATER_0_PIN,1); + #if EXTRUDERS > 1 + soft_pwm_1 = soft_pwm[1]; + if(soft_pwm_1 > 0) WRITE(HEATER_1_PIN,1); + #endif + #if EXTRUDERS > 2 + soft_pwm_2 = soft_pwm[2]; + if(soft_pwm_2 > 0) WRITE(HEATER_2_PIN,1); + #endif + } + if(soft_pwm_0 <= pwm_count) WRITE(HEATER_0_PIN,0); + #if EXTRUDERS > 1 + if(soft_pwm_1 <= pwm_count) WRITE(HEATER_1_PIN,0); + #endif + #if EXTRUDERS > 2 + if(soft_pwm_2 <= pwm_count) WRITE(HEATER_2_PIN,0); + #endif + + pwm_count++; + pwm_count &= 0x7f; switch(temp_state) { case 0: // Prepare TEMP_0 @@ -628,10 +679,10 @@ ISR(TIMER0_COMPB_vect) temp_state = 0; temp_count++; break; - default: - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temp measurement error!"); - break; +// default: +// SERIAL_ERROR_START; +// SERIAL_ERRORLNPGM("Temp measurement error!"); +// break; } if(temp_count >= 16) // 8 ms * 16 = 128ms. @@ -671,21 +722,15 @@ ISR(TIMER0_COMPB_vect) raw_temp_2_value = 0; raw_temp_bed_value = 0; - for(int e = 0; e < EXTRUDERS; e++) { + for(unsigned char e = 0; e < EXTRUDERS; e++) { if(current_raw[e] >= maxttemp[e]) { target_raw[e] = 0; - digitalWrite(heater_pin_map[e], 0); - SERIAL_ERROR_START; - SERIAL_ERRORLN((int)e); - SERIAL_ERRORLNPGM(": Extruder switched off. MAXTEMP triggered !"); - kill(); + max_temp_error(e); + kill();; } if(current_raw[e] <= minttemp[e]) { target_raw[e] = 0; - digitalWrite(heater_pin_map[e], 0); - SERIAL_ERROR_START; - SERIAL_ERRORLN(e); - SERIAL_ERRORLNPGM(": Extruder switched off. MINTEMP triggered !"); + min_temp_error(e); kill(); } } @@ -693,9 +738,7 @@ ISR(TIMER0_COMPB_vect) #if defined(BED_MAXTEMP) && (HEATER_BED_PIN > -1) if(current_raw_bed >= bed_maxttemp) { target_raw_bed = 0; - digitalWrite(HEATER_BED_PIN, 0); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Temperature heated bed switched off. MAXTEMP triggered !!"); + bed_max_temp_error(); kill(); } #endif diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 15bc8a835..aa0d6c4f5 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -1,143 +1,144 @@ -/* - temperature.h - temperature controller - Part of Marlin - - Copyright (c) 2011 Erik van der Zalm - - Grbl 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. - - Grbl 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 Grbl. If not, see . -*/ - -#ifndef temperature_h -#define temperature_h - -#include "Marlin.h" -#include "fastio.h" -#ifdef PID_ADD_EXTRUSION_RATE - #include "stepper.h" -#endif - -// public functions -void tp_init(); //initialise the heating -void manage_heater(); //it is critical that this is called periodically. - -//low leven conversion routines -// do not use this routines and variables outsie of temperature.cpp -int temp2analog(int celsius, uint8_t e); -int temp2analogBed(int celsius); -float analog2temp(int raw, uint8_t e); -float analog2tempBed(int raw); -extern int target_raw[EXTRUDERS]; -extern int heatingtarget_raw[EXTRUDERS]; -extern int current_raw[EXTRUDERS]; -extern int target_raw_bed; -extern int current_raw_bed; -extern float Kp,Ki,Kd,Kc; - -#ifdef PIDTEMP - extern float pid_setpoint[EXTRUDERS]; -#endif - -#ifdef WATCHPERIOD - extern int watch_raw[EXTRUDERS] ; - extern unsigned long watchmillis; -#endif - - -//high level conversion routines, for use outside of temperature.cpp -//inline so that there is no performance decrease. -//deg=degreeCelsius - -FORCE_INLINE float degHotend(uint8_t extruder) { - return analog2temp(current_raw[extruder], extruder); -}; - -FORCE_INLINE float degBed() { - return analog2tempBed(current_raw_bed); -}; - -FORCE_INLINE float degTargetHotend(uint8_t extruder) { - return analog2temp(target_raw[extruder], extruder); -}; - -FORCE_INLINE float degTargetBed() { - return analog2tempBed(target_raw_bed); -}; - -FORCE_INLINE void setTargetHotend(const float &celsius, uint8_t extruder) { - target_raw[extruder] = temp2analog(celsius, extruder); -#ifdef PIDTEMP - pid_setpoint[extruder] = celsius; -#endif //PIDTEMP -}; - -FORCE_INLINE void setTargetBed(const float &celsius) { - target_raw_bed = temp2analogBed(celsius); -}; - -FORCE_INLINE bool isHeatingHotend(uint8_t extruder){ - return target_raw[extruder] > current_raw[extruder]; -}; - -FORCE_INLINE bool isHeatingBed() { - return target_raw_bed > current_raw_bed; -}; - -FORCE_INLINE bool isCoolingHotend(uint8_t extruder) { - return target_raw[extruder] < current_raw[extruder]; -}; - -FORCE_INLINE bool isCoolingBed() { - return target_raw_bed < current_raw_bed; -}; - -#define degHotend0() degHotend(0) -#define degTargetHotend0() degTargetHotend(0) -#define setTargetHotend0(_celsius) setTargetHotend((_celsius), 0) -#define isHeatingHotend0() isHeatingHotend(0) -#define isCoolingHotend0() isCoolingHotend(0) -#if EXTRUDERS > 1 -#define degHotend1() degHotend(1) -#define degTargetHotend1() degTargetHotend(1) -#define setTargetHotend1(_celsius) setTargetHotend((_celsius), 1) -#define isHeatingHotend1() isHeatingHotend(1) -#define isCoolingHotend1() isCoolingHotend(1) -#endif -#if EXTRUDERS > 2 -#define degHotend2() degHotend(2) -#define degTargetHotend2() degTargetHotend(2) -#define setTargetHotend2(_celsius) setTargetHotend((_celsius), 2) -#define isHeatingHotend2() isHeatingHotend(2) -#define isCoolingHotend2() isCoolingHotend(2) -#endif -#if EXTRUDERS > 3 -#error Invalid number of extruders -#endif - -FORCE_INLINE void autotempShutdown(){ - #ifdef AUTOTEMP - if(autotemp_enabled) - { - autotemp_enabled=false; - if(degTargetHotend(ACTIVE_EXTRUDER)>autotemp_min) - setTargetHotend(0,ACTIVE_EXTRUDER); - } - #endif -} - -void disable_heater(); -void setWatch(); -void updatePID(); - -#endif +/* + temperature.h - temperature controller + Part of Marlin + + Copyright (c) 2011 Erik van der Zalm + + Grbl 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. + + Grbl 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 Grbl. If not, see . +*/ + +#ifndef temperature_h +#define temperature_h + +#include "Marlin.h" +#include "fastio.h" +#ifdef PID_ADD_EXTRUSION_RATE + #include "stepper.h" +#endif + +// public functions +void tp_init(); //initialise the heating +void manage_heater(); //it is critical that this is called periodically. + +//low leven conversion routines +// do not use this routines and variables outsie of temperature.cpp +int temp2analog(int celsius, uint8_t e); +int temp2analogBed(int celsius); +float analog2temp(int raw, uint8_t e); +float analog2tempBed(int raw); +extern int target_raw[EXTRUDERS]; +extern int heatingtarget_raw[EXTRUDERS]; +extern int current_raw[EXTRUDERS]; +extern int target_raw_bed; +extern int current_raw_bed; +extern float Kp,Ki,Kd,Kc; + +#ifdef PIDTEMP + extern float pid_setpoint[EXTRUDERS]; +#endif + +#ifdef WATCHPERIOD + extern int watch_raw[EXTRUDERS] ; + extern unsigned long watchmillis; +#endif + + +//high level conversion routines, for use outside of temperature.cpp +//inline so that there is no performance decrease. +//deg=degreeCelsius + +FORCE_INLINE float degHotend(uint8_t extruder) { + return analog2temp(current_raw[extruder], extruder); +}; + +FORCE_INLINE float degBed() { + return analog2tempBed(current_raw_bed); +}; + +FORCE_INLINE float degTargetHotend(uint8_t extruder) { + return analog2temp(target_raw[extruder], extruder); +}; + +FORCE_INLINE float degTargetBed() { + return analog2tempBed(target_raw_bed); +}; + +FORCE_INLINE void setTargetHotend(const float &celsius, uint8_t extruder) { + target_raw[extruder] = temp2analog(celsius, extruder); +#ifdef PIDTEMP + pid_setpoint[extruder] = celsius; +#endif //PIDTEMP +}; + +FORCE_INLINE void setTargetBed(const float &celsius) { + target_raw_bed = temp2analogBed(celsius); +}; + +FORCE_INLINE bool isHeatingHotend(uint8_t extruder){ + return target_raw[extruder] > current_raw[extruder]; +}; + +FORCE_INLINE bool isHeatingBed() { + return target_raw_bed > current_raw_bed; +}; + +FORCE_INLINE bool isCoolingHotend(uint8_t extruder) { + return target_raw[extruder] < current_raw[extruder]; +}; + +FORCE_INLINE bool isCoolingBed() { + return target_raw_bed < current_raw_bed; +}; + +#define degHotend0() degHotend(0) +#define degTargetHotend0() degTargetHotend(0) +#define setTargetHotend0(_celsius) setTargetHotend((_celsius), 0) +#define isHeatingHotend0() isHeatingHotend(0) +#define isCoolingHotend0() isCoolingHotend(0) +#if EXTRUDERS > 1 +#define degHotend1() degHotend(1) +#define degTargetHotend1() degTargetHotend(1) +#define setTargetHotend1(_celsius) setTargetHotend((_celsius), 1) +#define isHeatingHotend1() isHeatingHotend(1) +#define isCoolingHotend1() isCoolingHotend(1) +#endif +#if EXTRUDERS > 2 +#define degHotend2() degHotend(2) +#define degTargetHotend2() degTargetHotend(2) +#define setTargetHotend2(_celsius) setTargetHotend((_celsius), 2) +#define isHeatingHotend2() isHeatingHotend(2) +#define isCoolingHotend2() isCoolingHotend(2) +#endif +#if EXTRUDERS > 3 +#error Invalid number of extruders +#endif + +FORCE_INLINE void autotempShutdown(){ + #ifdef AUTOTEMP + if(autotemp_enabled) + { + autotemp_enabled=false; + if(degTargetHotend(ACTIVE_EXTRUDER)>autotemp_min) + setTargetHotend(0,ACTIVE_EXTRUDER); + } + #endif +} + +int getHeaterPower(int heater); +void disable_heater(); +void setWatch(); +void updatePID(); + +#endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 88f8f32fb..d5772750d 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1,1839 +1,1843 @@ -#include "ultralcd.h" -#ifdef ULTRA_LCD - -//=========================================================================== -//=============================imported variables============================ -//=========================================================================== - -extern volatile int feedmultiply; -extern volatile bool feedmultiplychanged; - -extern long position[4]; -extern CardReader card; - -//=========================================================================== -//=============================public variables============================ -//=========================================================================== -volatile char buttons=0; //the last checked buttons in a bit array. -int encoderpos=0; -short lastenc=0; - - -//=========================================================================== -//=============================private variables============================ -//=========================================================================== -static char messagetext[LCD_WIDTH]=""; - -//return for string conversion routines -static char conv[8]; - -#include -LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 - -static unsigned long previous_millis_lcd=0; -static long previous_millis_buttons=0; - - -#ifdef NEWPANEL - static long blocking=0; -#else - static long blocking[8]={0,0,0,0,0,0,0,0}; -#endif - -static MainMenu menu; - -#include - -void lcdProgMemprint(const char *str) -{ - char ch=pgm_read_byte(str); - while(ch) - { - lcd.print(ch); - ch=pgm_read_byte(++str); - } -} -#define lcdprintPGM(x) lcdProgMemprint(MYPGM(x)) - - -//=========================================================================== -//=============================functions ============================ -//=========================================================================== - -FORCE_INLINE int intround(const float &x){return int(0.5+x);} - -void lcd_status(const char* message) -{ - strncpy(messagetext,message,LCD_WIDTH); - messagetext[strlen(message)]=0; -} - -void lcd_statuspgm(const char* message) -{ - char ch=pgm_read_byte(message); - char *target=messagetext; - uint8_t cnt=0; - while(ch &&cnt>1; - if(READ(SHIFT_OUT)) - newbutton|=(1<<7); - WRITE(SHIFT_CLK,HIGH); - WRITE(SHIFT_CLK,LOW); - } - buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 - #endif - - //manage encoder rotation - char enc=0; - if(buttons&EN_A) - enc|=(1<<0); - if(buttons&EN_B) - enc|=(1<<1); - if(enc!=lastenc) - { - switch(enc) - { - case encrot0: - if(lastenc==encrot3) - encoderpos++; - else if(lastenc==encrot1) - encoderpos--; - break; - case encrot1: - if(lastenc==encrot0) - encoderpos++; - else if(lastenc==encrot2) - encoderpos--; - break; - case encrot2: - if(lastenc==encrot1) - encoderpos++; - else if(lastenc==encrot3) - encoderpos--; - break; - case encrot3: - if(lastenc==encrot2) - encoderpos++; - else if(lastenc==encrot0) - encoderpos--; - break; - default: - ; - } - } - lastenc=enc; -} - -#endif - -MainMenu::MainMenu() -{ - status=Main_Status; - displayStartingRow=0; - activeline=0; - force_lcd_update=true; - #ifdef ULTIPANEL - buttons_init(); - #endif - lcd_init(); - linechanging=false; - tune=false; -} - -void MainMenu::showStatus() -{ -#if LCD_HEIGHT==4 - static int olddegHotEnd0=-1; - static int oldtargetHotEnd0=-1; - //force_lcd_update=true; - if(force_lcd_update||feedmultiplychanged) //initial display of content - { - feedmultiplychanged=false; - encoderpos=feedmultiply; - clear(); - lcd.setCursor(0,0);lcdprintPGM("\002123/567\001 "); - #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - lcd.setCursor(10,0);lcdprintPGM("B123/567\001 "); - #endif - } - - int tHotEnd0=intround(degHotend0()); - if((abs(tHotEnd0-olddegHotEnd0)>1)||force_lcd_update) //>1 because otherwise the lcd is refreshed to often. - { - lcd.setCursor(1,0); - lcd.print(ftostr3(tHotEnd0)); - olddegHotEnd0=tHotEnd0; - } - int ttHotEnd0=intround(degTargetHotend0()); - if((ttHotEnd0!=oldtargetHotEnd0)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(ttHotEnd0)); - oldtargetHotEnd0=ttHotEnd0; - } - #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 - static int oldtBed=-1; - static int oldtargetBed=-1; - int tBed=intround(degBed()); - if((tBed!=oldtBed)||force_lcd_update) - { - lcd.setCursor(1,0); - lcd.print(ftostr3(tBed)); - oldtBed=tBed; - } - int targetBed=intround(degTargetBed()); - if((targetBed!=oldtargetBed)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(targetBed)); - oldtargetBed=targetBed; - } - #endif - //starttime=2; - static uint16_t oldtime=0; - if(starttime!=0) - { - lcd.setCursor(0,1); - uint16_t time=millis()/60000-starttime/60000; - - if(starttime!=oldtime) - { - lcd.print(itostr2(time/60));lcdprintPGM("h ");lcd.print(itostr2(time%60));lcdprintPGM("m"); - oldtime=time; - } - } - static int oldzpos=0; - int currentz=current_position[2]*10; - if((currentz!=oldzpos)||force_lcd_update) - { - lcd.setCursor(10,1); - lcdprintPGM("Z:");lcd.print(itostr31(currentz)); - oldzpos=currentz; - } - static int oldfeedmultiply=0; - int curfeedmultiply=feedmultiply; - if(encoderpos!=curfeedmultiply||force_lcd_update) - { - curfeedmultiply=encoderpos; - if(curfeedmultiply<10) - curfeedmultiply=10; - if(curfeedmultiply>999) - curfeedmultiply=999; - feedmultiply=curfeedmultiply; - encoderpos=curfeedmultiply; - } - if((curfeedmultiply!=oldfeedmultiply)||force_lcd_update) - { - oldfeedmultiply=curfeedmultiply; - lcd.setCursor(0,2); - lcd.print(itostr3(curfeedmultiply));lcdprintPGM("% "); - } - if(messagetext[0]!='\0') - { - lcd.setCursor(0,LCD_HEIGHT-1); - lcd.print(messagetext); - uint8_t n=strlen(messagetext); - for(int8_t i=0;i1)||force_lcd_update) - { - lcd.setCursor(1,0); - lcd.print(ftostr3(tHotEnd0)); - olddegHotEnd0=tHotEnd0; - } - if((ttHotEnd0!=oldtargetHotEnd0)||force_lcd_update) - { - lcd.setCursor(5,0); - lcd.print(ftostr3(ttHotEnd0)); - oldtargetHotEnd0=ttHotEnd0; - } - - if(messagetext[0]!='\0') - { - lcd.setCursor(0,LCD_HEIGHT-1); - lcd.print(messagetext); - uint8_t n=strlen(messagetext); - for(int8_t i=0;i400) encoderpos=400; - feedmultiply = encoderpos; - feedmultiplychanged=true; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - case ItemT_nozzle: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" \002Nozzle:"); - lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetHotend0()))); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(degTargetHotend0()); - } - else - { - setTargetHotend0(encoderpos); - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - }break; - - case ItemT_fan: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Fan speed:"); - lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=fanpwm; - } - else - { - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>255) encoderpos=255; - fanpwm=encoderpos; - analogWrite(FAN_PIN, fanpwm); - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - case ItemT_flow://axis_steps_per_unit[i] = code_value(); - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Flow:"); - lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)axis_steps_per_unit[3]; - } - else - { - float factor=float(encoderpos)/float(axis_steps_per_unit[3]); - position[E_AXIS]=lround(position[E_AXIS]*factor); - //current_position[3]*=factor; - axis_steps_per_unit[E_AXIS]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<5) encoderpos=5; - if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); - } - - }break; - default: - break; - } - line++; - } - updateActiveLines(ItemT_fan,encoderpos); -} - -//does not work -// #define MENUCHANGEITEM(repaint_action, enter_action, accept_action, change_action) \ -// {\ -// if(force_lcd_update) { lcd.setCursor(0,line); repaint_action; } \ -// if(activeline==line) \ -// { \ -// if(CLICKED) \ -// { \ -// linechanging=!linechanging; \ -// if(linechanging) {enter_action;} \ -// else {accept_action;} \ -// } \ -// else \ -// if(linechanging) {change_action};}\ -// } -// - -enum { - ItemCT_exit,ItemCT_nozzle, -#ifdef AUTOTEMP - ItemCT_autotempactive, - ItemCT_autotempmin,ItemCT_autotempmax,ItemCT_autotempfact, -#endif - ItemCT_fan, - ItemCT_PID_P,ItemCT_PID_I,ItemCT_PID_D,ItemCT_PID_C -}; - -void MainMenu::showControlTemp() -{ - uint8_t line=0; - clearIfNecessary(); - for(int8_t i=lineoffset;i260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - #ifdef AUTOTEMP - case ItemCT_autotempmin: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" \002 Min:"); - lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_min)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(autotemp_min); - } - else - { - autotemp_min=encoderpos; - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - case ItemCT_autotempmax: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" \002 Max:"); - lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_max)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(autotemp_max); - } - else - { - autotemp_max=encoderpos; - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>260) encoderpos=260; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - case ItemCT_autotempfact: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" \002 Fact:"); - lcd.setCursor(13,line);lcd.print(ftostr32(autotemp_factor)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=intround(autotemp_factor*100); - } - else - { - autotemp_max=encoderpos; - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>99) encoderpos=99; - lcd.setCursor(13,line);lcd.print(ftostr32(encoderpos/100.)); - } - - }break; - case ItemCT_autotempactive: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Autotemp:"); - lcd.setCursor(13,line); - if(autotemp_enabled) - lcdprintPGM("On"); - else - lcdprintPGM("Off"); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - autotemp_enabled=!autotemp_enabled; - lcd.setCursor(13,line); - if(autotemp_enabled) - lcdprintPGM("On "); - else - lcdprintPGM("Off"); - BLOCK; - } - - }break; - #endif //autotemp - case ItemCT_fan: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Fan speed:"); - lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=fanpwm; - } - else - { - encoderpos=activeline*lcdslow; - beepshort(); - } - BLOCK; - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>255) encoderpos=255; - fanpwm=encoderpos; - analogWrite(FAN_PIN, fanpwm); - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - case ItemCT_PID_P: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" PID-P: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kp)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kp; - } - else - { - Kp= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); - } - - }break; - case ItemCT_PID_I: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" PID-I: "); - lcd.setCursor(13,line);lcd.print(ftostr51(Ki/PID_dT)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(Ki*10/PID_dT); - } - else - { - Ki= encoderpos/10.*PID_dT; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); - } - - }break; - case ItemCT_PID_D: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" PID-D: "); - lcd.setCursor(13,line);lcd.print(itostr4(Kd*PID_dT)); - } - - if((activeline!=line) ) - break; - - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(Kd/5./PID_dT); - } - else - { - Kd= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>9990) encoderpos=9990; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); - } - - }break; - case ItemCT_PID_C: - #ifdef PID_ADD_EXTRUSION_RATE - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" PID-C: "); - lcd.setCursor(13,line);lcd.print(itostr3(Kc)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)Kc; - } - else - { - Kc= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - } - #endif - break; - default: - break; - } - line++; - } - #ifdef PID_ADD_EXTRUSION_RATE - updateActiveLines(ItemCT_PID_C,encoderpos); - #else - updateActiveLines(ItemCT_PID_D,encoderpos); - #endif -} - - -enum { - ItemCM_exit, - ItemCM_acc, ItemCM_xyjerk, - ItemCM_vmaxx, ItemCM_vmaxy, ItemCM_vmaxz, ItemCM_vmaxe, - ItemCM_vtravmin,ItemCM_vmin, - ItemCM_amaxx, ItemCM_amaxy, ItemCM_amaxz, ItemCM_amaxe, - ItemCM_aret,ItemCM_esteps -}; - - - -void MainMenu::showControlMotion() -{ - uint8_t line=0; - clearIfNecessary(); - for(int8_t i=lineoffset;i990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); - } - - }break; - case ItemCM_xyjerk: //max_xy_jerk - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Vxy-jerk: "); - lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_xy_jerk; - } - else - { - max_xy_jerk= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - - case ItemCM_vmaxx: - case ItemCM_vmaxy: - case ItemCM_vmaxz: - case ItemCM_vmaxe: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Vmax "); - if(i==ItemCM_vmaxx)lcdprintPGM("x:"); - if(i==ItemCM_vmaxy)lcdprintPGM("y:"); - if(i==ItemCM_vmaxz)lcdprintPGM("z:"); - if(i==ItemCM_vmaxe)lcdprintPGM("e:"); - lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemCM_vmaxx])); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_feedrate[i-ItemCM_vmaxx]; - } - else - { - max_feedrate[i-ItemCM_vmaxx]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - - case ItemCM_vmin: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Vmin:"); - lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)(minimumfeedrate); - } - else - { - minimumfeedrate= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - case ItemCM_vtravmin: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" VTrav min:"); - lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate)); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)mintravelfeedrate; - } - else - { - mintravelfeedrate= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<0) encoderpos=0; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); - } - - }break; - - case ItemCM_amaxx: - case ItemCM_amaxy: - case ItemCM_amaxz: - case ItemCM_amaxe: - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Amax "); - if(i==ItemCM_amaxx)lcdprintPGM("x:"); - if(i==ItemCM_amaxy)lcdprintPGM("y:"); - if(i==ItemCM_amaxz)lcdprintPGM("z:"); - if(i==ItemCM_amaxe)lcdprintPGM("e:"); - lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100));lcdprintPGM("00"); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100; - } - else - { - max_acceleration_units_per_sq_second[i-ItemCM_amaxx]= encoderpos*100; - encoderpos=activeline*lcdslow; - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<1) encoderpos=1; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); - } - - }break; - case ItemCM_aret://float retract_acceleration = 7000; - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" A-retract:"); - lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcdprintPGM("00"); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)retract_acceleration/100; - } - else - { - retract_acceleration= encoderpos*100; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<10) encoderpos=10; - if(encoderpos>990) encoderpos=990; - lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); - } - - }break; - case ItemCM_esteps://axis_steps_per_unit[i] = code_value(); - { - if(force_lcd_update) - { - lcd.setCursor(0,line);lcdprintPGM(" Esteps/mm:"); - lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); - } - - if((activeline!=line) ) - break; - - if(CLICKED) - { - linechanging=!linechanging; - if(linechanging) - { - encoderpos=(int)axis_steps_per_unit[3]; - } - else - { - float factor=float(encoderpos)/float(axis_steps_per_unit[3]); - position[E_AXIS]=lround(position[E_AXIS]*factor); - //current_position[3]*=factor; - axis_steps_per_unit[E_AXIS]= encoderpos; - encoderpos=activeline*lcdslow; - - } - BLOCK; - beepshort(); - } - if(linechanging) - { - if(encoderpos<5) encoderpos=5; - if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); - } - - }break; - default: - break; - } - line++; - } - updateActiveLines(ItemCM_esteps,encoderpos); -} - - -enum { - ItemC_exit,ItemC_temp,ItemC_move, - ItemC_store, ItemC_load,ItemC_failsafe -}; - -void MainMenu::showControl() -{ - uint8_t line=0; - clearIfNecessary(); - for(int8_t i=lineoffset;i=0)?'+':'-'; - xx=abs(xx); - conv[1]=(xx/1000)%10+'0'; - conv[2]=(xx/100)%10+'0'; - conv[3]=(xx/10)%10+'0'; - conv[4]='.'; - conv[5]=(xx)%10+'0'; - conv[6]=0; - return conv; -} - -char *ftostr32(const float &x) -{ - int xx=x*100; - conv[0]=(xx>=0)?'+':'-'; - xx=abs(xx); - conv[1]=(xx/100)%10+'0'; - conv[2]='.'; - conv[3]=(xx/10)%10+'0'; - conv[4]=(xx)%10+'0'; - conv[6]=0; - return conv; -} - -char *itostr31(const int &xx) -{ - conv[0]=(xx>=0)?'+':'-'; - conv[1]=(xx/1000)%10+'0'; - conv[2]=(xx/100)%10+'0'; - conv[3]=(xx/10)%10+'0'; - conv[4]='.'; - conv[5]=(xx)%10+'0'; - conv[6]=0; - return conv; -} - -char *itostr3(const int &xx) -{ - conv[0]=(xx/100)%10+'0'; - conv[1]=(xx/10)%10+'0'; - conv[2]=(xx)%10+'0'; - conv[3]=0; - return conv; -} - -char *itostr4(const int &xx) -{ - conv[0]=(xx/1000)%10+'0'; - conv[1]=(xx/100)%10+'0'; - conv[2]=(xx/10)%10+'0'; - conv[3]=(xx)%10+'0'; - conv[4]=0; - return conv; -} - -// convert float to string with +1234.5 format -char *ftostr51(const float &x) -{ - int xx=x*10; - conv[0]=(xx>=0)?'+':'-'; - xx=abs(xx); - conv[1]=(xx/10000)%10+'0'; - conv[2]=(xx/1000)%10+'0'; - conv[3]=(xx/100)%10+'0'; - conv[4]=(xx/10)%10+'0'; - conv[5]='.'; - conv[6]=(xx)%10+'0'; - conv[7]=0; - return conv; -} - - -#endif //ULTRA_LCD - +#include "ultralcd.h" +#ifdef ULTRA_LCD + +//=========================================================================== +//=============================imported variables============================ +//=========================================================================== + +extern volatile int feedmultiply; +extern volatile bool feedmultiplychanged; + +extern long position[4]; +extern CardReader card; + +//=========================================================================== +//=============================public variables============================ +//=========================================================================== +volatile char buttons=0; //the last checked buttons in a bit array. +int encoderpos=0; +short lastenc=0; + + +//=========================================================================== +//=============================private variables============================ +//=========================================================================== +static char messagetext[LCD_WIDTH]=""; + +//return for string conversion routines +static char conv[8]; + +#include +LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 + +static unsigned long previous_millis_lcd=0; +static long previous_millis_buttons=0; + + +#ifdef NEWPANEL + static long blocking=0; +#else + static long blocking[8]={0,0,0,0,0,0,0,0}; +#endif + +static MainMenu menu; + +#include + +void lcdProgMemprint(const char *str) +{ + char ch=pgm_read_byte(str); + while(ch) + { + lcd.print(ch); + ch=pgm_read_byte(++str); + } +} +#define lcdprintPGM(x) lcdProgMemprint(MYPGM(x)) + + +//=========================================================================== +//=============================functions ============================ +//=========================================================================== + +FORCE_INLINE int intround(const float &x){return int(0.5+x);} + +void lcd_status(const char* message) +{ + strncpy(messagetext,message,LCD_WIDTH); + messagetext[strlen(message)]=0; +} + +void lcd_statuspgm(const char* message) +{ + char ch=pgm_read_byte(message); + char *target=messagetext; + uint8_t cnt=0; + while(ch &&cntms)) + buttons &= ~(1<>1; + if(READ(SHIFT_OUT)) + newbutton|=(1<<7); + WRITE(SHIFT_CLK,HIGH); + WRITE(SHIFT_CLK,LOW); + } + buttons=~newbutton; //invert it, because a pressed switch produces a logical 0 + #endif + + //manage encoder rotation + char enc=0; + if(buttons&EN_A) + enc|=(1<<0); + if(buttons&EN_B) + enc|=(1<<1); + if(enc!=lastenc) + { + switch(enc) + { + case encrot0: + if(lastenc==encrot3) + encoderpos++; + else if(lastenc==encrot1) + encoderpos--; + break; + case encrot1: + if(lastenc==encrot0) + encoderpos++; + else if(lastenc==encrot2) + encoderpos--; + break; + case encrot2: + if(lastenc==encrot1) + encoderpos++; + else if(lastenc==encrot3) + encoderpos--; + break; + case encrot3: + if(lastenc==encrot2) + encoderpos++; + else if(lastenc==encrot0) + encoderpos--; + break; + default: + ; + } + } + lastenc=enc; +} + +#endif + +MainMenu::MainMenu() +{ + status=Main_Status; + displayStartingRow=0; + activeline=0; + force_lcd_update=true; + #ifdef ULTIPANEL + buttons_init(); + #endif + lcd_init(); + linechanging=false; + tune=false; +} + +void MainMenu::showStatus() +{ +#if LCD_HEIGHT==4 + static int olddegHotEnd0=-1; + static int oldtargetHotEnd0=-1; + //force_lcd_update=true; + if(force_lcd_update||feedmultiplychanged) //initial display of content + { + feedmultiplychanged=false; + encoderpos=feedmultiply; + clear(); + lcd.setCursor(0,0);lcdprintPGM("\002123/567\001 "); + #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + lcd.setCursor(10,0);lcdprintPGM("B123/567\001 "); + #endif + } + + int tHotEnd0=intround(degHotend0()); + if((abs(tHotEnd0-olddegHotEnd0)>1)||force_lcd_update) //>1 because otherwise the lcd is refreshed to often. + { + lcd.setCursor(1,0); + lcd.print(ftostr3(tHotEnd0)); + olddegHotEnd0=tHotEnd0; + } + int ttHotEnd0=intround(degTargetHotend0()); + if((ttHotEnd0!=oldtargetHotEnd0)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(ttHotEnd0)); + oldtargetHotEnd0=ttHotEnd0; + } + #if defined BED_USES_THERMISTOR || defined BED_USES_AD595 + static int oldtBed=-1; + static int oldtargetBed=-1; + int tBed=intround(degBed()); + if((tBed!=oldtBed)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(tBed)); + oldtBed=tBed; + } + int targetBed=intround(degTargetBed()); + if((targetBed!=oldtargetBed)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(targetBed)); + oldtargetBed=targetBed; + } + #endif + //starttime=2; + static uint16_t oldtime=0; + if(starttime!=0) + { + lcd.setCursor(0,1); + uint16_t time=millis()/60000-starttime/60000; + + if(starttime!=oldtime) + { + lcd.print(itostr2(time/60));lcdprintPGM("h ");lcd.print(itostr2(time%60));lcdprintPGM("m"); + oldtime=time; + } + } + static int oldzpos=0; + int currentz=current_position[2]*10; + if((currentz!=oldzpos)||force_lcd_update) + { + lcd.setCursor(10,1); + lcdprintPGM("Z:");lcd.print(itostr31(currentz)); + oldzpos=currentz; + } + static int oldfeedmultiply=0; + int curfeedmultiply=feedmultiply; + if(encoderpos!=curfeedmultiply||force_lcd_update) + { + curfeedmultiply=encoderpos; + if(curfeedmultiply<10) + curfeedmultiply=10; + if(curfeedmultiply>999) + curfeedmultiply=999; + feedmultiply=curfeedmultiply; + encoderpos=curfeedmultiply; + } + if((curfeedmultiply!=oldfeedmultiply)||force_lcd_update) + { + oldfeedmultiply=curfeedmultiply; + lcd.setCursor(0,2); + lcd.print(itostr3(curfeedmultiply));lcdprintPGM("% "); + } + if(messagetext[0]!='\0') + { + lcd.setCursor(0,LCD_HEIGHT-1); + lcd.print(messagetext); + uint8_t n=strlen(messagetext); + for(int8_t i=0;i1)||force_lcd_update) + { + lcd.setCursor(1,0); + lcd.print(ftostr3(tHotEnd0)); + olddegHotEnd0=tHotEnd0; + } + if((ttHotEnd0!=oldtargetHotEnd0)||force_lcd_update) + { + lcd.setCursor(5,0); + lcd.print(ftostr3(ttHotEnd0)); + oldtargetHotEnd0=ttHotEnd0; + } + + if(messagetext[0]!='\0') + { + lcd.setCursor(0,LCD_HEIGHT-1); + lcd.print(messagetext); + uint8_t n=strlen(messagetext); + for(int8_t i=0;i400) encoderpos=400; + feedmultiply = encoderpos; + feedmultiplychanged=true; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + case ItemT_nozzle: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002Nozzle:"); + lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetHotend0()))); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(degTargetHotend0()); + } + else + { + setTargetHotend0(encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; + + case ItemT_fan: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Fan speed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=fanpwm; + } + else + { + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + case ItemT_flow://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Flow:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[3]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + default: + break; + } + line++; + } + updateActiveLines(ItemT_fan,encoderpos); +} + +//does not work +// #define MENUCHANGEITEM(repaint_action, enter_action, accept_action, change_action) \ +// {\ +// if(force_lcd_update) { lcd.setCursor(0,line); repaint_action; } \ +// if(activeline==line) \ +// { \ +// if(CLICKED) \ +// { \ +// linechanging=!linechanging; \ +// if(linechanging) {enter_action;} \ +// else {accept_action;} \ +// } \ +// else \ +// if(linechanging) {change_action};}\ +// } +// + +enum { + ItemCT_exit,ItemCT_nozzle, +#ifdef AUTOTEMP + ItemCT_autotempactive, + ItemCT_autotempmin,ItemCT_autotempmax,ItemCT_autotempfact, +#endif + ItemCT_fan, + ItemCT_PID_P,ItemCT_PID_I,ItemCT_PID_D,ItemCT_PID_C +}; + +void MainMenu::showControlTemp() +{ + uint8_t line=0; + clearIfNecessary(); + for(int8_t i=lineoffset;i260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + #ifdef AUTOTEMP + case ItemCT_autotempmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002 Min:"); + lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_min)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(autotemp_min); + } + else + { + autotemp_min=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + case ItemCT_autotempmax: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002 Max:"); + lcd.setCursor(13,line);lcd.print(ftostr3(autotemp_max)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(autotemp_max); + } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + case ItemCT_autotempfact: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002 Fact:"); + lcd.setCursor(13,line);lcd.print(ftostr32(autotemp_factor)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(autotemp_factor*100); + } + else + { + autotemp_max=encoderpos; + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>99) encoderpos=99; + lcd.setCursor(13,line);lcd.print(ftostr32(encoderpos/100.)); + } + + }break; + case ItemCT_autotempactive: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Autotemp:"); + lcd.setCursor(13,line); + if(autotemp_enabled) + lcdprintPGM("On"); + else + lcdprintPGM("Off"); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + autotemp_enabled=!autotemp_enabled; + lcd.setCursor(13,line); + if(autotemp_enabled) + lcdprintPGM("On "); + else + lcdprintPGM("Off"); + BLOCK; + } + + }break; + #endif //autotemp + case ItemCT_fan: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Fan speed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(fanpwm)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=fanpwm; + } + else + { + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>255) encoderpos=255; + fanpwm=encoderpos; + analogWrite(FAN_PIN, fanpwm); + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + case ItemCT_PID_P: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" PID-P: "); + lcd.setCursor(13,line);lcd.print(itostr4(Kp)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kp; + } + else + { + Kp= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + case ItemCT_PID_I: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" PID-I: "); + lcd.setCursor(13,line);lcd.print(ftostr51(Ki/PID_dT)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(Ki*10/PID_dT); + } + else + { + Ki= encoderpos/10.*PID_dT; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(ftostr51(encoderpos/10.)); + } + + }break; + case ItemCT_PID_D: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" PID-D: "); + lcd.setCursor(13,line);lcd.print(itostr4(Kd*PID_dT)); + } + + if((activeline!=line) ) + break; + + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(Kd/5./PID_dT); + } + else + { + Kd= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>9990) encoderpos=9990; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + case ItemCT_PID_C: + #ifdef PID_ADD_EXTRUSION_RATE + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" PID-C: "); + lcd.setCursor(13,line);lcd.print(itostr3(Kc)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)Kc; + } + else + { + Kc= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + } + #endif + break; + default: + break; + } + line++; + } + #ifdef PID_ADD_EXTRUSION_RATE + updateActiveLines(ItemCT_PID_C,encoderpos); + #else + updateActiveLines(ItemCT_PID_D,encoderpos); + #endif +} + + +enum { + ItemCM_exit, + ItemCM_acc, ItemCM_xyjerk, + ItemCM_vmaxx, ItemCM_vmaxy, ItemCM_vmaxz, ItemCM_vmaxe, + ItemCM_vtravmin,ItemCM_vmin, + ItemCM_amaxx, ItemCM_amaxy, ItemCM_amaxz, ItemCM_amaxe, + ItemCM_aret,ItemCM_esteps +}; + + + +void MainMenu::showControlMotion() +{ + uint8_t line=0; + clearIfNecessary(); + for(int8_t i=lineoffset;i990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + + }break; + case ItemCM_xyjerk: //max_xy_jerk + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Vxy-jerk: "); + lcd.setCursor(13,line);lcd.print(itostr3(max_xy_jerk)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_xy_jerk; + } + else + { + max_xy_jerk= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + + case ItemCM_vmaxx: + case ItemCM_vmaxy: + case ItemCM_vmaxz: + case ItemCM_vmaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Vmax "); + if(i==ItemCM_vmaxx)lcdprintPGM("x:"); + if(i==ItemCM_vmaxy)lcdprintPGM("y:"); + if(i==ItemCM_vmaxz)lcdprintPGM("z:"); + if(i==ItemCM_vmaxe)lcdprintPGM("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_feedrate[i-ItemCM_vmaxx])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_feedrate[i-ItemCM_vmaxx]; + } + else + { + max_feedrate[i-ItemCM_vmaxx]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + + case ItemCM_vmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Vmin:"); + lcd.setCursor(13,line);lcd.print(itostr3(minimumfeedrate)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)(minimumfeedrate); + } + else + { + minimumfeedrate= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + case ItemCM_vtravmin: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" VTrav min:"); + lcd.setCursor(13,line);lcd.print(itostr3(mintravelfeedrate)); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)mintravelfeedrate; + } + else + { + mintravelfeedrate= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + + }break; + + case ItemCM_amaxx: + case ItemCM_amaxy: + case ItemCM_amaxz: + case ItemCM_amaxe: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Amax "); + if(i==ItemCM_amaxx)lcdprintPGM("x:"); + if(i==ItemCM_amaxy)lcdprintPGM("y:"); + if(i==ItemCM_amaxz)lcdprintPGM("z:"); + if(i==ItemCM_amaxe)lcdprintPGM("e:"); + lcd.setCursor(13,line);lcd.print(itostr3(max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100));lcdprintPGM("00"); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)max_acceleration_units_per_sq_second[i-ItemCM_amaxx]/100; + } + else + { + max_acceleration_units_per_sq_second[i-ItemCM_amaxx]= encoderpos*100; + encoderpos=activeline*lcdslow; + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + + }break; + case ItemCM_aret://float retract_acceleration = 7000; + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" A-retract:"); + lcd.setCursor(13,line);lcd.print(ftostr3(retract_acceleration/100));lcdprintPGM("00"); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)retract_acceleration/100; + } + else + { + retract_acceleration= encoderpos*100; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<10) encoderpos=10; + if(encoderpos>990) encoderpos=990; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos));lcdprintPGM("00"); + } + + }break; + case ItemCM_esteps://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Esteps/mm:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[3]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + position[E_AXIS]=lround(position[E_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[E_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + default: + break; + } + line++; + } + updateActiveLines(ItemCM_esteps,encoderpos); +} + + +enum { + ItemC_exit,ItemC_temp,ItemC_move, + ItemC_store, ItemC_load,ItemC_failsafe +}; + +void MainMenu::showControl() +{ + uint8_t line=0; + clearIfNecessary(); + for(int8_t i=lineoffset;i=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/1000)%10+'0'; + conv[2]=(xx/100)%10+'0'; + conv[3]=(xx/10)%10+'0'; + conv[4]='.'; + conv[5]=(xx)%10+'0'; + conv[6]=0; + return conv; +} + +char *ftostr32(const float &x) +{ + int xx=x*100; + conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/100)%10+'0'; + conv[2]='.'; + conv[3]=(xx/10)%10+'0'; + conv[4]=(xx)%10+'0'; + conv[6]=0; + return conv; +} + +char *itostr31(const int &xx) +{ + conv[0]=(xx>=0)?'+':'-'; + conv[1]=(xx/1000)%10+'0'; + conv[2]=(xx/100)%10+'0'; + conv[3]=(xx/10)%10+'0'; + conv[4]='.'; + conv[5]=(xx)%10+'0'; + conv[6]=0; + return conv; +} + +char *itostr3(const int &xx) +{ + conv[0]=(xx/100)%10+'0'; + conv[1]=(xx/10)%10+'0'; + conv[2]=(xx)%10+'0'; + conv[3]=0; + return conv; +} + +char *itostr4(const int &xx) +{ + conv[0]=(xx/1000)%10+'0'; + conv[1]=(xx/100)%10+'0'; + conv[2]=(xx/10)%10+'0'; + conv[3]=(xx)%10+'0'; + conv[4]=0; + return conv; +} + +// convert float to string with +1234.5 format +char *ftostr51(const float &x) +{ + int xx=x*10; + conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/10000)%10+'0'; + conv[2]=(xx/1000)%10+'0'; + conv[3]=(xx/100)%10+'0'; + conv[4]=(xx/10)%10+'0'; + conv[5]='.'; + conv[6]=(xx)%10+'0'; + conv[7]=0; + return conv; +} + + +#endif //ULTRA_LCD + From 617968ab7634c0568532007a2baf07c0f4247bff Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 12 Dec 2011 20:43:47 +0100 Subject: [PATCH 168/430] G92 fix --- Marlin/Marlin.pde | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 79707e8c3..bc5d92c3b 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -584,7 +584,7 @@ FORCE_INLINE void process_commands() } if(code_seen(axis_codes[Y_AXIS])) { - current_position[1]=code_value()+add_homeing[1]; + current_position[1]=code_value()+add_homeing[1]; } if(code_seen(axis_codes[Z_AXIS])) { @@ -612,9 +612,11 @@ FORCE_INLINE void process_commands() if(code_seen(axis_codes[i])) { current_position[i] = code_value()+add_homeing[i]; if(i == E_AXIS) { + current_position[i] = code_value(); plan_set_e_position(current_position[E_AXIS]); } else { + current_position[i] = code_value()+add_homeing[i]; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); } } @@ -822,7 +824,7 @@ FORCE_INLINE void process_commands() SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL( degHotend(tmp_extruder) ); SERIAL_PROTOCOLPGM(" E:"); - SERIAL_PROTOCOLLN( (int)tmp_extruder ); + SERIAL_PROTOCOL( (int)tmp_extruder ); #ifdef TEMP_RESIDENCY_TIME SERIAL_PROTOCOLPGM(" W:"); if(residencyStart > -1) @@ -869,7 +871,7 @@ FORCE_INLINE void process_commands() SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL(tt); SERIAL_PROTOCOLPGM(" E:"); - SERIAL_PROTOCOLLN( (int)active_extruder ); + SERIAL_PROTOCOL( (int)active_extruder ); SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOLLN(degBed()); codenum = millis(); @@ -936,7 +938,11 @@ FORCE_INLINE void process_commands() if(code_seen('Y')) disable_y(); if(code_seen('Z')) disable_z(); #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS - if(code_seen('E')) disable_e(); + if(code_seen('E')) { + disable_e0(); + disable_e1(); + disable_e2(); + } #endif LCD_MESSAGEPGM("Partial Release"); } From 554cc1718d58d20f73b266a6bf6a4f7bca204d63 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 15 Dec 2011 11:59:07 +0100 Subject: [PATCH 169/430] Fiexed E_ENABLE_PIN errors --- Marlin/Marlin.pde | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index bc5d92c3b..1dbfb8694 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -937,7 +937,7 @@ FORCE_INLINE void process_commands() if(code_seen('X')) disable_x(); if(code_seen('Y')) disable_y(); if(code_seen('Z')) disable_z(); - #if ((E_ENABLE_PIN != X_ENABLE_PIN) && (E_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS + #if ((E0_ENABLE_PIN != X_ENABLE_PIN) && (E1_ENABLE_PIN != Y_ENABLE_PIN)) // Only enable on boards that have seperate ENABLE_PINS if(code_seen('E')) { disable_e0(); disable_e1(); @@ -1248,8 +1248,8 @@ void manage_inactivity(byte debug) if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) { - bool oldstatus=READ(E_ENABLE_PIN); - enable_e(); + bool oldstatus=READ(E0_ENABLE_PIN); + enable_e0(); float oldepos=current_position[E_AXIS]; float oldedes=destination[E_AXIS]; plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], @@ -1261,7 +1261,7 @@ void manage_inactivity(byte debug) previous_millis_cmd=millis(); //enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); st_synchronize(); - WRITE(E_ENABLE_PIN,oldstatus); + WRITE(E0_ENABLE_PIN,oldstatus); } #endif check_axes_activity(); From 651cde8b98b9499796e96cad9e267dcd6bbb86d4 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 09:20:34 +0100 Subject: [PATCH 170/430] untestest commit, so I don't loose code.. features runout prevention addons --- Marlin/Configuration.h | 2 +- Marlin/Marlin.pde | 86 +++++++++++++++++++++++++++++++----------- Marlin/stepper.cpp | 12 ++++-- Marlin/temperature.cpp | 5 +++ 4 files changed, 80 insertions(+), 25 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index dc8c799f5..16672d01b 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -248,7 +248,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define SLOWDOWN //default stepper release if idle -#define DEFAULT_STEPPER_DEACTIVE_TIME 60 +#define DEFAULT_STEPPER_DEACTIVE_TIME 1200 #define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 4d031ea78..0e62eea25 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -176,8 +176,10 @@ const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 //Inactivity shutdown variables static unsigned long previous_millis_cmd = 0; -static unsigned long max_inactive_time = 0; -static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000; +static unsigned long previous_millis_runoutprevent = 0; +//static unsigned long previous_millis_beep = 0; +static unsigned long max_inactive_time=0; +static unsigned long stepper_inactive_time = 0; static unsigned long last_stepperdisabled_time=30*1000; //first release check after 30 seconds static unsigned long starttime=0; @@ -243,6 +245,10 @@ void setup() fromsd[i] = false; } + max_inactive_time = DEFAULT_MAX_INACTIVE_TIME*1000; + stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000; + + EEPROM_RetrieveSettings(); // loads data from EEPROM if available for(int8_t i=0; i < NUM_AXIS; i++) @@ -415,6 +421,7 @@ FORCE_INLINE void get_command() SERIAL_ECHO_START; SERIAL_ECHOLN(time); LCD_MESSAGE(time); + st_synchronize(); card.printingHasFinished(); card.checkautostart(true); @@ -1200,11 +1207,34 @@ void prepare_arc_move(char isclockwise) { void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) + unsigned long curtime=millis(); + SERIAL_ECHO_START; + SERIAL_ECHO("MS"); + SERIAL_ECHO(millis()); + SERIAL_ECHO(" PREV_CMD"); + SERIAL_ECHO(previous_millis_cmd); + SERIAL_ECHO(" maxinactive"); + SERIAL_ECHOLN(max_inactive_time ); + + if( (curtime-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) + { + LCD_MESSAGEPGM("Bored Shutdown."); + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Bored Shutdown."); kill(); + } + + if( (curtime-previous_millis_cmd) > DEFAULT_MAX_HOT_TIME*1000 ) + if(DEFAULT_MAX_HOT_TIME && (degHotend0()>HOTTEMP) ) + { + LCD_MESSAGEPGM("Hot too long."); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Hot too long"); + disable_heater(); + } if(stepper_inactive_time) - if( (millis()-last_stepperdisabled_time) > stepper_inactive_time ) + if( (curtime-last_stepperdisabled_time) > stepper_inactive_time ) { if(previous_millis_cmd>last_stepperdisabled_time) last_stepperdisabled_time=previous_millis_cmd; @@ -1216,23 +1246,37 @@ void manage_inactivity(byte debug) } } #ifdef EXTRUDER_RUNOUT_PREVENT - if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) - if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) + if(!blocks_queued()) + if( (curtime-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) { - bool oldstatus=READ(E_ENABLE_PIN); - enable_e(); - float oldepos=current_position[E_AXIS]; - float oldedes=destination[E_AXIS]; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], - current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], - EXTRUDER_RUNOUT_SPEED/60.*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); - current_position[E_AXIS]=oldepos; - destination[E_AXIS]=oldedes; - plan_set_e_position(oldepos); - previous_millis_cmd=millis(); - //enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); - st_synchronize(); - WRITE(E_ENABLE_PIN,oldstatus); + if(previous_millis_cmd>previous_millis_runoutprevent) + { + previous_millis_runoutprevent=previous_millis_cmd; + } + + if(degHotend0()>EXTRUDER_RUNOUT_MINTEMP) + if((curtime-previous_millis_runoutprevent) > EXTRUDER_RUNOUT_SECONDS*1000) + { + bool oldstatus=READ(E_ENABLE_PIN); + enable_e(); + float oldepos=current_position[E_AXIS]; + float oldedes=destination[E_AXIS]; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], + EXTRUDER_RUNOUT_SPEED/60.*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); + current_position[E_AXIS]=oldepos; + destination[E_AXIS]=oldedes; + plan_set_e_position(oldepos); + + while(current_block!=NULL || blocks_queued()) + { + manage_heater(); + LCD_STATUS; + } + + previous_millis_runoutprevent=millis(); + WRITE(E_ENABLE_PIN,oldstatus); + } } #endif check_axes_activity(); @@ -1247,7 +1291,7 @@ void kill() disable_z(); disable_e(); - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); //Turn powersupply off SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Printer halted. kill() called !!"); LCD_MESSAGEPGM("KILLED. "); diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 51a9fe071..e9c505d3f 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -706,15 +706,21 @@ void st_init() sei(); } - +#include "util/delay.h" // Block until all buffered steps are executed void st_synchronize() { - while( blocks_queued()) { + while(current_block!=NULL || blocks_queued()) { manage_heater(); manage_inactivity(1); - LCD_STATUS; + LCD_STATUS; + //_delay_ms(100); + ; } +// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); +// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); +// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); +// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); } void st_set_position(const long &x, const long &y, const long &z, const long &e) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 785da6c92..4290313c5 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -451,6 +451,11 @@ void setWatch() void disable_heater() { + for(int i=0;i -1 target_raw[0]=0; #if HEATER_0_PIN > -1 From f312216e972533e99b5ee34b01a319ad4de6e6d8 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 09:22:22 +0100 Subject: [PATCH 171/430] Revert "untestest commit, so I don't loose code.. features runout prevention addons" This reverts commit 651cde8b98b9499796e96cad9e267dcd6bbb86d4. --- Marlin/Configuration.h | 2 +- Marlin/Marlin.pde | 86 +++++++++++------------------------------- Marlin/stepper.cpp | 12 ++---- Marlin/temperature.cpp | 5 --- 4 files changed, 25 insertions(+), 80 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 16672d01b..dc8c799f5 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -248,7 +248,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define SLOWDOWN //default stepper release if idle -#define DEFAULT_STEPPER_DEACTIVE_TIME 1200 +#define DEFAULT_STEPPER_DEACTIVE_TIME 60 #define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 0e62eea25..4d031ea78 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -176,10 +176,8 @@ const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 //Inactivity shutdown variables static unsigned long previous_millis_cmd = 0; -static unsigned long previous_millis_runoutprevent = 0; -//static unsigned long previous_millis_beep = 0; -static unsigned long max_inactive_time=0; -static unsigned long stepper_inactive_time = 0; +static unsigned long max_inactive_time = 0; +static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000; static unsigned long last_stepperdisabled_time=30*1000; //first release check after 30 seconds static unsigned long starttime=0; @@ -245,10 +243,6 @@ void setup() fromsd[i] = false; } - max_inactive_time = DEFAULT_MAX_INACTIVE_TIME*1000; - stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000; - - EEPROM_RetrieveSettings(); // loads data from EEPROM if available for(int8_t i=0; i < NUM_AXIS; i++) @@ -421,7 +415,6 @@ FORCE_INLINE void get_command() SERIAL_ECHO_START; SERIAL_ECHOLN(time); LCD_MESSAGE(time); - st_synchronize(); card.printingHasFinished(); card.checkautostart(true); @@ -1207,34 +1200,11 @@ void prepare_arc_move(char isclockwise) { void manage_inactivity(byte debug) { - unsigned long curtime=millis(); - SERIAL_ECHO_START; - SERIAL_ECHO("MS"); - SERIAL_ECHO(millis()); - SERIAL_ECHO(" PREV_CMD"); - SERIAL_ECHO(previous_millis_cmd); - SERIAL_ECHO(" maxinactive"); - SERIAL_ECHOLN(max_inactive_time ); - - if( (curtime-previous_millis_cmd) > max_inactive_time ) + if( (millis()-previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) - { - LCD_MESSAGEPGM("Bored Shutdown."); - SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Bored Shutdown."); kill(); - } - - if( (curtime-previous_millis_cmd) > DEFAULT_MAX_HOT_TIME*1000 ) - if(DEFAULT_MAX_HOT_TIME && (degHotend0()>HOTTEMP) ) - { - LCD_MESSAGEPGM("Hot too long."); - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Hot too long"); - disable_heater(); - } if(stepper_inactive_time) - if( (curtime-last_stepperdisabled_time) > stepper_inactive_time ) + if( (millis()-last_stepperdisabled_time) > stepper_inactive_time ) { if(previous_millis_cmd>last_stepperdisabled_time) last_stepperdisabled_time=previous_millis_cmd; @@ -1246,37 +1216,23 @@ void manage_inactivity(byte debug) } } #ifdef EXTRUDER_RUNOUT_PREVENT - if(!blocks_queued()) - if( (curtime-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) + if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) + if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) { - if(previous_millis_cmd>previous_millis_runoutprevent) - { - previous_millis_runoutprevent=previous_millis_cmd; - } - - if(degHotend0()>EXTRUDER_RUNOUT_MINTEMP) - if((curtime-previous_millis_runoutprevent) > EXTRUDER_RUNOUT_SECONDS*1000) - { - bool oldstatus=READ(E_ENABLE_PIN); - enable_e(); - float oldepos=current_position[E_AXIS]; - float oldedes=destination[E_AXIS]; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], - current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], - EXTRUDER_RUNOUT_SPEED/60.*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); - current_position[E_AXIS]=oldepos; - destination[E_AXIS]=oldedes; - plan_set_e_position(oldepos); - - while(current_block!=NULL || blocks_queued()) - { - manage_heater(); - LCD_STATUS; - } - - previous_millis_runoutprevent=millis(); - WRITE(E_ENABLE_PIN,oldstatus); - } + bool oldstatus=READ(E_ENABLE_PIN); + enable_e(); + float oldepos=current_position[E_AXIS]; + float oldedes=destination[E_AXIS]; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], + EXTRUDER_RUNOUT_SPEED/60.*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); + current_position[E_AXIS]=oldepos; + destination[E_AXIS]=oldedes; + plan_set_e_position(oldepos); + previous_millis_cmd=millis(); + //enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + st_synchronize(); + WRITE(E_ENABLE_PIN,oldstatus); } #endif check_axes_activity(); @@ -1291,7 +1247,7 @@ void kill() disable_z(); disable_e(); - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); //Turn powersupply off + if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Printer halted. kill() called !!"); LCD_MESSAGEPGM("KILLED. "); diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index e9c505d3f..51a9fe071 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -706,21 +706,15 @@ void st_init() sei(); } -#include "util/delay.h" + // Block until all buffered steps are executed void st_synchronize() { - while(current_block!=NULL || blocks_queued()) { + while( blocks_queued()) { manage_heater(); manage_inactivity(1); - LCD_STATUS; - //_delay_ms(100); - ; + LCD_STATUS; } -// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); -// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); -// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); -// _delay_ms(250);_delay_ms(250);_delay_ms(250);_delay_ms(250); } void st_set_position(const long &x, const long &y, const long &z, const long &e) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 4290313c5..785da6c92 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -451,11 +451,6 @@ void setWatch() void disable_heater() { - for(int i=0;i -1 target_raw[0]=0; #if HEATER_0_PIN > -1 From 415aadf704ff545de2db90ffaf2fc351af78331a Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 11:45:52 +0100 Subject: [PATCH 172/430] lcd panel bed support advance and ultipanel not any more in default config --- Marlin/Configuration.h | 9 +++- Marlin/cardreader.pde | 1 + Marlin/pins.h | 4 +- Marlin/temperature.cpp | 48 +++++++++++++++++----- Marlin/temperature.h | 30 +++++++++++--- Marlin/ultralcd.pde | 93 +++++++++++++++++++++++++++++++++++++++--- 6 files changed, 159 insertions(+), 26 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 58f5bcaea..3215a09c9 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -58,6 +58,10 @@ // Select one of these only to define how the bed temp is read. //#define THERMISTORBED 1 //#define BED_USES_THERMISTOR +//#define BED_LIMIT_SWITCHING +#ifdef BED_LIMIT_SWITCHING + #define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS +#endif //#define BED_USES_AD595 #define BED_CHECK_INTERVAL 5000 //ms @@ -167,6 +171,7 @@ #define EXTRUDER_RUNOUT_SECONDS 30. #define EXTRUDER_RUNOUT_ESTEPS 14. //mm filament #define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed +#define EXTRUDER_RUNOUT_EXTRUDE 100 //=========================================================================== @@ -296,7 +301,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // hooke's law says: force = k * distance // bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant // so: v ^ 2 is proportional to number of steps we advance the extruder -#define ADVANCE +//#define ADVANCE #ifdef ADVANCE #define EXTRUDER_ADVANCE_K .0 @@ -315,7 +320,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? #define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. -#define ULTIPANEL +//#define ULTIPANEL #ifdef ULTIPANEL //#define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 0c346e1ea..a5044f8d3 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -432,6 +432,7 @@ void CardReader::updir() void CardReader::printingHasFinished() { + st_synchronize(); quickStop(); sdprinting = false; stop_heating_wait=true; diff --git a/Marlin/pins.h b/Marlin/pins.h index 4ec22793e..6451d7425 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -555,7 +555,7 @@ #define Z_ENABLE_PIN 35 #define HEATER_BED_PIN 4 -#define TEMP_BED_PIN 11 +#define TEMP_BED_PIN 10 #define HEATER_0_PIN 2 #define TEMP_0_PIN 8 @@ -734,4 +734,4 @@ HEATER_BED_PIN, FAN_PIN, \ _E0_PINS, _E1_PINS, _E2_PINS, \ TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN, TEMP_BED_PIN } -#endif +#endif diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index ba116c7aa..e6c352fdf 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -42,6 +42,10 @@ //=========================================================================== int target_raw[EXTRUDERS] = { 0 }; int target_raw_bed = 0; +#ifdef BED_LIMIT_SWITCHING +int target_bed_low_temp =0; +int target_bed_high_temp =0; +#endif int current_raw[EXTRUDERS] = { 0 }; int current_raw_bed = 0; @@ -233,20 +237,39 @@ void manage_heater() previous_millis_bed_heater = millis(); #if TEMP_BED_PIN > -1 - // Check if temperature is within the correct range - if((current_raw_bed > bed_minttemp) && (current_raw_bed < bed_maxttemp)) { - if(current_raw_bed >= target_raw_bed) - { + + #ifndef BED_LIMIT_SWITCHING + // Check if temperature is within the correct range + if((current_raw_bed > bed_minttemp) && (current_raw_bed < bed_maxttemp)) { + if(current_raw_bed >= target_raw_bed) + { + WRITE(HEATER_BED_PIN,LOW); + } + else + { + WRITE(HEATER_BED_PIN,HIGH); + } + } + else { WRITE(HEATER_BED_PIN,LOW); } - else - { - WRITE(HEATER_BED_PIN,HIGH); + #else //#ifdef BED_LIMIT_SWITCHING + // Check if temperature is within the correct band + if((current_raw_bed > bed_minttemp) && (current_raw_bed < bed_maxttemp)) { + if(current_raw_bed > target_bed_high_temp) + { + WRITE(HEATER_BED_PIN,LOW); + } + else + if(current_raw_bed <= target_bed_low_temp) + { + WRITE(HEATER_BED_PIN,HIGH); + } } - } - else { - WRITE(HEATER_BED_PIN,LOW); - } + else { + WRITE(HEATER_BED_PIN,LOW); + } + #endif #endif } @@ -520,6 +543,9 @@ void setWatch() void disable_heater() { + for(int i=0;i -1 target_raw[0]=0; soft_pwm[0]=0; diff --git a/Marlin/temperature.h b/Marlin/temperature.h index f8b09649f..8e1deac8f 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -43,6 +43,10 @@ extern int heatingtarget_raw[EXTRUDERS]; extern int current_raw[EXTRUDERS]; extern int target_raw_bed; extern int current_raw_bed; +#ifdef BED_LIMIT_SWITCHING + extern int target_bed_low_temp ; + extern int target_bed_high_temp ; +#endif extern float Kp,Ki,Kd,Kc; #ifdef PIDTEMP @@ -83,7 +87,20 @@ FORCE_INLINE void setTargetHotend(const float &celsius, uint8_t extruder) { }; FORCE_INLINE void setTargetBed(const float &celsius) { + target_raw_bed = temp2analogBed(celsius); + #ifdef BED_LIMIT_SWITCHING + if(celsius>BED_HYSTERESIS) + { + target_bed_low_temp= temp2analogBed(celsius-BED_HYSTERESIS); + target_bed_high_temp= temp2analogBed(celsius+BED_HYSTERESIS); + } + else + { + target_bed_low_temp=0; + target_bed_high_temp=0; + } + #endif }; FORCE_INLINE bool isHeatingHotend(uint8_t extruder){ @@ -125,6 +142,13 @@ FORCE_INLINE bool isCoolingBed() { #error Invalid number of extruders #endif + + +int getHeaterPower(int heater); +void disable_heater(); +void setWatch(); +void updatePID(); + FORCE_INLINE void autotempShutdown(){ #ifdef AUTOTEMP if(autotemp_enabled) @@ -135,11 +159,5 @@ FORCE_INLINE void autotempShutdown(){ } #endif } - -int getHeaterPower(int heater); -void disable_heater(); -void setWatch(); -void updatePID(); - #endif diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 3b7663beb..947ec3dac 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -165,8 +165,13 @@ void lcd_status() //previous_millis_buttons=millis(); long ms=millis(); for(int8_t i=0; i<8; i++) { + #ifndef NEWPANEL if((blocking[i]>ms)) buttons &= ~(1<ms)) + buttons &= ~(1< -1) +ItemT_bed, +#endif +ItemT_fan}; void MainMenu::showTune() { @@ -572,6 +581,42 @@ void MainMenu::showTune() lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); } }break; + #if (HEATER_BED_PIN > -1) + case ItemT_bed: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002Bed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetBed()))); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(degTargetBed()); + } + else + { + setTargetBed(encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; + #endif + case ItemT_fan: { @@ -677,6 +722,9 @@ enum { ItemCT_autotempactive, ItemCT_autotempmin,ItemCT_autotempmax,ItemCT_autotempfact, #endif +#if (HEATER_BED_PIN > -1) +ItemCT_bed, +#endif ItemCT_fan, ItemCT_PID_P,ItemCT_PID_I,ItemCT_PID_D,ItemCT_PID_C }; @@ -857,6 +905,41 @@ void MainMenu::showControlTemp() }break; #endif //autotemp + #if (HEATER_BED_PIN > -1) + case ItemCT_bed: + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" \002Bed:"); + lcd.setCursor(13,line);lcd.print(ftostr3(intround(degTargetBed()))); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=intround(degTargetBed()); + } + else + { + setTargetBed(encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<0) encoderpos=0; + if(encoderpos>260) encoderpos=260; + lcd.setCursor(13,line);lcd.print(itostr3(encoderpos)); + } + }break; + #endif case ItemCT_fan: { if(force_lcd_update) From 67350254285e98df1c07c5c4855444e6c7b2928c Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 12:02:33 +0100 Subject: [PATCH 173/430] cooldown --- Marlin/ultralcd.pde | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 947ec3dac..35c0c4091 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -446,7 +446,7 @@ void MainMenu::showStatus() force_lcd_update=false; } -enum {ItemP_exit, ItemP_autostart,ItemP_disstep,ItemP_home, ItemP_origin, ItemP_preheat, ItemP_extrude}; +enum {ItemP_exit, ItemP_autostart,ItemP_disstep,ItemP_home, ItemP_origin, ItemP_preheat, ItemP_cooldown,ItemP_extrude}; //any action must not contain a ',' character anywhere, or this breaks: #define MENUITEM(repaint_action, click_action) \ @@ -480,7 +480,10 @@ void MainMenu::showPrepare() MENUITEM( lcdprintPGM(" Set Origin") , BLOCK;enquecommand("G92 X0 Y0 Z0");beepshort(); ) ; break; case ItemP_preheat: - MENUITEM( lcdprintPGM(" Preheat") , BLOCK;setTargetHotend0(170);beepshort(); ) ; + MENUITEM( lcdprintPGM(" Preheat") , BLOCK;setTargetHotend0(170);setTargetBed(70);beepshort(); ) ; + break; + case ItemP_cooldown: + MENUITEM( lcdprintPGM(" Cooldown") , BLOCK;setTargetHotend0(0);setTargetBed(0);beepshort(); ) ; break; case ItemP_extrude: MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E50");beepshort(); ) ; From 212515148e70f151e24990312fd1fe6c1de6b104 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 12:11:39 +0100 Subject: [PATCH 174/430] added m240 photography support. default off --- Marlin/Configuration.h | 5 +++++ Marlin/Marlin.pde | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 3215a09c9..85fd38968 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -363,6 +363,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement + +// M240 Triggers a camera by emulating a Canon RC-1 Remote +// Data from: http://www.doc-diy.net/photo/rc-1_hacked/ +// #define PHOTOGRAPH_PIN 23 + //=========================================================================== //=============================Buffers ============================ //=========================================================================== diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 1dbfb8694..c20ac49b6 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -41,6 +41,7 @@ #include "motion_control.h" #include "cardreader.h" #include "watchdog.h" +#include @@ -109,6 +110,7 @@ // M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk // M206 - set additional homeing offset // M220 - set speed factor override percentage S:factor in percent +// M240 - Trigger a camera to take a photograph // M301 - Set PID parameters P I and D // M302 - Allow cold extrudes // M400 - Finish all moves @@ -227,7 +229,15 @@ void enquecommand(const char *cmd) buflen += 1; } } - +void setup_photpin() +{ + #ifdef PHOTOGRAPH_PIN + #if (PHOTOGRAPH_PIN > -1) + SET_OUTPUT(PHOTOGRAPH_PIN); + WRITE(PHOTOGRAPH_PIN, LOW); + #endif + #endif +} void setup() { MSerial.begin(BAUDRATE); @@ -255,6 +265,7 @@ void setup() plan_init(); // Initialize planner; st_init(); // Initialize stepper; wd_init(); + setup_photpin(); } @@ -1064,6 +1075,8 @@ FORCE_INLINE void process_commands() } } break; + + #ifdef PIDTEMP case 301: // M301 @@ -1089,6 +1102,29 @@ FORCE_INLINE void process_commands() } break; #endif //PIDTEMP + case 240: // M240 Triggers a camera by emulating a Canon RC-1 : http://www.doc-diy.net/photo/rc-1_hacked/ + { + #ifdef PHOTOGRAPH_PIN + #if (PHOTOGRAPH_PIN > -1) + const uint8_t NUM_PULSES=16; + const float PULSE_LENGTH=0.01524; + for(int i=0; i < NUM_PULSES; i++) { + WRITE(PHOTOGRAPH_PIN, HIGH); + _delay_ms(PULSE_LENGTH); + WRITE(PHOTOGRAPH_PIN, LOW); + _delay_ms(PULSE_LENGTH); + } + delay(7.33); + for(int i=0; i < NUM_PULSES; i++) { + WRITE(PHOTOGRAPH_PIN, HIGH); + _delay_ms(PULSE_LENGTH); + WRITE(PHOTOGRAPH_PIN, LOW); + _delay_ms(PULSE_LENGTH); + } + #endif + #endif + } + break; case 302: // finish all moves { From 3c1a4aac2bbe6f77b2e779520f848685c1c57cc1 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 12:38:50 +0100 Subject: [PATCH 175/430] header file simplification --- Marlin/EEPROMwrite.h | 1 - Marlin/Marlin.h | 8 +++++++- Marlin/Marlin.pde | 7 ++++--- Marlin/cardreader.pde | 3 +-- Marlin/motion_control.cpp | 1 - Marlin/planner.cpp | 7 +------ Marlin/planner.h | 3 +-- Marlin/stepper.cpp | 4 +--- Marlin/temperature.cpp | 5 +---- Marlin/temperature.h | 1 - Marlin/ultralcd.h | 5 ++--- Marlin/ultralcd.pde | 4 +--- Marlin/watchdog.h | 2 +- 13 files changed, 20 insertions(+), 31 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 8680a5fdc..5714dacfe 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -5,7 +5,6 @@ #include "planner.h" #include "temperature.h" -#include template int EEPROM_writeAnything(int &ee, const T& value) { diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index f8ded924e..0773f11c1 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -6,15 +6,21 @@ #define HardwareSerial_h // trick to disable the standard HWserial #include #include +#include +#include + + #if ARDUINO >= 100 #include "Arduino.h" #else #include "WProgram.h" #endif +#include + #include "fastio.h" -#include #include "Configuration.h" +#include "pins.h" #include "MarlinSerial.h" #define FORCE_INLINE __attribute__((always_inline)) inline diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c20ac49b6..bf9a1bc48 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -25,7 +25,8 @@ http://reprap.org/pipermail/reprap-dev/2011-May/003323.html */ -#include + +#include "Marlin.h" #include #include @@ -33,7 +34,7 @@ #include "fastio.h" #include "Configuration.h" #include "pins.h" -#include "Marlin.h" + #include "ultralcd.h" #include "planner.h" #include "stepper.h" @@ -41,7 +42,7 @@ #include "motion_control.h" #include "cardreader.h" #include "watchdog.h" -#include + diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index a5044f8d3..89f4b2f93 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -1,8 +1,7 @@ #include "cardreader.h" -//#include #ifdef SDSUPPORT -#include "Configuration.h" +#include "Marlin.h" CardReader::CardReader() { diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index 8ecc1a044..ab403e981 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -19,7 +19,6 @@ along with Grbl. If not, see . */ -#include "Configuration.h" #include "Marlin.h" #include "stepper.h" #include "planner.h" diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 1d66dad03..f3007af53 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -52,14 +52,9 @@ */ -//#include -//#include -//#include -#include "Configuration.h" -#include "pins.h" + #include "Marlin.h" -#include "fastio.h" #include "planner.h" #include "stepper.h" #include "temperature.h" diff --git a/Marlin/planner.h b/Marlin/planner.h index 82f53413e..02e299fa8 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -23,8 +23,7 @@ #ifndef planner_h #define planner_h -#include -#include "Configuration.h" + #include "Marlin.h" // This struct is used when buffering the setup for each linear movement "nominal" values are as specified in diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index cffa25f2a..6985da00b 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -23,11 +23,9 @@ #include "stepper.h" -#include "Configuration.h" -#include "pins.h" + #include "Marlin.h" #include "planner.h" -#include "fastio.h" #include "temperature.h" #include "ultralcd.h" diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index e6c352fdf..371c6e589 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -27,11 +27,8 @@ http://reprap.org/pipermail/reprap-dev/2011-May/003323.html */ -#include -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" + #include "Marlin.h" #include "ultralcd.h" #include "temperature.h" diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 8e1deac8f..80e68f78b 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -22,7 +22,6 @@ #define temperature_h #include "Marlin.h" -#include "fastio.h" #include "planner.h" #ifdef PID_ADD_EXTRUSION_RATE #include "stepper.h" diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 93fa4895d..716ddb90c 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -1,9 +1,8 @@ #ifndef __ULTRALCDH #define __ULTRALCDH -#include "Configuration.h" #include "Marlin.h" #ifdef ULTRA_LCD - + #include void lcd_status(); void lcd_init(); void lcd_status(const char* message); @@ -15,7 +14,7 @@ #define STATUSTIMEOUT 15000 - #include + extern LiquidCrystal lcd; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 35c0c4091..5be09ac4a 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1,6 +1,6 @@ #include "ultralcd.h" #ifdef ULTRA_LCD - +#include //=========================================================================== //=============================imported variables============================ //=========================================================================== @@ -27,7 +27,6 @@ static char messagetext[LCD_WIDTH]=""; //return for string conversion routines static char conv[8]; -#include LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 static unsigned long previous_millis_lcd=0; @@ -42,7 +41,6 @@ static long previous_millis_buttons=0; static MainMenu menu; -#include void lcdProgMemprint(const char *str) { diff --git a/Marlin/watchdog.h b/Marlin/watchdog.h index 1d4148827..ff6af60af 100644 --- a/Marlin/watchdog.h +++ b/Marlin/watchdog.h @@ -1,6 +1,6 @@ #ifndef __WATCHDOGH #define __WATCHDOGH -#include "Configuration.h" +#include "Marlin.h" #ifdef USE_WATCHDOG // intialise watch dog with a 1 sec interrupt time From 57f9359a4147157189cedf6e934dcd5571a79a88 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 14:55:45 +0100 Subject: [PATCH 176/430] simplified the includes, makefile now works with arduino23 --- Marlin/EEPROMwrite.h | 6 ++-- Marlin/Makefile | 21 +++++++++++--- Marlin/Marlin.h | 56 ++++++++++++++++++++++++++------------ Marlin/Marlin.pde | 10 ++----- Marlin/MarlinSerial.cpp | 17 ++---------- Marlin/MarlinSerial.h | 7 +---- Marlin/Sd2Card.cpp | 7 +---- Marlin/SdBaseFile.h | 9 +----- Marlin/SdFatUtil.cpp | 2 ++ Marlin/SdFatUtil.h | 9 +----- Marlin/SdFile.cpp | 1 + Marlin/SdFile.h | 1 + Marlin/cardreader.pde | 3 +- Marlin/planner.h | 7 +---- Marlin/speed_lookuptable.h | 2 +- Marlin/stepper.cpp | 3 +- Marlin/thermistortables.h | 2 +- Marlin/ultralcd.pde | 1 + Marlin/watchdog.pde | 3 +- 19 files changed, 81 insertions(+), 86 deletions(-) diff --git a/Marlin/EEPROMwrite.h b/Marlin/EEPROMwrite.h index 5714dacfe..bb25ae896 100644 --- a/Marlin/EEPROMwrite.h +++ b/Marlin/EEPROMwrite.h @@ -4,6 +4,8 @@ #include "Marlin.h" #include "planner.h" #include "temperature.h" +//#include + template int EEPROM_writeAnything(int &ee, const T& value) @@ -11,7 +13,7 @@ template int EEPROM_writeAnything(int &ee, const T& value) const byte* p = (const byte*)(const void*)&value; int i; for (i = 0; i < (int)sizeof(value); i++) - EEPROM.write(ee++, *p++); + eeprom_write_byte((unsigned char *)ee++, *p++); return i; } @@ -20,7 +22,7 @@ template int EEPROM_readAnything(int &ee, T& value) byte* p = (byte*)(void*)&value; int i; for (i = 0; i < (int)sizeof(value); i++) - *p++ = EEPROM.read(ee++); + *p++ = eeprom_read_byte((unsigned char *)ee++); return i; } //====================================================================================== diff --git a/Marlin/Makefile b/Marlin/Makefile index 0504319f7..585530bca 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -1,7 +1,7 @@ TARGET = $(notdir $(CURDIR)) # CHANGE BELOW: #~ INSTALL_DIR = /Applications/Arduino.app/Contents/Resources/Java -INSTALL_DIR = /home/bkubicek/software/arduino-0022 +INSTALL_DIR = /home/bkubicek/software/arduino-0023 #~ PORT = /dev/cu.usbserial* PORT = /dev/ttyACM0 @@ -60,13 +60,25 @@ OPT = 2 #~ CDEFS = -DBUILD_F_CPU=$(BUILD_F_CPU) #~ CXXDEFS = -DBUILD_F_CPU=$(BUILD_F_CPU) # now called DF_CPU -CDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=22 -CXXDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=22 +CDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=23 +CXXDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=23 # Place -I options here CINCS = -I$(ARDUINO) -I$(INSTALL_DIR)/libraries/LiquidCrystal/ -I$(INSTALL_DIR)/libraries/EEPROM/ CXXINCS = -I$(ARDUINO) +OBJECTS= applet/Marlin.cpp.o \ + applet/EEPROM.o \ + applet/pins_arduino.o \ + applet/wiring_analog.o \ + applet/wiring_pulse.o \ + applet/main.o \ + applet/Print.o \ + applet/wiring_digital.o \ + applet/wiring_shift.o \ + applet/stepper.o \ + applet/wiring.o \ + applet/WMath.o # Compiler flag to set the C Standard level. # c89 - "ANSI" C # gnu89 - c89 plus GCC extensions @@ -253,7 +265,8 @@ applet/$(TARGET).elf: $(TARGET).pde applet/$(TARGET).cpp.o applet/core.a # $(CC) $(ALL_CFLAGS) -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) # changed as in IDE v0022: link cpp obj files @echo $$(tput bold)$$(tput setaf 2) $(CC) $$(tput sgr0) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) - @$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) + $(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ $OBJECTS -L. applet/core.a $(LDFLAGS) + #@$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/*.o applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) # added: cpp.o depends on cpp (and .pde which generates it) # $< "first item in the dependencies list"; $@ "left side of the :"; $^ "right side of the :" diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 0773f11c1..2a237e093 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -1,35 +1,55 @@ +// Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. +// Licence: GPL + #ifndef __MARLINH #define __MARLINH -// Tonokip RepRap firmware rewrite based off of Hydra-mmm firmware. -// Licence: GPL #define HardwareSerial_h // trick to disable the standard HWserial -#include -#include -#include -#include +#define FORCE_INLINE __attribute__((always_inline)) inline + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include + + + + + + + + + +#include "fastio.h" +#include "Configuration.h" +#include "pins.h" #if ARDUINO >= 100 #include "Arduino.h" #else #include "WProgram.h" #endif -#include - -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" #include "MarlinSerial.h" -#define FORCE_INLINE __attribute__((always_inline)) inline -//#define SERIAL_ECHO(x) Serial << "echo: " << x; -//#define SERIAL_ECHOLN(x) Serial << "echo: "< -#include -#include "EEPROMwrite.h" -#include "fastio.h" -#include "Configuration.h" -#include "pins.h" + #include "ultralcd.h" #include "planner.h" @@ -42,7 +36,7 @@ #include "motion_control.h" #include "cardreader.h" #include "watchdog.h" - +#include "EEPROMwrite.h" diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index 63268e8cf..7175561e2 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -20,25 +20,14 @@ Modified 28 September 2010 by Mark Sproul */ - -#include -#include -#include -#include -#include -#if ARDUINO >= 100 - #include "Arduino.h" -#else - #include "wiring.h" -#endif -#include "wiring_private.h" +#include "Marlin.h" +#include "MarlinSerial.h" // this next line disables the entire HardwareSerial.cpp, // this is so I can support Attiny series and any other chip without a uart #if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) -#include "MarlinSerial.h" -#include "Marlin.h" + diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 0fe0c5227..71823de8f 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -21,13 +21,8 @@ #ifndef MarlinSerial_h #define MarlinSerial_h -#include -#include -//#include -#include -#define FORCE_INLINE __attribute__((always_inline)) inline +#include "Marlin.h" -#include "WString.h" #define DEC 10 #define HEX 16 diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp index d7f018e4b..f421154ea 100644 --- a/Marlin/Sd2Card.cpp +++ b/Marlin/Sd2Card.cpp @@ -17,12 +17,7 @@ * along with the Arduino Sd2Card Library. If not, see * . */ -#define HardwareSerial_h // trick to disable the standard HWserial -#if ARDUINO < 100 -#include -#else // ARDUINO -#include -#endif // ARDUINO +#include "Marlin.h" #include "Sd2Card.h" //------------------------------------------------------------------------------ #ifndef SOFTWARE_SPI diff --git a/Marlin/SdBaseFile.h b/Marlin/SdBaseFile.h index f5c5e4de3..80402e56c 100644 --- a/Marlin/SdBaseFile.h +++ b/Marlin/SdBaseFile.h @@ -23,14 +23,7 @@ * \file * \brief SdBaseFile class */ -#include -#define HardwareSerial_h // trick to disable the standard HWserial -#if ARDUINO < 100 -#include -#else // ARDUINO -#include -#endif // ARDUINO -#include "MarlinSerial.h" +#include "Marlin.h" #include "SdFatConfig.h" #include "SdVolume.h" //------------------------------------------------------------------------------ diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp index 0bf86f295..559305f11 100644 --- a/Marlin/SdFatUtil.cpp +++ b/Marlin/SdFatUtil.cpp @@ -17,7 +17,9 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" #include "SdFatUtil.h" + //------------------------------------------------------------------------------ /** Amount of free RAM * \return The number of free bytes. diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index fc7a17e5b..d843da04c 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -23,14 +23,7 @@ * \file * \brief Useful utility functions. */ -#include - -#define HardwareSerial_h // trick to disable the standard HWserial -#if ARDUINO < 100 -#include -#else // ARDUINO -#include -#endif // ARDUINO +#include "Marlin.h" #include "MarlinSerial.h" /** Store and print a string in flash memory.*/ #define PgmPrint(x) SerialPrint_P(PSTR(x)) diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index 68f14b193..5781d10b4 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -17,6 +17,7 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" #include "SdFile.h" /** Create a file object and open it in the current working directory. * diff --git a/Marlin/SdFile.h b/Marlin/SdFile.h index 931486285..2fd575592 100644 --- a/Marlin/SdFile.h +++ b/Marlin/SdFile.h @@ -22,6 +22,7 @@ * \brief SdFile class */ #include "SdBaseFile.h" +#include "Marlin.h" #include #ifndef SdFile_h #define SdFile_h diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 89f4b2f93..3d9122497 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -1,7 +1,8 @@ +#include "Marlin.h" #include "cardreader.h" #ifdef SDSUPPORT -#include "Marlin.h" + CardReader::CardReader() { diff --git a/Marlin/planner.h b/Marlin/planner.h index 02e299fa8..ac9719fbc 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -98,12 +98,7 @@ extern unsigned long axis_steps_per_sqr_second[NUM_AXIS]; #endif -/////semi-private stuff -#if ARDUINO >= 100 - #include "Arduino.h" -#else - #include "WProgram.h" -#endif + extern block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instfructions extern volatile unsigned char block_buffer_head; // Index of the next block to be pushed diff --git a/Marlin/speed_lookuptable.h b/Marlin/speed_lookuptable.h index 002f852f6..ab3a076f1 100644 --- a/Marlin/speed_lookuptable.h +++ b/Marlin/speed_lookuptable.h @@ -1,7 +1,7 @@ #ifndef SPEED_LOOKUPTABLE_H #define SPEED_LOOKUPTABLE_H -#include +#include "Marlin.h" uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ { 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 6985da00b..076fbeea1 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -22,9 +22,10 @@ and Philipp Tiefenbacher. */ -#include "stepper.h" + #include "Marlin.h" +#include "stepper.h" #include "planner.h" #include "temperature.h" #include "ultralcd.h" diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 30f5b62ac..3071a6b5b 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -1,7 +1,7 @@ #ifndef THERMISTORTABLES_H_ #define THERMISTORTABLES_H_ -#include +#include "Marlin.h" #define OVERSAMPLENR 16 diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 5be09ac4a..bc1c9cc6c 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -1,5 +1,6 @@ #include "ultralcd.h" #ifdef ULTRA_LCD +#include "Marlin.h" #include //=========================================================================== //=============================imported variables============================ diff --git a/Marlin/watchdog.pde b/Marlin/watchdog.pde index 7af540c79..356e37473 100644 --- a/Marlin/watchdog.pde +++ b/Marlin/watchdog.pde @@ -1,7 +1,6 @@ #ifdef USE_WATCHDOG +#include "Marlin.h" #include "watchdog.h" -#include -#include //=========================================================================== //=============================private variables ============================ From 2bc160a97879d3b398a6b39bfb0c57c57346685c Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 14:57:28 +0100 Subject: [PATCH 177/430] add wiring.h, that can be used to overwrite: arduino-0023/hardware/arduino/cores/arduino/wiring.h this is necessary if the avr libraries are recent, but arduino is old. Alternative: newer arduino --- Marlin/wiring.h | 141 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 Marlin/wiring.h diff --git a/Marlin/wiring.h b/Marlin/wiring.h new file mode 100644 index 000000000..904d2ebd4 --- /dev/null +++ b/Marlin/wiring.h @@ -0,0 +1,141 @@ +/* + * fixed by this patch: + * http://code.google.com/p/arduino/issues/detail?id=604 + * */ +/* + wiring.h - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#ifndef Wiring_h +#define Wiring_h + +#include +#include +#include "binary.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#define HIGH 0x1 +#define LOW 0x0 + +#define INPUT 0x0 +#define OUTPUT 0x1 + +#define true 0x1 +#define false 0x0 + +#define PI 3.1415926535897932384626433832795 +#define HALF_PI 1.5707963267948966192313216916398 +#define TWO_PI 6.283185307179586476925286766559 +#define DEG_TO_RAD 0.017453292519943295769236907684886 +#define RAD_TO_DEG 57.295779513082320876798154814105 + +#define SERIAL 0x0 +#define DISPLAY 0x1 + +#define LSBFIRST 0 +#define MSBFIRST 1 + +#define CHANGE 1 +#define FALLING 2 +#define RISING 3 + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define INTERNAL1V1 2 +#define INTERNAL2V56 3 +#else +#define INTERNAL 3 +#endif +#define DEFAULT 1 +#define EXTERNAL 0 + +// undefine stdlib's abs if encountered +#ifdef abs +#undef abs +#endif + +#define min(a,b) ((a)<(b)?(a):(b)) +#define max(a,b) ((a)>(b)?(a):(b)) +#define abs(x) ((x)>0?(x):-(x)) +#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) +#if __AVR_LIBC_VERSION__ < 10701UL +#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) +#endif +#define radians(deg) ((deg)*DEG_TO_RAD) +#define degrees(rad) ((rad)*RAD_TO_DEG) +#define sq(x) ((x)*(x)) + +#define interrupts() sei() +#define noInterrupts() cli() + +#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) +#define clockCyclesToMicroseconds(a) ( ((a) * 1000L) / (F_CPU / 1000L) ) +#define microsecondsToClockCycles(a) ( ((a) * (F_CPU / 1000L)) / 1000L ) + +#define lowByte(w) ((uint8_t) ((w) & 0xff)) +#define highByte(w) ((uint8_t) ((w) >> 8)) + +#define bitRead(value, bit) (((value) >> (bit)) & 0x01) +#define bitSet(value, bit) ((value) |= (1UL << (bit))) +#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) +#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) + + +typedef unsigned int word; + +#define bit(b) (1UL << (b)) + +typedef uint8_t boolean; +typedef uint8_t byte; + +void init(void); + +void pinMode(uint8_t, uint8_t); +void digitalWrite(uint8_t, uint8_t); +int digitalRead(uint8_t); +int analogRead(uint8_t); +void analogReference(uint8_t mode); +void analogWrite(uint8_t, int); + +unsigned long millis(void); +unsigned long micros(void); +void delay(unsigned long); +void delayMicroseconds(unsigned int us); +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); + +void attachInterrupt(uint8_t, void (*)(void), int mode); +void detachInterrupt(uint8_t); + +void setup(void); +void loop(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif From 8463e39a4a13985ff135a68fd2a8724e801e8545 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 16:11:15 +0100 Subject: [PATCH 178/430] starting with sanguino arduino 1.0 compatibility --- Marlin/Marlin.h | 15 ++++++--------- Marlin/SdFile.cpp | 3 ++- Marlin/SdFile.h | 8 ++++---- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 2a237e093..78739af24 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -21,19 +21,16 @@ #include - - - - - - - #include "fastio.h" #include "Configuration.h" #include "pins.h" -#if ARDUINO >= 100 - #include "Arduino.h" +#if ARDUINO >= 100 + #if defined(__AVR_ATmega644P__) + #include "WProgram.h" + #else + #include "Arduino.h" + #endif #else #include "WProgram.h" #endif diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index 5781d10b4..9c42c0074 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -47,13 +47,14 @@ SdFile::SdFile(const char* path, uint8_t oflag) : SdBaseFile(path, oflag) { int16_t SdFile::write(const void* buf, uint16_t nbyte) { return SdBaseFile::write(buf, nbyte); } +#warning F_CPU //------------------------------------------------------------------------------ /** Write a byte to a file. Required by the Arduino Print class. * \param[in] b the byte to be written. * Use writeError to check for errors. */ #if ARDUINO >= 100 - size_t SdFile::write(uint8_t b) + size_t SdFile::write(uint8_t b) #else void SdFile::write(uint8_t b) #endif diff --git a/Marlin/SdFile.h b/Marlin/SdFile.h index 2fd575592..a9efebc68 100644 --- a/Marlin/SdFile.h +++ b/Marlin/SdFile.h @@ -21,8 +21,8 @@ * \file * \brief SdFile class */ -#include "SdBaseFile.h" #include "Marlin.h" +#include "SdBaseFile.h" #include #ifndef SdFile_h #define SdFile_h @@ -36,10 +36,10 @@ class SdFile : public SdBaseFile, public Print { SdFile() {} SdFile(const char* name, uint8_t oflag); #if ARDUINO >= 100 - size_t write(uint8_t b); -#else + size_t write(uint8_t b); + #else void write(uint8_t b); -#endif + #endif int16_t write(const void* buf, uint16_t nbyte); void write(const char* str); From 11f2dafc4e65d5bfe169eabb3e4bb0927a23ba61 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Thu, 22 Dec 2011 16:43:28 +0100 Subject: [PATCH 179/430] one step closer to a functional makefile.. --- Marlin/Makefile | 46 +++++++++++++++++++++++++++++++-------------- Marlin/SdFile.cpp | 1 - Marlin/ultralcd.h | 8 ++++++++ Marlin/ultralcd.pde | 2 +- 4 files changed, 41 insertions(+), 16 deletions(-) diff --git a/Marlin/Makefile b/Marlin/Makefile index 585530bca..84e540568 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -26,6 +26,31 @@ TERM=bash ############################################################################ # Below here nothing should be changed... +LINKORDER=\ +applet/Marlin.cpp.o \ +applet/EEPROM.o \ +applet/main.o \ +applet/MarlinSerial.o \ +applet/motion_control.o\ +applet/pins_arduino.o\ +applet/planner.o\ +applet/Print.o\ +applet/Sd2Card.o\ +applet/SdBaseFile.o\ +applet/SdFatUtil.o\ +applet/SdFile.o\ +applet/SdVolume.o\ +applet/stepper.o\ +applet/temperature.o\ +applet/WInterrupts.o\ +applet/wiring_analog.o\ +applet/wiring_digital.o\ +applet/wiring.o\ +applet/wiring_pulse.o\ +applet/wiring_shift.o\ +applet/WMath.o + +PDES=Marlin.pde ultralcd.pde watchdog.pde cardreader.pde ARDUINO = $(INSTALL_DIR)/hardware/arduino/cores/arduino # #~ AVR_TOOLS_PATH = $(INSTALL_DIR)/hardware/tools/avr/bin @@ -67,18 +92,6 @@ CXXDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=23 CINCS = -I$(ARDUINO) -I$(INSTALL_DIR)/libraries/LiquidCrystal/ -I$(INSTALL_DIR)/libraries/EEPROM/ CXXINCS = -I$(ARDUINO) -OBJECTS= applet/Marlin.cpp.o \ - applet/EEPROM.o \ - applet/pins_arduino.o \ - applet/wiring_analog.o \ - applet/wiring_pulse.o \ - applet/main.o \ - applet/Print.o \ - applet/wiring_digital.o \ - applet/wiring_shift.o \ - applet/stepper.o \ - applet/wiring.o \ - applet/WMath.o # Compiler flag to set the C Standard level. # c89 - "ANSI" C # gnu89 - c89 plus GCC extensions @@ -141,6 +154,7 @@ MV = mv -f # and then, match to corresponding rule somehow? # or leave this - and parse in rule (auth automatic variable $(@F))? # "Suffix Replacement" +CXXSRC+=MarlinSerial.cpp SdBaseFile.cpp stepper.cpp motion_control.cpp SdFatUtil.cpp temperature.cpp planner.cpp SdFile.cpp Sd2Card.cpp SdVolume.cpp OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) # added - OBJ list, transformed into applet/ @@ -204,7 +218,9 @@ applet_files: $(TARGET).pde @echo ALL CXXLIBOBJ: $(CXXLIBOBJ) # echo '#include "WProgram.h"' > applet/$(TARGET).cpp @echo "#include \"WProgram.h\"\nvoid setup();\nvoid loop();\n" > applet/$(TARGET).cpp - cat $(TARGET).pde >> applet/$(TARGET).cpp + ##cat $(TARGET).pde >> applet/$(TARGET).cpp + cat ${PDES}>> applet/$(TARGET).cpp + cp *.cpp applet/ # no more need to cat main.cpp (v0022) - now it is compiled in # cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp @@ -265,7 +281,9 @@ applet/$(TARGET).elf: $(TARGET).pde applet/$(TARGET).cpp.o applet/core.a # $(CC) $(ALL_CFLAGS) -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) # changed as in IDE v0022: link cpp obj files @echo $$(tput bold)$$(tput setaf 2) $(CC) $$(tput sgr0) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) - $(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ $OBJECTS -L. applet/core.a $(LDFLAGS) + echo ${OBJT} + #$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o -L. applet/core.a $(LDFLAGS) + $(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ ${LINKORDER} $(LDFLAGS) #@$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/*.o applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) # added: cpp.o depends on cpp (and .pde which generates it) diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index 9c42c0074..eda85b3ea 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -47,7 +47,6 @@ SdFile::SdFile(const char* path, uint8_t oflag) : SdBaseFile(path, oflag) { int16_t SdFile::write(const void* buf, uint16_t nbyte) { return SdBaseFile::write(buf, nbyte); } -#warning F_CPU //------------------------------------------------------------------------------ /** Write a byte to a file. Required by the Arduino Print class. * \param[in] b the byte to be written. diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 716ddb90c..08ac950d3 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -151,5 +151,13 @@ void lcd_statuspgm(const char* message); +char *ftostr3(const float &x); +char *itostr2(const uint8_t &x); +char *ftostr31(const float &x); +char *ftostr32(const float &x); +char *itostr31(const int &xx); +char *itostr3(const int &xx); +char *itostr4(const int &xx); +char *ftostr51(const float &x); #endif //ULTRALCD diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index bc1c9cc6c..ef86d8f32 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -31,7 +31,7 @@ static char conv[8]; LiquidCrystal lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 static unsigned long previous_millis_lcd=0; -static long previous_millis_buttons=0; +//static long previous_millis_buttons=0; #ifdef NEWPANEL From 396270a0de36f1ab6b0a61a7c4a63b933a0ead83 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 26 Dec 2011 09:20:21 +0100 Subject: [PATCH 180/430] fix duplicated definition of MOSI MISO pins in case motherboard==33 --- Marlin/Sd2PinMap.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/Sd2PinMap.h b/Marlin/Sd2PinMap.h index 847f9f33b..77a74987c 100644 --- a/Marlin/Sd2PinMap.h +++ b/Marlin/Sd2PinMap.h @@ -38,6 +38,8 @@ struct pin_map_t { uint8_t const SDA_PIN = 20; // D1 uint8_t const SCL_PIN = 21; // D0 +#undef MOSI_PIN +#undef MISO_PIN // SPI port uint8_t const SS_PIN = 53; // B0 uint8_t const MOSI_PIN = 51; // B2 From 729cde44755732067917988296b59dab1fe3e364 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 26 Dec 2011 09:20:33 +0100 Subject: [PATCH 181/430] fix autostart failure if in wrong directory --- Marlin/cardreader.h | 2 ++ Marlin/cardreader.pde | 9 +++++++++ Marlin/ultralcd.pde | 2 +- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 70f0d2c1d..67fe58a90 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -31,6 +31,8 @@ public: void ls(); void chdir(const char * relpath); void updir(); + void setroot(); + FORCE_INLINE bool eof() { return sdpos>=filesize ;}; FORCE_INLINE int16_t get() { sdpos = file.curPosition();return (int16_t)file.read();}; diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index 3d9122497..a1f23ce06 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -164,6 +164,15 @@ void CardReader::initsd() SERIAL_ECHOLNPGM("workDir open failed"); } } + +void CardReader::setroot() +{ + curDir=&root; + if(!workDir.openRoot(&volume)) + { + SERIAL_ECHOLNPGM("workDir open failed"); + } +} void CardReader::release() { sdprinting = false; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index ef86d8f32..69be85959 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -467,7 +467,7 @@ void MainMenu::showPrepare() MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; case ItemP_autostart: - MENUITEM( lcdprintPGM(" Autostart") , BLOCK;card.lastnr=0;card.checkautostart(true);beepshort(); ) ; + MENUITEM( lcdprintPGM(" Autostart") , BLOCK;card.lastnr=0;card.setroot();card.checkautostart(true);beepshort(); ) ; break; case ItemP_disstep: MENUITEM( lcdprintPGM(" Disable Steppers") , BLOCK;enquecommand("M84");beepshort(); ) ; From 3814bbb529e47d0f7388618c1e5bcb114135e09d Mon Sep 17 00:00:00 2001 From: Bernhard Date: Mon, 26 Dec 2011 09:28:51 +0100 Subject: [PATCH 182/430] made sd code only compile with SDSUPPORT defined. safes 10k of codespace --- Marlin/Sd2Card.cpp | 5 +++++ Marlin/Sd2Card.h | 7 +++++++ Marlin/Sd2PinMap.h | 6 ++++++ Marlin/SdBaseFile.cpp | 7 +++++++ Marlin/SdBaseFile.h | 4 ++++ Marlin/SdFatConfig.h | 6 ++++++ Marlin/SdFatStructs.h | 6 ++++++ Marlin/SdFatUtil.cpp | 3 +++ Marlin/SdFatUtil.h | 6 ++++++ Marlin/SdFile.cpp | 5 +++++ Marlin/SdFile.h | 5 +++++ Marlin/SdInfo.h | 5 +++++ Marlin/SdVolume.cpp | 4 ++++ Marlin/SdVolume.h | 3 +++ 14 files changed, 72 insertions(+) diff --git a/Marlin/Sd2Card.cpp b/Marlin/Sd2Card.cpp index f421154ea..884fa4553 100644 --- a/Marlin/Sd2Card.cpp +++ b/Marlin/Sd2Card.cpp @@ -18,6 +18,8 @@ * . */ #include "Marlin.h" + +#ifdef SDSUPPORT #include "Sd2Card.h" //------------------------------------------------------------------------------ #ifndef SOFTWARE_SPI @@ -636,3 +638,6 @@ bool Sd2Card::writeStop() { chipSelectHigh(); return false; } + + +#endif \ No newline at end of file diff --git a/Marlin/Sd2Card.h b/Marlin/Sd2Card.h index 0e8b6665e..7de5f11bc 100644 --- a/Marlin/Sd2Card.h +++ b/Marlin/Sd2Card.h @@ -17,6 +17,10 @@ * along with the Arduino Sd2Card Library. If not, see * . */ + +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef Sd2Card_h #define Sd2Card_h /** @@ -232,3 +236,6 @@ class Sd2Card { bool writeData(uint8_t token, const uint8_t* src); }; #endif // Sd2Card_h + + +#endif \ No newline at end of file diff --git a/Marlin/Sd2PinMap.h b/Marlin/Sd2PinMap.h index 77a74987c..a40729df2 100644 --- a/Marlin/Sd2PinMap.h +++ b/Marlin/Sd2PinMap.h @@ -18,6 +18,9 @@ * . */ // Warning this file was generated by a program. +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef Sd2PinMap_h #define Sd2PinMap_h #include @@ -360,3 +363,6 @@ static inline __attribute__((always_inline)) } } #endif // Sd2PinMap_h + + +#endif \ No newline at end of file diff --git a/Marlin/SdBaseFile.cpp b/Marlin/SdBaseFile.cpp index d33b1e038..f8dc83ade 100644 --- a/Marlin/SdBaseFile.cpp +++ b/Marlin/SdBaseFile.cpp @@ -19,6 +19,10 @@ */ #define SERIAL MSerial + +#include "Marlin.h" +#ifdef SDSUPPORT + #include "SdBaseFile.h" //------------------------------------------------------------------------------ // pointer to cwd directory @@ -1784,3 +1788,6 @@ int16_t SdBaseFile::write(const void* buf, uint16_t nbyte) { #if ALLOW_DEPRECATED_FUNCTIONS && !defined(DOXYGEN) void (*SdBaseFile::oldDateTime_)(uint16_t& date, uint16_t& time) = 0; // NOLINT #endif // ALLOW_DEPRECATED_FUNCTIONS + + +#endif \ No newline at end of file diff --git a/Marlin/SdBaseFile.h b/Marlin/SdBaseFile.h index 80402e56c..1bf75f6f2 100644 --- a/Marlin/SdBaseFile.h +++ b/Marlin/SdBaseFile.h @@ -17,6 +17,9 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef SdBaseFile_h #define SdBaseFile_h /** @@ -477,3 +480,4 @@ class SdBaseFile { }; #endif // SdBaseFile_h +#endif \ No newline at end of file diff --git a/Marlin/SdFatConfig.h b/Marlin/SdFatConfig.h index 036bdb9c6..2a78c2a85 100644 --- a/Marlin/SdFatConfig.h +++ b/Marlin/SdFatConfig.h @@ -21,6 +21,9 @@ * \file * \brief configuration definitions */ +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef SdFatConfig_h #define SdFatConfig_h #include @@ -106,3 +109,6 @@ uint8_t const SOFT_SPI_SCK_PIN = 13; */ #define USE_CXA_PURE_VIRTUAL 1 #endif // SdFatConfig_h + + +#endif \ No newline at end of file diff --git a/Marlin/SdFatStructs.h b/Marlin/SdFatStructs.h index 4ea82b766..7ad88d67f 100644 --- a/Marlin/SdFatStructs.h +++ b/Marlin/SdFatStructs.h @@ -17,6 +17,9 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef SdFatStructs_h #define SdFatStructs_h /** @@ -602,3 +605,6 @@ static inline uint8_t DIR_IS_FILE_OR_SUBDIR(const dir_t* dir) { return (dir->attributes & DIR_ATT_VOLUME_ID) == 0; } #endif // SdFatStructs_h + + +#endif \ No newline at end of file diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp index 559305f11..ffbcba0c6 100644 --- a/Marlin/SdFatUtil.cpp +++ b/Marlin/SdFatUtil.cpp @@ -18,6 +18,8 @@ * . */ #include "Marlin.h" + +#ifdef SDSUPPORT #include "SdFatUtil.h" //------------------------------------------------------------------------------ @@ -74,3 +76,4 @@ void SdFatUtil::SerialPrint_P(PGM_P str) { void SdFatUtil::SerialPrintln_P(PGM_P str) { println_P( str); } +#endif diff --git a/Marlin/SdFatUtil.h b/Marlin/SdFatUtil.h index d843da04c..7f1809422 100644 --- a/Marlin/SdFatUtil.h +++ b/Marlin/SdFatUtil.h @@ -17,6 +17,9 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef SdFatUtil_h #define SdFatUtil_h /** @@ -40,3 +43,6 @@ namespace SdFatUtil { using namespace SdFatUtil; // NOLINT #endif // #define SdFatUtil_h + + +#endif \ No newline at end of file diff --git a/Marlin/SdFile.cpp b/Marlin/SdFile.cpp index eda85b3ea..e9439e3b5 100644 --- a/Marlin/SdFile.cpp +++ b/Marlin/SdFile.cpp @@ -18,6 +18,8 @@ * . */ #include "Marlin.h" + +#ifdef SDSUPPORT #include "SdFile.h" /** Create a file object and open it in the current working directory. * @@ -85,3 +87,6 @@ void SdFile::writeln_P(PGM_P str) { write_P(str); write_P(PSTR("\r\n")); } + + +#endif \ No newline at end of file diff --git a/Marlin/SdFile.h b/Marlin/SdFile.h index a9efebc68..cbf1bbdbd 100644 --- a/Marlin/SdFile.h +++ b/Marlin/SdFile.h @@ -22,6 +22,8 @@ * \brief SdFile class */ #include "Marlin.h" + +#ifdef SDSUPPORT #include "SdBaseFile.h" #include #ifndef SdFile_h @@ -47,3 +49,6 @@ class SdFile : public SdBaseFile, public Print { void writeln_P(PGM_P str); }; #endif // SdFile_h + + +#endif \ No newline at end of file diff --git a/Marlin/SdInfo.h b/Marlin/SdInfo.h index 2a58eb7db..03ece1022 100644 --- a/Marlin/SdInfo.h +++ b/Marlin/SdInfo.h @@ -17,6 +17,9 @@ * along with the Arduino Sd2Card Library. If not, see * . */ +#include "Marlin.h" +#ifdef SDSUPPORT + #ifndef SdInfo_h #define SdInfo_h #include @@ -273,3 +276,5 @@ union csd_t { csd2_t v2; }; #endif // SdInfo_h + +#endif \ No newline at end of file diff --git a/Marlin/SdVolume.cpp b/Marlin/SdVolume.cpp index a14bb627e..f14d7bc70 100644 --- a/Marlin/SdVolume.cpp +++ b/Marlin/SdVolume.cpp @@ -17,6 +17,9 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" +#ifdef SDSUPPORT + #include "SdVolume.h" //------------------------------------------------------------------------------ #if !USE_MULTIPLE_CARDS @@ -399,3 +402,4 @@ bool SdVolume::init(Sd2Card* dev, uint8_t part) { fail: return false; } +#endif \ No newline at end of file diff --git a/Marlin/SdVolume.h b/Marlin/SdVolume.h index 0f2e55ab2..2ff2b6eb9 100644 --- a/Marlin/SdVolume.h +++ b/Marlin/SdVolume.h @@ -17,6 +17,8 @@ * along with the Arduino SdFat Library. If not, see * . */ +#include "Marlin.h" +#ifdef SDSUPPORT #ifndef SdVolume_h #define SdVolume_h /** @@ -209,3 +211,4 @@ class SdVolume { #endif // ALLOW_DEPRECATED_FUNCTIONS }; #endif // SdVolume +#endif \ No newline at end of file From cee5f9020ace7da75895c088a2f9bab3eb2f3a1e Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 15 Jan 2012 17:06:10 +0100 Subject: [PATCH 183/430] added suicide pin for a power supply to the arduino that is only active if the arduino is holding high for an output. --- Marlin/Marlin.pde | 38 ++++++++++++++++++++++++++++++++++---- Marlin/pins.h | 1 + 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b650909ad..cabaee13d 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -161,7 +161,7 @@ static bool fromsd[BUFSIZE]; static int bufindr = 0; static int bufindw = 0; static int buflen = 0; -static int i = 0; +//static int i = 0; static char serial_char; static int serial_count = 0; static boolean comment_mode = false; @@ -233,8 +233,30 @@ void setup_photpin() #endif #endif } + +void setup_powerhold() +{ + #ifdef SUICIDE_PIN + #if (SUICIDE_PIN> -1) + SET_OUTPUT(SUICIDE_PIN); + WRITE(SUICIDE_PIN, HIGH); + #endif + #endif +} + +void suicide() +{ + #ifdef SUICIDE_PIN + #if (SUICIDE_PIN> -1) + SET_OUTPUT(SUICIDE_PIN); + WRITE(SUICIDE_PIN, LOW); + #endif + #endif +} + void setup() { + setup_powerhold(); MSerial.begin(BAUDRATE); SERIAL_ECHO_START; SERIAL_ECHOLNPGM(VERSION_STRING); @@ -912,10 +934,17 @@ FORCE_INLINE void process_commands() case 80: // M80 - ATX Power On SET_OUTPUT(PS_ON_PIN); //GND break; + #endif + case 81: // M81 - ATX Power Off - SET_INPUT(PS_ON_PIN); //Floating - break; - #endif + #if (SUICIDE_PIN >-1) + suicide(); + #else + #if (PS_ON_PIN > -1) + SET_INPUT(PS_ON_PIN); //Floating + #endif + #endif + case 82: axis_relative_modes[3] = false; break; @@ -1314,6 +1343,7 @@ void kill() SERIAL_ERROR_START; SERIAL_ERRORLNPGM("Printer halted. kill() called !!"); LCD_MESSAGEPGM("KILLED. "); + suicide(); while(1); // Wait for reset } diff --git a/Marlin/pins.h b/Marlin/pins.h index 6451d7425..28e349161 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -582,6 +582,7 @@ #define FAN_PIN 7 #define PS_ON_PIN 12 #define KILL_PIN -1 +#define SUICIDE_PIN 54 //PIN that has to be turned on right after start, to keep power flowing. #ifdef ULTRA_LCD From 7aeb45303df1373119a78836621d04f1b1d475e0 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 15 Jan 2012 18:31:21 +0100 Subject: [PATCH 184/430] small mistake --- Marlin/Marlin.pde | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index cabaee13d..23b3acef7 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -937,7 +937,9 @@ FORCE_INLINE void process_commands() #endif case 81: // M81 - ATX Power Off + #if (SUICIDE_PIN >-1) + st_synchronize(); suicide(); #else #if (PS_ON_PIN > -1) From 157aa7f2fd47d03497a0ca5ec46e6f07ce4cb343 Mon Sep 17 00:00:00 2001 From: Bernhard Date: Sun, 15 Jan 2012 20:51:49 +0100 Subject: [PATCH 185/430] m115 eol fix --- Marlin/Marlin.pde | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 23b3acef7..824a57d78 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -997,7 +997,7 @@ FORCE_INLINE void process_commands() } break; case 115: // M115 - SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1"); + SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1\n"); break; case 117: // M117 display message LCD_MESSAGE(cmdbuffer[bufindr]+5); From 6cc6029d7af47a2a6103742d8af1264af8631226 Mon Sep 17 00:00:00 2001 From: haxar Date: Sun, 22 Jan 2012 03:25:56 -0800 Subject: [PATCH 186/430] M109 EOL fix when TEMP_RESIDENCY_TIME is undefined; printer interface (pronterface) could not see target extruder heater temperature to continue print --- Marlin/Marlin.pde | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 824a57d78..bbef8170d 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -864,6 +864,8 @@ FORCE_INLINE void process_commands() { SERIAL_PROTOCOLLN( "?" ); } + #else + SERIAL_PROTOCOLLN(""); #endif codenum = millis(); } From 8d0916af1360115d0a86090d1b24a28a1ffef5bd Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 13:18:54 +1100 Subject: [PATCH 187/430] allow Marlin to actually compile with Makefile pulled from Sprinter and a few other modifications --- Marlin/Makefile | 384 ++++++++-------------- Marlin/Marlin.h | 4 +- Marlin/Marlin.pde | 6 +- Marlin/{cardreader.pde => cardreader.cpp} | 0 Marlin/temperature.cpp | 10 +- 5 files changed, 151 insertions(+), 253 deletions(-) rename Marlin/{cardreader.pde => cardreader.cpp} (100%) diff --git a/Marlin/Makefile b/Marlin/Makefile index 84e540568..1e847a37b 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -1,76 +1,65 @@ +# Sprinter Arduino Project Makefile +# +# Makefile Based on: +# Arduino 0011 Makefile +# Arduino adaptation by mellis, eighthave, oli.keller +# +# This has been tested with Arduino 0022. +# +# This makefile allows you to build sketches from the command line +# without the Arduino environment (or Java). +# +# Detailed instructions for using the makefile: +# +# 1. Modify the line containg "INSTALL_DIR" to point to the directory that +# contains the Arduino installation (for example, under Mac OS X, this +# might be /Applications/arduino-0012). +# +# 2. Modify the line containing "PORT" to refer to the filename +# representing the USB or serial connection to your Arduino board +# (e.g. PORT = /dev/tty.USB0). If the exact name of this file +# changes, you can use * as a wildcard (e.g. PORT = /dev/tty.usb*). +# +# 3. Set the line containing "MCU" to match your board's processor. +# Older one's are atmega8 based, newer ones like Arduino Mini, Bluetooth +# or Diecimila have the atmega168. If you're using a LilyPad Arduino, +# change F_CPU to 8000000. +# +# 4. Type "make" and press enter to compile/verify your program. +# +# 5. Type "make upload", reset your Arduino board, and press enter to +# upload your program to the Arduino board. +# +# $Id$ + TARGET = $(notdir $(CURDIR)) -# CHANGE BELOW: -#~ INSTALL_DIR = /Applications/Arduino.app/Contents/Resources/Java -INSTALL_DIR = /home/bkubicek/software/arduino-0023 -#~ PORT = /dev/cu.usbserial* -PORT = /dev/ttyACM0 +INSTALL_DIR = ../../arduino-0022/ +UPLOAD_RATE = 115200 +AVRDUDE_PROGRAMMER = arduino +# PORT = /dev/arduino_A900G2I3 +PORT = /dev/arduino +MCU = atmega1280 +#For "old" Arduino Mega +#MCU = atmega1280 +#For Sanguinololu +#MCU = atmega644p +F_CPU = 16000000 -# Get these values from: -# $(INSTALL_DIR)/hardware/boards.txt -# (arduino-0022/hardware/arduino/boards.txt) -# The values below are for the "Arduino Duemilanove or Nano w/ ATmega328" -# now for "Arduino Mega 2560" -UPLOAD_SPEED = 115200 -UPLOAD_PROTOCOL = stk500v2 -BUILD_MCU = atmega2560 -BUILD_F_CPU = 16000000L -TERM=bash - -# getting undefined reference to `__cxa_pure_virtual' -#~ [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254180518 Arduino Forum - Makefile] -#~ http://www.arduino.cc/playground/OpenBSD/CLI -#~ [http://arduino.cc/forum/index.php?topic=52041.0 A "simple" makefile for Arduino] -#~ [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1275488191 Arduino Forum - Configuring avr-gcc options in arduino IDE] -# found in /usr/lib/gcc/avr/4.3.5/cc1plus; fixed with -Wl,--gc-section ############################################################################ # Below here nothing should be changed... -LINKORDER=\ -applet/Marlin.cpp.o \ -applet/EEPROM.o \ -applet/main.o \ -applet/MarlinSerial.o \ -applet/motion_control.o\ -applet/pins_arduino.o\ -applet/planner.o\ -applet/Print.o\ -applet/Sd2Card.o\ -applet/SdBaseFile.o\ -applet/SdFatUtil.o\ -applet/SdFile.o\ -applet/SdVolume.o\ -applet/stepper.o\ -applet/temperature.o\ -applet/WInterrupts.o\ -applet/wiring_analog.o\ -applet/wiring_digital.o\ -applet/wiring.o\ -applet/wiring_pulse.o\ -applet/wiring_shift.o\ -applet/WMath.o - -PDES=Marlin.pde ultralcd.pde watchdog.pde cardreader.pde ARDUINO = $(INSTALL_DIR)/hardware/arduino/cores/arduino -# -#~ AVR_TOOLS_PATH = $(INSTALL_DIR)/hardware/tools/avr/bin -# in Ubuntu, avr-gcc is installed separate; -# only avrdude comes with the IDE -AVR_TOOLS_PATH = /usr/bin -AVR_DUDE_PATH = $(INSTALL_DIR)/hardware/tools -# -SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \ - $(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ - $(ARDUINO)/wiring_pulse.c \ - $(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c -# added applet/$(TARGET).cpp as in IDE 0022 -CXXSRC = $(ARDUINO)/HardwareSerial.cpp $(ARDUINO)/WMath.cpp \ - $(ARDUINO)/Print.cpp \ - $(ARDUINO)/main.cpp -# applet/$(TARGET).cpp # no need, having a rule now for applet/$(TARGET).cpp.o -# added main.cpp, as in 0022 +AVR_TOOLS_PATH = +SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \ +$(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ +$(ARDUINO)/wiring_pulse.c \ +$(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c +CXXSRC = $(ARDUINO)/WMath.cpp $(ARDUINO)/WString.cpp\ +$(ARDUINO)/Print.cpp Marlin.cpp MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp stepper.cpp temperature.cpp cardreader.cpp FORMAT = ihex + # Name of this Makefile (used for "make depend"). MAKEFILE = Makefile @@ -79,192 +68,128 @@ MAKEFILE = Makefile # AVR (extended) COFF requires stabs, plus an avr-objcopy run. DEBUG = stabs -OPT = 2 +OPT = s # Place -D or -U options here -#~ CDEFS = -DBUILD_F_CPU=$(BUILD_F_CPU) -#~ CXXDEFS = -DBUILD_F_CPU=$(BUILD_F_CPU) -# now called DF_CPU -CDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=23 -CXXDEFS = -DF_CPU=$(BUILD_F_CPU) -DARDUINO=23 +CDEFS = -DF_CPU=$(F_CPU) +CXXDEFS = -DF_CPU=$(F_CPU) # Place -I options here -CINCS = -I$(ARDUINO) -I$(INSTALL_DIR)/libraries/LiquidCrystal/ -I$(INSTALL_DIR)/libraries/EEPROM/ +CINCS = -I$(ARDUINO) CXXINCS = -I$(ARDUINO) # Compiler flag to set the C Standard level. -# c89 - "ANSI" C +# c89 - "ANSI" C # gnu89 - c89 plus GCC extensions -# c99 - ISO C99 standard (not yet fully implemented) +# c99 - ISO C99 standard (not yet fully implemented) # gnu99 - c99 plus GCC extensions -CSTANDARD = -std=gnu99 +#CSTANDARD = -std=gnu99 CDEBUG = -g$(DEBUG) -# note that typically, IDE 0022 uses -w to suppress warnings (both in cpp and c)! -CWARN = -Wall -#~ CWARN = -w -# "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++: -CCWARN = -Wstrict-prototypes -CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums +CWARN = -Wall -Wstrict-prototypes +CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -w -ffunction-sections -fdata-sections -DARDUINO=22 #CEXTRA = -Wa,-adhlns=$(<:.c=.lst) -# to eliminate pins_ardiuno warnings: -# http://arduino.cc/pipermail/developers_arduino.cc/2010-December/004005.html - -# [http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254180518 Arduino Forum - Makefile] -#~ For building the objects files "-ffunction-sections -fdata-sections" was missing -#~ and the final avr-gcc call needs "-Wl,--gc-section". -CXSECTF = -fno-exceptions -ffunction-sections -fdata-sections -CFINALF = -Wl,--gc-section - -CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CCWARN) $(CSTANDARD) $(CEXTRA) -# added CWARN also to .cpp -CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CXSECTF) -#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs +CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CEXTRA) $(CTUNING) +CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) -Wall $(CEXTRA) $(CTUNING) +#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs LDFLAGS = -lm + # Programming support using avrdude. Settings and variables. AVRDUDE_PORT = $(PORT) -AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex -AVRDUDE_FLAGS = -V -F \ - -p $(BUILD_MCU) -P $(AVRDUDE_PORT) -c $(UPLOAD_PROTOCOL) \ - -b $(UPLOAD_SPEED) -C $(INSTALL_DIR)/hardware/tools/avrdude.conf -# -b $(UPLOAD_SPEED) -C $(INSTALL_DIR)/hardware/tools/avr/etc/avrdude.conf +AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex:i +AVRDUDE_FLAGS = -D -C $(INSTALL_DIR)/hardware/tools/avrdude.conf \ +-p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ +-b $(UPLOAD_RATE) # Program settings -CC = $(AVR_TOOLS_PATH)/avr-gcc -CXX = $(AVR_TOOLS_PATH)/avr-g++ -OBJCOPY = $(AVR_TOOLS_PATH)/avr-objcopy -OBJDUMP = $(AVR_TOOLS_PATH)/avr-objdump -AR = $(AVR_TOOLS_PATH)/avr-ar -SIZE = $(AVR_TOOLS_PATH)/avr-size -NM = $(AVR_TOOLS_PATH)/avr-nm -#~ AVRDUDE = $(AVR_TOOLS_PATH)/avrdude -AVRDUDE = $(AVR_DUDE_PATH)/avrdude +CC = $(AVR_TOOLS_PATH)avr-gcc +CXX = $(AVR_TOOLS_PATH)avr-g++ +OBJCOPY = $(AVR_TOOLS_PATH)avr-objcopy +OBJDUMP = $(AVR_TOOLS_PATH)avr-objdump +AR = $(AVR_TOOLS_PATH)avr-ar +SIZE = $(AVR_TOOLS_PATH)avr-size +NM = $(AVR_TOOLS_PATH)avr-nm +AVRDUDE = avrdude REMOVE = rm -f MV = mv -f # Define all object files. -# NOTE: obj files will be created in respective src directories (libraries or $(INSTALL_DIR)); -# make clean deletes them fine -# note that srcs are in libraries or other directories; -# $(CXXSRC:.cpp=.o) will cause obj files to be in same loc as src files -#~ OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) -# to change the output directory for object files; -# must change the obj list here! -# and then, match to corresponding rule somehow? -# or leave this - and parse in rule (auth automatic variable $(@F))? -# "Suffix Replacement" -CXXSRC+=MarlinSerial.cpp SdBaseFile.cpp stepper.cpp motion_control.cpp SdFatUtil.cpp temperature.cpp planner.cpp SdFile.cpp Sd2Card.cpp SdVolume.cpp -OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) - -# added - OBJ list, transformed into applet/ -OBJT = $(addprefix applet/,$(notdir $(OBJ))) -ALLSRC = $(SRC) $(CXXSRC) $(ASRC) +OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) # Define all listing files. LST = $(ASRC:.S=.lst) $(CXXSRC:.cpp=.lst) $(SRC:.c=.lst) # Combine all necessary flags and optional flags. # Add target processor to flags. -ALL_CFLAGS = -mmcu=$(BUILD_MCU) -I. $(CFLAGS) -ALL_CXXFLAGS = -mmcu=$(BUILD_MCU) -I. $(CXXFLAGS) -ALL_ASFLAGS = -mmcu=$(BUILD_MCU) -I. -x assembler-with-cpp $(ASFLAGS) +ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS) +ALL_CXXFLAGS = -mmcu=$(MCU) -I. $(CXXFLAGS) +ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) -# depended libraries of .pde need to be added from -# $(INSTALL_DIR)/libraries (TODO: and/or ~/sketchbook/libraries) -# grep for 'include', test if exists, add... -# note: prefix "a real tab character" http://www.delorie.com/djgpp/doc/ug/larger/makefiles.html -# $$ to escape $ for shell; -# note: must NOT put comments # inside bash execution; -# those would get removed by make; making shell see "EOF in backquote substitution" -# echo $$ix ; \ -# 'shell' twice - for each subprocess! Backtick doesn't get expanded? -GREPRES:=$(shell for ix in $(shell grep include $(TARGET).pde | sed 's/.*[<"]\(.*\).h[>"].*/\1/'); do \ - if [ -d $(INSTALL_DIR)/libraries/$$ix ] ; then \ - LINCS="$$LINCS -I$(INSTALL_DIR)/libraries/$$ix" ;\ - fi; \ - done; \ - echo $$LINCS) -# append includes: -CINCS += $(GREPRES) -CXXINCS += $(GREPRES) -# append library source .cpp files too (CXXSRC) -GREPRESB:=$(shell for ix in $(shell grep include $(TARGET).pde | sed 's/.*[<"]\(.*\).h[>"].*/\1/'); do \ - if [ -d $(INSTALL_DIR)/libraries/$$ix ] ; then \ - CPPSRCS="$$CPPSRCS $(INSTALL_DIR)/libraries/$$ix/*.cpp" ;\ - fi; \ - done; \ - echo $$CPPSRCS) -CXXSRC += $(GREPRESB) -# added - only CXX obj from libraries: -CXXLIBOBJ = $(GREPRESB:.cpp=.o) # Default target. all: applet_files build sizeafter -build: elf hex +build: elf hex applet_files: $(TARGET).pde - # Here is the "preprocessing". - # It creates a .cpp file based with the same name as the .pde file. - # On top of the new .cpp file comes the WProgram.h header. - # At the end there is a generic main() function attached. - # Then the .cpp file will be compiled. Errors during compile will - # refer to this new, automatically generated, file. - # Not the original .pde file you actually edit... + # Here is the "preprocessing". + # It creates a .cpp file based with the same name as the .pde file. + # On top of the new .cpp file comes the WProgram.h header. + # At the end there is a generic main() function attached. + # Then the .cpp file will be compiled. Errors during compile will + # refer to this new, automatically generated, file. + # Not the original .pde file you actually edit... test -d applet || mkdir applet - # @ supresses printout of the cmdline itself; so only the out of echo is printed - @echo ALL OBJT: $(OBJT) - @echo ALL CXXLIBOBJ: $(CXXLIBOBJ) -# echo '#include "WProgram.h"' > applet/$(TARGET).cpp - @echo "#include \"WProgram.h\"\nvoid setup();\nvoid loop();\n" > applet/$(TARGET).cpp - ##cat $(TARGET).pde >> applet/$(TARGET).cpp - cat ${PDES}>> applet/$(TARGET).cpp - cp *.cpp applet/ - # no more need to cat main.cpp (v0022) - now it is compiled in -# cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp - + echo '#include "WProgram.h"' > applet/$(TARGET).cpp + cat $(TARGET).pde >> applet/$(TARGET).cpp + cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp elf: applet/$(TARGET).elf hex: applet/$(TARGET).hex eep: applet/$(TARGET).eep -lss: applet/$(TARGET).lss +lss: applet/$(TARGET).lss sym: applet/$(TARGET).sym -# Program the device. +# Program the device. upload: applet/$(TARGET).hex $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) -# Display size of file. + + # Display size of file. HEXSIZE = $(SIZE) --target=$(FORMAT) applet/$(TARGET).hex -ELFSIZE = $(SIZE) applet/$(TARGET).elf +ELFSIZE = $(SIZE) applet/$(TARGET).elf sizebefore: @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi sizeafter: @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi + # Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. COFFCONVERT=$(OBJCOPY) --debugging \ - --change-section-address .data-0x800000 \ - --change-section-address .bss-0x800000 \ - --change-section-address .noinit-0x800000 \ - --change-section-address .eeprom-0x810000 +--change-section-address .data-0x800000 \ +--change-section-address .bss-0x800000 \ +--change-section-address .noinit-0x800000 \ +--change-section-address .eeprom-0x810000 + coff: applet/$(TARGET).elf $(COFFCONVERT) -O coff-avr applet/$(TARGET).elf $(TARGET).cof + extcoff: $(TARGET).elf $(COFFCONVERT) -O coff-ext-avr applet/$(TARGET).elf $(TARGET).cof + .SUFFIXES: .elf .hex .eep .lss .sym .elf.hex: $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ .elf.eep: - -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ - --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ + -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ + --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ # Create extended listing file from ELF output file. .elf.lss: @@ -274,79 +199,50 @@ extcoff: $(TARGET).elf .elf.sym: $(NM) -n $< > $@ -# Link: create ELF output file from library. -# NOTE: applet/$(TARGET).cpp.o MUST BE BEFORE applet/core.a -# in the dependency list, so its rule runs first! -applet/$(TARGET).elf: $(TARGET).pde applet/$(TARGET).cpp.o applet/core.a -# $(CC) $(ALL_CFLAGS) -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) -# changed as in IDE v0022: link cpp obj files - @echo $$(tput bold)$$(tput setaf 2) $(CC) $$(tput sgr0) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) - echo ${OBJT} - #$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/$(TARGET).cpp.o -L. applet/core.a $(LDFLAGS) - $(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ ${LINKORDER} $(LDFLAGS) - #@$(CC) $(ALL_CFLAGS) $(CFINALF) -o $@ applet/*.o applet/$(TARGET).cpp.o $(CXXOBJ) -L. applet/core.a $(LDFLAGS) + # Link: create ELF output file from library. +applet/$(TARGET).elf: $(TARGET).pde applet/core.a + $(CC) $(ALL_CFLAGS) -Wl,--gc-sections -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) -# added: cpp.o depends on cpp (and .pde which generates it) -# $< "first item in the dependencies list"; $@ "left side of the :"; $^ "right side of the :" -# http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/ -applet/$(TARGET).cpp.o: applet/$(TARGET).cpp - @echo $$(tput bold) $(CXX) $$(tput sgr0) -c $(ALL_CXXFLAGS) $< -o $@ - @$(CXX) -c $(ALL_CXXFLAGS) $< -o $@ +applet/core.a: $(OBJ) + @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done -#~ applet/core.a: $(OBJ) -#~ @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done -applet/core.a: $(OBJT) - @for i in $(OBJT); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done -# iterate through OBJ to find the original location; then build depending on source extension -# TODO: add handling of assembler files -applet/%.o: - @for iob in $(OBJ); do \ - if [ "`basename $$iob`" = "`basename $@`" ]; then \ - for ios in $(ALLSRC); do \ - if [ "$${iob%%.*}" = "$${ios%%.*}" ]; then \ - case $${ios##*.} in \ - "cpp") \ - echo "$$(tput bold)$$(tput setaf 1) $(CXX) $$(tput sgr0) -c $(ALL_CXXFLAGS) $$ios -o $@"; \ - $(CXX) -c $(ALL_CXXFLAGS) $$ios -o $@;; \ - "c") \ - echo "$$(tput bold)$$(tput setaf 1) $(CC) $$(tput sgr0) -c $(ALL_CFLAGS) $$ios -o $@"; \ - $(CC) -c $(ALL_CFLAGS) $$ios -o $@;; \ - esac; \ - fi; \ - done; \ - fi; \ - done; +# Compile: create object files from C++ source files. +.cpp.o: + $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ -#~ # Compile: create object files from C++ source files. -#~ .cpp.o: -#~ $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ +# Compile: create object files from C source files. +.c.o: + $(CC) -c $(ALL_CFLAGS) $< -o $@ -#~ # Compile: create object files from C source files. -#~ .c.o: -#~ $(CC) -c $(ALL_CFLAGS) $< -o $@ -#~ # Compile: create assembler files from C source files. -#~ .c.s: -#~ $(CC) -S $(ALL_CFLAGS) $< -o $@ +# Compile: create assembler files from C source files. +.c.s: + $(CC) -S $(ALL_CFLAGS) $< -o $@ -#~ # Assemble: create object files from assembler source files. -#~ .S.o: -#~ $(CC) -c $(ALL_ASFLAGS) $< -o $@ -#~ # Automatic dependencies -#~ %.d: %.c -#~ $(CC) -M $(ALL_CFLAGS) $< | sed "s;$(notdir $*).o:;$*.o $*.d:;" > $@ +# Assemble: create object files from assembler source files. +.S.o: + $(CC) -c $(ALL_ASFLAGS) $< -o $@ + -#~ %.d: %.cpp -#~ $(CXX) -M $(ALL_CXXFLAGS) $< | sed "s;$(notdir $*).o:;$*.o $*.d:;" > $@ # Target: clean project. clean: $(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ - applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ - $(OBJT) applet/$(TARGET).cpp.o \ - $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) + applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ + $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) -.PHONY: all build elf hex eep lss sym program coff extcoff clean applet_files sizebefore sizeafter +depend: + if grep '^# DO NOT DELETE' $(MAKEFILE) >/dev/null; \ + then \ + sed -e '/^# DO NOT DELETE/,$$d' $(MAKEFILE) > \ + $(MAKEFILE).$$$$ && \ + $(MV) $(MAKEFILE).$$$$ $(MAKEFILE); \ + fi + echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' \ + >> $(MAKEFILE); \ + $(CC) -M -mmcu=$(MCU) $(CDEFS) $(CINCS) $(SRC) $(ASRC) >> $(MAKEFILE) + +.PHONY: all build elf hex eep lss sym program coff extcoff clean depend applet_files sizebefore sizeafter diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 78739af24..560046a2b 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -14,7 +14,7 @@ #include #include -#include +#include #include #include #include @@ -55,7 +55,7 @@ // //# define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) // //#define MYPGM(s) ((const prog_char *g PROGMEM=s)) // //#define MYPGM(s) PSTR(s) -#define MYPGM(s) (__extension__({static char __c[] __attribute__((__progmem__)) = (s); &__c[0];})) //This is the normal behaviour +#define MYPGM(s) (__extension__({static const char __c[] __attribute__((__progmem__)) = (s); &__c[0];})) //This is the normal behaviour //#define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) //this does not work but hides the warnings diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 824a57d78..54c0ad3f3 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1301,8 +1301,10 @@ void manage_inactivity(byte debug) last_stepperdisabled_time=previous_millis_cmd; else { - if( (X_ENABLE_ON && (READ(X_ENABLE_PIN)!=0)) || (!X_ENABLE_ON && READ(X_ENABLE_PIN)==0) ) - enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + #if X_ENABLE_PIN >= 0 + if( (X_ENABLE_ON && (READ(X_ENABLE_PIN)!=0)) || (!X_ENABLE_ON && READ(X_ENABLE_PIN)==0) ) + enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); + #endif last_stepperdisabled_time=millis(); } } diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.cpp similarity index 100% rename from Marlin/cardreader.pde rename to Marlin/cardreader.cpp diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 371c6e589..e8ec15e95 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -85,9 +85,9 @@ static unsigned long previous_millis_bed_heater; static unsigned char soft_pwm[EXTRUDERS]; #ifdef WATCHPERIOD - static int watch_raw[EXTRUDERS] = { -1000 }; // the first value used for all - static int watch_oldtemp[3] = {0,0,0}; - static unsigned long watchmillis = 0; + int watch_raw[EXTRUDERS] = { -1000 }; // the first value used for all + int watch_oldtemp[3] = {0,0,0}; + unsigned long watchmillis = 0; #endif //WATCHPERIOD // Init min and max temp with extreme values to prevent false errors during startup @@ -218,7 +218,7 @@ void manage_heater() #ifdef WATCHPERIOD if(watchmillis && millis() - watchmillis > WATCHPERIOD){ - if(watch_oldtemp[TEMPSENSOR_HOTEND_0] >= degHotend(active_extruder)){ + if(watch_oldtemp[0] >= degHotend(active_extruder)){ setTargetHotend(0,active_extruder); LCD_MESSAGEPGM("Heating failed"); SERIAL_ECHO_START; @@ -527,7 +527,7 @@ void setWatch() for (int e = 0; e < EXTRUDERS; e++) { if(isHeatingHotend(e)) - watch_oldtemp[TEMPSENSOR_HOTEND_0] = degHotend(0); + watch_oldtemp[0] = degHotend(0); { t = max(t,millis()); watch_raw[e] = current_raw[e]; From 5aadc2f5ca43970f6905ea11e9e17868f2e1d0da Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 13:19:24 +1100 Subject: [PATCH 188/430] cardreader needs to include some other files --- Marlin/cardreader.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Marlin/cardreader.cpp b/Marlin/cardreader.cpp index a1f23ce06..2a7bd4a57 100644 --- a/Marlin/cardreader.cpp +++ b/Marlin/cardreader.cpp @@ -1,5 +1,8 @@ #include "Marlin.h" #include "cardreader.h" +#include "ultralcd.h" +#include "stepper.h" +#include "temperature.h" #ifdef SDSUPPORT From 71dc82e0b47a8362f8e03dd361cbc1624b253c6e Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 13:19:37 +1100 Subject: [PATCH 189/430] my local configuration --- Marlin/Configuration.h | 66 +++++++++++++++++++++--------------------- Marlin/pins.h | 43 +++++++++++++++++++++++++++ 2 files changed, 76 insertions(+), 33 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 85fd38968..3dd8f6199 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,8 +4,8 @@ // This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 +//#define BAUDRATE 250000 +#define BAUDRATE 115200 //#define BAUDRATE 230400 #define EXTRUDERS 1 @@ -29,7 +29,7 @@ // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, // Teensylu = 8 -#define MOTHERBOARD 7 +#define MOTHERBOARD 99 //=========================================================================== //=============================Thermal Settings ============================ @@ -44,36 +44,36 @@ // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -//#define THERMISTORHEATER_0 3 +#define THERMISTORHEATER_0 1 //#define THERMISTORHEATER_1 1 //#define THERMISTORHEATER_2 1 -//#define HEATER_0_USES_THERMISTOR +#define HEATER_0_USES_THERMISTOR //#define HEATER_1_USES_THERMISTOR //#define HEATER_2_USES_THERMISTOR -#define HEATER_0_USES_AD595 +//#define HEATER_0_USES_AD595 //#define HEATER_1_USES_AD595 //#define HEATER_2_USES_AD595 // Select one of these only to define how the bed temp is read. -//#define THERMISTORBED 1 -//#define BED_USES_THERMISTOR +#define THERMISTORBED 1 +#define BED_USES_THERMISTOR //#define BED_LIMIT_SWITCHING #ifdef BED_LIMIT_SWITCHING #define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS #endif //#define BED_USES_AD595 -#define BED_CHECK_INTERVAL 5000 //ms +#define BED_CHECK_INTERVAL 1000 //ms //// Heating sanity check: // This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // If the temperature has not increased at the end of that period, the target temperature is set to zero. // It can be reset with another M104/M109 -//#define WATCHPERIOD 20000 //20 seconds +#define WATCHPERIOD 20000 //20 seconds // Actual temperature must be close to target for this long before M109 returns success -#define TEMP_RESIDENCY_TIME 30 // (seconds) +#define TEMP_RESIDENCY_TIME 50 // (seconds) #define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one //// The minimal temperature defines the temperature below which the heater will not be enabled @@ -86,10 +86,10 @@ // When temperature exceeds max temp, your heater will be switched off. // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // You should use MINTEMP for thermistor short/failure protection. -#define HEATER_0_MAXTEMP 275 +#define HEATER_0_MAXTEMP 325 //#define HEATER_1_MAXTEMP 275 //#define HEATER_2_MAXTEMP 275 -//#define BED_MAXTEMP 150 +#define BED_MAXTEMP 140 // Wait for Cooldown @@ -103,7 +103,7 @@ // PID settings: // Uncomment the following line to enable PID support. -#define PIDTEMP +//#define PIDTEMP #define PID_MAX 255 // limits current to nozzle; 255=full current #ifdef PIDTEMP //#define PID_DEBUG // Sends debug data to the serial port. @@ -167,7 +167,7 @@ // extruder run-out prevention. //if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded //#define EXTRUDER_RUNOUT_PREVENT -#define EXTRUDER_RUNOUT_MINTEMP 190 +#define EXTRUDER_RUNOUT_MINTEMP 160 #define EXTRUDER_RUNOUT_SECONDS 30. #define EXTRUDER_RUNOUT_ESTEPS 14. //mm filament #define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed @@ -209,8 +209,8 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //#define INVERT_E*_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false, used for all extruders #define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false @@ -223,18 +223,18 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define min_software_endstops true //If true, axis won't move to coordinates less than zero. #define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 205 -#define Y_MAX_LENGTH 205 -#define Z_MAX_LENGTH 200 +#define X_MAX_LENGTH 187 +#define Y_MAX_LENGTH 188 +#define Z_MAX_LENGTH 80 //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +#define HOMING_FEEDRATE {2400, 2400, 150, 0} // set the homing speeds (mm/min) //homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: -#define X_HOME_RETRACT_MM 5 -#define Y_HOME_RETRACT_MM 5 -#define Z_HOME_RETRACT_MM 1 +#define X_HOME_RETRACT_MM 2 +#define Y_HOME_RETRACT_MM 2 +#define Z_HOME_RETRACT_MM 2 #define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially. #define AXIS_RELATIVE_MODES {false, false, false, false} @@ -243,11 +243,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker +#define DEFAULT_AXIS_STEPS_PER_UNIT {64,64,3200,110} // default steps per unit for ultimaker //#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 360} //sells mendel with v9 extruder //#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder -#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) -#define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. +#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 1000} // (mm/sec) +#define DEFAULT_MAX_ACCELERATION {1200,1200,100,9000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves #define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts @@ -257,7 +257,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. #define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this -#define DEFAULT_XYJERK 20.0 // (mm/sec) +#define DEFAULT_XYJERK 12.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) // If defined the movements slow down when the look ahead buffer is only half full @@ -278,7 +278,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). // M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. //define this to enable eeprom support -#define EEPROM_SETTINGS +//#define EEPROM_SETTINGS //to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out: // please keep turned on if you can. #define EEPROM_CHITCHAT @@ -316,9 +316,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -//#define SDSUPPORT // Enable SD Card Support in Hardware Console -#define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? -#define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. +#define SDSUPPORT // Enable SD Card Support in Hardware Console +#define SD_FINISHED_STEPPERRELEASE false //if sd support and the file is finished: disable steppers? +#define SD_FINISHED_RELEASECOMMAND "M81" // no z because of layer shift. //#define ULTIPANEL #ifdef ULTIPANEL @@ -358,7 +358,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //this prevents dangerous Extruder moves, i.e. if the temperature is under the limit //can be software-disabled for whatever purposes by #define PREVENT_DANGEROUS_EXTRUDE -#define EXTRUDE_MINTEMP 190 +#define EXTRUDE_MINTEMP 150 #define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement diff --git a/Marlin/pins.h b/Marlin/pins.h index 28e349161..da573a423 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -1,6 +1,49 @@ #ifndef PINS_H #define PINS_H +#if MOTHERBOARD == 99 +#define KNOWN_BOARD 1 + +#define X_STEP_PIN 2 +#define X_DIR_PIN 3 +#define X_ENABLE_PIN -1 +#define X_MIN_PIN 16 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 5 +#define Y_DIR_PIN 6 +#define Y_ENABLE_PIN -1 +#define Y_MIN_PIN 67 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 62 +#define Z_DIR_PIN 63 +#define Z_ENABLE_PIN -1 +#define Z_MIN_PIN 59 +#define Z_MAX_PIN -1 + +#define E0_STEP_PIN 65 +#define E0_DIR_PIN 66 +#define E0_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS 53 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN 9 +#define KILL_PIN -1 + +#define HEATER_0_PIN 13 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define TEMP_0_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! +#define HEATER_BED_PIN 4 +#define TEMP_BED_PIN 10 + +#endif /* 99 */ + /**************************************************************************************** * Arduino pin assignment * From 2ae2ead97b7b24b3e9a03f53da82c00ad7f73b71 Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 14:24:24 +1100 Subject: [PATCH 190/430] help residency not overflow --- Marlin/Marlin.pde | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 54c0ad3f3..0ffbdba80 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -843,11 +843,11 @@ FORCE_INLINE void process_commands() /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ while((residencyStart == -1) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + (residencyStart >= 0 && (((unsigned int) (millis() - residencyStart)) < (TEMP_RESIDENCY_TIME * 1000UL))) ) { #else while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) + if( (millis() - codenum) > 1000UL ) { //Print Temp Reading and remaining time every 1 second while heating up/cooling down SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL( degHotend(tmp_extruder) ); @@ -857,7 +857,7 @@ FORCE_INLINE void process_commands() SERIAL_PROTOCOLPGM(" W:"); if(residencyStart > -1) { - codenum = TEMP_RESIDENCY_TIME - ((millis() - residencyStart) / 1000); + codenum = ((TEMP_RESIDENCY_TIME * 1000UL) - (millis() - residencyStart)) / 1000UL; SERIAL_PROTOCOLLN( codenum ); } else From 3e575533c5f59f1a0452a7c0061faa4c88cbd0ec Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 14:24:41 +1100 Subject: [PATCH 191/430] get M81 working --- Marlin/Marlin.pde | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 0ffbdba80..6f13cd3ec 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -909,7 +909,7 @@ FORCE_INLINE void process_commands() LCD_MESSAGEPGM("Bed done."); previous_millis_cmd = millis(); #endif - break; + break; #if FAN_PIN > -1 case 106: //M106 Fan On @@ -938,14 +938,13 @@ FORCE_INLINE void process_commands() case 81: // M81 - ATX Power Off - #if (SUICIDE_PIN >-1) + #if defined SUICIDE_PIN && SUICIDE_PIN > -1 st_synchronize(); suicide(); - #else - #if (PS_ON_PIN > -1) - SET_INPUT(PS_ON_PIN); //Floating - #endif + #elif (PS_ON_PIN > -1) + SET_INPUT(PS_ON_PIN); //Floating #endif + break; case 82: axis_relative_modes[3] = false; From a991bde523fdd2952d156b457ea7bb6cecdd4bcb Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 14:25:28 +1100 Subject: [PATCH 192/430] enable auto-reset before programming, disable afterwards --- Marlin/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/Makefile b/Marlin/Makefile index 1e847a37b..fdff2194f 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -153,7 +153,9 @@ sym: applet/$(TARGET).sym # Program the device. upload: applet/$(TARGET).hex + stty hup < $(PORT); true $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) + stty -hup < $(PORT); true # Display size of file. From 42bedb3f604ea685dc8b26c2a690ac1891361862 Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 15:57:42 +1100 Subject: [PATCH 193/430] PROGMEM elements must be const --- Marlin/speed_lookuptable.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/speed_lookuptable.h b/Marlin/speed_lookuptable.h index ab3a076f1..45607bcb0 100644 --- a/Marlin/speed_lookuptable.h +++ b/Marlin/speed_lookuptable.h @@ -3,7 +3,7 @@ #include "Marlin.h" -uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ +const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ { 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, { 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, { 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, @@ -38,7 +38,7 @@ uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ { 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} }; -uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ +const uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ { 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, { 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, { 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, From ab01658fd2e93dd4ceff47df9fb6b03c95ea9ebf Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Tue, 24 Jan 2012 17:02:45 +1100 Subject: [PATCH 194/430] local configuration stuff- WATCHPERIOD causes breakage, disable. few other misc changes --- Marlin/Configuration.h | 32 ++++++++++++++++---------------- Marlin/pins.h | 4 ++-- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 3dd8f6199..d410a9835 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -70,10 +70,10 @@ // This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature // If the temperature has not increased at the end of that period, the target temperature is set to zero. // It can be reset with another M104/M109 -#define WATCHPERIOD 20000 //20 seconds +// #define WATCHPERIOD 20000 //20 seconds // Actual temperature must be close to target for this long before M109 returns success -#define TEMP_RESIDENCY_TIME 50 // (seconds) +#define TEMP_RESIDENCY_TIME 5 // (seconds) #define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one //// The minimal temperature defines the temperature below which the heater will not be enabled @@ -181,14 +181,14 @@ // Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors - // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. + +const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false -#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing +//#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -217,7 +217,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN -#define X_HOME_DIR -1 +#define X_HOME_DIR 1 #define Y_HOME_DIR -1 #define Z_HOME_DIR -1 @@ -246,19 +246,19 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DEFAULT_AXIS_STEPS_PER_UNIT {64,64,3200,110} // default steps per unit for ultimaker //#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 360} //sells mendel with v9 extruder //#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder -#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 1000} // (mm/sec) -#define DEFAULT_MAX_ACCELERATION {1200,1200,100,9000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. +#define DEFAULT_MAX_FEEDRATE {500, 500, 2.5, 1000} // (mm/sec) +#define DEFAULT_MAX_ACCELERATION {7000,7000,50,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. -#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts +#define DEFAULT_ACCELERATION 4000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 7000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts -#define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 0.0 +#define DEFAULT_MINIMUMFEEDRATE 10.0 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 10.0 // minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. #define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this -#define DEFAULT_XYJERK 12.0 // (mm/sec) -#define DEFAULT_ZJERK 0.4 // (mm/sec) +#define DEFAULT_XYJERK 8.0 // (mm/sec) +#define DEFAULT_ZJERK 0.1 // (mm/sec) // If defined the movements slow down when the look ahead buffer is only half full #define SLOWDOWN diff --git a/Marlin/pins.h b/Marlin/pins.h index da573a423..208a040d9 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -7,8 +7,8 @@ #define X_STEP_PIN 2 #define X_DIR_PIN 3 #define X_ENABLE_PIN -1 -#define X_MIN_PIN 16 -#define X_MAX_PIN -1 +#define X_MIN_PIN -1 +#define X_MAX_PIN 16 #define Y_STEP_PIN 5 #define Y_DIR_PIN 6 From 9c918a497b4cdb1b5cdf1b1237757212652fb08f Mon Sep 17 00:00:00 2001 From: Michael Moon Date: Wed, 25 Jan 2012 20:46:27 +1100 Subject: [PATCH 195/430] more work on Makefile - actually rebuilds if Makefile or Configuration.h are altered, also much cleaner output --- Marlin/Makefile | 122 ++++++++++++++++++++++++------------------------ 1 file changed, 60 insertions(+), 62 deletions(-) diff --git a/Marlin/Makefile b/Marlin/Makefile index fdff2194f..71ee74748 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -32,19 +32,24 @@ # # $Id$ -TARGET = $(notdir $(CURDIR)) -INSTALL_DIR = ../../arduino-0022/ -UPLOAD_RATE = 115200 -AVRDUDE_PROGRAMMER = arduino -# PORT = /dev/arduino_A900G2I3 -PORT = /dev/arduino -MCU = atmega1280 #For "old" Arduino Mega -#MCU = atmega1280 +MCU = atmega1280 +#For Arduino Mega2560 +#MCU = atmega2560 #For Sanguinololu #MCU = atmega644p + +#Arduino install directory +INSTALL_DIR = ../../arduino-0022/ + F_CPU = 16000000 +UPLOAD_RATE = 115200 +AVRDUDE_PROGRAMMER = arduino +PORT = /dev/arduino + +TARGET = $(notdir $(CURDIR)) + ############################################################################ # Below here nothing should be changed... @@ -52,11 +57,11 @@ F_CPU = 16000000 ARDUINO = $(INSTALL_DIR)/hardware/arduino/cores/arduino AVR_TOOLS_PATH = SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \ -$(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ -$(ARDUINO)/wiring_pulse.c \ -$(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c + $(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ + $(ARDUINO)/wiring_pulse.c \ + $(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c CXXSRC = $(ARDUINO)/WMath.cpp $(ARDUINO)/WString.cpp\ -$(ARDUINO)/Print.cpp Marlin.cpp MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp stepper.cpp temperature.cpp cardreader.cpp + $(ARDUINO)/Print.cpp Marlin.cpp MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp stepper.cpp temperature.cpp cardreader.cpp FORMAT = ihex @@ -90,7 +95,7 @@ CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -w -f #CEXTRA = -Wa,-adhlns=$(<:.c=.lst) CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CEXTRA) $(CTUNING) -CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) -Wall $(CEXTRA) $(CTUNING) +CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) -Wall $(CEXTRA) $(CTUNING) #ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs LDFLAGS = -lm @@ -99,8 +104,8 @@ LDFLAGS = -lm AVRDUDE_PORT = $(PORT) AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex:i AVRDUDE_FLAGS = -D -C $(INSTALL_DIR)/hardware/tools/avrdude.conf \ --p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ --b $(UPLOAD_RATE) + -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ + -b $(UPLOAD_RATE) # Program settings CC = $(AVR_TOOLS_PATH)avr-gcc @@ -128,22 +133,23 @@ ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) # Default target. -all: applet_files build sizeafter +all: build sizeafter build: elf hex -applet_files: $(TARGET).pde - # Here is the "preprocessing". - # It creates a .cpp file based with the same name as the .pde file. - # On top of the new .cpp file comes the WProgram.h header. - # At the end there is a generic main() function attached. - # Then the .cpp file will be compiled. Errors during compile will - # refer to this new, automatically generated, file. - # Not the original .pde file you actually edit... - test -d applet || mkdir applet - echo '#include "WProgram.h"' > applet/$(TARGET).cpp - cat $(TARGET).pde >> applet/$(TARGET).cpp - cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp +applet/$(TARGET).cpp: $(TARGET).pde $(MAKEFILE) +# Here is the "preprocessing". +# It creates a .cpp file based with the same name as the .pde file. +# On top of the new .cpp file comes the WProgram.h header. +# At the end there is a generic main() function attached. +# Then the .cpp file will be compiled. Errors during compile will +# refer to this new, automatically generated, file. +# Not the original .pde file you actually edit... + @echo " WR applet/$(TARGET).cpp" + @test -d applet || mkdir applet + @echo '#include "WProgram.h"' > applet/$(TARGET).cpp + @cat $(TARGET).pde >> applet/$(TARGET).cpp + @cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp elf: applet/$(TARGET).elf hex: applet/$(TARGET).hex @@ -165,15 +171,15 @@ sizebefore: @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi sizeafter: - @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(ELFSIZE); echo; fi # Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. COFFCONVERT=$(OBJCOPY) --debugging \ ---change-section-address .data-0x800000 \ ---change-section-address .bss-0x800000 \ ---change-section-address .noinit-0x800000 \ ---change-section-address .eeprom-0x810000 + --change-section-address .data-0x800000 \ + --change-section-address .bss-0x800000 \ + --change-section-address .noinit-0x800000 \ + --change-section-address .eeprom-0x810000 coff: applet/$(TARGET).elf @@ -185,13 +191,15 @@ extcoff: $(TARGET).elf .SUFFIXES: .elf .hex .eep .lss .sym +.PRECIOUS: .o .elf.hex: - $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ + @echo " COPY $@" + @$(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ .elf.eep: -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ - --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ + --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ # Create extended listing file from ELF output file. .elf.lss: @@ -202,39 +210,29 @@ extcoff: $(TARGET).elf $(NM) -n $< > $@ # Link: create ELF output file from library. -applet/$(TARGET).elf: $(TARGET).pde applet/core.a - $(CC) $(ALL_CFLAGS) -Wl,--gc-sections -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) +applet/$(TARGET).elf: applet/$(TARGET).cpp applet/core.a Configuration.h + @echo " CXX $@" + @$(CC) $(ALL_CXXFLAGS) -Wl,--gc-sections -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) -applet/core.a: $(OBJ) - @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done - - - -# Compile: create object files from C++ source files. -.cpp.o: - $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ - -# Compile: create object files from C source files. -.c.o: - $(CC) -c $(ALL_CFLAGS) $< -o $@ - - -# Compile: create assembler files from C source files. -.c.s: - $(CC) -S $(ALL_CFLAGS) $< -o $@ - - -# Assemble: create object files from assembler source files. -.S.o: - $(CC) -c $(ALL_ASFLAGS) $< -o $@ +applet/core.a: $(OBJ) Configuration.h + @for i in $(OBJ); do echo " AR $$i"; $(AR) rcs applet/core.a $$i; done +%.o: %.c Configuration.h $(MAKEFILE) + @echo " CC $@" + @$(CC) -c $(ALL_CFLAGS) $< -o $@ +%.o: %.cpp Configuration.h $(MAKEFILE) + @echo " CXX $@" + @$(CXX) -c $(ALL_CXXFLAGS) $< -o $@ # Target: clean project. clean: - $(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ - applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ - $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) + @echo " RM applet/*" + @$(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ + applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/$(TARGET).cpp applet/core.a \ + $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) + @echo " RMDIR applet/" + @rmdir applet depend: if grep '^# DO NOT DELETE' $(MAKEFILE) >/dev/null; \ From e45e5c68bb67ddec39b9bda25cf96396c12fe10b Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 5 Feb 2012 12:42:15 +0100 Subject: [PATCH 196/430] Added support for Gen3+ (Pins file only) Added late z enable. (blddk request) Only calculate look ahead if >2 moves in buffer. Removed some FORCE_INLINE to save memory. Signed-off-by: Erik van der Zalm --- Marlin/Configuration.h | 4 +- Marlin/Marlin.pde | 16 +++--- Marlin/pins.h | 125 ++++++++++++++++++++++++++++++++++++++++- Marlin/planner.cpp | 12 ++-- Marlin/stepper.cpp | 3 + Marlin/ultralcd.pde | 2 +- 6 files changed, 146 insertions(+), 16 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 85fd38968..6b5e19a3d 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -28,7 +28,8 @@ // Gen6 = 5, // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, -// Teensylu = 8 +// Teensylu = 8, +// Gen3+ =9 #define MOTHERBOARD 7 //=========================================================================== @@ -201,6 +202,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DISABLE_Y false #define DISABLE_Z false #define DISABLE_E false // For all extruders +//#define Z_LATE_ENABLE // Enable Z the last moment. Needed if your Z driver overheats. // Inverting axis direction //#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index bbef8170d..57eb61b8e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -327,7 +327,7 @@ void loop() } -FORCE_INLINE void get_command() +void get_command() { while( MSerial.available() > 0 && buflen < BUFSIZE) { serial_char = MSerial.read(); @@ -474,20 +474,20 @@ FORCE_INLINE void get_command() } -FORCE_INLINE float code_value() +float code_value() { return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); } -FORCE_INLINE long code_value_long() +long code_value_long() { return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); } -FORCE_INLINE bool code_seen(char code_string[]) //Return True if the string was found +bool code_seen(char code_string[]) //Return True if the string was found { return (strstr(cmdbuffer[bufindr], code_string) != NULL); } -FORCE_INLINE bool code_seen(char code) +bool code_seen(char code) { strchr_pointer = strchr(cmdbuffer[bufindr], code); return (strchr_pointer != NULL); //Return True if a character was found @@ -519,7 +519,7 @@ FORCE_INLINE bool code_seen(char code) endstops_hit_on_purpose();\ } -FORCE_INLINE void process_commands() +void process_commands() { unsigned long codenum; //throw away variable char *starpos = NULL; @@ -1235,7 +1235,7 @@ void ClearToSend() SERIAL_PROTOCOLLNPGM("ok"); } -FORCE_INLINE void get_coordinates() +void get_coordinates() { for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; @@ -1247,7 +1247,7 @@ FORCE_INLINE void get_coordinates() } } -FORCE_INLINE void get_arc_coordinates() +void get_arc_coordinates() { get_coordinates(); if(code_seen('I')) offset[0] = code_value(); diff --git a/Marlin/pins.h b/Marlin/pins.h index 28e349161..02f26150a 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -470,7 +470,7 @@ #define X_STEP_PIN 15 #define X_DIR_PIN 21 #define X_MIN_PIN 18 -#define X_MAX_PIN -2 +#define X_MAX_PIN -1 #define Y_STEP_PIN 22 #define Y_DIR_PIN 23 @@ -653,6 +653,73 @@ #endif +#if MOTHERBOARD == 71 +#define KNOWN_BOARD +/***************************************************************** +* Ultimaker pin assignment (Old electronics) +******************************************************************/ + +#ifndef __AVR_ATmega1280__ + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif +#endif + +#define X_STEP_PIN 25 +#define X_DIR_PIN 23 +#define X_MIN_PIN 15 +#define X_MAX_PIN 14 +#define X_ENABLE_PIN 27 + +#define Y_STEP_PIN 31 +#define Y_DIR_PIN 33 +#define Y_MIN_PIN 17 +#define Y_MAX_PIN 16 +#define Y_ENABLE_PIN 29 + +#define Z_STEP_PIN 37 +#define Z_DIR_PIN 39 +#define Z_MIN_PIN 19 +#define Z_MAX_PIN 18 +#define Z_ENABLE_PIN 35 + +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 + +#define HEATER_0_PIN 2 +#define TEMP_0_PIN 8 + +#define HEATER_1_PIN 1 +#define TEMP_1_PIN 1 + +#define HEATER_2_PIN -1 +#define TEMP_2_PIN -1 + +#define E0_STEP_PIN 43 +#define E0_DIR_PIN 45 +#define E0_ENABLE_PIN 41 + +#define E1_STEP_PIN -1 +#define E1_DIR_PIN -1 +#define E1_ENABLE_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 +#define LED_PIN -1 +#define FAN_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 +#define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing. + +#define LCD_PINS_RS 24 +#define LCD_PINS_ENABLE 22 +#define LCD_PINS_D4 36 +#define LCD_PINS_D5 34 +#define LCD_PINS_D6 32 +#define LCD_PINS_D7 30 + +#endif + /**************************************************************************************** * Teensylu 0.7 pin assingments (ATMEGA90USB) * Requires the Teensyduino software with Teensy2.0++ selected in arduino IDE! @@ -712,6 +779,62 @@ #endif #endif +/**************************************************************************************** +* Gen3+ pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 9 +#define MOTHERBOARD 6 +#define KNOWN_BOARD 1 +#ifndef __AVR_ATmega644P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_MIN_PIN 20 +#define X_MAX_PIN -1 + +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN -1 + +#define Z_STEP_PIN 27 +#define Z_DIR_PIN 28 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN -1 + +#define E_STEP_PIN 17 +#define E_DIR_PIN 21 + +#define LED_PIN -1 + +#define FAN_PIN -1 + +#define PS_ON_PIN 14 +#define KILL_PIN -1 + +#define HEATER_0_PIN 12 // (extruder) + +#define HEATER_1_PIN 16 // (bed) +#define X_ENABLE_PIN 19 +#define Y_ENABLE_PIN 24 +#define Z_ENABLE_PIN 29 +#define E_ENABLE_PIN 13 + +#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder) +#define TEMP_1_PIN 5 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) +#define TEMP_2_PIN -1 +#define SDPOWER -1 +#define SDSS 4 +#define HEATER_2_PIN -1 + +#endif + + + + #ifndef KNOWN_BOARD #error Unknown MOTHERBOARD value in configuration.h #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index f3007af53..cfa478cdd 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -430,7 +430,9 @@ void check_axes_activity() { } if((DISABLE_X) && (x_active == 0)) disable_x(); if((DISABLE_Y) && (y_active == 0)) disable_y(); - if((DISABLE_Z) && (z_active == 0)) disable_z(); + #ifndef Z_LATE_ENABLE + if((DISABLE_Z) && (z_active == 0)) disable_z(); + #endif if((DISABLE_E) && (e_active == 0)) { disable_e0();disable_e1();disable_e2(); } } @@ -505,7 +507,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa //enable active axes if(block->steps_x != 0) enable_x(); if(block->steps_y != 0) enable_y(); - if(block->steps_z != 0) enable_z(); +// if(block->steps_z != 0) enable_z(); // Enable all if(block->steps_e != 0) { enable_e0();enable_e1();enable_e2(); } @@ -535,10 +537,10 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa if(feed_rate 1) feed_rate = feed_rate*moves_queued / (BLOCK_BUFFER_SIZE * 0.5); #endif @@ -686,7 +688,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa vmax_junction = max_z_jerk/2; vmax_junction = min(vmax_junction, block->nominal_speed); - if ((block_buffer_head != block_buffer_tail) && (previous_nominal_speed > 0.0)) { + if ((moves_queued > 1) && (previous_nominal_speed > 0.0)) { float jerk = sqrt(pow((current_speed[X_AXIS]-previous_speed[X_AXIS]), 2)+pow((current_speed[Y_AXIS]-previous_speed[Y_AXIS]), 2)); if((previous_speed[X_AXIS] != 0.0) || (previous_speed[Y_AXIS] != 0.0)) { vmax_junction = block->nominal_speed; diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 076fbeea1..69d433545 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -274,6 +274,9 @@ FORCE_INLINE void trapezoid_generator_reset() { acceleration_time = calc_timer(acc_step_rate); OCR1A = acceleration_time; OCR1A_nominal = calc_timer(current_block->nominal_rate); + #ifdef Z_LATE_ENABLE + if(current_block->steps_z > 0) enable_z(); + #endif // SERIAL_ECHO_START; // SERIAL_ECHOPGM("advance :"); diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 69be85959..68a595475 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -59,7 +59,7 @@ void lcdProgMemprint(const char *str) //=============================functions ============================ //=========================================================================== -FORCE_INLINE int intround(const float &x){return int(0.5+x);} +int intround(const float &x){return int(0.5+x);} void lcd_status(const char* message) { From 9f139d6e0e3592c71851535f25fb83245361a5f3 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 5 Feb 2012 13:05:07 +0100 Subject: [PATCH 197/430] Added MAX6675 support. (Thanks to gregfrost) Needs some work to remove the blocking in read max6675. --- Marlin/Configuration.h | 2 + Marlin/pins.h | 9 +++-- Marlin/temperature.cpp | 92 +++++++++++++++++++++++++++++++++++++++++- 3 files changed, 97 insertions(+), 6 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 6b5e19a3d..49721cc19 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -55,6 +55,8 @@ #define HEATER_0_USES_AD595 //#define HEATER_1_USES_AD595 //#define HEATER_2_USES_AD595 +//#define HEATER_0_USES_MAX6675 + // Select one of these only to define how the bed temp is read. //#define THERMISTORBED 1 diff --git a/Marlin/pins.h b/Marlin/pins.h index 02f26150a..9ff7dd94a 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -331,16 +331,17 @@ // SPI for Max6675 Thermocouple #ifndef SDSUPPORT -// these pins are defined in the SD library if building with SD support #define SCK_PIN 52 - #define MISO_PIN 50 - #define MOSI_PIN 51 +// these pins are defined in the SD library if building with SD support + #define MAX_SCK_PIN 52 + #define MAX_MISO_PIN 50 + #define MAX_MOSI_PIN 51 #define MAX6675_SS 53 #else #define MAX6675_SS 49 #endif - #endif + /**************************************************************************************** * Duemilanove w/ ATMega328P pin assignment * diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 371c6e589..0be5f2607 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -283,6 +283,12 @@ int temp2analog(int celsius, uint8_t e) { SERIAL_ERRORLNPGM(" - Invalid extruder number!"); kill(); } + #ifdef HEATER_0_USES_MAX6675 + if (e == 0) + { + return celsius * 4; + } + #endif if(heater_ttbl_map[e] != 0) { int raw = 0; @@ -352,7 +358,14 @@ float analog2temp(int raw, uint8_t e) { SERIAL_ERROR((int)e); SERIAL_ERRORLNPGM(" - Invalid extruder number !"); kill(); - } + } + #ifdef HEATER_0_USES_MAX6675 + if (e == 0) + { + return 0.25 * raw; + } + #endif + if(heater_ttbl_map[e] != 0) { float celsius = 0; @@ -446,6 +459,22 @@ void tp_init() SET_OUTPUT(FAN_PIN); #endif + #ifdef HEATER_0_USES_MAX6675 + #ifndef SDSUPPORT + SET_OUTPUT(MAX_SCK_PIN); + WRITE(MAX_SCK_PIN,0); + + SET_OUTPUT(MAX_MOSI_PIN); + WRITE(MAX_MOSI_PIN,1); + + SET_INPUT(MAX_MISO_PIN); + WRITE(MAX_MISO_PIN,1); + #endif + + SET_OUTPUT(MAX6675_SS); + WRITE(MAX6675_SS,1); + #endif + // Set analog inputs ADCSRA = 1<> 3; + } + + return max6675_temp; +} +#endif + + // Timer 0 is shared with millies ISR(TIMER0_COMPB_vect) { @@ -653,6 +738,9 @@ ISR(TIMER0_COMPB_vect) #if (TEMP_0_PIN > -1) raw_temp_0_value += ADC; #endif + #ifdef HEATER_0_USES_MAX6675 // TODO remove the blocking + raw_temp_0_value = read_max6675(); + #endif temp_state = 2; break; case 2: // Prepare TEMP_BED @@ -732,7 +820,7 @@ ISR(TIMER0_COMPB_vect) #endif #if EXTRUDERS > 1 - #ifdef HEATER_1_USES_AD595 + #ifdef HEATER_1_USES_AD595 || defined HEATER_0_USES_MAX6675 current_raw[1] = raw_temp_1_value; #else current_raw[1] = 16383 - raw_temp_1_value; From abb7e639067677257d9409728f1370dcf24e5923 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 5 Feb 2012 21:14:55 +0100 Subject: [PATCH 198/430] fixed z-disable bug. --- Marlin/planner.cpp | 8 ++++---- Marlin/stepper.cpp | 3 ++- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index cfa478cdd..85c82aecc 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -430,9 +430,7 @@ void check_axes_activity() { } if((DISABLE_X) && (x_active == 0)) disable_x(); if((DISABLE_Y) && (y_active == 0)) disable_y(); - #ifndef Z_LATE_ENABLE - if((DISABLE_Z) && (z_active == 0)) disable_z(); - #endif + if((DISABLE_Z) && (z_active == 0)) disable_z(); if((DISABLE_E) && (e_active == 0)) { disable_e0();disable_e1();disable_e2(); } } @@ -507,7 +505,9 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa //enable active axes if(block->steps_x != 0) enable_x(); if(block->steps_y != 0) enable_y(); -// if(block->steps_z != 0) enable_z(); + #ifndef Z_LATE_ENABLE + if(block->steps_z != 0) enable_z(); + #endif // Enable all if(block->steps_e != 0) { enable_e0();enable_e1();enable_e2(); } diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 69d433545..a32dd8dff 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -274,7 +274,8 @@ FORCE_INLINE void trapezoid_generator_reset() { acceleration_time = calc_timer(acc_step_rate); OCR1A = acceleration_time; OCR1A_nominal = calc_timer(current_block->nominal_rate); - #ifdef Z_LATE_ENABLE + + #ifdef Z_LATE_ENABLE if(current_block->steps_z > 0) enable_z(); #endif From a11f3b2d2f33487b09ae50c4f878a2ccdec3d974 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 11:49:23 +0100 Subject: [PATCH 199/430] - Pins for modified GEN7 assigned - Added support for ATMega1284 --- Marlin/pins.h | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) diff --git a/Marlin/pins.h b/Marlin/pins.h index 28e349161..f4c71fdf8 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -523,6 +523,104 @@ #endif +/******************************************************************************* +********* +* Gen7 Alfons3 pin assignment +* +******************************************************************************** +********/ +/* These Pins are assigned for the modified GEN7 Board from Alfons3 Please review the pins and adjust it for your needs*/ + +#if MOTHERBOARD == 77 +#define KNOWN_BOARD + +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) + #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu. + +#endif + +//x axis pins + #define X_STEP_PIN 21 //different from stanard GEN7 + #define X_DIR_PIN 20 //different from stanard GEN7 + #define X_ENABLE_PIN 24 + #define X_MIN_PIN 0 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 1 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 26 + #define Z_DIR_PIN 25 + #define Z_ENABLE_PIN 24 + #define Z_MIN_PIN 2 + #define Z_MAX_PIN -1 + + //extruder pins + #define E0_STEP_PIN 28 + #define E0_DIR_PIN 27 + #define E0_ENABLE_PIN 24 + + #define TEMP_0_PIN 2 + #define TEMP_1_PIN -1 + #define TEMP_2_PIN -1 + #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) + + #define HEATER_0_PIN 4 + #define HEATER_1_PIN -1 + #define HEATER_2_PIN -1 + #define HEATER_BED_PIN 3 // (bed) + + + + + #define SDPOWER -1 + #define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support + #define LED_PIN -1 + + #define FAN_PIN -1 + #define PS_ON_PIN 19 + //our pin for debugging. + + #define DEBUG_PIN -1 + + //our RS485 pins + //#define TX_ENABLE_PIN 12 + //#define RX_ENABLE_PIN 13 + + #define BEEPER -1 + #define SDCARDDETECT -1 + #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work + + //Pins for 4bit LCD Support + #define LCD_PINS_RS 18 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 15 + #define LCD_PINS_D6 13 + #define LCD_PINS_D7 14 + + //buttons are directly attached + #define BTN_EN1 11 + #define BTN_EN2 10 + #define BTN_ENC 12 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + +#endif #if MOTHERBOARD == 7 #define KNOWN_BOARD From 59cc5f889e4439bbb1dbb1f5356c1562837652b2 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 11:55:56 +0100 Subject: [PATCH 200/430] - added support for ATMega1284P --- Marlin/fastio.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/fastio.h b/Marlin/fastio.h index 5188a0681..cc3393e96 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -424,7 +424,7 @@ pins #define PD7_PWM NULL #endif /* _AVR_ATmega{168,328,328P}__ */ -#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) +#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) || defined (__AVR_ATmega1284P__) // UART #define RXD DIO8 #define TXD DIO9 From 13e2ad2831caab3bfddf1e6eb0201938be4e2e21 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 11:58:52 +0100 Subject: [PATCH 201/430] - added info for using GEN7 configuration --- Marlin/Configuration.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 85fd38968..d532539ef 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -26,8 +26,9 @@ // MEGA/RAMPS up to 1.2 = 3, // RAMPS 1.3 = 33 // Gen6 = 5, -// Sanguinololu 1.2 and above = 62 +// Sanguinololu 1.2 and above = 62, // Ultimaker = 7, +// Gen7 = 77, // Teensylu = 8 #define MOTHERBOARD 7 From 5edef148fe8db2e5210c28b5c28997bf33e7c64e Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 12:10:32 +0100 Subject: [PATCH 202/430] -disalbe beeper if BEEPER_PIN = -1 --- Marlin/ultralcd.pde | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 69be85959..720567f2e 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -130,13 +130,16 @@ void beep() { //return; #ifdef ULTIPANEL - pinMode(BEEPER,OUTPUT); - for(int8_t i=0;i<20;i++){ - WRITE(BEEPER,HIGH); - delay(5); - WRITE(BEEPER,LOW); - delay(5); - } + if (BEEPER > -1) + { + pinMode(BEEPER,OUTPUT); + for(int8_t i=0;i<20;i++){ + WRITE(BEEPER,HIGH); + delay(5); + WRITE(BEEPER,LOW); + delay(5); + } + } #endif } @@ -144,13 +147,16 @@ void beepshort() { //return; #ifdef ULTIPANEL - pinMode(BEEPER,OUTPUT); - for(int8_t i=0;i<10;i++){ - WRITE(BEEPER,HIGH); - delay(3); - WRITE(BEEPER,LOW); - delay(3); - } + if (BEEPER > -1) + { + pinMode(BEEPER,OUTPUT); + for(int8_t i=0;i<10;i++){ + WRITE(BEEPER,HIGH); + delay(3); + WRITE(BEEPER,LOW); + delay(3); + } + } #endif } From 3183a14755dbcdac8a3a0a7f66737895a953ad41 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 12:12:18 +0100 Subject: [PATCH 203/430] -added Configuration for GEN7 which worked for me --- Marlin/Configuration.h.GEN7 | 397 ++++++++++++++++++++++++++++++++++++ 1 file changed, 397 insertions(+) create mode 100644 Marlin/Configuration.h.GEN7 diff --git a/Marlin/Configuration.h.GEN7 b/Marlin/Configuration.h.GEN7 new file mode 100644 index 000000000..4f7ab5a6b --- /dev/null +++ b/Marlin/Configuration.h.GEN7 @@ -0,0 +1,397 @@ +#ifndef __CONFIGURATION_H +#define __CONFIGURATION_H + + + +// This determines the communication speed of the printer +//#define BAUDRATE 250000 +#define BAUDRATE 115200 +//#define BAUDRATE 230400 + +#define EXTRUDERS 1 + +// Frequency limit +// See nophead's blog for more info +// Not working O +//#define XY_FREQUENCY_LIMIT 15 + +// Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end +// of the buffer and all stops. This should not be much greater than zero and should only be changed +// if unwanted behavior is observed on a user's machine when running at very slow speeds. +#define MINIMUM_PLANNER_SPEED 2.0 // (mm/sec) + +// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration + +//// The following define selects which electronics board you have. Please choose the one that matches your setup +// MEGA/RAMPS up to 1.2 = 3, +// RAMPS 1.3 = 33 +// Gen6 = 5, +// Sanguinololu 1.2 and above = 62 +// Gen7 = 77, +// Ultimaker = 7, +// Teensylu = 8 +#define MOTHERBOARD 77 + +//=========================================================================== +//=============================Thermal Settings ============================ +//=========================================================================== + +//// Thermistor settings: +// 1 is 100k thermistor +// 2 is 200k thermistor +// 3 is mendel-parts thermistor +// 4 is 10k thermistor +// 5 is ParCan supplied 104GT-2 100K +// 6 is EPCOS 100k +// 7 is 100k Honeywell thermistor 135-104LAG-J01 + +#define THERMISTORHEATER_0 1 +//#define THERMISTORHEATER_1 1 +//#define THERMISTORHEATER_2 1 + +#define HEATER_0_USES_THERMISTOR +//#define HEATER_1_USES_THERMISTOR +//#define HEATER_2_USES_THERMISTOR +//#define HEATER_0_USES_AD595 +//#define HEATER_1_USES_AD595 +//#define HEATER_2_USES_AD595 + +// Select one of these only to define how the bed temp is read. +#define THERMISTORBED 1 +#define BED_USES_THERMISTOR +//#define BED_LIMIT_SWITCHING +#ifdef BED_LIMIT_SWITCHING +#define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS +#endif +//#define BED_USES_AD595 + +#define BED_CHECK_INTERVAL 5000 //ms + +//// Heating sanity check: +// This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. +// It can be reset with another M104/M109 +//#define WATCHPERIOD 20000 //20 seconds + +// Actual temperature must be close to target for this long before M109 returns success +#define TEMP_RESIDENCY_TIME 30 // (seconds) +#define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one + +//// The minimal temperature defines the temperature below which the heater will not be enabled +//#define HEATER_0_MINTEMP 5 +//#define HEATER_1_MINTEMP 5 +//#define HEATER_2_MINTEMP 5 +//#define BED_MINTEMP 5 + + +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define HEATER_0_MAXTEMP 275 +//#define HEATER_1_MAXTEMP 275 +//#define HEATER_2_MAXTEMP 275 +//#define BED_MAXTEMP 150 + + +// Wait for Cooldown +// This defines if the M109 call should not block if it is cooling down. +// example: From a current temp of 220, you set M109 S200. +// if CooldownNoWait is defined M109 will not wait for the cooldown to finish +#define CooldownNoWait true + +// Heating is finished if a temperature close to this degree shift is reached +#define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree + +// PID settings: +// Uncomment the following line to enable PID support. +#define PIDTEMP +#define PID_MAX 255 // limits current to nozzle; 255=full current +#ifdef PIDTEMP +//#define PID_DEBUG // Sends debug data to the serial port. +//#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % +#define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term +#define K1 0.95 //smoothing factor withing the PID +#define PID_dT 0.128 //sampling period of the PID + +//To develop some PID settings for your machine, you can initiall follow +// the Ziegler-Nichols method. +// set Ki and Kd to zero. +// heat with a defined Kp and see if the temperature stabilizes +// ideally you do this graphically with repg. +// the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde +// PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain +// usually further manual tunine is necessary. + +#define PID_CRITIAL_GAIN 50 +#define PID_SWING_AT_CRITIAL 47 //seconds + +//#define PID_PI //no differentail term +#define PID_PID //normal PID + +#ifdef PID_PID +//PID according to Ziegler-Nichols method +// #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) +// #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) +// #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) + +// Ultitmaker +#define DEFAULT_Kp 22.2 +#define DEFAULT_Ki (1.25*PID_dT) +#define DEFAULT_Kd (99/PID_dT) + +// Makergear +// #define DEFAULT_Kp 7.0 +// #define DEFAULT_Ki 0.1 +// #define DEFAULT_Kd 12 + +// Mendel Parts V9 on 12V +// #define DEFAULT_Kp 63.0 +// #define DEFAULT_Ki (2.25*PID_dT) +// #define DEFAULT_Kd (440/PID_dT) +#endif + +#ifdef PID_PI +//PI according to Ziegler-Nichols method +#define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) +#define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) +#define DEFAULT_Kd (0) +#endif + +// this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. +// if Kc is choosen well, the additional required power due to increased melting should be compensated. +#define PID_ADD_EXTRUSION_RATE +#ifdef PID_ADD_EXTRUSION_RATE +#define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) +#endif +#endif // PIDTEMP + +// extruder run-out prevention. +//if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded +//#define EXTRUDER_RUNOUT_PREVENT +#define EXTRUDER_RUNOUT_MINTEMP 190 +#define EXTRUDER_RUNOUT_SECONDS 30. +#define EXTRUDER_RUNOUT_ESTEPS 14. //mm filament +#define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed +#define EXTRUDER_RUNOUT_EXTRUDE 100 + + +//=========================================================================== +//=============================Mechanical Settings=========================== +//=========================================================================== + + +// Endstop Settings +#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors + +// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. +const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false + +#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing + +// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 +#define X_ENABLE_ON 0 +#define Y_ENABLE_ON 0 +#define Z_ENABLE_ON 0 +#define E_ENABLE_ON 0 // For all extruders + +// Disables axis when it's not being used. +#define DISABLE_X false +#define DISABLE_Y false +#define DISABLE_Z false +#define DISABLE_E false // For all extruders + +// Inverting axis direction +//#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true +//#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false +//#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true +//#define INVERT_E*_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false, used for all extruders + +#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true +#define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false + +//// ENDSTOP SETTINGS: +// Sets direction of endstops when homing; 1=MAX, -1=MIN +#define X_HOME_DIR -1 +#define Y_HOME_DIR -1 +#define Z_HOME_DIR -1 + +#define min_software_endstops true //If true, axis won't move to coordinates less than zero. +#define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. +#define X_MAX_LENGTH 205 +#define Y_MAX_LENGTH 205 +#define Z_MAX_LENGTH 200 + +//// MOVEMENT SETTINGS +#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E +#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) + +//homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: +#define X_HOME_RETRACT_MM 5 +#define Y_HOME_RETRACT_MM 5 +#define Z_HOME_RETRACT_MM 1 +#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially. + +#define AXIS_RELATIVE_MODES {false, false, false, false} + +#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) + +// default settings + +#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker +//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 360} //sells mendel with v9 extruder +//#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder +#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) +#define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. + +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts + +#define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate +#define DEFAULT_MINTRAVELFEEDRATE 0.0 + +// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while +//printing high speed & high detail. It will slowdown on the detailed stuff. +#define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this +#define DEFAULT_XYJERK 20.0 // (mm/sec) +#define DEFAULT_ZJERK 0.4 // (mm/sec) + +// If defined the movements slow down when the look ahead buffer is only half full +#define SLOWDOWN + +//default stepper release if idle +#define DEFAULT_STEPPER_DEACTIVE_TIME 60 +#define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered + + +//=========================================================================== +//=============================Additional Features=========================== +//=========================================================================== + +// EEPROM +// the microcontroller can store settings in the EEPROM, e.g. max velocity... +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +//define this to enable eeprom support +#define EEPROM_SETTINGS +//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out: +// please keep turned on if you can. +#define EEPROM_CHITCHAT + + +// The hardware watchdog should halt the Microcontroller, in case the firmware gets stuck somewhere. However: +// the Watchdog is not working well, so please only enable this for testing +// this enables the watchdog interrupt. +//#define USE_WATCHDOG +//#ifdef USE_WATCHDOG +// you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +//#define RESET_MANUAL +//#define WATCHDOG_TIMEOUT 4 //seconds +//#endif + +// extruder advance constant (s2/mm3) +// +// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 +// +// hooke's law says: force = k * distance +// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant +// so: v ^ 2 is proportional to number of steps we advance the extruder +//#define ADVANCE + +#ifdef ADVANCE +#define EXTRUDER_ADVANCE_K .0 + +#define D_FILAMENT 2.85 +#define STEPS_MM_E 836 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) + +#endif // ADVANCE + + +//LCD and SD support +//#define ULTRA_LCD //general lcd support, also 16x2 +//#define SDSUPPORT // Enable SD Card Support in Hardware Console +#define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? +#define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. + +#define ULTIPANEL +#ifdef ULTIPANEL +#define NEWPANEL //enable this if you have a click-encoder panel +#define SDSUPPORT +#define ULTRA_LCD +#define LCD_WIDTH 20 +#define LCD_HEIGHT 4 +#else //no panel but just lcd +#ifdef ULTRA_LCD +#define LCD_WIDTH 16 +#define LCD_HEIGHT 2 +#endif +#endif + +// A debugging feature to compare calculated vs performed steps, to see if steps are lost by the software. +//#define DEBUG_STEPS + + +// Arc interpretation settings: +#define MM_PER_ARC_SEGMENT 1 +#define N_ARC_CORRECTION 25 + + +//automatic temperature: The hot end target temperature is calculated by all the buffered lines of gcode. +//The maximum buffered steps/sec of the extruder motor are called "se". +//You enter the autotemp mode by a M109 S T F +// the target temperature is set to mintemp+factor*se[steps/sec] and limited by mintemp and maxtemp +// you exit the value by any M109 without F* +// Also, if the temperature is set to a value Date: Mon, 6 Feb 2012 12:22:44 +0100 Subject: [PATCH 204/430] -disabled CARDDETECT if PIN is set to -1 - redo disable Beeper if PIN is set to -1 --- Marlin/ultralcd.h | 6 +++++- Marlin/ultralcd.pde | 12 +++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 08ac950d3..f89f34613 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -27,7 +27,11 @@ #define CLICKED (buttons&EN_C) #define BLOCK {blocking=millis()+blocktime;} - #define CARDINSERTED (READ(SDCARDDETECT)==0) + #if (SDCARDDETECT > -1) + { + #define CARDINSERTED (READ(SDCARDDETECT)==0) + } + #endif #else diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 720567f2e..1c23383ed 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -130,7 +130,7 @@ void beep() { //return; #ifdef ULTIPANEL - if (BEEPER > -1) + #if (BEEPER > -1) { pinMode(BEEPER,OUTPUT); for(int8_t i=0;i<20;i++){ @@ -140,6 +140,7 @@ void beep() delay(5); } } + #endif #endif } @@ -147,7 +148,7 @@ void beepshort() { //return; #ifdef ULTIPANEL - if (BEEPER > -1) + #if (BEEPER > -1) { pinMode(BEEPER,OUTPUT); for(int8_t i=0;i<10;i++){ @@ -157,6 +158,7 @@ void beepshort() delay(3); } } + #endif #endif } @@ -203,7 +205,11 @@ void buttons_init() WRITE(BTN_EN1,HIGH); WRITE(BTN_EN2,HIGH); WRITE(BTN_ENC,HIGH); - WRITE(SDCARDDETECT,HIGH); + #if (SDCARDDETECT > -1) + { + WRITE(SDCARDDETECT,HIGH); + } + #endif #else pinMode(SHIFT_CLK,OUTPUT); pinMode(SHIFT_LD,OUTPUT); From 14702089eec41982ae6dab3e7736716d3d98ffe9 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 12:28:33 +0100 Subject: [PATCH 205/430] -disable TEMP Min MAX Kill while using PS_ON Pin ON GEN7 there is no temperature reading when power is off.. so Marlin would kill itself. There seems to be an update from "Traumflug" on GEN7 using standby VCC for thermistors. --- Marlin/temperature.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 371c6e589..0372a9b07 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -763,13 +763,21 @@ ISR(TIMER0_COMPB_vect) for(unsigned char e = 0; e < EXTRUDERS; e++) { if(current_raw[e] >= maxttemp[e]) { target_raw[e] = 0; - max_temp_error(e); - kill();; + #if (PS_ON != -1) + { + max_temp_error(e); + kill();; + } + #endif } if(current_raw[e] <= minttemp[e]) { target_raw[e] = 0; - min_temp_error(e); - kill(); + #if (PS_ON != -1) + { + min_temp_error(e); + kill(); + } + #endif } } From 25cd8af536e22dd6532163d4e2e9dce70cf43a5c Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 6 Feb 2012 14:11:25 +0100 Subject: [PATCH 206/430] added arduino ide GEN7 support Files --- Marlin/Gen7/boards.txt | 101 ++++ .../Gen7/bootloader-1284P-16MHz.hex | 113 ++++ .../bootloaders/Gen7/bootloader-644-16MHz.hex | 75 +++ .../bootloaders/Gen7/bootloader-644-20MHz.hex | 75 +++ .../Gen7/bootloader-644P-16MHz.hex | 75 +++ .../Gen7/bootloader-644P-20MHz.hex | 75 +++ Marlin/Gen7/cores/arduino/HardwareSerial.cpp | 239 ++++++++ Marlin/Gen7/cores/arduino/HardwareSerial.h | 69 +++ Marlin/Gen7/cores/arduino/Makefile | 243 +++++++++ Marlin/Gen7/cores/arduino/Print.cpp | 203 +++++++ Marlin/Gen7/cores/arduino/Print.h | 59 ++ Marlin/Gen7/cores/arduino/Tone.cpp | 515 ++++++++++++++++++ Marlin/Gen7/cores/arduino/WCharacter.h | 168 ++++++ Marlin/Gen7/cores/arduino/WConstants.h | 1 + Marlin/Gen7/cores/arduino/WInterrupts.c | 87 +++ Marlin/Gen7/cores/arduino/WMath.cpp | 60 ++ Marlin/Gen7/cores/arduino/WProgram.h | 34 ++ Marlin/Gen7/cores/arduino/WString.cpp | 443 +++++++++++++++ Marlin/Gen7/cores/arduino/WString.h | 112 ++++ Marlin/Gen7/cores/arduino/binary.h | 515 ++++++++++++++++++ Marlin/Gen7/cores/arduino/main.cpp | 14 + Marlin/Gen7/cores/arduino/main.cxx | 12 + Marlin/Gen7/cores/arduino/pins_arduino.c | 200 +++++++ Marlin/Gen7/cores/arduino/pins_arduino.h | 65 +++ Marlin/Gen7/cores/arduino/wiring.c | 203 +++++++ Marlin/Gen7/cores/arduino/wiring.h | 133 +++++ Marlin/Gen7/cores/arduino/wiring_analog.c | 116 ++++ Marlin/Gen7/cores/arduino/wiring_digital.c | 95 ++++ Marlin/Gen7/cores/arduino/wiring_private.h | 60 ++ Marlin/Gen7/cores/arduino/wiring_pulse.c | 66 +++ Marlin/Gen7/cores/arduino/wiring_serial.c | 138 +++++ Marlin/Gen7/cores/arduino/wiring_shift.c | 40 ++ 32 files changed, 4404 insertions(+) create mode 100644 Marlin/Gen7/boards.txt create mode 100644 Marlin/Gen7/bootloaders/Gen7/bootloader-1284P-16MHz.hex create mode 100644 Marlin/Gen7/bootloaders/Gen7/bootloader-644-16MHz.hex create mode 100644 Marlin/Gen7/bootloaders/Gen7/bootloader-644-20MHz.hex create mode 100644 Marlin/Gen7/bootloaders/Gen7/bootloader-644P-16MHz.hex create mode 100644 Marlin/Gen7/bootloaders/Gen7/bootloader-644P-20MHz.hex create mode 100644 Marlin/Gen7/cores/arduino/HardwareSerial.cpp create mode 100644 Marlin/Gen7/cores/arduino/HardwareSerial.h create mode 100644 Marlin/Gen7/cores/arduino/Makefile create mode 100644 Marlin/Gen7/cores/arduino/Print.cpp create mode 100644 Marlin/Gen7/cores/arduino/Print.h create mode 100644 Marlin/Gen7/cores/arduino/Tone.cpp create mode 100644 Marlin/Gen7/cores/arduino/WCharacter.h create mode 100644 Marlin/Gen7/cores/arduino/WConstants.h create mode 100644 Marlin/Gen7/cores/arduino/WInterrupts.c create mode 100644 Marlin/Gen7/cores/arduino/WMath.cpp create mode 100644 Marlin/Gen7/cores/arduino/WProgram.h create mode 100644 Marlin/Gen7/cores/arduino/WString.cpp create mode 100644 Marlin/Gen7/cores/arduino/WString.h create mode 100644 Marlin/Gen7/cores/arduino/binary.h create mode 100644 Marlin/Gen7/cores/arduino/main.cpp create mode 100644 Marlin/Gen7/cores/arduino/main.cxx create mode 100644 Marlin/Gen7/cores/arduino/pins_arduino.c create mode 100644 Marlin/Gen7/cores/arduino/pins_arduino.h create mode 100644 Marlin/Gen7/cores/arduino/wiring.c create mode 100644 Marlin/Gen7/cores/arduino/wiring.h create mode 100644 Marlin/Gen7/cores/arduino/wiring_analog.c create mode 100644 Marlin/Gen7/cores/arduino/wiring_digital.c create mode 100644 Marlin/Gen7/cores/arduino/wiring_private.h create mode 100644 Marlin/Gen7/cores/arduino/wiring_pulse.c create mode 100644 Marlin/Gen7/cores/arduino/wiring_serial.c create mode 100644 Marlin/Gen7/cores/arduino/wiring_shift.c diff --git a/Marlin/Gen7/boards.txt b/Marlin/Gen7/boards.txt new file mode 100644 index 000000000..f8c826a09 --- /dev/null +++ b/Marlin/Gen7/boards.txt @@ -0,0 +1,101 @@ +############################################################## + +Gen7-644-16.name=Gen7 with ATmega644 and 16 MHz +Gen7-644-16.upload.protocol=stk500v2 +Gen7-644-16.upload.maximum_size=63488 +Gen7-644-16.upload.speed=115200 +Gen7-644-16.bootloader.low_fuses=0xF7 +Gen7-644-16.bootloader.high_fuses=0xDC +Gen7-644-16.bootloader.extended_fuses=0xFC +Gen7-644-16.bootloader.path=Gen7 +Gen7-644-16.bootloader.file=bootloader-644-16MHz.hex +Gen7-644-16.bootloader.unlock_bits=0x3F +Gen7-644-16.bootloader.lock_bits=0x0F +Gen7-644-16.build.mcu=atmega644 +Gen7-644-16.build.f_cpu=16000000L +Gen7-644-16.build.core=arduino + +############################################################## + +Gen7-644-20.name=Gen7 with ATmega644 and 20 MHz +Gen7-644-20.upload.protocol=stk500v2 +Gen7-644-20.upload.maximum_size=63488 +Gen7-644-20.upload.speed=115200 +Gen7-644-20.bootloader.low_fuses=0xF7 +Gen7-644-20.bootloader.high_fuses=0xDC +Gen7-644-20.bootloader.extended_fuses=0xFC +Gen7-644-20.bootloader.path=Gen7 +Gen7-644-20.bootloader.file=bootloader-644-20MHz.hex +Gen7-644-20.bootloader.unlock_bits=0x3F +Gen7-644-20.bootloader.lock_bits=0x0F +Gen7-644-20.build.mcu=atmega644 +Gen7-644-20.build.f_cpu=20000000L +Gen7-644-20.build.core=arduino + +############################################################## + +Gen7-644P-16.name=Gen7 with ATmega644P and 16 MHz +Gen7-644P-16.upload.protocol=stk500v2 +Gen7-644P-16.upload.maximum_size=63488 +Gen7-644P-16.upload.speed=115200 +Gen7-644P-16.bootloader.low_fuses=0xF7 +Gen7-644P-16.bootloader.high_fuses=0xDC +Gen7-644P-16.bootloader.extended_fuses=0xFC +Gen7-644P-16.bootloader.path=Gen7 +Gen7-644P-16.bootloader.file=bootloader-644P-16MHz.hex +Gen7-644P-16.bootloader.unlock_bits=0x3F +Gen7-644P-16.bootloader.lock_bits=0x0F +Gen7-644P-16.build.mcu=atmega644p +Gen7-644P-16.build.f_cpu=16000000L +Gen7-644P-16.build.core=arduino + +############################################################## + +Gen7-644P-20.name=Gen7 with ATmega644P and 20 MHz +Gen7-644P-20.upload.protocol=stk500v2 +Gen7-644P-20.upload.maximum_size=63488 +Gen7-644P-20.upload.speed=115200 +Gen7-644P-20.bootloader.low_fuses=0xF7 +Gen7-644P-20.bootloader.high_fuses=0xDC +Gen7-644P-20.bootloader.extended_fuses=0xFC +Gen7-644P-20.bootloader.path=Gen7 +Gen7-644P-20.bootloader.file=bootloader-644P-20MHz.hex +Gen7-644P-20.bootloader.unlock_bits=0x3F +Gen7-644P-20.bootloader.lock_bits=0x0F +Gen7-644P-20.build.mcu=atmega644p +Gen7-644P-20.build.f_cpu=20000000L +Gen7-644P-20.build.core=arduino + +############################################################## + +Gen7-1284p-16.name=Gen7 with ATmega1284 and 16 MHz +Gen7-1284p-16.upload.protocol=stk500v2 +Gen7-1284p-16.upload.maximum_size=129024 +Gen7-1284p-16.upload.speed=115200 +Gen7-1284p-16.bootloader.low_fuses=0xF7 +Gen7-1284p-16.bootloader.high_fuses=0xD4 +Gen7-1284p-16.bootloader.extended_fuses=0x05 +Gen7-1284p-16.bootloader.path=Gen7 +Gen7-1284p-16.bootloader.file=bootloader-1284P-16MHz.hex +Gen7-1284p-16.bootloader.unlock_bits=0x3F +Gen7-1284p-16.bootloader.lock_bits=0x2F +Gen7-1284p-16.build.mcu=atmega1284p +Gen7-1284p-16.build.f_cpu=16000000L +Gen7-1284p-16.build.core=arduino + +############################################################## + +Gen7-1284p-20.name=Gen7 with ATmega1284 and 20 MHz +Gen7-1284p-20.upload.protocol=stk500v2 +Gen7-1284p-20.upload.maximum_size=129024 +Gen7-1284p-20.upload.speed=115200 +Gen7-1284p-20.bootloader.low_fuses=0xF7 +Gen7-1284p-20.bootloader.high_fuses=0xD4 +Gen7-1284p-20.bootloader.extended_fuses=0x05 +Gen7-1284p-20.bootloader.path=Gen7 +Gen7-1284p-20.bootloader.file=bootloader-1284P-16MHz.hex +Gen7-1284p-20.bootloader.unlock_bits=0x3F +Gen7-1284p-20.bootloader.lock_bits=0x2F +Gen7-1284p-20.build.mcu=atmega1284p +Gen7-1284p-20.build.f_cpu=20000000L +Gen7-1284p-20.build.core=arduino diff --git a/Marlin/Gen7/bootloaders/Gen7/bootloader-1284P-16MHz.hex b/Marlin/Gen7/bootloaders/Gen7/bootloader-1284P-16MHz.hex new file mode 100644 index 000000000..93df372ca --- /dev/null +++ b/Marlin/Gen7/bootloaders/Gen7/bootloader-1284P-16MHz.hex @@ -0,0 +1,113 @@ +:020000021000EC +:10F8000011241FBE8FEF90E49EBF8DBF01C32F92C6 +:10F810003F924F925F926F927F928F929F92AF92A0 +:10F82000BF92CF92DF92EF92FF920F931F93DF93DD +:10F83000CF93CDB7DEB7C252D1400FB6F894DEBF3A +:10F840000FBECDBF44245524DD24C25EDE4F188296 +:10F85000CE51D1408824992454013AC20E9428FFF5 +:10F86000282F133059F1143028F4113081F0123060 +:10F8700000F507C0153081F1153030F1163071F701 +:10F880003DC08B3159F711E05BE1D52EE7CF8130D8 +:10F8900041F0C25EDE4F3881CE51D140831709F06E +:10F8A00019C2D226C25EDE4F2883CE51D14012E06B +:10F8B000D5CFF82EEE24D82613E0D0CF90E0E82A5A +:10F8C000F92AD22614E0CACF8E3009F003C2D82616 +:10F8D00015E044245524C2CFE1E0F0E0EC0FFD1F19 +:10F8E000E40DF51D80830894411C511CD8264E144C +:10F8F0005F0409F0B3CF720116E0B0CF8D1509F0A7 +:10F90000E9C1EAC1CC2447C08D81803311F090E079 +:10F910000AC08F81882311F49EE105C0813011F067 +:10F9200095E001C097E91A821B828D818C838E81BC +:10F930008D839E831F8247E0E42EF12C88C11A82BA +:10F9400068E06B8383E58C8394E59D83EBE4EE8331 +:10F9500085E38F8380E3888789878FE58A8782E3C1 +:10F960008B873BE0E32EF12C72C18A81813941F013 +:10F97000823941F0803911F48FE005C080E003C086 +:10F9800082E001C08AE01A828B8323E0E22EF12C10 +:10F990005EC1CC24C3941A8292E0E92EF12C58C1A6 +:10F9A0008D81882311F48EE128C0813011F085E02B +:10F9B00024C087E922C01A8229E0E1E0F0E0209328 +:10F9C000570084911BC08B81803589F48C818830ED +:10F9D00039F439E0E2E0F0E03093570084910DC053 +:10F9E00069E0E0E0F0E060935700849106C099E0A0 +:10F9F000E3E0F0E09093570084911A828B831C829D +:10FA000084E0E82EF12C23C18A8190E0A0E0B0E0F0 +:10FA1000B82EAA24992488248B8190E0A0E0B0E03D +:10FA2000DC0199278827882A992AAA2ABB2A8D814E +:10FA300090E0A0E0B0E0882A992AAA2ABB2A8C810B +:10FA400090E0A0E0B0E0BA2FA92F982F8827882A4D +:10FA5000992AAA2ABB2A88C0EA81C05EDE4FE883C1 +:10FA6000C052D140C15EDE4F1882CF51D1408B8150 +:10FA7000A82FB0E0C15EDE4F28813981CF51D1403F +:10FA8000A22BB32B933109F042C075016401CC0C59 +:10FA9000DD1CEE1CFF1C33E0F601E0925B003093AE +:10FAA0005700E89507B600FCFDCF8E01055F1F4F9C +:10FAB000F801808161810E5F1F4FA5019401220F23 +:10FAC000331F441F551F362E222490E0822993298C +:10FAD00061E00C01F90140935B0060935700E895E9 +:10FAE00011240894811C911CA11CB11C129701F7D0 +:10FAF00085E0F601E0925B0080935700E89507B639 +:10FB000000FCFDCF81E180935700E8952DC0FE01F8 +:10FB10003B9620E030E040E050E011977D0100E0AE +:10FB200010E00894E11CF11C011D111D6081F99980 +:10FB3000FECF1FBAC901880D991D92BD81BD60BD60 +:10FB40000FB6F894FA9AF99A0FBE2F5F3F4F4F4FB6 +:10FB50005F4F2E153F054007510711F03196E6CF54 +:10FB6000820E931EA41EB51E1A826EC09A81CE5DAF +:10FB7000DE4F9883C252D140CF5DDE4F1882C15212 +:10FB8000D1408B81C82EDD24CF5DDE4FE881F98125 +:10FB9000C152D140CE2ADF2A1A8289818431E1F410 +:10FBA0009601BE016D5F7F4FD501C401880F991F7B +:10FBB000AA1FBB1FABBFFC0187919691FB018083FD +:10FBC00091836E5F7F4F0894811C911CA11CB11C16 +:10FBD0002250304049F72EC0BE016D5F7F4F20E0BC +:10FBE00030E040E050E00894C108D108760100E020 +:10FBF00010E00894C11CD11C0894E11CF11C011DEB +:10FC0000111DF999FECFC901880D991D92BD81BDC5 +:10FC1000F89A80B5FB018193BF012F5F3F4F4F4F93 +:10FC20005F4F2E153F054007510759F7820E931E6F +:10FC3000A41EB51E23E0E22EF12CEC0CFD1CFB01F2 +:10FC4000108205C080EC8A8392E0E92EF12CCC244E +:10FC50008BE10E94C7FEC25EDE4F8881CE51D1404B +:10FC60000E94C7FE8F2D0E94C7FE8E2D0E94C7FEE8 +:10FC70008EE00E94C7FE85E1D82EC25EDE4FF8817D +:10FC8000CE51D140DF26DE24DF243E010894611CE2 +:10FC9000711C0AC0F30111913F01812F0E94C7FE20 +:10FCA000D1260894E108F108E114F10499F78D2DAB +:10FCB0000E94C7FECC2009F044C0C25EDE4FF8812E +:10FCC000CE51D140FF5FC25EDE4FF883CE51D140AE +:10FCD000EE24FF2410E0C2CD9981933109F4BCCE0B +:10FCE0009431B0F4933009F440CE943038F491302C +:10FCF00009F425CE923009F0A5CF04CE903109F455 +:10FD000001CE913109F445CE963009F09BCF7CCEDF +:10FD1000983109F458CE993150F4953109F49CCEBC +:10FD2000953108F423CF963109F08CCF1FCF9B314A +:10FD300009F436CE9D3109F4E7CD9A3109F082CF2E +:10FD40003ACECE5DDE4F0FB6F894DEBF0FBECDBF0C +:10FD5000CF91DF911F910F91FF90EF90DF90CF90A7 +:10FD6000BF90AF909F908F907F906F905F904F90DB +:10FD70003F902F9008958091C00087FFFCCF089599 +:10FD80008091C00087FFFCCF8091C6000895982F16 +:10FD90008091C00085FFFCCF9093C60008959B0121 +:10FDA000AC0197FF11C08091C00082608093C000B9 +:10FDB00050954095309521953F4F4F4F5F4F60E0F4 +:10FDC00074E284EF90E009C08091C0008D7F809341 +:10FDD000C00060E072E18AE790E00E9447FF2C5F7C +:10FDE0003F4F4F4F5F4F83E0569547953795279587 +:10FDF0008A95D1F7215030403093C5002093C4003C +:10FE0000089518B817B81F921F921F920895FFCF38 +:10FE100084B714BE90E083709070892B39F418B8C1 +:10FE200017B81F921F921F920895FFCF88E1809309 +:10FE3000C10060E07EE38EEF9FEF0E94CFFE0E9444 +:10FE400007FC18B817B81F921F921F920895FFCF92 +:10FE500020E030E040E050E013C02F5F3F4F4F4FB5 +:10FE60005F4F21308AE6380788E1480780E058076D +:10FE700039F418B817B81F921F921F920895FFCF38 +:10FE80008091C00087FFE9CF0E94C0FE0895A1E2E3 +:10FE90001A2EAA1BBB1BFD010DC0AA1FBB1FEE1F04 +:10FEA000FF1FA217B307E407F50720F0A21BB30B4F +:10FEB000E40BF50B661F771F881F991F1A9469F7CB +:10FEC00060957095809590959B01AC01BD01CF0127 +:02FED000089593 +:040000031000F800F1 +:00000001FF diff --git a/Marlin/Gen7/bootloaders/Gen7/bootloader-644-16MHz.hex b/Marlin/Gen7/bootloaders/Gen7/bootloader-644-16MHz.hex new file mode 100644 index 000000000..58098693d --- /dev/null +++ b/Marlin/Gen7/bootloaders/Gen7/bootloader-644-16MHz.hex @@ -0,0 +1,75 @@ +:10F800008FEF90E19EBF8DBF11241FBE5A9A00C09A +:10F81000CDB7DEB7CD51D140DEBFCDBF1092C50010 +:10F8200088E08093C40088E18093C100EE24FF2427 +:10F8300020E0552400E010E039E0432E9BE0292E23 +:10F84000312C2C0E3D1ECFC14150504060407040C5 +:10F8500011F43FE206C08091C00087FFF5CF3091E0 +:10F86000C600933021F1943028F4913099F0923011 +:10F87000C8F407C0953049F1953000F19630D1F5C4 +:10F8800035C03B3119F491E02BE134C03F3291F5A2 +:10F890003983BBC1313011F0351559F52327532E6B +:10F8A00092E028C0B32FA0E0232793E023C0832F4A +:10F8B00090E0A82BB92B232794E01CC03E30C9F45C +:10F8C000232795E0EE24FF2415C0E1E0F0E0EC0FE3 +:10F8D000FD1FEE0DFF1D30830894E11CF11C232752 +:10F8E000EA16FB0639F4D70196E004C0321709F492 +:10F8F0008CC190E044E755E962E470E0ACCF90E061 +:10F9000044C08D81803311F090E00AC08F8188233C +:10F9100011F49EE105C0813011F099E001C096E933 +:10F920001A821B828D818C838E818D839E831F82A0 +:10F9300047E050E0F4C01A8288E08B8381E48C8336 +:10F9400086E58D8382E58E8389E48F8383E58887CE +:10F9500080E589878FE58A8782E38B874BE050E0DB +:10F96000DEC08A81813941F0823941F0803911F459 +:10F970008FE005C080E003C082E001C08AE01A8207 +:10F980008B8343E050E0CBC091E01A8242E050E02C +:10F99000C7C08D81882311F48EE124C0813011F01D +:10F9A00089E020C086E91EC01A82E1E0F0E04092C2 +:10F9B0005700849118C08B81803579F48C81883010 +:10F9C00031F4E2E0F0E04092570084910BC0E0E0B7 +:10F9D000F0E040925700849105C0E3E0F0E04092EF +:10F9E000570084911A828B831C8244E050E097C0B8 +:10F9F000BC80AA248D81082F10E00A291B29000F42 +:10FA0000111F1A828AC09A8088248B81682F70E027 +:10FA100068297929933109F033C0F7EF0F3F1F07A9 +:10FA200010F0A8013FC023E0F80120935700E895AB +:10FA300007B600FCFDCFA801D1018C9111962C9145 +:10FA400011971296D22ECC2490E08C299D2921E08A +:10FA5000FA010C0120935700E89511244E5F5F4F87 +:10FA60006250704051F725E0F80120935700E89567 +:10FA700007B600FCFDCF81E180935700E89512C0E6 +:10FA8000A801FB01D10141BD52BD4F5F5F4F8D9178 +:10FA900080BDFA9AF99AF999FECF3197A1F7A8019A +:10FAA000460F571F1A828A0138C07A8066248B81DC +:10FAB000A82FB0E0A629B7291A828981843191F450 +:10FAC000BD019E012D5F3F4FF80185919491F90191 +:10FAD000808391832E5F3F4F0E5F1F4F62507040B7 +:10FAE00099F713C0A801BD019E012D5F3F4F41BD95 +:10FAF00052BD4F5F5F4FF89A80B5F90181939F0126 +:10FB000061507040A1F70A0F1B1FAD014D5F5F4FA1 +:10FB1000F901108204C080EC8A8342E050E090E05A +:10FB2000FBE1F093C6008091C00086FFFCCF80917E +:10FB3000C00080648093C0005092C6008091C000D5 +:10FB400086FFFCCF8091C00080648093C000652F49 +:10FB50005093C6008091C00086FFFCCF8091C0000A +:10FB600080648093C000342F4093C6008091C00011 +:10FB700086FFFCCF8091C00080648093C0008EE03F +:10FB80008093C6008091C00086FFFCCF8091C000AA +:10FB900080648093C00025E1252523272627FE01C8 +:10FBA000319610C030813093C6008091C00086FF2E +:10FBB000FCCF31968091C00080648093C0002327E1 +:10FBC000415050404115510569F72093C60080917E +:10FBD000C00086FFFCCF8091C00080648093C0008D +:10FBE000992349F4539444E755E962E470E090E0C6 +:10FBF000A0E0B0E030CE5A9881E180935700E895BC +:10FC000011241F921F920895FFCF9981933109F417 +:10FC1000FACE9431C8F4963009F4EACE973050F415 +:10FC2000923009F46CCE933009F49BCE913009F0F8 +:10FC300072CF81CE913109F4A7CE923108F0E1CE96 +:10FC4000903109F068CF5BCE983109F4B4CE993188 +:10FC500050F4953109F4D7CE953108F426CF96317A +:10FC600009F059CF22CF9B3109F493CE9C3120F477 +:10FC70009A3109F050CF98CE9D3109F442CE9F328F +:06FC800009F049CFB8CFE6 +:040000030000F80001 +:00000001FF diff --git a/Marlin/Gen7/bootloaders/Gen7/bootloader-644-20MHz.hex b/Marlin/Gen7/bootloaders/Gen7/bootloader-644-20MHz.hex new file mode 100644 index 000000000..d216c65f9 --- /dev/null +++ b/Marlin/Gen7/bootloaders/Gen7/bootloader-644-20MHz.hex @@ -0,0 +1,75 @@ +:10F800008FEF90E19EBF8DBF11241FBE5A9A00C09A +:10F81000CDB7DEB7CD51D140DEBFCDBF1092C50010 +:10F820008AE08093C40088E18093C100EE24FF2425 +:10F8300020E0552400E010E039E0432E9BE0292E23 +:10F84000312C2C0E3D1ECFC14150504060407040C5 +:10F8500011F43FE206C08091C00087FFF5CF3091E0 +:10F86000C600933021F1943028F4913099F0923011 +:10F87000C8F407C0953049F1953000F19630D1F5C4 +:10F8800035C03B3119F491E02BE134C03F3291F5A2 +:10F890003983BBC1313011F0351559F52327532E6B +:10F8A00092E028C0B32FA0E0232793E023C0832F4A +:10F8B00090E0A82BB92B232794E01CC03E30C9F45C +:10F8C000232795E0EE24FF2415C0E1E0F0E0EC0FE3 +:10F8D000FD1FEE0DFF1D30830894E11CF11C232752 +:10F8E000EA16FB0639F4D70196E004C0321709F492 +:10F8F0008CC190E041ED5AE363E570E0ACCF90E05D +:10F9000044C08D81803311F090E00AC08F8188233C +:10F9100011F49EE105C0813011F099E001C096E933 +:10F920001A821B828D818C838E818D839E831F82A0 +:10F9300047E050E0F4C01A8288E08B8381E48C8336 +:10F9400086E58D8382E58E8389E48F8383E58887CE +:10F9500080E589878FE58A8782E38B874BE050E0DB +:10F96000DEC08A81813941F0823941F0803911F459 +:10F970008FE005C080E003C082E001C08AE01A8207 +:10F980008B8343E050E0CBC091E01A8242E050E02C +:10F99000C7C08D81882311F48EE124C0813011F01D +:10F9A00089E020C086E91EC01A82E1E0F0E04092C2 +:10F9B0005700849118C08B81803579F48C81883010 +:10F9C00031F4E2E0F0E04092570084910BC0E0E0B7 +:10F9D000F0E040925700849105C0E3E0F0E04092EF +:10F9E000570084911A828B831C8244E050E097C0B8 +:10F9F000BC80AA248D81082F10E00A291B29000F42 +:10FA0000111F1A828AC09A8088248B81682F70E027 +:10FA100068297929933109F033C0F7EF0F3F1F07A9 +:10FA200010F0A8013FC023E0F80120935700E895AB +:10FA300007B600FCFDCFA801D1018C9111962C9145 +:10FA400011971296D22ECC2490E08C299D2921E08A +:10FA5000FA010C0120935700E89511244E5F5F4F87 +:10FA60006250704051F725E0F80120935700E89567 +:10FA700007B600FCFDCF81E180935700E89512C0E6 +:10FA8000A801FB01D10141BD52BD4F5F5F4F8D9178 +:10FA900080BDFA9AF99AF999FECF3197A1F7A8019A +:10FAA000460F571F1A828A0138C07A8066248B81DC +:10FAB000A82FB0E0A629B7291A828981843191F450 +:10FAC000BD019E012D5F3F4FF80185919491F90191 +:10FAD000808391832E5F3F4F0E5F1F4F62507040B7 +:10FAE00099F713C0A801BD019E012D5F3F4F41BD95 +:10FAF00052BD4F5F5F4FF89A80B5F90181939F0126 +:10FB000061507040A1F70A0F1B1FAD014D5F5F4FA1 +:10FB1000F901108204C080EC8A8342E050E090E05A +:10FB2000FBE1F093C6008091C00086FFFCCF80917E +:10FB3000C00080648093C0005092C6008091C000D5 +:10FB400086FFFCCF8091C00080648093C000652F49 +:10FB50005093C6008091C00086FFFCCF8091C0000A +:10FB600080648093C000342F4093C6008091C00011 +:10FB700086FFFCCF8091C00080648093C0008EE03F +:10FB80008093C6008091C00086FFFCCF8091C000AA +:10FB900080648093C00025E1252523272627FE01C8 +:10FBA000319610C030813093C6008091C00086FF2E +:10FBB000FCCF31968091C00080648093C0002327E1 +:10FBC000415050404115510569F72093C60080917E +:10FBD000C00086FFFCCF8091C00080648093C0008D +:10FBE000992349F4539441ED5AE363E570E090E0C2 +:10FBF000A0E0B0E030CE5A9881E180935700E895BC +:10FC000011241F921F920895FFCF9981933109F417 +:10FC1000FACE9431C8F4963009F4EACE973050F415 +:10FC2000923009F46CCE933009F49BCE913009F0F8 +:10FC300072CF81CE913109F4A7CE923108F0E1CE96 +:10FC4000903109F068CF5BCE983109F4B4CE993188 +:10FC500050F4953109F4D7CE953108F426CF96317A +:10FC600009F059CF22CF9B3109F493CE9C3120F477 +:10FC70009A3109F050CF98CE9D3109F442CE9F328F +:06FC800009F049CFB8CFE6 +:040000030000F80001 +:00000001FF diff --git a/Marlin/Gen7/bootloaders/Gen7/bootloader-644P-16MHz.hex b/Marlin/Gen7/bootloaders/Gen7/bootloader-644P-16MHz.hex new file mode 100644 index 000000000..a9105a221 --- /dev/null +++ b/Marlin/Gen7/bootloaders/Gen7/bootloader-644P-16MHz.hex @@ -0,0 +1,75 @@ +:10F800008FEF90E19EBF8DBF11241FBE5A9A00C09A +:10F81000CDB7DEB7CD51D140DEBFCDBF1092C50010 +:10F8200088E08093C40088E18093C100EE24FF2427 +:10F8300020E0552400E010E039E0432E93E0292E2B +:10F84000312C2C0E3D1ECDC14150504060407040C7 +:10F8500011F43FE206C08091C00087FFF5CF3091E0 +:10F86000C600933021F1943028F4913099F0923011 +:10F87000C8F407C0953049F1953000F19630D1F5C4 +:10F8800035C03B3119F491E02BE134C03F3291F5A2 +:10F890003983B9C1313011F0351559F52327532E6D +:10F8A00092E028C0B32FA0E0232793E023C0832F4A +:10F8B00090E0A82BB92B232794E01CC03E30C9F45C +:10F8C000232795E0EE24FF2415C0E1E0F0E0EC0FE3 +:10F8D000FD1FEE0DFF1D30830894E11CF11C232752 +:10F8E000EA16FB0639F4D70196E004C0321709F492 +:10F8F0008AC190E044E755E962E470E0ACCF90E063 +:10F9000044C08D81803311F090E00AC08F8188233C +:10F9100011F49EE105C0813011F09AE001C096E932 +:10F920001A821B828D818C838E818D839E831F82A0 +:10F9300047E050E0F2C01A8288E08B8381E48C8338 +:10F9400086E58D8382E58E8389E48F8383E58887CE +:10F9500080E589878FE58A8782E38B874BE050E0DB +:10F96000DCC08A81813941F0823941F0803911F45B +:10F970008FE005C080E003C082E001C08AE01A8207 +:10F980008B8343E050E0C9C091E01A8242E050E02E +:10F99000C5C08D81882311F48EE124C0813011F01F +:10F9A0008AE020C086E91EC01A82E1E0F0E04092C1 +:10F9B0005700849118C08B81803579F48C81883010 +:10F9C00031F4E2E0F0E04092570084910BC0E0E0B7 +:10F9D000F0E040925700849105C0E3E0F0E04092EF +:10F9E000570084911A828B831C8244E050E095C0BA +:10F9F000BC80AA248D81082F10E00A291B29000F42 +:10FA0000111F1A8288C09A8088248B81682F70E029 +:10FA100068297929933109F034C0F7EF0F3F1F07A8 +:10FA200010F0A80141C023E0F80120935700E895A9 +:10FA300007B600FCFDCFA801DE011B968C91119644 +:10FA40002C9111971296D22ECC2490E08C299D29CE +:10FA500021E0FA010C0120935700E89511244E5F34 +:10FA60005F4F6250704051F725E0F8012093570036 +:10FA7000E89507B600FCFDCF81E180935700E8953B +:10FA800013C0A801FB01DE011B9641BD52BD4F5FB3 +:10FA90005F4F8D9180BDFA9AF99AF999FECF31970F +:10FAA000A1F7A801460F571F1A828A0134C07A8035 +:10FAB00066248B81A82FB0E0A629B7291A828981F4 +:10FAC000843181F4BD019101F80185919491F9018E +:10FAD000808391832E5F3F4F0E5F1F4F62507040B7 +:10FAE00099F711C0A801BD01910141BD52BD4F5F01 +:10FAF0005F4FF89A80B5F90181939F016150704082 +:10FB0000A1F70A0F1B1FAD014D5F5F4FF901108276 +:10FB100004C080EC8A8342E050E090E0FBE1F09387 +:10FB2000C6008091C00086FFFCCF8091C000806439 +:10FB30008093C0005092C6008091C00086FFFCCF29 +:10FB40008091C00080648093C000652F5093C600F0 +:10FB50008091C00086FFFCCF8091C00080648093BC +:10FB6000C000342F4093C6008091C00086FFFCCFB8 +:10FB70008091C00080648093C0008EE08093C600B6 +:10FB80008091C00086FFFCCF8091C000806480938C +:10FB9000C00025E1252523272627FE01319610C028 +:10FBA00030813093C6008091C00086FFFCCF319633 +:10FBB0008091C00080648093C00023274150504052 +:10FBC0004115510569F72093C6008091C00086FF5A +:10FBD000FCCF8091C00080648093C000992349F4D9 +:10FBE000539444E755E962E470E090E0A0E0B0E0AF +:10FBF00032CE5A9881E180935700E89511241F92E4 +:10FC00001F920895FFCF9981933109F4FCCE94316E +:10FC1000C8F4963009F4ECCE973050F4923009F4E1 +:10FC20006ECE933009F49DCE913009F072CF83CE21 +:10FC3000913109F4A9CE923108F0E3CE903109F068 +:10FC400068CF5DCE983109F4B6CE993150F4953134 +:10FC500009F4D9CE953108F42ACF963109F059CF5D +:10FC600026CF9B3109F495CE9C3120F49A3109F0CE +:10FC700050CF9ACE9D3109F444CE9F3209F049CF3E +:02FC8000B8CFFB +:040000030000F80001 +:00000001FF diff --git a/Marlin/Gen7/bootloaders/Gen7/bootloader-644P-20MHz.hex b/Marlin/Gen7/bootloaders/Gen7/bootloader-644P-20MHz.hex new file mode 100644 index 000000000..4ee0c6b1f --- /dev/null +++ b/Marlin/Gen7/bootloaders/Gen7/bootloader-644P-20MHz.hex @@ -0,0 +1,75 @@ +:10F800008FEF90E19EBF8DBF11241FBE5A9A00C09A +:10F81000CDB7DEB7CD51D140DEBFCDBF1092C50010 +:10F820008AE08093C40088E18093C100EE24FF2425 +:10F8300020E0552400E010E039E0432E93E0292E2B +:10F84000312C2C0E3D1ECDC14150504060407040C7 +:10F8500011F43FE206C08091C00087FFF5CF3091E0 +:10F86000C600933021F1943028F4913099F0923011 +:10F87000C8F407C0953049F1953000F19630D1F5C4 +:10F8800035C03B3119F491E02BE134C03F3291F5A2 +:10F890003983B9C1313011F0351559F52327532E6D +:10F8A00092E028C0B32FA0E0232793E023C0832F4A +:10F8B00090E0A82BB92B232794E01CC03E30C9F45C +:10F8C000232795E0EE24FF2415C0E1E0F0E0EC0FE3 +:10F8D000FD1FEE0DFF1D30830894E11CF11C232752 +:10F8E000EA16FB0639F4D70196E004C0321709F492 +:10F8F0008AC190E041ED5AE363E570E0ACCF90E05F +:10F9000044C08D81803311F090E00AC08F8188233C +:10F9100011F49EE105C0813011F09AE001C096E932 +:10F920001A821B828D818C838E818D839E831F82A0 +:10F9300047E050E0F2C01A8288E08B8381E48C8338 +:10F9400086E58D8382E58E8389E48F8383E58887CE +:10F9500080E589878FE58A8782E38B874BE050E0DB +:10F96000DCC08A81813941F0823941F0803911F45B +:10F970008FE005C080E003C082E001C08AE01A8207 +:10F980008B8343E050E0C9C091E01A8242E050E02E +:10F99000C5C08D81882311F48EE124C0813011F01F +:10F9A0008AE020C086E91EC01A82E1E0F0E04092C1 +:10F9B0005700849118C08B81803579F48C81883010 +:10F9C00031F4E2E0F0E04092570084910BC0E0E0B7 +:10F9D000F0E040925700849105C0E3E0F0E04092EF +:10F9E000570084911A828B831C8244E050E095C0BA +:10F9F000BC80AA248D81082F10E00A291B29000F42 +:10FA0000111F1A8288C09A8088248B81682F70E029 +:10FA100068297929933109F034C0F7EF0F3F1F07A8 +:10FA200010F0A80141C023E0F80120935700E895A9 +:10FA300007B600FCFDCFA801DE011B968C91119644 +:10FA40002C9111971296D22ECC2490E08C299D29CE +:10FA500021E0FA010C0120935700E89511244E5F34 +:10FA60005F4F6250704051F725E0F8012093570036 +:10FA7000E89507B600FCFDCF81E180935700E8953B +:10FA800013C0A801FB01DE011B9641BD52BD4F5FB3 +:10FA90005F4F8D9180BDFA9AF99AF999FECF31970F +:10FAA000A1F7A801460F571F1A828A0134C07A8035 +:10FAB00066248B81A82FB0E0A629B7291A828981F4 +:10FAC000843181F4BD019101F80185919491F9018E +:10FAD000808391832E5F3F4F0E5F1F4F62507040B7 +:10FAE00099F711C0A801BD01910141BD52BD4F5F01 +:10FAF0005F4FF89A80B5F90181939F016150704082 +:10FB0000A1F70A0F1B1FAD014D5F5F4FF901108276 +:10FB100004C080EC8A8342E050E090E0FBE1F09387 +:10FB2000C6008091C00086FFFCCF8091C000806439 +:10FB30008093C0005092C6008091C00086FFFCCF29 +:10FB40008091C00080648093C000652F5093C600F0 +:10FB50008091C00086FFFCCF8091C00080648093BC +:10FB6000C000342F4093C6008091C00086FFFCCFB8 +:10FB70008091C00080648093C0008EE08093C600B6 +:10FB80008091C00086FFFCCF8091C000806480938C +:10FB9000C00025E1252523272627FE01319610C028 +:10FBA00030813093C6008091C00086FFFCCF319633 +:10FBB0008091C00080648093C00023274150504052 +:10FBC0004115510569F72093C6008091C00086FF5A +:10FBD000FCCF8091C00080648093C000992349F4D9 +:10FBE000539441ED5AE363E570E090E0A0E0B0E0AB +:10FBF00032CE5A9881E180935700E89511241F92E4 +:10FC00001F920895FFCF9981933109F4FCCE94316E +:10FC1000C8F4963009F4ECCE973050F4923009F4E1 +:10FC20006ECE933009F49DCE913009F072CF83CE21 +:10FC3000913109F4A9CE923108F0E3CE903109F068 +:10FC400068CF5DCE983109F4B6CE993150F4953134 +:10FC500009F4D9CE953108F42ACF963109F059CF5D +:10FC600026CF9B3109F495CE9C3120F49A3109F0CE +:10FC700050CF9ACE9D3109F444CE9F3209F049CF3E +:02FC8000B8CFFB +:040000030000F80001 +:00000001FF diff --git a/Marlin/Gen7/cores/arduino/HardwareSerial.cpp b/Marlin/Gen7/cores/arduino/HardwareSerial.cpp new file mode 100644 index 000000000..8b1fcc601 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/HardwareSerial.cpp @@ -0,0 +1,239 @@ +/* + HardwareSerial.cpp - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis +*/ + +#include +#include +#include +#include "wiring.h" +#include "wiring_private.h" + +#include "HardwareSerial.h" + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#define RX_BUFFER_SIZE 128 + +struct ring_buffer { + unsigned char buffer[RX_BUFFER_SIZE]; + int head; + int tail; +}; + +ring_buffer rx_buffer = { { 0 }, 0, 0 }; + +#ifdef UDR1 +ring_buffer rx_buffer1 = { { 0 }, 0, 0 }; +#endif + +#ifdef UDR2 +ring_buffer rx_buffer2 = { { 0 }, 0, 0 }; +#endif +#ifdef UDR3 +ring_buffer rx_buffer3 = { { 0 }, 0, 0 }; +#endif + +inline void store_char(unsigned char c, ring_buffer *rx_buffer) +{ + int i = (rx_buffer->head + 1) % RX_BUFFER_SIZE; + + // if we should be storing the received character into the location + // just before the tail (meaning that the head would advance to the + // current location of the tail), we're about to overflow the buffer + // and so we don't write the character or advance the head. + if (i != rx_buffer->tail) { + rx_buffer->buffer[rx_buffer->head] = c; + rx_buffer->head = i; + } +} + +ISR(USART0_RX_vect) +{ + unsigned char c = UDR0; + store_char(c, &rx_buffer); +} + +#ifdef UDR1 +ISR(USART1_RX_vect) +{ + unsigned char c = UDR1; + store_char(c, &rx_buffer1); +} + +#ifdef UDR2 +ISR(USART2_RX_vect) +{ + unsigned char c = UDR2; + store_char(c, &rx_buffer2); +} + +#ifdef UDR2 +ISR(USART3_RX_vect) +{ + unsigned char c = UDR3; + store_char(c, &rx_buffer3); +} +#endif +#endif + +#else + +#if defined(__AVR_ATmega8__) +SIGNAL(SIG_UART_RECV) +#else +SIGNAL(USART_RX_vect) +#endif +{ +#if defined(__AVR_ATmega8__) + unsigned char c = UDR; +#else + unsigned char c = UDR0; +#endif + store_char(c, &rx_buffer); +} + +#endif + +// Constructors //////////////////////////////////////////////////////////////// + +HardwareSerial::HardwareSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x) +{ + _rx_buffer = rx_buffer; + _ubrrh = ubrrh; + _ubrrl = ubrrl; + _ucsra = ucsra; + _ucsrb = ucsrb; + _udr = udr; + _rxen = rxen; + _txen = txen; + _rxcie = rxcie; + _udre = udre; + _u2x = u2x; +} + +// Public Methods ////////////////////////////////////////////////////////////// + +void HardwareSerial::begin(long baud) +{ + uint16_t baud_setting; + bool use_u2x; + + // U2X mode is needed for baud rates higher than (CPU Hz / 16) + if (baud > F_CPU / 16) { + use_u2x = true; + } else { + // figure out if U2X mode would allow for a better connection + + // calculate the percent difference between the baud-rate specified and + // the real baud rate for both U2X and non-U2X mode (0-255 error percent) + uint8_t nonu2x_baud_error = abs((int)(255-((F_CPU/(16*(((F_CPU/8/baud-1)/2)+1))*255)/baud))); + uint8_t u2x_baud_error = abs((int)(255-((F_CPU/(8*(((F_CPU/4/baud-1)/2)+1))*255)/baud))); + + // prefer non-U2X mode because it handles clock skew better + use_u2x = (nonu2x_baud_error > u2x_baud_error); + } + + if (use_u2x) { + *_ucsra = 1 << _u2x; + baud_setting = (F_CPU / 4 / baud - 1) / 2; + } else { + *_ucsra = 0; + baud_setting = (F_CPU / 8 / baud - 1) / 2; + } + + // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) + *_ubrrh = baud_setting >> 8; + *_ubrrl = baud_setting; + + sbi(*_ucsrb, _rxen); + sbi(*_ucsrb, _txen); + sbi(*_ucsrb, _rxcie); +} + +void HardwareSerial::end() +{ + cbi(*_ucsrb, _rxen); + cbi(*_ucsrb, _txen); + cbi(*_ucsrb, _rxcie); +} + +uint8_t HardwareSerial::available(void) +{ + return (RX_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % RX_BUFFER_SIZE; +} + +int HardwareSerial::read(void) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; + _rx_buffer->tail = (_rx_buffer->tail + 1) % RX_BUFFER_SIZE; + return c; + } +} + +void HardwareSerial::flush() +{ + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // were full, not empty. + _rx_buffer->head = _rx_buffer->tail; +} + +void HardwareSerial::write(uint8_t c) +{ + while (!((*_ucsra) & (1 << _udre))) + ; + + *_udr = c; +} + +// Preinstantiate Objects ////////////////////////////////////////////////////// + +#if defined(__AVR_ATmega8__) +HardwareSerial Serial(&rx_buffer, &UBRRH, &UBRRL, &UCSRA, &UCSRB, &UDR, RXEN, TXEN, RXCIE, UDRE, U2X); +#else +HardwareSerial Serial(&rx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UDR0, RXEN0, TXEN0, RXCIE0, UDRE0, U2X0); +#endif + +#ifdef UDR1 +HardwareSerial Serial1(&rx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UDR1, RXEN1, TXEN1, RXCIE1, UDRE1, U2X1); +#endif + +#ifdef UDR2 +HardwareSerial Serial2(&rx_buffer2, &UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UDR2, RXEN2, TXEN2, RXCIE2, UDRE2, U2X2); +#endif +#ifdef UDR3 +HardwareSerial Serial3(&rx_buffer3, &UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UDR3, RXEN3, TXEN3, RXCIE3, UDRE3, U2X3); +#endif diff --git a/Marlin/Gen7/cores/arduino/HardwareSerial.h b/Marlin/Gen7/cores/arduino/HardwareSerial.h new file mode 100644 index 000000000..f609f73d3 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/HardwareSerial.h @@ -0,0 +1,69 @@ +/* + HardwareSerial.h - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef HardwareSerial_h +#define HardwareSerial_h + +#include + +#include "Print.h" + +struct ring_buffer; + +class HardwareSerial : public Print +{ + private: + ring_buffer *_rx_buffer; + volatile uint8_t *_ubrrh; + volatile uint8_t *_ubrrl; + volatile uint8_t *_ucsra; + volatile uint8_t *_ucsrb; + volatile uint8_t *_udr; + uint8_t _rxen; + uint8_t _txen; + uint8_t _rxcie; + uint8_t _udre; + uint8_t _u2x; + public: + HardwareSerial(ring_buffer *rx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udre, uint8_t u2x); + void begin(long); + void end(); + uint8_t available(void); + int read(void); + void flush(void); + virtual void write(uint8_t); + using Print::write; // pull in write(str) and write(buf, size) from Print +}; + +extern HardwareSerial Serial; + +#if defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1280__) +extern HardwareSerial Serial1; +#endif + +#if defined(__AVR_ATmega1280__) +extern HardwareSerial Serial2; +extern HardwareSerial Serial3; +#endif + +#endif diff --git a/Marlin/Gen7/cores/arduino/Makefile b/Marlin/Gen7/cores/arduino/Makefile new file mode 100644 index 000000000..571687db9 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/Makefile @@ -0,0 +1,243 @@ +# Arduino 0011 Makefile +# Arduino adaptation by mellis, eighthave, oli.keller +# +# This makefile allows you to build sketches from the command line +# without the Arduino environment (or Java). +# +# Detailed instructions for using the makefile: +# +# 1. Copy this file into the folder with your sketch. There should be a +# file with the same name as the folder and with the extension .pde +# (e.g. foo.pde in the foo/ folder). +# +# 2. Modify the line containg "INSTALL_DIR" to point to the directory that +# contains the Arduino installation (for example, under Mac OS X, this +# might be /Applications/arduino-0012). +# +# 3. Modify the line containing "PORT" to refer to the filename +# representing the USB or serial connection to your Arduino board +# (e.g. PORT = /dev/tty.USB0). If the exact name of this file +# changes, you can use * as a wildcard (e.g. PORT = /dev/tty.usb*). +# +# 4. Set the line containing "MCU" to match your board's processor. +# Older one's are atmega8 based, newer ones like Arduino Mini, Bluetooth +# or Diecimila have the atmega168. If you're using a LilyPad Arduino, +# change F_CPU to 8000000. +# +# 5. At the command line, change to the directory containing your +# program's file and the makefile. +# +# 6. Type "make" and press enter to compile/verify your program. +# +# 7. Type "make upload", reset your Arduino board, and press enter to +# upload your program to the Arduino board. +# +# $Id$ + +TARGET = $(notdir $(CURDIR)) +INSTALL_DIR = /Users/dmellis/Source/arduino/trunk/build/macosx/build/work +PORT = /dev/tty.usb* +UPLOAD_RATE = 19200 +AVRDUDE_PROGRAMMER = stk500v1 +MCU = atmega168 +F_CPU = 16000000 + +############################################################################ +# Below here nothing should be changed... + +ARDUINO = $(INSTALL_DIR)/hardware/cores/arduino +AVR_TOOLS_PATH = $(INSTALL_DIR)/hardware/tools/avr/bin +SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \ +$(ARDUINO)/wiring_analog.c $(ARDUINO)/wiring_digital.c \ +$(ARDUINO)/wiring_pulse.c $(ARDUINO)/wiring_serial.c \ +$(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c +CXXSRC = $(ARDUINO)/HardwareSerial.cpp $(ARDUINO)/WMath.cpp +FORMAT = ihex + + +# Name of this Makefile (used for "make depend"). +MAKEFILE = Makefile + +# Debugging format. +# Native formats for AVR-GCC's -g are stabs [default], or dwarf-2. +# AVR (extended) COFF requires stabs, plus an avr-objcopy run. +DEBUG = stabs + +OPT = s + +# Place -D or -U options here +CDEFS = -DF_CPU=$(F_CPU) +CXXDEFS = -DF_CPU=$(F_CPU) + +# Place -I options here +CINCS = -I$(ARDUINO) +CXXINCS = -I$(ARDUINO) + +# Compiler flag to set the C Standard level. +# c89 - "ANSI" C +# gnu89 - c89 plus GCC extensions +# c99 - ISO C99 standard (not yet fully implemented) +# gnu99 - c99 plus GCC extensions +CSTANDARD = -std=gnu99 +CDEBUG = -g$(DEBUG) +CWARN = -Wall -Wstrict-prototypes +CTUNING = -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums +#CEXTRA = -Wa,-adhlns=$(<:.c=.lst) + +CFLAGS = $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CSTANDARD) $(CEXTRA) +CXXFLAGS = $(CDEFS) $(CINCS) -O$(OPT) +#ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs +LDFLAGS = -lm + + +# Programming support using avrdude. Settings and variables. +AVRDUDE_PORT = $(PORT) +AVRDUDE_WRITE_FLASH = -U flash:w:applet/$(TARGET).hex +AVRDUDE_FLAGS = -V -F -C $(INSTALL_DIR)/hardware/tools/avr/etc/avrdude.conf \ +-p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ +-b $(UPLOAD_RATE) + +# Program settings +CC = $(AVR_TOOLS_PATH)/avr-gcc +CXX = $(AVR_TOOLS_PATH)/avr-g++ +OBJCOPY = $(AVR_TOOLS_PATH)/avr-objcopy +OBJDUMP = $(AVR_TOOLS_PATH)/avr-objdump +AR = $(AVR_TOOLS_PATH)/avr-ar +SIZE = $(AVR_TOOLS_PATH)/avr-size +NM = $(AVR_TOOLS_PATH)/avr-nm +AVRDUDE = $(AVR_TOOLS_PATH)/avrdude +REMOVE = rm -f +MV = mv -f + +# Define all object files. +OBJ = $(SRC:.c=.o) $(CXXSRC:.cpp=.o) $(ASRC:.S=.o) + +# Define all listing files. +LST = $(ASRC:.S=.lst) $(CXXSRC:.cpp=.lst) $(SRC:.c=.lst) + +# Combine all necessary flags and optional flags. +# Add target processor to flags. +ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS) +ALL_CXXFLAGS = -mmcu=$(MCU) -I. $(CXXFLAGS) +ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) + + +# Default target. +all: applet_files build sizeafter + +build: elf hex + +applet_files: $(TARGET).pde + # Here is the "preprocessing". + # It creates a .cpp file based with the same name as the .pde file. + # On top of the new .cpp file comes the WProgram.h header. + # At the end there is a generic main() function attached. + # Then the .cpp file will be compiled. Errors during compile will + # refer to this new, automatically generated, file. + # Not the original .pde file you actually edit... + test -d applet || mkdir applet + echo '#include "WProgram.h"' > applet/$(TARGET).cpp + cat $(TARGET).pde >> applet/$(TARGET).cpp + cat $(ARDUINO)/main.cxx >> applet/$(TARGET).cpp + +elf: applet/$(TARGET).elf +hex: applet/$(TARGET).hex +eep: applet/$(TARGET).eep +lss: applet/$(TARGET).lss +sym: applet/$(TARGET).sym + +# Program the device. +upload: applet/$(TARGET).hex + $(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) + + + # Display size of file. +HEXSIZE = $(SIZE) --target=$(FORMAT) applet/$(TARGET).hex +ELFSIZE = $(SIZE) applet/$(TARGET).elf +sizebefore: + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi + +sizeafter: + @if [ -f applet/$(TARGET).elf ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi + + +# Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB. +COFFCONVERT=$(OBJCOPY) --debugging \ +--change-section-address .data-0x800000 \ +--change-section-address .bss-0x800000 \ +--change-section-address .noinit-0x800000 \ +--change-section-address .eeprom-0x810000 + + +coff: applet/$(TARGET).elf + $(COFFCONVERT) -O coff-avr applet/$(TARGET).elf $(TARGET).cof + + +extcoff: $(TARGET).elf + $(COFFCONVERT) -O coff-ext-avr applet/$(TARGET).elf $(TARGET).cof + + +.SUFFIXES: .elf .hex .eep .lss .sym + +.elf.hex: + $(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ + +.elf.eep: + -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ + --change-section-lma .eeprom=0 -O $(FORMAT) $< $@ + +# Create extended listing file from ELF output file. +.elf.lss: + $(OBJDUMP) -h -S $< > $@ + +# Create a symbol table from ELF output file. +.elf.sym: + $(NM) -n $< > $@ + + # Link: create ELF output file from library. +applet/$(TARGET).elf: $(TARGET).pde applet/core.a + $(CC) $(ALL_CFLAGS) -o $@ applet/$(TARGET).cpp -L. applet/core.a $(LDFLAGS) + +applet/core.a: $(OBJ) + @for i in $(OBJ); do echo $(AR) rcs applet/core.a $$i; $(AR) rcs applet/core.a $$i; done + + + +# Compile: create object files from C++ source files. +.cpp.o: + $(CXX) -c $(ALL_CXXFLAGS) $< -o $@ + +# Compile: create object files from C source files. +.c.o: + $(CC) -c $(ALL_CFLAGS) $< -o $@ + + +# Compile: create assembler files from C source files. +.c.s: + $(CC) -S $(ALL_CFLAGS) $< -o $@ + + +# Assemble: create object files from assembler source files. +.S.o: + $(CC) -c $(ALL_ASFLAGS) $< -o $@ + + + +# Target: clean project. +clean: + $(REMOVE) applet/$(TARGET).hex applet/$(TARGET).eep applet/$(TARGET).cof applet/$(TARGET).elf \ + applet/$(TARGET).map applet/$(TARGET).sym applet/$(TARGET).lss applet/core.a \ + $(OBJ) $(LST) $(SRC:.c=.s) $(SRC:.c=.d) $(CXXSRC:.cpp=.s) $(CXXSRC:.cpp=.d) + +depend: + if grep '^# DO NOT DELETE' $(MAKEFILE) >/dev/null; \ + then \ + sed -e '/^# DO NOT DELETE/,$$d' $(MAKEFILE) > \ + $(MAKEFILE).$$$$ && \ + $(MV) $(MAKEFILE).$$$$ $(MAKEFILE); \ + fi + echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' \ + >> $(MAKEFILE); \ + $(CC) -M -mmcu=$(MCU) $(CDEFS) $(CINCS) $(SRC) $(ASRC) >> $(MAKEFILE) + +.PHONY: all build elf hex eep lss sym program coff extcoff clean depend applet_files sizebefore sizeafter diff --git a/Marlin/Gen7/cores/arduino/Print.cpp b/Marlin/Gen7/cores/arduino/Print.cpp new file mode 100644 index 000000000..d4833da7c --- /dev/null +++ b/Marlin/Gen7/cores/arduino/Print.cpp @@ -0,0 +1,203 @@ +/* + Print.cpp - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + */ + +#include +#include +#include +#include +#include "wiring.h" + +#include "Print.h" + +// Public Methods ////////////////////////////////////////////////////////////// + +void Print::print(uint8_t b) +{ + this->write(b); +} + +void Print::print(char c) +{ + print((byte) c); +} + +void Print::print(const char c[]) +{ + while (*c) + print(*c++); +} + +void Print::print(int n) +{ + print((long) n); +} + +void Print::print(unsigned int n) +{ + print((unsigned long) n); +} + +void Print::print(long n) +{ + if (n < 0) { + print('-'); + n = -n; + } + printNumber(n, 10); +} + +void Print::print(unsigned long n) +{ + printNumber(n, 10); +} + +void Print::print(long n, int base) +{ + if (base == 0) + print((char) n); + else if (base == 10) + print(n); + else + printNumber(n, base); +} + +void Print::print(double n) +{ + printFloat(n, 2); +} + +void Print::println(void) +{ + print('\r'); + print('\n'); +} + +void Print::println(char c) +{ + print(c); + println(); +} + +void Print::println(const char c[]) +{ + print(c); + println(); +} + +void Print::println(uint8_t b) +{ + print(b); + println(); +} + +void Print::println(int n) +{ + print(n); + println(); +} + +void Print::println(unsigned int n) +{ + print(n); + println(); +} + +void Print::println(long n) +{ + print(n); + println(); +} + +void Print::println(unsigned long n) +{ + print(n); + println(); +} + +void Print::println(long n, int base) +{ + print(n, base); + println(); +} + +void Print::println(double n) +{ + print(n); + println(); +} + +// Private Methods ///////////////////////////////////////////////////////////// + +void Print::printNumber(unsigned long n, uint8_t base) +{ + unsigned char buf[8 * sizeof(long)]; // Assumes 8-bit chars. + unsigned long i = 0; + + if (n == 0) { + print('0'); + return; + } + + while (n > 0) { + buf[i++] = n % base; + n /= base; + } + + for (; i > 0; i--) + print((char) (buf[i - 1] < 10 ? + '0' + buf[i - 1] : + 'A' + buf[i - 1] - 10)); +} + +void Print::printFloat(double number, uint8_t digits) +{ + // Handle negative numbers + if (number < 0.0) + { + print('-'); + number = -number; + } + + // Round correctly so that print(1.999, 2) prints as "2.00" + double rounding = 0.5; + for (uint8_t i=0; i 0) + print("."); + + // Extract digits from the remainder one at a time + while (digits-- > 0) + { + remainder *= 10.0; + int toPrint = int(remainder); + print(toPrint); + remainder -= toPrint; + } +} diff --git a/Marlin/Gen7/cores/arduino/Print.h b/Marlin/Gen7/cores/arduino/Print.h new file mode 100644 index 000000000..c95a0dc09 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/Print.h @@ -0,0 +1,59 @@ +/* + Print.h - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Print_h +#define Print_h + +#include + +#define DEC 10 +#define HEX 16 +#define OCT 8 +#define BIN 2 +#define BYTE 0 + +class Print +{ + private: + void printNumber(unsigned long, uint8_t); + void printFloat(double, uint8_t); + public: + virtual void write(uint8_t); + void print(char); + void print(const char[]); + void print(uint8_t); + void print(int); + void print(unsigned int); + void print(long); + void print(unsigned long); + void print(long, int); + void print(double); + void println(void); + void println(char); + void println(const char[]); + void println(uint8_t); + void println(int); + void println(unsigned int); + void println(long); + void println(unsigned long); + void println(long, int); + void println(double); +}; + +#endif diff --git a/Marlin/Gen7/cores/arduino/Tone.cpp b/Marlin/Gen7/cores/arduino/Tone.cpp new file mode 100644 index 000000000..827fe49ef --- /dev/null +++ b/Marlin/Gen7/cores/arduino/Tone.cpp @@ -0,0 +1,515 @@ +/* Tone.cpp + + A Tone Generator Library + + Written by Brett Hagman + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Version Modified By Date Comments +------- ----------- -------- -------- +0001 B Hagman 09/08/02 Initial coding +0002 B Hagman 09/08/18 Multiple pins +0003 B Hagman 09/08/18 Moved initialization from constructor to begin() +0004 B Hagman 09/09/26 Fixed problems with ATmega8 +0005 B Hagman 09/11/23 Scanned prescalars for best fit on 8 bit timers + 09/11/25 Changed pin toggle method to XOR + 09/11/25 Fixed timer0 from being excluded +0006 D Mellis 09/12/29 Replaced objects with functions + +*************************************************/ + +#include +#include +#include +#include + +#if defined(__AVR_ATmega8__) +#define TCCR2A TCCR2 +#define TCCR2B TCCR2 +#define COM2A1 COM21 +#define COM2A0 COM20 +#define OCR2A OCR2 +#define TIMSK2 TIMSK +#define OCIE2A OCIE2 +#define TIMER2_COMPA_vect TIMER2_COMP_vect +#define TIMSK1 TIMSK +#endif + +// timerx_toggle_count: +// > 0 - duration specified +// = 0 - stopped +// < 0 - infinitely (until stop() method called, or new play() called) + +#if !defined(__AVR_ATmega8__) +volatile long timer0_toggle_count; +volatile uint8_t *timer0_pin_port; +volatile uint8_t timer0_pin_mask; +#endif + +volatile long timer1_toggle_count; +volatile uint8_t *timer1_pin_port; +volatile uint8_t timer1_pin_mask; +volatile long timer2_toggle_count; +volatile uint8_t *timer2_pin_port; +volatile uint8_t timer2_pin_mask; + +#if defined(__AVR_ATmega1280__) +volatile long timer3_toggle_count; +volatile uint8_t *timer3_pin_port; +volatile uint8_t timer3_pin_mask; +volatile long timer4_toggle_count; +volatile uint8_t *timer4_pin_port; +volatile uint8_t timer4_pin_mask; +volatile long timer5_toggle_count; +volatile uint8_t *timer5_pin_port; +volatile uint8_t timer5_pin_mask; +#endif + + +#if defined(__AVR_ATmega1280__) + +#define AVAILABLE_TONE_PINS 1 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 3, 4, 5, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255, 255, 255, 255 */ }; + +#elif defined(__AVR_ATmega8__) + +#define AVAILABLE_TONE_PINS 1 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255 */ }; + +#else + +#define AVAILABLE_TONE_PINS 1 + +// Leave timer 0 to last. +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255 */ }; + +#endif + + + +static int8_t toneBegin(uint8_t _pin) +{ + int8_t _timer = -1; + + // if we're already using the pin, the timer should be configured. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + return pgm_read_byte(tone_pin_to_timer_PGM + i); + } + } + + // search for an unused timer. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == 255) { + tone_pins[i] = _pin; + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + break; + } + } + + if (_timer != -1) + { + // Set timer specific stuff + // All timers in CTC mode + // 8 bit timers will require changing prescalar values, + // whereas 16 bit timers are set to either ck/1 or ck/64 prescalar + switch (_timer) + { +#if !defined(__AVR_ATmega8__) + case 0: + // 8 bit timer + TCCR0A = 0; + TCCR0B = 0; + bitWrite(TCCR0A, WGM01, 1); + bitWrite(TCCR0B, CS00, 1); + timer0_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer0_pin_mask = digitalPinToBitMask(_pin); + break; +#endif + + case 1: + // 16 bit timer + TCCR1A = 0; + TCCR1B = 0; + bitWrite(TCCR1B, WGM12, 1); + bitWrite(TCCR1B, CS10, 1); + timer1_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer1_pin_mask = digitalPinToBitMask(_pin); + break; + case 2: + // 8 bit timer + TCCR2A = 0; + TCCR2B = 0; + bitWrite(TCCR2A, WGM21, 1); + bitWrite(TCCR2B, CS20, 1); + timer2_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer2_pin_mask = digitalPinToBitMask(_pin); + break; + +#if defined(__AVR_ATmega1280__) + case 3: + // 16 bit timer + TCCR3A = 0; + TCCR3B = 0; + bitWrite(TCCR3B, WGM32, 1); + bitWrite(TCCR3B, CS30, 1); + timer3_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer3_pin_mask = digitalPinToBitMask(_pin); + break; + case 4: + // 16 bit timer + TCCR4A = 0; + TCCR4B = 0; + bitWrite(TCCR4B, WGM42, 1); + bitWrite(TCCR4B, CS40, 1); + timer4_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer4_pin_mask = digitalPinToBitMask(_pin); + break; + case 5: + // 16 bit timer + TCCR5A = 0; + TCCR5B = 0; + bitWrite(TCCR5B, WGM52, 1); + bitWrite(TCCR5B, CS50, 1); + timer5_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer5_pin_mask = digitalPinToBitMask(_pin); + break; +#endif + } + } + + return _timer; +} + + + +// frequency (in hertz) and duration (in milliseconds). + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration) +{ + uint8_t prescalarbits = 0b001; + long toggle_count = 0; + uint32_t ocr = 0; + int8_t _timer; + + _timer = toneBegin(_pin); + + if (_timer >= 0) + { + // Set the pinMode as OUTPUT + pinMode(_pin, OUTPUT); + + // if we are using an 8 bit timer, scan through prescalars to find the best fit + if (_timer == 0 || _timer == 2) + { + ocr = F_CPU / frequency / 2 - 1; + prescalarbits = 0b001; // ck/1: same for both timers + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 8 - 1; + prescalarbits = 0b010; // ck/8: same for both timers + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 32 - 1; + prescalarbits = 0b011; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = _timer == 0 ? 0b011 : 0b100; + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 128 - 1; + prescalarbits = 0b101; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 256 - 1; + prescalarbits = _timer == 0 ? 0b100 : 0b110; + if (ocr > 255) + { + // can't do any better than /1024 + ocr = F_CPU / frequency / 2 / 1024 - 1; + prescalarbits = _timer == 0 ? 0b101 : 0b111; + } + } + } + } + +#if !defined(__AVR_ATmega8__) + if (_timer == 0) + TCCR0B = prescalarbits; + else +#endif + TCCR2B = prescalarbits; + } + else + { + // two choices for the 16 bit timers: ck/1 or ck/64 + ocr = F_CPU / frequency / 2 - 1; + + prescalarbits = 0b001; + if (ocr > 0xffff) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = 0b011; + } + + if (_timer == 1) + TCCR1B = (TCCR1B & 0b11111000) | prescalarbits; +#if defined(__AVR_ATmega1280__) + else if (_timer == 3) + TCCR3B = (TCCR3B & 0b11111000) | prescalarbits; + else if (_timer == 4) + TCCR4B = (TCCR4B & 0b11111000) | prescalarbits; + else if (_timer == 5) + TCCR5B = (TCCR5B & 0b11111000) | prescalarbits; +#endif + + } + + + // Calculate the toggle count + if (duration > 0) + { + toggle_count = 2 * frequency * duration / 1000; + } + else + { + toggle_count = -1; + } + + // Set the OCR for the given timer, + // set the toggle count, + // then turn on the interrupts + switch (_timer) + { + +#if !defined(__AVR_ATmega8__) + case 0: + OCR0A = ocr; + timer0_toggle_count = toggle_count; + bitWrite(TIMSK0, OCIE0A, 1); + break; +#endif + + case 1: + OCR1A = ocr; + timer1_toggle_count = toggle_count; + bitWrite(TIMSK1, OCIE1A, 1); + break; + case 2: + OCR2A = ocr; + timer2_toggle_count = toggle_count; + bitWrite(TIMSK2, OCIE2A, 1); + break; + +#if defined(__AVR_ATmega1280__) + case 3: + OCR3A = ocr; + timer3_toggle_count = toggle_count; + bitWrite(TIMSK3, OCIE3A, 1); + break; + case 4: + OCR4A = ocr; + timer4_toggle_count = toggle_count; + bitWrite(TIMSK4, OCIE4A, 1); + break; + case 5: + OCR5A = ocr; + timer5_toggle_count = toggle_count; + bitWrite(TIMSK5, OCIE5A, 1); + break; +#endif + + } + } +} + + +void noTone(uint8_t _pin) +{ + int8_t _timer = -1; + + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + tone_pins[i] = 255; + } + } + + switch (_timer) + { +#if defined(__AVR_ATmega8__) + case 1: + bitWrite(TIMSK1, OCIE1A, 0); + break; + case 2: + bitWrite(TIMSK2, OCIE2A, 0); + break; + +#else + case 0: + TIMSK0 = 0; + break; + case 1: + TIMSK1 = 0; + break; + case 2: + TIMSK2 = 0; + break; +#endif + +#if defined(__AVR_ATmega1280__) + case 3: + TIMSK3 = 0; + break; + case 4: + TIMSK4 = 0; + break; + case 5: + TIMSK5 = 0; + break; +#endif + } + + digitalWrite(_pin, 0); +} + +#if 0 +#if !defined(__AVR_ATmega8__) +ISR(TIMER0_COMPA_vect) +{ + if (timer0_toggle_count != 0) + { + // toggle the pin + *timer0_pin_port ^= timer0_pin_mask; + + if (timer0_toggle_count > 0) + timer0_toggle_count--; + } + else + { + TIMSK0 = 0; // disable the interrupt + *timer0_pin_port &= ~(timer0_pin_mask); // keep pin low after stop + } +} +#endif + + +ISR(TIMER1_COMPA_vect) +{ + if (timer1_toggle_count != 0) + { + // toggle the pin + *timer1_pin_port ^= timer1_pin_mask; + + if (timer1_toggle_count > 0) + timer1_toggle_count--; + } + else + { + TIMSK1 = 0; // disable the interrupt + *timer1_pin_port &= ~(timer1_pin_mask); // keep pin low after stop + } +} +#endif + + +ISR(TIMER2_COMPA_vect) +{ + + if (timer2_toggle_count != 0) + { + // toggle the pin + *timer2_pin_port ^= timer2_pin_mask; + + if (timer2_toggle_count > 0) + timer2_toggle_count--; + } + else + { + TIMSK2 = 0; // disable the interrupt + *timer2_pin_port &= ~(timer2_pin_mask); // keep pin low after stop + } +} + + + +//#if defined(__AVR_ATmega1280__) +#if 0 + +ISR(TIMER3_COMPA_vect) +{ + if (timer3_toggle_count != 0) + { + // toggle the pin + *timer3_pin_port ^= timer3_pin_mask; + + if (timer3_toggle_count > 0) + timer3_toggle_count--; + } + else + { + TIMSK3 = 0; // disable the interrupt + *timer3_pin_port &= ~(timer3_pin_mask); // keep pin low after stop + } +} + +ISR(TIMER4_COMPA_vect) +{ + if (timer4_toggle_count != 0) + { + // toggle the pin + *timer4_pin_port ^= timer4_pin_mask; + + if (timer4_toggle_count > 0) + timer4_toggle_count--; + } + else + { + TIMSK4 = 0; // disable the interrupt + *timer4_pin_port &= ~(timer4_pin_mask); // keep pin low after stop + } +} + +ISR(TIMER5_COMPA_vect) +{ + if (timer5_toggle_count != 0) + { + // toggle the pin + *timer5_pin_port ^= timer5_pin_mask; + + if (timer5_toggle_count > 0) + timer5_toggle_count--; + } + else + { + TIMSK5 = 0; // disable the interrupt + *timer5_pin_port &= ~(timer5_pin_mask); // keep pin low after stop + } +} + +#endif diff --git a/Marlin/Gen7/cores/arduino/WCharacter.h b/Marlin/Gen7/cores/arduino/WCharacter.h new file mode 100644 index 000000000..79733b50a --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WCharacter.h @@ -0,0 +1,168 @@ +/* + WCharacter.h - Character utility functions for Wiring & Arduino + Copyright (c) 2010 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef Character_h +#define Character_h + +#include + +// WCharacter.h prototypes +inline boolean isAlphaNumeric(int c) __attribute__((always_inline)); +inline boolean isAlpha(int c) __attribute__((always_inline)); +inline boolean isAscii(int c) __attribute__((always_inline)); +inline boolean isWhitespace(int c) __attribute__((always_inline)); +inline boolean isControl(int c) __attribute__((always_inline)); +inline boolean isDigit(int c) __attribute__((always_inline)); +inline boolean isGraph(int c) __attribute__((always_inline)); +inline boolean isLowerCase(int c) __attribute__((always_inline)); +inline boolean isPrintable(int c) __attribute__((always_inline)); +inline boolean isPunct(int c) __attribute__((always_inline)); +inline boolean isSpace(int c) __attribute__((always_inline)); +inline boolean isUpperCase(int c) __attribute__((always_inline)); +inline boolean isHexadecimalDigit(int c) __attribute__((always_inline)); +inline int toAscii(int c) __attribute__((always_inline)); +inline int toLowerCase(int c) __attribute__((always_inline)); +inline int toUpperCase(int c)__attribute__((always_inline)); + + +// Checks for an alphanumeric character. +// It is equivalent to (isalpha(c) || isdigit(c)). +inline boolean isAlphaNumeric(int c) +{ + return ( isalnum(c) == 0 ? false : true); +} + + +// Checks for an alphabetic character. +// It is equivalent to (isupper(c) || islower(c)). +inline boolean isAlpha(int c) +{ + return ( isalpha(c) == 0 ? false : true); +} + + +// Checks whether c is a 7-bit unsigned char value +// that fits into the ASCII character set. +inline boolean isAscii(int c) +{ + return ( isascii (c) == 0 ? false : true); +} + + +// Checks for a blank character, that is, a space or a tab. +inline boolean isWhitespace(int c) +{ + return ( isblank (c) == 0 ? false : true); +} + + +// Checks for a control character. +inline boolean isControl(int c) +{ + return ( iscntrl (c) == 0 ? false : true); +} + + +// Checks for a digit (0 through 9). +inline boolean isDigit(int c) +{ + return ( isdigit (c) == 0 ? false : true); +} + + +// Checks for any printable character except space. +inline boolean isGraph(int c) +{ + return ( isgraph (c) == 0 ? false : true); +} + + +// Checks for a lower-case character. +inline boolean isLowerCase(int c) +{ + return (islower (c) == 0 ? false : true); +} + + +// Checks for any printable character including space. +inline boolean isPrintable(int c) +{ + return ( isprint (c) == 0 ? false : true); +} + + +// Checks for any printable character which is not a space +// or an alphanumeric character. +inline boolean isPunct(int c) +{ + return ( ispunct (c) == 0 ? false : true); +} + + +// Checks for white-space characters. For the avr-libc library, +// these are: space, formfeed ('\f'), newline ('\n'), carriage +// return ('\r'), horizontal tab ('\t'), and vertical tab ('\v'). +inline boolean isSpace(int c) +{ + return ( isspace (c) == 0 ? false : true); +} + + +// Checks for an uppercase letter. +inline boolean isUpperCase(int c) +{ + return ( isupper (c) == 0 ? false : true); +} + + +// Checks for a hexadecimal digits, i.e. one of 0 1 2 3 4 5 6 7 +// 8 9 a b c d e f A B C D E F. +inline boolean isHexadecimalDigit(int c) +{ + return ( isxdigit (c) == 0 ? false : true); +} + + +// Converts c to a 7-bit unsigned char value that fits into the +// ASCII character set, by clearing the high-order bits. +inline int toAscii(int c) +{ + return toascii (c); +} + + +// Warning: +// Many people will be unhappy if you use this function. +// This function will convert accented letters into random +// characters. + +// Converts the letter c to lower case, if possible. +inline int toLowerCase(int c) +{ + return tolower (c); +} + + +// Converts the letter c to upper case, if possible. +inline int toUpperCase(int c) +{ + return toupper (c); +} + +#endif \ No newline at end of file diff --git a/Marlin/Gen7/cores/arduino/WConstants.h b/Marlin/Gen7/cores/arduino/WConstants.h new file mode 100644 index 000000000..3e19ac44a --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WConstants.h @@ -0,0 +1 @@ +#include "wiring.h" diff --git a/Marlin/Gen7/cores/arduino/WInterrupts.c b/Marlin/Gen7/cores/arduino/WInterrupts.c new file mode 100644 index 000000000..6f3f0b130 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WInterrupts.c @@ -0,0 +1,87 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.uniandes.edu.co + + Copyright (c) 2004-05 Hernando Barragan + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 24 November 2006 by David A. Mellis +*/ + +#include +#include +#include +#include +#include + +#include "WConstants.h" +#include "wiring_private.h" + +volatile static voidFuncPtr intFunc[EXTERNAL_NUM_INTERRUPTS]; +// volatile static voidFuncPtr twiIntFunc; + +void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode) +{ + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) + { + intFunc[interruptNum] = userFunc; + + //clear the config for the change settings + EICRA &= ~(B00000011 << (interruptNum * 2)); + + //set our mode. + EICRA |= (mode << (interruptNum * 2)); + + // Enable the interrupt. + EIMSK |= (1 << interruptNum); + } +} + +void detachInterrupt(uint8_t interruptNum) +{ + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) + { + // Disable the interrupt. + EIMSK &= ~(1 << interruptNum); + + intFunc[interruptNum] = 0; + } +} + +ISR(INT0_vect) { + if(intFunc[EXTERNAL_INT_0]) + intFunc[EXTERNAL_INT_0](); +} + +ISR(INT1_vect) { + if(intFunc[EXTERNAL_INT_1]) + intFunc[EXTERNAL_INT_1](); +} + +ISR(INT2_vect) { + if(intFunc[EXTERNAL_INT_2]) + intFunc[EXTERNAL_INT_2](); +} + +/* +SIGNAL(SIG_2WIRE_SERIAL) { + if(twiIntFunc) + twiIntFunc(); +} +*/ + diff --git a/Marlin/Gen7/cores/arduino/WMath.cpp b/Marlin/Gen7/cores/arduino/WMath.cpp new file mode 100644 index 000000000..7a230f542 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WMath.cpp @@ -0,0 +1,60 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.org.co + Copyright (c) 2004-06 Hernando Barragan + Modified 13 August 2006, David A. Mellis for Arduino - http://www.arduino.cc/ + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +extern "C" { + #include "stdlib.h" +} + +void randomSeed(unsigned int seed) +{ + if (seed != 0){ + srandom(seed); + } +} + +long random(long howbig) +{ + if (howbig == 0) { + return 0; + } + return random() % howbig; +} + +long random(long howsmall, long howbig) +{ + if (howsmall >= howbig) { + return howsmall; + } + long diff = howbig - howsmall; + return random(diff) + howsmall; +} + +long map(long x, long in_min, long in_max, long out_min, long out_max) +{ + return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; +} + +unsigned int makeWord(unsigned int w) { return w; } +unsigned int makeWord(unsigned char h, unsigned char l) { return (h << 8) | l; } diff --git a/Marlin/Gen7/cores/arduino/WProgram.h b/Marlin/Gen7/cores/arduino/WProgram.h new file mode 100644 index 000000000..2c7ed16d8 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WProgram.h @@ -0,0 +1,34 @@ +#ifndef WProgram_h +#define WProgram_h + +#include +#include +#include + +#include + +#include "wiring.h" + +#ifdef __cplusplus +#include "WCharacter.h" +#include "WString.h" +#include "HardwareSerial.h" + +uint16_t makeWord(uint16_t w); +uint16_t makeWord(byte h, byte l); + +#define word(...) makeWord(__VA_ARGS__) + +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout = 1000000L); + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration = 0); +void noTone(uint8_t _pin); + +// WMath prototypes +long random(long); +long random(long, long); +void randomSeed(unsigned int); +long map(long, long, long, long, long); +#endif + +#endif diff --git a/Marlin/Gen7/cores/arduino/WString.cpp b/Marlin/Gen7/cores/arduino/WString.cpp new file mode 100644 index 000000000..db5a441dc --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WString.cpp @@ -0,0 +1,443 @@ +/* + WString.cpp - String library for Wiring & Arduino + Copyright (c) 2009-10 Hernando Barragan. All rights reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include +#include "WProgram.h" +#include "WString.h" + + +String::String( const char *value ) +{ + if ( value == NULL ) + value = ""; + getBuffer( _length = strlen( value ) ); + if ( _buffer != NULL ) + strcpy( _buffer, value ); +} + +String::String( const String &value ) +{ + getBuffer( _length = value._length ); + if ( _buffer != NULL ) + strcpy( _buffer, value._buffer ); +} + +String::String( const char value ) +{ + _length = 1; + getBuffer(1); + if ( _buffer != NULL ) { + _buffer[0] = value; + _buffer[1] = 0; + } +} + +String::String( const unsigned char value ) +{ + _length = 1; + getBuffer(1); + if ( _buffer != NULL) { + _buffer[0] = value; + _buffer[1] = 0; + } +} + +String::String( const int value, const int base ) +{ + char buf[33]; + itoa((signed long)value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const unsigned int value, const int base ) +{ + char buf[33]; + ultoa((unsigned long)value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const long value, const int base ) +{ + char buf[33]; + ltoa(value, buf, base); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +String::String( const unsigned long value, const int base ) +{ + char buf[33]; + ultoa(value, buf, 10); + getBuffer( _length = strlen(buf) ); + if ( _buffer != NULL ) + strcpy( _buffer, buf ); +} + +char String::charAt( unsigned int loc ) const +{ + return operator[]( loc ); +} + +void String::setCharAt( unsigned int loc, const char aChar ) +{ + if(_buffer == NULL) return; + if(_length > loc) { + _buffer[loc] = aChar; + } +} + +int String::compareTo( const String &s2 ) const +{ + return strcmp( _buffer, s2._buffer ); +} + +const String & String::concat( const String &s2 ) +{ + return (*this) += s2; +} + +const String & String::operator=( const String &rhs ) +{ + if ( this == &rhs ) + return *this; + + if ( rhs._length > _length ) + { + free(_buffer); + getBuffer( rhs._length ); + } + + if ( _buffer != NULL ) { + _length = rhs._length; + strcpy( _buffer, rhs._buffer ); + } + return *this; +} + +//const String & String::operator+=( const char aChar ) +//{ +// if ( _length == _capacity ) +// doubleBuffer(); +// +// _buffer[ _length++ ] = aChar; +// _buffer[ _length ] = '\0'; +// return *this; +//} + +const String & String::operator+=( const String &other ) +{ + _length += other._length; + if ( _length > _capacity ) + { + char *temp = (char *)realloc(_buffer, _length + 1); + if ( temp != NULL ) { + _buffer = temp; + _capacity = _length; + } else { + _length -= other._length; + return *this; + } + } + strcat( _buffer, other._buffer ); + return *this; +} + + +int String::operator==( const String &rhs ) const +{ + return ( _length == rhs._length && strcmp( _buffer, rhs._buffer ) == 0 ); +} + +int String::operator!=( const String &rhs ) const +{ + return ( _length != rhs.length() || strcmp( _buffer, rhs._buffer ) != 0 ); +} + +int String::operator<( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) < 0; +} + +int String::operator>( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) > 0; +} + +int String::operator<=( const String &rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) <= 0; +} + +int String::operator>=( const String & rhs ) const +{ + return strcmp( _buffer, rhs._buffer ) >= 0; +} + +char & String::operator[]( unsigned int index ) +{ + static char dummy_writable_char; + if (index >= _length || !_buffer) { + dummy_writable_char = 0; + return dummy_writable_char; + } + return _buffer[ index ]; +} + +char String::operator[]( unsigned int index ) const +{ + // need to check for valid index, to do later + return _buffer[ index ]; +} + +boolean String::endsWith( const String &s2 ) const +{ + if ( _length < s2._length ) + return 0; + + return strcmp( &_buffer[ _length - s2._length], s2._buffer ) == 0; +} + +boolean String::equals( const String &s2 ) const +{ + return ( _length == s2._length && strcmp( _buffer,s2._buffer ) == 0 ); +} + +boolean String::equalsIgnoreCase( const String &s2 ) const +{ + if ( this == &s2 ) + return true; //1; + else if ( _length != s2._length ) + return false; //0; + + return strcmp(toLowerCase()._buffer, s2.toLowerCase()._buffer) == 0; +} + +String String::replace( char findChar, char replaceChar ) +{ + if ( _buffer == NULL ) return *this; + String theReturn = _buffer; + char* temp = theReturn._buffer; + while( (temp = strchr( temp, findChar )) != 0 ) + *temp = replaceChar; + + return theReturn; +} + +String String::replace( const String& match, const String& replace ) +{ + if ( _buffer == NULL ) return *this; + String temp = _buffer, newString; + + int loc; + while ( (loc = temp.indexOf( match )) != -1 ) + { + newString += temp.substring( 0, loc ); + newString += replace; + temp = temp.substring( loc + match._length ); + } + newString += temp; + return newString; +} + +int String::indexOf( char temp ) const +{ + return indexOf( temp, 0 ); +} + +int String::indexOf( char ch, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + const char* temp = strchr( &_buffer[fromIndex], ch ); + if ( temp == NULL ) + return -1; + + return temp - _buffer; +} + +int String::indexOf( const String &s2 ) const +{ + return indexOf( s2, 0 ); +} + +int String::indexOf( const String &s2, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + const char *theFind = strstr( &_buffer[ fromIndex ], s2._buffer ); + + if ( theFind == NULL ) + return -1; + + return theFind - _buffer; // pointer subtraction +} + +int String::lastIndexOf( char theChar ) const +{ + return lastIndexOf( theChar, _length - 1 ); +} + +int String::lastIndexOf( char ch, unsigned int fromIndex ) const +{ + if ( fromIndex >= _length ) + return -1; + + char tempchar = _buffer[fromIndex + 1]; + _buffer[fromIndex + 1] = '\0'; + char* temp = strrchr( _buffer, ch ); + _buffer[fromIndex + 1] = tempchar; + + if ( temp == NULL ) + return -1; + + return temp - _buffer; +} + +int String::lastIndexOf( const String &s2 ) const +{ + return lastIndexOf( s2, _length - s2._length ); +} + +int String::lastIndexOf( const String &s2, unsigned int fromIndex ) const +{ + // check for empty strings + if ( s2._length == 0 || s2._length - 1 > fromIndex || fromIndex >= _length ) + return -1; + + // matching first character + char temp = s2[ 0 ]; + + for ( int i = fromIndex; i >= 0; i-- ) + { + if ( _buffer[ i ] == temp && (*this).substring( i, i + s2._length ).equals( s2 ) ) + return i; + } + return -1; +} + +boolean String::startsWith( const String &s2 ) const +{ + if ( _length < s2._length ) + return 0; + + return startsWith( s2, 0 ); +} + +boolean String::startsWith( const String &s2, unsigned int offset ) const +{ + if ( offset > _length - s2._length ) + return 0; + + return strncmp( &_buffer[offset], s2._buffer, s2._length ) == 0; +} + +String String::substring( unsigned int left ) const +{ + return substring( left, _length ); +} + +String String::substring( unsigned int left, unsigned int right ) const +{ + if ( left > right ) + { + int temp = right; + right = left; + left = temp; + } + + if ( right > _length ) + { + right = _length; + } + + char temp = _buffer[ right ]; // save the replaced character + _buffer[ right ] = '\0'; + String outPut = ( _buffer + left ); // pointer arithmetic + _buffer[ right ] = temp; //restore character + return outPut; +} + +String String::toLowerCase() const +{ + String temp = _buffer; + + for ( unsigned int i = 0; i < _length; i++ ) + temp._buffer[ i ] = (char)tolower( temp._buffer[ i ] ); + return temp; +} + +String String::toUpperCase() const +{ + String temp = _buffer; + + for ( unsigned int i = 0; i < _length; i++ ) + temp._buffer[ i ] = (char)toupper( temp._buffer[ i ] ); + return temp; +} + +String String::trim() const +{ + if ( _buffer == NULL ) return *this; + String temp = _buffer; + unsigned int i,j; + + for ( i = 0; i < _length; i++ ) + { + if ( !isspace(_buffer[i]) ) + break; + } + + for ( j = temp._length - 1; j > i; j-- ) + { + if ( !isspace(_buffer[j]) ) + break; + } + + return temp.substring( i, j + 1); +} + +void String::getBytes(unsigned char *buf, unsigned int bufsize) +{ + if (!bufsize || !buf) return; + unsigned int len = bufsize - 1; + if (len > _length) len = _length; + strncpy((char *)buf, _buffer, len); + buf[len] = 0; +} + +void String::toCharArray(char *buf, unsigned int bufsize) +{ + if (!bufsize || !buf) return; + unsigned int len = bufsize - 1; + if (len > _length) len = _length; + strncpy(buf, _buffer, len); + buf[len] = 0; +} + + +long String::toInt() { + return atol(_buffer); +} diff --git a/Marlin/Gen7/cores/arduino/WString.h b/Marlin/Gen7/cores/arduino/WString.h new file mode 100644 index 000000000..cadddb947 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/WString.h @@ -0,0 +1,112 @@ +/* + WString.h - String library for Wiring & Arduino + Copyright (c) 2009-10 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef String_h +#define String_h + +//#include "WProgram.h" +#include +#include +#include + +class String +{ + public: + // constructors + String( const char *value = "" ); + String( const String &value ); + String( const char ); + String( const unsigned char ); + String( const int, const int base=10); + String( const unsigned int, const int base=10 ); + String( const long, const int base=10 ); + String( const unsigned long, const int base=10 ); + ~String() { free(_buffer); _length = _capacity = 0;} //added _length = _capacity = 0; + + // operators + const String & operator = ( const String &rhs ); + const String & operator +=( const String &rhs ); + //const String & operator +=( const char ); + int operator ==( const String &rhs ) const; + int operator !=( const String &rhs ) const; + int operator < ( const String &rhs ) const; + int operator > ( const String &rhs ) const; + int operator <=( const String &rhs ) const; + int operator >=( const String &rhs ) const; + char operator []( unsigned int index ) const; + char& operator []( unsigned int index ); + //operator const char *() const { return _buffer; } + + // general methods + char charAt( unsigned int index ) const; + int compareTo( const String &anotherString ) const; + unsigned char endsWith( const String &suffix ) const; + unsigned char equals( const String &anObject ) const; + unsigned char equalsIgnoreCase( const String &anotherString ) const; + int indexOf( char ch ) const; + int indexOf( char ch, unsigned int fromIndex ) const; + int indexOf( const String &str ) const; + int indexOf( const String &str, unsigned int fromIndex ) const; + int lastIndexOf( char ch ) const; + int lastIndexOf( char ch, unsigned int fromIndex ) const; + int lastIndexOf( const String &str ) const; + int lastIndexOf( const String &str, unsigned int fromIndex ) const; + const unsigned int length( ) const { return _length; } + void setCharAt(unsigned int index, const char ch); + unsigned char startsWith( const String &prefix ) const; + unsigned char startsWith( const String &prefix, unsigned int toffset ) const; + String substring( unsigned int beginIndex ) const; + String substring( unsigned int beginIndex, unsigned int endIndex ) const; + String toLowerCase( ) const; + String toUpperCase( ) const; + String trim( ) const; + void getBytes(unsigned char *buf, unsigned int bufsize); + void toCharArray(char *buf, unsigned int bufsize); + long toInt( ); + const String& concat( const String &str ); + String replace( char oldChar, char newChar ); + String replace( const String& match, const String& replace ); + friend String operator + ( String lhs, const String &rhs ); + + protected: + char *_buffer; // the actual char array + unsigned int _capacity; // the array length minus one (for the '\0') + unsigned int _length; // the String length (not counting the '\0') + + void getBuffer(unsigned int maxStrLen); + + private: + +}; + +// allocate buffer space +inline void String::getBuffer(unsigned int maxStrLen) +{ + _capacity = maxStrLen; + _buffer = (char *) malloc(_capacity + 1); + if (_buffer == NULL) _length = _capacity = 0; +} + +inline String operator+( String lhs, const String &rhs ) +{ + return lhs += rhs; +} + + +#endif diff --git a/Marlin/Gen7/cores/arduino/binary.h b/Marlin/Gen7/cores/arduino/binary.h new file mode 100644 index 000000000..af1498033 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/binary.h @@ -0,0 +1,515 @@ +#ifndef Binary_h +#define Binary_h + +#define B0 0 +#define B00 0 +#define B000 0 +#define B0000 0 +#define B00000 0 +#define B000000 0 +#define B0000000 0 +#define B00000000 0 +#define B1 1 +#define B01 1 +#define B001 1 +#define B0001 1 +#define B00001 1 +#define B000001 1 +#define B0000001 1 +#define B00000001 1 +#define B10 2 +#define B010 2 +#define B0010 2 +#define B00010 2 +#define B000010 2 +#define B0000010 2 +#define B00000010 2 +#define B11 3 +#define B011 3 +#define B0011 3 +#define B00011 3 +#define B000011 3 +#define B0000011 3 +#define B00000011 3 +#define B100 4 +#define B0100 4 +#define B00100 4 +#define B000100 4 +#define B0000100 4 +#define B00000100 4 +#define B101 5 +#define B0101 5 +#define B00101 5 +#define B000101 5 +#define B0000101 5 +#define B00000101 5 +#define B110 6 +#define B0110 6 +#define B00110 6 +#define B000110 6 +#define B0000110 6 +#define B00000110 6 +#define B111 7 +#define B0111 7 +#define B00111 7 +#define B000111 7 +#define B0000111 7 +#define B00000111 7 +#define B1000 8 +#define B01000 8 +#define B001000 8 +#define B0001000 8 +#define B00001000 8 +#define B1001 9 +#define B01001 9 +#define B001001 9 +#define B0001001 9 +#define B00001001 9 +#define B1010 10 +#define B01010 10 +#define B001010 10 +#define B0001010 10 +#define B00001010 10 +#define B1011 11 +#define B01011 11 +#define B001011 11 +#define B0001011 11 +#define B00001011 11 +#define B1100 12 +#define B01100 12 +#define B001100 12 +#define B0001100 12 +#define B00001100 12 +#define B1101 13 +#define B01101 13 +#define B001101 13 +#define B0001101 13 +#define B00001101 13 +#define B1110 14 +#define B01110 14 +#define B001110 14 +#define B0001110 14 +#define B00001110 14 +#define B1111 15 +#define B01111 15 +#define B001111 15 +#define B0001111 15 +#define B00001111 15 +#define B10000 16 +#define B010000 16 +#define B0010000 16 +#define B00010000 16 +#define B10001 17 +#define B010001 17 +#define B0010001 17 +#define B00010001 17 +#define B10010 18 +#define B010010 18 +#define B0010010 18 +#define B00010010 18 +#define B10011 19 +#define B010011 19 +#define B0010011 19 +#define B00010011 19 +#define B10100 20 +#define B010100 20 +#define B0010100 20 +#define B00010100 20 +#define B10101 21 +#define B010101 21 +#define B0010101 21 +#define B00010101 21 +#define B10110 22 +#define B010110 22 +#define B0010110 22 +#define B00010110 22 +#define B10111 23 +#define B010111 23 +#define B0010111 23 +#define B00010111 23 +#define B11000 24 +#define B011000 24 +#define B0011000 24 +#define B00011000 24 +#define B11001 25 +#define B011001 25 +#define B0011001 25 +#define B00011001 25 +#define B11010 26 +#define B011010 26 +#define B0011010 26 +#define B00011010 26 +#define B11011 27 +#define B011011 27 +#define B0011011 27 +#define B00011011 27 +#define B11100 28 +#define B011100 28 +#define B0011100 28 +#define B00011100 28 +#define B11101 29 +#define B011101 29 +#define B0011101 29 +#define B00011101 29 +#define B11110 30 +#define B011110 30 +#define B0011110 30 +#define B00011110 30 +#define B11111 31 +#define B011111 31 +#define B0011111 31 +#define B00011111 31 +#define B100000 32 +#define B0100000 32 +#define B00100000 32 +#define B100001 33 +#define B0100001 33 +#define B00100001 33 +#define B100010 34 +#define B0100010 34 +#define B00100010 34 +#define B100011 35 +#define B0100011 35 +#define B00100011 35 +#define B100100 36 +#define B0100100 36 +#define B00100100 36 +#define B100101 37 +#define B0100101 37 +#define B00100101 37 +#define B100110 38 +#define B0100110 38 +#define B00100110 38 +#define B100111 39 +#define B0100111 39 +#define B00100111 39 +#define B101000 40 +#define B0101000 40 +#define B00101000 40 +#define B101001 41 +#define B0101001 41 +#define B00101001 41 +#define B101010 42 +#define B0101010 42 +#define B00101010 42 +#define B101011 43 +#define B0101011 43 +#define B00101011 43 +#define B101100 44 +#define B0101100 44 +#define B00101100 44 +#define B101101 45 +#define B0101101 45 +#define B00101101 45 +#define B101110 46 +#define B0101110 46 +#define B00101110 46 +#define B101111 47 +#define B0101111 47 +#define B00101111 47 +#define B110000 48 +#define B0110000 48 +#define B00110000 48 +#define B110001 49 +#define B0110001 49 +#define B00110001 49 +#define B110010 50 +#define B0110010 50 +#define B00110010 50 +#define B110011 51 +#define B0110011 51 +#define B00110011 51 +#define B110100 52 +#define B0110100 52 +#define B00110100 52 +#define B110101 53 +#define B0110101 53 +#define B00110101 53 +#define B110110 54 +#define B0110110 54 +#define B00110110 54 +#define B110111 55 +#define B0110111 55 +#define B00110111 55 +#define B111000 56 +#define B0111000 56 +#define B00111000 56 +#define B111001 57 +#define B0111001 57 +#define B00111001 57 +#define B111010 58 +#define B0111010 58 +#define B00111010 58 +#define B111011 59 +#define B0111011 59 +#define B00111011 59 +#define B111100 60 +#define B0111100 60 +#define B00111100 60 +#define B111101 61 +#define B0111101 61 +#define B00111101 61 +#define B111110 62 +#define B0111110 62 +#define B00111110 62 +#define B111111 63 +#define B0111111 63 +#define B00111111 63 +#define B1000000 64 +#define B01000000 64 +#define B1000001 65 +#define B01000001 65 +#define B1000010 66 +#define B01000010 66 +#define B1000011 67 +#define B01000011 67 +#define B1000100 68 +#define B01000100 68 +#define B1000101 69 +#define B01000101 69 +#define B1000110 70 +#define B01000110 70 +#define B1000111 71 +#define B01000111 71 +#define B1001000 72 +#define B01001000 72 +#define B1001001 73 +#define B01001001 73 +#define B1001010 74 +#define B01001010 74 +#define B1001011 75 +#define B01001011 75 +#define B1001100 76 +#define B01001100 76 +#define B1001101 77 +#define B01001101 77 +#define B1001110 78 +#define B01001110 78 +#define B1001111 79 +#define B01001111 79 +#define B1010000 80 +#define B01010000 80 +#define B1010001 81 +#define B01010001 81 +#define B1010010 82 +#define B01010010 82 +#define B1010011 83 +#define B01010011 83 +#define B1010100 84 +#define B01010100 84 +#define B1010101 85 +#define B01010101 85 +#define B1010110 86 +#define B01010110 86 +#define B1010111 87 +#define B01010111 87 +#define B1011000 88 +#define B01011000 88 +#define B1011001 89 +#define B01011001 89 +#define B1011010 90 +#define B01011010 90 +#define B1011011 91 +#define B01011011 91 +#define B1011100 92 +#define B01011100 92 +#define B1011101 93 +#define B01011101 93 +#define B1011110 94 +#define B01011110 94 +#define B1011111 95 +#define B01011111 95 +#define B1100000 96 +#define B01100000 96 +#define B1100001 97 +#define B01100001 97 +#define B1100010 98 +#define B01100010 98 +#define B1100011 99 +#define B01100011 99 +#define B1100100 100 +#define B01100100 100 +#define B1100101 101 +#define B01100101 101 +#define B1100110 102 +#define B01100110 102 +#define B1100111 103 +#define B01100111 103 +#define B1101000 104 +#define B01101000 104 +#define B1101001 105 +#define B01101001 105 +#define B1101010 106 +#define B01101010 106 +#define B1101011 107 +#define B01101011 107 +#define B1101100 108 +#define B01101100 108 +#define B1101101 109 +#define B01101101 109 +#define B1101110 110 +#define B01101110 110 +#define B1101111 111 +#define B01101111 111 +#define B1110000 112 +#define B01110000 112 +#define B1110001 113 +#define B01110001 113 +#define B1110010 114 +#define B01110010 114 +#define B1110011 115 +#define B01110011 115 +#define B1110100 116 +#define B01110100 116 +#define B1110101 117 +#define B01110101 117 +#define B1110110 118 +#define B01110110 118 +#define B1110111 119 +#define B01110111 119 +#define B1111000 120 +#define B01111000 120 +#define B1111001 121 +#define B01111001 121 +#define B1111010 122 +#define B01111010 122 +#define B1111011 123 +#define B01111011 123 +#define B1111100 124 +#define B01111100 124 +#define B1111101 125 +#define B01111101 125 +#define B1111110 126 +#define B01111110 126 +#define B1111111 127 +#define B01111111 127 +#define B10000000 128 +#define B10000001 129 +#define B10000010 130 +#define B10000011 131 +#define B10000100 132 +#define B10000101 133 +#define B10000110 134 +#define B10000111 135 +#define B10001000 136 +#define B10001001 137 +#define B10001010 138 +#define B10001011 139 +#define B10001100 140 +#define B10001101 141 +#define B10001110 142 +#define B10001111 143 +#define B10010000 144 +#define B10010001 145 +#define B10010010 146 +#define B10010011 147 +#define B10010100 148 +#define B10010101 149 +#define B10010110 150 +#define B10010111 151 +#define B10011000 152 +#define B10011001 153 +#define B10011010 154 +#define B10011011 155 +#define B10011100 156 +#define B10011101 157 +#define B10011110 158 +#define B10011111 159 +#define B10100000 160 +#define B10100001 161 +#define B10100010 162 +#define B10100011 163 +#define B10100100 164 +#define B10100101 165 +#define B10100110 166 +#define B10100111 167 +#define B10101000 168 +#define B10101001 169 +#define B10101010 170 +#define B10101011 171 +#define B10101100 172 +#define B10101101 173 +#define B10101110 174 +#define B10101111 175 +#define B10110000 176 +#define B10110001 177 +#define B10110010 178 +#define B10110011 179 +#define B10110100 180 +#define B10110101 181 +#define B10110110 182 +#define B10110111 183 +#define B10111000 184 +#define B10111001 185 +#define B10111010 186 +#define B10111011 187 +#define B10111100 188 +#define B10111101 189 +#define B10111110 190 +#define B10111111 191 +#define B11000000 192 +#define B11000001 193 +#define B11000010 194 +#define B11000011 195 +#define B11000100 196 +#define B11000101 197 +#define B11000110 198 +#define B11000111 199 +#define B11001000 200 +#define B11001001 201 +#define B11001010 202 +#define B11001011 203 +#define B11001100 204 +#define B11001101 205 +#define B11001110 206 +#define B11001111 207 +#define B11010000 208 +#define B11010001 209 +#define B11010010 210 +#define B11010011 211 +#define B11010100 212 +#define B11010101 213 +#define B11010110 214 +#define B11010111 215 +#define B11011000 216 +#define B11011001 217 +#define B11011010 218 +#define B11011011 219 +#define B11011100 220 +#define B11011101 221 +#define B11011110 222 +#define B11011111 223 +#define B11100000 224 +#define B11100001 225 +#define B11100010 226 +#define B11100011 227 +#define B11100100 228 +#define B11100101 229 +#define B11100110 230 +#define B11100111 231 +#define B11101000 232 +#define B11101001 233 +#define B11101010 234 +#define B11101011 235 +#define B11101100 236 +#define B11101101 237 +#define B11101110 238 +#define B11101111 239 +#define B11110000 240 +#define B11110001 241 +#define B11110010 242 +#define B11110011 243 +#define B11110100 244 +#define B11110101 245 +#define B11110110 246 +#define B11110111 247 +#define B11111000 248 +#define B11111001 249 +#define B11111010 250 +#define B11111011 251 +#define B11111100 252 +#define B11111101 253 +#define B11111110 254 +#define B11111111 255 + +#endif diff --git a/Marlin/Gen7/cores/arduino/main.cpp b/Marlin/Gen7/cores/arduino/main.cpp new file mode 100644 index 000000000..cc6e81d90 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/main.cpp @@ -0,0 +1,14 @@ +#include + +int main(void) +{ + init(); + + setup(); + + for (;;) + loop(); + + return 0; +} + diff --git a/Marlin/Gen7/cores/arduino/main.cxx b/Marlin/Gen7/cores/arduino/main.cxx new file mode 100644 index 000000000..52351e4c9 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/main.cxx @@ -0,0 +1,12 @@ +int main(void) +{ + init(); + + setup(); + + for (;;) + loop(); + + return 0; +} + diff --git a/Marlin/Gen7/cores/arduino/pins_arduino.c b/Marlin/Gen7/cores/arduino/pins_arduino.c new file mode 100644 index 000000000..ccb88fe98 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/pins_arduino.c @@ -0,0 +1,200 @@ +/* + pins_arduino.c - pin definitions for the Arduino board + Part of Arduino / Wiring Lite + + Copyright (c) 2005 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: pins_arduino.c 254 2007-04-20 23:17:38Z mellis $ +*/ + +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +// On the Sanguino board, digital pins are also used +// for the analog output (software PWM). Analog input +// pins are a separate set. + +// ATMEL ATMEGA644P / SANGUINO +// +// +---\/---+ +// INT0 (D 0) PB0 1| |40 PA0 (AI 0 / D31) +// INT1 (D 1) PB1 2| |39 PA1 (AI 1 / D30) +// INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) +// PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) +// PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) +// MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) +// MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) +// SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) +// RST 9| |32 AREF +// VCC 10| |31 GND +// GND 11| |30 AVCC +// XTAL2 12| |29 PC7 (D 23) +// XTAL1 13| |28 PC6 (D 22) +// RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI +// TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO +// RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS +// TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK +// PWM (D 12) PD4 18| |23 PC1 (D 17) SDA +// PWM (D 13) PD5 19| |22 PC0 (D 16) SCL +// PWM (D 14) PD6 20| |21 PD7 (D 15) PWM +// +--------+ +// + +#define PA 1 +#define PB 2 +#define PC 3 +#define PD 4 + +// these arrays map port names (e.g. port B) to the +// appropriate addresses for various functions (e.g. reading +// and writing) +const uint8_t PROGMEM port_to_mode_PGM[] = +{ + NOT_A_PORT, + &DDRA, + &DDRB, + &DDRC, + &DDRD, +}; + +const uint8_t PROGMEM port_to_output_PGM[] = +{ + NOT_A_PORT, + &PORTA, + &PORTB, + &PORTC, + &PORTD, +}; + +const uint8_t PROGMEM port_to_input_PGM[] = +{ + NOT_A_PORT, + &PINA, + &PINB, + &PINC, + &PIND, +}; + +const uint8_t PROGMEM digital_pin_to_port_PGM[] = +{ + PB, /* 0 */ + PB, + PB, + PB, + PB, + PB, + PB, + PB, + PD, /* 8 */ + PD, + PD, + PD, + PD, + PD, + PD, + PD, + PC, /* 16 */ + PC, + PC, + PC, + PC, + PC, + PC, + PC, + PA, /* 24 */ + PA, + PA, + PA, + PA, + PA, + PA, + PA /* 31 */ +}; + +const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = +{ + _BV(0), /* 0, port B */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(0), /* 8, port D */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(0), /* 16, port C */ + _BV(1), + _BV(2), + _BV(3), + _BV(4), + _BV(5), + _BV(6), + _BV(7), + _BV(7), /* 24, port A */ + _BV(6), + _BV(5), + _BV(4), + _BV(3), + _BV(2), + _BV(1), + _BV(0) +}; + +const uint8_t PROGMEM digital_pin_to_timer_PGM[] = +{ + NOT_ON_TIMER, /* 0 - PB0 */ + NOT_ON_TIMER, /* 1 - PB1 */ + NOT_ON_TIMER, /* 2 - PB2 */ + TIMER0A, /* 3 - PB3 */ + TIMER0B, /* 4 - PB4 */ + NOT_ON_TIMER, /* 5 - PB5 */ + NOT_ON_TIMER, /* 6 - PB6 */ + NOT_ON_TIMER, /* 7 - PB7 */ + NOT_ON_TIMER, /* 8 - PD0 */ + NOT_ON_TIMER, /* 9 - PD1 */ + NOT_ON_TIMER, /* 10 - PD2 */ + NOT_ON_TIMER, /* 11 - PD3 */ + TIMER1B, /* 12 - PD4 */ + TIMER1A, /* 13 - PD5 */ + TIMER2B, /* 14 - PD6 */ + TIMER2A, /* 15 - PD7 */ + NOT_ON_TIMER, /* 16 - PC0 */ + NOT_ON_TIMER, /* 17 - PC1 */ + NOT_ON_TIMER, /* 18 - PC2 */ + NOT_ON_TIMER, /* 19 - PC3 */ + NOT_ON_TIMER, /* 20 - PC4 */ + NOT_ON_TIMER, /* 21 - PC5 */ + NOT_ON_TIMER, /* 22 - PC6 */ + NOT_ON_TIMER, /* 23 - PC7 */ + NOT_ON_TIMER, /* 24 - PA0 */ + NOT_ON_TIMER, /* 25 - PA1 */ + NOT_ON_TIMER, /* 26 - PA2 */ + NOT_ON_TIMER, /* 27 - PA3 */ + NOT_ON_TIMER, /* 28 - PA4 */ + NOT_ON_TIMER, /* 29 - PA5 */ + NOT_ON_TIMER, /* 30 - PA6 */ + NOT_ON_TIMER /* 31 - PA7 */ +}; diff --git a/Marlin/Gen7/cores/arduino/pins_arduino.h b/Marlin/Gen7/cores/arduino/pins_arduino.h new file mode 100644 index 000000000..e0b7add86 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/pins_arduino.h @@ -0,0 +1,65 @@ +/* + pins_arduino.h - Pin definition functions for Arduino + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2007 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 249 2007-02-03 16:52:51Z mellis $ +*/ + +#ifndef Pins_Arduino_h +#define Pins_Arduino_h + +#include + +#define NOT_A_PIN 0 +#define NOT_A_PORT 0 + +#define NOT_ON_TIMER 0 +#define TIMER0A 1 +#define TIMER0B 2 +#define TIMER1A 3 +#define TIMER1B 4 +#define TIMER2 5 +#define TIMER2A 6 +#define TIMER2B 7 + +extern const uint8_t PROGMEM port_to_mode_PGM[]; +extern const uint8_t PROGMEM port_to_input_PGM[]; +extern const uint8_t PROGMEM port_to_output_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_port_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; + +// Get the bit location within the hardware port of the given virtual pin. +// This comes from the pins_*.c file for the active board configuration. +// +// These perform slightly better as macros compared to inline functions +// +#define digitalPinToPort(P) ( pgm_read_byte( digital_pin_to_port_PGM + (P) ) ) +#define digitalPinToBitMask(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM + (P) ) ) +#define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) ) +#define analogInPinToBit(P) (P) +#define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) ) +#define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) ) +#define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_mode_PGM + (P))) ) + +#endif diff --git a/Marlin/Gen7/cores/arduino/wiring.c b/Marlin/Gen7/cores/arduino/wiring.c new file mode 100644 index 000000000..1a102ae0f --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring.c @@ -0,0 +1,203 @@ +/* + wiring.c - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 388 2008-03-08 22:05:23Z mellis $ +*/ + +#include "wiring_private.h" + +volatile unsigned long timer0_overflow_count = 0; +volatile unsigned long timer0_clock_cycles = 0; +volatile unsigned long timer0_millis = 0; + +SIGNAL(TIMER0_OVF_vect) +{ + timer0_overflow_count++; + // timer 0 prescale factor is 64 and the timer overflows at 256 + timer0_clock_cycles += 64UL * 256UL; + while (timer0_clock_cycles > clockCyclesPerMicrosecond() * 1000UL) { + timer0_clock_cycles -= clockCyclesPerMicrosecond() * 1000UL; + timer0_millis++; + } +} + +unsigned long millis() +{ + unsigned long m; + uint8_t oldSREG = SREG; + + // disable interrupts while we read timer0_millis or we might get an + // inconsistent value (e.g. in the middle of the timer0_millis++) + cli(); + m = timer0_millis; + SREG = oldSREG; + + return m; +} + +unsigned long micros() { + unsigned long m, t; + uint8_t oldSREG = SREG; + + cli(); + t = TCNT0; + +#ifdef TIFR0 + if ((TIFR0 & _BV(TOV0)) && (t == 0)) + t = 256; +#else + if ((TIFR & _BV(TOV0)) && (t == 0)) + t = 256; +#endif + + m = timer0_overflow_count; + SREG = oldSREG; + + return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond()); +} + +void delay(unsigned long ms) +{ + unsigned long start = millis(); + + while (millis() - start <= ms) + ; +} + +/* Delay for the given number of microseconds. Assumes a 8 or 16 MHz clock. + * Disables interrupts, which will disrupt the millis() function if used + * too frequently. */ +void delayMicroseconds(unsigned int us) +{ + uint8_t oldSREG; + + // calling avrlib's delay_us() function with low values (e.g. 1 or + // 2 microseconds) gives delays longer than desired. + //delay_us(us); + +#if F_CPU >= 16000000L + // for the 16 MHz clock on most Arduino boards + + // for a one-microsecond delay, simply return. the overhead + // of the function call yields a delay of approximately 1 1/8 us. + if (--us == 0) + return; + + // the following loop takes a quarter of a microsecond (4 cycles) + // per iteration, so execute it four times for each microsecond of + // delay requested. + us <<= 2; + + // account for the time taken in the preceeding commands. + us -= 2; +#else + // for the 8 MHz internal clock on the ATmega168 + + // for a one- or two-microsecond delay, simply return. the overhead of + // the function calls takes more than two microseconds. can't just + // subtract two, since us is unsigned; we'd overflow. + if (--us == 0) + return; + if (--us == 0) + return; + + // the following loop takes half of a microsecond (4 cycles) + // per iteration, so execute it twice for each microsecond of + // delay requested. + us <<= 1; + + // partially compensate for the time taken by the preceeding commands. + // we can't subtract any more than this or we'd overflow w/ small delays. + us--; +#endif + + // disable interrupts, otherwise the timer 0 overflow interrupt that + // tracks milliseconds will make us delay longer than we want. + oldSREG = SREG; + cli(); + + // busy wait + __asm__ __volatile__ ( + "1: sbiw %0,1" "\n\t" // 2 cycles + "brne 1b" : "=w" (us) : "0" (us) // 2 cycles + ); + + // reenable interrupts. + SREG = oldSREG; +} + +void init() +{ + // this needs to be called before setup() or some functions won't + // work there + sei(); + + // on the ATmega168, timer 0 is also used for fast hardware pwm + // (using phase-correct PWM would mean that timer 0 overflowed half as often + // resulting in different millis() behavior on the ATmega8 and ATmega168) + sbi(TCCR0A, WGM01); + sbi(TCCR0A, WGM00); + + // set timer 0 prescale factor to 64 + sbi(TCCR0B, CS01); + sbi(TCCR0B, CS00); + + // enable timer 0 overflow interrupt + sbi(TIMSK0, TOIE0); + + // timers 1 and 2 are used for phase-correct hardware pwm + // this is better for motors as it ensures an even waveform + // note, however, that fast pwm mode can achieve a frequency of up + // 8 MHz (with a 16 MHz clock) at 50% duty cycle + + // set timer 1 prescale factor to 64 + sbi(TCCR1B, CS11); + sbi(TCCR1B, CS10); + + // put timer 1 in 8-bit phase correct pwm mode + sbi(TCCR1A, WGM10); + + // set timer 2 prescale factor to 64 + sbi(TCCR2B, CS22); + + // configure timer 2 for phase correct pwm (8-bit) + sbi(TCCR2A, WGM20); + + // set a2d prescale factor to 128 + // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. + // XXX: this will not work properly for other clock speeds, and + // this code should use F_CPU to determine the prescale factor. + sbi(ADCSRA, ADPS2); + sbi(ADCSRA, ADPS1); + sbi(ADCSRA, ADPS0); + + // enable a2d conversions + sbi(ADCSRA, ADEN); + + // the bootloader connects pins 0 and 1 to the USART; disconnect them + // here so they can be used as normal digital i/o; they will be + // reconnected in Serial.begin() + UCSR0B = 0; + #if defined(__AVR_ATmega644P__) + //TODO: test to see if disabling this helps? + //UCSR1B = 0; + #endif +} diff --git a/Marlin/Gen7/cores/arduino/wiring.h b/Marlin/Gen7/cores/arduino/wiring.h new file mode 100644 index 000000000..6309a364f --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring.h @@ -0,0 +1,133 @@ +/* + wiring.h - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 387 2008-03-08 21:30:00Z mellis $ +*/ + +#ifndef Wiring_h +#define Wiring_h + +#include +#include "binary.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#define HIGH 0x1 +#define LOW 0x0 + +#define INPUT 0x0 +#define OUTPUT 0x1 + +#define true 0x1 +#define false 0x0 + +#define PI 3.14159265 +#define HALF_PI 1.57079 +#define TWO_PI 6.283185 +#define DEG_TO_RAD 0.01745329 +#define RAD_TO_DEG 57.2957786 + +#define SERIAL 0x0 +#define DISPLAY 0x1 + +#define LSBFIRST 0 +#define MSBFIRST 1 + +#define CHANGE 1 +#define FALLING 2 +#define RISING 3 + +#define INTERNAL 3 +#define DEFAULT 1 +#define EXTERNAL 0 + +// undefine stdlib's abs if encountered +#ifdef abs +#undef abs +#endif + +#define min(a,b) ((a)<(b)?(a):(b)) +#define max(a,b) ((a)>(b)?(a):(b)) +#define abs(x) ((x)>0?(x):-(x)) +#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) +#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) +#define radians(deg) ((deg)*DEG_TO_RAD) +#define degrees(rad) ((rad)*RAD_TO_DEG) +#define sq(x) ((x)*(x)) + +#define interrupts() sei() +#define noInterrupts() cli() + +#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) +#define clockCyclesToMicroseconds(a) ( (a) / clockCyclesPerMicrosecond() ) +#define microsecondsToClockCycles(a) ( (a) * clockCyclesPerMicrosecond() ) + +#define lowByte(w) ((w) & 0xff) +#define highByte(w) ((w) >> 8) + +#define bitRead(value, bit) (((value) >> (bit)) & 0x01) +#define bitSet(value, bit) ((value) |= (1UL << (bit))) +#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) +#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) + +typedef unsigned int word; + +#define bit(b) (1 << (b)) + +typedef uint8_t boolean; +typedef uint8_t byte; + +void init(void); + +void pinMode(uint8_t, uint8_t); +void digitalWrite(uint8_t, uint8_t); +int digitalRead(uint8_t); +int analogRead(uint8_t); +void analogReference(uint8_t mode); +void analogWrite(uint8_t, int); + +void beginSerial(uint8_t, long); +void serialWrite(uint8_t, unsigned char); +int serialAvailable(uint8_t); +int serialRead(uint8_t); +void serialFlush(uint8_t); + +unsigned long millis(void); +unsigned long micros(void); +void delay(unsigned long); +void delayMicroseconds(unsigned int us); +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, byte val); + +void attachInterrupt(uint8_t, void (*)(void), int mode); +void detachInterrupt(uint8_t); + +void setup(void); +void loop(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Gen7/cores/arduino/wiring_analog.c b/Marlin/Gen7/cores/arduino/wiring_analog.c new file mode 100644 index 000000000..b98bb1a19 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring_analog.c @@ -0,0 +1,116 @@ +/* + wiring_analog.c - analog input and output + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +uint8_t analog_reference = DEFAULT; + +void analogReference(uint8_t mode) +{ + // can't actually set the register here because the default setting + // will connect AVCC and the AREF pin, which would cause a short if + // there's something connected to AREF. + analog_reference = mode; +} + +int analogRead(uint8_t pin) +{ + uint8_t low, high, ch = analogInPinToBit(pin); + + // set the analog reference (high two bits of ADMUX) and select the + // channel (low 4 bits). this also sets ADLAR (left-adjust result) + // to 0 (the default). + // the final AND is to clear the pos/neg reference bits + ADMUX = ((analog_reference << 6) | (pin & 0x0f)) & B11000111; + + // without a delay, we seem to read from the wrong channel + //delay(1); + + // start the conversion + sbi(ADCSRA, ADSC); + + // ADSC is cleared when the conversion finishes + while (bit_is_set(ADCSRA, ADSC)); + + // we have to read ADCL first; doing so locks both ADCL + // and ADCH until ADCH is read. reading ADCL second would + // cause the results of each conversion to be discarded, + // as ADCL and ADCH would be locked when it completed. + low = ADCL; + high = ADCH; + + // combine the two bytes + return (high << 8) | low; +} + +// Right now, PWM output only works on the pins with +// hardware support. These are defined in the appropriate +// pins_*.c file. For the rest of the pins, we default +// to digital output. +void analogWrite(uint8_t pin, int val) +{ + // We need to make sure the PWM output is enabled for those pins + // that support it, as we turn it off when digitally reading or + // writing with them. Also, make sure the pin is in output mode + // for consistenty with Wiring, which doesn't require a pinMode + // call for the analog output pins. + pinMode(pin, OUTPUT); + + if (digitalPinToTimer(pin) == TIMER1A) { + // connect pwm to pin on timer 1, channel A + sbi(TCCR1A, COM1A1); + // set pwm duty + OCR1A = val; + } else if (digitalPinToTimer(pin) == TIMER1B) { + // connect pwm to pin on timer 1, channel B + sbi(TCCR1A, COM1B1); + // set pwm duty + OCR1B = val; + } else if (digitalPinToTimer(pin) == TIMER0A) { + // connect pwm to pin on timer 0, channel A + sbi(TCCR0A, COM0A1); + // set pwm duty + OCR0A = val; + } else if (digitalPinToTimer(pin) == TIMER0B) { + // connect pwm to pin on timer 0, channel B + sbi(TCCR0A, COM0B1); + // set pwm duty + OCR0B = val; + } else if (digitalPinToTimer(pin) == TIMER2A) { + // connect pwm to pin on timer 2, channel A + sbi(TCCR2A, COM2A1); + // set pwm duty + OCR2A = val; + } else if (digitalPinToTimer(pin) == TIMER2B) { + // connect pwm to pin on timer 2, channel B + sbi(TCCR2A, COM2B1); + // set pwm duty + OCR2B = val; + } else if (val < 128) + //fail semi-intelligently + digitalWrite(pin, LOW); + else + digitalWrite(pin, HIGH); +} diff --git a/Marlin/Gen7/cores/arduino/wiring_digital.c b/Marlin/Gen7/cores/arduino/wiring_digital.c new file mode 100644 index 000000000..3d4b4ebd1 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring_digital.c @@ -0,0 +1,95 @@ +/* + wiring_digital.c - digital input and output functions + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +void pinMode(uint8_t pin, uint8_t mode) +{ + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *reg; + + if (port == NOT_A_PIN) return; + + // JWS: can I let the optimizer do this? + reg = portModeRegister(port); + + if (mode == INPUT) *reg &= ~bit; + else *reg |= bit; +} + +// Forcing this inline keeps the callers from having to push their own stuff +// on the stack. It is a good performance win and only takes 1 more byte per +// user than calling. (It will take more bytes on the 168.) +// +// But shouldn't this be moved into pinMode? Seems silly to check and do on +// each digitalread or write. +// +static inline void turnOffPWM(uint8_t timer) __attribute__ ((always_inline)); +static inline void turnOffPWM(uint8_t timer) +{ + if (timer == TIMER0A) cbi(TCCR0A, COM0A1); + if (timer == TIMER0B) cbi(TCCR0A, COM0B1); + if (timer == TIMER1A) cbi(TCCR1A, COM1A1); + if (timer == TIMER1B) cbi(TCCR1A, COM1B1); + if (timer == TIMER2A) cbi(TCCR2A, COM2A1); + if (timer == TIMER2B) cbi(TCCR2A, COM2B1); +} + +void digitalWrite(uint8_t pin, uint8_t val) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *out; + + if (port == NOT_A_PIN) return; + + // If the pin that support PWM output, we need to turn it off + // before doing a digital write. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + out = portOutputRegister(port); + + if (val == LOW) *out &= ~bit; + else *out |= bit; +} + +int digitalRead(uint8_t pin) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + + if (port == NOT_A_PIN) return LOW; + + // If the pin that support PWM output, we need to turn it off + // before getting a digital reading. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + if (*portInputRegister(port) & bit) return HIGH; + + return LOW; +} diff --git a/Marlin/Gen7/cores/arduino/wiring_private.h b/Marlin/Gen7/cores/arduino/wiring_private.h new file mode 100644 index 000000000..14394a0b6 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring_private.h @@ -0,0 +1,60 @@ +/* + wiring_private.h - Internal header file. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 239 2007-01-12 17:58:39Z mellis $ +*/ + +#ifndef WiringPrivate_h +#define WiringPrivate_h + +#include +#include +#include +#include +#include +#include + +#include "wiring.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#ifndef cbi +#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) +#endif +#ifndef sbi +#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) +#endif + +#define EXTERNAL_INT_0 0 +#define EXTERNAL_INT_1 1 +#define EXTERNAL_INT_2 2 + +#define EXTERNAL_NUM_INTERRUPTS 3 + +typedef void (*voidFuncPtr)(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/Marlin/Gen7/cores/arduino/wiring_pulse.c b/Marlin/Gen7/cores/arduino/wiring_pulse.c new file mode 100644 index 000000000..8f232f1d5 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring_pulse.c @@ -0,0 +1,66 @@ +/* + wiring_pulse.c - pulseIn() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH + * or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds + * to 3 minutes in length, but must be called at least a few dozen microseconds + * before the start of the pulse. */ +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout) +{ + // cache the port and bit of the pin in order to speed up the + // pulse width measuring loop and achieve finer resolution. calling + // digitalRead() instead yields much coarser resolution. + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + uint8_t stateMask = (state ? bit : 0); + unsigned long width = 0; // keep initialization out of time critical area + + // convert the timeout from microseconds to a number of times through + // the initial loop; it takes 16 clock cycles per iteration. + unsigned long numloops = 0; + unsigned long maxloops = microsecondsToClockCycles(timeout) / 16; + + // wait for any previous pulse to end + while ((*portInputRegister(port) & bit) == stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to start + while ((*portInputRegister(port) & bit) != stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to stop + while ((*portInputRegister(port) & bit) == stateMask) + width++; + + // convert the reading to microseconds. The loop has been determined + // to be 10 clock cycles long and have about 16 clocks between the edge + // and the start of the loop. There will be some error introduced by + // the interrupt handlers. + return clockCyclesToMicroseconds(width * 10 + 16); +} diff --git a/Marlin/Gen7/cores/arduino/wiring_serial.c b/Marlin/Gen7/cores/arduino/wiring_serial.c new file mode 100644 index 000000000..a3314faa8 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring_serial.c @@ -0,0 +1,138 @@ +/* + wiring_serial.c - serial functions. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + Modified 29 January 2009, Marius Kintel for Sanguino - http://www.sanguino.cc/ + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + + +#include "wiring_private.h" + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which rx_buffer_head is the index of the +// location to which to write the next incoming character and rx_buffer_tail +// is the index of the location from which to read. +#define RX_BUFFER_SIZE 128 + +#if defined(__AVR_ATmega644P__) +unsigned char rx_buffer[2][RX_BUFFER_SIZE]; +int rx_buffer_head[2] = {0, 0}; +int rx_buffer_tail[2] = {0, 0}; +#else +unsigned char rx_buffer[1][RX_BUFFER_SIZE]; +int rx_buffer_head[1] = {0}; +int rx_buffer_tail[1] = {0}; +#endif + + +#define BEGIN_SERIAL(uart_, baud_) \ +{ \ + UBRR##uart_##H = ((F_CPU / 16 + baud / 2) / baud - 1) >> 8; \ + UBRR##uart_##L = ((F_CPU / 16 + baud / 2) / baud - 1); \ + \ + /* reset config for UART */ \ + UCSR##uart_##A = 0; \ + UCSR##uart_##B = 0; \ + UCSR##uart_##C = 0; \ + \ + /* enable rx and tx */ \ + sbi(UCSR##uart_##B, RXEN##uart_);\ + sbi(UCSR##uart_##B, TXEN##uart_);\ + \ + /* enable interrupt on complete reception of a byte */ \ + sbi(UCSR##uart_##B, RXCIE##uart_); \ + UCSR##uart_##C = _BV(UCSZ##uart_##1)|_BV(UCSZ##uart_##0); \ + /* defaults to 8-bit, no parity, 1 stop bit */ \ +} + +void beginSerial(uint8_t uart, long baud) +{ + if (uart == 0) BEGIN_SERIAL(0, baud) +#if defined(__AVR_ATmega644P__) + else BEGIN_SERIAL(1, baud) +#endif +} + +#define SERIAL_WRITE(uart_, c_) \ + while (!(UCSR##uart_##A & (1 << UDRE##uart_))) \ + ; \ + UDR##uart_ = c + +void serialWrite(uint8_t uart, unsigned char c) +{ + if (uart == 0) { + SERIAL_WRITE(0, c); + } +#if defined(__AVR_ATmega644P__) + else { + SERIAL_WRITE(1, c); + } +#endif +} + +int serialAvailable(uint8_t uart) +{ + return (RX_BUFFER_SIZE + rx_buffer_head[uart] - rx_buffer_tail[uart]) % RX_BUFFER_SIZE; +} + +int serialRead(uint8_t uart) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (rx_buffer_head[uart] == rx_buffer_tail[uart]) { + return -1; + } else { + unsigned char c = rx_buffer[uart][rx_buffer_tail[uart]]; + rx_buffer_tail[uart] = (rx_buffer_tail[uart] + 1) % RX_BUFFER_SIZE; + return c; + } +} + +void serialFlush(uint8_t uart) +{ + // don't reverse this or there may be problems if the RX interrupt + // occurs after reading the value of rx_buffer_head but before writing + // the value to rx_buffer_tail; the previous value of rx_buffer_head + // may be written to rx_buffer_tail, making it appear as if the buffer + // were full, not empty. + rx_buffer_head[uart] = rx_buffer_tail[uart]; +} + +#define UART_ISR(uart_) \ +ISR(USART##uart_##_RX_vect) \ +{ \ + unsigned char c = UDR##uart_; \ + \ + int i = (rx_buffer_head[uart_] + 1) % RX_BUFFER_SIZE; \ + \ + /* if we should be storing the received character into the location \ + just before the tail (meaning that the head would advance to the \ + current location of the tail), we're about to overflow the buffer \ + and so we don't write the character or advance the head. */ \ + if (i != rx_buffer_tail[uart_]) { \ + rx_buffer[uart_][rx_buffer_head[uart_]] = c; \ + rx_buffer_head[uart_] = i; \ + } \ +} + +UART_ISR(0) +#if defined(__AVR_ATmega644P__) +UART_ISR(1) +#endif diff --git a/Marlin/Gen7/cores/arduino/wiring_shift.c b/Marlin/Gen7/cores/arduino/wiring_shift.c new file mode 100644 index 000000000..956f86429 --- /dev/null +++ b/Marlin/Gen7/cores/arduino/wiring_shift.c @@ -0,0 +1,40 @@ +/* + wiring_shift.c - shiftOut() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, byte val) +{ + int i; + + for (i = 0; i < 8; i++) { + if (bitOrder == LSBFIRST) + digitalWrite(dataPin, !!(val & (1 << i))); + else + digitalWrite(dataPin, !!(val & (1 << (7 - i)))); + + digitalWrite(clockPin, HIGH); + digitalWrite(clockPin, LOW); + } +} From 292ddd2edbf4663ad2b5f69f7e46e2eb3600d465 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 6 Feb 2012 17:38:16 +0100 Subject: [PATCH 207/430] Fix Z_LATE_ENABLE --- Marlin/stepper.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index a32dd8dff..26c265e53 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -275,9 +275,7 @@ FORCE_INLINE void trapezoid_generator_reset() { OCR1A = acceleration_time; OCR1A_nominal = calc_timer(current_block->nominal_rate); - #ifdef Z_LATE_ENABLE - if(current_block->steps_z > 0) enable_z(); - #endif + // SERIAL_ECHO_START; // SERIAL_ECHOPGM("advance :"); @@ -306,6 +304,14 @@ ISR(TIMER1_COMPA_vect) counter_z = counter_x; counter_e = counter_x; step_events_completed = 0; + #ifdef Z_LATE_ENABLE + if(current_block->steps_z > 0) { + enable_z(); + OCR1A = 2000; //1ms wait + return; + } + #endif + // #ifdef ADVANCE // e_steps[current_block->active_extruder] = 0; // #endif From f9c5333f97c2533066d4ccbe2479a5ee09b05058 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 6 Feb 2012 20:13:44 +0100 Subject: [PATCH 208/430] Made "stop heating wait" optional. Default off. --- Marlin/Configuration.h | 3 +++ Marlin/cardreader.pde | 2 ++ 2 files changed, 5 insertions(+) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 49721cc19..2a0614787 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -104,6 +104,9 @@ // Heating is finished if a temperature close to this degree shift is reached #define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree +//Do not wait for M109 to finish when printing from SD card +//#define STOP_HEATING_WAIT_WHEN_SD_PRINTING + // PID settings: // Uncomment the following line to enable PID support. #define PIDTEMP diff --git a/Marlin/cardreader.pde b/Marlin/cardreader.pde index a1f23ce06..2fefbcf53 100644 --- a/Marlin/cardreader.pde +++ b/Marlin/cardreader.pde @@ -444,7 +444,9 @@ void CardReader::printingHasFinished() st_synchronize(); quickStop(); sdprinting = false; + #ifdef STOP_HEATING_WAIT_FOR_SD_PRINTING stop_heating_wait=true; + #endif if(SD_FINISHED_STEPPERRELEASE) { //finishAndDisableSteppers(); From b5fae1104b5497639c61df9ec2ed9b6c66f62e1b Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Tue, 7 Feb 2012 08:50:26 +0100 Subject: [PATCH 209/430] fixed sUICIDE_PIN disable --- Marlin/Marlin.pde | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 824a57d78..d156ff5cc 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -237,11 +237,9 @@ void setup_photpin() void setup_powerhold() { #ifdef SUICIDE_PIN - #if (SUICIDE_PIN> -1) SET_OUTPUT(SUICIDE_PIN); WRITE(SUICIDE_PIN, HIGH); - #endif - #endif + #endif } void suicide() From 4cc8e37bf145031abdb3093b541f162847e30510 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Tue, 7 Feb 2012 12:58:05 +0100 Subject: [PATCH 210/430] lcd menue "move_axis" added --- Marlin/ultralcd.h | 3 ++- Marlin/ultralcd.pde | 55 +++++++++++++++++++++++++++++++++++++++------ 2 files changed, 50 insertions(+), 8 deletions(-) diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index f89f34613..db8a13183 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -54,7 +54,7 @@ #define blocktime 500 #define lcdslow 5 - enum MainStatus{Main_Status, Main_Menu, Main_Prepare, Main_Control, Main_SD,Sub_TempControl,Sub_MotionControl}; + enum MainStatus{Main_Status, Main_Menu, Main_Prepare,Sub_PrepareMove, Main_Control, Main_SD,Sub_TempControl,Sub_MotionControl}; class MainMenu{ public: @@ -71,6 +71,7 @@ void showControl(); void showControlMotion(); void showControlTemp(); + void showAxisMove(); void showSD(); bool force_lcd_update; int lastencoderpos; diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 1c23383ed..952ff1293 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -457,7 +457,7 @@ void MainMenu::showStatus() force_lcd_update=false; } -enum {ItemP_exit, ItemP_autostart,ItemP_disstep,ItemP_home, ItemP_origin, ItemP_preheat, ItemP_cooldown,ItemP_extrude}; +enum {ItemP_exit, ItemP_autostart,ItemP_disstep,ItemP_home, ItemP_origin, ItemP_preheat, ItemP_cooldown,/*ItemP_extrude,*/ItemP_move}; //any action must not contain a ',' character anywhere, or this breaks: #define MENUITEM(repaint_action, click_action) \ @@ -496,17 +496,54 @@ void MainMenu::showPrepare() case ItemP_cooldown: MENUITEM( lcdprintPGM(" Cooldown") , BLOCK;setTargetHotend0(0);setTargetBed(0);beepshort(); ) ; break; - case ItemP_extrude: - MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E50");beepshort(); ) ; +// case ItemP_extrude: + // MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E50");beepshort(); ) ; + // break; + case ItemP_move: + MENUITEM( lcdprintPGM(" Move Axis \x7E") , BLOCK;status=Sub_PrepareMove;beepshort(); ); break; - - - default: + default: break; } line++; } - updateActiveLines(ItemP_extrude,encoderpos); + updateActiveLines(ItemP_move,encoderpos); +} + +enum { + ItemAM_exit, + ItemAM_X, ItemAM_Y, ItemAM_Z, ItemAM_E +}; + +void MainMenu::showAxisMove() +{ + uint8_t line=0; + clearIfNecessary(); + for(int8_t i=lineoffset;i Date: Tue, 7 Feb 2012 20:23:43 +0100 Subject: [PATCH 211/430] Split the configuration file in two parts. One for common settings. One for advanced settings. --- Marlin/Configuration.h | 271 +++++-------------------------------- Marlin/Configuration_adv.h | 208 ++++++++++++++++++++++++++++ Marlin/Marlin.pde | 24 ++-- 3 files changed, 257 insertions(+), 246 deletions(-) create mode 100644 Marlin/Configuration_adv.h diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 2a0614787..c1bcc0fae 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,26 +1,13 @@ #ifndef __CONFIGURATION_H #define __CONFIGURATION_H - +// This configurtion file contains the basic settings. +// Advanced settings can be found in Configuration_adv.h +// BASIC SETTINGS: select your board type, temperature sensor type, axis scaling, and endstop configuration // This determines the communication speed of the printer #define BAUDRATE 250000 //#define BAUDRATE 115200 -//#define BAUDRATE 230400 - -#define EXTRUDERS 1 - -// Frequency limit -// See nophead's blog for more info -// Not working O -//#define XY_FREQUENCY_LIMIT 15 - -// Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end -// of the buffer and all stops. This should not be much greater than zero and should only be changed -// if unwanted behavior is observed on a user's machine when running at very slow speeds. -#define MINIMUM_PLANNER_SPEED 2.0 // (mm/sec) - -// BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration //// The following define selects which electronics board you have. Please choose the one that matches your setup // MEGA/RAMPS up to 1.2 = 3, @@ -36,7 +23,10 @@ //=============================Thermal Settings ============================ //=========================================================================== -//// Thermistor settings: +//// Temperature sensor settings: +// -2 is thermocouple with MAX6675 (only for sensor 0) +// -1 is thermocouple with AD595 +// 0 is not used // 1 is 100k thermistor // 2 is 200k thermistor // 3 is mendel-parts thermistor @@ -45,70 +35,33 @@ // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -//#define THERMISTORHEATER_0 3 -//#define THERMISTORHEATER_1 1 -//#define THERMISTORHEATER_2 1 - -//#define HEATER_0_USES_THERMISTOR -//#define HEATER_1_USES_THERMISTOR -//#define HEATER_2_USES_THERMISTOR -#define HEATER_0_USES_AD595 -//#define HEATER_1_USES_AD595 -//#define HEATER_2_USES_AD595 -//#define HEATER_0_USES_MAX6675 - - -// Select one of these only to define how the bed temp is read. -//#define THERMISTORBED 1 -//#define BED_USES_THERMISTOR -//#define BED_LIMIT_SWITCHING -#ifdef BED_LIMIT_SWITCHING - #define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS -#endif -//#define BED_USES_AD595 - -#define BED_CHECK_INTERVAL 5000 //ms - -//// Heating sanity check: -// This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature -// If the temperature has not increased at the end of that period, the target temperature is set to zero. -// It can be reset with another M104/M109 -//#define WATCHPERIOD 20000 //20 seconds +#define TEMP_SENSOR_0 -1 +#define TEMP_SENSOR_1 0 +#define TEMP_SENSOR_2 0 +#define TEMP_SENSOR_BED 0 // Actual temperature must be close to target for this long before M109 returns success #define TEMP_RESIDENCY_TIME 30 // (seconds) #define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one -//// The minimal temperature defines the temperature below which the heater will not be enabled +// The minimal temperature defines the temperature below which the heater will not be enabled It is used +// to check that the wiring to the thermistor is not broken. +// Otherwise this would lead to the heater being powered on all the time. #define HEATER_0_MINTEMP 5 -//#define HEATER_1_MINTEMP 5 -//#define HEATER_2_MINTEMP 5 -//#define BED_MINTEMP 5 - +#define HEATER_1_MINTEMP 5 +#define HEATER_2_MINTEMP 5 +#define BED_MINTEMP 5 // When temperature exceeds max temp, your heater will be switched off. // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // You should use MINTEMP for thermistor short/failure protection. #define HEATER_0_MAXTEMP 275 -//#define HEATER_1_MAXTEMP 275 -//#define HEATER_2_MAXTEMP 275 -//#define BED_MAXTEMP 150 - - -// Wait for Cooldown -// This defines if the M109 call should not block if it is cooling down. -// example: From a current temp of 220, you set M109 S200. -// if CooldownNoWait is defined M109 will not wait for the cooldown to finish -#define CooldownNoWait true - -// Heating is finished if a temperature close to this degree shift is reached -#define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree - -//Do not wait for M109 to finish when printing from SD card -//#define STOP_HEATING_WAIT_WHEN_SD_PRINTING +#define HEATER_1_MAXTEMP 275 +#define HEATER_2_MAXTEMP 275 +#define BED_MAXTEMP 150 // PID settings: -// Uncomment the following line to enable PID support. +// Comment the following line to disable PID and enable bang-bang. #define PIDTEMP #define PID_MAX 255 // limits current to nozzle; 255=full current #ifdef PIDTEMP @@ -118,28 +71,8 @@ #define K1 0.95 //smoothing factor withing the PID #define PID_dT 0.128 //sampling period of the PID - //To develop some PID settings for your machine, you can initiall follow - // the Ziegler-Nichols method. - // set Ki and Kd to zero. - // heat with a defined Kp and see if the temperature stabilizes - // ideally you do this graphically with repg. - // the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde - // PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain - // usually further manual tunine is necessary. - - #define PID_CRITIAL_GAIN 50 - #define PID_SWING_AT_CRITIAL 47 //seconds - - //#define PID_PI //no differentail term - #define PID_PID //normal PID - - #ifdef PID_PID - //PID according to Ziegler-Nichols method -// #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) -// #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) -// #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) - -// Ultitmaker +// If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it +// Ultimaker #define DEFAULT_Kp 22.2 #define DEFAULT_Ki (1.25*PID_dT) #define DEFAULT_Kd (99/PID_dT) @@ -152,39 +85,19 @@ // Mendel Parts V9 on 12V // #define DEFAULT_Kp 63.0 // #define DEFAULT_Ki (2.25*PID_dT) -// #define DEFAULT_Kd (440/PID_dT) - #endif - - #ifdef PID_PI - //PI according to Ziegler-Nichols method - #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) - #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (0) - #endif - - // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. - // if Kc is choosen well, the additional required power due to increased melting should be compensated. - #define PID_ADD_EXTRUSION_RATE - #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) - #endif +// #define DEFAULT_Kd (440/PID_dT) #endif // PIDTEMP -// extruder run-out prevention. -//if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded -//#define EXTRUDER_RUNOUT_PREVENT -#define EXTRUDER_RUNOUT_MINTEMP 190 -#define EXTRUDER_RUNOUT_SECONDS 30. -#define EXTRUDER_RUNOUT_ESTEPS 14. //mm filament -#define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed -#define EXTRUDER_RUNOUT_EXTRUDE 100 - +//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit +//can be software-disabled for whatever purposes by +#define PREVENT_DANGEROUS_EXTRUDE +#define EXTRUDE_MINTEMP 190 +#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. //=========================================================================== //=============================Mechanical Settings=========================== //=========================================================================== - // Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors @@ -192,9 +105,6 @@ const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -// For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false - -#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -207,13 +117,6 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DISABLE_Y false #define DISABLE_Z false #define DISABLE_E false // For all extruders -//#define Z_LATE_ENABLE // Enable Z the last moment. Needed if your Z driver overheats. - -// Inverting axis direction -//#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true -//#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false -//#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true -//#define INVERT_E*_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false, used for all extruders #define INVERT_X_DIR true // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false @@ -222,7 +125,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false -//// ENDSTOP SETTINGS: +// ENDSTOP SETTINGS: // Sets direction of endstops when homing; 1=MAX, -1=MIN #define X_HOME_DIR -1 #define Y_HOME_DIR -1 @@ -238,43 +141,19 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E #define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) -//homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: -#define X_HOME_RETRACT_MM 5 -#define Y_HOME_RETRACT_MM 5 -#define Z_HOME_RETRACT_MM 1 -#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially. - -#define AXIS_RELATIVE_MODES {false, false, false, false} - -#define MAX_STEP_FREQUENCY 40000 // Max step frequency for Ultimaker (5000 pps / half step) - // default settings #define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker -//#define DEFAULT_AXIS_STEPS_PER_UNIT {40, 40, 3333.92, 360} //sells mendel with v9 extruder -//#define DEFAULT_AXIS_STEPS_PER_UNIT {80.3232, 80.8900, 2284.7651, 757.2218} // SAE Prusa w/ Wade extruder #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. #define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves #define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts -#define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate -#define DEFAULT_MINTRAVELFEEDRATE 0.0 - -// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. -#define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this +// #define DEFAULT_XYJERK 20.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) -// If defined the movements slow down when the look ahead buffer is only half full -#define SLOWDOWN - -//default stepper release if idle -#define DEFAULT_STEPPER_DEACTIVE_TIME 60 -#define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered - - //=========================================================================== //=============================Additional Features=========================== //=========================================================================== @@ -285,47 +164,14 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). // M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. //define this to enable eeprom support -#define EEPROM_SETTINGS +//#define EEPROM_SETTINGS //to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out: // please keep turned on if you can. -#define EEPROM_CHITCHAT - - -// The hardware watchdog should halt the Microcontroller, in case the firmware gets stuck somewhere. However: -// the Watchdog is not working well, so please only enable this for testing -// this enables the watchdog interrupt. -//#define USE_WATCHDOG -//#ifdef USE_WATCHDOG - // you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: -//#define RESET_MANUAL -//#define WATCHDOG_TIMEOUT 4 //seconds -//#endif - -// extruder advance constant (s2/mm3) -// -// advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 -// -// hooke's law says: force = k * distance -// bernoulli's priniciple says: v ^ 2 / 2 + g . h + pressure / density = constant -// so: v ^ 2 is proportional to number of steps we advance the extruder -//#define ADVANCE - -#ifdef ADVANCE - #define EXTRUDER_ADVANCE_K .0 - - #define D_FILAMENT 2.85 - #define STEPS_MM_E 836 - #define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) - #define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) - -#endif // ADVANCE - +//#define EEPROM_CHITCHAT //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 //#define SDSUPPORT // Enable SD Card Support in Hardware Console -#define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? -#define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. //#define ULTIPANEL #ifdef ULTIPANEL @@ -341,60 +187,11 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #endif #endif -// A debugging feature to compare calculated vs performed steps, to see if steps are lost by the software. -//#define DEBUG_STEPS - - -// Arc interpretation settings: -#define MM_PER_ARC_SEGMENT 1 -#define N_ARC_CORRECTION 25 - - -//automatic temperature: The hot end target temperature is calculated by all the buffered lines of gcode. -//The maximum buffered steps/sec of the extruder motor are called "se". -//You enter the autotemp mode by a M109 S T F -// the target temperature is set to mintemp+factor*se[steps/sec] and limited by mintemp and maxtemp -// you exit the value by any M109 without F* -// Also, if the temperature is set to a value target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS +#endif +#define BED_CHECK_INTERVAL 5000 //ms + +//// Heating sanity check: +// This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. +// It can be reset with another M104/M109 +//#define WATCHPERIOD 20000 //20 seconds + +// Wait for Cooldown +// This defines if the M109 call should not block if it is cooling down. +// example: From a current temp of 220, you set M109 S200. +// if CooldownNoWait is defined M109 will not wait for the cooldown to finish +#define CooldownNoWait true + +// Heating is finished if a temperature close to this degree shift is reached +#define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree + +//Do not wait for M109 to finish when printing from SD card +//#define STOP_HEATING_WAIT_WHEN_SD_PRINTING + +#ifdef PIDTEMP + // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. + // if Kc is choosen well, the additional required power due to increased melting should be compensated. + #define PID_ADD_EXTRUSION_RATE + #ifdef PID_ADD_EXTRUSION_RATE + #define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) + #endif +#endif + + +//automatic temperature: The hot end target temperature is calculated by all the buffered lines of gcode. +//The maximum buffered steps/sec of the extruder motor are called "se". +//You enter the autotemp mode by a M109 S T F +// the target temperature is set to mintemp+factor*se[steps/sec] and limited by mintemp and maxtemp +// you exit the value by any M109 without F* +// Also, if the temperature is set to a value 0 + #define THERMISTORHEATER_0 TEMP_SENSOR_0 + #define HEATER_0_USES_THERMISTOR +#endif +#if TEMP_SENSOR_1 > 0 + #define THERMISTORHEATER_1 TEMP_SENSOR_1 + #define HEATER_1_USES_THERMISTOR +#endif +#if TEMP_SENSOR_2 > 0 + #define THERMISTORHEATER_2 TEMP_SENSOR_2 + #define HEATER_2_USES_THERMISTOR +#endif +#if TEMP_SENSOR_BED > 0 + #define THERMISTORBED TEMP_SENSOR_BED + #define BED_USES_THERMISTOR +#endif +#if TEMP_SENSOR_0 == -1 + #define HEATER_0_USES_AD595 +#endif +#if TEMP_SENSOR_1 == -1 + #define HEATER_1_USES_AD595 +#endif +#if TEMP_SENSOR_2 == -1 + #define HEATER_2_USES_AD595 +#endif +#if TEMP_SENSOR_BED == -1 + #define BED_USES_AD595 +#endif +#if TEMP_SENSOR_0 == -2 + #define HEATER_0_USES_MAX6675 +#endif + +#endif //__CONFIGURATION_ADV_H diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 57eb61b8e..e1decfd3f 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -254,6 +254,12 @@ void suicide() #endif } +long millis_diff(unsigned long starttime) { + unsigned long difftime = millis() - starttime; + if (difftime > 0x8000) difftime += 0x8000; + return difftime; +} + void setup() { setup_powerhold(); @@ -550,9 +556,9 @@ void process_commands() if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait st_synchronize(); - codenum += millis(); // keep track of when we started waiting +// codenum += millis(); // keep track of when we started waiting previous_millis_cmd = millis(); - while(millis() < codenum ){ + while(millis_diff(previous_millis_cmd) < codenum ){ manage_heater(); } break; @@ -843,11 +849,11 @@ void process_commands() /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ while((residencyStart == -1) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + (residencyStart > -1 && (millis_diff(residencyStart) < TEMP_RESIDENCY_TIME*1000) )) { #else while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME - if( (millis() - codenum) > 1000 ) + if(millis_diff(codenum) > 1000 ) { //Print Temp Reading and remaining time every 1 second while heating up/cooling down SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL( degHotend(tmp_extruder) ); @@ -857,7 +863,7 @@ void process_commands() SERIAL_PROTOCOLPGM(" W:"); if(residencyStart > -1) { - codenum = TEMP_RESIDENCY_TIME - ((millis() - residencyStart) / 1000); + codenum = TEMP_RESIDENCY_TIME - (millis_diff(residencyStart) / 1000); SERIAL_PROTOCOLLN( codenum ); } else @@ -895,7 +901,7 @@ void process_commands() codenum = millis(); while(isHeatingBed()) { - if( (millis()-codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + if( millis_diff(codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { float tt=degHotend(active_extruder); SERIAL_PROTOCOLPGM("T:"); @@ -1293,11 +1299,11 @@ void prepare_arc_move(char isclockwise) { void manage_inactivity(byte debug) { - if( (millis()-previous_millis_cmd) > max_inactive_time ) + if( millis_diff(previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); if(stepper_inactive_time) - if( (millis()-last_stepperdisabled_time) > stepper_inactive_time ) + if( millis_diff(last_stepperdisabled_time) > stepper_inactive_time ) { if(previous_millis_cmd>last_stepperdisabled_time) last_stepperdisabled_time=previous_millis_cmd; @@ -1309,7 +1315,7 @@ void manage_inactivity(byte debug) } } #ifdef EXTRUDER_RUNOUT_PREVENT - if( (millis()-previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) + if( millis_diff(previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) { bool oldstatus=READ(E0_ENABLE_PIN); From 5113513cb2efd62c01a4fab4cb28e0a8d9905005 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Wed, 8 Feb 2012 18:28:54 +0100 Subject: [PATCH 212/430] RC 1 --- Marlin/Configuration_adv.h | 17 +++++++++++++++ Marlin/Marlin.pde | 42 ++++++++++++-------------------------- README.md | 6 +++++- 3 files changed, 35 insertions(+), 30 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index a94dba79d..1bdbd1ac2 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -204,5 +204,22 @@ const int dropsegments=5; //everything with less than this number of steps will #if TEMP_SENSOR_0 == -2 #define HEATER_0_USES_MAX6675 #endif +#if TEMP_SENSOR_0 == 0 + #undef HEATER_0_MINTEMP + #undef HEATER_0_MAXTEMP +#endif +#if TEMP_SENSOR_1 == 0 + #undef HEATER_1_MINTEMP + #undef HEATER_1_MAXTEMP +#endif +#if TEMP_SENSOR_2 == 0 + #undef HEATER_2_MINTEMP + #undef HEATER_2_MAXTEMP +#endif +#if TEMP_SENSOR_BED == 0 + #undef BED_MINTEMP + #undef BED_MAXTEMP +#endif + #endif //__CONFIGURATION_ADV_H diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index e1decfd3f..57ededa2e 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -27,8 +27,6 @@ #include "Marlin.h" - - #include "ultralcd.h" #include "planner.h" #include "stepper.h" @@ -38,12 +36,7 @@ #include "watchdog.h" #include "EEPROMwrite.h" - - -#define VERSION_STRING "1.0.0 Beta 1" - - - +#define VERSION_STRING "1.0.0 RC1" // look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html // http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes @@ -147,15 +140,11 @@ static bool home_all_axis = true; static float feedrate = 1500.0, next_feedrate, saved_feedrate; static long gcode_N, gcode_LastN; - - static bool relative_mode = false; //Determines Absolute or Relative Coordinates static bool relative_mode_e = false; //Determines Absolute or Relative E Codes while in Absolute Coordinates mode. E is always relative in Relative Coordinates mode. static uint8_t fanpwm=0; - - static char cmdbuffer[BUFSIZE][MAX_CMD_SIZE]; static bool fromsd[BUFSIZE]; static int bufindr = 0; @@ -224,6 +213,7 @@ void enquecommand(const char *cmd) buflen += 1; } } + void setup_photpin() { #ifdef PHOTOGRAPH_PIN @@ -254,12 +244,6 @@ void suicide() #endif } -long millis_diff(unsigned long starttime) { - unsigned long difftime = millis() - starttime; - if (difftime > 0x8000) difftime += 0x8000; - return difftime; -} - void setup() { setup_powerhold(); @@ -332,7 +316,6 @@ void loop() LCD_STATUS; } - void get_command() { while( MSerial.available() > 0 && buflen < BUFSIZE) { @@ -556,9 +539,9 @@ void process_commands() if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait st_synchronize(); -// codenum += millis(); // keep track of when we started waiting + codenum += millis(); // keep track of when we started waiting previous_millis_cmd = millis(); - while(millis_diff(previous_millis_cmd) < codenum ){ + while(millis() < codenum ){ manage_heater(); } break; @@ -795,7 +778,7 @@ void process_commands() #if (TEMP_0_PIN > -1) SERIAL_PROTOCOLPGM("ok T:"); SERIAL_PROTOCOL(degHotend(tmp_extruder)); - #if TEMP_BED_PIN > -1 + #if TEMP_BED_PIN > -1 SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOL(degBed()); #endif //TEMP_BED_PIN @@ -849,11 +832,11 @@ void process_commands() /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ while((residencyStart == -1) || - (residencyStart > -1 && (millis_diff(residencyStart) < TEMP_RESIDENCY_TIME*1000) )) { + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { #else while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME - if(millis_diff(codenum) > 1000 ) + if((millis() - codenum) > 1000 ) { //Print Temp Reading and remaining time every 1 second while heating up/cooling down SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL( degHotend(tmp_extruder) ); @@ -863,7 +846,7 @@ void process_commands() SERIAL_PROTOCOLPGM(" W:"); if(residencyStart > -1) { - codenum = TEMP_RESIDENCY_TIME - (millis_diff(residencyStart) / 1000); + codenum = TEMP_RESIDENCY_TIME - ((millis() - residencyStart) / 1000); SERIAL_PROTOCOLLN( codenum ); } else @@ -901,7 +884,7 @@ void process_commands() codenum = millis(); while(isHeatingBed()) { - if( millis_diff(codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + if(( millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { float tt=degHotend(active_extruder); SERIAL_PROTOCOLPGM("T:"); @@ -971,6 +954,7 @@ void process_commands() bool all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))|| (code_seen(axis_codes[3]))); if(all_axis) { + st_synchronize(); disable_e0(); disable_e1(); disable_e2(); @@ -1299,11 +1283,11 @@ void prepare_arc_move(char isclockwise) { void manage_inactivity(byte debug) { - if( millis_diff(previous_millis_cmd) > max_inactive_time ) + if( (millis() - previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); if(stepper_inactive_time) - if( millis_diff(last_stepperdisabled_time) > stepper_inactive_time ) + if( (millis() - last_stepperdisabled_time) > stepper_inactive_time ) { if(previous_millis_cmd>last_stepperdisabled_time) last_stepperdisabled_time=previous_millis_cmd; @@ -1315,7 +1299,7 @@ void manage_inactivity(byte debug) } } #ifdef EXTRUDER_RUNOUT_PREVENT - if( millis_diff(previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) + if( (millis() - previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) { bool oldstatus=READ(E0_ENABLE_PIN); diff --git a/README.md b/README.md index 0beb13fe5..6f04764c9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,10 @@ WARNING: -------- -THIS IS THE BETA 1 FOR MARLIN 1.0.0 +THIS IS RELEASE CANDIDATE 1 FOR MARLIN 1.0.0 + +The configuration is now split in two files +Configuration.h for the normal settings +Configuration_adv.h for the advanced settings Quick Information =================== From bdb70c050948392004f104402349c08a85cae0eb Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Wed, 8 Feb 2012 18:38:45 +0100 Subject: [PATCH 213/430] Warning for 10k thermistor --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index c1bcc0fae..fe79a9c39 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -30,7 +30,7 @@ // 1 is 100k thermistor // 2 is 200k thermistor // 3 is mendel-parts thermistor -// 4 is 10k thermistor +// 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !! // 5 is ParCan supplied 104GT-2 100K // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 From da040fd3936e59f9d808a126111708ff500343fa Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 9 Feb 2012 17:19:45 +0100 Subject: [PATCH 214/430] Fixed ultimaker heater 1 pins. (Thanks daid) --- Marlin/pins.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index 9ff7dd94a..2a713c989 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -561,10 +561,8 @@ #define HEATER_0_PIN 2 #define TEMP_0_PIN 8 -#define EXTRUDER_1_HEATER_PIN 3 -#define EXTRUDER_1_TEMPERATURE_PIN 10 -#define HEATER_1_PIN 51 -#define TEMP_1_PIN 3 +#define HEATER_1_PIN 3 +#define TEMP_1_PIN 9 #define HEATER_2_PIN -1 #define TEMP_2_PIN -1 From 9173a5713baae97f7bfa1cbb168b2ae8d1307245 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 9 Feb 2012 19:27:45 +0100 Subject: [PATCH 215/430] Teensylu support. --- Marlin/Configuration.h | 2 +- Marlin/Marlin.h | 14 +++++++----- Marlin/Marlin.pde | 8 +++---- Marlin/MarlinSerial.cpp | 11 +++------- Marlin/MarlinSerial.h | 7 +++--- Marlin/SdBaseFile.cpp | 48 ++++++++++++++++++++--------------------- Marlin/SdFatUtil.cpp | 4 ++-- Marlin/fastio.h | 2 +- Marlin/stepper.cpp | 6 ++++-- 9 files changed, 50 insertions(+), 52 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index fe79a9c39..9e14a47fc 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -171,7 +171,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -//#define SDSUPPORT // Enable SD Card Support in Hardware Console +#define SDSUPPORT // Enable SD Card Support in Hardware Console //#define ULTIPANEL #ifdef ULTIPANEL diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 78739af24..818c6ffe6 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -46,7 +46,11 @@ #include "WString.h" - +#if MOTHERBOARD == 8 // Teensylu + #define SERIAL Serial +#else + #define SERIAL MSerial +#endif //this is a unfinsihed attemp to removes a lot of warning messages, see: // http://www.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=57011 @@ -59,10 +63,10 @@ //#define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) //this does not work but hides the warnings -#define SERIAL_PROTOCOL(x) MSerial.print(x); +#define SERIAL_PROTOCOL(x) SERIAL.print(x); #define SERIAL_PROTOCOLPGM(x) serialprintPGM(MYPGM(x)); -#define SERIAL_PROTOCOLLN(x) {MSerial.print(x);MSerial.write('\n');} -#define SERIAL_PROTOCOLLNPGM(x) {serialprintPGM(MYPGM(x));MSerial.write('\n');} +#define SERIAL_PROTOCOLLN(x) {SERIAL.print(x);SERIAL.write('\n');} +#define SERIAL_PROTOCOLLNPGM(x) {serialprintPGM(MYPGM(x));SERIAL.write('\n');} const prog_char errormagic[] PROGMEM ="Error:"; @@ -89,7 +93,7 @@ FORCE_INLINE void serialprintPGM(const char *str) char ch=pgm_read_byte(str); while(ch) { - MSerial.write(ch); + SERIAL.write(ch); ch=pgm_read_byte(++str); } } diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 57ededa2e..5c20bd657 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -247,7 +247,7 @@ void suicide() void setup() { setup_powerhold(); - MSerial.begin(BAUDRATE); + SERIAL.begin(BAUDRATE); SERIAL_ECHO_START; SERIAL_ECHOLNPGM(VERSION_STRING); SERIAL_PROTOCOLLNPGM("start"); @@ -318,8 +318,8 @@ void loop() void get_command() { - while( MSerial.available() > 0 && buflen < BUFSIZE) { - serial_char = MSerial.read(); + while( SERIAL.available() > 0 && buflen < BUFSIZE) { + serial_char = SERIAL.read(); if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) { if(!serial_count) return; //if empty line @@ -1209,7 +1209,7 @@ void process_commands() void FlushSerialRequestResend() { //char cmdbuffer[bufindr][100]="Resend:"; - MSerial.flush(); + SERIAL.flush(); SERIAL_PROTOCOLPGM("Resend:"); SERIAL_PROTOCOLLN(gcode_LastN + 1); ClearToSend(); diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index 7175561e2..e369800b8 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -23,20 +23,15 @@ #include "Marlin.h" #include "MarlinSerial.h" +#if MOTHERBOARD != 8 // !teensylu // this next line disables the entire HardwareSerial.cpp, // this is so I can support Attiny series and any other chip without a uart #if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) - - - - - #if defined(UBRRH) || defined(UBRR0H) ring_buffer rx_buffer = { { 0 }, 0, 0 }; #endif - FORCE_INLINE void store_char(unsigned char c) { int i = (unsigned int)(rx_buffer.head + 1) % RX_BUFFER_SIZE; @@ -324,11 +319,11 @@ void MarlinSerial::printFloat(double number, uint8_t digits) remainder -= toPrint; } } - // Preinstantiate Objects ////////////////////////////////////////////////////// + MarlinSerial MSerial; - #endif // whole file +#endif //teensylu diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 71823de8f..8525cba28 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -31,7 +31,7 @@ #define BYTE 0 - +#if MOTHERBOARD != 8 // ! teensylu // Define constants and variables for buffering incoming serial data. We're // using a ring buffer (I think), in which rx_buffer_head is the index of the // location to which to write the next incoming character and rx_buffer_tail @@ -144,8 +144,7 @@ class MarlinSerial //: public Stream void println(void); }; -#if defined(UBRRH) || defined(UBRR0H) - extern MarlinSerial MSerial; -#endif +extern MarlinSerial MSerial; +#endif // ! teensylu #endif diff --git a/Marlin/SdBaseFile.cpp b/Marlin/SdBaseFile.cpp index f8dc83ade..450c9f327 100644 --- a/Marlin/SdBaseFile.cpp +++ b/Marlin/SdBaseFile.cpp @@ -18,8 +18,6 @@ * . */ -#define SERIAL MSerial - #include "Marlin.h" #ifdef SDSUPPORT @@ -345,38 +343,38 @@ int8_t SdBaseFile::lsPrintNext( uint8_t flags, uint8_t indent) { && DIR_IS_FILE_OR_SUBDIR(&dir)) break; } // indent for dir level - for (uint8_t i = 0; i < indent; i++) MSerial.write(' '); + for (uint8_t i = 0; i < indent; i++) SERIAL.write(' '); // print name for (uint8_t i = 0; i < 11; i++) { if (dir.name[i] == ' ')continue; if (i == 8) { - MSerial.write('.'); + SERIAL.write('.'); w++; } - MSerial.write(dir.name[i]); + SERIAL.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir)) { - MSerial.write('/'); + SERIAL.write('/'); w++; } if (flags & (LS_DATE | LS_SIZE)) { - while (w++ < 14) MSerial.write(' '); + while (w++ < 14) SERIAL.write(' '); } // print modify date/time if requested if (flags & LS_DATE) { - MSerial.write(' '); + SERIAL.write(' '); printFatDate( dir.lastWriteDate); - MSerial.write(' '); + SERIAL.write(' '); printFatTime( dir.lastWriteTime); } // print size if requested if (!DIR_IS_SUBDIR(&dir) && (flags & LS_SIZE)) { - MSerial.write(' '); - MSerial.print(dir.fileSize); + SERIAL.write(' '); + SERIAL.print(dir.fileSize); } - MSerial.println(); + SERIAL.println(); return DIR_IS_FILE(&dir) ? 1 : 2; } //------------------------------------------------------------------------------ @@ -947,26 +945,26 @@ void SdBaseFile::printDirName(const dir_t& dir, for (uint8_t i = 0; i < 11; i++) { if (dir.name[i] == ' ')continue; if (i == 8) { - MSerial.write('.'); + SERIAL.write('.'); w++; } - MSerial.write(dir.name[i]); + SERIAL.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir) && printSlash) { - MSerial.write('/'); + SERIAL.write('/'); w++; } while (w < width) { - MSerial.write(' '); + SERIAL.write(' '); w++; } } //------------------------------------------------------------------------------ // print uint8_t with width 2 static void print2u( uint8_t v) { - if (v < 10) MSerial.write('0'); - MSerial.print(v, DEC); + if (v < 10) SERIAL.write('0'); + SERIAL.print(v, DEC); } //------------------------------------------------------------------------------ /** %Print a directory date field to Serial. @@ -985,10 +983,10 @@ static void print2u( uint8_t v) { * \param[in] fatDate The date field from a directory entry. */ void SdBaseFile::printFatDate(uint16_t fatDate) { - MSerial.print(FAT_YEAR(fatDate)); - MSerial.write('-'); + SERIAL.print(FAT_YEAR(fatDate)); + SERIAL.write('-'); print2u( FAT_MONTH(fatDate)); - MSerial.write('-'); + SERIAL.write('-'); print2u( FAT_DAY(fatDate)); } @@ -1002,9 +1000,9 @@ void SdBaseFile::printFatDate(uint16_t fatDate) { */ void SdBaseFile::printFatTime( uint16_t fatTime) { print2u( FAT_HOUR(fatTime)); - MSerial.write(':'); + SERIAL.write(':'); print2u( FAT_MINUTE(fatTime)); - MSerial.write(':'); + SERIAL.write(':'); print2u( FAT_SECOND(fatTime)); } //------------------------------------------------------------------------------ @@ -1016,7 +1014,7 @@ void SdBaseFile::printFatTime( uint16_t fatTime) { bool SdBaseFile::printName() { char name[13]; if (!getFilename(name)) return false; - MSerial.print(name); + SERIAL.print(name); return true; } //------------------------------------------------------------------------------ @@ -1790,4 +1788,4 @@ void (*SdBaseFile::oldDateTime_)(uint16_t& date, uint16_t& time) = 0; // NOLINT #endif // ALLOW_DEPRECATED_FUNCTIONS -#endif \ No newline at end of file +#endif diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp index ffbcba0c6..965f6ec21 100644 --- a/Marlin/SdFatUtil.cpp +++ b/Marlin/SdFatUtil.cpp @@ -48,7 +48,7 @@ int SdFatUtil::FreeRam() { * \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++) MSerial.write(c); + for (uint8_t c; (c = pgm_read_byte(str)); str++) SERIAL.write(c); } //------------------------------------------------------------------------------ /** %Print a string in flash memory followed by a CR/LF. @@ -58,7 +58,7 @@ void SdFatUtil::print_P( PGM_P str) { */ void SdFatUtil::println_P( PGM_P str) { print_P( str); - MSerial.println(); + SERIAL.println(); } //------------------------------------------------------------------------------ /** %Print a string in flash memory to Serial. diff --git a/Marlin/fastio.h b/Marlin/fastio.h index 5188a0681..42f4ebb4f 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -1928,7 +1928,7 @@ pins #endif -#if defined (__AVR_AT90USB1287__) +#if defined (__AVR_AT90USB1287__) || defined (__AVR_AT90USB1286__) // SPI #define SCK DIO9 #define MISO DIO11 diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 26c265e53..994683f5d 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -254,7 +254,7 @@ FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) { timer = (unsigned short)pgm_read_word_near(table_address); timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); } - if(timer < 100) { timer = 100; MSerial.print("Steprate to high : "); MSerial.println(step_rate); }//(20kHz this should never happen) + if(timer < 100) { timer = 100; SERIAL.print("Steprate to high : "); SERIAL.println(step_rate); }//(20kHz this should never happen) return timer; } @@ -439,7 +439,9 @@ ISR(TIMER1_COMPA_vect) for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) - MSerial.checkRx(); // Check for serial chars. + #if MOTHERBOARD != 8 // !teensylu + MSerial.checkRx(); // Check for serial chars. + #endif #ifdef ADVANCE counter_e += current_block->steps_e; From 598eb1d4f16beda0f0cfc796aca1b03a25708047 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 9 Feb 2012 19:38:53 +0100 Subject: [PATCH 216/430] Fixed compilation for gcc-4.6.2 with avr-lib-1.8.0 (thanks daid) --- Marlin/Marlin.h | 10 +-- Marlin/Marlin.pde | 2 +- Marlin/speed_lookuptable.h | 150 ++++++++++++++++++------------------- 3 files changed, 81 insertions(+), 81 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 818c6ffe6..821324c13 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -14,7 +14,7 @@ #include #include -#include +#include #include #include #include @@ -58,8 +58,8 @@ // //#define PSTR (s ) ((const PROGMEM char *)(s)) // //# define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) // //#define MYPGM(s) ((const prog_char *g PROGMEM=s)) -// //#define MYPGM(s) PSTR(s) -#define MYPGM(s) (__extension__({static char __c[] __attribute__((__progmem__)) = (s); &__c[0];})) //This is the normal behaviour +#define MYPGM(s) PSTR(s) +//#define MYPGM(s) (__extension__({static char __c[] __attribute__((__progmem__)) = (s); &__c[0];})) //This is the normal behaviour //#define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) //this does not work but hides the warnings @@ -69,8 +69,8 @@ #define SERIAL_PROTOCOLLNPGM(x) {serialprintPGM(MYPGM(x));SERIAL.write('\n');} -const prog_char errormagic[] PROGMEM ="Error:"; -const prog_char echomagic[] PROGMEM ="echo:"; +const char errormagic[] PROGMEM ="Error:"; +const char echomagic[] PROGMEM ="echo:"; #define SERIAL_ERROR_START serialprintPGM(errormagic); #define SERIAL_ERROR(x) SERIAL_PROTOCOL(x) #define SERIAL_ERRORPGM(x) SERIAL_PROTOCOLPGM(x) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 5c20bd657..dcd600468 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -164,7 +164,7 @@ const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 //Inactivity shutdown variables static unsigned long previous_millis_cmd = 0; static unsigned long max_inactive_time = 0; -static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000; +static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000l; static unsigned long last_stepperdisabled_time=30*1000; //first release check after 30 seconds static unsigned long starttime=0; diff --git a/Marlin/speed_lookuptable.h b/Marlin/speed_lookuptable.h index ab3a076f1..0c326d640 100644 --- a/Marlin/speed_lookuptable.h +++ b/Marlin/speed_lookuptable.h @@ -1,76 +1,76 @@ -#ifndef SPEED_LOOKUPTABLE_H -#define SPEED_LOOKUPTABLE_H - -#include "Marlin.h" - -uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ -{ 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, -{ 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, -{ 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, -{ 323, 13}, { 310, 11}, { 299, 11}, { 288, 11}, { 277, 9}, { 268, 9}, { 259, 8}, { 251, 8}, -{ 243, 8}, { 235, 7}, { 228, 6}, { 222, 6}, { 216, 6}, { 210, 6}, { 204, 5}, { 199, 5}, -{ 194, 5}, { 189, 4}, { 185, 4}, { 181, 4}, { 177, 4}, { 173, 4}, { 169, 4}, { 165, 3}, -{ 162, 3}, { 159, 4}, { 155, 3}, { 152, 3}, { 149, 2}, { 147, 3}, { 144, 3}, { 141, 2}, -{ 139, 3}, { 136, 2}, { 134, 2}, { 132, 3}, { 129, 2}, { 127, 2}, { 125, 2}, { 123, 2}, -{ 121, 2}, { 119, 1}, { 118, 2}, { 116, 2}, { 114, 1}, { 113, 2}, { 111, 2}, { 109, 1}, -{ 108, 2}, { 106, 1}, { 105, 2}, { 103, 1}, { 102, 1}, { 101, 1}, { 100, 2}, { 98, 1}, -{ 97, 1}, { 96, 1}, { 95, 2}, { 93, 1}, { 92, 1}, { 91, 1}, { 90, 1}, { 89, 1}, -{ 88, 1}, { 87, 1}, { 86, 1}, { 85, 1}, { 84, 1}, { 83, 0}, { 83, 1}, { 82, 1}, -{ 81, 1}, { 80, 1}, { 79, 1}, { 78, 0}, { 78, 1}, { 77, 1}, { 76, 1}, { 75, 0}, -{ 75, 1}, { 74, 1}, { 73, 1}, { 72, 0}, { 72, 1}, { 71, 1}, { 70, 0}, { 70, 1}, -{ 69, 0}, { 69, 1}, { 68, 1}, { 67, 0}, { 67, 1}, { 66, 0}, { 66, 1}, { 65, 0}, -{ 65, 1}, { 64, 1}, { 63, 0}, { 63, 1}, { 62, 0}, { 62, 1}, { 61, 0}, { 61, 1}, -{ 60, 0}, { 60, 0}, { 60, 1}, { 59, 0}, { 59, 1}, { 58, 0}, { 58, 1}, { 57, 0}, -{ 57, 1}, { 56, 0}, { 56, 0}, { 56, 1}, { 55, 0}, { 55, 1}, { 54, 0}, { 54, 0}, -{ 54, 1}, { 53, 0}, { 53, 0}, { 53, 1}, { 52, 0}, { 52, 0}, { 52, 1}, { 51, 0}, -{ 51, 0}, { 51, 1}, { 50, 0}, { 50, 0}, { 50, 1}, { 49, 0}, { 49, 0}, { 49, 1}, -{ 48, 0}, { 48, 0}, { 48, 1}, { 47, 0}, { 47, 0}, { 47, 0}, { 47, 1}, { 46, 0}, -{ 46, 0}, { 46, 1}, { 45, 0}, { 45, 0}, { 45, 0}, { 45, 1}, { 44, 0}, { 44, 0}, -{ 44, 0}, { 44, 1}, { 43, 0}, { 43, 0}, { 43, 0}, { 43, 1}, { 42, 0}, { 42, 0}, -{ 42, 0}, { 42, 1}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 1}, { 40, 0}, -{ 40, 0}, { 40, 0}, { 40, 0}, { 40, 1}, { 39, 0}, { 39, 0}, { 39, 0}, { 39, 0}, -{ 39, 1}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 1}, { 37, 0}, { 37, 0}, -{ 37, 0}, { 37, 0}, { 37, 0}, { 37, 1}, { 36, 0}, { 36, 0}, { 36, 0}, { 36, 0}, -{ 36, 1}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 1}, -{ 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, -{ 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, -{ 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, -{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} -}; - -uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ -{ 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, -{ 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, -{ 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, -{ 8928, 308}, { 8620, 287}, { 8333, 269}, { 8064, 252}, { 7812, 237}, { 7575, 223}, { 7352, 210}, { 7142, 198}, -{ 6944, 188}, { 6756, 178}, { 6578, 168}, { 6410, 160}, { 6250, 153}, { 6097, 145}, { 5952, 139}, { 5813, 132}, -{ 5681, 126}, { 5555, 121}, { 5434, 115}, { 5319, 111}, { 5208, 106}, { 5102, 102}, { 5000, 99}, { 4901, 94}, -{ 4807, 91}, { 4716, 87}, { 4629, 84}, { 4545, 81}, { 4464, 79}, { 4385, 75}, { 4310, 73}, { 4237, 71}, -{ 4166, 68}, { 4098, 66}, { 4032, 64}, { 3968, 62}, { 3906, 60}, { 3846, 59}, { 3787, 56}, { 3731, 55}, -{ 3676, 53}, { 3623, 52}, { 3571, 50}, { 3521, 49}, { 3472, 48}, { 3424, 46}, { 3378, 45}, { 3333, 44}, -{ 3289, 43}, { 3246, 41}, { 3205, 41}, { 3164, 39}, { 3125, 39}, { 3086, 38}, { 3048, 36}, { 3012, 36}, -{ 2976, 35}, { 2941, 35}, { 2906, 33}, { 2873, 33}, { 2840, 32}, { 2808, 31}, { 2777, 30}, { 2747, 30}, -{ 2717, 29}, { 2688, 29}, { 2659, 28}, { 2631, 27}, { 2604, 27}, { 2577, 26}, { 2551, 26}, { 2525, 25}, -{ 2500, 25}, { 2475, 25}, { 2450, 23}, { 2427, 24}, { 2403, 23}, { 2380, 22}, { 2358, 22}, { 2336, 22}, -{ 2314, 21}, { 2293, 21}, { 2272, 20}, { 2252, 20}, { 2232, 20}, { 2212, 20}, { 2192, 19}, { 2173, 18}, -{ 2155, 19}, { 2136, 18}, { 2118, 18}, { 2100, 17}, { 2083, 17}, { 2066, 17}, { 2049, 17}, { 2032, 16}, -{ 2016, 16}, { 2000, 16}, { 1984, 16}, { 1968, 15}, { 1953, 16}, { 1937, 14}, { 1923, 15}, { 1908, 15}, -{ 1893, 14}, { 1879, 14}, { 1865, 14}, { 1851, 13}, { 1838, 14}, { 1824, 13}, { 1811, 13}, { 1798, 13}, -{ 1785, 12}, { 1773, 13}, { 1760, 12}, { 1748, 12}, { 1736, 12}, { 1724, 12}, { 1712, 12}, { 1700, 11}, -{ 1689, 12}, { 1677, 11}, { 1666, 11}, { 1655, 11}, { 1644, 11}, { 1633, 10}, { 1623, 11}, { 1612, 10}, -{ 1602, 10}, { 1592, 10}, { 1582, 10}, { 1572, 10}, { 1562, 10}, { 1552, 9}, { 1543, 10}, { 1533, 9}, -{ 1524, 9}, { 1515, 9}, { 1506, 9}, { 1497, 9}, { 1488, 9}, { 1479, 9}, { 1470, 9}, { 1461, 8}, -{ 1453, 8}, { 1445, 9}, { 1436, 8}, { 1428, 8}, { 1420, 8}, { 1412, 8}, { 1404, 8}, { 1396, 8}, -{ 1388, 7}, { 1381, 8}, { 1373, 7}, { 1366, 8}, { 1358, 7}, { 1351, 7}, { 1344, 8}, { 1336, 7}, -{ 1329, 7}, { 1322, 7}, { 1315, 7}, { 1308, 6}, { 1302, 7}, { 1295, 7}, { 1288, 6}, { 1282, 7}, -{ 1275, 6}, { 1269, 7}, { 1262, 6}, { 1256, 6}, { 1250, 7}, { 1243, 6}, { 1237, 6}, { 1231, 6}, -{ 1225, 6}, { 1219, 6}, { 1213, 6}, { 1207, 6}, { 1201, 5}, { 1196, 6}, { 1190, 6}, { 1184, 5}, -{ 1179, 6}, { 1173, 5}, { 1168, 6}, { 1162, 5}, { 1157, 5}, { 1152, 6}, { 1146, 5}, { 1141, 5}, -{ 1136, 5}, { 1131, 5}, { 1126, 5}, { 1121, 5}, { 1116, 5}, { 1111, 5}, { 1106, 5}, { 1101, 5}, -{ 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, -{ 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, -{ 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, -{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3} -}; - +#ifndef SPEED_LOOKUPTABLE_H +#define SPEED_LOOKUPTABLE_H + +#include "Marlin.h" + +const uint16_t speed_lookuptable_fast[256][2] PROGMEM = {\ +{ 62500, 55556}, { 6944, 3268}, { 3676, 1176}, { 2500, 607}, { 1893, 369}, { 1524, 249}, { 1275, 179}, { 1096, 135}, +{ 961, 105}, { 856, 85}, { 771, 69}, { 702, 58}, { 644, 49}, { 595, 42}, { 553, 37}, { 516, 32}, +{ 484, 28}, { 456, 25}, { 431, 23}, { 408, 20}, { 388, 19}, { 369, 16}, { 353, 16}, { 337, 14}, +{ 323, 13}, { 310, 11}, { 299, 11}, { 288, 11}, { 277, 9}, { 268, 9}, { 259, 8}, { 251, 8}, +{ 243, 8}, { 235, 7}, { 228, 6}, { 222, 6}, { 216, 6}, { 210, 6}, { 204, 5}, { 199, 5}, +{ 194, 5}, { 189, 4}, { 185, 4}, { 181, 4}, { 177, 4}, { 173, 4}, { 169, 4}, { 165, 3}, +{ 162, 3}, { 159, 4}, { 155, 3}, { 152, 3}, { 149, 2}, { 147, 3}, { 144, 3}, { 141, 2}, +{ 139, 3}, { 136, 2}, { 134, 2}, { 132, 3}, { 129, 2}, { 127, 2}, { 125, 2}, { 123, 2}, +{ 121, 2}, { 119, 1}, { 118, 2}, { 116, 2}, { 114, 1}, { 113, 2}, { 111, 2}, { 109, 1}, +{ 108, 2}, { 106, 1}, { 105, 2}, { 103, 1}, { 102, 1}, { 101, 1}, { 100, 2}, { 98, 1}, +{ 97, 1}, { 96, 1}, { 95, 2}, { 93, 1}, { 92, 1}, { 91, 1}, { 90, 1}, { 89, 1}, +{ 88, 1}, { 87, 1}, { 86, 1}, { 85, 1}, { 84, 1}, { 83, 0}, { 83, 1}, { 82, 1}, +{ 81, 1}, { 80, 1}, { 79, 1}, { 78, 0}, { 78, 1}, { 77, 1}, { 76, 1}, { 75, 0}, +{ 75, 1}, { 74, 1}, { 73, 1}, { 72, 0}, { 72, 1}, { 71, 1}, { 70, 0}, { 70, 1}, +{ 69, 0}, { 69, 1}, { 68, 1}, { 67, 0}, { 67, 1}, { 66, 0}, { 66, 1}, { 65, 0}, +{ 65, 1}, { 64, 1}, { 63, 0}, { 63, 1}, { 62, 0}, { 62, 1}, { 61, 0}, { 61, 1}, +{ 60, 0}, { 60, 0}, { 60, 1}, { 59, 0}, { 59, 1}, { 58, 0}, { 58, 1}, { 57, 0}, +{ 57, 1}, { 56, 0}, { 56, 0}, { 56, 1}, { 55, 0}, { 55, 1}, { 54, 0}, { 54, 0}, +{ 54, 1}, { 53, 0}, { 53, 0}, { 53, 1}, { 52, 0}, { 52, 0}, { 52, 1}, { 51, 0}, +{ 51, 0}, { 51, 1}, { 50, 0}, { 50, 0}, { 50, 1}, { 49, 0}, { 49, 0}, { 49, 1}, +{ 48, 0}, { 48, 0}, { 48, 1}, { 47, 0}, { 47, 0}, { 47, 0}, { 47, 1}, { 46, 0}, +{ 46, 0}, { 46, 1}, { 45, 0}, { 45, 0}, { 45, 0}, { 45, 1}, { 44, 0}, { 44, 0}, +{ 44, 0}, { 44, 1}, { 43, 0}, { 43, 0}, { 43, 0}, { 43, 1}, { 42, 0}, { 42, 0}, +{ 42, 0}, { 42, 1}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 0}, { 41, 1}, { 40, 0}, +{ 40, 0}, { 40, 0}, { 40, 0}, { 40, 1}, { 39, 0}, { 39, 0}, { 39, 0}, { 39, 0}, +{ 39, 1}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 0}, { 38, 1}, { 37, 0}, { 37, 0}, +{ 37, 0}, { 37, 0}, { 37, 0}, { 37, 1}, { 36, 0}, { 36, 0}, { 36, 0}, { 36, 0}, +{ 36, 1}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 0}, { 35, 1}, +{ 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 0}, { 34, 1}, { 33, 0}, { 33, 0}, +{ 33, 0}, { 33, 0}, { 33, 0}, { 33, 0}, { 33, 1}, { 32, 0}, { 32, 0}, { 32, 0}, +{ 32, 0}, { 32, 0}, { 32, 0}, { 32, 0}, { 32, 1}, { 31, 0}, { 31, 0}, { 31, 0}, +{ 31, 0}, { 31, 0}, { 31, 0}, { 31, 1}, { 30, 0}, { 30, 0}, { 30, 0}, { 30, 0} +}; + +const uint16_t speed_lookuptable_slow[256][2] PROGMEM = {\ +{ 62500, 12500}, { 50000, 8334}, { 41666, 5952}, { 35714, 4464}, { 31250, 3473}, { 27777, 2777}, { 25000, 2273}, { 22727, 1894}, +{ 20833, 1603}, { 19230, 1373}, { 17857, 1191}, { 16666, 1041}, { 15625, 920}, { 14705, 817}, { 13888, 731}, { 13157, 657}, +{ 12500, 596}, { 11904, 541}, { 11363, 494}, { 10869, 453}, { 10416, 416}, { 10000, 385}, { 9615, 356}, { 9259, 331}, +{ 8928, 308}, { 8620, 287}, { 8333, 269}, { 8064, 252}, { 7812, 237}, { 7575, 223}, { 7352, 210}, { 7142, 198}, +{ 6944, 188}, { 6756, 178}, { 6578, 168}, { 6410, 160}, { 6250, 153}, { 6097, 145}, { 5952, 139}, { 5813, 132}, +{ 5681, 126}, { 5555, 121}, { 5434, 115}, { 5319, 111}, { 5208, 106}, { 5102, 102}, { 5000, 99}, { 4901, 94}, +{ 4807, 91}, { 4716, 87}, { 4629, 84}, { 4545, 81}, { 4464, 79}, { 4385, 75}, { 4310, 73}, { 4237, 71}, +{ 4166, 68}, { 4098, 66}, { 4032, 64}, { 3968, 62}, { 3906, 60}, { 3846, 59}, { 3787, 56}, { 3731, 55}, +{ 3676, 53}, { 3623, 52}, { 3571, 50}, { 3521, 49}, { 3472, 48}, { 3424, 46}, { 3378, 45}, { 3333, 44}, +{ 3289, 43}, { 3246, 41}, { 3205, 41}, { 3164, 39}, { 3125, 39}, { 3086, 38}, { 3048, 36}, { 3012, 36}, +{ 2976, 35}, { 2941, 35}, { 2906, 33}, { 2873, 33}, { 2840, 32}, { 2808, 31}, { 2777, 30}, { 2747, 30}, +{ 2717, 29}, { 2688, 29}, { 2659, 28}, { 2631, 27}, { 2604, 27}, { 2577, 26}, { 2551, 26}, { 2525, 25}, +{ 2500, 25}, { 2475, 25}, { 2450, 23}, { 2427, 24}, { 2403, 23}, { 2380, 22}, { 2358, 22}, { 2336, 22}, +{ 2314, 21}, { 2293, 21}, { 2272, 20}, { 2252, 20}, { 2232, 20}, { 2212, 20}, { 2192, 19}, { 2173, 18}, +{ 2155, 19}, { 2136, 18}, { 2118, 18}, { 2100, 17}, { 2083, 17}, { 2066, 17}, { 2049, 17}, { 2032, 16}, +{ 2016, 16}, { 2000, 16}, { 1984, 16}, { 1968, 15}, { 1953, 16}, { 1937, 14}, { 1923, 15}, { 1908, 15}, +{ 1893, 14}, { 1879, 14}, { 1865, 14}, { 1851, 13}, { 1838, 14}, { 1824, 13}, { 1811, 13}, { 1798, 13}, +{ 1785, 12}, { 1773, 13}, { 1760, 12}, { 1748, 12}, { 1736, 12}, { 1724, 12}, { 1712, 12}, { 1700, 11}, +{ 1689, 12}, { 1677, 11}, { 1666, 11}, { 1655, 11}, { 1644, 11}, { 1633, 10}, { 1623, 11}, { 1612, 10}, +{ 1602, 10}, { 1592, 10}, { 1582, 10}, { 1572, 10}, { 1562, 10}, { 1552, 9}, { 1543, 10}, { 1533, 9}, +{ 1524, 9}, { 1515, 9}, { 1506, 9}, { 1497, 9}, { 1488, 9}, { 1479, 9}, { 1470, 9}, { 1461, 8}, +{ 1453, 8}, { 1445, 9}, { 1436, 8}, { 1428, 8}, { 1420, 8}, { 1412, 8}, { 1404, 8}, { 1396, 8}, +{ 1388, 7}, { 1381, 8}, { 1373, 7}, { 1366, 8}, { 1358, 7}, { 1351, 7}, { 1344, 8}, { 1336, 7}, +{ 1329, 7}, { 1322, 7}, { 1315, 7}, { 1308, 6}, { 1302, 7}, { 1295, 7}, { 1288, 6}, { 1282, 7}, +{ 1275, 6}, { 1269, 7}, { 1262, 6}, { 1256, 6}, { 1250, 7}, { 1243, 6}, { 1237, 6}, { 1231, 6}, +{ 1225, 6}, { 1219, 6}, { 1213, 6}, { 1207, 6}, { 1201, 5}, { 1196, 6}, { 1190, 6}, { 1184, 5}, +{ 1179, 6}, { 1173, 5}, { 1168, 6}, { 1162, 5}, { 1157, 5}, { 1152, 6}, { 1146, 5}, { 1141, 5}, +{ 1136, 5}, { 1131, 5}, { 1126, 5}, { 1121, 5}, { 1116, 5}, { 1111, 5}, { 1106, 5}, { 1101, 5}, +{ 1096, 5}, { 1091, 5}, { 1086, 4}, { 1082, 5}, { 1077, 5}, { 1072, 4}, { 1068, 5}, { 1063, 4}, +{ 1059, 5}, { 1054, 4}, { 1050, 4}, { 1046, 5}, { 1041, 4}, { 1037, 4}, { 1033, 5}, { 1028, 4}, +{ 1024, 4}, { 1020, 4}, { 1016, 4}, { 1012, 4}, { 1008, 4}, { 1004, 4}, { 1000, 4}, { 996, 4}, +{ 992, 4}, { 988, 4}, { 984, 4}, { 980, 4}, { 976, 4}, { 972, 4}, { 968, 3}, { 965, 3} +}; + #endif From 6ef8459494cd5ffdc1b2098f81a8346e006c8657 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 9 Feb 2012 19:53:06 +0100 Subject: [PATCH 217/430] Corrected distance calculation. (thanks jv4779) --- Marlin/planner.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 85c82aecc..2eb073333 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -517,8 +517,11 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; - block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + - square(delta_mm[Z_AXIS]) + square(delta_mm[E_AXIS])); + if ( block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0 ) { + block->millimeters = delta_mm[E_AXIS]; + } else { + block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + square(delta_mm[Z_AXIS])); + } float inverse_millimeters = 1.0/block->millimeters; // Inverse millimeters to remove multiple divides // Calculate speed in mm/second for each axis. No divide by zero due to previous checks. @@ -527,9 +530,6 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa block->nominal_speed = block->millimeters * inverse_second; // (mm/sec) Always > 0 block->nominal_rate = ceil(block->step_event_count * inverse_second); // (step/sec) Always > 0 - - - if (block->steps_e == 0) { if(feed_rate Date: Thu, 9 Feb 2012 20:26:17 +0100 Subject: [PATCH 218/430] Print configuration.h version during startup (thanks hairykiwi) --- Marlin/Configuration.h | 6 ++++++ Marlin/Marlin.pde | 14 ++++++++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 9e14a47fc..7288e8fb5 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -5,6 +5,12 @@ // Advanced settings can be found in Configuration_adv.h // BASIC SETTINGS: select your board type, temperature sensor type, axis scaling, and endstop configuration +//User specified version info of THIS file to display in [Pronterface, etc] terminal window during startup. +//Implementation of an idea by Prof Braino to inform user that any changes made +//to THIS file by the user have been successfully uploaded into firmware. +#define STRING_VERSION_CONFIG_H "2012-02-08j" //Personal revision number for changes to THIS file. +#define STRING_CONFIG_H_AUTHOR "username" //Who made the changes. + // This determines the communication speed of the printer #define BAUDRATE 250000 //#define BAUDRATE 115200 diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index dcd600468..5b4bce9b4 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -248,10 +248,20 @@ void setup() { setup_powerhold(); SERIAL.begin(BAUDRATE); - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM(VERSION_STRING); SERIAL_PROTOCOLLNPGM("start"); SERIAL_ECHO_START; + SERIAL_ECHOPGM("Marlin: "); + SERIAL_ECHOLNPGM(VERSION_STRING); + #ifdef STRING_VERSION_CONFIG_H + #ifdef STRING_CONFIG_H_AUTHOR + SERIAL_ECHO_START; + SERIAL_ECHOPGM("Configuration.h: "); + SERIAL_ECHOPGM(STRING_VERSION_CONFIG_H); + SERIAL_ECHOPGM(" | Author: "); + SERIAL_ECHOLNPGM(STRING_CONFIG_H_AUTHOR); + #endif + #endif + SERIAL_ECHO_START; SERIAL_ECHOPGM("Free Memory:"); SERIAL_ECHO(freeMemory()); SERIAL_ECHOPGM(" PlannerBufferBytes:"); From f87c80889fe967ea883f96d2eed0f82398d8a3dd Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 9 Feb 2012 20:54:49 +0100 Subject: [PATCH 219/430] Fixed M109 timer overflow (reported by triffid) --- Marlin/Marlin.pde | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 5b4bce9b4..b2a9065f9 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -842,7 +842,7 @@ void process_commands() /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ while((residencyStart == -1) || - (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { + (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000l) ) { #else while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) { #endif //TEMP_RESIDENCY_TIME From d47a3e5950ec8dc129c8939ae8a9acdf32580134 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 9 Feb 2012 21:02:01 +0100 Subject: [PATCH 220/430] Changed check i mtion_conrol if (millimeters_of_travel == 0.0) => if (millimeters_of_travel < 0.001) (thanks mooselake) --- Marlin/motion_control.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index ab403e981..a24b2b782 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -45,7 +45,7 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 if (isclockwise) { angular_travel -= 2*M_PI; } float millimeters_of_travel = hypot(angular_travel*radius, fabs(linear_travel)); - if (millimeters_of_travel == 0.0) { return; } + if (millimeters_of_travel < 0.001) { return; } uint16_t segments = floor(millimeters_of_travel/MM_PER_ARC_SEGMENT); /* // Multiply inverse feed_rate to compensate for the fact that this movement is approximated From 2a77c84c8f673862d93c7734588e6009376169d8 Mon Sep 17 00:00:00 2001 From: daid Date: Sat, 11 Feb 2012 16:02:47 +0100 Subject: [PATCH 221/430] Updated SERIAL define to MYSERIAL, because Arduino 1.0 defines SERIAL as 0. --- Marlin/Marlin.h | 12 ++++++------ Marlin/Marlin.pde | 8 ++++---- Marlin/SdBaseFile.cpp | 44 +++++++++++++++++++++---------------------- Marlin/SdFatUtil.cpp | 4 ++-- Marlin/stepper.cpp | 2 +- 5 files changed, 35 insertions(+), 35 deletions(-) diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 821324c13..ffa3839a7 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -47,9 +47,9 @@ #include "WString.h" #if MOTHERBOARD == 8 // Teensylu - #define SERIAL Serial + #define MYSERIAL Serial #else - #define SERIAL MSerial + #define MYSERIAL MSerial #endif //this is a unfinsihed attemp to removes a lot of warning messages, see: @@ -63,10 +63,10 @@ //#define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) //this does not work but hides the warnings -#define SERIAL_PROTOCOL(x) SERIAL.print(x); +#define SERIAL_PROTOCOL(x) MYSERIAL.print(x); #define SERIAL_PROTOCOLPGM(x) serialprintPGM(MYPGM(x)); -#define SERIAL_PROTOCOLLN(x) {SERIAL.print(x);SERIAL.write('\n');} -#define SERIAL_PROTOCOLLNPGM(x) {serialprintPGM(MYPGM(x));SERIAL.write('\n');} +#define SERIAL_PROTOCOLLN(x) {MYSERIAL.print(x);MYSERIAL.write('\n');} +#define SERIAL_PROTOCOLLNPGM(x) {serialprintPGM(MYPGM(x));MYSERIAL.write('\n');} const char errormagic[] PROGMEM ="Error:"; @@ -93,7 +93,7 @@ FORCE_INLINE void serialprintPGM(const char *str) char ch=pgm_read_byte(str); while(ch) { - SERIAL.write(ch); + MYSERIAL.write(ch); ch=pgm_read_byte(++str); } } diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b2a9065f9..b16174c2d 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -247,7 +247,7 @@ void suicide() void setup() { setup_powerhold(); - SERIAL.begin(BAUDRATE); + MYSERIAL.begin(BAUDRATE); SERIAL_PROTOCOLLNPGM("start"); SERIAL_ECHO_START; SERIAL_ECHOPGM("Marlin: "); @@ -328,8 +328,8 @@ void loop() void get_command() { - while( SERIAL.available() > 0 && buflen < BUFSIZE) { - serial_char = SERIAL.read(); + while( MYSERIAL.available() > 0 && buflen < BUFSIZE) { + serial_char = MYSERIAL.read(); if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) { if(!serial_count) return; //if empty line @@ -1219,7 +1219,7 @@ void process_commands() void FlushSerialRequestResend() { //char cmdbuffer[bufindr][100]="Resend:"; - SERIAL.flush(); + MYSERIAL.flush(); SERIAL_PROTOCOLPGM("Resend:"); SERIAL_PROTOCOLLN(gcode_LastN + 1); ClearToSend(); diff --git a/Marlin/SdBaseFile.cpp b/Marlin/SdBaseFile.cpp index 450c9f327..b84efc8ea 100644 --- a/Marlin/SdBaseFile.cpp +++ b/Marlin/SdBaseFile.cpp @@ -343,38 +343,38 @@ int8_t SdBaseFile::lsPrintNext( uint8_t flags, uint8_t indent) { && DIR_IS_FILE_OR_SUBDIR(&dir)) break; } // indent for dir level - for (uint8_t i = 0; i < indent; i++) SERIAL.write(' '); + for (uint8_t i = 0; i < indent; i++) MYSERIAL.write(' '); // print name for (uint8_t i = 0; i < 11; i++) { if (dir.name[i] == ' ')continue; if (i == 8) { - SERIAL.write('.'); + MYSERIAL.write('.'); w++; } - SERIAL.write(dir.name[i]); + MYSERIAL.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir)) { - SERIAL.write('/'); + MYSERIAL.write('/'); w++; } if (flags & (LS_DATE | LS_SIZE)) { - while (w++ < 14) SERIAL.write(' '); + while (w++ < 14) MYSERIAL.write(' '); } // print modify date/time if requested if (flags & LS_DATE) { - SERIAL.write(' '); + MYSERIAL.write(' '); printFatDate( dir.lastWriteDate); - SERIAL.write(' '); + MYSERIAL.write(' '); printFatTime( dir.lastWriteTime); } // print size if requested if (!DIR_IS_SUBDIR(&dir) && (flags & LS_SIZE)) { - SERIAL.write(' '); - SERIAL.print(dir.fileSize); + MYSERIAL.write(' '); + MYSERIAL.print(dir.fileSize); } - SERIAL.println(); + MYSERIAL.println(); return DIR_IS_FILE(&dir) ? 1 : 2; } //------------------------------------------------------------------------------ @@ -945,26 +945,26 @@ void SdBaseFile::printDirName(const dir_t& dir, for (uint8_t i = 0; i < 11; i++) { if (dir.name[i] == ' ')continue; if (i == 8) { - SERIAL.write('.'); + MYSERIAL.write('.'); w++; } - SERIAL.write(dir.name[i]); + MYSERIAL.write(dir.name[i]); w++; } if (DIR_IS_SUBDIR(&dir) && printSlash) { - SERIAL.write('/'); + MYSERIAL.write('/'); w++; } while (w < width) { - SERIAL.write(' '); + MYSERIAL.write(' '); w++; } } //------------------------------------------------------------------------------ // print uint8_t with width 2 static void print2u( uint8_t v) { - if (v < 10) SERIAL.write('0'); - SERIAL.print(v, DEC); + if (v < 10) MYSERIAL.write('0'); + MYSERIAL.print(v, DEC); } //------------------------------------------------------------------------------ /** %Print a directory date field to Serial. @@ -983,10 +983,10 @@ static void print2u( uint8_t v) { * \param[in] fatDate The date field from a directory entry. */ void SdBaseFile::printFatDate(uint16_t fatDate) { - SERIAL.print(FAT_YEAR(fatDate)); - SERIAL.write('-'); + MYSERIAL.print(FAT_YEAR(fatDate)); + MYSERIAL.write('-'); print2u( FAT_MONTH(fatDate)); - SERIAL.write('-'); + MYSERIAL.write('-'); print2u( FAT_DAY(fatDate)); } @@ -1000,9 +1000,9 @@ void SdBaseFile::printFatDate(uint16_t fatDate) { */ void SdBaseFile::printFatTime( uint16_t fatTime) { print2u( FAT_HOUR(fatTime)); - SERIAL.write(':'); + MYSERIAL.write(':'); print2u( FAT_MINUTE(fatTime)); - SERIAL.write(':'); + MYSERIAL.write(':'); print2u( FAT_SECOND(fatTime)); } //------------------------------------------------------------------------------ @@ -1014,7 +1014,7 @@ void SdBaseFile::printFatTime( uint16_t fatTime) { bool SdBaseFile::printName() { char name[13]; if (!getFilename(name)) return false; - SERIAL.print(name); + MYSERIAL.print(name); return true; } //------------------------------------------------------------------------------ diff --git a/Marlin/SdFatUtil.cpp b/Marlin/SdFatUtil.cpp index 965f6ec21..1187ec539 100644 --- a/Marlin/SdFatUtil.cpp +++ b/Marlin/SdFatUtil.cpp @@ -48,7 +48,7 @@ int SdFatUtil::FreeRam() { * \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.write(c); + for (uint8_t c; (c = pgm_read_byte(str)); str++) MYSERIAL.write(c); } //------------------------------------------------------------------------------ /** %Print a string in flash memory followed by a CR/LF. @@ -58,7 +58,7 @@ void SdFatUtil::print_P( PGM_P str) { */ void SdFatUtil::println_P( PGM_P str) { print_P( str); - SERIAL.println(); + MYSERIAL.println(); } //------------------------------------------------------------------------------ /** %Print a string in flash memory to Serial. diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 994683f5d..6bd84b13f 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -254,7 +254,7 @@ FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) { timer = (unsigned short)pgm_read_word_near(table_address); timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); } - if(timer < 100) { timer = 100; SERIAL.print("Steprate to high : "); SERIAL.println(step_rate); }//(20kHz this should never happen) + if(timer < 100) { timer = 100; MYSERIAL.print("Steprate to high : "); MYSERIAL.println(step_rate); }//(20kHz this should never happen) return timer; } From b58eae7657990e59bd6154c9b2a826baa22d7f61 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 11 Feb 2012 18:36:42 +0100 Subject: [PATCH 222/430] Corrected e-length calculation in planner --- Marlin/planner.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 2eb073333..b895b95e5 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -518,7 +518,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; if ( block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0 ) { - block->millimeters = delta_mm[E_AXIS]; + block->millimeters = abs(delta_mm[E_AXIS]); } else { block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + square(delta_mm[Z_AXIS])); } From 13e185d3302649b70bb5c23ecbb27bfe6b1163ba Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 11 Feb 2012 23:22:16 +0100 Subject: [PATCH 223/430] removed unused HEATING_EARLY_FINISH_DEG_OFFSET Simplified stepper inactive time --- Marlin/Configuration_adv.h | 6 +----- Marlin/Marlin.pde | 19 ++++++++----------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 1bdbd1ac2..a19747d14 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -25,9 +25,6 @@ // if CooldownNoWait is defined M109 will not wait for the cooldown to finish #define CooldownNoWait true -// Heating is finished if a temperature close to this degree shift is reached -#define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree - //Do not wait for M109 to finish when printing from SD card //#define STOP_HEATING_WAIT_WHEN_SD_PRINTING @@ -85,7 +82,6 @@ //default stepper release if idle #define DEFAULT_STEPPER_DEACTIVE_TIME 60 -#define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered #define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate #define DEFAULT_MINTRAVELFEEDRATE 0.0 @@ -112,7 +108,7 @@ #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? -#define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. +#define SD_FINISHED_RELEASECOMMAND "M84 X Y Z E" // no z because of layer shift. // The hardware watchdog should halt the Microcontroller, in case the firmware gets stuck somewhere. However: // the Watchdog is not working well, so please only enable this for testing diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b16174c2d..a4997f31c 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -165,7 +165,6 @@ const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 static unsigned long previous_millis_cmd = 0; static unsigned long max_inactive_time = 0; static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000l; -static unsigned long last_stepperdisabled_time=30*1000; //first release check after 30 seconds static unsigned long starttime=0; static unsigned long stoptime=0; @@ -1296,16 +1295,15 @@ void manage_inactivity(byte debug) if( (millis() - previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if(stepper_inactive_time) - if( (millis() - last_stepperdisabled_time) > stepper_inactive_time ) - { - if(previous_millis_cmd>last_stepperdisabled_time) - last_stepperdisabled_time=previous_millis_cmd; - else + if(stepper_inactive_time) { + if( (millis() - previous_millis_cmd) > stepper_inactive_time ) { - if( (X_ENABLE_ON && (READ(X_ENABLE_PIN)!=0)) || (!X_ENABLE_ON && READ(X_ENABLE_PIN)==0) ) - enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); - last_stepperdisabled_time=millis(); + disable_x(); + disable_y(); + disable_z(); + disable_e0(); + disable_e1(); + disable_e2(); } } #ifdef EXTRUDER_RUNOUT_PREVENT @@ -1323,7 +1321,6 @@ void manage_inactivity(byte debug) destination[E_AXIS]=oldedes; plan_set_e_position(oldepos); previous_millis_cmd=millis(); - //enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); st_synchronize(); WRITE(E0_ENABLE_PIN,oldstatus); } From bde30b2b4837c816789d42896ad5654222ff4c06 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 12 Feb 2012 01:36:42 +0800 Subject: [PATCH 224/430] Corrected e-length calculation in planner --- Marlin/planner.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 2eb073333..b895b95e5 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -518,7 +518,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; if ( block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0 ) { - block->millimeters = delta_mm[E_AXIS]; + block->millimeters = abs(delta_mm[E_AXIS]); } else { block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + square(delta_mm[Z_AXIS])); } From b447815de5474b4533bcebb2e4b1d831fb731141 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 12 Feb 2012 06:22:16 +0800 Subject: [PATCH 225/430] removed unused HEATING_EARLY_FINISH_DEG_OFFSET Simplified stepper inactive time --- Marlin/Configuration_adv.h | 6 +----- Marlin/Marlin.pde | 19 ++++++++----------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 1bdbd1ac2..a19747d14 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -25,9 +25,6 @@ // if CooldownNoWait is defined M109 will not wait for the cooldown to finish #define CooldownNoWait true -// Heating is finished if a temperature close to this degree shift is reached -#define HEATING_EARLY_FINISH_DEG_OFFSET 1 //Degree - //Do not wait for M109 to finish when printing from SD card //#define STOP_HEATING_WAIT_WHEN_SD_PRINTING @@ -85,7 +82,6 @@ //default stepper release if idle #define DEFAULT_STEPPER_DEACTIVE_TIME 60 -#define DEFAULT_STEPPER_DEACTIVE_COMMAND "M84 X Y E" //z stays powered #define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate #define DEFAULT_MINTRAVELFEEDRATE 0.0 @@ -112,7 +108,7 @@ #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? -#define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. +#define SD_FINISHED_RELEASECOMMAND "M84 X Y Z E" // no z because of layer shift. // The hardware watchdog should halt the Microcontroller, in case the firmware gets stuck somewhere. However: // the Watchdog is not working well, so please only enable this for testing diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b16174c2d..a4997f31c 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -165,7 +165,6 @@ const int sensitive_pins[] = SENSITIVE_PINS; // Sensitive pin list for M42 static unsigned long previous_millis_cmd = 0; static unsigned long max_inactive_time = 0; static unsigned long stepper_inactive_time = DEFAULT_STEPPER_DEACTIVE_TIME*1000l; -static unsigned long last_stepperdisabled_time=30*1000; //first release check after 30 seconds static unsigned long starttime=0; static unsigned long stoptime=0; @@ -1296,16 +1295,15 @@ void manage_inactivity(byte debug) if( (millis() - previous_millis_cmd) > max_inactive_time ) if(max_inactive_time) kill(); - if(stepper_inactive_time) - if( (millis() - last_stepperdisabled_time) > stepper_inactive_time ) - { - if(previous_millis_cmd>last_stepperdisabled_time) - last_stepperdisabled_time=previous_millis_cmd; - else + if(stepper_inactive_time) { + if( (millis() - previous_millis_cmd) > stepper_inactive_time ) { - if( (X_ENABLE_ON && (READ(X_ENABLE_PIN)!=0)) || (!X_ENABLE_ON && READ(X_ENABLE_PIN)==0) ) - enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); - last_stepperdisabled_time=millis(); + disable_x(); + disable_y(); + disable_z(); + disable_e0(); + disable_e1(); + disable_e2(); } } #ifdef EXTRUDER_RUNOUT_PREVENT @@ -1323,7 +1321,6 @@ void manage_inactivity(byte debug) destination[E_AXIS]=oldedes; plan_set_e_position(oldepos); previous_millis_cmd=millis(); - //enquecommand(DEFAULT_STEPPER_DEACTIVE_COMMAND); st_synchronize(); WRITE(E0_ENABLE_PIN,oldstatus); } From 7699f250e31e61fa09636914c8ee7f4a1f340927 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 12 Feb 2012 14:06:08 +0100 Subject: [PATCH 226/430] Fixed small merge bug --- Marlin/Marlin.pde | 1 - 1 file changed, 1 deletion(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 23ff730f3..07716fd35 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -1303,7 +1303,6 @@ void manage_inactivity(byte debug) disable_e0(); disable_e1(); disable_e2(); - #endif } } #ifdef EXTRUDER_RUNOUT_PREVENT From fa2e1be0ca890cd4112dbb951b9297bb38a42f2d Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 12 Feb 2012 17:38:54 +0100 Subject: [PATCH 227/430] changed default EXTRUDE_MINTEMP to 170. --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 7288e8fb5..f0d891363 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -97,7 +97,7 @@ //this prevents dangerous Extruder moves, i.e. if the temperature is under the limit //can be software-disabled for whatever purposes by #define PREVENT_DANGEROUS_EXTRUDE -#define EXTRUDE_MINTEMP 190 +#define EXTRUDE_MINTEMP 170 #define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. //=========================================================================== From 0e3631ff4bdae41cc638c59a72af654931bfaf04 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 13 Feb 2012 12:31:53 +0100 Subject: [PATCH 228/430] smaller changes --- Marlin/Configuration.h | 157 ++++++++++++++-------------- Marlin/Marlin.pde | 4 +- Marlin/ultralcd.pde | 225 +++++++++++++++++++++++++++++++++++++++-- 3 files changed, 301 insertions(+), 85 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index d532539ef..4f7ab5a6b 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -4,8 +4,8 @@ // This determines the communication speed of the printer -#define BAUDRATE 250000 -//#define BAUDRATE 115200 +//#define BAUDRATE 250000 +#define BAUDRATE 115200 //#define BAUDRATE 230400 #define EXTRUDERS 1 @@ -26,11 +26,11 @@ // MEGA/RAMPS up to 1.2 = 3, // RAMPS 1.3 = 33 // Gen6 = 5, -// Sanguinololu 1.2 and above = 62, -// Ultimaker = 7, +// Sanguinololu 1.2 and above = 62 // Gen7 = 77, +// Ultimaker = 7, // Teensylu = 8 -#define MOTHERBOARD 7 +#define MOTHERBOARD 77 //=========================================================================== //=============================Thermal Settings ============================ @@ -45,23 +45,23 @@ // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -//#define THERMISTORHEATER_0 3 +#define THERMISTORHEATER_0 1 //#define THERMISTORHEATER_1 1 //#define THERMISTORHEATER_2 1 -//#define HEATER_0_USES_THERMISTOR +#define HEATER_0_USES_THERMISTOR //#define HEATER_1_USES_THERMISTOR //#define HEATER_2_USES_THERMISTOR -#define HEATER_0_USES_AD595 +//#define HEATER_0_USES_AD595 //#define HEATER_1_USES_AD595 //#define HEATER_2_USES_AD595 // Select one of these only to define how the bed temp is read. -//#define THERMISTORBED 1 -//#define BED_USES_THERMISTOR +#define THERMISTORBED 1 +#define BED_USES_THERMISTOR //#define BED_LIMIT_SWITCHING #ifdef BED_LIMIT_SWITCHING - #define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS +#define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS #endif //#define BED_USES_AD595 @@ -75,10 +75,10 @@ // Actual temperature must be close to target for this long before M109 returns success #define TEMP_RESIDENCY_TIME 30 // (seconds) -#define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one +#define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one //// The minimal temperature defines the temperature below which the heater will not be enabled -#define HEATER_0_MINTEMP 5 +//#define HEATER_0_MINTEMP 5 //#define HEATER_1_MINTEMP 5 //#define HEATER_2_MINTEMP 5 //#define BED_MINTEMP 5 @@ -107,37 +107,37 @@ #define PIDTEMP #define PID_MAX 255 // limits current to nozzle; 255=full current #ifdef PIDTEMP - //#define PID_DEBUG // Sends debug data to the serial port. - //#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % - #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term - #define K1 0.95 //smoothing factor withing the PID - #define PID_dT 0.128 //sampling period of the PID +//#define PID_DEBUG // Sends debug data to the serial port. +//#define PID_OPENLOOP 1 // Puts PID in open loop. M104 sets the output power in % +#define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term +#define K1 0.95 //smoothing factor withing the PID +#define PID_dT 0.128 //sampling period of the PID - //To develop some PID settings for your machine, you can initiall follow - // the Ziegler-Nichols method. - // set Ki and Kd to zero. - // heat with a defined Kp and see if the temperature stabilizes - // ideally you do this graphically with repg. - // the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde - // PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain - // usually further manual tunine is necessary. +//To develop some PID settings for your machine, you can initiall follow +// the Ziegler-Nichols method. +// set Ki and Kd to zero. +// heat with a defined Kp and see if the temperature stabilizes +// ideally you do this graphically with repg. +// the PID_CRITIAL_GAIN should be the Kp at which temperature oscillatins are not dampned out/decreas in amplitutde +// PID_SWING_AT_CRITIAL is the time for a full period of the oscillations at the critical Gain +// usually further manual tunine is necessary. - #define PID_CRITIAL_GAIN 50 - #define PID_SWING_AT_CRITIAL 47 //seconds - - //#define PID_PI //no differentail term - #define PID_PID //normal PID +#define PID_CRITIAL_GAIN 50 +#define PID_SWING_AT_CRITIAL 47 //seconds - #ifdef PID_PID - //PID according to Ziegler-Nichols method +//#define PID_PI //no differentail term +#define PID_PID //normal PID + +#ifdef PID_PID +//PID according to Ziegler-Nichols method // #define DEFAULT_Kp (0.6*PID_CRITIAL_GAIN) // #define DEFAULT_Ki (2*Kp/PID_SWING_AT_CRITIAL*PID_dT) // #define DEFAULT_Kd (PID_SWING_AT_CRITIAL/8./PID_dT) // Ultitmaker - #define DEFAULT_Kp 22.2 - #define DEFAULT_Ki (1.25*PID_dT) - #define DEFAULT_Kd (99/PID_dT) +#define DEFAULT_Kp 22.2 +#define DEFAULT_Ki (1.25*PID_dT) +#define DEFAULT_Kd (99/PID_dT) // Makergear // #define DEFAULT_Kp 7.0 @@ -148,21 +148,21 @@ // #define DEFAULT_Kp 63.0 // #define DEFAULT_Ki (2.25*PID_dT) // #define DEFAULT_Kd (440/PID_dT) - #endif - - #ifdef PID_PI - //PI according to Ziegler-Nichols method - #define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) - #define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) - #define DEFAULT_Kd (0) - #endif - - // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. - // if Kc is choosen well, the additional required power due to increased melting should be compensated. - #define PID_ADD_EXTRUSION_RATE - #ifdef PID_ADD_EXTRUSION_RATE - #define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) - #endif +#endif + +#ifdef PID_PI +//PI according to Ziegler-Nichols method +#define DEFAULT_Kp (PID_CRITIAL_GAIN/2.2) +#define DEFAULT_Ki (1.2*Kp/PID_SWING_AT_CRITIAL*PID_dT) +#define DEFAULT_Kd (0) +#endif + +// this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. +// if Kc is choosen well, the additional required power due to increased melting should be compensated. +#define PID_ADD_EXTRUSION_RATE +#ifdef PID_ADD_EXTRUSION_RATE +#define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) +#endif #endif // PIDTEMP // extruder run-out prevention. @@ -184,9 +184,9 @@ #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. // For optos H21LOB set to true, for Mendel-Parts newer optos TCST2103 set to false #define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing @@ -209,9 +209,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true //#define INVERT_E*_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false, used for all extruders -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false @@ -256,7 +256,8 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate #define DEFAULT_MINTRAVELFEEDRATE 0.0 -// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while printing high speed & high detail. It will slowdown on the detailed stuff. +// minimum time in microseconds that a movement needs to take if the buffer is emptied. Increase this number if you see blobs while +//printing high speed & high detail. It will slowdown on the detailed stuff. #define DEFAULT_MINSEGMENTTIME 20000 // Obsolete delete this #define DEFAULT_XYJERK 20.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) @@ -290,7 +291,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // this enables the watchdog interrupt. //#define USE_WATCHDOG //#ifdef USE_WATCHDOG - // you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: +// you cannot reboot on a mega2560 due to a bug in he bootloader. Hence, you have to reset manually, and this is done hereby: //#define RESET_MANUAL //#define WATCHDOG_TIMEOUT 4 //seconds //#endif @@ -305,12 +306,12 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //#define ADVANCE #ifdef ADVANCE - #define EXTRUDER_ADVANCE_K .0 +#define EXTRUDER_ADVANCE_K .0 - #define D_FILAMENT 2.85 - #define STEPS_MM_E 836 - #define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) - #define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) +#define D_FILAMENT 2.85 +#define STEPS_MM_E 836 +#define EXTRUTION_AREA (0.25 * D_FILAMENT * D_FILAMENT * 3.14159) +#define STEPS_PER_CUBIC_MM_E (axis_steps_per_unit[E_AXIS]/ EXTRUTION_AREA) #endif // ADVANCE @@ -321,18 +322,18 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? #define SD_FINISHED_RELEASECOMMAND "M84 X Y E" // no z because of layer shift. -//#define ULTIPANEL +#define ULTIPANEL #ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel - #define SDSUPPORT - #define ULTRA_LCD - #define LCD_WIDTH 20 - #define LCD_HEIGHT 4 +#define NEWPANEL //enable this if you have a click-encoder panel +#define SDSUPPORT +#define ULTRA_LCD +#define LCD_WIDTH 20 +#define LCD_HEIGHT 4 #else //no panel but just lcd - #ifdef ULTRA_LCD - #define LCD_WIDTH 16 - #define LCD_HEIGHT 2 - #endif +#ifdef ULTRA_LCD +#define LCD_WIDTH 16 +#define LCD_HEIGHT 2 +#endif #endif // A debugging feature to compare calculated vs performed steps, to see if steps are lost by the software. @@ -353,13 +354,13 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // on an ultimaker, some initial testing worked with M109 S215 T260 F0.1 in the start.gcode //#define AUTOTEMP #ifdef AUTOTEMP - #define AUTOTEMP_OLDWEIGHT 0.98 +#define AUTOTEMP_OLDWEIGHT 0.98 #endif //this prevents dangerous Extruder moves, i.e. if the temperature is under the limit //can be software-disabled for whatever purposes by #define PREVENT_DANGEROUS_EXTRUDE -#define EXTRUDE_MINTEMP 190 +#define EXTRUDE_MINTEMP 0 #define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement @@ -378,9 +379,9 @@ const int dropsegments=5; //everything with less than this number of steps will // The number of linear motions that can be in the plan at any give time. // THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, i.g. 8,16,32 because shifts and ors are used to do the ringbuffering. #if defined SDSUPPORT - #define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller +#define BLOCK_BUFFER_SIZE 16 // SD,LCD,Buttons take more memory, block buffer needs to be smaller #else - #define BLOCK_BUFFER_SIZE 16 // maximize block buffer +#define BLOCK_BUFFER_SIZE 16 // maximize block buffer #endif @@ -392,3 +393,5 @@ const int dropsegments=5; //everything with less than this number of steps will #include "thermistortables.h" #endif //__CONFIGURATION_H + + diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d156ff5cc..fc5cdf087 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -237,9 +237,11 @@ void setup_photpin() void setup_powerhold() { #ifdef SUICIDE_PIN + #if (SUICIDE_PIN> -1) SET_OUTPUT(SUICIDE_PIN); WRITE(SUICIDE_PIN, HIGH); - #endif + #endif + #endif } void suicide() diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 952ff1293..57186b9f1 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -527,23 +527,119 @@ void MainMenu::showAxisMove() MENUITEM( lcdprintPGM(" Main \003") , BLOCK;status=Main_Menu;beepshort(); ) ; break; case ItemAM_X: - MENUITEM( lcdprintPGM(" X+") , BLOCK;enquecommand("G92 X0");enquecommand("G1 F700 X10");beepshort(); ) ; + // MENUITEM( lcdprintPGM(" X+") , BLOCK;enquecommand("G92 X0");enquecommand("G1 F700 X10");beepshort(); ) ; + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" X:"); + lcd.setCursor(13,line);lcd.print(ftostr3(current_position[X_AXIS])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=current_position[X_AXIS]; + } + else + { + enquecommand("G1 F700 X"+encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>200) encoderpos=200; + lcd.setCursor(13,line);lcd.print(current_position[X_AXIS]); + } + } break; case ItemAM_Y: - MENUITEM( lcdprintPGM(" Y+") , BLOCK;enquecommand("G92 Y0");enquecommand("G1 F700 Y10");beepshort(); ) ; + //MENUITEM( lcdprintPGM(" Y+") , BLOCK;enquecommand("G92 Y0");enquecommand("G1 F700 Y10");beepshort(); ) ; + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Y:"); + lcd.setCursor(13,line);lcd.print(ftostr3(current_position[Y_AXIS])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=current_position[Y_AXIS]; + } + else + { + enquecommand("G1 F700 Y"+encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>200) encoderpos=200; + lcd.setCursor(13,line);lcd.print(current_position[Y_AXIS]); + } + } break; case ItemAM_Z: - MENUITEM( lcdprintPGM(" Z+") , BLOCK;enquecommand("G92 Z0");enquecommand("G1 F700 Z10");beepshort(); ) ; + //MENUITEM( lcdprintPGM(" Z+") , BLOCK;enquecommand("G92 Z0");enquecommand("G1 F700 Z10");beepshort(); ) ; + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Z:"); + lcd.setCursor(13,line);lcd.print(ftostr3(current_position[Z_AXIS])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=current_position[Z_AXIS]; + } + else + { + enquecommand("G1 F700 Z"+encoderpos); + encoderpos=activeline*lcdslow; + beepshort(); + } + BLOCK; + } + if(linechanging) + { + if(encoderpos<1) encoderpos=1; + if(encoderpos>170) encoderpos=170; + lcd.setCursor(13,line);lcd.print(current_position[Z_AXIS]); + } + } break; case ItemAM_E: - MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E50");beepshort(); ) ; + MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E10");beepshort(); ) ; break; default: break; } line++; } - updateActiveLines(ItemAM_Z,encoderpos); + updateActiveLines(ItemAM_E,encoderpos); } enum {ItemT_exit,ItemT_speed,ItemT_flow,ItemT_nozzle, @@ -1189,7 +1285,7 @@ enum { ItemCM_vmaxx, ItemCM_vmaxy, ItemCM_vmaxz, ItemCM_vmaxe, ItemCM_vtravmin,ItemCM_vmin, ItemCM_amaxx, ItemCM_amaxy, ItemCM_amaxz, ItemCM_amaxe, - ItemCM_aret,ItemCM_esteps + ItemCM_aret, ItemCM_xsteps,ItemCM_ysteps, ItemCM_zsteps, ItemCM_esteps }; @@ -1465,11 +1561,126 @@ void MainMenu::showControlMotion() } }break; + case ItemCM_xsteps://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" X steps/mm:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[0])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[0]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[0]); + position[X_AXIS]=lround(position[X_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[X_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + case ItemCM_ysteps://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Y steps/mm:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[1])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[1]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[1]); + position[Y_AXIS]=lround(position[Y_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[Y_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + case ItemCM_zsteps://axis_steps_per_unit[i] = code_value(); + { + if(force_lcd_update) + { + lcd.setCursor(0,line);lcdprintPGM(" Z steps/mm:"); + lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[2])); + } + + if((activeline!=line) ) + break; + + if(CLICKED) + { + linechanging=!linechanging; + if(linechanging) + { + encoderpos=(int)axis_steps_per_unit[2]; + } + else + { + float factor=float(encoderpos)/float(axis_steps_per_unit[2]); + position[Z_AXIS]=lround(position[Z_AXIS]*factor); + //current_position[3]*=factor; + axis_steps_per_unit[Z_AXIS]= encoderpos; + encoderpos=activeline*lcdslow; + + } + BLOCK; + beepshort(); + } + if(linechanging) + { + if(encoderpos<5) encoderpos=5; + if(encoderpos>9999) encoderpos=9999; + lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + } + + }break; + case ItemCM_esteps://axis_steps_per_unit[i] = code_value(); { if(force_lcd_update) { - lcd.setCursor(0,line);lcdprintPGM(" Esteps/mm:"); + lcd.setCursor(0,line);lcdprintPGM(" E steps/mm:"); lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); } From 73344e69c1cd361164aa67af9ab28344f17a1227 Mon Sep 17 00:00:00 2001 From: Daid Date: Thu, 16 Feb 2012 11:03:41 +0100 Subject: [PATCH 229/430] Added temperature offset/gain settings for AD595. --- Marlin/Configuration.h | 6 ++++++ Marlin/temperature.cpp | 8 ++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index f0d891363..eed1895d4 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -66,6 +66,12 @@ #define HEATER_2_MAXTEMP 275 #define BED_MAXTEMP 150 +//These defines help to calibrate the AD595 sensor in case you get wrong temperature measurements. +//The measured temperature is defined as "actualTemp = (measuredTemp * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET" +#define TEMP_SENSOR_AD595_OFFSET 0.0 +#define TEMP_SENSOR_AD595_GAIN 1.0 + + // PID settings: // Comment the following line to disable PID and enable bang-bang. #define PIDTEMP diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 2f3888c01..9103127f7 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -312,7 +312,7 @@ int temp2analog(int celsius, uint8_t e) { return (1023 * OVERSAMPLENR) - raw; } - return celsius * (1024.0 / (5.0 * 100.0) ) * OVERSAMPLENR; + return ((celsius-TEMP_SENSOR_AD595_OFFSET)/TEMP_SENSOR_AD595_GAIN) * (1024.0 / (5.0 * 100.0) ) * OVERSAMPLENR; } // Takes bed temperature value as input and returns corresponding raw value. @@ -342,7 +342,7 @@ int temp2analogBed(int celsius) { return (1023 * OVERSAMPLENR) - raw; #elif defined BED_USES_AD595 - return lround(celsius * (1024.0 * OVERSAMPLENR/ (5.0 * 100.0) ) ); + return lround(((celsius-TEMP_SENSOR_AD595_OFFSET)/TEMP_SENSOR_AD595_GAIN) * (1024.0 * OVERSAMPLENR/ (5.0 * 100.0) ) ); #else #warning No heater-type defined for the bed. return 0; @@ -390,7 +390,7 @@ float analog2temp(int raw, uint8_t e) { return celsius; } - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + return ((raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR) * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET; } // Derived from RepRap FiveD extruder::getTemperature() @@ -421,7 +421,7 @@ float analog2tempBed(int raw) { return celsius; #elif defined BED_USES_AD595 - return raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR; + return ((raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR) * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET; #else #warning No heater-type defined for the bed. #endif From e661578c84052d2fce063a6774a784bd76d627f9 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Fri, 17 Feb 2012 10:46:48 +0100 Subject: [PATCH 230/430] support for GEN7 1.1,1.2 and 1.3 --- Marlin/Configuration.h | 12 ++++--- Marlin/pins.h | 76 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 83 insertions(+), 5 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index cab9085ff..4731a04ed 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -9,7 +9,7 @@ //Implementation of an idea by Prof Braino to inform user that any changes made //to THIS file by the user have been successfully uploaded into firmware. #define STRING_VERSION_CONFIG_H "2012-02-08j" //Personal revision number for changes to THIS file. -#define STRING_CONFIG_H_AUTHOR "username" //Who made the changes. +#define STRING_CONFIG_H_AUTHOR "scuba82" //Who made the changes. // This determines the communication speed of the printer //#define BAUDRATE 250000 @@ -21,7 +21,9 @@ // Gen6 = 5, // Sanguinololu 1.2 and above = 62 // Ultimaker = 7, -// Gen7 = 77, +// Gen7 custom (Alfons3 Version) = 77, "https://github.com/Alfons3/Generation_7_Electronics" +// Gen7 v1.1, v1.2 = 78 +// Gen7 v1.3 = 79 // Teensylu = 8, // Gen3+ =9 #define MOTHERBOARD 77 @@ -49,7 +51,7 @@ // Actual temperature must be close to target for this long before M109 returns success #define TEMP_RESIDENCY_TIME 30 // (seconds) -#define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one +#define TEMP_HYSTERESIS 3 // (C�) range of +/- temperatures considered "close" to the target one // The minimal temperature defines the temperature below which the heater will not be enabled It is used // to check that the wiring to the thermistor is not broken. @@ -127,7 +129,7 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define INVERT_X_DIR false // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false @@ -138,7 +140,7 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define Y_HOME_DIR -1 #define Z_HOME_DIR -1 -#define min_software_endstops true //If true, axis won't move to coordinates less than zero. +#define min_software_endstops false //If true, axis won't move to coordinates less than zero. #define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. #define X_MAX_LENGTH 205 #define Y_MAX_LENGTH 205 diff --git a/Marlin/pins.h b/Marlin/pins.h index a07e0832f..ce21a9ade 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -567,6 +567,82 @@ #endif +/**************************************************************************************** +* Gen7 v1.1, v1.2, v1.3 pin assignment +* +****************************************************************************************/ + +#if MOTHERBOARD == 79 +#define MOTHERBOARD 78 +#define GEN7_V_1_3 +#endif + +#if MOTHERBOARD == 78 +#define KNOWN_BOARD + +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) +#error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu. + +#endif + +//x axis pins +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 7 +#define X_MAX_PIN -1 + +//y axis pins +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 5 +#define Y_MAX_PIN -1 + +//z axis pins +#define Z_STEP_PIN 26 +#define Z_DIR_PIN 25 +#define Z_ENABLE_PIN 24 +#define Z_MIN_PIN 1 +#define Z_MAX_PIN -1 + +//extruder pins +#define E0_STEP_PIN 28 +#define E0_DIR_PIN 27 +#define E0_ENABLE_PIN 24 + +#define TEMP_0_PIN 1 +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 2 + +#define HEATER_0_PIN 4 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define HEATER_BED_PIN 3 + + +#define SDPOWER -1 +#define SDSS -1 // SCL pin of I2C header +#define LED_PIN -1 + +#ifdef GEN7_V_1_3 +// Gen7 v1.3 removed the fan pin +#define FAN_PIN -1 +#else +#define FAN_PIN 31 +#endif +#define PS_ON_PIN 15 + +//our pin for debugging. +#define DEBUG_PIN 0 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +#endif + /******************************************************************************* ********* * Gen7 Alfons3 pin assignment From 234fe8ea67661f021aa34745fa3a8349b08d205d Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Fri, 17 Feb 2012 11:07:24 +0100 Subject: [PATCH 231/430] added infos for this fork --- README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/README.md b/README.md index 6f04764c9..2b536b8ad 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,17 @@ +SCUBA82's fork: +----------------- + +The main goal of my fork is porting the brilliant Marlin firmware to GEN7 Boards. +I'm working on a 16MHz GEN7 board and have only tested with this configuration. +But there were reports about successfully running it at 20 MHz. Expect 25% faster moves and maybe some other issues. + +Using lcd and sdcard support on an ATMega644(P) is not possible cause the sketch is way too big for its memory. +I switched to an ATMega1284P which has double size program memory. Unfortunately it's not supported in Arduino IDE out of the box but expect a tutorial on how to compile for it soon. +For the necessary pin breakouts I used Alfons3 design of GEN7 (https://github.com/Alfons3/Generation_7_Electronics) with an additional breakout for pin A0/D31. +I'll publish my desing as soon as possible. + +Expect this fork to be highly experimental. + WARNING: -------- THIS IS RELEASE CANDIDATE 1 FOR MARLIN 1.0.0 From 1ff99ae25f0f1f3f7fb85d3feb215d6f182ac083 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Fri, 17 Feb 2012 11:41:47 +0100 Subject: [PATCH 232/430] ATMega1284P support for Arduino IDE replace $ARDUINO_HOME/hardware/tools/avr/etc/arduino.conf with this file --- Marlin/hardware/tools/avr/etc/avrdude.conf | 12104 +++++++++++++++++++ 1 file changed, 12104 insertions(+) create mode 100644 Marlin/hardware/tools/avr/etc/avrdude.conf diff --git a/Marlin/hardware/tools/avr/etc/avrdude.conf b/Marlin/hardware/tools/avr/etc/avrdude.conf new file mode 100644 index 000000000..ec921df42 --- /dev/null +++ b/Marlin/hardware/tools/avr/etc/avrdude.conf @@ -0,0 +1,12104 @@ +# $Id: avrdude.conf.in,v 1.122 2007/05/16 21:29:36 joerg_wunsch Exp $ +# +# AVRDUDE Configuration File +# +# This file contains configuration data used by AVRDUDE which describes +# the programming hardware pinouts and also provides part definitions. +# AVRDUDE's "-C" command line option specifies the location of the +# configuration file. The "-c" option names the programmer configuration +# which must match one of the entry's "id" parameter. The "-p" option +# identifies which part AVRDUDE is going to be programming and must match +# one of the parts' "id" parameter. +# +# Possible entry formats are: +# +# programmer +# id = [, [, ] ...] ; # are quoted strings +# desc = ; # quoted string +# type = par | stk500 | stk500v2 | stk500pp | stk500hvsp | stk500generic | +# avr910 | butterfly | usbasp | +# jtagmki | jtagmkii | jtagmkii_isp | jtagmkii_dw | +# dragon_dw | dragon_jtag | dragon_isp | dragon_pp | +# dragon_hvsp; # programmer type +# baudrate = ; # baudrate for avr910-programmer +# vcc = [, ... ] ; # pin number(s) +# reset = ; # pin number +# sck = ; # pin number +# mosi = ; # pin number +# miso = ; # pin number +# errled = ; # pin number +# rdyled = ; # pin number +# pgmled = ; # pin number +# vfyled = ; # pin number +# ; +# +# part +# id = ; # quoted string +# desc = ; # quoted string +# has_jtag = ; # part has JTAG i/f +# has_debugwire = ; # part has debugWire i/f +# devicecode = ; # deprecated, use stk500_devcode +# stk500_devcode = ; # numeric +# avr910_devcode = ; # numeric +# signature = ; # signature bytes +# chip_erase_delay = ; # micro-seconds +# reset = dedicated | io; +# retry_pulse = reset | sck; +# pgm_enable = ; +# chip_erase = ; +# chip_erase_delay = ; # chip erase delay (us) +# # STK500 parameters (parallel programming IO lines) +# pagel = ; # pin name in hex, i.e., 0xD7 +# bs2 = ; # pin name in hex, i.e., 0xA0 +# serial = ; # can use serial downloading +# parallel = ; # can use par. programming +# # STK500v2 parameters, to be taken from Atmel's XML files +# timeout = ; +# stabdelay = ; +# cmdexedelay = ; +# synchloops = ; +# bytedelay = ; +# pollvalue = ; +# pollindex = ; +# predelay = ; +# postdelay = ; +# pollmethod = ; +# mode = ; +# delay = ; +# blocksize = ; +# readsize = ; +# hvspcmdexedelay = ; +# # STK500v2 HV programming parameters, from XML +# pp_controlstack = , , ...; # PP only +# hvsp_controlstack = , , ...; # HVSP only +# hventerstabdelay = ; +# progmodedelay = ; # PP only +# latchcycles = ; +# togglevtg = ; +# poweroffdelay = ; +# resetdelayms = ; +# resetdelayus = ; +# hvleavestabdelay = ; +# resetdelay = ; +# synchcycles = ; # HVSP only +# chiperasepulsewidth = ; # PP only +# chiperasepolltimeout = ; +# chiperasetime = ; # HVSP only +# programfusepulsewidth = ; # PP only +# programfusepolltimeout = ; +# programlockpulsewidth = ; # PP only +# programlockpolltimeout = ; +# # JTAG ICE mkII parameters, also from XML files +# allowfullpagebitstream = ; +# enablepageprogramming = ; +# idr = ; # IO addr of IDR (OCD) reg. +# rampz = ; # IO addr of RAMPZ reg. +# spmcr = ; # mem addr of SPMC[S]R reg. +# eecr = ; # mem addr of EECR reg. +# # (only when != 0x3c) +# +# memory +# paged = ; # yes / no +# size = ; # bytes +# page_size = ; # bytes +# num_pages = ; # numeric +# min_write_delay = ; # micro-seconds +# max_write_delay = ; # micro-seconds +# readback_p1 = ; # byte value +# readback_p2 = ; # byte value +# pwroff_after_write = ; # yes / no +# read = ; +# write = ; +# read_lo = ; +# read_hi = ; +# write_lo = ; +# write_hi = ; +# loadpage_lo = ; +# loadpage_hi = ; +# writepage = ; +# ; +# ; +# +# If any of the above parameters are not specified, the default value +# of 0 is used for numerics or the empty string ("") for string +# values. If a required parameter is left empty, AVRDUDE will +# complain. +# +# NOTES: +# * 'devicecode' is the device code used by the STK500 (see codes +# listed below) +# * Not all memory types will implement all instructions. +# * AVR Fuse bits and Lock bits are implemented as a type of memory. +# * Example memory types are: +# "flash", "eeprom", "fuse", "lfuse" (low fuse), "hfuse" (high +# fuse), "signature", "calibration", "lock" +# * The memory type specified on the avrdude command line must match +# one of the memory types defined for the specified chip. +# * The pwroff_after_write flag causes avrdude to attempt to +# power the device off and back on after an unsuccessful write to +# the affected memory area if VCC programmer pins are defined. If +# VCC pins are not defined for the programmer, a message +# indicating that the device needs a power-cycle is printed out. +# This flag was added to work around a problem with the +# at90s4433/2333's; see the at90s4433 errata at: +# +# http://www.atmel.com/atmel/acrobat/doc1280.pdf +# +# INSTRUCTION FORMATS +# +# Instruction formats are specified as a comma seperated list of +# string values containing information (bit specifiers) about each +# of the 32 bits of the instruction. Bit specifiers may be one of +# the following formats: +# +# '1' = the bit is always set on input as well as output +# +# '0' = the bit is always clear on input as well as output +# +# 'x' = the bit is ignored on input and output +# +# 'a' = the bit is an address bit, the bit-number matches this bit +# specifier's position within the current instruction byte +# +# 'aN' = the bit is the Nth address bit, bit-number = N, i.e., a12 +# is address bit 12 on input, a0 is address bit 0. +# +# 'i' = the bit is an input data bit +# +# 'o' = the bit is an output data bit +# +# Each instruction must be composed of 32 bit specifiers. The +# instruction specification closely follows the instruction data +# provided in Atmel's data sheets for their parts. +# +# See below for some examples. +# +# +# The following are STK500 part device codes to use for the +# "devicecode" field of the part. These came from Atmel's software +# section avr061.zip which accompanies the application note +# AVR061 available from: +# +# http://www.atmel.com/atmel/acrobat/doc2525.pdf +# + +#define ATTINY10 0x10 +#define ATTINY11 0x11 +#define ATTINY12 0x12 +#define ATTINY15 0x13 +#define ATTINY13 0x14 + +#define ATTINY22 0x20 +#define ATTINY26 0x21 +#define ATTINY28 0x22 +#define ATTINY2313 0x23 + +#define AT90S1200 0x33 + +#define AT90S2313 0x40 +#define AT90S2323 0x41 +#define AT90S2333 0x42 +#define AT90S2343 0x43 + +#define AT90S4414 0x50 +#define AT90S4433 0x51 +#define AT90S4434 0x52 +#define ATMEGA48 0x59 + +#define AT90S8515 0x60 +#define AT90S8535 0x61 +#define AT90C8534 0x62 +#define ATMEGA8515 0x63 +#define ATMEGA8535 0x64 + +#define ATMEGA8 0x70 +#define ATMEGA88 0x73 +#define ATMEGA168 0x86 + +#define ATMEGA161 0x80 +#define ATMEGA163 0x81 +#define ATMEGA16 0x82 +#define ATMEGA162 0x83 +#define ATMEGA169 0x84 + +#define ATMEGA323 0x90 +#define ATMEGA32 0x91 + +#define ATMEGA64 0xA0 + +#define ATMEGA103 0xB1 +#define ATMEGA128 0xB2 +#define AT90CAN128 0xB3 + +#define AT86RF401 0xD0 + +#define AT89START 0xE0 +#define AT89S51 0xE0 +#define AT89S52 0xE1 + +# The following table lists the devices in the original AVR910 +# appnote: +# |Device |Signature | Code | +# +-------+----------+------+ +# |tiny12 | 1E 90 05 | 0x55 | +# |tiny15 | 1E 90 06 | 0x56 | +# | | | | +# | S1200 | 1E 90 01 | 0x13 | +# | | | | +# | S2313 | 1E 91 01 | 0x20 | +# | S2323 | 1E 91 02 | 0x48 | +# | S2333 | 1E 91 05 | 0x34 | +# | S2343 | 1E 91 03 | 0x4C | +# | | | | +# | S4414 | 1E 92 01 | 0x28 | +# | S4433 | 1E 92 03 | 0x30 | +# | S4434 | 1E 92 02 | 0x6C | +# | | | | +# | S8515 | 1E 93 01 | 0x38 | +# | S8535 | 1E 93 03 | 0x68 | +# | | | | +# |mega32 | 1E 95 01 | 0x72 | +# |mega83 | 1E 93 05 | 0x65 | +# |mega103| 1E 97 01 | 0x41 | +# |mega161| 1E 94 01 | 0x60 | +# |mega163| 1E 94 02 | 0x64 | + +# Appnote AVR109 also has a table of AVR910 device codes, which +# lists: +# dev avr910 signature +# ATmega8 0x77 0x1E 0x93 0x07 +# ATmega8515 0x3B 0x1E 0x93 0x06 +# ATmega8535 0x6A 0x1E 0x93 0x08 +# ATmega16 0x75 0x1E 0x94 0x03 +# ATmega162 0x63 0x1E 0x94 0x04 +# ATmega163 0x66 0x1E 0x94 0x02 +# ATmega169 0x79 0x1E 0x94 0x05 +# ATmega32 0x7F 0x1E 0x95 0x02 +# ATmega323 0x73 0x1E 0x95 0x01 +# ATmega64 0x46 0x1E 0x96 0x02 +# ATmega128 0x44 0x1E 0x97 0x02 +# +# These codes refer to "BOOT" device codes which are apparently +# different than standard device codes, for whatever reasons +# (often one above the standard code). + +# There are several extended versions of AVR910 implementations around +# in the Internet. These add the following codes (only devices that +# actually exist are listed): + +# ATmega8515 0x3A +# ATmega128 0x43 +# ATmega64 0x45 +# ATtiny26 0x5E +# ATmega8535 0x69 +# ATmega32 0x72 +# ATmega16 0x74 +# ATmega8 0x76 +# ATmega169 0x78 + +# +# Overall avrdude defaults +# +default_parallel = "lpt1"; +default_serial = "com1"; + + +# +# PROGRAMMER DEFINITIONS +# + +programmer + id = "avrisp"; + desc = "Atmel AVR ISP"; + type = stk500; +; + +programmer + id = "avrispv2"; + desc = "Atmel AVR ISP V2"; + type = stk500v2; +; + +programmer + id = "avrispmkII"; + desc = "Atmel AVR ISP mkII"; + type = stk500v2; +; + +programmer + id = "avrisp2"; + desc = "Atmel AVR ISP mkII"; + type = stk500v2; +; + +# This is supposed to be the "default" STK500 entry. +# Attempts to select the correct firmware version +# by probing for it. Better use one of the entries +# below instead. +programmer + id = "stk500"; + desc = "Atmel STK500"; + type = stk500generic; +; + +programmer + id = "stk500v1"; + desc = "Atmel STK500 Version 1.x firmware"; + type = stk500; +; + +programmer + id = "stk500v2"; + desc = "Atmel STK500 Version 2.x firmware"; + type = stk500v2; +; + +programmer + id = "stk500pp"; + desc = "Atmel STK500 V2 in parallel programming mode"; + type = stk500pp; +; + +programmer + id = "stk500hvsp"; + desc = "Atmel STK500 V2 in high-voltage serial programming mode"; + type = stk500hvsp; +; + +programmer + id = "avr910"; + desc = "Atmel Low Cost Serial Programmer"; + type = avr910; +; + +programmer + id = "usbasp"; + desc = "USBasp, http://www.fischl.de/usbasp/"; + type = usbasp; +; + +programmer + id = "usbtiny"; + desc = "USBtiny simple USB programmer"; + type = usbtiny; +; + +programmer + id = "butterfly"; + desc = "Atmel Butterfly Development Board"; + type = butterfly; +; + +programmer + id = "avr109"; + desc = "Atmel AppNote AVR109 Boot Loader"; + type = butterfly; +; + +programmer + id = "avr911"; + desc = "Atmel AppNote AVR911 AVROSP"; + type = butterfly; +; + +programmer + id = "jtagmkI"; + desc = "Atmel JTAG ICE (mkI)"; + baudrate = 115200; # default is 115200 + type = jtagmki; +; + +# easier to type +programmer + id = "jtag1"; + desc = "Atmel JTAG ICE (mkI)"; + baudrate = 115200; # default is 115200 + type = jtagmki; +; + +# easier to type +programmer + id = "jtag1slow"; + desc = "Atmel JTAG ICE (mkI)"; + baudrate = 19200; + type = jtagmki; +; + +programmer + id = "jtagmkII"; + desc = "Atmel JTAG ICE mkII"; + baudrate = 19200; # default is 19200 + type = jtagmkii; +; + +# easier to type +programmer + id = "jtag2slow"; + desc = "Atmel JTAG ICE mkII"; + baudrate = 19200; # default is 19200 + type = jtagmkii; +; + +# JTAG ICE mkII @ 115200 Bd +programmer + id = "jtag2fast"; + desc = "Atmel JTAG ICE mkII"; + baudrate = 115200; + type = jtagmkii; +; + +# make the fast one the default, people will love that +programmer + id = "jtag2"; + desc = "Atmel JTAG ICE mkII"; + baudrate = 115200; + type = jtagmkii; +; + +# JTAG ICE mkII in ISP mode +programmer + id = "jtag2isp"; + desc = "Atmel JTAG ICE mkII in ISP mode"; + baudrate = 115200; + type = jtagmkii_isp; +; + +# JTAG ICE mkII in debugWire mode +programmer + id = "jtag2dw"; + desc = "Atmel JTAG ICE mkII in debugWire mode"; + baudrate = 115200; + type = jtagmkii_dw; +; + +# AVR Dragon in JTAG mode +programmer + id = "dragon_jtag"; + desc = "Atmel AVR Dragon in JTAG mode"; + baudrate = 115200; + type = dragon_jtag; +; + +# AVR Dragon in ISP mode +programmer + id = "dragon_isp"; + desc = "Atmel AVR Dragon in ISP mode"; + baudrate = 115200; + type = dragon_isp; +; + +# AVR Dragon in PP mode +programmer + id = "dragon_pp"; + desc = "Atmel AVR Dragon in PP mode"; + baudrate = 115200; + type = dragon_pp; +; + +# AVR Dragon in HVSP mode +programmer + id = "dragon_hvsp"; + desc = "Atmel AVR Dragon in HVSP mode"; + baudrate = 115200; + type = dragon_hvsp; +; + +# AVR Dragon in debugWire mode +programmer + id = "dragon_dw"; + desc = "Atmel AVR Dragon in debugWire mode"; + baudrate = 115200; + type = dragon_dw; +; + +programmer + id = "pavr"; + desc = "Jason Kyle's pAVR Serial Programmer"; + type = avr910; +; + +# Parallel port programmers. + +programmer + id = "bsd"; + desc = "Brian Dean's Programmer, http://www.bsdhome.com/avrdude/"; + type = par; + vcc = 2, 3, 4, 5; + reset = 7; + sck = 8; + mosi = 9; + miso = 10; +; + +programmer + id = "stk200"; + desc = "STK200"; + type = par; + buff = 4, 5; + sck = 6; + mosi = 7; + reset = 9; + miso = 10; +; + +# The programming dongle used by the popular Ponyprog +# utility. It is almost similar to the STK200 one, +# except that there is a LED indicating that the +# programming is currently in progress. + +programmer + id = "pony-stk200"; + desc = "Pony Prog STK200"; + type = par; + buff = 4, 5; + sck = 6; + mosi = 7; + reset = 9; + miso = 10; + pgmled = 8; +; + +programmer + id = "dt006"; + desc = "Dontronics DT006"; + type = par; + reset = 4; + sck = 5; + mosi = 2; + miso = 11; +; + +programmer + id = "bascom"; + desc = "Bascom SAMPLE programming cable"; + type = par; + reset = 4; + sck = 5; + mosi = 2; + miso = 11; +; + +programmer + id = "alf"; + desc = "Nightshade ALF-PgmAVR, http://nightshade.homeip.net/"; + type = par; + vcc = 2, 3, 4, 5; + buff = 6; + reset = 7; + sck = 8; + mosi = 9; + miso = 10; + errled = 1; + rdyled = 14; + pgmled = 16; + vfyled = 17; +; + +programmer + id = "sp12"; + desc = "Steve Bolt's Programmer"; + type = par; + vcc = 4,5,6,7,8; + reset = 3; + sck = 2; + mosi = 9; + miso = 11; +; + +programmer + id = "picoweb"; + desc = "Picoweb Programming Cable, http://www.picoweb.net/"; + type = par; + reset = 2; + sck = 3; + mosi = 4; + miso = 13; +; + +programmer + id = "abcmini"; + desc = "ABCmini Board, aka Dick Smith HOTCHIP"; + type = par; + reset = 4; + sck = 3; + mosi = 2; + miso = 10; +; + +programmer + id = "futurlec"; + desc = "Futurlec.com programming cable."; + type = par; + reset = 3; + sck = 2; + mosi = 1; + miso = 10; +; + + +# From the contributor of the "xil" jtag cable: +# The "vcc" definition isn't really vcc (the cable gets its power from +# the programming circuit) but is necessary to switch one of the +# buffer lines (trying to add it to the "buff" lines doesn't work). +# With this, TMS connects to RESET, TDI to MOSI, TDO to MISO and TCK +# to SCK (plus vcc/gnd of course) +programmer + id = "xil"; + desc = "Xilinx JTAG cable"; + type = par; + mosi = 2; + sck = 3; + reset = 4; + buff = 5; + miso = 13; + vcc = 6; +; + + +programmer + id = "dapa"; + desc = "Direct AVR Parallel Access cable"; + type = par; + vcc = 3; + reset = 16; + sck = 1; + mosi = 2; + miso = 11; +; + +programmer + id = "atisp"; + desc = "AT-ISP V1.1 programming cable for AVR-SDK1 from micro-research.co.th"; + type = par; + reset = ~6; + sck = ~8; + mosi = ~7; + miso = ~10; +; + +programmer + id = "ere-isp-avr"; + desc = "ERE ISP-AVR "; + type = par; + reset = ~4; + sck = 3; + mosi = 2; + miso = 10; +; + +programmer + id = "blaster"; + desc = "Altera ByteBlaster"; + type = par; + sck = 2; + miso = 11; + reset = 3; + mosi = 8; + buff = 14; +; + +# It is almost same as pony-stk200, except vcc on pin 5 to auto +# disconnect port (download on http://electropol.free.fr) +programmer + id = "frank-stk200"; + desc = "Frank STK200"; + type = par; + vcc = 5; + sck = 6; + mosi = 7; + reset = 9; + miso = 10; + pgmled = 8; +; + + +# +# some ultra cheap programmers use bitbanging on the +# serialport. +# +# PC - DB9 - Pins for RS232: +# +# GND 5 -- |O +# | O| <- 9 RI +# DTR 4 <- |O | +# | O| <- 8 CTS +# TXD 3 <- |O | +# | O| -> 7 RTS +# RXD 2 -> |O | +# | O| <- 6 DSR +# DCD 1 -> |O +# +# Using RXD is currently not supported. +# Using RI is not supported under Win32 but is supported under Posix. + +# serial ponyprog design (dasa2 in uisp) +# reset=!txd sck=rts mosi=dtr miso=cts + +programmer + id = "ponyser"; + desc = "design ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts"; + type = serbb; + reset = ~3; + sck = 7; + mosi = 4; + miso = 8; +; + +# Same as above, different name +# reset=!txd sck=rts mosi=dtr miso=cts + +programmer + id = "siprog"; + desc = "Lancos SI-Prog "; + type = serbb; + reset = ~3; + sck = 7; + mosi = 4; + miso = 8; +; + +# unknown (dasa in uisp) +# reset=rts sck=dtr mosi=txd miso=cts + +programmer + id = "dasa"; + desc = "serial port banging, reset=rts sck=dtr mosi=txd miso=cts"; + type = serbb; + reset = 7; + sck = 4; + mosi = 3; + miso = 8; +; + +# unknown (dasa3 in uisp) +# reset=!dtr sck=rts mosi=txd miso=cts + +programmer + id = "dasa3"; + desc = "serial port banging, reset=!dtr sck=rts mosi=txd miso=cts"; + type = serbb; + reset = ~4; + sck = 7; + mosi = 3; + miso = 8; +; + +# +# PART DEFINITIONS +# + +#------------------------------------------------------------ +# ATtiny11 +#------------------------------------------------------------ + +# This is an HVSP-only device. + +part + id = "t11"; + desc = "ATtiny11"; + stk500_devcode = 0x11; + signature = 0x1e 0x90 0x04; + chip_erase_delay = 20000; + + timeout = 200; + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 64; + blocksize = 64; + readsize = 256; + delay = 5; + ; + + memory "flash" + size = 1024; + blocksize = 128; + readsize = 256; + delay = 3; + ; + + memory "signature" + size = 3; + ; + + memory "lock" + size = 1; + ; + + memory "calibration" + size = 1; + ; + + memory "fuse" + size = 1; + ; +; + +#------------------------------------------------------------ +# ATtiny12 +#------------------------------------------------------------ + +part + id = "t12"; + desc = "ATtiny12"; + stk500_devcode = 0x12; + avr910_devcode = 0x55; + signature = 0x1e 0x90 0x05; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 64; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 8; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + size = 1024; + min_write_delay = 4500; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; +; + +#------------------------------------------------------------ +# ATtiny13 +#------------------------------------------------------------ + +part + id = "t13"; + desc = "ATtiny13"; + has_debugwire = yes; + flash_instr = 0xB4, 0x0E, 0x1E; + eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x0E, 0xB4, 0x0E, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x14; + signature = 0x1e 0x90 0x07; + chip_erase_delay = 4000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 90; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 64; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 1024; + page_size = 32; + num_pages = 32; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 0 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; + +; + + +#------------------------------------------------------------ +# ATtiny15 +#------------------------------------------------------------ + +part + id = "t15"; + desc = "ATtiny15"; + stk500_devcode = 0x13; + avr910_devcode = 0x56; + signature = 0x1e 0x90 0x06; + chip_erase_delay = 8200; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 5; + synchcycles = 6; + latchcycles = 16; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 64; + min_write_delay = 8200; + max_write_delay = 8200; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + size = 1024; + min_write_delay = 4100; + max_write_delay = 4100; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x o o o o x x o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x i i i i 1 1 i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; +; + +#------------------------------------------------------------ +# AT90s1200 +#------------------------------------------------------------ + +part + id = "1200"; + desc = "AT90S1200"; + stk500_devcode = 0x33; + avr910_devcode = 0x13; + signature = 0x1e 0x90 0x01; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 1; + bytedelay = 0; + pollindex = 0; + pollvalue = 0xFF; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; + + memory "eeprom" + size = 64; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x x a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 20; + blocksize = 32; + readsize = 256; + ; + memory "flash" + size = 1024; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x02; + delay = 15; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; + ; + +#------------------------------------------------------------ +# AT90s4414 +#------------------------------------------------------------ + +part + id = "4414"; + desc = "AT90S4414"; + stk500_devcode = 0x50; + avr910_devcode = 0x28; + signature = 0x1e 0x92 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; + + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + ; + +#------------------------------------------------------------ +# AT90s2313 +#------------------------------------------------------------ + +part + id = "2313"; + desc = "AT90S2313"; + stk500_devcode = 0x40; + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; + + memory "eeprom" + size = 128; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 2048; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x i i x", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + ; + +#------------------------------------------------------------ +# AT90s2333 +#------------------------------------------------------------ + +part + id = "2333"; +##### WARNING: No XML file for device 'AT90S2333'! ##### + desc = "AT90S2333"; + stk500_devcode = 0x42; + avr910_devcode = 0x34; + signature = 0x1e 0x91 0x05; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + ; + memory "flash" + size = 2048; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + pwroff_after_write = yes; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; + ; + +#------------------------------------------------------------ +# ATmega1284P +#------------------------------------------------------------ + +# similar to ATmega164p + +part + id = "m1284p"; + desc = "ATMEGA1284P"; + has_jtag = yes; + stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one + avr910_devcode = 0x74; + signature = 0x1e 0x97 0x05; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90s2343 (also AT90s2323 and ATtiny22) +#------------------------------------------------------------ + +part + id = "2343"; + desc = "AT90S2343"; + stk500_devcode = 0x43; + avr910_devcode = 0x4c; + signature = 0x1e 0x91 0x03; + chip_erase_delay = 18000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x00, + 0x68, 0x78, 0x68, 0x68, 0x00, 0x00, 0x68, 0x78, + 0x78, 0x00, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 0; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 50; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + memory "flash" + size = 2048; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 128; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o o x x x x o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o o x x x x o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; + ; + + +#------------------------------------------------------------ +# AT90s4433 +#------------------------------------------------------------ + +part + id = "4433"; + desc = "AT90S4433"; + stk500_devcode = 0x51; + avr910_devcode = 0x30; + signature = 0x1e 0x92 0x03; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; + + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + pwroff_after_write = yes; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; + ; + +#------------------------------------------------------------ +# AT90s4434 +#------------------------------------------------------------ + +part + id = "4434"; +##### WARNING: No XML file for device 'AT90S4434'! ##### + desc = "AT90S4434"; + stk500_devcode = 0x52; + avr910_devcode = 0x6c; + signature = 0x1e 0x92 0x02; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + memory "eeprom" + size = 256; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + ; + memory "flash" + size = 4096; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i", + "x x x x x x x x x x x x x x x x"; + ; + memory "lock" + size = 1; + min_write_delay = 9000; + max_write_delay = 20000; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + ; + ; + +#------------------------------------------------------------ +# AT90s8515 +#------------------------------------------------------------ + +part + id = "8515"; + desc = "AT90S8515"; + stk500_devcode = 0x60; + avr910_devcode = 0x38; + signature = 0x1e 0x93 0x01; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; + + memory "eeprom" + size = 512; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 8192; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x7f; + readback_p2 = 0x7f; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + ; + +#------------------------------------------------------------ +# AT90s8535 +#------------------------------------------------------------ + +part + id = "8535"; + desc = "AT90S8535"; + stk500_devcode = 0x61; + avr910_devcode = 0x68; + signature = 0x1e 0x93 0x03; + chip_erase_delay = 20000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 1; + + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0x00; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "flash" + size = 8192; + min_write_delay = 9000; + max_write_delay = 20000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write_lo = " 0 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + write_hi = " 0 1 0 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 128; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "fuse" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x x o"; + write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x o o x x x x x x"; + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + ; + +#------------------------------------------------------------ +# ATmega103 +#------------------------------------------------------------ + +part + id = "m103"; + desc = "ATMEGA103"; + stk500_devcode = 0xB1; + avr910_devcode = 0x41; + signature = 0x1e 0x97 0x01; + chip_erase_delay = 112000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x8E, 0x9E, 0x2E, 0x3E, 0xAE, 0xBE, + 0x4E, 0x5E, 0xCE, 0xDE, 0x6E, 0x7E, 0xEE, 0xDE, + 0x66, 0x76, 0xE6, 0xF6, 0x6A, 0x7A, 0xEA, 0x7A, + 0x7F, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 15; + chiperasepolltimeout = 0; + programfusepulsewidth = 2; + programfusepolltimeout = 0; + programlockpulsewidth = 0; + programlockpolltimeout = 10; + + memory "eeprom" + size = 4096; + min_write_delay = 4000; + max_write_delay = 9000; + readback_p1 = 0x80; + readback_p2 = 0x7f; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 22000; + max_write_delay = 56000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x11; + delay = 70; + blocksize = 256; + readsize = 256; + ; + + memory "fuse" + size = 1; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x x o x o 1 o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 1 i 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x o o x"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega64 +#------------------------------------------------------------ + +part + id = "m64"; + desc = "ATMEGA64"; + has_jtag = yes; + stk500_devcode = 0xA0; + avr910_devcode = 0x45; + signature = 0x1e 0x96 0x02; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x22; + spmcr = 0x68; + allowfullpagebitstream = yes; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 20; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + + + +#------------------------------------------------------------ +# ATmega128 +#------------------------------------------------------------ + +part + id = "m128"; + desc = "ATMEGA128"; + has_jtag = yes; + stk500_devcode = 0xB2; + avr910_devcode = 0x43; + signature = 0x1e 0x97 0x02; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x22; + spmcr = 0x68; + rampz = 0x3b; + allowfullpagebitstream = yes; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 12; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90CAN128 +#------------------------------------------------------------ + +part + id = "c128"; + desc = "AT90CAN128"; + has_jtag = yes; + stk500_devcode = 0xB3; +# avr910_devcode = 0x43; + signature = 0x1e 0x97 0x81; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + eecr = 0x3f; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega16 +#------------------------------------------------------------ + +part + id = "m16"; + desc = "ATMEGA16"; + has_jtag = yes; + stk500_devcode = 0x82; + avr910_devcode = 0x74; + signature = 0x1e 0x94 0x03; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 100; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = yes; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "calibration" + size = 4; + + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega164P +#------------------------------------------------------------ + +# close to ATmega16 + +part + id = "m164p"; + desc = "ATMEGA164P"; + has_jtag = yes; +# stk500_devcode = 0x82; # no STK500v1 support +# avr910_devcode = 0x?; # try the ATmega16 one:^ + avr910_devcode = 0x74; + signature = 0x1e 0x94 0x0a; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 128; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega324P +#------------------------------------------------------------ + +# similar to ATmega164P + +part + id = "m324p"; + desc = "ATMEGA324P"; + has_jtag = yes; +# stk500_devcode = 0x82; # no STK500v1 support +# avr910_devcode = 0x?; # try the ATmega16 one:^ + avr910_devcode = 0x74; + signature = 0x1e 0x95 0x08; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega644 +#------------------------------------------------------------ + +# similar to ATmega164 + +part + id = "m644"; + desc = "ATMEGA644"; + has_jtag = yes; +# stk500_devcode = 0x82; # no STK500v1 support +# avr910_devcode = 0x?; # try the ATmega16 one:^ + avr910_devcode = 0x74; + signature = 0x1e 0x96 0x09; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega644P +#------------------------------------------------------------ + +# similar to ATmega164p + +part + id = "m644p"; + desc = "ATMEGA644P"; + has_jtag = yes; +# stk500_devcode = 0x82; # no STK500v1 support +# avr910_devcode = 0x?; # try the ATmega16 one:^ + avr910_devcode = 0x74; + signature = 0x1e 0x96 0x0a; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + + + +#------------------------------------------------------------ +# ATmega162 +#------------------------------------------------------------ + +part + id = "m162"; + desc = "ATMEGA162"; + has_jtag = yes; + stk500_devcode = 0x83; + avr910_devcode = 0x63; + signature = 0x1e 0x94 0x04; + chip_erase_delay = 9000; + pagel = 0xd7; + bs2 = 0xa0; + + idr = 0x04; + spmcr = 0x57; + allowfullpagebitstream = yes; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + + ; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 16000; + max_write_delay = 16000; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; +; + + + +#------------------------------------------------------------ +# ATmega163 +#------------------------------------------------------------ + +part + id = "m163"; + desc = "ATMEGA163"; + stk500_devcode = 0x81; + avr910_devcode = 0x64; + signature = 0x1e 0x94 0x02; + chip_erase_delay = 32000; + pagel = 0xd7; + bs2 = 0xa0; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 30; + programfusepulsewidth = 0; + programfusepolltimeout = 2; + programlockpulsewidth = 0; + programlockpolltimeout = 2; + + + memory "eeprom" + size = 512; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + ; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 16000; + max_write_delay = 16000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o x x o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i 1 1 i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x 1 o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x 1 1 1 1 1 i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x 0 x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega169 +#------------------------------------------------------------ + +part + id = "m169"; + desc = "ATMEGA169"; + has_jtag = yes; + stk500_devcode = 0x85; + avr910_devcode = 0x78; + signature = 0x1e 0x94 0x05; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 20; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + ; + + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega329 +#------------------------------------------------------------ + +part + id = "m329"; + desc = "ATMEGA329"; + has_jtag = yes; +# stk500_devcode = 0x85; # no STK500 support, only STK500v2 +# avr910_devcode = 0x?; # try the ATmega169 one: + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x03; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega3290 +#------------------------------------------------------------ + +# identical to ATmega329 + +part + id = "m3290"; + desc = "ATMEGA3290"; + has_jtag = yes; +# stk500_devcode = 0x85; # no STK500 support, only STK500v2 +# avr910_devcode = 0x?; # try the ATmega169 one: + avr910_devcode = 0x75; + signature = 0x1e 0x95 0x04; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a3 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega649 +#------------------------------------------------------------ + +part + id = "m649"; + desc = "ATMEGA649"; + has_jtag = yes; +# stk500_devcode = 0x85; # no STK500 support, only STK500v2 +# avr910_devcode = 0x?; # try the ATmega169 one: + avr910_devcode = 0x75; + signature = 0x1e 0x96 0x03; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega6490 +#------------------------------------------------------------ + +# identical to ATmega649 + +part + id = "m6490"; + desc = "ATMEGA6490"; + has_jtag = yes; +# stk500_devcode = 0x85; # no STK500 support, only STK500v2 +# avr910_devcode = 0x?; # try the ATmega169 one: + avr910_devcode = 0x75; + signature = 0x1e 0x96 0x04; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 20; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega32 +#------------------------------------------------------------ + +part + id = "m32"; + desc = "ATMEGA32"; + has_jtag = yes; + stk500_devcode = 0x91; + avr910_devcode = 0x72; + signature = 0x1e 0x95 0x02; + chip_erase_delay = 9000; + pagel = 0xd7; + bs2 = 0xa0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = yes; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega161 +#------------------------------------------------------------ + +part + id = "m161"; + desc = "ATMEGA161"; + stk500_devcode = 0x80; + avr910_devcode = 0x60; + signature = 0x1e 0x94 0x01; + chip_erase_delay = 28000; + pagel = 0xd7; + bs2 = 0xa0; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 0; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 30; + programfusepulsewidth = 0; + programfusepolltimeout = 2; + programlockpulsewidth = 0; + programlockpolltimeout = 2; + + memory "eeprom" + size = 512; + min_write_delay = 3400; + max_write_delay = 3400; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 5; + blocksize = 128; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 14000; + max_write_delay = 14000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 16; + blocksize = 128; + readsize = 256; + ; + + memory "fuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 x x x x x x x x", + "x x x x x x x x x o x o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 x x x x x", + "x x x x x x x x 1 i 1 i i i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega8 +#------------------------------------------------------------ + +part + id = "m8"; + desc = "ATMEGA8"; + stk500_devcode = 0x70; + avr910_devcode = 0x76; + signature = 0x1e 0x93 0x07; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 10000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 20; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 10; + blocksize = 64; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + + +#------------------------------------------------------------ +# ATmega8515 +#------------------------------------------------------------ + +part + id = "m8515"; + desc = "ATMEGA8515"; + stk500_devcode = 0x63; + avr910_devcode = 0x3A; + signature = 0x1e 0x93 0x06; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + + + +#------------------------------------------------------------ +# ATmega8535 +#------------------------------------------------------------ + +part + id = "m8535"; + desc = "ATMEGA8535"; + stk500_devcode = 0x64; + avr910_devcode = 0x69; + signature = 0x1e 0x93 0x08; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 6; + togglevtg = 0; + poweroffdelay = 0; + resetdelayms = 0; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + mode = 0x04; + delay = 10; + blocksize = 128; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 2000; + max_write_delay = 2000; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 0 0 x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATtiny26 +#------------------------------------------------------------ + +part + id = "t26"; + desc = "ATTINY26"; + stk500_devcode = 0x21; + avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x09; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 128; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + mode = 0x04; + delay = 10; + blocksize = 64; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; + + mode = 0x21; + delay = 6; + blocksize = 16; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x x x x i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 4; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + +; + + +#------------------------------------------------------------ +# ATtiny261 +#------------------------------------------------------------ +# Close to ATtiny26 + +part + id = "t261"; + desc = "ATTINY261"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +# stk500_devcode = 0x21; +# avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x0c; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + size = 128; + page_size = 4; + num_pages = 32; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read = "1 0 1 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 x x x x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x x a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + +; + + +#------------------------------------------------------------ +# ATtiny461 +#------------------------------------------------------------ +# Close to ATtiny261 + +part + id = "t461"; + desc = "ATTINY461"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +# stk500_devcode = 0x21; +# avr910_devcode = 0x5e; + signature = 0x1e 0x92 0x08; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + size = 256; + page_size = 4; + num_pages = 64; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read = " 1 0 1 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + +; + + +#------------------------------------------------------------ +# ATtiny861 +#------------------------------------------------------------ +# Close to ATtiny461 + +part + id = "t861"; + desc = "ATTINY861"; + has_debugwire = yes; + flash_instr = 0xB4, 0x00, 0x10; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x00, 0xB4, 0x00, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +# stk500_devcode = 0x21; +# avr910_devcode = 0x5e; + signature = 0x1e 0x93 0x0d; + pagel = 0xb3; + bs2 = 0xb2; + chip_erase_delay = 4000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 0; + + pp_controlstack = + 0xC4, 0xE4, 0xC4, 0xE4, 0xCC, 0xEC, 0xCC, 0xEC, + 0xD4, 0xF4, 0xD4, 0xF4, 0xDC, 0xFC, 0xDC, 0xFC, + 0xC8, 0xE8, 0xD8, 0xF8, 0x4C, 0x6C, 0x5C, 0x7C, + 0xEC, 0xBC, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 2; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + size = 512; + num_pages = 128; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4000; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read = " 1 0 1 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0 x x x x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + + read_lo = " 0 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 x x x x x x x x", + "x x x x x x x x x x x x x x o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 i i", + "x x x x x x x x x x x x x x x x"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + min_write_delay = 4500; + max_write_delay = 4500; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + +; + + +#------------------------------------------------------------ +# ATmega48 +#------------------------------------------------------------ + +part + id = "m48"; + desc = "ATMEGA48"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x59; +# avr910_devcode = 0x; + signature = 0x1e 0x92 0x05; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 45000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + page_size = 4; + size = 256; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x x x x x", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x x x o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + + +#------------------------------------------------------------ +# ATmega88 +#------------------------------------------------------------ + +part + id = "m88"; + desc = "ATMEGA88"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x73; +# avr910_devcode = 0x; + signature = 0x1e 0x93 0x0a; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + page_size = 4; + size = 512; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega168 +#------------------------------------------------------------ + +part + id = "m168"; + desc = "ATMEGA168"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x86; + # avr910_devcode = 0x; + signature = 0x1e 0x94 0x06; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + page_size = 4; + size = 512; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x x x x a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 16384; + page_size = 128; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; +; + +#------------------------------------------------------------ +# ATmega328 +#------------------------------------------------------------ + +part + id = "m328p"; + desc = "ATMEGA328P"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x86; + # avr910_devcode = 0x; + signature = 0x1e 0x95 0x0F; + pagel = 0xd7; + bs2 = 0xc2; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + resetdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + paged = no; + page_size = 4; + size = 1024; + min_write_delay = 3600; + max_write_delay = 3600; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 x x x a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 5; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 a13 a12 a11 a10 a9 a8", + " a7 a6 x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 128; + readsize = 256; + + ; + + memory "lfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "hfuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + ; + + memory "efuse" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x x x x x x o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + ; + + memory "lock" + size = 1; + min_write_delay = 4500; + max_write_delay = 4500; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; +; + +#------------------------------------------------------------ +# ATtiny2313 +#------------------------------------------------------------ + +part + id = "t2313"; + desc = "ATtiny2313"; + has_debugwire = yes; + flash_instr = 0xB2, 0x0F, 0x1F; + eeprom_instr = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBA, 0x0F, 0xB2, 0x0F, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x23; +## Use the ATtiny26 devcode: + avr910_devcode = 0x5e; + signature = 0x1e 0x91 0x0a; + pagel = 0xD4; + bs2 = 0xD6; + reset = io; + chip_erase_delay = 9000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0E, 0x1E, 0x2E, 0x3E, 0x2E, 0x3E, + 0x4E, 0x5E, 0x4E, 0x5E, 0x6E, 0x7E, 0x6E, 0x7E, + 0x26, 0x36, 0x66, 0x76, 0x2A, 0x3A, 0x6A, 0x7A, + 0x2E, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + +# The information in the data sheet of April/2004 is wrong, this works: + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + +# The information in the data sheet of April/2004 is wrong, this works: + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + +# The information in the data sheet of April/2004 is wrong, this works: + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny2313 has Signature Bytes: 0x1E 0x91 0x0A. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; +# The Tiny2313 has calibration data for both 4 MHz and 8 MHz. +# The information in the data sheet of April/2004 is wrong, this works: + + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90PWM2 +#------------------------------------------------------------ + +part + id = "pwm2"; + desc = "AT90PWM2"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; +## avr910_devcode = ?; + signature = 0x1e 0x93 0x81; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; +# AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90PWM3 +#------------------------------------------------------------ + +# Completely identical to AT90PWM2 (including the signature!) + +part + id = "pwm3"; + desc = "AT90PWM3"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; +## avr910_devcode = ?; + signature = 0x1e 0x93 0x81; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; +# AT90PWM2 has Signature Bytes: 0x1E 0x93 0x81. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90PWM2B +#------------------------------------------------------------ +# Same as AT90PWM2 but different signature. + +part + id = "pwm2b"; + desc = "AT90PWM2B"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; +## avr910_devcode = ?; + signature = 0x1e 0x93 0x83; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90PWM3B +#------------------------------------------------------------ + +# Completely identical to AT90PWM2B (including the signature!) + +part + id = "pwm3b"; + desc = "AT90PWM3B"; + has_debugwire = yes; + flash_instr = 0xB6, 0x01, 0x11; + eeprom_instr = 0xBD, 0xF2, 0xBD, 0xE1, 0xBB, 0xCF, 0xB4, 0x00, + 0xBE, 0x01, 0xB6, 0x01, 0xBC, 0x00, 0xBB, 0xBF, + 0x99, 0xF9, 0xBB, 0xAF; + stk500_devcode = 0x65; +## avr910_devcode = ?; + signature = 0x1e 0x93 0x83; + pagel = 0xD8; + bs2 = 0xE2; + reset = io; + chip_erase_delay = 9000; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 64; + readsize = 256; + ; + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATtiny25 +#------------------------------------------------------------ + +part + id = "t25"; + desc = "ATtiny25"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +## no STK500 devcode in XML file, use the ATtiny45 one + stk500_devcode = 0x14; +## avr910_devcode = ?; +## Try the AT90S2313 devcode: + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x08; + reset = io; + chip_erase_delay = 4500; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny25 has Signature Bytes: 0x1E 0x91 0x08. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATtiny45 +#------------------------------------------------------------ + +part + id = "t45"; + desc = "ATtiny45"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; + stk500_devcode = 0x14; +## avr910_devcode = ?; +## Try the AT90S2313 devcode: + avr910_devcode = 0x20; + signature = 0x1e 0x92 0x06; + reset = io; + chip_erase_delay = 4500; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 256; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny45 has Signature Bytes: 0x1E 0x92 0x08. (Data sheet 2586C-AVR-06/05 (doc2586.pdf) indicates otherwise!) + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATtiny85 +#------------------------------------------------------------ + +part + id = "t85"; + desc = "ATtiny85"; + has_debugwire = yes; + flash_instr = 0xB4, 0x02, 0x12; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x02, 0xB4, 0x02, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +## no STK500 devcode in XML file, use the ATtiny45 one + stk500_devcode = 0x14; +## avr910_devcode = ?; +## Try the AT90S2313 devcode: + avr910_devcode = 0x20; + signature = 0x1e 0x93 0x0b; + reset = io; + chip_erase_delay = 4500; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x00; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny85 has Signature Bytes: 0x1E 0x93 0x08. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 2; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega640 +#------------------------------------------------------------ +# Almost same as ATmega1280, except for different memory sizes + +part + id = "m640"; + desc = "ATMEGA640"; + signature = 0x1e 0x96 0x08; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega1280 +#------------------------------------------------------------ + +part + id = "m1280"; + desc = "ATMEGA1280"; + signature = 0x1e 0x97 0x03; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega1281 +#------------------------------------------------------------ +# Identical to ATmega1280 + +part + id = "m1281"; + desc = "ATMEGA1281"; + signature = 0x1e 0x97 0x04; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega2560 +#------------------------------------------------------------ + +part + id = "m2560"; + desc = "ATMEGA2560"; + signature = 0x1e 0x98 0x01; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 262144; + page_size = 256; + num_pages = 1024; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + load_ext_addr = " 0 1 0 0 1 1 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 a16", + " 0 0 0 0 0 0 0 0"; + + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega2561 +#------------------------------------------------------------ + +part + id = "m2561"; + desc = "ATMEGA2561"; + signature = 0x1e 0x98 0x02; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 262144; + page_size = 256; + num_pages = 1024; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + load_ext_addr = " 0 1 0 0 1 1 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 a16", + " 0 0 0 0 0 0 0 0"; + + mode = 0x41; + delay = 10; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATtiny24 +#------------------------------------------------------------ + +part + id = "t24"; + desc = "ATtiny24"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +## no STK500 devcode in XML file, use the ATtiny45 one + stk500_devcode = 0x14; +## avr910_devcode = ?; +## Try the AT90S2313 devcode: + avr910_devcode = 0x20; + signature = 0x1e 0x91 0x0b; + reset = io; + chip_erase_delay = 4500; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 128; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "x a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 2048; + page_size = 32; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x x a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny24 has Signature Bytes: 0x1E 0x91 0x0B. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATtiny44 +#------------------------------------------------------------ + +part + id = "t44"; + desc = "ATtiny44"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +## no STK500 devcode in XML file, use the ATtiny45 one + stk500_devcode = 0x14; +## avr910_devcode = ?; +## Try the AT90S2313 devcode: + avr910_devcode = 0x20; + signature = 0x1e 0x92 0x07; + reset = io; + chip_erase_delay = 4500; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 256; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x x", + "a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 4096; + page_size = 64; + num_pages = 64; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny44 has Signature Bytes: 0x1E 0x92 0x07. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATtiny84 +#------------------------------------------------------------ + +part + id = "t84"; + desc = "ATtiny84"; + has_debugwire = yes; + flash_instr = 0xB4, 0x07, 0x17; + eeprom_instr = 0xBB, 0xFF, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D, + 0xBC, 0x07, 0xB4, 0x07, 0xBA, 0x0D, 0xBB, 0xBC, + 0x99, 0xE1, 0xBB, 0xAC; +## no STK500 devcode in XML file, use the ATtiny45 one + stk500_devcode = 0x14; +## avr910_devcode = ?; +## Try the AT90S2313 devcode: + avr910_devcode = 0x20; + signature = 0x1e 0x93 0x0c; + reset = io; + chip_erase_delay = 4500; + + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + hvsp_controlstack = + 0x4C, 0x0C, 0x1C, 0x2C, 0x3C, 0x64, 0x74, 0x66, + 0x68, 0x78, 0x68, 0x68, 0x7A, 0x6A, 0x68, 0x78, + 0x78, 0x7D, 0x6D, 0x0C, 0x80, 0x40, 0x20, 0x10, + 0x11, 0x08, 0x04, 0x02, 0x03, 0x08, 0x04, 0x0F; + hventerstabdelay = 100; + hvspcmdexedelay = 0; + synchcycles = 6; + latchcycles = 1; + togglevtg = 1; + poweroffdelay = 25; + resetdelayms = 0; + resetdelayus = 70; + hvleavestabdelay = 100; + resetdelay = 25; + chiperasepolltimeout = 40; + chiperasetime = 0; + programfusepolltimeout = 25; + programlockpolltimeout = 25; + + memory "eeprom" + size = 512; + paged = no; + page_size = 4; + min_write_delay = 4000; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = "1 0 1 0 0 0 0 0 0 0 0 x x x x a8", + "a7 a6 a5 a4 a3 a2 a1 a0 o o o o o o o o"; + + write = "1 1 0 0 0 0 0 0 0 0 0 x x x x a8", + "a8 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x x x x", + " x a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 4; + readsize = 256; + ; + memory "flash" + paged = yes; + size = 8192; + page_size = 64; + num_pages = 128; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 x x x x x", + " x x x a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 0 0 0 a11 a10 a9 a8", + " a7 a6 a5 x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 32; + readsize = 256; + ; +# ATtiny84 has Signature Bytes: 0x1E 0x93 0x0C. + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + + memory "lock" + size = 1; + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x x x x x x x i i"; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x x x x i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", + "0 0 0 0 0 0 0 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90USB646 +#------------------------------------------------------------ + +part + id = "usb646"; + desc = "AT90USB646"; +# signature = 0x1e 0x96 0x82; ? + signature = 0x1e 0x97 0x82; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90USB647 +#------------------------------------------------------------ +# identical to AT90USB646 + +part + id = "usb647"; + desc = "AT90USB647"; +# signature = 0x1e 0x96 0x82; ? + signature = 0x1e 0x97 0x82; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x x a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90USB1286 +#------------------------------------------------------------ + +part + id = "usb1286"; + desc = "AT90USB1286"; + signature = 0x1e 0x97 0x82; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# AT90USB1287 +#------------------------------------------------------------ +# identical to AT90USB1286 + +part + id = "usb1287"; + desc = "AT90USB1287"; + signature = 0x1e 0x97 0x82; + has_jtag = yes; +# stk500_devcode = 0xB2; +# avr910_devcode = 0x43; + chip_erase_delay = 9000; + pagel = 0xD7; + bs2 = 0xA0; + reset = dedicated; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "x x x x x x x x x x x x x x x x"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "x x x x x x x x x x x x x x x x"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + rampz = 0x3b; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 4096; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0x00; + readback_p2 = 0x00; + read = " 1 0 1 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " x x x x a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 x x x a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 131072; + page_size = 256; + num_pages = 512; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0x00; + readback_p2 = 0x00; + read_lo = " 0 0 1 0 0 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " x x x x x x x x", + " x a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + "a15 a14 a13 a12 a11 a10 a9 a8", + " a7 x x x x x x x", + " x x x x x x x x"; + + mode = 0x41; + delay = 6; + blocksize = 256; + readsize = 256; + ; + + memory "lfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "x x x x x x x x i i i i i i i i"; + + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "x x x x x x x x x x x x i i i i"; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "x x x x x x x x o o o o o o o o"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x", + "x x x x x x x x 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "calibration" + size = 1; + read = "0 0 1 1 1 0 0 0 x x x x x x x x", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 x x x x x x x x", + "x x x x x x a1 a0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega325 +#------------------------------------------------------------ + +part + id = "m325"; + desc = "ATMEGA325"; + signature = 0x1e 0x95 0x05; + has_jtag = yes; +# stk500_devcode = 0x??; # No STK500v1 support? +# avr910_devcode = 0x??; # Try the ATmega16 one + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega645 +#------------------------------------------------------------ + +part + id = "m645"; + desc = "ATMEGA645"; + signature = 0x1E 0x96 0x05; + has_jtag = yes; +# stk500_devcode = 0x??; # No STK500v1 support? +# avr910_devcode = 0x??; # Try the ATmega16 one + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 8; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " 0 0 0 0 0 0 0 0"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega3250 +#------------------------------------------------------------ + +part + id = "m3250"; + desc = "ATMEGA3250"; + signature = 0x1E 0x95 0x06; + has_jtag = yes; +# stk500_devcode = 0x??; # No STK500v1 support? +# avr910_devcode = 0x??; # Try the ATmega16 one + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 4; /* for parallel programming */ + size = 1024; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 0 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 0 a9 a8", + " a7 a6 a5 a4 a3 a2 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 32768; + page_size = 128; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " 0 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; + +#------------------------------------------------------------ +# ATmega6450 +#------------------------------------------------------------ + +part + id = "m6450"; + desc = "ATMEGA6450"; + signature = 0x1E 0x96 0x06; + has_jtag = yes; +# stk500_devcode = 0x??; # No STK500v1 support? +# avr910_devcode = 0x??; # Try the ATmega16 one + avr910_devcode = 0x74; + pagel = 0xd7; + bs2 = 0xa0; + chip_erase_delay = 9000; + pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; + + timeout = 200; + stabdelay = 100; + cmdexedelay = 25; + synchloops = 32; + bytedelay = 0; + pollindex = 3; + pollvalue = 0x53; + predelay = 1; + postdelay = 1; + pollmethod = 1; + + pp_controlstack = + 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, + 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, + 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, + 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00; + hventerstabdelay = 100; + progmodedelay = 0; + latchcycles = 5; + togglevtg = 1; + poweroffdelay = 15; + resetdelayms = 1; + resetdelayus = 0; + hvleavestabdelay = 15; + chiperasepulsewidth = 0; + chiperasepolltimeout = 10; + programfusepulsewidth = 0; + programfusepolltimeout = 5; + programlockpulsewidth = 0; + programlockpolltimeout = 5; + + idr = 0x31; + spmcr = 0x57; + allowfullpagebitstream = no; + + memory "eeprom" + paged = no; /* leave this "no" */ + page_size = 8; /* for parallel programming */ + size = 2048; + min_write_delay = 9000; + max_write_delay = 9000; + readback_p1 = 0xff; + readback_p2 = 0xff; + read = " 1 0 1 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + write = " 1 1 0 0 0 0 0 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_lo = " 1 1 0 0 0 0 0 1", + " 0 0 0 0 0 0 0 0", + " 0 0 0 0 0 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 1 1 0 0 0 0 1 0", + " 0 0 0 0 0 a10 a9 a8", + " a7 a6 a5 a4 a3 0 0 0", + " x x x x x x x x"; + + mode = 0x41; + delay = 10; + blocksize = 4; + readsize = 256; + ; + + memory "flash" + paged = yes; + size = 65536; + page_size = 256; + num_pages = 256; + min_write_delay = 4500; + max_write_delay = 4500; + readback_p1 = 0xff; + readback_p2 = 0xff; + read_lo = " 0 0 1 0 0 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + read_hi = " 0 0 1 0 1 0 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " o o o o o o o o"; + + loadpage_lo = " 0 1 0 0 0 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + loadpage_hi = " 0 1 0 0 1 0 0 0", + " 0 0 0 0 0 0 0 0", + " a7 a6 a5 a4 a3 a2 a1 a0", + " i i i i i i i i"; + + writepage = " 0 1 0 0 1 1 0 0", + " a15 a14 a13 a12 a11 a10 a9 a8", + " a7 a6 a5 a4 a3 a2 a1 a0", + " 0 0 0 0 0 0 0 0"; + + mode = 0x41; + delay = 10; + blocksize = 128; + readsize = 256; + ; + + memory "lock" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0", + "x x x x x x x x x x o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 1 1 i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "lfuse" + size = 1; + read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "hfuse" + size = 1; + read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0", + "0 0 0 0 0 0 0 0 i i i i i i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "efuse" + size = 1; + + read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + + write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", + "0 0 0 0 0 0 0 0 1 1 1 1 1 i i i"; + min_write_delay = 9000; + max_write_delay = 9000; + ; + + memory "signature" + size = 3; + read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 a1 a0 o o o o o o o o"; + ; + + memory "calibration" + size = 1; + + read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0", + "0 0 0 0 0 0 0 0 o o o o o o o o"; + ; + ; From 1b6765ed12b2d6d85bd786bff5cf78fa175b1627 Mon Sep 17 00:00:00 2001 From: Blair Thompson Date: Sat, 18 Feb 2012 18:25:04 +0000 Subject: [PATCH 233/430] Updated the pin config for RAMPS 1.3 to include ultimaker new style LCD/Rotary Encoder interface --- Marlin/Configuration.h | 38 +++++++++++------------ Marlin/pins.h | 70 +++++++++++++++++++++++++++++++++++++++++- 2 files changed, 88 insertions(+), 20 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 7288e8fb5..fa12c0082 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -23,7 +23,7 @@ // Ultimaker = 7, // Teensylu = 8, // Gen3+ =9 -#define MOTHERBOARD 7 +#define MOTHERBOARD 33 //=========================================================================== //=============================Thermal Settings ============================ @@ -41,13 +41,13 @@ // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define TEMP_SENSOR_0 -1 +#define TEMP_SENSOR_0 1 #define TEMP_SENSOR_1 0 #define TEMP_SENSOR_2 0 -#define TEMP_SENSOR_BED 0 +#define TEMP_SENSOR_BED 1 // Actual temperature must be close to target for this long before M109 returns success -#define TEMP_RESIDENCY_TIME 30 // (seconds) +#define TEMP_RESIDENCY_TIME 10 // 30 // (seconds) 30 seconds was too long #define TEMP_HYSTERESIS 3 // (C°) range of +/- temperatures considered "close" to the target one // The minimal temperature defines the temperature below which the heater will not be enabled It is used @@ -97,7 +97,7 @@ //this prevents dangerous Extruder moves, i.e. if the temperature is under the limit //can be software-disabled for whatever purposes by #define PREVENT_DANGEROUS_EXTRUDE -#define EXTRUDE_MINTEMP 190 +#define EXTRUDE_MINTEMP 170 // 190 // Lowered a bit as I want to print PLA #define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. //=========================================================================== @@ -108,9 +108,9 @@ #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -124,8 +124,8 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define DISABLE_Z false #define DISABLE_E false // For all extruders -#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false +#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false @@ -139,22 +139,22 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define min_software_endstops true //If true, axis won't move to coordinates less than zero. #define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 205 -#define Y_MAX_LENGTH 205 -#define Z_MAX_LENGTH 200 +#define X_MAX_LENGTH 175 +#define Y_MAX_LENGTH 185 +#define Z_MAX_LENGTH 90 //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +#define HOMING_FEEDRATE {1500, 1500, 80, 0} // {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) // default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker +#define DEFAULT_AXIS_STEPS_PER_UNIT {80, 80, 2560,640.15} // {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for metric prusa #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. -#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts +#define DEFAULT_ACCELERATION 1500 // 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 1500 // 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts // #define DEFAULT_XYJERK 20.0 // (mm/sec) @@ -179,9 +179,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //#define ULTRA_LCD //general lcd support, also 16x2 #define SDSUPPORT // Enable SD Card Support in Hardware Console -//#define ULTIPANEL +#define ULTIPANEL #ifdef ULTIPANEL - //#define NEWPANEL //enable this if you have a click-encoder panel + #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT #define ULTRA_LCD #define LCD_WIDTH 20 diff --git a/Marlin/pins.h b/Marlin/pins.h index 2a713c989..a366a679a 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -265,7 +265,7 @@ #define SDPOWER -1 #define SDSS 53 #define LED_PIN 13 -#define FAN_PIN 4 +#define FAN_PIN 9 // Uses HEATER_1 on Ramps Board #define PS_ON_PIN 12 #define KILL_PIN -1 @@ -278,6 +278,74 @@ #define HEATER_BED_PIN 8 // BED #define TEMP_BED_PIN 14 // ANALOG NUMBERING +#ifdef ULTRA_LCD + + #ifdef NEWPANEL + //arduino pin witch triggers an piezzo beeper + #define BEEPER -1 // No Beeper added + + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 23 + #define LCD_PINS_D5 25 + #define LCD_PINS_D6 27 + #define LCD_PINS_D7 29 + + //buttons are directly attached using AUX-2 + #define BTN_EN1 44 + #define BTN_EN2 42 + #define BTN_ENC 64 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT -1 // Ramps does not use this port + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER -1 No Beeper added + + //buttons are attached to a shift register + // Not wired this yet + //#define SHIFT_CLK 38 + //#define SHIFT_LD 42 + //#define SHIFT_OUT 40 + //#define SHIFT_EN 17 + + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 23 + #define LCD_PINS_D5 25 + #define LCD_PINS_D6 27 + #define LCD_PINS_D7 29 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + + //bits in the shift register that carry the buttons for: + // left up center down right red + #define BL_LE 7 + #define BL_UP 6 + #define BL_MI 5 + #define BL_DW 4 + #define BL_RI 3 + #define BL_ST 2 + + #define BLEN_B 1 + #define BLEN_A 0 + #endif +#endif //ULTRA_LCD #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default From a05a261b723d3004446bea6641eab182715cfe3a Mon Sep 17 00:00:00 2001 From: Blair Thompson Date: Sat, 18 Feb 2012 23:56:31 +0000 Subject: [PATCH 234/430] Added a workaround. Ramps SD card does not have sdcarddetect. My temporary solution is to add a momentary swtich that pulls down the SDCARDDETECT pin and mimicking the pull and reinsert ofa a SD card --- Marlin/Configuration.h | 7 +++++++ Marlin/pins.h | 8 ++++---- Marlin/ultralcd.h | 11 +++++++++-- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index fa12c0082..4497ec7cd 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -179,6 +179,13 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t //#define ULTRA_LCD //general lcd support, also 16x2 #define SDSUPPORT // Enable SD Card Support in Hardware Console +// Invert the SD card Detect Pin. +// If you are using a RAMPS board or cheap E-bay purchased boards that do not detect when an SD card is inserted +// You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT +// in the pins.h file. When using a push button pulling the pin to ground this will need inverted. This setting should +// be commented out otherwise +#define SDCARDDETECTINVERTED + #define ULTIPANEL #ifdef ULTIPANEL #define NEWPANEL //enable this if you have a click-encoder panel diff --git a/Marlin/pins.h b/Marlin/pins.h index a366a679a..ec6eef66b 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -281,8 +281,8 @@ #ifdef ULTRA_LCD #ifdef NEWPANEL - //arduino pin witch triggers an piezzo beeper - #define BEEPER -1 // No Beeper added + //arduino pin which triggers an piezzo beeper + #define BEEPER 33 // Beeper on AUX-4 #define LCD_PINS_RS 16 #define LCD_PINS_ENABLE 17 @@ -300,7 +300,7 @@ #define BLEN_B 1 #define BLEN_A 0 - #define SDCARDDETECT -1 // Ramps does not use this port + #define SDCARDDETECT 31 // Ramps does not use this port //encoder rotation values #define encrot0 0 @@ -310,7 +310,7 @@ #else //old style panel with shift register //arduino pin witch triggers an piezzo beeper - #define BEEPER -1 No Beeper added + #define BEEPER 33 No Beeper added //buttons are attached to a shift register // Not wired this yet diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 08ac950d3..25abb427c 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -27,8 +27,15 @@ #define CLICKED (buttons&EN_C) #define BLOCK {blocking=millis()+blocktime;} - #define CARDINSERTED (READ(SDCARDDETECT)==0) - + + #ifdef SDCARDDETECTINVERTED + #define CARDINSERTED (READ(SDCARDDETECT)!=0) + + #else + #define CARDINSERTED (READ(SDCARDDETECT)==0) + + #endif //SDCARDTETECTINVERTED + #else //atomatic, do not change From 6a3f8cf23f690618b4608f570a9ef24679220bed Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 20 Feb 2012 10:25:51 +0100 Subject: [PATCH 235/430] Infos about fuses to use; correct fuses in boards.txt --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 2b536b8ad..11b4be60f 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,12 @@ I switched to an ATMega1284P which has double size program memory. Unfortunately For the necessary pin breakouts I used Alfons3 design of GEN7 (https://github.com/Alfons3/Generation_7_Electronics) with an additional breakout for pin A0/D31. I'll publish my desing as soon as possible. +You have to use different chip fuses to get Marlin running. +The fuses I'm using are lfuse: 0xF7 hfuse: 0xD4 efuse: 0xFD + +For questions take a look into http://forums.reprap.org/read.php?181,118329 or send me an e-mail: christian_thalhammer@gmx.at + + Expect this fork to be highly experimental. WARNING: From b3fb09a20cc3d01bec34a137b323f16e5bd5fe3f Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Mon, 20 Feb 2012 16:07:27 +0100 Subject: [PATCH 236/430] =?UTF-8?q?change=20preheat=20to=20ABS=20values=20?= =?UTF-8?q?of=20nozzle=20227=20and=20be=20105=20=B0C=20next=20try=20for=20?= =?UTF-8?q?manual=20axis=20movement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Marlin/Gen7/boards.txt | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/Marlin/Gen7/boards.txt b/Marlin/Gen7/boards.txt index f8c826a09..d6fbaeeb9 100644 --- a/Marlin/Gen7/boards.txt +++ b/Marlin/Gen7/boards.txt @@ -5,8 +5,8 @@ Gen7-644-16.upload.protocol=stk500v2 Gen7-644-16.upload.maximum_size=63488 Gen7-644-16.upload.speed=115200 Gen7-644-16.bootloader.low_fuses=0xF7 -Gen7-644-16.bootloader.high_fuses=0xDC -Gen7-644-16.bootloader.extended_fuses=0xFC +Gen7-644-16.bootloader.high_fuses=0xD4 +Gen7-644-16.bootloader.extended_fuses=0xFD Gen7-644-16.bootloader.path=Gen7 Gen7-644-16.bootloader.file=bootloader-644-16MHz.hex Gen7-644-16.bootloader.unlock_bits=0x3F @@ -22,8 +22,8 @@ Gen7-644-20.upload.protocol=stk500v2 Gen7-644-20.upload.maximum_size=63488 Gen7-644-20.upload.speed=115200 Gen7-644-20.bootloader.low_fuses=0xF7 -Gen7-644-20.bootloader.high_fuses=0xDC -Gen7-644-20.bootloader.extended_fuses=0xFC +Gen7-644-20.bootloader.high_fuses=0xD4 +Gen7-644-20.bootloader.extended_fuses=0xFD Gen7-644-20.bootloader.path=Gen7 Gen7-644-20.bootloader.file=bootloader-644-20MHz.hex Gen7-644-20.bootloader.unlock_bits=0x3F @@ -39,8 +39,8 @@ Gen7-644P-16.upload.protocol=stk500v2 Gen7-644P-16.upload.maximum_size=63488 Gen7-644P-16.upload.speed=115200 Gen7-644P-16.bootloader.low_fuses=0xF7 -Gen7-644P-16.bootloader.high_fuses=0xDC -Gen7-644P-16.bootloader.extended_fuses=0xFC +Gen7-644P-16.bootloader.high_fuses=0xD4 +Gen7-644P-16.bootloader.extended_fuses=0xFD Gen7-644P-16.bootloader.path=Gen7 Gen7-644P-16.bootloader.file=bootloader-644P-16MHz.hex Gen7-644P-16.bootloader.unlock_bits=0x3F @@ -56,8 +56,8 @@ Gen7-644P-20.upload.protocol=stk500v2 Gen7-644P-20.upload.maximum_size=63488 Gen7-644P-20.upload.speed=115200 Gen7-644P-20.bootloader.low_fuses=0xF7 -Gen7-644P-20.bootloader.high_fuses=0xDC -Gen7-644P-20.bootloader.extended_fuses=0xFC +Gen7-644P-20.bootloader.high_fuses=0xD4 +Gen7-644P-20.bootloader.extended_fuses=0xFD Gen7-644P-20.bootloader.path=Gen7 Gen7-644P-20.bootloader.file=bootloader-644P-20MHz.hex Gen7-644P-20.bootloader.unlock_bits=0x3F @@ -74,7 +74,7 @@ Gen7-1284p-16.upload.maximum_size=129024 Gen7-1284p-16.upload.speed=115200 Gen7-1284p-16.bootloader.low_fuses=0xF7 Gen7-1284p-16.bootloader.high_fuses=0xD4 -Gen7-1284p-16.bootloader.extended_fuses=0x05 +Gen7-1284p-16.bootloader.extended_fuses=0xFD Gen7-1284p-16.bootloader.path=Gen7 Gen7-1284p-16.bootloader.file=bootloader-1284P-16MHz.hex Gen7-1284p-16.bootloader.unlock_bits=0x3F @@ -91,7 +91,7 @@ Gen7-1284p-20.upload.maximum_size=129024 Gen7-1284p-20.upload.speed=115200 Gen7-1284p-20.bootloader.low_fuses=0xF7 Gen7-1284p-20.bootloader.high_fuses=0xD4 -Gen7-1284p-20.bootloader.extended_fuses=0x05 +Gen7-1284p-20.bootloader.extended_fuses=0xFD Gen7-1284p-20.bootloader.path=Gen7 Gen7-1284p-20.bootloader.file=bootloader-1284P-16MHz.hex Gen7-1284p-20.bootloader.unlock_bits=0x3F From fe940a142d1be7c314bfc35eefd2b51173c4a3b4 Mon Sep 17 00:00:00 2001 From: Blair Thompson Date: Mon, 20 Feb 2012 22:22:46 +0000 Subject: [PATCH 237/430] Added a structure that will allow easy translations/modifications to the LCD menu. Signed-off-by: Blair Thompson --- Marlin/.Marlin.vsarduino.h | 60 + Marlin/Debug/CL.read.1.tlog | Bin 0 -> 3204 bytes Marlin/Debug/CL.write.1.tlog | Bin 0 -> 3350 bytes Marlin/Debug/Marlin.lastbuildstate | 2 + Marlin/Debug/Marlin.log | 1042 +++++++++++++++++ Marlin/Debug/Marlin.unsuccessfulbuild | 0 Marlin/Debug/cl.command.1.tlog | Bin 0 -> 5746 bytes Marlin/Debug/vc100.idb | Bin 0 -> 19456 bytes Marlin/Debug/vc100.pdb | Bin 0 -> 36864 bytes Marlin/Marlin.pde | 1 + Marlin/Marlin.sdf | Bin 0 -> 16011264 bytes Marlin/Marlin.sln | 20 + Marlin/Marlin.suo | Bin 0 -> 15360 bytes Marlin/Marlin.vcxproj | 118 ++ Marlin/Marlin.vcxproj.filters | 141 +++ Marlin/Marlin.vcxproj.user | 3 + .../ipch/marlin-7ce658c4/marlin-4b8a948f.ipch | Bin 0 -> 262144 bytes Marlin/language.h | 318 +++++ Marlin/ultralcd.pde | 122 +- 19 files changed, 1766 insertions(+), 61 deletions(-) create mode 100644 Marlin/.Marlin.vsarduino.h create mode 100644 Marlin/Debug/CL.read.1.tlog create mode 100644 Marlin/Debug/CL.write.1.tlog create mode 100644 Marlin/Debug/Marlin.lastbuildstate create mode 100644 Marlin/Debug/Marlin.log create mode 100644 Marlin/Debug/Marlin.unsuccessfulbuild create mode 100644 Marlin/Debug/cl.command.1.tlog create mode 100644 Marlin/Debug/vc100.idb create mode 100644 Marlin/Debug/vc100.pdb create mode 100644 Marlin/Marlin.sdf create mode 100644 Marlin/Marlin.sln create mode 100644 Marlin/Marlin.suo create mode 100644 Marlin/Marlin.vcxproj create mode 100644 Marlin/Marlin.vcxproj.filters create mode 100644 Marlin/Marlin.vcxproj.user create mode 100644 Marlin/ipch/marlin-7ce658c4/marlin-4b8a948f.ipch create mode 100644 Marlin/language.h diff --git a/Marlin/.Marlin.vsarduino.h b/Marlin/.Marlin.vsarduino.h new file mode 100644 index 000000000..76011adc3 --- /dev/null +++ b/Marlin/.Marlin.vsarduino.h @@ -0,0 +1,60 @@ +#define __AVR_ATmega2560__ +#define __cplusplus +#define __builtin_va_list int +#define __attribute__(x) +#define __inline__ +#define __asm__(x) +#define ARDUINO 100 +extern "C" void __cxa_pure_virtual() {} +#include "C:\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.h" +#include "C:\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp" +void enquecommand(const char *cmd); +void setup_photpin(); +void setup_powerhold(); +void suicide(); +void setup(); +void loop(); +void get_command(); +float code_value(); +long code_value_long(); +bool code_seen(char code_string[]); +bool code_seen(char code); +void process_commands(); +void process_commands(); +void FlushSerialRequestResend(); +void ClearToSend(); +void get_coordinates(); +void get_arc_coordinates(); +void prepare_move(); +void prepare_arc_move(char isclockwise); +void manage_inactivity(byte debug); +void kill(); +char *createFilename(char *buffer,const dir_t &p); +void lcdProgMemprint(const char *str); +int intround(const float &x); +void lcd_status(const char* message); +void lcd_statuspgm(const char* message); +FORCE_INLINE void clear(); +void lcd_init(); +void beep(); +void beepshort(); +void lcd_status(); +void buttons_init(); +void buttons_check(); +char *ftostr3(const float &x); +char *itostr2(const uint8_t &x); +char *ftostr31(const float &x); +char *ftostr32(const float &x); +char *itostr31(const int &xx); +char *itostr3(const int &xx); +char *itostr4(const int &xx); +char *ftostr51(const float &x); +void wd_init(); +void wd_reset(); + +#include "C:\arduino-1.0\hardware\arduino\variants\mega\pins_arduino.h" +#include "C:\arduino-1.0\hardware\arduino\cores\arduino\Arduino.h" +#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\Marlin.pde" +#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\cardreader.pde" +#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\ultralcd.pde" +#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\watchdog.pde" diff --git a/Marlin/Debug/CL.read.1.tlog b/Marlin/Debug/CL.read.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..5fc3d3889cdb1d68b3ff03890a943cf732071208 GIT binary patch literal 3204 zcmeH}%?iRm420(__$U_j=&iLCi}nZG>ZR!Wzl8c_7om7t=}DGCm;Gsz%uX_SJ@49U zr%{7C6}s>qmFcWhC9_dEtDR2j)u?4&v2$U+RIP`u+I+2zoGduiy1%8&2F@2su+#D^ zwV2)F)Tczpi4F5L#{=`W(F$)9t?~HiqR4e~W5J5W*ASP*pAwhF{u%A-J$r*g!(-6% zkB_bSG3*?QhL_z*#4dz?9k+CKcR9er$h@%ZHS`YT%Q+$!Sob_~zT))`!I-z9d7Dvl zO@|@_e^Fjz;1;Fwsu$T8!oHS@m!k7^R9p}U(~JtWwTjn(-UI&G*weRIKNVRR!oq1M M>-+H%R{l4NZ=vbVr~m)} literal 0 HcmV?d00001 diff --git a/Marlin/Debug/CL.write.1.tlog b/Marlin/Debug/CL.write.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..703f553b26c58bb61f54efca99fc4a61d56d4e57 GIT binary patch literal 3350 zcmds(O%8%E5QX2`#H$c-=}tflk-tD;Mf4(`U3~*C#MH2HSWKGGw1vL;rqdaok1Jvv zFrY(=6B<4TM96VO#?gR;vn?)gs8DlUaHZjTh7vdQ2*2j$Z%lh;{3b_0rJC)opjgqq zj24Pb@z^_BS*fblqnAo*ir@6;TAsn4RO0tUStp{3oLNe5=InK;QmQ#do}8U#e253v zA?nAN>v&6aedoBp+$G(}6P4nvGM!ZO!L`K(>t_#9{ddNa92YST&&*{#cMq{+3rL=D yUW;=%XIWwOXG$w{{`_o-?pIZ?#OSX@wg~4n-4dIx?%Lt=ReLLR%l{bbSNj($=Id|( literal 0 HcmV?d00001 diff --git a/Marlin/Debug/Marlin.lastbuildstate b/Marlin/Debug/Marlin.lastbuildstate new file mode 100644 index 000000000..c9516f041 --- /dev/null +++ b/Marlin/Debug/Marlin.lastbuildstate @@ -0,0 +1,2 @@ +#v4.0:v100 +Debug|Win32|C:\Users\Blair\Desktop\Marlin_v1\Marlin\| diff --git a/Marlin/Debug/Marlin.log b/Marlin/Debug/Marlin.log new file mode 100644 index 000000000..40d9952b9 --- /dev/null +++ b/Marlin/Debug/Marlin.log @@ -0,0 +1,1042 @@ +Build started 20/02/2012 20:22:11. + 1>Project "C:\Users\Blair\Desktop\Marlin_v1\Marlin\Marlin.vcxproj" on node 2 (build target(s)). + 1>InitializeBuildStatus: + Creating "Debug\Marlin.unsuccessfulbuild" because "AlwaysCreate" was specified. + ClCompile: + c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /ZI /nologo /W3 /WX- /Od /Oy- /D _MBCS /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt MarlinSerial.cpp motion_control.cpp planner.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp stepper.cpp temperature.cpp + temperature.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + stepper.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + SdVolume.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + SdFile.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + SdFatUtil.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + SdBaseFile.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + Sd2Card.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + planner.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + motion_control.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + MarlinSerial.cpp + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier + 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation + Generating Code... + 1>Done Building Project "C:\Users\Blair\Desktop\Marlin_v1\Marlin\Marlin.vcxproj" (build target(s)) -- FAILED. + +Build FAILED. + +Time Elapsed 00:00:00.70 diff --git a/Marlin/Debug/Marlin.unsuccessfulbuild b/Marlin/Debug/Marlin.unsuccessfulbuild new file mode 100644 index 000000000..e69de29bb diff --git a/Marlin/Debug/cl.command.1.tlog b/Marlin/Debug/cl.command.1.tlog new file mode 100644 index 0000000000000000000000000000000000000000..396f5b925a954ab829c8ae59807285068ab6c22c GIT binary patch literal 5746 zcmeHLO;5r=5PfG8|AXN!ir%Q?5Pej>)UEf( zY&<=e?U7T?=Zs+ze|2nKE{HBUo+64i6SQWa19Utz@7Ar>q3Q+he4 zg)wESHC*OPw4dMt51dELR8l%F$6RlDq-F*COl9g%sFC$-YVRVhlK4B~x{SCkOFYwV zwhjqLo~!W#)}<=9&~un^{;BfxKVn)0l6*$bBk}}mj*=14=UX(b;LJoc{VlGWM^sla zTZecOuCt8v&Q<1NC_j>$M@>jxKOq0e&R4gn`PkviLrs1pi$P6|n2|G(%U!HRX&J{{ z#u4oN6whK1$DvS;Ye)3ur0lON5Z&|`VW^t+ev&UgDqF^K7_+f|QuWxHFM u&Ng|mECM+Z@glD~_FlF624vzcl^4m)qeez*Ys_S)oWQb<(Jwo{NAwMj{a&L0 literal 0 HcmV?d00001 diff --git a/Marlin/Debug/vc100.idb b/Marlin/Debug/vc100.idb new file mode 100644 index 0000000000000000000000000000000000000000..2e3309778541c978be0fd9d640d5f871c07a3d50 GIT binary patch literal 19456 zcmeHNO>Epm6y8wULZS4~lnNvyg9JjVcC(v}(l%05HM^U1#cmSqPZJ_b#%nu?sn_1x z-h^BMiAxWa;KGGN;RFJ%9FX9EkPrw7sYj4FzzIRG6hy-N?Ddi#r?HKoY4e`+**oL+ z=FNQe?3;OZRab1wu@+sSFjP2mMyS>&g|nG#_V}?Ui}e)AgQ?U2olX)eD3hG`_L`o4aY4$7F=bu`-%TZXLLqN+Jp zT&p9tW!unAX(iYD)jN@?{{ z#nMD`%KK5N;8dP&l%{GID^m61yfjg6)W=6hP+y%W)V*`PAWbyOmEw3VD3<0MrRjQk zX1cF1*{oEg%ca_QZZw zg;m+sf=W@bY|RNu5%gDNx-q8fh;402zJtDNSq8PcVta_JsGEw>RW&iT0X#)AGW3?X zq$pmuMl$)#u(-QV(zR*4M3A9h?dqyxuQ{%4?DVsXqS$qHLwD&uREuV1oqYf+dh$rwCSjO|#k{xYPH?%|! z`^NEnF3K*Rt3)mX+n64cj?kkfp05?l=(dyb*)xsh&(%7eL{F#Fvy9`-)!O8YZl9fG zfSax1^?8b_KO9M=zB{xtPq1+~mAX##A5w~~8FC#K2+cpy^*2fPOTrqJ4^tU3LhU|H zb(`fv@7lX`4dV35RRolQZ*Yr`|A6@{j1hATTM z^ye`G275uE1Ie=l)B_k}p70RiaRSEDBpf3^Fvcmu!zhq&{O9=3@jqJpe}v`>^7=P1 zae8u;CfcX;hcpsYY&zqA0`n37SD1I0lbCmyixGDZK@^X_aR@Bq{GU5&KZGZ7*f);n zGl=0yTn4r=J#zftv_thbns-0`M_qyYTkOm-mh7Q>!L56>U^~>7-DNWR7pn|!UGQJ6 zGLTewoiIj!4yOq$%m6d6-xxTx-#WzoVFs9i|A&EMtuA1#|0lf*fk$DJTPzF0WRNPK zBRoJjapR9yf_(y#836VNdkNYG4$@!K~8x1aK@kmP^_{*kl*qO^x$Qhmgt*o?*kGj0Ca!;*w_8G6|RfK4glT1uE}1zpACiUBJl%2_v$+> zpNA*Hb&)6npu3cQ$?xy?;ksCI0Z}+Z5(z-N?|zDy%U?&4{-~Us3B!zU(=J<~`!tw??y>SgQzzpms2Jqb-3p2nBFayj0 ZGr$Zm1Iz$3zzi@0%m6dM4BX!g{0-I)&M5!@ literal 0 HcmV?d00001 diff --git a/Marlin/Debug/vc100.pdb b/Marlin/Debug/vc100.pdb new file mode 100644 index 0000000000000000000000000000000000000000..208b456087e7b6978c1219d7b9843b7a1d4f88a6 GIT binary patch literal 36864 zcmeI)F>4f25CGs=jCv*ptVBfcEK*1yUa&}NBS{r3f|epELaKnVu`}QgNZ}8#(!wJD z!`enkam2gDu|P+g;y$_+)E)>+#d>%8ixz`R@A0 zYIkX&*PETbe0w7@E<`lhoXfmY{fy4<#xDT^V=nN1KRR_kpUJFy{B-8|%&B2cXZ!i; zLF~p(oXzFsY@_=kqMx0NnatXMwmQT3-o&>L`w_j)PV}$k_QR-}Rlkl^wQ9dQW*wvI z)N$K&vinyYHu2^DF?DOBs&_GSF7syQTISu%N12vMSo2oNAZfB*pk1PBlyK!Ctt z@N!|X*?xQLPR+r+9v{EHT02~Q^WfR*x!rqvqlpbQ|G!cYAV7cs0RjXF5FkK+009Ey zDNyg^)_eWSt<$gfb5B)1Z>_XQfB*pk1PBlyK!5-N0t5(*t-#E?#pc)8Kfm)=-}tz|)g009C72oNAZfB*pk1PGjbf#b&iQ~3m-J^nxWSK$l^5FkK+ z009C72oNAZfB=F23DjJFL4W`O0t5&UAV7cs0RjXFOtwJ%&o2lNAV7cs0RjXF5FkK+ J0D;LC_zCWtByRu! literal 0 HcmV?d00001 diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index b2a9065f9..06a1dc7a0 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -35,6 +35,7 @@ #include "cardreader.h" #include "watchdog.h" #include "EEPROMwrite.h" +#include "language.h" #define VERSION_STRING "1.0.0 RC1" diff --git a/Marlin/Marlin.sdf b/Marlin/Marlin.sdf new file mode 100644 index 0000000000000000000000000000000000000000..12025ee6a046b3dbcd7de7e75b8356eecae4ff31 GIT binary patch literal 16011264 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

>IW^#OTVN!aMIw?0XIZ>XNnGl~)7@r=$S52s* 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

eg8bJ%+`C|9Wsi9L=j!u6zW=xJU^Loy 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


-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 z∋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%0D6^>`^w3jG=*AZ->BVKptG=oWGR6= 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%0D9pG#yc##B#T%ZQ~@6w!d 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%0AqKM=(ZZA2|+>nt(?$)?^>UAd`J8!$bCQj0@ST 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ôJ&p`B-9o;OHH;+-aNT*dU`T4ss0ap?;Y60k^XV- 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±Aitg##72H*_%d)HO?(RS!P!#BE4mOuG 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�(^u{go$<{ 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
o2Pw&ZC97MU;d+o#sZ-M(i%#k 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þrWpqYV!W(EqH87OFGprDz7f@TH^ni(jqzy;9O zKtWpr1#Jx!v^7xB)<8j90|jjjlpsKZ0|gBZ6f`(c(BMFc0W>&J(8NGN69Xj)(9S?X zI|Bvn3>368P|(gmK|2El?FzFApul)DhjXxJ3xh}f(lOs6`l$QEua;k)>A>P zr-E8f1+|_EYCRRydMbW^s!s(~p9-oz6;ypHsQOe;^{JrhQ$f|I(gslfsi6K-LH(zK z`cEYdQ2(i*{!{4$U7#CCV}uM)398tD9iS3aK_#f-1gM}>S^z5O6jabDsGw6&L8qXC zPC*5oq5;&>DX67WP)nzvmQFz}oq}3A1+{bvYUz|XKvkWBidF^nbqeb16x7!#sIOCW z&;dF@7w874v{O)Nr=ZeKL8YC7N;?IWc8UX_=1xJ)or0P>r3IkoPC?C`f|@%8HFt^^ z_<#odAOM0O1i~N!q96w1pbaDdMrc&pK?!K?sCF1Vlj$!~w=;R4_K9k_7D_1=2tV>@Xn#87RO8?7#t3-~=4B zfL7olXbs)C?g3ul0~+vy00@E*2!jZS0*uP2#6cTKfFx)K%vYq912Ry64cLJLsK5z0 zXaTLj1>6L!p$FH!zy~zo2LTWSArJ-;5Ct(12W=n$lAs-=KpNR{Fc71HffyAG#Hhpo24Yk&5Tk;D7!?e}s9+#Q z1p_fEX`q7+zy=5j$Up%$U|v;r4!0}t>5AJBjw1V9jkKo~?o6vRLr zw1EUjf_9JsX&?;~GEjgG*ntD6z)4^YalHk!0vB)t5AXsX(10HVKoEpL7(_r6#6TRh zfdoi`c8~&Tpo0$33A#WxkVXg@CdrRy9A+w z4$w)^8g}7&H|PO#fHX?TKmj&j2M(YDC*Yt3v;r4!0}t>5AJBjw1V9jkKo~?o6vRLr zw1EUcYna6Kc8~&Tpo0$33A#Wx=mB$pG)Blk0XAR<4xj=IwMcJ!1cq9qw><(wEz;W_ z5gJ`W@f~6MkJgchf*6Q{Hjn^(Y$+8Ngg_h6fxMq^0uKm+I7kEO0HFdm2!I$!fo|Y9 zM7V$-L_s^~0_y%{^jHu8F^~e?z;S?Z0Y8X>cF+av2Z>gofe1)~PGCDsv;ZFng9PXR za(X!x3wS^f#6cQJ1B40^1D~Zw0A+~azzag44d_4~CY-xipbOX!60JZ35s(C(z;>8u0X`503D5y>!S$i{wf8IU<=@latG-)!H}h`o zo#H#jJN0s@oGnY`^8Va@ZGYwS`OoX0uYPWJBl;CzGhVB|T6#76s`P64mE0@ZE0ve? zFY7N?_Z9YKM2)@iQvJo!i`f^Y7t5tay?uU6AFIAlcp>vb?fK&K#`E>(O3!7Vlb$O- zn|oG!w(?B=8U2~+(}kxqPuHF*K4m;rf3oys_DSi<@)Nlyv?nT$=O5P}uRd0I%qQya z^+&6Z6duVuQhT`gu<>xcSSn_VQn5Um8`VZD59J@yAF4iBcrf!|?SbM0>82z5Y4=p_ z&fl%yUA?PtSLUwToy9wiJL`9p?#SLD-BG?hce{3b<+l87>{Hh7AKF{oYwWFGTe>!T zt#oa9Pi~L4r?NZ0Ti;#XRoIo;RlBD6u_OE)*pc6%@2GAsY|m`3T~)lwxT=0->B{Vt z(v{^aa#v_qRJP@}>D#K87cS3SUc0P#nQ>WtYiVnCtF*PeCAUS}GWIF!=|?V{%_x7x zHO89y>eA}$YH4+ORc@8Gs*=rT^=x%uXh0jNtjw>}S60t2oS!+rc3$y3046oFZE~prT+5b++uBU zWl?^SzNoseurRZ*W)uy>sP~onvVBrt`JCK2+Kkcu(q~oAES#A+vvx-D4C9RY>7~=N zr%R`oPs^RAomM$Df2w|JbwOc4W?zVI<$1Yz+Puo#{9Ju*HB-oB zGPT}fuhCmSxpZ>&Wa;GcNx74>lPV|XPt;GWo=`X;b3*O-;_=4u_2Wv%Wsj3S<(Pk; zroO)v&W5FMIg|@&p-M0x)PvPPA&?2w{6)XvuWKbOt4Uhfm-A`9iZ}1oy;V=alkwEt zMYrLuyGpLCOLCQ4bFEryr6u2@w^Vt7XL!w7bQ;dOT2iyBq?R2yhvul*^LE`{wH0g` zTTLk{hEkVHa#oh)vXqlFslxK~4S(S~kzYwQPhFPxh&?D06l9rKHI%P6(*6B3-Z9M61i=<_gkzkMueZsBmD$2R$ zNJit@2&yzZY{?2^^)hjOW(oaF3HzKy*m)Gw#vm6)g>5EEt}JuF3;^e z_U6Hb>y9ziYV5bj&x(A=84L(#o1ZyazUgFt*&=_H$cLQ4fN-|?bB~s9IurknMgD4$ z4>^MY;cWBg9WCE7_bt-biFC*r^b4D%;}DXb*!QUm?9n#8sYd(*i}>{-9&!c)!e;TNm)_## z>rOjbzNvEhLyP$xcGP^+@#p3SP<_*46}C}ql0hyE3AcRA zz7k;lrhTP%?-J9fP2aLe+)i0>2DvaM9HjO!SFx+7y_d2PG;h<`;NXgti_RTfxO~m( z!Tt@)SFf4!x&7M~c{?acXOIiiLgZ~cN?w#jsipDYAolhtp}jL=zhe=5H3fDs$c1U) zCydR^i2bfb>@^e^V~`62!bW3?nf2p1^id;&A!oO~3uIkLv&5 z^-+N*e)?W!5$#U#Tjb!K=tte@c>!YpNc6*^bQAUUBI2M8BtSbzfi#c~5$;2GqstcI z1wNnwKL~&z2!RNQf*6Q{Hjn^G&<@f-I!tK54+0gh2#EK@7w} z8%Tn7kOFBS9VBF+02^=s6*xg~_01+)Sea08|9QF;Wh0|!un6L8Q9 zT)+)Hzzcjp18j(pfD9C3+S=N1yB#=y3Y?$?v;r4!0}t>5AJ9Mm1VIS2AAF3q9!LWn zNQVg-D8L5nKm|^~K?`UFF5o7nt*r;Q`+x@gfQ>#u5kLkCumL-802Mev3upx{;07Mx z1wNpG00@E*NDe$jMFT0225g9sfD9C3+S=N1y921e2{>p0t-uA`zzcjp1MR)&unp2c z2OU7_BV?ce8*l&>H~|MOpcS})8+d^aXvDO&4G&ZQ>IjH}7>I*5kN`>04$?pxA!MKc z8?XZhPyq)mpcU8#UZA@G2T*|%aL@u;feUzm7x;*2YpdaQKZuTu;fO}WK^sVbBxnaI zkOtByAp?Ds`uj@z2^lEB2JFBARNw?HpcS})8+d>h_<#mF$EfRY7cp&ZyKy@^KuACa z3b280MtzNY080}Rkbwehzz!V12{>p0t-uA`zyrKM1AY(yL7=jiX#s%dn4txLR$|)P zx^TN2&?GceJfHzTka`IjD8L5nzyVa?1RS&i7jOd)h#b0r+4p%S`o;UlE})ub@j)X+ zSGj}w$t&HS7SE029qv_hoR3mhbLyer=q2u=uIBE@$OX*prboEjK;Y0~<{a<0o}}ya z!GTENvCbhP2ttDWOK2rP4202fKElqYJ5!%_r-zGGX+K1((&(0*rmNl#fRlD!FRh7l zqKh`Ih}Y+%rT9m(^z@^*yJMJox1S&u;-tRlbhIHfdJrELH*!42kHDvhXb)xrr z;NV8Q-l(^G6!%kczc8cw$+&a-5bYg0JwnZnk7y9Y{hhdf4EK-Vt|{D$AKt|5%RGF1 zQ_BZ8GyBbxJ?j0uxV+Cd7Wfet!AC+Gs*fE^|zAOi*1fE_r13Y>t07SIY@ zzzsaW3*w*+BtR0hgA_;u^KV;+Khi&{exdM%%ol1O7C$sTtbb7YAp3#zLHYgM|L-jf z>ZX@9ddRO(D!Zn#|YCDTNjh*#;DWAtSLCng+g884bb0o2>GJYrxy!W6DqHhg^{v${ zg)NyawavxN#^(B_(x&VtX;XP)ZlkublFR4xTy>~0lo_fG76*rB^xq%-ME&HMXcI8@Kc4xoc#d&S{WAy7&Y!KHT|KLCR_3hQnZ+}WGwWxR z&d8o2ol!nLce-|Z<+S{1`f1fu3#VpItt}`nFc#G3m*!{ZOY_U8@PCu@C zY~k3+Z{1V! zWId9n?9RD0cg2-=>8@&Pp*7Q5`_%paf3WVS>ouzXe@AP4|404*wDJG{bo{i*mp-9>RL(H!@@zTli$N;b_U0ZPA?lY)~y;`zVf_G@4UffgJMF3@iqY8 zw@5pY5;_@d6-I>3(r{uoGLg1n!v+fL*mm`HiaqJ_4qC=U%Y#3&NS#l2O)yCP!bq18 zz4~{st@OL;XT-*ABYsA`rIrk?UV?I-b_|^yGMzpCbBjPUi%2j?{lZ9>uo1Y0emDIb z3GAO5XgXK?1B<{jX^9C2xzHut%r?_=*eq}{y0=d$p{WXsJ~4=&X1mR2=&wlzxzH^f zrgNq{*{;Szk0^TDP>YC_tJatjO_f$vi^PQ@5po7wg^eDuY5LvtGomnso<#IbZIm#x z08gT+n(8ks0vFQ~lMGTHDbgiu1YT=OqhG|6D7xUTZ=U#<7K#0|pag@|Rf=>88;LW! zIXCuGD&mT%&!VY_e`OJf7BvY5slSv6gpI)I&wQhZVw*0T8aRJy#m-+_1TLq=CmG~I zx3Cd7vkeeBXo+pQdeziKQ*GPdSR}3xiI6ks79w#wH3pjYGrpr5i_crTVQQkOg6)SE zi7RQL394d4B6JCJY!fv-nt4PWe-;;+i)gCR|67Z|RU!~l+Zz!Gchfh3olOJRE?i~W zrly|Te`gW6mKNW}AT>83TZOx+ggaT9emDJymm)PtS!BvHrtURAvdG&&3v6SMT3C>+ zLNw+2m^||aT{t!Ge_7;RB=R6Nkq~)sw>X-n>6+36kVBVspNumD1B5<<^ zgq*e_N(d2%cc^JUlO;57Qd2$R|F#H3bH@aORDVmlgpGG#M4Nub1L-Y)@swA+d90*E z7J*mL5)%w^p-b3!2W}Qf@4%)&(_4PcA`pFNlXMV6Aao0@-+@huruY1Rv`8EliICG1 zheT+dIPo5g&ruoE+r>{T67iOhpxp$C&?RgpV_apG&@uPhQD5Q&g8=oU^-Y)#qar%qDkIdu6TsmlFy`Ae$n-@N|JTyxr#`yR5cU5**I`nq{Wt*`msG@dN=*G#g-YRg(Vr}Lbvc*+Szu|9zN}7JdxT8ns#vWm^Ht# zNPL7AnqZI%UBauy>uK(^z=>}rD;LpJK1aULng=&IY!Uc4Ei}m>7rKQg9wxw=_A_3@ zHH*$)V@foA`KntaJ|z+%XV5J~;?WKojU9Z=qG@F`y`BD>MdGs}5po7y!fhgN#Bk6JlFJo`df>{=R_jp47!EQ5*uYi;?x(hIq`QEiO-8f$Qg7CtrMrd zIOdw(!hdg(SfZ462D#8JZ0xEtw<^jQWVEYhCf>puo7MCl{_hr%FN#RWsV)aI!og;d z7`|mZ(zIPok$>1oOQ4_WU;8J{6TU=$YiE!PJ;GT;nl`NIgTsGVM7|;-A!pDnY!-QB z!%n=9H#V#>^`paoT137oA|YqcBWxCVWWyS!4Qq=0KNgX%iAcy9^ay7WY1*)+k1PMz zBJxcU2|0sq;l~~8f(*wx^MSzhf#ts}BHt2`kTd8JHj8X*SP^O3u%^gAT137rA|Yqc zBb-H~X~UX6CH+5($o(P`at1xZW{32NQcgJ*;49Kx)5oO$wupRJL_*G>M>vbfiC2k; zG<_PN_XF|M>`?Fl{WZZL7rKP##Mk`nfw9_j_F$grbh=~__>l;NoI#hc@e=8!-%UT` zUs>n~+dJjMz&z7;YuO_3%e2HKgIwqqHrsV3-kLEP=8=yd^Gx5Z6^q2Li9|?K+mmi# zv!`()aatKo=hJN#iC-6qkfw$giEukT`8csQ?PvT0&v}d1nx96~2Ohgc;*OnDkjpLbM? zz(1vsB!e`YHt7~NM$B%uQE58H)#px4G=2JTS|t8Cr6d@n*{DgEaLdOQv42_-O&X8TZq8zP4}Dr=|wbs4rsAR{42^zFi3MOlP)0=kM=>iaYDVHK1EL5rpDAy z0j(B+KctW(gEU1k=@vEytQ)4^O+Vv1Dvek-aN*R%g;Nt<7KuNiMJ5=eDSkJ4$=4iZ8xj(A5K)|JL$WBkp6#( zzWZnB9KZqk-hV!Q|NndX?tdkH_y14&?td3uLUh?j-~H#&<-n<`d>&nXv_O?Fqs#B+ zt8#%Z9=bepiYgyNm-pwX@M$U;HP39%j+psQ3+IT=kEP{{drN@c_VBS3CqT))mKCS3C-0AP(99#=7Dd>xyHn zD~_?QcpB)S14wjwh08zz80(5-tSgSOt~kcJ;u!0SW2`HVv937Ay5bn=iescJj*+f7 zM!Mn{>55~dD~^$_I7YhS80m^*q$`e*t~f@z;uz_QW27sNk*+vKy5bn=iescJj*+f7 zM!Mo@po0#;1_%krKmj&j2M(YDjC92@&K1WvR~+M9ag1{{xg9ay6~}m29OGSajCaK~ zfbp(4#=GJe?}}r*D~|E5cmza248%bjz<5_2<6Uu#cf~Q@6;A_cn2>=2Y`_j2Km{1@ ziet1Zj?u0-M!Vt|?dr&S;ueg0#WCs?_W_K0#WCs?$Ea5vqh4{0dd0&4qh9eSh=Dk0 z0~qy+W7I2-QLi{gz2a%0gAULMxV5 z*jF55UvZ3m#WD63$JkdKV_$KMeZ?{M701|D9AjT`jD5v1_7%t2R~%zsag2S%G4>V5 z*jF55UvZ3m#WD63$JkdKV_$KMeZ?{M701|DybE-L9x#WPTu*6~ZjpfkY`_j2Km`~9 zi(>>VjuEgpM!@120gGb=jDW>40v5*zSR5l@@d&^OSR5l@ zag2b)F#;A(fFx)KDUc>6*HgzW9iS6*fo{+P<^YU?#W4;R$2eHr2JFBARDf}?IL5)^ z7zc}E94wA;usFuS;vV1yKA-_V2!J36fiQ@GD2Nf0>lw!_Z6E=XpdF+@8t9+{bb>C> z4SK*FARQ!Rpa2`N0|!un6L8Q1T7e6=fd_bj4`{$oOs;1Dw*)~5gh2#EK@7w}8%Tg8 zXa^~f20G{fouCVJgB~ykutS6dWS{^WumcBBffI1hLQJk_D{gTCH}C*2@Bt0@K>!3n z2!ufdL_rM1K^sVbBxnaIkOn&F0G*%|z8+7$p4v%kzC%WOu5qNqGp4kS^PQr6i(9q!`)=T!waH%{*-sOTt4}8Q2 zAB)20;_!tO+?OV~4m$DsYZBUL%fJR4fP)s$3S2<6@b=&unv&DrL-;`egn*baErM%k z_f9(u(FQ~t@FcFagA_;u9drP8h>(B`6kr2(-~cLc0uEY0D{uif@BlARXrazG?eJ|C ze%^@~AFh5O2)`VMU-!|yo&QV2V3~Wo`2Bz#e%*l^RN%z#-}1me^}` z^qY_7^~-%IeOMN4`%CW|@7LZdyq9^e_HOZA7ppLz z4;3EDJXCwI_@MD%{ejX0S!(HDxL?1&a$o*F?Y{E8*?XmX%lG8&`S>vcv$spPmu@p| ztKC|-HFIl~W&qR*m6802K2p7kHRsuCHBJyw13;zPGeDyI0yalraig)Zo-5_DIVo2j$_;5lmBIX=K3Kh!U0S{*cZqgM<>LIs`o-0Y zMlQ-+RJ*Wvp>bjTg3<-q3#1Fm8*&@84VCrz_4@kiy2855y4u>}T4QZ}O=(Sb&8Kbu z&z6^$<(6s7DogWA^`+G%g(aCKwf1xEuES@RXVl2Ah$qUP??{fug|ZZ!an6#fFqx>4**M*+jH$&dnK7q>d9)NkjNxz zZN)aDtsXDMvvDb2j^$!ntP;&f^=LIxh-4zQa4~Fz>!DI88yfi^&ihws&9~~U)s{j_ zrlrP<+~9R*$(eOZ&a#?QHMQc%J9J0YUa)8EHCxeU*y>72$tsdkmUFTuSERh8OE?4f zxocL>3)1)hf1CRKe{?;2pnSRb(%+rliT;2$Q~!UO@7C}4(*OXrkzLH^9J!YH9Q&_l zK5gh`n*Qxzf%#ew-o|_(-`&ioAGn7YzK{7*Lk}=t`|v~bhtY?bFEREAJ*@XJ=Hp|J z(`_`huFux@G%fG&Gt3w1dmc-9f%&`xCFb*uyu^Ghqx<7NV0^Rf%PJIe#ONvd2KRECQHbQ@(9){z8 zu;ULBZfk6I+}VNKQv3HZbs6=BZ1F5;+*>TDwQoJMzd%zK(SS{qNa_)FIS{UwaQ#1Ee&wKkqr@s}Xo*!qen zviQ9Xg`Rw|;S7LZqBZlov3)dJGrx=0%pakZ@@oS((ucjNYv7|>rsj6w_bF*<{5~bE zb!d#9R@$A$cP4sDTy#_G&6Bra-wF0@X6n84WXhhW=pXH1~YUNx?3kbphc9W@tUAoZ`Rf} zx{lefB+=nF>DxeaMh~x}Z?lVWPcn|Ro7kXOe{AtX>sfb{9_gflVpSV2syID58n}H-gY={Y)pzgB3i zhQC3JAO03C-~i$8{Wkq|Khbj#*L>fh)#&?MdMbK+47E z7&Og#;lc7~n$~)(1I&@aep;4m{5?dhp0BUK zqA^-n6lbra3f(;#8R(Rv?X=VLBE8;TpFB*72Sn&~kO(4&hqduTT5{+*7V9|NCB?ewE^2JX9olgR9e0op ze23Xv+->f-X8|2h>A;PBp>d?96^tCD?bLRFwv%>HgZ}qQ!kB+}DBoCUIXK_hkcg-y{lCq<5I7CbuK4ic0HAFO?gadtxin zjSk$1GlBHJB;GZ}?uOHFUYrM`0Y_*=jX0eN@hS%~wgpgzX@CnG=p4P2#yJ>mm%R2v zL<^l?a-rz7;Q0R4Vn3%(v$VJ3eVn!!-LB9(YZ9Mvk8-Q&KEu+X?-jqNeK-3Z={x0b z=f16dyYj94xAbpSzghTZ=9{%|RKH&MdZCi3RKHgETIOrDuNJ>*d{z5O<;(dm>tC*Z zsqiK3ilM;^&Od>2Fuxs=rZsBm0K*M)~#J>-ksp zSF5k&Ue;c&?904Vd$IVU@nW$gjb&db(z%j4jewAOrubCl$^4W0lhr2*<7Y>V$Lo)k z9?L#9G4?^>;mpIeVzFox>!YR7>}Yjz-UQ=;%>A|diuW1!)$c7$J0Ft2OTVjnXW`Dw zowYk^w-;|WZm-`~x-ENK_SVcu?Uv###x3=mOE(v8%G^}Dv3R3#WBrEG4cQx{8_L(` zuGg-wT$jI2zplEsus5@}c5U%mG#>z9-+$zCE|QocBMas9&5g*fX`TVGtCU#qXhya&dr{7Pws zL}w~$ON&djC8b6Ah50_?9PKmO+1gp!ndVssGN)!1WaigSDV|cCXUwb5t!0WCBUA4! z^=5me-tx)0leLp8C*@DlPpW?GxB|7w@dWB!$zZrxpV6%4Di`F8T$75DAu;y- zo!49w;(hGw@$dg=|F8G`yZG)Ofg^wPS+tM%Io+#^K`smnKS8sM%;fZ%$0Bh&RQ z6E+GukA64(j7%2PJY}k>nO)E#@h~m2i$SV}Bg4W^P|(Q z^mC-3^GyXcwJMBSB>o32vWr133=2O&LFZ2t)D#=Di2c75m|~C%HDRNm3+PtU&yj*I zFcs9)m@#gV_+PZhE(W?0-{Wia{>agpGopO1GMRjuiA%Q$bCQ zC=(WmH1G-)6mnr$_z4Pn>O?_Ju}O{*!kHDtvlts2msXbJ2 zjBFSYHY;>vzU=WruUxmpRAzIR@U%s+lft?f zh;6079tOEEDr{EX#sv4GyqUp8#=shLflbZkJ1ml2lz9w;To@NNE3lvW$Difp=Zhzq z!fBZ4$)x3MZ}Tt=$5|vNDD7A}UxsAZCTvz<9KG9*vV-?dKFy|& zTgO|3rzo(8K`x94n-zP?)7(4rX*PZQIl&@0O_5zRl{$i9NZ72@GoR)ofv#Q+n zV^x0RO=|0ZgDQXVX;nV!UsSpBkt#3xg(`pd3#z>0yQ=&bud4Dz*Q)YAK2Bo-d|Q=& z^_VK}*{#a9ZdHC@mnyf>7y$dOQRTVR|Nl!nRe3q}0r-o&Di2Zn|6dHN^0jFHPye^R z_Tp1vs{j9CXiEG4z8l$=?6<@wO!jU?h5A!;QXJJvjheSc4cg5fna;hvNVigr*O8Nt zw3&|Cb^ihkGj=R|+gffs08LNC$#=%=6m(=>$+z9Ra~ z4_?POyg?H|zYq0ygx;p-4ib&xU3%nyPxO03?_;cqir$Zl{;ETtqDSo@s_(DGqG-gT(6A`luqc|aC|p<+%~%v(EDApsMH?1H1r|jU7KM&Q z(Sk)0!lLldqUaZghyZ4*hS{oOwhH>itv`U-+Kky6z-;wnwzgunIx$-X{gT#SiP>6( z*=k|7R%5odVYYT)wgxa;>oHqvFk4m3)~dZUTLYM_3QceM+1gCAq!GWclv~3qFuMYw z1l9(cQ#FVVAzC?1(KU#6%$Q(|^OYk0GHFwk4 zcO3O?IJfSi6{E*ZD@IR{uy*`tcUSIpz1EQ~vmR?^qExo<~Ex0}> zEx5iqT4sH1;u(5@mRX-d%dD@4mRVl|EwjER+C28TX>rjPyg?tM< zOGj2avO>tJLY5C%K4cllYMwExjb4?MyIK^bY7`|mijo^esRBi*5=E&VMF|bVdIBg) zDvDAAic$@VQU!`qEsBzcqSSy=6rv^4Q-f0EKq;z2DQZF~szNDhp~ceUK`ByEiaKc8 zdMuhYTI;C*c~F4rQFaWJi3VCqJ$@7i6UD)c;?PP{RBnx~qSerAUsv7J*3}C7soT@c zE2m1=5j<9YP3x};B|4QpQ&RyAW@yVBP}1-36lBiGkV?`x;8nO4ZK zhF4Nt0N41;e1y_Q-_c)>?RO<*(N2Um;s#~)dnt>K6lhB>{IuX(>3!vQ6HW@7an%YT zrjd6Oh%pf3MT{RYA;c(%3Cr9>TysIZJueZQR#i<))fPrtY-Vl;+eLxc=61{ z)o6v^zA3`f@=;bFH%&6!y~;Zi}`H1I_Pt@Ko5GhKl|S276M>yvLD z|7!TFxv!-EA^GL_--o}Xd@=twxzEK9Wj~$%RPvMYPlP|7`&jzD#5?h~Vh7EG${Xp| zbFV~RvR+hP$ULV!n|>ztjQLC^6;D~I?199A=+kj-H<6$#0&iJ;^OY-NW&WWC*oReN0TWl`Q zEQ&9(7G)PE7KRt*79jJw1Brq5j;7g)9+R0JpKZ;~&PvP*&&qWtyCdECu2fgFOX*5?#yZW; zOh>%K>d3Yy+QaQRD``cne5mm2e>xZon!!w4yv=IMwkBG`t+|$DOQa>-6m3u%()F== zvp!Q7ue0j1wFyZd0rNb0BV|Ml#YnqjZquEqidR`xSv{eL^_-T}B3j;+az$N=EA5Oq zO=qSuUTIZkD-spqiku_q5aNk%U3o%1{r(@Xt>F4Te*faoEABbY8_ny z>TDfb?qm$^&Cn?Ll*lUFL;mW`8?T%^FJk*?rcaVPhY~vl)Y)40Bc6^KjI2Cz%G?%v zq9nG50z0TOf>>C?mYdwdDK?(mmG*N_eYU$8og_)^rKBzab+(QzH?f78j8kld~T7Vfz|{e+?>wDADnIKOnU+Hc-?vLx{&PK3IEKDOMH9yyta z+w~VuCfWn%N&@FnNT+~0Tg&3kog3(M;*`Jf!fCysp$#KLk->Gg)wj>~)5|H6*i$I5 zTR`gOfox#QO=sbZJeKIt(D2BLWySc33AQDlDoH+_lOgr@z{xO1_o|H134tkp{6lWD zh%ApRU9oWbZvpoEWS%BTK7(?)1k~9&w%jxyS&R8cwvh;(D4txzwqJWrm*k#BiH!nM zhZAHiyMgYGgPZJ5`Qt@Q{gf2u?dXQl#pe#$I+Hy^k~TyMO#)IM45Z1HyB`m3Zu;`Ra>e$XSw*g&YD60sX8zq@S;4DTbUa z30cG;&=Ani%0o^%2}`aRGEWk+m_wi;pr4h8oXFQ%6+e8-|<$bckdDThEqKtC%F>Fq69CWDfY6&wOR0#>u-Zk1IiD156d zTgs3mWrS0pA)ue#B6d>IpF5@O3%((jQ!E}Gpnj)HCS`#nWRydoA)ud?hxC?~#)XoQ zl^g;M0sU+tWcoE#g(6Q=LRYnxOvxfi$SMwjhJb!n9#ZH5ySRESmV~V45NHVKXA2?I zFN2$$lKyaMX*@>~vW7#TA)ud?hxC?~#wC)FwHyKs0sU+tgtt$nYuJ&s>m*xgTq+4! z$05)V(9g<4Y~^H`B;I#K3U?F4rx;2?$+hq+)GB$7qGz6r>g~^QROMNoKw#SM}GR8Oq8Up&* z!gO#ku&r5>8MYnPh$JJ%8PE{W#}+cU6dXOnw!a#cWL(G@&=Ana7BZ&aL~n9BYz1Vc zBx56IKtn(uTgc!&($S}b$_KSUE^f0{Nir_t3}^`GXA2n@m3}`SPn7iKD;NCYET?+c za;MrwLuQ#%y?}=QTIy6Eq9IJfSC%-{OU`qu4jP_5*QuUL!#}Qbs@rI&qT%_qPW9|d zoa(pMIMu6Y@YC?>YNxt@hTJNrx|@c&%}({DA3D|ETd7}xXX&~D8oofk{ja3^|9_u; z_rEkj_X?!@{@*~q`&W+R{(nLodh6yr4OIXCQr(gI|LpPK@|4&L^=iqCxtM1Rq>gfU z#z6Uuv6bpIl8{R{1R4VRS$T-9Sg)0YY~c`S2KZ_d@Z=veQ zl)vJ7v|?cKP+#eW_FPHGRt|xNfPVH$y3Kp}kd-Sar1W^?JW0qE90CmiO%_*IVOpmA zQS}2Aot2AeQfvn#=SxzyaSAj9G}&_VtB`{E6^@kF4=#|TZ08hc2xzh&A!UB)A<244 zN}N-mA)ud?FP3oWA;|_w$PNyHhJb#y+@ur^t}w%TODhOtl8~Jo0;yjm4uSG1u^p1c zBq3LG2&BH0NFR$Sxk!}TJ*^m6U@IvXN;0nD3}^`GV=*CDm(5tYVzsTHY?Nf|;tXgA z=wne#E)r#TfddO{#blEt<66#uhJb#yFt4U(Of2;U_ENH05^^1fKtn)3D-W?1l8YoE z*K-Io1oW|mB{F?V3I`0dL~Lc`VoAns&VbZ~6=%T0gp@mApf$@@L@tqJ+`t*o5YWdK zrlVX2O^2<7Y>{M)a|Sd7^s=~>{$>%HvIQ37=-9MEjE)SI?n*9|L?k!@8UlJ*L|ijN z#G29_$z_s=n>hj+0#c`2+R`qR@u9UVM;4TB z*|$kT?&J_i9fOfRw$KCG^yAz@@uS{(7w{@wJeJ-r$+(9zAoT^t8E`wTQJ7m({%Dm& zU2}NNGTYgbxFq9V&VYu1es&`j@}p%GW)_`j?zL@ocSu6+;}B>F=x602wzDNWB_a27 z2s8xru^VZjZ!9~v238K(R;?=~8GASb8Up%QbUWKyb~iXM+H0!`UM0!c%NfuR(8m@s z%5B&w!&Vc#T9T3E3}^`GV+$GO)-1}fZFH}ZWIV_j&=Aneq7ReuB|S1~TO7M25f5<$ zGz2u+LMI~AC!=_1J+QoY)%?;U#cL%g4|57M1TX*+NO2zH$|&g^D{h@t-U9PM!qVElGKTQ=lQB z$sRT3*H=`k_g>*tyJQrAj#i=fu?Nom>*Qwr2L)${9`iTWjbu|rns`KAV!|Wla`Zt44b&Q5TjXKqb zX$aHsZL)=>$f}9I|b8 zZ;;HPCwUG*>LHHj5IpJ}vZc(oZFg^!q&&qb&=AmMKSGLa!+Vn?A6wWNPG2U4LkHR!+I~5>Rg&>M zXFx+hAB&wxc!r%}*tRpgO_K2fXFx+hA6v*MI~}9;RqJ+1#*3T*4FP>@A!GVpq&Tle z!?rc+4oSul{26rpr0+2_URduhjM+kP0C%8kk>c_ z8Up%Rd5CR`aB;yUvfQEoR7E8TvhPAiPw)WmD z$#|19pdp}-Eo78md;4q~#``202RQ>80{YlOM)|e3&$jm7FUfeDGoT@$pDlDwyKTxA zYvQCnbxyltsI+FdM-uW5hd@I>FN=`!mGm`(L#4}nuO#AKj(~=MJ{A$%%P#XZgTuCE zo|I&~#~F}1?c)qs$SAkWDZ{qR_enC|=L~2F=wk~R<(4^R*p~SNl8jGq1~dfpvfD+B zE(ZurTjqsx0mBj7Pa+RWB0k9x&=AneBI4v3B5Xg1JS2(u6h}ZqKrf4k{uv@{KZiUl ziTE@}Ktn(;i-?nEh_L+_@`xnjGaLa80lh3DPMjga_8aG;l8Dc81T+NnvWV!LA;MNN z9+N~I;s|I6=w%U6{_N6l#8xmKmqcVZ0vZB(Swxhta}Gyr<>CoR#NTiPGz9dqn`j$? zk}>74cv5C?&|WZ}lw^E?GoT@$k1b?Ozl5c*|Dz0B$#_bV@wc1-4FP>@A*0*{0F+@X z8c$0yzQ`HS5YWdKGI-ZeI=ha{D_hyvFUj~j&VbbQBxk@v2Jah=o?$B-2P7F^;tXgA z=wk~R<&H;aUfD`VN|N#SoB<61eQY74+HY{lalNye8s0~!MQ*g{6R{RU-F`8Y6H z_kUKB@m0=%)K4bqXK`xi>VFdjG>T z^wIE@m2~|84Ha|_;J|=WJ%fgSo$pkyq`@~r=MkvxKSaX^RPVoT%&FGUAm%Az$HmXy z*+ljK#~P1P|Hsv$!;6>O3-@!98T2)tLC_G;&z7A*Vj{#=x}TSX9Oe*c2`E4d>fR$QzP~f8z*f2D0sX8z#I_&#yd>m5IRqL4dfDyt z6VVLk-Ue*PSAQdk_&rBJLqIQ!h#8Kr25e>I3zCRGa0E02^sTx~5YWpaVus_Z0bA+#J4wW!I0701dRauwaC|jjD;r;u zMEo~LKtn(;i-;MHuLh`O9GS2MwSRG=XN&0$Kt3^Kk@0 z2w0#U2)YB3LjfvqfC^9voWKP%g2qtC<0{|=2EZMy9A1FiDLMSW1l0g{6m--8+|bTZ z2XF^7M+0aCO`sXHfL723f*=Hx?Su*(paN6^CvX9cz!>6j6>tLscz_r9fFGEk8Uz6P zD00+-I#3T9KqF`Z&7cLef;JEYAz*=a&;dF@7f{9t6*veQ!wNjE1Ww=r8qh%%a03H) zfEW0HADEyT1V9a_1$CevG=N6X1knATqXo2rHV_0MV1ahfLC_d>;&B(~2D5;&mrwzE z@pDvwO5g-8paC6J0raWoFn|Ymfe-kB393N=)PP!02kJosXar558MF{IhOKzq27(|2 zEYJ=*Kqu$|-C!0_4iGAEfC^9voWKP%po1#l1_tl|FYp0BFhMm4fErLs&=}U?aXn}N zji3oMgBH*V+CUJ5fCbt?2j~P{pc~8r%3(qU4p0FqffKlZ26Rvb+`s@H;3a4beR%8# zCa4AhPy=c~9jFHlpb<2IX3zp!K^q8y5U@Zy=m4Fd3v`27Kzu+bKm`s^0V;u$pfPme zu?BQd1>C>@9^eH&;0GqC1_4k5YC#>S2MwSRG=XN&0$M>E2!ar>Ks)FFouCVJ6Eue6 zLwc+L6*xczs02>n0vgak6>tLscz_r9fFGEk8U#QMs0DSP9yEYP&;*)63upyxAV|;{ zhVa+|?Vtm60wuJM#u_+41*im0-~t-ZK^1TV19*TJ_<$dnpc(`~4X6cmpdK`UM$iPB z2^zx|JZ=STAP7Rh0_{MVN2tI7DnKQ00vFJL4yu3~7{CL(zz6)m1l1q_YCtWh1NEQ* zG!it1O?cc4T0kpk13?f17H9{8ZYM~4R6+#~Pys4|6S#l|bWjD{zyKcL1wP;hxM8HD z8sKh)jv7!4>IfP`+_Klv0C2}xM-#v;LLDuj6|{jM2mvuhC_n`cPys4|6S#l|bWjD{ zzyKcL1wP;hCa4AhPy=cS8pAp~t_KaE5j25j&;nXP8wi3Bus}Ny+X)4zzyT^iC2#^4 z(0~qV_b#C1_B#3>?NEpY&}5&}yb*pQ_j>a6$m{vnQm;i{ zQ(jBI8hh1zHSUDpAiF=YKfFKpbn@xQ)A^@TPeq?no=QI% zd(wO|^F;g!>xt~+iO0i_=N?Nw7I`fHXzJ1EqspV{M`Dkdk7OQ>KWsgmeQ4|<^P$Xx zxMyAVfy4vh2Xgz8`y%`D$y73$RFdhvvAyQr%%1ojYfqssyF>TI@3Zd9-kZ3$e1CS< zo!L7QcZBcA-JZNXa(n)^)NRq*l-ts`#%?ulJwW~1DYv9=j@@kDoJqtJRw6r|7%%PT zE_$PKWBP{J4dxA*-SOSl?(Fr6>%-UQu1j7Qxh{Y0__g6{bGwqeBD?a}q^^lxqg<1| zI(D^rb>^!0Rn}G6D-&0SugvXC?u_ir??~;4?of85bl%}}6X%A{&8%A9O|6ZtRo150#MYQ=GOOdO zt<~98iB;iMxs}P4=nF438XZ+e(<8AFb0iauM@2L}92+)=Gb`dNtQFbiiRIztxn;>^ zk!AU%sio1S%F^_b*b;L|=A8IB);Zb5iN)c?xkbrEkwy81sfE#nAN+sZdoOWj_{>9R z#LuwK$ex}!J$!oZwB%`#)9k(RW#-1`T641}Cr%EZoa;~aNBZ+8rA~^Tq@0vKF?OPP z;(_A*`eI=-oav4CTD{qxL{GRUcS7=n$O-x5Q^!Y-SB_85iOn(RWR8m;XC0S4HgRnD z*xWJ6VfjhhiZ!lnKUzRxsN()@HV4TH~!&YqllP5^l*gCz~V9`KDA;v`J}7H^v&#zhAt; z;y(Vu^|`u2KYyv(Xf68sn^%($qyo`^5=d9as?F+*88reQ@{+uuAi}>>16y3;H z@uod7kLk%6alPU@1h!^eGl~r?E_RKv>a*@+V@eF(0+irg!V&JCbS=+Hlh6()d}qT&rzk&{=FUkM+f{xC;Vj>{1xgI+J~rEXnE8uv|poYq5TGR3+=b4Txh>T?Lzxc zR4=sOqkf_N0o4obzfix>{)h^O_9xUZwEspGV`4J?jH-tAKd5VH|BK3oYm-2ALsL-S z&{R}7G}^b56{vD(m8f%QPEK>XGl@HB_ z+K1*x^+PjJ|In&Y0nq}efoL_Tf@rmjm^%iX&DlS?CH5Y9@sxI09 z>Mq(KDlgg)YA@OXRA01(sK027P=V1FqXwg$gDQ-+1a%l~DJn7AGSp(U<*3GJD^QQo zhEb8xqNvGeBdE$~qo~VhD^Z!zR-rbdtwwc5TZ8(HwieYHZ5`?}+PSFEXy>6uqn(c` z&BSC}VBx9t?QnxKj~r8B4AmR$Ley`xji}&gn^42iHlvE8U4%N0b}=eB+9jyvXj@Rt z(JnS$M>uA^;3Wk=hN+Kv`Sbw}HQ`i`~}6&~$M)OfV3Q039C zMx95y29+Ld7wSCPwW#!H*P+&b}Onu+HI%@X}6;yq}_pY|qPotKk?MF39JAitUmO@2Idq#|r&!VcNJ%_rI_PhhWfZCGwBC1Q; zOQZHAc zx|8-UDo@&bs6A=#qxz(M47DfiI@tp=d z_1#AJy(aiUGt9NX@3+Dqw80++;g3S_#}@oaJN#(}{8=abc^CZmZulR{Uh)?z{G|i_ zssesk3G+_)YZv^D27jx=-&Mi?bi>~p@DCpNUtah}AN-Ra{((&$|mS+hOQQ|wUkILP!IRoye+N9d6VB~|r*y+p zXTj5yL*(fyJi|dwOvafNcY6O(a4 zC!Sj01vhlVu~{&td_Z2P!i^5NsRC}UgcmvC#V&Y>2Dj+&(kghF8(wa}tsZ!V7jE;x z?S2?H;f`v!GXSrwfmhYStLxx3^>9}MytWZu*95O`hPzwHiOIO36;IvR25$<&@eoW{ z@aA@SO9#BQ6W-PZZ|{b8%z}4{56Qa}c()4galm^k;C+?weka`Hf_pWX)ZxA=_<$Qe zXuyX&@L?}}#0MYs!^ceccr|mT0Hf19o%0J4>Z73BYdU_KHChRYk|+V z!WY`$i$VAjAMA?L%%@|YRz98jROC~+PbNNj@DtHb_)C4#Rpb^K9%{<=NCThv`20W-5IkdLX|)N#`!IPsg7&pH9=6i~N(xC&N!>>AZ#c zMEddQ<9Rx35q>QDX#7!=&RIks$v>QYIQ;O~L&`&`2O|&W=xl}cKxSWTpRzBNj3je= z6MHQ>QxV&v>`C1pxj%Pbg3eQ9?v356+?%>5a!>B=#NF22nY%u`GfDT~&)yNg!@MJX zdz8*jByS7fmc2Dj=O)s0ZX$nk^5*c(SvoUeCeq_kx-)3VB6UOLhV8q} z-RbM2*XQYcMEJVwwef4sYty@;bT%S+P57GZ)p0r(k-jQ=RsPB(or%cqjPEpers+IH zKAwz+Iu?!P$C6{=vFwKU29xg8A6=inAbCOf zg6#S6^Ud?q=S9!UpPQs}4cT?^b>_M>ooUFg3DH@G*lJ~UYE^{JF(g)6D>I`pI>V3} ziHzi;iKrFL(D?;rIJF|OB1dNzEV{FQY?-nwwKPKa^-nB0NcZ&5FHX`~g)H6C-&~ZY za|(Gnrx0F{9f}W`bT|L#V16Ju5T<+i$LE{#(~&6M$v-(SJTH58obKa4@2uRJi8HM; zGiSukP|ir59-*@ciPNmpGN;B)RZdNv5;-L|H$i6*GAGAQR!&aQ`Ged^iIc38GIaJp zIWg6DI2@-l2kG8uZ@wo<=MAza#7{6!NYhz^{G24+`9DkN49w%wbl?9xoiPX>lcl@< zo3qoiqIA9>*&Xg4>r%Q>osrHQohh(7GVQT;r9DOW`p<X(S81{ z)=W#RMQKUV8G>9>yvd~V10OUb=-fbt?)k6Or|KegIlAM&Rhy}a)hIQoKqQc>PE=cT zRv>07X38I-a{>vU<;!?ubVeZMiFmdfCf)fz>dw=-fH0j4i0h`F)}nOR|D-GI$~xn8 z&;N8~v@&0jq&xm+9dU>0NYgohypmMHN|uWFncrR9)JoU?`-{K-`YX|P^)yVx|-H9dp2YkK}c5}|MeGz9drh?wD;og`I;o6f+L_IpqE9& z4A=Aw+OFw2EQzS(2xtiCWf3vMH9dp2YkIPh2)aOp)+lJOUKSBET+=gXyV~vRk_fs7 zCPhGl^|FYV;hLU7TeQV>tsF0{YlOM)~6_d(rr%B;z>FfQEoRwvbW&_{v^3ekIA6!x_*J z(8m@s${%0Z3&)3&jN>^28Up&*LPq)HD|_k4OEOO23}^`GV+$GOkFScw=g{zDYWIIL4Q(`hlCJ+>OT+KNPIVs* zJv977uT$MZgOdg^M%}vo?3?~Js{ijU{{D~p|E#^gVe6 zIf+A{A)ud?Pl;_G_@9!Hehz^Kb)k(AC=api1%EFIIhjMCA)ud?huHRme~^UCM^A*XT(Gz9ds@(|nJ@K2JEGdKhq0{YoP$n@Jb z7w=WMc=-a`apHeVLeAt6Xb9+MKPwNh zm6QLKgv{d*Xb9+MW8 zG)cxX&VYu1K6We3tfSpFzmTzPbma&i7#A~iNyc){fQEoRb|cNI@{4?6c*RmaFfL|P zNitS&1~dfpvBqr)S% za&Aa6qMQK@0ex&CqugO5W!Q?jN0PCUGa&VqNP5{FViy&{(3HuTxIfLv+JU)vsW_{= zl899t0jZ}%j(}Ir7_oBgKxyglNg`Hr1f+fvNgsO^l?-(7G3BqgG|;VfY3cAwGS+Yg zq;3*P4|@?8@z9hAF<$6=V}b4dr=}!fEhj+gBa!s7g)%-pp|BYlTrpBwG^!;L=Wzry z1oX3o#XY?%s>0C^E$+p(&0#LHOsU}1rm3!w$R*tS8ek%U~pA&|OALZaeAm zjFps8y4dR_8DpFQ4FP@ZM%o_k5T}-zj)6rZr`Wim$A z&OZfP%O6qQKS4t)4Iiia|H=!T>aWhH`}xr@i_QUj;W(!nqx%5<57qsjpkXfc0q_m# z17I5sZW>;s_WuJkd_ed9+fD8N8)$fk+W)Vha{xc5`~TlYLx_e?(*6Hd(~zfo|KCf) zEE+yXZT~Nz;SbdI{{b3Kpy5l@_J0!%Vji7`I45{+km~K>fdK-tYKvaSPZe znKc*ktbx?EBhMO$MO=Q?tfX1P8~I{JlO$s^XFx+hFB_xH_@=TO^2oqo>4v;n5^)hn zKR5fBkuW{6l^THabE5tncTq#hDUA6tkhx37rM z#;LTtwMjCza0a9f5;+4FGKzJfBPF7^Kcb9*(()FRWL(M_&=Ani7BY4o`S!x2VlM)e zF={&m2}wdO;}B>F=x602wqp=W5^@EHK z&Mx}7Ysz17u`gS-);70}m1JDY8IXELi?PxA4bHLT=;`Xb9+M5wev|U`+X& z3|Y2jsB{y5f+XZ74uOV%J{BR@&@kn%xYUP+)(r8|DsHrTBpFmwp$ohq^^C|FurRmE zXN(M$9-H(^GH#)7JX1iOrCtT;@ebOgY(2_!phqP`j6{|VEg$UN)w^K90!(Rfa>A0R zTj`6N1k_m{yQ>&Bb(Xn=YuqE&PGnJ3X;z;k>o(4Ux_}-Qzds*szlF+_TMYFbZK_U` zB;8KmUMrx^Rcl${g&Mq}{`5P#3U)y@)nz=+tt`-?(4+$4#+d)#%WMWkbtW zjI7&$sViOCPnP7}PZ8(eAL;@I*pHguceMPz()?2; z`AN=)x_|-pqvoG@wEPoG^G}oH@1x8i0d>}7%jN4r9}gCm|LCffM_u|Sm8PFANq>OT zp)R1wezf$XF8lt{^fM&s4^rY10d=;TEtigMNT@LF^Hz#)!Y8ZrMiCUQt$eOOVvG^dY7T8It_QZHMP<0QeXYKQ;odhRR85= z>KEWkPE~xIt^uIB|0y(lgMRzJf`%%p|Gz->|M@h0hwA;iXb8~oCjI`ugodBcZ~wQ@ z5TxM~RQF#+Lq6hE@1x;Zx(48j^xOX?{Qgh%|KG2_=Q|;4|Nq}@6-PEm2lt7FaFYLx zcIrdp#h1`rT}Nwm9gWp>v{l#9R9#0)bsY`Wb+l90(M(-O^K>1p({(gX*U>axN6T~_ z4b$~%fM)4BTBYk~l&+&qx{fC4+#+2^gLED3(RDOO*U=hXM`LsyZP9f!Mc2_1T}MN7 z9qrI{G(*?X3SCDdbRBKbbu>ZO(E?pZ19Tnj&vi6E*U{`;N2_xkjm~wnIoHwTTt|y@ z9SzQPv^Uq$++0U%a~+M%b+k3t(bQZ=OLH9!&2_Xh*U`*eM=Nt3jm&klG1t+=Tt^FY z9SzJU=Ofyg>u6@Kqm{XiM&>%&nCoa_uA_yyjt1sB+L!AJt%bS@9H0VJ0w-_*4d|c> zxPbvYzzcl94@^)E0-y%ef;v!7Opa#*o@oS4pc%A)R?r55AOtMX4wQL>3LKyUR01b( z0S)M&3b=s*JirTlzzu3nBqaC>J1Ac%;;5yoXPmX5*&!8o^j)vem z+JWo!0Ik4vGy>Pr23$uIa2-v*b+r7}(ePVGyKg-N#2BFf6*xczs02>n0vgak6>tLs zcz_r9fFGE|uAfZqbawJmfSiTa_eZvt)m&Yj#k{0( zYi%8kwRN=B*3nd3M@wxT4YhT&)7H^UTQ>n(XX|L3t)p$WUJL2~+GXo#maU^zwvI;G zI@)CGXp*g?MK(9c*3lkYM{{i50_~s!bb>C>4Q2u5K*@Nj^bg$uDnKQ00vFJL4yu3~ z7{CL(zz6)m1l1q_YCtWh1NEQ*G=e733|c@dXahk|@xh?bDqPUzfu4F;-v}EmXepr~ zp>tLscz_r9fC;KW0MvpyP!AeFBWMOK zpcS-%AP4~qv;*-0p#T*)Kn17-PT&F>&_NY&0|R(~7x;jKzEpd)629(&Z)%9~Cze@OSN`OYwEk|8&K_fZhTepaN6^Cvbr(;07Mx1Ab5q0-zSu zfleft0uMDpYtr%1z{55#44JT_26i{VV;f0b9H57vR!Ch14*dI2CH$NdPq=`Fe}BOX zzg!K!Rs*wj@Ei3cl_h%k&rNvPf`{L1#ls*Tep@+6e%Ap%sD$5l!5`}I$8Pvj5B#~8 z)ctt)i)#3*8knzxziEKKYl6Qw4lfg~s$CxXAFaB}s5!kK4{Px-Q4eovgts-rJ6hpg z?eKo_A-PwD`zqjrF8GKJA9KSeJn$(W-0vs#YCL?V20qsaUpB>Zx^YM~sRuv}XvULY zX@y_YL*%y&_&qPo`AFRa)u0B{fqKvcT0sbO0CgTw2{cdz4B!POr~&n$3ABO`=m6?= z!XKja9|Yi!YvE5D;J-JLdNUsWvIP&@@Gu|5LkkaoJMn+|m!I0#$KF@oPrny^PkAr( zZsgtEJBfF~@8qb3edO)@TdB9AZzpr(cS_q`Z`RG4f*Wg~SUM-7zrsyz+eNxd`1a zF!8MQZ1$P>GZx(~Fq+CANFE5&y#nL=t^Jv&V^1qjr=E&Dm3uPrq{Z#+ttT>%#~(Kz zPd^r=y96d5jXauvB>71AksP$BG-s5O4>+T^v7YxBEO)E-~imA)o+jd@LmTI5?-XRk_J6}~D*ZSo^m=69xwcL$8@ z$i)+Ji|!2=+pd&tmmj_?dug2R3Ygv!-IBi~d6ats#x|SOHb1_}+LYaxp!WH>3zHW{ zF3iVL)Iwj0rN?4p=2(W>=vy1I>&5!?1+fdv3o_J3-#R~g-uQXp^K#TmKXPt)|%|<#Omo@+L#_9%`PoP!5{~4k{eEO# z{_ND*(X+?T3R4UIah*BH=^y#tF&C@fd#iFw+rM7Xs6BtGC)%U*q)&)Zi~h{< z@#C%IvvU&ErayOF^0>%x`D0Vms(+l?^yg+LXGdn|XQilBzcMS`9qTr`GhOj6t1H`? z=nPZa{$xj_Bj28Ck5cRYv=y^VD-()`tWY*6g6X!{|HnN5$7{khxj>Ry`sb@t)zNCD zI!$f;O*7+<`z?Q#TKk86Id9S%@#Z}#Pt>D$(ngHh{Ab*8x8=@OC8*VZPEYC)J+Gyx z-M^xxT``yG%23OH%bBfARE8^a)b>A8k$0pVQHMgU|6{7DW|X*Mar^%p9vhr%QT_jC zrS<=@ZQ^SOqFm`W53LYGaj)gw?yd6P?cMEt%+sjQpAexH!q>zP-Sn{5L2s)r?}%uw z-b;87kI=@~`y#!ik4C16M(J+v9D3a4ol|%_eFT5_n2+Avi0^uC+Dit$XAXT@_0pIW z-`_O6Ug#5F`@-bY^#|y^i(G>=N-E_p@+RqV2mOCPEfY$urau)FMKZNr(QowLNTWqV z;VpOrz2rf1l9H>ukI|^zJsDGRV5M;5sT=9*U!Vb#^%&2Il7&{ANL}QAtq6l7Mli-~yy)%fJ z@fha$(cYopyB?zv#j>CLP99xz-g@DF4s)-#Qt;Yf9KK4pu)0i)BgJUF*NVE9y`4&( zmtJ+#!kCyhRd}TduXG%w&vi_Eiar$dUn>G`dMQx5eYbGU@m6_S3Lm5wtC7OXtvHjt z^hJR>yt{SYCgD2SyLbs(x9uatZ;fLGe-mE!iG zF#aWPXutewBg^uBmb_X(f5Ro{JR4GrWI#m za@_RIuHD{eXz5ak;b$>bE(&ODrSEDqsD4Og<1SjYQSz|5MrqBW(!y(uGBzZFO=3AM zTYS^qUMl_g7Wxi@z9Y~;-w~)88x}6CafMZ1JyL?{ZSK9p!k47g+M@poU+SZ;(vN(R z8(-9jFG3xza<{jGqfwLbR2*0*stS492eeMzO>1-%C1Y|@IzPNgG-_krN@L}r*-E2A z@ACAOyxxk}6};YYkY0Dv>$EW`{f2hDqYCeE;TyURPx*#syzap3f)jd!O683_iVk|{ zb^$l=fS|ZRRNhG2>XRo{Lz)RSp>a{`-`lO!nuli>R*D z6Gz_CM4xaqQE4tIoj&?lT@`(-&P^YytHoPr=QO#{s_6BAlU@(F==DHX?|u}@;`&Xo zj(PL}Y_A@h7<(-0;PAL;&<=Gg4c-qYM}OM8D(JJNr80z1x$r5^)K8TZ$Vz;wq<~rY zloOvarhcmAT~2(eq-?e0Q@`lh@x8mAPMKEfc>-22t{A|O&OXh(`(6T~-uq`W+r+m<4#E0iQJRNze38 zmcFqWWBnK%l+o7DHr9T8gN|>gqHkz!nL2JJUf1xtek5Vyi%Q3>v3I?w#Ks#3V00)$ zW7kYi1xn{4uYN~g#R^;2AXco2Z>4W2eLQWYo0vYl50f{;3W($4iB+g%KhEoAnb*p% zuB9I+8CPD5%e?k~Te(ZWtYl)#uk)oJDB0L>Q7H3T`4Uq4fs!J`1*gnw<;zp)2TBTD z`C?Z3fs%6g5lUa-lYe2svwvt}sY=S6{X-K=2p{?g#jWt+iIOz2QsTp05X-+jLlL!q zsB|jig?F5Kq)=Y+a}N};=S;eDWBl1%>cjo1{n7oAr-z?Zo=iWHdi>y{F}g2fg6_ze zdnor{lJ3YDc_6m%#K7v#=Qo*y~iJTG%@ z{9Nl?b6sX_e66)MP4_@d7kgQVj#?v8y60hfMQV9;xw70`npqNGqMV~FRu(A>l?Cac z*idZH9L&&J5fMqxOP?L1I~kg1nP-}3n5UbkDW|4SiJcOgYvQhj{e`{`Qho8T70&i% zdg47+k99)!_{8y%Ik{uQ$C$I?osm#J7;B9-S&jMnNL{){31odSujz@olXMr^yldiI zK(-=5cLB^f!j7DpR3mDVYVp6Eqdw72*Z-e_3;*d4|LZtZxc;A?Am}18&v?h= za%|g_aTRnGmr28h4NF%HEZH!B@ygK+Lu(h0uEhI_Gl%Mf{8w(~JWWZB0_tpl-ANaC zUVN06Ik=L`Cq@@9Tpn4uYGi0bZ||<~P)S-ulD41Ipe|s5{itc--d(58ElHa%Njt!4 zkbe2#H26`|`skX;(re-difLO4Gj!64)vS}AX%J9nYuOESz2DVz)#Q{vUd_B>LuB>H zhQ%wEo!GZw(T38nK}p#0^nL9Dy4iYmrm(t+u(fN~Qds+zZCg+5JK>Ucj97798IpwJ z`uZT5dQNm2?s9g-4k}wBo83E7!~)*)X~QQ+dj4nxnSM{1!+8(P$t@w}e6< zq`NFj9Q~vnMWX#e*TcGXAy~UEiGw3@*0_v=r#Z~qj>G>&t+{C(CLldiXVG_t1k_o&#{xYr1YR>GPw*555V)p%;u1;X+4QYJ0d9~4k$y=)c_TN}`i#j?yU<({94O}G&T)}}*7m)6i zPz)@;o{kRN*VCcWz}1q#VGe}4fOO-8Vqp1w#^|tpmM$m_Tq6k_6u?5=p`|Biut2hwq zba6F`1;o8HcF^I*l)vKEZFt4VN?W3B$A7LQaV>pmkg6p}gmk9@vM^7N-j1?b&^(>k z5#v}YY}@glCkb4~flwFFU<>oKTp-O;TcB;Pc)ld?Tn>b~fF4#pPi={|-Qoq3#0xkP z>H^XY4amYgy^tQ+{*J7trCZamZKt?i61bkeF({zU(#;L%abcd83#55!3#5JGyvd9I zH%J0Ea3IvFMu>R|%gKUyr^~)_Tb=@47`qO5YdJPRu8XjtL zshu>uqr24k$GGUUqDx&*!!PPx>h-f+sy5f9K2qmWyJ>i*%cTy~y40`NxYQU89|m0N zO*B-Ey40t>PWS%%zEjQQoa!hIKcKsupM1EA?*Hcy$KL+u2RrEZ|5w^8Xq=0G2Oki} z@7v4&2!)PZAG*b&fBbbX@z(#6OS^~03**1#uYZZR{+C?ZJvp9#{Y$*{zvR;H$?^Q_ zU*fI*C6{(jj^|(h5^w!4xwLz7JpcNac+-`oRCGV$rQMU``B%HdJA|>bKs)FFouCVJ zgIPd1M5w?)Opa#-o~Z;*-~t-ZK^1TV19*TJ_<$dnpc(`~4X6cmpdK`UM$iPBK?`UF zZ6F9jzyj@{gP0u8PCU~Ey1^`n0_gCH zuIMJJfE%E*E4reaKv!2fdb-ll(Uoq3Y7hV=om`16wRolu)C2Tzr8fffZ$(Y6h!%j( zt#tHlrK4*rJp?S!4mv<5=mOn9_#eO(;)DtupaN6^CvX7`=%5O?fdM?k0tcu7mB0yHKqDr{Q^zw^ zzzq!G0bbw(eqe%X5CAoxme4M(!^3*e02)CPXa+5y6|{jM2mxi7P=NzffJ)#5E}#(; zBYLThXR3f37{CL(zz6)m1l1q_YCtWh1NEQ*G=e733|c@dXahkI0v2co9Y7f)RNw#= zppuvzPbZ#n0S)M&3b=s*JirTlzzp%Rnh>A*7;pb|KN3ur(GRlp4l-~nFX1AbtFY7hW5pcd4Dde8tGK@(^OEua;& zfglJ03$zoHa{5Ku9to__Nw`6=9M`0ua|u}LBGr9Uh=<`c`;7?>t*Sh|L_aB=abaKUjDh%bJ6FN z=hD>2p80HsulvuY5~*-1M_2wwsHZ*rcB|}9)3yJ5>B|57lc^`8{5x)p`r5;_|JLK# z#}d@rUaolce~S9sQyxh_9DCS&IP*}PuK&+In0PQuz3%y`&%O9QYhN~*NQSA`z2x4= z-u#}_o+$OZm%cxCzj=S=zBu)~m!<3f!}sRyNmAc?`MXn-Edci38M!lmN9vB~9SZfo z7rWi0--6?}S=0kx;@0r3xm%KS{XhEPi`<+~q!Q7DLcQ?C#?A4}P4Sy7>W5FWwe9%iNW@CVq`Y{qZHP4qu(SDtT3e zdgM!88NG6RXLx6BM{-AmdgM#Rqj4pkrmO$W?U`-yZPvCd^~)E&BDXcUHL^8-dFt}$ z<;vyh%VL+A)Hh%JQtQ&}7O^FLN$e7n`sRyYY+anaC~;Ake}Rr{&TmR>if&Rir8mYl znuTAZFU-agv2ZLmmK=+W_{kDjkkKYg+DCVrjHu1l;7 zugk4Xu8mM%eW^9kHOiVa_19;v&a8^BvQ}kRij`^Vuh0B{w7my>8&$f$e@3z;9ZRx3 zw&iY1~Hr!eCCO4VLdu?-ZSl-IqyKSKhkgXrzm5e8A|uX`htC# z-gs}QSL;nI4KLLxYhPrEu_U!Py4a+=eX-Mnr)N%!Q|`VY%G{S;7+V-zm{|~~+SK!LCeayff6PQ3k(oP!A^OMdlgvQm2Yj6Q_hv(N9U9 z9HA_Jsgt57nJ1-Bj8PuH%n9)mLMLb^Bq)=gethz{$Z^JTDaz$%&P~sW%?ZxQ%#P0v z%^sR%&PvaW%?!@Wbi_MC9a=}i3{ytGWP7CDXips*rJR208L=6`8JT0^l+{l=CUJE5 zX#MCU<@Ga;N=+Bj6Vt-e^l3@T>t{?&O^Hr1r=%&fU$8CH8gC7?YORTuaEsoOY>rTV zzf@DS$!tm+G0O0l3B&`Tz>wecryFCG;V;t=ZwNJL4GGHer`IRzB6UVxsy13{)~0J> zHNl!pb-X%MtyL!|*PmXMtc+9|l_{U_B`DXQUXd)1lpEzK%JyfLrS+H|)H9{=(om^Z znkWgE=#=pfV=z+QsMqwSJuy$vlX1r>@88hBJpTXJPd&H4Ma~ls2eQ}y-2dPH2fmQT zt#sT^v)mc6+`M0{xHE#=Eq=OHk2@nEO%O=T-unsDE6Xx=?#kzF}ehJKH@ymOI;~<=*{Tg>Vyn zd;|4hK?r)7C}F<--g42?Guq$F-Jz!C=KVT_aWfl1$>S@$%zVadmk*4&olI8adWCTd z8$rn!_qTxkwSPW3qdJBn#7K{h1+}wy|OIBd(z&n{*Ij9 zo(@aT#3qICGWtZn043AQ#P;0GTh}VgHi^NmrGplurE6ld!gx6wK`B5l6UNDQY$L{T zWwdlnY*84mBuhYml1Y=@(d&)u<8eRq)9At*wOlOf>NkfsD(`4IEPWGO6~?RRgO&|zQSMYI zuV*DlvjMUa`~*tNhP9kh?NTUjAVENYG%X;}%RJJ)u0mj6XWbE4PO2_dC~qWFJD?us1V&*4MS~jfZOzv`p@@7_oQh>$Ge7p3KQs(Rn(4*dA zIhFgALU{`-L7H@tmEb2(jB`5{xWp1aT%p3Wvj(#<^44-}s%wN=- zJGy12<;?0zh4BvhJih>GrbS{ga|@k(;9xm!85(Yu16^H~W;xSx#&eZIiSFPk0ZOKa ziDsGaDxiq=>fQalti@LvzM>jZi1yI`>K7o*BS`cz^M&ciX~5FK_MB6lnU-^_sKR&` z8$p^okd0uzkQp&{^;?YDlPmf=^^%<7wDr>Z)4dMc_LH49jm7}nev*^&0Xl8_PjuR5 z)B5QX=>MVh){H!TCw@=q5s)0KpM$U^fEV5WK1@aKfC#sbS<--49~QjDPE&6-bA7LR#4>%CLObC(wY1}eg#KA>N22Rg4T29q&QW)d( zp?(2MriZ!yh(%m5u86_h6SbQa!be#MN&$MA5auu9g7HP{%r)MkFg`|>N&!lyhY4f8 zK$T(vUCXeQ{%WKN-m36CLI0~?fRgE9X3q!P@j1E6*p;tk=WIDox=kT`fj-bLK*`jZ z8~M6-q7c*Q(p4djKRec*ck!y_Jzayn{ZlQ+*4q`v7s=HkK*_9RW*>=JMZdKyL&c(a zs2Y#^tRibqfB&*Ra!;ncL!o_%KG!cm$<&$If=;|p8!f15DX8U0yIWy=nOrRbl*~%z zKT%L~q@WgUOrd>^3kpgB>db6GC*C|6Eog_Opq9HQcPfmplchy~l3B_8CkomzQc#O_ zk3#zv30nmynbpkfj&3de*0S)7fDqH5|J^k|+_pTT%t;Kq;!un}0Ehq(8&CFL?Oe#NI#pbH6 zVBesnxR&#T`xN32NH#@)l3B~lSKKmDHdH^nlj0gCH$9s;+I}tS`xWZXk+e;Kl3Byd zS7tnZS(mM0Dl>(3&{Am2smcQi^XJJqO@NYF&&*fo3Q;lCI7wWa!I9Q%kw2)Af02s~ zN&(g|KXI`;EycE+Fg>I&e~E0<1SpyH%zwJrog>Az$oDGbUnOm;041}EnXlM6?b%#4 zzCByc*&bGSzedJp0ZOKinXk|j+w*8_Tda>LtY0Tzn*b%VnwhV(XwSp3-9B-bZGE0& zpThhRIj0FwGV7T6%8PyWWU)PV>S4Kq5m(5+!Nmrp0IQh!ij7Jh-i@_SsASV}uJx!w z{7sUz2v9P8%zULrEoaZQdWZMgW97|i>4W}Xmlv+2YxIYmwl}`#w4L(2)AognoVLDO zowkp@OV0v4OV|G2aoW~A^cMRF0BIT`hJ6ld8pH_%} zOv+XPN@gW9UwOxG=kDO(=t17Jc%M;te?rC<0ZOKina?|JJLlIvtI+xFWb_MAGE14+$HG_9Z!OCZa!%nH?Qxsfa=QGY!uVVINWTCjvxJ$i zq+`2ASVwk^7U2PfFhi;)0ZL{$6N6b+@sJOCV{941bS0HEU}sf-_ZikevYZ_!6w=?* zN45!2GOL;SN|`-zLLl|@^!4{HS=HYYB>hNnE#{XL=0B0MMSzm&V}|JlQFxLAUbe*s zmj)*}U$dMSzpT*ynS`wZl*~$Iz5vu z^f6b_P$rBe9JdTXTOx)x>i{RGJ8l;Kr{UAYHx;%*@{|csGCj$WS z$ub9`+sPpoEvF=YeA{-oLf%zKBuhZL<4N=|Avuo%VBEqt)~Q04cUclHzNc__*a1ob zdYRdcwQih3aL)@BWa;31ORc}Jka$@FN&!-&64eq*wI5VSidh0m0eYEgiKX6?3W?4V zPzun?L|@0oNvb4U@4b}0yCb)ed|DwXV+kk)=w)6^LlyE%275`8+e$uANXl6PN&yx# zaea@nj9Ykwf|G99QBlm?cJdj8rGhP>6kstk-}b^d2qz6nAW1NH&-Gb_#m5#<((LxI zfSZA3*Ih3=H)}Nm3utjODr}d4~={fzg9Jb$`=CIvD>l9kw z`~~IvyVPm>GTj5{-%tJd)c?QX2B$4U*Zw=7blPmoowgW_0r1m(fTyl?+GgD4w7qtX z({}21r|t7s({=xyPTMylbZ;O^_Y;PkwjJpIU+uIldGYsir_lBPnJoqU<#7E!<)G#I z|8t7XQ^}hLlmhfJ)$wF@z&O0K`n*C?#S%~o(96tM2V*V6GFjXg6q0I|fRd&dh6GfX z#FD`IKNONWmVi=#9wth%E^o5y-mdwUCjLc*qn;h06rhKRg6zoa80=kcY2jZ|I2zai zN&$M9Xy5C^#NNZ<<6zf(OZ)z^!qLbMPzun?%x)4l0MGg`^aYR(60=fL>Epl6VePs0)XUkb}~wt!NAUglPM`e^4Q7x~#*>07X(e=v79{|$xYD3*Xy zfL;R=Opoa+w2G@;SMz_|A zuH07gJ%wWyJ3uKw4>MaM6RUlAKfj`9X>KF=zQQqw9Ux7>$_@~Y$xh%$9E&U$Za+{s zj%Nob1?XYI5$5S$En91JTLtIjM(-ho;{0e`p3|}|3TOLYiZSJ-AmW{$J6>>iyXEHtzKH6Ug)rOuXNac zu!8OzEO6K=>EFb1hix&fKU+rk4c0nrb+o=V=&*%o{Y{s{b`!0wv>xnt*v_K$FF}WG z53R@2`o%u-(JE*?{<3AKPnE01!PbJYV4Al_1QId+x%Ck8)*Ef~k6lnYdbIff}F|r~~SO z2A~n}0|CGQngDGc!3NlY0-z9Z08YRKNT3LC10KK&6aytdDWC&oKsitW_yEkSXs-gQ zff}F|r~~SO2A~nZe2Vq}U;s^k=p$%=4X^_RKq24&oPZ0EKoQ^uJb)J{215C} z10_HypaW$O97ogEw~J?%Yh2O2UG%80A^0K*8sIZ9Z(N60F8hj2ml7q1T+IJ zKr7G&XuAnEzz!4ug@6Na0xkeEC)$euH-WyP2d}+AF;D`O0y=;>6Yb?d1>gfJfhwRH zr~zt$I-nkC02%>55C9CI31|jdfL5Rlm;z|~2sXeD6cFee7UH!7Z~`ts0!4ru@Bm(* z7$^Zs0Uam<%7F^N2UG%8Ks8VU)B<%tJ7(f%y473pF8@A$g8!!dX4iapD z9Vh?_0SDj&Tz~|M05{+Pyg)Hf0+a$ePzIC(6@U+@1gd~)pa!S~>VSHnfk5A|5wHC~ z05E_ipc!ZZT7foT3ZNY#*Z@0F02BfazzMhj2^0Ztzyo-JVxR;l1$3YcCDWoY+=%oIF*_n1Jqef{k&d1O%#KJ$PXcB|q@yPRvm(;blYm(f>F7zo ztcY~Le6~KImcFc!J-w-n*+A$-d9Wx@@F(aZK zGa}kCBcdHMA=)t$q8&3K+A$NN9Wx=?F%zO4Ga=eB6QUh6A=)t$q8&3K+A$NN9Wx=? zF%hC26Cv6$5uzOvA=)t!BJH^5lfJ2v{-IqLp&FG zF;D^20s%lfNN@sPpd6?H{6H(EUlmXR1 zBhUgAen@ZwI#2~P0L?(bVL}m53RD91KoejKEW*|&6ay7NEf4^-K7tdd?>mkD03jX(=f_#wd!=s*?F z05k&yhY3YMDNqU215E%{yk7mP{%Z1-$ScMxsh6WKn=hwdioNu&&FB}~AKagLD*jaH zDebAmli??I&b($kk$OD(xcPYcvDjn5$1;z`9}PXKJ(`Gz<9a-~FS5_rmwF`ni1|qR z;n>5$hckQQdqaD*y@`jy59tpjAB;R`JeYbQ`hfXB`u^Dc!TU4!#qSHFZ8oOt1uk=C{L0Xknqq#xL%U+Tg1a(1<2yq;wVjC_;T`&p zBxj3DT^zmGyg0o*wmrB#vn{?Yv`yQVh=e0L<&TSOHMXX;6Sj&V-v?C9C%+3B-lX9ds7oH=x+d1m^I*crhyGArXNLo2nFi51}$ z`ikW8$Z}(OYFTudIh>U)GY}sL4QK<2{&2tEpA1DpMkv*{x=-&*_C|V*-qh0QQgdl~ zNo+}QNoH|;acHr&IB|OTbp76(^89~lg#xuZ+@mH-V^H4dJ^5)oOY2eqbt=J z?KC^n!B{XD%*>0=3(eDpv)m<5iJW4bk~%qhvUzg)q}WM;lTs%}Pc%G2?BMLotoW>KKD_WueP*&F(qVL@%&2La>GoKA zusw5Z{MgX3+Odfl;Tigjtpr7`b=HCE>x%0C2GU9dTp{MQe)Jls-x9rb-F566|Bls#w$aW zT4ll)_UXQ4MWn*0NR>y+&GK|vtSnfT(c^kZ*YrebxKuAqmPAU7l2mcD*ep(aW8R=Q zMNO^hdt-A24%!ReqzmIdU4^3MmsHC9xq= z5*s3Jz#Q@B$bhA5@V5%d5|)5cfJICUiVDzwt-UP166Ly&1M>pvyFKZ%O|_A?arcC;O@WZDQi6!E6WD zX@mXqbHn$46ppjl0ZIXSn3yv#zk^cz&CiYAzbYJOvjda@^f1>5BrwWXj?Uix`MJUS zH-+OIc7T*#hv;Rl6}xzAjo%|?gSTfTZLHjV`~NB==duK(lsZI8sYA@pa+7mVj!BncJoEe+tQY zECHney-c;FJ-1JV4r#oMAMi4g*mNyRKq){E6N&gXjr{4@HXH663U)2&$&Fu4;aJBG zPzun^+$xYKE-?1#*;jO=#j&t&S$A&u+7ycQtN>{?TO!S7OT-z&w!9{zDGiU8cik()!hQ zhwY+(!{$W)|5hQs^mF5}>2&=+eM$izKXR}CMb|)wrF~Z@w$Bi6A5aR=&BUzO9U?I9 z@Fa%M7lH$pF-ks#BFYMoCKo0aGqbZpPHcJEv92_4YR9rpezywWV(9Oc3d_}O0ck#A zwtzU4Pj*%^@?1$jS#r-ysuY%M*aFfN!fXLimi!i)w45v)Y{O-#R#>iQ3rO?nvIWfU zMkY3lY*}buWd<$JVAUurH?ReyDRkKaegcbSzgw%Y+{hM?X3b>_sJ3)kcD!{8%S~(n zX`)=VfS_V_Id$=xggr2sul9CXbioIIG8lZRG?;~sW^G=(iYz^r3p z1dp8jS_8OE;kcI_AWd4!4lwJ;bMin3VCzNb6ounKc7RfVUS>8C#+GrBHS*8_CBo>n zJZ>^oA$f=;AWaxcbTc8rUHEa!@KJt6x8=seG=*X>D?lkg4-<;5dFy;dcb}!srz;!} zvje1AXxRZ~9r@~<9G0EdQ3}T+>;P%vS$2R~N4`2Ihh?92w8HTiJ3yL;mFQ+}6=52N zoUc0if|hZ}$0!t!vjUU?bTgrta|DHD81f8-;t5uOG|MY1KqzL5{H3srLOxcZc#=M_ zOn{QN&&i=P_!RGVQCk$6pH6r0ZIXSm`DYNmN9M_ zz9HA$ZEYB{6^<9!0n${#>;SWld;|2!VQCq26pk0!0n+5a>;SWld;|2!VQCt36^;Y! z03{}cr)>ph9o(ssySc`;m8ESQr*I_L0ZIXSm{|umfXN+}#&NvD@e(^gn$egYVAe75 z>M(m8r)@>8;4lQwjNr4c)Y`Q6|Hr2{r@^$`w!51n6CeCp=F?1*sR2`S&3n@62oRChRsS0o0S+gD+7Q5Gy%;(3(yL*0aF0& zAi)OMfdZfqZ~#sKgJvZL%}NZKl^8TDF=$p|&}`o1;-lLUgJ&fM&q@rQl^8rLF?d#D z@T|n(S&6~35`$+yX_9f-g8#V{XalAI+984sumc4^A>aU<0EW&=44su2Ix8`BcJzB< z2(82r+J9q`aft!6|DNRHqu&z)X(a~IN(`ix7)UEIkoI3mGA=QUR$>^f#4uWkVYCv% zXeEZxN(`fw7)C2Gj8Oi9xmho+RV)UrjD9M{|phe$W3ua*RvaM@9a( zu$T2Se<=o;0hq{HUzzI6NptlOFssU>Z(9i-s!qr>= zwiObk6ECMp@F+KUj2Aq%3Ov3BJh2WuxdA-Y4+ageOSBVvY~TXhYT^wZFjfriDFyGY z2KUy2kNCmI14PQSPH4u@`?U}0r41+m9DoFh05{+Pyg)Hf0_Z>)P!9NjN}vj;25Nvh zpdM%d8Ua5L01TiB5QhjFU<2$x0Z<4y04LxABv1sn0T18>ih&ZqP9N%ewh(;Y3BKrp zrW7yVr~u!o1wUO%|F`SAI{u~#FMn8#mo-2g&;SGg184%Y!vs4}02BgFKmtX88}I;L zpcts7zjghj9{gD&_zOQi%|`FJe&+!H-~#{DM09E;&GZlLc;{osORxh4Kq24&oInxa z2E0HCPzsa*<$w>U1X^Iw1zx%cu3Cwg9=vQU1_L_STmiOKgVSq>QtYFb?`lLkaU$69 z^T9&!(+>Q?3Apg{XN$ovm4RQY08^FVM^!{R2cnnXsKv{Ay!>_pUi$I!W9td;JeL$l%sWN~Hpbo$MN(1;c86bY_0e?^orb~!Y2g-m7pc1G8YJmnI05k)( zd4xj11rz}upcv4B3ZM$81sZ?=&h0OEu=R?nH&&Qt&K9_zr`mFJ6>Y3;><}<0MBTws3 zC-#T;Yy0C*1)oYk8GX{Arv}1LXivl+57ILO(Z`I(QjbO+HRy?fP&~6Qw$G&J1tO0a zk0c)sKde0*-y7VUekl5o@lcAN6-Yi1c|d<4aes)O6o}myyf1Ta>|XQU^gXeA%zM)G zoPa^k354&`?n>+l?a}tc?+o3k-I<7mV|pyPJF?r@ow_4>hj~Z(_So&g+cUStZwuX) zzBPKQaclCH$SwLUiJL<=Yd0ru3g2|(X9PmmYS+fE30{-FI(oHvb&8%4(4)zr$dECV zx+;2=c~$z#*pB$+z0ABUeQE5{;H8;e@m--^ z+OEXT@J@Yaaz|u`u_JX!^b+%u^u@7@gBNGE$A_N~2yRP9q7j3h4+wA7w#K&vx1={m z>FI#vrtl_hQ=Fa+NM9Je(7Z5pL4=+RNNfyk%xs9|c`hJ%e&l@P{M32T^UU+oYhr7H zYck<@I26{xiPhoN`s(DW$SPx1>RfSd;+*g~`Z>w7BWD|Dr_LHW%RDQ6X6(%1nVB=< zXN1ns&Pc2buhds2S437AD^km&%gyEKWwB+!WtqYFU}$h?z#K^T$NGc)nNU0w3TdH4 zU-+MRCO|AoEDSHy7bX`(78nas^P}_4`RSfmPp~J`9q$fxYu$;iaF^bd?2L38ovC0n zXa>{sV)KIYGN;B*4V^l4ig`-<8+e4>70@`T6<#tEt8qsN=a zr;m#r7d$RAH$FEsSDTxd6P}~bNzRVUHfE=0iCKx6|H`ufL(|M@>8Y`)!Ks-k@hPDx z+LT0FxJ_?Mwnkcw)>KQh#cWA8$C`u9nWlJCs7Y%|7-2&>W#^U zNQ2Rks*l#2_364;U9c`w8?O!3YPE@)aE)G*td3M0)v2mzm06Xpj8z6JGrqVl}dGKw-ofAs!{<<{Pbiu)t4Xt>P^N~VXIy+4xgo;TftvE17` zN#S^%9U!GwB6^ufIDk2r$1THMXnl*8T5s;1tdP9H5>N`z%T!A&clS6@391=tW_)l)e=iP=~hU-%o0!v(9PT`)*PvCsMFFn)T2;* zg%zL_pqmNB5&DKYEp24JLh)5rfRqr36(AHx=o{*^w2%b~#n)H?QtlsCfKVKvZ>ZDK zJ{BqzAF=|J0(3K>m?;9|c3C5Xqxw26tz(fwkzxfX1?Xl%(QyQYrEQ$1P<)*gAf+o} z1qg*H@|VKWGEP@0KB5mS6CmX!BD$GSv>!oXX%~wXif^z2r0hdP4->~Iw2X1fXn%*b zVJuNNzR3=d5)H8f%sTS-4Ov^pQibDN>;Ru(4>a?_vL51TGJ3zXBMD#MV2d6dTn#agE5<0)K zHjrfsNtz{~6rh)>mROD*%N3FzvILX@^fJ{F%h6+nLh>V)fRwX{C7@bjIex5ENPf%` zkn$6;1XN2bN02iVlAo{yq+~=a0o4*qD>+jk`6)|4DL^k%EwMC{vlNn_u>_O?^fJ{F zOFKDRAvw$vPzun^+)AUm=8C*W!!FDD)j0}9h7};?)?oz*#SzZ0x-4zvT!rHItNTbY3ee4jVy4Jn7t}haKXQ2N zO<1A$6DvSU{KE`Vo!&-$H%=Zd#wBzW**-e?a~InES7a)|aX8zi$rB^EcaJyP4K0w0>rm!xpCX zA2jy=L0ada|DVSGUqq{u)<@|XfRkzc7LEJgPHV|L>i<71gn5js;TY=wzx}A({{Mvd zIPzuQ&li5UUGzkXuPp8;-dZfZc1^k;|m2w!06F8ZCghkiV8ukbYv-B0Ly zkUr|bUg4|W`Uw8NeZuEi{iyJ@9e7OmN)J9xf421r`jo>@l4xkZ@Hxb@!q;+`P;&SM z;S;N06u#QN#N^+(b>1t&SF`n1`irfv37@;~b^4UjH|RqT5~gf@Q}~(>5(1@f37_)- z!PovaIkplC4ins~-w{4r-@EiF2MF%n?^D^@4^mMNCh7a_`#|`r4t$orJte61)eZq4 z5*($U7e0B=ulf9knl+zecdO>p54CANId7Ua>DIL!oId#*O*B{aq<>LUdd%c+lpf0S zM(x2FlmA7<>NUb$Gg{O3zWgSY^lcHohSd=&C54Jl zA}nkOizuo!!z#2OZ3 zZ`4`CV(g7_ghlOWSlAF2PK1R-SU3?D6$lF#!lD*o(TK2cA}op!7IuV1HNrweSQH^F z90-eYgheUBLPuD55Ecyx3(OPeYeQHxA}ksZ7IuV1J;I_MVNr;%s6<%U5f()Vixz}M zF~Xt|Vc|zu6d^1M5Ee}c3opXLhOnqdSTrLnst^`U2n&g@a3Cxi5f-fo3j<-%gs>1jgP7SVLg!jVfyhjJ;884S}&Y>a8I#_C^^(pl&n-G=zWyA>cv? zI1mCpgn&c{)FA}?2mu#Dz>N?nKnT2 z2!RHKKodfs5+Pt91Y8J#LWDpALZAg95I_htBLoT%0%ZsR4Ylt=?Y9M};_FfS#i)H9 zweLgim!tM8Q2RdAeidrJ3bk)X?K@EW^{9P2YQGq@@37YX*cLa2EXRehH~iMxAA6(H zTKi*fc&)WR_C|xX_Q&4PQTz3ywLhhlD!vf4??mkvqV_9M`$eezdenXZwJ%Zo9@Ksz zYQGk>--g=vp!N$;`#NgB7`0!5+Al)w*P-??X{4_OwO^0guS4w@qV{W1`?aWjCu+X} zwO@$ZccJ#1Q2QR#em!cx0k!Wz?b}fM0o1-5wO@eRZ$#}IsC^%5KY-eIqV@|=`}L^( zX4JkPwcmo;x1;v;cB*)BnBYY1x1#nNQ2QmQ{W8>kC2GF{wO@|fuR!frqV_9M`!>{m zA!@%4wQoc1dr|v^RQq&#WU1+~&F-^S=-3;L)_NOzqZIYlFj{YIsJ8;tn*;S$fO@M! zy}40u4X8JNz15=LFyp7M8TD3& zdaFgfIZ$sksJ9x_n+x?;j(T&T-khj61NG)cz15-K>QQfA)SHHS^P}F1P;Z5(H$Unv zfO@Myz4=jZ4%C|+^;U;^YeK!XqRL89TWyC34%Ai)YO4{oRf^gwM{QN1wtT3qGSpT% zYRiY(@}agg)K&p%s}{ATp|(7ztpe1R-&$K^8@s|*}a^X>FovA2S6W!{Xx8G2KDGx0|F4gC${_1&+E zSGK-nyp&2r6J{cPAa)>lAoF7U#n6k|i-{M)FX%5MpN~9mJfC_l`kYDQ7h=x_pUpfI ze(e}eF=C$c-Vl;Xob9Mac(AC=22^zc5e$~D!NWX%mUFptPXRtF9j0Y3*0;ldiS)8=>ghR*mjgB1{ znq|&P&y39s&dhYgJ3<{=N5Tx7x|wW`v>WZIW248K$EIh*W&~$sj)@-=Iz~Gtadh}- z{pjRTk)w>GQq!Z;&FSfBv1!3+nW^!qp{d%`#FX$9eM+(|(q^=!TBEIIYq}-Y5^Tvd z$D2dVT63Z)+@v=pjfi0wsX#Pf27>+r4T1XIwW4Ng)gfQZ7xZN+;uWC^ts+q#F4xPG zWsx$YETu5 zhAZWaI!$NV5px6`nZkHss8B0R6od=(f}}lSH|!}})Mnb!T8wU9eE65&CT39oziax$ z{(sTeWx21nW-Z?mpk8+CGBPF6pXu|;1V{;riEbutkC-B0{Sz_T!$lLq;jQ62Fy|>0 ze_;hE1?Xl%afH61F3UZ=^A(D}vI3;!!$c1g_t$Y(Z`?B4H)Or3w^rf!8#_QLKo2wP zm@`fx#vGQrdg~O9|78a#1?XXB9kcU0EVuR6D;$4k2T19X*#Tx9`TK^f_w_a?9RFYk zNXe1e0cIWf`-ZwKx4kzi9RJ4-Pzun)%sTS-4Ov^q1qz3-p>=?g>0xFa`TK^f&ErCa zLt_Uh1?XXB9r^o)tnK3>g`sFqmneQ#ArTr2@8Uo=ZVwZzg$A_|FQ z2}t>(SpuphmSe~^g`|ijpcJ5&sg_udBHI-bH%mY%Krd4*u^dM(R!C}C0!jh8nOkYk zb%eg5ZcE?LB??6?D?lkgHxr5@^bK`e+Q<%tqK*|HWvgWc2*qp>m~a#so&vDj(n5AB z6!okCDOoKmKqzJ%L1AehyA+BBR)CbNmK7irN9Y^swzQ5*6^ceyfRw716(AIO`-Vhc zx20`drcn4<0aBt`R)A0(;ry!G(lRbrC<3eir2ySbD2{M`)op1PpHe8ASpiA`dYCvy zp=FF)M$dh$4dV)hqlF!y6rhKhb>u(4vbKyX6^>SRfRv?{9bndx|NP3@G_F!O+Smb7 zl3I3vSx5f!t8Po%7*aTPFfIrB&7(j0xX*3kM2&HdL)>#yk9{~Ks+ruBWA`|m7T|3dTs?V;H>~`~NZj-;~3D;5Zw; zCcjCsaXNV8fRwwJHx8)YIF@7I%?im(mVlJImnEQDVmbQVqL9pD2}sF%SpuphmgC>8 z3dvlSfKq@SCbCa&6#3@T9_U*%pO1~hRdSocaU459DL@YsS&p}eize(tvf~g}boDOg zW8<*nc7@{vc7T+zs2 z;gbcDSTa8BRya;!2S{meiEbtwYxACe4)pcpZmXC=aVjf7%6d!mFwdvj*hWW>am&a# zPj7!WpGORDsyh{qdF%kC06ol2w6QR4{v1DMdpU)$P9eWgxAUi-QKo9dg+En@D zs;jSeF`q{aJML0AI@tkA0eYBlY!Kmb#TdCa*44K#$T2tUxLe`qVh2dcd)Wb^%D2(E z^tfd-tokiGlY117Zgzl_yq6td){*aAVW6+yvM;$;;aI>9kdodK-OOz?`Tu!&L$`lr z*IblvcvIb{P%LBxCRn3!aK8#Tdk%W!Qh>+bK# zZ57rF_cXlGruRdZ9J$joX!SN3ee5Ww(*IE?3HqNZ+~vn zcu1jG%nDEnu!x!6Pfb*03(?n;+c5Sj3`^JmQhptxn|TRc!|uu(P|G@2=H9}8SfN{WOjJKZl+J_-~s3e-Ew4(lY>GrfdHTrqFnP`uB-8hb>6Y0eqjv{$EaO73BbU zndblRrS(^I?SBKU&9olupd0{n4*)p;_R#hJv9x}X#{aLSRnXe_w;$c!PUHV~&B*ru z^OxRwm-tmO#xF6aSv>FU=6V4$o4H=Z z)Ml;&nA^;iz~pAGmyj&j^)j*ryIw)MVAre27wmcs34>j)BVVxV4I~V9y@`y$uD6gf z*!4DY2D{!t(qPxSnCQ&)9%edoy^pERTn91NnJbCO&Rm~H>R{Ig$Q|tZ43Y=CK8x(Z zuFoNTupzf4*!4wZ5_WwFsf1l$#pziG*!5pXD(w0OvI@JtiKN1=Zy~F&>)S{x?D`J!3cJ4R z1V2V*Vb}LC51Q-y$Sv&p0g?;54k5d+D~t{$ZJW`CGBiXR)7sxj3`X%N@bNveWhF!nLtZ1&^Amgy>w@5kc`duA(xE{mQgW&Gmn7qH~?_;0MhM z+KNGY30P1H7V4m*40M(ghs&|fRe@hgA6Qfgx~o7>HR#2(X|Cd0u%r$wtq1i6u&fa* z_k$Gy&}V>^O<+|sSgoxl*4V&WJ6Kl$))#^em`2Uj=mh;PFd#vr2yAkL%^tAD3$_-6 zZ6)B8QsPK4rt0|Bv@&pdIe1hBcr+$ea~)F&&Zq*9tp?j`K(iL?r~_x#gR>gI*^S^F zKR7o49%q2ZH-RT;TZt#yz?1CY$(Uu$bxI+4sso(o1cNTHQ-WPZV7D9W@qqKa;DTb} zNHG?c;8%-E!P9i`^fGX9Ik=<(T72p;hxU~|DRDs*7!RNPAaAyO!s}a1^4_+1kFE_wX zHGx+&gIBhISG9seZD4c?c(t~Vc#RFb)(&1*0A61R-ryjP6yruGesz-zyjg;`6oI$8 z!P`9G?OyPXVsLi}7%K(u)WJPv;9ce5-4)M z1NcZIxX%y91K^_u_*fJ8cr*A!3;1L!_*5Hlq!|0B;8#y;2Z_(vz-R5?a|Ph@h2RSg z@I@zhzy&5G_)-!0vKxHG1HS47Un>S*F9F{u1>e-cx5~h`%fWXlz;}J%dzIk(Rp7yD zFj)hBx)%JP4*X0#_}K>VbB*BV{lt-Cd?A2e{f7a5u?hTAGx+5e@GGt0SKGj^O#wgD zJ|w1W;MeWoM+M-27J~of0Kee`zv%+MCBbhOf!}e1-}QhWd%^D&gWoR!e^3e@(!q2Y z_``DWM-||Yec(?j!Jk%vKdUB=6yxVL_|-3J!C%&azp4j+-2nck5&W$m{9OP%Y=D_2 z@b}H&A6mdawt|0Z1OGe){EK#o_}@10f9&923&6h>g8%CP|Lz3;;R63p5}oTs5q{9z zpv?o?ycG|YV7LKX(+HmD2hR_HYYlK+6S%&aI8uxaE%?>OR`7y0 z@Io<&I+_tMAtCj^7o$E4?SW$Jmp+GfXoP#$&-) zdUurOAxz#8zC*hsPO}iEZ;Re$+?KpGOe6W@w*+rV-yEfJ{K=aR(-?m9#?%dw8+01M zAG$t$U6jV}C$A0X%spsaos5Q~S~NZs97@y7gT__KE5lc6SH`ahUa^(t986pux;%4P zjAk56T^hMmzcfMf4Q6)6cA7g=G~1xQBXLRSk_^o?XkMJ!9@(zb=>E{QOe7XDX>7m9 zJI|nTVe*3T1=oYE5K~z9vDl z3uacwR-3C+G`FC>DsgV;+{`(#bIfy6G`FCBcH*qiSs9vH&^$ABM&t~g<`oRB%&Z8k zNG=aA*Otd=M#1!8bkLxY{^0>_AWkz1rbE$?5lZ%jX_SAwH`tqA8l^G*$tB?>+LAbp z@K2u}J^jFGq0=&pVv9@~+aIBM1QQEFG_pTNvk0boA~dc)L30RZx?(h{KSeVL>Ya&T zD43ZSn`h2Tof9vD5@I5~MznC1?QpBOwbeL|FG4on^&K3+RMPV)w)=SJrm zbCWb{pf)EyJ2*Q%D>}=Vm84k%wVCmb56uXT{7O*G)j{641iV~_XfRNX)eHoJ487CjP{Yf4GO}fZ`s>I=)8&N&$M9xJR;vGSiM*hHqO1yE+%--r`Fr z9P8NuQkr0*n+eAj5g4Z!d9)zd)tlQx^pZlcffXQS31$Td#l|Bj7UkXpe_5f}$O=#j z(8J6shW~V|ETda$QBUp-zE>2E3)lfl0eYBO$Hd{;+1t~>u0>tB_xD~^I4)!dNV$%Q zUS`&@eXIo8SHrj7$T48)KYdLhxrikoB|BybsFqkdP+wO_wy*@G6v0Ff6REoM_euo2 zdzR+j1Ajx|*vbx&G6b^&gkw7e*SKY**1HERU8rv=91(Valp&btWx^4rZi8{lNR4y{ z2QA%1Zz&|(SOQXtV4{Z!N&b;5!R|%#bDPN93deSKfKq@SX4WzMr(>lV-B{Kp@{YoB zF*`shKra&xk{@mlprxlV_YGJ3uKw z4>RlFgGH`p%wZYO{uzbiN_K!!fF5Sn!3T@U9hOG&S%u>&c7RfV9%j~&ujh`om8Fe* zPT`=z9P|JVD48B+){(F0jvSUI@_B{h8g_s**A0=LkSDIC|F%tdT5_c0xu=JE>2r_l zUrlWcBo{=*jK5 z`=Y{eJv%_kNX!l}yS4H=`g?La?!KgO+(e&PBS6aGORQjG^wlP@YFshIkVkliO2k0l zl2v`d1w8|c&g?NexG#VB6!^;u+s$OC6(HsEB^EQc(N1O4BwGzRmffO1xTI%kcl)m6 zX3xj>88&@IVY-D)ASLuAmN0iwoWV728FC6Im2KtZs;??kx3UVPw7x`2>q}fqV}T|+ zH^KmcBGJ>qWturZw@hDCh;E~gtrQ@o_9d1vAwojHaSKU`XzTTKjMP-_*~Nzn)9v)> zbpn*kQsz3|{ZBmdyM$|~Sj=A>99YPunmgZ8tdv5whh?A?U^R0c9S9~H`%o%MhjcN2 z*+9>#B|S@e`_EW~Fw8wG|GL6=4>{TeNJ(so<;;9Ow{Q;`Szp)bG~l9r>Lr`EZ(P55 z?fHT8HiWlLyK+_M@~Q39u=R&S^CN}-UiO2O;FkU1C-s|?`ORGae=7XvDjsE(R!oTWvli&ZO?v8efZDOoO};b zPQJGtHv6-b&+nHsFCg{*e}(%0H&Fk-oz_RF@Bc(vze#idZKt(_)@Nw^e-EvPXzc&x zv{urZpz;4psQ>>L)bD>SJqHk=f8U|L{}nX<-|wma|90y8pHA!NY3%>`vs;B5v<0qV?rbw9_}U|a|e;Tv>{#k_~??wKE4ws>$V|G>L1Gtd?o`>Dh7)69{d5Hz`8@VkmH7^kn( zEggE>F7KJF1}rRdE9u&QU}qJhDj2Kf_(?*(!g0;H7J!~he% zHIw+NMfFfM`B3H@Y5N52PZio1N!27k%7V>W@SoJ06SO~5XkR8tjQ}axGqIexoi6Iv zPckwd4S+5q7cE#C99-7lv#Py)m)VoEZGWz?y}~w-QYWzu{G>Lseb@21H>!T2u)WGQ zPztb|`AKaZ?Yr7@uTFkBY`XyE%~?h!hiakU)d-Lt$tPAaSJ4ID4!U?9x6ox*F>T3J z!R7s{7WFQf*)em~!d1Dq7=ER&9YY`3EI>E2ikZ)bQ;Vt*+sc(IN!GM+%O=v!*wBQp zHhi%9wZe+6Ur!Tbpp2l0c`@BOSu;r)(f3j&23K_UuNs(-avnF8wyEX(;5P~(y3p!r zvJVJB4->-eM-UEJgqHJx-ztQ2SqRd@t1JW|3?D%lvLy&sETqtSkf} z#M5Ep7QP>aP1G4ydhnW@b9OuhE?^q7uiu}gkD~zYor`8LQo5r=PiF!2!r&A4FaU+REb_@RygrK4{lxY zHnlbkI#cNzz4-r=!q~}1ke*s)BM2kzG>=>O=4`nr{J%omo*7PCQ=`+CXmHw2J;rJK zYQ58T4z0hgbJ{MawTRZcE^yk~=)S-kzi`-2qxIvT)A;>e{~vL89_LndpAG!nd$pa> zdS~B9n$0F;v25@H2BcYx4H%DR#x`KU76uY_3o!d4u_R^*SU^G+0wb0HVTr|(^lkgL zR+@BAK}nmoNt&RfP1~exP}VnT62H%LG&9zyA!{zJ>XEnG_yt`l8PE*zJxGEBDOc-!@F`~ zk9ZTmvLk?%yT3`~qHfa^h7gH_A(F%5O;h0NyhYMzB0zbqb zx6)4h)tn38$N$;&S^WP2d?O;F5qzE9gX{jxs6eD4u(cHUKHiht>)M0g<4h1LCYIw7 zM-9x&z`w$>510}D(7+5tRAhblvpsVzJa#-%{y<>9_(lAYxyLOMBASTeePtuM9>bWq zF2s)$;(*n>V=DG`GJS0Jz<9CsHy?i@{Kc`~JoKy1um0jdi@j{0Weg4d=$`NeX0vS? z*-Kmuj~aM%cm#OhuFhDtRYdpT01S^oAPPUng@KWTa7ClhR?{cugxG7k4AoMzq=F}349TW8hD%-O%LBSjbrw##~;XH(d2V|@xWVnl%C986TaL5 zyvDQNDE#2Suim(2DjI$3z<#4Q`+isA*SFjLe-N$cE9=86ZQ&NZL);T_iNv*-eWc43 z9m(?1EEV0+Ui?aTWLE?WU?A@ffV`{=D`YUcpO4%ZjqDI_-frh_c%eq|!#(?&aQ*0%kMncqB7q64W>efThX1l?ZxP|j zCXlozisXbLP7?{2_#jq+dTMuI9pLG6?ZB^?uDx?n7w+)y(Rk;)d@|N!RSR=!#Ohl4 zxeq1GL7vQTU5jBZ2X3JRUIv)U(b{@;Kjs)U@FKw9B(U<6Z0j!dY~cc4M_cDSf19?B z1vky8nK-nqXE`IjO3Xvs`rNXm9{$LN@Bc%3)hi;19CVbqCuz=8&Cl>rdC(`Y_tMafG&xzg%qV5239`>)JZD98Gw2 zCTeYc0uL;SSgd7Cj<$~PCa`#WYmdD32yH!rw*DO3`cnKcTAr{SZ5`h@Vq3ovZ9RM7 zp0WA1{^iBCzTeT-InViCfL@+d|S_YOl@0l#XyY^qFB7zR|g+JD}GRS?z1F#(!2j-`ji7uwJ>!aXdopIsK6GBF56tCheG z#+8ram?MG0P+0GOjb0U^3;Vt~5ffwhhLOnP2TOBeZVJsThwbtn9GNvmqlmQeDAlnY z4hHrPV^=EN_}%7^5MO-7mF4c8p9{In+^(e}g4e-Pcf`tysF77YDzMeVgAiY|@K*u{ zCaxAUi46fm6KlfWu+ z-GSA3mzlsS#P&Uk`G_oz?Q9&|-GjftcZBgHKKifVjxT`4NwnKSyf-1l1-{KVw!`7B zFw*!lfp6i}f7Rz~TC+|2AHttHiS@^;2zj))8 z+4NICKk)6CiDSE=ZynfX{oeXt|3H{0XYuD;1gz|6v+JJYgt31&!Xxq7=tXm5*`?-E zV_mc}5;4!oVui0?HXgy7%{Us0V&^?EI{k;Yrzx$~OUa<**V>^LWo>klX z2{aPCW}~hI_KRG9Jhn4%Y`0$+JEC~u`M44V_C1los4K~PO=wfg<~&%S^$By25jEGx z%r%42I}>;@;Z-R1M%$uuSm?P&aghkx`Uh28A7NX!j@Z^ez_yNK#k#is9Zg%uOJBA1 zw!_=H>$xMf_2}Vk-HTUAH{1G;T-o`yj!i&)Ti>JFx(j_$(AEdB?5eF}$(kK)eFxgQ zkEdP3W8y*=Uxx>7H`njtc^upNzt!6MS5#X+pxXM*E@xZ6{jj#a|B$whjn-mY-?G@& zEw=U9gzvDnjt6ni{$&eo{R3jx5!(77UINFktw-3_je~9dxP`XvGu^eezJqQ3UbgjM zt*s{=ZT&9ySgoyR#UR@HdY;GOc6Y*@Z|i^l<*4}PUz{xd;nb-3k3YeCP5Vz42TCWV zkCQvZ%rZ2)h1=T?i-Fuj>Z{>7_WzHK;6H1WEFs2zU=oYCh?{tbm-vVzO~g+EBuGLe zOd`Z4&7_62k~Y##I!Gt!BHe@~ODtBIu~;GqkC1huEY=INSWC`gok44m43S|nLPp6F zV!Q=RVi6Z{6A$qcACaVq_(^~SNr;3=gxI8+w2)TPM%n=$VF&Mbk}lFsdPpznBmHE6 zL`jSck|8ooM#v~xLIj3eunb}ni@1oJc!-zyh$KzKPXZ)JLI962%=-~ylV;LFT1gve zCmp1dbdhe-LwZRc=_edK!s4J27RQXRIAnyy5hE-P7-4a|2#do-SR(Q;7J`_>A}-=4 z9^wUfgg)Mvq>1=RfCNd1gh_m5+9MIiTFu?1WAa5Nrc#>nY55r(ni`z2k9hTq?`1RUeZVU z$pDFx7#Re3ghRY<>;NXQh>N(1hj@vPNYX_7BtU{BM8YIOY|>0xNGoY0?WBWrk}lFs zdPpznBmHCm;1Nc7KSl`+-R;;v#P1 zAztDmk~9%N36LNO0X)Jm??;GDnn??3C2gdgbdXNcMY>53=_P%npA3*FiIG7vM25)- z86``I@g^{dMO?&9Jj4s|2z|USNfYst011*136lu1Ni%67t)z{#lMd2Jx=1(aA-$xJ z^pgP+B{4EchR84(A){moz#}x?!hMri#6{f1L%hUCBxxdk5+FemB4H9CHfbg;q?NRh zcG97~+`A6RgYEba%>;CkF49eUNH39dr}D)L+DH$H5py5#kq~Jm-6Tqk{lH6tq=j^m z0Wv~7Z-D@5CY_|83={9Z_4r%TLb}KR86lqiAV8W)C+R1{#Qi4l6Pt99J~BjHZ-XWh zA?>7>3=%WC0gFXKq?L4&C^4phm-J4ZhQA=z4j@UGw2>YXBjzsPBO%gCx=EB6S>Po> z(n7k(01^9uhXhD7=_LJRn7H2reqxgj(np4f>uu0PBBY)4l0hOYu%vxR3<&l=Ab(R1GZbm^JQGqGpNPv@SFKV5k$ z|5Wm+>XU^hQ%@RC77OWuT`0|E=3;Z@CvxaRUwJ(Lc=GY;rwZsrZ+xowSo$&hvC=0q zpNxI7{E6Hr;-9FXCw=nc)sGcEmim~1zVzuw?MF)=&3rWW(eg)j{FXKH_J25oe)Z-1 zbN9#ZuiTeM&-&`Ug?m%?8uu3ON#A4NQ`(c+6GQ*{+=t>Hs(dj2!Q=<4cNgwX-EG`m zL?3(muDLr?cN%vV??~TaqnCXq7t58ixojN$?DMxLZ?E1~xGjaA_QhM%x7xRsZpqvd zyQO?{?&kQ-74)}H-c-FYdt>~@$_@D&lIU??xIT5gaeeW+H2U0^c4v0Sc9*Zsq1S!o zn*24%YpPcl(C^;3x|m64>`ZA_W>;)i`KldP*;kdW%v>3}vV2AEiue_k%k!5fFRxx! zxGZ&P@a;=Wmt-!9T~bCL{P+hd@6W$K`Tpv~g^N=c8y6QZN;IgcmrKXfl^yvV z$sN`0h3%>B2KwWt&$rJnotHT;h93F3bK~b$w&k})x4n5z4t??~XXnpOo?ShwfL{5= zS;ejCtu}h*XST$)lsD%#$I&-GKbxGb&J<=+=$&7jPEXs@rBo&*QbqL7x2H;*GMi$X z%IKjVKeMtizcIP7dPd=l)EUMZ#naQL+ozXK%bXTFt-K+Jp8A#b`Sr>5)l&=TtN#}I z>L=G#CkvCQNdvw0(-ZbYX*@F?Lx26;SbVIK%qNrRv0q4}5=NqUN*aCkODAVej-6aa zzy0`0``2dH#@3ck%$*oV&;9%f$rGw;3Tsm6yI)+LUTv=~t;(SHetBhXWqf7j_&oaW zSC1MZ- z`uC^1?5JqJ4p7|Ki34V$8Yrtijk^eK)GA++N-Pawd0n>d(OCWXY<&!<5HnD^@0CS6Sx6$ zY!MXWR>PpOQ6R4}!O*t|JcHo(7Z&Unnw-<{t9^oE>}nWP)`rtOe8Fm0vtU@;>9P9f zE?K{1ztkk2t`aH6vQ~*ypO~yq9IH?KZ%yJEn12s?12B>Lm9=q>qxjl!%kr`-TVR~y z`n>V_ykBYZHerUnxVV>jG@xYvz?}_WEHhK%j=+ifz+Y(r6x*!TK0iF|4FV$;b)8c^2OX&PTUZU@(C{r)2E*!N0J;DwlD zFV-OgX+T+9r;P%!P91^C`mI}&CXgGyK0z@OGz=>B>(r6x*d_Wki61~pub>!^2nLkw zCf|4$H96_nMa3Qa#DFI7G8ITMtd9z$3~ao|n4EO%G2)JWVo(!!C1&3zs8j}&3~Y2Y zd5f5wT)diGU2Gk9>=Z+q#H&;y#dtq3sBDy2+k!K({@Q0}Vpx-i&-}2A6r=yBM5<4$ zzxX-s*bhfEi996iQwK2^rbi{xqaBvEsKe6w#O011v8_quCDpAswBRz*pz>&ki%o(D zsN*~k=Art+k#MsnXg7Yf4~xPe8dS0`z_n_FgKr(Y&F_G>PRu&m#B#?jzeSVCEAV>- zmCArJjRkCc*p{4e9JVcY?D1PQfj6l@ih*!oKzWsF^ULwI<2Jt~-84SEyl#)b+_A@R z(*)j(Ira&PL2+PE$@O_;C@<*ZW`gZm(%R<}vpk>oxl^z4$J#c><=t=<=Fp zVfx-uuerO^Yq~H!w8U%1I=tq-cCUHzsMq{*o7X%S)AxtH=8dgh(}(HN7W5gw^m?<` zoHV`WS7Tl?jp-M-4slP!Yj$7~y9{y67mwMsQYOTg=0E@E`Tx-VpW+dV25YDGd~og5 zZxp$9aGO6>@6xQD9DcP=P^kk0$a?6-hBD5DY0BMRHJ>`AEllbwu`RBJWa>6hj25Ncs*U9V^yx zAl9deyjw+53>XB1%0`g~SM0)ZQEkO0>t8+nn#d2TNQ&`;U`W|0^5BY1I##SBazGRL zAr(obpdsZuh;*!2$KhX86S+r4QmHO~3o4JcU2YZJE;~0`jsw7$Ch{H?Nik>=3@IB$ z)>f>FbgWoM9@R3ya^N-B~z+WjmnW!<)b{WO<5 z4m*c6k@u@eilLNLBz*^w3#~*&I*tNIG?5P=pifW?bp(UTYw(`RCF+4gn3diBuQcdC`Dv@#|cdl02=$Twd9G`Y1I*!kd(IkFUB~lFQ zq!Q^BSfw0D>X6&~6S;AGv*QqSh2!|_U7Ey4G1E3dF_04sDQk&Gej-sOaGVG9Dwhvw z{y5-RP148kt9^oE$R-$6HcG0kO(r>Bq>dxOcWV+qfs|hMPeURNDA}L*NXMSFHz{Yg zIs+YtI`7d0K8BD!K{3h?3@Z6HEEn^T+d?~>+UQJl9O}GRllVAh+AAoA)qw%!wP^Pj ztMfre=KLAN><08eKiCU>h2yB>eVV{0FvmVYr81~wAj`ZRa+_bo*$o?KPOndN9CR$x zBo;8!UO_Q14-6>Zf7C@h^^iqO)*o`jHGxkeq)$)`!~=s$1~y*AQx9FlvHHa2n#8A& z(jq8E-hlxn6C1ryQ34i6hOZsBgXf!$?U`eb zf1D=pWz2CvPz)dfZRI8EZ1eCy4*7+1F>bQ2yJ+XN+qX=P&u*Gt>ex#huSxtYQicV^ z*def8SsUnLJHB?@vK)G%lY@9{N9yGC^yVpKA1QXFCiWG~cR*07w3W35J^YkoaY5sb z1$FG4R%sGnMb@yO7_9`hD}RdxjV~;yBX+eW_H&3D5L7B{Wo%v7pNr78J3&7EkI=(8T^e0!IXu%1&i%Lw6Cr>$qjv^|xDKLpOeoLX4k@8jJ6n%lglf&cHl)oXU*eSpF(Uh{o;58#i`-+#+}9`m1Z?te`;eh2^W z#rc2#F<$c}oco`M_W{b!dd%&358yv>?te2T-%79f(GjmXbUfY@IL>RHgy}C=c+IVt z{&~6A%wYOW+-u&4sT0#P%e>}_D9-jgzw{Bh~6XG{TH2<~vs0UA)k;cEPcA+=j_kFX>_0;4h@ev0p=|Wz zghe>pweaL@+OlrpxlzmPIHEX7ll#X=91>J2+mwx#xi-`cw=SEuOir&mW7F2frFEp9 ztV#WXT3RXv?Nl~e+ParweEWEEYSyv1j^mkAG{Jv@uqA>@Ww)}?;x>!sZ14QWR6WDU z#>hyE+Zji6LKFR`2pttvD!Y`8mYG9c_0*nWEHj#4(y`EvL#m`E`OlDfjG$84t8BE; zt)eyCe}va{Jh`ydafFX)!v9h&HkE>QDc|v8k2x0GabP#DN&YLO9V4hz_9}nt#U5K& zY)ANnCj4&@J0hr5b|@Pyc3pdpqiH$Yv*XxuQj_}z5{Cqp$~I-Ag+9DJFTS=Nsp~YU zUqRj|`&J^Ab}Ab!E!*?_YkQev*HSw;a-6oGs!9GT(vA^SDtnZTmY3V?BfYi{9wIry z*K5MRhS*U-rLsfWXtDVu&+k!}9rh&09mj+lG{Jw5$YDXHvQ61&srf9|jtLjG+6R}{ z5qp{@_Ui~75>zT%l{_1~L|qhs9~``8IihF>h9%#yeP(vt(TwAc1GLjMso%gn2LzSM zu(Hv@a?tQ*wfSQ5!jZ2d@C;4hw-7ZVs8qHq`F_QbKG@|EcbC{alboL2K7H093+gy7 z+^EU@HWG&gmC80{qXj+qtZr7(ljBo7Ps~)t}QMuVViV5 zv5sS&O`72Es^z6p&^F~eTwauaS==GT9kElI*zX}~L{O=0S2kMS`lomH(5KgN(38^S z{;SHRQqXo~qs6V|@=!}Xy|dHFGiMf`Uq|k=CinZu8W2<}Bg)!vV%zau$1RH?s&LB6 zG2t9%td2vS8BO93Fv|f!r82B+w4?`HEK?U+tRrw%6Zl_<8WdD2Ta>&^Vfzu@G~z&) z?YIhN_siFZC0 z7uS({mL`|ya|7zEPAVfxzUz6U-A?TVJiB#+^Qm#{vsatt0syP4X|1IV7l5wkm6HxE|hE7k06DH68L&<|QzD7vCD#rb+!3 z^11|-$~NV8aUELFPJGvK%Law}kKN{jS9;C1m%ZjwIR8KP!(Q_>ya#Z?i(d0f+q~v1 z-Us*&&iyaF*K7Xh9-Qaji0cDBj&pd7``5C^Yd(q3|KI(7e7=7j#`60pt|j<8e9r%j z*L>qbocG^_F#*5oHFrGaHNX26uX)Ln7%Q-d>j&~)^S}{ct;tyZ#Itz@@a$!@ih-D)Mf)ygP|kwIeMjTvbYi?|3o)k+WX5_YPU z>{Kh+saCR6tz@TK$xgMBooXdJ)k=1%l{R6gTFFkelAUTLJJm{ds+H_iE7_@5vQw>O zr&`HQwUV7`B|FthcBz%@QY)h*MvT3HU23I8T*OU0#7o$vRd#z;mTFLIUlHF@1yVpu~ua)dxE7`qP zvU{y$_gWbvgJAJ-vYV|OCL?5&EFs2zU=nt-l`i5Y9^xhJW-HmvRZomF#9K z+09n6ldWVYTWJ$^vX$&)E7{3bvXiZ3CtJx*wvwG}B|F(lcCwZ1WV`q{+1XaIv#n%j zTglG0lAUd3j0_TXww1$Vgp86U#CQ{!#3C-@CLZD?>}o67)mE~rtz=hQ$*#7NU2P@1 z+Ddk{mF#LO+0|CEtF2^LTiFU0A1AxqN_M%G>~bsFP!>we8+r`Jp zj<=E>Z)JqA=JTU8TWvg55}$6Lvcw~`%iWhdz(-K2-~l0MQ;21t~|$RHUa!(@bv zk|l)YzcJ_@z~GHo6vEQql9j&~A14cdOO940`Ju67^>4|l-;zbYB|k!zEcq>2@msRs zw`9F<$#UP4)xIT*eM{E*mMrxxS?OD{(6?lrZ^<&>l2yJXi+oGg_?9g3Em`4PvcR`w zeQ!BPh6sy$OV;+5EbYDcI9cIavcR`weQ(L~-jZd#C98T%7WI~_=`C5(Te70JWI=Dq zdft-dyd|r7OBVB%tmQ3P%3HFMw`3u2$vWPWWxOS;cuN-XmaO3|S;AYgg12M=Z^`=I zlI6Q4t9Rq|F(G^|FZBi~O1s03F4`5NF(W!Dd_yie>W0$GyT?d+te?IoNZ;2%*L2Yn zd+14h^ppXbjL~ti3{IN#RC5RXP=Mw`^x+8oNGJVNH+^D&J{^TJMuzzHbHZ$bVJ6sucYVOuEqOP=wdqhR9qpv= z>Vi_t;qL!6Aojk%;@A7#^a~z-!%KYp`b#1DSIzW|R$6YSU+sXhi+8`)&AYw4`;UFR zJHWf&H1@%7S@bP8{f?LZv!vhi(|-%n?}wm_@a}&$(;v3dYCHXLC;e$R{dwTcjl$b> zLlFPrrMr=p?0L71cXJ)|&Mta)5B*Rdy=Ra{bZ1SDome< zK-tW@PqxyhyXf<_I8*rkq#0r}30g@Hzxm}p`i6|cZwBbML$nfx(k9KMm9&!%(oOnE zlnfCw0o=q#nn-|zh)r5a2k9n#Bua*exeG+1NdImN{azdWw@&(lE+~6=_rH31x1V>b z1H2pK-JdM{kFO%XSNweX^Ty|kpG$qt_*~)jOl^1d^#9klr5-XKD(2I9J73zH*&EwielYi7{K3it`3I5@ zR6kt!aO%Sqj1UmJzjR;bKKs7nI~*S%b(e8h;m+ipl{<2G#P29$bO1Y7%4V{$Z29)w z?eW_yx8-k3-d4S}aBJ#T09huN;hY2j@?|oDR)!+rpk@^80QRI!d1zuDp%$( zGC=8y^cBVx1&j+&xh!{C{Ic?;8H@^0yd-r=^#l1Mj0upw$iAp_Vdlcvh2@>Oo$;NO z3-T8vFQ}#q=~UWC7k8w0*gHzwGuva^%jb*pi|3`!v(GD?n>jajZh2dFTYOvPocuY- zbE;<-&Q6_eoLxLCeU^PzX=`R{Y-@Q-ZcBViWpjRWa&vXIFq@jq&ctUb)A{M-bTw5- zrBcRkIUa!6P+Xs0Z?7+%nmILgYI$95U3^_-GC!G|tWFdrQWM5RaXdY4kC(1g4L`s=}(&Dq~e~WqPH(vUGgr_}KB~HozT0NK`fYo#UMl5D9q7n)PeMsv|l+qPYbWFoOhIh+f}!njfCWAvs zhSh+@QW;P-y1HdCWBKu1P4nw&yC%bp3=F>wr4sKCspYs1pO_qeVF|B;^oR{xP_HR@Llfdr3qmDE+~>-om*6d`oks|nUyv>1ll4z}T9bhjA}k2SWj-*dtgWp1Kjmtv z-PEOkSdcSk*Eyc`3p61dIX@z(R0fs$5XaNLQxoD>Ayf()RO&+<&-;a%kdO+YQqZ81 z7vEiSgr}tTyl)!cFu8mc*Wmo~evu|5tU{<1G^o55SAjPUncaktm31K(YeFKJF%EuJ z2o0(G{2-Uha>z|x{O!fH8CaBfeLH!-CdF1MR0FMq>QboOSwdo(t`O%1eMC5QvbBXm)C_{stIXTAyf()R5n_agD!{jTIXO~eRh9u`z8 z14>3*eT1E2?fFQ~Oi$Kt;;+|ajAHJ#pi&u9ULY>VVqA0BV$^mdV`q%bOwQJC;&0HT zEW!LEf=Xpjxl6nsAG}_DSW4{~nL2gr^lbem{zgs6QWZj_pg|==E;>rcg8rB&*4Ys|+dy4Jd2R z$l*`>{5F2;Mr7nc29QTf7S34o%Do zHESvb4G90YE%WKyJa`ikb^A7Y%fI2YIXZ}XV9W9r8A+NBNJn} zpKH)Z|7?#ryuoAcU+*!`#q{&79`hkg?>*IH{^dH4c`+tqi^qIyv&US8seGZwybO~Y z)7*^5JQ35^rafi`QvlO*Nsl?6@|fRFc+8tIbzoxu|NF;|pFRQS|F0ic`~1KD{GUru zTSbRA@r9>hgX8q@PR;sRi8)3DMZHoOR5IiJM|e5aHi)xZPj#My-lYjygBf=V8c>Fn z47o$f5w)MT8fGH5{1u(Fn+ zHWWwBIKF-(@*z#eT9rWqf`*l~47Hs&a>jA>+mJn)jFVIb4G0=m)-u#~;>Z~*>bD{H zXfnny-=Lr&%K(2am+O&s8sru*P#F3@*^a0fI^p; z+2}YmxK9%?p(3ah)URYj{3sEQGlTmz5tAx{Vo**MK^d`39KN0wmSS1`)BRyh#5&9{ zBB)dbm6sr7=MheDYHfVO%y>Lr|9n572{~1TQ1p6)L8U&#QL_3$O~`r`LNTDI3Zb=- z!w=dQmtW;tCS-#Op%_F|g;0HnudKIU1dx<7sy^kcTxHXJYOlL8a2Kya;RS1ESGlOm0|Tzd?LN z6R`<14-1NMK_SKkg z4dkPmjFift82wXa&sthUx4Jd0FjgF*|FF-^wV zDuZG~Qk6k#8R^CujyGUGrO7x4a|{cLK}aD6A%z?|`ijQy0E};(tZyKXYcjTBjv+xY z?kMytcVSSC#+$^c%@g(Q;|Wc~xtMKOP^kxaWA{T?8I@yA-DP0)w)gN%j)+ZPiit)IWR1! zR0fp0uvz4>$sxD-jH#^~9iQnurOCJebB_orl|kiBEXR>DY8xzEdcVwZi1oB4WTy(D zQqZ7MAL2O3dPWm+A!ZyF6vLlF41WrDV#C|`85y4)Usm5jKCQ{PNM%rrc&aiehi_lj z@ZIq7nPtoCo5-`8jEhwUm4XJ8wT#1GzO|E1WH^qnp3`K!Uu94!Xh2!ZX!OcL23pAe z#S{PMH5r$x3@QZ;DA7V(n_T7`&i&V7`Ujl^Z(D_+{rWaS>y#-9)TkbLM8uXaaF^~C&IR8Hj(@${TzZcW7Q#k+MXNuVyroVO~uK$m& zs-6FAmyFFwxS`4!*ts8@O~KF;6y72ooxS9&i# z&fnD)-~GJodw@hqj0}uv^KK96C4HnHEIiQ52Kb#Q5j%iEOkxoiaT5>m5+9MIiTFu? z1WAa5Nrc#>nY55r(ni`z2k9hTq#O7y@8R8E(gzkE=;i(Vj>rOon8YG3;wB#AB|aia z6Y-M(36c;AlL)a%Gif2Mq>Z$b4$?`wNH^&ry`+!ygT===!0$v!j0}uEI0TLxK zGDwEVFc~4E#Fzsnv51SfiHCTJk4Vx){3JkvBt*g_LTu6u79VE|ztc+ENIU5uourF& zlOEDb`ba++AW;${gJg&dlMymX#6DmUlUT$>+{8n?#787)B7U&=I0O7nkc3E>M2JnA zNegKuZKR!akWSJ?x=9b|C4Hoy43H>^kwG#z z2FVZ^CL_d%d;|+XEaD<=;vrt*Ba$=`KM9Z^36U^~5SuiU7Sc-ENIU5uourF&gT=?$ z!|(KxKGIJHNR-6LAQ>XVWQ2?oV;Pt~p?B|z#zVf;J=aQeRzFv4e^}6wT@wN18 z_G_hAGq29QqbvT4FQ#9#Uo5?lS-j@I@_hdJbnlt8#Po$r)aqWNR@wxv&jlkST;vcCz zl7A%mNcG|9!{vu^55*s<?wXI{UQ59r4MF482e!P?%dt+yDN9)?@HcP zy|bXH4;a0zd~5F3_^p*&^0y>!soq?;Id!vfbMdD1P4-Qt8#6b?ZYW3(mD?5HRk;J1) z7OqTPXg$(&d@UW0#jzAAriG`Ad_RRxgP*s0;W``vA2fNUil-`5`KjbobyHzeYLl_4cxL)c z`^?hD%*NQp@)@}^;%8J&&!3(=y?R>VwA5+YL+Sw}@YRnibCeukfSxRIQu|)Y4aZ2&z^vU+grIRuz#ZD@(&8>~Et(=%YF?nM3 zgu)4_6O0pzYtn1%HKo;=)v?v(Rk>C1Rh5Sl$L=3W$oR)Mj3c_&++Nd3!03}G2e)wQW;d%-grAaWAWX+<&Jmv zUettKp+cw>G^o^vINsfRNfUA{1z2@>&yQ&{{_0clVY%-rd`$$;hY-Dg_NFYZ;B- z-COQ>|GTKk*p2yy1Vz~y=vVTJ#KxcfCubZ_$19qM>o8keP^k1)NW@6y z%QugypLXyay6mrC)uddnQYfm~z>tz}<6nJ*Cw<}i`Dvuoeci%OxWRijeqJ4kVS zF!6a!%B?DeN*<{nqREH6d9QLh&wz3ZeQCM{D^5O-N3KP*kZ=A+)yBYP2NSX`v4yTjTu8 z_zyK9cc>7G!Za#`>O&kGu>Y$Gxm$%$6lqZ*l${Q)#B|7Qpp$ZDV@=2&6+%%JMTOAXuCdW`f)Bpp@%jri_G?1!Q6Us{ zP*e!jhd4f7D``UR#Vo^uqVfq0D7oW`A7NX(@X=S?u><~sCgVPpK~d^NWzbs2;cII# z!|?+C6HUhbDubf7iOQh0jK(`)=LgVV)MV_%93z5CWl&kG`*zhKuPibD(n8(0O_TM{ z`j<2zdCWc}s8sru47o@|4-2VX8@F|0vVODmr<#a|F!QjWQW;P(VpqfGeCx!N<2nB` zO~%72gGxaI%34OF=NuW1=lst#8IPz8Dg_NFYZ;B6b7VNSS%0C)_!#CJ5)`#TpkKKQ zmw~Jjjh>FFq~j{yztlv0Tt!eRs9(v5l}CwiT*UiVnut%R2#R_mDuOcNc+q$%j<3HW z=dU#ppTrD9f=Z=d$%x~Q65+Un_sg1y$5aGG5fkWFGGfJ1A{&NunlRRb?Qy-?^U+XcqV)`*Y_kR%6v6%iGpa1VX$73GA=l-9>vD_U>fH2{|Qrk>8F{uPr~_se*W|S`s@GI5^(h_JId;DwCS>D^*o7H5*8F?RA4~K zi|p8{54p`>>j3|h-*bZI^^9Ig7RnvADa29<&al(h`ibn6%8 z;Bq*c_1|hTo>3VTg;`Vvt!1d)+L1FH?fUOD8J|`eR0w~LxM`BU%3m{w;$!$aLjRR z_#I8e7gPk5g8G$=ILfi%n4^t+R}=9kDuSYvii)6&ILfi%n4^XKvnJw;DuPNu{Ypk0 z<=Ak{(LVk~6Y(V#L8YL6B_mddX#M_!_vd?rPmMWR$M-Z5f2txV3csib%82EnafG97 z{HrG7&oIM~ps4Ty{Ypk0<=Ak{(K7x`6Y=LNf=WUCN=7UbjhDjFF8*B;@mH8_SWpyf zfdM7=QEVB9+!l{ZoDJjqnvB0z8B_`yP}VXUA743J#t$?ZUsf4Z3K~$>G8!LWIh)3R zXfpmrWl+?YQ5m$B(fIhv**5-DlktYipr|FIGH5NM@$r?jar~Di<4u)8rJw<2Eu-=A z)tIAo{7{ooRvAB8-BBS_AA(kbE05<-{(r6s`GyLi zD6^wNzG27%=>LDd$20& z6Vm{uKft;FR!l#}dH;jF{-5Xnxc>hq@BjR-PsaKGFIOMo^Z$3Sf*gCm|EF0&-&8Az zN;9D{;@?yRm4f<}j5x}%;kcu1|5_9A?<#^yLH$Zb z9Oc+>+|jasqlx&wilC^?qar9HmW#$uw`1>jKoju;%n${5Ad2xozmgG0IX1*cPCVY4 z-*jMn3w67+_TQp0Vd1_Z{zFAjsqXugj5x}%;kct+7@CM5stAf=J20T+{*^7`klW(1 zp|fF_nvAzq29<&al(me;$A-?9VQDg|DuYTv1Ik)P<6}c-({O1rexx!e$^)qkTFYpB zZ0KwoZcWCIRR%>ZAeBLD8I6w(osGkz$@q!Npi=*n0#tA-_@~6a|k|2-Sx;_8&n_$gfohm4XJ9 z`Vhw+B%}%XjS8Vs(4bNu;%FsdO~?TiLZzTVr9Q;57l~*>gvpmMmCB$}AL7`L*qV?K zW*-(5W7a~yl0zjN<@jpCaeURRi3qC*iV-BaU)>HQ{I% zU7Cna6+xw-7@!t%AH|k&$ZhfX%GofwH5pwhgJOVMl|gG6jgPOKEu%-1(XBEl2B=jT zw3gBM_{!NddNmn6DuZHxT9rX-8I6yxoNc2|lhLa(D8{E%8MKzs`1opqjpLDp!}fkn zMxV-{7@k&T&{{_A`0BsE>V(I<3X>nxv*UPA z0R8_f{QMtN52oLXd(6$4ezXkd|Cru|YXHQYDJqZN{l+Qi|NqSs>iYlhe?&x+5383f ztKUs#W2}E?vHqRK`gc~8#0cx(S*(9&vHqRK`ga!V-&r2wC9HpEvHqRKx_1`q-dU`B zXR+>`#kzME>)u(cduOrkoyEF$7VF+wtb1p%?w!TDcNXj3S*&|!vF@G4x_1`q-dU`B zXR+>`#kzME>)u(cduOrkoyEF$7VF+wtb1p%?wvJCmJnkOn8YG3;wB#AB^(98;^+q! z>)lzbcV`6%>)lzbcW1HQoyB^07VF(vtaoRz-krsIcNXj2S?#2Qu-=`;dUqD<-C3-6 zXR+R$#d>!Z>)lzbcV|UOj0_TveqeF*1B;^{SRDPp;^+q!M?bJQ>Vahu7jY90@e)csk!a8>r>)ctab7!&6oz+U(2)TnZZ)dT-oyE}(ERJ?yv96uP zx^@=p+F7h?XK|DRi*@ZR*0r-(*Un;HJBxMgEY`KNSl7;CT{~--j1bnfvsl;8GTs6v zv51SfiHCRz>)KhYYiF^po#iL2YiF^poyAcOERJ$uv7Vj9dUh7;*;y@wqZ?Rlg!Sw! z*0Zx%&(2~!JB#(~EY`ELSkKO4Jv)o_>@3!^Lko`bevAx~Au>!x$S7Gt3~c=@lUT$> z+{8n?#7A)99~Of639bOdLXZ#%lL)a%Gif2Mq>Z$b4$=wm2)lT{oAeOYva|X~KN%oV z5+j3ThzyevGD?;ZBLYlf5f^b25AhNok)(!x$S4sBU=Wj7#6{f1L%hUCBxwS8gnr%+kRS<>Fo_VG zG?Nz6O4>*}=^&k?i}a9Q(nmOsfi*y)MC!x03P8e z?;CT#Bo=WIH}McJ@exUyh@S*Vkc3E>M2JnANegKuZKR!akWRv33aoC@LwX5^DX{v< z0Kg-R@_vjAk|8ooM#v};`+z}AVi6Z{6A$qcACaVq_(^~SNr;3=gtYBlhxoyE{D)Nz zI!PDlCOxE=$hlLw^q`IOkQg!d0UrsGR?_J`pGcy z?px1?4q8YT86YFXvmXRVGwCG#WSF?$1b$+Z4$?=4i0f_8L?Wb}^pZhhMmJ!wNQktO zZW1NN6!4PXsnhTm#M%KQ36nO`Lt@0-1$-n#T1hvF5+e(|BuH9F7a1U8AMlU>X(pYd zp9~ZCo4`+O(n0#j5OKW?nn;ASlU_1NIPw0D*X`F!uVr3~y;goT_iFsr$}9O-lCM;Y zg<`5`6pQ=P`|N$C&t^Uw`)v8;+{^KoD=+0=O1@NmvG8K*MdQWd3+Wf^7fPSWd?tn} ze!1u4&sUzyKbL&2`fTCZ)U(F3#ZRX{ZKIN3=9$XU^hQ%@SG z=9ezmh0 zLOzu@^2NRBz4qSHgP8|o50)RuJrIAO^5Oi4qaQA#vS0lE%6<9!lJ`~bExg0pe(AgH zyGnOv?i6prfz)ehWri58>-hAu1{TWTwlB{eVu(>X?JFKY7Dk@(gm3dVi%OtxpX{T*^%Fo+)>?L*q+*M zY%iXlKHomSbYAAX*m>o1bLYm-t!&G0OKz*4lRYPXPUY90tZ_aIwZ?4SdXOpwlnZitJ#+WHir>E`dQYw>*rOHz~rtGQGrp%_;rt+D& zGvjAgHs&`bH&)LmoRK=iIHP!a`gHsB(rKB~VyBfis8k5C|^n^W8 z8qbW!#>->5vG`aenNKE@)kGnYN*IaaDd|(}Q%WaiPL7>iJ}Gxn{G`g-{MzW+@`5$e)lrp}MB9Cbh;`Q(T>1ZLcn^%B+g5DzD6~jIXR5pFci%eD%1(ajD~s|7FcT zo51^`r>_+-h6Mex7t(aN%a^##qM;s-CgR+bj7;Low?3< zXQd-DbCyS~IP&)^ba(CEikL&NnBUt9HRo*@j(=q$75u6wZWW z;c_S!iiaw}d@vcT1`2^xzz7umX}|3+HD#J&O=X#raar-@eMw){Tkxj5hPUWRdu&h1 zopHz9WmnD>cU7#sm9(m6!AzNkSv1myZIna?XZY>6f3=#x=l>VapZ`0q|3CPq)xr0x z9PjK6Xx<;`H~C&MMQI&~(mJsA{z&7`hMaHhMKu`%Dubf5j>@35jK-f0Ip5ohX)*>e zN0io485E^;VC{|d3lFZP+P(SyXZUQ$`R3lBCS*v3P?XkDAygmYc;9O&mweUE5DMpXz!2_F?g^&yUTzehD8OH>F&1s@ec^&yT{ zvP2WIRE1Df@KGUDAL4iie5oen7!^WM!AFHqeTd^d@MAO~%P~uoR#71|pzgCw&?RF2 zB8!8qWqzA7GqquzdVhTWQi*qIGFGSziW(~_gR&gWRRY5$IdAhBTgNw@q23>#&p1|- zaUA9t5mYLJ%Gz=q{<(SWIzcSQ^0U+iXFlZJnvhkPeOOSb3@B?MjS8+H#8I{4J(`Tw zn0rW2sq`zEaZ$rhZ)T<@>(|wLH4$snVo)h4imt#5@oZcT54kPuM>b7QsLvASSJnG8 z87HU=Dg{N+6?lbUIi;%)i4gM{8)s&x)n^Iw8Ot;oC#no81x3*nxD%_Y@#|`QYSS6& zvxNDKxF%z*%AitE6kVCm_<%?^SdQ_j^-1-bo6lIT$v8=6P$?*iu0THJSL5@vLvD+0 zaN4mkS)s`|S!GZuXh2!ZXtd9rnVNQNOODfIBr)HRpi=2qUM+6Ga}qsdF%~`qo<3`Q z6@N6ps*cx0jHw8Usxi>7y!NOOvu8Pms!Yv zO~wS~8x$0EV_=i=V%5YCUsJW>H|r+r+s0~5!X)Mz5)@@)pkG;Q4HOU3)`uw@s0JnjkTJL(=p$Opi&uB*4o7-heRxl zg@AV9+;5zu2{}WBP!x=TL1nFFGzvk>*x=Z6oU94is6r@8#;6clYa5M1&^9(W8pkP` zkTWsMu%M_J0|QE~u8TyY>T=U(O`cibJQA9WO)7(;XpG9BTw9GZW|2|fK9ZV@DaikY2Q3PbB^OkbW9VH!tBF>qG}8bD0hkvU~9GJu#oxjLe@{Osc(kk znv7|cK~XhEWl%mL7l_pjGN#WOTV3A{Co~x|DubeEjLM*VLKYt6`0Rh-^Z&;%{{L!z{*UYa z7e4?0G_L(mV*2JZ#st9BjOiuR{#%dfyZGGyc3k`4qptrq#NYm(uWd=<{Qr#;4_^Pj zWLdTTd6+++-8_wY^Ywezb($5lRjnY3iZ^Nn(cS8>?eOE<+ClW@jR>hf`aD$=au#M8 z78E6KAWGh-kX?vrbhNX1YNKP^to53VvsDH~$s3hHcVnx5q_QEkR)Gx1s975{8Rw`B zijp@fgYL#_=|}}>=QC!;X6iQ~r)e^_VU7_&QSt@`mHJJHqnh&Rnvio<2u0Bw6+-nP zj&jOpXhP0YArw__R0w6r|EKOv;M=I~_3twpTbi*XOC#B`o`tN@4`#eW> ztchb!=>7aZ@B0qSH{;RhJTqs`nK_!@ndh*zzTY%fe%V+rztJwS5$Q*g)q;duJLs0= zC`79#Z7;;;S_XwW-9{pTWc`A~pf{jbGJ#*qSKz$wH;o=gY|-g+7L-?!r8XiLBH?O5 zV$>VZEy?4!a*E?vTHXTfvyr$+N{|@yMoN&BSU-itqVjue+(u$G62yo%Qi8;YH~Si(Epi{v9&)CQ#-&n&gm0|WAQPy898Pk-Y3z*5TW-cHsj(I}^ZllM z8uOQxSCEx98kb8A61K5YgQUjf55{8i7FmWBJljU&3aLTDHCAenC5=gI$UJKeImbrh zN~Gu)BwS-buOu}%#=aSS=J%V%emcZH#$=EApkb*ZYiu;OAjJkjdL;dlYfwct;M%y~ zG+MBFd+`vU{Kmf4M&u?bLV5%Ve_D_tmm_kp-?UF;$yt`?OY3Yz2Biq;5u{I&BG+Kv zZyGIGy}f7kmjAH5*hV8IHAs&jeUhcznp|Uh5XlVBfQ48{Vm4=x5{0oVr@gRubYgNwmf0QSMf zU@QRp;9@WqfIV!bPw%?m-MDwr@ZE+@4)>Kh>aOI=keKk13|JODCQJ zuuJa2jwQBlKiM(&e?6v{&W^eNSH=?Cx1a2utFwEq&hEK7yXWfco~yHauFmecI=koU z?4GN$d#=vzxjMV&>g=AYvwN=2?zuX<=j!a9tFwEq&hEK7yXWfco~yHauFmecI=kl{ z>{w#^_Oo&rUvd&If}M0f{g`4pJL&#k8B1*6es)r!i(pq>on3WxcGcC{Raa+M-GdlY zOlMbJon3WxcGcC{Raa+MUELr8M3AT=tLFaCOm|fs3v?w#h!UW zt8kGnFX^o#>%wH%BuypKE420sva1r*U0ggwCug|H!@T4Xb>#73^2A1Rb~AZOD;YD% zxuP5Fb&v}j{opnanXV?c`^g>kvKxyIqJnS|I#ETq2@l~V zstF%q5CI}c)Dj`0j;JTXL?h8eG!rdED-j_~qKy!H0EKW6Dp5gH5>CQJXoOBw5pKdm zc!_GlN2o|td%2Q))kVIpQO3{3_iD%w8_3W3v9r;( z1yrJfs3cs3PE-+Y!b5n8YN7$()qc`M{$~sM^H!$jz-QWTo#gK{^7n0^OYybiAGA;A zV-rFpDu_zLNw|nA!cBMyAK@ngM3AT@LPQ4@48cVW&>D0udbrq9O-2l|y@u?nCl3vS zx){ddM+&Gr2$g^Dsw6+>f0?A@bXGAckke;=eR-v5AZS*389L zE`DDb0e_&9dn(Bvy2u~vszF@;u=wi$`P&+@7$SdHPyW7v{DWur65*=a z?8QGQx=Vz1y`PJ9jpVjw@{Tt0Ua=P(a*+2|kPo=X2X*pcH~FZSeB4Jq z=?C=y7oVyjp9zyM8sc=JeLeu{L869eMQF z7hAYkY~`ZK#ZSim#b5sSvhOC|Ro>0M6Msi}C-Zjf?ZR8Bx1w(q-b}w4d$agP=AcFc z%)AnNrSNiU-&lb87n3g!PeeSzeYCdL3vJfS?1c|7)b;jz?X=41IslaHE@<{n8tVmy+4IR0?)q4Yzs zhl&rTAB;X&*qPoL-C5X?+F{~7fy4vK1KI8I?aKDd{qg&i`?Kjp+DPYyl0)WD{=U?G z(fbPbrtgj2Tf8T8PaNa_rS3NG&fS%~%fRS=@jI0}vv(x!Fz(3Rp1j?>J-;orExN66 zTl%)xZN;sbt?{kO*6gkETa{Zgx5REK+?={OdUGCc2pFl{U~bmH4g=^E-#;z@H&TNivRyJp^NnB%Gle;>3 zwRv@ZQ)*LmQ({>!GgD_q&n%pgJ|lKU zaYbfDe8u4M=<>p{^s?BpVmuR%$CY@tFYzhf2@s323lj^Cg}DXE1?GbM{M7vD{6cTK zH`ZI6mzfuzr_9UFP0Tgs=H?{lm~-;6R4f`R^rU-YJ;hTpr^HVgJUM!DVRm|UYOv`p9x{R(|XR_1m%y*H}QO@+pEW2~{*kZFiFC=J3#p_|1F=Lq254d{bg#SGsNP%{FAcL6PX zfQra%_(nJ2=>Yjr?P$V*~I+wPZfY47gIQ~ck-Dd_$w@^au4d@!siGn#w+%BMNoL(QLN^I-q|!hL6TL-q40Nl&2^ zRaHN{uLPm+LEL=q@iOIKNH12Ze@$bEn)?ZszaVCPEc`_lr<%|8^0o>CcEzP&_3!=mFxFNbi;uJt19>%Lrs+xA>3!b;x;5q1u4 z6yd7DYeZNZxlV+G{aZx18T%3T?Y>2X4akSvcijOD+$F+h|2-lc8MqJM=-wg1-r=1h zT;KN)zT5MN2z&NED#GEOCq%e<_mf=r9JU*I9=eeivGL$b*kso$NOaHZ+>JLxxN_t} z?8e|n_`v_M2&;QPE5fe5yYT1m=dg+Y3nJV)5ZRaI$QtWW1&7DW--Hi4_jFGFP51D$ z$v<=rj~Al}$p(97O#aPq-*^F;@J(g#u*tvaj2u4shk?iulYiKR6Rw-p1LK7zfRi0+ z#mNr&ak4}0IN2cwPIkzJlO1y7WQTN|Y?P)g2v78-upLfzC^&+$)`629>cGhkwc%uk zOq}eHF@W+%+nJCXr#)1S(;m`s#zS75@lXTKcqoK3jv|WEsq~;=2Kt}Ix{VziU1t1h2LW!*qZ(+L#N^BKMLCA?x5b~lFgep)9LVle4kTO(u?kz{C^^adj zaMdh3cGuprvu^n$SboYapZLnpx8;+@@{?`(q_zA^TRw4?pJvM^?(%bN`6O6=f-Rqf zcy?!vwnpS7!NarL$+H{c*;V}mBBb%`dU{bln z>?(seyJ8S$*Uhs_%b}3Lvs=Tn+lopZ^6?Z0d5TS*VjoX&BTuo1XV=FQYw*N&qI!qg z`fzr=Ji9@j-Fnn?~PRl1X z<)_o~NqFQ!;kwhS%1VUmWn14xB2c{>*tJdgYX;Lm_fx{(h(q^#QFQ&)-R}y&+W)@r zD?O`)%dGA!RX}{XCh}zw)Q7$!g5IH@ilDmd6A^TFJCtC>$QI#RIIhxxdvqW;v`qwB zk$514!~+@<4^(19Jv_EE?c6ND&04rwEjM#`Dk% zdbB+v8xs8~;d*B5d$l||9}lO3htoB<1&<-s@x64Q4As;k-5L|=*3={2nkuAQqd?xh zZ!Z;YR>RFA+^mk9>DPtGS_SNl#^ZA*R>H&BENw&CMcs zLQ|RM-XpK8_bw3L0IUdH{d&1yf$>W2 z<>crShs=xd7Zv%u!Fa)VKKEP_PaE>jrk+hcV?L9|vxex?g{RU_#hxne^CnQ9%;GtN z@kH+N%wzG#l*h7+`=j?4 z(&=<8T^z~`#fOxk?0t#*jQeu;Chs-x&EJ!{CyJ*E>APch7w^j46~9ZtbA`m6#+|u4 zl6RPQg=Y( zCSy}>V{)UpF@II+s_0dP4e1TB4aH<88BZ$7ES?}31Gy`cSDIJm@eCnzc^pp=vX><; zGcLS%FgT#=E|q_ zWQg5UygPGu{BGs$>|KewVs{STF1Gb=-E~Xk=E1=|TY7FBzFu6Hy*6>JacypMaXjWj7`^8XI$0C9g8C%5O+*h~n8uIvGnA2QmY3JRQki znYhxpGPln?A#vHzCA%)(yEd|>@1nuP$f`Z(`_Jn+$Y&VJitO^la$|XJS#p`VEFVwB zqwzvtx-ZsOT$))LU#cw4o*rMKEXgiTEH)PBPD`F|-d7sr+_lt*>!e9K{7X(M(o1R4dY zOV&%SMX$H=7fD7BZ_qFNgNB%Y#`4}(OL~_qU3T^=_PHtVUO8Z+mxfZeATiD@7?hk$ z&n?`8W=U`EX?QuKd-|p;u3EqDiZ!bv7hRm#aLATbbIzRJeF%4Nv>#5=M*n`PPht>U zsZSoPe)K^4(Q^F_Hu~G8K8XQxr9OGE`m+wCKdW5-DjWR=q&}$&GAMbl`bQo}|HyLv zjW+r_q&}$&G9WpbKC4lrbpGcoMepqc$sbcLzsW{^r<5mkLDou6ChryA!S;Rfi+j)P zU3{QDIJSHbuD02O2cg;{NL{j4^0Lt)u>W<0dvJ_cENk4n-ubaJ7O$8t|0q?5NLOV1 zuUVGAENA5!o1J~+^RmMu$HEL*&{oy`tBE_Z;$5X4|ma~s>IdtgH)rY66=kB`6J%31 zvd=@RO^_HASjv*0QZ_n4_GTN|mmv}sq%Ikhyb2x7*B#)MB^GgXZC$n;@xhi(%vQ>+gE;(}6QL7fND(m+C zKetVy)-Ie#N)cUPon(2+C9NaMS8J3M%zw+|Un~ysDVy+%-oo<^%YV5#R zS(^k2pCqtG^6%~ae!Gp@p-^ZQq%K)4IaTj>&%WO8-N#veX53*THA6~~x*&a$Q+0p$ zj(30GPwP$_t(i!_1)()+kzUEa<0s)=HbRFX@diQak^#ws{YiKfzBg7b?zT}n9GkWZ zQkV2ge%hae6x=uc^aoDI4R|jg_yj!rzwUIL^pVr?jbGv2{tumw-~ZC-*oHZb`Q=|Y z9YSPb zb2++I{Oiyh-Izxd&C#Q{9N*sUbgUnCI>eCE@vSel-P?=!|CUqm!+&h*{+75lhX;q4 zsv{SaqSB-BeynZoZdH82fmNakVY@iOvCqk;q_Q6XK5iW97hc45vFP8kNmL$P{ml4t zO;6vocyha|LkSr8Z2a-9m+LFIzGioeQh5xz7i>XrXeLreq|bqg4>Cjetf@BgkD_uR zK0su!B+QTWq3`3_djBu*=zjQ*2$l3Zl~8D?MhUrwR&#R`|7{uHylU_pA`}rnz(fAN zUok%OXAx@hYf8xIfk9*4u5Snr4i53@>N~3!j($z{bAXgO_yf^dJ@hNl*)sTN(b?Ls zDV;TgA*Hi5@-5*@GuDFd>Z8%jQvV2iP20UkOt1C-R!mp+{8da>_f#p3hI{vS#4O*gpNd(P zdp;4fw0?&&t7?~Dnbn9in(?d~U)ND0f_7#}D^n#}98A`Kvg*b)-r;+=U%KydGa@Exp^x$k8pF1 zo7Z6<8)sn;aq4i02i!yKp9lLl+mHR5?Zp1g*0F!H-Ppg`_5A)8eE){(XXN=fU<%A? zFOujnkVKCQN%T}9i5?G<=n0pyNfxxpc7X|0Gl2jT(3pUm33!=61NXr`pOJ)*Nd%dM z&LlicqMAuGF^N(qiLx_mVDp)^*nFlNo6oGq<}>}+d}bJ#T<=vU6hE2Q4&-&W4|&}k zL0)&8$m?z$dEMQBZ?#T1H7Ymvb90lMw{i0-Zr+H^!{GyKRPaj%ztqMrwew4EeyQnz z8kO8Uz|Gsaxj-@R_HgrNYBU^J!^tlN`K1niN#U2g{8GySHC)`hhMNmirEUi|ujb}K zx9ohpw#C;pww53Fu1QFvO)M-2Q~^{`@l8AXAWH_e3b~4 z`aB3q`MO4K5x!P>L_&-+@$ycH&P& zOMNYoM})6!&!fWUMzqwYAX@6v5H0mJA$o;Wo<{Nri2EYl&*5vs&kLU)aZ_I%;-Aa3fbM5xQxjJPTAj_|2_-^CvEf544Dgi!xSSP~x#U*n$7;y8Bg zLYrs!bHZ1Fz_~Bf|0V8oMDZzu9g433K~!JI;55b8I(UfU(+~yqRgcB51ePFbI z!uTr3Sj2jKl|B}#9$(dg6W|K77$E;W%zusf-^u(BF#lENe~9_t$o!8m|2vrfZOnfs z^WV+<7YJ1Qnwb9~=6{I!U&H(lGXLwC{}s%Cj#lF{ng1Qke>d~LmHFS!{P!^bJ4TTI zI`hAd`QO6)?_~a)%>NGNzrp+uG5NeVzl-_r9nb%a&A zsv6J#u~jbQwo8VAk^ddc^&oS-g1KJDTyJ8oo6Pl2=6XAG-Njt@GS?O6dJA*Cj=5gP zT(4!W*D%*rW;n+P^0hI;JDK4gW_W}d-oXs_GQ-=M;cjMl2lKj(+1$x&4ltW*na%CY zW;e6h#cWoY&9%(t24-_R^U%RO^fTu=nRE5bxi;opGjq<#ob!z5+}JTYkpWIz=tetE zAs5<_3qc=pA=riYUxPv9La-jW5Nt*+1Wn{ZuobxwRFMn84pjSK5XT-2;@E=*jy>qd zu?Jgl#6c5B9Mo{c!6qDWFoGiv>Nw(H8;&^Gg5wODIL=@-jx$(=UQWR_9A{9)AqG45 zW+8+F3w8{B4nxeLa0Gogx}YCDmx6UTx}b@p3pU~Cf|WSBpc_Yr-Q9$XsJyP?SpL6t zUf5qY?j6f{d6ulJp14|`{E4e&ahSMT z7LbXnWs#YVcQiFUDRhzL0q#j&~ul&nKQQ@1GETw(v|E??V)y&O9A|T6sGA zRN^V)saz(RF*Et$6yAv_Jehtn_GIyi%oB0E6_I^B{aF8_hI|{sd?f#H>fz|ah0*sR zG7rWdR36OkOzbpv=5{3UMnwLB)C1863ft4$W7~`OAIv)usk{5`irl&P_FdbO+stkG z+fuhhZ!2s~Z;fp&-kOnbKV)x7++y64yE%EYiT58;sc5P&m>!G`7H`Vj6u(KiDZ3@H z#n_U&F?pkTWB!KJ4bdA4*Qc+KU0=K|b6xy8#U{$1+SqqhWW(NpUHkeeM6W1Zp1wSG zdGWH$W%0|D%d(dyE;TOA;e7}5lKlGA`sn%s-gt;zTwIq~7hk8W%dSnVHP+_VB-fa0 z@~cy;qpJ%Sr7wzIRJ<^AVf;en!fYauFcP``WWU*;UzJ)FT~)XseL?Jk;`y2L63*5q>W%tbU9v73D%7TH zW3|PaOieD3448qukusu2+^6`m)ro4OI_FJ#%ij_(^}J@da?YePT^Xw^R^(MvO({`a zH{(^`n>JtX5nD$4|1&%38*6n|8|eflaV8_RU-x*<&zPzUUIVM_6Lq%^Lt`c z?_L`{dY^S;Bv|T^LCMMV%Hk9U8Na^IM*mo;Pr|ob>XQenf50%6B~CVEqfd8@ZfTVX zPj9JD9<087{5ox;Pb1K7X$K0!Z>dintiFBx`hFYz6Qn)~GjPz5oJ?OA`e17*Qo8(% z6$gw`9#tNo*>0nLqEshg6E4-sgHu1?xwpjV9 zh%F(y9X9f_r9265aWE)3nY^Xy&0BQlaR-W!T4HoNZS+ru=2}6*cO0yhoGNmE-rpCw z9}D2I$doNd$Cl@w#^Wh3HxJtEdJMbUElAjzgEf+qW!>Kq-+#zv2j<8fAYpbccYr*| z9XOcy{=+sqFjwvX2`hBD1LQ&PzyT|dCBFZN%?`|yJ3zuG9SllNwgY9Q_aNi@kJ{)n zcGxXQxTu2x$;tG~D(_kIRxCYWeBE;8ddx+s7g5CplFJR;y zm2vDkRQhw@Wyz-V!LZFfF2>$4lWB*@Y!? z7f5)*%UvKp#V#E1GGS?7J!P{Cr^{U+;TSJ>f&3J^VBf@g+GZD)La-Udg}Xr3O42ow zokI7U2H8U`D0(e@QMxzJpI?4^dd5a^ITCFUBplPhu;kz0@8nqG4ue{| z41~KS>m(=Zo59jkH`X^}<;s;1YeT<@BWE3b_{D8Jm^xzcZ!g-YGML^fZ8|Y#5|%xZ zr2(cAOrm^}_J;w1G16kImd|IekmIJK2a4rV@sf=oJI4eBsY`k#Clf3=DO2!R{#+Y7 zs+Vm<_yaRg_G8m4m+eJLgR)V`e){(doQ}Cx)xPAo=5zDnx;8kK>Ys@%rBx3z;yHhcpmZpF3gv{<#zlMvH#1^ z2jDk9bU6kv??wE70P|jfe=!Sz&t5op-U7t`AMdFc-_emB;+M*H`8UnudI#m=y6rTP z(;lFUoVJ5wI%_*QsI&GU$8^>n;-Jpj!yMIFdxXO}YmahVXYDb%$Z3z$MoxQzLpy6v z2FYO#?yO}vy0i9Fh{y-ZU% z?G?JpX|K{&PJ4~Ma@y-OmeWS)ET?5@EvLOfZ@ICl_5sI!);`0*pS2HZGN*mS;h(jSIsUWu*&1>eM}XFHA@Xx|uuyW+R1Nrkh?p{ychz% zrGR6H@ofiJ{gX=ma|QV?mE^xV$?v$xf78hC>g4yT$nVpGPWyM7&}l!Q3muGc$UXF- z(+V`A(|$-NI_*caqSJm%FFNffG^2xY4f&t6qtkvyKRWH_G^EphK}S06m$anQenn3@ z?bkG=(|$u&I_ z@-G$SUujXN{f!=V+JDoePWvCa)VVGe986kMIGVKP;BeBK%JHPN3Jxf(RdPgW&B-C9 zHJ6{%IH>!(HVW&0I!%k}vBVemSMjWK6l5G`adnMW7Bs*PX zmqt$0$>~+(A#U}exo?c|&ea&9L%uZ!$ec7yXB@b$o|4v&$13c{vI^bz%(gIIAiynB|N}AwlXVV2wJBK!S+PU<> z)6Sy-o_0PR@U#nPfv2sa2cFhX6Fe`my4f3?B>5!*gLyJ6Z zGd=ROYiW|FUFRpSH^>_TQ+4Fc_2eyK^411&Ya@AE6S=LKyuF3I zqm{ffLf&PPcej!Ew3GLCkoR?xLkePnTG~P0uYzNTvAu$;9;hUDILVzZ@Y9wE7 zB424HUu6JOd##mxo&6QG5k}3mEJL~48|~oOVZ7PFRd02YZ+DUJDBa+@4)Q&fe7}PH zppyKIll;&{ex#8f>*QzY4596!QGk~7ke~CCpRXpr;3L22C%?qk&9yHF$gc#+f2bk9 zT1$Q{ME+wP`Sp788)5RB4dm`dGT%ggs~H?SjBmGa)jze8{~RIz#U%f=jr>kK`EMQM zcRR`Nb&=m!`oMp8kUvn#|EM7MRFVZJ`9l}^BaQsAPX45d{HdG#PY?MsFZuIo@)thx zmwxhB2Knm%`I{j5+Zu9jEm;ha|5XQ$9menKx$2WJ`TGX)|1^?+Xd?gEO#Z2b{BtY$ zmk9Y+ll)s7`QPp2|8#(^^`eu1C`v!*aFD7>R#cFcm88>2x?H5Dk#N%mtEx!1oAh`{ zua~T@CVf8A?AP+1N-nHIdEDWJ?R# z+Db+uq-m0EZDe~p+0j9Ec9LCP2PDl+OO zXL-P}!#L8*RYz5mNBhWQ{N%9)d0c=zK1iNWL!MYmo)jWy*O4dJlc$8qo(3}3NX}^@ z=Qfk`TFBm3a(;wdV3G^l$VKhssU75LVh~)ckV_oo=_nG1M$nyi_1wnFE4cT8yCPL(eb>v0$-p|u8O?gP2S)kZ}gH|WSf6I{#k#W82)U}XA2*vJ~ltjeU$h}`6vTtfWl`| zpBece{z38m^!w5G^Y10$43K>{{%-M|^gGda@^2^KHr~#@6@RM;cf#nKd3XaDZ)CIa zY;hz#5*^9Eo_yVSz2~*UtEpGbS97lXJd%Lr{EKidpdy#eCDa$h`t+{>~MUzh}e7d$@~*Z_ylAhk3U{~Ed5wi z`VktBW*><^QhYd#_&d=U^6|0mbXma2(9TF~GPs3%|i4 z`~sranHe|=7FMKIm@9I47hhSP zfumpnZ{nNr9Q*{8zRc3t(!%Mf)6LU!h`lRIGK*u23#X+{8#y(8YH?9|QFKv$VG=%q z*#+?h#rbKt2yGw=;89Gg1UJT`Ys;uz(a%+ax<3rD4nGVz{&;z;Gl z%>fWYmae@rHl#i1ZQBBl38^-#9#bSp2Xe-tLdi%+E;9FlJ;Bu`e8wI>bCAH$8#3 z{4>*Hh~1~U%&xx9Vn-Stf%*1iyV0J7LtxQNBZ8lYKcErGw#HkFZ~=(6Xf<+TmcKUsamr(SCgnwYBF#IECf=B?&shMs2CZ4 z%wO=Oe5Nml7{5}T@y5IZ@B+-bMH z+$)#uACVl*M>k{7VP3TnVTe0W7WDSYWqT3J*f6izh%k;FD2r@+<+8nqWpJ3+ZA2Kd z4#<#oDSYjf%l0C(%HQ!Hu@PZRIw0fIr6{#mF58P(hKI@8h>QoIOTlQb3`X0FSjLBW z!$yQ*-qx~^FNT`Nn$`G^Z%OSpjXqYKH*cBcv7+Vi|C=^~ry$LMAazNPBn1<)U|S@m zV5OKh&-zsHEgOvl#GEyZWua+wlGP9b5b zj5!+#MqBCW&Ws}6l9ZS=g@mOpe$GaMG1Wj>eAO+NDG{AQ!crAKZzItsB}iS6Zb?dX zPa$EciC?ghScYU<1&NWgLA)9amhQh7V#zYeE2E6K%_)z#Sqv(^Xd}qLa6krzOF?3< zT%JsDU&L*WCF1ra8<7=Kge*mdy)rUvFJh^TU$zlBLyC~4IIvg7f$c>s)$uDfB4-i9~8R%5?uv|^&o zYN?o(u3g`-5j-Dh1_X)mutAR`1uvYU&1$We-?Y)VKx&Y>AU%>Ljbre)W!l#cn`5b# zyKOW$ykGz}Ak-i|k|mAF+pKdewK8v`(JwVfU63BhlE&n1);Xn0iS7Ts>Gji{j?*yz zC&vD}1#_U;<#-k2|1HG)qjQ~(EttcY-#W+XSc>@<82j(qu*(rT-syPrIH#iz^RJI} zI_|_g4f7X{aXJ#1f7|JD+|`S9m_Lv4|5joC%Uq}9LCi;D{^lH~kY7! zp_4bz=U6U4-?q_UtqI7wgE7pd23gXWg(b^0Uid86pMSE^xCn^^jC(23gXWyn#N)a`pKa8;!L{u@zm#s6k?canQbjZn^wedZquX zjUqn|z(R+Lq+4=8UVI|>+cFJ~HqfnCpYPa6T#PgVg48A5l9ZUDfo{F{{F{x$dMQEb zf^M=+?^k zeH#h(atpwZiV~z-k`hxi(C1j{;=kKSTrMR@jF&DYNJ>o6K(|)KAJ|A-Atgu*mo6np zN=(r}x7Nh}u#p%*f~`oB5~N46)Y#w^#xjkz1JFZlZg~UU@_xo18^I(}3E(Vn3QX)j`F3H;DTaxeHSJGa@(iHfSjmSnRLSlG! z5W};B_9B)B`j2fyHc1f@!?Q~f(q6=JfBcD!$kkGW#PIA=gtQm2RLY;)h+HE@NDR*| zMM!%Q%N_DRZA3Op5fbCGOA*pu#Bz)LnT^PGNU~Ls7(5-s;OQW5!yDvHAAgKbqZJbk zbW6pwytwpp8^P<5TtJW*Ngeb^Qt+ZF8tB$~`3oD38>9xQ3(_N5(l`cxTc&+&q`8)A z`AZv(8<9vrkh-KtvZQgeMF4+{YglUKuWU57NDWdKB*ujYOBzRE$uf;=SSsbOZ8UB| zA^}0_k{A{q%O#D;+pKdfb@Deh8iP`U#OTK$Mui7U8nduunZ}R9QYC+Dqme=)0YU1L z7!@ANC5_43taB|ja<7fX%~FHZ1?iD2X-wW`oolI(MH`JLPmP)?s`64*sK!#9i1bAV^)( zEeQ$qIdVLEvePjK^MA~S=O5-U=66nVI_AxEIrf}}b(rfhzjZ2p>tp`aBB$ea%pI8D ztamw1U+HxG{4A&AR?MxKKRDCrI0N(EGn|gQFgMh?9Pb|GbgaN!Jksg77xN6vUzvs9 z`j{POEp$P6dxr$lw1xpUCB@+S=Aj$e(Po=5C}H z5Tq{YmSpZv(bl$JLH=wbaW8jXkZ{olJ(8t%!)p9(ndH@0J`A5%-qt?;5NCGABl zH+F@OGB8ahvIC#Nm>+~mKj@XT7qQ&g9X296r3eWteknrQi&$>$s*T7)NU~Lsx}-;v z&4&$`_nSs5CfeGTiWw`fm=!jH4wgS<*NL ze_N(~ZM%7vYU#Amcoc~Q1PMca&?8yWn7pk$&r&O0HX4sf4HBOFQiCjM9EByzG=3bG zN~zgsJdQ*Hf`qL;=#eaG9BC22ALAO9I;q=eJb|ymE+2$-KIoAwY0SdkmT6qWQYEWw zG@e8v0YSnaAM{9;G@=#({4uU!sgZ6QjbVHhzV{$J@IjAcNn`T1_B>04^w?-Tg>+j5 zsY`k#?c3Ux8ab!DMtW@&pN3XIkh-K>azNI{2-aGrv9`9gLRQ;IJcBd>g48A5l9ZUD zt!=H3J{yT=r349Ue$XvRi7DFJ*6QfDk$6r@kZ|Ld5+o(2Xlu{2)JDTb;&~}S!g*gx zkd&CBtv%0D83Q&FFGvYe7o=N~5>vFb=UM7v&_?1#DM9LjbW2iVis!@gELE|_M&czY zLF$5ZOHyKrHmkKJ*4jwCf@E6-i2(vYk7Vioy9R$-CV54XZPwoMHtXE-iWssHd=)7M z1c@;MK(FLvg8SO6y_Pm>osGzAQiRk6>6Nq>vD_T%ZA4y|BBU-zucW<*G0|qVRLps@Vj>CgZM@fi z1>W!1F+X#@({T#s?;`HM39}#b%ZU4*(CBjf>j_TBM$880*AVwV4fD?s_uq=S4fDt} zmt*k)tecPL0GK0~KSbPrCFV~M_aDOCTH|tjupG|@Fz;Q4X9JkKFy|2WKM(UC5c9vy z508Ov{QmEDh!fiW{J?4W{r~N`72MU*?|*CjzttwQ-o@7fg488FlFY0%Q?$3O*OZ8j z#(PqO)CK90ENM*M-tM(rQcN3-_oW7@3(_N5(wMxx-D|m`wApBUAT>x`kRHjB#!>j& zGVNpK_US`>XIJGlE&oi?Ox0Eq{BwzL#aXPg7iq1G$wCv_gXF|oi-XD zNexmLq(`!(F?oBt*K#%KveEchYLGgNs;NPiG$wCv_gXF{(`+<$A;nff>XKeb`}Vfw zYSLSNo1bo@n1fb8kh-K>azNI{2-aGrvG%sLLLOox@j0Xs5Tq{YmZZcK?QLs)Jk&Y>wh9Qi9Y4>6WC# z6zy$mP3*Rj_$rcZ6{Ifdku0?x)?%$?8gFmUFK=&KT(zP$f?q?50YU1LUdhP>_qDg@ zTiV;RY()N1ijcY>y^{7KmYd^|HX>h_BBU-zucW<*_m}qa8SInrzJM07-!GA__0YU1L z9!UzWoubWZt(Pa-X#9)RAay}{Bug5Tw^`>~s^v*G8viOaNL`Q~$&$w8ZPxjgS~=TB z<2zD=)CK90ENM*MW}R=TlqcJ0{F~GubwPS0OB$26S?62owHU5(jHOx|XlZ>f-TY&3p=bXzez z8Z}6-qPxYqn(Zv<`&GKLF|7e=HDake?R6(yUXz* z`v0%Q{0ZXzLzwrE|2O>j!EZ0t`^Dzo((ixlvk*f&L~C)oT&(J$8n~I-;Hk6OBX@(M+@utwe+n{eVI^2$iTHDhVgyB4|RW(t}W~0=S1< zrUju&2ST-)p#Pvs`$5$pXg;XYdr+nIpi1XKmBxcAeFs(A4ytq=RB1Y>(sNLy<)BK( zL6wGssu%+N6`CErS+dm=RcLke<}_CRQmm?wEI)(_J=);aM>iCUIpoKK}UpGs>!mCk%Bjrr6FVG?abJJCUO5?zF{7jO_NQ9)D^PQpddiBF{ipGpHh zmHvAw?f0;U^xsoyzo+^Ln(wIwLF+x0&U-42_f-1sskGfw>j;|esr1}aX}PD;aZjb; zo=U$xm3Dh7-S*T7VG?abJJCUO5{iEZcAZd(3Zjy55-tFHNNYWn&Uz}1^;G)mskGHo z>8hvFR8OU+p6Vy)sHf6UPoedMaJ?RGR3i z^w3iygh{j!?L-IBNpulPx7Km9}?k9YMD{m1cJ;z3x<6-C+;ub*IwmPNmbGN~1e9LYPDw(N1&_ zodgZ;aBl@vqJpR-=xv94D?n#E+*<+q+Nrd)!<`kNsU7aD04?osX9Z|zhdV1kA3NMx z0lL`X&MNniE_S%L0`#!My%nH?9qz3F{p)aV1?XO<(!5Tkcb(csv=bdfCqdgfRT%&r zgi2Hpm4uUU5wxpQ=~k!GtWKp@ol2`Zl@@g>9qLpX)T#8RLmtwgPNhGc8YJjWr`8f7 zg4T2@o#|8>)2Z~OQ)x@5(v?o7DV<7BI+d1mYJ@O}Hlm&AAZSL1mIL4*YKP`Sxh;f$ z)HcHhG-xngt7~85ndulgo#$7lW^_-5O5J*B1nXZ zRzi#bPQpV3hWF5dov7FgR1tn6L^Kg?giwKzw-aw0Z|B}hzGc3Z ze=`NAyuuslH)3xTvl)2hDcS5uV#FB9!7a~xJ^xzjwJ03((yzu|ExwX@B@WNL?8}Ll zjhAyTCE=Qve=+r9^u@vpY53+9pU*rWe_nY$3+FuJx!kkKXU%8x@Xm`qQ+PW4bnNNk zQ<4;LTGJQROOftOz5LF2*P&g4#WXMRWj4r52|f#d_`19>>=MYk93Pv0NA zznIRX<7p+G9ZC!taMerRXWo~;Hw9n4UGUX2@5$etx;uJz0nU1{yNY*a?u_55z*{eI zhjB;l_9XoE^4n6|qT33$rQxtw+?v@M->PiQ!eh_4b@-O}Ey^v~n-e!1aM??y%v63b zH5i4@UizlkO~oylEpa&QWp7N}Xxx~)A$fy&L;m{I_0j7K@Y{=BSG;!c+UT`~&FRfC zIPPVxiC?2!lf60t&%NBHZpgrQPuY-7CXz-nH;^1K2l7|; zUuj&KyCQjoc}4#6)aB933zwxYi(OW{G;?YEQsvSt9Qce&a_f`p&GmVB@I@~!tV^$p ztt+n0tc|Z#)@IlAtSPR}td6f%R%b6tTx497gBPE9VLp*cL=y$L@x}U!t1_$Ns}%V0 zB`z>7$eo`&--IJy>b&TAg>%#AM$X-RP70oUg|pLV$IdRU%)pgTS(!a6ah3sRzT}za znfWtPXGG!6mtGNDQCyx`UOpyXGA`m-`12Wkxuwaa=F&VI`l6>7mZX=&mJ}Cf7RMJW zi?gRCPBTs`A0@A_FugFgu(%)tuf9F->Wj@U_GWtHy$am=67!6Cxw*-?Cj9zRbE0z! zv2-j3$G%KYyhrKDo|1rPU+(1O$>zy<`1VC-?>Z@Yl6g}8#MFsVIQOMbh@DV8K688= z-hJ8Q62}?G<&I6ly)S=E>X_&;g`?B(?<*daIVygXa#R)$e#Vi*v*NRqS=nd;E`GW0 zWVhL!KOzMmzrx|^!()dR56i&GPdO|*GcnVcnS+;~IU|2)>d+|M{L+WS4k=C_oF1KC zn3jg0U$HCG74K5IvYm-eqchi$>@eZ#muio;7uwQoG5Gpr%($tT*+>G;e!13UtJ#`w z>2EPwa`5&uoAXVnrf5?E?tZbxVne1O-k`wWFA+Avx%wnL{_=IHx@cV?l!nV+u{Kj1 zuT^TZH9a-OU?vz3D#2_Z5isENmo!Wx?@#%o@cK*pV!mQ^2E#-v)md-CYj|^>q{sB+ z-6?m}U4Z9b1fG8>J*pS9v=)QwU&a-8DXy$D0pGt|WwO$&%vYq~{8v!ZYD_IUGVuOW z99boy7)nkg@eAKL@14&tLHz%?(ck~&@Ba%v8kr*2Hvee(h_Q|j3I_i+-{#TC53yB1 zkh-K>k`hzI+N@6z7uZPrNJ@~pAl;Ibm?G9@eTcZwM&id(g46}+mZZcKu{P^7#6>m| zKamooE=ac|C8mhASsx*uY9sMeDM9LjbW2iViddWV3F2us56P3l*5l5<0c$POAn%buv0~BuW!>d>Ws5b?DjUWBL6QMM>XIJGjp9mi zH4baPY4kF-V(FQdYSV9{Arxwmx};a~N^y~F&+M;Jy7MocJHI<7uMMNk*MyCT1If1v zQkV2f+Gky~JnJlGE*IJ;s`9W%9ZxEF#UV>sH`!GUSr?VrI(k$W*=STq4N@1RSF)6K z6E*f_UDT3wt8GLor3k4D(kp2%GDqGYMvr8Tjfhi%D}AhGH|ht zMwQecbwPS1OQ&a|#=bHz%Tfl`+lW*n;TA#ak{-!5lU#XtdN4XJt~}*AH@CbG>?JmW zK1c-wsY`k#*NZDqgC_R%D;?FM(^v3E4q_~$h3--t5x*26bwPS1`CdD(sAJP#S}Gko z(f7X-?*Z&W-~aOv`~L;r`@apbe-r)xKSclkm3a66r-!;6DR}=iEQ&yOP4^CF&v@g|D7y*n73`H4-(E>x8eCsN8d-@HvUrzLfA)ci$p> zKEl0g8x?ch(jav!H=+xsPTV{BPHB>Ka2DTZEzPi0lbmV z;g|{cuFoT7e?;+B5)C~a%6>a4MmqOjrA%Da+B0qcts)awx%v;;e=BX`s`fpH?!Q&X z#8v*t%>B1ACa$U)JZ%51+!I%MBZu$5RrSPGO_3w^->P}ys`gz8p@(IO?7*Tg7`c!I z52)M=I0@I_MLZoq=g4Z|>mus+tVQ7=oc-&u3DGosnea6eZdteqKMS`(G_r6v5iKm- ztwcQwcbI4(be8Zc!c8=>tTz+RejvaCA0#xEdYz~z0xbVQ!pBPBmtajW2sf*Phw!mZ z_z5Q~hKs0S?WiRf_x3UF4N26K7D8h^(TOHjmS&=fHKv(xv&MLcT2`9~>xfBsSy8Hq zO4b%9;T?Pi>xgDno))5&H7G*(ScCjTC99E>Xk%S!CwxP%;ZwrJTBQ+UIE!mB(afsV zLbzDJG@>r@4s#c%>V6k{N|?KWHllX;J^b1IKK>+H`#<2`18)Cka4L2KK2}gaq4l9M z>V!vDM#5la49IH98tEha{a?a%td>=Tn`kbtprumQGI3Sw#8s8$b++_H=fqX6iK{xw zt8wXzofB7eOEp#`@5~s!+pPP)lg6 z1zoHF9+rI%i@leqWU+S=6)fyEEaxpO*wrj_*rV}tR5~=Xyo8ljIr_?O0i{*y#8v+C zB2e1On7GPWUIa>8xhAe^L)PkzGOOE}%N<0Jxm-ik5)NMIRHBk-WTrO}HO%>1nf-*; zjf~TYAP>2Qs3khekF+G#IdN6j#8s~HgD-tio487!xXRIk!)lU;rDD-nL4>(44MZc+ z3h2#pn+O*7-Lp%p%!#Wib|-{uR<$X=Qi(rsDF&*DYTliEMB8pa;VsI+yOT;p`qrSB z5uHRAQP;l?1(;|enu*H2xMMj9ov0$3dM?MOM1(L2Uif@$kN631B*z^95WeCikl6h> zoCYF9)Dg8kUw|SJCcL~h2D+aVt}WFM%VP@S4_^&YON59zxo%(>>xd9hM>PA98+VR2 z9Gm?(q86f+h!7^xMzj+hL?@v{00*HG6+|WBBwU0>=!9c0pb`~CCE+AoghuE@72zg4 zgqJY<$kPB3Bx;CSB1F^?^+cFxAR37#qM2wRT8Ri@5^Y2f?;|0nfZG3ux%+@_tIG2S ze&2hx^scS;sh4;m{DSd9^7+hj@#jJ`r(WXO@UzCVNt##BjE9EkUHX~uGsZJXnpe+!I`vfa zso+y-npw|!GV?_IiO>@Y&8-)H+;}|sSmZI2X4i{88hkYUNbC`d=GTiK4jonwCms&} zFWUs9ABa6*J&?ISPP6SP_b2WP-)G#Hr1|#DdsFvB?+M`u5oE*6o>n@qM9v%Dx26y=O#|1Car9AVst91#e65jqSDe zX7$Zm6YYFCtI;Y;5VyT!UCvolWf@F_bJJHk7R9Z8yr&)lBc z7Tp%ymZrJ*tgV?X@hzb(3eCnB-fV16Mj{cD=HrX@2m8}E$8NT6&TNWr3T;w0B{qgP z8XJ=vhMx#OVLXw1Jo32tc8V66th6k0w1kFQe97sMGc`*6F;Qf8~wcg9_IkA7}uFze|U5PuxcN#R~VB`+- zj@0eZ+k>~K_r>;E`!dmZG(@uwh6Vz+o!WE!*1_F$mzdH^*-d-K^Z4*c9GmY)Wp7Y&18fHbgfB zH>B6c)?4c{>*DJ|G{a#3jqNx1)}CBFylP-&cR0{@>iXl?4PM)KP3zU{suRnGmi8}c zU+n8W85-^$SQMmr0AmZSg_#BM1tFRVFfl(o-yJs`_FDa%Qxv{^KjEZW49RyoT@)wH(1+O z(^}1{PE-t)_tSiTsnTd^uryr~qZ$7){5Mo{n)@&62s+Y*u|kVx|BDxd3Y3C` z7N+_Cl4?XX)szyY82}kuIlW@?BC7vCF*E!9U(Ej}N*g0rFPOLv>|ouUb7r=R%2V#* z$Og&95kp)Yft*3NaO}mATufew?ULL^Nk|DjaRY-~=oaF-(nhvrbP@7HO6a=Mg5G)g z7nZU^HRKj+lO(Z}viuBkp-Y&(ur%HkZMv{zyP|!wB%@4ZK+d3Bm|b;i&bU-!`*hj1 zProFjT!cW*pj#*pv2CA-B&3p_xPd_~^ayXDrX@E~4PeaAfP*;(O4+RLIg9Kihpzl9 zf14$d)glsd23^86Yz37E;K%x_Y|u zFVb$6WYmfb$Qg7Ak+FkrV}5dVl&-F2UEse$0
  • FVRQz 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%0A>gRQ_O2 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%0A5|9JWFWS$$47cVdBO{IP|;fAJ7{Q3W$ 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

    H_+^$IdeL_-;d_6G}1HsGo7kR^CN4h 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

    5+HdHHy@~m4~5`k23t&*mH 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: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

    oIO7H-H2EM7SbU<2L4~U4v5Wz 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%0DV$JBnn$d?fql`6U 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�a|67sSNjU)lsa`or^~%ZV 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

    ^Xy@vis_R9eu{HJn)b+e;T; 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 z

    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 z zfO=qZC!yWFgYhm=Wh(uuwQL@wEdu;Qr=Y>@!sc+F#cH)Z=djwTd(UUJHM{y*Z8N)= z)mH3{v)an;n^9{+j|GA^|HHYapIvtG7RoywbI_l=(T|-SS=fRh8kecvszF8 zORTnP=w(*hFz^bioxJ%~in#MNYIKOuH1ImBt?hV|)%y1myq#~+`^b@sJ8#;!CU!j? z8FH$*dbXp3-HcQ5RtkL2?Q~>fcVlrIS3l;HjQHM*V{J2`x`5-sI~!l`8Ef=pCn{ z_nt}Z4xUYKXXj&lxsYko*hO@R`nS*#@4t-pZT}VYThCS0_HJrh9=ev^+(B*ohPDxU zXe(N~X)C-vv=xoCJLv?zgF>X;sX5%VQI!MtkfHNF>R%nSQOceN=>T>-Laorw)~3XE z(r?(t_T3b#-1!8(W$;OAl+o4(I-j9_IQT67e4ZNJMX1@EBG94G7##{tr9(j-;8ogA zIuvxFCe+fQAa8Gy^If}Ww+?)THi5lITRwOUy2t&lgxDKZdwZFJ1j{?~f3gkeoGbC# zRu?^z(oypdZD0yLVmOzJKPy=uHlYWv(W45z!AXDAazO43vsx99x(R{Jee_#DLD{{P zDfid5_d9m5QDdm~-p!D+>LgRRT_+2JrQ4WzMUH-{7Y|G}-+{=1jN( z!moq=pi6Iz-Uv*hQ%%`HPr~`ln2a-T3c&ga^5C(sZpSk&ZDb3*=G-~l|C;Ds^hf^O zZAFzvoXhzw>7c)Pey;{#YNJl5Jcb8u(NG7vqq_NRT#pFNKnvgnT7fpe2l#<@paTa! z089cV15<#hz%+ol2@>Gy?_rLBaMwt`QW^n5+W0hxogKuWv zNW2lE)%x>b;!&c7y4puYjSINt3)gH zMXuDZOkWYbB0y{P#lH~zLiX~+9^r4d@MFMUb$lE5Y5Ez*|M#SvPq zFLIH7Q92rp257y$cz>`zbYbp-RSdZs^?HImvUvv{qm0?8w>r+3B;Q zv|3;0%((d!n>#&udiZqd^x~)4%qj6xf~T-ZYI9_>zBx^6_60U&PL7x41L!H651`}d z%*Ob}Ag$e(=nM4~Kk@3l>2Q?R?<;=t&8&4v=8&E0x; znpW})9G*EWeps+5YhIYv^Ghv>EYX*w5027`euW%*p+&ic$%WyC(!$h&7(F`|GU|or zN^?_PkuJR}9gGG8!AxhoGuW9uC~;8epxm6~oG`8JmpZWc`Fe0>c&79p4jVP06M(t@fAlL_E4@PeY<1)R3!B z)`#n*`cz${PN&uWqIy8jxa001t@oGELR!w1r1bleD^(k*)oar=(V9R_raE37tS-*$ zC(+7(5mi^y&Zsj$YyZV7gOyn&p@eAlzhp(YLaInPBDDTrT8_#AIU~iTpv2hYN1d$P zO#1(uhQI$8^Z)5nRO2URKSyL)AwNLKI=9eJEQ<^#)Ye7AdO^+{^p{d3W6uBX7q5&k zHv(~t8iP5vFl3!u`0B7vyBLllNz6enyBOAp7(j)Ae!=m^ zP%^hLWSv`RXuR!WfaH570~JBP;P_)Gp08t_TWBcB?P6FbVgMBe`US@y!?MD9Tp{b+ zLPM`^7sGlH1E?_2FF27H%(;aj>)b*^6>k?qK`O5Z!Ms<{E(W`~h3499A?w^iLw9fI zzaYj}gd{&8Xy@O4ZXrz}E1Fvvvd%3u1panm^wRD>kW&BRP=Eo!358KKn=WLXTWHKA zunS{@2m@3Y7!aI57$tKHL)N*4#*_uSF#1Fopu)g_;Do{`-W#QJ3)#N3WxT}Di=TtU zm@P4dT-URWM2BFVpj{a5*i0H#ENfD2IsJl5&hN0iC|;vW5u=Au`ibrPicKIDA`s4w zr4S@`GSMY|_Y2wuqBH!1&*e)uu3Wo*`HD^OSn&6`F)75@|Av3#Vs$)u%Fh&0#C(x9 zK|6oVtT{$=i;Dd%U%er;bj=F$GSNv>D!UFSiolq7Vi!SSHi{zVq%;fKMbN++V(q07 zEL+uSE*jZMlPOEQ8xvdXyq`$hKZSvcV6))3ymy()hj!95$`bF!#2Gv9CyBieDq?0$ zo1mTd5%xZ|ec7s_2|C<3o)z(==kVwy6A5XLARh?1g_XLn(<4hAlwZ95JXS!>XG`qF(Jv=>xO%y&lhGXDPpcti=dsm zM%EbXC~?=@+Zim{<<>dGA6mB7>b@`yN)eNxS_SRgH?gMJq!RaZ%zJx_1F%jYHYQcs zZU5=Ci>EVC5o{G4R{+7@-l9EV%>ZJ|+p-Jb401hHOzBbtTLkR_*#7{a*B7}jy+LRD zzHK=G7>w{^^m%kKx9DyTK~2!keQj(CjS$7%t~$jsquZZHex{45a*AN9pqw%BY3iB=!ZOi{bZ4f_8hXZd&kZIZsO#Xf>v&+68ba1u#v_UR4CWf_4FvbkjlrrRQmh{~uU(x^)L!CUyX* zh*`3&f_DCGc7WwPEeXJwXKS|uE*CohRK!GFub^E3Hanp7JT3Ci_I+yE0md0)oTun% zjiT2%1RDhH{Fj`kg#%D>o)%s%oTtO5z>jQ#k%ym1uBBikb}!M*@O!J^>FiSaUhfM= zj^1$GhD{f5x#*Hpx4t#ab>txnUmh6u_w-adG^IyPQPf;rY%L+VYctbWjx*>Jc2p{J%aEU9K~aB z6pueCJ0PmSdfx2LmAUt-mQ!S?>i#cQTaE|kFSzqrOyA$#k zWnA7ST!K0Sn*`x9IEu^QXfA(Q#^vq8C8#s7Nf0i(Mse9Sn#*66aXBDdf;t161mSY- zC@$xY=JK;LE)&8fs57uh5H9D9;&R?-E`MFdzA&uJ1u`-#^XKYrICTUV1wXkEJ8jb`+2O0iH{{ieIYx4|6}oIG-2EU z;YOoM+;lhuxuD%mhcnj3+JPn+SX!sot@_6Abk)u zzxb0^BPEQT>xYGFP+?%B;5b~DeC%4{+Q>I!=lT)h8dMnAC^&Z4!NOM4LwJd6Bbkkz z>m9;1s4%cma2&1+TTRd3MXuStKiYIHqgSIlxkcA<2x@|MuJa!}6(8&TEq(DT``yj| z$tDD&cRxxYNbJi*7sK!Ef_5R)G5pIrT)z51Wk>!$<9EvI4pZgtzU`Ec zrSg-voboAD{`k*I`SLfNvRdtw@0sb8Cm-yThZZ~KL#ceY$SEH~_o$ zTz@M)|Nr)1h39`G|9}4B=W`>skyWN%lfWCBh1viA& z_N*~8qT)ldqG!R_=SKb{y9l132=Yml6p>oVCukQz3u~c|D@!Bj%15xl94D-w7ys4L zXRJHnNf835FwiGBo)G3*L$H2gY-ED6+Y3*L5I}{2KEd&XFwYu7>8HlA&y93bb|HL8 zga9fG^a+k9g!$GGtf~$prLI4#8`UJ-l!Xj%3rIHS|?{iBC#u#S|!k+tMj<=-}87=!r`g(0z7Bs+33{O%L93#0f}W!WlvEHsDm;la>Id}bVb z!@V&WzCbSW+0Yb`6U`%N=Z>x%G2if3=iQC=nWT|c&Cd6W9O z_julSZ{M;_>yIvccVQLK7>V2L{J$jpg9-z^g5&eQY;BJ@23y55Mrt@a|1S&wpu#|} z;Mo0#NIXQ3=7#^E^)h56pR@D-itrCA4DhusWjLvno&VQ_e^6ndS8zQ3mzL~*>($3d(P!uXb>SaW80Zxoum8gSw_bXT zB!G7Q-w^&mMPv!|3Xacz@&317cZ@WHcK!>w2NjWluvO5`fBrjx;`2YWyz~U49&H06>L-t%BnYpvyP~x~!*wk&n@C540D}a)du*-T97+EFl0@x)202Kzd3XVH~ zLLac61xDgZy8zN608n9ItKhf;DD(mAy_b<2(=LFohyXx^fvtk$4xrEnO7Fa4pBw2n z?E?5JInC$fR77S@pP*d;#g9Yz`+%PHy?rDcTD{J^6wbGf1V)ZeyATSAKNW`GeS#AR z!R!a~tz&_aNYpNbuZg_?Dh%`qP9OxcC(O@}27ApF0E}#3@~}r?SmS|5MpkN&i#X zrl@l5*PQYrf2x$5NCR-!TvgVo+}5Sa)l_Z@sQdJvnrqr>WXvh5P`xWlsY3Stfz7EH`keBO?5d`uA^k1VoXJ$d zm(Rme^!6IO-HW#?c)JsCucNn*66sV-okNO-`CD~+(YSmIiovjp6XC+0{sZvCp^`k^&*N#k1hLaf;weCXe zZD`$z);YCqx2eMo@3*lH<%8L;j)Q_}DNblp6q1IJd&?$6kyHuh&W$v-4ZlREag3H>x( zlhSIs7SM?paIG57oHJalv1eMoN7%k2K=t(&(;2yH7^zOlJ0_t{K6B2npZbyNl)Pgy z>a-U7sT-+I$vbL>u4a6dxhp8P%01UHPiyyf=22-zvd6poR_0M?MzY62Gm4Z$u^djo*6b4hkK@tWzx_r8%s@$CZ9h+LnwMze#&oaXD_R7+)NXA@%sHVuui7Q z>B!1t%o=Z{-AWT*cew614?OKAUf8w!+1jW^t#LT%y{h%SMK*uO93xmb??TEWF_7$} zu4Z(8jGNR>3nHP3zWGB;FH{#AE`Hh3?>F0|R{H6xK?%ep`e7Bjdqoq*i{z5#64O68 zPmuemX8*~L*2AvVfumXVcB&;~jxV|-e$b%%Sk_*Z#}8SZXoY6_nwO|T4=riW(f=oQ zFn9luwZrL`jBP@r;vykH&CB$@LsfcT0Ew%%n}b2g`^4ExZ|rsq(CqiEuKwW&seW_u z9xAcOLlK&1?3!G7uPb&c_1^B&nWv)XOy=?II-7Z%o#)dzu;)VNY45m*dNj>I_QbtAob*ET{wojT2%>C|cJr&FgTmS7%j;11?#9K4g> zN7LXv^58x6TF-sVGnuBrd!)S&GLO6a5pubE2c0!NNqQ~zDE&F`7}cO@@E&RCNot^j zPO-KgI>nS-&yw@O=O~Ol&ofVDC!J@_>?L}0$IDc$;}z!7cfU&3!Pl6lZu1+oMS}$9 zev>w4@GWX(^V{?rdxu)t^DY_o?xIEqzd|QI&3yKF2EIn)z~=X<(f*D?cPiOqm9Z%{ zmX1ABZ7dao(`_tMV+Yt+YP-!d8rPGeW7g0!+oq1M|3Di{z+E`yN?UVu9As0cp@Xsj zJRz=TnCFh9$YJV`Ptc_VC)iZ7%r?&p(RtC8(J|{sswqx$su?zKjg0HNs8cntg1Luh zxqImMCU<`iYw`~eq|F;yQzcLX)B#O^uYV=#P+&;#wv*UT;|BsQy3QGq$%u?ojmGUX zu=UgVPs1C%HJ>34xz}iP6k9+Tt~C4~Rjj6pQ;T+n-CNjtF!1gw#Bmk9Ta0cahD-0Np?B34H-xGk^kVJ(6c)J=y9^oU@;UhO?TD?V zH`Wgx#~jq*P=|iyGy{cIq6N>clUW5-t)iW^gZ2O_(91Qk-v7tlo5#0NoPYc?E3XdQ z(rSH5mL*$G$i-#lP6!Yskx3wlEhhv+fJ8vJ2~iU65G?Mi5OLo`9N~s21PU#*5%f#B z+HdsjO-mcm1A0eop(kH{&u8r2wKrK-_V@Su=LfHOKN~-K=6ST5ncbb)nW4|q-^Wnq zR5<8J+_P(v3d$3MpB5$qXO#?V$dHy~7(+&qXoYo+y6!YqC9Xa6F<0lAOb&V@-k`UQ z@}a+Qb`Glx_}8*Jb@w_}7jECc>J&1O(e#o&MC&sBxi{Vd`%D0_}$YW41=^fgh)=!p?_-0@#AtE;|NB(z+C6lI z!R&Y9-zmSJdq4R;e?R|T@tw>&`L|PV7v9SJS7va1!Qva4H&TV{uJSihUoXF!dR2Wj z^-A%j%+BbJ_zS6Lb5E(;%8%q8Nj}0K$>+2cA@UEWA1L0_dH0q(_uk%f+x9K~Ti1PM z_f4HQZn-{wefhfFb;;}ab@^*k*Q(bRu1Q}Ly{33|=IYqhrK_@6#jh$~nY%K1CBHJC zNoCYbp+DUp?Jr)DxgvH&X>)dSd~^Bo+~vv3`Q`adsZHvp!e!~pqL&pf&0HG0v~)@K zlK3U%i*pwzFXk8LFG^jcUR1uIXJc$bX?<>8a$R(7@jQM`{_ND*#WRy@ww~H~N;I|l zR_-}I)0bb7S`j;T%d)-6o}TSX{bK!t=;GornPXzdl#b3G9Y4CfD7PrNh%d@7 zOf6Iw7LH0EmF((Vpw8brw|M0C!?SbN&Cbp=Rxe0SB-T_#aJd5 ziw#|^pnTx=38@L{gu?jrcy-+Fj!Z|aqZG|Xi)~w4dxAWe52OOTc~^b9K3ZR_%hcul zDZlD3C}}0C6ueujlhwRB?@4*MJMT)lR9C^7c9w^%2Ef<_ch5fdRvQ0*fAINV%>Uo@ znKqb5vj0mui1a?HY36=PZL1cmu90txt`SgXU|4XUu91N_zAS{PT3_unb5EtVABnSo)!QG_r}55e45sckxA6~a3r1W;yRSa1{}OxHs&_f|IBbeX>^LI7n3h6P6v z!VEnGbAP3_eU8;xcu#}?$_xw(jx2gaFD63=57T1fyLr&-~Z6G_nfezeNb3 z%s^WGkvNJFjCR31>tEY9$tr~1A_P!oU|4VzAsFq#0@Djk+U87FArwUjpv=Iq;3z^c z+6D8X1KJKyRw4Y42mzEC7#18w2u8awe8GYK&$Vr)tU~yn2mzEC7#18^2=j-v3)9Wx z7*U(n@%thKP-b9Qa1E`=|18hS0u?PW_85kBEMF@Jk zFx`B=plxDi^+WtbgaFD6q*XVGqXW_V7_0NWK$eJ6d`~z z1H*!&2*GF<%=Zi0?sZmY;pZX*P-b9Qa1gkZD_=KBS0vp=g4N+JYMW?)!w6d@Sxg86lhRc*{!e2K(&cm9(!Xf_|3#GkHk;=6Q~J{^w{#ArPiDHMHIzP@ zLF)ie`q^~1bUdXWPNRAMly*<0bp$BAOXL1WQTi5*`^PDLgU0<2qx1@m{ZGUAe~*J* z{~Y_z7JB}7a!fC#RkvvV|Aliu6vucYV3&5%d7C(!69u6bTJ3z0*7)kWcJkoaBJHom zi2-%(6hr$Pp#^pAR73l*(1N;lnxXwfXhB^&-O&D4XhB^&!_fXtXhB^&)6o82XhB^& z%h3KoXhB^&+tB_|XhB_jn4$fX(1N;lj-mat(1N=5a6`LSXhB_jgrO}9EvRdcG_-#a zT2R-{)wJ#Guk`mxg1R-w{rx~eU7Ikp z{}5VG*LE4&e+n(AYmd^j9qeE9_k#p=?LtHQZ=nTs?IJ__AE5e^!sty^e8UAw~2dW06#wZ|FS zYM}*nZJ(j75n52!9&c!Cg%;GcCm33<(1N;lrJ?l+EvRcxG_;D)g1Yu3L+ck>P}iPp zXjP#Fb?qucTPL)ju3c?t>xCB7wJAf}Ahe*aJ;l&A3N5H>Pc^hnLJR8J(+q91(1N;l zjiC()EvRcxH?%>a1$FHihPFj$L0x;Mp$!QwsB6zMw5>u5>e{mnZCGeQU3-q9jR-BM zYtJ>bZ9)s`+Vc!;yU>EVcCDd}3N5H>&o{IkLJR8Jb%u6~(1N-)ZD_{|EvReP8`=Ye z7Sy#H4DC3f1$FI4Lpxq*L0x-+p`9SKpsu~p&`uOuP}g2$XeS9RsB3>>Xm<)NsB1sa zv~BDq`ujvdUHel_+reHY?LmUN_Gg;5m3@`8;{hnhCTULoxPg1YwSnzo(2O4><+ zy7m{Eb`1L(X%80EwR;Th*M%0;wIxm4!d|1lj}_FlA8Fb)_Bv@N3hLTlYT6F=4bmPY zsB3?vY1`O0g)OLSf30Z`V7ut=hYIT2-)Pz~tU%g>1$FJmnzo(2LE1@zy7m)8`=-!> zy7sr4me#nZzjq4i+TUqfdRv#Y;{|o??=@`)dyBLO3F_KEXxcIC+oU~MP}lxZ({`}8 zg)OLS|DsN7@cSU0c?)LH0gr#|Y}$zi8Ta z_8rnr64bSyYT9P@J<>)6b?s-Gwuyb8wC#er_V1dunf*Z6g1Yt}nzo7kP}qXH_TPr~ zXF?0=+W%AhS2wPCs@*M;J-~sk)`g@0Py7Sy%X znl`}7^!E-yUF+4fLH2jjjuF(gK1~~7{}8sIu2l@}KZO?5wSG+-WdEYSj}aWukB%?@ zkxTbbx|Gt1l#Za(PD!Hlt3Pn*ElN*Px{=bkl$KKJq*O=gZ@=f#4=KGu={`!ED4k4c zE~O4iRg`}7J1)IV>1j$gQ(8-@htgz94U|6nEth^w>1&i8ptPCNYD)7cjiuzI^vNe& zdY96(ly0H4j#4kBsg#;1{o`XUeL(3oN)J)$r*sOX1(e27a#Q-O8@yK zmwrxZ7o|riT}|n9N((7XqEt)iPaknDkv?x1ubr9MitDYa7i-x8PhPouFuHzZhU2i{C_>QtD`%L;F|@8Es}PL- zC7IzkEI6_dx`y{xn#VD;{wk{wj7}_>;W#WfiV%!;!90$kb&6SqVDyy9498)?QG{T$ z3+8bQt>?`u1fx4nW;hNDjv@r3T`-ShXx)2OAsBsrGQ)9La1~792$gM!R4h$IyC1twJ!mNM(lOu;3^{Fxmz4 zIEL2cY88Uf4=an_*odH22m>4R44uc_)0GtDnPXdSy&F&MqQGQ)91 za5ORK)pDl!jzQ}_wu-^%QOG$8Cb631W&- zBFy&p?oWd#!WAH*|IBpjlO%#)-8KuH}|DcVBSVdtBlE@6l?Si9;Vp_~77Uo+BZQR8w z3S%%v7DF;oL8~YRb}h1KFgqt31;czBp$+g@g<*{P$PC9(!O?^6D%y1kP98DNgJ7*b1!+blT4Ov-*ff1~MaV%MkW<>=@6UNNgETe3gZz;5~F{>~* zg)uN-CW~RS4neChA}rEB(Wkn?D z`Tu|51LOaqcc|wb<}0ck#|~QUz%392-kNYW-T^A?zgVb1rGxtGkxR8#O`DwvqR{G}z) zfs9*Fjru1TLNU5dte@hxdihnnEPRFTLPRg zuZB5epV5yAa~b9;%xz163+6R2=P<8=xfAAfFt;rMZkX4?T!Og_a~I6(VQyOjJTUjd z+yQeZ%-t|=fVpi6sD`-@=2b9v!Q2D$Mlv6RGhbl|s6j>wGNQYC`Z1AFH8N^K9JVE( z7Uq7KJ7MmDc@4~)VQyOjyf9Z`?t*zW%xhsDfVpi6@WH$e=5CnRz}yS-Ak1w`fCBS+ zn0sJe3v(aLTVQTm0{k#AjECKb%s2Le~k&z!6)ghw@;;=0N4KNSD+y`?N=Jhb=^vtNmha|!0QC7=oBEim`PydLI_Fn7S*wgfc8JOpzU<_$1!f_W9pZA(A^=B+TV zgLxy&n_(`)+_nS+VIGEgJ80HR`H^aOI=B+TVhPiDCh`_uG z<^h<8U>=5f4a{vz0P}x9O&`pIFmHu<1m?9cw=Dr2=1!Qmz&s3d=C7k>2=2lMbz9xLi8j}@NI&)AAu%43C>^7ztw=>5c6 znYShpSc|uviu?X=bq2$#p|FD9SA%P;0$Ouoop zOm64f^Dm@cP+urKAAhF&bnfZo)BNfDQ^_az6ZvhaZR)nd06?=L~knIn7J`_W9f$M4YBJ=*JiJcUt7K=cg@h*{K+f$75UAn&FbdD<*Ccm z%LckmWx^Y>e+>} z(r2k>6i!c{9zDIdCbK4bYVnlJDX~*Zscb5?s&sPpGA31X}M|fDdowz$;rul zaz2(klpmTuBz1^-Na5hZr1Yfdq~gTP#Ms2*xXifNxY7aH1L6miI0A&V- z1V~M8OrVe%jzfYY3}8qZSYU1m zwdojE0T^>MWQOCA;D`gz%fJG2OQ_BGunNGK1|l;YhXh9)fZh@=Ft>!-q!OzDjF~1f z!*NJ(!~y6n;R16@sLflk3c#4mA~PI^1VbZV9#dTvh=Xle}bxV|u-XIN|{G zmM~#%3AHI>RsmoJ*?0!Zf+4{X2cWlv33E%R%}TQhz?iBgGaQEmM-;%YmM~#%3C|gv zlwlPB=E03;pez^?9AN-MYk|2X)aKS%1<)n}0A&V-1Vy8kCq`YEmZe*&eS1l>{}r5^>{ z(h5pHXm(4>DSfZWE%j0=HoB!AO8?#9mX=cbPQ6=NOzFKkw{$e6cT~5ukkYsPZmEkB zTV2I2T~R;o4jTWzsA|ag|MvG-TOlIG{{!o2{J-B5B;jZQLO?4J1|k68PLKcxPzA_< z6L0};zynkRHGmIL06(At4L~E%1T+IJKnQ3B!T_hW)*TYyAW(!=I1T}=Kp2PsY&U@e z65s%;02y!sE}$By0crs+-~$xE52!#LP!BW!jX)F73jRsuyB#&HDTdkGSN z*DD-&@xg)D7aVx?z=0PC9C!`Dfx&zShU6U>Sa)D}+<`%E2L`Ae7-n{0u-JhiUk3(m z9ThW8v8q;p`X&4B?k2L`(+LJV3tF!bcW0Fnd4 zKn@J%I4~sRz`%+FgCY(LZ8$JM;lMD11A_$)boo2baqmEft-}wfKpjvIGyshNIz1iD zKmb4&s-p!60j)q7hyc8kAQ31+2ac-%8E^tFzzukSYM=(F1-yU{Pyj!m0(C$=&;T?7 zO+Ygc0D?dZ5CU3(Fc1OQIsykIz(GJc#IX!G0TSOcKoigm1b`sW0)&88APhtRwu`_432+c7LMM)0fE(}twSX7!0SZtD)B_DbBM< zKq1gM^y9c5XaE|4CZHJz070My2m=wI4Pbi+9FPD9-~?QN8>j(l0WaVKRG<#12O5B8 zAOHk`79d2R2wQO+1|mTFUP2Ub_}`;%3dn#H@Br074Nwbs0Uw|MexM#`02+ZNpcx1N zL7)W)0}-GNXb1RQf&@4S6k!#PWxxrz05{+Ps(~;N0os6efb|nNAOQ}*3Ag|^-~nm@ zFW>_dakLdjfFDqSI-nkC02+ZN0!7%2;{Xr@T7VGH3WR~GJqzfQ)h-hBTM?RpAP@z3 zJ1xdt1;~I4@BlS{7ib28KnMr}Z9o)Yodii>H67IgKEMwIfEIw$D)$ZvZ~#?+3^)N7 z;08PZmdAH^0Uw|Men184fO?<-Xaul`zQeJbAOkMI4fufuphf(14;`sM3(yKgfHpwd zOK<{iU@XA=UGz`D1JnXOKm{6r01yP&RssiPzzO((I-mh)0-Av!&;qmqVW17*+X)Up z23&v#r~$ly5AXwZKm*VO1b`NxcJ~tcFrWZ_pb=;Wf8h{`WqL&ODVZhT)s0I8$JP7X%!jANg=#FAOlaJ*~+q2u_+siNHUP!*c zU&ue7dR~3L@Lc-2=ySzqGtb7JEj^QcX6V>$>M8Z9!jtJIqfZu}$UG5yqO>i$ExxV% zc<%A!NbWhYJs-ABsLy zd@%E1?7`9l*$3hel<&{opS+*npT944pL$>6-t@iEdyDsE?up$~x_jv8Z~o5Io$8&1 zJJNSV?9*``@!QJTTsE2I+5DE&7IjPE*7U8>TZ^}3Zi(Ge`bzdI@voF` z&fT26nctkhDRq;2Q{l$+jnNy6H)L*z-B7wdJ8VVxxnk5fc@4iNe|73=_3EuxC9mRF z<*!U#sa{#gq%+Y>u|Lxv>n~lAy&`@^d2?=aax>qYzdUuhdU;_}dQ)^$@v_WivCB%A zW-pCjTE3+JlGr7si?bKUFD_q{yC``PzbJoU>O%Fx!UgFIq8Ai5W;Vt)mNsNJ#5a`J z=hi3J^Y!_3Dy^mq>(c9@>x$>EK3_e*ur|FGE5~Qfi=9_GH+ydU-10fObCTx_9g~ip zRXj6uX6($;8QC-9XOvIRot`|MpPpYccTM@U+-b?v_-Xl5Q>Ut@7EVc@5SXog!b$0qq9+wk%$yiIv9vO~vVG<56EY{nPADCpJwASX zxi8n3?Bjj;<5I_|#}!tjS43A7kIft#JGQhuyF9+UyezjYxr{H%_ojN)-a;~+WXXI_ zsz>c9bPpZv&Mt{BDKE|~PA=w)^T(u)QI9Dcojy8xba7E;QEX9ZVRm7BVfm=sQOTqB zbY;8ZUFAeBkxcMJenD!1x}Y#WJwH0XI4?6VHm?-V#^dqw+}zycTs}8{Wa`MFqvWx} zcg;!9iOwk=mN_hTSZQ{4c6@euR&G{u7N3=$nVPB2EX+vHh|VZZ&rFX^FHOr%i%%<0 z%}q^CA4vigJIwX5Y{E+g&xr37j^MmsTr4CXL zDjb+TFnVBdQf5+YQfXp#VtitGLjQ!=gwpuz`1ttpxZJqpI6f|aK0@NiigTAxt3%LZ^;K! zK{Z$iqyy1Fu{qNmYc4fqo8nF7#$02vkvHZW<~Ee;bM?u3UZ1Z^)v0v_HLXU~qCex0 z`AbSxi7RDaj$XFszPvZ(RlSAUbZxY@Sd*!V)s(8U)$P?qPsS7Tl-yZ&++B9%TuB#q z4ISYxR%NPURV7E(5qFfOoRpNfl;`S-<%;_>PL3UPtQn((6dQ4tgD_*GaD<^}6VFq+UGrP4i$!E-2H_G-0%t4g6fRy0r^ zE2=4v6<*3?g^%)Bfk)d;Z`f;lB5Emzr-YCi5OV%;QW(?azas@>tPGd90|RJXZK9j};2#u>$=AhlXjN8QU}A zr7V`$Q5MVHl*RHI%3^sfWw9JR4u?kU3sf~_(5p}ey)tFc>!u8PJ(NK&dN2;PJ&P`! zhFY8k38z8EX>j5+pgW_JzCqOfJE%AfO*jp;I1LI;gCC~>T~Z-Tw88X-YV6o#@mkv8 z-Zv7>(CBi~?3Aw7U7xb9w$%>a#c7H~7dp7cY@(f+@CM%gUKt$BfFlDL8HA8Q1R1n% zr3|Xqy|bT9Gut{pU$hhbe0>n2z?!y27Z6RnD?G#Ggh))81Yz`7aM0a&A>>i~LTRcxa5W&RtH zLkn{7BZqqA(10A!Uv|Kk{=|bZG$4l{a!`;%9df8g4(LaV;&s_deuGxz;^?7VnvqKj zatR?9bi~>I24PrN!8!oz5Ug8ajSjtv&O-<}NXVfHIRueI3vxieU`6Ml1vzl!(1;uY z$RUUv(0AC@QgLZ?bW%PpT|wtwI!TMA3>UIHGV+6!ark zP^x8Edte=gwFK)bSfk_Awp2S|T@7nS&A=iDtYuiED|YZqR#LVlEr=q#o$}$x z2mQJg{iYl_$jBjx99oe>7{4icd@C;79^~RhE)IMjC%%sxaiGiC_Lr!JwGY-+uy(=P z18a0WS5&s$$e|WFNXS7(4ld+?9_)(Fg9|y-AP0^ds*r;dIiQ!jEn0Ee_97n@`M8iz zHS(!NKIka7Jrh1y*TLEi>l#>lVT~Sk+m=>=bv>*-u&#x*57y|Kw=I)?SU14B8rEJ| zE3igqe?`ASEpqT92PbmyAcq>{fH8xLeuWz3pdbesIk=HSHFCgcLdB)A9=S9l7cX-0 zBbPeLPHfV-DMfWEEWAOb%>-1k<=m* z1(B#YtCe25M*V&N?;%=GLNI=^N?J-h&ERrAK<(~g=$YwxkH43HH}$UiZsDESw^zTR zzELQo3(-RH8|-U&v0q=|mGVoumy$2>m-0JPJBRi><)2GEr#@GBHvMe$+2T`~r(#c) zp3FWOe{xul(j$djIv33qw`R6xAB;a(ejxWi@&W$9&|aeCo&3)H9jQCiI|{d_v(apE zOJ+-KOX*hiD}|fWH%D(S-junie0}cvkD=1x@cWdjVeW7#uxLIyjkx+Z$Z4e?8$k`&YUypOJRWPEeU_@2Hh^m6|R0ZRy3dU0v zjHfCXPgO9Us^DovY3lzjnPI1QiC~J>fxlM)GT;PUfE(}t)j$nU3wQw^pa6bA>?2<% z{@M9Gd|g5vP!BW!jX)F73jRv-*SfHs0D+IIXs3UmNt0Nz8800&S7$bb`Y z0dBwpR0B0YE#L)wfCBgdY%#B36MF?4)GK~K1?qr$paEzEnt)~?Krlrc#NS(h5YP&Q zfe6qBv;$E9Pm~ItOBDxD1;~ICZ~<<>15^VwKrP?}e1HP@0TrkN>VXEJ5oiLi%7iIe ztQ?_W)dvM@Hz-(vLBTo-3RXi~6l?fEAFQ8y;00lGr70lCDFxy_ioOuN^-xbVX zS1=1*!3=T*^S~9%=2kE#Tfxj~1@og7%yL#RS6RV4V+FH?70mfnFmqSI{96UHXcf$b zHARd0tqSI*DwtuaV4kRg*`5mKY$}*}sbK!3f?1FXW-cn|(NfSEqo6B7K_8of?jZ#o z8wzFsD(G%f&{3jbo}z;OD+OII3OXJX^r$K53{vo9sNexp!4tNE2W17%y9yp#6+ADQ zqQyg)f+s-*4|EFdz7^cWD|jYS@JOQI$wI*cf`WTe1-G^e?ynWxCM&o@QgEZC;7(J) z4WoklK5AYFDu9a`)i(leL8!hFnt)~?00e;+AOy4mVS*{z2>y;P3v&B&lrDk~Pyj!m z0(C$=&;T?7O+Ygc0D?dZ5CU3(Fc1;{+)|={0ui7MXa}M|2f%g_I3NKIf+^Z6{9Oi| zfD3Q~9-tbi0crs+-~$xE52!#LP!BW!jX)F73jRzUWDOfl{z)B_DbBhUmi z6HL(t@b@6l0)&88APhu+HlQ6~)WM{1Kmr^<6@Z>61^riw3vdG-pc<$FY5_0c0~Ejy zs6ZW14>SOcKoh|fZ8QEJ0D?dZfVF89tT3Zsbr=O}yimhHzF`J^Q@^&AYg_wwFv}t+ESZ9 zKwmty2?TV2Qky_Pw=}g01k7iqHi3XHT51yr=y|6$fq)()1szeQXwff6Z2|$kWC}XF z6!fwv=&VuDW2B(thpuG=JnSpzJ5kVep`ZssK}UjuXIBM}zzUwj6+BKWc#=}^K&Ie{ zRKbI#g6Bg8k9kTXfX4y_&q@j&Rg@sm0)&88f+^ZC{vH7sbz>?VkN^jOu1yNy50vK~ zLI4N?EkFop1;RiCV0#H1kN^iz1;~ICZ~<<>Gw{zpEFEKsyixI)E_%_wPmVBGA}6iWfl!oPY~xWuKDE z?Vp;XbyF8IwN`{`pa!S~ynqi-06(AtbwEAP05k$kKr;{kf2w@-sv;k}n zfddlY0IC2PZ~`uZ>D;>UcMnhv)Bv@B7w`cJ;0LgV6*V>ltRh8?4FM}UQDZ~E>Pl2t z2w3Te3JU>i4N+ksVBH@DtM@2agGa$iIttdqQLw6wf)!~LtSh5nbr=O}yeRrpqqq_0 ze9tS{SK_afznc4M@~ix-`Il2Kt1lN`O1~6+skk$lDF~O^4U~Y%@($#w?wxTZ_V5qyR~#n_LkLO8TtenyQy?z_Qv>) z#{ObHw{a41WEM>Bp zc&6N+>reLc{`?iGE7U6ro70=4n~RrcE{|Pa+LYZC-&DRVcUkf>ep&v~)TQdBg-gZ(U<@0u(n?5&sZt)S2p;g)`D; zM9(Omo;f{sdTC8|P2BXpz#f{{9#555=T;|I^VRuPsa5K#!pZ5AqbC9=QY;|^FR(e)+R&i!#W^86@Ms~*P>FV^twDh#-wBppv)S*w;NioOX?!AEi z17io4CS@nZCzU7WCMGBHiTMes3F?Hx`1JVb_@OiL%VTq6lVkbV{Fu}jbxffn-4X35 zMz^*n+j)DwE!C#d3-jqnG*S#_!m)6vHQO3*Er)WUWN7GI{b;Zl$OK}6QggOB-dt|l z)tGLKHWnK)4Y7t&eYQScU#`p5CF^)yUQMa0TJWd+QGZd%C_`uSC%xR8uT9mewR`9t zfPts_q=$R*?vz_~7hGvq)Kzq5oH1uf&dPDQT$QUzR`II5Bjr#X1t~2>r6SMp7`@@Y za!v3Dchmg;R|d!bG5e1VM;O4+T40`~rEMH$bq27H*mwrYf+4{X2Vm3!eU_GJ3E3AHo6dmf zAtfA2?}IYN*>+lO*Ut{5e>emcL8}0~{bOmnuc7M@Z(OtXg7eyk{zd#jOvD;!jK8?V zA_Pf<;9=9qIcE!resLTWT+1$G=do2UiY2QyY+QfAsT-jf{H~Xp9BGc- zVxt(D%^(*|f~sJnV2Yha|F72^XtH1KuVZyAzFE)aeNrLY+|4)*eG}!ORG77*rV;7OdRyOe@D%**Kmn9D^zY!-ADNo@M3uY8%IKa@N2=Rj^+0RBG@}W9_EG z%laMterg)$FIiya?iw3+^T<&X169FB!BeTKtY_!$<8Gkgo4>qwaooz`wKfjt3x}Y} zz(zrPhx4o)UT5QQ0XYdUP!((zJd3TR?|AAy-_X_HK&OAv(&hM)RxYo%ahV`z5eBM) zVZq7^Pr}Oa4K|Lu$YnDFRlz2~4Wi)_m&2jox8K=c&+6GSdYAs#WmX<n z6$}WT%g(2Bd(KdAIPQ1%H_{KjxO@IF^A;_)^m&uXr_kVG-gLTTb*d9Crv>xy7li7jCt$yYF4eS4Fb|F+kE1LE@s_M z>E@*_spSxt^yuX->Ch!E>GgwL(t-zEQt>dCv^wOH{@mh{`v2vWT=%)8Tkds9jg%e> zxTGnR-e`77i|%$wKW=hKXHfdA(ItK5PN!5&djQ-(^Z(tHuA}+?PD;wQSK* zOX*Tc+mY>Cd+#wh)&kLL?>cf8V4y14EV!O7lIK(XHT~B=a1+uyzkAvI$xEzG_q{eQ z)8s6|Kvgg-Sb2%ItiSi!I9^XKgA7y!1ANmjeAg+HkFol)_uKf~Abf%<0|SB; z`LsO257_wJNPZ#=R0YF=m7ieC+WVl5;|qjiP-S3PuyV(iHTWSL#}^96pvu6oVC9ad zTm8Hb+c>^RI0jV)h6O8kZ2A1T)yDC~GO$^&5|@@&+Q)2M zZW1m*m4VHImAJI5sgK*Zyj-{hRR%T-R^rmKj&8GYxtZKV7^n({1uL&Amd~C~*f_pI zI0jV)h6O8k+-21`JZa;&pPV&QR|p(~O@bFuU*GBbsiOlAy~oA7sE%5Be9FdShP*@= zs0xM!EB>l6%ZmE6jpHlHWq^UIV6z}@BF^7WH}$}6#Qg5=-UWS@&CxS9F0T?UL6w2c zf|a8{=e&*M8-!y}Wnfsaa>tfE&O2-z-zXe|Dg(oUl{>cV3VzYX z@lC=ps4_4tSh-`%F5#Uvj&Bx@L6w1F!O9)ax4Lk=WaIcN!ZD~aFf3TPW6N&-mu(#1 zA{>J%1H*!qJGQ(l_^OTLTZLm#Wnfsaa>tf;1+UmR-a^iTvYRQNV$x z(D;J+aoTF!@+$JGjnAy`391YX2v+3N@-p%@8=tq4p9lk0!LVS(CwQ{u9sJjA9N#V+ zgDL~Vf|WbAypMm)#_=8GEXY7rFd#T^mQOJ~l4(N@^vllsvS0Rf8=rRypP*!aAQ{6rY23WfzMKf#ta2;a1Ee7A56stgPZR_=J;8-&5PFm~BEzDGC)RR)Fy zD|c*p?Jd|izE?N~RR)FyD|c*p?R~?>@qNNEs4_4tSh-`%Yww#jj_((aL6w1F!O9(5 zUVFb~NCZ%5A8cPjvp6}L6w1F!O9(5_N0B+#_=}c7*rV;7OdQ{<@NW!Z5%%#9D^zY!-ADN zHeG+W>SO=AZ5%%-9D^zY!-5q${?9E==_=|2sHT*C&?N;ZDhl1B?qM&>G{8@%OyQR&;JwebV=K(4`9v$vYqde zx~U)Fhqt+;lPLX)`T)+M^p`Cz=@Lqe(qXkfPTWV&{~x-I=l{031LOal7f-RgKPcLq zn5V>v0aXTu1uHx;b)Klq-F<7b3pP-S3PuyV(i_Xpp% zar~@s45|za3s&yf^8VllHjbYYjzN`yVZq8BTizf1(8lre!ZD~aFf3TPW6NjrADJ9$ z_Zr%JRBOpuK#Ybv1e*n|M#CHXXR?|59St8kG{66m@?nGYKeh;~icvhw!*-D1?7Kvt zI1UP0g;mS&Ki(6dw;)&H4Rd_Wf%nTl|B1L8}m2S!@6J;UOHmEYXXXBZfs`o^L#;7Hko;ih^El>W>bOB9Wk?w?sb+<{391+W3EkJRiV7SuiMQ<)7YS>~A0Lf8d>z z!OcoL>)3ZsYz{ay*HFvS38e%00c7(tm*N{^OT!k*u?NP z@_sM_Wx=SRRSaPk?w_E?K=oi*V%7diLd+b-9-A<}F2Vq121W%d3uE9^>^F?Ksalk5 z!g!5bk7b}N7!b4ygI*f$Z!?{Zcu$Y^TTC{$3m@5df1UhJWS}e<7PRs{yj>XhE#SQ; zepEsa!Q3wV(k6s&kn@8WC=0d=T7@vYU0B>rO;gw6__Bqo<{jJBMeW02#h5(B^fUa* zCW>#069LK$3=3LCG5kafl!kpygn2sRuWdruMQ#sepe#5>&?iy5FC~+*E#S6UG}9z$6CBf)PQhFow5P1LtF2clYw) zh0|O+Ke377O%VeqGcY1pSquZe#=bF_C+PjwCWdd3-%bX~f@1}(VrXaW{Ri&1Tu!suOFht8axZbo2)73ChLzjVZ1F)1}HPIUC=6w z;U{CDY!1dT>|~f*tv}gB@eX;O%s^RioS;<{9jv4O;Qf}){l%g;T)53N|M&KH-O{|Z zZt3fnyQOL8xuu=7_ur&v-O{#W+)@Xn`!97%b@#cYTW7f?&slEi+L`oj|0nb=z(sE9 zUl+Qi3%lIX-#>Lp7s+m^e41NYJJl`yk>2^g@eFaiQQkjnw?TJWc|Ng@3Wiu3K3?KVMi`;nExojd+DF!pN z__2_`NstlAj}!bj$WIcy5AwGOemvyw68r?n-zWG=$Uh|biI9Ix@RK0_l;9^r{yD){ zLGDfP)sW=`PeJ}A!B2twG{H}W{4BvwgZz7fuYvqWf}alg?*u;s@;?cFCgkS{eir2a zCivMTT|0P!pMyV034Si5Bf-yutV-~;kgfzjAJU!R>mWS|o+deX9(GhG__L8hma1Pm!;1XnGf;%7s30?&mOmG>pHNl;b;RJUG6B4vm56OuMu0l>q@H)r?6TBYskOXgl zJT$=@Av+Vi335t;H$zTM@Brkr1P?+^Pw*DV83`UDshx(I3Eql7&r0wxp5PN8k4x~0kbMb0 z3G(;^KM?YS1V0FJWr80Jd18Ve0(nw`9}0PLf_Flu5P6RQZ0sji)u0Cx2YCGzD>0l@*S$hB(>AJ?`8!mZA-_wN8S=lWGDGgB z$_!bg$_)8GRGA@vK$RKthg6v%e?*lT@&l^OkUyo$4EZyv%#a^aWro~Cl^L=`bs6#_ zs>_hSq`C}AjnP`jkEt$0enNE_^0!o%A*nH14@r&D2FO29C5HSXRbt4!REc-LD;ggT z`4_6hkbk904EZ;z#E{e&$t1PYKy8u}fBq-cWypU~U52DK$pcAkP&MQiRF_G*USw36 z@dr+o8Isx{AEZo`8PZ9W8PY|S8Il^GI>;KT%#gKInIXMYnIU~tnIRRb%#ePn%#bQo zX2{7@nIWf8Wrn26-3mE_YB40$>Imd4s>P6Vs1`#WPPG{F2&%=9M^Y_@oJ+MBGETLa z{CPfAX2>q8%#cS>Wrn22VG<-Y4hKRWO_dq)7^=*Wi>We0E}_Z{*+Z2X zGD(#gvX?3|LL=({L$OX8idws?3m^ zs4_!dPL&z5pDHtChAK1Ul~kD_ucFEf`3O~J$VaI%Lq0~88S-(e%#hotGDAK=l^OC$ zs?3m2QDugFnkqBoGgO%&pQXwS`5aYdNNQ|OfTYG|CFFLh#gKWb#gIFw7DK*7wHWec zs>P6BrCJP0jm;^L)YzN~`8BG=kYA@-Oj0`yuTf>jpQ+6`19BHtX2=3nX2>_FGDH3s zRc6Sys4_!R8*?7yyHuGWzeAN7k{XwFkVUG@kpDxK8S;BnnIXSVl^OC!RGA@vj4Sec z%>5Hwkx71lD>6xHOdOCu#}%36FK|UBxd&HdlGK>EAb*7`GRa@#icIo1xFVCJ#-s-F zceo;xq{hSxNsWmQ@{hP8V;e+q1NGvcaABrD{}~r%l6!GsCiz!fm`PHb(f~TD)F3BXRaTx>Y#wD4g2bW}$)wm>+^x~3Ck{Xu@kkq(Lg!JQ*Oj5-qnPeR<$t3G> zNhaBVOESrWa7otB!_I?oWu`wLf-5u0Lvdv$IT=@Gl2dSHCOH*XW|GrzWhOZjS7ws4 zaAhVr8&_tMhvCXhlG>)jAgOJd134F$WRlc29Raxjmt>L&T#`w4;gU>}8l`!VN8^%A zk{Y1}kkkkzAgOY9K~m*D3i4uHl1W~IOESqzaY-ggwfq=Js^yCzsg^H++>A>y$t!S4 zHcmr7uFUjjs{Bbvs{Fl>RQZ=dUX3d=$!l}8nd;K)R>)5aF%I(>6d-o3;`1DO{OJK1-E(`}?8|D#Gqm)=UfweG*l-%5Y0{AT*i@*C+l%Cs(ic~^Q@ z`J3r)mcNnyM)~#h>*d$dua&=^{(AXq>93VvO}|=xB~9xsroUQ#IsJ0^CH7K=_HE3( z$Y0FR`ihx6&u6yt?HSsuG4nisKJy%ZF7qsZHuDUBCi66ZIz#IzW}f6vW}e_rWVZ2b zna8)#evH{i)km|BsE=fGYA(A~-I}F67_$$l4`m-zAIv_WK9HfE7c=+q`!e_Pdo%a& zdor|IV&*P>SBBQq_urAdUA;Yfn|fQ8R!7Xz?uyx4)myW-sJCQkWyI{w>djf&Q89a? zdSmtm^@c31hM2uhy)JvLdTsU^^_nd0pBTL=cV+a-Tqc^y^+)@2S46MK(aMLp%cGa) zXt%`NWzoxWmqstm(Q1dei=!9kE{a~1yD)lTj&?`PZH#X0+>l=%qdgI0>HNCbx;(AH zpI;kWo2Q)+^XJCS&C{xe`LknZ=g*4KdWNwx^Jm1)$kR%O`8BaM`O{*w=i#nX;-?g7 z1;YaEbXZswr?m^?w8vrmqynv4SXdcfS)g_K3$(Lgp)cN7I4(|m8pc=TX+Og}ty7p^ z7F#x#b}@|8>V$FH!7$!kpmhlgw0B`)aeQ&%m^kfP7(cqOD88sb`xO?BiXT;=y$TDo z4q;(IoOUUU&o9i|9Z$xKv^Qb#$mEg5Ba%lH4^JLmoRg#-36qBvXD4SDX)nU!%p|Sf zpQK#~lhcdSlC;uba%yo(a!Qf*9$XzOb*4H?ho)%9!PFt8gHs2WXs^N2fhk&5Fh#oz zrY4pqq-cl1)cDf4)VLDuEm#_x8e5_@1WO&Mj#6}Qd%C?$dkL0l?Z7haBUo-t)2e}K z+CebgQVynrW!gKi+?=MB0@Ji>V7jr~kft32)3i!px~@!n1@`;7KcjFZLpua!yk*)Q zuw0X_DOaayrT?_2>`v33fN59RnRb@tG_3=et|~jyv=3lfD)Tfiqk8=GKf4~F@&9er z#`u5x-oJ|L)!>lepKbb0-lZOsLl{VVZxcHNt@=$OEYd&G)Niu?ULt35U-V?q- znSo7$R&mgJRQdVhfF%Q9%ZG68^{>Cs+7Hk%@@=fbp^hb2xqBnD> zbMwM$f3b1?9dbK~fwEvk(8~Gn?&X30?cVrO8uu6)!|?89_QhXKF^B>}&_>2F1YIkJ zpdErWf>tqj`l%C7KLG>Fo@qbDK1-hc&BC=d`duW~oc)OCV>oUVv~sP`lDmpVQeNP@b?);gJ>+h4( zb_U9V4T4s#Y4wbL+VI$Ly|`QVOk>T%JpbLs^AE(A24w~|3R-#I=Swe1=<6zWQWy0w z*Z;6_{X=rs&OlkPLD0(eK3{s_BK=EKuk;Yl?2CVzJe!L&%90|=m1D4Up^RC1uI;BD z;i0G7DAhv>T03q@2H&;#;$Id4Xa)NNa>v;oqL1M?Bxn_Yk3QuS0VERpDcAotIn$hL z<@#sjpq+uTV1uBQGvhoDI5QRNVXssC$Hw!AsD4^bp7Fi!V%$&1D+J z$R~=FL(nT|<+!H5oyr87kb!e;6ltS~4J*-X$ACj^g-*@AR-%7N?m7Fd2m;3~4776Z zW%wWN=PjN$&)iURv#-H_YX$n(lye6IWx*yvD__R#fbg}nTf7~jy_`Z#$Mm5swPfS_ zH{>k zC<`_TTDdlz@!sKIo34#Re6ufPv+u#8rQLs^9C<~_atPK6TKTS~+pmEeFmc9>a;+D% zVa3{M;an@$e<0_a{e|dbIBpTNaz3nB$IZpsW%8x@){6C?DE|%y%7RUTR=$RvwSv#FxS;K zuFK@EgMqSOlc1Gr(;45lSP${dzNj(z)*4K$Sfey~Magmq)(Tqr9#*X5tA-Wpfr2)y zSl3!O*NXM0lfk$1^pLWpL|3^+qCYg!TI)Fu&bp0+G z|L=Fxyn}fMJxJsK6KjWz|F8QVYbXxv0Z_MwrW~?4C3dOgoVm7tz`ARaJGa#F?q>4U z=J9Q!|L>)I?eZJQnlh}V40~0|u-8Qy_EuAdy)~3!FWZGZZYkK!6z(SR1w6ioePif< z`U2!)|AFdJBiaVa{Nx~IezHQDpIk?opIlFwpWH&x9&DKbSt?|?sDUgORg)#{cUwi< z){^C-5G-xK-QcOCjQo^QUn6DIS3?=~`6#14g)-`E!U-GWTPS{tgXsHI_U#6K5`4KD z%6X-qa$f1AoL71%=atoz^GXFdKa3w(oTsdBvhM)OA7}9~>+`1l-js6{a`qtSwtmW4 zLe384+=!eXqnswwZuTQ7K7%`)4i=(n%0H!0{wbLvPq``ol!x+91u6dnM^K0cN|87v z6t<7DJ*}RyJoiQp5~=&Pm3Vi;YG>*7aTm%TIThX`Pl)={A?d(ezr=PpIt|p zpY7Q74yzyfJEC%}8>~##bgqW(MX#OYp;e0_Z>G$9TPgG2I?BAakuvXXqRe|$+Vipg z0AG^x!E#L>4%60d9d6pPsiSH8=d2^JtA=;*{vhwDqYpQ39{SM;KI*|ooAJ>gJ}Tj( zt#n4}7gB+c23v#?RI{NcMzjekMZdC%qF-4{(XUh}`jvi)er5e|FGEj~O<^DKG3bfD zvzuJ>dC5hegIx4E$wi-wT=aS1Vx4ajmFrE^QVcY0_fq-X%qsft%4&l@SPfs<2Bav|l2t&c71kP$FN+eSHeS5eO0EtGS2m~!rp zP|nnFzQe-93*tVFknyECed#VIWz*G4*>ts0HeHOqbe9*|jG@L5RXn@z*VIZEg(6WN z^Ieq3{4nJ)pV5h%&nb`jHOONGjf4mbK%$J>={xqxlyP5(GVY5|aD8p`9s8Cq zXekU(4DDh1XnQ^Vc%&_QO?~i%DLN3Id=yr z=h0k^yp&;Y9c9?-rVM*)D8t@b%CI+#42S=6_DzU>k*lL@`KusEjW{E8_Io+vln|#M8IIs*HL@N2U1iF7Wi{ozl2NED z9hCFRD$03fJ+&@=vE{sHcze`Fjm+3;YGlR+sF4}lLXFH=2Q@Nd8_1%0SbNltkJjL$ zL3}iXk5=KMjr36!JAa$4c81}!jXg@Fu%rhW46z(>9KXb2w-AEhzQ>d| zXCJY#J{YvZAOZsy39hLLx8 z-@IKgXn;Wn3^)wDFo^7vw;LaA#7EgK`ly7D`tZ><^JZx0NbV8CJEfPn&o_I>iM z#z&j+Q3)Td!bko1XcT$3?VEQE3<5B4z(9t93WJV)@~*{4gZO9_KI+6r>+sPr^ie-G zsM}20i{{QtRufvtYJyBw6I^69p`NVFx7SwoZ1wk8(5MR{PapCOAx|grbR*A(FU!+p z-$Gkjd+()d65T`U?XAe!x##DsL#2HwJNVvzu?}gkn|FkEHxbCB-ZT8eE_}ESAC~Z8 z2R_`24|@lGM8hk!xFh}nOphPl{rq?%_>K0T+pq{n{4-Yi)BJyZx(6Q7?)B|`Gxuil zP5x&7jno^_LUC7SS8P}5o7r!cU+?^S>1)}q#pzv!{40B3%Dt3)iNBQJS=y1^5#LeH z=km#XYB-a+>Jx=+>21+% z#mDoHrRXh&!lUU&qmSlt$sEt+x2EVlhVnzXhmsHRhw=}m9xUCTy+3|``M%tJ$@^mW zmhQ>k6Bj!_M(--#`TwwY-f>Qxcm987v?I-|b|uZOdRq+(Hpa%Rz{a>E({0KMFyIze z#(;5Sg=sbzOEzw}fb6)&1-W-4m$<}EP?Afv6O_B$=5q{s#qn%M% z20`xk`{Va|9rp9q?0jeRnHfDZ(tPK6K2P@k`2FQi=RTdjPrI*lZ}#5!z2#hrS~3)O zrgv&POZOD+P8p*-=657_2s;XQq^LDR<+l87$=ih63b&?iEp5+kk8dyEoVz)3bNt5g zw%oSFw#p6EisAawb=m9U*OfQtHW${X)~oA_*QT%4uFbDat`(@QLh2gz8iCp;q}Hfw zikGJ^Pp%fIg+gkTx~jOcm`bO#RB0eP5FeOA-zmnR$7`}nqH(WDlN<| zj4v!FeR|vd1_@KoK-k8b*4tG z46>)kPcNUAJ1sd`m|QqHb+USL@uX~DoLUs*CL|_QPE?OCj!Tcz#+8oC9;c2ej!uu( zMwfcCz3CpUrxeXbx&?QkJFg~HK`ppaF4a}CXYFx& znU5A&q}BkMwIpSwxWw3;tv{UlI6eR0GJOBf$NwAn9nV<|KmT{ONS^$eCr?0$fnLrd zO`eR%%{3%$TrIT!LVCRnlsJ8yX4=hJqmjwEI&pSTZ4%cLIeKyqIWY&%k6Ac7InBgt z4^yfstH$hHHDA_{p6fD^*VA)PBV4AZjmp8}|Z4I61=OGnfttw}{!)$5Xv-Z{uXiPOPZRhgo{yZ)M? z(JV6_s7#qQ_dMfZ(iNiapKm=!Y~T`W zaaMn~W@Wa>LhU@!y6G8p@K86GZHje0EnD%g9OT(wFH~q1& z==>2s1y5{}(Pi}u{IT@bK?c&e*<1`Xlc`?dA=5Xn=G)WwZJ9YRp@rsHt_jjm*<2HB zt$9+Nrtz~x|DcZk^>rHi?<^|+a)VV|6|sqxi^7m>d|`Tspj-hX{mK6e4N z6QELBMqYli$cT!#COI@+^gRk z3SNHG7vn^jNA>$R!NYINs<&!JRKLlhb!+!iMpVB^5d8etfAxOAi0VJ%g)skpUj4;x zMD?GbLXiKqtp3_GqWVundgt1&K_jaFh@)+;{a!Po`VSJp#eZp3e|s2F{ilPV^4|p2 zUkOH3|Bk0R-kbt$ptrQTQ|qd~Ti zqN6#D=v+POWy>fU<20i4^r(kjK+zsfBRXG?dfA11UC@Xw(4!u95nmTHq6_t?m!JehD|i$%qD%FtkFBBk8mAFmR*PQ2qo5JJpccK7M?oWcVJ&(U zkAg<@qFVH79tDl)#kJ@)JPI1oOKQ=zJPI1oPw7!F8>IO$P9vJqqdvBguL~N{OKZ_h zJPI1o6}9MQ9tDl)Wwq#aJPI1om9^;gJPI1oReIFRw$S_-rx9JPM}urDMMrZQ(aZH{ zfZagRUQQ!=r5+8koB6t+5xq)}hS+wRKZetYUad!i>=wQ*Xhg5kqhWR{%|C|Ih^FSOotbwMM#UXOa&PQET^L^tVC8bE>OkK#0~1hSP|?Qj7k8M?oX{YAyOh9tDl)YqjW)coa0E zduq`i^C)OU3$^G^coa0Euh*hOJPI1oH)_!`kAg<@v$g0ic@#9FZ|l)0`-J9?1KUyJ^ZM?oX{gSI=#uW=gDk7`jHkAg<@TeYan zqo5J}b}g##C}>3Y=}|vxr}?8ejcBPBweu)wM88vucJL@@M8B&?Bdm+&AIoV(|5=ZQ zSvN(G;WVQEqDM96rs(mUM)do7G{Axs?d3G0KhUE-7NV%eX+(dhM*}R(*9DE}k805f zkAg;YNRPT%FU^l~8qu;I^-%i@{N4bK=uh>imyMzMF-{};Gd=2K$52$`G@>8Zq9^bu zXheTmi;m|}(1?Cgi=N1%pb`C5EjocmK_mL>TC|TxK_mJbJ?dq678~OR&(}?cZqds;jMKw-D|K5L}{Wn2;h|2X;E~au8l^7L~%Fll*h+m=d zJe3_(uA(xZN*|RjD!>1YApSFzcc?rcX50ybG3#pt$#Y^Q+zZAsp zQ+c1t<5V(KE~PS^$}v=AD!=|%5I>~yDwSPS)=^nZWik~%mB0K#5PwMJ^Hg?IxrxeU zRAy2cOQoI4Z+|X`-=eaI%Dq(9Q&~b~3Y8$0|NfaE{+P;MDo;|`PGuF9*;K|+>7erO zKP9^wVlJk zi6)YILJX-9ft^BhFiiV7tIt@j(zj24MXr(lqh~CK=!>i0zv?@uE9*ye0=;|nrdHy& zwkoHY67?s`_;scDlF7z%k7i44{l?f#7Wc^!21=YN=Mln8J8?;$A!}G{4mVrTZ{^Koac3W4pv0+i9--_+L$=vv^pvJr)co1j5(g5)w90ve zvL_j`l=7@=RggKLCm+oAww95Q7^YRuBa}VGkfjGq4YGPx!%P-QjtB!KPL=ZrWluF^ zDcRZ}tEWrMWG8c3P-39Uc|@|4mef95x+vAjvV*5LeYX0^u3waJRj~6bgoU%6(@eJ7 zbYu7mVLXV{FBc7$rZY^0MLsHn!V)Abu=9v6KJDkk5K_x2t=;r5qtK8Mw9d5U*REf; zVFiD9z|R?W@XRJ1U00?@4>*?7NWsska{4%-(?_N0U#2>ma$;KFw8aZeN2)rjh2(TD z391bAaY8bF7|HnIB+qUkIfG0hQg zzWSoYiN)tHG8@lrMw6oc9{QCB7XTZ-09ZJ!oTxm@524sb4Hmq(0O;e;7}tV^tIkXl zQT+$ed=eGdBBFy~nv8CURnay27V57VYVAV*k+1TCqJDbs zYUW$w`R@>?nOfDdy-w|%1&e3Tm_BPp?WtjN!!bRNZngnQ+JI_uUE(SB0H@goR0lk% z+klygxpU{tpJjZf(N}3hyEQ#gZzjKx6e|4AUV_ zvkj9gG!@mvZHi_xtdR?nM3z7H}5jUrqShe+MO{~cbr|vO-=D@rb%C+Y# z5`Ws#&1t4wZ9!I3ZZyMb5Z0g8=+&!vm+|l>#vkNJoNi7t;pSa#GQ(+5)}I8KDdWLV z4}VA`advZ>DL3zOqZv+}Fgw`abgcDDkzS`!jU2p6SvWg6&4jD%w`<3`zDny=ta|y> zby~f?`!}07mB#-2$}2W;9*zC?k1yNARX?fhMJPyS*PR|jSB&%dH){q*d= z>o}YE#1xx&qTeQd;IoOdR#SU`RW|WclWpQ}PNrx1w^+q?8vpOU_0)EN$}`u}vQ*w) zM>NP zi$wwKfD`B$T*NFfpcfE!6D)ugkb!o<*|(TkT!0F6175%f_<;Zr1VTU_Rp+QLpu2Y?U|0h~;w#a#qTtec`h z2#5eZfChB#B{%`kenJH30la-4+6EvB!~iyxAOh_`2jBo)Ko`*6PY3`ZAVQ!mlm}?K z9q0f8yP|aDfDjM{B0v=A0b+m#^a5i5aUVef+5tPz0XTtfzykz;AP@q=Km^c$UO*U% zV!JHW7peMUtG+1Jm#*rIyZYj(zWAyyq3TPd`qEQ<>DH0TN&ZY=8_XKs#UuI)F~V0XP8{paNY$H{b?5fWI$^??yrp2mxWB zdn&;VcmOZp+D}jcOCNq{W(e(o9q0f$0SDj&{`cS=?%-v3FYVm(iRUZN<)2HE-+bZO z)U)cd#b?sbXwQ_M&ORM~y8Kk`sl-#2C-YAxpA?=fzA=lXJcclGZY+BvwB?c8-w?4CV$PrZBJT?6D&U%WGY zr*>y)M|MYiNBNH29f>`1Fa&!LX zqMB&ZQIS%3yvl zIVh0VeQK?`cK0>OYXtJUPhG8EUA!uNm3CF>$}G9wm#@fOk+`C=Cch@RMj-F|)aB~s z#ntK6+UnA(EIHtpSLRkGR#q;{kPCi!MQ%l6Mdi}`rO8W$OADz~N=+39(gWH+X?b>e ze0lj(Ida9XT#~;ed5LgI;o{WADtY6lFVZe5T{v)|O8)ri3$zPL%d*Sj%gRf0U{P5;^OpTZE@){)UQm-PfJb{rWMXfoui&pOr#SUx$9@A#;2Cg&Yhh&yT13kdS>yA^cnSi z;1j1+PR*0wzHn+`N@|KarFcsE6pdW>vy7es zZDJ{&jmOD_Ki8M&t4zpGNKOzY6v&HTJ+U}GJzg7MIw5;P{DkuHx#JVZSH|VXCC3Tl z3gpYL9#f81a8 z<$MWp@y~mcUcp=Nq&%vpNM8P$yVRZSj(3;4a$N~>^sn!;Uv#FOnzQ7{I^vFUXRb3r z{{H!nWQWjEu&3;*y+|(qT6;;!DsiPO=i~%={pW2-n_w$gQ&!blB*%YEDz#IGS zjX|!P`cnQkUhjUYw>sAIRL#n@rpOX+knH0$Q?7aqP`XH0UNnyqz=k+I(QFXc8#SAW zub|!TWuV0A<2+*Vxrv3ffsNt8UMJ2Dp5JuL_0LOBl;QJq@=w?@{5j*(HWN3JzxtjV znKFIGh~)1QlMT?T*lLm!Seocym=1APH(=zmF(dg)&&K)}ENbq)ytGM77uRdp8WN~B z8<%+FaSx}NSk>j0KIdVv{yFn&Z4#)8O{%YAdh>JrQ*M?9IzGwB9P;O!{hm zz(I+D9?qkXuC>UZh9C{n7q_Tp*Klc2VxWifD5Os|_L`c$G)U|H3C#8y-3v4ZN}L|f zqmZt(F`~vk4bpmN1vBYE5{>a53=*fC(@fg9d=H;o)9F0ZFW=OfY#ZMQOotd~CSQLEn?GY# z^Ce90^r0VRU0lC}ZKSu>cz+Oy)5B>dR(}bDSo0;Ut_@7)fZn6TOnMWS1|}%`XTg%1 zmkj+Lt8@6u9Js25`gT&U_92saPqF}~nYz*B!%!zjn>mNEvbnm2Ji4ci=3Uh!PCuua z{K%a@XU5zGOO0Ai*R+P6*ZaHawY>Sz*E+#TyenLg(@ec;lvMvoFF1d3!`{<{txlgE zT-&twdZp3tI#91%yrx+=ot$R+ote>etm^fRs&0H7BP#o#$tLKPeFtrVz;+QG4AWsw zvrRzzCf>pcf_jqxeXmSjfAH^CaoJh2_`Ob9yzt*_;t&3t`uG2qJp2D@71#dNCjO4R z|JVQ8CjR9Gn|LF6|F==O;~ksmpmN{aHu0E$v5L?A(I$?6)+WAAeg99P^8TAPF+t@k zz0=fY=-~qgV4+s+ED?*qI0}+7r)67AE zsEB|Cuwv#$8zyDIj=#5bV6qc%0C=dVsDv3AzTK~H>B1ZrLC$! z3`Bq^&;!H(Hb@Wv5wHMwda2;)rGlrI3Z7jmcy_5c04LxARG#&hi*)|0T1BE%x?yW`WAmPi1{HP3`Bq^Anu`M|H(pB+5j8={#O~33eXO8 zV&+dAm~;Xzpc^xP;l`u~@B%)-4+MZ95FyC_5yfN=z=j9{AOaS^O3*j5J5g60-hKH;~HjLTr_Cz z$!$bM0<3_7nWwj7(hhV0oqz*y0xqDNAkT1P(gS!2`qs|yVU8aN06`!^kQYQT*#pD? zfu7$hB47d9012=HHb4dxpdIKW$jcp=bOJ6w1-gK4zzv|0fPzK>3K|J0UV?nNAG{(+ z)VKAj2xhH~5|thx2Cxi407Sq7SPAlVHcZNZ0(4;Jjh&cu08XF_GjHj}B-$n@9{hc~ zAG|Yw89^WfpxJ_gW(!IT5Oxzpzyh=Z5<%bEJFS>w17tt}+5tNd$&kdZ9`IfV&5-j> z%yt1P&;@h@ZomV00UzK80zeQ50bw8lL;<#!-t|p^sEB|CXagj`O3=6UO&jL46Xeg^ zG1&oh0xrz_vWiJJCcoyvq#u(X1~3`MDy7@B;yYzQLaaF((9sfgXbVyBH<~*N3#jfCXp+B)|$N1o^+) zF=+=n04Krrrs%@73UmS8fE(}tULZh_JA#-D0bw8lM1dY423TSr>Kpr}w~hW#B)|&T z02xq#4uag%iAe|G1YAHjK|aQfNe|%1-^T|q83aN=6f@&Jn2Z6ek6G0<3_7 znP;|R(hhV0PRyLatX-vxLOoa4o$4+!G#`5{b(fd~)e1IPa06~JjtrvwbCk#Y@D9{7M0G6Q**dP!U z5wHMlfCN|p8z2J;&<@yv4xkfo08XHbAm7%FNjKmDynqkz0|6iigb4bU-WJB32oME? zT?7%Z09Jzhunm(kpaAWF9q0f$0SDj&T!0F60o{Nb@Bn^-{89juK_CQ#fd~)<*gk>) zhy;C0U$S6M8z2Ezzy`>GogjbEfyqw50jQYyr7lc%18%^FnP2x~G5`dD2xfjeib*y^ z5P&v<{9Or?R=@_xfC97wcECZ9f8r$STl*6i=Bq##;33E#dok$){6GK*0wEv_M1UyJ z1H=Hq^%1Te1PjmxNPrcv0WzQf?SLKV06GB&-~?QNO3*j-<1Wmp{M7{6g-91bMtyTMy)(OFUP3Hveqm*~&Bd zXOhoUp3Xm=d|G(A@KlP%t)Kd2C13CPUVI`&qt_Q7Pd~0bUV1G1Sp2c_qq#>Dk5)dD z|4fp`u`iJSyYNWi;nc(G!^MZv5AA+1Nu${p9!Nc)K2W?reZO{p@zd!~Yo9LNm%T53 zU-{nLy@`7(xqL2}6LN)JaD^}IOwkDU#e35CX!n%vW_K6vN*%WSKz`UGK6$HfYvGm@ zje1|$p4zT%FWj8ES-pAcP33GZo5)r&xlAHcxiNoZ;>OCh{I(=_k5Aqp+)!;fkl&Kr zB5WyKpSoVSzHnXYI`z6DZ#mGvN!V1_nA)grEN)0|&^8p;r`K!iOV?(vjbB?{ms_W; zE2XpPc)B#09gGi_*XGtH)>f{`Uz50|a&`Xd3K5^E}#=PplN zURj-AomgF2m0y)yRau$m?FDj|C5-k0xl0q54yJU6`f|&*0@({SYAcYspx(cJ&yv&< zbxHC3^!eKPrN!CB@x|puIcg_R^|UV~v&nd}+@I}__m>ys7Q`2n=jY}p=2zzB=OyO} z^YU}|otHjOJ+F9f`dsbY(wyv^_?+_W-0Z~c%BZ zPA{I8K21BVbZYk0_^IV7xhaV$l~eMkBu^1e=`(E^piV5t({U|c>dSIJ{p^JJgz|~G z6SWgdHVghF*S}?*A+G_y7GLvfsqN#_yw@G2`as^#Oi!pTf<(d@1hkUa0r^Ix2Zpbu zuV;8tAd6&yd=s(+^3C1gb~ktnPZr#YWPyAevIX>m9=rqj0(l1#2J)TA7|3@aWgy>; zoPm4~k_PflWDVq9F))X`fqbt3-iOSA{Ar{Ph1mSq1qOq!r{>kynskLt;VRgUo_lKx#pLT?5}>yNPcK z;9ES=@L41pOtR)y+}dGMdTpl zFCqycf5`=YSq1-rXC%IYjD-AEq$KDT0{prc{Du$wCQnd&hy;cF5i%3{s&KZ>_@^wt{~$f{|+e+`9G2KkbjS)hx`X*J>);Of&V3ee?kgG{xfnP z@?VhrkpHTH|J@EA;F*xWArm4WL@H!>H{M`KiO7Nz6kVVN`4PDd=@D5%enhq+K_c5c zpzH{w66DV#ZP-IUV=#@Yp zawxJNNfbGNEQ%aN8buBvk0OVWNRcDRq{vaEQsf@wQuN)3A*Uj1NT$d%h!L?D=@fZ1 z@+tBdBvj;MkWrD3MM^~;i=2vl9Fi*XIAm4ioC-TI~gea!_dcb%L zoT!151f)Gq62X&s#$_@xF7hczxyVzHbCFNAfv3sf={x~*1`;sxnaIG%XCVb6pN$-h zz8h1Ki;)vZ#>nR&8zWCs!RcM#44#^qiPVfd3%MD2Hj*>)9AstWbCH&j&qH2Do{Pkc zJTC;!4}%MMmZl$B8aatHjl2+f8hMd0mADw08u@&rYUCxz)yPXFaG4dn0O=a}LgZ`Y zixlu;WNhS1?BJ(5z~xBa=({oCz^s%LycBsHc?A+V@@2^6$SaY`kyp9F)gJJ2p2Jy# zoQ`}2&*WSg!1Pr?@ahnFO&DAo0SA%Pk<-ZP$m?R@wJbwikHn6=0ht|nqXpd525y$X z>#X4QHgJm!ZdJe=+QDsh@J6J4^xeoH`y*$O{*iBTf;YRs?J9Un7kFzocpI`o^6fkw zbcYwyJAB}sJT-I|QbY3HLGYdsxHAmy;#r*>l0@>oJ>Y#Y@YBL>;{77{0MbSBgKgkL zNEpcvTfs+c;Adp;Q3ZSq*&_LIq>JPyI*9si?C!*@yaRj^X(Rb5nha z2A@OjNPZs4Bl!hnkK`A9;7iCK$uA>;B)<{_Uk!n;A%`UIiGYPD_<9fcMhtwDr-?-&)LBDW$*(9{Cqq31v^pSjlIY+$;D3aiw^KhPVmbv z@E=t0D_!7MyTPxy!LK6$C4a*Ue$xkj=m$RvfZqy&-wuKMcxtK?!Sr{c;6EZcCI6E! zMEtG@{<8)Amp1Tw68NuH@cTCK2Qv6W1^iJv_+vZxlMbT38$+F#Rd#?sb%H;0fj?Kl zUvz;VcZ0ulgP(Z7UwOe_`@rA$!QTeJe+z>D9s>U(4DOGBl_>bT9`HY7;O~*?lK+5I zm;6WMy5#>tvP=FGvR(3@k?xZJVgvswga6HQUk8x;lK+O}mwXV}ui@QzlXYU2-~dHr z#AFK+VsaZYVzPvkm~2H(Otv8@CdWuB$0D&Nk40upKF$k{^MS|nG}{SCv&rL; zXOmAvqD`I<2KyploM+u8BI_nkLfTC}33)g9WC5Hkf~W8#+!Q3?`U59#TQdA3NPk)1|s{s_I&ZV6!l&}{-OL#mijIfX|y@v={)sZ zC_kBfau1C+SJ|E09j87EY05klXvDe7V>!w@lpak}e}w{N9V(CHsJBAt;WXtO3e;Dj z@?h@4_=6?tsh~bEl}4V+Qof;hU+O;LzC2|c%DHS#%M~ftAneNTOzbS*lch{Uk;b4C z?#|zpxT}0;mU=1_ccf?>y8IpcZcpE?QXhrnZIxSdx5lZ5LYik7lGHyTcXRya(oN}` z)SC*_I{_Jnc&0>s6Vw|EJim~;A%4RE^-9QZNo*-!pQSztManD)*X1`SHkYYKg0`th znFV2EenVnId3~1h3dL(v*9zC>*Cp1K)7i9^E)MRej6!^E>6$c+V^^SjLglI)WfV$R zrms}5EL@SK9tgQL@iiqH*-pK@usTWEgdFugD6LGdR96-*OJ0^)p{*!hnxcLO`BWlR zrm^m{f#UMia$$L%`W%!m$zGyeQluUS!o~TE5*L*()N=^J1^HzO>TTd!TA-c=mGg7w z$0>i1UaT%IEJ`k_P%ne{!csDwRH=_alKL1RcTk$2rXB_b${bYY=BR%`iE;dXKFKxlrs=!C&s5JWoRK`Ea(a$N(<@P~Ks~KM{Rk?QDTq%gQ7;1Zl)~iXo)xHsa-n#r6iibOfkI%2dIxC!qA%qWe0j2o&8Z8o@75`G9g)woB_O zQZ_(P^R9%eOt}EfS#+cvf+J5o0tP!&>J5;zS7>CvIQ0ccE2>hElhhL+XN%iPG}51H zEl5eq0pzF`K*^G}sFVRniWMOz#QFVyoA0UYGt~ayIeh=$L#-UN%%w99Bv)-9X$#xc!1eGiTkcXO6FJ)CCBBX+vUFQY+P_k%W*hCOtQTSZHpZca1l z5j)*zm{F(94sK{V+`JYL^cFd20^{V(VW=}9O*=Tvl#PA>`r&S9kfXPci3v~{ZbZA$ zWCQf}IQNmLz#ih#m<}<}Yy*r&v`b;GG^4o@?WQI%U0ko%_tRTf?Y1Ruy6xpO6RQp+ zhW1BQu@Mc=>g;wh2Xxt=dS)BAfEsB*eF z&79EMGISAPhjS&np@rTvq~vFy%IV|0nr&d4Y44i;Wvb?V)MWK=lG|EHKFcLRm4QA^ zIIpcYm87F2CUu4>vzmZ7#`^cj%k%(;nKrtWJQ6HObPAUH{$ z=eq`0r&T^@Iorh6vUMXgJ2Pk|xP0k?h0_<#m^Ek7;u#AC5liulAp2XkNljO8=W5;j zy*-@GZ;ikC<+K*aunhW2FPyOm^QsC5Z)#F#u9+{;o3-50qos4_6jdBnP>nCWhB($)7s|6aqHZs%vcg|nU0 z?5vkFQL@_}KI;t!z50tl!zJey6LI~L^CpQ4?7Ku4!*qbtOq>S5qW>U1!o2g=CLvu| zzutV7-rUPTmD9s%cD*?QtH;|~2)@k)L6w0X&enpaR*$#05PXM3{0vk%eVnL2t4uF9 z3unwc+~wwu7LxChn2&)frnI2gZJluZX)k5-p5(_X;<@9s@&o1P5 zx6u56)S?VjIU}5A7og4z#$K+w@b#Hqf$nJ`{CO@6stk;99=Y%ovk!J>3*j$tVNhjY zg!9OSPc;+X)k1hL7Y0=ZMmUdL*wlbF*Fw0+g+Y~p5zZqQ9(i?YI_Hk~&)3NNZ!(n+ z$op?Pm2W<36PM1li9bKxCa$IN{|=0^i91fSiGiR^d_G_k&wkh{e(`%Y@!Z>O;&*Pd ziG#;lMe&zb@t&DBF+?7K&yxq>6v-xj_+_g&@Au>l_$8aT_#bWJ_r7QoucY?>zoz#8 zgER)-ky5pgT~)nVh&p+6oruJyMGbz42+{e}HqhmE^wuNBSMSK8tZ+Es54?W)&F zyXp+COWj?9i^2zu~HN(Ij~X?D+yT1i{Ntn8l*?ViN zMEYnI``$IoJBraN&Y`u;>yE8sUjN{F<_!;SB1O`%=Q=I5m7JvG50j3+gLM3U((#X> z&%y5|9lxJ+{9anAGf-Q_fmI?{r4y?JunMD1^LwyL0ILMCKS^DOcBhNh@dRick3#Es zJhYBy6v=p8w2sG3>v#g#wqY4sL&X|FtkI4&yjY_bYp7VmgEjnEBUs%qTEm4kLRiC& zHGEiOG}h?C8eXj7q$<_!c*5~4)yKw9wpuIO>MK|BFbm4{wd`;U#_Frv;T9AJ>+0R% z7PQn?z{4&$l|F>6#^H(et!CXaRgdl-svg}PR6V*?svg~Lsvg~bsvh0lbOddI5$9@* zj%mO}$21V8V;Zo~XC3gLuEI%M2UyV`h~ibHg=`Drh`qiHX_cARW6+Dq?f+Di)1@)K!K^m7!~qR}`oZXB2x z4vY;4CX53U!-4V8Dt3KwT3UdB4+6aqXoo-#1bQJ5?&HUPqNDDN?!d|1i<8-fli7ol zIe?Qn!cS(rf5XWeXmL*v8&f-bM`7VEEF8tc5*7|(;V2dkVBy+{ z+lz&}v2YI-wqoHB7Vg2qt`_I4RA18$cRncfRqk*LYV~#Ra0^=ME8*c5Y^$%0hg-0x zkB)lnoKFUAh8o=oqqU)b6IO22-)6orBsImnDbW8(d=$HmN=$HmH zI;Md!bW8(bTC=hCM`$H)J8Ec*R`S~RQVs2wgY z)-1JsDBqI1C2>n-dwzSCT0WHPoEeiDAyc?9MJ*qS+tS;#ZNd$Ot*Nc**5a1*7HvzZ zp+^P081>#1C2I8$U!S;k&tUADU01R-gR9b)X_u8&WLLyjlrPOun}uXbNEHTB11hyz zD19pXsW`P+$X$}Sq;hfjq8znYs9c!8FnOVHp>RQAS!$WOthhA2R9o8UjM(UjDD)Q= zq!y?Piqu*`o8Rb!SemnM*1j40rtM4YJ3D=rMr{xDo(dYZJIJ0EKdpRf?$iXeJP@V~ zo;)?rQ&kJpUgx^aoylho2VQ+ajUzMOwwnK$X+O zSUi3J%bajKku?~|$?O6KUX-KU5YpE z(j!eG&Aaq9zDuCQK$Y|F-KEbosp;zaE??CN}QUqfH{syYzLwOQ6I+mGkf2 zrN^4obaj1~py1~UN3%JHvR%Sc z;%W2xvGDL^cz2V6zCZf&#BY*9lz}Q|g!70mN^#Q+e!hk9hg=v`85rR_a$(aio+n!f zf5e4Bm4Ok?BNv`#b{T%Eh48nyFsL#x!g=Jvrr&r^w-Ej|7Y0=ZMmUdL*z_CknHIwP zxG<|1x;UW~Ka5uVkXp~T(E3NN1v(h$;)K@3!)Q%Bq}B^9wEl@}fer?`IH5J^Fj|ui zsr6!$mi`gwZ8y+lLgvjUESxq@v*r_0#!nY|2-P>-s5Ygj`{*(UUow%^TOxjsWCiw9 zzKfXdVW62TwUML$hWD?|K@>Z~ueO;3FEJy{?!)pKjiYD#J~XOQOcV;6u;I&{zqIMlo%M` zJWBbRyJ)jZ@tzj)Kj!kF#J~XOQOcV;6&G5_|Afnf5(5LAM=4)3IBj+-e!YeK5SIrf z1_n5fQr_IL_>C6wWiAg&3=D7{rF_j}b=bD}Cp7lo0G09qn|LXepONq1WmJAao`0*T z{DGeNZ@Zqx{QHJgeD>>B@iZ#m`kGZd{~??B!w1RFkIJtfu!(6Zf1)w}9vEX4$Ns`9 zerYi+^K+}Xf00$Z>1S3kLa(p=)GD64&?^40Y!z4JXuVyu9u?*yufbPd`Q`KU{Qn|P zo&R6|kJ!}s1=TC+HeTPGH^g40^{bK^na;k%mP@e%nnEEJlihyhPZVCY5{ZBJz z1W*T_rR4zk&~wb`0c?XWFsBUI2VY{&4#2hlWm*^r#$IF25YW@NhdEeMRQ<0ipe0#I_LF;FoC;U{vNSv>YG~#n1?#e%CA` zXG!~do0qbVoaGuiws|Ra;01BWFc+k61A} za+ZJK#OAlRXGYBG7&$Ave~iB37)Lv=Fp>IM^u&>KW*g&}$p7%sA5K4D-}ODJ z4?rj2-1V_u`SfL7BWI~2XGwd1-@KxA=9)?8EQZOdo?f%@z@2u`jpepgC$UI~UBqlj z{x=N(%R1ZlCFySmJvya@?evFJ8C-}91OelYIvrSGa9G-b+0xV{%(iWKPK3r7RH}8Z zi-z!XdTDID;Z4{!To*fN?75~{&LQJ7*O#KE_WHK#voN5dLXDVc%OW)C#Mp|?7{K-~ zWVYP!F52l2XArQnMa&rhB0zhL(7A`;1|ooCh~NUcfe0Y6#k4Ts0z7~Z2m%=7(izxG z^`r+-XopFN-~gOJ6c`1x(P)cK8Bl-@zzMhj73c!G0XN_Qynu7?>l6UofCmTyQifm$ z9DoyW0V?1J0ze3e0UE$|5d=U4EI=C|0am~Uv;%g)0XP8{paNY$H{b?5Kp2PsQJ@Ei z0m5#A2v~qNKmx1)>|dO4e{sUb#R(S|`b-J%aG?*DAPf><-Qu(WFkhkLLV)KAeFGBU zxI%}C0E-GI94eeJrEtQN!U;v>f0Df*AtL0%(s2umPYwBESTI_J{xr04MDAoG`v~!uZY!<2xt3%jlc( zBU%lBCz%tTWKMXJQ3WBulgtTEGABIAsHza)N#=wn8C4nrJjtli5a2~dm4@I3e1IPa z071agM`!~izzWy^83+QS0M<_s0SnLuNPrcv0WzQf?SLKV06GB&-~?QN3b+9e;01g@ z6zBnBfCdPI1QDxonP|s*H;98chbek_Vn-^+n)EC z)a#h-Q26!2lA)g_F4yO2hxXI&6Z`(X^yhB+RnqOEA0%CLN=qjU|F*LAeTsEPfl+{E zDnSBlfCBgi2tfdY080}cV;m=Nnb7W~sK?8(iv$Oa14z+9#~2>%9i%IVWfxs7bHiIH zx|Y!aqbsVEbOeXzsk9qZsR3MScc38?UGcgxr)S?*?BZlT$GiVV`e^n(&ZMo>cBT5I zF43RL4jxu8S^c?a#pKg`u8k(081#@<+Uj_i&lC64TZaJ*^GrYYaJ}m%_yI3Am~4;u zqJC_!gZ9!^eLDy3zdU^4g1hfy(l*+U>eo_${#2?*-;c@amx2$I)oqQ%He&hNjwktB z2L`UAN>3n`0{Xs|dTlBF5zRY)MAAtZ61VTUydXM>~5z{<-pdx%U$9Ro>0Nn|xQGp8KhH)OU(+r{C77?|$~P@z0ju%Dt7K z-urp#yRW^Gpnm)LLb4zf3VTx2bHDgn`nBS#=~uI_l*lY1N-u+lVwVDi4~ zz43d~IW1SBKKTXek)Naf`02Z~yGwWNzB75JaA$#fo@>Zzi45s8@dW#`ulpZMkg;!}qW833c}R`1R%Ma@QrU zt8C71PHq-97dE9fshfs2hR8Ym4jBhVNf_FgKVOtgOwiO|BKz z7OqKAKmFp>>8rJ?OIKy7r+y|E&y{!Ob|rRIcII~`cM3ZT_oVJojs45s6(`4m+?|O# zD?9Q#lH@ti_~bo%Tl}^%IS(Xmt=y8oC3%Z5>~2`RIeoK6?gQDI;)cUvKGXahzH~#D zJP68Lb6XQzD_d$FhblP{q_5MiD{anhj*}NbZc}1YWn+G0lH3Ri8&Vt85k7~Bb(M5J zolFbq!eDAp9W1U*uhqzxAbU;xn)21Ts}tl*kiRNtJC6@`y3QJQ<)uqKH z=_T5d()n5PEhsO}QSac&qC7bl2#ewi%gJ0ak<9fEEa;oh=IuK#dtQl;f2cbf=4X}2 zp#b9^mZtCK;~gf+nIN8EQ}>;<`^>>Jrk?IPZD`7#Q&QwRP@Jqz9y)2yq|C(rc&u;# ziF?QII$_}WzH#iheRbmwrpHVj?dl!U_QWzh{n1!te`s%TS75;3=VRV|?%mykT~k$; ziyX!}Q=MvOu_N7~b(HK`d)!{8e*cN~ijr57iahAy9M{NA1U*q@xu!5VBsip#+ha+5_*F5at6u7~WlQn$C zftu+&jNlabz$vhSQ;xuW9=>m6Urm7Pn*!4}1)gsTEZ-D3z9}$#Bl~Is?A{c(y(utz zQ{eSxY-i1n9)@oU{N5DUy(w^eQ(*R{NC2$f6ga&pFnUwq^QOS&O@Ygs0+Tld9&ZY~ z-4s~6DR6dEVC<&A*G++~n*vui#RGT&Sh^{2bW>pHrohilft{NIH#hEHZ)_(#-ONqw z;pRpL*aUdFk*zI(+t|a%jcjcRuyG?NY(mY?9^P#VtlP-fmH^{61-@+xY}*vLwka@e zXsac4AHx=mB7hrm(#P0T2OLqA6{F z1XuwZAOi}}4%h)$peb-bQ(%CmH~|-+0$o5i;08Q^7w`doAOHk`5W(2aFy=%67@sLU zfG|XW>zQH!+5ic#0yaPf6rdfj1MoVdixa^Cz~M}B0V>c1bOUa{19$-+;0FRg5C{Qb zg0YR%|tjQEOlPNGJQ{YRc zz?Q7GotOi2G6mjbbt3}6m`s5$nF3of1+HWYOvw~@k}0qxQ{YIZz>rLVADIF>G6gnd z3S7t(n2;&(AX8vLroe$r;e!Oge@ub>m;(1P1?FQ4A1%O-sQ`d+0~F*njO}b1K0p|t z1w_CCv;nno1Z?B>|2r;<+zPZgd_J*hrf%%}5OzO*|_PJ87is(12v^4iNB!r?#li2BH(?&|Xo zBp(nSDBPdAUo~9**?on3Q}?R(7IW46`|PgxuJXJ7!M z>8;w<(w6L&IC=5qu1{QFxh{WQlHB+Tn^T+B&BaY=^5ZLQ%x;WtEZ5!hXNGAbUalg7UH)dG%G6=9eay3gp*U@A%Ki zuP?PoT~u6{UZ{~{U)AqF*PkHIzWjpZ0%1X6eu`ZCiu2O*w0VuK;q&Jv&&||1{^w^U zX9=?kGgC8Fa_>ve(CGd+J3UVReYt6gX_a&G=iolMkVqv|?)tAyEuGEIE}WG*OFgSd zE`HjXr8BbJ^FMcb;`GXC`O}i83FPFLI#oTjI3+zrBQL+~De+UvlXH_3g6{gCII%K5KR!8L7+*Lcb%IL1e(B@2 z<4fb%xWaL%<5cqXOOMsYmg?@wD`WCwl4FE1h0&?e>gXc*`)R$UQQ1-PQDt)YOK6o? zK9;2W_4o+q|5R8F7encgMlOHZU_4k3>l{Q`Oar+lif=uLYyZ;4vz6v*pO zbr-wS-CB2v-2UQSWi_WJ)QT(bO1cDB!I^TZz@@aQFYDJu~e7 zpHM1to_zlVxnN7#R9lgp|1@h!%1UvmOx}Nqwu&WhNgl%gf8U>nDlby|fB*3Ff3*Ma z+1=3o|IMZb64hit%@qy}pSpNcC<~{`Y1Tl(nHkH*HnmI|w(Y7~=+rfjYG{%5mdR%5 zEwX+=n<22@5FHHDJ)CBn(cB`7ETEeG;Xd0WsBeJYBI}nVGKPT?XMod8u(?GR1Q*Yk zR~v-3d93)iTgZPx!ebdIafUg~Em#Con(0fX)kgJh9y|Ws7TfS^QXkDgiPO(%whhBWq#6|sN1=Wg;>Lzq z?BIJ%>djRj^{k86ISZ%CX{O#>^`YKe^)YY6Fr}X}*$lnv|2u7l!2U#ZFiiJwnr%jN z)z^ms#?B2lMtr|XP~QN(>hC9!F$|PA1Ds}p%~c9d;qsuwzyRk_ z$~QDdY>@wa3;Ex1c~D|tfb%Hj8yX`v$bX@Q{C{$JP-0+!^C;yT8Y4Ey?`x!WuU|v<}}-ohF>4Gk6`+onKO+opl|+$E%@H+)R^L4aW0 z&wvk`j7Ad~!|uq$cfB3vD~s1|@2NgWl%gk!w$?`?RU|LBoE3 zr-gP0*9Ij9dO43=dve{!Jz3Y*FCx{~AAgJb08sh(Bl79{z$Wg0-zILL@|Vxq#5@0L z760~qS=@BJEdJp*S-k3DS^W5NSzPyj*n9K%Hma-t|IWx-EL*b2yCln&?CgtUIV&N6 z6~{>&vRH{p!kUOI5XfRBVGqG#-`YkjEn7=O+1IEL_Lhi3OZT|tDO;C_wzQPeMo(Ly zeG2)W&l!zIl0A{>_xtqY%QOQB+*V{T7hZU-0`pVRmLyodwUBt1reW~Q5IDdjjJj=WjmL}Amzv99LhZemt3jhv{Y zn<4dfDCfBAtuJTikPGiy299VAuz?(*0sKTKty6`St3e}2u>N;NCK~fsbT2M!d~X-1 zY3f?zb5q%^0yH!0nMP`vw*zot}v8c7eScaU5NX6sE2K2Q9YMZ~=<4w?m6&-`5CbF<>q z&~wDakzW;v7dCXXrV4Ifrc5hCTQd^Rym>=E;<=4H+u-tg*k2nspfzwm$w^`?(JAoR z!!&Xr^X3h5V8yEL?%u-oeW*Z86W7{zD+x3S(9Eo29z|@x#b=W$)}D8EdY(nNJcmBiBg{MyG4XYlcZ08W@Zi3NI3IKmmJ}|he>(L zzbT?ThBW;GG&5_NM#}oxtW~)q??FSAAqFtv6}C ziRHEE-xmIi5lAhDJ?QfX4wpVbxqK=6km(rqjangv+P9H}%Z>(A+^x6Yd| z{(ceZDJ%_|1z5`*sWd6;&*-SH&XfLQ5$Sf82F(JbMJI_Pl_q8V`5b*w%9H+}h;)F2 zd;&BxYnVpTdOxBzvs~rEN!ouZqTE56%>pzttC>d1de^Bc=Tw=#Bjr{3!y>{{NwP_R zW@Z)BNSIFJ%(X%l)&2Zfo@^%h0ems-G_fP_y_c%1_g?D1hum=f z#Xw%`y=IcUBs$p%eD(;?NItjs3U&?orSousm?p0EUdK?;egT@9wM-+i+};afOP4L} z&b=h(JYF04G+jh`Hi`NKXlB+hjihs1G^A-^maKB&6VCrGqI@h@8Z-;AmT9D1SZPw$ zZwILJQY)=BBK_|h-=aDAk6Yz;>3jcqzqH67(Ha1|Z?wwhyXd?BBUZVRo&ntYyj6D7 zcK35uc@%BWylIhVeM0XIc*ZJsJz$l;Pip`yznaz#_%DmRzSbuH{&lN-4sCyVlAZ(5 z`u`=g4!|Wh+2oHxHu-#so+DJ+Ta@h#BX1Q}HgEORPGg zmT5+r3d;1O%odbsKU$du`I~xGmt(Zlxl9WK(A2F0$JG_)?FZi#fx5$oMZmQ0GZ82` zP%Z^3`rT5XnF?smEmTckhV=DFUxM^zq_0H!da6W)%P2%Ls^dg;noyl)RL45BI)?ch zh6#}gWmcffW|ZkenYN>qnOhq=+>KO2^0-)pY^ZS!YAm6~GHUEVjlIK1s1)gIkzPi6 z6Vf}8z7`Rp*@?q9B7xeJqc)AGjTf~sQ*Fl84O4Xqi5*DnMdBtTwhXPhE>=)=H>&O~ zT6GJmQiZDc_fS;?s#1okc!saK73r&yUZCm{(w8HBHLC70s(Q=ecf~k6YU4(2JgAKc zRj(PQ>a9pzhQuBuZbae|ByJ#|oDNUXN|nILN;uh!O8NGZlcjLdHGHMaNUtEh59$3# zZ%2B0&+EcLZxM0QG=J(-{P|}Xoi5y|R8sb~M#|n+y6-d5W~Z36)l&906J_^ikBgRE zL2@sW+mXBs$?K3DlV8f*q$N`g{mzA?Mm?Cr%Az{^b3Kh(ah{qKlbWozFT zvrKzG7PHJgvoy=Hr&^kYDKtKZ+bExn^35)%e6vd^-)sxzn{B0hvoY(Y#o;l^S4#Qj zI4Iv7Gv%9OrF?U2ly44Z@D#XCFC?M2S!DZBI87d#se~z|RKgUAN|<7z5~h?;2~#TR z(6~kqN#C^ZT`|!{!J1f4hh|~}9h!*}1#6;0={`Uy+^p$g(4l+sSxvboN_&Pm z_!UU)L24UPmm+lyQe)y8Y28Cw^jZ*7;)fiOH-Svl*VCBMKxOuWt-kW*``-ew&_)rZF)6jn=YvJG!1hms@ZBO+e{Z_n^{TO zW>!j}wmQmojGM9@qfoYEYAD+=wUq4`%-X9Tdgf7UQYg!$TFNr1 zoU%-+pe&OrDa#~@df@u}6OWQt9;QCHQBWUjJ4k(SDf-}=z0?QGc^$TTQY%R8MdDH< zwj*&Z5_{oJKi#2a* z9x7mV6%{bMmI|0%M+M9_;mm!2#OZ)jmwNPqaE_uMXrR)18mY9NYAUU#j!NsPr_y>b z!?8ZMAE3l8N<79(iO1AX;xYAvhujfgUqBBKKt zOOVluj5cJ%EZKTeb2K`DfghvN^29*#d4dQi&D?Z}(e zu{XXqv{%}jxI27z>aN&b!MoCT@=6T1CvFShrrehNO5`hnFQ;ye-5R_#eM|h7;LYiq z;x~nEl5R@Ga^DFM&v_d_;JVbcv1^0Zrmu-#le{W&mH(>2E2CEit_(+&Xi{5WVRvA6 z>eASy!AsM-;unW5mb5khbLLfGt^d@H*pA?i^!D7f1oGBQI5%)^>YUg)!E@4^0%xbr zik%faE4?wkF|5!eBDI5a70gLFl+77tq-vk%v$GbR*!gs_K#*}tqXMPKDL5c>q6a{U@Mrl_UP7cuocW& z7irc;@g(gZ!^~Pw)U8jk70g-}>(>2j1+&&An$;_wru}1?S!=Imb&D6tI*OUKhIH#U z*$QT@%XRCw*a~K?D>SP|yhQs)Gqct{-FkqnVAgt)ZcVZk%vx7!)<*F%?H|L;T36}T zZ?hH5T374VSJ(<>ttac&SJ?_?t*2;KulNq_AIr>IPt~p8Wh56@&I@L( zS7=t3IKp|sto0tv>Jb6D@fpp`TEDJaJJPKA~HWXDgVs?$fO&uocW&6S}pNtzg#r4c!`K zE10$J*Q_qFfcCdCv(~3|>q54IS?e>pwTG=>*7~e&UBp%}Ykf|)p2$`(Ykgj~E@ms3 zwZ5QRm#`JgT3^(yOW6u$tuJX-ujr%wW0_g&0nO?XCvjddYfWm_2CwgKACq-`E;V`#I{_Q&@m`G>SUPTL;Zw$s)}+YH(oX#3~yB>5M#eT%lev|Ucy zdfMjGHjXwsZGZZ$B>$MUeYD*~+fLe6(l(1WH*Np=jU@kywga@?L)(?KZKQ1>Z4+oK zr|r-0O7y#cB!7dpTWC9Pjt-ea z7fSW3y_vt@*D;L-O6W5~x>sg~Xaw}(i!|0MZ+M9IjKD}+e{f*t#|QOHBW-;|aE`V< zfRRR9<%w&LAdJM1=Zb@7enwHpG!ieYxH@d{taZov#aF@NS+Qn{hyh1Lc`yeESuL|I4D_rXrxtG z^FSK})lKEAPm;|1JgJFkq?otbfu`8CY)S9p?!LUyPAYc|G~zT*TYC_1RBip~yqTZW*E5Z@ z^@f(Ct=~yeE6)?xp7R@t>kt3U{1ZR}(@0!D$8yE>TPbShIqKqwtsv}$%^a<%LZE$_ zm`AA^cxK0t?!45%0j+_bPSTP%i|7>i+{`p`K=00bY1SYXFDsSLM*8|sPG*76ZszCI zpQ@j2`Q7@!r`qpVM*8cx{-9ZaZszCIpP?WA!mlpcFJwmg>q%4n+04v8o_Ux?`udGz ze*8Q122l9@Mf(xX$bk*)0B9DVhxs`j=*XF+lmGo?;8UgGgfBe*HnIbtS%4nq=X79t z&R18OK%(B%Xnos=|32Mhlc&@6l-DLtbI{*%`b*n>dJo_X+Fqr10nT&V-(c6;Vee3&%^x)M7Zpd`W5VWLjgxrwC7l@Vo*~MH>H!17H8qH_z z?|@z4f2{qczWf!2Onqw#gfwC8z1KTPqE3JcvzEC|>=fI@W=%l*J76Bb#iFZk`Qo6_ z+n;NT2<~J-P!V7)v$)_~Bf+{Ng6FXys0gr@SzOTY{nqtG1kWdtdI2iTI_3s(J{`NA zS}3)@1C{}No9|wUpc+-Np@`xIq}3omg;~$sDK?2Mq*?IafOUXwctl^%lA}qwib!6_ zl>`+5)-iWb1;d7wTtTlUIcbGaCEZ07FCvvD0V+%{bHp#vZl7T!>?tCAF$;r=0KLqS z3(qtXZY&~v35hibP+`_H&!Px#5?c$7s>mExEIC5Aa7L2eB9gmE%q>8LNl)DA^ER=O z{@*b~vUGrMW(0jhS<&5h6w#(4qL-3HlK>T_mpSqP8}>!bMTB>=FsKO7%N)6|VV~qH zB77MOgNgvX%#jNl_D%jG!UHS}DgyK}M=m_isA07f5stDjs0h%@9Jz3}k#K7f;mcVV zR0QZ{j$C-Yk?^P@!dI{`s0h%@9IjPbBEr|RFsKO7%N)6|;Z=B&fv}anOX2&}4fMyuR6i^H zd5yS$E{ofTToN4vSPf~-s%6XPE$?2?vx1h$q~9j#KlOh6v&jW&n!26Us<~_zv#@CV zo1b#(h5@?j3#*{#bn}9JLF~`m^|uwMXm|Zuoo?hhfo1_J%zw8|Qwr2Hb*)ZNaIu2! zy8g+iPJx0twHK&pC1~H=@RiBNUztoyE7RyJlX-xa@#L>eJJs(@KK<*HFZW?`z(7`e z*0zUaC2)$0waR^4Eb@DQ zvd9CQEi`7rBHwlefu`6yok2JuUO^PwEddq{%@r1!&|NL zPTG$2S>+q2S>@_mtnwWG?Ps}1iWZu8K4x!cMr366ocDV^^fS`%guq46-G?7%NXTQj}2yRE`UsOtX% z&Fl5OPt$-02);vviamc6ZMF0k@3xY5f^F?bqOH2~V_H@90HMD96VYZlKxm-1dbe4H zNop%QOsJ=I3EJdNGv;hvPgNLUWn72MQk!kSBDJ~cmEdjmN6MvEM?~^Sdj5Dg3T>f}N`3_xe5%{>HTgiQM+r`u-vO zRlNigx#+JyY?1u6?N-TeCI!Exy;ky@dI@-`HYvDR0dLIn<2}w~BUDg4{Z?pspyh^E z4F%9&2Eir>dLd}1i1}rx)rK;H`e66oXod>-`$x_Eaq z?IhTs*$7P!G|M5^47n!AnV?h;r5Y%iA>x8aJw&W1--hzdC?Bu>^LV&+cr7*UB$T3j zFUoI3`3{utL;1}pzXatsp!`~tZ$bHPl;42zZ79DKe6 z??w4elQ5g9xs=Vmub^ZLK(_$M)^%B zzXIh;?NqcMhJdMEP!%Z%6rMDBp(i@ji7=6PJ(IBKq;NZn6++aP-Te z66Uwhc`4uR?9OdJ^_xyV5 zoc>Zqhl%&fx8W7*)Uyy8NU}|8r{2&+x^2>0f|qpLEbY|&SxB5ZRzfw2w>5QAr`Jp# zv^A0kZFS^9TMN26Ke^G?Om4K*lN(eX^;DJQOPhmyp=A`PuBFnDz8i11Z^Mh;DH*{9 zS7f+S0#{_X(gatmaK#E&O5jQjTxo_YKDgqAEA?=t6|P7=^1=sK8sLfyR}{G7gexU* zg~O^nSFCWQ9k@dfh!VRDT6CzaK#2!8sLfqS7f*%))G8$r39{+;ff4b8sUlsuGGSn zD!5`NS6prf9U?ky>Peb93WATM{bi);FC|rf38~U~P3LDB3Hm)GNS7TtKTV`XoeZ6% zHj<%zgl3ZQH;@8#2ZS^-LHQ*pzZvD1 zqI?U=_n~|j%CAHDE-Ey00jfjM4wPDkQY%rQ0|i=9mKkN)QH&MExKTnqN^qkDuNncA z;6w@KC_zC9PLyCn2^N%4h7xQj!GjVSP=XV6R4*bX)XawZG@}-hD4~98ExIkFQM>vQ zq$x!jAJWK3V?vrrq)|I$Gt$_RMhs9I6Vj9*je<0O_SS+lWk@3-O$pMNk*12$4BIhU zDMwp5Aq~p;6MfwGFXtoiVQW#Fia=YL=kK&MXqX!V4D+J zYbkM`p?Dg-B-0i=6@N3bp1-_Ote2buRd-Ar(ZT{N^zY_gQ;47&w z$G#l=a{AUd&rJ{ABHfa>IefEnbMmIhP5zq(W6@Y3mf92B6Wo*jQhY>j5FETV`nld9 z=pPuoEP7esvefR_?%?k9rSVHcmr9o=c7=B-yONhgF7aP7cyaXNz{RPHViyH3N?$nq zTLYz?i5=k`%8umr$aeqs!ALX`h@|>s{lWg^*2q@>*1;{&ErBhm&9TkF&FORF=Z4Oe z&P|*XK1Vqxxhb;AziII7=-KM*cV%O8Lu7-0!{GYp`oQ|sy4bqly7ZaxGec)eXC}ho zuo6zLjjZ*r9b6M#6IhcvBYe7Ydh)c$Y5vm&PmP`$I5l-j?3Cas>67CphfbDGPOJ{E zR#qohMOOJ&4X%u?46Kazh5Do-?+A=94K0R5A=m~)n zQpd-R4<4U8yIz@-JT`J{?i~Bntk|sJtn|$I%+O3}W@1KohB6~LJu=-teQ;Vd^Nzq& zN30{*kq*QIp@0-fw1?Z3_T-ev6#taLwrE?REj2kdIW;LZDL5%TF+MRgQJR>T5T2k+ zNRE$;_m3YO7abQEml_)zn;H`v6C88&_XDPUF<;P^ZjLvHnx*DMQ@BZKN_rz+zjv@P z+8Ag|d19WRC+&{ALvG2PaHSez4Z((VeY`$YFV!dN!gWervNlrduN|z3)&y!&)v@Yi zRiw&aHK;_DfRd_=RR$~5wEjo5JW!r0idNzxQCQ9msjPh9YBqP$bQ?a_b#_jjtl{}1=OxjNWRe?T(t zq@1_e%u>fdg6#-%E0mc$nxE`0QaCIiNpj)fc7J#Xg-=Af}0H4g4Mw zP!}IC^AZGA%%h0WO1!A8DyA>gS~!$ZTfsm(#D%(FXI;=Nz$)fQb@f$R3&${OYaE6e>pjm)b%#rHmjnT~;h2L4^_}m?PEImk=);qBysR?t`ogngv+J9I388HnnhMVpkE}hgcUh3$Thg zQr)~2t#gjAI5Mw5x3IU`OIl9uEKE!X(@0mp8t1NPt)I_BuEyO4@>*Z@7|BcG8Fm7n zn+0ejua3ZmT-UOtbZuNow;=@=JX{H$Dg8h@Q9zo>}(lO(Aw;9}-wT-;0}d3F4G!Lgr_t54&v z^YpdVV2q;w6zhX#0lJx=M}KPG(WkyGPk(Wd`tN6b&@4bV^YiG>$UFSh$K~lSDWd;0 zX{yWIn0c`q57S6r9e-XB|Bk!{K%=j791usA7C2DY*`aT#;@-x@RG3B%sDqaC9nkO2 z@_V4X8?z-()Nd|=-q#`eR8E$ z9-z%e+nqnN$Zi_{|J9$;SOVJaOBoWn$Agg*!0nyjjv%;m zE_hxSc>X-_f^MQ#jf>}F*Ch+UT?@fWd%%H3VDv=r^2Oj4OTc@Uf?r<--rEb_7Xt5J z4nD8~e6SCE=p^vrmEa?*z(-eukDUxYehT=+so=iTz{Kg`H_ia}uK}N43qBJDpFIpQ_W&I8{Rhkqb!Z%N?WGWbgq_^T4|*JkjL1^kT_{H+cAT`BmU9elqG{9`%z zfdl-L6a27(s8!?7mDu$c1w32@{En(z-(Gg#sS&3@3*0$N)^+bFPfG-w|KI>v&|abU%GuyO*ZOa!YYfz^}2nl^CK z6k?_xPfc#euC@R;r337k3QnB{PMZ!+p8?LA2_7>GoP7*<>}>G(W5E;VfSt#I!Q;Vs zCxG3Z;QS!CU@o|*3p{ZixVRfUe?EA@0`S6x;6**)#f!j8P6T%?1}|L#?p_LBwv4D% zW1ttiq9O3|<=_=7z$^Q}t4;#1T?t;d3cP+bc*Duyji-QLI2HWjY2cSm2lt!-#@2v0 ztp#rmgSVUs-ntI_@_O(q8^Aj@f_I(;-gP$k)lJ~n&H?W}7u>rUjBf$&*$RGr8&Rvq zz5UpAUj)2=JNUp3@WGwnL+62yihVz%b5jBzm%%4Y;Jy+tVFtfp0iU#jPualzrQp+c z@R>63*>dnX2l%`be4zsTRwek70v@OWlhxoWHQ=kY;CJf4@79CgZvcPbB5Kw6p&Pq? zD|Ez;{N2zZe7lax8dg9GDspzB>W@%|!6G zlZe*+7fr@LE^Y%anF8)=2QLkPyF0+krh)_0!02@F@)_V2Gr=oofmaj* z2!3rbc=r-;?@}Zz5{d_)`gX zeP{;%Yytmb1^?Ry{}*hDC`GM8w5S#;5#OhsOn=D{L& zgXa05WdUei2-1Y_FK2+inhE}T7I=tn`(LI%2Vd%cNqH&pt9eW5&T9f5l#3LNg7EY z?TbGVe4?LLuTMM{dMy2D?9srZgEW#rc_cyW*QXzfJrsCo@WBX;CP+LGdLVs&?Eb+0 zgZD-5Q|?RL8=^4Pyit`M;F>V(5$MFT}nO_`=|gksFm86E}ozNM9ejK5+fub>g}>t$d%l zCVGwkn&j2ttEH>sR|T(1(farPE0b4*uaK^YUmm!8FdCt?@Dl@}f%IiD8a*($JF;8Z zouIJ;1H1e*ZXkS#bV>Z;AdMP`UgWB9I0!3$F7N6+`4pFA&oo^)P(XOLFM zkM8i(sDbcyiB`xD(wKqD{=~M>w)EE6)&Pwfh-^`|BsPa=%s`CR$sar?LL&wen?jq? zXUAx~z~EVtvy`(E8$%n@8)6#*G-e>OelLv|NSzry(|=}?Mhi&c_}bvw6pa<|uSuK{ zIwO60?DW9tgEU@1IW2K&=+rcg76_a&cyi=qg~kemR;O3_RwY-4X$}4ONx_p+ebGKY zt)(AcA+3ln4=zuIq9K1M*&FVadgIH2%Ti0DOZ`ieG)_QT5?>r#oT5?itPpl`< zGq^CaP@(npLkrULWAg(vJ|NPq&`SFu8XXYp3Um$5jnLSDL@*Rgcg8vcor5PtPEbzh zJU(??^f>=>mZiRmLKhzLy@Y5RpVfxiSUKgxO)kf(z|71qG+FRNT9DwI8hl7UM_g}w7~QQR_kCSd z)bG8Qa`fLv#UH+(vK@R_R8$>)L{ykNpAr?m-u>i8|I?K2AfdYR8A>Of6&2S0=R`$Q z`}3lrbl*$#O1S<59BeDx<)PS?x_I!N9dWHhT+N7UDdOrzT%CxkjJUQSt}S~hu1$#RXvB5w zUW%&~adjZB<%nw;;#!8dHX^QO#B~hfT7|fp5!X7z)q%J=5!Z6WRY6=!5Z7kJ)r7d# zA+A-3s}pgxAg;}bs~vImAg(^d)sMKAA+Da>xT;kfof}tmS4(bO)m@(4xT?Ecxp7r@ zS#sl=NtGK{b(b4)rJ;Eez3B#Vtw3BYh^q~8^&qYe#8pCE{fMg{arGjuqY&3Ih^qy0 zEk|6-5LY|mYDZkXh-(SrDtvK@9O7DnxYi=B<%p{TaVZ= zpE}6ahWI%VKP%#AMf@5OzjDM+Abvi?&xiOmB7Uui-)O|ojQEuyes;vK6!9xX{F)Fy z6XGW!ewB!y3Gu5z{K^o&a>UP$_*Ec&GUDe&{3OJ$2Jx#z{K^r(62#As_?07mUc|2j z@skk0QnX7~ZV=U~wdMv<-Q~*-qPokK8$@+iNp29;U7p+^s=FExM0F~Q6+v_$h&BY# zf*^Vk#4-fY-%denMi843L=S@4f*_7U5K9n5JAzn>AleW_8-ge!elp@$f%wUYUp3-q zNBqhVzf#1{iTFu~UnAl-wv$3vjrdg{er1TC3Gr(|{2Yj%jHor_228C+OK!l_UCp@x zQ+GAw229;$$_<#ht1&lV>aKbU7+-1B!P6E5tsFrsMbOL$S`&h1N6>r-S`&iSgrK<* zG(UpYilCVgv{D4khM-vyG%JE8A!sH9&558%2wD|_R*In65i}cu=0MQKR#MPB2-+9~ ztqMVNB4~C5O-9gK5i}=)WFbAzT8byrhv(9~V^xj|ER$+l%?MfEE;nfEE-5!?>aM2TpsBlRacX7;&m&-V1gs1J!yVOs{`*e^{u6=! ze@5WYEwNjIx1{M=L*-3}_U!x8z!!VJ;Jb0~hUg7}8&dR4A$WcIy7+aW>!j-v*M_fE zu1#JOp(hK2S4Xc7T%EcqM$Z<~SH`alT`66epr;GU70JsZm;34YLNpqPrs(Oyf!%v9 zUAwFO5^?dt3!@hXE=*kzqvr_e^W*1-&X>+l(31q^yyVWvPXEq9dX^B_k=h>H9^9Ue zb2*9PeML2ONMP5O*DJwcGpNSr?WoP*fOYgf0g5-Sh(?OoBo+`oK~ zo)!c`sovZ-@FkXpmn!tcAhN{2WN>kGae$r~=4n8DG}(Sgw^dNL3km2QoV-%n2mqP~DH z)f{UM(({3MQ>aO5N_fNcgdo`%X-s^}{U7W9`+NU8b9x$$j?f3gWk-hO563B7 z53{ex@Q4FEJOVTe(8V0NJgo#-FdQpq=;OerCl!%TvOH)Opo=+jd0GcDSH5th>B=JV zFO#JDiYzm~D9g<>lGjJ0WrN?|Q8*eaullQs=zp8_L9+ne%#rJNv`;G>jFqRqx`_TO ztPh$6=w^;we_H#jyu&|BTZ%I?HA8!6m^K=(a9Gri-?mR9{tQ<`Sk_Q2rm=#PTZO6bU8pD@6Do-DYs5OWogRj>ZxS%bb z`Z~EFi4;46&n^LOr*$cZn*^pVp1Qnmn8j1q76@s=+Ty7{r($abs4#1oMoWv93@DWD zXp3%!i|D;UO7#L%n03tmn?*OzETZ@(X*CE?Vb(LT{3L=|@Ly&LN*cg^v`VfkBKa1H zxdf;%8l&zw;;*+i-QXc*A`u0MDuM@s}-QatYPjH8)yO5{vnzr12~X< z-Aj6nR#DqfMDHC^Y7(Hr^fE`hm|45w@@*T72>*hGK}CRG=E#K&mv1|(i10627*qu4 zWsY3faQU{g4TQC&&VEH=^#U|A73ROY)Y+y2HBDVx>I^!ytWel$@NfPRN;lB*Z6;w7 zT}%70FSB&pIRy$@pQF|1*IXaaEI@_%@7Cws0yRxts}B@vSwVMO|1^Akdb^kB)Ms;n zLScOlkwSw2%}j;)@78BaftseS)dxCttf1FI|1`8dw6KG~i;i+Cw6#D&%dTAjajmiO z)yKrNGL5c2>N<3|`e^IW=~tq>!S~w?WVONfza?2o{F&$!_}t7il2vCMK`MWd@@zc^ zKJ70M)Ev-;-@iv9>Z@VR{DRm9rjejJ{61eW_co(&_-WO0~lfO-4|L4;7vP^$zds(8t zw0)b#{?Ehs|IQLId;0VL*k8U@Y;VpP|GzdZ-tA0tjchcv^&2sBmxfR^uZxR2(I>Pi*4(pk6nebMP4S2`=ml}?3R=`>S?J&g{N z!{=x^S}`&zNOf{iLG!&-(EJ)IXnq|PG{1ognlGauufuh8Z!)FSQ7K(+Dy2)IQo5?C zl&)GTrK=e=YH~Cl%@x&=YSgG6HFBaxm8ek_YE(*&c)boU9jqcX$~fbtl6vF=beI~b zq#iew)YC{M9i<&KQSl=eupl%(3XQ)=a54_L5#uJrxE3+4M~q!Zcj$AJ-bf*K(_^%L z=iSawUfZR^TS?L#H6-0pM$#P)lJ2M==?-z=b>SI3G(&~&H?*KtZ~t;3zJYGZ1mYR@)N z6PWFyYR~piwP$;e8gXZl63d`^dtr^lfp^5D64IIECY?!*q%*1M=sH8nkSSIT4iiM0Gc?Mf;ebZ{(KHOoF%MgV8kFus=?;|cMClF1OCM4L3u-{?!VY%~YN6qWh7%eU z&~P11!=N1Nur;Vd=`AR|0;N}?ba(O6ht$A^8hD1UK|M62e$uFfh5`-G(KHOoDIK;3 z4Jchk=?Y4(Lg|ggOCM4LGj(KTSlqUim$zL=b&)eyY?(e6T$$0g@)gXz=N)le)4==U zxY`3Bi{t8PDbC|u2dbsxEL5Jq^e8z!$k~jXb;#L(oNnYS!By)Xx@O^?VK`k}I4SdN zFJ+!xLz!pSQRdkVlzFyHnO(zl$CRg@@=Wnio+(w7XG#s_nNml2hFqCq6b00O_+rZT z(V;Hrb*XfB$ z_4s;9J>EsB$9pLCcn8&^Zn(Y>nW#FG%~YMqwN#zSbyS_ne#7b*6yhX-{0khF>_y2I zlw60B>#5}7k8GyU!YH*A^P(_A1$j|FOn*tfG{F}ue5r>o4X9?dw{qKk-*V^|*ld|_?(Nyg- zOHDOnTWXL9~q61%3M+d&fK?lC3f)0F*LI=LaJ@8|iYa;V?8tqBx{gbFJ+xruN zGuiH(L~DN2XkF6HB%xk}I}%Dt?}HZ;%PFbiGE8Ga8WW|dfaeQyN>TeFSLKIdbP3sO zX?aKVPkJu}iy0R6`-N`tz+xeb!%wS|Q!G$&Zf^eSL5aqdBGG7aA7_%C{^ln`Ispgm zNXPdx+>zcsTw3lrB}yHzAvF#K!g9AWRw&&BX)6-lPQsyKJ%qHE(oLkljsH7b6>lVd z9(_IVdf=z2!O%~npA7ym`ork=1K&@*7JDuD-Sl^Yuclv-zMXhEbU->F(cF>nx0G)s zzZv;v?8V@V=@;TJgkF$dh(6c`Ofndm{DN!G{k#5P87= zz~KGS`}*(k-!mAG#sl%(H6vqp1@B7V8NV}hr*voJwt-s%x2Dw56*q}Ji7$n}q+sU8 z7ko5JBYIuny41CSYf@Lot`1(EzAAoI?%0XsWs%GLG$$jvJFq)>@xTQEns*U9KX`s> z=iW#tB1IDY;r{s6wdX45CTT{6|D5F6`Y4F#nVs2@4)N30(!7Y|>d0#U>hMb6ioxa4 zS}ZLNENah=QHagk*BS0qI+HY$A#hw}b}T||U$$X!iPYDmyr0;N7#7paR^hpMIOL{+#-smdKG zkg``=lIDonZyu!I`Y%4x8G4$&|DTtg|G$90_s=AL?Z}ZMzJUeeWBPk7rRBc3!?_Dz z+^9F8DFDvvxv|rCeD(CL?q5jHK85%yr7m?le3WW8PPY71%7Gqn5~aEasXScP^^|TG zowu0_6qm&r~ZuGqXXl#^Ofj&=lz8@b$Jfrfsb1II`I?n zUsOzBNGv&OTz9THwIaOHfO1jJ%#r76D*bQJ`cFda8d6OMz9HaE6x7?(r@U|O6rbvS zuZf2!<6o%;+-TL{@8+%^{*YYVBSzk8=OUPKWJoO1m)Q9*n*{>&3UI zR^L>M#siGqREyD6Sd5P8Lry={M2iSA*bcoeZlKcAH29Nz@l(_5AZ@!dMwBTNvfG`0 zgQi3!m=63v+(42CGLm^EAdL5-EQg0m8S)5@J<*Ox)q&se8|hs6uE6u_QBCIq2KQCX zl|K}(lL!CG_uzVpT%UV5~D)6Fe--Lae->` z(amYDXd_x}n%AxugXGkYE%ef8dM62%1?OfXA3lR#?J2|=rF8tzMAS|S2cvw?0r3Kv z-cT|JgYr@9Yf^gwN>JV2Et;uNH+2-07cFKNU9#`xmUBC`nyJo7YGSp89#|$WrSklc z!Yu`o(=EC>=ce-v;ij@aA_vXa(VYR^Z*U_SO$`>E9ehIzpeB=fO3HuWsI~VeG)S6$ z^V1x?htfU3Z3Z`CP2|(v+0F~6je5?R4!=g3sQ;n^WzNf@W}qgQ>1Vkk;J(>`UR8^+ zT2d|%l*;dkkEkNIQmJ0J9b?C-2X$W0$I7?_atqb*w0}?FigKsg7vMfEr#e~R&{g@l zo7qJvavx9SdZaY~_kq{MEmY_i^DBED9nubpZiuRtdxmR8kUNgGA@OUf&{R6grdB=% zw{x!1XmWgniz?tB>~M+BaX^O;tM^=Q^YjZS`)N+90RSI_ss^jFnTJcA#0n1v=H} zaX!tOL7h-qCGz066e#LxXr#VovC@4)m~=LxVN4<&9L-ECCq=r9(B%(%LQeGy z8D&&Eq)gFu)PHA$s-?Zl<@i19mz%h4|Ud%ZIou^(U(Z5E#LLzkt9X~-} zZ_w{hN5v;US4$6KwudcUJ0N~QSs$XqZgVtJzTqyp6i~PCW$^}i5vbyBl~tUrS~H>q z4RriI`PY#nTX8Dvf)wp+_U#w1P_FkVR&-_TAdl!CBa@5l<>EAYg{lybqHc7FB7K}S zICs?VSlL6~bZ|M3IoXE8Hk}$2A08^=KmYwF0{@A?e5WFstu>~uS%>) zh0;q8Ee@O*@9FIB?L082eOBc(5eQ7_op@mE-qt{KuPa%7$QdpV*d<%goT9gE{_$<^ zo=?r4;t%Jly=8MrzwjT@#{W~?@aFS@v0}-J1+)s}ioRvbyVuMQ_AFizoZsEzTfSk( z&TZQ__~wTyxS@ryp#|~g!C3>JF6mGUe!1Wn_-PoI5VAO)*vhmsYnWT;i^^GI zO+g+pP$tR-8ZyrCl9Vl{wYN`OzG36`4Li=xm0emy_5_v%?EDy&UI(|d_Gd2nk&1kh-@cGjTWGtS;I7vMQz<&TN-lIOAFz*_-OoOf0!bE+J!T_ zbA@}02nR`Wq5$noH`7R%25S!ZSeVu}?OVQV@tWZB<;zyJ_`0@j-MM|+<{|Q-BJy)d zxJ7_=rouFmx6$Ha^(^0a(o(8)-+5a%P_T!nE-#|mMS7D3XlK?ljZ|s*`+*i#rDons zqr7N{Y>RKj&Tah^^-WuM4&%UzA`Z+W=}G)B!OpB>8adz)jsd?K_2BY(YnF5`J&7V7 z-oDQL|sMZOew8XK&himT%Jz-v!&Z z;lozn&a*dgWLE6le%`vB=WXB6mh0!rB7TO*!)5{6nF`a$Pc+FI_H#+FXK9OXNthfc zJo{G_k;EX+Q3A9x>zGE8Xbvux44%}tY(-yiIW@=Nc{{i5*cslwGq%muHNC#>sb+;ySSSUM0YO@QC-pEo4094_{_~4=&ab#-@jq|j$AKJF5(4-?2e+Q z0WZKhrjZx!%;}_6xg%bhN3rKYK$s?^vH!L~|9X zwFuD8tYsQ$mW%RCPusO@+2VQ2R#9EMwr$(Ie%l3kH9ftE>T0ejXcu4&(@0gXY4>V6 z$LGfOcjT(?}DS@GAAV_I7tu*S4a6!-n;sgBfLbS&L=@x_}r zb1rHL&AA2j3>OhRjYLM%mv0Dybxb2coT%ze%KYHcH7nHM&JS<(?HCf^Gm8l0Hw_Q} zvSDW`Oe0}*$(4LW=P$;+$^6aRF31b)x*~FCa6Li00Be{=a{A3!=AJ0$Zm8fcaD5SB z+}Aeo-L0Kj$utti5v}HWEBkEhSX=`3pHxyA^%Zi{~fR)S=>61h6S%@+ zc9MFD*|}j$f1d2wMP%2JU>(oyvNJ1~MzR)Rp)WG{Mzw5d%d)M$+&*Yi5vBE{RL{SP z*_oA0BPBGQa#d;m{FY@KH|9#6Q$%V5Nj1@YF2oY7Vj4-Ie^py)Z_m6n6iE6rxp#J6 z<<2dlh^Ku`{LIhJtYVH#u}4+x$yeN5MDZ+E1nu;F6LkbfrbxXj>Nt-SGuIKy`g#6) zvCS$kqV3JeR(Z=eEwbq`i+m%E|F7FjYxPgG${n;lcL$~UCyoE7vHxpbR{8x4t@4Gm z{(s3rtNg{Ytg@Tt0PMZrDvzUg0Nk^|CQqPu06a5|<^^17m+$Pd${v$VzN5+}k2=#T z-{3w zdGePQk^hJ!M+wl(Y+xG64_o<#Jy~^{(3PVuj_fW_FKqH?U)9{!Ow1~#k$UC81Tmqo zt?6w(=XeZh^p_bpqBZ(|k|UB37BqT%Ze|)eqR(PnwsQXPZGNCYP;)?Q^Zz1|Q35nG z8<<9ddfauvf+nBS)eL+ZEu#J@>9z{c%&cb`sjF`j#W}94=ePJg@ym;df5ue@%>ry- z8i@~A^@0YUr+!5d^&_O%DnK){o@t~$T-Ed2dycp`a%F*dVS7i@qMvuEnVFdM>pguo z64$$UJ??sQ*Y^!+?N=GNp)FKlCsBzO4#Za&d~RfJpxgXS!~9%8-%aWN?zuf{x>l^& z!H)^Ey{kBKb%Brayhb7juIv zx`XrP;hCv=Q4~k6FObo4X*VNi7G>N-OiVk|sEODHn&>-6rio}1%JW)`k3Cbb$VYB4 z5ZBsg1Bpvw60uU?vx{jYt}dhkwIPl3#sVQtSZkbaD!f*J3bTf3)K*FciY=t_g(7+$ zQt}8;VY-<+=2++(_nE&o687olJ)U{I*IxbeoJARpe3_T_3 zfr7{^GK4gIQivlr6{u)!RjX4o*9kNWP+|VNb-KAgO;gwE1O*o>jJ!@gOMCj}Ek0T7 z&AiZ09J!@HMXQr`{`t60pdvswbA;!E+F^h6XN$aNt3__1zb|gF$V)%8$p3YhRX&Zj z_s+G-=a*S!$DNesZF)!G#TNMmS_5DaJp*`)zW;A|%_6^dflc1@hE@LHJ*&L+=T`af z@2v7=wX`(OwP`dJ;+H5VNh{3~d z9ztwqRx*tg@es_(55a<6q!(PbF7MgiwjyHZkk}{z+L^UXBQZQuRDZNvx%%Wai@KMe z*y3Ax;YE|r*|7cG{7Uv0(LI+GJp!~d6{eA{{xE#y5h3bim>| zr?gz0r?az&&NkKo?E-W%i|cf^`Fg;V%^z6%pP^!Y#BU9O?;H zGmV7x-$!T+R(CJ`65qXpeuCdIWy_Yl)_QRf)$>Scq5$p8I;N2-s;dqI!k~vWt9tND zEsuP_U=;d~ev8T*{&YzZ`SVG*Lx6UsmuV!A@6YPUGyF8uy*!AqAQ>CwulsLQq8<<93REUZJby(1nWqm!%vSHY^bJMo1nJ^R##=5kK0~eC$ zI04$34a}oC;N`wn9e&r{yL{Oa9+*URSN}mJsrO<7pYATAeGw%cBS1T|o@u15kA_&h zEI4mXMtbqK@cN<3mlaXQw22O$JYi>gnMTU`!5_h}Ln>LT|3DEhE}^8Y0<<%0m_}aU zN8b^RH;fjM-Nmw?U4T_gBiRv;H@v)vEG8$7<|#^cW)0IwR{x2+=y<~`iU{u};fVsY zGu=!h;m=U4!S;I8a*M|WeZM@;NMKrGgxZ-k%nRtp_02qLfXw=TJmA?aR&_6?p9s3w(3pXiejT5IW%hB=V&xA90tP(#(=T0M_dM*V+0uA2Kl}j0mc`$C7*z? zJ+d8N_!#-VJ@OUDCrV;FcTjed&9w>IWRq;JMVn+do5bOLex+%()J)Se@#p<-;Zt84 zJzf2K`su3btE!s1UZ*s|y9|VP(`F|zu$j}(sTU}m_D1@_E#9zv)!HR%)=_^V-W!!m z*Y_m2!$A2?(wxG;W=K>IFIjWV#A zQ|8puMoXa6&9if(a*DarK=N)9o5;XsPA_Mpqmo zUx` ztl~?5vWRoew}|iGXAxKZk)9*mOY;Q&!7Tp$CbM`yr5Thy&YHzjDrWJg8H>1ipIKy` z7V(r5j{4-C);`u6vyi_OD!TuV9rz<(-g^G#c^kIYJ^o||KWFe%B*veLfHDJvoMU_{ zvPkcl+5HBpU8K~(K$$bbIrfKjx)1ChFc6-=g+ZBt5zes->pr-D&_H-17Y1bpMmWbV ztQ+cw41~M6FeuZcD-Z_9F1%Rp7(Z+vJc$c~G6N%=V;5ecC%nf%crq6TWd=q#$1c27 zPxui7;VE1av@_7bc`n_c_RvXI^Cx4<(CM5lTHB+%%4n#!j~ZxAyC$wfCMr-z{T0$7%E343sznoO*)QZXb<;)Y)lat>XnvV_etqBJ=5! z2J*AGJSZ_Rz&Rdy`dW)BukG~ml!5$glAOpuiPO)iCtvLX(75;UlT>wWpO>c%)O)!) zC^68_IUe;{b?S|MUNWCPW1xN%R|h2q`Z>p=-dm?m{rnmZ{Idq?bGSMvG0@LB9`$*3 z>eS1xLH#)c^|_?j%|MAWz^SJ`TB(oEsgtKZehu=^8_3V&@}R`P0Oxq*XV)Kj>fqNP z|AK-1(Oe#s7#QFjkNlkaLr)**X^?->Kz=?+PGX?M8RXQHuXZujRJvL92cJIB)1d#7 zf&MXEACwpveVi1jkUho<*f0yL%N*3q2q>ffwhE01-6=KXIPGK>bc>d zYfOjIpJ?rxQ`Xiluaw=Z{k#9~X7RKetm2Po?*FqW{q(mMF-7TTzp;qt(*6I>nyuow zlz#rd7V&&azxcC7yy#aJ@z=k!h?i0NJ-zqe^xyQ}pYHwf-rss9Jtz3GS?r37uce=DWG4$^l6D79{+{{MR!d-nc|?|!#+BYS2-_5Pnb*ZD2hnfNMS zj17E^Ey>u#p|3HM31|W&zzW!aW}pRV1=;{R&<;2O7vKgwfFB3|K_CQ#fe6q6h{FUE z&;(cjD_{effi}Pnv;z*n1-JnZ;01hu9|!wXa-t19$-+;0FRg5QqTyK7t9K6fkuH0?o;8!gmTxCZGwx_YX{%pxVHP=mZ3sjL#$jCZGwB05f0% znt>Le6=)}rhYl>ufD>>5ZomV0fdCK$LO>XZ0386P0i=RM@OKgdKoAH49Y7T51XvHj z1T+B>U30ydx-XaQP*Hoy+F z15UsNxB(B~1$=-X2mnDKL?92tSdIW4fG|i90TW;bEPxfT0nI=Q&2l#;i z5CkGX2f+3d1fU6!05f0#tbh$@23i0+&`!Wn#iB_05+fnXajse00;pQAPU3)MpN>c zM2?NL)C$-E2jB;SfG|i90Ta*!NProz09L>TGy`pb9cTv}fDAYR7vKgwfEO_BBS?S+ zumTRi4Fvgr_tTOL1c5Nn0Ym}u0Kp7cfr$WfET#VfHlP)-12W(S{6GL;Lj(bk05f0* zoPZnf0zM!B1c5LR0iu8~OfUfwU;%7E3(yAG0SDj&+<+IrT!5w^(7JCWtqimS4!{HW zfB+BzB0v|w4iH4339tY*pap0H+5rdP1l&LX2(eYPDZtiAXayXA3-ADbAOM7bFwg-+ zffztj;*cAC1OYGsO@JA&05+fnXam{-2jB!;01}oqzA3+1d?Wov?2Xdv+1KN*mtV`h zmUyjF$QP0Yp->o34a>vDSJSV?UM;HKVN<>_gvz+%Cq@rlg|pz7M@8xBR^AoI{kF)>C#i#r{YhQpUgd(c(U?D z{)yxh!V`sjDlg}YL+PQ|Q0ejPLThxI4W&w!3sk_Kx@+89*W@texo zTsD!dWb&D0M#vOyOx-BoSiB*9L+pmq_1Wv=*O#~FwkNh%uFGGSyiT~TaBb>Z`P$+& z>1)_Eg{xCn%U2h#N?#SbsF3 zB~wDGurak!-dNm_-VobRIy-xI{Os~sxw8^yRnE+xnLJZCvv5Z04EcdUy$&-bX3+qzr9w)itn|5LB3bFr^vCeEj(G zak=9X$5j^O7bF)53kt{f9a}jje@yZi;h4hw)O@)%2Yz;5d|r8OZf;_3Wlnxha*i;k za8&9j`KV%Vx;NHanw^~;pIx4no7Fk16wk)v@p4bDC(%=xnV*@QDa9EitWfME;265yBCLsi~>*)Z&!%l-QKg zEp!(qrY6c0ixbilViQVT*{*n3IhKnhVwKK(XR=f1EJRaLIa=&Ucf>kMk!&O$DTj06 zM7R>lhms*7R0yVma?yj_?wGse%DUpN zvNPvQI4g2qPRfE@aHJfvqu8EqkF}TVS$o`GZp*bL+A6L2)?};DT4+hN$SuX@baSk^ zWXsy(wz4&6O;{_Iyd`N7ECqAQESr@%{`u@K&)6oC_P0jNW<#~znKIjB`CNhD65~q(-@A*h|SmMYd8UB2vXVHq2 zlxIXe+K*bkWgxzci-QsaeVk(#kJpRSyP&!;k(p0FZy>&$i-QsaeVk(#Z}@0Dy$Wg& zf7?L(L@o|W4D@l1U3_-^p4UESIr0wh3kKpRadA*$ppSFx;tgM`*G~BGj)C|JE)Gfz z^l^?|{HXdp*Ut9vu7UVUE)Gfzq<(|Mv5Pl+rCvMJ!+QqetGGBQG0?|3cJaCOd#;`2 z;eCxbfBr{M-f!dCr-MHSHF36c>WNoBQ(s@t8y?2io{ToU>;6E;g(kY@qK|v9HROW8 zP9@s;a)eXQg@#A5D_1W*JO#$VQ&R&DE6G!S1;Qe6y`IK7;D;?%JqLr=!5 zL#?^^ivC44ZEfTBMFZ_qNOd9uB~Cx5o_50vr|OPl+LeXz10kc5zJ-J2ujyf20vq z98k*oStK%PTL~zyWH7jWX&kN68&^e{&>O;=t9~(GuHpz7}P~r@5 z>N(Kxf_=mRK14y0Z!GQX;3pb+?J-A?ojl+sPMK3rzTsulhk_BbUN(&!^{;B=6nW*SpGOiC7$|Yl)MB)(C#Nbr=hRbI54NJN9&F{8Lk{*n9T${?JwPr9Y#Y(eupH*pbAfu_(_frT*RC1u zSeGt`>l#sJLl0mw~@y5pAE#X;jKp*Gf#cc;AaraLwqJzc( z-1kk3IEm%}c=A}Q*iHQap8JtSJo>L@@vZq*@o1U@;JqJM#FhU`{rIo8iYHKCfRBAv z@noMx{LUP!xQ_Y)eE%bhc*b`v;t$|vLf$vzvG^Ib5EaFv^{<6;^ zUQdZpTK&|N-uLPK|A`ap-v2uevY++5!YdKJcZScF8Gh%ieg8$QJIXF&-E!w9*6r;} zv+jziu+c}t_F5`nYvF>L2_)vHIK7u`SE9-U*68yu2$Xu z=D3%9>AR1XfbhQ0vF^^y1GK&Vhv>gOdsw%7;8D`Z4AClsdDa~pdV+ONU{BF!N7>V~ zGSIR288Y-dN52gaVx2Fr?n(PzWZj+vFVhY>USZv>eFU-RRYD)Z>nPA}^$^^BuM-B} zVBNmGZ<5bLZ;{UfpC=Fc-e%oRjxVro%Md}@M__~R&?>_O`@p*d_8#rWeu8cAeQfUo z+RHwIs~^}%a1R2*1kXNTKf!wdppPAOJ39B$Z^K1$a^Oq!-+_;41A7Uco{#Cj!vygF zmK>ju8-3rW!_)H%awGFc)@`CMHjSwaNE;mj9mmMn){bVr#hUPyH~#4%L113`)~o|B z`T4K(xt~KmlE=R`M&FgBFI8#2OFi;YD||rB>7;EnJATZT+S#w!Qgh#**;4BPNm%M* zZthvb2lVhEq>)eXjeYCrm=NnYoEO{)3pufjgPo8Lq&LoG~M}DBJh<_{M-$V{9GLr*~JjM=; zWz*6w1B=jY%DDKpQud_|%D&V}{x5AN|Ca`g{jYj4eO8@$FUj5QN(dg3q z$m~YuR%Es#bHv#DPNPE5M%o?pCBcSI-i|c<)N(PBo!3ON^CEQU=SAtz&ub&ud1m?y zZM55-R6g^kX7Tj>jP=F_Dy-Me4zk{MN1M>=*%vf8Nzr*{lxiuf!CMSND&FyhJ=r|Y-GzsE}#1OI=E z5?xdu=0e1_0YlY=ZYo$R6#e^*Bhy_fAhwk4-O4%TALg7bg|E zJE?C#UuPwnk0zr+w9t|2kUNTzbR-rjg|p#!xE#ub5}`^kA4~>?U?GqS$bq6i?T`6O zzN|0qD|>U^gty|!dy*c(Q*fu;vb*R?yJD`AGwX~y%W_Um$Q4K4k#q=-LVK!RZZFz# zq)Khsws>2)HP@PGt+eD@k}X0@p*htoHy3SbTg+CnX035+*^;v)EERL!oHPsOf|QbE zso0cmiZzu?SyS9p7IPwF{}nzl{Q2%k`vgC zL_5QBm{ZRI_2Jv{rK3H3`xlLxqOLrAyN(nlF;LFfacwC_!D{D)%rsKeP~h~$)lxnZcD0n(mAZyf{$m{nlu~{Z$q8%+ z(ax|O;?#41rdgrCypAtkL|=Hs6K%ChefqB&F-2S{Bejz?bGbF)GI zfPws@TppAd7~mX_yteOVojf~O(a3AtIW#Ly-q4shWllYLwRe+R@71WQi6@v4}%oukV{ z$2aJPg8pPa{iA{OQ(PL980g{DO1q+x_}~W?aoSJJ;#1etJO58D;xm7vc>pOr_g9+p zpVA97_un*1FVXn_V*=C%fZqEj-lli|pSOr7QQG$w%@y!Hv-oqG1K=Wh|Nq-B)4TpR z=o!`?pid(Yt?Hu!>Lar*958X#W3Bk+q4z&JXGSKi*w^|9>RS z|F^C0UwQc<$Jt)xeoqMS8@UObFmtPNLq=Bh-m7L+?jZypzd5MhF4U~bWj??%$X|;Nytyz_mBU#n+V9lzWyU41ZrfOE@)IwJEEK;*7Ek9Y+M!sfM8fLPp zZE(%1w3}pAo5-3~Y1YW9wqP}@QUfU(YGtcgl}bWZwLa9We;TPmWPO^7QjD`^{cqL! z47Y+c>;I_MXSo%uS^unBpW{}rX8m8)`aHLSHS1qg>kHfp)~uhZ)?sc1Yu3N3)&jSJ zHS0mu`Wm-_H7k3g`X7qM>)Z;~tR}_kXJ4S-yEtpsCe`{5w}LgRq*~wQRYlwYJzjt%itajD<3AchZ zYrAUw3b%qat3$PZm0Q7@RaUKE<5sX{b*k2{b1PW0x>V~oxD~8f-KzDQ+zQsL(-mt6 zYoca&3TMrFq+*RQiL8@3Yt|WxwS$>?Ua)4JsaPY-!t;VP>nz1Ok+sq9GdOG3*^0H3 z*~xkYXU*EHSYxc6tkXDa)}vIbgImFxb)I64FfaW+nX_g+TCsLAA6bv!tXbzP))@2i zErT`dF^VYA zfppV2Yu3ezHNvKlbuwqox|HU1#8yrs`Vyr1#8ypRqM^%3f8PQsMcG!6|7lrRIRsi zD_FB;RO@Zr3f8Py)p|R(f;H<+s&xmqf;H>Ss&yx~f;HMA$>z3gQo%>AgAC`Y^YG_`|LDsMbB)3f8Rms@6xi6|7nB zQ>~A3D_FCBPPIP9tzgZ1ziNG)Tfv(30o6LhtzgaiuxfpVTfv%jk7|9ETfv(35!Lz} zw}Lh6qpJ0JZUt-B$5iVJ+zQsLkE_-fxfQHghg9oJ+zQsLdDZ$dw}Lh66RPzUZUt-B zCspgK+zQsLPpQ^nZUt-Br&Vi#Tfv(38P)n4w}Lh6v#RxVZUt-B=Tz$(+zQsL&#Trq zxfQHgUsA2_ax3^*{=D@&L41(XwUo}JbR4BlN+PA7|5gw`rt}=8U6d}Pw2D#>B`2jn z{zeeLN9k=!4^!Gs>1;}Ul)5N2QToNN1@SACUZAv_(iN2YDb1qfru5(cA&B3n^bVy* zDBVD5Bc+9uCQ>p}`qi%l@oSV`qI4If0ZMBq^-}Uu`tvUZ@rRV&qx2Z145f1@Ev7Vy zl9kf0e<6t9p!5o*K}wq`t)n!DlAqFF{#_7%Oz8tkLzHf!bRMOpl%`N>ru5sN3*xsZ z4O6;@(pF0ADb1r4r1ZC+3F1#E?WObtrCTUnKxrAJBPg{}`u)EN;yy~RQM!-PHcF>b znolWA>F;Gh+)wF?l%Aq=8>NdVok(dqB|D`9`vvhkl-{6pKc%ZFolfakN*$CKrIX)( zdHr7M|9|S_x&ks-Vc(`P0QiH+)6n<3p{r8PzRUiUJx5)nLexilnSIVE{gBZQ8+~bg z)Gcd4h`MDha8b9c1s>{_wV^eVqkI?Ycx! zb5X8YKFT$#opQ~RDHlzS?iObG_y02sX}c3qhNg`_V>29?3Y*bMJ?v)0sE6H*ru{)- zMu0Lz8oLM4>JnC$v3d-vcVTr2t6Q;GjU9ey^)R_JU2y!GP4|;K(}U#BbQ`%dJxE*k zx0&ep+cftBY9Ogw<_Wy#pG-(KVWp$%{-TWNJdDW@L(vs?mbg zeOSE-t4mnD1*^*$?a+pt{UNGKk5eJ4g&c7^@FO<4dH;W~$pUraoNS^_oRgggT*728 zZ9uMHvxU}-w9}dqGp!l1(wY$;tr_tTf1BAyjtfRO#O$IyNPljY)*8|=#Hj)6b3`82z*FyE1J z6KG?BfKm1)WVa%F6xju2mysRwOa_8R*(GGRAv?=Zb`jZ~$c`B*1EZc?>YX*n-GuBCvU`vn^JxY~ zJ+stjw;_8QvNs{S8QHzaj+rP&jD@2JKpwnl;*N0SH64S?(FXP z?(!YEJ4!pVJL5ac)gJ%1v0Dl^r*4*SF5Z;R#*oSF?L<)+U&LQYs=T< zu8Ch&-j>^z*jBkRe`R7zWpjRWa+6t|yR=G8AOWFim!J4wl*1VLI1gX%JYLe+)|7+h{cW05_ z|DQXldjDVF|9|9pQAXP}LfZ$cp$DzdRglRZq`PJ)GLE5qi?v{#Oms z%1dKCY4uIA#IWq)9ILdp?^T1e@A+UAg%P((34g>a7YZx9?r2!Yum5}X{95Gp0wIKMB+U~Je*^d*0y1F((Irx z^3Fh!)|P7&BRelxCeAiaJ!!RESC6$?uGNCpP_9KCd8J%`p5z5q% zwWAemlSWNZR|>Y;&qm_CZM>X%YU)6b5jAbeuIsFs`Bdq!qXb&3t@h%P7?!=9W7gId z?FMb7JCL5X+DAxYSoU&`SzBAS8?=?qMta(64X*ZEfLh&{n!K>1nI|np0?V1N@7^{a*kPBdx~z*R=Q#7X{&v+B!*?0EQmN}ZS6U_L0jqM zrKi1@l)4xwae6t&tgSss*J-nZEt>kRZOqViwDZ=)G}5M^Wzo}a&2*8c7|=9Qztz^P zu6b!_&RTUGP@1zZlN^0HgJ@@1j&kZb&^YvC^@>rtLo1!;lxQmsC@q@WlTPCO=>nX3 zf{jBzs)E`^t?sHQ^QqD+PfuR$swXil2RO$guWi>FZ&hf}=Tek*zrQ@QWyxN;lVptAvjz?bGz%|G#JtOtx)$WoK!*YOg zJo4H$u0dYudZ{O`_Q#YMmIIvQk=HhJB;Q#Z450Mw)RR{`d`b+<0Zx+dT-_w*|85bx zC_PDi|0hyyP^XU;d^={4eVJe-)*_QUCwDssF#@4;JxruUW((rN;}TLFxHni#UT4+b^=e zcwac?i*)~g(v-UU|KUGWo6C#Y2BqCp{>_ZmFlbxix}(DmdUP5>Wm<7Geoo#HnmA=n zy`$4OG^N@usf{s)rl^f$LwoGiaYG!LTKxOuhQP{12g7nF=T>$V8!ZZSCqsYNow9tx z%Ea1rOV(_tez+S^;zLB(L7zrX(YG=LT4FyW4KJt6>ES$=ZDpHj5=G6QjFiC{V9~lY zD-wF2llL14{)h{LG6OxF#)1p=1OoyPvEU*-!JvWQzmkZLfikC;a|?wu zMM?7~W6sdb2W;)S#JZE$>M4c{6o0~Z3zQk?<~)b=u4LzF1X-pjgF>?~aq?n4y|97a zPq`i_GtkYMBCYeN*l7NY=p_~}UZbZMG0@x3^+1_{ZqD;~JX0DuW&bb_wVqywMo-y< z(iWiNwew17;Rl?THBsQtO5^k;5!p=kLWkX94)p0^;34TpZ2&_V+NzjPYd55Uy zM0HwbD6UzZ#d<>L1y_}z=UQRGj{7=4Hpv*uw=RaOgCK~7+;Ci6UKsV<G85TEUQen;w7#0u7utqeGD*h;rI!4KToBknqJv>Mz^Ug#Gs9ohl0#0E zlQlw$uu?z%MjQ7qQ08=V>J`_f4BA+nDD~Q)DF%9af^@({yB&dtQ+)eFSDD+8LH7aO%m@#7OkF zE~v{_ty{7Fkcn!hYeW?%l>1(FM3uzHRfReAL}^bm6GjnTy>w}9`YW2RrtZOM=2K;W zmU082^*|l9CGoLaAx=FHs-M<4bhlTmt~t>7t%J;`$`~*`2h0@fDSUXC#2Mz)b3iWy zE0?GrvZ1+a8bY9qGt=|HLLN-!L(nA75T~98dLdZ0ycPnQz^2XtcCbfN3bZ92#m&o$ zo{7`Lspo(zL%mf;DFxL#jYE&kAp_y#I_@Ynp@rO`DVm9PhUJNzdhSp>=x?3uy5%dE ztUh_2c4ix8JfCtD6fcyjpbqkr_)xztPCeBQ){&Vyn(Am1lr_xKuZ$ej^Ftj@DDgps z9h`c81X(cCJ(?d!^_;x6Rv@%r3Q)!;>iM7!T9o+E#VDtq4v zl(J{^?^|bE#aXMY;tO|L#oo(t?{5_+hOOcg)2w1FWECGj!YUqdxh{J3!jD||&;}y!p>E+aO!kwALW{q|@52@hwHLdQPo;f&I$04PL zyU8Je1&K6sII)vc&mr83y6PQTv~sbwb}OT1mE)jzpww=4D6PZ?)P^|q6c1@*p-9s_ zE>frd)6UDL49wMYKpm|s@iDs{oO%u%Qmx^@nkD^oM}C;;2bJN!dOoOQf+apaILfK# z!y(nW>cgV->((SzscnmPrZ#1iv7Qs^&|`@YKn`;1IZ>SevaW4`6KmJ4?yt3N+S%HU z)hT;QWk7jz@v>*)baLwHJ2FSm;9rgYAr%2m9depmpyP;A2_n1_OyHFO%iRpra|BnJ z)$7cWhiVH?UW?~5hkUnB8ON=}UvWdJ2~iTM4(^ut5brKdJ=sIfb2ZtMSDmzK^(m`r z$3a^mj@RtI){jo|qdJUS;)BVfoO*s7QW$G~EMHtV`Koq8&OQStV&p`1w7SH{taozi zIT2>z41MxYeXv<`f&xL$IhD_=X{$uSz>6*(3Q*!> zfR%cI!sllwjwVhYr=Am@OfTylH57+bj#`iosUeGWTvBQXy4?wEI?>Ls+{LNu65R=V zxJ%Xh_R;T%7Hc#WAC&5WNBz|~2qZoeL5NdNQ$0~MXddo{Xo-OXxYnpnb0G1_4uYI| z4yf&8g9C@TA6jale*_NzDDg=ZLY#W~IsrJ`?T|7pgVI20kH9n@08rxdHUv5K9MB2C zVeW>OX#$|F2qc3M|)gMyUcb$r*w5673Aj zQBGZF=&_8m&Kc#rgk2n&olBYaLW#cOfKvYBBr=JC5@(Q8Pf#0u2p;}A=_Jh#YxQT5 za&@*1iO;#w!KtUOUME$<4E;r`SN0$N5@m&f53|XK>YN@DpV=eAspmt01?U-~S_0t1 znk8%dSFc*zFe`Y&i@%i`7qo>C$J)t{yNOfg)N`Tw;;+#KZ3$G$LTCL$sZ}~|C=W7^ zBR2%Lgy>*cj&KgJP4q@(tKzfrZ>HK`67xhaT6)5v4>MP5#1wJmVP+o*`0-^VdeR5_ zI4@@d>|DlYUsiN|M>@Q$N2w;XuSU{8tM834S`VxE7N#F zdE-4S*fDS~3%ckldO=^`<1E-rAJ7Xr=>vMf$iP!97@$w&1;Ycc&{%i+5?-*CK7vO} zZxZNZbU_z=j4l}N>k@+Yo(V#*$uSiJ^mNqhnIjHkZKVr-A`fNg%smCXDSt(arl7?qvEO^Ym zi#AX{R9pGLjj|mdZD($jwlmjB+nMX4?aZ~&cIH}WJ0Tn8ecT?blOFl54SC>2&JN_1 zk<*EsR^&7xXX8NV2372|lQPc_Qs((>l$pkz+JyN{lzDy=Wu8zS5PnD|7czyA$&O6z z$Rr_?giIq59T|sS{fCs?$P`AVc4TrOlNp(8a5G3d_|VAc^aef3>BkPTe%e77cF>I- zY{m|nkrUxXUOLu?hKC<#59MDFA>{=Q%D+IS{0l6Ue?c4NZ_8m+Jj%!D2S_lzzzu50XKHQgB@tW4zy6-SVNF&d4k9zB98}o zyvWmvJa*`f5-!Ej2ppB*s2`37;AlG>ZAC_%XjNrVAVQRVzKOEW_fq!xKFUr-gAP-8 z;9oF6otg_fJ|oyrp%iWF;J>r!p20t`>0+lKOg9a+3)4df!UW3PLAlggT0O`lXrVm4 zZpzauP@Z0q^7IBNPj8U&xM(ht(WT6gazSbWBPjt=0Z0Y(r6fo>A=O2BdKskrkYa<> z5{%R?6gV^j?G!HET5qNRb$Muwan$fu985RmIc#li!CDTiHENj}sT+tJj*(0&>eW&! zR&Zhkof>Jw3SLN!Qk-hXrwtCdu$E5QQK~EX)J*Fx2-3P^tyMB*==D(sgBoOq6MkAx zr?#}i9>R7;*%hU9Iw2OoN;-R@)&d8uI^R8PT;ki%(BO7XDh#BJ9D+{y^*<`Jz3^zVz)AvFnBw2`3LS{uE~SMHDT{CbHxt4#$18UHIMl@$)f~$j0>@N4<6u~vop`O3%T#W9WRy%Rm{T!wvpj)vzsQKw~ zQS`e4)ckY>srl)0Q1jDe+CQ$!*3?JMX8@%lisqB`Q}gLX^C{AH4qE|D$mvJU4&;oY z;q@SAg#6Z2cY`V#MO*4dQ3|3h4WTWS(Ux}5ru3>UBmMavWC|fu7@3^N6h$VTsw^Or z7n#Dy6hS5zGBsg$N2wFF>Mdb+gVR`V?4RqXd}HHw2|H>a)QoYbj}LVMtUXMh(Xg}#twwA0|ItH#18ne17^yr z(_C1PCyYEI@|ch(fIK$njS?=U32BC-!bWmbf}>_Q8iu15WYme4+N@Y9`}_#$(v&82 zn3^a%6%9H}p+V!O#xhK2Joi32;|cwA#uN9`887IF5Gb=w^JAtwy)Mer8|$MpocCspfxnL?QoaRR?0KCo$?&EZd=3@`S9&!2X#COgBe6ZD zhqDjIA1*(Xd#Ln4_JQ~V<@HEPyC*8E|<&R9lyJLSMILFU6nh9I|{o} zyX0NPo#~zV+k0-?drSJ3*e#`-vp2_YF5i^9DREOJo6jb*Lbi}eW#mlp#`KM`8%sB2 zZ;0PezCL$-;`++={PyH_VSDA;{I!*<^H&$QrMDHgrnkm7m($rz@lEl|%a_G3EniZ& zD0NZ({N(xNb8_co>6?J*vtwuDYk;NGvZtj_iJgM40m^HN$x?r|Ki*$nom-t)om-h$ zSy_=^kz66Hh@Dtko?RYaUS5`4R$iK0npj#{l3$WsA}_)$0I`LoL^csSzI0snxcG79 z1-S*eV-m+y=I7@p=L_?b^MrYYxv9DG+~S;EZ=$y{J3l))TbP~bsm#pJOwJT$7G@-- zSEl8sC8r6~3P=$SSlvRik<1sct<&sizFhIa6X(1CW4hf zK9CFu0ohyhq&+cD$(?lU6f>2? ztQZ%|^q5Svl{!A6`~OP){r|wX*l!YF2V^ne$6!Ha$1C4Qo^8rSvWbk$;xWfhRbc4G*L}fSb@ZzW4KJZRIcvk?tI|vSjz+4!-Cj#Ev0p2GJ51s}12k2ZskwSbSefA}k;9fgeYzM#S0KX)IUv`2YxxkOz;3ppND_-!cKJaUP zqOu!b58$V71i^2Hz;A`YZ%4p=9bk#=Cw@l&|49V@*#v&K3H+V}{)-v>z6Jb&75t$M z{82Ob;}-B=Tfv{Sfj_l_``f{?1N=7`{FxK{xeNSvH~0$=_)9PNDUhQQy2!QV%~|Lgz{M8QfY_+NtKo6PzL5&WYG{8JP7-xBygX7JAz@PDn~Uu@uC zo58=efS;Wxa(CPziey}+}9NCXITY~th zH3YVWL3;#j?*JW9Q0@esG0@cox`iI1M+Chl(ANa|B`{zHgBCDk1;aKl(hPRAfYDa4 zvki>d!LD|2f&-i=gWXPWk_(*d2B&zysb261A5qzjX@2}PJpdjV1ZRZ6nPIRe0>(SQ zSy6CyC)gVUkLm*Fuzn(4uM_8q;L#?KE-Hz~NZ_$%aDfFp&I%rH1N)l6L<_jE6Wj9Xp;HMQ{aHS7i!2TeZ41sIH;Mxedt^+(d z3a;-2Pl3u$@M0%;iHoT0#-(ojbeRXd+zVde12_4>fdH5ef}2C&mN2+A0$$kxZi|9fb%IyN zz-zj|YlRH)IuYD%0H+Yu^yxR*7`oNqYye9zO8wBqQfu9S5_ea17I=}~`;6t6@!)%DS zM*trY!ADKtV@=@W5;$ZA^A_+4EBK@he5x6Ix&?fu6@0c0e9jI&-wwXuAS%1@qKuzj za)K|rz*pShs~&LJ3l@CfYku(c0Qg1_d@}^T6$U>a0pIQbzYqoAVS9=13gCMp_`V7J zpb7j?0{5E1q6Pe-75tJ7{Bkq+Q49ESEBHwp_!T?&)pqb}4x+LfUzhRIH=N)%UEsIe z;I}>CJ}+4Ef#30i{}cfKIS76?1b#0J{!0Y>eh2u2DELFRpZFsI{ILlBs|ox`6ZlgJ z+;0ZU7VzJ!;LmK}&zr%2ZvlVN3jVSU{FNR2k9P3a4x+Lfzmf6NZ=K-pT;T8B;D36+ z175J=1OLkp{viPVF$n%C1papz{GSN;=MM0Hqu^f{`xc!zXskS)I7IMM8YoI9jwbM+ zM6|rc%=nLB0YxilvVl#_pwt4ITR}@3Xtjg3cCgt&9NCYzT4?wwoj7PfDxEl7pxq6& zdq9U5lzpJn54r-NI|zD0pf?QqBA~wm3`D^o>m!B)Ff4)*6WGxNMkTP*48|;Amld2~ z11C0v-7VmxR&a6~IK>Xq+?d2897JU|rpfqex)VIo18teVd*yoz_ayJBK-Ph(b37Xw5OLw)!8&Wq2H{|J_c3``_y>MOfy2`aV zn&qx^P5K)7n!?q|t1DOKu8Ln(qB~r9Tj9#&m6ffzt?{j;E$J=tmIBRtS4rp6@pNf` z4dgc^HkGf)UJ=9Wcb5y7=PyfKR=zZQX^iH&9axHyY14l^fGx_;e_M~ zm8IFGv8BZ&sU^aa{Nlvo@}lgb7~OlP777dViA18@m+g!76^~CHFC5=-HjLKBc2aCoe|KeKZeo05X+nB}JfYB)?5f0av3RUR_w90LA)1UbH*x;OamOzBuv{U58%e1`5bt-LFZiL-@MuPco$)5$uS(v?OTTBiJel;LG3>&PoT zc~+6Uz}68R49g)-^!`9!9?hRjE4kXr*7HxkA2KL$y+%rrR{HVu)8^d_lsR3T=h0jN zn`xgke=?>FMhP!ot~(C<6a%>=mjh)6x;Qt{DD$nla%%sQLyqIA26Ah-1Sm7m$$2rm zg2WEpJ28XFwwABb>nC)Yf!bP92ry9Q^m9UOE4x4wN|veiprMYhOIIXL&>gscx<*sk zjM5Vr#e>G95>1>oPQ9XHp>NlRM~aG4PU{O!r-1E`41zpEM_MVRXOXDDt|B@ZmV=yn zm86B?@92f}OpTJFtQ67>v~@QFWlk68KU_%9GLYLyLOuq{oL`ZdH_&e^teG zC+H4G-e{nBE~&T~D08|v|KX~iGLSougnSH?IlY`!IlY5OEzMyL;yDJ2=W|6+W}ug| zs;GAmN%1fT@mvGN3%DXEGtkRfRoto^Jmue!gGh>pIf&;OC|*b^E(Xe+PR@U{K|S9< z?IP0gGf?LAaaJ4DLnB)4cu5WF;RelLU?6!hi3J!abNV@}l08Z&m4DSXyytKoTQ4-w zyo76lG6VgbRn54frTnXE#t)}?k%8u=ToaTT=;y3z{-furiw!g{Bb^Qg%A66-v3KCr zoo(h41L4cLFeo!H!Z~)~C3;r`ml_CP!G%GYff3HJ3oq3ZzRW;)6Nv>FD0BKb2k5fy z3K|ct`7=_a`j@ZjIb7Ab+(2`HYl1QZ{hU=zy<$w7@xy6eVW64jnxM=;KW9~QmS#7V zOD@u!bvVsU2AZ3>CMYw|&so)+t*<%zaGC=Knp?OgC^OK{S=H>-*X%uqEeQ*3 zH_^_p+{vjYTpi5~EesM_-%qEx{@Q46#(qA7#^yg}5&vhUMZB3(JEc7yi+KWlpJyHqdz*RM2EM>NzMglOC%W-H<`IWKr2h`=WuCC( zi?rV0mzYN$ilRT@p_0=638NeQ`zDQUkgMYf4&792|B*U5_RSdG5bHUIwS;QjlN^q7 zna4Xw=-7BY^R)NfM7zJA;2zjP`_Z$Lc5B}*!q9Fq4BkZ%8p<(`dG9?GgMIhXo@ef3 z9)aCY!$C3+F;8dT9?F(^lmgNJI0a|_5cBvc_MR5RIgB`qh_eZCb|TJZ#JL%9?naz# zh_fGYb|cQMh_fGYHX+1*ggAl_2NB}7;g6Wd(HLiS-LruN2|s{0`}##A+U8e^&&?2R#14IPa! zRSoXOn5u>j#I&Op(>BD^g_sH%ifJoi>P1Xt#MFzJx)D=1V(LIl1;o^Zm^LG(9UCd8 z9f)ZJF^%vB0Ws}DOg)IH6)_DUrqLdXDML)#5mOUlYC%l95K}W^>Oo9p#MFkEh7eOT zVjAHsKx0hR{SX>ssv6vlF;xw1jWJaXk;a&+22W#5RYL?Zjn-n?ikLbPQxP$3K}>y! zsRJ?fAf_(F)P0^K)!=Q6scJB@bC_*p@DTMZ4evdNxx5?CrGEcI=TQg#p$n)#|AC8`OWJrD#VpJP$0?7>*V;pH!!f_ zEeu#7v=4qB8gG+i=NFjEHAILy-l2^S5?c2YCiJ~adp=As(M5=BLg)Kr9VRpnen`93 zvzJ1$mxegB577{ZK;|P_c^|>l|1ph%7$$fQ5QM#T*C}d%Z3A8E6@>cp#QyHlezxte zyL3_47W()=$m)fQ`g6EC0#f^PM|J3<_Gg!)?jlFsNNar&QhyHYt-JD3fA(y|`Pfve zlTDpe9c{ye7Aij;8Cc3X-1CB$zn-;%o} zaZBaq{LRUmg_{dErEZd`Z$i56+k3ei6E{|F$ls8p{t1QaQ`gJa$F>h%%dQ!?YX6n} zTla2GZ;ov)rL)xcpgfQpNDNdqSFog;zeodhfun(d_n*Dd(Z7TXK15iLxy@7l+VnanK-j@MxOc@2xk;dPn|BGUZh?I zvC~SYW>1ZuT0SLrO5&8t`uzGN^))D*oH|)PxwtM(y$wohvuopP%WHCL@<~U3X4Qce z8&BG|yl+|Mggo^m5Kbs8O)ZtFFF|@qY)NTxc5$3~6XX^p7F8DJ7bdAcK_QV!$cbWK zntBwJj?W$+KfZii?zqHpl?C|)$pxun_s#D+dU$TNQX}GIgYUWN~_$`VEw(Wv9ibm5<0#&w+FjTM^e-)pcqbvW8qRLOZ@`M!TKKl>NoykzLGcVjZ^=CoG0O_xbyBL z^$;kyQZCt5bf&3~KuONZIR|SWXxrb?-@Mn_V<{W<{?E~C%c-Y+E%g<8|Nk!|_y42J z|F=!^Y(#lhqD-fzR>P3xqcX6q^g2d?K1fD!{k zoa1(2Va);U6kAstIB)}Z0F)RQ;vBaFi)s#NXV<#Mz=0dN1E9pf5a+lZQ0I4ToLMXL z>9qz9WVi#MMAMeQ0dU+7sFTU`9(!!vWHOmguQPBU%N+nE28KAt?SMMT?@<~Dwi`Hb z6L$cV7#QLlw*x2C%D^0r1J@fka5HxRlo%M|9Jd3@Y7WfRIB?_O9RMW;hB(LVfI8*kB8>w#8#u6&I{-=y3~`Rz0d?-p z#To~0F>qiPcL0xh4Gf?6Taq1~*FNL_`A(ukEQxV`12X-1ba1VC?lo%M| z9Jd1vmqHB=>@slRUhV)WF)+kAZU-7Jg&G{V!@z<2xC5ZXz!2xS9cZ`|YH(n;fdil8 z4uBE^L!9Gwpy5)e!GSvs9Jrr507?uDagN)8hD)Ia2ktU(-~sLcC^0a^Ic^6UE`=H# zxZA*i2e|{F#J~{exE*M?6l!o_(7=I*xC5ZXz!2xS9cZ`|YH%QD;K0M&0Z?LKh;!Ty zG+YWbIB<`F1AG1-d;cA$#&z}a<9BA3w!4&pWr1a3Vbv_x#j-40asf%mQY=f0B}?uG z%W^M^EO*BS*SL$gcaWQ0Bi!vI4micJ6FVYKuaG#sJSI=-^E`>a=X10J3(|;P{eG|S zUtj5U-)DBtT+SKho?+nLdoDWw8U*NPPT7H$N1+x6?(E>eL+k)(5TKtqWd~Xwg~)+T zjb;Dt>fpe`>;PyGpr5%j2Rx@3f<*-hoHfLV4?`7Esipij2oP+)nENTB+RX zGs`_x?%%^CJMJ^fcToO68f$b1e z&yn^=wEcJTi1t96Ma={45$#E`GE0C4rk|;2vAy}T#T_2eT7Ic`u!93nu>+t%fPUtb z9cXz(YjNPA4i0Q#2S9@W{mdyl(DI1Z;=scl9C(@?01X24GpFo8%OhHg1CMlY;2CxR zGzieooU#Kgk7z9pJles5XW0SJAV5EJ$_}(VqO~}X@8H05>;PyGpr1Kq2U;G{S{x{J zaNv1%05k~D&z!OYEstm|4s7n=zzggEXb_;EIb{c09?@DHc&vj1pJN9=g8==^DLc^e zh}Po3;~gB>$_{`A0s5I!cA(`Et;K;SIyg{d2S9@W{mdyl(DI1Z;=q#~9C(o(01X24 zGpFo8%cD?>15b5u;3akdGzieooU#Kgk3uaDZ0X>@%j^JX5TKtqWd~Xwg<2eVx`P9+ zumhk$fPUtb9cXzJn&5!=4R)ZyYM5QXVv>N(KqfmY9RLji^fRaIK+B_0ivz_D4wTpd&>%oRbIK01JPNfq@L~rC z%IpAW5TKtqWd~Xwg|<7O-D*0?FVXk@!>D|bzV{zO<@5Bte?FBr=zISWdzs|79-tim z^xgjp^u2!pl{YE(|G`vVr|~gr z0DLJ&YX;DF{~~?wAHny3n*4m$-l=`wqw)XV2%Wn2Z|f)Go0*^UU&vg?gYmDl-Avij zyKU2KGdS1wRaV7@wDnifUsu_-YY(LD8Mg7Gs5?H1=?)^b@g6-uip7 zY@qZ{v1~A7l$P~u>ywrtGv4f_9cqVATS09rh)pZ3AitP%++D6n4qIL+i?Wm2+f3t7uP`eAY zO{hJD+ESisJ5U=L17~BwfL+-(ptc#cL#QpIwu;)wG#I{r`?$X5wW6zJq#AQARAa8R z?Vn<vz)}#FgsO=`bwM|U>H?WUbwL+}>H-&q>H;(Q8lJJ!DD^l#q8!-d?K}rvhj}Vp z@p+!4Zj?6N*!jy@$kMc(orD*5WY|$*#|b;$$=TW2%OM$RSo@%n>8kJQrf0@YuLn0h zh2EEC2Hf=eaMMFF)!CK~wJoUKi`reNZA5K1Y9k5jY~-WfmF;fSwxYHHwN0qqkJ?Dy zIvatrtJ*!NZ9{D%YE!yAX_*JLk?nOh79ZJF?OxQjqqYgPEvW59ZDfg^J*`7+D{4DX z+l<=XsO>{-WS5A zS%Et~ZaLwF8(vu9g&kf5r{YDY=Q(60?)cc|f*1Yp!UiuK@M35xUUYgcL{{XEkAHpe z!UHet@Ir+bQgsTgv(xh>vNCskjC8{bFT8NT3n#pgr{YDY=Tu~c?)W&`4=;T1LWLJD zc%e+ii%!qGyLGSF?eO01h}`WU+U<6~`%QJXTi5P32<L{DCK-CY)Nd9wiKVJ=5v(QvHob`(Zs`<`y%(% z?#)rw#`;~M=3IzdOE;!(4BuF}A$vpQy4tll%C}g*rf^LnBV~$Lr><5h&tm$@@RgM- zvR6c|s9m1BG)8$93zsA=kuE82Ol?#*mMNcN_`=Fqb}TYhyC6rI6zk^}&P|*vom)I7 zbx!Wg>S?*tVyD&D71pVzCQnvRE}xV>DST4;gzyQKdU*Y?!eNQSq{Gxhq6gLI73L-8N%PWk^N~bEiWEmu zBk6tfdnWdj_AJg$&92N6(~HwmluxicjQs!MP-Q4P6d5W65&?;F2&M+r!Ll#y3;QaR zJuu>JnG@hFQm#N%Ej!YVu&rXvS|iq4Z>~4iUAGi035!J80aKI{uxv;h!iEav`g>pc z)`o9T|NkQ++rR(sL;Eg{{*=G_8;K?DH#{l8KhDi!Ld{z32R70+e@km%!c+$O>Kp>U_)DKYQN1|u%RtCwI8w;Y-qotX$Qm)Y5#O)L;KaH z_D8G*8``fmwLfMp*wDVy)c%CEU_<+!ruB(m(Ee%6hV~np)+>HV+F@ox`%O*j6CZJ1 zu%Ufl(|X0PxGvbx(lk{5C;7x5xGso)94Qq|>lJ_Gx?n^5ZB6SFf8x4eL;Ino^@=}p zU9h43o~HGPzta9Nv!VUIruB=zk#+{Nq5XlT9T0yf?Q~{C`$J9Z75^aZFtefkk*4*D zf0A|@v!VU5rX3Lf;#US6+Mj6JfcPKUKa1JW{#4Tj#s89a4`xGK)wF&gnQ=y7LtE3d zUO|bV$!D;k{e`CW35E7gV>YzE)U+PaMcOd4q5VkH4haKkXEPhx%U;1Ib>Z}jt)vYx zv4gMv<(k$biu}r8LwiM2`yy+>hW5&)_9fPW4eh6!+Lu`iHndl1TCaG8_75`~+N(9K zPrORnY0QQ;qiF}kYowjdY-qEZ)+=7;R|Xr}Yns|OSPM3^*EY3pvKDM;uWM>Q&swmd zy}qga0&BsB_J*eRi>w73+8dkNw^$1{w4Z5ezrc9nual8`|47tw(&Fv|(mLdxxg=ig!sn%xq{kX)WWHz)9XTD#b3ED*wB7X)B42U zxGvbxZq>A2@prBZHncBkTA%not_wD_FKb$__&3)D8`@Vitxx=i>w*pKtD4p;KH<7x zL;HrN^$CLo?=#rYzNu-w!btmvnGNmdHLXvWxGvbxenHcEX*B}W1smEgXuyb9op)G4#pKx$pu%Ufh(|U!$I+X{gTuJ3*Dp4xKRJy4A`uCFj zbt=zLxs}TKR7R=nPo8J9~-$?S0sC1=B!8323sg2y*+6AAl>@1Gsr=8c zB>5*)-lCGHat)Q!s4Stf2bFFrfBZ<2KcKRe%4ex;q_T#}K~x5){NFDn`Dav0R5nw& zj>_p&mQvZ1N-vc^|3Z?tQF)QdT~scnax9hkR0gU1rzXi&DsNMHoXQPU&ZP1wDtlA0 zQTezk$={~(GL?I%TuSA5Du+-BQV~>UUnXwe=jQPvaZB-C-s;-gTpX+z zmkji$`NgMd;*tgO)wt9R`C44+fqXqK^+LW8m#mO)#w8o%=i`zc z@~yb!fc#QiQXxxm$q8AGOD@Q-#HBvSuf`=e~s3 z-;tMp9G7Nb_fO)|OvsgkEiTQ5{6$>a6Y`gFX)nl+;?mwEO|M)Qm-fMq z%j43%kXOW|{UEQ5OCykt=< z& z;?i=+N8{2_komZ@0PlBZ8dNL$6&r=|&c_tyLd8Q!0 z5SLDcq~^H}lA7mfB(=AJTIqW1emgFm4oR)_3`lCFXF^gdJqz;dap`PGYNh8uQY$?d zl3M9`kRQaQ^C78~UI0n0bPSSOX&RDR=>|w@r58d{E8Pf5t@I+uU&kf!F|C*Mo46!F z{x(i`0Fu9pOA6#4<5CyopD2nU|4dN~`Ck;pkbj{lhWu}eV#vQz6hr=vq8Rd@6vdGL zq9}&^ABtj<+S~BI6wKKDe-zA+pHMK9q@|fCnz2KoXoi$2njsAo&5%ZlW=Io7Go*u} z8B(QahICRiL%JxMA^RzsAw3k$kY0*rNFPNreWPqX>GDy)3IYiM6Ig6qhat{h) z$k`Oekb6=XL+(Xk47oRjG2}iJ#*q6`7(?zyVGMaNMKR=jiei%E@58GLD44PP5DI3J zrZQch2zLC4q8XB|!yHJu4hKNeb(jlD*Wp0Ok13iV={g()N!Q_ENV*R5A^%R%4EYa= zW=Og&heFbIISi7n%i)l8L86d!L1K_}K^BrUy-gQn5q8i8Sqw=RBo0XzWC<^uDjeZhGHGAwv|-kYNgE$mtZ$ zkTWQpA!kxJL(=tG14-9sEhJr!VaWr8tIsjp7*cb&6xiHz;ScX(7mLcg@v>wt$u?*Qyu?*>Ub5JR3qK@6FsAcjm)5R=s2hEpk)v3niGGURC#%aH3SmLX54 zScW`ND3&45rdWnNhhiD>T#9AL^XT0d;>#pH{>Ioh>hGoBtG}CmxBm6? z*X!@3->H8s{k6rkn%ss6>o!g>r$iw1Q#yfdZ{xShz1ts~3jvEzsJ9g}cLdkK9$fGeYYY zMm}4lRSS!oBD7{<(#2J;-6Q@_!C)QU^OPp3&S3Na#YAuyY)sm@X?Ud9hwUbjP*G@{&nuCcG zE0hhea(sf;8%$6hz{IhYwTZPA$^ck7CUHze@dRZ8Oe`)_7QphtZLvhG5=~I< zzr^7c>Y=Yt*1rm^C0JRIpp^s@^DDHDVCA3$tsAU87Y4YkQ_>&A`;`8fE>f%}ULx%}mX#%}C9tO;1g) zQSW|jI5k`ge@y-R^`SJa5||FwX^p@-ITV`uo$Cx;afN0j5oLS_iOB zJ^uBsbXT3$0IbVtS^+RE)hRmu>&Abd`#$ymKRMq2&-4E`{guDzj^~`wdegV?P9fT- z5jDHm4cyW0XHIznMaxvqmKhvchrONy&0c(iz_y<`Wd~ZOa<(|2jS0|mpgB;$Ah7Lc zPT7H$shlkiXu}Tl9Ka}qSpqaL{mdyl&@z>?#Q|+(gPsG;;SL6YZ9j9$4zx_=Y;iyv zJfY`6b3}zfVB61}vI8wsIa?gi#%Jg`&>Xa35ZLxJr|dw>RL&L$v>_mR4m8Jw7zDQc z%qct2GL^H%0d16to&(LHCkBCSKXb|sv`pok;DGq#3*#N|ngiqaqsH>1Z;(+J&!AM8 zPNtp%?Nd2Ba-+Ik(QYzhM0Pev`*z*wERd~ zYp$_c%=kT68^fcWy5@m4m9sgp$H2pTd`vxyZsE>^8aY_UEv{VBoI}^1fmItMq-VZ4 za>yXC?PE^K{OF>2jg)uo`B$}3NP6a*Lz4^w+dk&h%r9=5Z_mD}4Rg{n-yHj75ZLxH zr)EChG~b$gRebWcPHWSWxuAu)xV0%vCsWUSYqKA}_N~o+LKAFh_FvXOchuEX-y0r-g4&5`A6mbc&JwSkM;o37c{ntO9Jqk+dXdYF3l z=wl@lY_-?c+DB$LKhyrLjf>PX-W)7x;31R!Og-Zi+L=JB@#QOZ@9)~EOFi4op_m39 zmg!;Y+1|;C9~E!TkZ-@cYlAxVjAM-FFpu{%F#DN$#&>e!OP4iHy#3bxfldq48ai5) z$}LP`I+%L4ZJC+W)8Ep$)>xdtAm+t1W9-g>p!cxyA? zZd-d$)sgRiV3J3FW|FH`lYGKSX8GseG|8v_#3cXv8z%XzADiTVb(`c3mz(9k{>~&{ zOy!@yrFH(OSiB}VbFW#J{$Y}@`MXJ0s9g6qlkBAR0B^c$a{2#$yyng4KA`Xa7moM; zViH3uvkc<{1^srQ!cZh zjPK-nwMORz+v1b&=mdrqod^b%14Cgtn0mHbqm$c8YjieZr6oGQtK)e-?@L1wUNYxT<2@#gn? z`i3!QVq9v&)b&g^$F3WA1Uro$q?6S%-TZ=c3Qlw3F{_S@$4BGMua@);qs6>74qnfE zb8x(Yhse|L#9f$gK54S~(PNe`U%YZ{^S1^12x_sejkDLY-W+^y;34?^Oudtz(8zJ} zuzpPQX9fBQYO$@2;@7j?9NKT-0sbDQp6v~6Z}j)>&^T~e9^~G9q)eQfT?GE!mVxDsvT}^+N2Tf zt=4R7w>F8a%;1?M2BwdxXKTX!1-2HhT)i~D_=xzb#+7dW0Y#gYqG!H2RmH#)R{EKG z<|jlr%pbjM)v^`M{6p=(o@jGk^lUdL!WeiujEAXbdqRZ6_LA80}Be?Fd@8f_7lPjf9?=ozt%A> zQ`#piqwO#wypA9`c$)@_)AmNOj+VMVrTtMg(=G6S^`eneF5I}`qIDZ_06!p#Pkz&8 zNHc5}bb8by;iQ-CXR1s$a~+x5AkN*vkRe0OTVR#&*oO6IoOR*G^&1X4W#fcrBJs&@ zI~a7aK~NQ-o7vgmLOp}O>tL{t4T7ow-OSDg7wH-NeFuYXHVCS;7AXvZoeeJ5Gx&!N z2K(6{s0z@{>})WuXYh|540^~&P=G2kz}z6#iwmi={mWQ+srL=*FI>Oj;`OJUGIHt2 zTs^~o>R{MQCVc`_ne?$r+h>XMIW*c0n=|y*3;IE4mksvM9c=p8Ca4O~%bb)=-8TDQ z9c&J;O;8me&B!3?UD565iIZHiX!+54@9oDOZ2H+Is0z@_oP^C)@zr`Z>m6(kvQ1DG zpqJU%<`Fxbr{jI?j`x=iHUn%ER0Zf|w%c?K8RSP-nB={vympjHUPR?v%T4l{hfMOX z{3dxL6@|)Y2TXF9%Io(VA=yV$D8rFQGL)8qeZrfiyhnBb%w7RW3M625l(V^~PdQHn_dQW6+eOx|+ zFukaK!X|=R?8o;pwIJO(dcHvkXjt#VXI*23v zII;&v8gQf?M-H}o>c^3TII74?9uhK?)2yxv=Vgb zELw(oJCQ$*btNWR@0?-bPDj&n(f>*}f7j zo$VXDh1R=H-bTw+kKG|$0~uO6+p&q3&hF3ODO}SXchjrnY3Xd+=zYR99D0Cy`97wl zv+dDG=y_%vEu9@6rB$=#46T}N-bAZrPamNLv&Gh@gsU&~v~UGRX~Aq`={Yi{w}lE>B=@+x~P#8o2OnmPO?G)3*Kcll!ePFHf5 zwY_k5sqIRAXKirS0cXu{wws)t@9Si9m#^r9%>*^qmPC&e-XeZ(BD068WcE-CnLV_J z%pN+>$!w<=^}zC#l%KgJ&10KoD=gb#*#yfLSoU_Z-04OAuuL~ZN=@3x_e?E;dgaA_ zF0!>>582w!+NmY%_zHuaJlnBK7X{2fYf545Eg+ZrC~oG2C~oFhDQ@Q2b{RMNud>U? z(XD16*TOr7lp8*U;gbzM*(c-EPF`g)KJ8e|NIv;n(iBg4xBB7PFg&xvGsmty(|wg) zd!|>-wDWh%1D^zaB+YTaCv`GD?ReUr$@sKmH8c6-^67udd&#+dC4640<)k33&{PI`9RQ~Adek4ujiAB$}sd8GDm z?%~+O^@j=%Y`Q0QPyOz~-HE%UJ41I=ZqL$OgxYQ8TdFsT>x$Q=u2rwCXY!vOy-)@{uD;%SM-0myE^5;!O)<3+u50jpdhO#b_$3M$3n%4-eCb{_J6q!)k}- z4vigJKcqn8`lUmP3sMWz1?Bna`C%H}pFKEoaP6SnL9s?wzT$zY1Jwh|bJKIfG}1qN zK;(ehoZOt)ocjI+8t*UdUyP(8YD5}Q_fz*R?~~pqyiaBC?B0dF5_?H|75A*n&d!d| znE%`!u{~n5>N5*76Emfm#TkX^iRsdKRzGRD7*2)NFmn5)hSZ@ljr|V?D}lmbVo(|^ z`cr<@FAWrZDWB>q)A;|CNA;9x{C~K=;x6~4`@(${SJoAAmDRKwRx6IIBjQl)Wts!9 zJ>y@tceE$nowXFq3A1D_no=g!BpHi_ltDF=X$C+_QI#^y00_$!8q<3BpA$E1qwoKT zxf8zsN53WZ`RsfA{lBN$nCUFG^wJ*|D_{fcfCEqgC*T7505{MNcmOZp0|o#;FbD*I zATR`k0EvETvB-b|bO8py2$%pfU;(;;9zr~`{r8J4z1U*~Y=9kb04m@FTtFY-2KoUH z;01iZ0N@7(fdCK$hJX+d28ID?gdhV7&;=L(BVYo|fQ8WTvm1MQfL_1~*Z@1=093#U zxPU&u4fF#Zzzg_*0l*Io0s$Zh3;`h^3=9Kelpp~zpa5Nf0WcC8ewwhy3|N3}paXeaMvwso=mHFchMz|4F#%@4 z0(1jCKrdhgY=9kb04m@FTtFY-2KoUH;01iZ0N@7(fdCK$hJX+d28IDCLy!T5(D1Vh zdklaPFac)30(1jCKrdhgY=9kb04m@FTtFY-2KoUH;01iZ0N@7(fdCK$hJX+t@&pNx z2@O9L?CAmwfDteOX21e;13f@5Ue82$U2L^!v5Cnz* zQ6flyOlbOvJzanSFajpP3|N3}panp6|ezzzyYX$6L0~2fE(xsJb)MQ0Rw;^ z7z6@95Euf4_<;NbWJ1$V?CAmwfDteOX21e;13f@5U^a57E2G{`ypaM?71@r-K zpdau6Ucd(o0DfQ)2mnD~2nYcpLy!m!KV|GufG)rQ7y%Pt1}s1~&;#@WR=@_>0SBN0 zPQV590dAll@Bm)G2MhpyU=RoZL0||70bnp6|ezzzyYX$6L0~2fE(xsJb)MQ0Rw;^7z6@95EueNgodA@M0+Ga1{9zRFaSot z1egH}&<*qey?_<40d~LvsDKl20eyfQ=m$K27w`cCfFBqH0zeQLA~gNnMtdYc1{9zR zFaSot1egH}&<*qey?_<40d~LvsDKl20eyfQ=m$K27w`cCfFBqH0zeQLA~gLJ-y%N& z8Bl;OzyKHl6JQ1`KsV3>^a57E2G{`ypaM?71@r-Kpdau6Ucd(o0DfQ)2mnD~h|us; z3eg@JP=GGL02l!iU=ThEYLDk0k3C+0tngUkG3l}5=G10&bGeYF z+3A&hHXq5?9?d-(d$j&Y;gQ56nTI0}*B;6}6nm)tVBx{UgVKY=2T~8H50vju(`@z1 zec5K__InEVB<_*!Dc+sBTfMt{SNg8-U6nfp&0SA@R{d-_m(GQAl}%Zi!Ct!~cSr1w z`t60=6Sqq=k3DspdRzI{^sV7rE4O56Hhb;n+|99@>o*l{O5Bv88SS+jb2r9rtlv<$ zA#sC5^V(C_tJjyWOJ5hhu5xYm+Q_xFYjQNhy`C*(6Im%+%%n0Z&2vv*9lpA9mAI<- z>C~rHn(N+@DV}D$*Dotvmbgs1taxeaQkCYtr!NU#Qn@&LapdCKMLC-NUf)>QnAn)P zFmhpSLvBNCLp@!fS@7Gx$*N=J3(^;aX)b*B{K)yW^K$3K&YPH7UOlILcKYlv&5IXj z70*nash(LrBYj4g=Ei4FkDOjxpIaYWUq7utGvuYyitAGA)OF=k)2D_{t)#N42+ftx zC1c6@DTPxKr({l!(0uvaNwJgaCl+YVymVsmgwzS@3FYI{$A@X=eD=7=akXP}$HtDW zuPxC0d1-BNO=^w0rhH8Lm@v(v7pse_QmfQe<)hO_hiNW-HW5kGMsuUF(fY~)&8U}F z7FVQJs4L1xrH=~Jy!!0&$nx5exg%po)<0FC+4Y%ak!7`|xuvnC^&<*2!(KX~xFoei zT~dyx<6)X-pIsbTTw9c*x%Tyig@uWQ(!yda6;os7XgV6ES@+`b;$f-7)Wgb$rVkC% z%=_#ikwa<=atmS$>hlXU|6ZD3JUDf*dT{xm^g&^og`b@lnO8e7cVO(m`rHD|#n0$` zKQE7@N5UhO{j&Q-Xl8zH-`KwOeG2;|_L24}()@gN@A6*hy~2A{_7t3PU!7gvBfUp> zkIJm=vVv7uCy!csyMUG z2+ixysWG+gC^!-h$x*bY>=VD;kLUBJdH#i-L{FwW(p|IUEHRqvKk@s1nP&WljTJ-I z5HZxca$PZ+_g_#Filh|fl&s2Sn*AS^Ds*?5f6sN!3XT7talrQP{}}&2t@JnCc(i|+ z=Gc!Tb}6$G~j@zVhHA|Mqj##BP_T#S|Yz~o~pa4~7 zfI0a=M7qPJ{?@^8hz*0P00Yd)8`d2*_4f{j!(_}YK$Y3Y+(<*F&ZE)tZT~V|8BEuq zarvWq@9;l5*c&EGK>@1F0CUnO8X3_u{Lc=Cr?FvB6<~lldBYJs!~g1Fcsd&fRRIQ= zlQ+D-p5g!LV0Z=_22}wDn3Fd=N6+y8b}&4X4TGux1I)=AK0wd#|8+1tiw%RS00Yd) z8`d2I`0oye_h7@ID!>49@`ex8JLCU!Fg%+LgQ@@n%*h*`r)T(+4uzN)Xjy1&WdDE6ZPqmF-E7UpukB{Gzcl`qT6bndMxm(( zi&m`0{_(j3mNpCRw}&}&CP4wJ%m8!JZ{+^EpSIl{3?IOTK~;bO=Hw0Qe%khQFg%wH zgDQ<@f?;s-hIKz}dpj6DkPU;X00Yd)8`k}_wdxqw+Uz_s<`JNQsWNxB&Dz?mY1Xwi z3p;MM(Aqq=|F!crOH)TDv{`$b1+C3$=W`IB4`>je%G}-aakN>}tZU~33vRYB`SV${ zC^q4I)HVz4=W{Th4`>je%G}-aakg30tZU~33vRYBmGfCR;e1?e7TV8eKA#V0pn+dF zA8=~tGosA}_)lM(HO;zqK6q_6ThPvD=;w-D{IgMBxvx>K{mCd_y^m2=Nq%l`qa6FA zQU3aaCV3^5?>%6WPona_vyJj?zcb2x_nYJg?=#86RGz-qB#%&e?H-eS7?rQyZIYK$ z`S32913;yAr%67O%71;9at2WOcg`f=CYj_uk`Hb&$+My~{(nps#^JmF@7vV>|IvXH z`v0px6rugM_y41_eEfIKmw(;XX|CH}&Ryl)OCF}`7VaBY=pEa2x44CS!nqTi`@gyC z8y)keS4`-EH(SyBZnlR&br^KXBSbg)(aiz$p__-$e?IQ;D`9k@o2Q}s+&lxl=H@;A zU+6ZsOr^VAb9IllZgbrpbM7qXe)6ewkz1NwFG9pdPkH!njMym=+M-^~ehy_;8| z^W1z2I?l~0befyjp|9M0Iy%cWe^1}dPIGjXn=e8Sx%twabdggB88wrsca5V%+uCMxV6#SB*|-&D~#d=QO&c&3|a?lSWUpx!%?ljSgt@KX%pw-6cMt ze9;CX_2dvtKsUkkYF7`odjUJaOdU70sRB;Gjh*&>YiiY{sSqK##F`rWKnuVAoy79vmInSx<2gnuCV$63q@`$EF_$Q~6si z66SBa!SD1FsV|f^e=tBC_qhCn0CxQ(2<;FM0^~gH{DnfK7D_MxM!*D^fgXbS553s5 z0ye-7I0@#zxUks=xPgAa19$-+FaY?0Ai?~fA#8>Kv5lY*OmBB}kr;RP?JffpM!-Ta zclUx;D|XlbJKz9Z1an^>Hr+r!-~qgV4;Unv0|9IXfgwPy(#~lLks2()02l!a!MtZT zHhTaY{@%}yO$VR?PJ-s{elG0k1Kfa@U_RJ~%|UD)8o*`{2;=XC(#NzZ0}9Xu7yu(+ z0?dE~=mx9=^GX{w?SKPN0Vm)B`T#f34|sq9g84*0QFHdhLF^9zL0||70bxKAKP1-x z1?U1y1oPQuY+8U`{C$BHn>N4>H~=T$0{Q?q&<}V3%B@FN1fb0#9_V)lb{QZ(0n+`w)oPZ1H1KdDA-~qgV z4;TRaz#tF+f`CX8BtQlfpbIbnM!*D^0SnL#^bj;pU+TpkD_{fcfCEqgC*T7505{MN zcmOZp0|o#;FbD(yDMOF}1?U0{fDteOX21e;13f@5UN$ai@x|;>NRzIjCT2z^ef?4DleyB4!>M^ zDf?37rP_s!m8OMfoRV+8WgC!ViAS9mV*ob;SFJ|OXo^i1*TRC6u% zU5pUewmG{wvbk2s6=H>YzK~DkrF`+x)T8R7mEE8d&BSG~7< zPnvStSMJW<9l5)9SMILZUG+N)cP8$Xb~-{JOIhw~G`4&zj}9o_nz~h`O!ui<)LY6o zr*2knF5i^CNu_-Esn4jNDK}S%zoB-0?)upE_3H}PC9acbJbIPJ21Kr@WV6{wwwB3J z2K@Tfg{u=+OIH`KN?oN=9{lw9=m3>+;is<%Us1U{dwJyY+GRP)h+n@nq%$%gwy}O; z;ljj)(uKthsSWCeayp$3r^{pMu`rJfP%kK-pFTf){^)tqdBt;6<15Zf=M>LQovof- zJ}Y&WdRF<&blb>)%KGg3$od+sN*|%z`Pp@mb;(ofsX{7|l2V0aA}J+{ltW)VrF?Sw z8yz19Ak8gM zR(|P#BIV_m<`nl&HAd<;M*@WRtL&TIH$qwZbNj?7Pk(Oj*xqA23Lw2_xMk#ieO6&s zVwN<`p;P+mI`J2*T(x#zW@K)AI)j{lbHZu=#q{dboI^h=0GfCi?@oZ9a$4Qv1DZ?mRZ z*M4__9XDHGkK3SkK8tbO`1yF+ENJJW<+VA4ECdCpG6T#>|6n>tx9{8A!SJDM7*quq zU{2n!Zr``BgW<#2FsKSJz?{5c-CyGeIv75j4TGux1I)=A*8Mf!-@$N{4TGux1I)=A z*8Mepu!G?k8wOPY2AGpKtov(xK*zB5>-9o1HXuL)Q)TXMlm^?ZY1XwUg&i+jXbVvO zbH^w(3ZtN3;};&YWI~`0wHeU@RXe3cd`h4}fGTr$Pl*yI@V_nFh0v^PrvwXLwlID` zi`e-o(GT*irxb28(tb*d$;f~J4NR4}yQehVW=*rMof7PL*+R>?jQ^o`N()<0Xr*yli1Ar?j~BlxDRV(OybRS%(~PX3iR?FilLotZ{}6rO)E5aT~X%jSDq1$W2J; zmic549kW`px=}JKi5rOyfo&fXW+S^uRu|bZS>5b5Lz-djL;Yxa@qPiSOgFPVb<_B} zl9@!Zx;;A>T*U@KRe)}0XM?)KK=$fja5WnQY3Lst1Unnl9saR*2ZP73K~NQ-o7vf* z?y!%2Iv8BT20>MTZf0kLy2Cy8?O<>%83_tdWd@j&{;<|hR<~aV!^e_Ip8!>+mpQ4# zak}G|MmpF$j%|Xf0KLpf+0<>bkq$PGXPclZKrd78iZ%xcCdLe+XPhs zdYS*f4F*53gUwUOPEddKdcG^w&oDm&X|8i+*L4 z9V9n@WRwqGZIr+DOQXDo`u~4QegCIX`2+R)Z=muo>ifSpWRz!Djk4Gzi>|k%hrUDo z|2ItR|BoIo-bu&#tn4Gli};wzbTVDcK4w4D!}KzJOh0pw8DI`EL(DL9m?=i_`Z7~t zb}?!|Y|+n0BUvsWM$mH?yDVVS1SZOh0pw8DIvPL(C9!m^qy}gDJ+~r^Hm4 zT}&g>#56OznU-xhzMI+0v@&f>JJZ2*GF{9*rkmN%^fG0qi%C)363V|tlB z<^a>r9ApNVL1vga%$&xY&YZ!NN+-cvW*5`IG%?N0Ze|bD%Cs>ZOqJ1(3)4((`%}fikhuO;vi<8O!=}aYrZ6njd>}5Kb!=unjNl;-L zm_1A@Gq4HT5ObJ0ohg^Fzl+(!>}9G~W`>!=OtFpaGG(TLX=GZM-ApUf#d*ooI7_j?wpshB45@v@m;^R;K@BXamgt=r?HF z%N$_3GuRVg4lyy(iL5X&(23qFCI&iDD;fbY&?!EKfllNJ6C<1`Dw!D1gE#^)o`+ta ziSayCmx=K_bUzo=p)`gLRXU5%kBNR}fH}krGsOtB_D!J5>?vW}%Cs}PKgJ#>vya&w z`YG*kFrCakWt4yKbCWQLf-Ot<4VbfhT+T0*}g4l%<_ zX#{%|rh)0oV2_(=FJW6{x|p^q_VhEoOzX%WXpf8OW_p-Drk^P#ag4$=FilJgvwI9$ z2h+*yV}_Vw6SOk3$MHAX9%6<<|DbJm6!b8COg}Tg>@Gpu%QS}mN!w;-H`6eJJyxcj z*%kd4?dfLrGHpx;)5#oQ4l;wx5ObI*C-DkqW;e5!>17Tu2bs32EXBu$nab8K+V(O1 z%m8zU8D{oI4Rnl+Y2J$MZe}mjRK*@UQ)QY$CfZ|V+L}K{dZOj4YAT!8x2$hbM9bi|;MI2xbGK0(zbC_u>;TQ+A|6^6%nc2;%Qr$b~Y7VbPrb_w{_e0w#l}e zTU55val%M@Dc>8V2z1h4_O5M&pg5i;NBn>P{{Q<9jAtl_ypVma{*2g?e=7P^^~ubW zp(jgEB%csZxOX=q1&En?# zP0^dGpUHeC^qJC)$s5Iu`5U4)RIkrmAG*GDUGh3{UH;lAjUvcg6S}69O=d+lpNVFw zS7)vcU0u40@;+ac|8(@z)hjbshOR7Kk-S1&k-t28dG)f)WuePTmnJV2m*y{tUQ)d{ zb8+b6(nZOO#6|gy(T&v$GZ%&~ENw_`5F7I8Xu3L<84Hb-E=XP=F36uBJ->Qh=Dg5( zrE`<#igWYlM9-<7ojE&ncIm7n!a(dr)5qHomN_x zTqoA$PmP{hO=VJ{R4JKEie&zj=qc5cGbe{mE}fJ-Nt~2FF?wS4gv<${6H3P?j~B=1 zkBc5xJvMV}=-ATQZN zmXzYjxQOQ$M;BKYWfp}Nl@=x!iiP=DG**pfqM>N%@Fe96$R8Fxta@nX(9of!Lz0Jx zL-Grv3##)o^F#AX2PY2}2j>rp9#ox|nHQQ@Ixu;lI50mqI=6a2=77)vr8&ttVorYl z=>FA6CK8I2Mv^09B)?yDzv{l3eM9?}_DSv|_Q~%Z-MhM1X0Om*r9G3BA0R(FI=i|@ zW{=PwrCG^YVpe`;bY^u%W=3d6X?k+Hn4X^&omL&r42OnG;bd5Z^Py;{I+Pg-4V8jP zS`8^5hz6>InZeLt$)EHKe|{i3Q1xYeAz#Uxq~FH#o~WnVpXm?LSb!ugC6Vuo_ElXO zSIAXzCTSs*yc$)jj*KJZDA|)VSu1agQr6OpHDoRICVNG1z9-sK?ap+Ex=WU%MOgCY zsJUv&(1&Bmn553Kydi3+c4fLkT_q(+)35S!RIW-HDI}FdQqXTiAD6RX|mM0p{d?SJC~|^`H)hQ)J97K$Y3Y-2J)k2Y0Y{Dp?8& zP-O;~lRi=Xx$g5j7+%MQK~;bO=Hw0Q_V+L7VE8mP45|VQFeh(Vx4-|84u;pWVNexd zfH`@?y8Zo!b})Q88wOPY2AGpKtlQszSO>#ruwhUYV1PM!!@B+bhj%c1CL0D-0S1_p zH>^9?J=($WS!@_o1sGsX-mvam_gDwRG#Z-X7*v@7=Hw0Q&UIhd!SFe37*quqU{2n! z?p*gp9Son#hCx+;0p{cl>-H5b?qK*lHVmo)3@|5eShvF{-ofzsY#3Ap7+_A`ux@AP zk`9J1V8fs)zyNddhIi~`81Ke8qJ!ZvHVmo)3@|5eSodRiX$Qk;HVmo)q$PWZlQ*n8 z*L|6eVQpB?1~TIjpn<6}cXxEfr`oJ(*0s?Uu;XS6^w_k+za7WG>^Rr`$Tkb@Lk}(_ z3qb*@%m8!JZ>0WQ_vIZ7Z)C%uD!>49@`iOkZI9|;_#!q8ssao!CvRBy({@D%!xyt* zP!(W+IeEjnpSCM?3~O!n5;Eoypn<6}cel-swpr7xYi$;G+-zZo21`43-ez0px+mH! zXl+(IpG*0CK!X5P=I)-)(QVc=>)QFif}1T&{(KfKis9h#yXdMm3+?A~8J`bm5TMH3 z-Sb)9W=*rMoewOy*}_!LXX0GwXTd?O^yyHVmo)3@|5exb1V0`b)-}&aoW~f0_-0ssIB_9mD234DuZ`4xpdP z!w;L}1(XBeeVY4!4&?y&_aBV%gL@g}eMr7c^Zyr6d7I|`FQf9CJ&f{Yzoou=$^mdA z&HuMixtr$y4^nxI=Kt?WrAYJt52ErV>i=It<$db^Urpu5)c=1fmEX}AfXf8U|0j8K z?51bGNB#fZ2Thp&pZT#Es=vcc(w0R2f3uy0;s8{@3Alhhzzy^R9>5FufC0b{3<3cl z2n+!s0Lug@SSCQhG64#f2~e<1fP!TL6f6^x26}*AzzWy^JKz9R02vPyWI9m#03G_pGAOHk`As_^Vfnh+55+pzd6aeY@6{P1^ zke**bo&m)SSOBEuS9$=X>5iaRNx7uk-)0GuWS0)cJVOhb9V+9kA6-+o*FyUCigkuF0jTKBZrZ!K&L}O~{ z1k5w0_D#SvV+GTG70mioFxywbY+nVleHG01RWRFE!E9eeqE1{z1~A)K=>klE8L$Ao zfEB=8Uw#j1+ld{R=&SSrnCPqY10KK&_yA1wRWQ+42?9d^X80;$U>Ly6UWz*cCiPO> z5iqHj;*Nkxy%cu@OzNe$BVbZ5#T@~YdKJvMq-#RJluPmulP(oZx}>W@z@$sMDg;cr zq^m-}q)WOg1WdYAFzHgkq)P>pE)`6=R50mMk&{277XZ2d17HM9fElm=-9Qh}3s?ag zU0SBN0PQV590d4|$*pF=w;01iZ0N@AYj|mFU1sDJ$U;@m51qeBQOkRfwGN1rP zzyx#yJwPvD1#EyFZ~!Xc1YAHL;3mLBY^a57E2B?4&Z~=XQ5`BkW3g`zsfEVxq13&->0z*Iu2m?}vAOi}}1sDJ`U;(;; z9>50J0SBN09>5FufC0b{7)t~bU@k|17HR$KsR6oY=9kb z04|^pa06bz2MhpyU=RoZK|n+a5+DN#&;=L(BVYo|fCcCVdVpTQ3fKTU-~d#>3Alhh zzzy^R9>5FufC0b{3<3c_8Y9Sn0(1cezzCQCGhhL_fgYe2umU!~4mbc6Z~`u%4{!th zfCoUqcJdYVmGY!!>sMaLz7Tn#_I&R7SYyV1@!8a~>a*o%($9pSsXU#1I`VXFOKwYS zOZ}ZSKKaqYS{6yvP?BkKgYmem~i#=A~T-co0ENw0pQU$e8&ZqO? zeC5&Xqmf5zkK`VSJyL(T@NnW`>EYr-sfW~u$`7U=3_nOT_G=mKW0mg|N zD}(L0BX?trCHHRR-dWi=E^$F_DQ90+$;Igjy1Vq)K}nqC(r$HW=UjaJzMn@sBdyr6 zAou#ce*gTI*Syi{nP)yTqervSjPyLK8z+`e%%0d>Rauo=C9JBh%&$~d)=ns#pq@}a zzI1%%_{NIzitLK!^2+kua$$M(xcqU-al`tz`<11&C50vGlKSG(;>_a4qVl2x8I!Mg zkp2A&bE|XmbCfx?!wZM2hu3Eh%~odDGKGwqsSlP0GlPv;S6iA zl*4K>3NzFh_35SQndyx~%ZFwUZBDC9%S{ueRi`eT+WlSs!en)FeNt&sW>RCIJdhn| z_E-9I{hed>sp)!OX{_J>G>zL=N@kLcL^+X7G~<W~dU%g@jNwm=7xB#`0_U%D$|xsZ^AlA}CdF-m7?Po`Og9)ZHa_#@%q0U0GMt zS#jo^g0t$#I}}IFUa+h7x~)Xt{cl*y)~vN@saSFr!BREn&5F4u7i3kgn@XmPsUel6 ztke`MVonsqs*o2Hp~edI4*$|`eeTWg)Aj!k=C$7cclQ5ZbQNRtCDTjJy7a6|t~hJ+ z#=)y*8=kBGM30jr+xf{6s4$r18k`*2KiK%Y@~89&zK#b&g~25Ez=I91ouAqxxX6Q{ z!eEkn;K7F1&QI$RT;jn{VKB)(@Ls z0}nPlo4?T@SUdZDBZb8nl(`D`A3a+<)Rm^CYiEm*6X6L5cD8uJ@5<-9LbMac+9ut^ zHwnrND%^i`lg{i))6%s~LPCTm9QY>D3H|Y3S>DtY(!EJH^G$*>g9`T_-K5Q3XyBKIJZae{S+BxP~k?n zXS2<;ORvy&rS^ZZ_0860OO|d}m0fp&(Z-(FBl7`D3p1#2LtJEH2Y3Ax%|$=+vt>&@ zYWJSsBk@6=2o(lH+)F7fZW+iZQ5gqg3)rRmZKkP+C+L#(D-9pdEj{uc<9SeFFu+CLCqE)@xnW+RN8aO< z5n)i_hPg)DXDJ3~jj(+mu}d%M5%~m zx_@JBMXo++{pt-%Pc&*cmvu#IZ9)6fg})m%{x?M8TDeAlL(E0I1>t`~w7*>)e^AE# z@w(g~So`Dk90d#P)1;T-cAWc3b}qwFq3fqepRJ~U%U7&jx^Dl!URQKQY0=tWuNP?X zK?W6WfcuaC^}4bvPg_}SpJH?DeA6VZjcc@NmSTb>#x_mcsht}-Zm(Wt5N)Ez1zEc-BRiUx;~HuRlJ#x+_czxA8EU z?WUMCw{<(fZySYqnYS442wS~u*~W7=El5utylQapm}3T~vEtap{o;pPdn8vWS!Gb> z2DwJbbg-j++}_M3D>h{G=*;`uE#mnvTg3l;*DT)fwng;2EaG!-nZ;R;Tg11HrtADP zeQ&-+Jlk#&|6;R&Mf}V&&=ZWbnV|p(+;}!AExO^y6!)jCbmXoNze30e?ag5 zPd=*s{$JhmXa2bHUDSSXuIaIhUgf(8$_xg%2eFH0>$_-nSM;_X(Xa7nC^H!39z^sU zJ^Jvj=xcjKzs{qf%wUjv5Yb2K(Q~?@xA%yCgW~!bl(`|UQ8ay-q?jDvCXZ-u_S~-Q z>w09rNvQ)2%G@y5D4SkD7E|N1XU{!C-|!>4!izn^KSQyT7?imYu2DGsWiIxO56=wF zZg2X$uJlrm^v_amKZ7zi#5GFq-t9{_EM7jSZ~2j3+1K~T{v6MSGJ_%R!DP3OLq~OG z-_Rrb^E?~M42HM|lihxTXS=d*?2-LXJR8akhPVfleYn2Q7jf61fEBlrn+5gP5q0C^2dobDUXZX^t>|1+ee}QL1 znZXeEV6x}w+r4aDHrsbwS2q7!M`$mm@QTLGU(rZh7uP7;QB2cIlJ=ka%kYvW-Ts~b z+If!Uc7u5B1=W`*USQwgD}mc_23zr0YU`@~-+n=L@^PzHFIn3Cg6fX0FfCkrLG@)? z^Z0Jmtq+`kJ*6G3BuNLm^5&Tt(R2h`HL9S7- z{xWhbc*(kr>-FgFzu5Qmi2fRd_A@ARLtLY1{m)iM^dddG`w#Yx9@$^#n+;_KgIuHR z2{yYOJ^rsX+gI+2)}9&Kvl&kwH-9=wTo>0UT7Nc=ZMObw9{YX2XY;)V@!GTb+Y~Rb z@AH+w?HGft`2F8>x)}aZOIx}jyLf%~lli``EG=7mGVh@!_c17Q{am9gy;Zley51bk zorWDb_C&tFM{u1Y(+tYo0M{s3ey5gV zeA1dFt4}^rZ`AarV_f!wJ+l9eZ#9$|3~-IIyS6&FWa(l(nT{gkk{{}k{O^=Dz@W?x zbB&Vqqjqbn>4e7m?ArD&r*|FW!XNGt{#}agV^HS$xklk#t!&xall85p1K7CWM|uQ* zk0MhH%3L4UD45PO6r=5@(wcTI9lSbn*}g}+a=VWpc*45)Q&{3UxkkBmdZWYN>a_N@ zegJ9x+CF|z%HH>AjJ~^Rj6VAO|0VBQ#Q%Pg`v3c;MHK1(+o%t~%5%_(xxaTkQ+5UH^55X^6#M5Zn`!CerA5Fjhl103L zrqM6bvVUd~|6Hff{MYE5!)}Xs15H+%Sdp=TktP|8A!aQUoULxrcciAO=k7GV>_F2SUKJ@LuLgfF$S#>YDqg8uh{9aRM(0 zj^58a>7fUhN7zExK%~Wk%;O#bTg zdF;ReJis+VxPfgCeg$q20rJo;+D*U@!XS|T6s_(MF$GwQL>PpM&tlaGi9Lr5A_gY! zAM)x_V9wqg2y{T*t}B&j}OFveaj(&M*)-e5>_^q<^u!3;w3!5vW9R2$Chcd z0HSMcQ=@eMWME;33bfM+8mgWa%%;@G>@PgQy!)SfB z5Po1{GqF;H#Y?zB81xMiz7fJZN<@LvJ4^5ciLP}_?|)Zl2MuEwb4mR8>D{}B9#7x{ zeh>gb5CUNk0Z|YGagYE>kOF-m4TN+ZPY*%@CLjYduz=w1@1tQ8VGsdP5Cd_L07;Mn zeIN~_h3`?z8~rIAw}AqDzz+f-2tptXA|MK4APy2B2~waBq=DewOKT74Q_r;aKn7;e zH}XEs2UNiJ5&{r`1WZ5%W?%tU;2QcJ{krfE^eeCdJ8%FeZ~-^)054F05BNa<1VIRd zK?FoW48%bKBtZ(e*`H{kzzY=M1AY(yK@b9A5CKt;8u}Zp?&$x}>H-IF0vB)t5AXs7 z_<$b-KoEpL7(_r6#6TP*KoX=t9}v8MrHCoymW7jOd)@B#(+fFA@v5QIP&L_ie8KpZ4M5~M&M5WIFA^oSVq(tIERk{|{8 zKpLokr3nFufIbILxobjn-)NZb0}?O+8JK|uSb+`Lfde>!3%G#?c!2_Zzz+f-2tptX zBEY&ZNecyb-~dkG0&d^|UZ4OU@PjZNU2IW)Y_Z~rZUc7U08ZcnZr}l4pa386g8&GE z5D0?^h=Lf10~H4ZVGkh!37CKk%)r9$!!g5xC$JURfE_r%|G)RKFaN*V`}{%M@l5ua z=B~=F+%92P_38Z6%G0%{3Qws|)hne+rqUQL4`+v)J1aYLJB6LqC-YA#Pu89&JfS{O zf4uZ~=JCd3<;Sv*H6P7B+I*z)NbV8gk?OBJqx>~Cl{aNK zHP5V^nLATBvzpK6m3(ceFr*IEHw&resT*ADG9-rvD}2OyhjCM(HYQb<-4 z`Gk_F#S3vYUXPVxnOGxQj%K6HNF|bs2$5cLVl6Kn*^fo!1ZulRF* z!C&>|eTuK96ckmddrRJox8W&!vYw{9;?B7Rch!}5DXyBc;8dM;N6C?KH0))2md5|9 z*m5?(R<-7>inV4bSX4{hTry|O4Y@35<)*1(%9#XHRmw|>R1*uLD%ORPkfF;GznC05 z=SOt?|CF)!|M>iWy7(vl-aibB`yMkmKcb!D{1KfW5!m~ro8fkhYjl33;}quv9{_p0 zD@)7PPI3N(mfy#q%=L4PvOL;}`=uL@)pd%KKL0^Kt&RNfi5|i4@?a=4=;t0_@JC(o zeX>XJdpsD*4EnhT9Bh2KcV~~_pYmWRGwA0YaIo>U-r*j>dwDRF8T4}xIN10?Z>2|Y zg9k&IK|l9^gN?89KGh@mXFM3n4EnhT9Bh1v_vs$NKj*|AGfY znL$7IfP;-M?mp8MjHft$w97#_K)LwAO5!@XM!_8?b8!IaIGL**yV9MPc0Xkht{o|V zP2mFj1LGw=(5nb?B{!A|Bi1slo&g~7``!v93E{S3-nI+sJYjl%Uu zyB$8hnUBkUrAPLkDQSQ~nH%OBWlyl-UCn%4`0gIzf1z0FDVm4F5Wj5{KEZ~MZ{{7@ zY+to2TWc)ZQ5>yG;Vn$!dbvi~dNXhDbiJ9k@7k}KziO}&S~LF}tppwYZD{7Wo#M7u zV*gJ*>&<-e;w2L|^Vhoaw0y0Z|D7@h7?inTu2G);Xt(pan)wl(NAuTvgnvk}{S3<7 z5Z5SNf3(}-^FL3|1aNgC^H!58f8zg;a$yqT=<(k!uL^NKZ7zi#5D?^V8h2Z z^Nwt`?=xN5-OU`WO5rVxK5I|y%*!>()|+{Ir|ZqUeb;`?{Idotp*3@ff(2&d%^bH= z)Dwnwfcwa1zIfth{<*F^EnjQqGA(_8L75xo8f|pPqpjt2HS;;suv^F8=6$|LxS3-6 z8I-vpu2Fc$qpgLHZ|1FR?O~nh|8IVquH)0^0Del}0XXG!tN0#W|Ih!#BEJ6(`fR|D z=`#WJ9e_(uv5J4C>;GGSNZ0SbO5X?gfkjlT7V*xLt)llU7V*CC(dYW1*`a|1~sypFaD422JnNXa6stiH(@Wum60(oj-OCv4<9P zT>l>q3ZLHNUsFy&!B&x3j@^@tbVHa4ow{`-`6X@E9yPI$*}*&Gj5o#UmdbNYvZ0{u!=AL)1y z@JS8InPR4#DSb5alr+se#Y;I;JR{#?j+`5hoJwQr>~!a}id0M9{Vp4@?D;Jl=o|ik z4G1F^VZghG1{UHU1EDH*IvX`{RWB`9+2Y0@yaZj-QF6niH;dhjU6w> zwY1iug0_qezsu%|Bfn*H<2ycJbCX4jFxR;wD9rWHl9Dsrv&TQa`XPp@nyBi0GgY16 zM^)#uVT&-|OI7E)P<6R`n{ibURZXaxMAbe@o$p3fH>&2SUG0BdqiD2a3YMt$0-0(r zNKx$tX{x=zL$wz;QG4QNaJ#mE+7fCfP&_w`fs=-PSPw9_pb9jkk@wP&BZNRP9!n;vHyEohE|g6G8PfG{UQ3kr4} z3iyUPsm3%9)tF|X8q;i4V_KAIOiQ8006oaNCJLjK_EF7DkZNXJR5RnDnwdVTnTew2 zgu7^L=ekhSi<(x{w4-JWHTzI=`-F)U=%;EkLsV_1o2t$9Qni_Bsx~u$YPZpIKy}+E zT3I}xUaCCDPnG95sPY^aRi2Zi$^=zz9U&%s&gy^kuoQ)svLHZ9S>U9lEO66O=+UJI zHjSlpJg_uxfaVR=R=;;3XtB}SDdY+ymEF)czd)4Wt;nvZHs6R5^C0X06VnS`ijCQ3Ck z3f0W`sb)r`ni)H4j^EjRG%x)nqn#b2c?S|S?|_5m9Z+aq+cr8v4IJRn$~;U*D=RH& zt}skTD{+{PRz6zN+#oIKqmNd0syg3ERp-l8b-tOZ&iA9%M;@rGsAWej3AIe96+o?C z$0!?BT;QOJ3rtjTflL(__)u}eor;6a*z?bViZ)afQBgw05Gr=;Q_M~+%R#fwa?z}_ z%rxsP3(Yz!RHR+Hi~c0%=!F11>8Sn2+-1_%-I5U~Vlnn2{qc0sLpe{Thi4v*UnR^7 z)AMFtfR>fq?{KEqv!b2@^(54jQ7?#kL8_NB3PhrfYR-33&G{y(Ip0h*=ZC1~d@t1u z?{_3b6%$pNVWBEB(!~$h41uc5P^iibAFAL`c-ur9h^l6)I>$y;=LnQGN2028{8V+0 zf~t6_b35%Vk^hTMXDOyyN^u`rKu{-chGgx?uC1r->G~j_Z{IoNU$1?w@HO>o z^{-an$-kq#Q~Pq^%b9;^e5w4U?3bEfERAGF8eb@XA^U~qKUd$*zpcDod#mu4`c~%i zjn9=om;GGxvz5;_->AHidqa4m`g;EL?5oXcrJAb>)#`5LmDSOswlt*e07amq0 z79OlVkbgjVpmu-d-rT*yz14EQtdxbjt9Rw^QtqnVS-7+FGZ~dza<>S#RBz7TtlV6> zF>_<%hVl*B8=BW=N{wQiLPnV^Zd&B zx$}kdtLN1}S^8w=lZ|uA=VZ^xoYmM|-kjas+*H}r*~4Pt4E2oq>8+j>J3lYc*ihb( z-OxO#a#HRjVO@1?eyy^$mMi4c)%6ogCuUA;tSYbS>>aVz@mUCU@$j*^V})a@AIpEN zarB;}N=IdmY8+WUvNUf``*RC}qwUWnOj|gmIk_@9H(8k6=--mo`WVb7m1HeZNT`W= zyd2BMn$b!$7Zsw7P&t$hHG`F4E|~W#{+h4gQ+;)%^Ya3Er{b(R3J%p#w>LWa2h7Wg zTr(9+s;N$Al`7}m`N2=<`v2Uq_y7F*|Hz;Dsfw|4CjZpqoQZ|bmJBc`bHiMtb0!m< zu<1HIH|~VZTRp<9{DcjZ84Pia!Y4RkGye2kM>gB{c2~A`{zf|sjq_j%KQktAyv*)aysp!89hbL?ACB}0_fTvvxSiq}twcvN&raOTzuc9l2~4IkgkJF?lnuXSa2H*>Tqg|{$?>*X3{cQkWt zr*|}S?XLZr`PU6rLTlzJS_y$oBHawPBV41EXmzlNz6Mq;>Hf0tH@cFvWUYaxY3V5j zWv-8Fl%#)~5=kenK5?o32?hGnf5*|J_~AEuDq^xJJ49w`P$`-`CBqZzp$u zDCAo`lKUxBWl-h@xkkx!2pQ|biITg&Gu!=h9-z=Z24$|FYZR@2Y!Mqx(M#K3 z*6sd0$alJeyBjsykb}1;iEHN?1zV|`1K!aAg4@lRe%Y@f?=cA08uB3&EU+1*o8fkX zYt+jdZ881h9lI@CGQl_B>s@JDy4IMdQ9?hRoy7iyA+Awc>$uU8*4>~xjvK`f|FuW< zp_Dh7L75xn8fDWE-^Fz2mM&hoG`n{7xK=$b{@;4UPp9B149eUX*C?L4ek`i{#V=X0 zR)0Q^@6m$o`}eN=?iPjz*TWxZY3$*~gKm`XEcVj_)v@bat*qmY{aV_04OT#FX|pI! zU~@?~!|epusPDU0OKbIZw|wo=6T1(a-|I@#(zTYBp@e=0Wp0RTl-6o#9cdrg(!Sp# zdp4!249eUf*C@Mn0PDzJzqsA+RCk9dKj;yCIFE)hgF)^=M7KYO+}*d^4|_zu^u;#W3U#S`fI|F`M-|61w;;JbAF|16V5+`G;yZl*o}e)X@^-yrn^@CWJx zV7p)uKUiZGuN|T5|9fa`!K2Td@-AKf4QUq#OzjQ=;bwqE+h76c&> z2MHk3XnZyaIDrfJL4e;Hq!Ypc;G*l>HaAFsB!34J|7xF-xEAPQn24iX>!3%G#?c!2_Zzz+f-NVL}z_k=+NL_rM1K>{Q}3iJUXO^84O zCLjYdumCHt0XuL2CvX8b@BlARfDiaV00cpZ(AP7JdmC>`yg&gy;0FN^1g5=9nAK!~78i7dVK@q-DpZB^Qf3`6!6`CH zyNGU1v%%>Oc$f>$3d5tK@aQ;Pkc7wf!K?}wvq5sH2#*to$XlGS?1uMw;R6x)L=5i4 z(0XL5^Rof?Rt$d8 zOLJR)te{R9H-8qv%_xY2BuE1l^aEj(kbnuuzyfT*4jjM*zjndjxJjEAH-GPg{~3VI z5d32V{y7H!>fE!6S?pK2=s#+@tC;l~FKz~LvlNCmMBzW=z7rF$~>H100noxQtxSLLqUT@C6D zK)theN8t|Tj_LvS1(3T@xUoW4q8q#?fO@G=QcAUAp{N$?*OjizT-VrM-k#mwytZ;} z?pop6>bCqgWn1lr zU7oqTaann6e8B9b%}XlO4?v?(DyW4T^#UMlsa%}BxN%YGBK4x$g?YMyUAZ88LF4?= z`I+QH`28LDk8Y*aVa&tPX%PtTvOoL)PvaGH8r{nX;AnNu65ln;1Jz~Z{h zy2je_+U(k9u9C~;gj{t^evPuGwz{yo^E!8SRdZ!!Wp1UgvU)=P1m%R<@rC2n8Vi33pz*F9tG!hQI93`kTIr zFXt0{RVA+|O3hpFs@}S%-g> zYQXmWq$^5`*2dMy(&B>*D%=2fGap1K-<8CQrXsEb(lvvu(O4z#_Q+dANnr*RZixGT z8Mf%X9*K)7E5#s|(;i!Q>?Ge0$!f03^9t?y0w$YF!a*P|&tLvxO z8kcEN_9Q;gmf>#wd5_TLJQOMnM!5$TYPf5E(G{w#yY@*KJnilL5Fl}FT%$ukYy6qk zAwU~{rt^T17O?!WFB`va5Urj5UrEsdTT8kbZmV3QXpGVnV6CvVAMgCoO*`_#Uv@=m ztDs#2IFVweFer0lT%*X=C715Vu8#-Inbwj2s~-8QDS0x3GB?UK%5Pn9>dqhk34w9( zzwQyghJvRsD05?6qxgw8zw1K+x$G?L2LUbQ_K_wWp0dX6xsRUw#N z}vai)3AHT+WsGVNIAy<4V*a};Ps`UD{<)Mfi9wkg;Tq-9bFJ7nK5y=# z746S3bq^EsL67wFcsi6BjBpPk{fN%=?oU4atw;L#JRQmmMz{x&KCd%f|L{YrZ87%V zA1vY!O+WiR_0vy%0Q~ALtN6*kTf|?}wf}Sf$0GiR-6~!|V*&p5b5`+!4=m#EtXA>D z|EA9gSghjKc{Fywn^tiPjR7z!TgAekEn?F|pBtEC5vA8H;@#^kVw9%md=_yYP46fc zaTR_4|Ho z=B3(eMIpgo1h!rl>ZRH%IjWnZT{oGlmufFHsBZgJgZM_=G{K&v(kWcMG}12J$xESL8r4dZY?$spgsYb(w9+v96qTx6y)>znhS;-I zn&#@IDXlcjp5t|)UfQRXhS>AGF4Rj8(MrSYpLt!Vmrm76gX{}*e;-#boz^ZL;iXV7 zJ+xg~5O*imv|}EOAl+8{tGXKdg;t|>6dva)JtczOW)z8P%k}7 zD-E-E>3)@~m(JHpL+m{&O>_0qqqWj7`zfyr_0nUs(h%Fr>q5Qshqcx(f|uP(w_;qq z^ha8$kKIRiCb)X(@3hh=`zN|{fUB4OUMr2Ux9HAET)p%U?b5e-DZ~%|yYQb{X_SV= zz>*<;cuP`A~O@mQ(1UHWHU3h~41D(%w0 z(0!8_#1Aj^X{B-YSGsR9S1(PqOT7Y0pyaR8fQ^n7wV;xwNm;}KixlxtCvpEO4BS(rH69$(nGY;K9-=;X z4Y5shf10b8p3pAc%uAtOy0Tq*7B7W*>8f_=*}N3$rEA)y7w}T3m*%w6FuRcMSGjuW z+IHzhycFuC>)NFk^HQjnuGdNnq^ptk#6}%Mcr4MVRDfSb(e=1imeWYFbE-!_8>7(t^ z_joDPOCM{O{*;$Oz4Xa;>HEAC>ZLoi(mwV}x_=tCRsN6p=I;gZVVbtmbQ(<`qbW_3 zNYgKVCy4LR^c+pM({uq%C(<-XlaHo9{ZomPc)7>;} zp=m8mb7%_D^xwY{#2?Z07EMpmRHW%lnwHQsg(fRazxkygev_t`Y1%>4B{Z$4=?I!4 zH2v*;LHr3#|4h>`P1n=3nWkklO{K|B)9-#Eh~K7ZH%<4_bQw(>XgZRn7)^iwxgfqr z(+EvZ(R3qCXVbKtrbB6R()5R)3F01_UZv@Nny#Sf<222uDM8c!HUx1mO<$yG7fmpAqgsoFO@~^9;%O?;jOE)ZV=srMKVG$_%$7+=ECz zsx!TNblDHb-W_Y{+LK2+DTuRg3O^GkalKrl^wyU~TbF&t&ct<|5$rfQm*!9A)&sEb ze+^bbI~`b{l@QpKq?_S(l54aQ^p#5bH?|TJjTx<-5zw|-i`UKuwoent{A58N*C;N| z;>9WB;LapL0TYgeDR`lR+i%5+ljh-uinV~tKb@nEzP?XwXwKPQpm8m$Dq0xC`( zw-OVr1DzTiw+`Cr4Wo5vpYxFUnU65nXdPN#mG0c{E7mT_>R(NwGlS#8wX-Ki;q6l@ zGQ;gK_rSwfty?p$oAHitwoiJq)zG!@?q-ix=H)F;;(EA7;jZE&diB}4<>Okt-Ui1t zdXvE_XpMd=t%AU=Bi#(QlU$=!=xp?B^uUhxrk#$`wpfeT8h!g5mCVmn#kodt)LTHY ze{73eaZ6UL%Pv~k(W^W)_&L)$RzN%BWwZkA(_k_`B^Krytw3jEYpuZ24fJKlb2cqV zPaV8!kQ&>#aP5SeQTTS+!L74wGC$WA;u?jwzJu3#yj$U`m$bXnrvrRPHua`#@IY&a zSUk91{ydhpz~3M;W}7ZDHrKjoNcV z`@d+XkHXj)o?iQXzRlhhqy=lAZ@YsQ8)Q)72DnBaQ8E>AVQ2CBwJVK2q2%b1cPAx9 z7*x1n?z!wD-hsWgMPvULEk#^LrE8}j73u5|c^8F+8C19-?*HW@b*>(XcT-l7L4_OO z{^K7Sba&-xyGd)XXd71ES|qN8Yt&lgVuT(7v=;57Q0%hryD?epp~KfA7QKO&1ZQqO9C3%R@R2<_awQS1Y> zK}iN>uEIUQ*!DM&yE~51PWl_gwyy-p47U~T0min+L860h$A>M7A8J<}?MUJ}xkjymsZvD1VqTTbHwBeo-sVHOgfh+|CI@g z_#Nu||KrzK#Ku;OcpgoEyxJn(@-?&QrT>Si@Bf)osegaE{(pjnK0ENBS=@MpRs1=9 z_y26_1K|AteP-ZKX7P`Q)BpcQ-}k5Q|6jhyDvsu?VyS5s|4!fk-@ccw|I;*h)$a2f z^!@+hqSpI=zMg51@J;V}e$%#h8~Xo8cf_~T7ZIq>S#;z%*4yXg(d$^$GBgEU!%sYi zX=JK#p-9Vi&F)xU3d>{N%j=w@e|OjNItv}6*Dwp#l6Pv_>X5X5a9o9s5)bC4d8xb6 zPj#$AY@uFZ|3cS@zOB35D#r63+Y`?51yQ{qHF__Tu}(B*!dQwRP?Nu(h0^H?3-yE0 z?w46841(U*S;)5L4Hk0lc$zu21RvE==#GeO&C|>^wshR-rr#rzyq`qIr`+Y%{Jcxu z$mn@2X!Tyig2J9HEa*yKO5JtSj1FF#&l1HfHq0Vo7B^<;$1E|dDW4^VS?ria!Ym%l zqGFb~K1&?4I53L|vv@I!W6uUAm-&dq?u8$x%src!nRmC!cLH?-OY0t^I~}>!a`1bE zez)1(x3}*JV~(f_z!j+@_v`F)r_jrmo~Z^HahnxBT4 zZ+B`tu9{5M4);^F!&Rzwct2G;T&8M=$EcdRe~cOP2QYs><`)KOelzBe)BN$ML5c;n zf~X~oP%RO)=+pkf;faY;te8K9`9;hxVSX#-Pa*{!@Y`BLQ;gdd8)}77OF}IZYS~aL zHF1g^^G7hh3G>UC-;VkFkb+@ICQ5OjRur{l)H0)%gKF_(U3sEM*k!b+^u+7sL_!P+ zW+YgU;5?9o{U0uw62`Z>))+0+2{+oNw)^m0S@=Git`7c@O?S})JKgQ|2-E#r62f#d zcE-3R)7$~f-H*B5nA?N71DM-FbB88sZB!{pl@1eVyAJbErNg{b>98PGI?PIylHCy@ z%q?PWFXmP-cL;OaXzuU?EsYYws3W0{f;v9b38RjEqJ#+MHeqfb=JsRm2(LIgi$AgI!V;=PLzcmi|4|RMKC8RO86LZHfcbw*);K@V{*VRhvZYgOjxw8@CRmb>eqSorW ztNugHb;89PwE2T;+8?##?p6Oso(2;yf8yuT!98U@YRTPe{*OGpCSLx;&(VW>Dt^?G zyVv|6pSBY(+TdxAMtm?84)}2JQ48(fKz`^rmOI-J zns-+2^xjsxb@xsAo0OYsHx_PCZ>aM=85*Tbv2k7by6kn$?Un7Fy)YyhT9#SXSXx-3E~zgr zEzT@%EK;(yg@uLc!uqkLW0jB978Dk!3+l&|j;YMg%@^iZkIEmV9M##MfpT~wQy$FE zqMiz7RHo++6{gh>sZOa*&QDS%-CO?a$)C~t|J35n z_y0eljtyF$U=*o)zokX$_2-*RG65NwfdyEB12};TxPbzEzz+f-3?d*3Vju}pfKgw8 zk^oFV24-LZR$v2m-~evmA!rS~xUB#mz({&hKM;z92qa(vGB5)RumX&9DA@r<8I&+& zpoH=NBn;*!VW1WX1HDKXZbiblG!h1xkuchggdwdY48|p4@FocZPDvOzO2Q~v5{9j! zHN=2Mk_aSV0x~cIjNc?-JSGX_D@hnfOu{H;62>EwFcg}E!FwbO7$jl*9|;2vNf8hQ zF%SnS&&n71Vlj$BtZ)F0Y;y3l>}e{GB6Xgh8Enm0|#(|AP9jlh=4dqfFwu(VId&`37CKr zxPTjYfEOsh2mBxaQlJl{0V@*G9Y3Ir0FL1wU=5x0A3bn{8+d>Z_(1>!K?sCF1Vlj$ z#6b%5fiz%y2nm>g49vg@T)+)HzzY%}2~waBh!3n2!ufdL_rM1K>{Q}3J5z06Oe(Kpf$AMwjDTt6S#mED8L8&AOyl7 z0-`_}CVapT0w4?`APQn24iX>C>`yg&gy z;0FN^1R)Rx5fBA25C;j61Suel5+aa*3CO?Grt+X0-w1>C>`yZ{|ME-l*8 z!=r=_9wqeeD4}~tIuH@)+)+Z`juN_dl+d-Kgq|HGbnGahUq=buI!fr(Q9`GV68dzM z(50h<9vvlg=qQPtA-aX$9O=17pf5*yP7yI6>>xxS0TYmc8CZZ7*nl0lfE###7bw67 z{2%~=AOxg6gbdJoqJ+*9C3K!Bq3=X`NrYeb66iQlLdS*@`ZbhN0KFPgyCBf1A+-Tw z52OM*zd;Gz4NB-^P(l}j68aUSrxJl)1toMU zNKYjKeG1aEh(MQu^aLW%qo9Ni1ts(+D4{z+3B3tQ=uA*TUxE_45|q%BpoE?TC3GYx zp&vmB-3UtPMNmQ~g7o)m70nFLgCOk)0v!lS=s%ENB@*a8kp7Yp=sQqC*MYPT2y`4M zq2E9W-3ChNHIUjqfj$GN*%Rn8kQzII4g)204Je^!Kx#e&`URBGF`tBf`6P79C!tq9 zYDfe+<&)4SpM*a7s5KGjl27UfY#|{437CKxSbz;UfD3ql7x;i5V4_<)s29KH>y_7Y zuM4kNU(3IyyjFX)@T&T1y;`bfs*T;{-PzsES1PaMUJ+iYzMOwqdAasd;U)E@`irF( zGt`e?`P11?H(#i{kb6ORq56EDdh)A1S9nf+uKsN4*$nmNSN>G?Q_W{8&*Z2#zv{01 zE@fBk=>qT1uk=*rsYaz-$x@GgmEqj5FkIc4->FcaeuXF1C+km?p2$$Ie&xrrk2fEy zJeGS*c&z$pp8EBxJyLi?eWdEX=74eHr1`%v@2%7eKF+oQ%6?pN=x-&eY?{eG}g z&Xt97bw~SsVg2sX-I==^ca`sIy+h31Dco7TBTxPN)ow4`uHIh1t#n)Fw#KdHTeG(| zZ_&n>TX=KxrpisZn}nOHH|B3tZXCWLcY|<4_4@qv%Jnts;ZH5qi>2bYca__P?bU1Z z*DBZ6wiULi+v?YpuE|`}*jnbJ&=s%FT-~^;d{y?U=9QHzb5{yiRg8|TJ5YW6xjgmsS39?Gu6l0g zNObMK{uZ9q++5k5+bnFZZpv>`Hr387oT;8!&yRb5x-qv=*jPOye}-~K?exOw>gn~< zN~dK`Yn)m>HGS%yQ%a{~PU#%CPWX8Bbjs9|fw!f)X)SN1) z)pS0sq-%YJKDDo&8u~x<{U-#gfrWvlzv9pN1%K6-_bI-bQczT-?k#yU-p;Z71b5Yy zcPXx#v*1*nbw|mOaWw2@d)i*Nm24SX=lFhtrE1Qb6?%_fkX5;EDw#5-hE$faQd6vm zIZ+U+LS9gW8Y|Eh{;zyy*SkNb_y3z0cf9`}{tfGEp31NPo7Q}t{x;9D(SMR3M79uY zm@oq`2m!X6kbwgzAP!7>2^;W$AYh|J3JBhB&_NR@APyW0aSND=gdKQ62snp{K42Xo z+`tDyAO?iJgax>OA0+vGUOG460%0Je2|G|g2qb_oNLYXi_(22+LxcsWz*{6tJBSdl z?IAE^0{syqFhGKYu@NK;i$JRZ2ERoM#fb?FfgoY@0|^5kNEq`#!f*!?MmnG!OJIBh z`ol|LR0G;x0%I9S7{-8JL=qUhfc7qdAq!~l5*VmJ64|$@25{-|U>_wsAP8bW^8T216hUj~$L%Oc0c)CY3=%;Q2l5)+2Ld1p*brd` zUJwN-VA?|1K>+x65FwBN@-X26Y=rQF7)S$olyCqQ_`E;ik23uyNrQw1IDiKPK^zDR z2@6m_90)^%0|Y?|$U6u-@PZIX0BM-80XGPOI0%do=DkD&I7W#ikm>8gl7paqsNgof zRZK?)!U`;d1lvM*fDcGT0>c$c7)V{h0N=Dna34@W7$kvdH(>`J5Cna|w1=<*F9?Gq zkVXj`@PHtQ6SRhD+_uwqnk5B)AB!JCJxIr2O(nJiT30gyWA>DQWFEH;WoWKVnAO-w;h$s;E5~iVF)8>E} z5Vn9}A_+{p2|MtD5J&)FFChav2!jMLvHzge1bz?&DT3C};-%XP2!kXL(}WXv2ZB{J=Cq1V9Q%dkGux5VVF8`wi6w zf|sxW2k-zth=M*KrwIoLf<7QGBs?Gr#38~4+#mpAAPvk#!U+@*0V$x;+qA`TKD2~waBq=93IHbMb0&ThJu1Qu+a z3&_|+E8kAw0e)cLLL2Jr^5Ch5%+y_D+3?d*3VjvD| zdk8y704H{`c?)3$$@D4o>mXqPR^SF65CBo2f_}i(5GEi4Gf+STBtZ)Ffiz%S2m#pk z5O&}JUJw955CSm}2MNH~sZ@1c3_rL1dIjfHV;4`$3WgMAAeI zc!!5*q1@sd8S2Bo{Cf8F=4+MLa<2)mRbS1&s=QjO7OHBszPq$Lv%B$1`IYP|&6g`L z=Ux_GuD+CiNqMREV&O&g#X9xkpZRp-h4Ks87n;vkp3glm@P7Q2=W5Ruo>iZ%Q&0Yx zPc@z?Ka+i?xvR1(w@cVneLDZN@^p>&=3lRrDw#@y`t#2YH+NQc=5`7@tJI^v@?`Ca z!V~Hfb?VbU^LXR2@?+V@nvYf<%{?kmum0_E;_DBU#`^WoKG=Mq@<8qZ;ejgk?62Hk zyRUGcdSCtC(!H5`8|892TW;>C?8xm9c2w`l-=o}9ySs3=dUyS<(p?$q+rNBg_Ri)V zl{<2G2-LfO{&wZ|+HHl~)Z6N}mTt}5+PI~BOZJxL&6S&THw!mcwX4WCsyEheDBX~u z{{73>XRmLTDy3XWC{>I3qEf6~SGZ2SuD-prJ+r-Y?0I2Z^_u)OqgyLmb6bV2)vNPY zD_7U9DqO`rvVVVVRC?u-TA@Ha{MWaXwq&+6E-qi3zPL_({AVs|Tv)y^dtvi}$_2R# zgbS+Y=g(KpuTek$>Us5ZOXp_JZBS4D*-tjlshpELM>wZ?cK&ST?Alp{v)EbH&H2sB z=GvyhCUsN&%+i^eGaLDGKAUe2Rfcjy!ccW%extInc1GtY_2tvDr!`NloSHjz?l!Wwl=eRXMdW_9Dl@`>3Ko2x3Ta;t<@)s^{` z%F5aag%i{hI-?r3-EknAC`L&^u|4o(~_ z9GpKWd60TgVSZ|UWPWj8W?pn&>A>uPu>;FYOoMU1tNi>KjV-3OTPN2@~WrcPPrrQqATNyx=PNh zGv+L-IW?gQYTl7_sE&d?Wslg4wu~)mD_OJFn6+%lSrQh(k~b&Ks=3gdYL5KF*Z-&X z&wuDgH2?q1@%R5R|35NZan%{0e%{hx3WWg&8K$r&XbOeEo+H}$@2#8-r%+HpMLVBD zF}(?E)y=FrW2CCCa5ZC%#aZQd4^L^NRtbWM2^-^T`}1F|TBS9TewvC{@lP{y7d1C$ zBWap)oNlQt=zgqMt2S(nlqbE}jNGTq!`VoAN}>1Xx?1&kYb5!(iq?WmKgN>?ZTzD}F>Fi_=mbN=rq{&wo< zy+KL=2CAHX&WqXQte>4%Q!4&z+LWe=Z*23n_`3bg{GFwv`6kx{RR;PwFWj%@Mjg$r zI?ZarHDM(%L8S?+vvF%1RMUHAH;}Fli|>-Oz&;|{7=CZ%gfyle z*ZoUZ;u3R5h~BN6de_y@W2~AjR(I2?dUaTY_hN+mFd8{MoQ>2fBSekb{)WY>lVc<4 z4@kOV?`Y&Ek1oze(p1oNkkv>}P6uALVnz2{RLuC~!Kz7QBjI5#3>q2e;+(PYem zb;4Eu$wtDkqikoOk<-OFW8uju!Ld5ws-C)3~j+Gds?0mqI#)mBoUX6q+ z$J?6yxN^L$Ntm1jJANV=ZIFTL@wP~E0{b4(!SH*4Gs$+)LBEmBMyz+!)T8Z!I-#m? z^=SJ|+PH^-DyN(Ce}A-HsH68SQt~lS<@9p?Bc2zFbQHf$T3!aKoF2|bij`#X5rDAt^TlRZbV@xzu*M=$yIkUs_7TkmuOm6B@}a(UJQu3HceQa{4&`A>)#z zb&}OQS9cHeNE7d!5~s}BsCQOuJC$OL2AZsj62`BPOkj>6r|vc{m%XRZb&n)b@88QMEvBBt7YiY~=39 zZq7#1l?#m;>HS9au(fHRU@$ME`?3gEu`*O=K)qyWCyOn*B z*%2bW?n}>Lu|CN=HOV(M$v-tIGWOm2Z81i#Fl)2p?)hPTk}x=0pCnFAlBOmZrY5!b z{i=RjmXY7oCt0T^*`_AhrzQo-Yq73CEmMh`OF>}-O22; z!xu8UF?}(!E9uLaU8FS?awMP$yAu6sHvo3P0R+1fw4>2)N|rCvj6@gU0SrB7Fquph zXl-ZsBW9HcCU%fYs(Iii)qYY*5QZmuTqVKKEmliYNoX2$XcK0I+q4NnPhCPw{7fb% z|qx%_J4iNeY!SHjm2oM}5bc{StbujiK zRV?6fyhN?lLul(KbcJ80Eq4>_jyx>_xVs6~o>wRhFpm-(1FzB-j@KwJ!vyc>yHqa& z@6jUN?^8AP5bSZFkKh;ph6w5iFiLQa0c8Dew}glBZGj5d{~@(t|CcB)j){I;?N(y< zL{F|J`T8gNay6-CP^k9RYEr0YqCZ!Y%mbnNrP_Kr>XRJZ6T?V#Mau|xfWc5%O)@$r z#*Au`BYj}~w(M+T%&0Eqp>e`wYv%im83RQd1`0a{iVh4ELYxMQCJYqK7${6bSD>3+ zMQu4kdq4=Vk6cSt*F)V_1v-bR$9DGLLi=0aZRm-2P`{5;$Mp13pKR`?PG}vxmwHqD zezf@m=m*sG0zHpVlZ{Y^bN5jXb1~{+#t}kGAN4R(5B00&p{FT-;b&yDgOH}qU~y0*OJmf?@)$L;W$+8Mu!Bw=+WRL4?ZkK$ zxCSR1U_7a7a?q|WWgeUuw5v(-;A8_-x79N-XjhjCOb*)BBq4p!L^F-A*c3jvKFJwA zq&}$?BYcE6oD&V#j)rrf;X2W9A{tIc!pr%18MKkqHc7OOj(J@9In>dPcD=12G z)iy|FDSK^$RFYb18>EudUfUp*q^8;isU(?e8>Euts%?-;k{1n9Ir>`AAYEt>FB(L0 z^ivl`gILiZDjLLr25CWqM0%(}d}t6W8blhU1~Cj!g9vGA5SFF}F{42OXb=?*;zonC zWB;+ERa|J52wKICR%t=2SkNGLw1tYc=)zvp5vK;RqCs3}5I^=BFZP-a45k(|O}KWK zsFX#lZGlSC?Al#oyu`IFP)Rb?wm>DxUE2bcq`=T=Ox^?2C~C)!_~{q~2;T4x^ggOa z{~%SP!l)WsN2p&%=;pP3Rv%TP*iY5CziXTSf4&80#Tv6sp(=3Y#^D7=_|A^C#(LgD$;^O5IM&-Fa(cxLpep(oQ% z#2*hoHa0l?=)fbfN6HW99!@+gJe+?h`H=ch;lb2{kq3(pWFCk>4B zt^K$3>~Y*YdgIUy>FcA{m#)iR7rU-}ZSEhOSCQM5*d^@BU!J^Ny}WQ)>axgX#Y;0Z zt772dzKgmqWT}yzgBSFl-*cYh+|hG}&Q6~dJ*#wP_RQFsli5RFy9iKfuc6@njZfjzzur@k|u2I(%dQ-iT-s0-a>gejys_d%Rs?^H9SiGm_$nGP;hdWlV z!}1eu0JXCnB1?*kGmE2(ON+9LVvEWPV+%72;?Z#T*uldG4b1PG*L@(HJ95C_?EbEv zS&q)p$WS=l9&ZbW##)Ah1A#t&w~u*8+=H%uXOHS|jM|2*X-nK3rn&#a@<3Ccv77EK zjR+YbN>}(#?b_A+6T1FCXq7y<%MM?`H^EjRoH=I#oAk-04cUt(@$kRNKMY%>(+ z$D1kX3ghQoQ_`J7{8V5{x^;-34@^mS_wkd0De2CBerh%)JrF)^+%C^aB{q+pM&*p} zU~XsMS8iE~CeqDRT?)4&L=!lu-kbtel(Um6${D1J za$2Z9oE=mj&LFjoLJoM`@QjvL(M(-vCNG*vL^H`~CJUO$fo2M!nZjr$H<~GeW|}=f z%@jeq*m=9u)>O^bTWV{nCS9(rshV_0ZB5mrn`>*TCf!k6BQ@y(DrLpPk=F>yI2&d3 zp^OsBXhIpSD5HupwxNs>l+lGUcA$)1C}Ri8XhRvBv}K&A{h+pt6X{LbGESu1wPl=0 zZ`PJ^BHgYn<3ze2E!i^Jl6I6*7^719QAz_!si2fLl+uY(wxg6CD5VpnoP`2*qJUNu z&{$i*nhghP3s{qGtSw+ox~;Z=HR(Q0qu7vL5!nqOyGCTU8QHZXyDnrmjO=zIyDGBV ziR{iob}h)RL7Uy0dZ`&8TgH7rsizyX*_~M4s?F|1dIza1t&{cJg^Yxe5z7!|q_saw zJ49_BYL*o$r=*p^vL@YKn}?e8P;DM+(mN>+ll@poQx4jZ12b~af*iQCIhe@(?Ak_a zova0yHU|^Sw`y}Rkv%|p$yUA1|rNq5%fp(eehHV-xF zU7A{ukb@9%pdbeUbXq&7B1M<*{JeZINKl0$H z%|p$yowa$WNq5xdp(Z_0n}?coVYId{7?Fb(2O;x(up3~)$S%Pu|2_0{3@5&ut^BP`5*){ zgAk_ChdlHyyt3QYPcF)PXcfABELNO_X`Th8QwnXM-_}Lekr5jm#_3y;|HHA%OAC4C z(?Wac%l;`}hw1AuT12ywfo5hzD8rh>W+c{c-bZX5jqlVs6T|JfBJ=(t?c( zukOF_?b8-sny&E5bcGk$sm%No?c&Y=mP zht%z3bcbQ==Kh-^Hx+Np+!(zval^=U@oPsi@wAZ6U!A;Ky;{9$V7KG*1G^j(cM8gv z^j|!7VSj3DXKrU=r?4}BLH_*i^M*dxea_H?pI>%|-+XIw;^%VNN;@g$jW$Zl1 z=I7_-4@@4Y9$1*0nj4v0q&Wxuv&UxjcaBB+!((mzp-8C4#jm9t%moucA(#&&18Sh) zPx&MMqA%l%`byrcH|8ySa-M_-?g2@+>Mpoau86DX%s8XYlA2XxYT1#axdT16VM~vB zSm`khH}x3HhMXZ`5Da-KDXCIHOoWFMk&5Y^ zXFfZe|N8n8%n>&&4S~yGhGtq0H#F0sutPH)20t{@3QQq49WH`LNZ^qMu*V3-n!uGZ zxXJ{sR>0n7aE%!}$^ss31=rfZW9;Cu4se|cu6KgRxxfu>Fzx{pUT~ui+~fy02f!^s zVsE-qjIAw5I=&U$76MOb15a!RPYQ!4vjO5M0(hzjZkND51DG^|r!|46%itL%aEAh( z*$kd#2G6#D=UBnd*}!w{;CT-4d=Q zu@U0?0{DRl4ohIc0Di#;e%J(lQ3k(c0>7+)A2owtF@qmlz^_`tui3y)?BLfO;5St8 zQztm$0*h|&pFH3@|aHEZ|XA@Ms&j)(#%y z0FPC{bxv@-3p~yZZt#F{FPQLw8~xy>0Ju2_ZfPM_i?Ov8Nymr4ZEfHQ?cj+lO*}~e zPZq&bB=A%NxZMc$HGxSPJk122u7GDWgFDRNnHKOYD|ogIJjV`x&HlRYvgY zCNM37854Mo0$$q;US|fcw}3ZT!5eMhO?L2R2e?NCZ*hXRy1?7q;O!pp4lg+11G9ec z&H#8<5WKquyr-2|EyleeB;D5r-ro-H6^4iph~R?~_>cj7*a$w-1U@Q*gC;PifR8nU zkDI|KEZ~z?@F^Skv>klL0Y0mO&pE;8UEm9D@I?>!k{5j02M+ncd;r`R1YcKg=YXILfg6}thAIRXa2`nh!7n;Ej&EOX;;Fql6 zmu=ujcJM0>@M9JHsuTR03;e_le%%9p!wY`u14sN|F#!Hk5d3Bf_^np(+aY4L7~g3_ z(s$dz?+K&C?~C9MB=DaN;J+Bbe{BMPD1-lI0!J0F)C~T+8T=0m_#-R$V;lGrJNQ!v z_%jv!xfA?_3;d-U{FMj%wHN%25B#kk91DQuAo#l$@b|6YA41?C+lbX-eAbSn{}db} zbl?!d|01&mI&c`kzZk*4Hi3VW!T&aa|DzD)H(4|O5X_)x0m&GMXt04sdhvq}91c)c zL6Z|yTwt>sG+k=n8@EHqg^f952V4UKXY#p8)zrFhGt> zbl@<6Ek>}l2@J_#n+a@Jz;H7d;U~*)(vLSoZ197g4@&Q6-jBRrcrW>$@LulS*t?~7 zGVct%op`(aR`#vvTXfa(}*R!ujUoXeQLzSL@CtfI%mtpkz;&Z9zRB|#*JX?My`%IL43{y|5Pv@UX zkc(mV$>@{CCsO2Ln14L+c=@sHW5c;*PRQlRzo7JJ=Ftdw7bYJO9?3l%Bj>`*LlJsT zo+RJG+ygOsN}eIt!ovMYdPbfj&%)BZ8G1qVL6peMahSN z_2+iRc9zJ4AaX(B{N(w<`8jgHFP)n?H$wgcNpiu@of9MXfy~*FvkP?XES#02r|hL2 znH`ZG1#%u3I6X?P1F6&0)AGp#c@AXzqJ72fDRLah(-n33ljPfh;{!FD^=ve?Wd=VqtkfcEK97&FqO1Qrc>tD$EIs`%(k@=y zwfCl<(ft4Ut1H+4mHGdFt;_!iU!xWF3{>{Z=<28Pyj_j{U_6Pf_p;h-U-Nc&6h+u1c!^X|sB+P%ARE}ztdvuh4&6Pogfi}(=C`YGJUNpC+ z%rPD1-*9D6VW5q32FeSjQC?Q7yi!N`w_F)i7--|1f%3v>lvmX%uhLN-Bef$LsBoG& zcar_U8MMdM{Yy(sN_*LcRjWysIN8JtdTT{j>xh;~ZW#j=PBZ7})VVHcD7q@Xg+z&y zq6;y;k0sIM51KO zQ&+nzZDdB8xV~v!Z*QDr`Og|*O^-TCNB9pUc{l?VPBZ6Dn&x_X!_scpvlmnTIyf6?o9H^TbzFNoX-!=pqa*#FB)W`&3THECKaG>&Y3f>JV%p8(8>zhUjgzHa zswwTUI+A}PvBMasaGE(Uq~^VN8p+CTyK&QI(j?Z1YRb7zNA$l)?ob9QoMz6;XryQ? zdi-jL5+_BMX-c|YNA%Amw}gQTrc)-7iuJ27RuCsemup0i(-Hj($sNZ)h10^> z&(5cV?&(u@+sZ*VzJ4usAN-htWa)&Wc;k0t@V3*SFvujF8D}ypQrksGX@}HB! z+P=I=N0@wK=v)pYZK9d;0unyIVQG)sijk2xDXOjF%{rn27X=jtS~!!m*Pc$5T=$Qk zK>Ap0^(xdc{g_Z)psnLAI;tX91r-KbI4i2B)rqo6)s^+C+QaQu9aV{xjwbg*^RUEB%-#>q2c=kJnK(kkVQPDx4P1ifW^>k{rsaQC*RYHXv(Csf`JOB zne#$A<}^N&p&^kfmpIX+i?mI8l8&f}xe2O)WbkJH6mI#FJ_lDJnHz^=HvNMhki_|j<+fLz)voa#nh>?_}5cp@uu~%=%&vj z=h57K`s_Pb7FW>cqZ4KExCdws{|T~q27P||Jz4C(To(Uwye!^8AC*3jERn^|*JbhP zFUjJ9EwcF5-8Aoivn+nPNfu9}&*)>acqV;*Mf3kJq|aaaW$_A!No3>$@RI`_8-7mL z|F@1m|L52LJ)iL|I({{JicZZm^O^w_23j~PHFL(4zK-KDuNhpXXlh2=^G?-KHFH%^ zVW5SxqB`~DeL}UjUR8S%uw6&h!c{?qffmk+>Y0tpx~5)Ld-U(qQMHoNA_gj)R?bGJ z9ylfj_^AgD6FBjh=zUAHJ6cjl*T!{0g@IO1eO-(xT3zkvd76%{o$G=M%~*sksISXU z@igVt?&GKH=sLJAs4&pVsjrK!tSzth^5_g5U6t#C3Ina2`nu@MT3ziCV~38elk0*C z1Ff9;y6DbYUF}|UrjD+Q>w*dct(^M0M^Dl1)f|=2($RHuT~MKyyrB!~>mF0DyHvX$ zovowm;kuy0Kr5%dF79t=>UpVlKRQQ8*UNQ5g@IO1eci+qUF})z=X7*^To+UrXyw$` z<(J*H`|nb1`<|<#>nE)h3{*HRoH!Rbopm=FomZ{GUD3^}x+g}-W!ly~Pe(PtRY8S; z7S4)lw6QAgh;CjLomAD1Rp;xd21)5y1}dCZ&Lo|W>>x+Yx_|uURe;5g@7;zm5erDDacNLtpq+Cj(rD#6Y3;E;r6b)&a%&l= za9TJkF1XX*?eM_`7tIXY8)X)!fEA18&79_Te%A7PN^h2?w>mT zXk*zL&26lUbcDksxq^WTr-c(c(;55Og;&?_!ppV0@Wnc+5v~d<476}oR2%QYtLt~+ z<=S2N5*^hJQaYA_3a5>82D=i@H?+Iba_z2ksg80dX>Mnr!fEH6L4W2It?kdtwY$<~ zI?}VaG^jAp&N&n5sk_p0?XGmWj&v8vt!1FXY2mEwN{ud5Xdgmt*X~NowY$H%C8R2XRCtf)5b(Y^IOI;QQ>pVv{HLrTXo zP~o(4>K~MFBC9zl#k2>d-8#B+xh|+M(8f7~Jqg0vJt>AgY497>N3mDxC?7~_+Zm{E z+Bs*?ovDHUc2$#jE&2bMZh@`aDb5{s+G+i?6&Ri_4#v#ScFxi|gt0E%N?5 z^&DCJk2huUZ2J7>X<5AVM)L4GOBVN>DT~e3*v)=V#&@E2Qv z?(Lh_Y}~%Scm1+CQ(tkpQAc?NR|XXZIyq;k9IaE1&c*f6`0dP_bd(S0%AmqPC+7^6 z7t|>)s8zmMNBIb@3@QwCa?VhBVV&~ATID@D%13f#P+_2xbB4-`>XbFF_1vPP+{2YY zg@I1a87eQXQ(jzK=38}?V_X?j80h4jq4JVCSJf)trK5Z_R|XXZ zIyq;kyt+<#b*=K@n$vH#i-a2K?8*}&QC?CU>L4|=%&KWANsZ(B4TjqOp zl-F}*P+_2xv(c-GmE&{eMbPc5*KX7*YhMJtPe=JUt_&&+baKu}dBc{?b;_FK^Zh!? z8%V8-feNR}*+?1hu?5FpekD)*I$_P>d9RLeoFwNlP~r4(HWIcodpbNRym`&K*ioD6 z%p%xi9~%|CYs*9+Ab; zi?VnYeSY>=S={-MEdG(M`#(<~fj&1rCyQ44-1V$12I%wXGqTu4pXcfNKT4lBo|47G z>GR=}vbdH$pFSarTj=x8kIUkY(`E4&`)Hf=`6E5|zd9+43VrUP>wZ7{|I-5d%7@aA ze@XNIe|U7w{Qv&h!i$5ud0rjlph5nBkCCMZS#*#)2pMybv4)G1UG8p*1&nX@kmbh$ z`mUdxII^@<#q6VtdvTD9hqL0x0XGlx@CnS=$(=$fejuHEb9PF0(#m9-K4D72JxSP! zOokziNERWLMcXOKpit<|Z#1KF`B6RI~J8j{)a^kqgEkGmuf;Z zMB8bnN=GB{R;ny-#_~QaZ@}_KEN{m0L0aAu*pHG4Yr3(ffHg&|X~LQ<(<>=h-h<^u zEH7bs1?thco=?1<0u;*K-_rdn=6Ch{nfW~qli+Xe@d|zz7TBnA z;h$4+rlIOW{Zc**{Xb+~_VlkY3)T4t-UBfYcGO}g1VbJ zX0_ne>=}_g2eQX#jV=M%^C5e%jKX_Rcq1*|(S*Xc(&8O3c+f4p8HM+v@J+P#A{m7b(b|h(6)|n$ z6=cti>=}?fBeK_m?7@x1TJe?Sg>OOOLnyqbhYIgQ;VnH>cz8}UD!c_-_hIWYwr;}K z+pu+*Q%o(q4TTS&@Cq&7(Tu`}Y4HxYSm+ksj=~2~_-0yrkr{<&X(~MYFs3cM71{G6 zdnRO0LH62_J(#dqTPAmqRusMsh4=PQ;r%GQwTB81V~s|IcVO!+*t!{8w_xi6<);e{ z98(MLMBzgyyp!=y{YGVP4fmhla{=Z2X8fUQ4`_*eK*Xw@0fv8qwC|{wc>Z zHhKcN*J+Pu++@p#-@pEyWy=AYmPDg*th7`nGHr3nZQ0O^mJfeuKWl><^W zr!*wl(m!AUSO3pgKJf(LnOwi+!_& z*7h-S`PxfE`h40njN*cnnFv*XC2&d`eQk%eTBZCQWB?X$;(PHIVUMJ3rFxu(0C$Ti&+2=AbC335$$bqt=vTrPTT+%=nA(_O~!h0JB@ zznHl!{g*LUTmKdGTl^|Y8_6)2JajF+{S>~5RvWsR5Wj`F!acV!S9|;p=5mf^naePC zC#}KmrZpV*Fqe7YUgipR-%q;X2WZ{V2bpVD_z{vE8l-j8k5Sslr=MH%`cbA|fCf~$$5?YI>3rFVHpKW4_DyqcV%gVr$BGF2!wZx_7v za3rf9l*}VPU~?R!KVx&6Mn7Y7l(<2dV;*)2b6k@fXq#sBN}Zc%?Jg^=-6hf5T}`xh zmxquiew!evQ8&Dew?=;&nogPBhSsqvjuq$ z>ZsbG>V|4FRIO08L)8t{7He>7e#a#htZBoV2COM#O$BSVV9nP3l+=MWJy_F>HEmea zfi?YDGlce;Ms-})ijq1}QWHvQMoFzGsRt{!SzD)BwbC-pkhMeB2w4+kn<4AOn$vWM z%4#yL)?uO5Iz(En!$_;qaluLF2DF;FaeJze^Fq!7IXmQ3$f>lRiFR;)rjD+M0fH9x znQ394Knwc}w6L#<7WPRrtf14ugAV# z{v`KF@@wkX3SUiqHS*Qs$EA<5AH_Z@e>wN%#FtZFjC`^9Vdlf=hb8jbn~WwPyqAAB z`L6nI;hoew$+y(E3gn~^d9(ONZ9IYKzEVC*-U;O)^5lC-eW^gM36U3zFBG54JQsbg z^lbLo*t6xQa^#XAJVh>jPnO6VA@*1~m&+x{A0a=O98?DjkEX~Wq4-GVk?13(hqL67 zP<|-)P~susp**=Hs1Ft%NIejFph!Lm(Y>Ynv-ijDFW;BDFL9r6U;f_Yz3RP%ds6pA z?kV1#A-{yuUD>;0ca`tVkz;~zXL+D}NA~v2tGaM+?c&Sc76G};m8$a^41jswDy{Nm(db#Z=Sa-q7gupqS{ zvLM;5PB;Y?4oV#qIjBfZ1JU`>d8Grh$> zGR>+|l9NqkLqSLhjJ-Je&4s_h{QvRmf4u)69{D}L_8)&>_K42Ck`w4I$!rEHoKDV0 z_eyGROf8t^#+2rv!lOFMCvs&_VW5+9M#@ufOlck}4C*MKL~30OR5(@6M#{?MO~?gP zZ%oB%@A&3)gij{Pc?=|PQ=*Tvk#Nn8DF{z{V@mU2;V~Wg?IbyyfeNRSvypsFTQ8iZ ztu+r89@kOs>tdk7sd6?_u4(IqQ`=heT;WL_;nPTR z9s?ClA7>-snzn}Uv~8_lUu za$!(mpvpNj;krlv3p6EuMo0J@66<83!fEHMSRYI+G2SrtGngK%S{2vc*^3n~n>bIwHe=sH== zh&iMqnI=YvU;sFd)I9;5Lbj{36lR!{nngudVku?usU(=Dkf<$LCP~miPHnNMU zRCdKCW*TM9IQ_bg@|C1Hi-8KKgR|ln)2MsFDQ2p!)-vV|9o?&Vi9v;dPR>TUl@ddD z)8^RbEp-pO7i+rLn>xx@liC~xDx7Z4M#?k`m&|IQyp1qTsWn~fEgkJN*9H{^x;ba2 zy(YG{Ziim1>0@u}XlJ-Ks4&pYsjm%_o?}a{heA@AsDUqgBaFi_!iaW>Mf>{_Vv z__}q|RJrCk|GPTU*OKTQ1}dCx&PLLc%?(eYX|y$u`rp&hzJXK^WT3+7FcN@EciN^$l74%6qc7?(4ER@`)^Nrq2)P+5c&`&^rP2?En0? z>G}Q5^iBXh|Ci|JEjN)@0C@mBd>Oq9Kyv_IxK|bz(&z1aWHCmcuU;&R3Gx8=-d(bI z!tZJR|DBWb|IaVW;vWWR{{J97|EJHn4-OW8P1pYyubq7VKivIU?e+irIu&>$uRu^? zpqF#T6&PDr_mbTb&EEQfj`~ep9aI?T<@`I;>t3{5qS;@Eb<}Sr#e*2Aa0WOVsjEy) zchqzq3|7Z&uDe!RqSH^8K}EvTB6x?zo3(WTX+UQg@FOizb^xI zZ%r@J?7tuCWZ-rZoy$Ol)5F;)17w{*zDyNgvjyv?+kG`h<}d1q-@(N}g@GQ3C?Gr!s+L1Bo5cl$Yixo-|;mUHXrHe z-^uksg@Jy~ze~Tq-)pXLzM`Xl7uN?B2KqVwF8%s$uesFuSV#X}(u^=r;k0tX*KRvG z8r1#c^S`}}EbZuj&8!Tqv)xy9MDHWHP6jHRcFsnkm8(fE8m}AUmuk)izosL5KbHj+ z2HH7iB3swRmue0zpXkW$<+7l{Ks)D5Wb0m`UaC2!d|gNO0WJ$F47793M7Hiu!BWkU zbes`?exg+ z=qNwSl|hApPRj=LRhq=Hs+L{6MUv;$ik?H{qR5)FnjeKV-jm-^bryEYjCmyq(y)TRB z(e?jt|CQ$CKTO_yH241+ngd{ZK^AYPdjM|wJV5sV+UXv^({$~B2z_3o_y3Qe>;I4F z`ae#e?_Wyy3h498OK2P9|M!`}Bwk9N&m@z$>zm{+_)qliKYjjNHHlZ!=da}bchx9e z|I_Eej`)qgq4)pKI=1Hhe>TF}OJA^Qhh=URW4oZkOC?VXSglK~jf(=TDH7Fs}poB<+5&{iM zh%+c5%%FrQgA#%aN{BHiA-14|(1H>o3rYwqC?T#OuY z5P}jS2ucVbC?S5Jgz$k9!Ujr+8Ym%XpoEx#5<&)24iPg@LdZY~5d$R=kN^W<1Q0Ax zk^zJYln^OULZCniaRMcT36u~eP(qME2{8gCgb0)nAy7hqKnd{yC4>i*5FJoLa6k#M z0VRY6l<=axgm>8`yge`Bop=fFpG$bf8#%=9cv)P+i`f$1eU|XHwS;%5CA_aJ;gw(s zFCj~KwOB$BKnXDbC4>N!5CKp^06+=x|0IO}lMww+LhwHcvHv85{*w^-PeR~7332}< zg#D8c^-n_3KMBG9B*glY5b94tq(2FP{wRlt^d}+EpM*Gn62kmRi1H^P$e)B5e-c9c zNr><#A;6!6_Qf`$-7xCn2(*gus3jhlqf%eiEYkNeJpEA*P>%kbV*( z`bh}rCn27nggAZ@!uUyu;wK@9pM)5G$RU153_ppnPbr6h2uOedFak{gV)scVKmnQo zGhhL%fDNz%4nPH*fD3Q~9>5Fu06!1_f&c>aNv%MLfE?oYc0dRdL_h)zfDu4kK1l{l zfC4lFX21ei0UKZk9DoWq0T}v zPePPE2|@NG#MqM%VoySZJqZE!B*fQ~5LZt^SUm|*^&|wgot?(0_I7GmnX4wC5QAw5&=ZZlMDc2 zxH1+W4(zz#S76>tJBzzui+FW>|GKmb5kJgEg}1wud@fKYgnK%hEA zC_G655C~5)0!@Gnm;eQ62F!p3umU!~4mbc6Z~`vC4R`=A-~;?X00;tzcqg?2Apmji zq;>#N?j!`cqZ}g2orEBF5@Os*2yrJN!kvTwcM{^;NeFKzA-bJ};C2#X+erv*Cn2(( zgur$Z;@U|FYbPP9orIuv5@Om(2x%uFqMd|*b`s**NeE{rA)1|pV0IE>*-40DCn1EL zga~#t=n)XV4mrf{h+jv;9s$woXxJklb{!3S1VpZ*VUK{gbu{b|5VekmJpy9Z(XdBA z#5x-G2#8ll!yWS)*_AXXg>djv$PqhXJLICV7a5fGk^20el>N|G){g8Zs9|!!hkSLkO3>;0s=rg&;>M&5-fld@B?kYEI=M2 zt9C2k0s=rg&;>LN6D)ue@B?kYEWkKIFas*!142M2U>GAb0}j9ov;rM~7+y=o0&IXA z2m)b1h!bR>HGT}O0Z4rW1+W7ipaqBkVn4wI*Z?;W1j2xjCdhylZ~+0J9biL*CcpwX z0YA_N%mR!f1T&xlJ|F~i0){a{GvENcKr7GzFo`hqT9V@A6<$rf8hN$&N`@lkmG))# z#rBo+xqKooQuL+Li`f@rFP2}(QOrEyh5Yl$=hf#66g4mM zT=Ch=v(aZu6gMySO!?{D(}|}Aikz2xN`0#EWa`NX#m>t-5q+Zcc=quaMbFDUmUv8f zEKd>i)LdaOH5eHzQVhN5qoqf(kHj7+Kb(6w@v!i4{-NYUD#g)DJs5eg_(0}?C`HoC z?v3p&-=DibL9z7m_a*OB?d;0EC?W!n zR>kN9Dw$I0ZS_=tq`$bcZ>PGma6yWq?-kF_ zoF6^EbY7O?@0HKZotrpUI5$rb_|(r8&PkmUIj2Z5_@ZZ*&dQz@JF9$V?##rQ!kPIU zJv+*0&Rd6qB!XLiU8%3FU1$ipnQ!%O9USUZu!hOkQ=~|J(Y2+cvq#5{E+3UUDsj~4n(Ug`nsRThH$l<*@~e}p)zyVnDT>!uT$x!J zU0I4{DPmu_C)bnc5qk0zvrj#;a75~e2*vHo93DMFv8}I7Z7Wc0zeuRqnrV%;mMFSktfd^x1rtGm;``OUnV<1ReI;*}qWqOTIZwhP zc=GNZciEM5C0v3l?@T&Xiu9LKBWlr+ap1lEtUYEg+j2A~PO#;zNvmotSW=dVrD)EW zqvjID{0mdezl;)9N~WwSMp6HAazYm5d{dI*{uPWVW5ifAWGM1qNyK{J<|~?fETT|6hGf?e+gQRv3x%>wnKsALjqlgn3(nrpSmi>n=F%0pO#r zeDWwk0nC7r(oB3FeRY~Nrrs#sCsMQonl*G4CK^(LgA&ZuKg=U1@>!;nlmD@f2kT%m zCQUo!>jaU2Y4|k5nZ9S?t(bZFDF4IIvy~=(VNxSyb7H=S6{-vh+0ni==Bj4KM+Y{=*N-n?O@J*EbDqf&k4$rWETy9Dh_ME~3u) zEX8qM17*cp$%2e5G*cF2nq5xoSsdHQ@StZ6R<4*Z?51g7fn#-%k zHy8?UVdn8kmwb^uyp+^(w8>!q8fwV})beDPK;K?Pxx&2He%jO?`a6pmpY&gK5_QEt z02A#ni;T~>vUJC(Hajbe@oASN#y4&riqq^c`kFT=Cfy=`d+9$2R+f=znNAhUz)(Wu z(@&3{c54n=axSYW4ABXj61yw?1hqGI6wPU*vkI3; zQOaDtq2rm0uJBkhFZRR?{_)vyL7E)f9s-0o!35X=FAz?X4+TvkrGixIkqsrt&A(?O zQ-uLS3n0*$ov~7>mC8gbK@Ht|qBi)H$?^KE)G4o3Yxq*wSSVCsO09W8Q{OJ;ZyK8= z@ZEKq1#Glp?OawFD;Von2#oJOR4;a{P;FoO+k_Pi^()jY;J^ws6U!B>Al0u>vw%JQ zB_?AgVs*426>}eV@(7N%8>3!tZv~pDUF;I|e0w`EJAFE{jQ6y*_(@EuOyxF>wN+~X zjnGLSs^jV|)UyMF1|Pw&D)zz%P1*Gt`oq<=>b~}-4`}d>nx5O>8$-{$2H%8763D>b z@kz_g)G5_4bxO6JIwiF#`KU~EODnpiif$>PTYAwgI~sP&0D5FAz|aq6zy^4LHV5B4 z>GIl8Xskk?tF|4l3si<{>^L^Z)xUwwiHs0BNp6k<^CK};ylU}M8S}7L(oE=y3E1X= zUe>;PykL>hiB`b$a@wP@bw^z)j9HNGZjf%Dl1{m%!EwBcj_;6`sY@MArKIt%W;w{% zrY?wS;y9ww3bhMYcC@LB!vUs?>QJ*~Y}(s*DwC^6D&ORa)g*s^oPW=U&B=k3>Yr9_ zqVcP}$#HhYGG_evMd_B&&ryqy(L8cxxSu9#vx{gx_ZZC?S9)l=xCgVsLzopldywXR zn+9p#w=_mmzI_8Ud0gFl=_oqz z0P`s6hnS~@=AnCnj%NsC&oWPE_lwM99T}pnI9{RU(vg}B)JV!hozs8e2p>587tJH% zdmJxI&8C`0lgvCmrlG0_c2ll~uVx-QiWTXmVyP&Wmp#EejsZ=ECRgjC8SZ>ot!#es z3rElF>A&b2m^1ws%{`hTOm0dU(uj}mnv~~=qoa0HiH?gwD#hM$8zp|~WYK<4CwBBb9WrQZI8|FfCnw`(RW!8Wj0;G;_!!Ptd+y8Xr>FAT)k9X&~AMJj)`@zEA?)wMtb=;G_Yb@J0Fv9N@m2S)47Q3x{ zt8i=op3$4)Hx6H)x;}D!@w&`)(d$arX0MH1TfQcDP2w8intUdiQ8R^fDji8jt{!T5 z_b0b2u}j#MzdU)lN=^jXOJkR&F7CM~b>Yy?;q$sbH*!||%#kztPtTne?JI51ZjWs* zpPD*3a&qyc%t_IcN+)JdoV?$X*&5wi+EU&e-!znP#QTqn99LTBI5v4qZf#<%ur_~m z@@Vzw$Wf)<@aiJn8F9o4J%uCL5qa_r7&|m~Xk>X}v9LJ5D7i>oBrMD?NG?zp6r!nU zBszI7BYIG2es+Ft9`^`1Aa?-nQxrP0?S)W2nB;dF^8ON^`JYjvs^BQmNEow~tvPGL zDp-=uStV!6%F(8zF=3dz55U;yAFMBq(fj`&jbH!s`Tyz9c*Bj)|No)Rdl9ej_aZ=r zfiBJ&yca=}l;a!MYTv(!XYHUT%^OFfI>K*| zL`@^6#mdQJl}~d4d$&$8 z1X!tg_3B4D`tOnQECwo^4$dUoK_}=_U+$~CNr^DbQ#+m3jsM3wy6=TU zm6r;kJKg(7t2F!BPjr+&Ak8iYDx4~3Bjw6|R#mQhJ9w3*r~On%c$g$R8K`jDIU5OA zUO0#FvAuQE#8+v0*w1ui3nX{|0~JmeXCv9lt6q?$5p9}A)^x6)>qvi*L}xKj;dF3T zf^IkJTnM*4MYk^Q_AhjFzeI|27^rZ%IUDI#-mHV}v`!PzZcTOnQb+sCq&k~{3a68^ zk#?nHLwlNz9qrcC_OEo5KO)U81}dBm&PK}Em4gh*n|s$!SUyCTAihPkTk{s>uXTjK zLXvYCsBn5X8wrokT0%1)-OZa?JAOyC=H0*15&xKrg9-yZoHG~Kj^5FzW-R%wj`&we za6SVSPCsWO@$rd6<0X%+UcGT@M~`ZTlrbIsuaWXR1}dCB&PMu`LpR^SsOC3sTzk}} zjoR5A(Ws`cmv!Vn;qsuuKrd$_c}zDA^B#wW-@I`R%@?emFpc-SsHVgJPDlRhBzYhM z6;3bb{^V)4>v-*N?2XsR^QbP-sHWHdUPt{Kq&uI13a6j5k-E0+sov52+Lz;_QO)ba zf6&qYl=R2b;xJfPhmK0|Q;=GaW)^E3zGVEVk+Y7*zu=lK?s zIL}N!o9QQgUi>+I|6j8B@}FoPfXO88`>rf5rq8=H_kShD0QmBkWbrtP|M$&TW$|S4 z0Qe7@|9=j}0Vq@Kzm#Yae@AowFT(u)G4c{14**6n0RC)v%~Yo6|9`7}|9|A$EL3`x z-vbav-owq{tLRY=xy|#(6(S|sCBOg}f!2W!m^}ov0qsB-hyWcxCol_8hX_u<1-JnZ z;01hu9|!>L-NUpgAOds%odD}22!IGkfEVxqejoq@ffk?@2mx(?xu0MGtbh%$0}en1 zoPY~x1KNQw5CJ-XPJoRSC@+8rNPqz_0!@Gnn1B|b6$k-sKsyiyB0vYw2{;^Ipu7N1 zzy-Jg58wrSfFI}tW&vFQ3ljuD1eyjvq-+2tKmnQoGhhL%fDMQM9Y7~A3+MvaFhKxB zKmrVapPuE~TY*`_1Zjj|jDMLnFhuZ;5dw&CAi$pA1Vn%ifTalnAOaF#0E|ErAOj{q z0h$3bU;(Uv4X^_aKn0wD3vdG-zzg^QKM(+dKnu_cgn%|c7$As%1Q-A#&;-bU2~dD$ zzzkRbD_{fcfCEqgC*T6yfCumbKEMwIfFRHUv;rZZ4PYY#0U*Z^R5rl?7=b20226kg zGy`V90$2eXU8x393!+%fZkN5Z30H136KF3pa9K) z8L$9Wzy?qQP)Pw5Z~`vC4R`=A-~;?X00;stKr0Xe+JJU|j9jPWmXhouAOQxz2s8mQ zU;-4N888DDzzWy^JKz9RzzMhjH$X2{QEmYr;0FRg5NH8ffe_FJv;#uVl-!DxWS0N~ zU<8@~8886~&(lEPxfT0d~LvsDKl20dBwpcmW^a2LeD4XaQP*5YPs+145c0 z66$g*A>9BNfhIr(On?G317^SiSOFVg2ONM3H~|;n20VZl@Bw}x00e;+pcM!KZ9x0~ zqwY+=+c?gh*mEZaJu!?NQ`u;bf~1>bgTnQ(lc zf^Yd0Y}uA%TOuUc&Rro#n>2AEv`yPIX(A*|(xyoxG)a%NX}N+JG3)4s-z0IKc#%2{qO>;d={U1#EyF;6O9b0yqFC-~!x$2ao|T z-~;?X00;shAPhu+D9{SD0WqK*=m6Lef&|!ieTyt0)L7e$?^^%|-~?QN8}I-!;01hu z9|! zcFWtYpv(c^uB&lS2*J@}gXvwCeVehojqbJV6I) zJxzHbZ6$cg4b`n(+x33ped+z&d&&3Y_ww%+4yO;t4;K$*4ylJq2eStg2c?6#Tr!s( zPmD|BxdX`q@_}SkocQ$H@wba_W!_TXD(%beOYD>O<@P4`%6pH!nR!!vvpRCT{Ca+O zYPYhx@LKw{_-jRjIP&ZS#|NaJjz3*|D)W^3RO!j=lZhugpD1L~nRuqSBeO%LDDv6I z6OT)e=N?NwCO?*MU~ItB`%Cv_?@Qb#-Iu#Jd9QqL{+`r5iikQN|3vZb%-!nUrF1r( zNK5J5SaM7r%ioo{OS!ACJ-t1?y?AHl&aHRIcjP~w`ndA(!tLqXYk^ZZ6!EzA1iF@y5)J>W!rvvNt4dkZ#CbKbDH8irX^V)NQ5f zvezZ9ldj8sjN;gTEPrk4TIJfpHR)^O*A%bLT&-SRx+;5B;wtH?+?B~IDSZ)r(8XY%-CQlDVzPt@76VMX8IFiwYN} zFN|MUydZOdN)hjmoR>OJ`2)rP99y4RudXkx%dShTlh)6h0#k285T#Dxgs-x?t=f&q0`!oG&f2l9q zm*|uFa&wb&<+=GesX5A=!tC_y`0QeDrdRDP(fjnoENND5W^$%HGvAZyQF;n9sw3}b zyAoYeS58SPvXbvibt;{Oj&w)7qu8ElSKCXmY%CFzV!5_to7|RfO|>emg=jh&j}{}D zh#Dz{v*AQo3g<$}kQ~YfQ$ZzI2&4n?K+&J^tAF4a0JXWqvpm5ip0g+IvORB0*%VvB znzqKRMN7t_T1rjXrbLs}lrtyIvN=zE0g9<0rKLEzDV@Be|7ZV7@BbZVO~wD~So%xx z?621~Qr#(yu8}&O(u0~#>Hm38KiMfArx+g7 zJEaFTozlNEQ2#qp?_(er3=8V1Yx||@cS;XxI;GkBAHMhB5&9r!U|8^k^lQ3A2Q{72 zl7aqrg+9m`7#2Js{hA)pLAAP1*kqvp_oUg+KrR>&)YGr-l%|vu{IYC5IO1_pdj z7yxnx(lmg?6EmRp3}`x~n+y#2zAymf42%e#m;tq?K+`F0F)-j5iOyyq7YqpM8BpCR zJy@?(dT5~f{96sgi$Waa3=9Z1E?(0qJ*4TBwi$^3fCT#($OXfKdg9fUe^94WdPvhL zZ8y;WAt}#gAQub?>gl`1q{8L*af9_crH3?cBe{Y6KL~k{GcYKqCtuz0L%vSKubugz z*+BkBBsqtHTrep3Ve*p=|6tvQe@N5tw-~7Zm~{IX$OXfKdg|J9U%%nkPQTzV(Eo|h z2RQ@7f+wV3)9egs8h)pN{yz$RkTWnWctZL$tV}_Y z4yxbq4`~{Hw}Ama6$XHuff2zIGobbiXc~TxfdT(43;;O;BZ4PpK26Dl$pq_Yj zGm;@3x);t)V1fne#1Ykx#JHT z=>JmagPeh3!4uN2X?BJ+4S&Qy|5rjEx?>q2)b#_rK`x=so|pZKjhWcGIWBv`)*XZ1k6wPg(7zlYdOV|Jr6cm6p#@ z?7yXdWix$|V*ic$?54bz)@eB+(O+7QFuQ3K@&7uT*t)yV`qVESTiO1J=YL`Lz<&0T z{7=M3-}qP10~@7b*(Na@8pE70ET0Bj(R$Ssn-k-{#pox#%B zOM~_uvNY&8{uiv3MmSH5pQ?;Ijf@r9JoB+%uzB7czh(3MyIQ1q?dv1bJSQcHO%AuJ zY#zntP1xLr%>&rH1DpHF+*TUK?lg-jXj{p|iOFXx=FzB8j0GbLm$=BnB~4`E5*t~# zgp-9!!pNaKBCTrBwTm|I^U~&hcG|qJg*NYV(&l|GvM=m3lMbK0SFL2`fQ8H)@ROMX zK{9iolgu1&Q>u<>d)0=`t=K$(%|qB+!R8*?JQAs|5kn#y5(SYcj6`fJC6eoEv}1ES zHVX9s>$SkV>b;?jz1X-N z8@FI%CpHdYV<-D2YeBRGjOe4W!PO;!(nWXCyxmRXG;ep{$Zu$J*IhJkw`-i{?Y4Tp zQcm{}rK0JZMLJ3lW8Y@&isvV+J>>Z{YmXi?N$qVk#J;^12`Za;Jl|%1f9Fq_pAY<+ z`5hGd$M5#YlHW!4IB2)U#M5H1Ac692B||zaWJpJl4Cx4wAsucqq{DY)reqtOlsApj zX!UKhGl_}u>JIusHt(Pz-BzG`fMym)NQkNNoZ%yV7~6>HtE<0ubiP8PIZvM)y9yhe z^i}nUeHYdzGQ#g}tXB=E_h7wEm?ri?#(HdO-HY}1sdXRLJEqn+IB4v$Crm>l zJWVv@)?=m7ww?}}*4pEx0nDB#4Pf?|XyR&*l?E_-BpSf%iP8XO52FFho*tT{+7qM! z%${Z%!0hqwc#nCyX=-XuCrwT53DbCHPl%?b_Bd%!v#0$yAxa~gJuVvA?D3PDed1`6 zRUsO|>YI zxzZx;<9_S$H$u-7`SNW6U3DYteS z4b02uoYwqw?Cn)$D~9RFIi@3*J83#{E2bll?YfeNeKQ(Ht{lCNMvJrSX?QrMBe!8X z@(89Qw_!SR$59$uZo+iru1*?X9>a9xF-%9^is{Isn2tPv>B#LEc<#Z#b2FwRw_-Z- z0H!0CFdexC(~);zI&v4LBcFlk$X%F@yaUsbn=l=@1=EqYvb|)`0F6>_!gS=Vbf$ft zBLoMgBX?lXI>VrKJDqc11k;iG>74r<7{l(wbmS5SvRjYPbmT2NXgYEmrXvqvI`U>r zM=oJHaudaF@G0A7OTIwoT*=op&`0x>@7hw1W$>TyYU{eNUS*wv^(yPkq|lg5D%R2uR_zZ{8aC|@ zQyO;d4^#MTi?VD1roPV zVxNl=`>d4MXQRZ_kOU-Ol(uZHk)!RMw0)b0wr{i3_HCTDZ)>IP+d|0s^s1bjk+Tyy zTadFAIfs#Rq<+p0cptdli%I%Xa8gJbfRh1O-yNtz9-eriX(D_;h2cD%J)PW=>He+RQcr>#0U zeOZ;<dQg zP>zLoQ|boghSD~9TmCxoYq&OlP3juun!?rTtK(M}ugYAdURAm>du8HE>B`&{$t&b5 z@|UMBS1vDHmcA^0S@F`$rRpCT-%vfT^pVoJ^11PIid!;U)Gej6vu7vHmd?&?PHvVr z$2T3_klqmAP)uYJYNE70yFRgATAy2&Tqm!~uT9Y?{KA^_n)sUHS(&r4XC}^+&di;W zJVQPszdE&ASzS0ieR}-#;;PIlbyaC)c4cCvv@*9Mxk6r%U!Gd7&`ACCviP!c48zP) zb!llyfua@`C|Y4*ae@333JbC$1M?>%5lVwfyfBcaVSvSxGAGIN^8KlPrN7XZrZM}8 zxzgO+oa7vNPPMmzToq-oI=*1FM?tnV(JHlKgufiE_8>?GUy8#5#<}!d_+8n{OIf7|(1k>gSrp*ydn9SbA;9A%>cq`bA;9A2&>HzR+}TN_LQCY z2H~|i!fSJc*XDiz;k7x!YjcFx<_NFNBLKo{^H!h@KzMDA@Y*!x5dq<~If83*1lQ&W zuFVl#n|1ZH^$@96`1@f^2hy*yaea%@JaoBg8gGh;5D# z+Z-XbIYMl6gxKZ?vCR=;n^`IYMo7gxcl^wapP~nbiCa|GPx2)NA=aGN9GHb=m1j&R!?;kG%#ZF7X%<_NdVIe>869O1S( z!fkVe+vW(j%@J;!BiuGexNVMb+Z8(zcAF#YHb>ZPj#wosRbv{2Xrl+yuaJpEm&(0FL|I2EcKj!*QR(ai6yU zaNOrk0FL|I4R`<<@B(n$=WyJw*a-)I4hMb?2YwC*ehvqI4hMb?2YwC*ehvqI-VVTl zpTmKl!-1c}WuKdYCcpw%0l4gQxa@Pd?DJ*-F8ka8z-6Di0J!XP4E_eGWH$4mW+?0>Dk5I{~=qbGYeq zxao7a>2tX0bGYeqxao7a=}*~-Z{V)a;jYi&uFv7F&*84m;jYi&uFv7F&*835%{c+? z`W){1)SMIGpij*?0S@}qoD<-nPt7?24*Jxb6X2jv%{c)M`qZ2g;GoappwHo;Pt7<1 z4*JxLSJ??ieQM4LaMY*foB&6CYR(C8)Tid007re!ju0fk1ek#)zyeqS8(;@G&}-08yY7XaizEJJ11i0#avz>;%j} z6EJzhjr;Dc?|a_Qzn6MXd9Uzp`rY`u#lxAy>fzF%?4iV=v4io0#at$*=1Sw$zW@3C zsr}0S!aM1A;_npS&b+O@U3x3~R^lz`t=zukK6zh$Z~1AG?a95Fd{cfi|3>N!<&DDY z>DS}07k6iNtGi3DWnW9YCcTz>HTkOiYCfCFD%rxW^se}>;wza~)K^L`XJ1adJoZxj zrQ(a37u6R_FJxaxydb@hdp`NR{Cs|AYNxWZ@Lc-2_;bZ)Gta8emY&HzlXymYCiir* zYK{Q*WbTRN6Y>-JOe&*f3Omv};ya3uXC7A{FFlrhEb*B1Snko}qw=HqM^cX{j}#tG zKOBF!_)z8{^`X*(*#{F3jy({6pm=}ge)abp2f#jLZUAj`xYRAmErpxYH^*---jumX zy{U9#_Qu4GV>iTaC|;krUcJ7Q%BB)2DV5un6i>^k>y+yXA4`8M{;}e3wS0B{s?=4=RfQ|rANbrnRy7tNdw$}4>HOSz$@Ap%@*hckMEOYJ-1NEe zbBpI>&QZ@PZOLv)Y>~F)&Q6{!pPk>F+N^9YY+{>o8BAtjQiYG88 zV60|70BKcjWpbswGQT3VLRnE*o?aebUR;)0rY+mOnYd$w#Ii&G0^@Wp$&2d`UM-)9-gkPaa`*%(Egp!1~~)$f{kga*UN9SVG6anMw#Pu*M0&Fs z$OQv}dfH_t)k^)I9xiO5##e8qfw)i- z57rS^s}Fmxfw)D8gPef@!N$ag>WGh4i_bO?w+eBPGcX|7nD}rVagBT690PHi5C=H} z1A>i-&#xn{@d=-6AZ{1pAZK7eurcwGI^vp3X`g{O7vdlV@f6}e9tLtjS@2_Y_i}BWXtL$ls%y_)Bb?A{g5hby$qpC@yM-{wX&gPH8N|WH zgln8%wb5kb2Era83~~m_f{h8++$d_J$qpI_%R(6B3?$EDqOmYeaqXej+%*gt2z!Mv z$jQwN!eC>=VKuCqF3&gN+H-9%{|~!h8c^Kgo16kPEs6^@PiTdr_*F zty!+U9bcwaHz6YivH=q8q3J~+3(A6evQw1_O;=4VUZ%NTEie!c3Sp2lP!?=VxMm#7 zGR?JWp@DFS#Aea#YY+x~f_lQ`P{laV^+FZLmuaq4iwva0BsY_RT+l11CtYqcAzd$Q z?=sDmVzGg8gfx4}mk7$BUrP!jib5t^PMQ5rupCvT}rGZ5bOJ82H7@6qD~8Hq(E;V>504 zoXuo;$!2=wMVl#bht2fj3pP_XE&HCgnc}p3a;MF-gqAPwv6)tX#b)|C#r|7I%U}Gp z&9s@8zx|fYbRI3=Bj5idEkF7q#s8z_=U<@sf3*BMZ!_IS%Wsd^Olew}$8P%T{&zn1 zZ}k3u$-1id|Lc#kaH0JEAFuo;`!&hmnBJBBQNH@;f8?+HIbQWwj^iKiD}Q=XRBb1% z&XLE2a=76>LW71dqNg;4i1U$JFJT(R`=>Sy)T*d~7 zD@@=j(^lgB4lv^apY(uFhrySk;42;A?oJ|CfNresk&ee2f6CKn&;v6rc-`juXs4 z6JP;s00)|Z7Qg{G0T&RZwDuphfj?;n|EUAHndmqBFRb7%?clGwh&G8L>(Z|hO^L}( zfEj24EPxfT0nI=Q-~`-&2k-(uAOHk`8Bm}{S^8)v*rOaD9r)Pp0y|}}+YinRgL5K8 z&UVqq&q+jX0?b%HVgbKk#TPcfj`c6Qz^{41Z~DPP5d6y!kw@_HucP?bhL7Kl;bR9r zepebNe$NaZvw%Oaf&ak4AGd)2=mdZ2B9fB>ef+r>{DmJZ1;Jm2!Cyzge|H>R!)(pB zI_VD;-8IbqaSuKQ@G%_%KM?`%Z3XX-fe&_pkFn##9VYOJCh#d6_$&u^wtz1uC{zWg5`v5=CiZ4Hif#2kv#P2%5@4LXFo5*Fr3;2N`5CWn= z4Cn;90n<`~1+W9nfCF#=GT;Y7Kop1poj^BWq8S3|u9?(-=mUQo0RJ%z{&R##Eh~Ne zmo|KC$H!6!J}UV5tI5B#=J{mq{iKKjn0QZmFH8R8MV&Z+axOof8dt^(2hs=P2a5YM z`_=uWce3v!-jUwPk~cu{t@K;UTZMh;eerz-@&%Ch=Jq7_NPDsr4Y2q|ntTEBbo}d7Z1|1(1GGd9m<9>ILP6 z{PQXD0m$u4>?}Q(c}{(>U~XN%8do{2wGd^-KK@^t>GI$BU0;9#bDHJ(_(q@o4dpG`;`NKb(44emM6~;vwmw+=Iyn z@>=QI>@_My0)*duf!_Vg6bCSIW$B8{74a*ImuD_lFE3q|{XJp%`#BynQZdr1fyevPO8dXLMYFdq} z#ieC$`s|X#lCjg`rxj1loT{E$IwgBb;uPtW+{ww4<&*P^Q;QYyvQICHFDfp~EL0bk z7GxJB7Dx+nBgqkYBtJhjUzuMRX2ZFmn>lReR&d`-*cjbJe+}IoUahIb(ld3_#YAYfrYz?fF9%-Vu{G1Gww9vV zXd)_!nfc^MKAZ|G;X)`Kiie89Oi&G$0@*+!Fy@c@i@uCc^_9F?Z^B#c%ddC}?zB7Z z*39JR%sG+{*^zHawJ0rx=JX%@{{Qvur+xq5>HYt66aN2V{=ehD6nz-g9dD-?^oqnp zuL#H)=oM_RS47(ZHaMVp3x2ABayzN@GLQ@U1@)B6eL*VvV>YZ6T7{B!-|c|)U#G> z&~$a!xu922PrSPKPd#gOZ8_I;^e!_{oXoDU>J?-+;bfTCqtDTx|P&-N1=?22HNo+O) zxnMw0Pq?anP0md>S=2=D`k;1(qSXfCb4a$2fm|>ws3%?y%~alNnjek)Or|$3+DVGe zFwmbX^g+(RuwaAw_1>urY9}c=(?GwEH2W#Q4D`W>pq_p?G*V^%>o;(irilK9fU)16 zWne%*iOyyq7xWA28Gx3(z0%CkCAGGl(FOuuV<0|Hh=ZJg0YN=+P0=gQj#X3iG@d?d z4a83(!9E6Z!LXp7xTfgEb&8(G*=L=B{(#U2IRnFj4eHk~dTRBVUvHovC(V8aa>0n8 zp1!8&#p_Q4Iyk6#hng@jV34F|Gms1V1@#Qj6g|X&o>ufUm)8vj;zL3lWOQL zUO5J?w&-a?;BGV!A11**26Dl$pq{v<=nd8{dfF(sn+){l3w@9?Ff7=he%+#{je@(` zK!1cZ`x(duBZ7MRnxZ$TQ}ncPaL+a{U;#c`P z{#%~5nZENSo9QB2en{{AFUPz8S8b+ke?fEp(R=@!i#F4L(VTyG(Yt@kE_(mJp0Tg} zB)aK8==uM<6Yu}={NKUK&;KDZ zUqZ4o8OQ~_f@SfGYmfevH^yk4=(U5|=(QIZC@&StAZMUgutDXTCqZrK+6xVoRZ{C^ zAQ$ut>M7%ZizmTRI@oo3JhWkJFEY>`CDmCB?Ws9! zle0uDBhfhwM2)xJV?1-kH>t?qy(25XrC^$LC!#*U_;t)#AQub>>IqlXulhY6Bbt(Sm4WyglI>$47YqyPiC1pGL@BR-12&@RKfl^Q zf3465IRnFj4eHmu0UObj_G=9E*O6vF1G!*CP*1;d16JOD(qDO&x~g&yQSNdY(e!v+ zYhb{7lAg^#F6bB3GoW(+QZ``v{mY1^zJ1I^gyU|3L3TvPOPdOSun_x{@q^fwB9kTWnW*r0y>qNi5h`=<=_H<4yP1G!*CP)}b| z^z?c>Ml?Mh*BcnHnWSekkPG?+^$gGyy?Q+!Bbr<18w|wH7UCdhU_ek$TvPPw^>{4M zw0buhh;JdmJ_d5Zu%Mo}rs(PPcr4JgdN pCj}^&cLu>gZg!g-U3alce8>1xun_8 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

    5Y2wl;HRIv*yRz>}y=&%@ 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 z z#m5!LX2vGQmd0eqSYyiZTs#@q;`zQ*pV?RFP4~uoi#_Xx*ZcqfeD~L=_TSu4IhYG3 zgIX{jNCnJ5!AzTRvq-D{6aJDf>$7}iZ_bCrs-rc{&JRA@{$#v6+bnTA9|NoJ)b%X&^v>YAR{Qktn1M4G+5gv-yE0sAIdW)pb{{^);V)xe$~v0`6K6SyzP>F z7$-v|V1TVNc|le3f|1GJa7mua$xsOxVCzg?Se0yR66ggQy#kR9f!6RO41lN46ZSxF&;1a)_g2xM}*Z}Jk zKjO6>tnpgg<{AEvOLCHvp%O5_)|EW^wYJSO{Gm(o3QFr2P_ZWKlsw|K9vuBzTO$vm zKXM6PNs*HUR4lD@qx(+5BVKC+*LJ5~SGC3r1GP8LwH?W|Mq zh}RmyHD7Dn`TAX#_~ZF;LnWZeR{D&MZdzJ-+~_byw-r^(0qniTe&!N<0tZ7Spvl%3 zT(uft(DsOTx&*JIu(1MC4M@_*o+8lXZ1f|>65yynd$alTm)lR4(`~1$l1prgqWT3? ztjRjXR-S0YuCSIZulf`^-FE!^xl8cL91N9!CR<K|j{?aA*GzuFhpkn>3Q!wg?#dz0Rxa6qnm)LgL z{FO`Y>6AEDK*jo4r`)}}^vdN+s~)cHnE9Sd>=_&jm4H6Bp4h{yVr@svU%SM9oTA1F zs8~Pi6ub9XUb$l7;;LNRf#WwWxo2}OR08_hN~6Nj2ae%fYEd|U)rzX8d3dpDZytTieI9*0 z^#XjJ)&NZXi${O;UXOm@Q?v$v=KotCRcZhn^#uLS$36P$4?OxicY5@bAM@zHrZoWP z((S`7^tHGgNA%nM;zyA;YnePvO|NpJallKXF!o~}z*Z}MF7`TLnUBxJ8N2LR7``DjcvM=Fms00kL?%Al< zdE|VnI@|VH>I0YTjg&V*K*a`Gr|imG3(xuTrAuo(<+kttAG$~rD7-8#9x0Y6| zyqjs;)&Js>eif%fC18ZzhxDq|cQb7}`(ItshbVEXfK&jTjImDXXt6$K#50d~`cbQ@ zzAeqP?eTwe*?XWDlDf4FSG zbrd=vpkl+U(*{s=G^%e}sSiB3tk%A7JFWfGCH#60hf2UOTW|R2UEdn{b>?3#;WuzN zR04+C`opXDeA`!=f4hX=NP$xXRBV)W3ik^?P0ZT!wAbG8ZC`EviypK9Y=hv^7(sf)yMGNWvOrGe5eGBvip=@z1!Qq>}W3ew^3$XK*hGPs1JP-jaXFu zk4v;gs6O;b^nY8a2785Q-6iyPiW@7SVtuSrXyyAPhc2%=#?P{Sl#(v7cW^9J0{Yl` zVykxXS+-M4gG=ltj)h7i=CjRQdk@{t;h&?Dr~-{wD6a3iDo($Yz*KSir39vm(=R13Rh)h) z(b!j_%>^D{00o*s3upyxzzcl94@?jMK@b9A5CQEV3SyuGbb>C>4SGN?=mT*u28;z_ z8i9_JK9d?g(tbh6<-e!r8ALV_?H~$bpaXP*F3=5nKrawm2o0Fa-=_@+K@b9A5CQEV z3SyuGbb>C>4SGN?=mT*u28eZp26P}n184+Izyl1RKr?6ot)LAAcYa9!-Y&uqy5|0! zazWD;!UGJTKr?6ot)LBffe-kB3HrppXiLEup!o?MNYDTpK@;!*11Qi8T0kpk176?* zeqe$C2!ap@g9vB`Q4j+ipc8a~ZV*{V#{#vU2!I~Hq4|1&XNWL>0?nWWw1PI^1wP;h zCJ2BryP7qh*4Lu>bRaqH*1R^iK)?ptARM z^2|L7FI)fcr-?E2S6>4yGWYe)P12)UPBa4(XzK_abZwzeSiK;)?HGCH6ZLKKd4K_EP8R(t&_cgY#W<-Izq$>0fe(cI^jpIq0@^_o#6Sn=1YMvT z^nhN_2jXB17z@M@p#dF8&;S}i6Yu~7D9{XAKr3hiUf=_MV1fV$f)EIU2xtekJN)x4 z-1RU2dg^ua^}=iE*W$13?);Lo5r=B;TFFcptQvsl~HL zPv@UXJ!Mi2fb^5`CyP&Ho=8v?fb8Sewf=zh0W>B@y*41Gh728 zdyjQb`R?4^Nv;Bry34$)P)FCl|I12&>dt>wraY7zN)Bm5`KwY_nO7CAEMAehB5_6O z^2Ft(%d(eQmz6KgU7Ea9yEMNswK083{F35^%!b5<(#6?}t^Z@!zkOLDurJjBGAAZZ zES-=&!8)OQeD3(<@!IkE<5GLN{}tC})+W}Lj?Erx9a}yocTDma?U?+U)EaY5VRd?S ze06bEW>sQUX=Qe$wX(b-w<5VhTaizul4i27JiR==ym)lx=)}>bqq0X?N0pc5mL->I z%koQ8OU=xf|a)7R&j1-ZenifubDr@PAw-@c&yK zK%0~w?g^Nl7@t_2keQH}P#T{dZ;dba=lYZVT7Q0AYMeQ)Fg86lKDIa}GbS;n6wk)3 zc)2gvm+aH}^1Z2Ev$xQb?uqvlyEEO1?hnmRoWy$ri08-<)bTn+qzfaz@g~coLpcQ?_aET7aU=$fBOn6M9KY(0BRA zl8-$2+qSvl^5O6QT>pP=<@)~sMgWE<0W`aei9En#B2WqFXDdzMMvul+#zfHmZS_v=IeT4_w{S9~vPGN>>rAd1t)F9i zwtX(iIZlR3zyMoka@9Ef9NV+)cS(MX()tBdtjRhhSEl#j*?x&%K? zkrM<|Y>;&duI$?gK4O)%c=f1g+fZ`ACHe_|%uoqvvQE)^A2Y?zuev@l$2O`PbP0Zv z!UhCXY?yTlu3QVmW99~Yqv!R^v0V!cxr9GOu@ePUY>0IVugm~IIO_h_$hJ+X47+4+ zrPK)mDmKVE^_Hx>*xXdI*5SlnDLvv6{VYdAC18-PBbsI@FJH05zKdJ7cXhi<^m7!~ zFQ8&g)+xHOpYfv}eekwyZ|bN^@QV~VSwO|Mvravze7wE}y|$>Q=1I$z&tGP(teQb) zuMi(|iGPXXp%Sp2tuKDfayR!(Aa9`r9F3Zic9oRZu;`09_#=g-QA6?8Klz0=t% z^mn`DzD9}T1ypQ+b;_-rw~<@xEk57&KI?Hwew{M=1yrobIwe=$XSvaA$2tX9t~Vq2$c0t&#OK@gus)aAHz;s|fQk*WPO+7vDPrk}R^vss?Obt} z=+98-H~|&wXDhvHopvsCtsRwH)xLI&OYUbWaiV~V4Y5wSm6I28Yc4fOOtU@RV_mX8 zN2%ilRBV8C%C79#$gZ(tC#Kn+?Qt&2Z&GHzfQt3APRV#HcL*e}TDWY_nvcXx^t?z+ zvwcwMcM1MHMGgq4*f8r9JUnR$FZ1Ek_@%ZVzZ3QavEyCBw{tjD0*2Z8!|g}!M8b9~ zncxy$pui~tDmKbGg%8gg8h+%~f(0u^@8}8JA!VXV{ud~DvVe+hXPxpZr*3|O(KEkl z#gfGJkX&Hca2qpy9%qwl1-|EJTn|KHPf|MThgSDN#G z1zrDd#P$E>LOkBvHtTov{r|B@<@*1~`TxW3i-heBImzYe`4T-PlLS<3g#B+%56xs9 z-aA$-Tt4FI;Z8J(gza59*(LqUlsiR0#YS1Dbo;(Z`vrDS`}gBS!uAbfic9`iI3Fqj zqwGHA+rK3z61HyG_&RR@R077>ecOQQm%uiy zFyXQRZ&T=ifQk*XP8%@t#FVIYVzRex9&`!+28Tl>V3@5xyz0a>Xge`YcM1O{1x^uA zu~F73eB_%yaZ>FQ)1d9dG{YtTTa-LmK*hGRPWdBGOo`ejra{|>umfD;zs>Pb2^e9W z;zypC5I^$7G<@J6v>o_oy2S6G$Vmb!Hp2e5_}vHo1PzsqKJX9P4*auR(u+u-1Wpx~;eRp)TP+_npE=zWE0o4*b(?2mZM(`9G$#$pR|2ops6|dEg(c zec+#NJMddB@ju~ss056#PVplT{D`k{;J24QnCBAz4ny&PP?Q0+S?KKz{xa7af`A`WMW%nt+>aa82cHm#=lK(T#hg3_I z^Wi?_R~>bxTLU8w{EJ-jcT(C^0jbpt8DpLDM;`d8d{FHJ|8(1df3eF3lz0Q65-`T@ z+Xhs>0(9WtzGpz-aF-4EId1?|0>;=nH$dFcq+iuz=>P6E^ebr`;NPwEC*8#FJ$mLJ z)ccQaSJT}8#vfA;K$`pSi5dF!QTjXGuJh2Jbi1y}&^mygbWC%*f8t#;F_uX$3MVLK@u?UMc*%AF#hVxz26 zy8X4UeNviX`!=%NCI7da50!vXcAxUA4v8~tC#9rI{_i*+DgmSHKIK;(b!J!tI3x|v zMq1&L|9i@uDxhLxtW*BTlM>ZAt9??MVLK_UblHGE@CHC7V2s_j4XAzvY~My!xop56 zc>|ylFvjlN22{TUwgdlamklUW=tKb(8)8qRQg;`Kjd&?X{%@#qIf^H7;0npI)%NmK z3Hzk5H7?nI;%uk{46*fPCq`%64*SQrWPiZfPze}f>&qS-oo)Lba;!`Chnx+SfFZWN z?CGPkZO8kyF4-S(HdF%A+BLGi>=~o8Z3p|0xn%#Dv!N0&#MYO6!02q->eu63vj4)_ zPze}f>&u=wI@@-dIo>7vubd5)fFZWN>{+9;ZB;{0aLN7~4d75Xd}dqc68=vP zhf2UOTVMF}8sWBz5h<7Oe{nce0*2Z8!e`V7x1CZ?b_xGCheIV`n5{4TfEwYp)9EQL z;s4=qs00kN^@Y!@5pFw`p6U`VTJTnbiVd^%h0m%HzKDL=o*nKqmvD_@Ckm+85bG2^ z@;ttB)rzC%*(VPr?6ZwecgfZ%b-aLz4X{qxm1!lFW6T0;Rn-Iw`)uPgT#_3pvtK~P zn(Vps>E)anl|(D^rH)#&jK8>5T|ge5B8I2D#{a(eh)4ezt^a@bn;tzya{zupa{$hu z+i!nDYxU{2i@x_?K({~BcmGSj=F$KC7L5nct%+_of0e%9)9uc$c=QO}?g<-uh;Da< z3_VC=0C!3HlWzC?oc{TrJo@IcM{lR^{}1e-IR$hRJ2Y{OnfS^d+SZBZJ4USkAKEE? zXZ@777A=w%4)NWuor+dT#%bu4WSov>NyZuImSlV!?UIZ$(Jje13+0UXOgiVO_Pi?x+WRtqivFL0s1Bx7ou^JaS=Kv85g5q9iX3#~+xEgJgjBC(GY4^jp z7X6fr>(EfixE>vqj2qBW$+!_cm5iIvQpva(J(Y}G&{WB|6N=6o~m5e*lTgkW!&6SM1(Ot>72kn)Nd(mIX*o+2C#(n6pWZaJyOU47}v1B}m zCQHUc=(1!yj5bTgBj~eaJc>q3#ujv1GID6OWITpmOUC19wzT_UJb|W5#*^r}WITno zOUBdayJS3r#!JRl^j$KZMdKyv)(oFV>m};h3|~a^CF3P@UovRsCz)@7FQWmI@d`RH z8Ly%RlkpmQFd46-36t?jbYU{yKpQ6GQ|QBFd>W0IjL)DGlkr)!VlqC5UQEWDXvSoG z9^IIX?P$kj6wr^!_yQU-8DB(4rri(YOX$pGd>O5ojIW?KlkrtFXENSGcP8U&XwGDO z9o?CXx6z)-_y+nj8Q(;MCgWS^&}4kO8SX%jCZmWZO~!Z7rOEg%+B6y8L!Tz&`)Jf; z`~aPrjQ>HaCgX?b)nxn#&6d#sPlvyj@HY+cw~g?3P4M>~_y+_2QNj0{;jR`~ZiRnp zgCBU|hd%g`AO6{de+j_92I1dA@b6*xj|lu{JN#D^{yPT$(?NQ^E;{iStqbbiQ1+0+ zkK^kNVmbY&QG-o7^hjtlK-CDFn_!Cvwi>WaL2onkwLpI>G}~an3xhrw^24wRBLUbR zgwYU;g<(eocDBQ=DC~~Go(|aC3H!QWyc>?`fn$5g-4A1&ww`{}ufy>YPH2D=8{t3` zoaBL%4LC)?sm*Y|7Px;aoYn>tUO4E3)BSLU2@eRsnL#)!1ZRigoCrLy9Uc^g2gl$c z9q`ajcvu&l+YPNAIIkDZ7hCo|j0GC~g<8?WMG`JHu65gvW&7v0=D20zcLckBh?NWAKCycw#3!sSB>_hN&KS zaxXkZ+qU;%oT}4bjMF4My#b!l2tVEg&-B2v40yJJpJ;~Xw7_#);dyOvy%(l^@O(eK zz=RhD;6*`raR_b*!%HG?V>`Sw3NMSn%RAr|o$$&ocvUwX>VcVFc(vG0UZat_cdBc3 z{OCFfuWx`iG{PI3;7uNQvjJ~W@YZH{TMN9s72eSXH+f;!2k-R5yG(d@0NxXX_lDr+ zFuX4U?{9|>MB#%m_)rIYxD!6o1t0B(TY6xw7d|F-l87&l>PK1)pz*FSNiHTj5J>aGMwAeeh*Je8q&X2H#nrzT5!6(g?rW1mE(&uNm;`3clS8 zztIA}*$Tha2EXlvJAAO{hu<;bcLVTyLHPX;{6QH0PXzw39sVc^e;k89>45Ka!k>1* zce~-wdf?7pSn7j6*Ze!_#G#YBAI2{ve)P)*_^U?vUK9Ma2mZ!@zg6&e&G7dv@DHu< zk8SXMFWlvWWk39r2|ozH4}T(}QqE2p$lIGb3?d*I;)T%zC+ z&G5(;xU>~6YlBC5;nDn=|84r??IXpO&(HmQ>CMcW@iz;fOMOoJT<){hXG@>Sd}iCH zlb)F>6uNSF4f%#hg)#R(?SF*1pUMaque%X9EPdyFG z+p^md+ltiD(0pkwbu-Mo5PzXSH3_umbI)1Nm7dK|C&R+l)K+b4jw%wAp3XcSf4V^R z2(+hiPg+lws2V~1iNfQl$F;|EkL}2%sTM(gi?yXhy$j=y79L4GqCJv(*m}71Q0AdH z^({<2s6Ci_z@n~&nfv4S7w$_@&%)ehYjcSz5ybCZPE`o9cPH*H-j${r1o=CY)T=O? zO=OFk($uLie@F6;^6gpbQ&^-vh30MfTa&kzsY_wvmg3Fno6Vc^H|@MJb7TC*!VRe# zv>S5QTi2Ja%Ul<~u5fMYTJ750HP$tyt20-}sWV|Jqh)eK7WE~}TotEU11aiCn7hKd zV*Taj<@w8!RBIr6Y2wo2#`H#WWB!sPbtBADt%2gjY3fCozbJW8`NAx9A}n5zzQDX7 ze}3}(aypw%q>Jmt`rLWed8KnR=f=-1oRd07J16%E>l3B3GiS%oE>QPD?X29H)|n;h zJsAIZ;f&N7+8MditZVf?rxZ_4pKP9-PbE|3b=h@^b;Xm?Cz;f5 zFnMB`Y6&E$+hF>5lPU=$k1KyHOT7k*Ytw7ZwR!3^SU#qYx(ue)Xlrt-E$T6tSruPZ zSec>@gSi#fic&I@j8pA^)N*Zk?r4iD2V{u3bFHSBlQ%}LfqT<5zLX$cQCKr_FXXhuVpI~~PIWKP|shePy>I4)IOCM$) zHuuodA(=zshvW}V9$Y>sOI-wu2c{1+56n{!!Sd|v?8NLMbr3XX29+--<9ktcV;^ioyCrHhuM*j?Tluk@o1qv)vmSYB37gn&V=LPLMRo| zLb;$7ECn)wICTX~nVOmNThtRUs!s%JgxgLQ!l^-^#V*QQ{`#h zf7z3zmH)-2H1z?@Hzpg)4O!{}Sd?jL$~^S|ENfX>{a>WF__q(b;(;He;Wvrx$$4a0Q&}8cyE2+B1Wna{Grc1DggP{`8Wa|sAy0&Fs)OMCju))Dl(di7q z&^;KVQq`kFwhJ9+y96r^hBV~F!LYvI>ZjUvmE#jG!Oa{Dm4GH&UvTwPZM(#Aj!SS0 zg^d+Zu|C!*xUzl_199`0*_YlY=34_eqqT#ff1T?R+e(4`0xH&IonrTn|6#PXYT$9c zZHWCmm*6%IhDtz_tuMH0y2^ap@cMd}U@wJD5Kyr})+xBMViHeutre4r`L@CJv`e&) zLdR3ZBt*ji>l9rX=0$X^)r0eGgWKo3B>O3CqJWAGu};aA!EGdCvH!d!tL)t+5({iI zW-oBb4pQoP0TmlyQ#5t&6p_MSI`V%*!;66z%&#mIweMqt(`?BXx+I4<87ct-Y@NyW zoosNL?c(@FF3Dj^n<$`SL#$JB<@vVom{%-ZH0nae;56IC@rzxuBa}KpK*a`Gr|jV+ z!N^{?rbe{w+V}>S=ynR7B%op=tWz}RLiGxM*vnTeTuBWz7OvR6WRTay4ceE;UgDA- zrQC@EDmKJArH^>hDY?cYx1BdOx@5;FbwEJHhFPcV%2i^1Ao3o)3Fv!-GJy;{#_Sxu4m+T(ShDyL7TUYk<8ril_ zDOb5<_flTJfQt3APT7@J=)9ZHuU>^dXkTwS&hjfap@{@b`lo zT=FMyK2!om**fz_?s^{{<0JEe`_)H%jx>Re2{7ZeBGnB z(CrSo{vV{<{m*#xE~@{(g|7XNdC#Li{klh=OxOSO)c%l?Wcc`0OHei6F2Lx1Xh;`Zk+uH(5QL9hC z_H~FiyM#~TaHs?fvrgf*w?$eIec*F5&xgI8*|LS*LK@u2)%XQ?={aj>wx_!lzN-6af_*Wu3xp zyWVt%UC%ZvGwYI{;C!eAjIwp+*WUH4fe}Z&J6-YzDRZiTijA>O`L;ru0UUhTmQ`{J(6F4=P^ zb%KD34YE$zdj>P+)f~*QFYLO{CHg=Log|=QBdk;Op23WH)VQqXV1|8N*ZnT(2T|@s z0Tml!ozh1<=`{y4X4nQZ9&pJ%m{JD>RBV`a%HDH)omacW+Ms<&*@G_OhfwTz0Tmly zox=AFX3#rq^k9a4Ez?6T$%j(rL;)2WWSx@t3}#Srt-%a?^WTSEvJc~Is00kMb!FEW z%s9X{nDK~9_FT?}O28mnS9XoTj00?g8IQVTTbvD*fI+sd>>7g^2iOKPwzy=^qr83r z73*i6viA&T(Ca;FFyjE*M~IwD@O+9K5KysU)+uXa~hP?;wV=mzfD0Yf~ijA^P z;d?&6@Lpc~^UF-z(D>sn`3pH8DgmQxo%uCCzu3F*KH-wTh%%=NsMr|ml)vZmOXcxX z{-UMU;ys@sDqkDzjd-7Q*?`3qJs_ZBL#)#V?D_ms*?`fXU+hhIpK=L5oWr3KFw8oI z+jhNLgBdd``+fBXpBjJv(z_mgG2OmG>;D(g`v0%ccmE|c|9=O4?_WhV0Dnl|`;VvF zPWs+|`c{wr8~WaV4$b|4pT75B_(`hgN8kIee9EIY(Cvor)4Bkf|9?Hr{cob%O|<^M zm2S7t+W!{a&~Kr+|K6fU&(hp~zn^Lh2u*zB^36ByqVN9)bvj=Ef7<1_TSCv*6af_* zWu2Zo+dIc$EM}(dlm9a=`A2X*R02lXI`eD4bF2ZpRKw#PTV3*xq|B)TDmKPC<=fsl zPU9UjZJ+#~b=iQW6g?myHOV1EtkVYA-Z{0#J7(HG`9J3pzKp}65-`jC%Wa=@Nj{E~p%O5_ z)|qTCxjfx|q3sQq4UbRj?cJ6pG0vJ1ypQ^b&4MG zuoqj@Sjk#y8%dsSFQxfem+WgQb2QGooBZ@Pq^%;8W87-H)RPt*#x21cCGKJOBK8U;=e zP_aQ4N3>LpHP6FiiZnmUnm=vyo^CJLvfU;6bdH8fz#v;s^yq31(`VbhcNbiu&!D(T z0xCAbIzeSSD+HLdFzUY#ECMEU@s92MA zO0Udvwdk?eIEl@+4R3wPCHO23hDtz_tuMIh95&l_T>G+1@YxhLK|sX@S*PH=`*^K( zanonhuv*{Gc7IL$ic9n-D0IAliVd(6dK>iT-}LCysSd!WAEsLVfAHvUQtiL_pY`Z( zea537Npk?cMeF~U|CX-f(-^?oPkHp8()a(9-|*lfk?tgKk zq5qk_`){QBfB&TK{+Chxzkkqo|I6t1Z~E?^p_?!beTWuu3A**X^R;nhTK|7Qcjfy( zju(Oo14fhY@;$6pA6`^Mha>un!kTr3CF=?+))f}4E38*nSgx+HT3unWy24s@g*EC5 zOVpJRKNCs=I*_0NG=e7J0R~W@8MJ^_&<4D~2mHVU0T2Ws5C##@4x%6iIzT7r0^Oho z^a8Dq(18REpb<0y4={iN&7cLef;QjE@B$z30}}*55QK=m+likS0l5vF<;|dGL71oO@EEiW; zEv~RwTw$%a!cuXCmEsBu#rJF{){84F7gtyEE88) z9GRKnLgqU7#EEfL?%w-U72OI8x)s)QD=g<$Sk0}lm|I~jw-Vb44d_6E2G9ta zfCm^rfo9MGT0tA|0w3@L69hmIgg_WXKs&K_JMohk=m4Fd3v`1X&3MouCVJgC5We`am3v0b(bi0Ub!t02)CP@BjlS z&Zf24eiU`$h@6BGYUJMR8Gin}q;3A#Za zh=Vae+eJvw02+Y@D9{XAKr3hiUeH1Rt?|n)_+AhEO)q|%PXEk!zX^U|z>mg|9?dtF z{!p5q+Q{obf(FnCnt%s1gBH*Re83L^APB-B0>&Z16u4^;Mu)=PR^09J!afs@4Z-nI zI4MTbfu8PuP9y0^Pe}ZIdn5cp6Mofn4Ne64X`-2YL?ZVw3 zb>nU??!KdKBj1&9XCwT%2mV6AU$wwrx53|fNjehK-9H52`yp74zz?GEqYn6&)*Z`) zr}>gL`h#}eWmH_lkGo;q&9uX7V(_|7ctbb5X$-tw>>@Ym@XiK!w+C)k@ctI~U>khc z2Oss5bbz3{kA>h9F}T$fM^RCT0I7l?1Um76x?NY#nEf9%5D z9^5VW;%*#wKivH%{moD7>r7L9z@p}q)r|#D7 z&fk^1OS>yatM0Ws^Vw9^%ob?feSA~#j?5j2J4&?j-nzYfTkf{xZKYc?x5jTR+>*Y< zyd{5g@@9?J-luLdZz|lFruFy58!|T}ZYW)!r4{()>vGp6uhXu}Uz;4U20w9iF_X@i znZi(dC_YrARrrakN>^sDw5}{)k-H*!g?2^$@)WJbFI<+sEPh$>(hRM}FKx_jv^JJ6 z$7nU!`U0_{MK0kN9b$%(GNypQL^{Mrm zTR0|tO#GPQn#`KSn$qelt=2EE%B@PS8d{lHSz3{$)%xXR zE}2Yf$vmysHBaHI#YGufxnEkCU1%*VFUZl_eQiO0ermoszd)<^L(&(n&2 zbHBpW^wjv&BCY99OesyyPPQhOC*>w3Ck+iG21*mN6RnBm3AqW$3EG7G_|$lFe4#(x zAMY=Y%h1~X(%9@+YixN;j#l?;WAgD-+>94!eSf^K*eiPTJ*ghEr$FobbtBiW(R8vj(xj1{73TIXME&$K7nOOY(C^e=~V;beFyln9lASz75|4&(yK zfELKpT7T0l_|yKlzeub76TXr+>$SY)wp?4XO>4`yrfAK7p(WiCZz(osXw`p7WtFAM zMvm6~YewFa@|d0it^AKS6&o{+iN+GG{kIy*GAEN#qt*W@-P8+OT8s1g|1V#B+M85o zOr*L-T>oGH5r6l08WtIzTt)*ywFa7J+sep(^=tgA#Ma6mdyET7_cd`I56D2p_k%2w zPyR21j`L~{I@+sCzU30Vo}-}>Fv!*uU1QMEUS9HRF41X)HR3w z><#U|?vj2!r$Z%RgsmsN_MoG^tNq(9=@(F9zkrH0S*P^fgN`+?oXxQfI)1|?_(Beb zN8d_4Q;`SXb zxtH=IhDyKy>y%r0#K^7jh-cUrw-;TKFQc>x0xCAhIwe_;=@812`WJPc!?0 zOYRV5^$Vz2KkJlRnU;&^dH&JW({g7_v(0t*AD7^3I2bAcP4+^uL7YkN<*NS;RSwvz zj#*Oct!%$4_(PZAYbk81fQpT=PQjHaCLFxXTDgjz?a`O1X4tO{{>WtmuHy}WO28Pq zZyR7gbIh<`9{jP(23*e@0F{6-cHcI@KJ#M6Y}*yWpSWzm4HUYcfQs#4oi-pK0z+fP z$d{njQPqB_@Ew;exRJ7_2&mX7>$C-xc~&F0V4k(wUI}Q1{fgmFUGi_@e5eGBvi0Yq zv8?@khRcR~-}dji(3uKEueCkwSPeWnM?jHoDY?NQMQi!l}oKP3v0dy zZHL>PF8Q}|K2!om*?r2dehb>>gOptIZ==kq0xCAfI^~Zz2vr_`%{PEGFk%PzxyuIJ zPSKMERBSuzv;mbqUi=2AY(S0u&o<5Oe_i75;CQG6Y-j6^ud(~tPCmbIiNBK~`vp|2 z$yVY|t2+0Hp*<&`%8qA$-&xZ}KJCAB3BHRWrwXXp80!?g=XGCrlJm*Os!U9=ZS@bR z_umP0?f>0>dGwR$_AageKath|yi4oDoWt{&Ss2zvjyx-FVHT-%e})BiDNLhaUIn@mDf(FnCnt%rwK!Ik^ z0$M>E@B$z30}}*55QIP&L_j-;f*9xkouCVJgC5WewC#irBxnGQpb2<@0TgHkEua;& z0Wa_YKQKW61VIRdK?JmeD2Ra$&0=#L=L9zmiz zf<$u!iQWhjtq~+TBS ziKYhM0?nWWw1PI^1wP;h zCJ2Ba2!Sw&fOZfCG0*`zK^N!-J)jq8eS{7qXaJ3%33z}36lex5pcS+MFYp0BFhKwW zK?sCF1hj)Fh=C5!3A#Wx=mEVz%q29S6Z8(2xZeO8K@;!*11Qi8T0kpk176?*eqe$C z2!ap@g9vB`Q4j+ipc8a~ZqNfTOGILph{P-riCH4Fg_tKI8v*8tNX!$Fm?t7JPefv# zh{QY*iFqOt^F$=(iAc;7k(ehUF;7Hdo`}Re5s7&s67xhP=7&hk50RK3A~8QiVt$Ck z{1A!xArkXLB<6=m%ny;6A0jb7L}Gr3#QYH2Ld+16m?0uDLquYRh{OyLi5VgiGejh2 zh)B#3k(ePOF+)URhKR%r5s4Wh5;H_3W{6145RsT6A~7>WVrGcM%n*s0Ardn~BxZ(4 z%nXs386q(=M2anh26P}n1A#5X{U+c622h|Gw18I72E4!r{J;bO5CkC*1`*H>q96u3 zKqu$|-Jl2b0?Y}aGX;S;A#|o7Feikz5VJz)TtQ$~2%Rek%nG4%1%X*1bgm#UD}>G! z1ZIWMxq`r~5IR>7m=!|j3Iel2=v+ZyHVB<72+Rhda|MCfAat%EFdKx<6@=JMXg~)N zG=N3|TZsD}U;qW0K?`UFZNLkBzz<9i06`D}VGsfBAPQoj19XBe&<%P(FAzHk4d_6E z2GB@g3vu5A44^K;sUg1(={6bc3;=VHeR1{2&6lz!-oV?ysX7`Gr^0 zuf|_3zLKFT`K6b$FIz8{^Es-MujTXGQrpaJ1*()Ef2sIl=EVe6%g?@Gy-#MEJ!d{wcs5NH^NU+ETN7JL&t$1)e);L#)5)i`r}I=b-=r(~=_lh)7O8H2g0AIf zAGaPaKbCte`Itsm^HVu9SJ;x?5~u6=nMV_kmLADIVm(rRIQMY!VeR4kL#c;Ms-cf- z`o#w_4m zX;D4>TsE22viVIZs;FPMBYj8wj^gbZs;OVPEqhzvZAH4WpSZO|RrRe~$~WigytbdZ z*1WcGP5K&fP5$cC)h1QgPiNwp;!tKNK{fWXS6Nq;ugqPUq$>OQD^gdOR}?N!Umm}_ zcv|S>?Iae+s|!CZqPR5FHTXt{lZ1*i{cj*FU(NI{n7>5 z;j8<}^R@Hy=~UXJ>-*{T@%6>?GUp}E+kS4ED(@H1$()lor}T*|)!r|kojW^uwsv-& zs_&a;70yhb89%c~_4jLE=ihQ_@>K2A{3)qZ%u@=kzlshST zl18=oQzx1y7EVZ?5T|PVnd1}3myXLGXHh-=A*#n;TAN*Ktt}s$ql*06vH4?C$Cy-= zKfNZtrnow@IzqUBPXzrr&!ra2-LX9f*rxutC3iH$R<5a6ZGcPf(WMwUjs`cmQCg*B%^M|FV zUVq`x^r7)Xi&V2eaY*Ul?7@8p7Z1u%)&A0f*#oTu%X4y6w_lr+pPia*&Mr{p{`joo z%*@Qh%o5e^w+<-J$jwO3(Eg9t{IyB>fz*IWwfxf);}eS$G7}P1%|AQd8ei_u^(Xta z{`|PqICETqYWl~=7RO}9B*v7es=pO4_vQMMeHzvEPxYF;g`RXzoGSZgx)a@{u56b@ zwf%FQ$xf{^-;tu~{)JdN7LOIF!ha%KYR|S??d3==l8k7Pd^i<0smgyk6b}`HnP7tI z{AUAJpls&MBvty)`%`|?U+|@=)_>8P@g}^bwk%cqFSq7eldT$6{7Crs-rWDovFEpkb_l_d~k=fAjGCf7Ji$-T48JQMALMfBnj3q~vZMDS=AB7`tyHB~?RomaS0BdoCMr z4{rce0>;>V+kmQ3a?3VK{%e;FxR*lr6Hu`otkVYU871E{R#a<{(6U|I{*B8PY^Llf z0xCAjI&Hz8QSv=oFmKc-xn;Y={acs(`#2ve0i$gF`J+cEE!!yh?_Bcl=X|IHjI#CT zj~=G9Y*)K~?~?xj=R+l6l&vGbGDutFN|j|BCI5p<{)3zkm4H!ppYp5Ug0@leKf2^U zM43|sRBViO${#UWT6z36-vHJCjz7Z(q4!-j;9-iMETCfBS*H!yGfGbFY56imjs0)l z$oO3@@sDskR06iMb;sA({pOF1FT2F&D6(Hb#hUDTah|~S;i~@)RYu8|AH9NlLAK*gG@Q})Og`{>oxPq^(Q^Jkaf zrzmowfQk*VPQfEzYziLzV%ttIe{sovnzNx2FvQlGJ^IDAom~FvlKl*4LnUB{tuuS{ zi)}lx{LLkME9H$7P_cg2DZ4Vert$_`a#You%XUKfyG!n~lsF)uV#BOcZl$)$?%Y+Q z)+NuJW;>hw!zKJVik&2&Vk4|mcx8Izp73dO0q)4Ehi(mwIF7yre&9u+;`L|2@i<}OXfDyKy^yN#A8eIlproDB=e_YaE z;&iA4jIed4kDin}GhwR)AiiEX5pJzIAMT!typ7YL5-`HnnLaprpHJA%D4I)pp3|Wc zFv8ZEKD|b|?Hi2llKwKMLnUB@tuuW_jda_IMY^QF!s$>67-8#7KcGgs?bOoXlKv{E zLnUB@tuuXQjr7XNrD`wxFMr+sM~^;_ZeOCc|BLAM7Onq3f^OgVoku^4ZaZl0{|dT& z|3_5E|0a)KqV@l$(d{>1_2}zq4#0;K#P|24Wif3NZL2bF*kw$A5o zR*mP+c7kkjNq>V9`vp|2$vUO){WLUh^haNNAtsMY@TVwpqJWAGu};BzKMis4s82)o zQcQ+R_NO@;Dgi@mo!O&44cUt^DVOZea5hu|hS)l@M|~QyS7T~+$^I)DhFPcF z|Hs^YfVpwj`2&AP{Z$){%BYuFm$<}^$FaR$JH>K~(}?BtMyv!vLfVQ{NaC#03rVbW zr&><$RvLGd!wLud=@uNvapb@{%5hYSUhaKN}RE({3=WluF6aVn;< z;kbm3nT}4*@Hf*W_g^S+E`wYc6AsE9Z#eQlIc>GO+_u=4>AHSja@(@BJoTvCHs_0O z+e<`?wBWd}<_vw0nwCtw2 z|4yOt|L=UtZQD%C_ui)K{?YjVpEupMOKJJ-F1ls_UHgyiq5rF+Wv)Q^za7*x-;O)U}K`u#Q{7;ftZr9mNO>91gsj=h4RKn%sE>Q^R{dNDtY5EmMO#$LKzG15+KLTbP>PcpFnQdv0fH zcISubNq64G)KsX()S<#XRBYqD^ti3}G1Xppfd0AjL8jWaZ=SI)^okVQ&$LXmyeuAm9 zcM_ScpQM+yXcz6%_BNTSZT}QKZuh6DE*n3?)EPU8_+G-X^~XV71qyB7{96A0~Qe)rm7D!4d!`^2ZuHvS332=XDv=ug>DdetAQK9)kDio^)wcxg{l<_h)lyRa=24%7+ z6GfR2%4`eH3U25rgVF5s-6)eonLNs&E4rAC8K z1WQw4*mOfwW?7cXEaOyWnUBgWlc>zHIMq!JmV!2#b7Wap8LV&=#Q1wXNY&I`R88GY z)zq_8P2EXhvE-mSMo`BB>gY!ugQ%keb#x4_V;FVJqmDk*F@QSSQO5+0 ztrn~ml*GvhdI*UgByuF?k*H8f`5Jlyx<6A?z)1y$JXByPk58^d1%~2OU??(C#eSb$ zoDebJONHj!C}qB#3e8Vaq4{Cdum2|(XHv}PC?lba4P_E26GfT+pIn@CG2e$Wc9e0T zObTUEcr{ySI~)zz`>e)&9}=9Ep(|8g=U5wFDzCFqS{rF(Cihbkr*i0Fl=Pyc4<#j( z%%EgyKP7SghaN#mA4>XB(uR^*luYlZBu*O9qbTV|$pA{)Q8I^;nf;W+nI?J+B?BlK zL`erq=20@cpOQE|MORTWh>|i&I#H4psAO(GC2>xR9!E(TB||9bLP-fF^ZO|oL&*e6 zhEP&LNjFN`XrJv5*e5>L^x;g<{yPz;y>=o+d+kJo_Sy*>?X?pr+F>UmwEIoOXs4S< z(H=Dsrd?>lN4wAj+x-ca$kKi!x_ysdL<{npa0(yfhK%C{)DG;glltliwYsd`iOM*YV24YeDJH*~JAUthXjy1r2@ zPn$DQ+tRwWdaZtK` zmM&~uP`*I9ph@!|md{hpYre1YKJ9(2bGzp{Y;LY>);71!s-C5vRXtNbvwcSGjN%!c z(~Dj68Fo&ppHwl|7?v~*~FWof0fvazDPLRld#Zw!}* zmEq>H$}-G1SY4toX&+oWxUJXpqTX3lUsPIDUszfwEo>|(FHjbg=1cP%^UCv-dCj@X zoYC34XD*ttRok22nA@2NrAL#ydu9NXVvT4yszjTSN<@pa!qu=IZYwpVsB}X0P$?vZ z8gf}yyydBSbWht|a~ItmSKU=| zNv?*o>{OghN5!EzTK1}4x3_IIThZ2$>JnqG-22@h|Cajy_e}i$7ybXEzY?PrFr=#g z^i<217&^6PnH(7TCLI!)#~>G~!a)Z{raHAmc%M$KCB^Pet=T5&|0>cUXHXSdOz+dF zwPba7`T-{C-xBGNGpGtJruXU8GG4oPj!F7EA{}xDRiTyi{+(LJtM|?|N&h#I4mpFW z&|-R@POYVe@m%vv(!VXzA!kq(T1@ZLsb#!+@O+c>?}&8B8B~Q9)BAL4Ej5hiI?yD2 zk4T3!0k}wq7SsE5Y8kIyyuc*AEz%)pP!(EC@6)NZ)X=H5&?NoeMLOgRszQtDeLA&_ zS5H33B>lT09dZU$p~dt*omxwWyT5G~nWX=K5@#{Ug^F-c`cyy1+TKnrfeli>fL z$TJ^dWU%O)RelKr0|8*&DtLW|iw z{T#+CCND9`{t@NPVvq|J;h^m9H@l}(%Xqcqr6$2YrpP%Aa$!_BD7gF0?$@cc%&>JY zGs*sm$cCK3sL*0|@0)Gt)EYL){;9}@oWZEjVs`JFZP>Dxn`Hlt@@6u~g(2af?5R$z zwLP6$6BnnR7!ovMlKXQ?oXa2=#)N}%r$$2|x6g?H#!EY|FbUsFvGW+@Lh4PS+k?WV z8jd2oPs4FpvHQz(rAc~6q(jc2Dzup1r{QS4s`DWx>Aw)^kTa+XEvENrI2teOe5gtK zFGV`!45~sa>HQmy#_KvCW|ICZkq$Y7s?cJ3pN6CHs?LX-r2kr^L(ZTow3yzf;b^?3 z^D2|{--vX`8B~Q9)B7|WjTdw-nxy|$q(jc2Dzup1r{OqkI1ymAN&4?ZI^+zhLW}8r z8jiz;UCSDi^xung$Qe|H7SsDQ9EZnuF8dkz&)DZ^-2c(Ee2K>WA4f}z#{C~p%hze# z|H-s`lluKnr{&u;_WxWO`~M>v_kS@hzo4=IAEdGW|4rlmtF$<2`7n+B4^sdC*6+D( zVOs9{F3kf-%R~R}wxwu!l;-}+(XyTT{fB5_1snUuxBj&9chvuXYoV+EfBP5NLg{T$ zZ)t0zyZ_(YedIfZW6F6PQ?`Y2-QBl_M`_azWh-NJlsUAQjxtB~(4lM%N3kOXI*RSx zMMtr1yXh#lvXzcv^HDmAZKL=^8aV~z*r(@o9d;X*oG5Z4$Wf6q135F1qar7V=bVA(bWMNGuIGr1eVO@#GlH`wo>uf;dT97T z#!JHwGBz51ka5uPgG_3bDrKDPD=b7u^3jpLjE+9-pg|y0U76vq=lTIo$10>CfV=V%JeRm zw9*%fNh^c9zRt8+lRenoWwM3uv0=}~U$9|y*PqyMd{;mk&W@&~VVTOz*fRMVC+dk5 zl;9{4M~MVV1IVl02xh6%mT$7<%uJKbX*Z5I> zOVAt04=hi`ZB%@9#43)@lHiNYBa&Y^G+g@Y)p?Z2=C zg( zVgD_WKBF#r-3gE#hxZQV^PVil(qu}Y#9vC2*> zVpW({#Huig58l?PIMvrfr4RQ~>BDVQ`fvx8K0HFD507Aj8?>p9m!*TH>~J5-+ELbt zvQdk7CWiHVmB37tWtr+D!mh# z0h=Y2bI=>IEJSa}vK+l3%kuPwEOVH=A%mYSPGLRY*p%W#ih`6pQVK|MT1)Bk#wREx z+kbPUEElrE$SNR9Lzc@dYv8jb2fQLTQX)vvkRt7&6t}gMKCj3|yXZ)X`r5tI21HGM zmE*%G)6RKGl6KBZytH#(;-j7OlKfUxT9RD!#qst4eIwMwxTq&Egk*B>C(6FV=7q<8 z#O8T-{*KM_kGiCJsqIl|p0t_1QVb7`ZGVRq677BG+*EZ9BJwj!SpR0)y3@rgaN~BRDgAxoa0X8P~Uv~~ z>UyL?bv-gdbv@EXbv;s|XPL`QO2<(;jnZM1j-s?3rEMtfH7T7y=?qFoP&$Uv4wSZ| zbjqZ35~Z^!9YtvsrJX44KxxgSbPA<&C>=xTI7+)v+KJMA+E9kImPYA3N~J64DV;@W4W$z(okD4j(jJsvYEn9f($Y>UokZz0 zN_$b7Hk7~7GuuYLs(rQ9s2#V>chRR2=xOVXDbpD%x2`F!(pmCtFPYkj8r z8T~WuPuD(O{B-B-`rD&AR*R|JMuT@{uUu!p%SDUX?UeR7@ylIjTg!<;OdadbIoTf z&uY(>o|2wwJXwBHd9t~qPS=B!>W%H??aKD{W3|VMk98icKU#XUvu)!8(gThA%l9ky z*Y4eWcm3|t-O}BSyILP!bX)t@+O5S~JGWGB-hF-bdj0x#wN|ZPSGrERuCb-OMcGoj zrg%-~>iX5CtEH=3S5>dluWDaeyRvwta(VNz%4OPRtxKzy>Xr6rZL~Prxukwc@uFRm zvn)#Q8=JghVtsRIv$VN!R{1RDtjZbNCuc`&oyaydO68JLYHn=3iyhrKs(h4kRP#uE z!{*5u47FlwRdtoVs(pCvaOtqdq2)uBLz{!*o9#Albu98 zQIGG5)ndh1Ct8n|qEfUGDMyq@Gh7L4VNKaQaBM)`yJz66fSO~oxC$Vh7#f^^$M5O) z|2MU+-~XW>vux|@;`hI2^c!8j|0Vh#<8+to1wP;h7;G$Ktg?(Dy)uRa%TW*mDu{#Z zb|MGzpa3+$b`lb>0d+SK2MLe_DUb#kkOeuA2L+%3X)j>|cHjU`-~w*o0rK{DsD2;= zqO@(x*!jr#R+sVREaN*?##g0`Z#)@aTr$3YWNhp*z76C&C;({>VFPyH08ZcnZr}kN zc!3Z2K>!4S3_?HwVGsdP5CbZRg9J!|6i9;%$buYT^uwA~31I_v-~dkG0&d^|9C(2b z_(1>!feb=G0bvjUQ4j+vh=T-3f)q%D49Eif+?VldTE=f;8NY31{6>}Wvs1=z5E<=n z8O>-J?O_=WTN#a2*$)CB2xJff3J8M;h=LfPaR*c@kN`=L0%?!|S&##Hz(RxsY`_j2 zzzJNy4LkxmfFj2L&g78eAOVsf1=0Y`FgXMifI}v-Z`F6`6#-1QFJroW8Pn~{m~LOj zbo(-<+m|ujz8nRZZePZ9`!c56moeSGjOq4eOt&v%x_ueb?aP>MU&eI%GN#*?ak7Mr z6B%Tj0U_h`1R2B7WegFQF}7UBz;796BFGpDFJrL3jKTCW#<$BD)-7X%wv55nGR95I z7y>P0G_#C>$uhIU&d7XQ^zsHw;?9pmoe?WjA{2}OuH{*+I<<*?#q~V zU&gfivL9gDeHqj4(`SLewEOf~ATaH|908biU&gfiGN#>^G3~yLY4>GJyDwwfeHqj4 z%b0ebzD@~DyDwwfeOcN`*nk~4h-tNT;(iyv6#TLWaNq?#;0FN^1Tw%B{4%ECm%|_e zq96uT5C@ooU&a*tGN#~{F$KSjDfnef!7pP9ei>8n%b0>+j#HyuPJkpx5z}g$#{C(P z1v!uh1%O7sjCQ;%0UNLb2XF!xa03tEzzcl94+0W8N%u>@2JC?EBD}x{{2%~=Kn5X@-$N7t z+e=6QKWM2cL|)vY9|SUfbISNJC*wDnjGtCAej&;Dp(Eq>ij1EfGJZW!T?iYn6VukM z1NS?D3%G#?aNq?#;0FN^1TqK#1%yEaL_rLwAPy2B2~r>pG9U|bAP=Nngbmn%gP2xZ zC+>FvH}C)syub(iAOM0u1|gt;Fo=LChyfMEK>{Q}3Zy{>WI+zF-Gl^e00-D*9441> zxO-Y{aS&U^acLO`DPlX09)#sM=KN4{hn&60ya1|gt;Fo=LChyhjH8Y?k3o!LdL z+xYGhou~qwi#D-<8ze`GaOhm-!PzDBpa|WTmC^I)DM4iW1@x4_zWZWSohZ=s+Oh`R zqnA=;fwXlUb6!J7S{93E3D7@j6W&Nw+*_jcvGD|Y$YvtE=R_tO|F!)i-M`sdZ&csV z-)O&Hd%gI2=e7E4rPrj_8jW(JzO%Gb+Sz!u{HpS5`4#1r=F63rwU=8jRbSFyYQI=} zvG`)=h58Gn7o-;&&zGN9p5OCq?b+h9ooDLLl%A2EX*^wiT6wzpROKn{sn(O#C-o=W zJ8CvZMu0PKH>}v$*_qXq>-B-M?b8r3L(!GUyTD59TueG<< zwidT`CVwZE?^5n+-dVX*Gr2y%s#`iY*KaP}EZy9=seF@iQ}f2kjoOW^8>% zU0=MuQ>|A^RjJw-D~~B-&Fd=HY1g&3RJZ6`+Sk^u-F%I5P4nu?)!Nmq4|R`cuU}QV zO1i3XW%)|w%H|c7E3_+Gmsc;>FK=H~yR3Lw=hFJ6rAwtt8y^^}bpH~a8tdM?sB)2Z zQR~9$h5Ci<3u+e>FX+6#{{GVYrS~_^FQ2cR-#o8!o_1dAecR71ohzN&cyIZ=%6q%V z!MD$@on1V;Q?8dwWvSfQT;8l~Zk|;+OFOIe?&`bscel^1omo7ybH=XIE2nFx?>?>i z7hVTo&&Jxu?s4Wcf(t$mWL1 z25m#@i0Tpg5$*N0^~JyP8UV#ZIxD-!+&4!mBicx7d3CwIygghSE)I8=)t8l)Ny{2b z%S)A|%_Ws3+LG46)r0ke+ly<9i;FvYT`%d9-dI##q%3M4R5?gHsI{=VP+!b7iK9DhE~=Tty!oPv_dOi&FlGgu9hq2I@x-*l$ElLOgW=u zn(0bf>-iO5N=S)Dyc}2JO|_zGYAaTa>9KaS7A;0Qk$R*Qks^(7Ijn@6N=4C>R;U`% zLv6Vx7v)Z{PRC89U?WftD1oNG;@A8wU)87k+TNPC=BhG33pTMJO;T?6%GoY8u2Q^`;2&9 zUhE$6y3r)vBhn#fP!(EC?=#|c`ReZUl1Vxj>5#Tukq#}U_ZjiJ+;9zrO(yAHkq$Y7 zs?bV${}HbvhRY2fZ<6j4>5wz13N5Dh8Sy$|I92KdlXSmGhnzuGXfeIdh}RLr)Ym7P zqz6Pgxg0Ja;izXBGMseP!(EC@6&J`G3;JWGf9t9;w%Qa zP!SGFpK432?`=35uPlDLNpOrJ=P<~HQQ@HAskVd&?rAtqTvUAGY>qQbvQ?1{In8o~ z{W-Ll-P4vZUZ(3zlkB+2hMd8u&|-E^Tf%sSu6LVcCn#?gjmAYbRD^@FyWi}dhNJPq zTxXdCCn;q1jThzGY?7T4*^o0B6jK=c?@!)Djc+8rW&;(yicRHSnO_A zzSkr@FVZ2WIo7b7ffm#IG-`{6M(w#K=>?GvIfJUuVtSuOZPC!EeV<9XCek5iP!(E9 z@876hZD`bl0HMEL(ZTow3yzfQM=mEsC~al`b?1y zIfJUuVtSuO?P^1#_5zdiSt1>B234WO^gfN+)rLmxg(m55wz13N5DhY1FPZ?D#G=NuMLqA!kq(T1@ZLs9kN?^<83;KA#e2G026Aa8UYG zJ7-f*qjq?mVN)M92|kb_=P<~HQQ@HAsdkPCp5CY(UT4_QD<;_sL^k9MMuir$r?+#4 z*BLhR513>x6xoo|?3T!e7PF_fbB5O$Hu6hNvJax9SqyTaA{><6{bo;Z)DEvRY~Poe z1TUh7khnzuGXfeIF;W)g` z&~UukBz;(GE>dz9-;(pQRf$Qe|H7Snqhj>GE> z`;;-0^g~2CC{84HfV9R z^|pA2*BkbWH=3lcrmWcva$#6_89Rsmzi9fZAM-NrSel)%X3e6raHX!I;c^eljn}@u z$s~D=NQRuju+U<%@oMYKjaR#l6(ZE&1H}aW5Pkn z<1HZZ37cpDP5+P?nw+gdZ!yA!jfqv=C08_TEn*W7+XfHGQ~NpSXV7=gW9;zlTh+PZHUXGZ+zC$fnO%pKQZNY@12;$s!wa z1|vdC*{l0x7rWQ_!zS6Mh-}Cij0i1duj!L*_@F&vl6|VkhMd8O&{Fo=KG}xP+M_1f zXHed32DvaS9M9GVx5M>*?QrAu6dyB5K2sz^&R|$*F?sSUWxQo*yqe$&fP` z7FtZ6{7#ujHnhW^FiAd3Bty<%SZFbM@=IkR+0YK(Zj!uNBty<%SZFbMT07i$DaE=; za+%WRGRTE7;h^NncDTOpK;-0ZYvN@ac9%O$!p|1rkTVz)S`VN8IU8?>Gxq&&yKU#u z^0SxSw##Vw!%J@47%eVZZl`Pi1!=kG^E8hiEf0UrZPT{7ZO=XAwjD&vTQvXQp|t$t z12l&qEnoh++g76GpXmC3C)4t;Uvt~eq-D=nY3{%sZre}lZrcZF`Q3K9?jJ3<{@)3k zKl@+*P3Qk#KfCMv|Is#E5dOBkOFCtA*SkydvYKTq`ia<*ntB$feW~S2XNp8 zKHvud5Ck#^0R@CX1Vlj$s2~m!APG_+4Kg50Ox81pd-9+Fq|hF!C$IwtZ~_-_0}r4T zMfC(e;0FN^1TqK#1%yEaL_rLwAPy2B2~r>pG9XJ#)f4yR0b4{!zy|EV0i3`E+`t1k z@B$z3g8&Eu8H9iW!XN^oAO=(r2MLe_DUb#kkR_(-iF@)u+DO=d9XNm!xPTjY00&;+ z1AY(yK_G(=P(T<&KorD)3gRFEk{|`rAOo@>M@-f;k9!J08YOJN4jjMw4I7ombNP#rSfGo%nQ}x6>(sqL8Hl->82XF!xa03tEzzcl9 z4+00rzNN2+RO%Cm{hFumcBh0vB)t z58%KHe83L^AP8g-0tyI&2#A6hP(d6dKoX=tnwYF-2KQt^4&*@rXkZAiU4#T|zz!V1 z30%MpJb(i)@Bu#vfFO`T2q+*7A|MK4Km~D-ASUaX#62mH1{shAIgkehpn)MU1F+qM z1Z=<#9KZ=&zzsZr126CaKL~&zkUhI>>H2MLe_DUb#kkOeuA2L+&k zA;9($60iX~Z~!N80XOgf4!pnz{2%~=Kn5Y85R>%`gbAQO}I4B;LHgh2#EK@6xM4iX>Bl_*5Ck#^0R@CX1Vlj$s2~m! zAPG_+4Kg4Lav%>1Km$Wy24JfQ3D|%gIDiwlfSZ`Crw8|N-~~S52LTWSG6(?$gh2#E zK@6xM4iX>BK!Q;07MRffx9I9|S-U$RGq1 z5C#zt1u>w4I7ombNP#rSfGo&?JSYGSu+4-7Y{X}znN-M#rEp^r4*s=TGW)q1n~rv7I8joKT*?y#`qS;FYEKoP>O5J0 zvh<|%WMfBphq9wtuhg}AYkPIOzPZ@2S71^d9LwjdRN9DCacKuAHr%-6~hhdbz#1 zwz;^ub5{MV(ph6&a{<)PD4ijl(Kx+)x^jB+w90APX{}SMr|PG+PpO?!Jf(AT{p8Zg z(#egJ$|or&HBYRZsGZn4ft}DezI?oLd~;J}leVcznH;>$G*Pwbixy+V+~-n&O(y>iX)^YH4+&SS~8X=BmmnZB^@V zc6j5k@?pwh%|k1PYKOKCsUD&q(q36xSzOs!QD0G7A+2bPlt+}2=JLvNZFy_BI;;=3 zm(`XPmvxrbmzI`}OJ?tl={z;pd8Q$Qg_Yt%mo$aziiSvnJv16XB3E7!z6u@83&kyr|)GCgJB%;4B8Y zP!SFapX?>n&+6?ZTw>@YeBLDZd=U&egCXId;K^P>I>z18OK7~h+6yMZ?-#+4GZ+$D z2=47ATxK}z`Jzei1tJ)7217y%!M(kN#>-B&-M7zd*ziUAs!8@G zA{%lBBSK5rt9$#7hKqCYk|$pGPLu2pP~L0?xiBm&vn$zq*;RO+?*C1U;VPcI?vyp6 z^Jrf;<@jNJ<0LK(ljKV&a~^|Ss0s%qj}I^&PhP)v-ATt5k3V`^x}g{6HIwwqD0dEn zTo@G&N*^Cbzb_p-&uQ6)ew^1$vM(3ekTVz+TFE~CgyIP&9zQMHFrw-Wlk6)*HslOO zg;uiHp0N736E;lCHhiPKX_9><<;`c13**8;*)o&I3T%9xk7sv%)+au2h9OmNnZ#d3 z!Lu3U!mw~q{P=LieeuUkU+IPo{39mG9~8-uGZ+?HOWrU&*)WR#?@W?EL}_yw{3>y@M-@W8~!~$PukZ>DU`9)nz{3I}D6 zf2Hrs?)TMZoM7P}Oww^5b>0p;h_{}05at32U>*3SJLl~zzXqtrILV*hyuGnf>bSHO9=%XVYVV{_9OfZPAgZ41zHH(mcP@DN_r7S7{Q#vNz#tb!goCojTRbAW--f=%@Kf$f zCeaU4=qv`gP!SG_?poiy&7C!d-*I0y34WL&XEVr!VIkUh=deqrz0YjoxAT#k)*N?i zpWn{w4L>NpVv_s_WzJ)e3svEu3XFq41t?hT#*@*G1v#**YZx_jsGZ+?HOg4U{j2O>4 z`+2@TPl{y784L?8 zCL2e)ju_86`)8BnrzmYMgIpLB4oV(xIh?SDK4E>&IvZJJI7sphlklfSIOGh*gx15S zf6ffMu75EJe@28u&R|SvAsk;RJ!hSb7|%NUrb+m-A{=rCV?wLp(|c7$jAxzwt4a8C zA{=rCV?vAJJ^e`|i;CS}Y2Pvle_n(`&R|SvHN5wg8xEAbV-o&?2#1`(n9xFa-~OZ# z<5_3_W)l7)1lve?jAX`2MUDuN+r zFeJ1TJo#ld-k&tGxHy-E_Ut<_@b4zUJ4G<$42FavICqJ|_VnX!+kv#a{uuq1r=|I* z+qU){x9zj^yZDPv_ct4mKe-+i z`uOlLh=3@F0TskS0wh5Sq(KH`K@Q{rTSQ2}2JFBAoWKR#zymn&0w3^$00;sZgovqn z;+`;wfGCIo6~sXTBtZ(KK?Y<&4&;Hfk+1%` zgbAcGK4h^czw zo(PD77*IhRBtR0RKpJE~7UV!4u&smyY`_j2zzJNy4LpDYFYp0B2!J4vK?o?sR6TJ| z1Vlj$s2~m!APG_+4Kg4Lav%@>W&`pk>-pCX%;$gG0r`{lly}nV2mu9zK?FoW45%Ou z5+DguAPq7g3vwV23P1xx;I9~vKUvSec3?jLn+(Wz>{-h^4mWfMU?2|TNto22CKc8( z&kP5g?IdYjIo+Jg;d~!l5P%28;Ybp$Ov6L7@bEk=YH$r(M6R>JBW#<=Tl}yVg!hKv z{R#M33OFH~b!lKk&gH2H=l^Bz;-Y&7X$h z&!e!T!e1ufuT${1{@uqixA&?5{f9of$1=~=A>54NW;G6PNWz=a@RlsRZ3y1Q_L5s| z@E!-e&kY~saGMW45`d4%@QDz~!??L43ZF{C=V^Kn=J`~Z2t3!prYE4)k3 z)#+-0?PscVEjTr!xWCbR|IT$<~g_4sAz+uJ_*AUZb-BTH-2z&Bx1+OOMy- zy6^2rtB-1rwjQZGqCL`lxI*UuG`5wtbsnlcRD7sIX8`CAwjZcHpg+*Qzk0uRfAhZb zebRjmx&okdZ~dOqJ<>gmTDhjwnp-PdwXLnYt9R>nx9_UmRlKWnXZ_C7o$U`-KdgPY zc}L|A<&MVfrQ4<38@H8jQ*LYCTDeubwRKDN7X6m?&9$40H+OET-&DFux~Xwv=|<_s z`VB?84q%n8GT*9Js!FvvRvFXATGv&t)30l9sck84>0DdCwsfs@ZR48qUwkdV;-#Gr z)ae|6cBNX;Dor{AKpLg%(qGc1@&DSz&5OzxNf*^GEYg(#s~6}OwBBENze3jmES=vu zuXdh(Ui*Eu_Z8pQIk)~7TnmuByK!duOy$hx8I?1%Gg_yQovxqWKCO0I@wCpV^;1iy zN~bnXDW9U8(mc6xvUYOor0PlfN$nGBCl*iaoKQcZbi&y2`tj{ewN1rMol?D2DoLfr z#_~pGWAnJmaoTaMcU9k|zpH(0?bzb6onz|9l#Y>(X&hZXS~y0ThZ-6~d#da=E#wyL4&ustsPoCv~x)PkkTR2A&r&gmCDNIipmOYMQfxwqK~wf*OnKTcZTc3 zrD18fv8=pIS=L-yS*k5Ian$k`8Jt zEH6|RHWySDXbV~gRu9w+!Z)Q;TXRR*#ipV^KZYj?^N>NGDtmm%>uG zp_COxX@)8xE!2{$vM#sjdZEQ&Cr}TR0#cyiFZ&gL(^v6nzLvN8SC9YafBc^-q~I#{ z)rs@}#r*$Ue<6PR_vy*#J_faB@|ga<10#mvN#8X&FwzhQMj&S}B(!uyX7Z5!zF@;l zCEqg%evQKBFvx`w;h^AsBYf$oTfY&$BgR>AzHgHKy2yr{!HCd8cE1t6BL^D}f&IWF z`wfu|IfD_QrR>#RQC{e%N%#Ti**IGq1;lkiW9aL5^q z39W}u|C|~63HO?W?-JpV4t|JmXd%3RKcVrwvyMr4Q-nj#U`%K=yr;L!c;4ABOv2w5 z;gB;J6Iu-K?I$#zclJw@@K1?w$Qg_Yt%mo$azj7iuS~-KQG`RzU`%KsynjET@w~HN zn}mOw0%tMEg^F-c_+&p}pYzT}jOU&G#w7SNA{cT8L&8D9lWnv<=beoh&pZ3AN$_Vy zFyst|gcgE(`w5Nbo&C-v`2UGu$QcX?Ed=-W6B^Gu`@Ko<=R`2%42Fc3f+xSsCR#|w z^UnTY68w1zo5LU%MudZcCtIcc&pR72o_F>~lk6{uY{(gm2rXpyZIv3&JNqw_>@SLJ z$Qg_XEoHCnZIv3&JNs{w?5|MX0St0sL}=j*iM73h=SGZYNc@jU^j9f#4uf166%HC8 z+BGDaeuwl785}X5A@L`Z?5|PkJO;T?6%NYo8WK&}eMU--7|)PkUl{-K`26^PCe@go zZcFT+D0i-q3uD4T>0LvjG47#f&h`=G84{97_}4`^a@$p9D#2FHkukp{n z@e+;uKZusbPu;eqUvk?%`f<1IFdF;+HqHCDo|Z2?Ompz8}C>`IPd}=@Phyd0vUvW z0>U5yq96uT5C;j61SyaP8IT1zkO$IE!UpWX0h|QY(1qJ>-~k+Xfe-jW00e;yLO=mw z5CKsT11gAv1W1AuNP`T>f*i;Lwu_K}4cLJLI0@7cx81-4IPd}=@Phyd0vUvW0>U5y zq96uT5C;j61SyaPn7Gl72^;O0u+feQ8||2|(T)il?U=C9jtLv>n6S}~2^&#E+{ToR zc1+o5$CQnBOxbA1l#O;w*=WaZhHU+Uf=_M5CB0SgAh{Q}3Zy{>WI+z(fwYmpI1sxXIDiwl zfSaHidT^TqFYp0B2!J4vK?o=y3?d*3Vn79PkN`=L0%?!|S&##HPyo^>VFMTeVs`*1 zZ~-@g8satwUf=_M5CB0SgAh`XmL;zqSM%sT6n23?~9|R_1r2Pkhi5O}BL0}?A+J6w3 zh>`Xm1SVpn{Re@G7-|1OU?N7^e-Ie&Vb{PAm;u;MLIO5m2M&VPp%b@VzzsZr126Ca zKL~&zkUkOFCt0a=g(c~Afv7y=mSLHij|LmO^m@Dw4Wg``Jx?@FVcR7z~qaxpCK^$BJF1gOuk6_ z83JQGXg@<>(nZ?O5SVn4_A>+~U9=Z~M$kGO!fi~uXlJ_#3D|%gIDiwlfE#!K2VUR< zeh>gbAcGK4Ko~?o6vTiE;vfN%AO+GO1F{6wFo)ZDPyiYj0&FiK0UNLb2XF!xa03tE zzzcl94+0Nd8AOUhT>+RQSuN7bGH0q5~Luxd3mUk*Uo3B=0)n0AAQhh~#rTud4<>Jeo zm+CK-UXosFyjXrwd9nFI-0ze0Wc<8%8} z@73>Z-&4D%cu%KRua#<2t+BPdRoU9SyK=X7ck8a|UHV`T&} zib8$-l~HZ9b;;&SluMcySE!f2by4*q{i61THR|W@Tu{HDbb)k12IE2IbS=! zbzZekU;iqL^ZZF?HQrr*xAN}hnUyoOGh1g=&(P0kpI$q?aQg1ks;B9vwNI^`T0FIL zO8u15Dbgv8lglS7CpS;3oTQ!9I3He*#-{QnWmB_MDX~AZ zzrQ+dzP~-|YwL^aJL~G}O6#O`jkV>q%G&0d${KA=Yjt(CzPeqk6^q5rs`{$ZDrr^Y z@bclx;myM;hiQkk4y_)lAG+(1$|2ezt(Dc4`pWi-+KS?e&PaWvG$M^OmY0_+%bUZM zVQsjzth!8J)?Qj$T3p&$QeRS9B2D!BZ~qJC{HxB>=e6h7<`(C6=8VnJ=d=%~9Z)== zGrK;!G+Ub8m{p#o%xcc8%+zMKW>jbBGulJ7q2f?St7|1q(i(+wK`AuzmAsa3Y4Jx}$Bc*^Bm$t!^vX zBwIr&ON!KF6*^q8BY5pG_TVZe%^CmwFZ%zD^Z(gQj;Z{!IHm$QgE67?V=B|S{EQPn z*iFK}L4gYxE2}Mv8_mFo#J6{zX&(at4#aKd%DQk183u!JH-) z_!foEVUP=>!a)`2K9bmHa)lA&~|=29)nz{3I}C(A4%*xxx$EXas{_Z`oB@` zTn4!?CLEOBeI&7O|GIH<1&>Miw?#PQ490}k!>7IH#>o}9N%(g}IOGh*gx15SZF0uR z6}%?ldnj-LgIt&t4hrwytq)D0CKs zT&M`gPxgP$^kcwdlPCN4>oqV=t`IN@{ys&{VUP=>!a>24lPj#>p6-0St0sL^vpWa&iS4R?$0O+=y{<1=%F}KPYq-gIuTx2Ss(LoDvHL_{1ubrAB$wj84L?8CL2H8MdNAyVUy&ah-Ana z3=1tL8^2hJ#?$;GCdoe)$&fP`7FtX;4&NynPxFtOB>zk#L(X7WXffG1e5YtU%|B+6 z{Bug1%ODrVgoBdz4d0_&A{=rCV?yiU(?4g1FVVP3ct?ao&R|Sv zA-wPKouctH|Aa~SFGM)x490|3!>12oDH>1nPnv}PQiMa!U`%K+yl41M(RiAF$|U?( zA{=rCV?wLpy{~+A_b|}3N%*ftIOGh*gcid44&NynPxH^1g#U&DXEDfyif~Z)zTrEx zsr8)ZUo@WPpEU{otq6vk!H{rJ@V?vzCHIv{! zieShY3<=GHG5_C(>HPl)Ef3TA{~9gN(HsEtX%2u_==^`3mN)49|6y7_O6UI{O3SC{ z{Qo0q`3jx?el zt;lUmNGk&Lv@>}BLg;B);Xt7X3Pn*Uk3yUZMFu5O8oI3(GAg)Grh*GYRB&OM3NG|g z!SwVrDu6Dog%S#cP(VR}3<~&Az&ovaQ~=#!3vDQ%pgrcx_xR4Q_N@R^`@aHNdL zEFw7~y@*U9Qrcf+5Rn-~dJxGGnM9-q?^_M)g%0*tD(99R5ys~=1^Vd{;C^BbqlDjAJq+@x>;1$z5UBfPVTEDy#tX| z-)8CD=AW>1VDt|xEwA!OX~$+&N=GK%b&Fd=j$Y&nFFx2wdXXzq^deU{H`50@O3yQB zYe1*!3LgrkP$-Q;E))u3t?p-QKo9LgH$JN>6oJ6w0s>(OKMdUTauk1o+#(EX@} z$w$|TYWVh74F{^>*nJLjkAH#D=P|cCCxsG($Guj3OzFNP{WHuK?{$YF*R99WgeBR(S!P2xZ27IGaS#|Rmo1Nb^TbkG% zaC+E&9`0vzEj}_vPn@DBoBAG`NK6#o!+a?^{B5JZ+UUFWz=>B94o^HHPLGIhn0{}H z?u}?DG5s$Y`b%uI`(CU%JbVkSsN1{$fR~)c(~o~4BXAVg=@mD{wy#_Ze5WOC!w2W-50qT=I^NN=ArS*M;qM)92EpLNvVPtO)fbwAtG-!lK7 zyZerBtGfTkf9}23IJPyernhzN>=3X*7Gzm=CP|2ugs_Q~u&2cy30OcFVOfL?Ay&c) z(_(KTprtL)Mr}XcrBMgnZPe0F`|0@f_kJB&_Pv&^>wZ7~{ovteoE!VTbabRE>E8E! zU;TQ97uR47GijJZufen)6}L(n&;^hDiN=Eyhi}ymXY1e%rr-6s&t`n^<&OTU9XywL zRdylsHtp|W-ipvA%E^|1cmDX12Pztwz5|y^?%s-LV?hkeCV17sFcIIzBcn9-W9=eP9 z?fv&Me`EXo%wN&|AoJV$A7cKd-ba|<-?x{3B=i))o@V~)?&p|)!hr$iZ*jlG{F8b$ z$zRvoIy~s4F0wf^ZS;SrJurRrf2i- zmfEd-jr1L@wG}JeH~7Lc@|Q8hdiw27m43U^Pruz6q~Gqe&~JAJ>9;519psMUvvcTH z58hGu^*Z|XWp4WQWj^}#WdZv2Wfk=6%l`9m{NHYF;S-Zq=1w%bC;pEE9?uQH-P!Yr z_DS~R#K+-}b6-n*CH$4#N6C*OALYNC`Y`&T^kMpg*azwdk@v!HXI@Xfy#K}ci{W%+ zAo{}o=h~j_f7-n-^HlsP?WydOi6_HPhM(wv%)Pfa6;9=-Lqw!MzdN-%x?9?vrXCUM zqnTatUD~cJb%_W+l6yG!P>;#=A+tN%?(Rml$emqx9Hh#S)Q$tUu$$92#kQwzNGAHO zOKb~o%U%7NqVR>e^CRcw&dHn=KC^Gjq3%?7>a^S`S*nmgbp-k# zL^kG+(_is0zc#ftyC$(FvMPU!wlcdSt-E?*v{UL#cf>l>j!dN3uRx;f6^0k)79DjT_>g>!ceJ29_6$rD_6Vt=fbJLR3BGaTP>B+Il>g3F%_@u~$ zd~2#T+A6iCTXLafC=$vyr<$Y9YGbA$-k>#P>l5|*P6ARO?T`6Yf5sR0#XXuQt0vU2 znsdiosw?A+(=#;dh*nG0>8e3DO`Ri8@sG^x)bH+VG1)2dPq9-3at7T(^PM6TJhVH%xHrad+I6c*@V_W*3WHqe z6^<2LJei92xQ%v-f5do-{{)ll{}tJgGw2nLBfGORQgT95#CVGTM3d})i)_dl^a{t7 z-7!jbL_gV+OtP5+_c`Q3uW(%1rKk8ujHmcdHp!MmHslO?h2zRDJ;gs_JjH*CNp=P0 zO=6G>J;Flv*r)g}9jyc*Vm!rvs!6g%Bty=iM>x*pq1~P0Os0tO6#r=^$ySjJIfEYI zIFm;lBb;S8#ecdgvL|+XPSgN zML6UP`i0{SFCDqz7~zp7;VuylIfH)TIKoFiMrb_6f0jwOn*t{?$c5C;kG>x(eCQbA zD5v;GjHmd|HVIZmFysung<}N|9U~m&6#t0v6#qFU!5$F|IfHKDID$)$5gJeNpKB8A z6~U0xo(%-UaRk%*q+%V@;G09^DgN_Jf_)+wat7VPaRm=;%!@WRLo;)Od>je3R^;$cCIjuW(%19i{I| zji>l8Fv+f?yh#jlp+`8@6&Q!Fx4E?R4F8Dn(y|LplItmR8XYo1G7JdEN-osK;;NTR zH;sB}*~mP@`=muC=?#=Pg+VU#3CBt=R08T1LqlRe6%Wh3*b6uf7s1|VXR-AsAY8RWvCaI9<>07y7T|r{>ffRep)#G@1}F);=+yB5^tc#F<3=~iSEWiqE z#E4sK$8ruTK^3S54&VeX;07x2fI9XCbJc?e&8Ud9^eH&;0H>tB)KYp1z3R%*Z~KXKx?y0bjvE~hk*rH zfeqLJ2bG`-R09Wa0vB)tl^AhrJy`AqKHvudP!V!d7_b5xumcV%K@|vg1teGPp`hfd z1NESR7?IOhx~QpiQFG~{Q0XFx)r?%dT)IdpT~txJ$Wpqivp#Kf~AXUN*C3ZE~+bCRA0KNq3`R=rr}@_ZAM(}S$dQM6?lLb z_<$b-KoHb`T2Ke-K?7(6O`sV_-GmGjPysB!3T&XE@4NJCpb0dC5YT|sPsl(46~F?l zfKw%i%h^VoFBfnF6?lLb_<$b-KoHb`T2Ke-K?7(6O`sV_U4#r2PysB!3hV>4P2`{w zRDo*X08ZcnZlD4W@CvXMwe`@3%?>!I1XZ9KIDiwlfE%d51H8Zo{2%~=pa#@}I#3T9 zKqF`Z{sVue-vB{S18PAXs0R(85j25j5CRHS+|X8oHhGnx3RD9JZ~_-_0~L6H7x;i5 z1V9kffLc%o>Oli&1WlkBgn-;dn@|N*01L1J8?Y0D8>-@Cnqzq-r~=i%0W4HAL?fV0 zV-=_d4&VeX;07x2059+XKL~&zr~$R04%CAN&7vTgMOCGX zs!JC+N*6gx7r9Coxl0$RrHeeJi@c?ae5H&0rHcZki-M(#>fJ-H62*CJC|%T8x~Qpi zQFG~{Q0XGAbdeM)xe;>dBBgXuMd>0->7qt@#o>jwt#)kuIj96xpc*)U6S#mIsK5if zzz6&w0D_EQw2bG`-R09Wa0vB)t6?lLb z_<$b-KoHb`T2Kdk*!cTF00cn|s0DSP9{9w&Y;3GUKu`@_r!@ei~QvhOF}55J$wBr}mret&9zbicGe{a)-n^}Woy@prX%v+pF{ z3BQwjJNb6x?fhG*x1w)JZ>8Uiy{W#Lc_aRY_D1&g#OvYLbFU>|i@cV9HT5d4nvniK z^jpY3v;XP7eceyBJ;|Op@L2!eo;~d;>QM9Oz^>j$x*iTabm)Qo_xIh`eQ(=6Z0CVw ze_zjC?RUEA==H#k-dnqF3Eg~X`~DmIZs@+gEs^U@_C|X1*QKtDUMF3bzBYEPdTnM~ z-`2?1{57d-qSr{*q_2)$tzMnEDt?uARrbonmEkLMS0t~9T#>&#b$Rr1>GJetvCGuU zGMC0L)h^9mlDH&%N$%nSLvMn_MPa%ELGr@Lh4~9o7ewhA1nKi*=d0&u&WoR?(Nzc% z=Z4SCos&E#Lf0WkogF<}Iy-$<>@4-H%$e~swKKD4B+dw*kvlzkdgS!{meiK$7HLa* zb8NG^ITMS=v{<$~(H-v2ZAxy6Y|5XOIxTvdG~!wWiU06g1kwimk@;*i5e-LkUCFLU z7mm_L*Gg;C$HtCTkIk%!uhG_IS0`47SLaqGSK-)w>X_&;(lP0kv6bq|%!>F5ZAEr@ zVtIIZZm2&&c1eF{Pe*&i-F|SeF?xI<+oS8?V)Bvo(pDa7`|l3`T2 z>>dfxj*&?Wa-l~!*6tDguDB%|R<9qiL(0(kzSAUG6UmS>=n;-DdBwq?XC>6AK+PBB3?3<$@{*0p1x?9q0;8XLPFW0HOtB~E3K3;n{e z(sk_^aHd;HW7mkWvFj?6@EIZ;at8gv@rMr`*(q$<1{=Euu^sIF*J_jS!$mmc4ElxR z4SPAF&?_7(d#D2n)qa(BK#3STpqywDy_iBLGRTFhaI9$E{ayN& z!q@@jB$MC{ik!qC7kY#^c7JA>4k*h;dqwXsc0f7VB)L;0L(ZT_IL>6_gS*4n0p%2v ztzj@j-Y(4Lq?Ho>T`Gqp2^n6GR@n9%D&UQ1 zhHc-DZrJvlZ186E!?xdocG&h?E8z|_#J1mtj@b6w(GuH!2YO=L??hAV;xO)_U5|7T zU3AB`C($0;emDAK+jpWtw*4M-$hO~$7TNaug7AJc$+ka$F4^`6(I(se5c*`>A4a2W z`y=R-ZQq4f+4e`#E8D&s&9d#(7M4u4z&+@fZQsiV$j2o3xD20A;FA^bDGS_Zg-_ey zGj{kahtE~Q=c~x#FkYy}q5%g?JK>9HqHTZ44PRE_D<1f&7ry3$ulwN}0r+MRzEuO? zu7&T^!FTK7dkt`ZBg{0x_nYAdA^4#NztjT1jKXz3>M<_(QbZw*Lq{x9vYh({1}_=(=tH3EFPk52Ek3J%`5I_Mf8jw*6;l zy>0(FdT-l*f#%!x&(VF`{!0!13f;Huzef9Q`)}9*^0yNFoeY1kz&})w#bNx>f<=d{ zFmHo@vco@f_(diBOBMWYwB)w`)dBzJg#Y7$e|N)wsPLa2_%AQ~UmyIppR|3#0{Dv* zgmMiO4Z7_Wb@<*=53LQ*)(GuQkgjh|R)%1e2CG}3gB>EB5;-`IPh2t5rT(nWN{crv|v%26v{DsScWqdcw_~fWr4G;aE=YmwZnNF z9#sjCu7dNc;Q|L-=!A=0aIqVByX#g$@!sRt^MJ-%e2alk!RBTd3PDYSEiJH>?I$NlaH0$+ zDR6QHoMM4ft#FzRPPfCuIGj-l53eGN!#JWEi`pD8?1VF2@JKhDrNY@BIL8a;`rtf2 zJSqT>7Vr5#r9VEM!}{NAe=qlLf{wXo-if^IXcr^qw5yL9+nc5g`x11;g06e>_ayHL-;>=L->L3Q-yNlE6(p14WVSC(=boqUir$sK zGfCGe$kKHR)H~9*M{m#5x#;2BvOD5C)E((t58jfvMY|<)bL?j6=G0A*n{wL|+qLbP z8)G+0H>Pfg+>pCIalJ-YCWs}ZM2e31=dMd!r(Kt!y@Mq}i1Jb!EI=-KyYY%8=XXxm@bXMxj$eFn_ z5@%>K>QT-l=R8b zlk+Df=~@HX6XPeUC#LC21Nq}abd`bFMrmW}xCmWiAhAK)kXaw2D-5L8Mb_o$2)-80 zbj7-)uGHGd+T5{;V>LQ@A6p}>Nv)31vHQfT0XlAKNjuc%@AlIH~*V;35Edgn98(l{rzEEA5UJ#}8@so5F zf$Y)oqt&C+bPa+0yyU#_yewToK%JYO6P=T%>j#8qXJ^G{sdV*#=#lxE$(j4Zv9J_Q zwME);MsGyJ6t+EH6t=3cUa;u?Xb-B*mP-niq6*0O-)SIre>zZrbts#biIHa z)dpyjx~MK7IU!6}3W!rxK)NML*9k~!VJ#bqhg7Nyh&Jb&l1*W%3WztVjp>Fc)dVE# z!}Zy^I8_9sYY$R2fL4bNr)Kd8z{l)3pHNT%{_2D7|%0(wY8QYn-kFkhVmr0w76O z0mv$GI{u%gYXIb>Bpv-nhri`dZD5>^|KB=T|36Cq|Cq@>l$EsKWGaJP=ogM-AIhjF zX?7SJxo$QIKSqQ@&Y)j7-tdv9Ds~tfxo$BDUnRmJXV5PkXL!j;njOYQuBV%XuNL8u zGw2tNH@tM@hNJsun1rtp;gB=v7mg!*)RQzjjE!8+GzmYJ0w*%ag{p9@@Zw3Dw8yZd zk!y#sk?UC|!D~e@h>G7qjjv5@dv02JRCfUb}Y{(h(3dfb*F-mqs z|0wG*$v#13L(ZUAIIir{W+@%UW+`!#>=Q*cJ%nL#e} z3dd2HwXF1f+zw-5)+Hvee}Yt4r5`~RVFv!3~>V>XRucIpWT3wcfX-Z~kn}8iQOI5RR3tf69$onAKq{%-U*_elF!sWsnQ~!m-lzPr1goghS4tUpW5o5l=Z|Vb*mf;TKTg3o)EnR>rYUZ>;#3+QV<_5NReuTB0s z_5VMPzJ9dRCU2py-`q{t1E8-j=-B@i^!0c2{iiSV|6lg;RrX5y{68>w{2!nHCv^V_ z@0Hom_GtLd8TrsKYz`78cTSw{kckX(p(-pCF`X$Ab@UDuF^%@pZ!8+S-X!>9ik!kA z7y5)_1rHUCEi0Co7>dR^j74KNm}FlN{HLMJlF zg{p9@Xx;r?`gX@yG`8I&cq>KDWsnPf!i%VA>~ywCH^<`JUfkdGNt#+d($~5rn>Jt2 zc4eFBoHzK9?Ix4BZ4@+*K`!(O%f&hLaXoFg9fMgnn`B*2DMvHNg&yG+*269vWoS5w z#mPFmj-!s2U7OCLfh}963%kW6>;{UN&mb3igyq7jhQkcQy457&~fD=e2cG&IWVnW=l|-(?cDgI2$gK`!(P%S8Z{ zw$mi)P6}DbAQyUt<)Vg$HhXYrhL2eHnB?6hh6XuzSh)+WjU`cZ;Dx&Y)LVE^26K za|efJcpvzHN#0J%Sim3`dWGfkhK5FYJ#%$Kd(b56ehOL2AQ!rYV?|+)eIaTkjjQd- zdHQz-51B+gKq1Q*nu-G7RZqlbnYrVK#$Y=oXgCDGX_Y7}6~LkRCCK zdYD4yFvx{&VY#TnkSNOV0NiDgvx^euG025(VY!^bkXDEx&D0O+QIn`gDdZ>yxzH^v z7gZP%MHx01yG?TXDPa+VT<8{-%P9s1$`PW{?Zr!g5iCAyJfJ-SmXcit#_^R`a7-iuimlBy?0n;KmGaK?N+(tZL9o)+pO|MZ&_s< z{rSk7Ryj;x8E%s|zG0O=w^P0U>sGmn{_KCvD!19_oPk%Z@^M!BeE*77zS=^){pio# z6|_&_Wvl$5Vv|qWYn6ZhO{<)E-zt0lWR)LG(tdGTFJFzfXbSE0#5402&mST55&BGWL$=S<>W6+?ua!Jx2QoMDKgerSH)B=a@OS;-(528HD^4MQCH z!TAM~xYsG@7zVj8C@dFe7~-fOo(D`a-w;EDoWY>5T&7`&BR@c=P2%36h*b=7p4d-^^b#3rf;6;#iyWQ56G(~k?&K?8V0#AAS@TDA0VEA`kf%JnWTL{Ima@{g#lr?H2naJPe8+d zkk?HjKNJImoWX#wT%>-0c>d{kg}h;s_9aR~LzA>`Q_dm=xzH;tmqwpg=taJeW|+G#nM8e$LKZMc7knoD!m*-; z-@mNe(7AqHXW?VSQr-KPFPr3jpE4FQ$c27kxxB*rmttPwbKkgj1bq23tGv-^lYdK} z{kQ$zDm(vWl^dH{c>&;K1Z`MRG{ zhQ}s9k+911(^mOgy;k|`0V|#VZGS`>BZfc!Pv|y${{P72p8EmaXNwu+ z!hmqBdv5s6SmB;4ZbuAHvags#{*b~JG024hVY$e{qkbsT@G1SPCTTws1B9HxfUsOz z;gznCR@{mh-fe!(B=W};vxq@13<%3b>IaC8h<Euw0~mfOs>ee`WpDBrQh?OBm!rpKz?SLO}wyTQq~zh_Iv};p--G zKc%3h4054QST4>XHj{&KhVA4xOtLm8GR#-jB9)n!y6^?c96<(?_QybTxSU4)srhiU<+a&Gx zlyek=T<8^+ORE-hRY)^zAOFiF>W^YzkTa+X3sI+!JzGoGL`t7p-!aKLMC(6_K`vB< z<+8+Vi7dnO>boXEUr@v>2DwlbmJ1RO!6lJV9)jO9$@&YW%w~`aRbjcT!l004cnE&q zB?gI3JXE8v1cl>WN=XW2jCA(vi?TvpUof_s={(vVo)N>@bLSgNzmUZBEldS zx`kr}6^`-J^Qt&e`km-MGKu;Jg>*2;g>GTFC^}!O5M_Aq{n#X@(#cpSU1T0PP!$$( zE**QGHXL8rs2dLQerA$YMeAR}AYEfqWWjP-VxB~n;q&xQOoAM=+M^kyOIngXVIk>MwC1B3q{~K% zELbj!&fpsy8r}f6U1>Pt`%{xRl~z8VLAqF^h=b+ghKGhdk@}a%pP6KNY0a}3q{}pt zs<4oCNy)4Yy%bZk$HK;4f7tiuCRsjO|7-^7%8Vilmdg?kMUiEAfAI^Gpa89QE`xM6 zM3SzCI23et$)JW_idU>$w{-BOSbrCOZju(HbC%d%DlC^(*l-}ruz~-zNl*i=d@+M` zEkh9m%LR#t`-aZKQ>#tCh5wC7RwJ#sok6;Gp~!;evIYl*=as1182Ruq{{7QOt#a(^ zR{3wctn%%jT4jy)0lf4(t9;BOR{67!t@6e6rToJx-~TnMJmv3J`Mn3JUf`=%`M0-F zy#O8m4?bX(pZSRD1@5=X-}$mtzTiHqEYY9$(Xsz2zo4JLhkpJ;tNfdtR{7cw=(s<9 z?WJS?vuPi|`(c~BA!n6yZPZKfAbtL)Kfk|V-!TrH|KB$J`M>qx7ve?_9{KsL$z669 z-9hsiC7Mz2g}77hB)dzjz5`XUPuWG8KjeeL?$ekX&B!+$Z!x}4TOmq9M{ z2`{4ia?2=1C554_UEjH>YxU~Ep&8y^{kKWn6%;g&K`!(O%f-_&UNas3{e&JYY z!w=1Moim3==~9#0&k;`l?>A9Ga?X{3oJY^hXM_o6~!d&4qEp*2I-6z zGAJA?4R6W3L(jWaL*vtLS1L>r@1&IV4AO}$A`zBLq%#_e8?wUu>7VBolej)w`8o#a zWD^kw%f$^3aLv#F^@&!K#3ZeMJ%e<*iAaRy5{Cy^NHlC(sKu}NZ>(p-PFi^vgLDcA z84!*YH~av_Q+;TB`fZEdB=8;zi89EA0b#ko;+AtT(6DjgCTR~)PJ}@^7laH7$4VQ1 zfG%4XT^BiadEqlrr~V{>N|VF~DW!u!E({9GB^KsyIMJ{#ugWCuAqrZ;Af1Fl)(FRn zb2E2uKs+Ccam7zXhVq|klhB7LsFOiD9Yut~a-oGywl35#NQX(@BeeD<402(Ouw0&T zkj2kMBQFZ@{nKpnIduI0i&LprKOOt`&alak(>{P%4OG)lpZ(WQx5+=J&;A!rv&j`y z1F*B!CQtglReqIf|5tv`Du179|IecufWHT9^6gXuP)~n8|6f*l5!C>ElRo=zq2vF5 zrO*Ah(DDCT`g)vd0Ors>fcGOdd41k0|D>Jz0pRn$o6Z$DIGy&6cC)XB3!neRv$j9S zYNUhWTXaAlY%0na8liLaLFZ_L&d~*(qX{}k^K*{g=NzriIXa(nG(P9(d(P4JoTKYG zN7HkTp647b&pA4tb2L2X=y%T1?wq6BIY+Z|j$Y>+t)6dpSqfa*n3u96if9T9$JwumSWd=V({X(XE`LSvg0qa*kHz9G%KJ z8kKYODd%WY&e5fuqe(eOk8+L{lMmfav?%B3P|ney zoTEQEM|*OPw&Yw2<>(dz1yleFumT&f0}d)d6{rRd-~=v!Hso9d9^eH&;0FN^1ZY3b z(S4kw`S{T7L=SR~7UUcq$T=F2bMznQA)tX4&!2+I)`&K4(I3_&e1lUqiZ-v({PTS;T$c)c?f8r1+Xqc0y0nl zT7`3T3g>7P&TRl~!a2Hxb2JI(=n>A*BAlZ`I7fqUj{e|7w-ar`Il6>%GzsVE5zf&f zoTD{3M`v)3#^4-%!8zK3b94pgXbR5J6P%+ZI7dftj)veo1T?_92?@wR0TsXktiT5B zfP+d<1*(CA7`mNKEO7xhPyu>?b1(1#KL~&zK-+JQuHPI@zd3q-bF}>C==jai@SCIG zHxB^~NWFv%6i@*yzzS@@4mhX;RiK&}x}6RzaRL``0~L6H7x(}=d-DJY0<`t!=<3bU z)SIKHH%Civj*i|O4ZS(~dGip^Knp-CZ!Q5e^5*E{%`1QfSbfr8X_*jUfsUTYM_ot)-^sNjkfE931393LfZ~!N80Tp)fP+d<1*(Aq zI6)o#uKgDc@Rv>S*Uea)O#f#8qZR(y4*$|Z+9X#i{lO*oGWrpqfC^v%R$v2_pb9vE z3%G#?c!3`Tzyu_y4By%bdmYEO)%do_2}3Gu^}$Isa9SUW-#AI`#<#!sz(4w6J^=q*1OHM7|5|-u4YO5V>7YO8p}U5zYvIPXeteqr@d1sx>?d9bzmR)A`F!O0{Bx=2 zqR&asrJjvEn|mhljP^{HdhLgw&hCrvQ}?BxiajMgm3lJrWbTQ?6WSA*$77F6kEb4s zJeJ#=*sJZ$?uqZw_M}tMRK7piAMVfYj*rrBKl^a}VeR3}L-B{yhtdy5AIv|Hd?4~b z{{H0sVd}V_yf1uT?%u?`+P#^3V)sb*q<2PlN;^~3bzizWos1>bWQO|gYkk?f5_g5~ z%2DV2$esB+Qg=k}$lac}UAsMVTl_Zlw)BqZ4vBj2$8J?`&D;{F{`=XR6E}x%&fS!x z4*dD;sqNA2()RR?QC$!I@b%e5JfS8sz42bHH%ndk!`J1mO@rXT;7>sW*T8bnW!)mIU?Z&uva_j%?1yQq-Yeilw__-D-D+dh~0XvZt}r z(x=8wRZq=OkACfx?8&_+hfmH?m;T5}`4dwoMo*NePk-zL^@Pmv@#D4Qvl|l|!y9wQ zC8=9~enVmYHPF9u|IrlZcTDcWKDi` zYIStAv^u>iwn|-f;}om!F%O8=WgrC;!+Sbxvk>e6~it{26ufj~%HVnVA`%sm;uW z6X9?;*OsJy{`n(PM?{a1j!08SfA#RpjQ9*~MwWW|hY!n5Pfm|a&reHDi%#pE8lIY) zlAIEmlAoNK9GxspPEU$WQYU35#wThMvl9~3+dtQuY>l+$TT;~BUusEfF-_Gnp?F9O zWt&-Zx+&JAHf5;4zt)&-NHl~Sa@65JQlGC&)kW(h>hT||RckXfaq9D*4JLx&U@nlP zPXBp-${+Rj`og}PH%XoT^PZF^>XAHY>h-Ux8F$>RxwF*mKkUjmlg@}U??^eK4#|=ByTrmtY(l41H!TLhW8zwK*y9;cdZe-?hTb>Zj-=%idw@U zy;hR}VY$G;o!iAgLoJzVlD3BuHZjPB0b#kc!a*hMN*_9bUf*TTV-mQRqPiKRz8+*i zST1mQ-@OPl>>Bl&q&-Fnn;E3m9%N8BR$8H)0(;U2hgaNjXgKZ6XOj6i<-{1|!l1BR zW?|>(aHe61ev`N-C}=Z-)K!EG3d_a$#m>>exZ-X@L&ZqIB=bqii7`k`I7B8amuVOx zo`d?`=|PjYr)cGy8RWvCuw0yBh{bXWL&ZpqN#;IEi!n(3Kggi4T&7`&D5uaL5veta zdzvCPGe|u^L>w#^XBcAf3|_-oF?A-H&rm{)K`smm%Vipdh*Nm=r^VEp#Jxa4T?}$z zP*^UmaF_`X)MZOnE)$zlL(O1=N#X!yMH%G6ps-xx@Bj;mhKFgRN!*JRw1PouMnVRK z<>K@MEFPiPKQWq25?`W}l?+lh5|IeYCF%!=M8l@0*(B~YTKNJ7sc#197mgJ-e2AWo zDi_a^G#q9MndH4r84DSt#u*|HmdhJDiY@XC$6qv)us3Mciy5Sj8Du~>Rv2FBePTOW z7+mp{!f=SG#U%1gidn=U7Y2moA`7pDLy?97wwk29MLCNZ#n%Z#@4X2o zk#CCuLe5}7ST0gOz>#m&CYq$ZO9@LEq^2MwH3cEZN;5n>m(lqdXqX$;zm=I}lJ_31 zeHnw)7ewU2a(P1!PmyPM?oBoc+fS=r!5|k>N02gMhKDDG6(634H!@R9A~O`QoIz>} zLQ-20lgOdjD?}OwIMpQWeOmVl2B{;6NP}bDnb_hk?&z< zn52D~*1dv3>IfpzV7WB?07rcbbGS+5M-;G}L23&kB4N2m{QyV4gE_(^?JKnI6%0~G z5RnGUrRfJ)Y(he9WI{Q5b09wMwwXkJl>(MC$b|u6xk&v0(S+oWbpHR=MK;;_2dn(> zLYq8;dH}q+z$UMz8i4Q5r(^qc{{P>Ow#m2sfR61~+T`cx{Qslr{Qpnr{Qnc_{Quv5 zmwumW033g%-=9R+0{CzG{fRbt6`lY8T{{2&Y&!n`1)cxDosRvh^yeNr_J26l0PLsQ z|Fx=3&e5^|9y<2Vm`(od_AkHcrsMzHkF;a>h5ruaSV%i4zPI)rq~k-Hjs8&VfP+d< z1*(AqIDreefeJjp3w*#20w4%#KrN^P^`HSXf+o-mq<%sM3a9`UUOli&1WlkBgn$NG0NYPUKn5uIP$~clJropr zC@Az$Q0Sqc&_h9?hk`;61%)083Oy7QdMGY{LJtLn9tsLQ6cle;Gx(63Op1Pcql0FP*C8ZR09-v zC{BO^4+RAt3JN?F6nH2o@K8|Tp`gG+2>=v$C@AnyP~bt&V3c?$DDhBG;-R3lLqTbW zg3=Bp1T@eBB-$J*GEhJTumF^HC^mr74h5wh3Q9W^ly)d6?NCtKp`f%wL1~BL1}g9X zFYp1Bb|@(AP*B=Iw-Ci03W_@v6n7{n>QGSBp`fTkK~aZ-q7EelG|&QC0g5^l6m=*v zPymWL6bnF6hk~LG1w|bSiaHb&btow6P*BvNpr}JZQHO$}4h2OW3W_=u6m=*l>Y!VQ zvJM4h9SX`i6qIu)DCba6&Y_^3LqR!*f^rT8jflyE30;ZRV*p`e6AK?#R~5)K6= z912P}6qIl%DB)00!l9sqLqQ3Lf)WlT1T?_92?@wR0Vv^6EWiqE03{p>N;njhaL_G8 z5r={z4h2OV3W_%r6mKYQpaKu@0u*m3DBe&40L2>$iZ>J#Zzw3Lp}=;tiz&Sb!DS0E#yh6mQTiMEQn-@(l&$8w$!c6qIc!DBDm_wxOs1 zWg800HWVN5g8&Eulx-*|+fY!pp`dI-LD`0avJC}g8w$!cln~HB3t)W&$~F{~Z73+) zP*Ap^pln025_Ah~_}&gUs03A@8aRLxxPTj|zyrL%2mBxaf}jS}f;vzS8bBjx0?i-< zG|&RrenJ8=Pzbt(75Lr)tiT5BfP+d<1*(AqIDreefeJjp3w*#20w4%#KrN^P^}ye^ zjN)4Y^aqWKr~$R04%CAN!26d|9`J*DpaFS+umdOXfjSTZ(tg4Q9KZ`|K{J>LtOto| z-~lzD2}}UCffe+-zzb?YGnfdh`-y7c0X3irOaPVxL={j$5Hx~TP;rQ;1a1%j4WI?c zp_Mc&-~>KU2SPyVB5a_c>lpeCpmY-)xPTwj0}aSMgdI4657dDWka`IlZ~!l;1TNfI5(QA^w8)LiYK@^Wo=n&n2IWJePkq^=$N6>Dlx%v1in0 zGEc{!*61jHVqbV)?y2Nck*D%crk;#GDLt8fBKCwzNAly3Yma9iOFR~)WBJLwk-hmn zsXfs>5*^KtrPNfWKi;p=@%+T@@b28B$wwoP=69ubMR!TN(vQR*Q6I^OWBS>L5)XwR z$~~BTFhWQ5Qx8NRkRC|iAG=?@KXYIFKJC6N9oKi$asBu`+CABwiJjq{xx15hNAAui zQ^{yjN~Zf_eQICkuJ~QrUD-PmcZToG-I2T_bVrts?1yj9-Ily9a$9~!YMjURV>hZd zW^Rbzz-~xiAG=C0o6tCwdki(jT)mc2A_Y53CI zCCR~~`_YS~i_`H~T&3gt@gA)wdr{(|@J0JCj9;i-n7trzLHL5)`N{Jm=jYE$ofkb% zIxl^0jE?eW&WWF+os&H~F~)KJ{?ntUOQ)x|#I~qgGMnR@wawXBA{LJ2x|7|J?);|I zrsyVVQ~I>nY3ga2Q{$&7ZO9+x;Sd|YlrazkW8etl|vbiK4by)L#+U6+Z*qgpiE)%_nF>rbo< zugtATu86G2FHbFxE|-?4m$fg;FHJ3tE|r$1m&BH+OER7DPOUTBk?06_iy* zo0OasnUtTHni!oZO-xUSO;9IfTH~!+YqllP5^l+9NiCw~L#a?SB!$w=v1YY7(-d#g znzD_F#&Bb2dkoL#? zsz2k4`!rwHoA8FcIZx6P@#NK%8dW7V?T)!scg7WWX|Aj@;S4)-j-(^v$XBPTqt#M% zx++$sR%I&Vm0D$%CwQ3W>`8mXp0}lJQJZ8-TVqz$nz6(!nk8G2s0df&l%x_-@^VU! z%95OxVv;IlSe!oLpLgrwK9xTIH|szD_wQw=s8ten0C*36k1dTmw^9*8rL$6^|Co;! zxdMkiAGthOx~QgfQT3rOM*gCsbdhtEMLn`K;+D8d7r94SbkIHW7uC{5p3+4V`a&ar zG1%WSa?!*?6GtxM1CvKCQU<1uT;%AUK5~)TGh^f;zx(i!i<;a=j9lbAu#4Gd4o*-_ z=&<6y7ZTrUN_3316!HpLFdH5RQte`LhA6M zdin`IQ>?dvzID0uKT=p8C|%^iZ(S>XiyyjWJ=VfVi|c3_xxg~u zGya5gT;$dz4KAwh`IPak zBFEYDW9Cx(emgWmXJI+-{hyJGD!Xk%V;KCYhHn4JMKwJe>4q0(#c}X>=5o?V1|Lfj z24c|c$Ei7Yh&#&S-bRnSP%m@&`X&_yJ^YUi?SqfG;YI!fC5t8vT*hpz&WVMGsrxG2 z-U-E36_?wG7ws7QQ66e7{?ra<;aSpzRqb%zDppm8RZZ?4T2*nm?Z9P2_f8xAh+Dtv z!XQx^uM{RrlpcEqj;HEXP@gkhh^YS=4k3mGDoQYZswT0ew3lY1$$jdWJbBxL>AaU9Zq>X@8Y| z?f_BM{u-@-z0Mqyy5C?9sq0O;eZ6lphkf8nw7&jk%+j?(BWXGyrfqnE{h)Z@3@>2q z;x%A+K_e3z>fr_MLt^_syg)l3w*JEl>~!zh2R9m=zIRoEDo_m?>Hc&zfo2c_8kj)$ zu}eBY$Up%Vpt|=_dIr~t*|7Hx-=M)o_#kMj75|FQTy&q&TzN59GUm#TxsotfR?Jlu z=E{z_;+U%n%vB@isu^=N33C;|T=_9qKFpO5bLGTb*)dm@n5zkxD<|eEfVm1{t|~BB zb(pJG%vBI`)q=TlVy-GNS60l`M9h_pxsowgHq6z8;khb|q;Ytz3JYw*b5&R{!96rr zg#``6b5&U28lJ1df|lXADlBl)U00kd7beFIRNw)vVqO62CL|yOE9S)p?0|zx;Ly#L zZFsI~2j>c(*KLKF#7ARC75$FGgSnD0S2oPmWH-%~1#?x2xw2ud?3gPBbJc*kYQkJi z#9a9?S3b;@7jxysTsbgT9CO7nSFM;U2j z<{|)spaxW68Z2TifDPC|wU`Fr1TNqPm2~6n&cnnL1-nda_2OIXop7l10}d7QF!>N+ z#XL;xKAoNrn2ZWc2FGMrF&Q>YhK$Lm$7D2OGA3X$e3%R`Cc}ft@L)2kF&UMZ3_B*H z1(Q*Y$?#z^{Fn?GlTm}o&@dT(OhyQkQH{y4V=^i*8LgO%3QUFt^UyLp4~3D`56?qk zfn|6e3JY3>=b^B`F+2~21rvtnp|AiSG5&w>-=QxZ{P4gB``;hP^zZL`FY;dg-PF6$ zccpjJ@5J6w-^sike_MMy`&Qzu@LRbzlW#`e%)gO(Bl?E)M*8*G>+0*7*W#~fuVr6N zyc&Kr_ezq^>&U;HdO7;C^m6p2^8170&vifB^-TNIZTmt`xu48D5vMaZvX3Vo4?muJ zEJ^2X4<{bZKGgqUZt&cV)cw)>rTf$O#qLw@%iJ5Mvp2H$B<{)V9Jsqb+1J;5SI?c@ zcXZt@-JZTJMrUVacEopRJF>SXZVlg>yCr!`8e9l9K8I%W&1B3xTOE$zIY^_?@9GU>8y+NMX`(2i!%Sudu6mUBBz_3 zbCEbLd|K|*1glM=@&{XMMijfTtZ;46buW0?N8RSC0uw0^Uc$8>3+is~z*sm#O z4TE&05z;R#7p5EDoWbE4PBB=KuDjkT-@+$9>p166jqvK9isIg%ODr}g=1wI zU-MRs`kHr)Nn)O|)-cG0eqp)9;h96CVR)-d!u}+N2RVa&VY#sXkG=bjZsR)B27YJI zX3z&6AV^|JNv@I!HCvW!5fZ6lixQz~*^*7jmU|)Gi)<0@-GqBL;of8u?j=ryv`u!` zv5;ibi(sc$VbeFs=6j!uLJTF&?0$RBcfLQ?=lDku0`cGi0}Q6T_nlZUR~&Gix5^;# zca$=~pv(<&^%7f#H+h{mU=a3uidoGdwO1j7T)nWC;T>?Dx7r}_50o;%AT?RxiBK=G zWq6aUuJhI!B>si&e}F-m8|3OGwhV9bI&Ymp*nd#WY6hvJ3>oC=g|!S% zyUxRUul2vL&a#Qy>HPoS(VTxbe%~qv=;w3aqxty{w~1f+F7*YZx&MAn=lx$sbN@N0 z2f(9$v5H5~+swpf#h~epv(X?;pq%9l%3MEJFU`p&(ll%8O$JdW3OSZeWJ476 zai@y1Gdpd7^Qii`G&35UU=U`efW-{TTpw32%rOzB`F^$8AjwJ@83tu;fIC%E?F$Ho zHQ2YZJ}}M9?I#+<*(himgEBY3)r)iSfz{(Q-;7T($dV~#F&!2~7W8wc%9>adH#HVT z%?!(14AShB(90mTgyLyXFRivH*3vX(;ad%&oIDE34EnixQ6ByzE?HB5$$DBhFiti| zb5TNy4!I%?`nh^(wSm>rG$s9~7({vK?tAH=4WeLxJ5|)g!q|Vp`o_pwXAq#X5%_;o z?GyDORK$RwKUE5;8P8v!gTiw8KmY(WPm$W)WmDHZWBI6_G{gFnn7HIA{H?ya|2wx zxY}!0kJAioyFpevrOaWFdJU02?q#&i=xsH`iV4ZJ}H-nPqF(`BWT)n*J(6AvkujN_1z#!^i3Yp8G%nfp>Y}`)jqy(AnJgh{FfR8&Y`G224!x5s~6~M4b%+o zGJ~wSd~i@^Fu>KzniyQmXa7$+Y~q#F|4*i$k5liz9;*HS;>%RmPx}CVMce;795zvT z-zpZU?tlJ!^l!3FJn3EP|3`EGqyL|mem?u0Ra`*(06wI?e^x-wo9JFZuPgEBY3)ytZA z6%M$Xy3!!!_UuNyk#gat39tpF34j%ZK>^S5hMeX^Sam1%ooz&(%w-f0*yTmdY7KEv1m949eUv zcdDq`*)CX1t=qhM>5>iWY8|qATGznW8YK2nRv&{hH_X*b^zu*hiA2q6_&S5Ql@zpq zL75xip2tpQmmFYEVr|26VCjZaj$5Bv-najT<@E+}$5GJH49eU9S1-=RTH-WAyTKr9 zHKnXzQ07LtQ)MYk842>N{*CK4uS>34v-EgAKFyxD8x1noP})icWp0$Km+9LtQ}eC< zCWF8Oo$y*EpH&Rp|gEBY5 zohq<)S{;^})TaIu`X|QNy0vtxLF6V1>t|5rM!0&B3V$J6A~j#EZZpW+%!deN1|wX( zyg)N=>BJCQKWT0^h&+*E`WckD5w2e3#1QL|npg1-gS=BHX*Gi~H^?1k=drWs<7U!- zBekux!GV=aPgy;%vi}7BUOcL`8Q7f$c|(-6hCym%LI$~dd2ZI4H+*Ev*T1_A!nRSs zY6fL)m^)QiZAHPuR;*mLaaDbInmxv&28pLq)*1$7ZkVf==&cQ}nW$Mn^9FI-DJadL z%#CoTimSZ``2Yv{`&vfW`u*i@gUHhmso!dn~9ot;C%*h=h2<7V368BlL78j zakZ5_e+}2Jt$+X2yaDewh&!JmRx(JPpLrbAi*wapzgnE;{r7-D)-c_3KZ7zi$ek*y z<-=v=M$F!gJ>;5Wq7NG6WhrSHgVgt#4084I>K`ukJk3$jhYZ3lqJR{GGB?bfDy(I} zti9D~I$au`=ELP-gT#v|YYBrgH_X*b)O@&L0$=`4pY*BT`s-Kz(<*ME^8kKJ$NzV_ zY@+`|tN8Ta=o|q0|8sQwe;w@u*h};OWvK_?KMtYe{B-=ki}nM&M%(_2Y5u>DXzsr) zN7}?+Qs2MJmf1ur{k*%MdIZw;|J$_vzk>e%1|9!DhqnL!PTT+YJZTkYe3j-1ELp{s zbRNL>cU#4CG5;U^+AC7-keYLo5$;sa*#4i7 z^%tr2^YKxG$jd0EpFwKS%_E^+r1tX>uTtx$)nf*ESJ1upGDuCj$uM`Syq3kV_Gwig zVQb>!28mZvN{T^h)6Em1UZUpn5d&=f#_)te+)ldl#SBs>Ycj$;jlQ8|4zMv)dky;r zQl~6k(Yh;H^BFm25II6Iy$s6S2v;vsVUr>?pOXcHylW|G8H3c#nhbNN%B#JG^}MzH z>-uZQ5;dQcPZ}g%M=8r0q<+>s5$Yv+8zZbIYCbEUGKjl@?!1pdnH%9w6{mR(*Y*$g zr)neAoJaDsLFA1T*3Y2Kjd1lMo3CLbQggWD8H2o=DQP8x)I^(%aP{&6jc1gO;IHjZ z@4sF9tU=^06muMdGB?82i);?D5vkd%ea;~7HcDE{Aa&9vBV4__<`CDdT)n(ehSR#m z_q;*m?G&?)L75xj>P0q(*of48p?<+2?@mfOjzMasO~$xW<@uOzB-D5nmu#S;`m5+G z8Om{bT90qOXb^fA1s%_z%#CsNLg}2o+9%vZsOB^EC4+m9H5@ zK0*O27^K$TJQC_fwhXZrsaaRPZjkpF-TOKQsb>`#=1!HT`7+SIc5S`$iDp&#hC$-v zl(L>dnH%QnB{shd)Dtyp$~O(-#wchlgVeK%40HA3njd%T*RHM)P_qO0ErY}YrL1F6 z=7za?iOm7l6E*9}w+-T+qM-E*Qr9Z7jXPBwK3(Z}Lj4;ny@IRP(~gVUTBP+Xs&@=h zpQfY@3{v+ho(lC+n{N%giuF{@+VWk4$Y&^E6NA*eii~roiVU#8NNm4>Hr6AW^Qzu6 z2!58rHZn+Utavcg3l1JASTor74KkmjgiQ=m8!Mg(^)mM#Y-3HLIn(M>2Eor$%ti*O zp%o8?dcpe-7ON8em85lJe~QarSWWZ&KW-DhHDD7@d5q@tr}_UcJ=Z4MXdl3Rv=3m$ zU#;RBR0GgQ=K+*y?*9yJ|Nn-z{jZ|`O*h-bQQH2G+(hRB(E0z#jW)4lv5Bka(R}`9 z+U}og6aQ+mi8s%&iBakS@LZQoJW{lYpHJGv4O9d03Dp2xL^S}6Y5<=8`a`#b+`a6e zqguBA*&q3%uAf=>fx%PvB0W(jGDwZG$Tsd&Po3tSh&O)AJF)fq+@}pvU!tUw7^GHN zJQeDtHs6UYshTfzpD~DhnF6*lD0Ac7sUkJ+#AamUov8Unx7#3i7e#JiQ0B(Ddcn4E2KdAME5Wb)PfH ze4P^3F-Tpz$Tsd&nVLnI+FGrpBWKl}_o;G|a{_t2t@;D+Z~bp`<|usdXApg?g!zhKU8X_0;8$3<67Z_nR4{US?#RJ5?Y) ziXx5YwXc8O`j!vfp4M;hdkkVfOHn5>NKMUnEYyo_zBgNAHQ#E>2AQ9uge?qGS2MDm zJ5^?o1xMQUA8KRa)qIElszLJSDeWW%slyphhI+}(U2PMirDV-;zh)5n1&Y|hAoV!o zp-?aM0K;u8#F}sMUpGkpBITUKAoV-r$xtu(0K>(C-1<%Q-wZ;(L=o#5q#k5slsi>u z?QE<1mMEU%#z(JaZ{{})GQUhY8yKV}WIPk2o>EWE8NwQn0F{wp6Slo^b1^%5r! zw6WxBzV&{`AofFw+Q=ZypT=XMUhL$7VzF)Ak@;PN#4_FgaSYPrVq}y%Rib9GUB7na za$2|XZw$*?=Lh+oLFQK}=XeHXZj`H+*<5U!nVMJg`v!quqo@G}Wp0c+RiI|Etp~O& zwj<3Rfj=;a{W=A%Vo>JBxUI4NADYESud#`TQ60eBv=5-4<^lN14mz$+^8oz#Dw}w5 z8*QH-PdxxnqXn!Q5{gI6JN6p8HHb}A;C;)AcWVAt&(FREl0<=Mr!vJlNWVAt& z(FRFI8zdQRkYuz$lFLUjAlsGsg^)9BpJ<+WHdvP z(F#dMDRz&@r&3{1cbEWk=MAEyo1NI(X5 z-~dkG0&d^|UZ4OU@Ph!L$4%$Hn=p>qtGl6S_ z9zp~rUhD8L8&AOM0O1i~N!q96v^K%8hk&UReW z0XjhfsGtjU12#ekKm;aW1{PoiHXs2R*ntB$feW~S2Y7)3e83L^AP7Pr3?fAHaYk`X z477nbXa^mj6C{8Nx&Rv^1Rw$vFary)0vnKk4D7%GoWKR#zyrKM0Y2ad0T3jbk28d8 z!XN^oAO_k%9JGTD&Q z<8zy;jE1H3>1KHvud5Cn}c-1y!-^tSiy(p%ZL)VIoS=H5)cS$QM>M(T~~ z>xI|TuaCTze63Q<7gNRRcwsy}E{qpn&Ah6-T6!h>iuy`%S+#pg25DgW0q$B#Uge5~?l{?XK<)kg}Cq#qF;DL$Ne zSb4bgQ1&79q4I;d2a^w09>_nCdZ2oL;r{gf!u`ejGWRLXK7s6>;@z3MmAgy%Y+lWm zM{}de(aK%3*a#Q}M)J@eJ3pb{36mBfukhwv*p>%!rdiDD9b-C-3*Hx~~Uz@tNnk(eeIU!dZ z$&4r?rJdQG>dx{t%%DG@a7FR*%;n1ErOUFHsh5>6&0U(jv~o%QlGG*DiwhU0FCMul zc~RxU{Dr9ttJy*}ofWdh;moiyT)H58fqFst{M`A;^DF1&&r6+GJ-2Xf`ds1M;yIaf zlygdFXU|s8E}zBDDxR4+Q#rGAM)nN#jPmKZ)03xHw&%B}wpULp{1y&k+wb`}m+HyLVPNpk^`N7m+bxmPSdX2EAxH_|1SzQ{)4yXg=Rk>BkRh8rO z$ES|39#=RnecZ?adIDyaDa%Uz*?zUZ+?VT1_EnbVm!_6hmlT$yY1aE z+FM@C78j4r9IG5#IwpIJdQ5pyZc%bkWnq3{YGL*0!qMrYg`w>ZrCC+SBbqdoiAgEAdiW zwoPp-$8xb`tP;&fQ_*Uq5J^XbNHLrVE8$Wo8&X4M+S6MMWCBW{J4>CZ%C4L%>8d#M&Xlw2C^*uN5qr{Jk@Ip&u1WXu-ts z|L#O>{y%*B)c>QI8hj(oJx&w5Ml?HPerT{)S|j^%5r!R6GA^{T!m78N~j8qNtq!kA*RQSub|-KqpTm z`g4QCA5seS6yS+4#xLt7P9Eq1XaD|%LF`_NqQ(L|7RLBxz1YbEoje8jFAWkaltSGF zcp{AP%X*2E2YO_E(bb#-@hgMak11*ugEBY9)r*}xP>R)@0r6{t#Gg>sTn1@cd@{(L zDzR1wiQ{mMxv8k4KyzC5Zw&H&N*VJQq?z$~9@NXDd2d_tG=uxCLDsNHo%NdlpVeV8}6X#<0 zE!nVaU`=2D{%7(2yFucwDQg9TGB?cCORSx$JdvnbOa9Iv?l%;49D_6oKN;ap6^B!E zYDc9Tag9SznlA&tHwgVL1+8R|rsC(JP%pH0a!yOAW{`g{$lFKvejI}`H^SA+(+;xn z)lTz8;Ex8ORf=25AkD~6M!0&R+Ck!rUF+9?KN;lxjxv@pNK@pKA?{Rp^$tn&wisNy za$-qs4g9k~;O{A9IfFD!J`aR?fz%f{VxV-f1vwb$skRUPlmZurQw}eJ2$32 zyvA~>Il})R2AO}PoD~exO!+($>Sfm6ixZieA^z1M?oV{*D;cC|@_8K8i_;9Tv6O0# z?f=an^Usv9f4f^m-P}G18gML)`+#c|AgxQv$JfXNIyqs+C=s5R&m!Vn|Lgp`~T0!(>VaY zr1}10bgsXhYWq*LiTBHNo6S`J|7WY%doa!O|4&wN`=4lTKbrslW~)sM&9I42Tw)Vv zPPd6~T}(9t(`@307ty?d-8S(@7uv)NyQm%@YZGr#>HGltIhL@AhYZ_9HY&0u|8erF zsJoXvTR;Af`Tx7M^ZyG5PmV}W#a0GoZkVh01qKGJ`Z%J{jif zB{p7;Mxy3SMUz3Cg(9{xD09PHy|~5zdnN{`siiU-Bw8u!WCm&0d@{_{OKc3Vk*L|| zvlzrl6tR^-nH%Qn#We;v2j}|Ndp911rMtepXEjKaDT`W#^F$ctm-P}G18gK}*4s9N zI0r>+Wl-jZxq5Mp0nTn2U~5gaWRU2jtdkj}IrPaeS1++Kz(%6x+m~z*=cb6Q49eUv zS1+zHz+}q+TX+4~4H7++bu#rnMj{Mz^%5HcY$R&VR&yA{DHO4lL75xo>cuq%*wZq= z*7M_>28lk(I+;P5QJ)NR^%5HcY$R&Fn79n$LKLxzL75xkP8B!t)pF^IIR~yPb{hnS zDQbX0npmFs~D8IA+BCp*D04$x zy}-us>VcYVSj8YM&W8tO218uEw8rp~&EaWQfj)!4b_y9_ka`F3K&Thk7+yV4vj+4V zq;=ALuVRp<^yg_%FRd}Wp62j0E5Lw3V1n*`fI&I}%LAcaU}JdoK+XCuXpq)L_q~Qe znr5G;LA|ub@a8nj-8IczLI#1|boYY{(q#KQ5b6ashF1^Nto_0UY18Sx*Dy%)-}5x6 zm)02G?1|yEuKXeffivjt2N|RZ@OdEA3v3Lp9;jLOMGevpru$yQAkBf#)1Y2jV|dAl z;kB;%Vg`YS(A^I*NR#06K&Thk7+yV4v*v3vNIQ(~dkup$3qDVSdTEW}^-K(}b;TDq z2t1tbevm<$37-c-y}-us>VcZ|Ub{hBlJ0vIgET)qPlMaprPR{virV(lgw*rOO$P?~ zJhe3U)WC)l_CE)`!ys@r-TeTAG)p}XgnEGSbz%IC+;!w?W*Ibmwarq*>s39Mp@`3{iVDmwmFD&hMvfe?~v^ zwC&$MU=v^cl~p`8ZWH&=w*M(@HnI8(t2jdY0DSbb5VeVOer^>%8?lM&e@6BDVVii# zPpzVve%}8Rn!`UtH3T&O|FWP>{3gx)x1F~C|44QJ*VFcYkbXWz+y8TE{{PR?_WwGn z|F6*Y|AqS~pMEYq^n*iU?jiQKg)Qg*kABP|mA(9JhcodT=QXka_8Iwf&Lo|@{r~To z`11eLGw_?wF5m_p-~|fs0Y3R{!XQF4A7>QT#6TN}gLcpXIza-cpbM}BApjAWfEieT71)3TWMBsl z-~=w<1|HxA3h)6x2!J5be4HU%69y3w1u@VD;-DRLfKHGALJuJV6EFh{umT&9fDG)w z0i3`E+`t38Kmk7B2LTWyCLSlQ34;iTf*5E6anKGrKqp856|f;f03t8}Gq39KZ=&zzsaW3l!iZnvc_uYXTq$LLdwxAPQoj4a7k^=m4D{0aVZhx&a#@1Rw$v zFary)0vnKk4D7%GoWQ)dk4a`5w7H-w48u_vRiP>*`kB;ihBGWAy({SAAu>G70cX14 z5n;F>3KzD)W7^^3PMA{RQr1KEi*UI(MBe0tc{jYr3-61-$71k_PWW_!q!)_l#_!Jy zd+4GF%)km{Ux5oy9)j$jEf&fa4`zn zKs!hP6?6e%A7KJ!U;#ED13Pd4CvX8bh|%9lKaRtncEF!^;@(91H|e)l_&W*yp^LN$ zo^JXnU;$QO19sp5F5m%P-~)aT1R*dD2@1nSiI8G4E;@0s!wnM(><+*g z5qM~nl-U?v{6HXO5t#7%ZVUXZ6<64Rgx|m5hX3M&9|d4J1iuz0N%B zE_UML_k?ls2PU}J0zbCFAIb114)`+{{Dqs8y}0;mAN*|qRzvW25%`A~{F8If0JGUI zchL`8bO)Gpl@}L-xR?vW>!R?6Hh5Dzyrm1?$@Y<>BD~uS@3p}PWcZK+KH`FpdEgUX zQug8ElL7d26uzL)Hh}awA4y*xhyZBAl^?dlkK_dTJtzF38&*6dtpEuh2!Id>gBWNB z3D6D1Ucv$-U+Ue-ea0i@;w-Nm{Ma#oxqnu>%*Y zow%st;_n+j={N5?#kVtW3vUQEe{A%vi1?4^`-KQxfhc!mZ=s%d7=1x z=6T`y!gHzTD$nMgRi7B>{Nr_`s)PiCJ~pDY&Ah3Z&-EIC$wBKw5; zMCtL&asQO_3!PJ9QssKnnP`N*UfAapy zeYyKoI{!a&uW)bip7cG!J%zi|cMEqH^O?MoFO6nL)zR`@xx12gRqo8+nYy!jN8yh2 z9hKX2bpC(ow(M=nZN*#Dw+gowZ^_)E+)}zZd$W3T`KH`W$(t%S=5I{hSiPZeL;42c zhT`?<>xJtJ*QMzE|J=37YsNQ^bm8>k_RMx=d+D_7Y3ga^Q*);#Ppxdr zZ%b{fW(t{fM#vP0GDFHx>6Gj#>M7-u*~!JNnXSs!(w6KNbxZlAk&}`qRZh&Gm^!h# zxv)9CS=d}WA#;LqLTOWWle($AF}E?fv9ck*A+@2pzOX*Meq>#8U1e>4ZE9^bT}Y?X zLb^DZ8B_*KYqD$9HRaX0)ydVBf&4&fpt`ECD!ocrRXjd(ymEZ$xa@K2apje4WpPDj zg|ecwJiA<7US5`4mRwfp&-bVLt9^yObf3^yT$)*`EG;d`E>V}1Q@KM~+P%TRA3wOzN2GqQau|B4JT+VP>JSuyl0xX!Ypwg4}}Sg33|(qf$pzk1QOS zK2kWcI6pIAnO~Zhou|$#&t-Fqb24+3Ii=az+3M_aGM7vyD?Rz1R8RGY!V&2sgd>Wx zGP9IfrJ328>df-txx4SuWiZe1Z zlo_Sz+3D)^^0eHvN=KrP`{oLM$B2LGxf0W+$XWcP(+AZ4p1p1Gm5Z{ABd=CooJt)NYpb+1K zLVOPj@jck=_h7T%g93aH3h+HB!1n|I3h+HB!1sg!3h+HB!1tg4--7~t4+`)-D8Toi z0N;ZGd`|+P0N;ZGd=ConJt)BUpa9>40(=h&@I5HN_n-jZg93aH3h+HB!1tg4--7~t z4>tQfD7^Qe@ZN*Mdk+flJt(~Qpzz*#|)!g~)2?>#8I_n`3JgTi|c3h(LR z{umFJ=m4D{0aVZh*eK!g{&e!QnV_pYDhMQqAP9jlh=3@Ffi@5a?Vtm6f&>tH2@#lp z8CZZ7*nk9NU}0mSiN;o%WxU;$QO0}_yd z9XNm!xPTjYfEOsh2mBxaf*=IKAOfNwMofCNZMZ%T+Cc|kdkF!Ezy!>|0<6FWBp?Gj zZ~!N80XOgfFHnFF_(1>!K?o>gzomZ#eh>gbV$!1x;rcL$fGCK8HV_BxpaXP*1W-X2 z5XK1+n1C5rfECz)1Y}?b4&VeX;07Mx1q$#1KQZai25@~4gg_WXKorD48;FB;&;dF@ z0;quPCIlb?6EFh{umT&9fHM%U8qfHUy~v+Qu&-7)^JF8bBu z1|HxA3h)6x=fD=WF5kYpnJdQbWiD}ijQ(NlN#+vvJx$k*KFeHe{3W^r z_9}CQhTmW=`}mv86&QVsxw?nmX0AlfJ9MYxM0oUF=5i(8XReNYM6BmibUO-?Tqgc# z!t4fm-YL}M9=w&F&waOHxx9lO_};tdc^|otUfSLV=q5c6(Q7gKFg-gXkJ9V2=PA00 z_jzL93-o6_yXcA8Gfwy7eVrDI(H*ok$?v~o_fGl~3iM3tp(Hnw{OoDG1-CJ&{tUMd zo=ShThfosR=|$){gYI|iEV?;0knyN{E?}M+>_U2phA*a9ariQNZila=OM}Up+pf?8LqL+fw-pA6oo1WIu&(aXs=V|0)o3MC1MKhA@ch9^yB!(Jw9;h&^fM zl7P@ls6*@N(lBA!vx8Y4a>e=Wt@MlJUQzp7y6lmF4D7%GoWKQw!yhuMTXyf@e-NVI zJks#@=?{Qo^p|v75ZSk$BB=7Tw&X|XcDBRoqm1E?9Jsv;xN&bHvGR(9OL z$#04qcz}8EBxc)DzmeefPcN!E%LvO(si~c>&tGKZbiS;-uG?zlOR3^Y9mh2 z?{e)GQSnc4T7WH2Q%wDzu_#MJAJCxp5)lvuG0+C$pdEC8PLRMtqk=Bb4W@zVUHP|ny@d9+-uJ8T72Zp~C%jjDH}kIYZs{H6 zozmOcx7D}HZ{^-fzEycMPkR!oZxr50zahL)d_D8J@_OmD>}%?4#(j&r1dZ)0ncunRS<(ksf*{jv7%R6#Ak~=C_<*!OzRlTxsW%^3t z%KzGaf%HYfMa2s<7b+K)vRT?Qkf!|t#S1bQ6wl9`uh4#h?0M>W<#TiACeKZsQ$4$I zcKYnhS;|?ZGqY!^XO_>%osm4Fa(e#s)aljjh3)C>!uH~6nbVZhN~dN|RZlH%%WX?; zW0Up=wY{kl0w>klT>lP+6Z}pITpCS6G)`C#);3&8$_{meSd@nl2CK29tx8 zHTgBEHPzLH)#=s3>f%6VKp7~l%C73I&jTPFS6rD{sjMum$gWUVl$Yn0Czn^2<(H+F zRr?G5>3*TV*q7;3`btZ)OVy?2CAlTZC6!b@HPoy0mKJ9htBcFW=Ke4C1&qu~&a2GL z&rQv(&MC}E&k^PnXJ=+BvrEZrQcae7ay`kO$`Sb^Qb$y06=tPp3A2hbGc%Q$rNgs_ ztB02l8>4*y!vA0nfZd(hPPMb#k?TlyRNC|HsrG8T5KqU2c(E|F5`V0QFU+@=w8K2@SDOp8T%HEte>8*J3o|LER zF3{$;;4Zo{F2z-HW}T|D?8rHij*2~RPuZ(-K~BqpT$D1BB9&}en`$dtbJnD_V#!-l zma4g6PMZaD(UdVMrjnQyRk1AOgrvaON9SDnr#PMeFV?sJ`T765|G>BX>*sP$GdMZo zC^{8lHG|Z)o}U~6^-hk^oQpBJ=6t$A+yc7uH4IYIdL9S$;xy-C9I)VghC$}hl(3pX znH%QnWom{vx!U|7gSdqhw1z>M8|Lc8X@+>fQuBiiG8ge7LYcuZS1(gD#L0E$hZw{i zLlJ8jl(}K9UYur#2P`r_)FAU%N?XmK%nft(GBrb-Tw#8gLEK_KL?|;D=IX_1hIqj8 z^1}@>dnso%gEBYF)yvcjadK_>OoO--1+8IF=7za?ahf3>u&{iVLFN)ZL?|;D=IUi? zhB&#Z{0M`%Z&SpH4AK-AWQaReTIHi0r_HMy6(na}46XPj|kRL75xo>cuq{QXbbhKT*@}Vy;2v4=8O5gEBYF)yvcj z5$7k)Z&_yM8N}_Spw$f0@qRMIohok9LRxQdtvNq`zCmDxLe?-Sb3 z*Uz0Q$-x{Wbe2tRSOgCmj_LpO=;w^5Q*zswr_==0_^>omP z?xgeoW%~Ibo&Vo;Hr4%8{r}cj)Ch538BCtnpEJb3a|Chwt> zuj(2uURw+vs_tJ=st2r!$TxQJQ!z8rRGF zU)7PA)ku4&e(1owXDzeQE_!}f(&$Fov+g~C#t5SPp1t3q{rbQTgyG*eUeCr~iTht= zI?z=e&Fp%dW8x7u?#nbvM~-So6(X(wTD!_V+K;EzHmK17G60z-6Y%DjgTO-9h!;_)4~`T zqJ=R$ObcUlgbq!4M(NO0aO@ts9S%*2V{~ZBGx#9AKX7PD*!KuM(q1|=W!pnX6}tut zblnIYnzD^PO@DzyQ^GhMnhGXpp^XpHLTlMgho%B!uh7HT`zj5qhnCz3qeD~E6K~R= zCFszUvgd93*Rgjn)c0saV+8ZQPlFlz6y3`Z4mGe()4lBd4E@8t-E^m8bht{w5rxp` z7wDZe^hLVU;l#viT05j+9ho-ys>I&uldm$59W?o>=_7|szRK0xd~-Bj^1$HXlW)~N zJah6@s&`^JZya?^95MM;{;|!>)Xf+C1YMN9m{B6M`($Re_0fk_?MRz*WG&r@uIR2G z;&IRwbl|D>cgpZ-%v?W`YU??ZS)#5ESM9*3z|Ns3$a_AX>tP&ax`y1AuxP`Qnc zQJLugv|N9iyZ4>SY_a+=C6V5T_{SCX!%+g>jj`d4Os;(NLiy@Y$15Jm|97!lq>1Q{**o&;eZ?62Qheca|fbaHOvXrgO~ zj*okRn83$HJEd zS6^9}=ocC(VF6ZP0}_yd9XNm!xPTjYfEOs7!N-}!js=sC(nr5~{2%~=AOyl70&KfC z<1bd!j}$9(Xq1+!+DC;QM?}>z{)X-ly=$wY)6`3oPD@vDVFIO*5UzWeLbjfJFzM*y=gK%N7-rqob z4nyhO?78Z><(94nxwDdIRj9Thb!PR9!Wro^gfoh#XEc=!nNyWhOWU&B)NSQVE|bhu zhVnzHq3S7xQ_`mhrxZ`loUEK&s`oU=oiueXgTjXN2GlX6*X7pcTFzA{P}PDmAgmIO zFCLena}!2Z3@%SB+t;^y>FAQ7R8KEkyyuwQG09^pi}H(7i>eC?3)2gQg~g*YM=M8{ z7GxKw3(803j!GU?IWm7_>d5N+!u<4nVSaI5W}Y&yG&eg}om-xho0FVVnVp}Vnq5s6 zlIf(7EcRr2l%CQN*(1~=%CmB_lCvr^^D|R3tA`g3PaiHEUOX&wm~vR@(Cne=q2)tz z`_&$x?w~wvjA{*btD}jb&Yli7sh@xl+Y=cJ4^!`ebP#<5RR2C@w|CStLH)S26s_E(KJ;>v z`q9iyS|+fMQCbOCnBYn?JkA1-x58DZB$oyxxEi(O(i%G)big#q$)&X}xXumNqoQ2e zfRb`)BWlW}O(-gtPC!+;v>9dP{UdxtAD)Qva_J=0mrGkvU@mP%g}HPxO3bBGP-89) zp~zgypvqj@hVpXhRMeMCr=h@H+Ma-?tMH62cxE>|i+Rbj1$d4K&qblRbRH_rrSnm0 zE?t0Hb7>gG=28~b=F){IHT~HTl%GpGP=796jRJJ(8dRW5J5hozji3fy%Ap8dx)#;v(sd|5m##e3UaP?yF~qAnFsqb@y(;&kaL zRHsW%qdZ-D2KDLEvnWuPo>;4Yzud(ZxDzb<_S1?`5tdExtEgp{zGi`6x59rzIlJ@? z34T+C-$F&Z^lb;(7{+%{+Ae+91;6Kp-$!-3^aGT)OFu+?yR;Vt?otI6?$XC7ZI?bl zZM*a%6t_!1Ms>UN6O^}0KSh1J^fMH=OFu`2yYvf`xJ$o8jl1+K6uC>kMwPqtn*{u= z3ik=aWL1R!Zi2rjOMgMddt(^?fy#I3uPA+& z{)XCj>F+3hm;Mvg@6ta|{%-pULjk-bpaNbJQTi^KQ2Q>KQT#4hQ2j1hQT{I3Q2#DT zD1euE1-xWO3B2S$4ZP$;5xnF=6};p|8N5V$r%0~~l`iP(hJMt-O924}MHoUkyc9OW zhy_NiWPKc8iP>;f8%pD)xD4CvumjccQl}FpTu^nxE)VSX!f6Ve?t?S@@Sp%ZI0z33 z!9&CFun0Un3TMXPtTuQ=9QL%sWCxtx3Fjo>Toumig7euJd87c365#?9*%-#rW?Z$< z0vB1~F*bOt1Q*M&*A7z-xWoyUx?rCh_IuzmFI=v`6+XDq504ALIhsD zg@ZAeZi8#%a9ulG-vKvt!i@>INrfk{adNXjHimJch^tOA!7XOE)dEkp!c%N;NP-y| zZnMKv9q=?K-0p&>yWtrgc%~PgrNFa&@EkupHvrEI!t+D$f-oG8z-$y=7=stJ!HeVY zl6H7$2fVBkUY>wgsAOXpSF$~H)l~xAA;POo@ESARX@MhFn6traC3u|-ueZY+9Pmab zyvYS`cEejd@K!IpO@X)j;2nN=X8_(6grgyt55v17@SZ5VHwN!(gZIbb1MTp^4){tXmt1il%CZ^hu-ZSb8qe7Bu!4CB2HT=jk@{8R#d zpu$gg!OwKV-DsXCmC!v;`YhV#NuNXiJn8djpeKC+9rUCxqJ^IHPw1g1eF;tUq%Wh3 zp7hUXqbL0f`shjjiUxYphv=XueFZJ_q>s=;PuhbfdQur(^rWw%jh^&1^wE>Pjz)UY zzoCwdeXPhOi%hYy6H8B@f~#4lfH|#deZmMS5Nvr8tX|vKxaMahiI)Q z?L}`rse3Ur+im8th3wL5Dr*r)aS!{R}W zHha>q&|gpbH5%+mzd?sR>9=UHC+$OzJ*kQ&d(yw7%bxT*wAqt>k3M_SAJAw|`Xf5+ zNq<7CJ?YQrwI}^0L^g);A7Nbe*9iPu6#hL1|FaGLBTm{rV(s`v=zwA;G$o)}g_bU8 z6?#dV2qhDg&CqUv4l8uppi6>o8Pcv^((8bV6Z%}x?}h;n40>Tmfngtv_+d0a*2nQt zEQqVxLNFeN?Ge}!g`F{&XoG4TcD2Lq4mhn7PUl~iKcXKWsch^sy`QOkI`?Vy)1?nG z9|#{5K9%}Z<^A0I<5X8reK-GZ^4;<~S*j~2zMX!%`c|H*3d(P0-&Ec#QcXdXW+zC# zUZ#oyh2|zmQ%ymRW+o_6pF-i)9_mq;-KFd*zMQ5Gh546~G$%op`V$skNWV~hKL333 z`SNpF>Q7jt`hw~+d8#ldKb?JAdAj&i`l;%Z`6qW5G6kVf7)y;+sK#Lb`3OpnWT+=$ z;o;Q7m4|ZFk+4Kn2Eu~{>PJ|)KX<=+|KNSqd-L}u?=9bxy+@&5glVcb$mf&Pi7-pm z2F1J5)Q2!nwFc!ovebpJNRV_vReUKTx_ULlp)Enth;hLyqbT zO4nyv<{nV5E#)%Qd9W~&8mZ9C1M1EaRTl`?6s}HPJxp^B6t7BCT|u5^94KFrr7iFx z%{NfJEPq*&`VD3;RW2=FlBRBh`HPbmmoLg*q)=F_1ZJl;#&G({{MBtw^&ARB0(1r*u_ zPoG@fn%|n-TBf-L6zVIOKB-DG3nZzlV0N=Y^9rP?r(j}JiTVi&8w)g}KxKVyy}G_c z{RD+|1)5QyLfr(_bcyB@5C#iWJy4<91XSuIn5MY|^3+GLe0=u!vEx$5RaWL!s#H0U zSs|<_EKgD0KyI13tkj>Os)0gZiuwoUsAizFBtzW;3#k;%ACRNofu+Tn#lqsAW6RVz zP&uYZa|cwZZ(wp^nPv`9sB2()L6znWNK((h?2!u18jz-rfqAMHDAU%vLbC>>sbgS% z_HODHC?pFsUqI!E9Bs9iXtn@hR)MzJD>PStdU%Pp*oDIiho%m#(Du4|Na^6r!NS3X zgHi`oX5?n5GX|$ur{!smfO2=XTj?&+3;|U&uO`(p%@3d?ik<1sDs=};c9dy;0EM>Y z)A1_J4v?hIfZ3Qra|7&+WW!UdWYpc2dl)nJKw0t$fw%?ePVj)1DKL~{ZN zO2M0=dVriqrEY*3ss<>yQm$c|3!q4S0IO67khGU+YhR%%fV5PlZT%$G0A#I-wP;CG z1wh`MG?z_TI{&{Yrp2m|r?dad^cKJUG5?{RwEf@Fy8XZVW7a8D_y>Te7u)};mwuQO z-~)aT06`D}VGsdP5Cd%>4%$Hn=mZI%f-b-Y2?2<}1kAt!tiT2&AOkya04G6@(1pux z-~nEs03Yy!00@E*2!jZSf*5E6anKGrKqp856|f;f03t8}Gq3pMweWIhYiH`5a7`&%uQG985tF0+`Rig!vpyn9sq4 z`5a7`&%uQG988$c!G!r7OqkEXg!vpyD!_aWCd}tx!h8-U%;#Xjd=4he=U}n`%;!Ll z(1y#H(ZPfn9ZZG66HN04uNo3CO?>9KZ=&zzsaW3l!i3eh>gb5CUNk0Z|YGZ6FTX zK?mpr37``62)l5(8!#^+01=pg8CZZ7*nk9NUR{ z!XN^oAV$z5Y{TU^Xa^mj6C{ApLx{ix%)kPyzy>5B13Pd4CvX8b@BlARfDiaV00cn@ zgh2#EL5#p7#N{|>2OXdjB!CLo5Fr2&n1C5rfECz)1Y}?b4&VeX;07Mx1q$#1KL~&z z2!Sw&5cCM6xEup*AP(9=2j~O|paNl-5P=DpfdyEB4M;!+cHjU`-~w*o0bZa0AMk?! z2!ap@6Z8lpxEuvB&<5h59dv+BkN_&^0^NX(5CRZ^37CNeSb+^lKn8Z;08ZcnZr}l4 zpa3866Z8lJxEur_5C#zt1u@VD;-DRLfKHGAD(C`ij1YhbOu!5*zzS?Y0y3}z2XF!x za03tU67&caT=oG!2!J36fiQ@GD2RbJ5C`p`19XA}Pyrh!1Rw$vFarw+jxM9*t`Pm8 zRS*#YQ4j-dAP(fQ<#@D25VQdmh~tC=+#mpAAOVEkgblcWA4EYXm=3Ia2`BJ@2>(UL0b$S%x`BBgVFz9i0&&m<#KcM(7I1?A zh=BwU1_>L84<1K<0Zc=L3_KtR+JFkgVL}3K5CAcd0Ky1i11{hPQP2t4IAH}&-~$oR z0j2@V9>M_>5C-j_8<_VIcHjje5C>g=nTYW>GqjytdL#RW`bPQn9BnCAUdz9hdaYV4 z(6+KrERJW!71~dOV%X0FxaD=(F3tGQN_pM0T0+s&!x ztIrjlOFt*jmUHG=g=X{1KBLmMbMEOR&F7bYDn(n*g(uTb3N)i%rl3%bes)aN)ah3r zD?FBdOn9vLXy#Gn(Gs86ul#WC;UsNI=O0SZ%zlLj)3hyJd?53H@<8eSENxAf?;E;L zp}GA~yI;O1cTe)3%H8?9^=kNc({{CbN10~#OWt0gE$h^6)msby#rgd**DKeLU6;O2 zxUP6@=30feva>lgS02fYBxyT4zcaP7dQIV)G;L`Yug+YpTwU6c-J$L%UzNKmc~ynB zw^LVEuNb)^c}3;&{N*Xy;x1g4zD&5Rcxi^Vxl5O1FHtWkU!0?@?#e~^`V4>R3vmoQ zlT~PrzwEF&T)trF0_B3z`B|FfuY6wayySV6bMrLMU-g{AIq7qRbBeSDuAE&uD|?oD zR++ZJ_n+&pcYF1;!fEN#gwu+r{@0F)XSb@fMV{M|+)_Cye^TP4JtyX9o4m3)zd5zJ zdP0G=%7qh(n=+de+A_~>R1NC;*?)7szud~?%F2rTiqwkg^1|};^1c6s8vj(P+FR&N z_X@p5+GbZ4myXRItI~Emj=%3-lwG7QDlg2@mV4#s{L!hSs|yOW?Jg`R9+f#tIjTfk z@9L4|`MLSY`4!rJPtB{&EzC{N73%Z;jm=Ka7G@V|D_%*Kda^xgPnovklSfo$i-%_pS7=*4dzgAy`Ow^$%88gCKG&V>u5{(QQvZj&_l|GlIPYV zo$q~q1AyFxfSufX|Gl5rpO3x->3#OQv)G;8ot>G7p6iQ7#*mCsGD}bP<;J-GUH^x< z|D-_4zw-Y$_CHC_{CO>Wndoolb)xmU3#GK2EzK5z|93+Kvhu7x;FOZ-jvwr;pRlH$A$fbv)37K$Yc112qQv zIPFx^MQc0fz&e5N404PxP~-G*+WDr7);iz7q(F5hNtQBD7* zn*^$JdC@?Pfj&+<)pXI?&MmN6;5&~TBMj6yeVlf_>7upHE07VW&L_!I25Ou>PCM0f z(b~=_utngzfENwa80h1)^Gz46bv}Wu0@cN|`r{d>ar!wssp^T`8{_ZBPCWe#N>aZl zg}S#fY;v1GcL|A>Gf?C7bK2>g&Ea>@S;pUO7q~7Z%P0di&LC$eSA7&ZiZ(X3Ax){O z>V-3B5#1pWUPh`h25Ou^PCKES7j9Z;Nu#z?V7r1m;|$a|eVmW5_AW=WuSl0bDeSAiM>eVlfx#%`Q0m^pje$pYIoWLU>Q zjnl_zXR8-%jN2@!(>@|lT}P6o4AeM-oSjrN2jtex8`f`HJ$d-qc8WlFJ*kdmpvD>G zv=i3%RF|A4@ZCtJQ3h(90Zu!g zi=S>ypXH!DT_C%OG;0{BaRxa%$?)CL?Elk+YYtUjJkM0VT>|CJBpYL(#u?Gv{RZ3h-U%w#1>}? zY`1e8s4>vb*~vC@r5hWYK03|1vjn<3NU?^28mFJrPFKIuHFTCU?`(nVPO^+MP~!}6 zc5>m&qx=;7N=HR&9-EfQEY1-a?;_V)25OuEPCH}$+~cLgp}EL(BAhFb-OY;!Y77i; z+R04CYaW@FNi5D281Es=S_W#I0Zu!ksd%jqspku11ug?M1_n7h$!0DK^bJmDvptsY zPwdnG-G8M48t?xDhx~U7RQc@hJLKOUrOLPc4UNTf0>G z=WjUVs}xms($6PkRbKo$<^GdYd1uKX|BR{fb^9H1KmB9}82jL~*F6S3|3BJz|Ig?D z^VFaJ8@HGj2zKXvvsBs24?RICqR+-+NmPFDQ3TzLM=L807oPN$uwwYRG&Gc8d z#C$4zRG@p1L@OAmar!y!boE-Lp|i~5bdkXI5Lq@cP~!}6c5=;J&*>cBlpd|$t(dPs z7Ylq3lW8*pHO>I1op1W2<37v1*d+qlqomouK#kMS*-2*l-e$^{!l~9cC~1r-|F2U+ z)MF&t$Uu$L&uOP?d~bD~rMk=sTzknf$v}^I))Q{i;>`E^M{=i2RtqwvRmP z8AzF4 zYMg#fJ7N7>YX~icyIkOUnime#80hD;bIla4d5v3YzWcgDAbf@-8yKi@`Z?`{Gljz? zZmH?;zf$0Ojx1XksB!u@JGm@}WSSq6$CwYvs|2>^$+MM#8mEub&Nh8WlFc#|+|>fr z3nbajK#kMS*-2$NB-719a*6p{yG9^(=Y-6Ct>F2Z)&J+%Z3^V)HyrJG^S0}kCgTGi}xb4>t=!LEwYR-P~+4&?OeV5 zB!J6uPjZVu^foDuWuV6C~;0CZT<9x+wypNt3dY-iIy@@FV>>ah;`L zw+T$|@`8aH1HGJfre?vKN22Ay^mc*n)1+9+K#kMOX{T!z42NOLR6pJ!FnyjJ+Zd>E z#yLBg{LDWUt{)oIQn_kk+g5(pb@=V%odWF_NVuJW8fTo-P8(>awcL8$C2)R`Y&#jK zaV9uBIRh*(MM*vBz7mbH(?xC8o0c2Qy9MS0qi5`80Ya ze^r&gutAmAUa!jEf7u~lOwa#a^z*?#Ipm`rbI1q2O3(7&amdwqs(cx>1IYCAlYixq zkN6LV{MoNKN3_oO z9P%8R1Mt%ohde>;0N+1AKAQWF9dyXMj@f+D5Iz5YXT{9>e`DqEd7&DQTK5R{X_V0Q<3|{%aV9wJylo2GdW-&$K>D|&JC%VN z=KyCXX^;h{;%y4syyjT$)gKn9zfRIq7^ra$aN4Ou?bVi>_D2NPZ}0+x8UqJ7?X2wz z+^m)@ckho1)bEq-6b5RX1Dtm1b_K@aY`(RAOkn*x@}0myjWf#G$?9d^sg}d4-TnOI z0_itNw}OEhXOz=UT7NW}zLPoZ#{LO`@mu6dGf?AKk%Z08UtgTcFMzw+B|+O_x$?=-hU+5N(O42F-|-0 zVMWEkn=;+}7X`}il57nFDGdj4kh7CA#6pcb;x*g1j%_`C-L~{v`mkl9&CKIZ3C!Ok z+gb)vG7fGA?acMZj>FBC@Ahed_WLB6U?3&sASO9GX~Qf$HNY#yR&BFJwmhvqBar`q zgyRgP>>OMU+R5t&RvWpc(9a6I|4fz%25Ov1PCIY=LbpAtpA*Orl6IVdlp}&?j zAtpKPyzL9!w&(Cm0{M?gNa;(s98B`hcJlUxZtX_=DS`JVNoJBDp!tG<&$n#<)1E9 z<%@4q<^P&P{ReiavVIP=54@$y$+K1Y**8^r(Kc0n_a;?dy_NbCJf+Ipwy5%VimH50 zT9yB8w<=$=ncn~JQ{}y1lRd-q{O?N7JpT_Js=xoYTv^)ohJIDBbAC>{Vw{1L_=WEr z&~E3n|594JM!zQT{(>wM45ZXA+zZ-yr@s_Sq1*P8-Y<~Hw9~d06gNfYwwF%}jK3$>b_QykQBFH!YeAd0 zLzd?6&j_@C-~|OW21YsUw5N=EvMD{CR=#Pvlz1K#eoZ*~wT>1%J zn`EHI8RoQ8)+L$zzGf|Cd00Cjuzo3nia^*ystKAd5JE7<*-40IL31%jcWfQq zR3Cs<@7UaU_4ii-t45}E45V%m+zQ%R>n&yV8lh>m)U$srQ1+2vI|DV&IA7cpzSB&4hCwRaZWp}`95=6Yq@rQP2hBqZ3_c6&KPGWXX|&m zYSU8uUK3H}_s>)1(`g*QFV0ovt5sEYP#eGl^!%T= zLX|%?Ta}kwuFCJtqWAxosq(jnRr!odRk`L>pBo^oZ>QHlOz9{LmI6C!v4AK(W9 zKoAH4VITrTffx`65&$NoqSR}IBp^|XiyISCxiKM?8xvBwF(DOYKOZcI<*#`IKfOi$&; z^i*z4Peoay2$-CTQaBMXIh7leQ@JrYmD>Q=E`kKefC6*@-GBp7fgV5udVxLwlT*2! zgqE#!;qPw11L%Mk@Bw}x00e;$5C$SZ6o>)+`+h=e2V8&~=-%~nL=eJ26o>)RZh{O* z`|t@+fG(gLZ~!WyWovuzcMa$T`hb4G3Ag|^-~n{N3-|y(5CDQe2nYiaAPU5QIFJAa z0JfhX0WzQfT|hVB092rd(6Y4}{@x4p0sVjzZ~<<>1L%Mk@Bw}x00e;$5C$SZ6o>(F zAOQ>jgFq6H4ib6~{ffLmKi~vhfE(}-TDDfl-@Skj@B;y$$8(5wI?xOB0sVjzZ~?SF zS|^|bUcd+VfdCK$LO>XZ08tt))G;d4j&DLu;6(@jrU;#~}VF(I3@FV_6^m9KxT6c7KW1 z1MzCntOneZ3jN*?mf*NZq8>e3yTbRJd zdM?5NED~=lGB~qHa%K@XB;LCbZO;R=pZ@pbvj6Z$i4~{3-IrujIklW zzxxNY|AFp(2kF=X!h3#7B?ktls9s`w2%h)bafHBA^G*fL@>v=m(sDhUBolKp)T#H~|;n20VZcXh>5ZomWRfVzv4&GrBq&O1TX*$0!hH&pXmH^Gn{w< zoL@m8f^#Vf$nR&FI^0N1o7{gEN=xt^JcnF>yz6|btAOynkD>qs>u>Z2x4i!|+0W>o zDStZmX@h3y&%c{`H~WtMPWkQJ+Xl_hpMNX$R`t!on`xS(zxYPx4e5>2>sgwmzg)_d zj8cW>=}+yizE*fG{aWqS;;WfgrB_R@WNEhk^2@oGjh8E*%F}%P)t3q{rC+MOSfm;I zr58&tWM9x1S)t6ragFBhkG5*{AiV%TMK=GM=gw^TkxL zy05S=y|1>nxHq#`+FN=u`=tJ4`H9>U#uJst^N*(4EG6`U7Q}&EL4ca$o+w)O}T&&p%zL z?J4fb?2%|j|Lnc`z2#5jK4H+D{`q@S_f+pL+?}Rb{fl>H?vm~*-I=9%{mXac?lA7C z(A@s1+pD(~ZcE=*yR~?0=2q#}(kRX`hWz!Z>#Nrlu1jB6qd5ojG{3(@v-@YS(yuCCnY*$~^9*J$FVOsg zsY|mT(?3>j%qv*DBy)*$N$KM3#rnnNi}Z_{`StP_rY@|{C#auaJ}-A(_FVnk^f|e+ zi)Yo&EYd9g(iy32o@VbapO!n#IIVJOp62eao>DkvSW0soxbe7i>Uk@AOfA2MiO|NN5FlIk&q zW70IUfAP@>~u zU!0YhCCw@gXKAMY@=$Kb7^)cil9{AL^ZaKA^}+H$Zor_K{_}}cq8cy6(=^wAF_wu* zu~IZkv;CJNxrh;|(2W17a5Yp2r9-vgfk2Mt`>*)({*=G!E6|MpHE+?I@k-tj&H1nE zWlzpycq%mOf685@1iNWh%~^D2oRYKDpQX9~57NB<>E4=F)H0exGyi9M^q#VsQw^H? zKkrC6s@;X|G|m2B?8WoO+*hwqzR2IM^mch>4<~A+2VkMU%uN zZjmS56h5g__+*^IC;KQo)me*Hj7i*8PkIpNMO*@L{SUb~$t3RJNl0;i#0?_O1uJ&3U0Ko8GKpJ%5>j*k(Md$R?X75?nZ(lq2`Mg!I0JDW zSYrY!nsp}em_b5{4k21PNYT2z6)i!Ncrqa&#f1?kBhCwJTwp~L(j*>fNJ!BUL@S8) z*;~=-G>NAm5>i|gab1Y>!_xqQF6# zvp%@eD=kVK_$G_&bx{)gHgydJqPcBJVD}-mL|XI#TcWJ&mzFqLR9Z4Xfkx}uP623| zTM|TojDRi#xDYT%0r3vC3&o)|ZzM!QxT>kY^Z|=?TRB&1UL}Tg8(lAdT8&5=po*`p9g3^&p{jD zoG|U@IdR(0a}u|$E)1g9Jh*rzxF%m9UNw{1i;c_1dXBsjr z7mhz~r84=CXx)pn<>W&H>GC*yJ@ECy=l}D4?N_SM-sI)Iq0^CtOb1Kio9RH&JanM+ zdgwq2&{4gli$dESS!i}%l0ZN&0{RdTL_jwM*c@4CsU8`ixRE}J8|kOGkr2g=I4G{& zk%d<6kwFCXBfyD(FalHx=zL_M9egB-Fek!X2#X-Br-KJ=<|76ITnKO@Ac_DDp7z%! z`o7T0J|gX=FgLfL;ZEghsfeNBkK zdyJ(%L?jU*A)+4?6KDR7xY8@f!Uz-3MfT$Z4~*@qp_6oD5d%L0gy z5uqT$g@^%)7;InJz=U@z%Yukg5Z8q`H{u36neZZJSqKqbi0DRy2N6k_+8-1!;oZ%$ zFyguq=Rll}IHQvZFM5_m5aB?CiU=M?`${H(1|ddLQ-(E?IQx8aGv^ymIO}_yaZ9%Ki@DDmpRar_|G5-pSFC&{|C!Whs+3(Z{b~K(@;kYAjCU$;=ie^9nSE1# zv;0Qx4dV^TlpmsM$_tUD9E#-^b1xb%R$fRyUwf`d`4gq*O3#*`&OL2BU3n`1RO+eX zzRW&pUukc4ufEsZ+G1{Hsb_V_KbU&3`atG>i83T+@6+!q7jpL+_f|fUr_6}ed$M=y zcbD(V-DOZ##M17xUrJY=TrIWRQBUKWkAf` zVBAo-zIJVqvL8yX_H>}mRGGuaW+A2GLeWGGKzX?u3NzP-H7+`duXl-p!%s!(>q z)W*{K?0S8DnKBa^lg314JU^ZqudXeuHMd;k(nh*MIS5lLt1Al2)5~ke7b*LobiDrI z^0M4AV_D_c{ITY21*OH=#rooMDwi@+m4*3*sfE=A1M!`y^-KbkC$QwndUQ|OU2*1}DQC66 z(4X$FY6UH=)q0AQ8_=8^fU&&`lNZjR{{JU8p8qlb-w?Bm|Nn-d6NQ($Pi$wP#u?|d z>qK#Q?~P`cxns;zGrcbm`$)Nsff{F=(@uPN?+x^tGmkQ@2%G_4SWshNl(Um_W|V2O z`_bs;`WQXStTBHlkOoP#gMk`nl+#XX?#)X5V<5Hkf&8Yx7$Vn+4AeMdoSls5dSvd- z&yCFvIhM|z-x7GkWZcO>jWfn+=WXeHw0X3(yXW5vlo4K3P-9?>(@uFP!5o6B?C3iFlQ%aYaivU+uQUe`zL{NkYs7PQGpT+ zbJ{7*eU!P<(v|Gn0$-9Gs~M{;K#eoPX=iOIW@~NxeSvT`sn#-3 z1?bRq*a&KRei)m+e~)$)!0M4((uvXdF8amG12Dcf}3?KCC&PX*#*NO=+iHO@Gv zow()puP(L}_Gbd;5?)wPV_=-q&e?LWOU`E1Yq?waxj_6OlAXjrjWf<^CqBHet+xxm z5ICvPn7&z1HM zmYvB?XXo>-&?ZdPC*Mx5K7C^2whfy`#}1!&?^gofax$%8pvD>CwDY-`*=HF^@N0qW z1k$7#sBs24JIU(FG-hPYTO!L)!+#YhSCDKa12xVdr=8MmDj#m*&BF};O<-He3kYfq z4077p{3cuTjHDrkyQc^K9}+0jq*=*8jWft;r!*Jv4^KMen@>>X;J-TLr)dnp2;~C! za=$8Xp>Y7;evEPhOsev)9#!S5)~WLUJfg~XFQa8?9Kh4Z(wG1m2k;r{`#(zK04gJ@ z{1F=a|H}Z)6G&tK75aJ4Su`eq@&LSaj4Cgse_y1&|LYg4^0%n({~3lV|C+}BU%gV5 z*&bE?(l<{2_7U{_f6wZf@&B_H{gxl=s4vVHpPFEgtfqZ&0s}QpKWC>sQlH|zev~z@ zb(UGDeE41DtloX8q8(teMAM|4txV%ZmqU3=DAE$$T@rvU&DchFt$%U>qmQN(O42 z0Zu!ksdzXr&7-aVAdsyi&G8J>IQ^V;*?FdFoqwE~J}}3(@~WMu?lRwP{)a$E9XBZF z8mMvlIqh`(z-;O)x0(MbaBU#V3I=MN0nSdY>C4vmN%gXwi+pnCiuR8J-$pX6WT3`L z7hd{o=i}eow9oQX^e2IA6Rmm`12xVdXD8Y8Wvd};o_3b|tp5@yH)6Z@v(Gmt~oPJI_9Y6D$ zI?JPgBye3pmNWw?9U#%qS$AF3vVCl(QrWQm#Lb(w)^jYFD-~IwyOI>E7)bd5xem0` z@uD?#mP$ntxUQl#k1|l>3~+XGO<(QmuI6cHX<6zL7_TPRY6emYLSlf^&d95kX``ih z-2&M)Bp78NWgz4-&`!p$c6C|vq_bSi9RlOEwEoo$)Hnm2c1Bb2aL$=8=Bhw;9ce}x zNLdew0Zu!asd&xjHOs}kM_|03EUOtvX%D#(v@@EDhX*zD#at7}K2EDnGf?C7b9RzV zU(D&-+c>tCpLdJQH?_S2-4uydF;L_5bK2>e=N;Ess+2x~D^HeD22w&tA|-Src5<1| zJ90J8JIni)eu42uTK{SWQc6c|1nrE?Z?0~%6wfJ;-9)P%Wgw+=~bbCoO&Ol14 zMf7vp>G*lq)L9NppTPArt$!T@DHRkk$XRz?dRWow2?6QpZtLpw`mr_i0e8{I@R@sB z7e4Iw_XbpX$JZ$j-+xp7K6>WwS)j^~ea|7!J4%&5_g$LT|45qGpXUC*=Kuf0?;Y}8H2;5`e!fa`{~z}uRsP!_JLHp>(DVH_ z9rE>*|4;u5hx`=H`~RW8quhY>+`oh7|Nn84+7xL1e+~2h?_unciNX)(()0h{kIp>* z4|{&cx4UtV=NIg~XK0U2GLZ6G@x2Gy?LB@+IkWdH-&H_hdzRL{fq@!lh_jQ;&D>J~ zJgPQrZEMM(!1)~6)-#Z@X%R!5c1}-=(^ABcK=(W;HZYLVX>lEBr?V8XZA}>#IA0*c zdInNnE$#&EoR%WC)|C-~?nPSp1_n}AEv^IYbe1Bvtu3Ph=SyT*&p^tq#hsv?(^ACN z`Z6ZaeTr7Tfq|4;i|ar;ou!CvryYt5oG+7MJp(n)5T~8fQpDCthY|waD1LwJEx_Ht&^o10^OUm^5Ypu`LBqS|7u!yW$OiOiY9uZw;xoa z?rgkqPMN3991^(RqBSpPAmzW}F0fv-_O9M(m*pX7SRi_bR=b9Ql#q%TSj5AQ<3~|~y`C(~tT8emtK=)Y^O)ya73~}1&_?g$#HLrq}W{9~0=jV74 zL5+bSPCKWih`0)xI}^?m=)ORTH4LQOTf_ioC*5@8EsEHDW3tHXn=kNvksNCoNO`xo z547{~=Y?sX?E6Rylu#uN2uj#_9%g}Oqy{9QYI>{1nrd5 z=V0TdiMcLYAh5kh>z-gBWuM|U(9XsiZyN<{9-o%y*@Xh-Uyxv&ff{F!(@tqFVCzlV z(E{67$g`4xl!S@s=j>#gZfV)Mbz6E{n>XT%1iHT>MVf(>eu?WqJ6-)c)X-Vp7pDZS zzos>>W*{Y8A_h1+xu#oM>P2fFo0j+Civ`B7l4TVGHO>I1ow0uI@zRmeQoLgXvagY5 zH3KQN6EVPPC*w^K_2M;;Ov{A3O9aNhAw1nrEb;^DwtiaU+QP1%P8vai#s z(+s4HO2i;%U3Pd=#Pr2Iy*gDtR?rx+*nFyw2!!7t$tng?G9@kq?S%Zin-SJqI2$)p zKcaX3AES1F?jJbh`|0_A4z&ZkNzeb|f8&t9P5J*W{1=D(A0JlbJAdhrL-g|{dj9{g zrpjNV+%K%A%B0A<`MjNhy2IYs(jaP zDV~15Ky3g^Xb!-?tkE)QRsJD8`(KRr|CImlzO$eC&v~w0Y{weY{C~TD#KOfY-`Za4 z5HU8@*zi93Me7HgfD3Q~9zX}YfDiBk0U!v3fG`jNqCgCY0|{UN7zC1l0Sp1d0GlF6 zfD9-=7tjqj02Sx~G@uvg1Ns3c-~!x$2hag8-~;?X00;shAPhu+C=dhUKmr&527x4C z07C%VN00y+Pzcleu?v6c1{{D2^Z**r3-kf~fD>>5ZomWRfEVxqejoq@fe;V|B0v;~ z0dXJ!3;=^b5->5ZomWRfEVxqejoq@ zfe;V|B0v;~0dXJ!3;=^b5-$oA;08Q^4tN0{;0FRg5C{QbAOb{z7!U^%gz4=Zz+VP|BwzqTz%al(Kca01WIzGB zfNsD6s6Y>(0lh#U&<{8P7vKgwfDU*8AK(W9KoAH4VIV@7-p(lg5(DBu0vG@Wfh1r6 zLjX$>BtQlfpbO{*9DoY+02^a1^V6L0};zys)j7w`doAOHjj)7u%sU&25HhypPn z4kUm9U=TY|3@QEn6cMyCgNz@Er7{9+Dy-y!ypbKyS8qf>$0sVjz zZ~<;W2fTm}2mnDK1cZSI5Ch^s0vG@Wfh1r6LjXHSkN_D_fG(gLZ~!XM186`m&c=mu0k1A2izpdWAoE+9&=JwJ(qKN|plF^ILv^#6MP%>n+l2mIX-QI*`o^n+?J znn+Rx6rc;}1{{D2^a6c=6L13_zzg_*01yOb!JspI>>>0-HGJ&H#{n0Z)WKmtI42Cw zj}SGsk3N20B5E?A;P(UF;Cl}IK?Qp7`(L`iuX(|5_`ymL{AP$qS9|*S4^e!K-J@^>F$9xF9DFWUS18+-!cMO4_V26l%WbnQ&@BtNkNCO|~10QpO zPq@Lo9-`*O$EW<@GZFAb8Y;$m=xKN(eHj3aWuSu#fBf47_zf*d{9Zr!&n~d)CQ_|U z@B)4y2!wzrkN}dvFd(labOSv=FVGLT03GlHAs`AQfFv*s$h!%iB-wxD1AiI-e;x+^ zB|@ZY0e$?}I6e;GV{H&04Sf9f=1=;~^KR*#>^sssrMEM0OK%t7O4ICp`8QK(c9`QnsX*%KLNsjs2C^@~@>{tG-%zHT`PsmEtRzSEN^pFQ;Fw(%gN< zrz$VyUrN1Hp>g6mpSe$Zq4<3I`6|uZXFOMaHv6pfZ1I`&Gu5Z_e9SoJ>?;*B#Tw1n zm)cj^o7-#bEz^8`(v!s}(oa-rwm#$W%4505jK|84<{s5)uD;A8wTBB2rys68RA|i9 zm-=M&!Tf{9gJqhhPkNwqKgN_7@5|gL-B&7P3woivC%4DgQ@J;PZ|dIaCkmfPf1-9z z@tzFL(wD#6;G@iSnxijsr*voOj_e)!9p&3|w;Q)tZp+`6x~+O^;nwu6wOfj}WNwje zDbc8N>EH5-j+3WP{%Gc(uHLk5(lfNc)P4()+ z)#@8d?gIUS5{+Q5omV(7bzb${ z!nx^lYv&Zt$($pdQ#w0)wtjZ`tlU|~S(P*MXQs}qo>4d>eMT)?%x1DuwzMm|OW##K zJ$JfsdgU~BTItm6srsqqQ*x&mr&K;N^^w#^swWptPM=&msd!T6B{gWA6Ncx?!(51E6eiBQp>8x7LH9HTU%OOnpr9>EsbPNbN;aGuzOcL?x4>9XIVyit>Zt0Gg(K5P*5()I zXXa1MOUKp!Y4atR|*iRa^~cr{jtrDL^dF`9`=(NZKE(Ie$>E^LG= zp?oM6ss;ear^ZZcjO8WLu>#@Wk!lqKDbq7C$Z02Rw8k`rmN!Yu1h#LH zVU&TCaG9uc)@|)yS=E~*C)U(Ey_mc1eOTc7ds_b(11ZTecY$`U`s*>cEH77%6Nvti zR=bvgl;W7^)r;pRl)?YtDQoLa1PFTwY zs_&3wEdw=9AE%wFd2BQbX11Lmuzi;o45YNpL?5S}tx>Q=ykO=g$Q1(BL9PPnmYx{m z%(Aoi2sM7b&Varx_Y^hhj;=m^_4w&@nr*4~z_KLwSt&49$wG;Hxe*NU&vr(78D=qB z8gSJ@i{;u^^&7)VKUxfrw)A6{6TtLDq~CV}&JWEf{4<#{EBIXgM) z^WQXfaDDIx@9DeLJZxvPK>2&pOfZlVy>caJr_`JKx2d#LM;U?d5484422zGsVuZ7k zuRi~crHIWV*HZ0n5m^6&OzRj(Szfsnw6jiMN9(1;VQa2+w+e*+Nvoe^Amw-ELeNea zvhLRAF>9%Gw+XC&B*!`iYMc>HJ8MfZalo4E-0cG4pGY;yKuRi0jBwfsTZ-AdwpfPq z>=0Q0i%jbnNO@(s6|}Rq6cd*g^N^mM0^xtt>L(dUiDkJEv=g=zv)NhJ(j((Uf%OA& ztYaW0mgQE^&e~E;beH90XJ>A_|Ljli()<5a7t{Ft1dZRnh{o^7Y5e|2Y5YF@yyrq1 zzu!mi{psER2#x>$JdOXKn4tWB53BO2H2(i*=c@AMN2u}#SJ1owb5uD%KcAjW{Qxdk z<}K|B>|k zzhi9=-**1|zxlWPbK~jmB*A{9ryif-1AZ4v3Qr22xCtqu=O1`$W>L~)NLXLF|q|~+C3ffuC2WZ`D zDdwpHVHd4_l7W=9mJ2~Uq4_){VcS~uG=a679P1dUaYi`ptS!ZCtyNDK2py!FWT3_w z;j|OB6tiuux=UbHc`-qafe}tSYfCX(Yt^hk*h7*@22x63E(Gm_EyZkGtDYgS(wi9i zHbLqs&aI%GwWXNTwQ8gKIa46)qt%ZykP-qD!d9Fa{Cdnjaxq=XkaM}sY2P_Gj)sN*t^A%0QZxml)x+vzpJ%HUk$f6$l4OGDax@AOs_vcEag;wqDHU z5o@VuFB4dkWEy24b;aXW(9YUY%+`ALa)EFbt$vJw8fTERld#cCyxyF)dc57+peqEz z*`!*-K$@+V8054Q(z_?K&~mU|DX`5W!*T}F9_Yt>@2NW9F8^ zs|3FJefV<&%498Jhd=@_F>Ue-%CN(>wqH`uR*ql^3n0x&4CFHgFC-?+0jZzq3{OH(jdy zahe0bMeP6&pGoWU(fZDy^?7N1SyetsSLGk=QsqmTDzinZ{LSC|@wB6;|NrCT_2+-S z%?E$PlC>)T7)hdEuo0ynN(_ht2>|KWltCZ~NQ($Epa5M!H{bwNpa;+ZWSLQrI7aCQ zoPY~(10FyJynqkz0|6iign%#*0ir+*hyw{=02l<4fB~>w1PPD<1?U300SBN0J%9%E z0(}7Ta4E>GrMLh$-~n{N3-|y(5CDQe2nYiaAPU5QIFJAafI%P$7=W~!AOi}}1#|-r zKm~dL4d?~>fPTOUxBxfc0d&9%_y9i;0D?dW2m=uy3dDdokN^gNK_Cejzz{GDuqlEB z$bbTL0o{NDPyvk2P&5FeGZc)@P%t_}aRM&D4R`<@@B$c}q4)ue&QLHqL&4|_B@9G> zD1gx!N*qW41Hd4V1PovZVEYIXAOi}}1#|-rKm~dLjLJ|jDnr4j45c5ys0_sgxB(BK z0~nQ|_yCN`Pyzr(WhfYxp@e}5fKeGr42S~>U;r2dl7IoQ{R9b+0R`v+x&a5E0zH5R z^a6cAKj0+L8SKJmH{bzuzzg^QKM(+dKnMr}5g-c0fH;r<27o~z2^au-pCAD;pa5M! zH{bwNpa;-^UZ9UaTiB1!PQV4Y0S}-9Ucd+VfdCK$LO>XZ08tVXAVDyE8(H9CvUnm%TpV92up~hOWCCp=#$6~FccEb1g@SPx3dUV17VF4VBCd*aTf~4T__lLpU{}V8n%j5f=(ZTqqcEpUv>V59|Yp@Gjs0NX{tSPMl46aZr_6pXb{FxEoBSPKPXEfkEk zP%zd)!B`6gV=WYnwNNnDLcv%I#RKSo7w`doAOHk`5D*3;Kop1paUemUEgZn-K_Cej zzz`r!5oACCx`1xL0jNL^paH!=AJ7jt0T&3OrN|JV>>_A@8wda~zyRdkgdV^J_<<;p1f(f~3OE5D5CH}Owx8et z`T;Kx1_ppxK==EEK0pUTKmr&Bx(*R~0S^!a;=mAqfB3xXE&Z+Xo4GfQH!E-C-$=bt zeZBB{`t@3=Sjv>lx!sJ{DzD~WO}%Q)@g}`o`c(E)`lre-GAC2`r~EZr@!)O{?XK<)kg}Cq^Vbb@!`zF(!-^P zvJdGGl|R|c66c|Q{kaE>2P*gH?@!%dy{~Xz`o3DBSjZHlLTOKSkG`jTuQ_vE;hy9@ z73$fay1RN;;jZ*uwL6P{X5aqo&HBydn{qd?n@TrkZ`5xrQ}2EwUzy5JrKYMMFMK@x z@!Ac=8!|UYHVsDmu1a53yRvv? z=1S?x(iPb&^ef7j=PoxcuUwYDEOlA+(n6zmzc~wCZnv?!a!LM@)FlTl&QTBl%0>B$ zQWsS}TA)7uwF`?EW-gR2EM1VLUjF6tbLSi9SI*0K=;y!htjt-`S*0_xXXZEJCBW~;Qdv?aSm-%`%xGDfDddDs7B10FN*)$OiO4*`M%Xg)^s!BmgD>b<&XJkn(Nm)sk$}C4u_&0p**9#WV`~Qa;&;NM;KYYM4|KGKO zhLZ)ntp=o&KExoWUBgMei(b9qq}i5e>AG>9K)H}KD;P-me7F*{Q<~dq(2!`J^Za^& z?Pyx}N(O42K~6iHxq!`=#g^$bZV)IJk!%G6HO?TXozh%DyeVFa=9|X*%#RCfi^;Q& zft13B7~pPS-3T zrbKCs4p?OF*m$$RxQtwr4AeM7oOZ@$0h>n4+oxLuy5o2OL5+bSPCH$*fEe`CETFmX z-K_%S@no4~ASDFiM$pdKEMU`Ud5?ITKz9PI{5S?uiXNh$vy-kd*%GyQuUWr+>v(;n zk@@}X?E>8jQXJ1fO3%Y}pq-9JHO=TOFTC#%xYD%dV;M-9a)|Ug+r~BXrlL75Ke}g_ zU$EaP@U5b?FJqv_8Q|cKX`!WBxmRFYPlhoDYMc?yPBy&pt@p*)GPZTo`t92$Hf`iD z(iWL-C-w-O8_2eXft0d^7~!;Y)_1AdX*vH20^vrIj5CmOwh$>x8?lpcrZ2{fu=zsG z^1}B%fp!x~)-sT?w{R_Jr>$4n7OkbA_X~`hY5n62)HtJ@cE);Nj2UC|Zq(B0|~s&QMZh(X}a^#XOPoQ zS+8`am6ifNBCwsr3kYfq4077p>dzB(Tk{aLyxe|Npgfs0V+_D!p-ZZF=+JcQcO*gr}0~1O{rHK~6hiy?E0?s%Gf*O5<_q z34!f&@=P*N;|y}z+3LmHHnw3ieTS#lzTl8=qWAya0eX*5@BLHDRrxP|<&ZZYPw(a_ z2f(F$sw^Ez^Z#9=%HjE{T)djz^+zZ_z_==J{5j3>NALbGp}GG)pm+a;e{jf#LzUm6 z`Ty3?{D1#QbN`(^OO=05{r_(sroIC7^XVZ~UP5yKzGtZNHW~v^rT6}qqW?er{F48b zBNx*9|8?t3@Bepyi>)hv6%UXsxc{qcEa#G4QCF`z>M~qUxeCN_b<`Pi#+?c00R45g zt5=e|Uaw65yk1FSeY?KP7P~k9f-QFJ`2$<5dAg;=y}NwU;t;Ja#KW9}?E?D|=s}>0 zz+MFQAuxeBBl>9GGe+B<3LP&&$n1; zcI)DJ-#FLLYHTih{{uExdcR+q+rKX=%}vnaksGY*#(T-R0W2(GVHpcMv2YAUc*MG} zhc;x6pEhJpA8p7S7j4KKH*LtA0a~-)snGYKwQddGc+L-!V7^R(`3ecF^Fvrz!NOfw*o}pgv~VEOZvA+VIzNn%E`)R=#Dfr{&HC}ab$$d3cVl4(7S^%w z5Y``Uw|=~xogYPr10gCxya*X?vwpnAogc%(Di-d+!alzJo4>{ShF#(JFgI{HRH;~Do zQuWd)J`OKAqproSr<@UI)S0B;tS2{4aGd6JlIy#_%hm*T{erD=?)w8<<4$%*>ZH)o1clCywyjo7;a-@7FuP#(z^ua@MR?4K zL!sklyW#f1-3PZ5ZWr7k1jp?{`zdslheB8NQ0S^&3SHGlp{oWEn!qlz3-@8OL)dIL zHe1JLd$HLugbz4v-5zYVADi8e&30k4-Pr6ff^EMjCpKHhW^35&K5TYBHake6gNIjI z*wd)QDePD`g&nI>*s&Ug9otJ`$7=h&#RjbvS0e;n8{s(M{PG``PIGsUD zdMU)P9-7>NZV*c(1n3CxA|QbPc8E63T!A$Ve%h$TVcMw09@?nIUfQU|KH8|oePoEY zsl*y_=xQ+{lW4?Cq7fg7Mg~YU(ob>2ZMF>EGDZ{x_z>Vnz#syg6p%Q)GHZCykz=F_ zVSa=K5SB!ktAhufK1R9`5I{f>0R{rx@El&LH9Y7hGU7m35Md#N4N;isT7B55&5urN z72jB!r^CjfAIgXdO9+-QEW>}ErOhtY=%Unz>Snlk4?&eq{df8B^Je;HBC+|qY`IL= zt>uwje_+dF2fL)@iIqNSc`vQc&}yb`c-g1S+Ifaf% zM|NXrKb8()=_Hm`u|VwXlKc4?eqm%6BA!FHz_ z3DN0lfrARTAV39N5TpVwFsOhF+=pG9XleA$TA*U-AeIhc=^-rbp`}A@PBMx?XRZZ3 zhzTJkjF@4>=JE6s{ zM-JaLIA3JBv4euNgC?SMs7!ci2Tk~C2TcTN2TdrnZX;>G4q6cvCPb@P6QfnE@zE;Q z1ZWj&LbQrCQpe4s^QZML6I+F~1!!%@MQClu>9n@ve6+UX0<^Z{9JFhUmSeXOgWhyY zlXQEq)JZ#Nsf%{d(g^L&r7Fc7Rxxr5A`C>h5aC8d6cJr0Hf|z@aTE)7BJ|B28K&*t z9;fZz?x*eE9;EHw9;WTy{{M|qV5fyQAN)$;E9tM)zFhor=F8>xa_<@MRm%Bts$BeH z=8Mu7OJB%-LH|PbbNc7XpUr*N_-y4f`FB$9RNpSVoqoIaR^|=qjneDc*Y(%SrNS%e zS86X8U(UQtJwRT{zNEiYrWqWK7jw@W&sS*f#?*7wXA3lMW9{kU)0wBGr_;sSzT&>j zK51WRZ~loC&D2vErkdMAviJ`hCSc znLW~;(!JSx^?S4T==YTG&e1%KmAlG!tuE||vTvNF^ zf3>+!MRTUa%%#$$My|3uzdN?!Yos-$vFuoSb!}B~ zRc4j6s+2A*&o0-OmygdKZyax)kI>vB!Q2-ivq)N0Iy!r_esp7!~# zX6DcII577$$jp*vm4>s!`fzzDZ={TBvXD$CYlG>5TB4Z9B&0+so{Jf=N;Dr$MXQlw zI1`q_rBF7chf1a%1Uawat>}3@rB^*^cg2XjLxXvNV1OqkB0B0u`+IQUCFNh&LuYwk_PoG# z5m`nVsBs23JGo{KOzvtPn8%n8%oha4i^;W`ff{Fk)6Upks~auFD+y#*@#29R0|T6PvgUzFvgUbbc{%;Mz<4!TMj5Da1~~1ErsCneGj~XN zLm<0`G-C|ZI0Kw^GE?!I=bh!1^qT_XwY+$s#=rolozYZ0oOkB8(QgT4A1A?j25OvP z&Q7wKnE~i!*jA*_-cs*FVLtcX7AWa{htjfw8fTc(PFbHBz@)SspzjELc`|KcpvD>D z?Btu78DQGi_8fdyV7-xi8yTo^MmX)P^%sq1tEHHq76@BEp z&j_qHlW8LZHO>g9owcQyt>@!s1;SfM_5ZMUC(vzF=l}5UXq_ud8jY;oo5oJU4ptJv z5=gAr*+XI_fv^N(K>}g7!VU>ogainXMC>6ztTgPK1!XBMZPbPCCF(}EU$KDF($(s| zQU1^Oj$}&)Yx?{5ocDdtdrD6~ktJK-d!^Axn&;lR%NXRsu&`d>xNd&zYw|M&sar)i zA!jfwtd}~jo8w=XuNeexqmV8JxzH<|DA2(i<#BNIn$%11)%&>58id_OF>waD&?~GL z)}WvK0AV#7>E{fRc2LG#2D#8DoG5ARZN7WKw8~i>sy|-uH;CIwLGu{oLZ7f+oc=an zj?+JXitp3lt#8>({r|F=Y|q+EyJ+tJ!7X;v^K{<7cr&fPTmNh`HBsi69X9csK70h~8FzZ>ttY-zYo)ye`Rxs;X!K`Nmvz`?;L`c8{%mA~V70h~8FzZ>t ztY-zYo)ye`Rxs;X!K`Nmvz`^qdRE*(0hsfwV9v9GInN5_JS&*g_nDeY)&a;9!&kE)|E12`FV9v9GInN5J z#tN#z3T8YjnDMM&#O=py1%U zf@A6m4w5T4_N_#L2HJr%LYROVV8*k88P5u4JS&*-Jnq@XcmxIG3>1t7P*CGnP_}LhDpB2o0RxtZn!R%)Rv!4~repXN-R8aO)P?A$nW>Zi!Q&0#~ zP}WjVbyA{01MQ##VD__u+0P1QKP#C1Jg&8v3$0)-v|^6FPYnew;OQh(;02Aq2mBxa zf*=IKAOe~|GiU*=pbbO;qeIq;1WdpTEWiqEzz$@;074uqhP#_g3&h$M$;%5AERKLiQ)$V5CkC*1`*H%nn4R_1#N)!5fU%~Gq3go!HGAI~TprA&tpvX)+vJtut z1VIRdK?F2`X3zp!K^uqy4YUJxfRKO*n2B+%wcvUyumL-e0S6Ay0Gz-D+&}>ypaL&w z1U}#g0T2Ws5C##@1e!q$Xa#K`3N*k*2#FZiS`)4}0}HSM8?XZzaNqz9zzJNy4HV!3 zD)53v-~)aT06~CZHMGYdBA^L0gBE~+Fto=YP{g7=#z$J)j_V~V0V*b71}NAnsKY9# zRVpY!DyS(cC>1IW&;Xpk1>8UZ9-sm*XapFrrC=bIg27S>20hV}-~-Z0whM0+D>Z!6k6 z3GHo1dxL1Ng7!9{y-jFu6z#R5sU|eFNi@}rrcOdr{b*_sO>IU~+tAbwG}Vu$2GP_I zn%aP-wxFpFG&O>zhR{?SnrcH+gJ`N9O%0-{5j53>riRhf7BqD-n%aS;hR{?un%az} zHlwK;nrcH+B{a2JG}VNrPDWD$Xle*eZ9!9`XzC<1HGrmu(9|%R>O@mp(bNVswFylP zqp5Z@)sCiy&{P>s4WX$`XsR1c4WX&cXe#TcrcOdrThO+4w9SsTF|@5kv`s?W7&hl1 z+7?FJTG2KQZJUg?)&4a6a^~gu%cYmHV*S6|i_(j^PbNR9elq_;>ILnE!t?3pW6u|J z87f_thO$G6A!#W0T=F^fx%{)KXSHVw&!nG;JyU!-L+k&Qo{B$JdNTWD;z{Yr+!IM! z|1bY|>T&Jy!ei;jVzdHa=F#}0rAM-lBxnu5+`i;KbzlAyDX|J*dT(rRF`LQ8vzfv8 zU};ZwPhyX>Cr9f5st@NMNQ3#>LMEMwWr{m9JL5Y`JF+_xJER@C?aA%x_WT{GJG6h}tO451 zg{|qWv8}}|nJw`xrJJ&1J;2=NIde8m$PJPRG*4fy_XBpmam_hQtlh4Y})+ z*Q?j(H>EadoBo~k0Ee&0ToJ#bbb0pj#O2cExyzE5sh8z9q&8?93bYnrELH5!^vC;4 zmu4?bTq<3fyCiu@b;Ub&5&JjK6Of-^J-}#RVNH5XY)$d3%vtfXN@r%zOq?m5nOmJ) z?OB~aBXx#$M&a~yopS_qmDd53R_0bDSEwuU%Tvp><%L8#5la+%GrjTN(z5Kb#4>4F zb@jZkB)ufIq_{Y@cQCH{Yds01GPoX>A9qTU6 z$;^q*DaEt#L|lsJx&~&)W*28=X2oZfPRyQ|I8iz=cS7<6^@RM))J$z=;rR6NvEz%! zWsZvJaUa!olf-V+R)x${Z9w zs5B)zB{4;slAD~ItWM5PN=?!x6*|%#v5sPUraj(X(z04YleAnk8C9dht(n&9dVR84 zZO%7USM4+5c(@d*uHEMYsel$J_|yKFzv#>O;=WR2wlUEtHRilYuj;<;;&=??4Elui z4vDosZ%KMT**8Ozz(C z(nDD(W6r1^sq}q=#7|PnYzDc|FRYhX)jgCjt4|{Era{=*bD?c_!`z+;jG025};Y4X;ZwUGfa4}pWR$asVi9z1y zC@Ib$7y5RU2*-pY8-qK^(9c-tWGb>f;2fzD4}6F6OBI-%a!XzfHCOwKV^~MDzYP)BJxA z{rd@;|38i9|9|P1v_3$@ZhG&1o9POg`!CZtfP1O_e+Z2Oc$w<|i@$6${eED;WXfw^Ha{&C9>i-u}{h!gl8Jhb)`SUi@OC_6WQJ!w2`v0Xg4uH|W zYj3^g4^!#;|J6&z#{Z8y|KGa?59inEft<@A7y5+t9!~v3OJ)3V^#`P%8DxEfQsy(r zg?`~gSz{ksYQ`VejDvj7An}`&HIG3q^b6}HmOpM*#vfOA@8r! z$nR6kd!HP_>Do{o0PPWK`smnC(6^uLDqD!^7dZy?)O`R)E`jZ z0tUG-EUcGW{xn$WC8gGM^LGY;KNQ`BoWZcLUSLrF_*n_8yvf&mKN>Me{ShTCV2}&L z!g{IWx{23g^?7dC9%x91b1Hy>{$G$7k=QSFkyg(nFJP&X2t*T(>&g!) zUXRtgxxX01y)C*3IfFrAy||h#R$h%Y?~H#n$b5%#7Ba|%L1Dejnl6riZ~U7<+`AOC zh(Rt43hTwybg}YEteGY7cZ1BIi7rCUU{F{uv!;vV-yi>B5ceKMEMkxggTi`oHC?PM zM_cpF@Sg^mKc}>X402&mSTD1ti&%_yTGcE61B192K~Z%VdW1S3pz(TSN(C3y`g_? zdP4taRE^eOU`%4aql_g&F7ylQHr+;{>$@|#13X4JN zUnp-LgIpLE)=Tx)_Hz82h1DSNucDifGZ+@u3k=ora1sVJwV3>qIMIbV*sVq-XBh*@&D_VRgM2=KVwI1 z(AWRNqDpfI^q1xn0s4Ul0Tx%{SX_x?aV3t$l{gkx;#gdXV{s*p#g%vzXrLWPU4#jk zfdyCrmR90+fTfi;l!UW8~0<6FW>;TIwaV)dMvCI<3GD{rG zEO8gWGE1ZF#Bxg<%Pny%x5T}m5n#C`j^&m(mRsUjZi!>LC648mIF?)DSZ;}9u_cbh zmN*t$;#h2nW3eT!fp*XVr2PaITjFM50ajoGc7Vl}I2K#tSZs-7v8B;=V$mgzMVB}h zUE&Jx02O#aBk%z~2!J36fiQ@GCeRF8Kr3hiQJ{f#z(xoOn1C5rfECz)9mvFJJ2|d# zfCk_MF5m_V@BkHfK_l=1KL~&z2!Sw&fF{rkT0kpk15uy>iM>mW1!iCYR$v2mVziwy zuAz^k)L75}oWKR#Kmi`00xxI;KHvudKp$tRu^R{!XN^gKr?6ot)LA=fd-^b z!bFU=(~N5@zzS@@4rIWA12h09Z~-?^fCs3+3mSnB_(1>!K?sCF1T=wW&;nXP8;Al8 zv=gK4?7%fr7hwWsU;$QO19l(-4jiBXIDreefdV{01zykye83L^AP7Pr3?iTjG=mn< z3fhR#c1CfH2HHUfVEu#yOu!5*zzS@@4rIWA12h09Z~-?^fCs3+3mSnB_(1>!K?sCF z1T+z&?QF(1Eua;&fhf>GJLmw?0AT`VU;$QO19l(-4jiBXIDreefdV{01zykye83L^ zAP7RlXgkBWCIXs3GiU*=pbbQU2HJr%NSJ^bSb!DSfE~zy0|#gTPT&G=pa2h0ffqCa zAMk?!G1|@`t_guKh=3;03|c@dXaiB8fp*XVCIM-PFaa~L04uNoJCFef4$uIczy;hu z0Un?NFEQHAMqJ|qeh>gb5CUNk0ZpJ8w18I72BJU%?Vtm&1B3)jzzi(F3T(g*WWa#~ zGyo@X0XH$)P6gL^fC{{z5%_=~1V9jkKo~?o6KDo4pcS-%D9}JVkcJ5pFary)0voUc z8F1hL4Zul^w$p`c+&}>ypaL&w1U}#g0T2Ws5C)YG-1ywx_p;~Z{7b2qw3iAmreBP` zSo~z>lkrcMUdXEexgyV}r##nLY76rH8W*CmtTCKA+s~#BOPK?t$b3>I3;* zsa@Kx!u{#{WA_*D%iI^guXJzr-o(Aqy}5gm_o$=m1hTvI^UUQlsf?B>>`d>B?JVxd z?1=9uZO?8`Y?rp@?x;TRT>7@yZN+VwZSifTTeG(&ZXKZW&lPXZ+#J8Tv^Bdmu~pid z+mhU(Zpq)2x=FjKusOXswz+s?=EnGqrF1r(NK5J5KypAG$ls8ikuytF)^MSEjFwU0JLe^FMG|?6Ts9%!c@eQYxEDq@+}?KiRML=PylNs$E*R zBz;NjlH$dgi{lrUF3Mh%xJbGvcVY5E^}_rGsSC6V3g@%)bL*4q)%E%FQs-&s70ykc z8#}kSF0(GauCzA$Z>$YCa8~TB;+dH<<7bvuXICdyORIBdB+pRK$e*4%z51MZ@l#8y zva1rSq*b|7lBcMrb(5i)LdnV0;x~tEtmyE0Nd{?SV>nhA7!yt6_3mu89%agMD~cp5z-O4!;^=rhvyGV9i|;tIF$W|YXJ_l z#oCJh!5jeQ&-s!*)t7HfHEN9oZ`vF47S)UzS4*C(C*hGiIVGv6O5UBK(`pu6X;;iu zbY`4!r+#+70Y}VHX-S_eXJ=u>l+e8h1Em{DEz|!GV##(;<=h z402&u_^}5@%7Nn!$9(LeZP_68AL4Kfn(g)C%{3xmRm0#Su& z6i1y_oVK)k&dDoI`{h_le0Cm7_yuyCR{ zY&d=q*S+kdUMg=dIYlpTcXngjDi_k62ANh$Th1UChK2Pq^=GjTf&1@mD0V;7sx~3jAhCf`7Bk3&A>l-cW5@NEoieX_ ztF4ao8bmrNYzc#07!uZt)Q{^|Mb^AB8x8VYl(dvVE({AN${RbbKblwBW@}2oK7&*@ z<(n)r&|c=ud=^jG!UW3xeID}}`w4>IQBpU9To@Kkl&9}#YVs;OnwmGqR)f?i<;`J`3&X;CsovUNqJUUE4YSQ4P!rvR zoWZcLUSO~`u(G46d25Usq_$Ji90s{CEUcG0uAAfE88w5z4vOk#kPE}YdV%A*S@~dI zGnTL2Aa#=HCgco;h4oU$brT=Vr&oOd=r9PJOd;J2a$#6lFK}EpE8|XT#_~-vNS#7? zb7;9Oq{6VUUh24RV&qBnSiZ>yfd^4YH-lUl7S;{^|5^AU67bdi4nG))gR^#HV8b7qE4jc zS`Y{W!g_&9WoMuV>Te?0U@QOql*ayFOtt@i()j#{b)>{(p~$#vb%h{eMJaTMqj4 zJ4aLf|FvHI`@d-8$h+)U#iF=~nt1uR<{Oiv^n*M_g9o8HE+5SL$U`J}C<^5AVW^PH zhg;wgsFBM@qDU?ug(|t+i88qyL!DfnibAOH(muI3xqKpO$9WF;5U0#7g zy1WvVbopeI(&bZ7OP5!nm@c1+YPx(H%INaxsH4kgppY)FMkQT76Qy+dEY#BFH7KUb zeW<3(NtDy&vr$i%&p|<5UWYV2}9itKXA0ykLUWvH{um!r@wUx7-yd?iZl@>Qs{%U7e=E?Im?DBP}v&$P%XqPvk(k@?*QoDQuYVGm>itTb5)pq$tl-uRasJF{Eq2ONW#ugOb z<*lf^%QvI+F5iOMyL>B(@A5WO-{sp-ewS}Y{awBT1$cS826vzYFYiPRUe2HhFW-qO zynGkR@bcZL!^`)e5HH`0O1yj@O7ZgjsKv{>P=uEsKowrzjWWFaAnNe)Lny?{52F$< z??EYE9z-o(&Y~DE??p9U{shYL@;=n#E8Tbmb$R(w6z1i}P??t>M`>Pu0=0ShNfhVh zr%;`jpGJ9Jeg^e<`B@a`<>yeLmxoZImvgAm%g;;fT_(R^f}b?Q7cKB5D}31oU$Mha z$?#PUKka~@X@IXe;b&d&b8fg_fq4)7yb8bIg1 z`1J_WrGW-dL z|Kor^ZGdk%;jjx9-SBM%zT<)Ks$``bKl9?M_Zs2Peef54_$Z|gpSUtGPrb4?H%8iiwpu-Ov0?-+Rt`KyGA)R%M^fW=W8G2h_ zV=MHvL4OnmG#HdR$&d+#%`jqtO;*@!gDrO0D#JDoqYkJwz;-9>aKTA#veJ#o3a*;s zfd{GZU@ttR5gzJ;hxy^*0eD0Z9vOm1g<)p|#+u;NW;m?{PH%-rx4{`vc#H;*ZHLEo zz~iMZa;6EMV1_4J;4CYgZG&BQ7?F-aAgyuC9ud-THvZycxoFwEecQ9;2G_3bq73?^^<2w zaE%G}nPJib&$hyIY;dietaM|YjH}M&@H_`x-vG~d!V6sRLN~lfffsw=B`Uns3;P>k z$_F?2;bj4Mc@SO^f>(y&RS|e~6TGGwUfTk%YlR!z;HD_NUV}HZ!+{Q%mIlZhO>nar z-ee&w-PmHqRai#~fVVs09WJ=t4RrSxTHwR2a8DZ?jKZu2_qM}NNQ2})6ItoTBW7Ins0BV| zg^%0d6L$Ed44>lgX$O3!0Y2-5&$-}`8|D=Fya&FZ!cThPi;eIlAAH#lUkSiZ1>vh9 z_~|hGOa#8x1V7shKi2~Hx59iI{CpICL4#jxCoA3fQU|VjeG>e#G(>*I1ixyAU$elk zTj4is@SAq{Eg8PS;Q!0RB%9 z{xk&N3d7+DEH=Tno8dbx@ZDCj(v6?B;i~td@aG!*MLT@I1OAd7Ab%ynUz^}>%<#7s z_&X~cvB8oZ{$7TE;P8(Q_@@T=XD9rN3;xv&|E9pdd*DA*_)jnVpb`Gd2S4CbAP&A*m>O?oZ+nfPalpH6>z=+(rlrB7u(75h~FmED+|Hq4bb8l&3QjO3!uDSqW3msL$kRHM`PN znWth;6`oAdigvjt5>J#K&paNZGZLm~d_wNg1f7pCL!%Q4`%-i^!W^w^SK6D|yFZ)E zO4;mSoJJ+2_h@_abRI(K;p{_kTIDYNp!Q&Xcap{=WFLq>P~4TK5efPGllM#aXK6e_ z@!s^k+P%HB-d*PI*xiM@QgrUY+?|O#OPLIvd9biEwNs^a?-Dc)A+tTUy+CIjRPV^$ zp18eqTZYCU6t<tpR(^&?k>$98UoBB7Z8*|qst}9)exi&_t=B2JtX~aR|>e5x2 zt70_XAa$jBW$uauonbI@dF=ASWhpwpU~WT#MjK@4?1F`U)}OsJerb`$8ECYUUh-n; z;_OB7i;5SfFVtv^LGl9Wg6#S6^NZ`#>opo|8QIYwKnDVsu8q)Eae7?yLlzPcTC(>=jn0R;x6wAaO?N^bDO#uy9)HH1)LH zsRAKv?N344=gNBEgqy*_=*eDbpF8ng5&~eL6*)QSe%!hr_l(4Ufn#4J7D{fth1t zG-e=0=L^iuNYIFZ%+ax<3)556)#5vx6 z)0%!#FdK*migZ>$&7Y?+0g^A<7;h}nhycx-SCguwW<7B_A7EP1Xf!~QR`|=h;;w$D z>det9el%cc# zq5dDgyzRmnRR5RDt%YXkILYPaP|Dd!wlk%6kUXz!Jx2SoWDA*ay+=E@N~FA=24V0 zi$N|73hQOoba8yy=?H_kX%sY{K`smkCyJ{%u(o3Psudrd{dA;3;B<;wz#ta}g!KYP z53K2dHP7Ht25CoA&LRf6FescTt!5)d+Q)9Bod%gRC~YAv1ddD?6xPceeFn>!HC>Du z#2rHsix}j>ps-%t=thdTkKIV88e|?zX$u+T!l1BTW=$8zZ=}-<;*Jwtgq*>kuwGnE z7b^ven)1_hgUsV8XCZ@J7!=matm)$TaYRQO#GODvOBv+CX5mC}KIR(;RdzKidKNBS zxUy&2Qhg%nvDJIH83wT@Qs6QMxv*JSFLvyat%|K#C-WGC%-NK-h(Rt42`9>|shF$b}(cy~wIAR+lWwZ~rq5@_Hz#i$N|73n$7`X?fEtmx^9uZ*t}9|LNZRqiqfTtZQc805l$uwJ14F<>;XrhFJT zNIQvgmN3YLLE%JcV;=*`X_Za2rbar)Aag0DEoP7lgTi{5`WwhtW=$8n4dRxGE<(;= zP*^Wc-;jml?>1bfhh=utEX)7rw&L9^Cg%hQXZKUP2 z%0^lkuwIt)t-5gX~zY+&?+0E-RcPNSgX8012~5OKjZ7SrQ&4#4S4={$cQ*i4C& z?520<{C^v${%`)L&9q~&-4y+Y&GaBIBvrX5uO zZ$8FudfGbH6z%hV;WBdTexB-q~1016U{`XVv%Liu}6*%b6F=BuwM-mt>K$9a0j258Dkp#vH za10gT7%9LpP=I5c0LL%^j!^;}g9K=DB!M9U93uoc1_*Er4B!|SK$9W~j0)fw6!7m( zxgTvO#sqK-3E&tJz%d|zV>|%IZ~%_c033q>IK~2S3Cod zL)9%iw7Z}y2!ml5)}SUu=Q6p&0;gC>dZOv#Asimo0FQ9Nqk{0bFr3*0Pi%p++hAOS z-K>+GYl8DledNtfm~q3qJn)_nd?*6Gt2!J36fiP$S&7cLef;JEZ8fXV>n2>-8n1KaYfeqM!3^;Ir2H*rP;06jX z)1AssS>ZEw_?(Ow4=%pqgP)1O&wJ>%+=LRbht@P6@$7!z5>ebn!KbA3*Yd;LI8dzNb)c)em{bX&A9l(7F=w@#h*w+-~&y#@|!L24IU+b;)HLxVNoGzpH6sz4+KCEL_iCOf(~HnBCJ3L4&VfCpaLHV zf(U2F+ec_x$h|A^58>N$(hR@wd&m*oup#HeA$j@sE{%=_k)CxtEhK zOE2fd`hVFM<8&^7^e1CfVb8n}f1&hz_W1aF=(QdEC0+?>8Sc5`uShAQx-E!i!J zEz*{pSnsb=gOAZ_f2p*Z&JUypw1EOu;bS)xug_c`zrM67yD70r+LYV)@2vNir;5CG zW#NkS6|pOdRFjWiUb-xMS^TonhAf=}ph#=}X{kJ&0YI9tE+4zFKy&}q3v%Zt&M&Rc ztdFfPo|ic{2pI6?!R|>r3{j zeR-7}uy#gj58 z#i?eWU6NQLEy*oTE>;)k7o`?yiwX9gk7{KGPNND$UN$PRt&d6`NH&F>_-4#L@{_s^Lo~7eXEiG!qra#NC1)G7JNsma>p!lX3S_KO{vj(A6@JxkSnsXeD9HC4+~ zeP4?f+E`nzHQB1R=Bd7~wG^7u&9UYpRrupgrARiCh)7i9PlnZSK9r(5e<7F-#)8E_ zhARCff7YMy5BOrfVq=CX{UvYKoA65B9M$?&HSbAzG*5x5{V}EJ&bZ_5k}K;i?4l^!oqD&0Evw8=`!_V)^K?w3<2H zOAL;SoK8nXj%Sby{lbY3!ywNsN+OlKn)=I024QDV%n1x~VL&)h7>*R`^%p&?awM&$ zUbxgCay5m`WRMF3!g`VA1KQ&8q{x~ME;C3wQ*;n=1_Q!+Y1JL997n5}sMc!`c^1XY zWRMF3!g`U_9mHX@>iIVbgS0-%nZ+O%`h^pvjcuL_=Z$Ti)p^Se@{*J^n?Wx03+v_S zn`b4jrl_>SAna_4i8IKB0pUbpW1FWQR@ppjM$W7>h&+eFx)|ibfUsVq{_KrL)^zY> zgS54xgOD>A5Y|i6H%~pSvU%2wn>ocGavjBVG024hVZF%e4r24Ho?*PoAnkn0na3a( z`h*ju=@Xj8-m|AWzCxd@UA>UgsRnTuP|$n^xzH!97w6J6(bE*=wF*kaa1gEMSleeZqQK zm9BL!E1$-sdY`h|Ag-T+7Ba|%K4HDMO4meO%`5IqgRB&#EM|}k{lbZ|u)l1qY$3~* zeC!_OEQ7=il(mRKF7ylQC6?dNd#HDKzpJjqtuY9@Omq)&2K~Z%VO8Dx*!@YLLE`0< zvWP)0^b6}HR&{Uu?j>b~VK;V2}%a!imDhb|)t-?^$x%M~m-g8^m2hK?@n=LZ7f+ zoW5a}<7(>C=NM#NODT&P(%$macT7$&vC~FaeT<90pOVppaN@7j- z))|Ct6y1ZILBFtGn7(0(u*!y6Q*=MqAaN6=EMkxg{la>QRo%meSzU5J&mimuidn!Q z7lworg^i8XqJ4AsY2B5Lb6WL#-Fkya`Y28tC*;DAuwJA-kf|!N=Kbz`gS<2)EoP7l z!@`O3#s)Ht=2bS*norXg7^L1vd5ak2!mzMjsy@P}I<=;o7a9a^7TtuL!LYDipgxdk zG_bO<){HN>$RPD5N?ODq7lwuPQpa@@8|?I|j}sRg1a6_I#SC&`SXeJ`TsJF&MQMxy z6(P$XVlFXA-AZ|j805mRuqxI0hQ)L*o%??>&HsOn=Kjy3x&L3Gx&Nm+?WUj2q&fO@ z?tj~1cGIpO*-Qr=YBzoQt2WaTI{*J$wC>-mnpz0%l+VR$v2mAOj8@paD36 z3%G#-JU|6r&feW~S z0z5zkUeE}9z%S@}2aO~!)z_}QdcF+N&{e%hNGz^LbSOErHC>U^|V8Dff0T&7eTqqcDpU^|V8Dff0T&7eTqqcDF|M^3exYFa zg@WN1ievbFiU1y9X1}C{0xPfqJCFef4$uIczy;hu0Un?NFK7fl;0FN^1R)Rx5zqvh ziE*uM!S$`64M-ls1kAt!tiT5BKn5H*Km%|B7jOdwcz_DLpb_|h9|S-Ugg_WXKoe*N zEyTFiw&MCW5Cu|{Faa~L04uNoJCFef4$uIczy;hu0Un?NFK7fl;0FN^1R)Rx5zqvh zK?^aywYa_wM1j;rn1C5rfECz)9ms$K2WS9J-~w)-01r@s7c>GN@Phydf)EG;d)IGp z_XGzHVq9w*aJ>__fEy^l161Gzjlc)|AOM0O1hoDVy+Q#SAS7S{W?%tUU;}m_0}dRZ z0XTsRxPd~9Ypn;@tH28yfe-jW00cn@gh2!}fo9MGT0t9#0u8W1LINgW1{PoiHed%b z;J^VIfD^cgajkXZdIflZ3cR2Z_<$b-KoEpL7(_r5Xa+5y6|{jU&_Fw2`w0n{fEieT z71)3s$bbU}F|M@@xZVj|zzr1O0V?o=~f5Et9TMXhfwvqsAI9Hk%Z`aQSdqJGbDF*JvZT^e$NqH)bAOi2rO<*q+skogRl2oX0!LWw~4Ey;q}x>b`d>#(M$0v zN#R+$jGm_cEAez*LyvdwCj2-+&l*soX?lkGx6rfEe>1k2ZP@y6$BSV*J$wgt(zDT@ zp}Xq46Mu0RuDgdAxQ`y@-d#lJZu*P3p0X|LBu+X+Pl@d4?|aKTA)gCr3Yay+F_SFyZjLNDYdj1QLfWcMWYNPBWLKVN+~|4`~7?V$qA(9hDE0U4T`AKR6_zi^*+U+UgG z&B%}6ow=)cXY9^2&BNDrYC8(s(=-Ract_@r_#LI&vos4|x;=MWlEwlI-@A5~q+4<{4`01Gzcsa0+ghNR_^~a;n=&`WZz^rhZcc2LHs@|k-l)=S{8U;?7Y5P; zu>p2Nj^^U4*XK8-Hffs*8`B$O8;jRvu8Y%*{Oq-fYo%***Cc69e*Wsz)!NmCtI{+p zzj$Tl%J`L~E3z~%KT31*)BnL509`Z&AiF-XURs}{+4<^u`Eyg}YUdVcetv9SacyR8 zd~NBR>^X^Zq;qm-Cux>`KAB2t$wFV6=IIyLWY+YZrJj{PGj*m$v-H!eW2=j2>^vh* z^YpW)Cr+16&z+W}nfm!tQ>SXD7FMNK#a0zh$(#~DrF3%kk98GiXJ*G| zmuBt%zdY~1baZZdlIHOb(;WWz)KV-POT?sDt~1%GcIJ;t(Mr ziSqaVUa`{P0mLV{`jkqCaL1`m5LIoFH@i!v{`dbkm1F z#ce5j553uRxD(>-X3D@B>>ax4D7se*?PK?r_p+h>KK2i~>-BE^Pu$nLcU5kpH?1%H zG46ROMh$kkNlLi(qGJ~%5ihi z_LiZm#N%+JljaY&7l`X@L#MNM=w9~Ps6UZ%eGvx=Rb>{+RrJJw-gmtQWW4S4|{(03{l%n{d}s7N)zh&<)raGUbmcjeWfgBTb&gBfr4C(d`iT zcnKd6At$RcjYE^B*A2A>jHFpfqPH+@soCDMEI{AboEAeqTI8F1Lv?G z({G3H*j-OO(4QB}f!A3x-Tx!{)97$#@Mwt6wM4hEpV71PRoqd=6?W+#`s9(%iTl5+ z@)x`4m7zcJ?VeTa8}x)uria5Eap|87n+M((FTLI3b>xoduM7QY7<_}-DEw5tbK<7* zU1^?MScqlFXyUL$%2RAX= zEqwSBdZ_J=^21;n>5%Xm-Jm};5o(X4eCO7owd{9v=U)|@X!%Y;p4*s(et!);2zIR! zH*yX83*GaVs2TQcP%vCZlmntN~|qdmxn zyXorkhjX=S5j%wPzk#dt{)VGpVbmJ7jrwIxxJ{LfqVqfAA-#v9=*wMEY&cDL^;?F1 zCw};#@?eksQNw}1i<{ompSK9@rz`i@(rKoKGj?0$c^JEicc~JZAJSiq)qmxT?qS%W zyij>4=~dw_f8`in$zG?&z84#UCZ6lS;MYZ0mQ$N8RflMC)E568hvwr*0RC&y+gNib zci^w$rarxm)i*giT@rQ+^Yu1X-xQ$_pKWy0c6$2gD+g_R`ge?I|M_C4b~){IM|Vfg z-dDvom(x3>(eEeR`$X&8qjxYod?#Zwp#6xrQtG1b@z+kZrXXH z-X`o6Xa`d6Sn$AB@mPE4l|x4~c8ecYQrGF=`Ez1xUPE`UM0b8x{7}LVkfdvBEn_aa z@7WY&K3qJFyTl!YM$Ts6r0wi9Y-dyH(djSmm>ui}7Nx&9M}I1D)3(Zvu= zh!<~VCw1To=A+;LYUTIw)a#9$d|<8ERMt`J=~>=Y*^vy`B>tL(tXbJ#$OfJn`u6#G|%=u8x#n z{o(x&vft3dc?mrsvio}RKxhX}VLzouvLDayM%ugUS2rD4F80+g>8S~N-EAx1OG9)n zdy5(=(ZgU)&|{h@zkjrOE@3LQ^mx5v33?*wuSAM#Ai-XtmTHt@?xzu+~G6}D3xp##9mYQhOxBq_npjG)jv*%x8GyJ^X%<7w@E~kW-Mpl1q zSKkz(_do2n-q!DMBYoJSk6fZX_MMlC4;D-DE{ok#NBOaqqy1vLFzcPeO;gK#XzpCk z-lO)tK--eNazv%6?^=e>MF-JqnPUF?-+v#0|2_i$eFXkL^$2(#rK4J(=-QhbWP5ra z8r(fXXOGO?r`_9sck#~7Onygtd+GM{Z3k}6+%mj1wPpY2)Q$TGVmD+rja;W)m$_#6 zD)p-Pm8mPTm&Y#4rxN}7OA;3kUN~}odOaQES?5`sKRce>xn}sx&eh2?iZn-qt?E5_ zaK%WXt2ebQyEJx^w4|^oxv(@pJ1;R;>gk;$#dEV`vkE6fXZ9bb9os)cI=XjSF_!9- zj_N(4cv#}l!GmK5EV~M$y~_XR2X8_sCh> zh$Us-FAdWp{+qQIn`XNESZC$?f8QnIdDuYG8xnII*udVW9e9G?FzGus_U)DTe7S3z zc!T*iKEo*cpJ$DF;72@fKfxBWxW00W(pgicfKPi`U<#B0~$9hps-Jnq|J8 zzRfh1f1eM|7vGkjz()f5ek$J7+Ud$5{q`Ny5_@y`H=RT0us_n<_{C^T^WO0(3=(#IH`lXE=G_dhuoRIsK8jp8hmZ{#0Nap3nY3 zeI7uIBIU1w9dxCaT67~?)LL#)bYv0x4YlY=v`BNcl&=oc5EmSeIg9#g?Qm5-%$PbC zGklk!lg2aaH&RgqGwV(1dRu_F^%qIiT-H-pCsvHh`7lVJ%`bw z%T&65dw==MmvjF<@mc0%WOy>BC1T|6C2@yJUDUK2l*(9jmo0rA6`^l3_w``;8l{0%=yLvM*6a@14W#PK!0 za(9h=zY#Z0(mxGV-_+XsdvVh%AH69&h(lbAU94}j)qfQl##eL3hCg~!Qxsb*W7k!l zhOuU}^fgI1(Dh7Z6B@h8v;S)GO4>k=tbK3gljGo0@k#9_Y%O#kt^8W@^RqnBDZn-pLHL2E#3$e%k8Qqw`XcZ*dYwk_cpgrVXNTBcqy4utJY^BQ`lh-kSN0xM z)WUy{V;gMU{~59IzNx@*~vjna95Jw+}!36JDou__n;km=F9)?5eNQ zW5p9weyF|C@3VL5Iap8IjG1n5nak~I-T8a5`MxvyH={R&2fr_#w@C@SI2;BWe~u#2{b%A1FI zWI6jXJ*FQ}Luj|StGvr@?!QwU>2=^$un%v4qIF)+M)6(tPCUnzqlkfl@3CLeU3?uc z<;o`Fjs9M|fBvZQl<=hKDvYdVneteN(((Z>0Vzjl(|^kMn+g`@)fx z%7HBNFm{uS?brKReN%9lQ_C59On-E$Z))icN%#o#y1rFb-xT(|Dvq)5r5@AEPJf@2 zJ5ObKdhOmwn}vBVh120?(O-A;baB+@TlyX0xD_4L7B@A~#(^UqYv^G%@53P~aW(I} zSUkHg(E~^Ch5F0dMhDmNyNBvc#c%H_zkpmjH;8BJO=^#I^6260Fk2}O!7jn`h4&5p z(R6lh6??=>^hfGZdc~W{brw7n|NZa3kHCK)f&V@N|37;KMzURlg@=<54ed@oP`bbC zzT7>@yNB*%ncf|PcNA_<-d4J`>z2aS_?E)v^o<7wqBj&ar8lbAWv>~zO1mm|Mf~#A zW!VjCs_#^Z)<;BhTdk=DUoWl7UlOAC2EEPmZ|s4gJra828s2Gt)H^ zyTyko8ITKo!m7y;)qgiIHo0wiZ)N^a=P~$|a$LVb+^rO}gh4L!3G2n_liSL1HPaGP z23gxEWhsMP=oe0uH8#0TWL4%3)y(7GV32qlWu3$z7y5k+ET7C2-{9EOBv)szp!3d zRrf0MglbL_aiu}x4$(cx8T1S5C02EB{3+$HG6=hi0v0mJg+Ad#VPmhmRUbd8^lF2+ zyD4Z9gIwqn){E0$cjdU6S(n!sWZgq4OBm!rzi^_gvDcl*s=V%MCY4@mka#a;EoP7l z{la>Q`ZHHatm)o$24VM!?m^C=Usx|p-!Mg3<#ksxsdS@3;{BAem_aV|3+p9Tbq}w* z>OJ%(gRloEW)*{6=oi)t(`R_jT`{_4*32lq-XL!`C7sG37y5Wk6HnhvH7(jFEagq*>E zuwI&eZVx@JvUS$XBE8Wdau3D)AMV~ezK!F||DW9@0S-GzbOI!oR4+CmOQsraffOZ5 zq6*Y3$&M}9j^l2@y~vIb+i~J5xZ80NT;dknf=ldlBju7@oW!_XlDkwPJlL;` z&h4KlKZ4{tn2ANLE@+ptm#}i6h&*dhC?@2Ok7NBH?n6-TNN!{$LoQSs0 z*@qO?kCJbb03|cTbh1u$tt(brm>*UMpW-kAF0t_*otW{xFci3)I z2wx=08UadXgn6mBLQJrw)@|B8zO%ecjV%?&?F#K-60Q}X zWJZ`yTA!FkYwO|Mp>XENwoZVO8D-XT`h@R5*U`?(Icn?39aNZKBIlR@B{Rx&GW(}B zm&3(n<$wCW*G_foLoc}XuhP2zTd#HNMOyd&JX!6&=ueft__=#m=_$NJyrlGwU=j>ihW0yl1a*Bt_G%%N*X?JvV==6uE;}t(v zt@?pjj+w2?yY{{-mPgxN+VYkyUTwLgY6HDBinTi!A6wk zU7A*2E{&A}1~I>OFoe=wDBXn84OH4s5$&Tvcr=j!`%8a#f3eQM0?f``5TG&(LR4mf zq%sS%fp3cdJt((tj!ENlFtKrt9QeDK)3~Zdo74VISeyO>qYtU7yiT=-=*J-IE?^G& z9L$rP(}+5oP^ZVK&Z_b)_-yF8y|qrPl0eI1zb$4(D6CoC6xOU(3Tu`@JK)7HZuCu5 z?Hi`S&%;#Bc}=t*^O|Wt=5^HAkLhcuqsqIg_73yv=V9*Wyk^wef?7MBYptrGo@({s zSL&no7}NFV^`h<;)ZL1@y|wC|wg%TUdyM)2^DswsUMp&CL#;mNTC4Wh`^MKq6HXiq z#iyU?TA!ekCsO0s$H`MZ7O|wp5T>OM)zOzWjH>Dz(VnPT!{e2<8G<#Nil0pU*LE zy?+VH6xq6hm#ae?uPHzafp<_95*E)nGfJ$cMFd z=3>2yx$U&|+z#4$u1;Ie_0it>r#qjh5LQ@Oh*ba%cT;6P3ZrEeo-_z``Ds=|!13lnG8}z!EPDu?)e&UTke* z>v}dE;FcC=(W5w<_)MYdo8S39O`)J6O5N^(cSW~6Qm=If-|5u4n-5We$<0jK%xj3Z zg*QT*dAn&dZ?m9O%(DGW(S#|9VLGCpqSo7>+Ih}c)d5;*yRj6|AePJ+4DLhEr58Py z1L(O>O@WZ2G}aIr#9AAJA(ZYy=_ZtJLTPlsoZMJ^Xb_8Z42DrUg3`?>-Hg&*iqcrM zXb`J=40fS(6s22Gx`9g9>NSyZ0agiF5TG&(LR4mfq%sSl1Jm`Iu%OKxEV?j9Uquaw zv4t8CNh60Wy(Y_NeRQv>n`*6Yl(0U|9IW9m$3UHRsI$?j&ZygJ&CdG)j(^O|bx$24afS$nB+TQh;< z7qtdaYdvapq1I;STC3tSsn+RxO;}23UI=x&P`4X(x74cp=(Cshu5X$>#@a;l!l>1a zS{qPnt8=YYdu&^VqkIjlti)0NTV*kh^4}`!ag_g7S(2mtx5}y<<-b)H<|zNIvNlKg zZ&S;2aNAm0po9OyV_D0a{eLPu^j6`U#cyceFuxvuGx@djKW4w0|4Qb|hrgKoqUVeG zFQmQ@`}~&AX`jn|Hu+i4XH%a(_=)%@O0Q>MPrUAVZD2AJL_AkIoIRX4tR2q1n0n#x zbIIpC&*h&@JsW#wALVu^Jehtn_GE$bI>a6?K9+eb{+MlzhKG_5c^=AhCWpfP>HA~% z7b$;3{JzrN*}D^*wIO*|;-GdgcSrIL&mDQ&x(tPz(>KR%E|ynixG8&6;wJ5;+y|2% z%-xW@!E;0Y`qcI2^@Vgg9ZMGvWDdj+q_2xzSG+cJZT#BO{_Hi0YqV=}S0}IbTy0xt z;nKvV+NHTml9zZc$)*x1EtR7T3!Z(+3q2R+FGyWrUQjr{cy8w0__?KXvXoUJ@jmT+ zxwDdIdCtneH)mNj0qZ5iPb;08JvDJ^=9Ks;xjo4}g$2U8giv=d`P#g&CkCf6(|9P`fn?EJ)hZGLW^XYRnP;>^s< z_{`FbT>o3W>E2jxu_x10jAo+oXepA7BqE+J8fzBJ1(E>|{l?$kneRw-m>mU=HETeu zrP!QljyIQ@vQ4(t0qV{ALS4EpR#&8-<$b^W?u{qV{r^eZEcgEheH!zv1{wefGy+XPGtdIG0&PG$-~l>-PQVNJ06!1_ zf1x%n1Ku6j@N7X?8)2IXL z0T^a3W(2Z(nF8h}iTh5^(8^?(a-0}TK&EgFqL6VME_0Ifh9&<=Qj z4xkh80zLxmp&#!9KoAH4VW10$08yYD=mB~G6VSxZXg2}mSTvAh(Ljzx134BA~J_K#oNNITj7%STvAhk@gT-77b)sG>~P{ zK$b-VSr!dsSu~Jk(Lk0(16dXgWLY$jWzj&EMZ*M;UC}^xMFZIt4P;j|kX_M0c0~i( z6{)!;AiE+pw*+KYq~?}@?26Rf5|CYynp*<0D^hbyKz2piL*!Sa2A6>Riqzl|kYAA+ zTmtedQiDrCeno0<3COQV4K4wB6{*1`Ag`h!dI`v@XdthmfxL268GI$f;-`r=o$J ziUx8j8px?=Ag7{%oQei=DjLY8XdsuOfn16Paw!_frD!0RqJdnB268DH$fal?m!e?+ z$fal?m!g4OiUx8i8px$+AeW+nT#5#ADH_P7NPCEEiUzVN8px(-Ae*9rY>Ec5DH_P8 zXds)SfozHfvMCw?AP9tjFwg}=fGE%n^Z>np3G@N|fY?XS039%ZI-nkK0dAmyKzk_h zz7c2wnt>Le6=(z60T0jtbOK($2l#;i5ClR%80Z2bKosZ(dVpTQ1p0t}Ks!Lt0RyN5 z>It-mF1&XG4S)n1fhM3CXaQP*HlQ8w03ARl;01hu9|!Z+5v(aXaPEb z5YPjN!vq)540HfNpc|M0)W1b&0z5zfhywjU-8+OvpdIi75ugtc2I26l$yYtE=3hy@ zV!l#%IsJ0%<>E`3m*Ov#a@kxWr{!{olZQQr^Dm}eG+!*dkbWWdLh<>`^YQ0PAIp9$ z@iFaVxygGwlQQ|GpNTzFd^+=V{OQtD*{2duX;0-on*6ATviYT+G@mRyk$xgZ`TR1E z#~&{}mVGSom_`}>l37nSe<*dxq?~@~M`Mo`AIUrtf28zq_Tj|C+QT{P-Qa`i2V=Ba zU*>^0W%kS7pSWMUKX+g9KF@vmdsFwC_ZIHidyj{5`=#zS?=IYxzAHwn_+{>l-&x9J zGl`6r$sJ4{^c>9Jk-DR@rr#U4rEW86G-rVn zpLu`${iW-&*CnpguFGAUyw-DVet&Aexxa8t`kL4^#j7({$FDA3b>OPlRmCeaSH`a_ zU6H*aafNn8?(*d2p3C!>r7klsD_oksGh+R-TKXZQk{L*>Z^AhK2=jF~#Ql`KBIjM8Za|&mtr^)rV>b<2i zvu7sG)XvPEkvzk5M*j5F>E`K$WI7p37WZcM#`l&^%bu1vO*<`jYVxSH{xT=`p8VFH z^q$zB;_l4u`0moK?5@NvZCCE3n!+P2)* zvUtE$|5?@kUoL!t)tWD(oJG3aVNL!SPC1ajgejqhq4it_}9~(Qi zcueM)_%Wr0*@cOP+QQs|Y zf0{4nUG;xl`>(gLAk#7?iw&8EctgpZbtl}KJLgKeJg$6w%5tZlG2%u^&*}+XqjCR9 z&713W}2nWU>SqH7&rI3D{rJxjGm|08OAvzA&q+8dGZsO!v ziv}#8@!bmPYb07HK*SGWqA9DLiz>LZ5E(pb~9^9{lb4BGEK0Rfn~Pgf)6RwUnJ=!0ZL{! z(@7neUTq8bVTJWe955&a*v)jZP8V>c8MX~Oe?+1F2hwd4pk#J4oz&9>jCRYl5SLhk{MEsg%ZGnVi0+h@M(@AS7=zCxD+R8ZGk?cFn*T<1*HJPOebS?pp`b)HuU~kh4x=aH6%dE z3^Sdy)q$eDwYCY*DU3fL*Qfv`GsLWAJnFFBx^4}ho=dI$!H+4NKP1~40ZL|w>EyH> zw(PWZ?w?l(f6PKq3NXZU657tqlO}>(Yz^`Sh4Tn`)(TKELrf>9El76S#@xTC5dMTz zs{|;SQD!aSQ60gN@eN}%XXNOc7#e@*c=7xx8RG(!%qY{zYrB+9dTsYHIfeA+q#F~U zWOgxYNjpX70bA!}>n>{JIaJ)p{H$_M{F1`@3-YZKpk#J2Emkk(0epn=0M4bk0J+=T z`YOr;_~y7DIqRIRH;R z$*up}EVq8ePPeX|<<>v=DvkYruUo(86}R5I-K{@;y<1;A;?_TNv0L9j^8mh+aO-E% z`2XK+aqCypA92X7e=o8BkE`hZf97_}{eSx(%3q{~lqI!7}> zkp6~rCkRk7Bg|UTqq;Q1JGPB(-FkGF=Hm+Ozmf1n0ZL|s>7=zaVHK^dOY@q-`CGCL z3s5q|xfj21MXMbh>b-?csb<;VzMNwE!ivhw0?D^*1UJS9fzhrO^HdhYU&q_As5a(}p~4 zU+2>b_wUKKT7Z(-!*p^_8*+7r=Q9fJpGY_=K*{W4*3wR0Ikt_*caGMag!fs6^S#Jn|8>kj_EI9N~$Fv4_l9vy7uD7HPU{=6dC|0WqNhsR`Tol$we_98tT5J*YqbC+ zvx`~FSlt{|o)}*+aOHrt=kyhYwVr&V0+h@yrjym$9968ge$!VKN;k>Y3Q#gb%v#Fo zgLd-k99WFb_kZnwWv_2Lw#B_3658ATR)?@mbLfA->bpn*k5YtI$Z4I_e zKGm~6ynIvPY$Drw0ZL|w>EyHp$xhoNgRd)uEuM|zFg*i! zhUWh-p=SVJ47>F$>)rYfX$^q)o#WR3ILECY*yYySf^PjIYu);6`t!oQZhiS0x1PVp zt#4Z5*8k;9x1PMzt^fQBZvDbb-1>if-mULH-K`sUy7fEaZatWC>yOjD|NH}V|9@B) zr60b(IZpTgdv{pw{}2D3_jaP~{Ab077Nn1Br2r)}#B}=5tY_Rbk6gd45Qg|$0;K>$ zOebO0w^ZrB*`Bz5M_~<Ah&_ttB>uKu`6xx|2r00691ta|4No&3M zPXDm=hYIIx@~jo0WQLiwoYh@%`?J=`zT1x!(mA9XqZy@;f?=kU)Y=uF?lI<%6~=jF zSs_5l3^8jNs}EaR$7;O%SkKxKKcaBXC)-K^N@j@Z=Q+WIv=RVW8YHcCq}KnVt!wUkGnNtf3Vfpag?VC#AieC8ez+{&R)zIC6{%P%;C|TD~?~J<=zex{SKtsGxPX#4(tt+1^i!$tv0rk7dER$jpsUGLG!M>qr4FYj%IZY7B} z2~aYo2bVrf?3EZG!+MGsJXqb{yrjJ-hjLg>Zya8wDttVP-91c{GGQ$jXg{ zZMn?fDzvLfI4(fR3^SdyomFv?))wgR6vj~w6qEuCGo6gVDr2Q@Zd*3<9ffucsm28; znPH}rwmMLB&X?eDo4DyIDU55$wNZeQ8D=^es{^G)0WX*nTe;Hq#QZ-L+A$K23s5q{ zOebx1prp0+UVpDJuH!&KDZnt($ygoeaT9^so|gYXp4viow})WbfD4@4Xmkdw5I+0mp9S6e8;%;A6@I#&tFLQ_WRxX^$Xm3 zGrc}Yzy0@LeA2nvrGRYt^aoe-TV9Ab?J}O@BhcS-TE8HyY-Fq z=ezW~|5-k|-(OA72xtw!Ci?yVKKkvym!1K<*x}Y!47>HOX>NU2jK&wVyYgzm%_M}TpI-_nPH}ru{zL7Yib**{oe}hHVzb&0t_>q zwAF#4HMMpd|Ee%OiZzb@dA4Y2?}{K*vVWyL|I?(EFom3dl zB-eTYN@j>z%UInIEvhs`LsWL!Iton+;aQ~GC_u>! zGiwQ}8zKlR4Uw%!)U43HkA&j_l*};GNo)N!C$zReTNK8#IZ#jvFwAr^S`S+oD-DsY zN7Sm&o7=a=w7N&srZApMu8jhe%rMi*SRH7kA+q&|CXyi6936EY2MS67 zhM7*<>OiY|L>@(;=aXfl03|cbbTU>4T4{)EJ)#bU_5u=)3s5q{Oebx1pw&I1PK7Z= zu2BI>W{6qKXm5z<*OqK=d>#FkPhHhx&y8nNZ?*Dht{r^vC?Em>R_Wv()>Djm&3G;LXe3`W~7C@YBoao}O|5{Dpq||FD;y5zuph$NOnpy8r(qjr|{? zIRFJ3`@e^N|Nm7lZM(00|Nq?2ZuF1P{eR)4sr&yK2mZ(%?H${vZ7hR|kLGgvIMxbK zGQ&)#kEZ&|sBSDn3geaJS}j1y3^HpO%fH}M9^H)YtejcL4It`?OMFe9$?ewDrKd6uzs;v{rzU8DiG*q4fyZeUr?g;_abZTA`73hT9GS|dQo3^ARoRbk?QU1B+UdKAJmsYV4T znE~eI6AuFT`oYDmMsnL%bPo&8XSu5zf_?tK?1q<4{Sy#OhxDly1( zl1_b#6H;4{3l+Y*$+1CzlvR~|pp$RvP=&8@sM_v(k5NePA;o$DQhHUEf=*Iy`*s#dNV)&^ieA$*WjqXMK1q(nc{N!T{k%0XxgFQ%|P zM26J@q?Dj+1D$N;eg>MiX)lV46vBt8`cVN=LQochPQt11j=m-yr?6$I?h^z^$t#II zW-VKbXrbX8{OxVqIzF*ViEVX&#R}hJoL0j|H8k!^qoI+>Az@p z>sS52rAvDK$ZuTwJR1N1>9<|_2KxQ~`;vaw-|g1_v%#&WY3zRo{q}!|?)wMmxBpM= zqv{vZ5;gOaeJz)zZCJOh z+%^mhT5PKnwj3G81W5Tn*#x@*2+R#a3c!WD^&A(0n*Z#>;j!!6Ne;s*Atu~+Suw18*T}o9C3y>bv6aCCuGIa21c>iQ@)1Gzf70Sy<6Bi&osb?kV zq@ESoqKqs3uz-iCCafR{<62t{4nSQ2|(i&j(xwlbayOKP^ z0;Ff{L_gEXW({!Kvu~3^c@=5m0;Ff{tOT8u)&Q%|zs(BU)l~Pe0O?6P+dwCqHNa_q zjNGD7UPFSo0O>J1D?ulvHNfg0A`=SR`>F0R0ZOKqS<5ytnE)rm$m;3t(zYse^jwhI zPEazvOeY;pCYaLMZql|XTp!@jKzhne^fH}XH0y+2mDNCP_h{P{y6Z`?PJoi>Wjg69 zp|Q?(i?&1Ix{)kn0;K2LL@(3HRS9i);#;$=;;~bq`yeUS2~aYG}i4~V(Igp zq;P$REMo$cOfS>PRS7LV5t?o3j$I1fhdDHm9^DhYOeb9>G}hVf40bDAw^03K0;H$t zL?5%3YwBWt(%OxiS5K^mW$ixiQTT2p$2tMh19bL*PQLQRyyCN6>rPh4ZlkK{={d_l zKfkXfo4S~nWz$~FPf;juCk;J2XC>(8_fE=kOF5~u1^6C??G7?*5TIoGnNGIyrJ!uH zU(6>uZQnbAe$)T0OaC*?`M;I!{Ua@I{qUPEJ^tS={o7x2>1X|yOaIG1y7XKA;?jHQ z^)QY5AO5vV|K?Jf*H7dBe>+Iy`+w=uTj=%CU%2!IH1_{<-*)Mn>uC(Y7hU?r^xMCS zUhnCowFST6(qE_h|BWxX^dA>p`XzanuG4dXd*5*BGimI<*rJQ!O}lOwrTl-~oV z@@`%#mX_Y+xAMrh1tn&^jxrJ7-1-3JAznmz!yjk~(Q7~bO}3WPc5+H*N?cCqK#>RO z7=7=5h+{h5q72`iM<~O0=s=ftOysRMMQ4a|*FM%dMn$dZmMg_kzC-*_Eb+eewph~K z{%5hI^@vMb5^eWsOS<2nY{Qj=%hnP|-V_UN`417RCu7V-##l2MV?9)2BHg!jd*peF zg|NK~+qJvdnOcj#d8;7|)v+&z8Z0o|d9oRp#EZ0%u zZnQFC+RF^>ucYPzspOA3usbHcC;sf+w8xtpX^%JSy?+*)>u8TRchVkj_Ml#>ftnnX z8=YzD!G2NsK}qEYH7Y-7Q2D_QDnHnU@;CFoVDD;uYE(rXRk7SnRV?qO4{f zAa0qic=YIfK%%uuRj$8Guiew2>d0iv&o2Nf=C(iFM zHL@cSYGg;eIKTZkzg=_~j2PBBr#sJsRB~>ZO3v-TdG5t|UPmSAJfG$aMb^QYk|LZL z!dVx_S=UP~(@YO-U3G>cIpNGkY#YY5UD(#dwk{mTI6KGa|6%G4Ji)EzH0M*f@#>;o zTot8VT;-!(Tos^QT;--+T;-;UqK~#-SL36h?>It5>3T{RN^M4yRHVZQCEEZTnkj+x|M)TR&=_u01eN zq75Z_P@)$l43r2QT{|*!&ThxHz1Y^owsqLHnYL}o(1C&r&GcOfBm^bnZ zFaw9*6=rCkOEcwRuV$JkF}0odjUR|W@Zj4b(Duf=BH%gT(gJ<7U4V|O>ZZ2lXJfq^ z;Fhmtx{vmM^9k0f(caYl|KW31d@K7tYks!yne=C3pDBL2^r`Hp5}(pOmHTA!lZDsQ zug6|5zLt3{{#xnP?5l}awO4bmBwvZWRLo^^@m%R}_OLZWq%|{S=9&02rKht`C!W@x zPJPt;XyM89ld&g@Pvjm?KJIxu|5)lV^Re`y*rDR1nMdP~mL7>cRQyQhBk_-v9?U+N zy5GFNa9{eq*nP!&J$L8tO5J7NRk$;KXZnuV9mU%-x5sZU-Il&3c1!W*%+2weOCQdE zDD@%pLxr2tH^px9+?c;1b%S|B;rjIT=>xF?m7I+EYg5;n*B17t_s8~E@-SwvN?aAc zqI7xo^2FuZ<+;nWi?>{)U6i{pd7Wuj5 z2TzNiRys9%YU0%VDXCM;Qwk@iPmZ0e?aA#`d>B?JVxd?1=C1Y|n2? zZ8NtOwx+ihH)l4-HO zp5gqe)GBjT;l%Wbu@jRkJuCAoQY*|Ah2`;OrKQ=WiKW`o+@QI*a9sMh*m1>0nMLtf zX&^h07|;fC$L1HN7McqS3(^Z>3-a?)^UQgLx#_vFxyjj{+4)(iS>~+5%;XHujC_Bp z-|R2+m3p(iiC(QY*OTliMYGXFREy>!$%rSM52Zq8s1QsCWB#Hq5$h;= zGM>1n)Lv*!x5iqFEt!^hOQ9*<6l*FrW*Xy-xrStery=i7xlMPjE?MWP%Nr@fG=zBI zth4La(Eb14toQ!|KNrE&Px<~IIgdvV@LPIPMt_mWeJqjtSR(haMDAmWdwz-B#}c`Z zC7L^lR!rg^O5)Z?q8B33y^y$INL&dd8h43STcWX%XkjJpCnRnZB>KD(omq+gsYI7j zqW>q+Ws}H!ERp$GBJ;6C=3|M>#}b*3B{CmNWImS2d@PaqSR(VWMCN0O%*PU$k0ml6 zOJqKl$b2l3`B)lNi{Kpdck0tUS%Q~PQK=xya?8g$>k0r7n zPwpqOAWLLHmdJuEkp)>I3$jEOWQi=u5?PQXvLH)jL6*pZERh9SA`7xa7G#Mm$P!tQ zC9)t(WI>k5f-IvzH_!w00w&N0XomUY|gvtGEz`sbK5oiLMffk?@Xam{- z56}U00$#ue_<;Zr1VTU<=mH`@6zB$efL_1^`hb352A~}#=zu|(+|N4vOFiHM+&}{$ zfkvPSXa-tLe6=(z60T0jtbOK(W?#ODBB|-^TnWx^ z0vEP`#|FS>;dB@I3fm!qdK@&-%Gry8O*eTceR7}1i^>H;G;d@6TL)f z0{!^=)7o3~RtM?;7a)N~pb2OOT7Xud4e$URKque>{6GK*0wJIahyYQb8|VRg0Tbv0 z#1Vo9=zsy#0rh|ja03m11R8-Rpc!ZZT7fpeph_E_s|TNVgD*Bf(~h^Vd%;hK!OyqT z)(zkHpiBU7e-gyo5YPogfnLA_`T*@6f&tV4^?)0YKqJruGy^R_D-fo#4L^^7zw8Eo z-Gkb6`fm-tbAi8a0RPxWbZc$>^g?Ic8rlRffI6TaZ~<s2@2mswc7yjx@PQ`qBQ4;=ZQ!HrMA?D2k9ol-Lf|tVTBWez3mrt+ z33!1n{NvZ7;5TJ2@dwS|k6XcF8al{6GK*15uzC=m+#wgnFO>Xat&pR=@*z zfdCK&qChXu59s>{?Y(6GX(#v#ANZ>v_?r+>cH!-BBY4}5x1}DuHSzWjl~?*(`|G*a zlCNp6KV^7xu=tKf0%tL{#5a! zX}U|yKbd?|doue({E6b@>Br5-3w)oL%OxT zA2J^*d?fV|^CS5OQxAF`%sr5Jpmcxc{`mc+`!ak7nYlN1Z}Fb=J?1_6yOVcocjxX( z+@;->y)$vAc4sb=%y=^SgQK;ixA z_s8B}ye@NH{JPS$*=rNmYS-rWC--~y=dVd!V_s9ZI(>EQ>f%+ItKwIcuFPJUxKg_^ zcSZ6F&lUO0Q|iAdN*9!p530w2G554 z`qX-JePNwgmm5otdB*Z(Go68H!(#vAY zic2#~<4a3}*}=r1Hkdm;dA#TN{F2lXb4g*bSe!d9d7S6C{G!w%b5S9dj>Tfdfy_XB zpmc2Z*u=5gvAJWC$9Rsh-h&tCXXeM}m*!>XCFUKV`|#qN%$)d~((LT)#B6PLZdP)Z zXI6e@YNk1}Fe5!9Hlx^|>5uo9`m%kAKCLfjCQXl-?@jfZy@ejplj}})d%E+{RMdr40!cw^pTXQngW zS?b7kBs#Q?oG0n=c=GM3cC)?EmTrr+73n91cx$O8+mdL}T5`?FW>0gzDb-{)6&llx zvBsjz$ha&uWE&CK;9>r8HA3 z&~5#fZohW%S{na<*~I;SPn{5z`Tr9G#7|X>k~m1?Bi0L0GW|@aQ4-cM8P($tPgB@3 zJSGFAxrIbO)5&HXlQHf1!@UaSoupYWK$>63O3+DZ4X}FrVNzkcm+BrCpk#J3YuU=< z?RgB_#x3QXoVNTvrz>ptk!M7JlG(|0vNe}S%(2Zj1>_8c>H!W6q{)56PNtJ;VwB@X znq+i(^+MujDr^suVMKs5vyW|{lWj6Eve{-4zgMAph$(%>e5?bVbmb9;6FS>q%JUSik5bJi2v9P8%vvstIHaZCX$UO4Dr53&labC>7@s27 zkN|1&AkoKkGM2|2R*bgrE>OsxCcy~;q`8AE1D#}+@G2wnY-{sfs4zZ5^$!V%ot2~H#bmz3Qb}m)uawHlNAkC8_dYMkTN@%RJwU(DDTrW}m zqXMLfazr1qmdo0tkgL+9*k;OIt}wn#mem5JnR09dos5-(vTU@4cZEXs3ROKSK$hAJ23fb$V85N*p`j}2KOL)`H*4eKxeuBdTr2u_Q zC!;02>d89SDrBD_!HEKt%uZ%4+0@;@>g{72kM3Jur?7pNJgWpKnVn20Te%BXw%PiY z?^meaAj$CpluR$PmTKx!FuZ&F=tN}J&gB7xE>EIC0ZOKq>7*;SmlHZ_P!3G40gzU> zzC@NW0ZL|&S$28eU#CC$4VQlW-(33FKI78gLu&xMLv#PHqqYA$^!g~R{kQ1*F8vK! z`)}L#TzZk#{=1CU|98i># zd4lWcl+t#4cD=&)Wio9Lpk#)awS48J^K2njE@8Gt@CJqTE96@*K*tL% zlw`Gqd80!3RSpxB0t_*ogp?K0Dy&?}Y>QcaP+|Q?GOZV&WQLed)~YaZIkPS#ag##$ zCaE?EP%?weTEeLVcJt0P)&th6{E$NVb&`z>P%?u|CuRA7wJ2>Jk`F6<-yqW_0ZL|w zS<5$dz)t!q2du5nb+f|yP4aCNpk#)aPS)}_X|>wIyhR~=i^Bw^07FbCVflca6jlyc zTi@$eg|$GYjRKU+5Yx$86=rq+>o$e(+oU>4fRY(x))Gz~ur%G)a=?xZSX$WI70U0B zY?lBfGstvOPAnlXrQCPC#dn9o_gymW5ujv-n6-RU2kc~sl>^pxV}4L!{TK4>7NBH? zm`>L6H)*xn!ptay|H@&4Qh*_*ldyciP6{grtnCKTaxHrh4she+buxJ3^ARom2Yy&Y76r|h42W63DPhSVu!jGsvtZv>vd-mIKzd z80&)y<L z9I)07<)aGW+oU>4fRY(x))HC|*tqq8wJHxOl)oX_E&)nrkm;nX9I%s0TjwsT@ckQ^ z_6SfiL(Ez}>j69As~oVlKI~%(>%Wt4w*VzG#B{P&zR4*og?VW5R{wE@@V6W$Czy?Jzh{YCe}U%zFFn((f0^e0 zC(dx|Mcu7mxX7*lmFE55MCGjZFT0fB10TjXzM`rx#vUN26{~PZq-~Xf6C-(hZ z^cKtG|2^#($7*)ai_r;q0UzK80zeQ50b!sEhyYQb8|VRg0TU3t1P#yu1E>S)0TS) z0TA0e!wq0cg@Gv*2BuUPm{MV2N`--`6b7bJ z7??_7v;!WX1He=Y!wdKTKM(+dKnMr}T|fkg0^L9l& zf%kPlJ>UY|Km#CwMxY6323mktpbcmTJU|D~33ve?;0FRg5C{QbpbLlqQJ@>>0eS%w z=p)b`_T&8wKs!v(0RyN5>H!zv1~6^Hz_bYi(>a-2~dh9=ylI3Bv^XfPO%{MbH2pz=R2-4yXrQfE&Ps z2?G-*3{03XFk!;Lgb4!^CJaoNFfd`lXa_t%2ha(40Uv+~6Gi|C0wEwwpgruu`v?#P zx`7^`7chZ7Ks!Rv0RyN5>H!zv1{wefGy+XPGtdIG0&PG$-~l>-PQVNJ06!1_f&|*b z5Z;G@E+7I#fo`A&=mkum59kLlNy5M+2?LWP3`~+RFiFC|BnbnPBn(WFFfd8Nz$6I+ zlOzmGk}xny!oVa61Ct~SOp-7#Ny5M+2?LWP3`~+RFiC>;5Yr?KOp`D$O~Sx52?Nt4 z=;B7e^aumfBk1Br!1M?M(ptqy$9$3Isq@> z1N=Y$2m&D>40HhzAPRH?JwPvD0)2qCg`filPzTflF2D^m01{{fnt*1Yg+P1QiuY|m zJKzC2fKI>*_y9i;0D?dW2m@U}1c(CNKo8Ihm_Q%U4`_P{I^a9FhV*@YdNBe(5C{Qb zpbLlq^3Yn^L%;`g0VbdyCNu!8fENe@y@2)x!40$koj?fa0cHZOBZOw40|)}$zzo2B zc#O&doj?fa0cHZOHweu@2M`3hff+#kTZAUS0|bC5&=1tTLudrr0Y4A{`T)Im9Zm;A zE8qpfKrf(eA-I9ami72(3C3Q61lj-}&;^))zK_rVv;tlr4D&))V^YQ0PAIpBsI>S5ltVyHz)6c}7DL$Qf zI{tL&sq9mUr?jVXA5DJLLnHZ9Pnu5_o=86tqp|#%$K#Ke9?L$KcuadNmrZ6p+5Dl@ zA(O`Qryq?yT6`q)Nc@q~!`X)u4{HzS9!fssc_`0g`U?-HAB;U%d?52coJRF$?@!#X z-JiQJd7tOL{Jp7r&3g+puD_ke^{4JO?=IYxzAJWD@y^Vh@jFYIY$lP>GP#4vgPw!= zJ5qO;cNA_<-yXZYcw6SS-rEW^vOjif@s`Xj@moqaXa9#|`;#|#ZpdGsx?WtL`#|yo zo)6?{bibJ{9I(za&t8|fPP;C5ZSq>rwfX(2{pS9{HR)?&*I4JAAGtDfW&Fz071=8i zS7=w{E>B+WxjcVa>N4}P!lmg;W0w{$$xMvyPh6~BoJ%EB9va`D+Gp-7T$H{jcF`Lb zrf7tJ;ezx9u?vdlXK0Ln>AdWDiSxAca_1&#lz;x5)H&ukg|pK&#`zyQGjXPNX6}sS z8J;upr>9OgPcJ0X$yl&X1%<%#p%ydN?**jA!EUcxhF3RbrL4DtBV?M9+!&6H+IbClrR#L$RUa%FN2% zm4y}Q6|oh?<(cL2<)vlWWr=0lvfR?-QqR)-U~14DEF7OcK6ZR@NoGlWNojF*abmId ze;o6#&CAVA&h^aA&q>WO=M-kAXUAq2XJux^XO(7VXC`K9GjlVn^YPPtvA&|2G2^Cn zX1=E<-<|3QmUGux~)`b*8(=0vmBoNG!pd7AQ# zsYbK0Ak#7?iw&8EctgpZbtl}KJLgKeJg$6ws@|+G)TQfUbwwj%#Ep`k)f2j==d`5e z(effixB74V^>h2y)9?R(Ic4hi|Cy`GzyI^Xs1pxHDi79dzqLJ~cslYsdLpu0fRY(v zIz1h!dK`lXYt~U7Pb!4JC)HvBN@fSMmatJY9w-mZ8QHj+NA=pC0e@5>`vYl~2v9OR zm`<{$iJ|i(vpp7lN@4mVIR*tNnVrm9CJX|aczCyQb>%Ud?YZyM3g3T{>39K3W+&6h zR~d;7pDna!6skXQXrL5eC(}ta8CvC#v_0#6R^fY>9LEb#GCP@0zRA$4pYlGZQ2m7@ zg94PyPNtKpJbHe7M`a?1by~p36t@2&&r$(OW+&6hRt~Ievz=wnD^!0a$zlOYW(TvD zYU(Uoy>9E#vjSdF$o@u}B?6Sp4yKc=e3r4y_Q?80g~>ys`8NqrGQG@Nrl}EW^z-iU z&Z7q>A6Do(NVHjilIdkS>B=M0CUmwR0&@zNmqP=k0KH5nS7n9ek%`c3lZswa=zOHu zEI`ThGM#jl&{${tE#+l}D?pY_0+dWI)5%o{ZMYJeHPy>23SE#x1Em1HOeb9>G}hVL z##a@tFx9_FfRgEDI=L#L#Ves%Tab?{bX_FcEI`ThGM#jl&{$_{LS9q2qGVYmK*{tn zom}P6wv2AAgl6p*yspr7lPE4g$@DUvbmh<{bhc*X6AIUHWZ5D>$@DUvT$OKa^+X1{ zr33g8hAI%^z+XS9&@HCz5(1P=FVjg^`PNux8yWH`h3j~-Y!RSjdYMkHN@yb!q1l$# z|Fl9k$f1E!fL^APt`ZvSY-4*qqi`*w`nL#BGQCVES0%LJiO?1eSiZH-Ds;<9ln|g~ zdYMkTN@%RJ4UhPo!nKk^1Em1HOea?*wD?45wn;Z{D0D-lNYEmb(1Bj2ldcjP>ulGx zyux)N)gKq2WO|uSu5xG?WJ}2#F{jkpLVjMMTScN_TFewW(93kvl|!4**;>diC|tu- z|7rnBrkCmDDu;&AkrSa=TgWdebR#4h6`*8#nNGTLXcIbH3;895Yb{w$6rg1Km~h3W z8FOAqiV&-r;piU}zA-Yb5};)Im`*<26;AmmxWkhp0=}$}ts~8_043AUWLfJ)b$a$k zEzJOU3v$-K2Ev+25Id7S7_}2sZY4{(zjgt2WjkokjDN$ zPh*>RZ3s5rs%v#?El(;dnC~ZgER~5Dm{Dpv0fPSWv4GRWTY?Yf# z+jEb9R4B(u6BnRl`k78jYk<`cJ-()}Z6wdI043AUbh23koOXuSn+oM74iJ14A8IPDy-Zzz;oNER2MWcry-N^5}Clf1sEux%&Lm;fb{ zcAwtYvQ_Rp=@1>6Hn-1P3f&H>e4PL#)5~jWs7KBkked>O0wY^~1WoGO?XvJ4h4MWlTQ5M# z^fR55<#TRQX$$bX3frk1ASeasXFA!+jY`=z?PcL#6w1>`vtEFb>1R4AtpQeF7XDRX z+e@Ae0+dWY)5&HHaN5hl_Y}$`2M9_5`k78jYk<|4h3_kD?q041}NS<6%1l_Lt>g(O-jK*{tnopj}k z!Gz9sohvF_7m?)z0ZOKiS<6*fBO&In?8;9R#(m@(5};)Im`=v>l(aWyEHB~+$ zKuQkFI?zd132kE8m4BnT|JTyoe-FJrM)&_qC2XtasYmt#{Hj7IRM|Sqnv`2 z`!7n*0dkc4Z}|5v{hw*xf0D-k|DNXkABeg24tjl*=KjZM?!Ra^MC`+h{vUJq9p_ec z=l}mmnvw3Ernxh!(>117%M{z#7|UZD8?ZgH4K~#ly<^ckBYMXILJ7^HgccG+3#6iy z&F-e5B%6fYO@fj@vZ*MfXE*tMUPq&ud&idUmOp-99?5fLVf5A+wR^74`F!>|Le~F( zY_o0s|Hyzx+6Z`fhQ+sihyH&L)>=P#&&=aFB(U9e!a)`a z2U#c_WT9}7g~CA=3I|yx9AuerkY&O_mI()0CLCm$aFAufL6!*zStdN=-m+*o$fDsO zi-vKSqTwKmhJ!2`4zg%C$fDsO zi-vivSc{OlHnjrhJ!2_o^fwkKpbQN zagYVXK^71PSwI|Q0dbH8#6cDi2U$QIWC3xI1;jxX5C>U69Ap7;kOjm+77zznKpbQN zagYVXK^71PSwI|Q0dbH8#6gx12irIQLUOkX?Qi{-Uxv^LT@ZwBVaC0+xV{H^Ap~KF zKonvShd$_s0T_fK7={r@z$mEq1rK<^2QAPFeh7d8CbU62bU>#t!cpcA?v z2;E?Tti_Q#48?eh7wP1QIX`v%oVhc)TY?vS&;qUChX5F0LL0P02XsOg z1fg4)ac?cI?}1(jL3nXk{;SQx=v)2rD}jmHpcaF=!1S3fI%37VHkk~jKVBX-2*ZL@PZFopcVWO00T^DgLdeE zPUwOlbb|#w&@0Tiw;`?%Lj2PM|TXcK2drt`�)@~gR5lhQLF|4QnW>dS?f(=U5o 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�RsOa}9R=tB8T;5pP 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�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

    SJDis6Kz1?Zp6Ad# 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 =^;=MV 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∨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

    d6ZgPBbX;NmAJ*m)~Y}T4{P4T8uBoncb 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

    )-=aah}~_I`iVc0^>mTC{0-{pp$iaipx3 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 z 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%0AYwgBQ!xXv_LDgK|6FnCv-tK^avBTGs-0~aG)3Z zpdSXn92Idse^ zub8jo^Qn9|UwAqFvh#BBrOZq5mr5^YUrfAMej)cl@&)sS{PU^j!_OCYpQGPu4c=B=c@%&?{$HI>l9!)>$ zJX*|Ua`9YgXLe^|XZexbBgse1NAe#}eSF8miHFM%3r z_h;^p-(R{fdtc(d^1ZoxllPkU=I=?}6TYW#clvJU?&4jUyW)41?rgZTa7X$M=Z<1F zlZ|IfJF+_xJIc4`ZcpBB-k!fLbzAth!UxU}*zu9XN6I(lZc5%{-jx4v>cim=7j8`7 z=-gPmA#+3ghSK%f>l4?PughJRyw1EXpGjrHnZjs#)EO;ao4GcAZRwhZYYN-b+nw#j zt20-}uP$Acy()24`O4gt$t%q(^H-#<2wzdSJbk%ydGWH$W%0{Omu4?bTw1;)cS-UR z^OF350?Jr{zvdo@SnwKQ(n~_|(EF=~J9jiqo7G(6G9&D!s~CRa}`_ z8DCjSW|N6zc|~qTa)r4fzdW@(yu7e1z06rwT$))LUs_s{U6NQ*J|TBP@&xmQ{PC&d zcPvgUE-%V0N-i=NjY9vEgG2bJKI3xy55L$Hb2*9i2Toadi2p+)>G+%%k#0rd%uk#pjd` z&mNvQynI;hu;gK*hsF;r&CbqF{6lO1?Vbx@9FU)xni-y1*gw6$vwv~F%zkm{$d{dw zm{A_c4I~H5fqZ|eKipsFOZPc_#okPBytm|JorF`4~9Pce2~; z&UdA{!d->Vbf?ovhrW16sXg1CXfL$y zvX!%vmTBdEDPP!EFw>@E7UgUG;Tzun@;BxC{|&PyegA*^AhRt|ng3s7?EV;I_~i%r zBq1oMg*pg85JFH74G@M1G(rAN0cj7!866KCqw) zs-Xt_V1t5MsDl6mAq4f%0AYwgBQ!xXv_LDgK|6FnCv-tK^gtA1!uY#`ba|IcdZ7>c z!I&qQ-~$V)pc-nx4>l;Mg*pg85JFH74G@M1G(rf^O)6D8#^lUg(2<7yxrr@PP$YPz^QU2OAXBLY**iI|E!2gb>t21B4+0 zjnD+m&;qT{2JO%RozMl{&;wD3fdjqJ2mN5|5KQoa1yxWDHNwR0^mB;~3TmMa0uY1{ z)I$S=Ap(ui1kKO_tMjCQHX&9=1#!}7F0pCFmXF;xWo@OD5!-x2tW`* zP!A0dh6pr56Es5$v_c!SLkDz17j#1pL?H$a^g!+Zvp#wUh3%a4|-C@J7@}ob9!B%W-$94xDGd5z_ zeXK%a&!`rapR+R+9$1G51@VwpJhB~+?!>v>cw7_{4h|Wz6o5VA!-c*L;!Od}hVae? zyt@q_?!ZT)_;^f|Py0e2KR<20EoXgD1vQ|c7V01XK?p%TgdqZr&oFA&iBwuL)rrtE)%)gO*!+az6dgArcYnj*L zua#cSzM6Qo{7PPn;ki9p4Z|R=wJ@I==cW31Lf8nmwUFKc+JCk>scjoR$-eKO6&!)2BY+*-w zhqI%2d*=4|?WNnYwauE-hY?xg>r`>Ei6giHpk@<;IQyBrYtaGigV91EjW@+j18q)j73z%IGQaQ%WaiPfna% zJ}Gxn@+9-5{JPY-@Vdg<^jc?aaZP4Td`;=Z?1_mJ%d2y%ldDHp#aES9W>+RwmXo<; zGHL#U{Q!)``9-Nk;YEdo>4nb1;)2YA_=3_%b|f)U9?lIXht1*qP--YVRG6Qh@60bI zGKqMiG%q_ZF|T}F?zrS}qsPXNEzQl&P0TGHlRGAPjCoA{=+x2SqYFo+k8+MG9+^2Z zeq`y0>=B70%5!pal5@;C`NLC(hYv3tmOjimtazv~)(4<4D?Q7ZRg7oi@px&l(rZ6= zNb(T#ko>`^gTn_G4oV;798~;JMtbj;4$K~yIIw&`?ttV0qch_(OZ#W{PwZdbFSlQE zKXbqQjMR+qjKV;Az!@m^XZqv)rM_%mqOaVW>rM8Wy?H0)gq=bx9dlyEsNw3$|Bv?o z7;TC-l^U~+iN;FzelwB}r^4ZIp&{MiG!*MI_3`?WEQOQ^m4mrpGH3?#fm9$IDAZN@ z`DgyWzyDvdUoQUdk$J{_W8eR&|DR#JFGmI@YMsCDQB3ie{L_emvZA!fby_0g9}wXx*LlYy;t3srvYNP#Kq3Y|Ai`Cx^Fxn_ zXXOgJ43uTQ#ekMR*qioI>t3m%92s#azhh5jRtz~|(jMhsNipq9XGQjWaG zX{_RTWMqYVrs0o0LY~(lC@YDJL9KU)Yog)19w9I25L5;RwS-(KWzKt?Chp0~v96nA z(@IJnAur1HL=2Sm$;F_Skgf87?Qxn2S-N6Gm!*w`{KO;VCApr6fl3?DRvxZ1_Q)77 z)05wcYt7xCdStw;Gf){A&{iI;sWVoN43a-~KYr$s@v8jOE(4V|pe18p6F0`6%&tj4 zan~H+pL+zpAyM51%4*|cKuch1idRpgbdgVt&-u|Ul;f^Rjlb|nd{ZZ)GBBu}DzP$+ zlEld!jopdA^hkV5C!(xwt`pHaadJ!JxN9oauRIbzDc2u0P}VjV>$LOJTgF!`|o*Vd_iZREN?E# z^5!BL+otT}vUYgIY+dy|c0bA<8ULg+P#GA|lCeql4SSr%Dx%j84~^)m@3D;k^vL+4 zTusD4rLEJFamJJ%f7T9<=%Vkjh(CHnd`U;3GBBX6JXBK^cFRNM`k?qHkBl$t3{(aN zw3Q6~s*}qmP7@E+3fCva_dPQHS*{>rpwb4kl??r&n+T9IyE9xL760s!@fG>6Q3I7W zpxvyWSQk#de$MNRh%vm@_3k>$HTCl^9)bTV*Aq2R*0UFbS{8Gds)<*lF}!-ks>zd0 zXStTz_%DyduSrUyfl3?FPL)_`8K4tgzpTG{r2LysL1kb_JB<|Auj{`(Qr?zpjvA=6 z0WB$U`2w-WY5do)$*A8M=)asI(#NRDt6UUVQ$d*>kuxW3Sl%@ksfG zPC;d0NIQ*`S%=HN9#8qZN6I(lpGFK++K_e{DXxYn|Lc+R?>YsQfg$ZQQsjHeii6Ct zN9_MRQof~AP#GA~N=jgPmG8;(Ykc!$`~KD%-^H?7-G1N0GWUOuY+sc5|Es0v|9i*R z_->JHf7!k$J^xdSWj_BRna?lVVX}QedH|d*^Z)<4M%Dz7+W&)O`%JapcY@UZf3M%~ zJ4?1dH~M{d$lU*fW&0PY{ogFx|H<6{2V|QW_WQmxDE$OvGh}<>{15rR6`5!Jd940l zfB)b1N4e>8+SikJ_j759Yg&(Sh^hb2=d`;SU$N-ha#6%Ur44DlAO9t;{lDpv@*SOm z%D|9z8Y!-wiq9kEyE+Axfg$ZQQd~O~%OmCca?Mc#l{TQQq@?6h*J<}oWn!%nKAXE{ z5?6Ty{y?rVVxTPKD2B9C1x`E>67HQ!wMWW3It7)1A?-9$TsxH-kCY$k6jTO=w9`m& z?Nt08DL>LFC~Hva6r4ti>)?m&k@91mg37><);q=h0#zO<@9GqkF+(w=okoi51zPKo zQj%+q7$|FJ>J*$tit7bh=aKRgor221kaij=t`}&)Bjsmu%~1noHBK?8-6S2I&Yj|T zQKK=mVp>YNcn|ML1kb_>z%U7^@dRI zk@8EOg0iHjPQhuUxSnqf9x1=lDX0t#X{V9mdcK7{Qhu#dP#GA~P9w$je2aLb{8p|x zYM|1FwAO&$@ylYbR4P}W%$16n#5oIB;W+Z976xDL8Ddu04xXP`1LpshS| zXUNa4lYT3$=81`f0ln5F;G^Z6+>Ejm~P$2!#cKKUA}ZM z;cAiG>5=jmor221kaij=t{%x<9x4B&Q&1Tg(t4-NcYX5d_DK1wPC;2fSEt}KQe2;W zdOTA8Tc@BhFsQvuT2k%n_fmOHtzEcu(6#f9dW8HHl|% zZ1102|H_Pz=*}l9)KQ^r2Po0DgVbo-A&Ru^daAVT z2FkSUFm>8?ghFk*kxFg5iBfI5nHp`og(7XK+{8A@wC#54wCxTGwe3zSwe2oSwe4LwhyC(+diBcZhH9!YA)NL=Ks@q;nS+{*Wb=~84;{@uv?Ijj2t-@uLc-zaV@wQh`%*=6cs>>2_63xH+uNuCx6>4X+ZR#=ZeK(hxP5UAUP1x5eJK^-_GOfS z+m}-VZeKwWxP2v6;PzFNf!kM82X1et5Zu0oN^tvHO2O?>YQgOc#o+dJRD;{sQx0z5 zKs~s9BL(61hp7m+Z=xjJ{s=YU_D3lSw?9Tz`1swpnd)%+7RtlzTd5DXZ=*omzMTqj zdj}=rcGib?P$X{ONtL*LS2f;EeYkxO1>*L-REXR6Q6g^NPmQ?!07c^VgH(yz4^bv= zKTMst{c#G#r8E+EQYvoes1>&#rC8j4jB0WFamvN*C#V;ieu|25`)NwX?PsVN zx1XhGeEe=aNAbA*Jk{g&3zU!BFH%2lzeEAK{W2BgcD@&1p@!Ukl_GNcwE=vc@^SkO zbC>ug1?2WyRFK=BpoHB1BsJvrr)u!iRFT`Cp^V)AEOq4e=O`q%cTq`h7bqpSKTj>W z{RN82?SG=0-2Niv7@I@5WcDEw}%b;&S_IRF~WT zMtQmYb?VFQw<$2Ui&U7~-=M_Y{$>yUdlbJF!*4tIonHKIAAYYNzdwLKFy0m4G4Y2! z{E>w}uEKY#u~dUU@#9Zz{F%a^*Wxeg@RtGnRS+7+h0mEU8M6j_D zo0_n>8CzPgwH4diu)Q5SI%8pT))9S3`Rv9AyN`*C0ZXUxF;Ohcv} z@9)Ez79PM{`tiGQU^N$gs0I)6g~gsR&UQ?UcG$;6YK3GnOSci#ngKHXy(@2$1u6xp3Cfd`&g#e+s84#-k!$L2b-`>m|eESS0;oE023*SDA zY54Zp%)__0FcIHAhne`}cjH`UzSc%-@p`o`$p#I+aG3 z?Ay08W#7JyIs5kQG2G!`wioZ{!#n%&E@tf8cQa+*zK1#c_PtEnx9?-tzI{K__U#9l zw{Jhl#C`iAX71Y$Gj-qoICJ;yN0_{C?_~DAon!jG{V4PI?Z=qFZ$Hiqe)|cg@Y_!^ zhu?mRN&NQH%;LA7VH&^vEc5us@5Xb?=eM6{Lcje2Gy3fpnbL2+#GHQnWhV98c|EKD z6=wC@uQILQevSG3_Upz5@eLE-^x<0;exeFLS&g5n!A~=K>MXyK2l@W<8oZVi_F z_!Ap{s_K2up{8{eU0LZwP`opJXZX&%%tR<>v(ky6DDx1)JMz+ppe(Zx;s(v7CMBy9=C&ucZ<9F(`KyxBb08}-4vJT#rQ<+e<{OkR%Syk2qRci3 zUz(S017(?O5Wl#1QTn3rMR{3=u$<1OY&K;CEs3da*99c6kb)b1*?tp}>7?_#qNS}bz{^tHUSue0O zBQwL9v0|XypOrZRMd=R^?#s&zfwFW5h&#ntIu?%QqseGlx&y>}irwk%u=EB@*jeQcY%4PG$v^BAJL2Daf1vGn{Kk z$eMtedZ)e+N`=f&E|>^zleqwS=>t%fwE*L?7GPS1RbIaJmHkjn z`+J1c=nzx}2DFq}UAT{9SX55SV8p7Gu49@rJu>_{1C>m8Bm*lMdc1+#JAN7;@L09d zbx897j|?T(7?pXHWMEM1eMoa?@&QIy3HX5?iFG;=m4QL6ccN=xz*PeNA&o0xpucF-dvqC-#_7}9$0 zh!U=mkGMxlqfS9(U`RWS6xZ%MzhX9Wne&C z$MlRRJIA5!oX#5d)PrsI9!??)|%)cv~M# z%$f8AIm#m>szXp27}R=)xJHeR_6UjT5L5;Rwcf*svnIb}kMRg`bOQSrhdt~$6Sx~$mr7sdvd4L3 z49N9H4OH5ocB{N#r<$JAXe=E%anv{fzx~ zq-cM^08rl($M7pL$3{=`W?KXMJZ8lL&Y5dSh5sN$` z`0I#)N?WHTV(RJEtCkKo;kl!~)`u~4J*8V$RdjHqTcHaSh z-=R|f|F+crpC=nN0FO%V|GBb#MaKWv$sB;6AMW>M7S#Bo>kyWbTH*REVWc^|*rBjiXOg37?4mJsID?{OM?60BG_vU1href$cK zkfU@6Dg%Ss%9CL4y35K-P@V)M%O>ySrHzNaIiK6(Mvc!bIY$0EYM{~vv`i;Hb07DF z&k_-1_2LDtw|Q4dmlV36?dW6i=A*c)tYP~~TubDL-AqgFV%D{m3 zV)LWe#xx$$e6D)P#GA|Rxk+MjqpfWI|okoi58GV{Z%3_^@%D|wOXWPDh zFO|K_YFUfk^^`u{Bjk7;g37?4);q-YoL=t{vP7;pYM{~vv}b+b4tn7pJLtsZBbpmL z0+&iu#6YDDYFQ5R;(dG%8~fz9Z1n;=`r448+58YJzI9W^7^~i1Z$XKZ}P#GA| zRvx*%KNVE=qq1VD>nqF|9vP?0^+pX;+OT%2`ym4uqm2glWBsLPY`S>;nvtQ^%UAC2 zI$U?AN8)

    NiknTeKI+@9HdL{T?4(jM0!08f`OHEnc`@Qb$&p0=r9+{i;T}5SJi`M(D$_kz9hZZH4EgTuYtFG8B z9kAaQ$Xo$0*P7$URFEXBeoo?b=H2 z-p|*t5gzR%cSOcyJd)4#NIqLKXBw!qUD~N0=q96Sv`0UumY=wK#fhsc=_}=(di>#b z-R<){!q1i1J_D7uSv%FkEhA&2t(Av+`I-f;2itWFZL3G>d6G9^pwhN#r+Tm_e#t!8 zADDZ-NA6aAZ&4Z8textiuH0K*zRTB)$oISDYvbdOapm6b`GV)?FP-oAExXO{`|ei1 z@01_Kwd%Aw)u<{$* z`z>SQc`~@y@5^sJn+~>@Cd|e6dIH6%yHJpwc#LQ}XdGwU2kw$`dNFETMOIuDk0xdUT0L z>Xnk$Z=lk)Xs5cnyWhX{E`DV~J}->lSy$|(9wE1L9=X>^;tT_owp}~b4q~r&?GH%4(j)nL$((7R(spU5dW5HZ*PcKAaJ%mI zRUY9V)^{6~fvwu9_QpKi9lUD~?&G6M+*L+$wMXzx61Ja#O53jepvSwb@+rwXdb>yT zMDxpJs8_H;!vPf^U(? z{R~vvcI~tu@ehg~^@zSzLJu%dX}h%l@FPC)6nEe8j7Rzo$&DH)tA&USTE(lseIxY=1RZbBmFMP9WYR7 zTeOT~Z`sHF<*ljRkT#R+SFKL0T?; zrd}wQ?{U&?OCpoI+Qy`H)}ZS>;AW3N23;Zs%4nx3qn+Y38qT`f+TP-kLY06FaOxBc z>GRV_akaI*)gy(x`B}d&d5+)r{VV*w zjUV;)0sA9kPDk=7it(`wf2IrK5cRm*Wt>|I0Psm+${49=ZGb|9-pvG;uq} zMt!nD zyF5aUlWU0>C z#A$cPtl`Onr1yA)B;*PytPa6S z$liyXCPD^>C%;kN=Ml0%t}c7$^gnVx4xQ?6J<5+p@=Ltl!rB#mgqYG9U1WSR~gHF;GS?#eg;?pES1aW4yOA z`jQx0>gtO9phw1Hoq;lTDazQT$nWPoagWo)Gi^y?<>c4QLmnZ=%k@MIl(9=u#x6xd zXgRaTX(D9xDpxV=!yX|g$n``FRNA1{JH%DM{&A0xB{~FUfK&`>y+d3DS&w*xESD>e z8K|^%T0%BW@zkmuXj&zeGK-h%4OF ztsSdm*hgZ{BXOl%Wz;|!SQKSoQLH4MC+A!zov82P$Uan!#bsYFHkH8b*QZW3{={nmW-6_G4?o3>@O0lUE|JAd4!y#Lr@tQ&=NBBx&{eZ*I@FF?`e;WlXV6v z0|VMh#@^$RV|#E}*I>5%+wpHu&v;~A*c)tYP~~TJJ;tuLe|R_NAm$#r9vNrq43shpF`%tv#K*3B;*Z@Kt{3HN9vNrJ6-1;kh71g7D;ax#fS>q% zxL%X5dt_{p>y658mkbPO`Jl^8>pf2Te#oZ*cm4UGjCAdq`11dTN8mYfoe=|-woaQe z)Nxh5`+B6Nf0=yOUn({Ive~jdE_MI&Wcz{C{$DCvm8=2q$jLRnqh$M*)cmKV1|TTg z(=z@)EOh|yE|mYf(C_Q7{V$iTQMQ+)_J7Ij8sB&4 z`+XP5*ndd2XJqVuShgQa-T#%cHBe(ftih-@%Ec~oHcBeLyaGgkhP$p!v- zv~hB5`NL9B3w02HAcUYE8Xyc2XoMzch8AdrHfV@f%KIn%5FjojZ zu%HU6p$7b5gMwP919}=-^fI()WoXgK(4vu{MIS?pHii~m3@w@%TJ$iqXklp4!O)_C zp+)~fi}r;U-3u+67h3c#v}j#u(YeryfdjqJ2mLSr#x}tOnFu1c9;%=kYQPWlD70u% zXw?D@3N88*TC^v$=uT+SoY0~-p+###i_U}=jR`IK5?Zt+wCGA`(Uj1lC!s}4LW_=s z77Yn4`Vm^RBedv7Xwi(&ih%>Y&fKKRwZs>t1#K3`G=!1S30OMW31Rq#X1=WJw!Wz!|!3G7jPzM1BLI~=i z0m2Z0MreX&Xn|H}gLdeEPUwPe=z%E2z=2-qgMJtgD+RyEXsA85H}F)z`g z;hx3ZM2mKNRuDo!uRV)adlsGcET%GA^x3m$vuDv|&uRgB>{+zfv*@sA(O^$*AszNC z8ths0*RyD^XVG2Hih%>Y&<8ZuvuLPi(NE8!ot{NEJ&R^~7QOT=TIpGI(z9r!XVFK` zqK%$K7d?w6dKNwOEL!MUbkMVCpl8uP&!T;vMfW_5=6M#q^W+xNJkO$co<-|Ci_Uo# zjq@z}=2^7Ov*?;<(KOGZXP!l`Jd0L&7M=1e8s%B^$+OIu-~$V)fEIaH4fw$Z+T&TZ zKyy4R0JO%l=!|F81AXx<+TzJAq%WS;2z14>Xo_di6VGY|I^tP0#Ixv!XVDJNq79x! z7d(q5coseItQa`Z3w_WJbicD`erM79&Z705Mdv$<#&;Hd?=0HhS#-U#XnJSS^Uk8> zokhnxxrMa6v*>td(eTcq-;ozb{5_3 zESlR{^tQ8TZD-Nh&Z4oMWo!^k@PP%*I~EutqrENihrB}wZO{%K&p%1Fw6KbIWTA&Mh!53RBcMC$$1RW3qbA{lCt`*12{{U-)pr9U_ zp%WbNZ4+z=K@)U949ro%4?$>zc8G%UvQPs7h(H_kKtEK!E!066TA>^Ipz1xL78;-h zx}X=>IKScb@au)w(yuwM6{SmF{MFJc*;f*;l=HcKGH>SdFQ;A(OQ*c_OU_Hh7c(!$ zUo5?leIfBe`T3mm%QK(PKbLwg{9Hjg<~h$6pUFHEf2Jfo^Ab;&pUORze9Dxrd8sGE zPZpj?KjBEJhf)uPA1XYUe$aWa_(0}?xOCCW-k-R?d|&Rqr1a6t-AM{1rkA-herM^9>>UZ|r*OG&!wC2lT%EcdbG$4u#~m-=Y zH<~x*rN3VIhQjsf>y7L4*QKrtONYI5#>o^%Gox|ov6sCzac%jU+%-w*vX|eU+8*9s zxH^5cb9M2m%vJHLO44gDab@|6+!e_y-n~3~c|yAFS>-_Zj&iTcynXU1yrSr1q zCC)3Kn>#mou6b@=y6=V0DQrn^akdnt|6cs;(plNF5@(gq%$=D$(>ybOM(T|489O&8 zH=CRDn^K#?n+np0&)HZ^Wm54}NjmW*Hk8-r)+ePGU;gye>EY80r=_JEU-8t;sqs@w zr(~rcU-{(GljA3sPRgE?IH|lYw=TKPT$f*)S{q(lSd(7ktSO$Dk-mJT)!EgF)#X(= z>C9)Y%CAhV46iImZ$2kkT(MzActv4(dbuOr`7+Dm%SubLOB2$cFSjJQ#9Wd;A$3Cd zgu?OZFeZ~2i z`SJOsL{_@>mFMN=CFhy*^3ty_d|ct!^s$cg?90rJ&n+F3JtlTc@#u_n?JFIXJt}cj z`N*8~?K6+eACWpDd_+My_c?Qlhi49tA6}B)eTl=$hvp7V9%@SWzSQjS?82<{EN50R zo{?rjrNON9@GBpZJ47Z6ACi|Ye&K@)2c-{k4k}6?zxanr2WAgU99TXecR=z0^ML%! z)XcE-@=NdU>|fk3vtL}g`DJG$W|RkV1IYn%Am5+r5BC?Or=QbT?9KGXdrQ*QFX5D9 zxmYr0N?*TJG#oATqGGFua+->bnZ~&E`O8KUk#aZ}PD-c0d_$@s+)$`bORv9T zC=-f@O2KR}5iAFCfn>mxj(@4Ta9yD`UF%5Czl@5jlAW~^()BOrPx?)Nz9uDo{|eRV zYNxtbm66VWB`a$stgW)@g~@@&OTxCm%)pq(=lJDiH&f zHlVFUOnGo$CdW-axc@1Sj0hx8G~vC)=Kdt_{rD~T8= zvqHq6wvw^;NY&U7{m^1*{YCm%$Y(r4cm_xG^H?T<=n(V{aUDnetVamP@1q9F+zTCo zl-cg9zX127Q3{(ExH|F;&Yvm&XZ&t`&Lix#~-aPcw}59|1@Tx(uTB^QtQ2+&10R>n20;ME#u(ObJ^pQp9uf#5t5NBjv6SlS#$_iYLoZgbyju;QX1*%C^hJ6dipOO ziPy>XM+}sCEMiDoN!<5S&rdbQA~AHU*}a=lJLnX{r(u#&=?gX^S=opg%y8<_kS z{Z)^Y8{}#t1}bexTS;M8`K|ijJW_6wtBDvWvuebUb{Z+JlHad;qbE^oKB`kt85q=7QZAOCU8k`E40$H69-90DEqa99EY}h>P-f$ZL2V^u@0ZKO z3)I#1Z_w2v_!}OHw@6B(fiew83~8rItTa&3FVF>Z3DSV1^op%3#x*AY zU5}VMbPOs3>$TH~aebcto=41`ItG=2_1fvgxIR&T-y`O3x$3BaGOtJsYAZ4OegZV| zyBVI`vTM-QRr?1XiTCP6R0amMmBfwmv+JavayoJTA}X|nz0>>6KIwgYARqOAM3 zUbf%Kxc^7i)cAU3{{N?C{{LDT|Nq&ce&49f|L>IX|2Jgr|4OL=cvt%VT_t1xEwa5L zegBrp_S?Z4-$!KYmmUDdJfAUm-_|euFtWk;`Z0ms_hsk7W?TFqlM5LC8yOw@E5-p8 z2j2Np06sH%Z+K*czqVjNI04yYIhREz^EMgbM0fQnH- z#VDX+6i_h=s2BxQi~=e~0TrWwicvttD4=2#P%#Rq7zI>}0xCuU6{CQPQ9#8gpkfqI zInWDzz$l;^0OMVOQ9$Jb3#x!oK*boKVhm6*2B;VVREz;C#sC##fQm6d#TcMs3{Wu! zs2BsBcpMoEREz~G#sU>%fr_y}#aN(XEKo5Ps2B@Wj0Gyj0u^I{im^b&SfGjlV}Ys{ z`k)^e3sj5*DnLi z9aM}CDnMRE!NO#s(E*gNm_1#n_-?Y)~;as2Cemj14Nr z1{Gt26StEwLd6)NVvJBRMyPyX0b_)UF+#-{p<;|sF-E8uBUFqLD#i#EV}yz^Ld6)N zVvJBRMyMDgRE!WRMhF!ngo+VD#R#EdgitX;s2Cwsj1VeD2o)oQiV?zz+sR0wVx&+p zQm7ayRK3s#j1)@eSAmg2#YmxIq);(Zs2C|!j1($H3Kb)TijhLaNTFh+P%%=d7$;PW z6Dr0D72|}8aYDs7p<!vL70f)6aHf@-J%KiHt47V01XK?p%TG(gq6!-ieuM}H85t=QU* z?G8F-Y{anps&GcND9=hcJ5%9-b$Cz^4{60C+wtg5oZF4ZMKR&vkTEEZ_;8_bgLqQ_ zvmv~*0q<_Zhdc0*C_Ww&@eM<6Xf7A6QTY)ldU|ut7mB)Ik7(5Q2KJZ!f&VvU{6!u9Du}-ciK>CKzl-1> zny}o0e{93|JMb@ox0f3J+RKCThdgzc8unEUoNeZ8rWLPm#~VBGrf&RbFWzRnC+_g! z9aVUjAMaIoe;qy;#E0wgkp@vkIQwW5KHiScgpFl}{e_4qZ{tD}baLU>y7B8OCcYEE zABV71FUlK`5P>FWfmY~%Ziqo2_~r@KU_&hgAOvA(f>!8&Ziqo2__hfRF-iYvBmSZp zf7OP+Z5QS3P0s$li?cnPEk`-)aQ08*f67k{Z{^=iy=lIgeSwe~X4#-(x~{Y?0o{L`tY&8KruC7vohnR(KYs)5uK<`cQc6H+sfdCYmN_-Oi3 zM=A!Ax$@5J&bZVIr1!DjUQyQy6dp)F5Pl$ke^M$1viBwKE8m;FH!dsgW$%gKQ<6FX zN9qJpcbRwP?@Zol-kFnC_sl!;*;F>1Ey%ii&W_^kncL&Hmt^I=#BJqUbGIgMElHJt zb4%go^v&U$^V6&mNKRUVFMeH7Dg?rr!f1Nb87;~xeDP~b*JQ6rTvOhj+n(HRZqHwx zlC}5>SEa9Vt}0%ck=6K0S7fh9Tv5I}C+qQo!BCnaT_zWln>y70Qf+VomyZE;OzO?*vBR_jZgSYDl5om@S-D!!^DtMw&TmXo<; zGHJ?seW`z-Ccs#nmv#HXiwXPY4C660DHhyerZgy^BZuyv;tl?)KlRr9jbol6ktm5Y!RXj3t zWcWg_Al?3+b_AF zxnF)pYDRcQVIV!=3>5n_vbJBTFWZ;sEBEGPbw9H=@1&ftQ;4NwPOKO;qWPXwPq?Qb z>-#y~#jZ?OysIQD{3SZe9l4HVhbe3PrP{;og|@V;^H*%mw8mRYEm>LVuiTt#PBxD= z#hXfvSy}0?9LYtJ5i^pPwf@54LPNU2X(-BSfARWKC>u(I%E4SP88n0WKuXs9E7Yay zoVsFdMppeRsjNzB7i8r>r>0n)sg75dWbMC1RoTi}Nz0Vg|5CoN zuVAK4N3Z`kx@F17e-xQ#bdG)h-^coY?|2+rc~FiHL=BYoC1OZR2hx2tsjZBStr(KA zvB_-~-0gUN=n?sl#6%2K+K_gtrl*xduDa>zoXLk=f8>$!uuef`U`RWSl*1<X{5L&K)vgc@`z4BWnf401 z#6YDDX{V9mI^_COkCaDs3MvCb+G(V?j=28JBjqujg37>!NO?l8IclKN zhO}o%NyZjk`XPU@`=rOJnv8`j7B6>oLW#RN8T`T{@+rB(sDVlw(oQ3C@`$;+gVQfP zBA?Nbs0<8grx7`8(k#rlYd-d`JR+adk*Ev|Xn9!Am&&F+PGfV-qzm#yhX`pj6n9O= z{$e^uFX|9f1_rg>A+DF# ze|Utvq(e{{7}R=)xL#eq^9aey6-NzJ+JJVmRL@;F<&$7|cz2r+o&>JBzrXhgd_|%n z1}bepOW?*S7l#}kc0ULH;F0mF&Ol{gKwHU}B|p1PV>M!u;d%|ZA5tB<@r?Fbc749d%pFAQyA=eQxP-*M5M9lht z2-olbeUFGw>IhT@)@g}|e?Wxm*Z*gah)?MVR0h^*i5UEV2-k1_FCGz}k*kdwsI&oX zWgnB0OI;`Z43lPai=|(2rL)Qry!>4)UjNG@@UwD_5d)PrsGTZs;yobY`tbW#kC4yl z5L5;Rwca7F&%Xcd5wc5%pfWJ1^$u};^!=MhNI|YRVxZCnwca7FPrm=-5%PH*g37?4 z);q-YzWjHOkT2*ER0amM-XX3R<^TRa_TD_YjqAMozXOl}FNvMtz5v5Tw!DduEXlhG zk764}}`Nkeo=lQ(HXByF0c zO+qwDo3?TM`+o0$B!(0{%IWXC=lvsd&U`q$Gq~TGyUq5@^H_*{Nr{kBkZwh55mUGP z$U@}HN`#bxbSqkmm^!A4=Z7DUVJ@AfJYD_;5<`NNiY`SC{d>iH9TVqeQ^$-h6nGC= z$Lxnb)Vee-%q#epSQikaRCFm)FkZQ*%=RRG0KnhhH|g&Wb2;V_y#GHP^S59FkiaaO zoVI6AgAV}A|8T0qwjZ+%aR8pf_y4D1{uX=y?8U6rIc?9t24Fenzrp+eU6_9tblUEL z9Y8JS7nV3}XKqIx+mJ8jD$Fm%9k#PEe+O~@_F)!?0q_^ORsJ8~{(sMz#`}NX|4;k> zQ#Z>z;Hhc){AeCaY!>D6Rs236NU7*jROO;PSWacH{?2Hah7!Al#$PE7QVPSp)GD-BW#(xqr%_E=5CQ{%gCaX&7-@X#BO(Af+H(iiXDg*LG3UC{kge@lB;cN{jTS*1vc zlRrkn)Ehk(65mo1q!eV8A|*cNIy-9Wj9v?ge^3&n6l9emB|hdl+uRp@782i95~LJl zl_DiR<~rNl75x?x-%%2z6l9emCAvPQE=)Z!U?K56WZNuAspwK<43zCSq0gGs$cV6p zeJ0EMi0KQAY74=CM4kabN=3IK1sTM4)>O1pMeq}|v3k%#MfT!R)vRgyNYt|8ErOJaE=3B)=jlDw5R6V4 zz$$N?5tChflZE0>l_Dtx=~kRi(Xhm)VyQb$vtqM_;?I;KDFx|Pv{o$j#~Cr%6}MO@ z{u@+6f|QCLMLxc_c=uKMlzXws)qJak~e0gDFjTrh2*c0XF!lr(WOYq`Q43fhP%<_+?V1| z)nTFWYo$R-LAn$TjroQ{XqY|>>$K4LjnW{cAYF>o7@YTs_U7LHB}=jG)Nw4Z(D)B* z8c?C_q@qia8rv}n&YFs+j?KM2eJ2ZX($o`xV=OfOQ)!S=kX5A1TV{I|zW;hLPr&cr zLCo?@+@oLXu$_tdTQ@swdocg*H2C#{{eL~?mvPU(w83f1;hujN<_h=#d;zil&cgg1 z-1A=v|9|Dn9Jc3|;+`J!_fB@$Zp2)R`Ca(_>&N_k*#FS=xl{@8{=dV=28D@bvvc0dx6Qq#kIs*^D4O3Q!+;>AqD#@JVs!;T z#i?n!`1?&aoeM2A{tLek2vRD#6b%hEUQFfBzcU)9o6h4bH2xbu4G2;yx)co!HCiz5 zscA;Tbg6s1g~spj`;Z`|qDOH*8tRcQbq$k>jXgc{DwbX&niZE=C_0oPDFx|Pv{o#=MqF&N5jfdGu|g@5Qjl)N z?eI==%{=!-)uQLTbNfy0(PSjB)It%T&7eJ!2y6{{6z5YkE~=>5WBO!#nT1NFQX!=v zJ&M*U8%&Q!mRqP)DHT!*(xZ43Dy9?1DHbX&r9w(UdK8aB#dPX8)k4LsR7fdEkK$3N zn0oPP7Ajuk91^5dbSdsoXY;*tMkC|avUjuT)^f4Q9N}~eK|iFzf|QDGMY?x5(y+l! z92D!&iKkwF8{>xQ{r4Fbk^zW?1Su6git|YtCrBk}8aPanXIe;BD@jrc(xZ43lBSWv z^rH7H3&|SDgas)T-HP)`&J^s_vuC4VqYGK-b;QtzXIn_tLM$XmspwIhPjaSUqo#s2 zNp@RE)+tF+3eux^6q2TbH9caFT1YlRCM-y)=vFi&x3Qo~Cv}OSTI>q*na=_i78tc8G-pDHT16^GO;7t0YZBfk|?W zg=B}4BoUhu^e7&Mq^V#{&qdF%kX)c7NhwH=qH(V<_iQeE|r6Apk6xoS;pjp$jNZ*D?>7C&; zWNluxHnIedh^C9{d<&7|ln5yW=~lEBS-hk~WSxb`@k)f0f^;b|@ zM3f3C1?f>d3KdiMo=p}ii4>2-mH$`YkQNO!@3z4NtghZ@hB|=(@m>Ts(79z`$Wk`?+;tP5dts8Y$X`^0ZdNFme zh2$xa2?!D)eU&6>RMFhNI^C$d%#C`Bh03W)g_MHyC?181sZn2Ip>mp1ArU!PsgTwx z=0<&~h05tlg+#Pqr9vKsim6dwW}$M1QXvtF7epvt&}eUS>&19dik>_5IEAO9C8p=s+btw}Arla! zRCFsEkLBlUA$a!RWqS6%!$PD_iI7r|ZbfSm)3g7b79uN^2#J`zN`$m-hNg?F%PmA! zDG?GudO?>WFG{*T=HjZ$ba8csg~n>7K_W`8(jX0u`7f@_efCNVjWtSxM3i2oK^hu! zt9|MMuFKSAud>iM7deImiTJr7;^%_9phD+svnF-jUM<%4Y%;lHTw;2qaJ7ZvdB{H? zNCeXbU5b1^w->IBXHC=Z=hm+*y}Z80LSwDcAf+H(iraAgHowM-b?aBEOYh>7xN9vm z&Q}_w6r@{mCp;+chsvy}c*oOs;l}kVRr4r{?6MG9r$k5u1qNM;hIQ+Fg@rGdR;uPv z)YxsI5ktNqK_U(?=vFkEz>)6{RTD71k6U7TaXnN5fTz>&nmg8 z_i_E35PCj5{i1)+LSloGAQAZ&tW?~mUYF06u!-M%zTEcES-4M!55Ujj{r_gz{{ITG z{~pBLa)Q(LC+9kBn=lv7ao9cy|9{6|{sLkEuEYKRKOXC}U5$JHa@YWj;Qjw;xc~n< z-23mwT!Hz~rA}KH?Ek+8-+w!IIBXxm?*B>5OE8ZucG@n%`~Tm<_unI!7vVX;Um^D2 zP8I*pVY~hJtM>db&@B!`XYT(y`wOa&YDA-) z7K&SxB8j-cpht0^vY4IQ*^NuI4gG7)Hc(4Uub&QBNL~V&fFKb?7<4Ia$1usy{ANv4 z&pI~tuPAMGH&|#~sx(Lh5mp)`2m5R1)mXpsycMO*?nVoZ%ajHw1?g5C#M7q(^A7m^ zt2VFSSbA2u$wFkS5+M<&Sc#Anp)K&Nsd!fDU)8sML+M%NW($!4B|^fbof099MljdX z%IH971bye1o>mT8h-^caAweQ+uo5Ay!!nqz%uVl8Zn03@j{FfsSSgZjwanghIR>9u zQ?cw2GNEflX$2j!5ZR$bNJJ4IwzxEJ{c1Su6=ibe&^H!`fj{A+~6r@|xD7yJh z52zn=WRv?WMD{BYQVPs2*gMY|!MMIMJ*qLiA-&&1 zaY!kWQjmVd`RWJeUo_F<((D@dII)!c@!+`>InCvYFS_2X3^v{1bbN*#hk)Dy5)aUWX#6=JTcM|g(n#fCMjsM@!F{ic2# z@sSR8*h2OWNa=z^=n$}4(P%Zh=NxR6s2Zvf>f;J?0h=E9r7Se>gifa*5l95AQ=IQm zy}~=xpbiy2B)0afj-J1&Z~9nGx(`|C-UBUNkO;>CRx2LGu|`ad$@HZ0VGGTBq0=cy zsaU7@ha78Us$NaHk67s555-nNB6!?p$A0Q?8; z`BRur!2D-;_kRKI|0i+Je=p{`Wv~_KgI|B#`~MX8{s-{xKY+h);@$sh%>RV@{vph6 zJOg-IciNWW-am)?{@w8ZUxitW3Q;ln-9PlKY_+qq{jpYRPeA|%|}KA1}PMElLn z%JgLG2@BzeA=V*C1n2;36%FCJkA;n45yDooPg=-60;yvJDHR(P=PT@h2n;nBN8^5! zFb{dt`o8I&YdYemETkWYXr~|%xdW_IobQN@(a|{Kb!+>hruJoeknyyI?i0{jC`hT; ztT^8x&$KTzDRsguujo9*14D2)2+H|E380fwQAEH za@s=oMQAM)q*QEHobPDoYt?u@SiHD0i9c^4{t9Fl2of$K!8*l{J7_g(8V7A|)x}sm z#dF0A7Q(MW>^MP6#b(8iJL-@czRZ2OYr0vR)nBwwe;v9Vf`pGqutssd!)6Ps=gFcA zP0ZY`Bc|*2mn>x8P_iUEMJicxzJoSoOB?p|MWtExWeeH2l`IL5i%OP^;|@Q5gexsW zHVS8GY}lq=Z1xEJiiPYbL^=g26>AmeJ6fI?jf-g2pVmilS2We6&AP8z=)McZkRahE z5%ej>abdar2#3oH%W4tr?J*yz=~DJn7K-mFMG{UEL9gO`N6PQN1FA7ob?TPLB>0+z z;HM$dCP;WU1gjPKRsGf@JTm4zQ7t?NY+c`bk@+Z1S6HuGh<*k_3j_%VhhV+pd`HPE ztR{7o@b$2M-P*0|`=XGaI$V?T8y3oc2DMH>!eby7*w23*Ckv-bw%Cv=5jV&UcF_Z`Z?%z2olZ|1Z6P}bsdhoa@gEpev_9B5L!#-jYScnC3#A2ugeO3-UU9yIooQ4&*s1gVbfYpU zXDpPz2(<=5!gC*3qqr4uo$0-1)}$VyctufZ!`2OJF77j#7{60g%g*}Yl;gYOkluka z9$&zcb&6Xt0$+cG9&1$U*60Q6x2{=t;e{7&UA?vKsy+L6->@ul(v@wLD4u5DwUFh7 zOQU-31*=x|GjcvzUex$RQFi0`P=j#kTc-CcocCp&)VQ$cROr1;9CIsd)V;b; zn9zm+J5f&f#(@A4BpUm_BD~GOtV3yGdWg^oZ2+(n<%E;)jsbomKm>_eqMp#;QqpTD z$_NKhLDYoXG;bZzKr|68M2OIdc0%g{>_j=?BqUJ<%-UNw)4hbBs3vNNI--GSB3g(L zp>+dxqMUFNlBgowgqQFW)kFG&kL<>$Ly=A(W@DtTUEm2Q2 z63s*_5hk4Yz{tyQjl5NaoA45TqME27>WBuSiD)7Cp^{f8Y+;~`a1a$lCE+4Ggcq2# zw|=Gvh#*lz)DaCt6VXD12+;-Dh%&-KI0;Eq5-!3`cnLqz-hG_r?IdgiKpEj6Du_zL zMR*7w5g>xVti7#edOgudG!v~vn9zm*J5f$J2}x8DZo*6Wi6Bu+)Ds=!$0LJDz)qAC zPC^n@gq!dZexjPFA?k<*VAkF?F};Nd5gNV|L7xH22`9lXNKos5oA3}mqIu{<92%h$ z9fWNdC?gz11yMzK2tQFx)DU$9V+5kp0gMcYP6sdwAgT`G@65v+BLU7zVo1PQNsJ9R zD~Uk@XC*OO;H)Hu4V;z4_<^&M7)Wqd5`zfNN@6s@SxKJmMYEH9bCUvdlY(=TYUd`^ z&rNEao76lvsda8rcy5wDH%S|sb3pdFN#%2soO6@p+@z|xN$$BxRS3mZjx(TVP@Msr zCbr zC?gujZ^U_!XeMd~Zea#M9pN1r!kLcn6WZu)%mA$?-Iv71zxH)}u>}Kue z%uVr|{5NH9Ox&p7n7bi)L*$11fz*NMfx`9a>tokz*JrMaU+2FryFamC-=Eu;+!xuG z-<#SS-CIbc6R|{muxpRlJ$~)THG@}oU*)@U;_}g*Lp%Dnhqp}*jBOphY~a$aOT?D( zi$*RS+}wSEZ_~tv(e*>I{{HZ~$+hXVv9;RT%z5$i{O4uQO`NNrn>#0YPUM{Yn$(); zn!@Vz>ey;+b!Jt3m48)sWn!hiGS`>vi}dAtQ@zn%-@GvawX-v4#n1Ael|3_YrhaDb zjN}=SGxDdWPLG~mI4ylz>@@AP%&GBHyH3e3Pc4rwFDy$hi!IZZWtPU5`j=);PMoZt zoLiDy5?PX8oLU@RT!^G2v4|GQbj7>;UD-v6Mf#%LNy(G?Pt;D#oDe_3e?s>7#PRy^ zx#N<@MUKlaOf8HqEF7CYHg>FbZ04BwG5%w+3lap$K-AU?a#In&e! zlcFPK!&oPTA_$T9P;^o=Z>e`RyGx?7tn1hZzi|AhH}sZW{;*8IyB z)SF!F(PvsqCo8cT$yMz$iDCkY&hS=I;W_B+bvL*h-F8pRlQOojVNxxv3|n|xOe<7+ zCDJ`JTeF@jkc3=Xj+jr?-0jP`ebcP1Rpu_PX*TCBnTEV)ZEx(QgDYEStx{RJxh8DR z$~zGkm8At#(X|ateG&){ZAY&e+yM-y(49seLPr>TSk&6P(xP@jH@cmD1l_K#8{Mh1 z3*D)05-1-ES5M5 zuw`Pa(cg8?YV`MmD0SW0%d+=$7Ar0gzyY(cecd6WeH_KM0pq6XMbA-eTlWWSTQ=5p z)ca63kQC*eo|xONjs!=bP27d&x!uLCWm@I(?JRCQv$^nHA%gzlt3=Q?d94Tr$M%R| z!(>7PoBQ{RV7Tjm2v03&aUVBKg2O9-MC)Vkjn!K#tZLT%u4*ei6jV8i&ILumYqB3M399BI@M z&m5m;u)`?KS?S)f(h{24-ZxkrcV=zxA1n?zv(n4M#nEO~dUaQEpqZ5(##veo-m}t! zzT(h5E4_N`$mvz6%c_Q{O7DaTX)wTAw6hj#Sc{FU#TM40&RT3^EqYjsZLCEPYthA8 z^sp8^tVI`Vv5K|W%vx+mS%G0zV41lBrw`3joKE+dD{wl! z%v^!f=^=APO{Z6zD{4C3#|mkjs*o~vt0q>6ixtw!3TbDBXalH_@_tlE`2Z@UjuleJ zx+n`j!NNkxRK9=0cfCM^ls2MO4P2$zD1%O|PmR+KCNkx?yk_Lxpb*8~7+=Eoir|7VH0bIvH0btGG-wyj zI6-~jQIy{#8nk;9g&iJ5gZ6blgS4UN@LM+MMmFg102*}r1R8X3@Ke}>K{V(x-nOmsEV{F(S_Cl*`Uby*>h|d~-M!@av_bW_{zW{0 zi{T<+di3`D794SVCwxOq4;v-hcTAQHOC{;8BPGL9NxFBaWLPRmcb8URNxFZsWcVpb z51_tghM#KImW#F3&f4l^ZOvSI|8eP$C170w10VQ5$iAO=Uw=RP-q<_cnX$LK-x_

    @$gH^k;HUC!dZyoqsCzRP?FnlM|1p9?v}1_2}rs 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%0DH<3Adp2U76q$kMA) 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 JGW36z{uffJ3$g$J literal 0 HcmV?d00001 diff --git a/Marlin/Marlin.vcxproj b/Marlin/Marlin.vcxproj new file mode 100644 index 000000000..f16ea5d8a --- /dev/null +++ b/Marlin/Marlin.vcxproj @@ -0,0 +1,118 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + {510EF280-9617-4F04-86F4-19F7E48C6FC1} + Marlin + + + + Application + true + MultiByte + + + Application + false + true + MultiByte + + + + + + + + + + + + + C:\arduino-1.0\hardware\arduino\cores\arduino;C:\arduino-1.0\hardware\arduino\variants\mega;c:\arduino-1.0\hardware\tools\avr\avr\include\;c:\arduino-1.0\hardware\tools\avr\avr\include\avr\;c:\arduino-1.0\hardware\tools\avr\avr\;c:\arduino-1.0\hardware\tools\avr\lib\gcc\avr\4.3.2\include\;C:\arduino-1.0\libraries\LiquidCrystal;C:\arduino-1.0\libraries\LiquidCrystal\utility; + + + C:\arduino-1.0\hardware\arduino\cores\arduino;C:\arduino-1.0\hardware\arduino\variants\mega;c:\arduino-1.0\hardware\tools\avr\avr\include\;c:\arduino-1.0\hardware\tools\avr\avr\include\avr\;c:\arduino-1.0\hardware\tools\avr\avr\;c:\arduino-1.0\hardware\tools\avr\lib\gcc\avr\4.3.2\include\;C:\arduino-1.0\libraries\LiquidCrystal;C:\arduino-1.0\libraries\LiquidCrystal\utility; + + + + Level3 + Disabled + + + true + + + + + Level3 + MaxSpeed + true + true + + + true + true + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Marlin/Marlin.vcxproj.filters b/Marlin/Marlin.vcxproj.filters new file mode 100644 index 000000000..475ca8dd9 --- /dev/null +++ b/Marlin/Marlin.vcxproj.filters @@ -0,0 +1,141 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/Marlin/Marlin.vcxproj.user b/Marlin/Marlin.vcxproj.user new file mode 100644 index 000000000..ace9a86ac --- /dev/null +++ b/Marlin/Marlin.vcxproj.user @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/Marlin/ipch/marlin-7ce658c4/marlin-4b8a948f.ipch b/Marlin/ipch/marlin-7ce658c4/marlin-4b8a948f.ipch new file mode 100644 index 0000000000000000000000000000000000000000..2295b1ff94f252bc6e0baf9fdf9738eef13e70bc GIT binary patch literal 262144 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 Date: Mon, 20 Feb 2012 22:39:39 +0000 Subject: [PATCH 238/430] Removed VS project files for tidyness stakes --- Marlin/.Marlin.vsarduino.h | 60 --------------- Marlin/Marlin.sdf | Bin 16011264 -> 0 bytes Marlin/Marlin.sln | 20 ----- Marlin/Marlin.suo | Bin 15360 -> 0 bytes Marlin/Marlin.vcxproj | 118 ---------------------------- Marlin/Marlin.vcxproj.filters | 141 ---------------------------------- Marlin/Marlin.vcxproj.user | 3 - 7 files changed, 342 deletions(-) delete mode 100644 Marlin/.Marlin.vsarduino.h delete mode 100644 Marlin/Marlin.sdf delete mode 100644 Marlin/Marlin.sln delete mode 100644 Marlin/Marlin.suo delete mode 100644 Marlin/Marlin.vcxproj delete mode 100644 Marlin/Marlin.vcxproj.filters delete mode 100644 Marlin/Marlin.vcxproj.user diff --git a/Marlin/.Marlin.vsarduino.h b/Marlin/.Marlin.vsarduino.h deleted file mode 100644 index 76011adc3..000000000 --- a/Marlin/.Marlin.vsarduino.h +++ /dev/null @@ -1,60 +0,0 @@ -#define __AVR_ATmega2560__ -#define __cplusplus -#define __builtin_va_list int -#define __attribute__(x) -#define __inline__ -#define __asm__(x) -#define ARDUINO 100 -extern "C" void __cxa_pure_virtual() {} -#include "C:\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.h" -#include "C:\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp" -void enquecommand(const char *cmd); -void setup_photpin(); -void setup_powerhold(); -void suicide(); -void setup(); -void loop(); -void get_command(); -float code_value(); -long code_value_long(); -bool code_seen(char code_string[]); -bool code_seen(char code); -void process_commands(); -void process_commands(); -void FlushSerialRequestResend(); -void ClearToSend(); -void get_coordinates(); -void get_arc_coordinates(); -void prepare_move(); -void prepare_arc_move(char isclockwise); -void manage_inactivity(byte debug); -void kill(); -char *createFilename(char *buffer,const dir_t &p); -void lcdProgMemprint(const char *str); -int intround(const float &x); -void lcd_status(const char* message); -void lcd_statuspgm(const char* message); -FORCE_INLINE void clear(); -void lcd_init(); -void beep(); -void beepshort(); -void lcd_status(); -void buttons_init(); -void buttons_check(); -char *ftostr3(const float &x); -char *itostr2(const uint8_t &x); -char *ftostr31(const float &x); -char *ftostr32(const float &x); -char *itostr31(const int &xx); -char *itostr3(const int &xx); -char *itostr4(const int &xx); -char *ftostr51(const float &x); -void wd_init(); -void wd_reset(); - -#include "C:\arduino-1.0\hardware\arduino\variants\mega\pins_arduino.h" -#include "C:\arduino-1.0\hardware\arduino\cores\arduino\Arduino.h" -#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\Marlin.pde" -#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\cardreader.pde" -#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\ultralcd.pde" -#include "C:\Users\Blair\Desktop\Marlin_v1\Marlin\watchdog.pde" diff --git a/Marlin/Marlin.sdf b/Marlin/Marlin.sdf deleted file mode 100644 index 12025ee6a046b3dbcd7de7e75b8356eecae4ff31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16011264 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

    >IW^#OTVN!aMIw?0XIZ>XNnGl~)7@r=$S52s* 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

    V&P3{Q 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%0D#ka>6A3wMfk^bx{mq@2 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 -H>s_;M^esMU0+dXP*-VRakF>_eB2}?V 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

    eg8bJ%+`C|9Wsi9L=j!u6zW=xJU^Loy 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 z∋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%0D6^>`^w3jG=*AZ->BVKptG=oWGR6= zj{_?iy^O`4ElKRvwfStRYqzN^_vzA21==j_W)16@>@kcZa?+^bCw}c@d~|bxQmcyA z6FU!;@DdJmF*Y!6U{A--p1w}bT8%nx-pXYw$UcX*_%dzHimnxlE?(Mkup`%=)GZ~H zk|Aue+5@^6>luqFrJ3dQm@uofbMdMHm6Ha#()j4s5-R#(KtKsa)0BIe+ouFR9ctEWK!15O(D`m6{451m`Za7{f51}Xzs&C>jfB{WewJkZ!b`1 zskep?RM5N_ViTj8#_&1!OFeV861{t{<^|;FIy$7Tb|!xup*MSl@AVwCA_bRy4>jSy<9XJY>?W6emw4xpIwjU+jf{0UY3STUuOJHN z^E&B@!291#+x5+RiYo0tR-hEEjbM$IdDL;!xcS5?4rvseiR&yXtX zSUZkkY|lymeZ!`ANS))Do+*rza?;R=jW{8*F{jmZ~R{L0EGt zXye%noeXm>guZv}9%)kM7IrVmHyjvuGURI_Aj|6_z`IE=D&a8t`262{H3WqU&ynwsK+DLWs+% zxxa)Oyj>d2tht%?-6~jm2dU|y;aCt1tk`PimUMM4nmi#mB{+5Fq-j$pPn|Jy`pn6b zCeN5MZPK(UY@S|L`2!`C!wlKD95ZCqEDhy**lN2x^#%;|wUY7`;pHnQ1t&}iPMH*( zJayWn$(GY7gD%NcjFIYJ8M<^=m)yFMbx?s`LMJv|~>fO3? z)975S50}t-CFz^Yfn|(7MvSKaNy}sXj}$3}HFJndkSek<0fjtbFOY=m;WYO&uIOo$i3A(UZBg;ZQg1c zndA|SZ8>Rl*g?8~7T#*C`{zMR6_qY~4fH=zpb5JWtUfU)Epgy5f-!gu>l3d3coFf| z?HS7@C$a^8)r>WaJ7{|5hN2TRckJ45&Iy`N7U;5cn~i2J%4}lt1B_<+Z*Mg2 z@APR6z%p6`@PmJ*yua9m5%f8Jtt5=T#wol-YXGMBCE=ZKI)%=I4&jIN?*9>XKrO<#TBJy}bhczjfJ_4kGYl%jHcqiY z6U$}-tTG58%BG;uKU^N!V<Z{}yu4zVr8%wyFy>yC_2 zgPlsnn@5JY+ojuWq#?wPC6Q*DHbdDwb1d*=26#R@h7+<4X`W){WvOIiH*1E0U8L(2 z+ZZgxz&<2GKw-s^X;vM3SzxVcZJZ-E3i7Pe&8AkEb~=V?nHvPkLcneViTuLnZCeuA zVcDaRR?LiI1ylwr7c!3=Bs(X+VFbz>IK!YrExG64d<$9N%O30~qpOj#ogz@+Lx#c< zpk&K-o>kru4xk+cp`axS_J+)Dc2I{^hHPe5FpGfv3Q&f595_%DO0(nXSgS&mbyhF4 zyeybl>tMFQq#4#Rxw5T1!>kp~B6U1FmJ%VhpK?jeLYAhJZJc>9dcHswF8|E&deUCAT||;tRiQ36-FVe ze1$vMcF2@sgxHpVEi=is3GDu^SX-=O!EG=}X2;vwv!l$gaW~=! z-mD4)gba2{-hBtnV4Ph)jUA~FrI0YtR4idY5%!pY6^@dIOchq>i38+O8Q8HQ+Tw&> z0z1q)cCa-e%Mhrg*bT=`C!untZ&Te#*ly)VQ-7;8g78uD> zta(@_DWfJZ%aRq)%60$(r;u(I6h=BupbV5KN_! z^)frfl);jJC$ddcN{V4!d1oDX?xN7~#Y5=qUAYxLYcGyBTc0zsI~5iibWO3uxeCGZ z26tyQDC~IZy=*)n(cB)$rcL}>8XQ;D_!2#98|)f(Xo$qJgh3}L=I=&I<%e7$`FpT6 zSoWchJNr!J;2eS7mJ0TVAb3!A!QO&RIxc@8D4Y<=JEl<5LfXrQWZqE&VhRqoY8D!7 zKE*t7u;WAK<&l*aY8?=4AQb`>fI{|Kpp>O2gzW55NGN0oj0N^P6e*^fv>9l!_7K}S zaJspbWwuE94MO`Ab3f08uxqg32FV;ExXrSk`v_K(bMG3+HL|IbYaxlglS4eK+)<9x zqI0;YL1pQf(@Ebu_>JimT!uo;Vo01IJYzRPifs&?R>s)`CBzx-IRa;^P~3{qDR7l9 z&`ozV=QT#pQ^~TXO{N3s#}z$uH9ASpLM~d*^?HpcvK7U!wRcP8fG0FZ5;>_`xsh8a zb{h3uw?QSkk-K@u?HqksA@E$QL`9^^p-k=FWJStm6Sz5?u##)*ori8yaGWGbj)hdF zdDJI#X>q4chC*mr`lhiNDxE6|B*Q%+q|{*9bvw6EYIgGy*LOs~z4~KmUZ27BtCEd6 z!*51+`RU$EffSd zT^6*HbGYm0)gN_-muGVyd|@{Cwd8E7Kocj@IK>$R+4mbb_r~oQ~D!>iMKn>spY5^Zm4>SOcKoigcs6Z>g z!6i8lh=2`n08T&x%7Aj90;mG20XHB69>5FK0(C$=;0GFjMxY631{6RAT7fozKSK}z z5wHOczzIk|8Bh*X098OWAOkgk7pMd30YA_H1b`->1yF%DK;Xzzxd_++2jB!;KsitW zR036i8>j)iKpjvIGysi26VMDOfC{t%yh0EF5wHUezzMj3GN1ye1gZfyPy=`XFHi^g zfO?<-XavL#f*mLW%7F@?5|Du!zys6)KA;{50F6Ks&;lrc&`A&h2`B@~feN4ss0Q4C z2dD+=03Xl*1b{}M6=(-W0Adfp1~>pGAOU57tCvs?R07q240wQAfbS!SfE{oGE}$H! z1gZfU@Bp=d5AXv4fICSL02|-{B%lna0Qge`5wHVJzy*{8l|VHh10J9j@Bw}x0C1-X z0$>9iKm||FnBW9l0A9<`C?-?`ZU8<;M7S8C zu||M{5gKp=I2aM(V1&jR0scj3tP$W}gvJ^H?nOkn7ZKrJga#Y|-bF-s7ZDvD1SbIB zA~fmKT0onkpPohCc!15yz%a3Rz z65vRLJeU)(@`y$v!3|*15e+y(3!ng479?U>kceeGB9`%pSe_$d@dMpP2w2P@Vle~V zL9ni*3@aH#EMgF`enG_21(D~jqS63%zzJZP0<}2-D-`IaLBOH}YIp+HBZydvKz9xT zmKcaOHvz6fL^uke@kD@|5D{KNL^uhdQAB`?5E?)PI0&ITIRWlLM0f|G62d)*2=5>w zyn={u3L?TMhzOS;B0PeKa0nv8ABYHdAR@ehh;RlX!WW1LS0GfUt5GL{9dH8h0zyS6 zz?X#R2jEG9%1?kF3A(`%;6*}&7YVw{5#U5ZgbxW3J|w7wa3VpsI0Ae~(1;_zg@gzX z5;Won@E<`pHbOlB=Mgl-2=E*sDnKj1cMwFt4!~ywjW_~4M$mnZ0Dlp5vm9tpfOHRfK~wBAVfHW5aA0#gewRUo*+axf)L>VLWKVZ z5&j=UxPK7g{y~KI2eAQw^9K>WA4K?m5EY;m;Cl!nU<2UzL39$Rgz)?z!tsL$#}6X> zK8P~l0crvGZxG?WK@0$J-XOwvg9wKTBK#?cH30l6h+Y7G6vR3JeiTIbQ4rxrL4+R# z5q=az_)!oQ0A3Wtb^tyU=&~Zfg96=>Sqb4mL4*SZ5&jeCR!o5R1W^FsJwb%`1iC2` z;5$Kt?*tL96GXU9pnEg{o)biPP7vKdGXRGP^t*=83cz22CpL4*SY5&jQExIYl#{Xm5C0};LtMEE=q z;qpL)#{*I5TR`nl?xcvm)RC@~kZ$T(L20>}BKjS-ngsSxs|mem#7^w0kh?^D8f>UWzii`>_|b7c(!!UkJazljVK= zdHMO|bCKs%vb`UDHu!A%nbKO89e$dBI`NeLl>AgO9*J}DM4#R#lMVjJlj@VH zq4rm85`{Vn=`}zHeefmCm zUvh7RZ1ku0ME3;uq<6=5Yr8X%cqAO*BZ(fpNA5}PitJK%rFM4jly@d~M0Thl_{F?AJ{56TKITBh-$*Uq)saK`0j553Zy;mq#q}D{&1lOc5k6o^j<^K3(;mi2T603Ex z-Je_)S*5N@t&EcO{=aXQfAEs@qSzvBQD$L$VR#`=mi+aL<%^RGA`8?7srk|Q!TITV zv3c6O%-s0g@LYawVvasXo|DufnyRHj(NHjyz9@E)c2Q<_e0F#?KRa=uexZC}a#m!P zIxBTS^n&08>GNafYv*TX#%G5APK*9S&-ag$ReyeLVvIgU9+M=y{_5z|sOYHRs5Dvj z*G6VW#7Bfj@MPOxZAU7}X6m4`L+U#(76 zMakxWx-wR&Rc0#U72yiLB2lh0yZ@0gwJha|x`M8>6eG+38E4!XcJj`ILwCrIq&;F+ z?UwETn5c;vAufakUP$mdFY`$*LVxdf@B04Xcj^8A_p|T+G5>$`$=_N}0*b}P;EwD} zi)Ttqg?N?DkT`G{!5BOyEB@IM;@_e(Bn})#Fb0pw&gFToh;uu%}g1lDH5_ad9cTtmPAi;vh$L-kDo74W+^u(^VBlY&5VsX=}$75=Y=6PsZ9EL zj3aZ>(A2}7?PlAwnnBa5sa`NplRuN^#R6Sct4wAIp8Gn*5~HPHrgTn}Ci%*mg z?_uJ>VT7~Azg|Lo0}~GpBb+V%jS}KpnRsv*;cW45mJmONi3f)f&KCbx3GqQD9vntE zTm0K4#N(N{#N|FYA41L9;@>GDel8Oa4kHwb=lb6*BAzDol02TflmzqK3gQTs9>)kj z4L#hULXC!GD4fEr-_>&ni!t(jGb`u%mV2*2y;U6ZTW%s#HiL0mPWqF4%e_COrVE(# zd5m*%($I8>s>HsT2disXGl~ycmBPO4o$6Bsnyk~T?>Mtb!C?er@R+RlPnQsXB?*=| za2UZDJSHptGbO}tWa7bL1Y_`+toRQ~h~LS?gTn~M;4xY8pDiIC<~k*2sB`etqN%gR zpDH2#7A77XMmSr1vV{1%n0Rm)p-?>6{|`mPTi5ynB$(&=h^-vbV;Hw`d$@D1y)c?+ z_2AY$o3`%U3U}+de%KXenlSh0?B@z}TV*jX^l?nnRL03U>A(F#H~K$cpvh_~>+&;e z2@WF|gU4h?*cVEOe}y$7IE-Kn9+MUS#S-G*VdBAI1Y_`+toSdL5dV259vnt629L># z|Hl&IzsAIa!wAOUF{b#BzMK_5b#M<$S&PDS+VXIq>DR4>rLl--KZg}5dBK25L3$FY ztzO=>Xj#|7F6_HBw2+_PzS*M^Oo z_DtAf?PT%4eAgjtJnj%2G~fSuvh}}^K0l?o{&&zvq51yL{IgS-Pjmf${Aasx8+}I8 z=gWVx3)j%6oIY`~_cxtB@BV>o1pa}11(3b}$LKSQKHvGhT{uji7W$m}on6rBBhcsR z-;%w5`uvFO{@+TUQS|v#(jkQ7w03~z{NM7ST^LCpu3O-~T3+_W_vr8c_2-*C$JYOM z{En49+hYG*qQy4R!3}gD$q&U^3@ZaGS&MDmrSF|NWt-VxSzTW#p$m;0;PRW8%MOB} zdS~mdDUM zVJpk;v#*sVq|BYykiltrE%}WS>aHg(O&pjT zhOKULfx3S$q3$qgY2d)zP)uF!4RXiiN$c~+|2IqMGDt-OP5sIb!_-x9t^G#{T{kja zU~U+uu6kg(1%nifUl|Kx>TSC_{QW4<5+)zwc?!5|4 zIHf1AV&5yF>~7N0z=64;n6kV^oHTV>ej}bKp{tivG%%-@pF~%FBc@B}x|it!bHi}z zwO-#jc~V{*e!qmS`$YA2+E&rf|F0AGyUlX~CC|yif?%<$$6<%RKETQaS z65Vi?8_;6PatFu0J?m!VH{y><=z5e@49pG1bmdlzbOop7EBkQ?Wsj4N00-uVVJe$8 zCI6QAUnP_sCmn&ayqykP+4Q`z_>&UK`bb$L2j+%i%5r~upcyC4$gkQ@OK5wFlr(Z+ zZWz9{{JQ_w65IxZYj9ReqKV;bELq}fw`fWro3;lX;boVioYnK z>IKr^=fK=BOjY^!j$f8g^%80Db6{@xM5=yOLe(pz!OwxYVVJ6>nj=2R|GVg;(&zQxIfS|N`L`c9ge_ku-vDIy|E{l*Z$bLJk#YzN z=<^@+3}8EbxKm_9;Fdo<_rATG`>$C!Pi{KaazB@^VC8l94p=R3_)nQOq;J=N-|>Lo z^@8841<%xhX_#o2z7HGi(hvOL4;#QA!A!gKW7ubx{tE`$rJuk;yYy3-XqSGbfInBk zU$lb1Yy*GAoh1I62R{_Rj0pb52L2Yt+NIyYTD$anC-~p6*Dn152HT}S!eYDhCzx!P z{tTP#^9@#`hQCxI>#tSdN7dlRZm?e_Is;q{Hh7qDmju{wmuM;&(FQB-lHCV7>Om(A zxJwc&xJ#}8SOy#JQaOycOBJx*&eyHurs)hg(21?4udrXBR~r-@zxtQEmJ8|Z^U zcc~s0-6g*hY=BMoY&`-2*mjp1VccD6f^~PP8Rp%k7T9-}lqyh#g?FhHCf=ns*m#%P zYrqj6aHJO;1^e#OXc%~x#=ye6G`1c*4>sPVaWL{OjSqkmVCG$#2s`gm2MoPSL0Ed1 zCMn=#6`axvPHh9HwS&`P?_HX~gEIy2e358X;{qG9X4%0D9pG#yc##B#T%ZQ~@6w!d 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%0AqKM=(ZZA2|+>nt(?$)?^>UAd`J8!$bCQj0@ST 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ôJ&p`B-9o;OHH;+-aNT*dU`T4ss0ap?;Y60k^XV- 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±Aitg##72H*_%d)HO?(RS!P!#BE4mOuG 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�(^u{go$<{ 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
    o2Pw&ZC97MU;d+o#sZ-M(i%#k z0hTpR_0odT#=%I#)GhzXLZgdP^wR|XrX&p@BJ)7DWXkF3yp=8fS;~WLj&{(mNi7b8yBFR2@O-9{E>ymBKoSI zu7g4Y^az$UM7N`3o0;HR^4Xn-EUvWDn&;{voZp<(KgKe5nQOkedg zkPCVQ%NnB7O|4<-kpF6-v4qlSrl0@N0KI|(bZ(1xh)w!XyLA|JO@H}{Ri++k`Z@7$ z7K%$LQI%W|KoRr_PN#?!$F8!XX|DXKg~~Fa0&=>r1Ql=wDyClfGYgfggbK*XK?YR7 z8K{{0<-c2~;9O2+Al=mwD&P!MOg;1G7An0$1*Cg7LIs?Gim7j&uuw?|6_D=G2o-P! zDyH69vQSweR6x29BUHc{sF?caFDz763Kfv*5mWfz$G=dUb8t`Q<2-L4QK zptXppd;X_|$QmI6at3+@twqYclfGc_`T9*xxu3TGxzQ;<+U%0s=^cPyzQZZ6q3sv9 zJLSh|JB_xH+nn-swEg%Dm%L}Olb-)}%3tiEc(na;ky9R|?QGhWzfzPgUzB}kQAy!>_g=2kFicE!0d*k=!Ov>_Y47wQZN?AXjJcKlG5&E zy*8#O5{0azOX@K@J54e)1=+A0v)j&>==Z3?!e8U*Gb1dIP-F*tn#uUKTT}K00zXul z78qdh({`Qw_EQgzd}FBXr}p@X2RE#}?pG)N_v9b_&wtGi9Q@|Vlh+)( zkI92EyVhe@{?;C#T2p4TV6fi^Q1wVdR6j4b2k2r*%)U?Q)dKx&kZVkjvAKGdO68Dd zv180o)@!pzP;1VBa!Dzv4l<_6azOiz5(^qksx_$GL&iQjO25hjOrkx;4jWRBo2non zQL&vPs05jeKn11R7ayu5`ky{j8wULo>0*YAiq+_UgU&D+8zh(9l*=J;o*3zw?O+nj zVvn;s+IwWXL6O}%Sd3CIdS;XI2%|q_k=jGd9;3e~k=Zy1EtyGD57|<-OBx-pvz{0g zG8WT@0(J@{RYfxb)LangFzm5?I7o*(+6}5ZHO|t(7_}=(3jwW(4*ytw$Mj#Hd6sXw(oWHBzSP8;Q|gz_n*q|M8Qh|33MT^5d%5xm8>za)X&6!pS=FdCnsT#Y*fpxL zqw#=D%_4T@&;n!kh>uZ@sCWGhj1XWkB@m?Ol%6s||4NEP1!Q)K&F-SFQUoeVTIoQN z8(EBe>~&GW44K6+7uhuyh{dQa^#&ZVJ&N2Luq&)n)0o|m?Hgo@L20a``(4y7DILm~ zL1!8<&Cd2Q)j{F(|E_XKZNP3&&N}u`)@V$iu0fk5lX3Sj2l7E3gf@171tf~s8AI=; z93Vt|`k6tM9ivkjw zcDY85F^$F^%4;ApR28Fmu`b$3L}PO_+LHq|(m`pcM^fvG1p;h@{zem~|2+)9&}51d ziBlaK$JvNo6X_{wCOP&=F~p0}8=}Y{j0Q+Wrc20_*sD}kZbdO1fnFArl~{~&utzp1 ze{#RXsKThEVWw#GWI6p3Fyt7j(?(4UZJgO?kYyjRn88Sys%MY6;SU zO^sV~7?e%>u7Ki*P~8R@8BL)UEgAL^wlCh_WAu}CscaEIlc|pfsc`gljextBn!Lf;(9^ zwOvWlzCtadQ=i8qS#6hNi{(Kjl6_p`i|Bha8%g#AS(Sxj%-7>lXdv_`OqG#-zp;mE zhmuTFB9x@!Q8?u?An&5Yt9ljckoGRpqVj1P^&8`@+0-s1>S>Cba)l~%8|i>%P@?G;XUPjBc`!h;A6eTS2zroN zW~})p{WChJ_bO~+PLJDrbQYkxHkcNpq}){3^qxKHzw+$yIXxyBY{(NCpVNZ@J54~N zb9#8XIo$}3&*_7xSQ?g$*{@w7(TFr=ttyGMdvP&AD(-mgB5@llw znPL_FYfxWx$98ox%I92aJ?`_z=k(*{Iem~~VNQ=wCmx;C|5428#^Umv{>SAx{Q@zk z|JI(MIsL)we)UV5(@&1h=?`K~KM@<9)1w|u`^|YYr=K{P&_>+98^WA^1}1VZ5W24W+oUTR2=k$c}6^~P+Io(EcdMBbu z<8!(atJ0_lY;aeMN<22FxA)AZIsI0q9nzQDp$@%P0Wt!7Zw*D2nK|fjdH8H36(j3f^66W;X<~hBD z0%?+)Y04JEaB4I(jL+%DSNG7IE>Vt{n9~&+rem{vLmKO$^hW1&8%?4#($Ji)QoLU3 zL8Ei}mE&`Iz@T2Vl0xk?4oo$tYj#7fDbMLLTSsRd)GkHyX&;%G(`$E84KW&AFb;G! z2kZuoc+<@3bgCVo(S_RI#GI~4bihH!(MlP+HD=J9-bu}u=JXoO>4rwLr$%%7$kcOs zKjw5vwBX5eI?2(T-qXX_NEf3D6?1w!?a`cWH%QGhI;Ve==3q*m(FDzCB(9j#V^oL6 ziSapoUwV8_cgA=RwGsNtFjG3E@|;eCm0RJ1G^Z;KayZr_vCJNt(?^(mT%sR2G@IDV zb9$C7)(knekLr`=bV`|XCEW&p+v##nooOtY4q z@jV`iY0pr$wTPX55*m`zkb_c;PO#|s*R*|fzC%4r9@-N_dW>ahAaKScnnTI%G_lJ^ zX`*n(lzn>`eP5rHO*O=+uZgG%6X37_`~B-3SEIOb)YzmQ)Nn z8463vX*8!(zyA|Dv!s)KD$dp+*@*2zq6WDLdR(pvutCE!0dTd&;cAP+ z)fR`VEe=;(9Im!FTy1f<+Tw7v#o=m;!_^jtt1S*!TO6*oI9zRUxZ2`ywZ-9Ti^J6x zhpR0PS6dv8wm2MZaX8xIaJ0qYXp6(q7KfuP4o6!Yj(pINIWHw8i0Qi^I_thodbH zM_U|jwm95uak$yyaI?i-0NiYGxY^=xv&G?Ni^I(phnubOdW5?z4tHA|?zTAGZE?8U z;&8Xc;ckn=-4=(tEe>~E9PYL_+--5V+v0Gy#o=y?!`&8#yDbiPTO97TINWVUI$)_6YQbc@637KhU<4yRijPPaIm zZgDu>;&8gf;dG0`=@y66Ee@w!98R}5oNjSA-QsY%#o=^|!|4`>(=86CTO3ZeI9zUV zxZL7!xy9jfi^Js>hs!Mvms=bzw>VsGak$)~(E(nZM%yJ^Z*jQZ;&8pi;d+b1^%kAA z6X1G_!}S)2>n#q~TO6*pI9zXWxZdJ$y~W{ri^KI6hwCj4*IOK}w>VsHak$>1lX3za zZ*e%@;&8mh;dqO~@fL^UEe^+9Tm#^Ei^K8Ocs}8Pi^BmIhXXG11x|niE)EA=91gfR z9B^?s;Noz=#o>U9!vPnE11=5+TpSL#I2>?sIN;)Nz{TN!i^BmIhXXDS_gft9w>aEy zak$^&aKFXjev8BX7Ki&S4)mF!wnaQ8!iqvTpVt=INWe?xZ&b(!^Po-i^B;QhZ8OiCtMs( zxHz0}aX8`PaKgpmgp0!o7l#ur4kujW`Ghkr4rg2(&bT<7ad9}~;&8^r;f#yJ85f5$ zE)Hj09L~5noN;kD!2=a-Ark-gQq!&+=bmUICxeSc#ao5uMWJp9=x;>yu2Bl z-wMWcZ~^NecFW)*xu3Y#17>{SGXe0qF!)jf_)05ySR-;BXv5z}rDL=!19rd(aKH^z z0Up2$_y9kk0zse}s0Bhm9S{cUfkvPSXa-t>53cvw3 zPz87ZFW>|GfQ=GW-gbcRy1@4p$ON$aSq=Eb2JkBZimm*eitp56_lIHZ)&q?|GoS%F z5CNnU1RG!n9DobpfE%a+Jb)MQ0S)wB<)53tAGLr#X+>%>g(*LGg8!j_zlsoDc)fdCK$s)1S{1hhjzW!O~+N(0BP2fHmkP*cIS8t}9* zcxFA3vmx63l0@V(V8h=d4)7~Z9B=^&{{FfT{B{uh^BS-a0{^m($m_BD*A3Wh!tVE) zvD=E>?@PnPzqf(M9pDdL;6HKjU#h?#d%=J85qSW+KMR6CuK`OT@IS)fuNuH#dyXw* zF82;E{Xx-|YU(;VJyqbDdCy#-NY-uP% z@2oGpl6pmdCI51g-dLZdHS@(oY4N^#_zJ{|dG%n9-d10FA@c&>SD$%4`h0PJW`A^l zk^BVeustn_T|nZz^FGgvDxJ)O%WGioM3m>Sdv3s0q=iau3*GV^5o$b}}W9nnMM-z`qkLDgpKB7MI`+Ni@_DFlOyW_iyyVAR&y9()4T21GTl%X4i z2h$HmA1pqQc_98k>Hh5fiTkDdbN40hQ}4^~OzqTn7Vb^o8@;!9Pv)NZJ^zQf`+#%e zyz>VBjI=Awv#XIb+xu#^P;6uGEEspQ!?F~cvH}do7=x(BfLYOT!7DrN4Y_wC_ip48 zJH-h~F1hreOS$BdOHk@va=D|*oc%+mN$YiV{#Vu`&ZcTw^p=c4@L)Z*yk!A16>+`{BSXJI~? zibkVaG~FNjZ`1@7bJDY8v(4F=S@BuctnAFhOnYXoFWKkxvo|w6 zKHZw0brO#4oXpwrv#qnU zXC=>8Y`)=G4sT@zbr-vs1*B^yJuNb8@CT-u*wR1vog- zo|v1EoZw8zk57${j@QPg$Hm5(<1(G`POCH9k?62Ha_z}>r#;`6YKyjMZD}iJnN}te zk64jxt7uKP#9GXjOmn>1YR)z#n(U@rW3tg{%r~SOq77O@x;|EK)@SPCbyi)rHc@NW z=4z5PPEEc#RUNG!tg@?emB~t{GGCFZh*oG7X)|V;W+ogDTj6Xd5wb(MU^3_g^G3>u z8k&&~!~$j@Qywq3%ClvOGP^7%lhToSJ*7wK{z%#%^PB#RFYdE^+0sO*U79ONmN+GO zZ^|3>YTmRbMpr~KT3oZVEH$6JjrQUz{dB!#sQr)e|Hu0O*P?kf_?O=+x=t*k-wF#T zS%Xz~op5zI`Y%PuB^&~2;3sLY>JV3tqdzD@mU9TC!JQle)gi79M}Jg=T*@Jk25@o+ zREN0w8~sTUvVub(4btQgs19*;H~O<8WF^hAiN7#LvH=#I4!6+|$q|o1x-BtSL7iC_ zy1E;=2LJs<5x9!xNrj6@$p%;iuAvKDBOV-xo~`cQMt@ag#Ar4lE+#=k9O-$0Eo9gu zBIqipC>i7oS7)QYDKb`b2BblZWPmMXbkm<*kK-Axo`Brtntl=e`-&gOMsMH^2=Ut> z*#KL};ERyO|LAyzYp2xEt(zXBWvr#Y3(?xga=-vv$e2QZc0G<~xb{hpB4ZuRB*Yak zXlNxp53q#{zSUeDay-MeOL`R<>p26`*h$WSg^a26%=I{);o2ih6d4<6CLtPwgbWy9 z3mIp)0_YFNGh91lsUl+|{nKU|xq=L6u%q=dJl;dswMV+fj_3a-bS0!lW>jv>Xh zXO<~auH+ObdDL5w9Ycz1-z-<8Y~>V4BP>Z2wjI+NbM2i0MalrDK)O`NDR2zS;@UqA zMM|7gAPraK6gY+y*B%;Fq->{oHgS;+$p+ZM=Q56VMPdT6@{sI2-Y1mSapbN_cRqDyEp{WP)iPh>JZo7S)mBo z%^?tX4X`9o9pc(KD-|JoI0Q-o4OSiE+Bd5dA$vIlN&yX49pc(Gs}&(vaR`(G8mv0R zwP)5SLayczCGIG1(rm-UK_>o@~S0RwCy!=^vG9>eDxGhDl6gCb*)W)c#R zZb6U%wvaLUx$F$rUfHO~NYH#ke1BgS?((yRjM2|!XSjCCCPl{eoB<{EaKLiFLdNLl zvNH<%B>kr1@!9!4&uW_fI?v~Mgr=!9eWuCpS#>Fm30Us)JV298)0Zysc{b4Gq3Q8u z)YreBzSHk=8aqJKA2(3Hewt3D>2vF8el-1g9gQdG^n1qj`8=PRLH++}`eQH6kEU*# zzB1kCxq_xYn10WFQ5q9K(--=Eo^><{n#!(zW%pKU|F3!1!%M*JfAL#>KC~q_E7sf% z^vfaY!Gbjh18iZq z|2QO|WCLs=sGt-NYGnOLp7D_RxM=;s9d*^sX%3YiSrGP*dY|hI{bWVRy&M9ifCj4$aqXU`C_?Vz5Gbh|Awr-!#I<)$QiMD}vuqMj zvH=!H>1}*vi2maEW9a>%6E)ZSGo$$ZIaLw(Ak8i$pkxCq0@r=OiJJTEIZcuA5NALs zV1O-TjDDil=X!U#6d4b529(rG7a6dSG5U#GpX<%B6&a7x9GeA{tig`9iyr@YbGl0d@yn zEZQ~d9<+GD64wFl3`NFMH21K8k~P?^bkTeL2{H;t(FMITyByxVhR$@)RD?XuAy5iv zu2pYp{h?_x_CG_s4dWY1vFT7i0l11PZ9DW%{U~WWCQF* z-qPN`B!wG9b9!gm+!Pwx2F_Pxyi9X%p|9^i1`M(r__Gw3SY3}n9M!7Cto}I*7P>Y9 z*M-7qipW=Jo)rR0HpGq==@Ad!C==^Yqg6eH#CNC5``=OMISZ zXzc$qn!Zxy_gub~t{u?y*c!UVK-1yX)c&Wbgr+BAbUnfHdp_6W^Q@&w(DXYkm>BT) zh>v`vsQrI5PfNj%!QwaC)xPOfteS)L?<)k9Y=}M4s-a(T#kd+cGZZmtj)79Z5IdF_ zR|}_45%UJeKuLph5d+5(<7(o}RK&c=F;EH^V#gBWYU9jO#Jo+jZV^zjL3Xs5qQgsf z@n?)ve4aL25&2;Xs}NAKA$GLLqOGpmb$FShhqyb`i>^Vz_G-*cGbCxn2&M{lmdp>vBbD`)p?4Tk8uo?0*2VJ#JG0V z`HGm2a}1OMhS;&hxOUYAikSB}21)@#>{w!4yK288=94t*W&tH@umg0qf%EkdkD;^m z{$4s=FWysK7Yw6{#0<@}NkGX4*ma|{4{&}{A^JuHx-Nh$R0MvCqQU}7)?iV8bH^x) z=o541FP`Z-Ff3Ape40a`6wqMRA+E#1VnxV5a0rwF8mv0Rbx^oS5%L)hfl@$&Rfo6^ z2}=|q|41`#7ErPVi;Z9l-?65@IQ|&g?E2=+TXbRZX6L%hvQ&}yIhtQcK*j&^)2I!AC_CvaWM zxl|GP6$+~mP_iL*w8)}!gf7=sutE{@RgQsDzz{o@7}thynIh&e$3RKtoe%@Z664wy zRw`n$90R3*A$BY=uFYYUBIchs21)@#>{w!4=Lj)H%-1*uN&!RcSYlk~2&)w_U*{Mo z1q`uciE*7HtWm^#gJYl+FvN}}#&wRcRuS{hH0ve-B^zMZ(e>#yC%B@ALnnP=_w~9? z5nNxxwoVcFEnXHV1q`qV9PJu>DFrU<>!RO1*0f%)$oMw>YDhrI23TYa&@|#Pbd2lk z>+j>^crE^Z@Glz_8UI4R6&6sk28)a>lrrMMpK?B0j(Pok?>mr>_}%ya@uO7xZwcN1 z{}tW$Pf-282D%3D<~2UgT$+A-wa>GUrdpZ~Ugh)5q3N4v`90gH_Fs^umuCAsGimzz zc&huql$@@1THk}A*7{zIwbrk~U~BzqjJDRV!EkH+T8y{W_hG=bejP?! z>w_3_ttT+%TE8BHuJs!*>RSI0hFj}5V!X9}69!!CH%H(t7QD3$-qsFp?;wvY#vPsb z(Vbd9d6x&??S=bGV6qh62Gf*!lw)hpj(|f!O*(7>TVvjG@^2BN&UV zKZ?QF`ePW4tv`<8*!mL~kF7t60onQijL6ng7?Q0&g)!Os(-@SkKZDWO`m-30tv`qH z*!uGrkgdOf5!w2S7?Q2OgfZFr%NUe>Y%yMm;76}o@U=GhdOJMW0n?rE4KYBzslm5A z@NF;ra0z^;6u#?&AMwMFVyL$MF^tvLKaRoL`g<6yt$zZ;we?S8ytaM_1Ge=HMr_kq zRrqO)+1CF7gSGX~V6?XWSq#_K{}JQ0_0M6zw*GmH*w(**A=~;FF=qSNVtff>xAiY$ z@V5RHjNaD2is9S(VT|9_vlzgw|5F5h&4OQVgWqU}-|T?@+zG#haoqa1F_2sT7mVcA zzk{LN`gcp%Ye+Z~eb8%v=8h#(C?1#6WNTPZ;T~|G5MH z1!KMSzl#0j-!#(SLq!7V51JQxN}#tCmiS<)ANq9YmryT*vK*ELV7WmKEk{ovh#wgt z7!1RZ3Bwi8tb`R+u(BFf)xhdnSW^dU>tS63tZ#%3O|Y>UHnqU!R@f4Otrm>5L8~3M zb-;FUknGT4rw5Mn!to_=LMfc+gD3gn$vSy#F;0>A(WEkXYB@YD0J{um2Vr*zP7cE< zCOo|YPOXGzRKYW=;aN5C>{@tE9Xz)lp4R}+Z-mpDU{5o2THy3n*c*W}EZEluXSTyx z9dLFhoTD8kFYv$%z2vdQm|KD$%`1iTeQ<#v_UkYz;leVws2na1z>5sHBnX#=;KgCM z%!HRzz~zl_c!YjwYt=bWCzysr6xUB?kFNHgNaHk*c(&26i_msiC^xP(uX!6(b%fdEVy z@TnktIs~5y!)HzSTm^i-624FcU#x~N)xei)$zzN0N*#XmYCU|d0lwY{4>rMcGkl{3 zzS#=jiomxm_~ADAPCI8Ul0GQ0sf&8{;>)EsTuyc1^%TK{xt&sW|4kJwBZk0JM?rwZzn7fU1X^SeIDrd zLcIjaQds7L<$iK#Ih=rw9~lw`%V4M+h6B(vU_}sChG10~R-3S<0@hZ-x++*-4I64; zV=Zi|gU$7@r2)1!!blUenqgZDY;T1f5!h+LacyvXJDkt~CyIXZBn_VIA&)J_DPH_& zQVBe@6rSdTU4Cfmuv@~(WpGM4JUsxX8t@E0=XdCT&SY`mlRclzeIoG*>l2yxV()41 zr9SR_JomB0#}0lp`qBJHk{_`@l6^P+u1WO?qVMECocyr;;q2S-x6QZHZ$;nAQ*{FS z&FmZTH%zKc5KZR~CJ)+FnIQhU`FhW5xmOdfTCZkaiM^t|l6u*BIY%`Kte4U+MqkXo zkbJ>@A^Uv%dGq=7bJ6GW&nBO>pUplKf5vv z*v;C_shgaeayKS!v~J9NC{|Q^z`8z@h$XZ{YS0TIbpUsyUFp zI(l{fsw7n$$nK5rHTR~e-avkLa<{!ZOVtLSe? z9nTJkQR@s?n=)6#uF$SXZFDx~E>B!;U7pzx+n{Yot#{Vv)+N?i>oRL&Yxh%qf$Zw| zYIAj(ste>-C0E(2vQ%5ZT$#QsdRcx&a)rGjOSJ{eOVi7v%kxxOz`i8AEWXU7x&qOQ z^GhR3GfQGiv?VF3D3Dv6SZpoMEQ&4C7Nw}7KrWhyTG0&E6VUoo3!DYH`HA_~{LH-A zJZ)ZTt}{1xVdBDr7ep_}&q>a)=VWKcsg6K;R&-W=W^$%AGt(FA)A~{~oEf>^M6X2^ z1Y*;*=_$vd`T>a^t0yxpHcgw>b$<4|_<81eX{sHNKPP#PeNL7t2bgE4&x)Rvr@8_5 znb|YqXP8tqAUZXFdh&FeY6irom{c_&Iyv8+>^@}2Y|Tz}IbFHa5~o?GWloKqs-2pe zq-OK@ z|35vr^B=cS`@ihHqW1rRJz`Q@q5Y3W_s~H_EI`|vE1F5Py#K$eWH$Ud8@uS$HGyW( z0$M=?SfCBGgAULMw0^<^yr2Y>0w3@L9Y|0H%0U1aAP7Pr3`|e~DnS*fCWc>U4SrG! z>Oehc0F9stG=mn<3L?M)ZJ-@=fKDI=2n~3E7nFcf-~)c30}0ANIS2p)1VM-xew|_b z!~_+f5>$a|Py=c~9jFHlpb<2IX3zp!K?GQ!4YY#}&m06VCjY;z zWH$UdOZL;kl>#5|106_E2FgJI7$68jAPh`U0V+Wis0KBl7Sw@y&;S}i6KDo4pcO=b z1=>J6G5k6^@Dp*6(0~VcK?x`YKHvvBkf02dg8(o<5QIP&n4khwf+|oAYCtWh1NEQ* zG=e733|ffc*V&4nM1Td_Ks)FFoj^NGcz_p_fKuQCexL&h%0M{?00RU;2!w$NDnKQu z0@a`f)Pg!tPYl1#2K=NEG=XN&0$M=?SfCBGgAULM#sM@pC0d(Q$BjT+lj^t;XlY6` zG^vgofo3MvaU;;kq&jW{nwV6_jX(oaqJ1gRyp(8NQsvR2*NHYJRUjqM!ld$T1lpHW zy^TQYl1jJ{Xj@VpHv&yci54YQbR*E7q>63?T9Z_Plt5cjilc-EJirS|Kq>G6KhS{$ zWuP1cfI$qe&mevh0%2f+3Q!5EKsBfVwV)2vg9gwDnm{vX0j(ecEYJqpK?guHkt&c9 zXe3Is5ha?45-miD2BJj!P@;J_{5sJ}lxQSU1yTY{M2QxnL<5m3kP>JfO0*8C0x5w; zA(b;D&?J;-5lS=&CE9~jfs{aNkcyoVXbVyWQUWbOiH4v=JCG`n5@-d|=QV*gAXOeE z&;pcb07|s~hF>R|ffB7iiAJDA8&IMNDA59xXaGvI|0J4!60JXpR-Z(pj|!X-X!22E zH3AJjiT0jEbB{`_5oqj5wDlyKdQ@zUKtoTWokwNY2( zXy!?@@+2C05^X$*CZ0qKPojY*(Y}*t-bu9XBwBS6jXH@ookWvPqD3dspp$6NNi^pq zT5}SOIf=HML{m6HcN9C((c#ew}E?Ni^f=#DhR1 zPNEG*CmsY^a1sqTiT0aB^G%}JCedn>XtYVR*(9255-m1~2Af2CO`^Fb(OQ#etjQn< zfiN&Z1*im7pc>SGT2My}zs`F6qyaR7CeRF8Kr4s<3$%fDAO;8xcz_p_fKuQCexL&h z%0M{?00RU;2!w$NDnKQuB8FdQHGWb9YC#>S2MwSRG=XN&0$M=?SfCBG12ITwzyrLX z1e5|F@B$w%)TIANIxH=_I2jDIMw{iKAWHx zcJ7%ZRsG99ouW3j_H_EG*i+_HnN&PwrLqSSRQWIWWb#Sp$@~+kC!$XbK5kRxzvN@i zWBEr@k4CAjoqi-nwf`~?$EmfQeJJse{ZNjo|2YrlA4okAeL#C4eShqJlj{G)@3W}Y zEvU^MyT`mIlZ+=VYIP^}+xv5OC+~Ks-JQBCdY5)r`py`&yfb&iss3N~_5`)PbGIdL zb8gGunz}W5>)z(WK ziBuv=t?=| zYdp5c+>_ZI-)&KQJh98(mD`!z=}?P2wIjM?aJ#)dw=GGv|MKxvJQ~;HX{!Eb4rI2* zw_01XRR7PuGPfnU#o3bIoZ1}StZhzjifuBfZ63eEx+1$#Y)oGsyWFIj48UK3kmuE|gv-CCWEC1Q3gN3C>cReoh^Wpw4>W%gw`YNb0X z@|UJAjb5rzJ3Y4CT%Nfkeu+gb^~5rJS?=QG#m>d~rKzRSrP|Uowb#uhnTz5VSr=s& zi^XYbubYc93*!r|g;{E`+tFNqvft^?FGwwjF3=XF=f~!o)M}5uy#UTIZk zskLucGo+#{XZg=tc1zx>6VxP_hPF=nb-wuOb#P+>2u2oIdWVHq=#Pqax(H90H|) z23zP3vZZML{B$^^e_q!V{A4KP3Ps4j(yxXEl&rz3LtJBfHYq~BPqS|lP_h9QAsE6s z;=vtT&|7Clac`aOu8H`)p{3fa2s}c+8WvEp20L0{VdxbCU7hN-C_-`^0;PZks}6B> zsk>4U@&gWmQb2=MhqyY_ZB>N)kVBvp&|uXeuI_XLijW_12$TXEtUAQinJ%sf`7wt; zDWJisLtI_ywkbk>!XZ!!Xt3%KS4X<-ijbdj2$TXEtUAQijc$h`qg`z#=3z z%8pq{JEn7N$F!$T=-Sh57w?%n6^TFRL?{I`*wGTPXBHCY7WJ}rC+<=t{s*Om1(dA8 zeo!KMygBY;!EQy!FE|8B0S#6i;yM=WQH1;_hd?Qy!Ky=C$AZ0zkY92LlmZ&8I>dD> zxJnUnltUn09^nwE4sjg|u2zKPIRr`p4OSiEIu=}`2>BI8azvd7q z1vFT7i0fFePZ9E4nsGCiL6WS&eo#nZ&zxPnXLc7K3$9Zn{*D(5N&yY_gAxmS=9yje z%g0Uy1{EQ{r(X>VC|QG5hn!X1t2Uts`2)>*@^MJ-PUeyFrooXPRkPK*<{H01cDbCis;XhYp>Y_Agp!yH2k@qzL&7&7?v= z$%fcM$oAp@JRcfOOCgJv&F?MVK5kUR{FVN7g@BR`u^8Kqs1c8$m^r=ui~8o;Q}MS$ zXQVeNV*WL_zM6T0kp^01LE%cF@5;I~=Ef)Y>)e83NM;O*K? ze+x>15BPx&Bq#&rprrpQ%!Tj)KhS{$WuP1cKn>OH4Ap`=e-G+FJ!k-ppb0dC79hhn(=s2t6$^elt)R%Aw5lR^(|Qdj=_U8vL$m6?mtNV? z`{2m=%N z4n8SDRgo0Elp})JMcO!6(|Kh;0HP};?+w0ybP2B>p+?|FVGG;KqsKf=Cl<7FDL=V;G1}jZ_&S{ zQUxLH5MdrAYWBZF?@<4{6dU;nE#v_r*#A*_ul5t+BZSufF?x9iiSogZ(;M6W9+s2{ zf)EH3BVMhEpI3lNPz9=ib?}okyZwh~X@MW;K!P$*4g$d7pY?o-eg*=-06`D}VPJv^ zPcEY=TE(bJ;Qb{o+`;y{}gYVPmQLM@;b zM1Td_Ks)FF;!vj+(gwzBAnt?c38xiK~I%VXK%6cY^{88P}_x-5s$f@u9tyOD< ze>NY<%)^%ne>7|an8%M|H1{`x+565X) z2d<~h{>UxZDd^zR*+T~x3kR174lY$kle7$BI<8n@IYo#9LI|a?C%W+ zo}$Cn{-+T{`@6*cUXK0U?0T901$N=K2(2+=KkZfFLvPcs9H1Sl{xD$-&|X#DLwi*x z6}bp$*sD4Z5uz5a*N@k$gARI|LY+XvvD(AnKW3BP>y{v09x^0M}QY^cnQ$)u1ny>TVDdI@&4C< z2sQ$X!Isd*U~^~()wE57YCvUIpYY;Cci+&5uC;$A&5XXvjn)}a2FgJI82q!N^gfq^ z05Cuhgh2(U0`;I7SinmSvrq&ppc>0=;@}rLLQ7m8{ua#&7$6w_3H=2KgOY*Y(CPs` zpdZjQdTB%%(-YR{07L{p-Ku6SR1X>o&uAAcoJ`amrd{y1p0Z3w zb=XLov5`jbrlaFwr~|uZ81J&SpEleu-en)Q-ZpH#?bv$TvGulL>#f1o+kmaN9b2!C zt+yOoZ#(vAiA~tRChWy_QHo6>jE%Vo8*?)@WL z+Xjh7Y%n2g+ZEWh%du@YV%rX3+pfj7EyA=#d$Db6hlw(LY?L1)ntJHNqHKVuJc4I} z)_)l`yIO2izv7KS->NrFjR=Df4^cEc?Iu8>yIQ}+ZJ8QymwG-Q!z;RW> zakZS*uI%PRLI(~6)mXC|(#KEBw>)4BR+=+E8aQYF! zI&Q@}uEaX7#X62)9hYMr2eFPd>~=n^<1(ycAJ(x4>$no@xE|}c0qeK}2aGbT;{evN zj&&TyIu2kRTUf`PSjR0`#{sP45Z1AdbzFya9KbrR!aDB2@k3x8ci{M8U>)mN$Msmp zeyn3ZR<9qcw+gGb46C;VtJi})*pJog!G3FC^-8SXHmu%ytlnCz-g>OwHmu%u?76`!3)XUy{CG&E8_`CmdFD74fsHc7E zg(!Xd-{034KzkzncfcE`4>Vfavm%lf~-v;>i^#{;yP2Uo`#iSnj@tduiv(z6TdZTt@n)>6L zAIjVizrng8%iji=OC%FcB0rcKj1Fpp>FZ+Gnba#kzR%j1y*6>JeQoZV&bRhv_aye5xG#XVBfULF{qr;1;@hlkS^6$OJDwXz4mbn(t*Nci zt=iV~m9Z;L`aZz;7Hdm(b7Hei-w2r8&^90%Nv?6$=njZd7CUW=+eUpZFhq7vLcE=+8|_PI0E> zC#R@SzcxAD9qTr`Gj`mz>}*$}%kIjZmORZlEq`k2)F}1sPfvbm)@)0H`uOLXlg&+dpnvW;UD%+tlAb8FE7TU@91; z9{*`0W|&4M5D!>^YiHkjO+Dj}`z`AGpYYkfTxqh@q2B+g zl4yxmlJ>@^|9{34_gJ2+mY@*;Li}u6?~$E!|Nr`r7yAG6{r^?Cc<+92k;%eU9>*@e z5O+Y0VNw?*U;s~t`l5{E0hxIUF5zF zw_lM_&KXb&7+?z-@4xChoZ-3*msDf~I0H%n18gCq+x_;?Mc?5J*B!2V6d4B1H!PrJ z4OV?Uv3oLJz|h6mdlex;4uMiYgI!P86HoNLeT5zfGZ*xBO`lp6a-SlEK3-`_pkxhJ z9pV&k&G#!pOqzYOfRZ&>Y|W@vHsUdKdtq@em8mM;m|ewrA5bJ#P*#P2k`1w=B^HVz z6%t)H7#>u_RB{ZI0*2VJ#JD!;hZHeY90R3*A$BY=uC4lEMNBovKq+8|9ZQVs&g~Q0OQos;9mY6BU-I5+v#ME*Olmb$lm>f%t>+bDiikLc%fl|N_JC+#N{oBVCG4&h+ zrGO!JEHSP-xKAiz8fn(e0!r3kam3knf)9a0---nz@Bg^Io%BgXViRRm2q@VQJ6d94 zPc0<6_S6H4m}ZWFQos;9mKfKbno`8Ha14|JhS;&hxc1bi6fvzF1Eqi=b}TWjJ@sit zOoU^g6fne&CC0UN-JmeQW6pio|i0RUx2cL+ogY$M@9fD_wi)i;9@> z90R3*A$BY=u08c7Ma%?_fl|N_JC+#Np8B#PW+KNxDPV{lON?tzeMJ#-630L(V2B+{ zjB8JQRS|PC$3RKfTM+}t664xaUsJ@K!ZA<^7-Gi~7$^k{v15sG?WqS9 zF{jb2TLhGBkR71!$=yt!t0NvmUrW$GcW&>ZV|^sgL>Ecd*Ak=^kzEuP7Ldkzkp_!M zEZvC5vEDV*f#|~GZZB^rLeLNn2`JeBTUf4jBQlOPv}m~swFXE2{fYnlDXRUqf@%Q% zjOza1K(+sxXnLD!|IMfAr*z+ckfwT?-k{olJ#_#7+k1VUZ8VkB^voWg=RBIex!dR2 zN|R301LORj({|DK0Pgg8Vl@4c>i*qJ(ce|PYho8a^&HtH`UWj8{m)whN`Vjf zfes`n1LYt93=jk%5C$fw0F|H$RD&8&3+g~UXaJ3%2{eNi&Oehc0F9uDpjX(8=PjTW zM1Td_Ks)FFoj{}e99|Fbf)Y>)e83NMfUl|bqDZ3`#TmV*&FD2i5TG!l7j+rED9h-r z04U1nMNLL8N-}y;k`Nk0NgnB;`V_TH|M;#Ip;;!3op7}c+vI3i>?=5biMGR>xCCxFTCh_;YHUAZvYq| z2tptXOoCov1)f)eDo_n-KrN^P^`HSXf+o-mT0kp^01LE%cF+Mjf!0rWfESd2Qs4uA zpaTiYKsg8y^a>3;4}uT~0~1t$N>Bx=K@F${b)X(JfJV>+nn4R_1rcC@HqZ__Kqn9b zga$mo3ravK@DcP1{dlee3Cch@2mk{FK?sC_2`WG(r~=iX2GoK&P!AeFBWME6paryo z2(UmKXa^mj6No{6g&O_O>j7R+0!o1o_yNiudQtVzi=q!+)I9W}=z|v(54|XO=taFl zFUlQyQSH!+Vu#*JfEtHhlsNR(02Da%qQ0RQ&A)45CUOff(lRx zsz5bCudoKsYe5~T2MwSRG=XN&0$M=?SfCBGgAULMw8Ml4ctHs$1wP;hI*_0Yl!E{; zKoEpLn4ni^;&}zA1XZ9K)PP!02kJosXar558MJ^_5CIlw1MQ##bb@g}J3@GX7nFcf z-~)bu;tup_OQ5&|y+V|CpwC+Z@p#cx@f)avWVJV*bfFI~U zf-+DJ0>A)45CUOff(lRxsz5cU0kxnG)Pn}l2%11MXaTJt0xZx5+Cc|FuTY3R^x}aB zctHs$1t{r2pSJ``I?(4Wfl?0ic}t*_1AX2SDCIz(w**Q#(C00IQV#TaOQ4hkeclo% zf_l&j zI)U#95damS4zz#{;6FH<{w=5k^`I4W0^cDb04hKoXaOCd^e|BlOi&A&K|3fpN|b>x zr~yr&4R|7RXt6*LRDlK%0a`!d2TlDK(7yoQRfGf~Pz@S^1v~?U4uYTxG=K=u1_?hf zKqaULtw0{ZSKpkiS9ia3uQ4UN{3z|VYC^<@$fiS26O`r`3FLAKwK7RJi1Xaq* zy^(ywc_W`rQLQ{Jojw>lXdcW^wLI(f>}!eFY^s=-eARh1|4QnWDAmkMzZ`qnd^z({ zoT}z!UrfAcznG)CdCm*@=Tpx|pVz2zUhFyZxy-ZiXDzComw3j0CiismX@{!krJjmD zr9G9V3VLQLb0B`eI*_FrdiImKCz4M%Pvjp@Jsy2r`)}UQUsW`=KXI>pZ| zOC_U8Et%dQqpEtDyW@9TcW3WPP+h%4R9DZsGkZtk4*QNARn~KE&)=51Eqa?qwe@1R znzv?diBo;O?9GXr?VEEqC8@$*{>Ide$M5MMxFLFjc0>C5*!3n=*^4KvM0PMSXj7fN zm@R?U+HpVwv8?#h{&%QjjA-TcXkYAr#A6>7lPp|74<2e5l-J{PfPcDxvKYU4o zYVzflC6_tN@)xJ5DxY?7dTDH_NtOBHOROc?ixL;vRGTlk*jb!klv)&}>U`;iv4!Ts zOf()9(KOZPGy5|O;tQ+=S*p-y&(F zy#J9g+~aqgd{3$;+N1TPsb-%!EpvYSe2eP#CC;sU-mK5m#i_<$wl+~~ z*XC-HROK&UovMyjYc%%1=kL7tAEBCm32Domp41(x`j_%Y{hB}Ri&5RbOliE-D$SN8 zsPbRVoAf%~yeCDq|1?ipi)p5o5pinaU%R(v>u$RL|AV3a|9t=daN+*{(B0iP6<1HX z`RWOj0tVQ^)syujuZ9fWrlzYWGx-+wP{vz|j43qVCIKZIV7Ci=5!SX7W>knp{q9j+ zy~Trh-c|&jPEjENB^zK7c%s`!g?sOd`rYGXKdi`@${A1!7+?z-qxB)64A;fscN7_C za0ZkD2G}*U9G8pO30GXH=wB?AusJ+Ft_;KIi$#NI0H%n18iYIMmt*4g3K&_cQT5M zUYc){fRYWc$QZrE$fACCiIKkIqvfX*fioy7ETCi!cC^4k2Ok8wZl`@(5z@yYPzq?U z>JZoQ@*fl-GdToG0S#6i;<}ag8AZq}4uMiYgH?yPZlrxy5i*-YpcK$x)gi9iX#c1P znZqGa3TUwE5Z6t#&nZGK;1DPUG+1?r>lWJQ6(JXL2$TXEtUAPX1MLfnka;xYCIKZI zU}JQE8U3*7xNo0LcGdp*q9SlUMTG>EY=A{z7ah|^Jcd3CoZhYl#YfFADKZvt29yE@ zSY+5AkYO+2Q=FlX%`Yo5`Z)tq#YE14$msrnjP3=+r!ikqWJEawN&y2bGA4gO#^eRX zr!ikuWGtllh6R+Y!4}?+jU(O;G4wG;@5h{(#pf}H6(Nf_1WEx7w(y3G9%9d#S$rZx z#o73=V8pAk=)#2%npn&sQ1WwwExaS6hjh=GS^Q!7Pl}L>I0Q-o4Yu%>j2<%C{b~6% zMaWW`ag%_O4X|s)?hp91oUzpPX*tJsly7&@(;*HwH7 z_-94Lr5pjJfaNSA><@^ri;n=`Qbera2q*i<9Z8-Dde$L4P<*4j#1Q_TWO)?l$Q@1&2l z5f475Rf>7N7r7b(lU7!@XBK~|eMgZIqxpsf zl&rz7qpSBPYH$`#Y5Oi-yl`gmHvL^i$ZDE>NI=O3*wr7nAk%3pG|%QDkhOxrYUmtid7!ht3g?p%3dhOHd34e>b%EXY(bX-O)oc@bu6rT_LKoPN#W*!z$vIdJ&+l@4hcpPs#_b)1LbN)~f zvWaHjBA{f0EJCmujCc(74O`SdZ^X&1tHbq=6p@>Gxu6u#U<;9>y+0J$H^2Be@MA^D z77l?@K!Y6+8)y^QHe#`kow4=L>RY&|cq90UBIHUAfl@$&Mab?C2wA#taq)rRr;3oR zG-Fdh$p+cgbct^D369f+sy@@_PG8iwxcE@;Z;F%wPJvV(oD8ztXhC+5nzC@|(nSmV ziZ|(hSER&g&S3#1Yp|oG6pqeFnO=PM`7=exHV%POK!Yu8U!$FU()Q)PlJ;{&$PSuu ztALUXvN$|rNW_Q-?>E(A>5Rq4_M3Tq^U$ess;gD_ABxPKlok?DvH=#E11A_8QMkCh zbVk4HYRxYc8M`dH|`Oxus=?qtG%a+dQb?q>D zMaET}0i}Qewy>&r_by(P<8R00;wIs*6d6}@29yE@SY(WT;d$wdIj)P_zgA>i!x>Nt z7+?z-qo2*V8-%}6WbC8)Qn@D1fCfKbLkG%DqkLXgiQc&v_7{3NAKN2cO~T(QBCn$u zQ$WcE+0i10Dy~r^jatPUH*~J?J4MPMr$GAt12V{tA;q;<{$7!i;1nnY46B4o!2 zmZY$E_AgvKXI|Ivq4ft;_wQQj|6fPbn^gC2I<^15yP0bE(G;fXrA> zo?r2b8(KSmQ>>lac;|zELhar>lDgK6fnRRGKTkOG4vQZRiX^n=L+pn z{21-(`MsP0rGNppkimP!(Cqnt$1_~_=JcMzFO8OQA7?-*V1O-T@J?~!4A-qWsmQpW zGoTbOz!oxipEz-b>&{%6BI7}tZ;ODEHQ04@6wqMRA+8<9P=q|fAy5ivu!WHK z@07z!Vs{mPJ_Z#bk8%i<0vfD3#4f(D5K@FZ#vxD&Xt0Hl_wV|{OVaJCNgP&$JkB9d z3TUwE5LZcJQxWn6hd?Qy!4^W^e}EZYlF3w&m>xr)$`y)`CpiR40S#6i;wtV_sR&8Y zj9UeiY>-8#JoL;O@ff;z(ce37(S?P2D983qXCi)eXu+y_3jc1j!`joF38jERb_|&| z*I+r8IlVZuT9NrIXF@4pkR3y2w=2`t1F=St`8;PrDPWKtL*`^xrmL4#ts?V9&V*9H zAd8dS(ce!x%^mrEy7~^)DKcN8oUnkBHP{_=59CBw4GMe1;sta1T<0eBijbFS_NIW6 z4YC+Qe4>!T8T^7?3UP`XBMpj_S2zVq0fX!qQl=LlZ5tISuhE=a1(a-%9mAXC-T`J7 z?*L7T%-1O`ETCi!R{bW~#g`|V6(I*{_NIW64YKOhXS?2{7DY;$Q=k+u$c`b!^(M6{ zQr@6BhXs_Z!QzzVL>t`DF`hO!*9S>N5%LzzJ|duGLu`z8))QUFMIDP8;mqsr8gcRX z4A-4EOA-1u#Z?F>*%13dp*n{yc3-P%Q^b6jW1ti;#EvD#b$-;YhlE(gDwZiYIrt1K&Q`>(IO+TW0{{t8LJ!Nza;F&9Yo@w+w0AHNr z_bjF9hqL{jtu+0K+WimEy?>jgFHzfn15F;99;dednKXTk+WxDk?f+-G_x})0Q)oI& zZU4bKl$S?uA=e(pUV{5|GYRodqiD!7eB=S+`hq~ zg)E^zNDRcKFGwXY5SP9nmB2t;`hrvf199mKQV9&ir7uV&Fc6o%AeF#CT>4^E0t0dB zi%|&-#HBArB`^?|z8ICjKwSD_R00EW>5EYb48)Zfh$}G=S7IQp#4ucmVYm{*aAgO; zFkEVY5*qLTFDL<}zz6&Q!*C^r;Ytj{l^BLAF$`B?7_P)HT!~@062ovMhT%#K!XVlb}6U|fm8xDtbLWd*=sT#3QB5`%FihT=*L z#g%o$@ax2oT!|sM5<_w&hU7{N$(0zAD={SZfAw3}hhHZK=1L6Al^B>SF)&wRV6Mc# zT#13XvJqfluEfAxiGjHi19SgheCzt~>%{O}iQ%~t!*eBu=N|v|b&27*62o&PhUZEQ z&y^USD=|D*VtB5^@ZA4<-?~2hIx$FBVvw%HAYF+;x)OtQB?jqA4APYtq$@E>*?u42~RGElMHxTEj+6pp3?}= zYlhQWp<}^bLB;p=J`bGbSw-F)fXN`dHw^EugO4}BCtKk&5mH*99e;j7J4{bKpal4U z1ZAKc1b_j8AOuWM0V+W?r~$R04%CB2&;*)63upxqV1YIuju0B~052#3rN9ULKnD_( zfpQQ41_*)>@X}26mrLQRe)zhMm@uBcTLnMf06!I`-`2ll;@{Nb=@07gv>r5qW)J}u zXam|&!V5}3Dewac%0M{?00RU;1N~e5$4&63E%4u4F*gtWo&HN7{Iw2$+eZ4SXgmE+ zYT=pmE5Hj%Kq>G6KPUs`zyKi-1{I(ZRD&AOfdo_FsZQt(5>Eqo+7g5j6Sh~uadq&d zdQuAd@&^4qjg%hX#h(wA!cY0|13%F5=g$P;7c1abt6;VUeyx_2^?3Tt20U%T({DH9 zX)B(7S35|4&kK)~!XNnIk0ks_Is7*R{wzq+=>k3dMFsq270lPbU)RCkHo)Hp4$l+* zvONaK=}+Nz)9=LI(cVe(HvpvGcHYjtm3Yg3EB9vdP3O)08)N$xfYd9_ zE4h~w!`}greKG!``C|Ho7<~gk>Urn++;fTNEUFj~dscfk^^8OH0uoPKPiLQsKV?z1 zfM_azAbG&1S^@DVttT^2#GcTeNImX6o_j3unDtne>;7jRi9cdKl72W!RsWL@IS=I@ zOg?Bon0p}kfc-#@YW`dIXYPyLr`?z4ivOv5qW5U`q?56vnau2u@3;16?@rup-<`WF zd6#on{?62$(K~ZgA;7vLb9?-D^Y-)@>jOkTq+I`t`;z;defeus*G8|^u1#MPyT-gGb9MY`>+0-PiL30Za(k0|oxS-zsXfs>+Me|8 z*lu%oW>YR2Lw(DY41kl)WNORRPi)qZ{*=Cr?llAhyn2msuNMYpu<$NvyHg_((LlV<@WO2CCN*iOY+N7%c9G) zW$BA!7n>Jnmd2M_OS4N7OY9}Ni;}}N{RbD>i*gH-3!R1eXet_wYX8l80Afyhc5Jpe zJ2NXj%bJy)nV4zM%=IPvoWA^w)Qsp1ZAQ8`)@$}=rpKpS)3Z*(v7KB`vd8JkPfJaU zP8<9m)clW4HK%4ykDqRxo}D6w>HuWAAo$E?=IbHeFQl~{v(@smD8avfI zH8Uwb$(ocsC2@*uZ>TSi;XkKWjf=X zR%f;&(P4Mw+LP^0d%i8z7H!ko(pJnetxO~yu_D=4(VA|F{T(#`2CM9Jl#g)=lmZ4> zb;_JY#kYVaC{jMoDNqU+WYsBs^UuIrF?2s>q9WxJH0Owbk`1wil=t6Z9KHx?kGu%! z>d$bJBJ`6KS0SKeL+l5I@jWQp9|UW1ti;#1>*cct>^Js6AB?^J$v3DWGJ7>}X3fyrbIg9rZLt%0F-llmZ6X zF{HS5)GkHJXE+5)0fVeM#l552ij>cC3X}o{S#^qgN9|Ume2(TE5m2%rwvh7v8|cG3 zYWK(;)ip+AvLf{J6jvdjWJBx+h4PNtJz__lqKNqd$3Q7yh#gCeYezj@5%Wckfl|N_ zJC+#NjyhEl^CgafQos;fi22|h)%CS3XDDL6OtUrxlx&b4ZE1#g)Nc2VdZr@fE1UwQ zfI)T)DXty$EJey!IR#1qgRDBmy`!G3NIA?YPzo4i)hX^B^&CaY*J#d`fRZg|(KC0A zh=>sn?hafjsBiAE+y3@c8W3`Zt04Zl|A)Ezj&q{U{|Ek=%x*HD-A$Qn@0l%FPER5# zprV8(s2~wktV@KYC}l&pfE&Bm2-qvJp&~-;dgq`oy_@UJ^Y?ze zv%BQ85I_0;et&#_;W1CL$?Uw6+00C4K24MOZBB$zz#6uYxN%fqp#$tXBwp|lk&`r$ z|4A|J0!p@qEkqu^(;$A6N*ze`O`fJn{4Qk$1eC0oEtOa(lBGAPR)RcT6Y@O{fl@#( zs}E6jLz6Wj|HUCt3g~6^A<9lDq6zsvhd?Qym(_44IRr`py{tY&sR}t=6Y?Vtfl@#(s}E5+DVd=O$DsP!Hhj#{Ok2YSZZh3|#@jc242q;-ETPks6%bclH0h*}^`7wt;DWI3t zhtQU}f8+4U&@4^JPdEfh0lh4R)SOe{+C_E$r_i+jSdZ&UD*JcSl%n?kr_%JFRQ|t) zCNE9TQrZ7WGzP$DCwg4bqdcx(FLS$YqN$UnHTx|7bGydT^i?YNUrLi0p#A|S23MR%HM{@O zT=>J{{694CNB)6N0L2GO3eSk53Ian4c_w$e|hvQ+b*?l-ZEseLRuXB%}JtR8F| zJWed`U%PJks@S^at5+>qu{yRcWL!MwyxDz`1+(T|Iw^F`*pH7rrfAxXg$%u#r9%rW z^=fXX=Z_N5$JVl|sb7F4hpUn}7#QpntCuWU+rMu3g^U~Z3X0Q*KmVoD@1R^qKx#Tb zHnYp9GTX|-G#U2})($p{Wvf^A_r+GM=!xKFoI zxp&fYrwQm|>)9og*?*V@J=UOquu&}O?_azowyuBZeNPI7PaI1t9WjM<{oxh3Pd9z4 z!+FQDt0)t_B#gQZdZ}J^omkbsXKSuqGdV)df8fbDSaDTeVCQ&8Kf~3#nMHq7x(wgS+RQ6(h%(j zM&92_+^3s9tASHOADLA>Xwx_NLe|-_wd)Sa`(RZeu4LXedcI3QFWbznp>?@}*6FAl z{RwLaTg00F6}07U=x0)0x-cI70z6czSJF=i} z>g;KK{1bk6XvCJZ(dejNELpR9<=VxCKk>*b zz&t}c3BNoHds5@MXzCC zP5*}FtJkmXTe*D2isftjXh*f4Udz%|{fk3|!=18o{NUQ5#guvtyXg6k3E04nVOP@L zc$4TG^%4Yq&_aXVVr6VoAANmX#H(W6@|FD``3m?894)ETD|nWkiwfAl9?jy<-+!3n zLH%IQ;4J#{_YVy8uhG1UY13y!&O3X4-@N(L=gyseZr`-&k*WN5qDB+bj}B9NG2T-Q z{k66Xz1vc+^ErBcynqet$5|Yw5BEj8dGN@=uvkIg3i^g#?BeBXW0$X>uR@1iW8=p1 z3&Lv{dOg?SKHW;ap564EBVYsD!Q!>V=o2*RMu)Yg!B$#tu{G-sn_qN5{a|qDmrEtT zK+lH+Y+&12B(FZqU(6b8q;D;2*R3AV1%H^(1iwhnw+R?vTiJEAgBm!@hn03xbP!#) za-fgC^sZUIxPQ&a7YO7OR`Z9~<38O+zu5-bNnl6uD%r}q*(MhK53M^)CcdDxh^77O z`e?V`w`le1HH&eg)xUPb>g9_=28Rp<-+)xQjSg<)U{kz7&xP1Vwv+9n(8F~YBnKPm z9rg8HzIJV2|Eh!g1l~&_W+?SW+^1Wq)Hmt5ZUGzFE*7cF=q-=B(QyE8x36zme{6t0 z=k(zk*%gcqzG>)pO9j70&o>DeU>n)O+dcH-Yz+ozK6<-ruG|n?!7F!Y|3B&_e)NxD z__y12&STV`f2GH@@KKNJH)nfXYaj8r{=VDeT3#((nXOf>(~q`XpO|I2#?$nf1s>NK zZ+Kka8t-u}_IO->{f^sp+t1vtR+@HA_qe*wvs~#qkL#pYJg&EQcwDnhk1O{Xw`=7T zkLw>{kL$*m$5oT?xb8ZD@&7E>_RsyYYqMvvxZtye)q?Z?Bi{K_;YBZ^RX*xA)aaeA zi_TQ8CZ0LDFk`7o0zakCazH@IdRhI|7v*Z=S(=caaR`(GdRcvlay9X6O~}tV1WEzD ztUg4!nmAh%@(T`uQa~@O4^gfr&e4SYl0%>r(97yWl&gv7XhMEX3+@z9vOcyDGJN_V zhHpbnMCsEtPi?+EK5`W1;a$k!2XiMEexcNd?KhMb5KyvS7MZ2{iik`b)tOFI6Y^UQ zfl@#(s}E7G^q;E<`5lKqDWI3thbY_TJWa^&X~BL0C0oNH_$v(k zN#<)Z-scP`1*~BU8N(MCu{gdBb$CD-O25bFO)flL>d&61UK#TVaDA^hoA?Uwj)NSOA%$s@=o*K%yU~*x;QW<~b3@8Px zVUdB8gHgAU47HGPfhOb6wA@YsCF^66fzHTB-HNx%!m!&z&8WvuDc&wG)MWmJ(gFfX z*2^Mu-C;6^uk(+p3UHAomAEIoR7i&WP#vxD&=wl>sq63yq7^)`Rwx+DCJ{HR{$|hH5vFm?&oji zlC5D28R1dys!#=h2G}`ofwI*s(q!Q5!!Mv@YuG}@@uf4Ajb^bX!^Ig;3RuGyGWdX1 zoHMlVr1zn0GyR$jla?F6aFLV&y(~Tghr4J#ydOI|a&Ga5d5I>Zft*rn;&8*!;GNWoX|rf_7-fr5 zI+a+iiL@vzAfRNuEdD|m`C`;<|gdDob41Wx! zhNtn9Lwn9EH6c|T0;Panwh(gYHZu}({4{=YC}f2uq?$vZ6wu2SLJr+%Mnc9-<0pqg zR%$|OI0Q-oy=)E(@qrB zwsz>9tk#71I0Q-oy=)b$FZ}93 z5B{0QPva+t{sM7Lh)oOb5KyvSR=-P8xWzPo*P z^l}E20@kpFj6=U-j$|mOWjAUv#?W#D0!r4)>NifMLBma&kRvz*N&&sBK4e_+rHq?3 zAxClulmdEL^z4NSkE3ow`?6V6r_T!)e~G$96LJ)XKq;V?MaU|eM%_k2=1f(#nOij> zAEO0#3Mg40TgEms($oM|eJ31WdM~5*d#*J9N0YT@!K~Ex1!a$$D9=y;UWyHsd%tXa2}nP;RF&LFu>s4ozm5 zGocjF$Ck<*K6X>4(riM_yi=2TJmmxhq~X0uKU*rZ(7c!5r`mAhE=|lhj)77@KU+?W zvah>a6LSK`KpIG#V_-Qk%IS)??t=lz&rXOA7c3nw*|NZq$k83+!12~qZH>uyh`4`gpI-UFD z{J)o`4E6ngDNTQ$LG1x%cwC*-_y3zz?|&Xmzok0=x6=84H%)t|dR(&>xm`cLoW>lW zsgb5M)%!o2&i{W-=l$!(dR%^-|GzK9AG5yuucPz-;JdUA=!WzE-UE5QKeQvfcQXG} zvSI!y^qZXm(vapP4R21CTAxKbC8fp41f>(o`!t!SQbJHb8snU#@yG1FSPUD=t=+ZrxSI8y3!x@oki)Y;c-pm85{{|uyc|IJ10v; z7OwsyQvJ%JMDEl?&ZGcaKpOg-^s%KP3n%Fusa$VJX;Nl!3Z${mIR%!HqU;-<(4?Hn zDUb#~=M-2*in42XQj>BPr$8G0oKs*KDaxMVDNV}RoC2kQKDLY$WykQeCS^9KKpJG7 zQ(ze>%6{P)P0Acjfi$u@r@%5&l-e@PJv~lD0_uxH7QYAW`}?@@;T{c zOQjs#MAZYh(l5kwn#gl0#uktULMMG}smOzysCxWWNJFl3 z3M?Z<*+lnhQWkIulmhzLGE$UHbe|^WLQa7+nmeb!GE$UHG_6Uwn3mZoAPulidRbgG zSySS=2@M)me9^vewL$3>;w4SyrJM z6Qk@KUf0B2&M}ZiE9V$kPK>g1ctaDjh-07>(9f0=qwF2t)Wj_27$^nwv*pATb`Roz ze0!bF|L4;5OFH+zo~BlsUZL~<*))BR&j0&q`jGnme~_keG<|hBwbQ4`py^>M|38tY z&rrSpOQ;^eU+CO_8%;;k^f@~Jzl^58(KUeWGbDf7V~S5|GM7erOFH8IOM z2GRiS90SXVQT9fk(!^ZBF;EKVXUmCE_C}x9#9YZSkVb;%7+6k>vNw816SIOA8WfO5 ze<%HHIWfxKD5Hs4$uW?|f9DujPK>fQ`iv%K6~{mt0iI)EIWfwYmCtHoR&xxbG2l4{ zmJ_3FtDn=v#A%_O0@Cp8Bn{905ivNSD12KPDU2hbd~=$bV>J)^iM`@!B~CmJ_4wAHJZ8*}yT7 zhHU2;SWb+xfB2#%W+TTy8nvBcU^y|${^3iSm`xl5X&?xWf#t*~`-d-UVy@yCNQ1X? z3@j%`**|gxenS(J;220_xpNFGCq~&;zp072o?{>l=FTy&oET+W{gx)?29AL=nmfn9 za$=Ni_1l`58#x9_0sU+_G0L|39Zk$l90O_8c#eVP#3kim zHg%}OHR{GyQKF{ifivrRH_SpR}* zgezSQWqeWb?;{Xi3P2Zul!7o9^O-pEIXDAf`F zTN838hd?Qym(_3hnkSPI0Vw*>l^|RQo4=kvhGUT{rS=KqfczkZtjy}|9epQf=ieQ`at6`<*#>)fterg>boG`&FQ{vUPz zzm(4X(f{9-@BS{E@GKNlzDTcj_;z5E2*oz?PZ-N?`k;f+>`aViXJRxv6QkLg7{$)S zD0XHDIG_u31B_y4ViY?Qqu7}k#m>Yib|yx#Gck&tiBarKjACbE6gv~6*qIo`&crBo zCPuL{F^ZjuQS3~NVrOC$I}@YWnHa^+#3*(qMzJ$7ik*p3>`aVeXJQmP6QkFe7`@KK z=yfJWuQM@vor%%wOpIPNKqYVk53qm)RiGNw059+XKL`LD z1VJspsC6brturxdorzKFOpID*V$?blqt=-iwa&z-btXowGcjtNiBap!5O6>j=mtHY z7mNW0wP!J1zyuYb61af}SU`d*Pz`E;7htqH6Qk9c7_H94Xmw@~)B=oFXJWKE6Qk9c z7_H94Xmut=t1~fLor%%v%r?*tIzT4~0S9z}ZqNgIfq0)VfD4$Q0#pJw@BoZbXJV8( z6Qk6b7^Tj{D0L=AsWUN3orzKEOpH=zVw5@)qtuxgrOw1CbtXosGcih?iBalIj8bP} zlsXfm)R`Ei&crBnCPt|VPa6lL620cJfb4=3!E`ZVL%nDEm+`t1YfYIs9 zDo_n-fEW0H9|V96f}j@EfqKvY8bK3i1}&f!w1IZeLC_Z5iTfeofG&V>=}e4EXZ8Xk zL||Mx6XVjE6#(PXnHZPO^Z*M;Pz9<%4e$aV@Ph!bK@ik}I#3T9KqF`Z%>?!_xZeue zKs&&QbY>?A0S9z}ZqNfTBAtm5=}e4BXJSM;6C=`@7?IAb1a9B~7LcF{RD&Ae1wP;h z0bqk5s3qtX*5Q6VXaJ3%2{eNi&JLmwNAOsxH1-d~G5OWCwxPS>NKqYVk53qm) zRiGNw059+n^a}mB9{@H8f?7}q>Oli&1WlkBw18I72HHUf=ma6)fG*Gt!~kIc7cfBu zs041{0Tz&;ilA3mjr%pg3w*#20>B1APz&lnJ!k-ppb0dC7SIaXKs)FFogf4p&;`1I z7$gkf0w$;cmB3BVEA-&L1th2f)u0A=fe-jW0N5Z1YC#>S2MwSRG=XN&0$M>EXa^mj z6NG>RxNKqYVk53qm)RiGNw059+XKL`LD1VJsR z1NEQ*G=e733|c@dXans8y}}OM?*t*>fG*GtdO$BQ_7g5(f(lRx+`t1YAVC$V1~tG7 ze83L^pnls7itlQm|I9|v1e!q$Xa#LR?mUBj5!8cL-~iV?!U8@}2U`VC+%BqZ>Ide90S;2Iz--~)A_1%!Yx zNO*u3)PiQv3B*3a4QfCTG=UD#11k3u)xZXgpdECBiuZ{s5C9FJ4RiraxWDjK`_;@V z@mHKzvM(oI4!@jxDfv?5rF=S-j;4)tdS7gxy)UyjzSr5CeKGN3_{H3wFiU9 zr@}OrU-HSwlldo7Peh+EXf(fA%1&i=#&N5e`^9dwZ_L~fzd_uPzCL!neSL;T_j3~2!Ng#AFn3+@y2y3;EvYThEykAg z=GbO?bLQIkwa&HKYZBLlugP7VygG7q{;Jef(W?$@N^Xj5%5O|bk*c&qI z#C^;dQyS$)VBxqHByb>3A$|)A)Yz0cRk)IOkEkh(zr5xMT|!I%PfyCca~?DB}$C*w{vlHv9UP4D7MI6l({^9xpR3omWYL8 zxrNDvk%jrbRA02u=u2M~yUe~Ub7}li=hEyYiA%zls<$*&`B1 zgpbILNsft($@ivuqrFCNx+m6S_hh=`-A;G5E72A1$~j3V;^afAP&8zO(w(tRyED@f z?{GS@?TPkqd#)|n7HP}3rdp$|Mr*ny)?&A0n&Zt*bG9kb6mH5jCL1G-`G!ES7)l?RZdk_CS+LVtfUpO@}86@>M=ZNcg$_OGnMg5r!rfSs0df&%%mAH z^RARD>M~quBWBn}M#Sk1|IJM^-o2j6|3CAE!uda!|G%H-bANgS7e*F|5dT=jpefA3 zT3qHEzR1S~b`zE6lLsaje&d{?U&LL9cCYByayu=*ot112TS#0n>URWRf#XD_xK2&X zO)mUesl*+WNL_xDlJ&Bs5>YJa#(Pu?>)z9Z+`}PI3g~6^AM~qFna> zxhCX64uMiYFRKqxF8cpM6Y>y;Kq;V?)rTmT{C}wld4v|+E}&$o4{*9)2w5gZ-41S< zO5xl@rCI2&G>MPW@~PWzPJ~{*Un+5A%T$Zzeys_4j6M~qHLMJ*MvO5Ay5kFW%VJ-mifLW zj(qRx0HFNfYuchd?Qym(_dIpiHQ_q?={p@jgdZ>))ubP!K@|!QJ_)nbg1^6MQeNN`CHMD11epPG<;wBSwwCF^4m68?zoGdz0xRNBJ+OOu(V zw19w;^|FP`(%WZP-9A6iguKKdPzvZ}^&!gk`EO0g%NzowfL>M~qHLcZYC>M21=|8j z*2fk?N^dw}>cXRV^Ar)mw^FAXuW|~M0{U2ein@6knv~Z#1xf*ZY#Axa=IPR;yiQ9F z2q;-ETPkIE%L%KSr>O~fgF_&VB2RkRLP+V&Gpuf&6`GK@Xu+KV(&+9ajqXk&eg6&8R73UucTwB_ zDK!0n>iln@$xmhf&r{p~=`M~qU?VxO~|Kc!M1>s^|6JJ()*v|M;*AOCgszd0;PaHwu}^I&rqdFd54x95KyvS zwp7aSp5b_P&rq!i$#4ji0(#j(Na;Pp@#>zTMicT`T5zX;G-y3ZgVvJ>8TS!;hH<0! z3`!eVuO{O+(b$FB)_mqQ>8V9y~? zAEInH0Zqt%&?0RCCF^4gA*DB*aicaITa$w8ptgXL^|587C>u^tlY-h-0RbiJWlN)M-M#LW_3lClor8D= z8^v5|u{n0$NPm)i?Kq;;5UtmwevMNh4JuCt*ixyMpdp}!QqNZD|kG(lMof>J=6EiXvfc$+mr-{2r9 z1+>}nf|RRPEt;TjauAdP+H842%9X2DP0+VE2ucBMw!9$a>Q$R2=-V6wrGPeDUXXGH zt6dZH9S(w0K$|TuNV$sDp$YmfE!+`MvH`YKkh1kE*O((pc~hq*^?Q_8C!l0)wp6OR z^-d_RS{~8_{TBy8DWJ`k7c{ZBez~Iw`aUhZUO>qP*-}AOqH3_ZXn#~(%e+gI^aDUEL#JO9O^g~*@BcNpcY^kK8A|Np%8B)@Dnk7JVY=y(-6(F`A(FI0#AsZMM81<#=+0Cg{f;1f_sBTV9ZI zJULPm^b-z(Qb3z6FGx9_9Hj~RDF;CsxQ>Hhc|nEa$;j8AA3jF)`Dv=5>B&dku9Io{ z+zO9t4oyGV?RH&Fll`#U_3T4#*YQ_)Twi?9?OI6FUmu`x0ch%_>67OMN3 zU*d87yWit_kk0*2py_MW_J0{oCS3z~jL!Wh()4-i`+p&w|NoQD`|qVb0FR^TOLYF< zPm`eO?dpBwZlwDEfB7=KtKnPdD$$fG)c;3)-RXlvPoUneM7>>!db<+!b|q@ynF3=5n zfS5}dzy(ZD0V;tTcz^{Ys3JzzV>KSB0bbw(et??05;b=vYVJzZ+?90zHFqUy?n>0$ zl}!LOcO`1>O4QtyZ2&cQC2HBzbjFHSEBx|YzC;mD^Y(}qW-RI2dKX*QGZv4 zfCIWfHxPq_0bIn$>qI?XSpiUwSE3%TL@i#4TD%gqcqMA_O4Q<&sKqN$i&vr+uS6|g ziCVl8wRk0J@k-RAyA`Nx_}8#qgSFv zuXF>{=#{9^D^a6YqDHSojb4cwy%IHgC2I6a)aaF{(JN7-SE5F*M2%jF8od%VdL?S~ zO4R6;sL?A?qj%(WqGqo|&0dL`y%IHhCF=D`)a#WYfO@^M3v>h2>y@b2D~fePRT5>$a|Py@Wc2mHVWK~M|oK?7(6O`sXHf;P|& zIzT4~0S9yeaey#@3z(n+R022f01HS^1*$;}@B$z31CthN?XHA-JaDgtm;mm+Q3pTS z0zVU=xvlTp_?<@FeXj|3n?WmR2O;2qE?~S*n4khw0uPX&3RHs{-~~R=LceSMvtSeWDIN)eN7r#T;RMHb}}^PzPG^;8)w> z*JX(OK@I$o59a)&v_TNmfdsE)Yth$?*HW)W zUd_FdcqRNw?&ajmk(cu?rCy4@WW1D4$I^B>voF5S*_Yj$*c;xPdolT9`q|jC#tXh(GQ;o_Q?xnDJQZ(a58@M-q=Xk7T*6K<1(NL-s@I z2cy(dAo)P#f&Bf+`@{F=?n~YmzAs1Z1RQE75WB~?C%q%O!`PA99^GziPbXtZJDJ%Q z-{x$~-krERe0T1y~)Fj!q?@tB)3GiiXr)7QqXwXe-w6Til}CVO?_>hRUM ztCCkmuF7vpZHjI(Hl;VlHrg9A8{!+B4cYaH_2Koob;)&+b@{cap%wy>HMw{q?oj)H z*nlyRS{+%PTa}>J0hyJtmBz{xwGGH!nYc21W%i0VwG2ovk1o$IOO|LCkXamG>@3bM zN-PR5%3YqkJaTzHmWoAVMl8KBw$NUf>5KO{ec8*zW$8;}m)e(RE{R{_T#~(b@Z#{r zxr>q)MJ~!;n7S}}p>bh)L2QA&Aag5wpW;l(MiP;5BsV!ZIWjqadg}D(>4T?*Ps>e8PKr#*pPD)~da7}1`jpry z_9>Z@<0m^OXD22mh9~AGBqu~BoE(yy6BS+?sNF5P9!Z;#5CN{<%lj)83I=$JRL{GRU*PZN+bmzNLUC}P1EA7M_+sTCD zAt#jW6rJggSclz_X^*!%?b)_OTevOPnrw}<=37!N(H5g6-5hJSn=?)ECZ{Rem}m?) z<{FX>k%oMIsymf;I}?ZpoIuu}@Q3|5U(y%x<-I9y z)N6RtHL)7ICQ}`+cB->giK=i_P9|kU=B<{6ppcM@RUllKubv zjIJEi2`E{cE$<46av}U35uN&O=w)d@%g-jg<4Dz)en zN$*v;5PqU2=uaF3rGPeDUXXGj{3K1#pE(Fh0d2OtAmu{%cumk>I0#AsZMM8127pnr1^ zlmgmpc|pqYJ=6EiXtpp3Kq&RdW!O0@`eOLCW#uOifS?2SF*I z&6XFW98b>D1o>#;j({}KJsDt21u0vvdOT6;#h$H6^;1%vfHZ3Szb`#cv3hs{vY@jmHkI)`u<9fYYmnEOPY2*;&zRv>1$N>-%r!OsQiBi zP3=?%VApbwYtnOW*EgSayRM+}e}ksmmwH@XR0rTqssk{Wrk~$S{Rz@kPtyzcxLs3e z`syN&>jIj7`-Izd15GX4X$-)m+jUCJ)XU!{ZH@a>(e z#INl_`M-DWNcm7?ypMjcCivmR06f`-rv%}twQy1$Jgpv{-T)^z!blUG(hR4zz-g^; zdK;Y44$tU-Gdtm|5Ioa?XLZ4|yWwmxK+ZAXIW9QYgwYCkZY7-OhVwn}JQQDB=cD|3 z`XIl*$OS0Jwiciu+q$p@UWB4->tY|g#1AhGz{_md7laFIVXO{bUJn;Fz{QQQzX>jB zhD%%EvR1gf4PMa>uk3&;I^oI?T;;&kU2vcq#!lzewTi2qj+uDr6ZfgrlyRGX`+-(h_yxU5kz}vbW zCEnHzDDt*$M47jB6AHbpn^Ed*-GX9o>sFL|TeqR$+uDkfZ|imxeOq^+?Ay8%h2Pd) zDE+qXM)9|`4dvff5(VJac9eiyJ5U5}-Gj1k>s}OoTlX3J4!({1UG#(XfC(S0fDcu| zhu!cI4}8>uk4gA=72Jv9a4UuKaO(*ah+9vhMBI7`MdH@e0r-p!cLm|IweYz*_96qQ?_LRq=>X%v=Q@1V5Y%AmO1`V7j;tsu%}x4w;{bL%@OJ0E@<|A{hm>$@mKx4wr`bnCxRjBb4&<>=NAP>^o@H%ij2 zAEGGT`Vq>~tpmn>GUtNtnefLI@F$hI@zeCZw_4@#P--h`h{6j7LV;%fcJ^XV6{7WM_{5JmDgopmt4FBE&|IrHn*#`gB z4nOFC|L%kzhDgs8;ot|O3%a_Y*#j$jVdWU;Hr^*aE@+vMOWm!iO5Cq@!x|6tTF{50 zcgtS|1J%$*>AMv~@w-)v@^`Ba1@BgU05;g<(EFIu7{o(OwXnGkw$#Jc2H4gJ+nZoV zGwf`Ep;qX$!LD}L-2r<#VQ&bIao`bM@W^g>R1ZA57k+FEJO<_R*0Csd10RqF7(4#0A6mxMM1c@ z7WUV{CG~J=16 z3&O3n@b)@*M?Ji=0p8UJ?{0$Inqjg9Zf}J<+TcCy@ZJu1Une>IHtrAMp$8oJU>AI- z8$R3v9}x@5M-BLx3qEebofR-u37>GoCq3{f3qCF3GgWX`HGH-PKIetc``~Urd?5h$ z*zm<5+*=Fx)xmTVTicDn8%fVp(S#q2X6R~x z)Q=-s(FQBqp}PZmI-wPU(t%Z7u(})8h@GU@fIb)Wn=nuT?MfJQ!&(olvtYf14OQgO z`XK_{;KC`fqB7*!k(npU!|i@;Wx8y#NV)~enRy1{A_Wkl7pCYwR8SVs=k_kG&^N{Tb$WCwGUbPD1>7`}y>9 z(dY8imtpwX?5_AOn|d;gK9hes`E;22F^oTDKb3wmO1&5+pLmCQFf>xBospe6>c8;N z`UshaV-Fh-ryhz>&xMHxod+`y#HioG)cp~vjgX*T3+LXOzbAQ5n0hRX@342IsU|`` znM{V0S*nL%Z%f}Dy*p2}5W;t5?~LDR-6uFGtRQO|^_&5_LmROcXl zP4t>P^+_1MI(t?8D*LK5)i=m*Ol}Ns%u;OwdqaACbbX%c8idzn*T&b{Ytw6@Yx41A zJRHvsh?4aToGUZb1EFz6YI$UNj`|;TmSvX4mKsY_OCn2h{fU03KeITtcpKF($Wp(9 z_T_1+U67|<2g3`qRJXvUJ_na^b0X*D=EUdNbJDY; z)W2Zz?C{yyv*Ks%JTr1;j(Qe!W@V@zfiW|6M&yhf)go|aWTwZcSHaY@$h6$l1obJH znG%~~Oi59Xg1O0w$3tj8C#BrK#>f{*)y3B$%a|1NO;j>PIk7^#;Nd zveb*9O|=H1C*`RR!7$Ysh@W6nt%2yc{PD@--wDUUMmRM#GB$Ty;yCBH%*SINH$I*^ zHgat4n8Y#8F`19WK4yF@b#&zD+);_69O^SLcBFA+>WB#S7?>F2jG5b;?@3Y}fh_eE zXm_WnhCrTr3Jg10svlreKY`KCd`Ge)OuYog+wJyrTa@|;Otywwvn_GzAu!#1fO-dX znlg>CMx!xBwE}YWiF${628`7ibt$S9kP9Y)PB24t0t`D9hy-#}Bf#-zd@-NlOHq%2 z15_6vT^+5?S0$+?Kvu@3Ez?vFAn!?f!k#SE0Hvf*vS!@0sRlsQl{b<` zn9Kh!zUidCTd4fs96JB!^8e5udE*}{PM#CtpGubh+jPyOUO>qP*-}?g4qhxTTx>1A zSbmNsDac7s3K(R|Oj0hE&($Q=(b63OCF^HPB^6yPAKeN`8T>S=Np0X%CJ=6EiXv9Sbn}HsFj1D6wqeN3sNqYU!VzU;~*#nwAu24l#AsHG(qhg z1f_sBTV9ZIvHU_!PzMJ=DWJ`k7o=P)zep1lqJ=vGN;bfj3R1RS^C7Pfv4uVoZn=LO$DSW+D6Vy!$uNP3VLAF#-(edPv$~>28l6p7^ zN&$mxnMvW|0hIbQNn>c~j)0Q&v!#-Xjwhol^F)d(dM(tX9?7Xt3K(EZr51f6M_1-i zQe&FbqbR9PK*`!{snnuR=;`Cvz&40tVPpsRuuil&V(dQBnsq zsi#mJ=6Eib5WJSm(gf0SROvj2rN{ff%}*U?n9 zhsyt7I9UF_;7X6{_f+1f9-7Pzq?X zV z(ZU@8B^zK%1u6R?_2@XQcn^4$CUrXH)d?tBn=O^9?u(S8)w^poNi#VKN&$mxnMumgakD1rOj^1lpk)1QsidN# zb1IYq2G~-mMW4vgSMQY6>olpeDXC6C$=YnG)S^%1=&N^wnxHux z1f_t~_?9d$NIBa|XoAk+ASea2+46#vYbnxJzz2ucBMw!9$acyf~_XdVYaDWJ`k7o;3dZq@|N=O8ErwAu24l;g=QnxOM( z;f{ck4X~wxl&x1ip3ErTXWXhuy@2xS1eC1JmP%E(Ugdalnoa}bmQ+H842%JF2oCTI}{K`EfkmKUTPPj+a6 z7IP4k0@`eOLCW#u9!*d`2SF*I&6XFW98d1m1TEnpCosWiR2%;UP0&i(&H z_5N?C>2US`asI!3vB!1fQ*PI%o^-p;qx1jY(0Tuc%RMeH{r?o||I<`l|Np-2xBT)p zs{jA9q4R$}@qhm-V)fYNeAgVH+Ng2g7T>kLD&JObvu~@<<(p|3LAtqUG7Ql;cax}Y zrd|qMBM;M~&Gcx%GtFxjKPYHvb?QR~JyhRZJW~t(X07r_D;{Yno~I3uv=%?ojz`*x zAL+m&?ZuCD;*pNxM?!d{v-puNJQ6B?q#KVo#g91jNWgc@$U|5QP5hX;X3%`VFGpsh zxzLEG)_?0N)sMY)=D!TQPxTe9#Pgx z8y->CN;@7=)=DcqGJ36`=|o`E=LIbjs$1|uDqb^aqfqogiJg2#lenEMy4Vc}J*?Td28)i2#JKFIyH(~aw;oTO!(nieg!|Xkny%n>& zFna^$964msob{M9fH}o}nzJ2qR$$KF!9~JT*z#$%(7+<909-g|(vO|=qbz(j>8BQ2 zs3$tKSo*n{mKm(4WdC^HgTc@eszB@vzW|!m9$Y5s8xCA4>fJOnLw$WH zF6ujJ*7`15rhLLnEA8NMndWzB(X9=%=vFr^x>eBptyMICt3&hqN46H4GlV%CF{cM} z8kn;hbA~Wy@ha%VoK2Y1!kjM5S%Wz{G3Ur}icIKFr%b`jxg}&Q{D>jX5hZryp~+jee!An6nLY)?iLI<_uuY*3qxD1#`Az zPA}&4U``uz*3rh}*>dnNY0Ra+Roi6xTY2Zw-^zVpKm_fv^tY;|&;P+cv9XQjXxK?} zxaQK60s2GA!aAhY;-^1iu;~EJVbLEk*hpbPhr)tw^x>xpejGCp z6P~TU?vdyH^qH&mPwp4Bm2;Ph+WL2vi(2>Cm9*14u$uNyp*5nmdtjZYH3m0|+TLwf zi(0vG3(dDMA!^P2H;CFX@7yxHA1z*P^ETFez#S+qTn> zJ9miMp1{4d+@1G{THo9UL~U2-AyF&de;6<4F;Q#nf1LJob5o+$HTWd`xa}$Wjj_+r zEc9Z_4c^E0B>6ZjmxpKYI~ zo%_OfX+e{t*eh=JJ!sHPH0=M1sPatn9q$|PJxKe>nZ74{GwEmAYx*AdMThqlBj1)= zX#VzNe8;8zDS}_y7 zk>RiNLtp9J=;7LC?Rzl}&~Ja_d+EUPKk~f@EJOER+RJ$_E-dNL_fkm@d#|N482pta z{Y{d-lW5gB^oZlzdbo9imBD`rv-npJ`Ge9ruAmv}AEa}m2WeT+!!L_wvlh}zNYYGO zDZUCHoS^^*PaOQQ_&&dY@_upucXHp3ek+&Fe%<*>`b)7d*ze{)o6W>Noqs#^iRhc* z*X>vBmz;E#+FgYA<@P4`M)u}kOuZO=(Rgti^#z&Vo!TAUZR}1zAETBR8R`wvc`o~G zg4$l>b|tAl$ow-YYJFimlcpXa?WZ%;{=#`GOMOCypUgcmkaAMloeAm>GWU4$@yO%( z$5M|)sYl54qp?S$kHj91Q9qEG2jkT8B1^qMrtXj4Z`|+Pm!&=+!}sQ>&eH`q61u8&{uTwmPFqrD}wIlkH1oV_-2ZR{HRn#|Sls~u`*k);+E z#>V2F920B9YjbOoYa-OPA~%p6hz#Ucr&dQ-i`Ds+sg+Uc!7;rew!&VKyCQi-)Y9luXGxY?RD}C;i<65Zi`5<*GkwX+qL=0_PG1ziFuEXofqi~{es*5^ z++;L9H+s(dXJ^iepBbHH&&x@Mx@>JS z7`4Lz+n@Jlsii=&DlVf|*kik?S3omNMgF1p7mV9V=l`F_=s&}^u~&;@y9(|9@l|;G zVBv{#@Gbao9h^&iiT&U2*nH%5w&3vB3UFXN*ulB%#E&6>Z>kdCKmQjxHXnJNr8+p5 z|9^CBKJq%z2>WmyoKs)F^aPq;|F3pzKJq%z$eKEcCeXzCUHM zEzwk3HiH&`cG9v9pp~>lBWZ~?(lP`b&;`1Qk=NOSM|!~+V2mYPzyuYb61af}pjEU) zqiBgX(GpFfC0ayFG>DdH4=vFgTB0?yL}O@)w$Ktyp(R>EOEiR*Xa_CP3|ck;G=i3B z11(ztT0qNoV&rwA9kfIWS)#SG zL}O=(w$2hwoh4d2OEh$rXy+`^%vqw9vqU3ji8js>O`IiKIFG!}COm?6&JxX>Wh+1< zXNfk>vIC%nvkUVU}pZEYWmXqUEwg z!)1wf%M#6&C0Z>@G+LHjpd0jnUV!$>63vyR3z(n+R06bAmT0If(N0;SnX*JHWg5MM zKpW+e*NLXe5-pW!6b}OJlqH%eOSDp^Q9KB=QI=?%Orv-ZXqhb0Fqua2AkZvXqE)g) zqhuPzgFusHI>-@dkW8a^5M7`f^nhLge=kcSfcH*MAKu5md6qek0sh2OEf!{Xmu>n=vX!Zv^bV%a4gZ@SfaVH zYzG|xZH;9JIG_u312i+1Xk|=2&KJE-6OUAYN`QvO677ts^LYZTj3pWwOEfN)Xj?4N zv{<5Lu|&gSiFU;j&59*j6-zWKmS|Hf(WF>5fJV>+nn4R_1#O@mbbw9}0uC_t7rjmw z{UA+H0V;tTcz^{Yr~=iX26%xF_(1^JAP8zf9jFHlpb<2IX3zp!K^tf%thpVyE8Zsz z;39_q@N-Q(QUNM~8+d>PB&Y(_payt>5BNa<*dPdMK^>?E4WJP;fo9MGT0t9V2OXdj zgn$FOh>_RXjYoPwFE9dE(;ERMr~s9~4LraC5>$a|Py@Wc2mBxaY!C#spbpf72G9ta zKr?6ot)LCG6Cj=mtHY7mNW$h;RWDRDeq01|DDm393Lfr~zK!1AY(y zHVA@RPzUNk185{hUS|^?X$CEz6|{kN&;dF@2soe%bb}r+^o@HieeoW6J@k6^wFI@P z&%K(YKL7Ktq^MQB@k;vT*vs2qioBFhr_#~1kxuW6?X#&}eSEL8H~V7Z#qf){J;^)VkhyA-y}c+uog__Vo_+`JZ?${9NwYz_S@@U+?V7QlJ0fXL8iSKJs+_snk=^ zrwnRiAA8b%GQ<7;XH$t(IF+NG|06r|kEb4wK5jgoroR8TQP2PRM^cYOA2A+DQ(Jrc zVf6j)Jd~x@_TdL}L%shO&im5$#qP83%iJ5M{{OT0B&gMWZbx88W_x_QvptiHCmm{a zpV$`Omb*K7cZAyAr|v2~3yf3$|JmCU)b>8NHMupiHGf;`w&-nxw}x-c-IBZ|a!dZ^ z)Xl|bgz+1l8?!egZU|HV|HB3*b^fZKf_;VW{N zCohjsM1JbB=w)NJv&K|B8h6Fhl>Ofr&0HM6*t|GP`TxT^au+2pid>Z6p4uMW?%JNd zFm|CqvH9@}%nP#Ti}Tax#m+M*Ha~u@d2aTc#5rM#&QG2lIXk~CwJo~MwJp6hw$<30 zp%{JhtZXb13&(O4r5_o|Z%J*5ZW%i>d}fZK^do2FPfwj5J>5ld`mxiD(=w;VPc=`? zZcc0tZ_aH>Zi-N>e(IFyDXvq}6t8b=%xs8nFgIj}#c-P9^^NtJq41@okXw~p6MkAi;{~X6wRMn7+vUEn5Kw+gU*xVJ!VgqV*0~JaL2>=@L(N08hloSc2geRJD6T)gz+8|$C~;7jBKwo`BlGj~QuCtoT=UZ1 zv2LR~L-GA)SGF_J8Sczcgnz`$hf<+vXsjdLk)sIzNPE65)fR1YQH+1A)o9JM#9K@{ z6HhdUn{!Rcrbtu1G1VAtbTy_a*57Ez)W_@1`fQ!3OH-`BQJblW*O)a~iuMmz=ZvHg zG4jDwFdB3P(}7sPposrCU0}-k6aKJ2=S%t`zI;`R;{M0}?)?9&hQqygQvd&bc%Cu6 zxc~oDp2w;0!dx9A9KDSk{onc=&t!c#!ZppAJK%hB)Cy2C4dz@{XKy1%|F=gJq6=6A zN&y#wsXjtioVbBbkxTc)={>CQh-6`T-KR2lB|wsBd7HVg*8s5S^-L?!JNxF zvqo;Ad38h^J*f~~!Xi)#&|sD(a`bImM5M9P1PzumsmL_ua ze@iJum$L|z0yLPVi5&gko>qviU=b(vir=9FI16USYk4e6<3UOoKU>)!BL-`;!+G zqH9?MN&y`z`+ zn8v8~b^+40Aflf+DlQdQi5=Df!wkpDMfq5*7+k-3?XoTFR}5`g)4yiPf}Wjyj^~=Z zqEIGyhCnI60CO%Sc3~Bkvd6Je|ENN9BWpk@zyPxpjboGkszP%UYd|T$0J8*5xW~Rm zyr$6H%ofw4JZW|V3wd+*kjMZF{#kp${J7#Fu*KD6Fv&7V<8<@ zTA{g}s%{gYWcrw+Vk@oM=gh3u*4S8?C>yI0gUi;gaID*o=Wo2BFy6s414;q$S*a1ob`k0pEthpV1i|}4y$-Sj;+)4EY1t^(*=BT)c=44xu z1Dgep7+kY%dB1%vcv~U4i>fySD49BQR9r5$lV;Y71fDUk7~HUW-LjMIE5XMUmV2oF zRsl+871P?5hGt2y@zcht=_he+-yBc8ct;_;muCx<0@Rrho_&B#YGJn4^{=JWcbJ^Q zFZ6MRWt=S_UH)bZSc0W5Y_ohqVM($DlmgV5YD?I$Mt@RaxsNTN6rj#5!D6k`vwy@A z{(ff%<^HGPHy3%_x6n}A=5@ce-QylO-Q)iG$sTuthQOg-_lsA1+z}f7`6`e5QW|_T zJh#*1Ubw{T{=y3$_n9>Of%5*}MMM2LUiYh%_kTGJ->10$OK6ZZOi9V zrg}jxjM&@ly9&z#YyqVJb!G{cK6|_Uw8HWb)!ZgP$@DR?@xF|<53^p=8}DJ~`KIGx z7w;*I50fh(K*{tmN5v(yMJhfP!tR1L-a{MK+MDhB3dbW1SfDw$c&TtQQ|| z(S~)|vdzovt#*$>vYV=}7NBGXn2>B27tV4B+Nkmo*0R+nukT-N|AjIN&7(XopcJ5= zNtsY-iJe`fDeNQ$hx&UKV=Mus0R2q0Bz&|@@>zxC397hVfRgEFVt02w zEwov${YSxT2A1_WjuafJ9{)k1e3E2_03}mrV$q#L+F7stJHMe7Yn%tcpHo<#Vhbn* zs548jIF5n;QDK>23rM#!*#eeeaa_~*yuy;AI)eg~Og|IHRTt0kBT>_dtXtM&Kk)g2 zLh>|KZwOE_b>=AjDBEefGwZegXIZg&xZiR7`$dK28Mc5@fI4%OTFv$Yw4A~rLjUUi zjXn1E`A-VVvupvS0Cnalt<#szZ5g1AfTMwaNnv@8Eua*j&cxo}in%T8Hq!Bqy@h^R zVR?aSZWo|r`kCq$8g{f$M>@x^D3mXf%n+bt>P+=o9d?|iepO+4i7lWMpw2A8;%K2? zQ&?VR3n&GsGfS{ITIiI*@(R@)6rg1Knd%nmI7Q7WBp;>f4FO7~&McvYIdX>asAC`cErlgbHMa{; zGW|?-3ti}Fp^<~JjV&A-d|RP>gJgyPB~xdr*Xo6i7Wy59hLVu{Re1a{Y6rj#5p@lBA??Zp2uzZSY zZWW+pRxvRz7m3iUL!0Rh1?X%C`K7XtbzDug0043AU#7~6lVY6QQPj>p(4fgkl zsp;tcy$Z>vSprG{`k9a%==g)qLO%Fvx%=KTJ?{2)ulwV4?mtAsztXw?tu&Z){{N{9 zDPEt3-(TQyUwe$#T~Gf{o=^GuX!zNA9`_BKJnkm?|IKqf?lm<0^J2;$cn+P<)9~Wi z9(NxNKOFYBuiWNw8#KJK)#F~W$m{;bkjK4)2Ja;v_tR02`-F(c{pFC?ea;A-|I^^! z^sTqXS3rQ0 z>0{2d<`ymm(3)$%6!3F}t-|qTs@)KvWa>=J z$i)Y^KxdscuU@up?Fz@q`R^2#udoG_0@Rr$SR9A`zgJkkN;L-sD4BkywMG}WOzYwq zt0U1t^(*=5}!wT|O^f4GL>?--h*@?MMB8R7k!<)f)no zOr2>htzt=GjUHIOe%Nv4>`w~Ici93;0qV>WEROT?|5RAM#}-fuP-m84aUAvkSz-A; z)f^I_WCob9?4X~2){Acj)T4FwubtIABlaWzzbK?XAYHWpB{RUZ_6EgAY}OqJ+8fMn zp#P=N{E#)E6kvd9X^OAbPHSd2(Z4D*KVl6i1sGsjn)7EZ!TtABXl`aV(*IUyeoR#x z0+dXhX=#doslvM5zjjtL{U3!TNA-6IP%?GqTIM3H=vjN~WKQO#?PSvtIkR)_tV3Z>?Pl$xm4VN&)(r*l&M`WEn~9TWhyM@-voz zQhH?5Xm4(>|1M1A^AB=Kq){!6T9sXk*p_)eREx=kojuI3oT(}PCQCNP-7ElUMXJS8%J{R`a zAI~gzC+WWbVRZig`7=E3vuOA$o%26JL-%U0`#n1EKjj*admr8Nzk`O_Q>kA7o%gSz z;U{#?e;v;KSJAToPVuGdA> zY8t+`(CfaukFE#M@G716576)(I`_Y1(Bt;gAf|-qd}!~V@1gkrJHP3kndHfX~@y1AuXSVOne%W z?`g=Try=Q{hCF+k7$qPlpymcNpbRJnJb)Ld03=XJped}vxDW6HIuHPY05b7uNJgh2 z1D}RudK&WQX-Ju;AxoZy#CRHV;b};Jry-l2hO~DYGTmv&(WfCRpB4g;l}zgdkX21X zA~g-U(=?<@(~u!eLsB#idC)YZHKQp+1~d&x&orcK(~zJ|LoPfGx!*M8ztfPrPD8pn z4H@b*B&E}khfYK4IStw7G$fDHkY!FoVmS>d@iZjC(~uNRLk=(v$AN%} z<xB(3)1Ihsp-~}oG z2~+}A01`83en1D1m_Z8y22f3)DXhVGEl>y40}VhU&;&FCEkG;K2DAemKnO5_PM{0u z2Ic|t0ax%Untnh7%7Ajf19*W7KmwIO72qS#6#6l)0|6ii7(g{p1JnX_Kt0d^Gy+XP zGtdIG0&PG$&;f)16X*oGfNo$OFduOB5Zr(UlmX>{hd@*4#drlEfl8nX@Bw~62LeD4 zFo0^H2B-zZ?Xh%gr@&(#a5s-9&c2oo;U7#Hm0ZA8V zM@2x=1=>;Z6e8^c?Wzb!yFj}t0@5zfu8M%P3mVcc(5{MrvVSHn0cZr8fM%ctXa(AU zcAx_Y0VdE1bOB<5-~!x0-S`SJch=K?R5zg!Xabsn7N8Z76Dw&#fjXcCFah@@p#so> zTA&#S0j@m+FW?7ifF_^=m@MvL+}CBKqJr& zbOYs6get%Q8h|#S3n<%1s04yQJEMhFrJ z0ChkMU;^$@LIt1$wLmiv0$gJRFW?7ifF_^=5R(KC-~+0GMxY(&2Fj-hRe%9B0Bt}Q zP_~ay2?T+9pcUu@ghrTrJNCBmcIK`4TjpEYHxqA$-^{&{{5zxilP^YI%)gL&A^L*r zh4k~W=Z)tx&&8iJpUXa*csBfO?wRB>k!SKxr=E^J?Rq+$ilvNHW+FaePGp}-JQaQ_ z_hjPAW9DPoM-z{RAICf7~r8)G*bH)ay?gqg^WCC0*Ixf_x*KaH%V!loKv}MeGXWip=Hl%gxKPmnAL>UzWQxd1>U* z{3WSNqL;WXNylSxBc2(JkD8;|i$^XtF3#+T?=W{{FG^e#z9_dnxjnKye_`sv=!LEe z(-*`pFfPcPA3xtbKYL!{yzqIsbCc&r&dr~bIwyLL>zwr2y(Px^ySAjyjGbwmnK>hV zhIvNz^u+1m({raKPYazkb!y_&@Ts}Y$<2|?`Aw-!(M_&R=~H5-7^h@5#y6T9vl|i{ z!W(kK$>GRwetl|vbiIqR&&7s}p-eO$718uyY|t3Ytc$NR*Jalx)`r*S)+EQ66^EjN~Dmc^Hu%d&lm zzHnbIl8i(m`QB7-wAa;}J~4Kpabo6#_z5QEw@Vx!K7P+}@#Dg`#o@)dqmoBOj>;dIIx>2s>&Wz?*dk-m#Q!4Z zKXFL-klew^gChs$7mO_kFUTE~JScKdetv3xbiQkTdR}avF)z~{?>4)$U5T!6SFSVJ z8R^WMDKl!i%ycLgGD4Y-c!$}MZ69ej+B0qOHnT0;nrIET=30_1k(PXOsyW*1qC9-D zCZj3S7;iKivki%ca6_&>SxQZ&lIv2(M_txfXQZ>;US53M)R&7*gjJRPM*1lt=Z}>C5xX<)us}fb=s$6BVGE|wB2^p5TieyEkBJWLkqh6Oc z?TL8|Po_LxZkA`u5@q4CoR-ugTHc*Vw&MY}v52hWC z`?EfU4E~3Og~dSXO0vNtqO^o zC7=|bpQ)BO(lfLvBpOw0(3u`2pw662QaH|`&5Sb;zg=M|V+$w+s548jID#BH6c!KF z+#x{8)S1?*u&rp5iFx6pspYGkM^lamAcho9FWC$MN~X@Vy3`!l=@rzaX8CHzcG^@} zD%b)_0qV>WERGFzr@|uH0#afTwtyvA99!xxg{6`$pcJ6aEWzT~RCg;ZRcryJ0ClF- z3u)T{*9H1rhVi@D@6^sySbS^&r2uti2^L4MxA_W-pDmyipw2A8;^)uND|Nlz&{~w|I|BGmN?-Z|lGu{9HfbRd_OT!^Fe2(t_kI?WJy6^uG4d$@d{n7Pa z_e#3||5Li}e*+CIG`vIi{@2s+`(ElN(Cc;Aq5uD&OXO~feq!7^A{xK#o@v#4pBERz zR`B0#y>z8IPEP`<#KT5h^b+k<6zBlzDX(9k0cZr8fM%ct&_aYVpd9c3UZ4VKoFFs- z%|Hv#3bX;0dk9s45AXvz5CB@H2(3UH&<=C}As{fZK?H(;0o3u>6phsYbwEAP05kzD zKnLIrZKNlQ0e&C|xc3q?pbRJnJb)Ld03=WeQ~^G~59mMu2m%IB4b%X&KpjvIGysi2 z6VME_0Ifh9;2paM6FyE~>v@d4qfgMgdtRRX6Y2Y2EiSs79xO$V5~5$w(?b=sO+1S4 zK2DCwSEfH*_(c22Oa=SDw2vylGlr;wt{|oW71W@DT3ZE$Pt@BgC=_W_0Uk<3-w)yY zL43a&&{0VcXt390eYWWUMfS?APqh>mx#6QH?2xa5MgsxB0IGo+paEzEnt*1Y1?a#O z&I7zX1PN3ERX_j;0tQeG)Bpj@jsY|P?LY`Hflfe75?p{A(10?)j|C6_>VP(&0|)^o zFb@z@1Q*~2G@x^0W*xv&g=n5#lSM^ZaZ#gv=~`cGE-vaWE}BvR8d@1YyXK0lUiKVT3pmtT%?W8tlx#{Dl0B3FD~*F7gZG(`HGAD#YK8?Q7f%` zc-|NNer;F{+j(6C+(ByjRX{CJ4|D)ph~NWspaBR0S}&m-(18XZ1k_?ptpnI23mk_z_o`^ z3Df|sKs(?Pw56*AYJfVR9dHK;RX{n~fCumb6@URW16_c3FChpt0i8hkK7tN303kpN z(k9gh)B){)yO&S})BvRS-n^~lDDLeMr>7DML~R@o;ZlTZx4OH1K)4Q_ucl@!TLnE{rgr?8NR=e zzh92+A9d59RtwbdlmG^*s|M=q(`0?CzPPBtuCYGVSX|_TnI7CnQ|^bk43l3Dv_RSl zlw*t4408)mHbrQ)3$5?B6&ICF*_NL5sSf)zSVf`YqDuR!X?@BQ>Ze1p>v>XLAv!$N z0EvmN1gd~qpbn@91ZKnqxB(6D0e(OS8Zn1WKr_$HS#n?Y(bKz7c!Fcq5aJr)QqT7k*v5HuceoS4M45WI*4I*)02*kWUG=BW5l=26)r6aTB{2BZ%iJ7ny(e;pk043AMv>bEZsU2AExcl=Fg`=JwpcJ5wX*uS+ zQ#-KSar5U0g`B0!jhu%n~e)tNlkQEbUZtP=J!@XQCes zey3Tl{k;Mrl!U+@m9PR!|wZ9wE^2l(+u_`Q4SUTAPN&)K35-g5YVX4B>#THNsP-m84ajXi*C@kG<0i^(S zW(gL@M*3KVWgc5VDL|cBg2l0!K2Bko&lXS$P-m84acroMS6B{W3n&GsGfS{IZquKj zuqP&1$59F}sWc9%M z;r_Mut@Uz+yo{FB);W(r zNMTQNwnCu@Q?&sBN~VvADBVlAZ>nRh9j%??ls(8omUKj#43HESj4U%O(Z zy&8P?5%RG zLUIgM91x&n`j}`kb1$uR8&|BfH<@(`$8l79hX5s0XU?@cTPFtC(+oI|1|#-P)q@J> z@jPFk6rhh8qpkBLbFKxE{-KrjwK=MAoWKrH3ed;2G7l8*L9I27QV*;Qi=OG*|3eDL ziR=KS0DYh@Q09J-?)@*PVT$hkZ>K&0UdjRRG{yg)u$prDolNokG`LRlx}P}7<6cU` zx0ia{qjdkjl7{Cg_P>|<0eqkC{hvd900ia#dz51TkEG$N6#IW34Q?79ryKx_Y52@C zulo$T|NqCcJnke7htlv)#Oodod))aRkNa-w18^`6V%#l$`X%$+`@AFKPmcTlSBb`m z75|TD-u|&dQ%6)UJ-U{Fs9t(>Edf!z^ypdwqI&7kwFE@<(xYn$i0Y+B*AfuZOOLK4 zAf}fdT}wbrFFm@JfS6u-bS(ifz4Yi>0%CgU(X|A`^wOhi35e;XN7oV%(@T%6B_O6( zBBqy~TT2hGbpsku29yIHzzZOzm!4ZoKuj+^x0ZmIUV3gV0TI3Q+*$%6dg-~f1Vr@G zb888R=%we@5)jc#&#fgOqL-dqOF%>~J-3#Ch+cYbEukGiL@z&PeR?^XDCq>cfNo$O zFduOB5Zr(UlmX>{2k-)j>y?P>m5A$=i0hSz>y?P>m5A$=i0hSz>y?P>m5A$=i0hSz z>y?P>m5A$=i0hSz>y?P>m5A$|o=(K~%2ojJy%O=gvI7VKCeR6V0o}knKnxOGfE&<& zGN2sr0A2vmy%N#A64AX9(Y+GUy%N#A64AX9(Y+GUy%N#A64AX9(Y+GUz0=c)C|`*v zUx_GRi6~!*C|`*vUx_GR*$N=aS0c(+b^sy31Ui8(pc_DpuSATmM2xT0fHI&QK#Z?M zjBlxrS)ZOx#QM%WZe1eQ_y4BHtWQs;^Kt9)|F*}hPfusrI4!_(zyo*z#QjRd{Yu3B zO2qw2#QjRd{Yu3BO2qw2MEy!c{YpgrN<{riMEy!c{YpgrN<{riME%Mppcz2auSC?Z zMAWZD)UQO;uM7bu&j(V}U_%qwWP+v(cfz{L!1?7wdb~G{9xTB_tH8tk;1Lbr(kAfO7V!8s@Wc)h77Q)7M$M* z9@0dlrU`F!}@6B=JWYxVIeqi5L8t1b*MtAw2>ziN{G)Gb zjqq0P^wWQ|>aGzL*90+IhtWg>cvBO2OAB~g8+b=2c#qge9Cw5Fm4Odb>J@>!QV6y zWeY}s*NV}0jOIHqYGU+*{r}Tn!H=ikiM```C;hSL$6Oyvy&ZWw_g3Pq@LRbzlW#`e z%)gO(Bl?ExjdVJeHqx2N_@p_ReLeAd`1Rat$=4#UWRn`xyKWan~!HXPeA6;INiHX?~YQIfaD{QNAeFR3-|BC z59Jj5D1F;8O52Wvp-tW3Ubzk&8*L~?^ENLV&LE-^nq^k&!1shc7<IXZRVQzHRd(hs}om;ug+bSyee{4erIZDbf;@)`pVdq z#+8{X;#ZhgWG_!#9=<$xS@N>TW%)}}h3o*4OLFl<+@#z9F}kOox;S!iZbyPL17t3W zUF5nbMR@^o7bY$YUzoihPFVrc=SR=apO-v9PJqAVUb;9leMamI`srk*R&C$)S&FM|CO~$6oDe+UxQ?eTq8^arO8&(?-lNj7%^d zG=tedA`lMb^rRlq^Zt}S>Ua6mzL?MOWvb#;W>vN_Q5mkx$)t?Pd_}4vTH&fldt+Y1 zoAJawrYBpTC=ZwC%93S~vb>hkqMA!fyJK#{opHrorYlRQ^%vanU%$Jb?*BJ@$IU1C z9dyxRzW6sDrz^c5cKwC2SURr4tyf$d>7}Xz0+dW2(@HNn*Yy|5FS*iw5pG!Fh_C~c z0`xJ@qKj}Bi{gjSS=V^_D0i~`8r%kjqmSw}1Spw0)4FUu*Y$V0Y&|@%#(r^pqr$R` zEua*j&YbJot96wh*IoyP?brHFQCOB!%|QW5rk`nD>pS0C31(Qh!9&;j1{_%$HYp@4 zsQL~8N~X>%;euknr)@%Qj{{rN7S2#}M z83CmL{Y>?YIFi4fp^%(R6$b<;nLZ{YxJo|jH9aH4o9vDAOod}LJ3uKw9}^B-?w|FV zb_{K@H_a^y#~P~F5TIo0OzQ`^c$Q*+FP8qbXq@(@Iij$vrTPN`luREJmh$T&_jmsTbPR>_2 zPh}@41*kLU+LcbXrGb8DTXN)4xIp1NjXZ_`B~xdfPkW!a+tNV)?6!2F!g4xWKq)|- zS%SsUmbNP_XRrm70@Rr$SR8HXB8BBlwt!NAI0*Ut zge@T5v0w{Wg2mC6MirK`sLl=nN~X>%VZC;?B}Z0>xWc)OY#{+kW`Joqi@O9_8H4Ds zbp61vqcQb6!rU)WNY5r+K!B3zV_wR;TRteX@0-S~a|bdyc1xEk9OtkDlmhfIEe9VH z9@yb%NS7%b=duHo0`xI02Okq2*x_hKmn$6Su>+I>^f4_5pRXO*;b=rxC>-ar1C#>v zF)arl5+2y$XhK&i92c+ylmhfIEyrBl#pyS<8j#(u8h@AW{cob-1G@J=PQzg|e1Y!$ zuRq=E{_)9P_f-`8Uqi#I6#KuDh8*4ZzlH`cVmDhbZ-T(hQ-S>~t@E5x8{~!%V z(D12#ultmKy01_7{qLsy{|D3X4|MN;WEp*qp8NM8-TOEDyzY1D*?${j^o#+D`@f6s z{V%}%|1r1t@uFWZeZV^+roQW*nT6i8Se4E3-{ljV5$o8cH|wVUG)Ed$P*I=~2mnn$ z8_)%m?IB2@5->);GW+{wqd%No>_jIKW7(-5wC03v{aAO%`OV<+bX=f{2EWI zNq@*D9__@a6~EVo(H1W4#%L>#&ckRMkBZPXx)jT!E{t~YXxrpjqTJ+Bcknz>72JD) zsG7g;B2nevGb*Z@s4r2Kwl5*7%6o4YRqcC|qRQBJAKrL?-k6-AHzuB@j&%E;6;&PuSn} zg+68fvu&T_&!(Pt?eF>r=UL0yn%tJDnD7)9aShF}zfs&G{B<dNU+55LfoJMaXMwgiCcM_lP&s}r>Gs?p{8gCzc|A1weoTI~ zc$Ox0d|GCG+#H*hSp~k{`TOfGd}4fov%u3kJvr7V$|t8QwbsJ6VCVj?SnFbAPd}|+ z)XuE;o9WMhHc0S}6Ka6K=pZ$=aYAq}rK>OiPtSS68?{zTy2#~k3hto!m>Q*p8oE^Y zYs9I-d#!FoRo2lTlri9PY9abO{>r@IRTLvQ-d&g!eSdiazP3x>#UE-MsMV+|F={nxiBYRj z*J3op6Ig>$lSjScI*P2kmd8yoMgf!~g&%w&Z40gPrk=u2K2y}Nr>F?GV`(;5=~l(K zF-x)N1l(|?BqmV`ZRG_sN=v79j1brdi1k?FgxbA?MxaFuQyeWICTJ<@BZI;_T1c)@ zfpww=Xc?ssv<{xRf4OwfXrODn-THwS>Z64PKCigQJyrCn^5UY_$>IHxxvhK2RgT4G z{lp#`4S0bHzz^s^00;tgKt0d^Gy-ivJJ11y7<*{$cIip}2^xa5m^!hT>ac`@Q&>V+ zIMqO4kfL7Os3*KPS;*zkPJc*iP3)l2KnO5_2CS2-Xsxr>{$~1<^2ZP=da2HK{0M$1 z+JTxeTFi2UmS3Cbu$JGVtC)BEMhe-TBm}1jfw5cAFbPeQg!VlIZ685~Zl!m7 z2u3fVVUW-|M$je+l~V-Y-rK2`eT3TJ9VDOFg_*evl~Vo(*S>LDP4*>e(t`KXwDdke zV?f)~gEaMH4`cn=O@AWAOx-ADJkSQ8!lIj?&yA<(m!REPpqsXo0greN3zpEa=Xsjx zkr%0KlpuOvChUC$QOB>+Tn1mG1=~x|dR`~=5*mVOnzx>`wV}s?wU%aGZ(-YSD;h8C z6laPW_Y`)FGeyCP!p?D~sAH~EbJ_2iYg|Giab+AMXvEr z&Yq#*WKmJ5x3IUJsXj1TTqFuR;h9gh>@6y)9RKueV^hz2vx{nai;8Loi;G5zit5IT zizbVT>Zgi}_7)X2>?(4W*1cluM=Lg zuwV8L(srX`ys&GceN3UeySK0(nkh1;ii%qHF2}a;sY1J}9_gp%F4j_$rJe`0e)#Dn1na}OjRh&+(LKgB%_()Y!R@&!2i8My9F-xa&d;GPEN zo!MQ9UEy81JCb)q?#SPsx;=Wk>-O|*vD=K>GPlNWHE+${lDH*&OYY|6&5@h)H>FB= z7Qw`4Ml-#8^6#hKkG}7EKmA_j)8p@se5&V@xlb6M*!#}p$Hv|sd@JHQ>JO2;F>+%*f&2!p zM0zYXW{hQSh~Hq|ki9-}efav^b;;`@*X6HGT^qgDb#3~Z*fqvAnXBVhn^$MAO8kw_ zOGw2>`8f%Ri^J3#BDo{7BTs!H(%WO(jqR}ulNUrT$e*90o)E6{)91y`b3PlPxF1CL ztXwP{6C+b+PMk4H{T~;s z7&W_zw#n8#EmO^VoAxz|#$ZFHK3+feA$bEbK_eIor0ID9QGd#pr#=GvhceR9r*ZPG6y89HL|fn5A5-b6g?pcSMq3 zrI79*U55ZAQ)gPzvv}%lC}jSpD};T+PNySe`D%spVzLDUD49McBFPZ>KkHSvK-fnS zSN5B|*C-sL>;R;RuW($-4p0iv$Fv+=kNqc^`8|%b-|M|W;kb+)pcJ5wX*uS) zKuGg(l>JWcn8I-d)!QLJ$<&!8tjo@e-HYt~BN7Vdm1GMDP%?eYQCgQTopW6t99r*K zmv2-!cCrJM0`xI0$6V_&IUMWqO$x_V>;RAwf>}291s7#Md7%H9iSATk7+sPT2|z6Jo@`qh2uJ^w?lxEsWVGh&lcJ5_V*uY zU(aq+IIkz0E%yG6PJj(Ofob z{k7#?7@n1Pq5mj*tGQPpy`80?6kvdK;GJVXg6g)onvH7x+I>^f4_* z@s6fUlu?ISayV|@Kca9v%nncr(8shK#ariThvVk`ZiV9!c7RfVKBncE>)4#;!*TQe zQH5hS)oTb)GIi#8^lQxBGl^FL$8P2^h2>GUfKq@uvjmG{Kl8Z4@)%n{DL|cBg2md= zOt15~9du8hhB_M3bpL-14Zos30JqQ(*zR>dM*RQ|qT!8Gz3$^__`+tddp!+5+C=>W zDF1&g4X;xUfRkwWIpzKzqoHlF$NduZ0qCbb06Dt%e;o}?G`vms|09$K;D>!4_f<61 z(U7M6|7&RY72W&4oSp$72EFc=Kb!yULv;TCrSG|UI&uC#-+BK3gkteL&Wi_>0@Rr$ zEFQ;$FP>Cbo}`*X0+h@E)7q?zPA}rZ$k=q3puxyWM=$bzN1wi@6w;?i7Zjjm`kBbQ zw(S7DiLGO$qI7i=3dsaZKnevU`k88pW4n@4NKz~Tr2zd*wZySud0HWPnko(mP%?c? zD^=arqTk5cc+JjL_l&~v4ApK3P%?EUHY#V)&ob*(=srw)mbHD34a>6%%d>0&r2uti z2^PnO8dJAK(<$I7)+L5At|P;dq%HpcJ5wY2}TX z%RzZ#hWL=6a4G9$h2s@=fKq@yrWJoRmxJQ3hWL=6;CMyh_$WI-DL^07iocr6LGf2Z z_RD@BRXAQ{2Pg&TW1jV)zegWA?3evsRXAQ_2Pg&TVB7>i7hQS4;pFnw%T75OZxw#?NrmGL zs@D{tWCod5t1R9kPq)ft%V)PrNB7;d!ulrp0s@pwAJdw%xh|B`oH-80-%vQ-Vh1P% z=wn)rxemt3;n-=usc^i_4p0iv$Fv;W^6Wp-%rE5FXTGIye2g8S6rhi3Ip#VTr}=Ok zjK8gLyu%Jq3b2Za$9J7Q=S8@I<^A?X`7wp!0_ep%>B4;`i*+*d(HP0jto0MDL^07a?G_YBS+ZYK;Kt5KEn=B3ed;2 z9CK~U$g$AgK=&vdpJfLq1?Xd1j=8pF9|v}!n&i)6ZG{nz3v^<|G$!k=jpt^kA@%7dH>Gs9(Oej zAEmzkM^pa4sjEHi^Jyrj9Dq+#4!{!zC_fQY8oCt*Xv%g(&PT-3d#>igO7$6 z>D+%g4SVUl|5_S6+q~|HtseI=G<=i#|L>rolFt91qZoi*8oobBc?9X)Ur;Q-t@Af6 zde}Q6_I=+yv*3FFAimf;!GF7`uQ2twucY32qxw93A^P%G^NSvj(nWoTo5a3OS5s*6 za#5AkccV9|^>#JA-%9Vdnp2&w)~>ym3wfA+y&l!C)#-_Ch0owaNXphxN0oH66XZgQ zG>Gp10KHv1as~A^MWLViQBSLp$g72>z|~Sk9|%y7>FKwS5Uj-*CoOTBVRPC?3!%M-GBTFayNxaME*{9o(@pOneP3f4-jVc9)&9w* zcgpFVdYw9U*Ly=LTDDQjFF~DQrxyfroi&xyl5MJ>iImr) zuPiz*TOYtLhRk@a_2g{r#Lv15)$V_v-bSjurdoQt$wQFISu0H$zQcvnbBIcjG_a+D zzR=P|GvZjH9W*B`UcA*t6I`|1v3|HQr5#kR>xb>12-JtXZLMYWW@|gW8CYe14~gAc zHN0ogECyz;k(D%m9S!8`XvVberiFH`K5DN3xdvN(^odrJK2hbIf8-l%s-ZWVTJYvV z$K?7^-m$0KrK79+^g?f^l7M~vo<{}K?QSl($9KS^?3hZ^Xpuk>7GYaf=G@*d{-A`BAhyv<;KV2ZEie@%s zdwV{8e%7*>ULR?;+Gr`y{_*kq1n~Q`(wnn>e7vXQy>|RO^y}JGLHsL{uZnI>BeyyvB^;$AeEO04tx3*2|TuBTs=QQ59SzkB3e3)CQRqpc?@uwkvFts*sP zH@)yPHBry^Dy(u*`iIS~?Y$6vrL%2f16He1YPi(llSCXbVlB<-W!g?3Iur@vP}AZ< z?YtIHH_s}xS&F>C_i646V&tt0)zjpKkgzRe?js;$TF9VTs3g<$cf59~6J|)T}%^@`OqOTYu6QZVp%DwwHaa34Gh1HEzh+q!ubG0aH zLXow)(Wh!q)Qlo)g`=Ws6je>Ffn_02QebofKf><)N;q44X)>^=oApZC5Mq(zf9D3# zZF%*v32~Tj?_t&|SK^nNNf6-8g#PpaE5=m#sOBRoi)&VWuLYH3>CdC8E2+Qkt^+Cx z)9)wClB!}$$rUtBuE)Z{0y>O-)Om%U+D(Bc4K4Iu)hb$}p5GRFidp;1&bvTIJgb=J_A zI_v36osIOR&T@Ro+8NWwTIgf79rUrFBsSsU@NeTVw13LQ!AvI+W(OT`UuScg<;X6 zvKB3WH4xf>aI;mk8Cf{f37iV+{5^yqP&Gmb0A;jSwt~hA3+(^zCRchB`d_pM9Kp^s z<^NZjf;Csut%Y00tg^qMp%lJZ+^V<*&H3*Cu4&Cw_o1zlTVRQw{aYLAOto{gZf?oS zPpO;wOcm2x1aAEYDA)e(4MK?IS#XX4KAow;4{JIp(>w}H5R^MlrlI*b_OrcTo%7%^kVbk*mm>6=mo9|%=5G7 z<n>i z>e%t6V@JmqM~`wHm0grr6kg<7m=4Fnxg(NCM2^TGo;o~wxRr@8c8GC^m4PsPP;P#5 zzBw=3mFNn0<;;bCvaDu315k*!e^r0PBi>%I zuyFq0K^Hyd_k6(T{)KxCpH*Bf`8<6kAVA6VF|8{yN6lPRu*PPt$Q)(A2lo#O#~0WE zN&)(qmV>Vz**!Ck#rEropHn!#$PQ2n(8shKeD&zSj-%~Y6aP`+_$PLNQh+|DT6ri7}mN+^^|C2)URhEEKfPSW0ve14(@kN`z&s0km+uP=pLh>z^fKq^drdo2ey>Vt0l5evFlmhfK)siK=wJvP+zpjvc zhb5pCpr5IhEVWHU6z1SfPSVWDZXhjy_s3qV{e?_R7n1rDh>%yG6T#~8mA+c zY=tBK=35Hs_emENpk(@)>NyMB8|Swbk{_@HlmhfK)sltw#`ztE}3f^k7i&AsFp0YH_q=X zBsrFVQhl3oIg}Zenu6C1SpvSW(kdRjq@(KBWUSI z3hB>DX9!R-btdKvi4|wP3U`*Nzr>pLC)-=+j}?|*umzL?)S1@(>$xm+|C%iJma|u3 z`4_f;Qh+)W^KuczN6mUo&kJV7-gI&b%P-jiN&)K35-g5;*gsKNe#I703Q%X3U|DEy zJU>-fe$5t83Q%X3U~$~X{+Yt^8@7N_fI71Ti{noA&lQ&6Qq3U&N@jprO7n5v$#z69 z{X!xA9q9}KN~X>%Vb&a{g#V(j{GKhK6rj#5!Qwb6{H4OOk1e1Spw2A8Vx1OFx33>k zpZ_aqFlc!E46l3fMf5B{y6=Ah4P`VuN%#Mk(C~H2{dWfS{r}TukNbWaK0?D6so(!L z8vcj+{Xa^>Q8et?=yjh){r~@C13lx9hQnz1{IJJ;77c%;{C|(o(6!#{evfhhZl>V_ zy6-ts`3T_X_EsNLMXD z$qX<{nK#Gz?LLL(KUo7x0S1_*XdGv_d4=ZBtO2C}1I$u1j&t09Q)vFe8c+%_z$``M zILrNah33Cl14;n~n5AeO=eZv!G=F6cCHa~X`ES;MQh)(wDH_MQ?tdsW z|HB$k3NXMdLE}8z{i8zTDo0}lB{RS*rLj8Cb{$c^e^N-@q^lO7WCoa}%$wtU_dgXH zjWwVYV1QYQ#&O2`XN9JWHJ}t=fLV&hanAb}g{GV}pcG($S&GJS*85)yjfXX$6kvc^ zipFu?`&Wg=%NkG$Fu*KD<2dvEZ-u6UHJ}t=fLV&haqjy+3XNn9DCyyF(14|A9B02` znRS4;Zu&UU8Zm`NBh)#9Dh)9uGr+VOYw^k3bkHLORXL*LS2&{MT?(n6rJxjGfLV&v z5got65gqSVNCPD5pj@Jmf;!WZ9{6Oq4pHN4)~|GQhL6~z<28k|jy!z=l*~G2jG_r* z6oNDBHRcz7id2uRjVxP7`AN21arV~BwruQQHoR_Vfg^KOnZjDnR!|DCj#-j5?65j+ z29ztT4QvIa0PC0~SrE#RxzdveXLOou3xrgMP$S3VTaan+Di|H<=0$|wV6~W3Q#g@m~&~XMAcXw zYbn`+ePwbS1xtmqg={AaP%;fB!g>!Boj}{Fu^KV3cG$W4I(Fri3S%o9K`B6kX&H;} z{7oC3tFB{vRHZPsu@RI4G?Hby>$v7Icd1t^&Y(=zf^G5bn124gLj zs&kbMTY)+DkJ9+pPw=`&KH_!%?r^XBS{f?Wc-_fsz3vu@|9|d6ulooZK5+rX^Pfbq z02KRw8Vw)pq}={A%%|b~E9p4`G~}=FxOdUeMZ;?wyzZ5kQ~&?VDAu2bY8qa-lwtyC z_~9iKJ3xbL$m@PI?r|@o;mf1c|DXE)qyPV@vAutO)Y~h*^FudJDbD{p#eeX4;ZBfW zv9vmPX@OFJjm*nvZ+H=1FP-%o3yRI?P)-vHdzfy0X8v9R`)s8j*V(iq3$HzDgjDn19L8QKm^8` z_s{jZjVqjD$9C0Fh`UI+R)CV(#GFfPTiiWcu+N;exE07Pn(dTdNSyC*@iJN@gw7IwUIIjrpj1F(=a5LR%u| zkL=jm)+ww9k*`mHl3B-`%Zh`dMjVK387`Vx$0oO4pEYl&th!Q$jKnNX+5+F2-64HaRNwy@LMY~D1B)dUro3csJrfg02_kACE z#=0I4clNi>@7e$J7teiJBWCVL`btOAx#!+{4l<#r6}A{>5$gQlp67U{>UIe|*o2~1 z*kYVTsPnUXp5tAr$0hU-6N*}4i*XjA&X4bTj`yctm(W8cXr)4JY&Bjchd*DqkC$)l zm9%br#m04ezkVHWO?@t@he_Tth1wW3W@Kz{Ute@Ny1zxGM)ztlj`yT~mqa;@uzcS{ zZHyYPlElmR@i=RVr;Iw^kLEevj|N;4lah6;LTzj_o-5xhHp+3ndtFQ?ty7JSZCpE+ z8a>U~NFDD-ahKS661YO4HntmiLbvYYfzpTQQtQT7?IU--<1H!SlDj|>2NY^!n{lJM zQXcT;y&kPH54TP2?uM@0xNgPiWBbof#t)1;TFjtJ=8=-tqfi@LjWaz~Uc6EBSUIC^A*3q*2PbS0CvN8*vFcMgqnaYGc?~3p;n(v&Z4}{e+FJ9^HTP5ylUS?~acj z5_f#A%y9`nR${vpYGc%RwX_l{yVpg=tt|O$Id$rx)^9l3&n4+N$v8lvHb#syB~jCE zleGJB%0KcbC!_0w_jd_CULyMxYGcTFu9_#UWBNxY`-275*gRtAUOj)Q;~XXjxI~>G zAzcc!F=ixco78i!%S4lElEyeTZ>mW+TEu}aS&Jm4U!gWejpxa!GcxId}gnF1hT&^DjAfOMLSMne7MMuyOH* z{T*)shq&Y~H~A>DbenvfZGLiJ`O+}oy=L+xJcqjEuQ2&26L_2a6^)7i@_7qk%bSp; z7z%h7|K9KY_SgO1i$3S~{_|r2@9i)7z0KbVc%S?`zjyA>{NB>P$+`PvF2HZy9`K%h zb-?>i`vtt$%F-a`1GrE21?ZOLIoS>{SC-Gn@&9A%1Kw|37Vw_BS>_kKKj7W+dcgbB zV!*pCAMpNmm;9|PYG*+5-dy=uV3YEGuh#!JPyfWVDqgA0md#P*V-pF#{NoFN1sa;5 z8G;akFhn2TA>Zvfn(QwozMl{&;z~D2ORkB_%us{oP51Y8&3_%D%7$Oh_8)DD`tMjCz0e2!pxzfe-~}HvKqL4e z02XLy5~v~9gAjr+L?8+_#GnOQp$*!h13IA#x}gVpp%40D0OF8$<+IB3J_`!Dh$JYU!&;{Ml1HGVk zE|Yr*ZO{V=@a_^U2tzA$LmWKs2muH|3v|H%jDY_=AqX+(gnk%?z^>);x6lGzFaRUq ze@6&H3_777hN1CYp&4xGfIb+4hWCXgh(bH`!XS9#E97B87+Rql;@}w<0?<2tA}Xn`&m0JTf-Ll9!n3H>k(jqeK0U_%G=!4NdO zFEl|E+MyQ)fraav-m>2+y_tP8@n-pr+#AU^DzE2XPrY6(7K-Vjr&!#T*=3vA^AfL> zU(LOme6{jQ{*}}#)t3t|r(gEGTzo0>lKoQY6WLEBK2d%#_hRzJ$_x1yQZH1WFFc=q z-t&C%4w{lPZp7=fGyK{FZ@2=dHzbkcD_0Gbb z={r4l7VpU1Vc$`@J$rlN_VR7H+mg3cK9c`P>Lb-#3%90k_1s##C3A~?OX=q9&Fbdj zO_`hQn@YKCE|DuwP`Dv|gXf0g^_lDK>q{TbemL>r@^!iElGjzP z&0m|kwt7wBn)EgAU7f!=b#?Ws!d2<3JXaO3%v@<-S-K*7MdFI`<+;m~msc*!UzWP8 zy1lSHz1_3Dn9XGEY-w9|YEHX%F3Db!xTL%_w>7!7a&i9R)Wy|{3Kyj>@?2E>Q07DS zhe{V_FXXuM+y%)CD(6q1-)`rY^cK&S;^xd|dvocW>^X^Z%9)(ZaaY-t-;~-^-B{R| z-sss_JUer?eRk=r>{*Gk%4g=zOrB|uQa_`5`o!tU(<`UtPveO7!l~&~J*O5=$(&-J zQreK+kl0W@Id^jMX-#%bVoiB< zZgp~XWmSGvYE^Y*VP#ro$m0li`=ru|*%K2dmRICfBv(|H=a;9JSCMehvyGZ9bR2fSdd=e zSx}sxnQzZ8&CAY9%qu5z$z-xJH$OKuw|ZFNu(V^=y~H8qgL4PhjfOX z3-NT^6E6;A2JC@Sf3`o-U+&BGCHpG9`QF+w`sp4|Pq91GZFiTtvR#R;a%ZkH*;(nx zcceP1?S=MqyQjU_mT9xwO0C(}L~FSv*OF|h#PYFJtZEnRwC%Br(TvRFSBhjKiAXt| z3n#;sP(G9jRfC0KI_L=&n={RJbEzrYR6DXisVi3AN?FxFA&?Gu0!4quZ~IG)*~Ua; zxgpn(Y^eD1zLc-(EqK#jkGJT_cx+EeWu>#mYgs*1>cOtV8G* zSclRvunwbVV9lj#U?u4rSo7!{So7%}SPSSLSclU;u#TXEU@fG7U>!*Z!8(c_f^{@q z1nU_32-dN560GCsC0NJPO|VX&pI|MbqhO`zDNH_$#q=1gC3G3AQThzl7@Y=dDZK`3 z8QlhJIsFD}1swr^I*YD^bvAtoYa^WrYZJW* zD?@i;@?o4qx5C;?zrxx=$HF?7o`rQDT?^}c`WDs&bS|t5>0MYKqI+RoME}CNm=1=u zl^%w530(~9Qu-LyHaZzrmR^Rnoo%(+6tn2A-SU1q&ux_NsAzSh>N1tQzVcbOD!@8Nyhjk0R59?OCAJ#|c ze^|HC0kLkU2V&hp7sR@gK8SS}oe=A8dLh<5bVICr>4#YN(GjtB&=axpbVaQD>5Eto z&>68Fq&H%HlJoKA}MJiQd_1-dELi}X{hPtZ}ZUZSUBy-ZiddWF7< z^(vhe>os~S)-Jj$R+0XS^*S9E>kWD=)|+%$thea1Sf8ZRV!a*5PbKivgZP;t{4D(z z>vJRc`8oIn&m!@QUVO)gr3P{GVSK5PoBqg;U#1^peT9yU^;LQ@)*sWAvHpaH)DN`?u_+y`ZLy_)1k4xL664z3%WGcyYy+SGMyUhFX`1-e?_;(`X>Dv>sxee ztZ&n^vHqHljrBM5Y^=YfYh(Q#eH-gLbZ)Hg(z~(#K92v8!0!#>dqY?m7AGIZ_eZ$t z2XpX;bat#C(c7_pOn1lnNBTR~Pw4PiKc&ZG{fsV;^>g|>)<4ndv3^0X$NDAR9_v^1 zd#v~A_*hkXKGr|e^|5|U-^cn5ogeGB^nR@0(fzUhh2D?#uXKN`f203n{W~2X>p$oL zS^r5F$of5fAnOlwf~^0d7ZezkGoi{49y&t1AIGSd4v}SgL{#gTWCiFI zSr*+QOVcm1nmn7tW-kVP7;3<9BSz>QS8uFzLm4KAhix3mWlo zKOPalg%%#E@u(&|x*3lN;;|t-E{w-V@PsHXvN07CCm+V*7H(S7ilc2f){aX%a9JlV z@4^+`cw!Hp)Qc6tm98X|+5Z4ajx?x;Df+u@+h#S0kiVsh1z|$J>bU&UE zz%wm8OXJy1xUm^G1u+v6Cm+T+VQ$(S!7Wid*T(Z=czz3B(25tf;fLDsq7J;c6SsEZ zCEa*w4{qzlY#(m#$IAxr@;F|Rz$*vwsv*337_S+@Yv?U15Pwz z&M!_rjGF@7bhCxGXuP!vKhli11@ZO}-Vw$-BY0O7@3!%t7~b20_qF1VHq5u<{T=u~ zCqCGPAMM76dhlbt_;4RS(vOc0;A3%oJb_OP;*&%8)G+QG!Gh=AJrCn)ul!&=gSH@H5@`*&h5{FMhrcztE3g9Kd(tSW1YK&&HPqx#^FF@XN#al@a{v9Q#b5dG{RXTy;y?TG*8%*Eg}>GKyC(dXX8hM6{#ywDJ&gYm!T*fn?``}; z4F9V|42-E(e(`OZHU3R+D{ z?fl}RFIK*g`$9rytj~Pj^ZCN(QlG1QHuu?GpGnKy^|?dlI5*+{%mdOh>H=k-D{RjlmF?Mld2jm&GF*XF)jekJ>g{Yp`` zXH;Lxzm$BbEL$_|PZVEFzgU%R8OayQ&u5>vWlKi-;%NIg+`Jok7)wq0Z%^E_5~H1%lZk=!GRM@kQ8 z9`-z3_*m*=m4|W;v`##rxB;y&|7a=F2;>vbCakU;4i4y?NPI zQNAa8k9|+^?)2SN*;0|bt9)nnPFuE9yeH?OOWa<%EhA^5E65g#%B{Iu6StOR`-JC~ z!p*6hD>vnCO32oUOwN-lOr&JnMDE7KjinnhvSp%hed_vcAGSYSye@rRRkleauPtAb zy~e(#cy(H~NaU|dURAy_E88QASER3~UY?h&5#`IWm)VyUWm`lwo6jb*Y;Alo1+7v(NWTvU=R5S|YeE=*lmk?jwO3rgo_&i9;OI4^Zx<=mW{ z|E{zpvt`HT*<&1e{*~Va}i{t6> z>YDtTq-$R4=j8Jw z3$pE?a#-%L#9^gFGlzN(EgX_Mq$1l55(k$K${gf5sBmEFz{&x+0}`^$AhW+`|H6JL zIagn9PGZjZNOd?roE$F8wgP*oIG7%+%6a>eiE=y}w`Ds)dZ5~$?@!8Bf^47NSL{v8 zdHnJ{$)0j|R<;lnyWW$n1BuR3N2bHmQD{%KSK4xNM!!;Prq$D0Xi3R-fm|#RE7=*@ zDo}`~qLoNawh5HNnXo5ZkSzk+g0^f8NHvey_OuOZsV&dy+zJY%|W3&O66Yt@%mQ8(pz(@ydOb z-|^mcoXb5pU9wXOwXw~3!3Vr|EmX^=zjyI=AgyuoO{wpF8LXgk6K}iaklxX zedRmeotC)dpCg&e6>4M5I8%PznXZWsH*Vyur!I8vwAf`Xu@_3< zph9ho8~>ZJ$!W36U1GONV3$H|Y%yM@E>!2M=|?8e(jsczie;-)>rY-gwsG#xTHX_uNb)CyaSvrU^PN72-uAoZl(Y2%ZxwcY8~@*Vt?Eo%W9~YG{ku0R%7G&CgJ#HIGvcoq@Yjs@YlizZqy3t}e$80FW~g5? z(ytll*NpRPhWRz4{F*_2%^1ICh+i|puNmOijPGlP_cf#Yn!$a|*uG|HUo*0=8Q9m1 z>uZMfHN*Lu(R|HdzGf_6GnB6x$=3|zYsT?4!}yv}d^wY&z!<(}2wyXTuNlDCjNfa9 z?=_?Mn!$U`*u7@xUNds98MxPs+iQmHHKX>LL3_=Zy=KT>Gh(k9u-A;&YsTp{!}NRV z$Sn-kYsTs|L-m@Gdf65$Fix)-rq_(pYX<2xWAvIKdd&#EW`JIMqSwj;03S3!BlsZz z7HDXKW(YzE!VrNd*boz@?q>_Pv_c!SLkDz17j#1p^g!vMq~0fR6E!!QDKz!Mj| z;DZKe1V0480*2f*Bkr1!cFjQh)cs_UysjBt*KtU|APm7UjKCc5EE2rng9c~>zc6(_1Kh%R zx@I_CGn%fOfw6SWP`YL$T{Dob8AsO)qiaUdHG}AyF?7ukx@H7jGk~rcKi3SOYevsC zgXfyDbIs7XX5?HmaIWK!fI%37VHklq!qolrjLR)v@IeDKf*%54frch%h9HC>3=xQe z4KZkeR%nBE=zvb>f^O)6Ug(2<7=XAibw3l_G6+L33?ncHJeveB_@DtA!4Cmo5L`0` zuA6`naLoX?X8c<-{H+=N)(n1Y#=bQ}-p3tr_*!40>w@yES9oQ}>f0 zZ_S9eX24rB-mMw#)^SL{APm7UjDXrEc)$xjXn;oWLjWw$&;-p8gb;)w0#UFb1})Gk zOx@2mZfS=O=!7olh92mJKIn%5h(iJfVF-p{1Ux$gFZiGV8o>_%us}l-G(!+V(D2@< zvKj&y2w|uLJG!tdfeBAsKG235a89ErZya*<0F4JV;~^nDtOJkg!ee^yxIR2#08tgB;FRpd>9{y;zv92iEeyq0H2ME@>~i-{QQFFUAgLo2JnN1CTNBrgdhwN zuptI5&<5?$0iDnVJ8i08ywI2dtfrch%h9HC>3=#0j zO0Aa~@s$9+W)TzR>Ze-qbKUr*sQk9|9h<*lI!WvMom}mL9_WKOBw!Fc?+ZR?fJO*_ zh9+o+AcP z05m}}gdhS@h(QaqK|2hSU@NX#g4M0L8sut!7~?h$wc?ykJg`gDYNuTNyhqet@bU9I zjrb)$Hw3`q=dXnEYcc$bRxG#UUv-GOi>u%6=4vlj|F(~-16=*CXP5X7K76kczaPLK zYW#6C{v?Dy3yV6+)nCN$SFKoW$6t5iZ@ckdf->u7py}$6{39>jRk905l&fuA&2`|- zU3hB`-qweA4C1}&eQ}2u?{B~d1NbqGk2K?BA$%f&Penx?8)TA>{}pd0!i4nyEwBs78rO%Q}I*w6|c z&<%YMhavE86QXfR|3M4>xD9{Oi9hcWbq`m6*~`^_u2u)Qn&9ehCjXV6qMs_hoq5~y zcJY(xPkKICcq{c*<;~oiNf}|!zma;Q`g-B@w2ZMAiD<@qzRMo(Bpt>h8I}n9t*sw- z-CMn-hAu1{a@xxV<}jEu#XuFJ~oaph}sG8$jGCVx%pn(EaB8ISi|UA!uDm3>u7M&uJ$ zmaoWNk-VZJWAdrXtCtmaA0d$1UdiUN2{}F>v&}Q(xP0=W@`ti=WI*x4^o7+6@-rM4 zP}-8+lGsw-oRjhS$~pOSn5V8FBlMn3aZ_fKy{RN)^ofn-v(?$fvodGdXO(1(K5=IG zjEOUnXH;aAK6QHaw8ClW(>yXxpE=b&wRB4Ml*B3J4Y>`;4HX%!Pn}#{Us#`BKd~;k zt|FuLskPN~A)QWpWV}A}-#8{fttiU4y}i7&EW0eRtSlq<$)%OC{8(zNI$9V_k9tOn zOEODr8NJUgPAo2`a;c<@-{%*l7FACuoRB_Y;`rq8mE-cqrH-o}TaYn)&#}d0GRN4* zlw=e?adi2p+)>G+Dl(3rIPU)&uka2&HRSaYTcAz%XU%4^Ym~5=b*ng^_>MQutK97w4XS}wz zrD}(Iv8}Z?DTl zgKC(Fsqq!77n>8eu2^%VoSS2=W2^FNmp~@Ui^_&o0x@KqDX=yx6oGT=XJ=XC62eS* za%LJ6f+2I=JtS$i0`1=DH0}~|v-b`xsy(I2|2-ppqyRCgrIxKLYmp+6TiVFBqhJvt56$*#w}`#Y)74`VUCWjbu>)J zaLXw!fr}+7qEH)yMgq@KrtQi9nYx&Ff<`qu>TH*%x@7RbBMP-KXsl&S+W@;K!_h2H zbIBMr87L>n5rf8BhG}_n+tg)GhND%U?vgPkD~Kr6MmbTDT(4zJKgTTZnx~~&{)ebjczJHuI$NhG{}uE87Ik~ z_Q@UtWMIg+O@_mm^=q$-Jl~BIEoywt+VzeW=@^0B@J;r+i;Z5vG3ExE`g`ZIwJ~Y-zPC>Byh8u`BTAJxvef4XP6As3WLU4#zOho zahdv5SmG$$B`z6f$x8YZ%HC39$T-t0d(WqWqjHYjMlW?qJX=z1g|c&$7&gw7xaU*B zS-Wj6DH}}+%KlF#1!s}ss9x43B_r$Xm7N1f!Jx7B+TJ2RJ1%=#>}Y+9l{3Reubuo> zz1<~{Z_ZKk{aN-YlItPkOo5Xv_E-IW?+yI{Z>P-v_qxpew@A+Y|J{{-@71yddIR34 z&+vPXljZB(0q=P-2cVMW(F^_F1+skO0>AeHS-i45e!ky(pq%&bt4n3BKUw}TCch`k z5wiT{sNZ{uEKRaJ(h~44kU0SVLgxPakSvX|?36hGkCElu<9=^e78MP6fA-9ue{E-A zllt`!yn8CO=}mP_LdpxmN%;Qo1_+}OJymOw4b;mDMv8IWO zRV=>kQWYE7nN>0U{$(l_eD6vXV-!2qz4Lk%3yt3-x5aN(vDl8=<;P8T@OyX4-@bRZ ziZ#A_uZlIicfX1?zxRNOb?$gj#X8~-$!+g^OvT!FKB8i6n;uiKo_BW2kDH#BzkTN! zS@S#3$}dkmr(#{v=jCsAyr5!H_0m4>aBuu&S>yY!s+e!vYbrLlt*Bzw_?s#=wCybw z3ru`c0>U**+IOBKFNbj{N#8C( z@7f~wfa2&yQk(&b6Pb|WwCRqXo{jSui zWrx(NH7>R4=Oq`2O2Il7Nx?!&UR>?G!Xi856*hc zdsDB!x?5vXbKNyr@ir>nK*f8hxJAViRJ@6b$EkRfinmem0V+O7#o3`G)4)T@n$NXpyEL)K8IIll#0iwcncLD zpyGZi-cH4XRJ?1#i6%SDHI2CWE;t48lQ}K2x z9;f0%RGhtcV$D?COT~w%cz}vGQgJU8_fhd-DjufdaVowa?*cXzk5ch2DjuQYVJbdI zv70IO2*r+2Y@1@oD0ZA;H&X02irq}HJ1Mpt94SE*yMtm6QS2s)9iZ4<6nl;od-wZf zcWCOdhpB#)>i1CnMylUL^+%}wFx8J!{eG(7MfJV))t_2VyuSKVx3UU861l1p=`s_9p3sQX#)gPw%eyZO<^*vPIOZA7S zeu(N1Q2jYnKT7o@RKJ_*hpB#u>JL%2;RKJz#H&OjAsvo2J zLsY+=>JL(VP4)d$zmw{Z@KO&^>xOj)elkqA*$a(^*gElAk`nC`s}Y3 z3sL?3`0yK{`i)fINA(re_fY*osvo5K{ZxO1>PM)4nCkaX{Seg;QvG47uc`hJ)elkq z2-S~L{aEc=Pu*+RysW3)`T?)=X}@b;_|tAREn(WNrfE#O)wGpqx0=Q??N-y8rrm0q z*R)$rdz*HvX@Jvi{r`J=ntZ@hFJaTbrrl~<+_YOw6P$LdX_M1#HH~!It)|sZyVW$~ zX}6koJ?&Q0(5KyMTK=?KKj5uk+V7h8hH1B&H;ZYvns<+BxBh?n&0wb-@9(*cETw1&&bBQg- z{%5x)wx%wA??V$8#xE$JpF2N!e&xKp9P3{_w{ULyT+g{XH>WpyHW$yy$g%#VOg59q zlsDz%X#dK_{KnMA>e&T3-ruv=-UPW>?@f?duh#8MFOnnu3v1GAJZp-pGjgndX;pSr zVpVx%PLB4koRmK)byD@j!inh9;Fm>E} z$4nd@KdO9WPLB7lEX*%VEvz0sJ-Bdi`e4t&MLGW8KB#nH_Q1q}WjO=D z-g^sp=Ik6^G{e3Dxq;+BMUMVY^;i1}ed#`r9RHu`wR=lF*`9=)0U+0%?5=d>yHZ`% z&O&Fp)6-d$^8nZ#rS@!lqCM62Udu!*ZkMCEXi|>*&qq>`YPb+i%aQ-ZP$p!DO2KR} z`ae7ipi;jX>|ap`EK)D*-v6KR|NY+ijp_TZ9(9ZYT;{T2WV8HH)NJaLqn+e>$mq6V zWc8?H5a4o`5H{&VWfLEpdoW~l4{?kET;UROt_eY{Fl2NOnLl5Cd2&0_l`bLY$*)Eg zYGcUg9Fl%0XXZ$mky87y!81CFBAVf^wvn2|@P|$2RP1TtY51At=Xn znGkdjacoSy)+OX3S!J(6Z44S~+pu}HIWBv)VLLV^rVik@I$+}W*SQ2u|ajC2%qEHS)6NAQDhG}^9A$u|$jq*m9jBO?ZW$$~Ffwhd8N6beZZF0gTBWp5H zn^Uj`jkS!!s^n%Y1ioT+BO7jJ-d{>c`)f)Hl$3TmmO#jZuZ#7&6WjI63~d zdd%^fzSkurXF^ab3>n=+98b`FE+IF|ihC7mW6;PO=yvmkQ~t-E%kI+2h`FP5qxGfR z;SzX@tS+KZ8-qpy&oxIo?@5zuQ=baX%H>@$ZZ#RG6$Xv9jF~@q#vFya-zDQVS#O_0 zZ44P_dS&nVRB%*otiEy&xFp^#S++uL3>#-k-1Dj6tlfhyDR-C@)C$AKS)@3s_feOW zyJXG13biq4ti87BjyNuRTI|yL7VDTw@gbMMyJd}0h1wW0&J;M+VwXC4pC5AxxyOW{ zRv0q6hsXzNd}{3fVV975O$cg*A){N!&t>fYBWL@)30Zda1-vK9`2P@Xpy6^4xNA&wUE zm`h0BgrHU!GP;L2J~$tD33)(P+^bL&FVbXD~wkKQyAC#zwLTwBh z2|Vuu`kKyG_@qn5M@oW{OC8^8pK{4~NLCV2sEt8mEo0_Bn)9{1 z(hYjkS!KKPi_wUdd0pWISRrP%8`? zYZ(jWXUApF<8Zu?pK-}}OjgpTP#Z(WnLf4ld>T7m$&NE?J?oPAxMbN1wJ~g*DRIxI zvGcY3oJ-0RCIz*^uyGbCj#u-?T~eMjDX0~Ojk8E`yf;7ZlJb;EL9H-soJES`75#!s z%1)Dla!|7vHqIi&@tS_oC8Z#1wiRk)*f@(6$E*4iE-BB*`uh}WW5{^9YE&ur97MHZ$TCqzvYs+OV%GzsEt8m?S*EVi2R?a%kB?td7;g#f1!QSC8H=Sh$_^^kg@jkOwX8l zq0Mu=(B5_ldEJDdRv0q6hd5qnpK=L#Q&!xkP#Z%=_vdGR{qy74eg4xfiEl|(M4>hY zjkV{;yn5yTOkMUoKlAIKpU=2td{R~rRj7?2W36=4Gp3%O`Htu3vo0ZTn-J6rLq_)y z$Mf?!myl1H5Y!4oM)wfM8^PyYLOv}kj>vv*gkaEEdn1@$uBkVI`G>1TQ=R`WxMX}* z*4w908$(9-7utfKtoD0vk!3*o|DQR_?>$+Ts`UGBl>UGBnSSqEvfqDNwgG(az<~F< z6aC(H*#=NN&F@_)%TJd3y;trZ@Y<*Py)U2Q_by*1`|nHNf17LrXp-gGbN$}qW%-*e zvOPf-H5~9hE`9$aW%=e}zjvD~L0Mi%N&nvtOzZz|Zv2O*o(XJHJAPcZ|NlGJsY9N= zS{|sJiBUF=j7^xUYJ8UGJJbJ5=Q*3YpR+vQnf8p!>7~5jg9d1X|F`Eko4TK~Jl~m4 zaGwTY2!>$<{@zO(QSd1fOJ1sh_} z0j3_%D%7$Oh_8)DD`tMjiOx@33Zs~)57=Sn=U=W627)D?Yc-|Ad z;DZKe1V03TS+nHqZ31&<$=TZkX3Ubaw+Ufjx-89XS(?eRG;?KXrpnUHl%<&{YwCV7 zUzVJ-O<=YxIcJ;D4L!gVS#tI^feEto0K_2ygD?ccFaqj*!2@3KK?5{`9|B;3h9+o+ zAcPkuv_U&`KqquTH}pU+^g%xiKpYY<2tzOoBcP(!an?A&3qELo zM({%bEYQN#{cPfvW(YzE!VrNd*bsvjXoWUthYsk3F6f3H=!HJ$hXIH~0tR6ShG7I$ zT=0Mwe8SZIY~Yqg@IwGB(9i_U5QGqfAp%jbAqFkb3T@C19nc9~&<#D%3w_WJ0}zJ< z48o8wbw7u>MJ*CM-~}HvKqL4e02XLyf@TOp2*MD7DA*8#7HEYwXon8ygf8fY9_WQW z=ohB$=K#0FApwIh1jC><2_Eo*4;r8m{15;OG&Dgo1R(@rh(Huxupksp%40D0OF8HWgvs3Vb4;r8m{15;OG&Dgo1R(@rhzL{n zGs-PC#GnOQp$*!h13IA#x}gVpVe$(%-@7-x9eum>$*jz&SAHw^R#MLSmzP=fs&5qD zNWU@hdh+#3F)y>~Rd*G3rFVID6=hyM`?b=m*;f-Xw_fg*Pv-}(l2>l zDt;m(^Xrx5oPUWI%P*)GiqB_ce!bGivvSVA@^d+vVXyLRUe5YgeWoCD?0KFkKAm~m ze!5i177~T>&YYb2ukuv>snk=|Cks!epPYCiDKqWmA5T4AeXQ_UTISj-KAMqp|CJue z%4~b(hjR}nAFjyR|56{TK2&%p{gCIO;zu(dwdMSO*#{Fc>z$$ghPex|mE8U%y^Z%9a%E{b&l{@oyrtYlXQMe<0$HeW) z+bg%_Z%f@){Yc>>>5q6mQoJ>Dt1UC|Wp7E`QocENb5iEu%iol`shTU~(m7AAIFXsK zCrUSFWgfor4eEyC^_l;{{`nJ^B`>RN&u>r3jC_S`I_t?6w`I23+e(*aFHKxpmU;P- zmsGaqx2CpMFD_i1zSwhd@uJK{w#?0!{ZQgV8<@0jqC1rNL z{JE)ft6K_N(px-RikmZ=?ad{bqc3qzIg`sIGnGyGO{q=QjfIWrjT2`l&#uTUeW|mm zXBN&(pXrf#`Z8zOXOvFQo}Q4I`f{fwPph1oKQ$$D^%YJ@pW->CxFNH_-cUL@dvZc% z>{BvdUuK=XuCzA0HX$?i<VJj;qpGfQom zy)QeK7%PwFMw2psUw%nyNp*2yaav~ZE2c6jJ5^egU6fc77ww&*EnLOFm5*b0OPju|M`xTeO zFUv}!3biq0{Gdd?8ka=J2-;U&LcS`i@09~(3BjQ8+!=-g*wPqNV|zU+$Nr9g>=O9L z5)xIYjUgi^*Svg&I{MX$)$5&)>Q7uk{=|f!Rv0q6hd741|I{VqPfZAFg(0JRh-1&q zKXVEBGZTVZVaVtn;@BDaYc3&QGa;xIhK%kZjxqbMyM%n*grHU!GP;L2hV1{`CFIXd z2x^5PqkD*B#QqyDA>S||s1=5c?jeo=`@e7rc~@54r%)S1MjGZ;b6|q}k3E;&?>A#B zR;@d!{{6hYjkSkm#(MVT$*}qEL5J1r9d9>fmyEwO8K@NojkSzq z{rb7SC&SS$|I#JnujEf73biq4tYw&wWY#@-*^}XDmVf1v@lE;rh(c`)8fzId4$!P# z?`W0ZbjkRZ$v~|zXsl&S|4K0Rd^j5Aw_Gy5Z8A_R3>s@0=9`7wHg(xkD@U9BwoAre z%L*b2wJ~U{WtcA(Qvq^iPllsO{ksO{QeIO-bZBo|8QBpEc^eTb-myFyAS)l_sO!qET!xG-qU6I^|gNQ-LiBY z9q_)jLiP!ec47y%zPo};O2?n|H!2{Kat;xD%8f1vGyci$SUeDQz2_tjG1o)yF-5L z67o}7NmQXWhK#jmd24+D*QY|pSIsqF33iA4qf5xoVnVM{v$s=TnlX;FK9RArQ@n20MYK0-=Oo_D2TH?yO&a5-> z*Di_wCMi*c+88o^P$C})Dd&5^Z(KtD-Grc47&5wtINl3>>k{%GCIq#@kkLKF@m}yd zmyrK7A*dCGjP4y}* zRv0q6hdAB~{@o=+d3Xtjt~6aC8WWGpjH?%x`!NPHbU+G7WD_0kVaXttxy}o#+gED z$8GT*lbk!R?xFmbON!s5pjH?*&LSmQ|FzRh`68*~B-dRgrzy8&&3y{BF=RYnHp*|7 z|Mt4<-rTrs{Srr)Y2N$;_{H7T^NiO1YNkXjSuxpPfkccLx5>uM?fclkS=+WTzHaTh z(^fC3erShGDfnDcnq~cAh1%F`yj&j0 zRu!L?;!{5PzPo`#6NF_J#VCWvk{ozEJyJLLw#vwZf3mJ;d=L8gL1T%8F$&Qxk$= zbA7WMCA6BL$VsQ=v7k1FjqWL_xkso? zQ(FR>TvA$03TlO6BPoH64c@{fe(y1|d`ph~-zNM2H_P(yu>tSl$I3bSFOp;TrT_ms z+5dlsocI4gS-v9s{%?}ym$L8w9kTELuq64mY+)B{}x#WWciHr{a48T|38$z|BbSA%c6FARPPqgYaf^X|C#@| zr~g0aUHSyd<(W<;>lIVgW2~S1XrAME%AiYRyM#p)YGcs2S>9si z?xQi*h69$YbGF5hOGbyuK&>!ntYw(D!}|9b(`9c|lHq8IVV8_flYv@c&{)ebpNsp> zaD1JOxMXz6dZP-pF=TXqPnlQ$kr{Of={6y#6^4xGnIjL)CzRuX)ZQJJu30j7u^IH( z{jP7jg!GsY)CxmJ_mEWmt2yQp(kCnKQ>cw0Bd=yg<@dVm{_tPFM27zAKUo|HpSHLp z_Dfbwp*BX0GbPqO{A-Dh&z4q~m;n=mT4BUEn;6GSy3HjfZemcg5mI7sHZhJ@b-PPU z!o;9f7%|Q!#?ejdaETc-F{l+rjI)VxbksUsVunl%YK0NwY+@W;wJw*KVH1N|VZ=C_ z7)NKV+a+ei#GqCfG0rB&(Ov6tiP=w9-KS6+Lq>M4+P;quf!cyo&? zWW^L}W5hU9Vy>5*;nI&n4yn6N6e|#5kK6M@#K@i8;{3pjH?$&L+muQU_dO4l*&Q z6-JD+iE*^lxJ%5zCI+>_h;cSCj+UBmi8;i?pjH?$&L+muQU_gP4mB~T6-JD+iE*^l zA(xoLOblv;5#wxP94&R&B_=7W?o+6ZA>&Ljds?dF3!>vV?h%*7d6E@VsErZhOo@A1 z>f()#mO95JX1<9*tuSJoO^lAS!iNV<}NoeIGY$pOFhUX=13ERGGn=k!P&$(TI#_rF-Msg z)CwcU*~BLD&M$H=Pt70QI-V%WG%PF;QRJ~n;THmr=VT)AZ3)QGTdP zB`(XSW&D4cYzKJn8o&1%Sz@xh zbhY0*D$CzrC1dxpL}YnF#{ZAFQnnpjA=?gQ@yPP%<$mvcS-yUm-+Qhszm{?Td!_Gx zfGl5@{{JR92f%;Ixc|eljLZ#q)woyP@%Go(Jum(LPyM8>|F3>)9?J#laK-A;6&n`te|M)OT~Zdwn)?;Xk$)xyXW9{__M$U8lhvQ_ zXI`p)gX=t($dm-c6w3VRV#GL8WbN~z7U}qWnC}v^*uonHZhLRhXpP%OH2&P z#OWpmXA|T2d^p@CX4J%>%$;sxa5gcH&xa#iV#Z7i%Jk_b24@rF_ znPTdi>b&~RBaTBqj&X@RNy1_ZWoC6TVw@?muBpy*G}U8WVpf_Ml49+IT(NvFf ziCJZ0Q07xNF*utTM^ioCC1$mWL77n9#NcdV98L8EmzXss24zNd6N9sfaWvIME-~XK z2DQS7aW*lIrkZkzNt+myIn_-J&L+muR2RF%tTizxld78-oK1|QsV;GeSuZQ?Rj7?Y z<7Kkz;>`Pft{Zm_Vmgjy8g&Ug**q4M3D!lKU|l3|U)y798|BxHJNGgfbII6XGEnAJ zHyK#VnD$+5_eOcia5T}SE*Yno43sI=O$Kh3$8mwmO#9NadvIZVd8&ROdznkdsj|k1 zLTwBh$+*-^6XS@P99$S*v$B4h{BoC!(@X}+tnH%A+Aea$%;hue+SI64ty{mg{;S&x zmyFX*2FgV3CIh#~qu4I)b=mzmM%SzzHOEuz{(5+#OU4Tm;(JA? ziQ0Jby7964k%g07BF>c6Migpe&`89E60+B2>SeWJtbSl&rAx-yvi4quGBdjvG?Kw6 z|6Ui95mW1A^u7Lr({T*bDwn{G5)xG?leCK=W9>mrA6%-9$*db+G4Is+j@4?HkWI4U zh(c`)8n2S(GV=@hlqG9c);~LITrx5y17#j~QRaacYY*hSy$UyZ(2P8grS;FwxJ$-n zS!1t4nc>W2AQ?07pu29|xr46baF(=7;1*fE%ywo1QD!^)fWXOTXRjS}*Sdt9YeG*dY6#%O$f?tXC?&QL*(nsj;V3}lU+hC zFd-pZ> zTmka$=Vkx@(`5Or?E9aWm#MTKfKLW%;@E{cn-QUJ&qp zLi+zpWcluPzxN7R!m>P{^?Mh|^0(V$P67J=n`HaLsmE=7A+SmP(NAmrf74RtUZ)0% z*O;q~QO>uN@XJ5G09e3u>%Jyvh9EFSuP+P{h=L6YhF};*1i6QExbBGyUhqK!G=d)jV1b4vXoet!APf%$zfI%37Vc@iizB%AoBzVCG4bTXF2!I6|nxGki5P~p7APP3bpaoi? z4cegtI-yIDd)UqO9_WQW=m$=y=!-)F24M(>VFc!YXI$`t4;r8m{15;OG&Dgo1R(@r zh(HuUDXWS~R8T;%K@e2L#$6O8 zq6lsfKo$`pxX!o{XI~|=&z-q5WL9UD%yMV$o!`Cp_x(I+OHOI$>F)oWKR#fP*sN0bZa19r%DB z7@!;kKn17-L4uxP74BDq8c+-BKs{&xjUWWVzywX88MJ^_FbXKg2?tO?2`B|l-~#9- zQAIb2D!NHj(M_U?ZW2{=lc=JbL>1j6s^}(>o*_C)RMAnQijERhbd;!~qeK-QB&z5j zQAG!dDmqA1YXLe)RO! zr-&*#MO4u#qKZxtRdkA|qEkc_og%8}6j4Q|h$=coRM9D-icS$#bc(2=Q$!V=BC6;V zQAMYSDmq0}(J7*eP7&!DqFY3jg$V^vF$}E%C;_Fw30%MpI4A=i-~}4cfe-kB0m?xD zRDepsrm2+N6r}&uDo_n-KrN^P^?>h~MoR>hpbnV8ahPxe9aMl?5C+Oo!UZ%C05u>4 zT7mO8;RWTO8Z?3y;5vLM{VfQ98V~}lz@ zK~N8xfFnE|FEXKn3Q!BeKB$(;OHUTKnE3|7KDM)OSpgr z0-y$j06R=Lfftm6YS0K;KGKL~<)&;*!D9DXzQrtxOxjrbep z8`;+ruSZ_b9Z4Rsj^xv+bTqA`(}!b+jl-Ek@k8dJ>}!eFBCq8RCJ$N%^RK2}jlQb9 znm!OaU>wN25`V>fCA&YdKe9i!FS*a!m*1P(8{MnyP49{AG4^C$j=yZaoZX$+9oe1R zmE2|R%I{3=jP6u+rc<$$k;?3d?=W{{wx^b4^Uj2AM` z$DcQ!&pwxUF7jM%TXLJVEx$FjHM&*VntnF+tnqASOMHvDCHu^xqQ3nSnel8JjXs#-B8w%s!ELBJ#x1jq#1<#_Z#X$0LvD9!oxEJ(k~)+7R8K zY)C&Ed(?O|^GN&=^O5YsiH9Q(=N?KvWIdFBF!f;cLFK{p1F;8;2X@>ayg3hotB+lkxGHj0?#kqq)|L4MsRhvm z%7XO#*nDGtW?p=rIWIdmF*hh?DWK-{{D_nO-{9@<~viJ z(N3i^-4W|BIx_9?cC$S@B{3y3C1)iq%gVQ<+M;brTl$jNCB`M0i{lrY7iTX@Tok$J z=!NkM%?q;^Brb?tkUKwlzIA?na%ysPvNAb6DK^QNl$jWxXim&dNKA-K$c;~qx5nqk zrN%|aDdW;(V`Gi6JN_^9`Ik5|a%S#~fqd@I*YhvSeAfEXxx- z!gKDV+j8e!DOc2`xYEv;({N@=;%RQ_M}+rsyMG5+5oG}mRUquW*hGf#41WGP(+@iRyxw3C`pc44HW+gAKCUlOuR zgh0-qCX|QR3SSmTLY9jVNW;L35GW6^6}?<33AvRPS|~6gV*hZLdM$e$ znz6Rl{#Qu?SJ2}94053+MBq}29CYieLu0j1rxp=-tnWJf)sm3gLm(7kiwH=Aw2KIch}+ok5myu!y)2SMtfB?_ z8012)5E0k2n@(AaLQ$C2K4n_*)%}K;ZXOPB$Cp|)B+{lJs4OQu zq#@Z!uMpMChQGLfMZ4|d{#aWZ{~IKMYbnIfAdSvWYQo_H3)kHdXgeNnl!V+VLLd#! zE<&I@#CAL`mW13TLLg^Q6Uswu7x$M)LhcqJkTa+W5GW6^ z9hyCokcViI27_Fv3k$o!scr7C8&JFS88hbCJ9>&sQXUp5kcO5gb>Rq7Y%P*kN>UyX zDUgPf7b&oivig+$YhYdG&Yn{Irg^(0K65VPF^F4ctS)#8cAM6Ktx2? zsVmVR5h?xzyH*nMBrQ;9kj7&tJwil``6m&!7QJ^$B9gS&1_o)Mbdm;2C$Z&M5A&5G zz-G43wbfS{YwKa*E=l53w0s|fT<8@R2LC+|UMXmZf>;#~SY zn!Z%wa@;tM+VpqOys=Kl`80ix#{FAKlScLb_fh@-p~n9^dfJS|uecVm1HUVL{}<1= z>uy$^E0q6xdr;0$SP!Pr4_pU6;0FdM2LVt4DnSrbfof0#YC#>S2MwSRgg_XWpb0dC z7SIZmO@srepahfxCvX8b;Ghh60E!1WiU&E02RVudxgQvy90WiGs02Y!1*$;}s0DSP z9yEYP5CUOff+o-mT0kop1=!)D*HNJ#xC5x51e5|NZ~-^qpbU5b3JEz12{{T0|L-4H zjhTpP0?nWWv;yTA;Q%Tq0j0nRT)+)DC<7jVqC$?MLXM(Bj-o=2qQd{-xM~aqhP(lw zz>uTBkcWW@nm{vX0j*#ZK!G7gfgwkMAxD8BM}Z+nfgyJR6c}<87;+RCaugVH6c}<8 z7;+RCaugVH6c}<87jhIAaugSG6c=(77Y-ahC^qCMHsmNakxJ#)PI4?qu%f5;&@qq}Q14p26W+9(axh&#QuyYv2WS@S+BI zNeEgdY-gj%P6wRkSVTVTg-IQ5_QPkY;fu9!dkF3hlQc{k(Ttz>DaYup1C#(K;Ghh6 zfEQ>$2R>kcau5KOAPA~JHK+k~pdK`UMi2sFV1g#VjuQ%S02P#gQs4wG;07F&0T1v3 z4d}oJR9dL}Kq)-vf`{CQ@#F4074W@U_>rG}+x;U0e^Z6KKdZ*w8c+usKp2>y2`DEB z6_kKd-~t?!0T1v34d|ej{?`4=did)`_?r-x=Ag&ipE}{6-SDqXq)YKN(|943 za+v&y3XhkKIQ*3dexkwO>LmB$?jOqGrxh?CgnzDvf31ao^B$YYTxDxD`j2+q znaq8+A9pKpH&F%euYnKN!G{~*qfPJ$c7ojGfKQdcr(N(_4!3#W^BR272eO2F<|HL-@m#{__C*RVDnS8vd?^= zOaK4$lmDIc+p)Kmx6^M$-%{R6y=l={fQdIEZ{%K2zHYsqKax5UJ)#^*r(=i)R5V0v4WY6&E_T3hop0$}9X+?M2)$d=qQiDyh2|1b8m@^pH0 zbhENK^;GmJ<*9TsmNb%?P4P|UrtFi6CnHbho=84nJ(1s-+8EuKqZ$I{VAvH|4ZB#xi3q#1B^tbH{NUZX75eh8@V^PKDpjnpT8${PxKz;p7grd zI%8et?)cs2-PyYmcSY{X-I=`8x--8vwKlp|S({!HTVt%r+!4RSyd%3hu{yFkw<@{H zT9v;&)mJ;fTA7O{;wIG%i1jEvsoSjEay0&*xgv9G>{jL06x9pJEl(_uEYH%|f5x)( z(&*Cs&B-C^1jH5_i!(RIZ!~Yr-jKK?;1 zYuUBwYhu?J*JKvP7n%#RSNC2WxjJ`M@+#}9{FSLIqgN_drWeE(7z;A<Pb4u1qSP?7NmTa@y@|UD8iC)rsapdCMMahe- zi}DwyE{tBNT$sKfc7bt0=KT2i=K0yliOG@4xk<@M)};Kz)WqmSWny|lY=SW%Gd@1v z9G@M>`sx8>#>B^%W3rJ%BofJuPL8%l=g&)>7d=loFMV$8T;tr#Iq`GMbFybA&W@a& zJ1cpXbyoh&)S1yUd(ViRkvlzkx^;T~wA5+Q)0ETFqhh0sQJL0wtJ#`uNwh>-a?QzR zt2y74YKk@~O=&Y`8fGRO51Zj^h^omq#{LI&0D3DT6}dn%Um?amLV0LQBH7+fQ3ugAK zrM6xWdnJk6D9gtn7kY&##<+p5m=3!2wOX4#uibXNG$F}&j+X9ckP9^-GH_LP(5l+hkcGt{7^*(GJl07Ji+)iPB2DwlZ79xk+ zIuzMCtN5DfLz0jkA_UUsSyB`BPz3;t=rZWm-$Bc?&hFX8yTHSekdz34oIy>9kTw4# zWPbOY;#18dl8~LWV1q#})P>ixTc|q2snui(r6yBmOqty|r}$*^s3c{VNP(O|UAU4~ zWX-TC-Sg+q?(Qt!p*KiUcGHsm4053+yq!uhZyNRmn>~G+z3J^^l8~202;>ZE!r@k> zaJd|-Vk^sfToSTJgh0-qCM@j4O9$;<{iD3lPHb;|yHOIdj~3j(AQx)Fl`KXFXU~u! z0oHBJ?7FJBpn1v}_|3jzpeH1W`zgy{kPCI;aEXPTO(fb%nxB-U9H8abGsuNrA%;d= zL1(r>x4u@zozz25@oKdfuhu3>;HwnnXOIgu;c$U{B`6eVTdSlb zUL*(I#HqBB&F`4ge=42XITQU*O|aFWdrFddh|+uva-mm<%$^~-lPnZJ&F|>4t=DEr z#$k~GIfGtdA>))1roMM<%CJ=ncv_N?78#H;=oJ<+#L2SwSs}=B!B;yDzS7(q5 zJwjxlq;}Aa%4pHW`}_`D1-dPgh}UW1J_fnaD@4TbA8zJ%wA;?1&q^}h5E+m&=oJ=T zDsjdyUXznA)!5=HbXz4EZ;A}a8T1N~F?`no^E;;7x-Zx!$#_d-K+d37SjZUe<1J;_ z8puB<$#{pB+sGgnYQh`ny>t06C(sJkKI8JPLjMK*N2IM5-Sd*j&rq1bAQ$Sw;UWuX zP(<3RwZ0%p`K(BRoIzbUf)v|P`JyD{U6BGggSv18DYoPCB}vMAA_dau>>>q@AjMW) zXS*cjeUSobe0Grnh2q0w10o23J6pj z*!PZ|k|Z9b6hDJps0oo6qr-L3t^b2=xAn(!osM9`$fq#yY)BpHTEGw2Vglc^!VChXN+( zre16R1qUsmsg{00Tc;1T3=yLs#yGl)xhcWad&D9NPqOmZ8dg)^_W6PJIpsH;ZQb;D z>*(J$MR7Q=X6A`&m@BETr>8{A>z`Xnzesbp)AOjM*JFd2U-*M&{K0nmgY^`@f&PeI ztiC^V&<)EB;8%9*XVYJ9qhC5@>AY(mE5##Gy^LOSQ{RK%q&4aLdz~KlHPeE}&?}jw z|C+?~b0>&4t8J&SepREw5ThWUkOu>Rzd8`|bEuO1b< zL786G_W;(Ylzu-DrNli0OTlah&92!~^m{61>@Av6f*JdZW;n4VdM*R&i{-dzrhyj< zPiei_`LJ4esGgovp!oH{%qE&??4*}(@DmEr1GXm=#*E@8WMW3~6H+LwmBj*?aW8`gnS-8^liD|ByisY1_ohw_UvEeXlSrr;L6cQ?zZc z78UgCCN?uYSQHSzY_V!ZGs|gav;B!w(kz41lfYrr{}ga{^f!M)o=;4}y*n!#Am_4Td*$m9C!tDOtOq^2+M+v>k z9_(yo^b~sN_1QrGU)uNAczNh?Itp+M6z#d?n7bZ(vp8mLd$obbcGFsJqh+3ba!KJZ zC9N;oF4)l=w2c0jozfiiBz<@$^c?7zU#IULc&+GBla}DanIPG}lb&392#?uca{3FE zmM8Y1?Xw7k>Gp*anWG_AD!Twgf z7tr6h@i(VDBMozl_W}CNGMZ=LT(bM*Qa$*+Q+EscZH`B9HZzO%I+|Z~Vou?Fwn2~5 znG!pkG5TueqEnPYH&z|)#N+G4Yqvq89fxK%ADhc6t7wZ=hUsBnotWu5PBTN8*+?_} zT8)@nN^`3kXl_*#ezjiAWXk6y6HTx^7~D+M`QZz%%+*7HB+v z8w)gtSF(VkcNGgbd)Kf4DrE(Hi`Ih#3-Dw2vq1Rh!z>Uw`e@-D#Jw*H%hsdyW!LJkJ7^Z7;Eac5FKfczaXyXI;DK zm)rKxqlfnnl~5DjKh$iq>%dU6Jx5<1YPMt3YeUU08+~M`+2zMyA8K};|IMLhH}-@T z@mazC%6NKPhML`SymhGAWjjtAYPNI78AHu3Z#!$K*#X+*^!{v$^F`k_=d{g(b+pZc zUfSlt5N-2d3vKhDO4~f>qHP{5rEMPc(>4$4w9SKMw9SJd+UCJ9ZS!E5ws5eKws5e4 zws7By4hpHE%^obF%^obJ%^q~qW)D`-W)G^g*@G_H?7<*y_Mn$Gdr+gz9;~Cy9xSEJ z9(0}D?1PqCdvePUdL(>u;}3eI?Bw=Ojxgwv+LQajphp@` z?hb<u;ic*WX0@u0Krsu0KTkuD@*4Q_Sz%v6=Zf?WTS&?WTSg?V)}T z?VMJeWQUbG7j?CD>Zfizy&S8dOrv9K@N=D7=dp>1AWVZX4=a~Jjq+dNlc zi`(WYg>7w{XVPoo+R*on18**NardcHz|Bgj06|y%d24oT%$?qOQe>+Dk7* zpqyTcfCDG$QkTv=Q6$@MLsU3qeq zi)X7R*SdJNa&pCsXE*hVQy|v8c(!=jghaiPCm!v6#Q*S) z2S-0}^uDgd@q2sLvwJq(9lq=E+O{?MJ5qNdmW>KFB7gODc3#dNC z#Q29%BnO1F+=fZ zY23@SH|kM53QxQ9&XhA(k}Ofwv?E4e`M=xz#%B&v`M>)QMeYBO{zZKE@34&Ist zBtw@(0t|AYUx*7ML$w8QGj}g%UEOnMTitVPEoXK~az3I2KZ9JT36X=+ph35R3oz)j z6p!^?<=HI>`5Z0YV2}%SAwpKsCD}o@{xJ=@=S-hz8$zjuh5J#Y|ZG8NHV@HG9YKrD=cJ)^W)GN5Kw&?_uth~sYP3|kxeHzgV0r{#ti38-qBl<%pXvi!5|mvLS!zX)90XD-+O3x`_%5vXz_{jZAr?% z(DEA@I=qR}AGvfP_kempC zoIy<}53zkj{6G@&GZ6wggPO1qa_Sqxz?zJ)4a5GSB;@BJ1aby7p*+Oa=fP1)$S*_) z7D|cFOs@B;+?D1aby7p*+NPXnsKw@>>xC zIfI(85OV6f_Q0Bqw;h^al!W|Fgh0-qCX|QJp-HW7`}VajNkV=vLLg^Q6Ba^jpAG&# ztJJZX`T#hWrms-H|2NWg#HddIn!ZDQ{@>Q+bhvt{{GYxqM}F^Xd5ymRulwW4@BgDV{dwShv+oNu zo#rRlPAOlOyf}XlFAn4kYQiC293&Nm*iI>5k%atFgh0-qCM<-U`pIcvUz%t;rF>Nq z@~H@coIy<}53!w6z9tFD(}F_`a-lB7M+ywZGw9a$`K+sb=IqN0Bg*%mQ>GN3Q@$?A z{1c@a4053^EPRYvF(|U|nUFfvX`fD`*cX33`-UXt&mskK26f>GQfz0HZ%R`BB2pk{ zP#2CM#rDnVV@b+iMGE8$>cSDE*uFa*lcfBcNP(O|T{wai+qb8zB;{`+1#$*;;RsS} z-=DrEN%^}-ft*2IID!=0H>ht*QvO|}K+d2p96^fhJJfe1DgU4)hZy8SU5FIPF>1g3 zWUEO1T}kGDicH8E)P*C+EDWXCe_pT+3H3cm=6{P!$Qjgyxb8XpdeW88!RMmR;&ajW zC7F!gef$h^p(b2KZODeI09!bd&$(jISE?UKLKIrO!5|mvLiAQQR7jz!=oR?hW{K|% zeIE;cC`oaM6v!FWg(FCrQvBuPUnD6dwB!(jT&N32u#xOLXU>BT9i>s0&AsV%tbRk)*gq3gisx!V#pj zi!VfdJKRqtDV&zcSDE*!H(yNK*W?;eNlW%K$c36vep0YCTluXdq>2_FVvq}U;RyD(akl-<)-~(zB$?G>#UN); z6Uz6uamDYhzn6s6(1HyHxlk9%x6!yMr(DA5JD+}=>iw^v@BjZX)8%-EzW<*`_5Z&@ zb^mXm>A&c^|Axz5juz?z@B`}q?@Idq|I6tvM=xCis9j3!0O-5_ESi2pegCbdYXCl~ z|G$5U)6qe7|BrRL91CgsgueIRNA>^fX?lyk`*+dw+w19?08NcFy+hyqJ1m#ur}W+b zE}AN7!T`ya{p9Rq7Y|XPjm83M#l0yt~p)MT39zEW+N89={Jt4^qQCb6oT<8&^HOUPu zEH+9JqMclTSsm^DfsqN+igBW?03$C+G({rh40?ry#9NBO#NA%BVibwCvLJinpCpM* zl;UTQ3pL?ziG|N7w2t-y+CNJ|nneiY3~EAoi0w+lUnC(dA_Q^~l8{yr z0y%@4P#$8t&hT%NkWnH8at1Y_Jj8aH;ct?V(?kg53~EAoi0vxF-z6cZix9{e)P(X7 z+eL$K#S&ywnD#uND|Mc zEI)%>s0oKl95^yBwOs`KUy_h>LBOZ-Uf^F6nQ9Mk_4GAi(YbMgewLU>IO`CB^}E2Qd(^y9(m~ zyQ?t}u)78$0lRB46tKGvV*$JC(UZ5k0iyxC8!;TPJB0Co-C+y}>^3nXu)7IE0=t_r zCa}8&g95u-F)FZo6ov(MpN4UP-KS$Iyk2u&TWA68sYp9To8s=n((S7cy%*eh{vJ&1NgsZCH>S}mL4O~+T*Ve&1 z>)~Au@a{&qE(Grh!}TV-w+Z$(!$b?bk1ZnaSKtE<_@D|ODuEA|!bhC&Q5W3chL3Uh zcp2Hh8XG;B^@JBbsliP;O#0wcez@6yPnW}I0&q(Oe6|v94Z>|z@VRREd<}e|7QR>q zU#f@O8{m#cm@s+ z;b9KbW$=gxzV3x@Xz)!PzU6~&`{6qV{7gCgYyiGn0pF{H?+4)rRq(@Vc(ev)YT-w9 z@N@O>^9}F|jqr;h_@yxXvI)P^1i#u0zt#f3-b(hb#y6B5H0zrV_^}F)mB4H%{FW1b z+XcVlhTrAzdu8zZ9{2+<{GkT_MTbA~!5{nKzZ&o-9aQMH<;D37He|h15You!`)A57igAPAb4OmhRO9RkZ0bP~Q z9fZ`wJ6To@JvGo@ycz7#e%VWSI%+%U|cSq7Utu-OY+G}x-cQ9gK@AD(W&Gs@wa0eDsgJiC(YUyXBu zn00OyJg*v#u7QzSIHnGct%u_p;P^&3Ap|Fe;Up7IZi44CwvOI76i6S#$%|BYaS6Pn z6t+2`<$_b(u${&wq&JQ-*y({&y>OZaFV*36AH2*DFE`+fa)|>|c#rb>oJ*5K1Re8va2_~Ek#+*%H|1>kcP z@cBykLJ+=K1z)O$+iT#CT9~SXJL}=D2DrNsz8r#k!f>w%_cg)&&G3~Lc%T)&s`Q*( zje`#Q!Tp*F50${fr7-P;M_llAH++M`H_PB#9{9EwzN5j<=)%EY=ECO!V@8w55qs1 z@Xt-~FU|0;E%4u3;osO{^6%oa^3=co&HY!px9P*tA7(#@e_&8M?dbdY_mb~LsFim7 z-5sB`KAZbY;xp!FGVjFRQQk?tZM~g)EAf{3R_4vvo64K1H!K>RAo05Sdge%s#wJLm zt#s~if<`9D9Eu%M4vl^-doX^`IGBDl`fC0_@<4>fB#6IayprA@-Jjo=+!xuG-5cL) z>`m{9?#aKLd^z%Rc6WTYu{*shx+}jkx$|f$mQqrw9oCNA_QVk55oDf^J+C~Udd_+- zw=J>F+?LrI+p26$J!{cu1c@!?mab>=PbaChcy@Dqv#~i%BN612$z&v%rEv(1P3b42 zPv&V9g2)rujq#1f#`NRS$McURAB#Me-4NekY)C(P{E@^X<|CPhV-G72ryjB%$~~BP z(0nlSK&)u&0rS30B9>4Rsa~r$MYubq%j6!H*TWw1+v%2uQ#qw)93>EMae~x zMOhkKz(DKtYjf8mt}$tBf!IQ2Vd`p&Mixk1WnPuJGDhPHq!w5Ua`XN3)AOS9@-(7A zWNvm&e2y_EJv%x(Pa_IMy0g)E)S&SMqFwnbl2=5o$j*w-GG?V`MrY<{BxgisWG|0j zzT-0MvfT85d>mWlqo68qVWR~ zZDw2MlGr86C8ICSUKGE`xF}6y2jnkEUJ$t;OCtvu=cgw}C+BJ0fXJlm#P~#mMh%Eg z$d6BskI-xmm=GmFE zVrMC5rOvd@%$<=q!#pE%dhB%N^weqAX}M8}QRb+w)_hBn#t6tZ$D57jbW^k`Zzj!% znGMIoMmQachVqTc#zLp#r0b*g`MP9Xq%K<D_b3Z)`NqXOj06Xj-khQx}v8vOY5Pr0MeeQCtsGN zkpQwh&JAkgA9d$lNms;`b;g~BGhG@j%~Om2NJ&;7Qi&*8IGzx%r=54ZC#q%;L*@6_SukY4ME=a-k+f z2rlsqx`}I|6?D0hF7Vh&#%y(ODUC2uS$|}xyXQ=L9eioacUE?!ew!K;cS=qswEjSLPT1mz%TCSf#F4TnB&2FKK?}Kgwm)>Vs-Nl#Q z>m(sph!Dsb)PyVP65^6!518)Gsk3d(R_Y}oT_OZhHya`Z%0q0;RvIKB-L%L?2DwlZ zqP*osiW+q5J1RS-cXZn;h1zPTH%cOBQ<$GYF4TnBLN~BUgA)527SZ+oNgc)Y4MUQU zIU)pd1~p+JWb*JKlRJv58&Y3%;x=3X>|9!~!5|mv!a~TY$9|zYI;}}$bVqSjHdB%^ zPozN3pe~fBL^_I##hN53^F<2e4C+F8${5@D9L3~Itc zh^?V2!cK-v=qN7hJzElTy$FGvK}}c)5g+u1UXzKo>Y3+ALT;o5H!{eDnoxdd+8Vt~ zv^9D;R}#6H!u$+!p(c#cTil9aJ4LXj&$1ty=Sf1Ah!Dsb)P#kQQ{M{u_OOy(S6k8MU36hi*A_Z~=b>Rq7Yz>npN>XkU zDUdU$3*{-6?bGxmNlK4Mft*2IID(YI$7#lXLG}OF(^O5<5vuz?gQj0m-TwsD0jQ^G zAJzYFr}F=wP`Ur|^Qp}~{hy+;{|jmQK9&2gq)DS`AC>*L({yZt%dw2w0F==567~H* ziKcH;x&I29{z3izZ=tgP2u)w7a{rsB(C^W-!=mNU^n*61WASKe{6=j67S^3{{}ERk z`%+)|KfeFB`u`-3%)VMalO?asN_ss)4053^9Km_TRs&~}t<}-_lFZvF&Bq`YdWER* z6B**HT=-7gKHGj;xj>S!N@PIJpjTMPIQ85$kYPKkTqwy{Eixcy&?_utoceKTAj9_E z{31!l9kg6OgIuTy<)_Cn#a{p}mV~SkA&@hu3FRTSIzE?3Le`29$QjgxXwnM#%14SmJ5<_x{XyA70{#^KwG4+b}NPF>@r*=umJt72h1~s8P#5NdQ zha_aZ2!WhIO(+ksimy0!NIOkGH%mX3@ zat3|Ek;K?esM94e4~iJb8T1K95@S23UM7ioNW?(SpielG7~3V!%Ox=nix|im^a)22 zW4r1(LlX0dh=H6zpKv5Gw(65JB{7eR7|0p)2}crRYYs3=608~1=3*OA_a~h#ddC3C`oxZB9~(q^#gd}I;Z2ichh%w znp`yPxXbC7Ow+gSq-y~*{f+AXZ(8egoI%q^Yn+a&Y5L0@PRB-?M$z=)YNz9J>I2~W z)Ca&y`u?xcw2!{~k85{1KBn*g%V;X4X-D+r_y1LN4S-QQfU9%IVy{#E|L6ZgE8c$_ zy^e(wcZr{B52OCSSx5h=^`HSXf)EG;6EuNl&;nY4a*S{Q6_kKd-~=w<1{{S2MwSRgg_XWpb0dC7SIaV2|@u5 zpn?)m3Y@?N+<=2J-~nEs0Uh{&9~ht<1V9C-1VK;*szD8?1$CevG=N4B0%3s0Bx)0A z253p5q9KWjb|fmAk*H`zqM{LriZ&!FnvkeyL877oiHi0kDw>a|Xg#8$@ra7HBPyDX zsAxH&qTz^&b|Wg9ji_ifqN34=iZ&xEnvAGuF`}Zuh>G?iDw>O^Xf2|mm57Q)A}ZR5 zsAwXhqJ@Zx1|lljhp1>CqM~((ipC)-+J>ksOenwsR8Rs+ffKlZ8*oqtJirSypaUQ9 z0|S(U0H^?!APA~JHK+l#pbpf727->@M%)j9Ffc(AXa+5SwGj$%02P#gQs4wG;07F& z0T1v34d}oJ{J;R^AOI>rB?y8lP)*P?tik4g#P8RDvL=0@a`f)Pg!t4;nxt z2!Sv#K@(^OEua-BI|v6*K?x`YPT&G=zzKSWWw`GFUZ4RT_<$c6pd1811*il;Pz9<% z4X6cmpdK`UMi2sFV1g#l3|c@dV8;msIDksfGc3XVQs4wG;07F&0T1v34d}oJ{J;R^ zAOI>rB?y8lPz`E8EvN(apaC?35C{VkG=XM{4g^gt(h0!<$18KTVto#qL&c%aif!Pq)_!T_xuR5W%_(bhplQwP-v(9l6e zI|mib98|P&P|?UiMH>edO&nCTa8S{}K}Gup70nw|v~Ez*szF7g1{G}@R5WQ&(V{^` zg9a7t8B{c9P|=!!o*|kusA$cgqA`PtwhU?*pe2Kfh72m&F{o(9prRE6y(JM2pn?)m z3Y@?N(0YO1k_fb2ptmFfEf?r5i9mw|wQ|!`if;SfFA@wJ!k@s@N`-&po0of3&KF@B3z)p>oWQape`af z@PSHD2Tb7TA>2R*6`&S`fznI3fCd7f27~}ROgMoTl!I!}2wFhtF~S23Pz4%5GblMh zlmR~of_l&dFya29H;p$lZ^Yj)-^fxe`N-?JBgrGyk$gIpj;57#`f%*9K{e&$hs;CS z*AlNqUdtU!9<&bTUrkYcdF9pgf!G1#K!$3}o3CW|C-z77=cvxSwJ*OnwKuv~p<45? zJ;t8Q%kh^@syCn59oe1RmE2`f&H2>M=uTy4nrhD*smzY}4s%DA>d!~E=Uz&_WWAJs zG4*2fMdiix3$YiB7c$SspEsY+K9_hdLbd3V+pKN*t*Nb1sz;xGHukLXY-UTGYSL$) zNj&3!Ci8UsX_IQxCpJem=blPFWl??lR5F@WlIcw`s!^YLGXA9bWcG;!)v3oAY~hXB z#}ki79?wy&dh4D8E+5PGJV)q$T!#aYx6iDOuQpd_S0$*%eeU+; z?bhx2l_{!oudGbRV{s#%>52E4J=xn5w?%F{x+1>9T#>ysackt(+%3sltXuNSQ_G{v zmE~!weQzwwER8QUmu9K{edOlcP05?AoAOIiOQK7ZCF#Yn#m3?tH%4z%ZcN`0yTQ02 zL-p{@>$9;$EE3C6O?+!n{<_q4(d(4!($~hWHLlHE6Q|nv*@cOPk%hUdlUG|;=dbF$ zDsols%H);SmH7p!126EMO{W$=8E_gCe_YQ%!~Y4 zNyelM)!a8HW+x;jL?+~@?!GlXKQ1*cI!>Y5`?0ac*vy#t7;{WEl88hixzS0g!=FDd zbzby5<-9c2;y2FCoD)CCJSR)__#*+%O5}8JUx3_ z;4$MGE8$>cSDE*bdQUl9X3O3gisx!V#p{4$|ONz7pp137~};Yea^XNKD(F=-J4IfFjoNMdZKh8{`G5fKA9gFfL% zVr=JzxFqIv5d%4cKH*4WY$u16l9)F{4CD;@gd>TuogHqM#JnkDAZO4g97&Ar^sq`2 z^OlH#oI#&(Br&%0!)i&)JGAH!gIuT!hl?pXR_*WMwhlq>kYs*_(#jd+LZ5KB%%Wq} z{wBUg67yLR137~};Yea^$Ld;1%)256at3|Ek;K@J)jK6I?}-@58T1K95@S17?~=s4 zFJd5P&?g*8jO|#xTN3kuh=H6zpKv5GwqtdjB<4dA137~};Yea^$Lc+jn4=;Fat3|E zk;K@J)%B8?k7&^$25DS!QWFjrbMn1>pcZuDz1%9UFLb7ex%D@x(<897&Ar{BWNn=1U?5 zat3|Ek;D|v5B){vBl-XR^)#j*O`qQ5blgqj0Jvz{L1q7wY5EqG`!A=dgr*m%?0*7H zA5+=?)ie&kU#Q%FBTb`d`jE>07toZaa{mo9HPdv6%Kk5)>ATeT|7|pJns!nD{}<8p z{p+2MI87d!wnkizF)?ZrK>hyp_y6Y{f4TA|mH&_XH(L4r+oE->I#nqDuM6XPe%}N2 z^aF1IjUWWVzywX88MFY_Mkv4mR8Rs+ffKlZ8*oqtJirSypaUQ90|S(U0H^?!APA~J zHK+l#pbpf72G9sXAPh{<1e!q$V2cO^IDiUDKq+tn7jOd(%76!Wfd+Ko1Abr-1FvH_ z<^(_ms02Y!1*$;}s0DSP9yEYP5CUOff+o-mS^(=M6yN|VC;_Fw30%MpI4A=i;3Wp0 zr-nH?@Bu$CKsgA23Q!4xpbAuj8c+-BKs{&xjUWWVzywX88MJ^_pzI(VKm{eB6gYv4 z7ny0Z;)dK@e1dYET1eK^>?E4WJQ(Kp2>y2{eNi&10V1M1C)aRr~s892&zCer~$R04%CAN&$dlDlyC3=Yroz;iTsUKN~N123q97d603LeMf{JENAg z?oJ1s=2%2N?1f1kZuY}xs^N>ZaC->u4wG~`CYtf{KIItQrSW-a1%MN9PzF4}3pAhu zA22{U2!Kiu1XZ9K)POor4;nxt2!Sv#K@(ud2?aQS3Q9mJZ~_-_0}jf72Y7)7bl?Lj zE!2IW6drWJLvF;7du{BY!mcoymnBf9${QLzSeytpSTmiE|`0Xl^-m&QJ_iAys9(RA(fV&~w{jqYG{D}&W zm%^X9;4e7*l?Q&J!Qbj6_v7v#%HgLKFdu|}u7-cDg@5xNo5@^dYc=|hcHNoOd!iqA zD{(hb1@Etc57xnl8{nf&@CkN;+~j~ymB6Q6@L3MGdEoOJe9;HD`$>AUpu0OO;O-i@ z-(a(-*S~U-&c;LqsKd-}G{BE}nEbI9{#1uKAIS|+4k|zpRDoL10K%XdINFF(;09&D z3v^(B3Qz@VK?4YbX5i={{9#J}c>w;Z5`Iz*e^*2DI^6wZJ?=K*Za##&Chq>F|9|?) z|4#bt*xSn6>9?Y9DQ~6TwBF3Uk$59QJ?tf4w_eX5Ngat&AA9L^EN!GShvU@CUiMJp zP~=eVwd8BoYx#qzgVBS^!PKkPtGNS-119ygmv|*YH3#DRjs59;v3<(E)Lv_EZck#5 zNwo%IFDoync3V_uAhFBbmE9TNX;O`WXez%Wxg$dL1>!^Wx0e-l1v1aYpEI6IZ;Mh* zf#gB+I>UR4lm@wu-w6S+24y zLhhY#lO;F8y_;~aGU48KS6F*XlHColyV>MTHX9;&)5{8*Y_ciu=6n7ZEHk8`!EVmU zIiJp%pNMRc|WXq}^1zu}Hh|)o&=>px@BAzD)b^ zN!M4d%U`EnSEU{Kv}Q)o^s5_Jm8Vw-=-cXrVnL(z0r?TB<-UB`&9%!5 zv@)P_S?;pNrKJ|@0;-z|o3u@}3yZWrUwva~qrS0`FVhZvQob^rA6AE}v`3$ILG65Y ze&xLUc`EJES2$NYw|36xIa%7JuXMJ4cH^w_SvlILuX1MoO!ds_hQbDILv4L=eRh4F zcI(sEHP)8b=GKm$kv*eMyY=a(H*)1%E+^4`efi&DO#nNgLi_fqYpSaYtF_fN+PN=# ze0^1EmA{Ls;f=$}hvg2FXeYn?q3WU4WrbxL z?d8Y*hid^w_s#BG->0;XzE5Lud2w#Bw79Y;zertF?Jx9e{k6U#?d@03lrnmz(Oah7 z{iNQCme*9Rnl7ZZbS=eFm7aW$+EbMeLRZ;f{Q%PMub zBLE zSlmMSE}iLPAQw~w+qs2ey7zgfh0N~=8IUtj5o|}sbno*n3z^>)G9YK5BG`_M>E7qv z7BaslWI)b9MX((i)4k8_7Bb%xG9YK5BG`_M>E7o(7BW8|(#-DuV6En8xauh0ITc49FR%2(}|*8mlD>nLi@aDF$*uk6-wK)rTxJ|5#{(oPn}nE6ut2VTJiQg-P>a3(Y?v9UlX^pd#2xb8dc^=XCTD3z?q^ z8IUtj5o|}sG(S9QA@ip~2ILG>1ly4@%@2=R$ox#mfSiGfU^_CV`QdR3nLiUUAZMT= z*p7^8et5z{W=hC_bQ?s-fbGbb=7%ROWa>f&!B#Scv1-1Sn>KZQ#zONiNzKPVE~p5$(lm@!^R@h03z@$XG9YK5 zBG`_MX{1ly4@jn(HZWd26TfSiGfU^_CVu{v%c^S43<$e70Jixx8fAY?$!Kt-?}8PiyO$wKCz z$aIQIo_6d96(sAkR0zzyfb%be4$CoWMe@<#%2691J{T7x4Go6dkmX1rOw{#T0k$)3>Lht^s zCI5dvC*OZ~{vV)q0B_T?|KsWSGkWfSJsm0?Z_u;<6?pzn&;Bo^H2@MFPtmjgrF49c zp8a1$$FJ$R|KoW6f4oaP|6fCU0MxH`+HR!7PsdwVIc=-x_}Mn6?K(Q_%U!l-3QpTH zI({(Xv|U06qvLP>?S&tIM9=@n|Bb3)=HKqk?2Fo$;*)RpMQl|;zFF>)cY2~S_e4E$ zN%Hx8HlHLh|HLIMCXbG=m~V0$i>Z`YNz6t25Un8Ek7zGNyU9RuE`^E|UZe;hMUql@ zVsp_w6dkcqbi_%~5&zh8ERsMPLmrYyV@Dbn(gctujx>ghB#@>9X*!W6h%_;zF=Qo< zG!CTUNE1SuDAM%I;+0ZN$4Ja39+wG1bdB)j=#>L z{_!_hH12(y&KTZB85)~lQF-^flw|ZhN;3IA5`RcZ_7K>_N0cP}iK*L}O79)}oH9C6 zrGgKAL1o$fC7tipq-bz=uN3VVTqH$PY#;i__LHK@#Qst=#14{-z1UID zjt_Psuro7KV28s_0CpmE+ognP^VMm6Y0PMtIXJ*8~PB-j?U?&DUSV0qa!%hNrdSNF7I|0~HU?&JW zaoCv|m9XQ6oiOagVF!zF;vU#Z!cGQu!mtyB9WU&JU?%}PGb0yvJg^giodoP)9Zy__ zogUcfgPjQMgkVR7oiOb9XncCs7}{OM@a(|w?8WeuF+3Fv&u&tTYU4CK`$lMZ+A%y` zq!;Zby{I-w!?Tys@YFCo(?c{o!x)|%!!wTI*@@v9!SLi5o&gL`JBDWn!_$G`>7l$v zgBYGp49^ILrwzk1gyGqR;Tgp6j9_^BsZ3EHhGz`J(~05fq9R5eRK#cm!!wTI8Nu+3 zVR-hA(ePAgct#ZrLq@egLNpAc7={rH!vKb%9mB8(!!UqhC}S7~=MO_;rManY%)_vk zDk|QI=5V7qdZ~Ki8LFPRjOGZSIXclCPBe#v=5V1oJZM(qFwDRX?XOBvu#4P1H?%{=<5bSipPABZxVTZ$x0z1ZG$k5HY zVMl=-HcWOT*im683_IPh!(pcbcDi843p>VPD8UZx7)w#GBf*Xhc6_iCfgLyObis}T zcDi9lg&pHCw84%Cc2wB0!Hykv{IC;+9S`hu!;TYn+_2+=9pf;x!;TC)KG?CtP6zA+ zU?&DUGVHiv#|1kc*zv=TaTs>MjsiP=*y(^B2kZo4Ck{Ib?08_O6Lw_S!HT=?uIXV& zqgkO-LXN3X7K#sUCk%bcLNV%}p%C@Ykc0YXC{6t{DdQ+*7^QTglp0Ej z<&Nf3s<4Fxkfu`l5Q>$Mrc(M5ilvdJQU(x;wUVY%1`&$IlcrLJ5Q^25rc#CxishB2 zQbrK!GPm-~h^HRJ#y)1>sK$A$3!!}!>N6z{P;g2b z-OT*P#6g6{VPd90;))9s34|IaBsW5n2sKVG9)$KF)Hqql2u&f>IP?{SrV(oFL|%ka z#fbmKZwBO{nfA-t7u9bTzL~G8RcUwS8|AO(zOIvJ!TM*V&x)UBKUK-2AXYnQAJ#r7 zevqY=4wd)v@2TWRuv#fpv`UTEHVn{y2(`D0Zxv`QgZf5QtYN^u2aT7@FPCWL0#+>) zU&y{tFPF+Xty{nz2ZiUf=hSDb&s4}WVD2gDDePrXB7cBbnJ|C%felLlod~j<>z9`<*Dr5eR;INE(q)xP^OvgR1+aYa{78ym|Ta~mb{|Ci6J`RZ_CSR)UB#S5|*)Xy)G55UHG<@0jqN#|9_3!r*#^_;>v z+Br4y1NfWmJJ4!kkuiRBY>C+a6O)|A)e$Rl87b$+$F zx_W$pd;->1RaX{PYAb8x5iq-=zPz+tU*6EmdQP8NPaqvvIW~W+dTf=v0&2(9j;(itV&)1wL@wx_Y}w;G<<+c z-T({xYx~#sEAE%wufA_-Uwz+^#oFQ;c>>HXs`r=rb@B#S?#uN_eU(g}`~g;b3%y!z zO)HW|zn za+$mV=B8H%%L*Py9U`W z|F!x1AJ6|6v0sYc{?iX)U$eN4@(VgsWgr)n1>3ldV)9w>x`oO=3l)$vP!_aSG5f4| z!$Rd>gbK(RC=0fsV)9w>riIEcg$l?SC<|Jvn0;2fWubx=RT; zAKtYP`F}zLUGy4o)j2V;nhYu|@ZKUR9AQ$uqHhm^6yxEP% z{!T{TAC{WDKYU~%VizJHr`@?wd!V(*a$^&HY$4JiL_p3!kD#@P$@{}679vhEoMIps z^a!@vn7X-20^T2%&iI=Zt0ayvd4KrSLbFq7f}DY}U@Oh$lUJc>S|wrD{LDg=UW=i- z$siY01Y2n~pS(6TP0w>aw~*-)G9YK5BG`_MX+r&)g-o}Q0XYK|!FFU!bL!VEWZXgq z$e5nIRxM-{Ap>#-DuV6E zn4Y|T(?Z58WI)b9MX((i)05XPEM$CSI>kUPC=0fdF^pByDv2XZ-XFfS(Daj#-DuV6En8xb&EMyX7x`%;W&@I^9%W2_PAAFS;t{CQB%E=YO_)Rn4@V;*$ z*&`%D&OlG#_wBawu`b(@^#1>k=(+zDbU5gEj-LG=M#m&Q_rHveU!Lf)JwVU?7t^tu zp8KCg$1mu)|Gjkd(eX8U_J6`^de@(x`;V-r_xkC0Wu4Qugx>%EKJEK|DIIn?o}>N$ zk6huj{e=AfZKLDYy36(iz574^{r|`Q?BS75T*FNKg2Go=@$X=X7rrC@3QnGm2eDnW z0w5-9vQ6FzN|KHK;bxv^d;@dQJy86a#-DOYd~i{?5*;owS8n=dC8e-WZD&5)V87&Z z?#_#txj1$7LKe{Igg`f?3M5BMED#@ihy{AbA7+8XP?-f>gDlx7I6OA*h=zEVU= z?=M9XLkCi<_aG_aqM~_b?h8}7G?XiZa=B2hD9Y7?a%m`6KgzWTH`D}i!3QLZkOOJZLqQz%z2 z%EeGF1?B2Oxw=sWXyv+$;gv}JlT<_9^}b~Jn?yTok5NQ z$dLm%3L{4e63CGaIdUUM z9^^(L5;;Jn)eXGG}t1_=tY$GF)FAsa5?pz;VqQ0AzHcO8l#mf-BVOhWeNrL-bAsxsi1+e zB6S<@o#@irX-uSdQj5{EZK@yYUJ^aqjx45eOI_q4YJ}YnQ@Y_tAxXVWop^#wjZkk3 z3_e30hz4{dN&`9)paC68j=e;&!_@gCdbS;jjJ%FcN}X@f9_oDdiCuKY$OKj9*t?WT z@B5T-8vPMz@Iwr~kEnw85R~ChDEGsk(iu~qQHMm$hfv=ggH`Gp>3Y@8axJwgq^(GZE|GbT)OAIgcb;(1#GCrZqy=2ElQ|G1-00prdo`m7Q0c4 zGHS6CwP-^vX6S)fB#c^gpccDOi$T<4FKRK3TGUXBU8u$WDeBHC)M6C1*o|83L@mmg z>`j9{gSrT!E~2Ol6?Nf5U3gFzedvu0b>To=aMXndbpgj6kv{as5b7d>x?t=c`iQ!) zp)P``i~b3!3)>jgMJMV)L0x1}7b@yPL2v9uZ}g!zcA_`N(HlePjVbiTUi8NPsaGis zy)lj6Xrq-D5eMqA6ZPmsJ$9fTeW*t}dSe3hD5D-#)T2YxBRXP04183f3svY79TBzH zhuZU?_U!0`y{NqeYLB7zx>0*Q)X!vd*YeEkTD_>w0ID;B>hz*IRaB>p>g-2#N~lgJ zsI|Yf`%s;W(6z#-PCKeIgz8*`>XcBOE>x$C>g+>x`cR!-RA&a& z=|^>PRA&s;8ANsVpgJ?C&PAxsFsd_!>XcBO9jH!@>U5zx?Wj%_)oDX@#!;OfRHql! z=|pu(sLmj&(~j!wM0NT_k3@B5P@Qg6rw!Gqp*rKJ&VJ0TU8v5~!s>))nC_W*RgB$U zR7wPuVng@phwVkMt-!WJ*rt<=!#jgh!Z=03DSbGlAE(GTr30rVNV+>_y!a(4#AqZ* z4a;Xz&}H97_5yxtl7NS*Kajz9B0E)oz&k+Si4=S%>c@8?Kh<&|J-&-B2UL3jnQAW( zrHTtAF!W}x4ie1yV9pJ5y)b8kIThw)nCpW%AIzm-E)8=Yn2W$1wsx8KjmtTH8)jST zI^IF*HNEIH3N3evq%a{RX?+tl$m3KYd#IZvXnj+}L+hL9FX|F0%=eDn)Ft>Rb%`{( zM9&!Yh6F7Up)0gTb%rYBLsWYaT8~7ReQHeXEn}=T7qTEB3o5dZK^DBoLK<1+-G~O(~nR`=uv+_p%4Lor#yso`od#(6d_O<$}CE7cn@k;rX zy?Glb(#`?(=S$D)&o`bcKbLz>dam+p{#iVaFFaFty6{x)N$JVT6Zt39C#sJZ9@idk z`W47NT7RVUi2g|9;o3uc^Cnr%tDjdoPd~45Zu#8Yxzf3nbMoh?=Ty%woUNT*JF9qB_N?rg1M5fDYHMp} z6#s{N1$>qNfc)|5@zqs@RobfB%HqoG%KD1Z3VlUmd3kwmxwO2Z=XF)D9alWAd~EL6 z{4we=)uZc2m5$PnY8+WUGIykOWaWtb5$X}u!wZLNhu01(9+o|OG|%y{C~ZCv!6JPajMkD}P{dnsdlyp`ndTd1Uk3dk8K3$~$R zx}P~|p`r;DkTXygY(r&<@o{d=LZw%zfSiG{U>ho?yO}?ho?dznABQ0W&cAZMT~*oKPfR^}gAs4NmHAZMT~*oKPfPUcT6 zRQ4guw5D39fFAL8E0wt+YJTWoa_R7g7LxmtjLJYRC=0fdoExI%XAXa4p|YP)0XYL@ z!8TM(L-hYxsO&FPK+Zr}uniT{5dC8dl>>wd$QdXLwxMDgqJLtca-dKFIRji|I|X|V4(tX2FikMsF;T6&n#31gbK(RC=0fsVj7} z2ILG>1ly4@O%4CoLgsKG19Ao`g6+td=7zttkU2ugfSiGfU^_CV$>FaoWR4UvAZMT= z*p7^8cKB-xnWKaZ$Qh^zwj*Pj9{$Ec=4c@Uat11b?Z}wshrhLuIhIVP7{~=>!B#Sc zv1-1CA7R{n1ly4@jn#j$kXa#QK+Zr#upJrGSpB($%t|2xat11b?Z}wM zD(!J9{-KI2|w0v;Tuma@oE^&;5t#_;-5l z{}3Jf)A1!e_dk!0f2C*tx6`wKnU2>kcG{NH@zaZ(wrlC|((wlE`@fQopV7Ymo0qz5 z4*LIj+V}qmI(|gY{WArJc&~{ zPLUR#Vo2h}Db3fR#3@}kg)KbAkVM5P&3yvIDcv|_(ZU)tB=O-CO*}6Yr?_!S|H4xY zNfr%WJG0AzI3+cD13ht=e~O`1{G>7SN}o8x1ChQ3XG}kl5J`f_m!YdDIK@4`^f6;^ z3gHxktQV(rFFeJNB#cuGok7JZT?%+5X33Yg{K&jByftMGlX!8W8o==B#cg(-abRLQyPsQn%|U$ z`jT*hp)xd_5Tp|#cElLUoIy-xz9~b34xC^paUV|ToqvKMfdeNP%G-|! zv9wen^f+kV{9#Do!U=}4A>oA7{1Xfb>=SwBh|w~r>0U^)U~Ig|{0{Fu%BcqFFre9;Qe{|ok3ho*@;H!eA!E2f8$+^WK>ERogFSVynqLo_L z8di^J2=76-o5E+Fa#Haf)F^>|ilFCv*BTxYIuYK7a2esv`l9qMgl7=$MR>ETQ8-7q zo2ovbBD~qBEkq)D17=7{iG*0J^HA0 zDI}e(n+TH1Fp)<1Y~4f=?m>75h4a}gW`?N_5~u?Q!e_JChwwPUT?n7eA|pG#4zlCx zMEGnLC4}1%&JjMF9~;7L2=7ApY<}zrmk{2K@Y%NNK=>l)cJ8^2b;{ENmdcqP-)FY` zhG0J><4c;CO-f~(Fr=CbmPa-*hpH?iM2^(8vJI7@l!jv6iF+ z#_L%WF>b{82&N0DN&&{JqZgm2XB2#~Qt;U@3Cs9wn1p*EWk?@`R5vA}r{xr5I5Uoz zF2tk}W3Z7x3`dNH7{ffBL`)}QTm<8c?Zjupd>g=L!*uG$=jqBvIeeqvVvdZwQ&cp4 zb_{=yIY#h_KB)A;6CM94^K|ScBu4*^c{<1bt~n{rBnnLYie_{mG~$#z(kQ_>5s*AS zATpX`_9gO&Se!Z{KPk~a7N*$~`+HHiu1=7?RUzzC@lm*-H4J_D2{V~`@QPWca%4|mj zM?^Owrkju=IuOx`i15%k%$1=p)gyE~DZe`X-HsN7QL@bLA?BiBQH&mMjxPV{wME`D(&! z=kO5o)5ZlP-VE?iK*~pFrQp;A^7K=HvQGJdQx8A9X!u=&(?e)Pj1gKbJd<%s79Ls8 zT(`>4BjZ#MQ55&o1{MmApGj9A%0`CtcFMPs>7DecSw1>(t|IX>1MO_A=9ZN^mpIxK zBvUObd@k`^bNv6Y5hlMQeY^6l!k6RU%zab(W@C4GcW$@-4eY8={yg`&^m*m8{AcQC z)lUnbYM<6-u`iCX*Ba!<+`apfZ`d;C^{JW~yUm-hDf2Z`0{!U|8c~@?iw5#%V z{_QMzjVQgTzu9=b{Ce(nN$j?uzQ$gyypn%KC4Ui(ml`iNUTDxh3ytT?&*z?RuI{Kj zlYd5iMtvGSAqr0xo+vzCc&zYf{t@+&>ciEC3J+-yRmSQMjyzDj-+Nzk#YSm|zN2xE zdQWwGVSDLr{qDwH>Rr`43wJixXQ;PV$&*8AR3B~JrruV)wQy_c7BBg2sNYz+QNJ;N zgL*^t`ucUH>-6jL*Q(c6r@b`fuTrn7ZmW@hhHN26-We)eYgZPp%wCz>B5kQmueHcs zE|FJ;=1Pm)CDJ98i)$AZFUnq&+aztOTv*#!+?d^{=NrT2Y3~c#`4i_3o-=vY@T`A@ ziFNsP>bmOM!o2koYHsK>=``uo!IK-bzrnx>^)>a?Y1+-8w$e+U5vqDY*K}=gnD#AD zj~O_sPCFH_!z<+JVDgaSA;qQR*<3a^FmjM~kapnU{*C<_`+E1OF0L+`>MQk?G85#F zAeSDaH3oWem{u03v4KdPdG&}oM(hQ254P_oefvR>7|_js`e>* z|Nnr^r)!_n@Bc6G{_)Jev0K=IOPc=w;P!0QXftByw{w5S|F_(p&F1sBbAQJFx7?o1 z=JU66f5!i}+@8(m^S5(<#{ak6p3Ua-w{w5S|F_(p&F1qra)0KA4>S)T0}9{;RKN%L zfdCK$LO>XZ08tc&9MHuJ+9DoyW0i6H` zx`1xL4R`<VH9hypPn4kUmiVK$#V2uT5HKm&S#4A2Mk1B(D@ zj9>%oKnLIeoPZ1H1US$IbOUa{1IT~^cmWmg0e&C=1c49`Cd}qDf{-W>1L8meNCG`T z3P=MQ&34(FAOR$S9v}sz0S)K{GC&{D4@i>)8(;@I00-a%TtFwlfi9pMa1&APMvUDIg7KKrfI1`T)jm zp#l(Q^Jznf9q0fYfD>>5od5^AfNsDIcmNqt056~dKEMwIfFKY8!axLw0x=*CB!DE) z1Ehd7pb=*C*^7`2&<8LtK>}=m9q0fYfD>>5od5^AfNsDIcmNqt056~dKEMwIfFKY8 z!axLw0x=*CBnY$lOd_NQNC9a;1A2iB&(FAOR$S9v}sz0X9sK02^QjIsgaY z1YAHTz=1BH8*l?2Kn4`R3#fn(@Dpb989+!72mxUrLg>sz@n;N(0|_7r^Z+R!4NQOI z&e0d|k&n_J)jlkKnEkN+L5Y0+HQq11ufN}Tul!!_z0r5G@761&ie70M+OC@A%6;})<<Z{dP3gq*z_Hyy%?926+uyq^nDkiX(fp(8>`r^^;mSk#ht!9vr9w$7)y9frS^70tdQg9`@j&^3+yl}B zmHYGetM^y$E0F)c+P%elv-j3_mUikp8#~H7ayv$6ci(H=UA{Yaw{&;quKe`xMeWYo z9mPAcchqk$-LBu>D3*)4qExJm=10}h>TQMFwA*U8vRf;+f1`&^lgnoxsWSJg$jB9qn&}b7Pe~BzcK4u zN?Y_TjVsDm+|c? z_0@HSb=tbxTDG=wM*a--jOyuy)3wuUxg!14tPhoj^r6OS<}!{#5nUR{Qjg zo{*(qv!ylqn#St#>fCB+b>;Yc8*BQjgM~qDuy!1qw_jiJ=>>4~rKS4P z#**@q+!AR?C7aKx+3G-HKpUtXTs$~?aQ&dtLHa?B1Iq{I4wMe89FRBc?L z-M6|=VIOUu+T!Bk?Be>O(jt9Pqrcpr>zDc~efd7MubL@jv`nqH*qiOGYbE-*-bk0z zx%B9Q75}8{^N}G4~Y~n6n#~#|_)1JPV$#a{k z<3^=z^ir1a(b)+brAT3pjHEs!O(1E;dok-SnYPL89ie9K8K-8JC#jh` z(ab(HbDF~DH?xp^G9SAixM+~9;RB!XfTp!h2!cM6Z z5lWHhLLCQC$9POO!`D4zGF&8GIQP&=73>l3PL1RQIY<^>K zN|KBrzs>vZ%}&*Y&^`(^H%5ShQ_|GD#t0%b4im=4=!S^|LXC~#MrabD#>Vg)Yuqag!UrT*cd*9W)Ny@3_n7h3&(~79bTi<36)YLyr|(AYS^)0 zY;+)L1W7xQR6)`xl6DQ{=}FD=vT+WK(5tD28QC1^*mG~|$S}Ri+VV`>)Pt=f?ew~K z%QL&^#ov~ZZ1mCAkpX&{w&j_9^nPv2$RNFU+cMHgFCn*#4AINUEh8OcFSd@1(aX#& z&+MajfLlh|ysx#6ROxl$mS;K#-fkVam|m=Id8TdXgVvEjdJ((jnQ3}KyJci(AcM#0 zGv5cyz0XGv3wV5XDyMG&{z2Mk`ZS%@zij2=Io+%QKb7od0On+0L62=`13Nig)yO}1k_vjunYTD;N1)I)=CmAmg z(Y;5fVAFUtNW-RU;Yr3cvAsv9Vbgdm(a5H`?Pk49;rndoLUYEm<9mbn!lv;Gmx0Z$g(n%)B=;VjflcG}u@5%87oKEH)3f*JKG-x~UHf6vz3?Ps zn$+H-sX=ht*yx)JcaV*Kxcbt!(n6q{#Sa$4a-Dt(Hm)BG_qK%bi}D?Z!s zx!Ee>vmKwCH7Y)L;B&J!#AgRSH%lTuca5A%tA=PjLvzuCZRjlKP0^-m4vn75(!y!6 zs01A>yytWlY#k%*`APXFxj&HpK>e}$BlU-BO`TMKU;Tml{qpaXf4BTQ1(CW;ZLFXN%7<2N5v0|9~9p&zE^y=P$^6l-YM)Vyj>vg z357QbujgOWU(LRvy{x{3dp_lIuB_8@{Q7gH=L*ki&#KQzPdA>dKT&(UN_TL|j}#xq zT^qGj9jiPz@;js78T*$0t?ZYB-yGU4?QVRXea%a&3@V@O{%DeXHx%9RLte63evmydeBbV!=^dln zr|ufOvvEi5c2*p?ZTOb4n|9x@=eqQ@LsyS(n;4n8(z|7F^T=i6mrP#7HVteX9v(Y? z_qlt{PM=lZP}-nxXsj=<&#lj{tFJAs)z>!8D4&759BQsQR5>kwTJBWo)W*r>li_tB zdt&{B+M42;!fI_bb|fgT%&o*e1kD`?ns+PI9aB6ef3!O5TcCVI?g;(x zhS+(axGcMD#*YB*Lr4RagUbiy4$=>798lZ8xPM_kZNK_HrG4~$8jH(|bBnb_wf5|nxocH?8tW1?InBOrqWOTr9Zs+hhKLMGI{#cE zAN+;*?LYk*_di>_C2^v7O9JE!lm%P8B{BC#({l6MhdR9_G5hNHzgTFVL^?hOazRC~ zmFC#-DuV6EnBHjmFAJHqWIDw_E+`AOk}-@`^V^5ZjbruyS!k{!H6H`H zpd#2x(=b-on6?=IwS~-jAp>#-DuV6En8xaVTgYq>G9YK5BG`_MX{@s2#T3h0y-0Va zkO4UZ6~T67Ok-8DkU2}pfSiGfU^_CVv1+rBIa|npoPmm9J2IxRYPXO%N63Jjfr?-| zGN!TGVIgy_kO4UZ6~T67Ok>qyA#*;NPBD-RdIVd^%)Na$>m;K2_TdWSSan)x4hv0? z9+(nk!B(1c^TP`BwcMoXve3+vj*o#{P!VjUIX6G7Fkj0%Eo3$d8IUtj5o|}sG(T_) znG1ys$Qh^zwj*PjAG$1LHVGM!Gf)w1N5(WibX&+=BxFF&Kt-?}8PojWwvf44$bg)I zieNi3ruo5RA#;h40XYK|!FFU!^Mh<5bE%L4IRh2Jc4SQRgJL0bIhjr|kPFI!tz-;i z)qE{qX`CNuA;0+7>aw(%)O-x&f{I`(O~Y68om3!o{pc>yZ`slq0#Xv zz59O#9sfY@|6fn<|Eu)>8}$DF3OasD@BUvyhfK$-^#1=K9p9sO|IehOajny~la34> zpI_s&t)t_gu6EkC(~+j*trafYs;g)(fNf6Ob#!>?c)dV-2GH>*BTn1Zbg)5}?Po_l zdh<72gY5R{_5b+&pP6ik0!{z^k62XU)l_Xg4CI0y!E4y148G>({Ts#ilmJ_|X2ofz z&bUev&a74$r=h5Y^5(>3qktmFx&t~E&>Zf1G%6q2+2I#v_P^s!LM7RuUvV$v6#BawO+zP^JY>@ zGms0)g3!G9D{2;+A!^LyPhEG)jHdY3sV^}WG-)Avs}Kb_0~NtmqPVKeh?>53nnimo zL`Q`v$Qh^zwj*k~e(Fn&B~4j~-cCX(2691Juqk>)%O*YkDnDS;ndS}XU?=KMyPJ`Ris&n-Yp6Wat6wRtwg8$E{U!+YnpZw?X}Rn zhje-v$OS!u(7cic>b!q5Lv+Z{bwx2vyCY^SBzFo)kTcLD2+3{ajdI?l z{OSR-sBRo9i!4OPgeb@vs0g+pnl+1>ZdNU}5PgV*QVisRvLHmSVplIH=}hgOu~s*0 zntlN9W1;y7sihgn1r@uZ8GiqM#sWpezW{%hV7hMaZ=v~=&;&UHWkL9ux{$``ynoZ0Ygeo| zeTi_cBSb*XK#!oc zi0K#7K^7vHl`Vd}N6113$tvKzJC1$V72V1B-CsaVrKv}R26_eNH0SlGq zg$l?SC<|Jvn7uA%EmX#Z3dk8K3$~$R^18glLgfXroMIpslm*-9)w5fZ;aa!c^wn^w zh31Q-rZA8Tx&`5_c*$P8E}J{`Ar=}h2@Q}l&@I^1Xzg`*iK$O7v(R{1Xn>r7Zo#I; z!ahCY*?EcSC;y=q8n2LDF9W%tN6>n3E)iSAPXF*a%tGWG?Q0GmG{;e~dIX^uAi<~Y(q z@=X%+F^~%?f~_Q*ce0w2%~{$wh5v?se@OQLR*)~ipPlEl-9Sfxj){|wT~5E(>GO~dwR3z@ft49FR%2(}|*8o9?<$m|j_ zAZMT=*p7_pX5FzCGVcf(kTXybY)8g)v+g(xnF%2S(rd#)25d*hbhB>ILZ%{QK+Zr# zupJrG%{tve=3OBJat11b?Z}vJtS`5ad7n)8Fpvv+1e^B+zj|H`FxpOg-Zw_meSsAg zk{^(m%0MnC3$~JMe$RsB1*WfzD=kz$6e=KRpe)#iifN#(vQYU*sDPY-vS1r3rg3__ zh04c51>_8r1=~iPqk2~3KftuP!?=M#WX}uvrze_Pysmu zWx+O7Oha_YLgfpg0+Me|p#rv{Vj7}33zaX03dk8K3$~$R8ltCLsC-MPfSiG{U>ho? zA$o>|%D06I$QdXLwxMDgqH8TwzDt&q4CI1t!K>MIY~xqlc)`ysKU=$Dx#`)(a?_pB zbry=hLt0)2azT$^E5+vTAt;)zq3bO~epiTqoPi!eYZ24<++ZQ{dqM={4D<+Eii`M1Eh0 zfSiFIL2D7y&^*^dWKxKLoPi!eYZ24PJkLVphh#X(KrZMOgveEU8JTC8N2cld!TA=7 zKO!wJ1G%6_5Q@03KJVZ34bin5hR!gJ%nK|;ek?>l&Onc#wFr$&@69tl%Z4pP{(uZC z4CI1t!Dihpbnnx=d9-%J8B721SbFAvK0U9eqjI3jb~63u|Lb#UKYu!sbbNdctplLr zpU!sLcF+;t&tQrKdiKAJjvvso|4Z=vpN{JjL!VUX_y66$p8Ng3 z*!v67B*uGDd5e1aiKrKlGte#AtQX-E&e+JKv-M&c<{K?E{!nOuoPln^rp7X(ef&MA zVH)KZT4?-{&;U6D-GWUGaofzOGpAu1D-Gb1_?`4eZ<}t1tAJ<)Mq4-nM@-mPMdIX_(3A=DXsb;Ret5>WVK;-njrb{eD z{*=rs4CI1t!Dg|99iz}}^XLQO-tn}?r4|}L6B;0Apj)u1(dr)b+6{VE+!~nHxXeQ1 z&x8iZ8R!;lYAn3PFf&|q)9vBQEi|Tt21t9A2@SBR(R!-Vml|C-Znn^<3k{Gn&@I^1 zXg%!pL&R{MuB$67H2z#@fSiGD!KOy*VXrSU-sRq6q45_&1LO>J3pO=c4}1O4!wh}* zN(+s@B)drlazVEsG&b#JNSYV(EH^#O-fE%vSEQvdkPEs6n~JSR%SzK#cf>;DuZ0H4 z8R!;lYP23LD@|XA3lq)hO<#tu zve5WDp#gFRx&@mWtw+mB(?#-X3yr@Q8X#w&Td=9odbF%GT_mru(D(nt>WPIi+F4{0e3~(m<3gcJGn=CZ`ne2KQ$OS!u(DkS53(0>M095O79#&oh=81d9zkmn)7QScEJS`SL_p3!kD#@P>3iSZ79#&GL_p3!kD#?k z^NZj79^c~g=k%L@10BDh-~9K}u@4G=DjT(-OEcYiNE_x~FG?mv@`e>uTv z8>8a@IzHXUWm~_7&Ry-aJwV5PbbR}Gr)?u0zh33EJw?Yp{Vv;=E6Hyl9sjk$X?uc> zL+F@X?zCM&hwF5w?NQBT%j!ftOEze#qUiZ@Pxrw-}Xv=HH$Pc1~H7 z@G(Lon|4Kco}7b}Ptxu=V^7h3ZllkzsAHbW1;_0#r2(FC%~)Av!eSKcGG@Iy;PWJ zdVmTLMgfu&RD~&2Vdog>M@8!nE;2Tt*-~;$Y|u2*^yWz0ps8P&Bk4U-bJJtv_Gku~ z(vYc+LCRD})G9KSMy6C`Dkhq5ex{5q#F|c}<}ziB?4F+~VepuY=*CesU2=O8j+$3#t@J1?g2o7EF*-&_+_h@MMt%qv?BC zuy4;pEa>z;!h$gp4R(-dP@Q;_1(OrISTOE=pU$NnHK@!PBS#)Pkw*{m*o!=-kw*!6j3bZf`FWgkKoy&x$GIq% z_x4$TZfI7T@WXtF@)$xM?Z{&gdF-d_Q#eD{r?4M+?4b!i+)LM|Z~%GKCMl2obZH9r z)1@iwKprE=V~Fx-Y`_`UaU|6%8c73G})cdYz13mqD*fQLhWaTZXZRxoEl!_mIJ` zLenMHHq}vJh>ESD1%jfN80WRu$zk#I?q5_6uW_<8N5zd(r8x@DIt(4C6InM~t93>`XdXk!m9 zDswg0fsb=1!uJNbZ-vu4+ReH-kBWWT7{euac>0^jSEcCMJ^fAOt0E(#XR!`438#6@ z>ld7fxVmTqx{+xW>VE<9IvGk2&5F#6PBy(zK2LV$#lQ;)`2-xHufRD&rs>T^`kFkK z>4hoWbD3Tk2~Qz2TL@1(<@1xpgu1}u^uCePiR1-F&G7*;;-!7UXSUrF6&$3%>0Otn z&4ds#-82-0`k@R>?^8UTrVIJ;F3eAJ1M%rZo`v}_#kbosd#mMEbv0eqq3;d-?$CFo z@7BLvr9Jp^Ukp`;z9D_1_BHnTz^C<33Lj5?IPgLJ{W9&nH!(4_tF%jcTYXD=bL92n zYo%99ujsEdUM|0!ds%w9@>2dK^`+{Ig%`CKYcCXE$i7f7m&)bwJJ@I%ZmQi_yfJ%Y{f5#F z`VEci%h%_wm#(i|m%pxX?e43+j=p&7-<*m7`($>nA`76~ct6K_N zv@O{yMlYYdw0LRu()uN(OY}<`7nd*2T`XN(xhQ{;dQo*#VUxD0c46_t?1lA>_59GV zG+enLe}Q^I_58y5+WEEfisxm|tDjpsS3kFLPWhbD+4|Xyv!t^sXXa=9?$y>8*Jsz) z*Ok`k>l$L8zuXzp8I{xXr>mz|bA_Cis|^*0vP1RLN~h_kHBQw|Eu5mAQaibLa`xo< zN!b6dabo$z+=_q!ss~mNsO&#Qe)le*dR$ zVX5p*;%(F02=|@ zu~)7gd)wNv8Lb_=$J()}s~x+r+Och_9s8Wx`vEpZkN_KCCr}PM@V5hS0xqBv;6NA9 z4Y&ahAOi~E1ysNX_<;Zr1VR9u9@-;76o>(FAOR$S9v}sz0S)K{G6c$DAO2>02ohie z>_7+L0Gxme=ma>>1#|;$zyrvD0(b!xfV)Gx9|!!KnCao`T@yHumN_U18@LNzy)*y9OweN0XN_QWIzGD zfC~5kKM(+dK!`v&4CC(z5CvjD97q63pa)0+X+Q&dfeg?G^aG0kHbjsB8(;@I00-a% zTtFwlfi9pMa04Dd1{4D2(2KuSzz6t&01yO1Kp2PsQ6L7yfdr5QdVmy=1~i}-$N+sn zKOl_|Y=9l;033i5Z~>hF2f7H9!*2ZT20VZaD1aAG0UzK80zeQ50bw8lM1dF(2NFOM z=mAnd8qk1VAOrLP{lFqX8Y9>MJJ3O(96Io~6L0~Y00+8&ZomzA0Nfd~D}WckuMN8o z@B;xL2!sIK!m>vI{5Z4Y*O5IAB!DE)1Ehd7paH!=2IwPD4*T&pn;=Ml4X^_pfCF#> zE}#?OKo`&rxB(9!0}9{;RKN%LfdCK$LO>XZ08t5#Yd(u2BRyFr;e~0geml8b!d5C%Q%v;JA>k zQ3N3LKol#LO=rO1#IaPs91mu1b`Tj2BaZ^3rGx|NM``{ zVFCvfAPB?(4X}+6Isq9705Kp9NTUQ7-~s$V6i5MVg5U()fDecOJwPAem?U%qDi8*e zKnCd8L+Ap$KnO?xy#TWlCO*i2pngz&zwo~He(k;Dd)fEu@0Q-x-)&UNm0U%tR3`Eh z>O}RO!aLeKwOz$s*_-eX9Os=}G;`#uMcya!*K4R36ViuF|gX zg~znVYL5;ZeESt2&OTg!sPvHjP@_~Xcb#-y<=Up-_`)^XHMOgYS7)!TUsbwFzpAmVye+p)+Eyv#3u>V{QW()jYFmf5 zs#~j97OvE;tZgZ7$!@7%QMy9EqOrNWIk#EbT)8}dxq5l^vchHBv|su8zkmnZ^z$cO zP&q$;zIuN3yux|fd9`zk=Vs5XpHn&~ea__B#j~?#*Uu`QrJvO}vwUXmOzF(ZhWrL~ zLv?*&y|%u#uDH&)1HSo}G0Rnk@GE!t)EglMLz{Qv~Do z^~PX%FgGX-R*uUbXWT_Ud(7^m3rA~5*N!S4l_kITr6ctt8%JP2ed&nG;rYYW!>flC z4$}^+9a=mzduV-GX_>yPaY*@)+#%8-m8JQm>eBJw!slOczwCbXeM|f5`!@C&-6y+G zeQ{~AzPPcdyePLwT2$%J_pANYzCxeYSIZPL*-X8+)T{S4w6d1dBn>hA|_dg33?2y0$OA;j50a6rg%7u{SB3D8rRcsZ4l5DvXmU|^s zTxFSX?6wTW*9M_Yxufaw)_mcbDXHiEx)oa(B5zxFnY=N$&Z42Bd^#@gjH6 z@1Ni6pa8dCMqdb2+5r`P^W zUA!(-m#t0IhHG=aq%Y#ru=Zb1O|ClmC;YxoyJD`OD^nS-3{_?;5*2|1Uj7q$SkF0= z&WKZUrplw`W_h|SR#xcmKU|V?Bpnfl=16H#&D7E&hF|zk+*R83CH($>L&HOL>TlmX ztv;Gi-kW1OI1X$1Yv^BoA|U{!=KQ)qe3Q(V-7ZOwu%eTWiU%2D*LH3vRGBkC9s96~=^*%;v14^#|%gs!-8z&DPrGWW!n(IGhS6`Z#B zD+d!{x!#ujIBbj@&c@_?8ZC!|fg|TQ(mHU_!F~xgUDgg=BK#%$FBATTo~wkvJTNT$ zmBX8azh-QU@cT!v6MoOW8-?E-*)II``)@;#{r3pJckDjlFB^M6_}!xq34is#W5VA$ z@wo8UjXWv*RYOnVt9VBEjp65nU)#SE`v!Ikzi;nL!r$EUitsm%>_OmtuOX_yIKmCQ zCH$_DPlUhL`za#b|9Me*?WC<+XzL2v+Cy9WY3nB1 zx|+83(bmnhwWO`9X=|Of_R`k1v~?S8-AG&eXzMoGx|+5wqpf|kwV$>Q($-D1bpvf( zLt9tT))fP=u!k0|p@nN{VS^TKq=ieo(=0sMF~L-nO}B8tv5M&yE;#0$ZsCGs4bv@L zaLm2en#~I>S`Twg^^)+~8fm#UTF#*5{Ir~#mh;hajkKJ$50(qiat*YcqZ^iMpuL)D zFEIdnHPc?Lv{yatRY!Z(&^Ar9P383TPjv-A-!nb^1;>2T(_e6`ndvB4y{DDw5aMz2Ececd z!!p0S@QxWX&pOaIU8Syhwg81OxMmAbXz|L~0uNRwD64lNbui88D>hS#JDgk8wBy=aR-&w1<$J`6{&fHF4nC3V!158)YK$}>Cg zZ@E!;`EnvEoC}TMR0czAX5a!0tk@5fjci2UIv$R`dOQ(*rFbIx8u3I#FFU&AU3en; ze0U;a5XE&EXMw8CSB3fz{q5+cZ$RblE8Tk+0;7ianW*7?<*4C(25NX;GSE`?_mtd z1W-NpKF;m_09U#fXv0gN&x4mfpY(pjO9T89KqFrId>*{|`0DWL<1_H;<8$G`>@)FT z_SN9Q?5i04G6z8co}sT$2r$G~h0l#D-B&*{PxCpZp4i)P2Mf(!I`!C?en3t=tEM0D zOg*TkAE=*tN>4vfGxa7q{Xq59+tKs`?Ne{4(+`v&;}nd`@iNmmm}xX-8f^%friGbC zXQpXorl|=$AgVlpheXxX|LP0AS4|yapLXig=%?nV=}%&x1V71q9RE1^QRE}-qtu7d z56utLAH+Tgevo-T{(k8F?0bp#!tdqYO}-m>S9>@0|4BPX>ZRyQ=1b|_vE9MlnHS?P zhF;9>O6&^n%Ds?$A@TxOvWq@%KA%p;lEGwVEIt+*%kE6<4DZZ6mwYbroc3Jm+32(8 zv*~AI&jg>zJRN^J^mO*A#8cs?ayybcB0IDlsVAdPnop*mh&>T}BJ+6s@zCSh#}bc) zAIm+Od^GZ?_Gs#nXhH9LW;8w;c~E9tRT_3zY zb6xzp&~@2s6W4~X&23F?jcnDnrnW@4m|N1DW1EAUGn=xpL@XQ|pLS;wABhi#-{1G{ zz&m^2?tW`*-1}zwjo2H(H!`osUk|;WeJ$}?__f@t$yXz7B8i!JV1s;?ISi%RZZUHvDYvndCE(XS8QhPe-3NpH4p&dn));W=DKSXovP> z?D5E>nTO*KM@FL$CLS>F58T^*cknLr&gAWh+v2yHadFH3ZToJVxPI@o<6FX;2Vz6l z3|}>J#VFSM8^37p#);_O^T*E}JA3rZku!$ZkE|Vygd^dB9QyaWS7lcwR)$yR(68UU zVtCnjf3)B1Pxr<8f_<6ZcyFjTyCktByd)P+;uH=2`_Ue=Cw)rnl-SARC+3LAAzTXhF6s(G~8>9hy8e za%kj`(fJeeyzK+Q(bkFPcyp*Z+r$<9a*fHxNTb%6YKS(N4e9z=eXu^`kNZRZY+a%* zT$ig&)<$YIwbGyIOV`9|f;E}ycy*{cTa~DaoBKRHM$SFp;%a}SQ{_DKHC;{We1n>iF(DSeTWQqiqAmsd8<)A9*=Qd~6Uyis|KUt;kj ze7B7zTKl0%N<~9)E=@XPn$)y7jJImuW20FLHIE>rqDzsQi{|uyx~_MTWj5`-HX3D0 zgOq}FDdsiioK4%i$TFMuJ{yg4r9nzTx)k#obIzviU9_-pe&GE!8cwA_Na$BRuW_v9 z4176gE6Z%!gpGz9vG)m5DjJH^xLRzPp;1sKE$b;Pv3U1>*hbTU+6jV`iY~=`x-Ole z$(fay!P~p&GZY`OQS?B|BS@*}Qp_tJH>+Y96^~Q%?I&~Hqc$2|r9nzTx)k#oi|5u@ ztZIl!jmK;>OvLLIq*Qb(<~3&4G?TMyQPXr6Rs)aQh*Tr`RzXTdLy;o0O|YKI61{_q zEY8<^EzZ}Uu+gkh2_vN--HOBFI&l>$>S=$IzJ>ig~B#GgHERpxnsgo~WafS^60p6-;x33Mmy0#UfNJZseb}QE5;rq!gr~Xs=>* zBmbO@N~2OCr63K(B2+AHA^F|RSRa?4M+hlb@f>UkTDfYKnPAYF=ijk#WW3JaIXjopOcG+mOAzo9EQqfSn5RdHHe6!`tX5YF2+>yev`J#ffN=vnH#umu*Bk5q+y5rJ|u&M8Q0;_$$|U=v`Ro!0Qzo%|leeNGV9SqJ6^p3Ll(% zY(&sT3hR+l(XD9zxali=aK36I(uL?vK}tnK(Z2HR!^;htizn~VYc?tilnN;YX(-O2 z^6w9pIUc^c+;KSk0DKMe|JSW@I(~)u|M$V?f5(;Oj?cs2|Jm>X@VisX9gko;65B^B zoR0PI|Mx5S{ksQSJGM{HD0iHR?Kh{FJ08N;2><`@t}k~C!VkbNG5>$tJf}m4@Bdwx z|KEe{hnW9=J+>NbPnQL={m@)DS+RmZ&5AL_N_!G!jijGtok{5&JxX6AeTo(L^*8Ekr93 zAc902(N4@GI)DRq)P}LgL6i`sL>W;|I0>DQLIgqkPc#4ruCtMQnuunig=i%LM387B+KG8Y2O-7*jc^bp zL@7~5loL)uCnQlpR1z-2O&ElS@De6bMN|_tz=7-ZaZfE#NBD_)qJd~6nuunig=i%L zM387B+KG8Y2cb;>4x)r8CCZ3$!b#|aBr1qX!bP|VgYWNIT~4VG_vGqWXaLUlB1C&M8TIVM?h zOtR#dWXUnfl4Fu3$0SRRNtPUwEIB4wa!j)1m}JQ@$&zD|CC4O7j!BjrlPozVS#nJB zf$QYhWT_DjqJ$_V%7}8pN$7+mDu_zLMYsur@DN_YB&vvNqK5DhwL~4^C+dj?qLFAK znu*eVeL^pFl1?}2t|RN}Nx1R=gIb_p=34?sZOFrf&pKTy_wvxL7pbQf2{Qj~wfsYQNlqe@8 zQ9)D^F2YS1goiMRDx#Y35w%1e;V0^eMxu#mCR&JAB0vO*HbU$JG{QlY5T!&JQBF7s zosdKYQAxN6H(?MSq6CrZua=RoJIOb7%6R$l{TlM)2J#DDgx3GYb{EBvCB{OIDx7K03! zWP1%c-%obcgIFdGA3xDR=^#q@eQz20g>vq25<0(s*&zSCiu`sBnW-heQwPd=e*CKj zer)2$?>F;fD?k2F8wY<>LhdUg|ISJNM3O(PB!BKE|H%NQmmmM7iu_d#nX4s#?I(ZR zK>p4(u?nLau6N@8cQlfBHIw(Wkq?Uf;HZOqxRiX&vhTK(8zG8~iLjPhFh{_SDAsV^!o6Y36WdQu4i~O-cW<8)Z zi7KLos3q!%2BMh=5bcDc2Ph+SqJnS{24NC4L>79zMA~0kNmlx z{O5X5HuB>yoA|MXA9Jnz805#_O#P2<-uF}QMc>ojOQ|09F&91dd=Rq*BFWrXVl0HY z0_^EcKNm$WdJ_G-*=ORa51sP_*vo5ThI$0E1QJh%pUgdxcp~&f_VI-3KaW2ad@TKF zRP~-m9?>32J{);idpMPdCd@>7G&UL>%{&x;DD+VF!Nh~%2XhZ3ABa4VMUQ&${`7sZ z`^@`NMa~b1+^*f8ye)iN_SX2VA@se+;$}QO5*rDQWNwMy61pY3J+VE!J$G~R=E%+3 z&8cls+gb1Cb?Iwk*9Nc6Y>jUXZOv{;Yzc44ZB9E(l+cizcIys1{8PMTg9x z^!c&#gXd??6X&JQjh<_sn?5IYPVk(}*&}C%&d#2dpCg|qgdw)@BD2 zgWr3@Ud(GbT zlGu{ql1w-r4u!KliJovz?v&&ykyA!a4xOAmDRENxq}++g6C)>TC#Ft_o?xDkK0bDQ z@c7K)_~Ovw>~V?X!qev6r;m;u9XvX-NKDQHNH2^n3@*%s;-OF|+nwkRcjt~w9vL}O zJ2G`d^a%5a^x?6?gNJ7hiysy`EW04FAiN;gmF$XijT{;}GxO-s>9W}s$^B9N~=nlQPVWj-k3M&&3NLTkSB}LWMTC6C*2XZ=1#eyF4L8+j8z6J zGZpcQP(@ZIWLW0(q#n^VJ>`r#O=r41Rvs+Rl*P+JW!ch1X}C03k}QdoXeB8})L}Z( zT1*RS8N8nMeB6EJSJD6f`N`k^Y&q@R`y2J*I&!cfzAseR-2b{w%gAAfq)L!d(W5v= z%ZOSoTIZ^9|TT3gsZ`=*V|5lV)Xg7hfb%Y?hv7Pc$m znW_Hf>Y_bT$&gZz9>pSLLTd|K7E?AdAw=CONU3Nj7SXcUH#J;CwJcgzw|mP*b0O5c zf|QDG#r$fh>W1enljmfY9M(g&w)wwpBXX1yA*CSQiuNLwM*q**h%7?H9zjY)m*T}} zD!+Kn2Ii#$OBWUP$h~8uaWrE03Q{V%6{!(Lx9POMNoy?~2xIgFk4-jSzH1|Lj1nQG zAl-@-xd^T0)BX;K^slvyo_NnjwRRSc_P$IK}tnKk!yi164%VIUjBiAF6K4;mSIgF+o+tRR7fdE zL$L@IOX2*)M&)FsLP|jzibbec`s6;fQ8`7akW!F_Vi78qUb)ZPsPrfmQVP;gEJDRn zK=<0Hgp~>@1!*W2p<)@}l(tb>f|$L6l!|UeI-|dI&T624^>PexD#*xRuo3A+^rj%C zqM^7&T#0Nvv)0UKQ#0QYuy|Zo=)k2u7XuH-h=`Bc)=nx4-bQ_Ej5+6^Psvq*OE%nT*Y1 z>of&1`F`8KVeR^Lmd@<2*{GbVR7fdEL$L@IOK0|<*{GbRR7fdELy_j1J1v8~OiN+8 z`MQnDN~JP^dTbs?u6mcD`w&GoW-xDM+tkQ973A+qZ0VB1(spg7hjDrDJ)* zecMK7Q0b6TkY2^2bS%%f2^*cYN{5t!^eQsz&3%6cd-M0F@ONUyMrWPUA*CR_ibd(5 zz>Xdm5bzf^I_s4VDFx|O+$7{FrH8j{D0U^UiTPK1JXE25kR& zdAZ|$Y=<6S?)Wl%|3|U?VguF(K)-)*1I7bj-M{tNeuXvv?!nfM?Gvo~x1!(a_{ln~ z5s0k;+dFH^9Rt{Yfj_5T8zI5$*(*4Lav;?dHA z`TqlZL~rI5RX}QbuH@ADcFc!MsHtxf6W=)X?Oyr<$j^y%&*d-Qt z#fy;Y2IRzUTH$3}$S_dTvj<=Iy($(6?;D7q`%PG8Acb%PZzIyt&xr-?d*4AKdcOCk zT%k7b(?2D+f8;lRO7O-Bjk7L`z46UM-ajRH<=*B$CAe?+V&O{|2V9R&<~U@yvi+Be zE*~;!myWF0vdHi>vegM^}2k>dR>jkdR@)PdR-1=y)GSDugin1*Hw$G*X2jn>uN&Q>k{4fh^`i7 zy{=YdJw*DT=yD_Lbvcpsx?IS5U6sgsT{<#US0yr3mlqkT%ZUutrHwp`NRgqsnvtQp zDv_bOB=S<1iM-V1LSE{sKwd(!UPjEwOGxS-d_`XB(vX+BJjhF32J%u@1@cl?5P7Lf z+xHGG5*DkUoI8BbTIIA>Ev+SKEjO*@qqRJ=mZY`HX{`XQRYPm}X{}~jtBKaqXsvQu ztCH68(pt5&Ruiq<i=KT9VfC(pq)2Rz0oNOlxVhRx7O)ptYK4ErZt5X)QOc<)XDD zt>vP%Oj=8)wH&mTm)2^bwOq7T1+7&@Yq@EyN?OZJYc#TvrI_qJvPCqQx**pq3V6jdoEY|6Q#X75Cu}(iM*4Y4ybp{52vQfY_ z4pdJ7^)OavGitTYMi{HJ3C2Qv4~otT7^_oMVtcI!j@q&KA^Ao#n7e zr-V5=oiInIggH7rFb9&b2Y@*`Tlc>XwVpR2?oHwPV3W?4p0_#5@DtJL9R*suKeg5u zbK9q>r|6)~1H}g&DmrM(Xz@YEiw@d4QGC#SMF$P+FFvUFe6hEnA+WdDp#Jf6u|Z2l zzgTS0hT$(48?<)xR$*?#BznvH1Ik$=s)>#YR0JIc%63N;imT-j#2h%=c^X#U=qN=& z?vSG&iVhv68S(F&5x*bhxI;%d?r20g?g*e9cQ{dwJ1S6)J4#WGJ2aHzjz*N@j%t+S z4nN9qM;*#>M-$3%hlX<8QI2xlQHgTgVWJ#&)O7>(D90VG13>90P&p1%O#ptByC_y>yXhu2iC__2!&{2*%%2AFx zbd=)`1LYV=*aM&(ceJ1!cT}PrceJ7$cW5Zb9nC1m9VIBo9gVY<%h?RmG%!n^oHgKV zWpcKF&7(!e*gRfjz?O+(1I|_!XS>GM{YA#uI$JrMEynuUO5v;lXDfrV1$4|-0%r?Y zKU?{mH6WgyCf?LdcGChXb z4EU$mZuCpxFXg_N{9@#b+80w_hACgE^^x`3`qaAUI&)omZES6DZDue&7#hq*5}3)K z8%PdB2BNFY)#+9C-ui>fGt1)3Ld&xMOMisf6aS~42>+)e5VWr7A;TRbZKJJYP2=@@ zYh$&++Keym3;D7&iJGvDf50(U04)_?dg$^$bM}b!C57|pi6QVPz^A+D79X#NH}Msc0x}g$5^4P5VKoF2${?SA9;6fqu&}vVUWvF{Cs|DM**%g~$S%=1fQ5nnB9|o*&w1L=mqcNU2z< zcrp5ELUZ=iEbR|1;;ot-fbh3A5*HwHuOOwOTXCzn5Xrb`+AW{zwqM^j*l+1V`H_vt zMnvxsq*Qb%Zc#k|bKQ@18+t>9wc3wuG%i#cq!gq}anomN3__!@M%!njaWUd;6{J)& z6pJX7)_J;%3kzk|M)MM=c?BsI-HNo`1!AV7gGmPg8Ij5mE}$tw?*#Ei$+PB85fsr#2#2B4SgJQqfS%7tPD&vRB{W3TxT? znT^U-N`;hyG!*k?b1oH>O{f%>&Y#<;T&+|{DM&*xUpnVfLFt4_Vfp+=8~$|{Y}1RtY5oit)+zi(ne&f z5+S7^-HLn#xN4TibG{l_KY&-6!V>x`8?UKR41LF^rm$Kg8!Xo->8_jJ>lf<%9Al8@y=hDpo5K)>IFJ)HE-`HqwSDK_0 zq@h@Zro|^xZ(m_Le`}+OpBkcBkW$g5n15i*{+d-S@Gf`2v}#1L#sAyC*(k=LWeQR% z8j5o%PF8+Yvz7Q@LaF+2sxc+bd_4J9;q&;BPVS|2k|X@B#2F`u~r`mO9^ z2>Sm=9pa{*^^IS54vF6t_WzH6OMHLttLpOGM^>>79xZj~8C&i=T6x7?PWQFWqqyiN zTJ1f1&l7chhQ!VU0#zJ1P~UyFaKas~3KhWevCiE_BHxs#+~PLv#}cwGFP4xkn}EMs zGk_&zTe-@t>bF!uni<5+Amt2F#UL#VqI?glAT11HFo=^usu`r2L6qNP6{M9xJPe{U zNDYIOU@6wJ=kx2VT0HL7j~$}bb2_y1UNn++SdKYxQhfshaKc^5^D1R(!kwCGr>4%y z{Sizq99V~mTjN0KK0qf*z2{(p*y#C~AV#zjC4qIKl#bY8$5MPQL%Q&>1;w9*J3dlY`<=S|1Tt_7uN1Nq7<-Y%UTolfpB~$}qKHv%) z@zx_=7cY;os5{Y!5CvXoJMgt|(ck&_KIN7k=lf@z-^BALBSe6@83CFZVAA6?0@Th3 z(82(deyI_lm0u_QQR8cXUnjj$<7<##Cw)=lYdgPAb`Im~Jbn!xu%crGsaKAlC->!t z#CUKCO=9FQt*Hb7Jni}L`C|r;b-?gVZHx=$iI(C(nhG4L4dO^`J&#N+XNx0}M*=*e zA->9lWfkK}9IS7{!TK^BWbQZ^rHd!F^Tcu*c8$uCv~W!^TvTzq*x+(P8ff_Sf}nK*zo~U${BHR_#Z!aer`(b8Ah`EH!0M zM3_}WKt0N!*+lq;06$Sab~=I(F2X}-<7Wu7geW5_2p6GuZxCiBVGt%!4}G(da0CF~ zFi=O-6OBYO(MkjfZ4@XW$_OVRiAusvXyVX=>t)jf0z0P44!@)A300U%X;V+FR>t~y zNB(}}sJ^#JV-a>B!&acM5970(T3h-+H;+W9My&P1OnG2u#dxjeW^C-l*=cN_$_4oV zl&(aGnS)QN5Sd3pWgF_W_L+J-vl?NVErQ%zgT3bV&pOXH>v=Bht%l$BnOca{je|4N zrsK+09#_`FdGPO!t1av*!>JWG)y<~^dx3V$8hhnzu}fMmUm5R!-* zS6<~OYXTiR-3M=6DYbXQ7W6Sc>wRNPWe7FXj$Z8bwd2n5Q9k2-=PMo)VS?5>pbBO= z_SexR{wz5qf2MPeGYzWVi$}&wvuWaDJqXY`O%l5uJWutr&2e7I?B~^tAEG&fxNEpW z1@&7acDolA?4TbLl!^oQ0g?uu@6`eUt6cy+_U}4S%P1?jvAdFY{+_9bXl;X0-(w9) z_bJRgg_q#u>qC&Q4|JMhxtJ;*DnUH;)je34fX{hmk>P{qQ^-AZq3}+Xx4hL|*kvB5 zQW>a{dk)m8+*83l2dYx;k=%1&bq4Oyu}40yUhj5T6`TxfQP8j+LRo{+fcwI-Re=kI zwecx}yoF~9qH`cf<3c`u@TE+xpD-2D60RJFY9`N}3SPDEY*D6`R$!4=G1OvLbv@BU zv=9M86X%HP5~7T75*37-n9Qux@)nb8n<=MNhU)Imkx?s<`l;MKO^TMV%f_=Q&5^Y$ zRE?7_yEB#M$oTnuG9&vhoXWwt#?LGYeB@h;$sC0PLV2y(OG*B)GX5;(W$J2p{Iko> zf$N!8x;~>!6`oR`!Vu4&svL(_IYSx-kjY+H{nDj^MQU&VbgSB0=1K*-E`W1gTV;SRfVt|Z0<99$J3B(r*cMSz2A113t-B_W3pzd!kx zV}FkR|IFm?|5h|}%oo2^zx^kB^8VeXmE<;@VhU0!8j3}lNL#OUAKsNAJgNGV7|u?Q85 zXZb(asNAhoNGV7|u?Q85Z}~sksN9Q~TLdW;-HM#qIh$iww%*o=H8cE(TU^Wkw~gd| z5HkfS6%EC?B=b#-O48EAD3;}00SEH`9pIE>{`-{*DFtaL7NKJ40o80&9#ATz6r`b8 zgo>qzI&4%PR4Swtq@h@ZilvB_*r+_DR7fdEL$L@IOA#%#Q5jV#q!gr~ScHnDh?d!? zB$Ns%1!*W2p<*ebLa=A!Z6v zDjJG&Nggbsy_OhIc|oa=QjmsX5h|7QX!=v4aFi5u{XfE6$~Iu!vf`bM;yL{x{f2z5+2*kW$f5oJ;ax z5$&@S(MB7UJxYa?f;1G1P_Y!zCL5Jkl?o{ZX($$~!>D48V`j z_kTUMDr~P|48T%s`_TV?BR1zTPDc_x08YU6mlvYnADhJX!p3sPN!b4Sf^x@&3!RQX zM#~*fVq1vq8$;!ei?Io8`U5ZB`3>ig7%wlF|L@%{{#ncW|EG`i{t@-FW$C|b_@e&@ zou%vlNpI=;f6-mK{(JgM*Z)9=>G~h(FVsS*PZm8uIqH3t}E~9dIjC5>y`AMuDj?sU3b%Sx^B>Qy6&Oxblpqm>AKlK zR?&UBUQPe$dJP?@>ppr=*K6rQU9Y1L^~rQB^9Q-Bp3ciQw{t*#$R=jwVF zy{qdBIG#X1jDFSi!`Zs2A3@LR`jK?4u6NV7x*no)b$ub5V)diwUR_^A|LXeDY}eF} zp@((-Sh`rBO2%3>~6oetRbGw6YRDj6H-iCsUF zuGsan=!;!Ho6gwvbLfp-KbP*<_4DYDT|b`=+4UiMWY?o~$*x~OpX~ZZI%U@{q*r$R zBD!VQFQ#91{SrE6*Ds}KcKtHCX4fyLZ+86(I%n6fq*r$RD!OIYuclvi{Te!E*N5qu zU60W#8K-$&o=`u%j;u0KGp?fQds+pa%EzwP=c9k=TVdT!Srrt5b75&CY| zAEonl{V{rP*B__*cKr$ZZ=XuWll0@R@1P@h{V95K*Po^v_ckYDkUU#%s-R!9DspZt0~`R5JfHyX)r zHj&?ICcoW6PPCGl0Qna|@;hzhcf|nsmm2w34)U){z^P<>uavvKUq=3*octRn`9q!j zTS@+?g8XqMxz9yr-Q?dH@e_liWqmTTjTJoRk$Y1!$f2k*b z*+BlPk=)NooqDdB{MQ!p*RAAl0_1PS5cqGLLaqOf4iTo3@$V(v^&j*BqyHz}ap?a= zHxv5ro#Y>M@{f}I?+Vbl9DSJhqPa+in=CQNQV&_?CCg3HSw-sAq^uz;d}L)U>8c~$ ze$uEXJq@I{ku;mgs%Emfg{)~MeE|}~Yrr}OIGK*+{u1u0FC`nw$i{NA$w@ZrWQ!zQ zE66}48FZ0tZnE7V=XuBuFFD^NJFCb;s>wrZ$Sxnbpq4zWjy&8?9#Kyo*+6zTlA$JY zVKaGD3%RJ3JUT!g6C{sq1E-R4TswCyo<|%S8Y9O~Yk~cSz+ndQ-TF8-BG9Dmr4U)IDk+-*#cg!R2>>%%&Pu?x| zg7;|Ty$ zK2=3NT}?hyLq6*xpQ|Nz){$d=GFeYP-$1_5NbYJPUu-6Kw~#Njk}n6ySAyi8HuBYW z^0j&7>mB49VjuXXMvgnkR0;W3DfxC8`MGlP9Vhv&PQE9>sbsug!CfCzk{`OrkKE+P z2KkAH{M1W+-X!-{k?Csk3pL~yedL#F$uHNDU-6S)ttY?MK>k@H`Sm99&zs3_w2{h`4{uZ?{tvg)x>r@I2`0(m5_g33Qi^Cdu819{c`dLPV#Sb@`o4{ zjt55t`J+nm$1ZZ8o6KUcI364x^6%9<|8o4d{KsPK^F5!>ej5KY_-Xo+=qK7I$&bSy zXFrO6H2z`a!`ugn4?-Vg-jBU+Vts(tI-YMC6H_T8&`nG3~MBqv1!hkHjAdK9YVo zij@eGi7@8K$FUAU`k^Rh$S1K1LH2?81HlK<_eby7?oZwqzAt-k{NCWb>3jCyowz%6 zcLuZN&AU=}M()hrk+>stN9Oj}?dI*N+akB+ZcQ9mdmuFu8Ohy}z{&%e?Xm6V_7v6~ z7}*xwmcA)^lXg?`#_)~V8{#(vZ%AJsy=Nygb%H#xpNcehR)5L6FbK| zCv|oNbNUl!h0e;H8N-bJ)P~50+!=v0(x*pH*G^Ba53kRzi?0h}CVzCTwl;|s1+tNN zBp68#Ljq@e{~kOxeN6Ni?U>}z;iI#Q;^>7>9~C`HJ1V(wA`}am zp;UJS>jfl^3>}#{B8JrhQin$l&mES)S^=2_u?6OW6jlnz9h$&e0hvQ$hnRrt!&kaUKf+44A60Z5lc%e1m2 z)&R(s#7a!801$EHw1gH?{{KJGwm$St^#2b`{{C0}|NDQf3cu<>?Xxs1w%D|cypGlo zQ;<^8Q2fl6k-UnfS+Uhdg13er$4LdDXo7_?CtS1P0w zq@h@Ziltex%|_)d#M~rEsaUDVlVQoasr;wOxpoj-X=ziOXCv}CB|=I;x)tq3EKQ0XHX`pR5mE}$t!OV|Y4o3O zBl4~iA*CSQiuNLw!r5sf@}3eQr6Apk_9B+Dd5De3`$~kAf^;j|i&%>0p*A8PC=pT$ z(yeGOVkwzjHXLuM!yb&Tc-U@x!YKN2Aq0W z%BICv$ze8{pFqtNq*OE%w~A{qm}aKyg?xkm`qKydm-QF=+c?}tBatI)H1|Ts6r@x%6tBf3PwGzln{@wu`jYi)*I80_q>V}%@mC2_DtZ*J zL1lUgruk0$8_7?MU9)c4K)A2JaFTDgjm#HRVn``SL-AtVq#NhR8cwlv@GQ8SFB~Nn zvQhaWV)h79D!LT&w`pc($orJRr0D*_>G2C~G`@`3TLmc<4aL01?6(DTZ!z)O>X4_; z;=bZ28_ln%bdge!F2%XBLOxy03WZsGk&VVz5wBN}Qqirr8JXasSqc(6>&nI2f&Tu! zqnJr1JDZNS5&1Jj-zrF{Xej25ciFVemUn5djJIO-I!g@^E}YPNjE&~kp=JtFDjJG& z882T$sB*NT(0s?*sC+}EjFf^j6!Yb1t{MX6XnGA{nW}u8jpnzMCMgAJDCRZivL-ZF z^jqs&%Vg!nHkuPklazuq6zw&q-9gLf#p7)>{{lKKf|QDGMGniPv#4o*>iw$*Q?jR- zw%;-u>jWFg??B8Hq*OE%FGNY$f|ZM={Y_TBef{ggy~_(T&51TD-&HE46r`cJ30?`V zo5iVrK5GuHI^(qU1BEVQPO?$?OBFLI1zD+hB_1MI&GEimDpsytRk#|)$u<&yg=kGd zN<~9)6C}9e&$Pcua}BOt*E_Jju=Y5`M&)~mzeSKz(XGgQaM>&_!}8+^*7r@TJo+s| zetK*qzYj65Af=*Pk!x14W}Nmn`Rc!R{n`Ob-4V7C`2nK$2vRD#6gMMpUyPJZ`y0tu z?`zjAT~T<4me^?g4PrM1DHRRHi!&&$i?MwN{r=};?*D(n@Bib=;lqD9)(KdK zbpp`$pS!l)aUc5r>y|nlDfIiFg!%v9!@U2^*bHp1!1sS2wjX2O|Bcvu*mjvt$I0mX z{~r4MH(_(J|9>yW|F8M(qHp2%|4*DH>U#P6zhgY7K2JWNdTq?~L!442NU7*iybfjl zidmk5`PZQ{!l(7GA6QZNI@D()^S2N%1t}E`MfzNQYyL? z?MtQQ&3L(u$loD)k07O@OEF(6XQt~wskE#jw8BQ??-9ExNU3Nj+UJ9H{e|`BsWvJ< zLHt#Ml!_k3VluVm9se{NnSW4;A*CPMzXHD{WMMs#HiRNJFuROx<6YsaM&k z{2Vd23Q{T>ipPLAn*~MJ&xs5gUrI~4+jmWQ*2q^{WRn*<8AM{i><5 zsoY=nTiSrnuo3-@5+$V|J&JRQ^2K0E)Z+ijD!Rc&^tTZ53Q{V%6`4x96r1)pX-=lo zQX`ycBl2%bgp`7GE82@#YJ{_FM1H44ND22$6d~rA9c% zM&v(~2q^{WRE zDpUm1{#0egR-9E!Esa(EmPHdUvXLxR2_vN-4Mir5%XCiroBRQ^baik4;9%j8xr=R7 z$`NymAf=*PkqO%}%g?N-A3*EYTG}-GExjI>*huOSYsKI}N|J`+RwQb+mJr@Cyq@-> zC1k_YBam(i`}6$~)9g^(*Oyj19g9wOI=+S9{%4~N;J5hQKYC8NV*$2z&vrT@@c;J< z`2V{LTN}1d&cyG1Y`;buz=PQ8u@>O2GvG52{{Mae-+x=Nd9l3;AAn1-W%1j88#cYq z>3AMv|4+pBmzyvr0CNB;;RkRxeE%I4ayq_=-~N~I_dnJE-1M`*ZTPlxNSsuW|NXC0 z(*1;ZB0gW^=Z1mv^Zx(foMqB~oMY&G;VC0@qLMHOlc*u;hz6pW2oR28pp4LoO2Qy& zi3XyD5TigTp%X5J{Tqc-c{+o4kg6d#$XRYEM{{%*g0B+pY4Fj@kMMkhkNzI`=i6y4 zhmR0A{J@T8I3twX)JIo$|J1R(cbP^6_Bgu-gvUF)4&wU(_rCQ=5&Q_2Md)-zoj7mb zhT*aL$TuJKoKVCZ#$Srl(TLZonahz{@Duzvuk^?puxDhA#` zeBxtV)JRbCv=fb^Koe0j4)_Q?&<4j|gmj@SRy%W-Z(_lWP&0RxdT$nG@QXNk+gbu6u=*&jrMU;1wG%+q$e9eH+&dz7XyPp4 znLoZ!lqttr>TXx|AeQZLeFHyp2;#z5Pu+f;>nG|7_x_t0q{4t#KLj!G)#D{9C{#_f z5iabT%zS11?hLHwc@2}kF+HQmYrefe*#yuWI30J7(UcDyl27izu)c}@{HghD?eik* z8hht!GM|+__~uN|7yn-N=^pqsW7m z%!Bn4$azg(WV)vPuOMG`Bdd8P#t{oMm~RAmrfeLU#NdtBr|#c&BRDCmqd4i4UNM{Z zvQ*)kJnbw&9$rk1*o8zh6Sgz28O&zwqp+)v9OH2!PfpeXt==|G!toW7Qi0p2PkNK` z@ZOm)uyf&L7HQ{Q(er!qKC2|{?^gG`8^`=a1JA3baU+vg+Qu58iZwzjYlJe^2sJG8 zL86T)a9c>YlL!D zEwB!dL@RGXfM{lIP|b>;g7rc>Z`(Y= z&w9bddLhVqVIFT~2jS<9s3)3P@|$^QTZp=Yw|B~D{+YX~@9z}!+_F&em!$(gAD$U9K zS;_jdf;n*5*oh3Qi6FCFCCW2==myoErk)GwQ1=-1rIKN>3a|RYDO?`T&hoUtk({T4 z5JR{^C(*{3+Qxy>y?}>jPI-xKV9s|@W!I#N8($F3!=j99{N|NA1*{jK_1XwY>luV= zl*S}#l?e$S?I=|y;q&ue18#rSRkqQSJ9Xe4xa>GepWf~X`kIPLW~ zh!Ucda5GaFgop4Fm2mx8mRB<1_p`EoVxuUBw>hcA8}JReaU-1Qs_%Y&ui^K6 z`AW5xA0sN1k00S`4fn(3$H^B4e8f{8-*>1(P5fT7_fq)Pg~ML8s}A2h4Fr}_U>yNe z6D5IbkOrcR(6MxyM-ml;cMJ(Ji7Fz<3aE|XL?Mr77*8@UVG>nDHBm#922cu|L zf|obG%4F7EGqYU&_*5>mWWb;@pvs2%P*XYc|4yc4oCkAu@c(7e|378Xv1BBvVMai7 z%p6PajO`3!PC)#*&~w>m6VHY*D zx2EFJxEW86#75$n7ZAm)fbh+^ZOLtsZQ8aJ<^`BHrEiSgn7ko_838HG2S{9--I~~% z-7>y;WK(EUHkOEmW4YnvaAa7+On~S$<~8Z7V^;?;7a)FB=&J0Mi7UgH4UoJda)ow9 z>hkF2=H=|g@(19F%haM0skdUb4da#aN0 z_OhpiPRpK}I5mu!0m&74k9$$f4TvlYU{*l9Kh&S?OQ72**PHB(^lH7SB~i=_NQYzL zU^vqg$J~JIDZx`RC&y0?VRk^`r0_|(6O$)KFh3x2f_6gWcQbIo$O8>nZ|s8_~D_$vzQGKJ}j~z(6#@Ny`7`; z!}D_;$&N@z03Q3|?Vk)Re#1)>2HqyJ;A!PZPmyd{M3|B2>sbFL}b z6u}IDRAaQ!Y)m)A8hYw;{-i(R*ZirvDCPj9i(LONi+KQHPtHif<7(KQaK$S#6~T&- zjOwPIcE+4RX9i>cL*?1BL|M2jSDGx1lxn4^k|@UiryVgz(2>#Nm;oTfvLk+W$b_>; zTq6tm|3@tS|Cib{tVlGbcm*jH-HKeuXSRlwd>`Dp4J%e##(P|5BT|9rs|6_)y^0(w z6U9Sy+TVzdX>w9v{NT!!{e3G6+x0HD(W!)jDM+bkD001^YtVr(?Qd#S&W1JX*I7oE zTw$Z)QYxerq@hR^rfAyV0hP7u2J$0ICI@C*X`|vs%vJcgM-|eec(odsF>?%9eqhGx z@M%oUB3{F!%vClrhKib$f^;cv!g#FNZcV<^fAEa(%EBJ(t8Fwqh}Xm$6E#RfF`tx~ z!+rA2tw;(oSz!3SQLMx{bZEKxxfvIrGR59SRvDosj-l!7!Ai%?lqSd-ppqtdKYNGV7|u?Q7Q zALdOqDlJNdl!7!Ai%_w2Vs5ih2_WWHK}tnKk%ecr0mxI`EvQMY-7QNBOV7} z1Su6=icHyTt0U&0MEwK(mNj^{+i0{QcCR3%qFXUPZ1=)xb@$Y|r6`|$>k3Do-C`rs zj_9ieDHXknMZE0{MtTb~+=z|NJSbENQYv~B=hDeP7SvnSV5IQr9k-F04}pLnrJ_eM zpBH9!V@?hP>F-^-tlOFyEQ_z*Y9rbSIjX9ZbiO2UOCH4SN`V%-s{)&7QWWsWg~L95+S7^ z-HJ5e1+&Z=$cyw3EIG~6TYtBW$Pr3}l!A0C+KX7$m%PVDOk{ zbpU^VW4YrA)&K8wd~`#(W9>cVj$fkh|6a@isKp$Bag6^z728iR{(n0*Keo3p2Vf<( z?=NyXHf=#)Kek<)%N?PkoQ|)f|Nlbt{|og0?}(xQA9DcM|9{a4_6?Lf*1YzMKV+Oe z;*XR4{~Z56&Hw)cHpX29vsMdIDtZ;Ko@3Hw{-^nB%(Ocb#jCKceb7edXr)6+L3$O7 z(y_d^K4hbF4B|EgDHRRH{K%Axrr+zyALo7R*7ip%mBpxy%CSm?l!7!Ai%_xD76}`b z;}CO|Af=*5aVvgk&NjF-Ut6qS-Pb?3)G}-0VH=sn5HJNP6%EB}Fr%2im8ShonrzMK zR4M#<{)mmr@rd6mNU7*n+=w6Nm(2O3z)QrM(+Yo_KWZa#BBBonQYv~Bi>NB5Jp(PX z^&YbkJqdDEf|QCL#f|t$JKN&4`PU5O!>{e?B%n2pM*h`CjeQqfRk`QeP6X@3XG zPhZ$NAabc?ZfMd*^E9Y=1Su6=iqzX8)Vn~T?BujfC|ceVp109hsWeC_NS9(>LluwN zH7r%!3pN_7lm;mU=~B#Vs5)$R4NJ?`E*p*2N`sVwbSdUFW=t?WXe&#*){8b8Ym^2l z1?f`EYp8~V+0$WZ)!J>NF`zU^DM*)MUPHAa%&uW+(|XB9Bce1&DM*)MUPHZN%&uW+ z(R$fNV^C?3QjjjiyoM@wvujvJ<-cO1u@3RJ3Q{V%6UO`Glx8en8GvRB(w7<#5 znI&iTS}TIrY(zFF5mE}$t!OV|sR>@U5jj(dkW!FtMSBrTRq%$5$XQB+l!A0C+KX7~ zf;VkM&Q>C%6r@|xUc^!vjN6EuqeMt4NG#I{+KX6fgOrWPxk`kTf^;j|i=aBdP^&s- zzmY$@Wg~K)5+S7^-HLOG{O-9j$HSQWe>k?U;dlQ=Y=6Y>{vFsBVcUzj|0}Wm{M2&C z?brg?K3;+G|JZ(m-~OZ64#W2TGN)q@zyE)M-~D&M4?rva{{X-JBX?jQ#{OTAvHvE1 z|L?)?|6Xk08gx1?!~Fjev;jPW-~Y$p_x}Wb|6j`A|JdH@yrlInF#f;BRWSa4;${&D zZBwPN1Vb+SM}npJucVA9C!7RF>6S>Mf~X{1gqtu358)+DqKc>{Y6u@uOVkm5qMm3V z8VL^jEa9-v5{|Pk;W+z}01+hGh<0Kg(LsoDKqDLkmnkSICCUh{QBcAq3QD*_K?&C< zDBvjYXXBk6Bz86z+k@wMvSmm0)w3r80?e4V3!02dn7Q} zA%VgE2n=>dV6Zm=gPjo=-K2-GCj!GFHt8eme!v(YgGBof=)@rGc)(!41BQ?I2|FDy z*yn)3E(Z+uIAE~D0fYSw80>DqU~dBkI~y?A*MPyU1`PHzV6dYBgZ&H`>}J4VF9QZU z88Fz#fWa;X4E8W!uxA0IoAeNND`2o!0mCMJq@S=y0fQY180=5LV0QurFGV%jnSjB* z1Ppd1V6Z0vgB=MN>_@=hg{lU75ir<^fWbZl40a)4um=Hy9S9igKfqx30S0>yFxYv3 z!M+0wb{$}_%K(Et1{mxxz+is?2D=L|*js?X&H@bf6=1Nd0E0aR80;v(U_Su{y9qGZ zOMt;n0z_hDLN^5Z?G;u;jnNivI=+{u`|Kj~2{={|4**8!Y#4u*|=~ zD*pzH{2Q$CZ?MF_!3zHd3;Y|b?{BcYzrpJM28;U}tnF{Gw7=0#SlHiSU4NsCu&Teo zqW%VJ`WqIpNgwGa1BBK54J`?DVgRmV_}oi;#7_c55?;S=@RkgNH)0sPGT#W32#FGt z#7GlqCM~3uw2?SzCmp1dbdhe-Lwbotc=4^#M|klqrclFw44oK+#rX}^<~MwVmH7=8 z<~LZE-(XpOgH`zr7Uefsliy%TeuEYH4Ho1#SdZUeIevrH_zf20H&~0`U@3lsmG})7 z;x|}_-(VSjqm!@*zrh;(Mh{^He!~KoLNSKt8qtYCJj6?U#7_c5k_OU9f+R%3BtoLZ zBr(!Nnn??3C2b^5+DQlLBweJN^pIYFDYW=p%K@Dj#6!HqNBkr}BxxXxBuGLeOd=#o zOcEnaq?xpkR?@e&{LlK_#V zfi#jJz&s4`d6+~wy{+-MDDT5}`PI}28@lAjriIF(zAp^wwA!sBfX(QdFpLjk74J1lhNf+rOy0rpt zi-but=^z%-MuDGnjh=|VAjTMwBtlw9C$WjX2?R)(G?NZu5iJM&Bt)7>JLx52C-9LV ziIF(zAp^wwA!sBfX(QdFpLjk74J1lhNf+rO9Qb?;HS){vWZ$vhsl1&>mHg^kg||{~ z)k;Ow$=6Dyotd5H&N3?H+izCh$iI<5wfw^Csn=_-6<PrRG%&)yzd@=o^_F@TD^UW8^&u5>vpRb^9e&V_6vxR3<&(@wPK9hb%d!|&( zpn86JJUecWSDwzJetz|-!c(cIYEKqXL0@~a^hD+f^NBKQ=-ZE19?L(Lc&v&l`l&~2 zj}#wCKcbKE>|?ylUGzbkQ9_09sS>eucl-jTjTyQ6e_=63V;^7ia@ z8@2WGwqM^!u=0@|z@~5(>v|ssT{*#GMRzFcdt^L{!#T(K$d~|)``qcHc>x$Q< zuhXt8U7NYqM7{m&HTE^=W&Y{}D()AqN?ldkT-=;S&HYj~lQpyDP1#NMrplH1D-%~v z{Fkq`uU$~QAbo*$L1|-Vqq%W>LwbX@p>%%ceDnM=>hRm=RWkWZB2z^r{?u4)eQ|wy zy@p!+nRCr^%jaazvCpZToj*HqcJ-{nSt-=x&!HZF^^E`j{_e*{&C&9j>>7Jb1=aZz ztE;ODt5U0KD~l`BE47uSlQJjO`@OeMtgOhRN`G~EVR>qKZCMd@`n6@HrOBnWk>W^t zL_?+i%&<9JUXop6qgH=@C^1w`6;dfw>n|qLNiA7AA%lAT<>Rx*+s9W>vp;cM_1MC( z*0Ggi^2a1lwZCw5>gd{0#iP=w+g~~|bEJ7>`G_nk_g5C@7bg~14=;ij1C6P}g64m*I`6<-!FCLaYOgpS}Xa-gM%ZFqSu@9*noJSr1>OqBr zQU}!zETWRXc3^2sH0*&azARfX)6Ujpp$wL##LlemZ6UhS;$paI~ z0~5&u6UhS;$paI~0~5&u6UhS;$paI~0~5&u6UhS;$paI~0~5&u6UhS;$paI~0~5&u z6UhS;$paH<5u5apelkFKU?R07(1}4j#7lg{PXa`e2GU4^Bt*g_LZZYZF)%eBoA^pI zX(6qojl@Yi=^&k?i*%D7(n~C2lRhFwfkt#<5FVUJ9-K%Y;lYXI!HML-iR8hFAVu;ZMe-m;@*qX>AVu;ZMe-m;@*qX>AVu;ZMe-m; z@*qX>AVu;ZMOs9R0gdRyARgi+KH?_jBta4)VK6nF5xx>7CW(%(kh=jqO>EtU>Vv-nXBF&_Qw30Rw zC+(zzbdoO8O?pT#v4~CjNIw}MgJcfT#(_=@;vrt*BYqM9Q`0H=N&{&mK@uW7Y>^QX zB_@fHCeln=NGoY0anepYNGItc-K2-~5{uZRkMxrPGDzkSZ71MC%hYu8;6-|fm-vXE z@Zd%A;6?J_Me^W9^58}C;6?J_Me^W9^58}C;6?J_Me^W9^3X-{&_(jlMe@)^^3X-{ z&_(jlMe@)^^3X-{&_(jlMe@)^^3X-vgoiFu)5${^IY0)<93m!wMs#8j5AhNo@sj|N zq=7V&AmIUw43h|n5|hM86KN(bq?NRhIB6#xq!Ua{XBS`TCOxE=Si~lMq@N6sK_Wf^ z8qtYCJj6?U#7_c5k_OU9f+R%3BtoLZBr(!NJRc2cm5QM3M&5NP;9p!X!dW5+hB7W{9E8(eDqfV`kOxJN39V22m2>W@hik29^xfF;wKHHk%UNuL`jS^5!PS99tap< zf+_ek00JG7PlJ5g6Q-6)`V7f2u*Oqk+MnC%p81A7Aj30Dt~cn0`G* zzuinLt@OKX5UW`{{mTwM?c&qF?&i~8KK-G#6aL7cA9?9d{Pbs%{(U3;d5HcZ46$Ow z(|?N5e`%(*R{E-#Ny9)glM)|abPxEc`=5~5ZC%vtk-rh&= z5g)@HI=#XftZeo#sq9=iu1V{r3k}xqzGif6oq?=fzpXi%F)I$1C zo9N%S(4WWYFWaH)fP!) z`F9fURMEp;>h0QF#kbOLY3O4wQ!-2Co!Ol>dfCgrnRv7MM&XUr8@1Pqucu$vUN63u zdae3u{#E_tux6$~>h#Rm7e3)hF^#*s8xhTisW0K2~}(jc*F-chwgj zPCQ&yJ?>TUJ%Nqy2{I3850vgt->=W13&#p~1R?)%Jj=5^(3v*?kpa!vl41n$Bw zpijQqRmI6~2vWEoKcBVn{XhnH;}@??U0J;%k9+aUmuD{5E-&Iv{OYCo{q)OMzYE{_ zy+CPUmMNl#J}pxk%Z!<0W%SW!udkdd&MlpjImbMwj6VA8 zvnyxi&PtqBMK67+GizrQ&q$x4p`X6Y>E`L>)3T@8r&UhPpPD$edP)Jk_0`rD*QM9x zrrnKSOsCUYx`h7vX8)alSW#Ned-Kc7vdipcm8E&~+*chbjHE_t!$tJnrwx~uWR{pq z%ILk%9;&4BsYI%Z{`*qN+6l!I(kJBhxktZrOy(H#nDWtC^x{`JDt}bssOpgg^y61M zqIg952tP<1?14DUv+L_Zfb7rfFgSJ(+()j$;>h5ln1ke z_F!coKafD*eue&2f32_Bmqzb?B|BrAcG=2WwpHmBy``Q^kJ(f1&Z2+6N>{!s(N*m% zpohO&N3kQ_p>>qnGwo)3Ii8K%=;trrmT0TC7Ftv2>95$5Zpk$#nyXEPrWAVmE5_0> zEmkr!=%|`8LC6Y&Pe^nIWNrh{nBKrH&LZx6PXrj-*Y@>~P{__n9^!itjDOn2? z18Ma8SMq24roZgVqUXPgH}6e&tDb@<<*6A(BW-Bt{V$`NdRfbAw(9@y6GslWe9xa0 z4@{o_=k@>n6Temm{Po*lc-f8P8m6~hE{qt%#Sp!MN@ZB-em&80=k-L6I^gfPWS)n# z9zmrtq-5qyH3(2Blf@mU->SRRQQi1mm&o%GW(q2mVI^-}*{Je9t9i zgG!-N(6DkADUOSnKJAjSQKe8RXjnOm6vtIepK(dKK&4PAXjnOm6vt&uf8vsIp-Q1r z(6DkADUR!yKI@WlkxHRb(6DkADUJ)7KIf8hu}Yy*(6DkADUJ&pKkt%qDaPC@s8oiP z>>gmI%Z+i-;V3RQb~ac?CE!1G$-G=;QYmOy$;|y-=s0=N;pjdW9Xd+e{+UbWl`4}; zLBmS-%)M4jj;ga?aLLRfr$^?{R+@cB4>Cu1RoRxc=IW=U=`4 z)R86Y)~ucDxRm^Tm&8w~L@EU}mG#7ZFY}&COgIu97s`IoCGnFgkxD^LWj%46c^+M|&$8oKTEFa)d6UYdQqX2)y-&UMlP5c- z{*w!eV6KfF60To{9(WuJtmEdPuehY*I%bh!O#r0QW~F=Tk~OQGsg8E?RhQH}l1>s- zDx=El1aCFm_r3CNq9$?L@H%Irqn&)sC2=dVRthSWapl$cJTJ!oNwB(7=ObhdYg)-QqXqg ztfPmV(T)}VH(jD{QPETi+OC{+^b%*Zqal6ECHhvxEfZ8K+mtg!M?@sov3rKEId!Qc zc!8rWecL7YHbkx#R4Ut*GX+okr01_kbK2{ZUf^g@AG$o5FC z@r%jx|2+P;Cw`+Qck)Jvzi^pbcVj*+5mYK$l{3vP$ESo_2_2u3V~zWlF1hz0F(s%} z#+4cDa_+D0T>Vo@txm06vrMf5oXL(A?)P1i??vV^L8UUPWS33n@254?H>s)Ny;_1} zJ^NQKi93*Wte{faqGT__>-W)O9{iGC1q%LJ9mHswsw(>5&&_t~^8bgXQD ziUUG z^kXWTN#o0Z34RKZy@E<*i*mhSA(r!}?}PApj@yYAG5PJw$?I7pYVM+i z)`6B|&GGjxna?7vQ&6dFR?gI%xNm3*HmA|lvJn-TSm0Qe|G_2iIV5!pDwR>?W^DB@ z$DZL{j~rJR5wSM43e}v}uEUMWiTRFY=;tnJ&#N>l1&t_YO5?X_VU@;tIsf{UGwdH- z!d^hYsGw3AR@TEd?)A=a_ondWdKfmcdU)>ccW51C@hRf1LoCNa`wN%w7ZKYds8pKD z>#={qIlI>*$FF`&ar*99yw?Q_oNxA*E_p8@saH^`j4Ef!iu!+Lqga69ioIqpzZvr4 zi>HwVOrL-K!ljOSLjUX%^(sc(A*fWwl#JSh4|A_au0b?lRWPz(szExM|G&6oy@r$? zL8UUPWU-RW49zhrmaa^lyuAL-j#%n^YahGBl@Qb^s8q(47YH72Y~1Ue3H9ZYDVCmc z^2qvCBdgY|JwvVJrkCQZx#Ycrq@{vNWs`EIJbpcC*YlQ~bn?i``E#$i;;M@;ykg@9 z>->u{o9As=KXmF`$NJ}AUGm>m`BVzpq?~PjVt@ILwZgAl^50YWR0`UpoNfMs{pCBh zXuo#J|Fp`dQqU&lZ1WfHFW<3C{u`J4&meP|pi*fnXUgYVvA6#DpM1)?{eJrO#>FM| zNB`{C&kYCkAB6(?xfp&F4Cq$`{rax|@agw|-KWp}oKJtLA)p`G;Mcz*{rX9N?bmM!<@m&Fi(l&foFyPn!{C@n++kXASxBU7k z7=BRn>l?Cu{a-D=e*HL(|8su*mgB!%_)C9M%!$;m|5wNV$$wJ~Y4Z60-(2RR77xd<#P3|MITcbELnBl%20rLskNnW#^}Uh6}(!#65cs`cUU$kNm)E7#3c zKd6;e!kT04`DuaUr-i$J!eTw`_xK*>F=cXD`M)lc`vpwsGC`%XSvk|};=W>E{nHv+ zvt}L2DDQ86Iaa6t;W7aeh#nSHDw~zFoPd+h+;59^tWW>bWdh1-0;m+USvl(o*l&Yz ztWbaNG6C-+G$W`~HYsPCfN4wY$jHg5Q%Cmq2{=}$e{jkFB9d1MDwQ$iO!?CqEKW+T zS-rn_$L`85m-r75e4e0E8B@+89$#mV>^I)Ax)RIlZEke0re_PTUp4V11fQUk$|mJZ z@zdu1iR*BGJ+QfDwQqD zi~h*!YOYwm@9K(c12o2|brL_C>8l~bWiq~o2{=_ysccowG#B^{(7^81(D2HUQ)jbZ z=W&^Yud7L*QqWfAe_;~#yC!g~io7n9@C`KyR0`Uv{4Y#```(?;WfH!L*b@bnN>e%0 zBuv}8T7KG)`>M$AlKw5^b_*(%Ey|65WNB;?BaWpJblmXdkriG6#tiHkVS z8?0Z?<~1#J{ywn{F0p@sz&=5x(o+5xV-x$tHoC!M${pCfFpTqEM- z70Xtq)}4a0cJuMw(8#oT8+1wgfl8xN&?e<<(-QNqKWcg(3L%%YAF4De1#ME!Hf_QD z>yJEQ+ItI6rltAXw8!qv)PZ|eWzVG5I zFJHLen#G4+)W^|JF0K)mSYEf)Ehx&t!w%(4u`vihaYNvVL{mzTcFv%aEAB<#{P}dESaOtbFMF7Rq!9t`Pd>+y@(1<~&K=8}&x#j2b!Y3nx3ouoe@;=zXv(tmVTVE9rSgEU;2J5xrdm zwu$_KeMr=C!D@WDJ|OTsss%>Bm`n*Psz-%2ESBonZ5F}`=mIa~)USx75CLz$5L*KS zaV;0HG!gX$L@t*~o{`%wk{%HqMn`TKu^!kSi+;32Sk1rMwZ!-St}mYus(t&#gLduO zb;8yE0C(+L^OIe>PTTUEU%vUf$NulGU0-=*^Y?cB_>^nsJ~1J2?Af9}6l;%KAB(v; zed5>Kg|$?eDH;@E&v#wZc|ZY_+s#PESU26WcwWi^QU63`e>HxpB?T>0fCWO2)PA7`-QVAilv& z2Jzc|p>5A$MkFQB10JEpHsS4Jl$d?_Teaq>#3(H>uyR0%9UgpGmasG&=uT{1K3BsM zmmBl=hQ*0$|70v+b(|@Z0nDF(D2UudlJhgT9c#B+@L4rj$pK9qnT!fs%j>xRO~dcb z4a9<`c*$y5nOi=Q#4Mh`^5Ko@I=)j6M0Z4UQT(;;@#H+7ZFo%t#&gzyjtMc7BEL0h zTBA{64CRFNiaHRQ9~48wUZI;}T;x*Y_&XR#XKNXMrrVyvPq6Huh=$L~1-FU5(*q)f zPe^~PPahLlT0J6(F(k)C&J*9&+%jPOVM)W!zVMs>Nd95h7f$;9u5W(f_q%S>cI~?9 z%*;){xp`M^*Wd2C2}{Zee{uICZ_j_E_ewoCmW;kRKHU739<5()v-A&|H6z&k0LIyu zZ$2=Z%Ox>m#yyzEsPt&jiN;UdiZ?MB&3W)2O!~oNVq%-nL@tojh60v8+&8fV7eTHT z$y^eJi@v3&_|XXh6KdW`66kjhOi*y zu=&c}r$kkejP7#|#lMYryM?>K{&3EkS}vCJ4=x#Iy(9Je)!sQAG0pp~O_St4iWZ%NMg zV#exUlTpu*z+;p|lU7p8B`1J`0oyW$13{7e1}+`NpO1;SH7b%qXmR8XVB~yw zQuDEZi+mDm34yXFcsYgn5y%N1@ek!bN`B~_j~81+;H$dk37{QgV%FY**@S&&{m317 z=O(7p9JjYmq|kyqSZrcR?E32XM0D&x=Zp<`4Zn=VwJSF_&sjBUjia&PCH)p5ydHeq z250HP8G)7I_OKmG=JlMeCH3Y)BU%eSFJ0W3jP_Y}QV-~!ZGC|jjyl^y!mF0)f1i#9InP5rOep`a}{td{`Rr%Xn8|9lt1S z&#<1H&@5ey1uZP#_|3Q&#_e=>2n*|4OB`+C!^jDNk3h8x{KN$czc*%J9UN#Ki$`&& z=J8@>qb2bt#rQMldvwgN<@g<8iLqF2Or3Vp#14$*W?_gxpYS9DU6?#fT2y!ufk_%q zioT@uaQ)B6s5KVYDl}{n0{xo40}JHWMnxu&^K=% z&aB+-t8dfAsKLcJ*`T)RNo>k1&=7++C(xH zu&g`qVSDS_bWf81g!!Mdf_#?5Z1OG?9$#P}P~WD<8}N_0RB}ZQ|Ln71mYwzcpML#!kKxC_Bl`DuePML* zu5A;kTz#9aiO=l1Y3>d^$8EYNif#IN8}+K|g(X*tltx9!C?y+1l8Jj>^Zc#v^}L?c)HZ!-F3D{=+Uk6d&_{M})3Go_vE`b3Yc$%7rk_iSgC@7>L%X-> zx}|SuPg&ea7>(wPyAg{9H7<@FMGFyF*?6{kaskVOyH)W^rl+tqD&~%A+@@p4@x0{$ zp;_46V4H5Cn1H}L)ng(#h9$+*i*5Svb{P#H?fT8XPyFGxZ+;!ybSwzFx9PQ;-^_72 z!Q%_x!#4e@c=w_D#MtstwM`Fb{VQ%=ptk9O=HH$W6?&n$uQ`{?ZN)a-i%b-Y@TzS( zW{EwY!FX7~G0(&{Y+@!vQjB$DKJ`r)I6R%)ri&*UQeqrisrKA`2@#mjZMx+N2C))( zE;{a?XT7Ah=_3aAWw9qabpFnstS zJBV%i0*@DeATSSGL~bfk>1cAhh$TgRo9=l;Jcez0hZVJQXzSRfYgT`f+w>2(O&4mL z&KLyZ#{tYHJUpJ{{AT_)Da2NhncSxH$`HKf6#~0uYMYMM7|8cYZqsu^LY$t*stBKu z9?#*OV-+gQaVwXc+NO)iud}#K7sdt+A1jt6{PtWt)5YnSf+Qxuqu-L7+@|L&kH^Y# zWq5no#@15L;oa( zByeT7CN#^l4euR?6#)-+d9Wf73z9-4lj1TgFe0WWlbjV88+M;CN)5AC?UmtY?11ES z`~e?HHK3(oVzJG{Mhbs}c86aVxp8dM)#qX@=kH<;^Y_(;RgD=xaGNf2+c80ApaK6h z`AA~pfZs=~H70U_sD@v~EBHSjMa(Iz4EgKNt>nuA?B5D5!+hul$Ya3tj@G9V?;cx! z%pFbx{(!&89g7b{67NSB$pH($jE^-SwqYOfMC&}xA^r*)1K*GEVW${>ZV5bcLT%Hr zOj^PD+@@o!x;=y`vPEtQQYN?QV%&;~G4*-oJP+Ux^Bfb_TKEq_@rzhvV@-+=Y&*8; z__u(_C7BsbZsH_z4q%muxhfhEA=JT?dPiIF6CNBBS|$G7!cX)065d5pU<-h8VE=}% zpnc$%b?#K<@Lc2KEi6xtf6R%q@%K3{zd7tea9rm_-~8J?@q>{Yh1hwHxTo+^^soF$ zaY>Z(6&GY-0uGqG|DWGdxPJ-axS_dixf+W|*Z(u+?(Y?k!z)oi(a{+UDcwUH_cN;v z9{zZykmFSdMK@O9q+{GAMdCgF$6IV}Ub4V0T-1a_W6JzBTN2$r#3XB3QXHg9erL47C@I*QOqO zG8|tT_PAt>U<46C(XScA#d@%wu?Wu`k3AWVDg(VP8A~w|^kfFns~HR`>ly0g!Ss+l z8IC4dUpvp-T9&B{iZ0Dm2CZlC8*#^DPllsK+Ai;d{~Qq%9h$+QvYx>&!5xo18IA_o z=aO+EM$(OwiOirO-lA_-w@g$7Y#J#mlq+#Vu ziS-H~D$(&>{(wu$N|i#F3nU5 zokfbHWgg&?vPPv)bZVwj=qyqkZF8Cmy6N};nz zakS3^T~gMn6pF6RR0^F%ilc=d==u z$XP0cqQ5j1Lfu0gEpwqu$k{4{qQ5j1Lfu0g4Reu8$hjD0m!Rm%3;#sd7C<1w{gGvsKMN4jM21Bj@P0j16GJgBT^%)Bo<OB6jE*Tf742mjdDudQDj=(d=L(Qvy`H@$@bG1)D0K*qo`SkS|{$r(2 ze;C6;4DWaP^>fa`dHyqT4FHBiF?{t5pS}UZuG4+`V;JVe{rVTt@83BXev3Z;3K$N; z@Fn#9w;sd4Z}922;hO*cVW0kmB|iNu48I-1_%IxX;p-`%ej$c`i~9A#DEbn_fUl;+ ze~!Me;;;Q<;;xvnXTm?;A`W@~lj>({Y)^gYw1%r4q)rUtAztDme&SvYT}JqO{~J}% zM{@PIkhYo7NBYSC86TF-eRxk!I3DTEWzGw(*rXX(t_|lXQ`8(nETQMQqYX`pEzpBw`e3L?;IE z5HIl&KM4>?8b~7vk`M`#2#JEJ=`{IDj5LvE(n4BE8;O&4(m^^&7wINFq?cI4CVixz z43I%0#(+k2Vh|7U5+CuC0Fk5tOigDaUkQ>B36ltk5|hM86KN(bq?NRhIB6#xq?2@! zZqh?~iA8MENBYSC86;v8(1=b9;sI0B>E$av;wJ$jNdsvlK@uWi5+PAyk{D?s&7_62 zk~R`2?WBWrk}lFsdPpy^h)w!PKN$d1(>cgjv>echK|I7ue8f)zM3M&5NP;9p!X!eX z#3V7&M4CwpX(eqWPTENa=_FmGoAi)gFg2YPU$IFa=_dnZkjx?4PM{Nmc!-zyh@S+A zBn_mI1WAa5NrXg+Nn)glG?Nz6O4>-Aw1cVX?BFY%q>FTu9@0xJVv|17PX@>!nM1S* zpc8|5h?n??p9F{`4Wy9-Nr;3=ghYu+Vx$R7O=mM-X(6qojl@Yi=^&k?i*%D7(n~C2 zlRnZ<2FM_pL$nWpP7LB9Ug9Hu5+IT^kVX{uka!y;FO;_;&j3+*^sas-;3HRjTbQ?o990 zc9!1EylK8!ek1#a{YK^W{OgI=tFIMM@xS(J@zwOJ+N-5kGOw7glu`5Fe!23Jc&YSa z=0)?x@(Wqi{I5Kpe?IYi^|=D7{@0!@KAV14d$#mU<{9&uaxq)9i$4if89y1>+Kbn2iezfvP{*lBZ)rSiYryj07 zRD3A?koHjN!OVl^R6l{@{?dJ!`^@{wg>1ntRCeTdBz9EqE!>;Bw{}nQp7cH1J*B%d zcbj*Y@5-Y7f91~norycEcNFeO-BG)}czgQx-1fxw>TQMFQn%G^E#8{GRlBuxOXe2y zmh!gjHhWv;=KReG)c-GRO>M2^i}`e3%a?MQoS7@%l)cHmsj@}5^be@rP`W;Iy?K54 zy6koKb(L%L*Cwv5UQ@UxbxrN+;??P^b5|v(`%;{PfMSsomM(EbENhVqNLv%*p1-<+a(h_S#B1pH8H! zqlMAbXl+e#O?r*CrnEY<+FV^;m0e}8s;tbfOsuS)R5&ShQtiaziRlw_`{@%fv(#K# z9?6c_BbDL&aALT+q_8Blq&8F>N)Ks6rBo(mrpn1|(oR-R5GRz5&m3iH>S} zp*_`Jix=bRxE3$9W!lWPa%;BLZmqP4mQr)3*=#O1Wt;4#N-Q5s#Hwb&OqsQ4F`ABQ z(NZK6F(c)0Hf)D0p?oM2ss;3~MR=uKP*g>SA>~Zx5%!#eb9|HNxS#fTm&A*aV&VobCQ?*L zhchMaIS1$bF7X7HluJ|!m4b$qvq*7#o0xP-xm2Z4)L~aCbQUR&?-NrlDVM1fDsj^x z-wT~ZisKu_A(xcPRSHFYca=hCk>dDHafwUH6)J^Fb%S46Ig1p>w~E6qDOai#in{R- zb>rbIQXJp(kGQ04QYjQW>MDiKBE``{m%5~E#yGpwEqqcLRMyWY@H=0}WAdwh+r@DpD6_~A>K@`~n=4&Hu2&&c z3K~+nhd7$%DwmKOR0u`411f~Nhd5g1YL}2ts1S;t22==j4{lrhjgInTglC_1lF=qyqkt#iFg%H1l3qFB31p|ePFw9he@lzUVPMQL`G zLT8cUXrURGlpPpnm!MJ^RMxl48}O>*q1FQGda~i^`?4ryjNX{r_^Y|!pXU--z;8uy z$20?JNI6sB)V}O54)y6b^q^MX6+Zp-%YFJX4Askg`X@28V0iOVpS}Xa_Yd^zSDon7 zBN$#?f#1XM)8#(>CJdbzKE2GRFKzSd)l+@?r!cf(cOsbBZfxQ02DigIQO1QzVibd|IcqS@P;O@|DXRW^?cZ| z4}QMO%()ML6BQH{+hIuQI&+2{tCbBdA@{2girVZdgt~_~)+!raLLN{d6jj(&2z3u} ztW+*=33*V3P}EyjA=Ev@u}-Js=kek&p<3Y5d3l7Sok$UeBUU0&vr@r25ts70zh^>UiwQa5TxROGXhRi3lo{L1jH-u_FLK?8$Jn z$jvSp&!`M41q~|e8Asq}$74^1qd{KflJOiyf>Q4grQTskIn#c`o_%mfiyWHXBCmEy zd>$#LpeXka!^)Ww_w0i^+vGJaDKDrLiaPHqh0Y?yv9Y|?CFMnxLQ&9NrO;WVINIfP zE-5dm6pAwLDuvD>#nCdaUyeV*BVGT`l)H~7UdAh?peWuB!^&BtINIh7E-A056p9k< zDuvD>#nC!H;ga&IN};IEu2SeMQXK8`lP)Q*sT7L3>?(!MBE``{Kjo702FBSXs8j}( z_3iRTyy|$UwSd|OADO-nzGQj>z0oD`O^h)rs8oiOGX+lVgO51&Ww*G5V8<9CR4PMC z_Yg<(yvZe`q(Uev*~5_1J;c#Eb1orosSqj!4JqA29E~&Y67seRp;FM0(mlk{Hn+Nj zyrV)W3h}ED>K@`~nm4K@`~ncG}K-cunICG}MZbq{eg%v)SSK7&zq z35vS)FsS6_d9%7S9xv^AOg2pH%Q_n7@brdxt4rXYU~~~dQ3f6cl?>eYNA_i%?eaF4 zjL)hJiem37gVr+=c;v`=4* zp@QrFFT>#H_5YiMIJ$7;SAXbFiiex`9RJS|zfzMvc@T5E%MANGemNp2O3=fgvOdEW zsu4|N&xhhz!`$JL@uwI?L{O;=D(e}Grj1@b-IL*1!QAPR@nfghlvYxSc+UV8OJsFPG%iS&+6ZqqZpi&uB)-z__F&}ZPUG8zo zcpqc$7E~%j%9(a9_UxEDRxcydS1DDQH+Zixfxee9$H3t15*`LBq;fq&V8=LoO*_Qz;b1=T!=wMT(<^ zKJ1e64UDr(P!xBEL1ld>;{yEbc&Igv+A&``eaGBU+WZlhz;9xVQ9)749fp)M1y1dl zFLmsgKk5?lEfqphv0a5w_Yg<(e9R@}+bV=gK|@OS5J&5L+$H2g6+)$;A*FkWqj5gr z5>iniR0Il4Kv~B@}}q#_3|V9t2bdt!FI6Gsk0U|7@wFQ9kdI@dJz`A}IO|fI($FW04~OKkUhHw8l=6DTC9#SuQ&6c4D`!gFvoGsxldrm@{6wWt zDQH+Zixfwze9a~0rz(X?LBq;fq&V8;>nTMH$G2`QFIQPE+!yj<&{}BueFifDv|Jk_z|92<(^an7^$M6lD`@aZ-2g5kd{~w0$ z0=|a(|2JX~7#=?j$MF~{IQM@U20w;}TKxKa)ByO}24rCP1J3-Aw380fNxDck=^?!UQ)uxy3ltbS zF^Gq-K!M>Se!>C;h9nK7kpxMIgb5227%Wg=m?TD;NHb|6t)z{_NjvEvourF&lOECw zIE8%9(ga2y=_dn(r3s8Vgrx}#ofw3r2@Egs5kFyR0)wRqj0Vz3f+R%3BtoLZBr(!N znn??3C2b^5+5x7pgU?x%z~~~~q=)npi`b-(^pgQHNahd?*U}g|VNn9ZL%hUC{3Jjm zX&{XxNJ1n`A|y&o5+h9jQ`pSsEJt9pk~R`2?WBWrk}lFsdPpy^h)wzk%Mlm@WRT1u zVghJHCkF8lFYysS2@pvdNFxaXOks%6S%|=hkSH-pj5LvE(n4BE8;O&4(m^^&7wINF zq?cI4CVixz43I%0J^~uii9tNXOMC!R=;!kQk)(k%k{}6@Fo}>TF-eRxk!I3DT1gv; zlXlWUI!PDlCOxE=Si~lMq@N6sL81xXMTt_lTQKp&L%hUC{3JklJ+aY18VN5fHbNv! zA|y&o5+hBdnY55r(njK>opg{+(nY#S59uWqu>q#AkI(zb02w56h-Lwu7{o)o#7F!j zKqP4(jU-4yBupYCN=yNHb|6 zt)z{x$bi8j0|tu>7%Vbibdhe-Ls(?Mu!v3iNIw}MgG7u0jp)Q69^xfF;wJ$j0j98l z&l^dQgh-e~NR*f)Mw&=7X(6qojl@Yi=^&k?i*%D7(n~C2lRnZ<2FM^0n}9}iVgO8` zhtIvlNBkr}BxxXxBuGLeOd=#oOcEnaq?xpkR?FqJx=1%+VF9C; zSi~lMq#s}k2l#xDXgQ!0gLsIS_=ukbh$Ic9kpxMIgh_-%iAiFli8PZI#g3&&?rX(= zj5ZP{?WBWrk}e|0mtl;gg>({|=sQ7xgh?~$AQsUkfS-g&6KN;CWRUni0zncZaneHu zh=1pD{4HrB?WC6s65j*}k{F4T9>Q)z4DW}ak(i{7bd!GK`4}{iC}|~Kq>t#<3cM{6 zCe5USSVS8Ie$q91B3ltK#(*Rd(n30kP4rD5K*FS%bP$VZIp8ND(nQ)xFA+O|j|54K z#7PesAl?r_BQZ%E=_dWe^D$^3QPN7fNFNaf*!gbeUGv@YJK1;acPek^-%h+;eXHaAL-SW1_)QfX&qr@6EIX7)|{&B`13Hxh4DUoX6#dcF2q@wN18+H0j(Gq0MjmS4%f zV!u*(IsbCvZ656Q;*gjDL#^ZM0=$4aOPq2;qpV-hwO(c4~|W{w?BV>;{NJ=h5J(X)e6Nz zx}X(GJ2E@W9p!to_uBVX?#bVixM$+-?A`X=mAmqHCGM);S-3NGXYG#S9qBu?J4&}_ zZZ~f)Z_jSGw^we<-nK-k0M&XRq8MV`kr>9TX zPA{F7In6w+d}{Vo`_#%Q`BM_7RM!>OrPkF>E}on|Sv$G3HnY}TTTW-wB3&BIjGCk6 zHQ6=xn#$_@>cr~ms=}(&s@lrp%JfQYW$C2MN#;rA6SF7UCstPE_qyNzqoswVsin1% z;z)W#8z~KEhRxyflI#+DNo6QMlo+a}3aM18mMkXINiA7AA#;LxLizaY@%HhR!^aw9QI1A5BE7kwPRDsfCN-bXW_QLYa^mDhIPcJ6LJVHzpdZ4TT1) zp(67#A*+ExAQhlbp#7Ok#_uqKsGw3AQr177eKV#Ov;~d@?F%j; z|E@x)6f~rC4{?kr++?iT{bLh@es# zRMtPAnNC3B^I16k^LgJT`ifxR*)_EySU7z}@aHZWI>y^As8oiO zo3OIsKEYm(-JO>#!7jn{1#M^^e{piv^JSMr16k;jS0&Prdj7`}ePR@ej$MMUxP*8y z;x0j@GN{}*!;TJTT}+JZ^{$poe^+013G^WCH(Wwc^B1#=N@Ymt9^yEw`c0P*_IVc- zR4PMC_YlVg58rYLX;dLp3K~+nhd7QwzU>l%&S~*Zs8oiO?jeptkPlr#LMntxK|@OS z5XTWn#U&(y5qAqJl_4b?=H=q5y;e8quTXWCG_qpV$tO);-#Bg$_>M~=yMT?Tj$oxS zsI0#&wegysI=SP4mg!jCeAgwzR2ftX8dTOZX53|4y^ig2%kK5&_gpe!DuYTvgUWiw zzB@OQTZ7f>{`pX!eh04qpM&9@L;U(0+yn3nT>F0u1`EUIaQ*+O7;3ow|1J!j9e({i z)c+rz=hr{Nz5k!Yx&KxSC7kqSdQc-KO3I7MEzC36PKvJ3V7lY^;ZE;T%!Ie;E7ArUj;mIiTbO6CoWNc74XC* z>aPNxxJ3O`z!R5}CoUyVTuPp}lss`MdE!#?#HI8Tp0<=cZ7F%$Qu4H=F)w58-}OUcuglBX>t zPg_c!wv;?=DS6sb^0cMoX-mn|mRNtHW~)vN;vrt*BYwh@mQ(YQCod&WUP_+4lstJU zdGb>7P_-}K996Uv$i;U zU-$R>-haOG>%2Xyot?KvQ=d8Ik*LCysKS(}!j!1Ol&Hd#sKS(}!j!1Ol&Hd#sKS(} zz?7)Kl&HXzsKAsVzy>-Ahd*Z*-suK75 zRBcLBZAw&aN>pu1RBcLBZAw&aN>pu1RBcLBZAw&aN>pu1RBcLBZORZ}1D!w@&<*qe zsM3)BM*KqC+Ynt&Fd6=(z6 zfes)9*gz*B-XUm!3($cIpb~Hc9>4%3Pz6*2Ucdx=fFIClp~mx-;ENt`zX44Elb@^u zKidqx6`;9|?^*bpMoj)Fh{-0P1!x08fDLp4+984tQ~;HL2arG&Pz`ti6Yv4e^tZ-O zTEU;SgFo-U(p>aAUG$&S0&{2%e>i_bJ@q>E3)YMf76P|c1-3wFll4*_apz)Pk~RS zUyr@6y`Fw8`kMAy>Jt&l1(0|({A%u%OH)j<4N>)G@(v1hbrQcp*o&OMc& zTmYFTV^3;NrYI9Y?(xLq_T$;d;*Z(XS|FOr?@Lk^fb8D*UVCrm(b%Kfqp3$Clm#I1 zu>EkB+X-YIj8hJP^aD|9C6K&7a(|vO0EF+$-J85Od~fca#632R{~x#eQV~H_$}5g=`pqs zh+eN-@Yt!Y3x$%(iF7|$Zbq)3~$WR*#FkW=?&2h z`HPZAX%i4T-#S0DKEB>wpIw(&7hab;FL_?%ynHMbi^jBAdTng2wKlURzQ$gYJy)EY zJ|}jLbx!8&_}TW^+110V!>e;=CC`eSm0y)w6i{;1JA`*_|W+rDwX6DaGoe@1_`1J7Uxzm!TMNZ3~ znmRRls&;Dnl-McODVdYwC)+1yXC!8XXXK_Qr$?ser=_Mvr)ksDQ)5%DshKJ9DfX1? zNut;eATudG$)1!AC&J-yt~c2m>CK;*Ix%{pc4GR3*a_ANnd9Tf+s9{*OB@$IE;lhb zF)}efAvGa7VR(FaeD2ufv5{l*$E1#l9-|$T9v2&Djmz}Jd+eTUccMGoo$E?=MY{5x zsm^Gp)|s|rwq<8R@sJ(Lc8HF2d+dME24J`@T$ig&)<$acHL03tjaHMkVwPoP0`Y(y z$odohus`QZ`Xau(nKGlMW~RL{ujS2D$E)q?Y*pfaJpTXWx(^P$L-qgX7UTcY@&6r< z62CRC@DQL}RY|Re=R2TedYOgiB4wYFFJ9_+lK5?fqmCV*6rh(`aFpvgMbD5N4-)@f z;izW^C8rcC#0eYDQ$F$<} zoWuWp_`J>W6!AY4jwV`ey8tEA$GlLW$K(Hbr_h9014;qn5`mRFLMT>3~pk#WP=Zo{HigC*khib7VuD{Pwzvvha;KvGK zH?IpQ1?Xi$SZ@5GO3~jx*k4+a{S$?whaI34pqB~9W-6mz#dBPL|3E+21r+N^f2wed zqvZw!D48Y`j!Vfh>curBZd#8;1N~eXP?Y>kAvuO6pcJ6VEPPoTMmY-AF^~+-@8>IP zQSzQbax6>c$R=tfF@HdaWtFxg+els7ThX8$@DTI zK_~iAFW&A{t=vDmbZ4IA=tBQXh44611q3LWCbOKd&|(5Y$2I3y3d!*-0i^&r2tK)T0-Z7(BYc@zbGW9u>_O?G?{A2l=rC4|GIN&YIh-sNO$9<@;3czl}-_l^3b*e;$>0sm^~((Bm@c|7WP~zmLifsLp@K9BL0h z>{d2-&nsFXH-j9O{qC#aS-eu{c&<7cRtHr_+c zwDEIPO&h;J-L&ybR8AYeLhZEiYgA7gzd`-9@mo|-8;4LsZRAl!ZTt>()W-WE@b@xh6Mg?lEjY?Eo8*bEF8y-|#8wP5w4X(O2s!(@rRHO3R@S^tGFj0MN_)vds_)&pv z1W`2Zm6SZP=*FHabz4J+c~IsM9vOQK@b8pjO)$hiYx(7}RSU$D)U>F&^2FuLj*lh9Y!n2gT4#!2X{YfM3BU1KV$ zxs7S)u4_z3e_dk+I_w%JqsOjs3cBnXr=pVEI1Qb4jnmO<*Ek~t&a}ZuCpfE%IIt_z%}gYzrE1(o2LZg8OoT!g;7#$t5lHI|?^uQ7n`yharLd5uAI z=rxAWqt{r9F1^Mw^yoE~qZZs)fj+&)N_6TqR-sp~aTdDu8mrN-*Ekz>;Kn)V*=wAO zuD!+@^zAj)qI0hiL+@VWJaq3JS&en*=4-4+KVReg5O{$NUf2m<)CF$n1~2XbH;T2y zOEmCO7kHTtZmIw`SAuajxWxlrZh%`QctsU>B`V2{ZKx$TwxgQdxC-^;#tu}JQ)LXe z6IJBKF4U15yHQDQT!UJ2V;I%sMgsNZ#Br<56@HHuj>Iu(1!_gpCyX2^){0qwvUT zJdO^-#uMlGODf&bABey<1o{y6YI zwFAT-xWFIk;5!vyt`hu_n>ex>?|Sgoj}7oA68vcu__J#8Jumok6QtTl;xGN+uL9t& zE$}xr;BRZeLv>)j9{gPc_e+@uv&uND$uM3eO}OS zf&m|B`N5h1SZjfGHDG-$*iZ*H)`P(Yu&EJj4uUOBU~4nj)&jP-f*oyOs2#LBz|IhH zWHq{Myw%+a_H=>cy1`?5z+=aOV9qG(R{!0M4+$lWV|JYQaYo*MwySm4?kFjfnmS4SLKjdk^SYkdQFej|865WKJn zyr>!6&;nlE3T|uzFKGua?Eo(eftze_b0-+@0=IO7mx};#s|H@-0T@7C21&2*A;RCPr6Gv9#x&Yp~-U4r^0Y6p?-dG2IydJ!%0lc{p zyd?jC!}U`m3IRS`#4|^@JCE(gdIKflvFvX9D1}7WiBZ_7oxz}MQr*E_&ZhQLqR;HNvm&vb#G?FQfI0Y9hB zB!1onzNv$m3h=E;;>c>e?Z#XG&M(VSX&*nap_{@P%M?anaRPs~dPh~$D|D;9j z6QZx@UrW9gel7cnIE`zNel_}Po?0h_U&+24f7zn83DI=^K=MGCS|-HzTl;6yXa{;#E6pdq$dphy7{d9&#G0>h$JsEj2M`IY+Ph=jC zJ+3{TdhB2-PNNs3_eJ;R_amwi{}&KR{sNF^i5+@1urL&)3_yFu8s2GBn}gWZ+SREY5o&RexXQjNvpq)b z4N}`8+j3VXsI@`nir5v}6)9?Kkh?r_xqW$NON_=LNW~-Z+~&aM^rq-h+Zos!Gc@{u zc5!M$WJ8X|9t{}QHzam7V48)de%Tv^% zAh$HJ)LxnyiqQxIDQZ!WizcFWG(+PHXalJwktI1AUBF(PSrl8OElMqnEXAUr4AAMdwlM1kn+d|$FJOydc}XIZn-ktmHOkenHw znLQ&;V+qWp)&q&t?9(!*#;EN;>XZnLB9Ne#1DP2y8bcsO?FMqw5;TH9hFT41Q&Tj4 zK<=c(N%lz@8a+UpoSJkn91mOJbZ?Z}3nWhrpO`%%POSyf$48IPAD5)I0@;c2iPpq4 zwG_zHhymg8*<<6!TF0iTr9ggMa$I=a+8(VZ)g7TW0*NlWE7KXH76K_dV&_7MkWHfm z#5%N&RC}a7*Os6$0y3?!R;@KfBLw7{6U}yWrs+^H84T0d0P#kvG2IZQkpYtR;reV{ zyw0ji)3^Znnq*D5CQG9NSXMd^4diJ|fUrO7i~B4Z5g=*~(`W#h>S%SI#sUb_SO9Tp z$+QurkpPmOuqW$|(>MU>%4lW2B1xkFWc9di>1i4RAg?90u$H9*{8#<&HvNd||GyCY zu>b!tZ=%<$5Tza1{;GI5a=M16VxVN2O!dPN$1}|TQb^8V2`B|rDQxFwP=ZK!B2IGC#^#c%nGHw65$Q3P~SJKq)|z zsg}$rtt=Dsv0CM`G|i?3TLP3!AG4gKFt90}jfQ(mYs)l+rJpUJ6rhhe21~fKy3D1p z%%vr_2~aXk=7rRea2@>{^(uCen!B{mQDr)5a_N4cD~$8VRU<&j^fNb8hpa6}>6BGy z+b}RRIJ9bUU+JDuq0r1Hfh9o6^f3#X*r@dq+-k!kND~=aRk|xwDl7|V`91+kW;Jsw zt;nS!bcBTlL!x@Rr9+FR;aA1u#;s5+q=mN&P%?eY!uC0`8nDp(1RJO~QhKPKG`>Vh zPYwB1u0CiH$pQkDOq01yTu5uh+o1601r}?ASIk}1>!=7c6q3a(0i^&fkDcWq>W96rhhe28*LUxLRR}vIUd^^fA?z zNH4dxD(-Gxg=LT}pcJ5wIR;C(bf-2ImZh}hb^%JJk2!{&dRFO9?HC-!r%)~1D2?L$&uPJ9VK;W8aW-pY|&p%h>@+0eYDQ2cK3P2hL%KW0wvn94puXN&$MA1qWYW zj_z<&XITozN?L9}fRbr4)yL+f(o0W`Lb8e_pcJ6Vynv3)bw}ACh2{oxmh|<`D&3uH z6_T@90!jgzOtmCZx;NJ;Bxlot+XN_?CKG!zdgPCK6)&Po`>5M*>CWsJNvB?6JcnF0 z0+dWYvz)PT5iJ-U=jaB7=3Lf*Qh2E7!x~Tu(9ax;#<5oi6`HlI0i^)_ z%&}-3)wE3tO^h|56ri6u7LB9PMzcb59&11;KtFRV8b`B@7KLUVYd|SLKXWV^N6^!% z(5z<-CVDL_AyHSSFn zuD!b{#~+n1Qs4hIyJ*b+oo-i>$^Lib=;Uu@~0FC=UpX&ero%;UA zY3%=MDo;`FzX+9YggmZ`DfeF`^8XD8@%epgX1`1Ee^2v=@&C9te^*%7kKPK7GmNeH zdM@U#2b2QzGsm(O9A}tLg=QmbKq){!b1WLi8Kz62xr8;K6ri6u7LDT!)2+~4${J7# z(9ax;#&L$}QD`n>4JZZZXO2bVIKzxnXg1TL+XP7csfi}DpgDT%R5-&pZfqTcX&s|5 z#>rA6K*{to%NY-!VR~md&oIX-G+S5$N&)(rW6?P71;#5hm$L?x0`xP-qH!Fl6BL@Q ztO2C}{mijw97pOzh2{#@fKq^d=2$e2BlS3i=1SIpQh~G58*4x*KtFRV z8pn}(fGWSUGUv38?g#Rn?`3zzhrS^DHFtdQ)a#rp*)nOiY1*PM@bDBbP9cw@-KtFRV8pl;(x3QdwVpcJ5=ITnrMQ0-S}?qm%p1?XpvMN>FbM_<`T|NI4t{m-TH zM~eOTP#I60U=DE?na3kxLy6!58z*?cw8H){eK0ON2u-pR4U(~*#9Cb8kGmB{r|D_93T^SyUwEW{$?6q zkV+2~L2cg7ywm^pA5;7PPqh@{fBxKSmy4^y|ICxE?_41IZr>!|PT$RDli8tZ zHF#;7u-0x6&8`ENh~|bpn?!TVn{n!n-MdvZSBPz*S#I7Tn%n3RN^|3$>qK*9@BO0L zA9_?YSBqywbI*bOqS<~YEtrg18>pPJ8#q94s>hH)d$xLv-v|^H+`63 z4LO54IfISl47QRp=ptvZlAOURat7PU84Qv$*l^$`!oV#eSU2-F5v(1!Lj>(ZcZ*>6 z=6glZO`j;(5qMApyAD1if&uz$!O(%dgwRtW*g5>P2zu$G1}lc26TzP07er8db3grp zK6KEv_OtXOeez%%eez%@eez%%ee$5SHlzis_H}AO`^_FL*tz)_E!ehsycV=V6E(+I zS+ZvBy~maPT}9ydvcIc-r~L2QhfgT`ceV7*`b_=9uhxC&0?}NH%~^rX8N}vn!{*en zIo;Tt)!3XJ*qlw+oE~gW3!Br#=5*0F)7*v4>B8o0$L8$9=4{923}SQEkksGwp|cXs zIyfugY=W~L&I&j^aC+ek!PyL_0cQ=IJ~(wayW!N~?0~Zy&JH*m;k4i^`JyY}tcTML zXEU4~a8|-;z-hv1!`T9-gtHb-Kb#eC_P|*IX9&(7I74tYz!`wE<-_&V;cS4@17{1I zAvoP|Qou;717|0kt#DSsSqEnT&Pq77L*%T4(}q**A*T&zJ)C|xTR(KV;B17`fU^}& z8%__LRdD*@?1Hlm&T2U8;k4j%!|8(44QD5u8l0VQ*1_q6v+YBt24@gX31=Ieop2g( zR>K*9vm4HKIK6N-z*z&Q2TmPM51d_ay5Q`BvldPh&h`(T0?sBltKe*hvkOiMrx#8O z&K@{B;56ZEgtHb-1I`LK4LG~u)Zy%gvj$EtoF!+y9y$#*H^W&CX9t|!a8|)-!dU~S z7$9c|P9K~>IP2h)a8|-8;p~C40?r;dEja7QX_o9m9$L>}3ps;cat1@>4EB&S*h(`x zj$}W+kyd;<6Q9n;r_&D7r)$A#lpKCO%-Dt*eVDNmGrBNiGiEF~W=zc3jv4)!u?sWm zn6U{nmV8JrX6(R>0nFHq87nYj5HptSoz<8zgc&W&*n=4>F=HcUEZL>1Fr$qbYcQjB zfM#@K#sW-Qrw24?KSjCGh%$BYJMY#sihsJz){`??By z7hT?(*A~y9NqT$U;kR9Z^F`$YzAE~6^M`w4D>VXXsNS34Xpz^M1v99O;~%KXmHcTsliPbr-ll;I5p^WacZ#W;?z(_7pI1nL-)~A z=;G8+OBbhxj&~lR#nZ*9AwU~_y&A1%K0cdf&V zNXbh$>XJx4>Muf@&lSB*y?aGv6@9J;MlPe+Vd%~3;vq&qw&2I&frK@}kHy1+v%g8Pre5<4J(ILv*{P@qIa2)56~x_ zgkSQv@L2I%pc^&%$_g)f2r1&GEf`xGbbEoaUmxZXD5;o3kEsngdcP#4tqzIdI0=)G7?7O2REfIi(aN(mZnh#txK&- zG8^L?Z5m@RadBcpm|FfPFN$20FUdF=?EA&#aEGwpUwcWvIo!y(+shu`;nDydt+exjeEwzbv&Zx=dS^UK(3! zQLF#>kUf+gObmvp-G4Gl&GZNIOHxasOSC2F#j(W}wfm1RvKM6+CKiUN<$v1nZP7WD&&Pqn9JrzEC?sV6}4q{vB;$@xjCF=Y|dj!RFBQE!0E zg!lw|LUw$j?AU>0%^sL&kGCCYIn>k}+}v=WE=FzsGqv$ryEa>spjQ7mD``cnd>}>b z{5X{v)hTNKuT`h3VpUdEhI#o0u09((x60Wc-N6$IT=U>0+CshA`S26zQ{C~rR`v2nd^f`)0 zCwK9q6Hp4!&m7C66UXDnxeCoawCGj=N~V{2IaNrMAHiy9z}XzzkxOQtLU=E)3n&HX zWkPtg7BPh;i$ep>aX#iN9QUyUlmhfJ3yyNlBFW)+?6^STxSt)M6rh*6j@IKM5gYxS zsyIqk-@v>GH<>K%17|8653mE20`xNB*hE!$qh5y{OBR;4id?90Jjf1E3ed|$zLKqF z2A8Q6i-wjCmR3hCQaB!B2Pg&TWv-{S*g|7Vjd~T=WA>84*`-}&7AqVN({gPJvo88CZ1<}0pLR3Y3)s(=7#$ZVp?EUXmotEJ9j z6)~;Uq?M&r#DfY+iWck_pk#WP+vprqen(!>w`5`I))`Vb9%Bb61?XiKR^-TJUn3`$ z`EyFQ&QgWr30iKe043AQgrocrX+s0fA<`TJb1qW|pCna4fRbr4%Lxl@mLYUh)GSv> zo?;0o1!ywW636*+g+lT)OF$_=lc|QT>DNM2wGC%!1^|HbRB-Cap5WWG;dq%HpcJ5&S#XrQ za+1R_5a)Rc$1Aj4p8zGZnptp!Ms1Lh8vt^Y-p8y{C|+d+C~ zT6n7fCDY49qqFiC$|Ze{3*}_Th=ms_gr6c+K!B2IGRp}I7fJ{n$Kyo`$){NYN&%Wo zwZw5eZcs=*!xB&m&}6D5jtk|*3dv_#0!jgzOtr*uq1>pDyulJs3eaS#C4~#+sD1sY zKfZk~)&EoZ^EqzU-BeDb^0`)zYxSwrCg4nZ?-aKyOy%nf+^!8&D$a7d_EP)*6Pi4( zFH;|Y^;G^r_5Kf1nL_0t)%|az;-+#BjR6>@9DrY^{C^iwKY%~hdR%u=?!Vs2Zr9gl z(R)-XsO+Qh|4yay9UA-Z!hpvms11Ot{>nf7l;ZzGt%dr3j{n!b&+AaUFTX_b<$aF7 zJWvYIWU9YB#|^-x3d!eL0!jgzOtr*u18|u_@+M0_DL|8{mN;$zHYp@;(SlnAD4AX+ zx$L- zw<;80qQ$leP%=#>w)_=k?!{`wqP}I0pn0;R!}=8po)hQ^w;WP&_=ZRu~VG%P&C5^fEVyD{0p*ciTLFd7tAf zvs2;7($WJ0luVNe2hL@qUd2FW{_>&zg{8aME`{V@Y4JV*N@g{4GaaAh?>GmR%`V+K zyA_IWvI3L>tY%^lD6d$s)NxaLjY9D)T5P)jCDX@5B#WJ3)T@}7WoTg0s4#Qdc+6Sc z1BMmKZ<8z_K*=g|mkGmzJJv zu2)$8gDs#GppUtQR%BaQ%ixL?LxcULJM;|-%lBx>0Rc*;$-JDNFI-sm3mck0*ZI`^ zV+zUlSprG{n#^*mQn<)qRUBg?+^CTJCrdynK$BV6i8qYey+%6k&`#`paQ<Ha&Ru{Uxe;eQymY1Zc;ekA)8--ln|8YWx~1nD80K2 zk4{$19&p5*H!B>dPV@^mA5M# zKVb(b1?XiKzA8S4l&;E$n`3h6GoU*Zj-RpvlmhfJ;V56vv|{#rM_tw)h2v-J0HpxE z%z~rb4HG#WwIxY~nKg1m79InQn!EVp z+ow~%f64>!*F|pEeN-k>IY_bpB@5jygUS>1450T+kL#-x_g_Foqw>%OiuI`+q}YEW z6*rZ;sQ-WOG>Y}7Qe025e+BgexUr0c|uJft5 zsO+=pxr60#ePw{&qavs@y!+eq&nW&MXfKKX#RvSUi&y?T6<^*j=xehCD49NHxi7D9 zDZ`iNe8PN}!tzVDfKq@y<`^uF^UK`|%dgl1N&)(qW3V{RF!v}dzh(<41?Xdr!QyzR zb+5wm8@7N_fIg<$(&wlKzE5E}L`!ZHpk#WPXd_Xsl|-!=7%XN09653vA?^JNW1d_A z0ZOLHgfT`Zo>8xno4~=yY{wvZ4=5zRV+kk)Xfh$e-N2~VVF{|6@w?)Y^PocVJ}uZ1 zpk(@(kZh$B=&0AoNPL4!=Pz>f<9$eB`8``eDL@}{43^%~OTohm%Li-$r2u`*F<2&* zRtP+zu>66R91x&nn#_V_+o&&WkzLvmKJQf+|4go00ZL|o3FFb83mL)~rs4DkmkmV*mxfE@r+o^~U&vqy zP%?eYF>EBqi6^D7{FRm;5TIn5%yMf}xK+p6%qrbTk0~U7qs4a!P%?eYO>}r3ZFo*x zb?U{Ep}xLIA@kG7W|}&_WXE`1;ru(<`~s9rFLNE8cP=S=7fnLPUGx(Q$3NHsN&$MA z1;^2MzDhw3$5rl0g+sWo9-w4;nFU9=yJ&Jau5nK(92z@7DL^l?;3#+dNe;)3_O!y` zVh1P%=w%ih9Kev>;RnO0Z8Q+6!%{_$K$f-8Nl;224LR}ZdbP3f3zLOlM$xkZ2mYrj}PyDzl_2XVhbn*=wpt-;y60r zQdn%ZfRxRiE#Md|j@aUDg{6}%pcJ5wIR=X(y7(uBrHd_~6rhhe28$!U_=3XH%@$A! z(8nBu#SvkAQDNy}3n&HXV~)Y%h%x?IVHw93Pzun;9D~IXWqe6tIhK~(AwbGw&lV6* z%*r35^vrDZG1@=A&J)NG5Fq8YCsJ;EcB(d#;}P1wC?qG+A}s+@ZhNASss8%Hj*avUg{7A* zASJhF3pfUgVwqo0s^FL_e7JqmA=68D~6N8 zq|)p5zbPbBX~C8NCDX@LZ=*?${q0){%QUutl7@7^UJZ`H;@IE5t+33XWp)UVvf8r+ z9K%MM%$){DHd3LUwYc~FyTW-g83F>NB=znM@NZ(ahPGt*7S?<{aj=|#CNdKX*oW>TA(%iEJ9D~JiQuv<2ayl)O^2Mgy8tEAWNzn1aOIxct)!;bj^}pMsB-ea;fDkNsZd5p77!q1k0Vm{ zIG6bk-Sr^F{!=LS|Hh@%zMqOt27YRW$zp6BPTOPUSlk^KYTzrScTT{WGb2ZI;J% zA;tbKDv!|E|I?{_lj{60qasoNzefn|_|vcZIgS6f-7duc9B*vCMuf7vc(R#BE9xJ% zk;`63DtjH7>~$ov*E@g^U;~{%7tjs#0OJ6ShThU$fDTjum4F-Y00tm|Dxezh0w&-C z{6GM(fEu6{r~~SO2A~lL0!=_O&;qmq7>!WJ@PIl7vePlLoQ|R1bd0^GV=y!wqm$_v zE=&PjuBc;5KjPg1X z%InA{uOpqjj%@NelF94HC9fluypBxrIugn2K>+#Vb)=8ikv(2V@_4-sKpcbeD>VXEJ5eNcJ zKr_$+v;u8FJJ11y02}B8x`1w=2hfHIEBzxD9>s?2xcO9ADbtHP%k>_1Uns>b!K$3SIIo@@oc&8&6 zIo|aSAOzSzC(s3S13kbvKs!Ki0Xk3tR03|m0~mk=s(@<13z&cp@B;zB0&0L-pbn@9 z8h}OueZnB7n}BAZ1!x7@fOen*2mvDhH;XV;OOT}N(q9jV!MKY+ySI`Xp9Cq!a)9eLSxq-EEUm0d?tb{#p{^&o(Z>^c&% z>&VBhBOSZm1|S)`j$G_|2(W=ppbO{*dVq0&c97r#bf5yL1l)iJFaQZu0o4ThgkDUW zfDiBk0l)%kfLfpqs0SK=Mj!|@0nI=Q&Pkw;xe8g(66)O93L*O5bAM+$Wv z8Ps(oP}h+-T}R$@9cj~bWKGwRG+jr|bR8+vb!1G}kuY6HzH}Yw()AF4Wa&C`rRzwQ zt|L>rjzsD736UvXN1}8cdD3;HN!O7jT}P619XZluqvpFBLljQ1n4^QpX*3}t|R-oj^yV$a-Zu+eXb+(xsJr= zI`W?DNPDg$-MNlz=Q@&|>&SJkBh|T%Oy@cho$JVRt|QI4jx6UolAP0(PjYI7Z#&2=O;r;9BCY0Y(HHP>ALa+>Q% zX|5xqxsFWcIue=d$YZV}jk%62<~ov?>&RiQBZaw+4CXo#nCr-2u3JD2Pz%%n^*{rG zK4BxKgFq9|4732PKpW5wbO0g120DQ*pd07`#9D#|xBwlf04f1D-~kK(L*exgcVg^3 zy%7ikO+Yiy0<;2h-&|TDpdM%eY`}GZU;sX#4rm5Kfc7TA1DHT9&;)b=mFes61+eS5CqzRZlLlYp&GD&MxYJo0xAv>s(=8{0JH*~ zfGaegRtxX}bwD!^0<-~w2WTBwKz{+~YY7tY1NA@)U<0nr1OxB^bwD!^0<>X*2QYzJ zpb6*z!~udE@B%eJ5NHRwfy#q~YQO>-fi|EEs5nHZ0s=q-&GXlv0qa0!e|*2aKl@VRrSMC+7cn|r{)N;F(HFEA z($B}9x1P^D7k{q&SasG@nJ42<+D~SmNIVgKBKLUm@yO%($5M|)AJZO7r(!89mDv~H zXYb4IP3#Tt%{`iYH1cTvk<=qm8rd%WaO`30;mkwvhwO*44<;TAKbU(U`9S1>{Qar> zqxWm~r|*m1XWf^%H-4{uZ}y(VJpmg3E`GO7W8fw33S%6+J0o}Ilc{7hsU_2UVtcGT znLFZl*mq=aPuw29J$GC3w$N?aTNAg2Z_VA3yd`o={^r!p(VMlK(>KL#vTn+JJpOU} zM_eJuI0$j9h18wXtihYcq*>!cJs|6T{)* z+%?H-BG=@1r*=noYrE6CV!NzenVs>S_Rj3piL1j`=XNA_M0Vt_N?jGb>YeS$?UC*I zZK-Y1ZQ8cGNbuduJkZcS_rZ_QnvygYJweoJagbc?nn9goGWcxH2av%NXH zDX}TM>CMaHm)VzPFHKw;zBG49@{-6U`HiWK(T&>1^u@7@t&1}o;v4J@*^3evg)hoo zn7lCJ7>Un1f8YA(dTo7rU2L7TE^}V|JlioMUw%z$O>~X6CVg(~Tt63Nd@&5X{}W~R@Gonf7kIX!;5eR}q^#A)Hva;GLw4V{`jC2>ml zl-$Y5lOreRXQXCCXJ|9h(__=E>6vNqY4)`2)Wp>A)ZCQhl*p9)NvV^fCut|8C&wmR zlQWazlk7>^a3UNI=X#U9k>31?sS~3oYA2>oh@D`akU2hnynTH3xWsYc<8l*|6C)Gz z6H*hR6SN8G@v-sN_{_2KW9?(J$0UvkACnuG92Xgv?@9GUd$gW(cdXm$&UD4Q?5=EQ zqBGo?vy*nj&WBQ=Xh;jCJ7OJHN2WdAZntOK5^dqOTx+s5(wc8cwM1LAmUMHh*=o)- z#hdJ=Y%mcF2Xl?d#zGV9v3jdMQx~tZ>$0_p+Hh^ICRr1y$y+HaYH3zF z5DQp=j6d$T{aIha7xv}Mq!}^u-jp}$)x7EIShZE1sft(GRau#kVVN_MM#RW_Ql6+s z^Q7G|x8=@M#w+d0Y(=6XT#?h0dPL8=Qm&{=bEUPIW@#A_rwIS=&jj0kLGk~eOXL6H zYeX<#i2o7Y^bhl+03i_N$Zh~pjzp9r5#>lkIkEyklp_)4NJKdjQI15EBN63DL^%>s zjzp9r5#>lkITBHhM3f^Dbvslp_)4NJKdjQI15EBN63DL^%>sjzp9r5#vb2 zI1(|AM2sU5<4D9fvKv5*BN5|B#5mFgAjXl1aU^0Ki5N#B#*v6|Bw`$i7)K(;k%)05 zVjPJWMlk%)98 zA{~iHMlk%)98A|2@l5a~!nIuenNM5H4T=}1I6 z5|NHXq$3gONJKia5a|>@C*mE6ct;}Mk%)IB;vI>2ME+ ziFijM-jRrRB;p;3ct;}Mk%)KXI6yl{K)fRn??}Wu67h~iydx3sNW?o5@s32iBMb3P z@pB^Tk%)REq8^E;MXC?gB%&UPs7E5|k%)RE zq8^E;M?0BTNW?x8 zv5!RTBN6*Z#6A+Sk3{Sv5&KBQJ`%ByMC>CG`$)t-60wg&>?0BTNW?x8v5!RTBN6*Z z#6A+Sj|>4efY?WN0f>F5tr_l$i=Pt_kVFI|5dld=KoSvM{c2Ac;6gA`X&>gCyc0i8x3i4w8t2B;p{6I7lK6 zl8A#O;vk7QNFolBh=U~JAc;6gA`X&>gCyc0i8x3i4w8t2B;p{6I7k-apyKC5G$auX zNkl^u(U3$mBoPfsL_-qMkVG^j5e-RgCcy>h0HPs@Xh6A{vs2h9sgPiD*b78j^^HB%&dSXh;^Kq2lL6Oe7H#NyJ1FF_A<}BoPxy#6%J? zkwi=+5fe!p=mfd|#6%J?krZnQh>4^N&;i6m5;2iPOe7H#NyJ1_0#!gY-~~*;2UNT> zTNo7{&|`vTBiPskHrb%9h5CijRRNBxBuWn^$4hWxHF&%Up4bS^XaY}Z0Z(fK&*%Un zHrOY6iTy5cu4^svMlYE3fp-PKdxGF2&EVb+@QDyn+CUe6envY;lP;hFa03#k0;&No zU;;kC4_H7APz%%p4L~Ch1e$;rpcQBX+JO!r1lT|)Al@NpfD6!p3ZN2j10KKtBv1uZ z175%ce1IR&X`#mRmEemWaK8af0F$4r13%jgz7?Rkjqh3bn?_9jD2T}>pap0HLVyi) z0@@*h4pab@fCrF36;KU$0Tb{6&Gfg%Pg=pBwSzzJz|vgwJL9)*@O=aPpp)p){9W{) z)BqY1SSoF(JV3P#bmn=3|U}T9XKus zPG}-Zv5zL-(1_9n==k}~O7JZ=-tYhhe*S_F{AvyOjXE&f0DiNPD4Q_(?Pg52V)DCf znC!sh_q7AWAL!samEey&;EyHv(`xWN6a0mbCXR!p{IGT(to8~-z+^lQ=AwAWIfhCA!n0sBC9e`0@lf9|E^OOcoIFQ#6MzNo#JdLi;c?)k*?_Vd~2 z63>O7%RU=_)_OMmOzau$nbgyfr*lswp0eqwLF`HG$hIeJcD({qB@-P+yhyP|h#cct!(-l^T0PR5c}GP5VX$KI2@BXLLgj@<3Z z+atH?TYTwcBOa5c3L|#SI4imug>mB>xiWsGeP#BF#1-Kya$A#IBU|&Ar;1MqB3p9tMBJw51F_B8=G3Ohrrc!-dODDy zk@>YtQ}k>gw=uCXOk?xM>B&HPLv%x)M(02JbAinI_?$Ih|N$($WO+dezHdU$nsb?&U>S&_5yt5U0?tF%?= zm9dr9%FK%R3VTI%d185Zd2U&9S!7v$X=-V7>F`i^C^wiKj11;U zttM^7EX&FS;sHC5^(Xvce~wazM0|NOWkyZSOnYNq%bTf=SKHOuszg<|DkqaNBJ)Pd zh#H!a_QX7vC*zL0ZFjaZQ5mkxRU|7S6?r|SM|Dk4yJ9ZOmC@pwt!3%9uQGn{`Cn4| z|Jq{wkMaLT+W!lIA!)ZArE6oMk=D@Q3TJ<#AIvY@NJb0)9i~kWRH>m+_6rjm0NVuKk;g3ZV#h%-=CeHpw?^F7T;piCtV})ZLE!QVN$*g9=QGU=C8s=ykc7|e0vY#jv3uxi(0+dXXscuc==xQ|0 z(J%a`3gww3^9xWiy-X-EwBo2&v4iW%MT;CA1AeA(EMx~L1?XiK9Od=^ayX93_Y{sr z>;RjH1Nbo>&5U?8n|hiqkro!6~-ZQwF^)(z087f+Yv?_J9RLw_z2~% z6v}11lAsizmswCAJ(mZsq@!QGb0vSRFfJ!cK!B2IGRqkY7av+lXUF>AC?qRb0!jgz zOtr+ZqyJVRS;-Pm3eaS#C5}D)kV3MGC7=|b$y7@myN`zWU3{Ot}nk=NX}siC0=fo z<@$}%6>MnG+0;BT9!GKUe)Jy-=fz|T2v9OjCY(sYH0o6hbRx4y4Z9{56lN?JvTbAu zCG?{9Nz$_{UY3#pqrg&Vxq`v<*&UU-H zsC>T9?OILcy-6O|4U^n1o5ucsBjR?gqVjuc_kRbK326Vn&n0e4JoDTAwbFW zG2uX-pi!@4KXg8yID^eurRNhv;oM5LfB+@aWWu@iD9({<{Zi*Jj#44Hf+e67pvhEA z9OsiNh2%<>fKq@aQ!R0vPpTD?ZM0y&040-h&C@h;(_BhB!l>8CuGY86G4`of;n+?~ z3d#*ta$Bq_IICilElmhfJ3yyNn zHOS%E&n$&wH#Kq)|ziHCp}ls#Yu`{xWfMk1+K zNUmiGC1b!TqkDFr!-NHqtY?RL8C%>1IYpc zluVO}Ewt_^N9D)`ps#m!X;;~xLh><|fKq@avmiP0uskdY&*oni@57oDk{ek9N&%Y8 zg5=2K@~~vmZ2o0Y(yWktoF$+Xpvf#qjyy0AOD50eUlt`T3dv0@0i^&AhLILUJoh zKq)|zS&;BGvGhE1_$1Re&5>QBLm|1H7ThjC$uybjL(?&|#Wcsz79oZ54w3}~D48ZR zMrVV|${(8Z7dsD4TOrxQ5>N`zWELc456$_Dorh+pLUJc9xI=)F>0=`E!O_xR6~=8{ z+SfN2c0|h49RoFVDV%qaEg(S3P);Iv#CJies%WSrqPb41YFGVY!zrAZ0#h3pfUgqk8igh2=iB zfRy{3Euh*m%Td93tip0XTR_Tw&K7VC7OLW;mc7N(^mv8k0k(jY|C}vg(Nb|oh3nDF zsQ*2cf2Dr^mr(K0Gl0h^_CJC8|9_d{{`FMyH0Ix}6#E}TW)&!O@sjQLOH1S(&q zxPLi~|DUJ0|5hr;P5kDwj#D@vAp<2^XD3LB)`^JG z!$&zU7jB&UhMXssIL0UVtR-AqiYu5F7wV0+&N^JO#;1o`U5)1@CRa zdt2~cu?g>O!F!AF-X=V=BQ$B+G-)g(X_~faE2Jx(5i&Z{^!IrkN;EE6_Trng|NQL7 zeG0e$@xHjky~Mfq+|TjJcur@aGO$-Wo3U{3HJ9Ppuk7fPv0i7O4Cbyga5iJ%7pA!k zPeW!WpA0$LBzs|$E{~#&-!A&^AUz}OE%gbh=n$0g+jR)~hb-4$rnYSDS)Y*SbqLA; z?m7f1UUJT&t&Brf9dJyx^{dP>pO6=H2r2`^T0$c~}|ZDzSo$V>9V zX#-`{b}^!DW1E>fr_DK~-IujC{&)7td|7g$2Ff7rq733Lo-2RD&RX=Z@qtIJ%C2f{ z2=3w&@`?^Y8N^+Opnu4It-qpOeL`Nk#x0$?316TRv>N`GmYKFPSz_##h%N z$gk+qMUI>H8^^9X^4Pg=o4VJ*?o!1@{@aqdyHDnuIum6ibTOh`EOYCZG|BXI0`O+8 z@X35ja$*K5t*u=wGh~FOtl9VJ?FO)iPt4mo24(zp(bl#TxpwimfHr|@IW56n(n9u4Ml(E@GTiZ^IXItIhC+2fH24zHc z9fR$}c(&C8d}2PYV^GFq*D=^mjAvUt&?n{#ItFD_b{&K5#CW#VgM4DXsAEvZW!Ev- zPK;+;J=iDaOF9N+WOf~c?ZkMt)kAz@zN}+V#xU10*iMXRTRqe#W`n%wsDVn`tK~c0 zVj~O14H-vb-k);Mm^Fv_ME;hJL}g%DyI3R#5N9L3f5|c4m9O;wt+d2hh+;N?PZKTZZ8s@&H|EaY7uaU`- z>AAf_f$e1a+Ktl2m+7BxkaO}fZ6j0d`mVsqGX3njuE5QQ$an$rZ}r-)z@akz#Wh`l z8)fR3>Fuk#0tdi$0}(^8qfxGEGlLE8U6m3IIAGHoN%*W}#)8kv46 zZU4Jgh5}WfpZt?t|NqU&+4jF);FT3)B>PK!vuFA|vUNOu`ZvUV5QnkH9FTAp5{Ou!_V8-)M_p#$vIYh?+*ff)2b9Qt7Z24M&ikc1Qr!w8H*8ZzL5DZ3Us072-0 zPUwOVSfC)jPUwdL7=$56KoU|g3?ncKX~=*JV=xXAFbU?2(6Q!935PBSfdvY>p$B?l zXp@kDB&1*%Mqm`ukO3FQU>qi35{%7)2>}Q~2Ux4G;gchDLl5*q7$RUp6oxkmBQOeS z$bbuDFb)$i3C3o@ga8Dg13IA#LSSjuT+ccXx}gVpAq)|)Aqu^j8{`3qfDKV_AO?L9 zhkh7?LD*D+u&D%LQwhSR5`;}92%Aa}HkBZ3DnZy(f|$2Aq%MR_X#ktj05+uoY)S*z zlm@UV4Pa9mz@{{SO=$p|(g3nI6etNGdqaVe0J1j}C2-pw> z2V&3%ap;Eu7=$56KoU|g3?st4r5$B{dX10)7sg;5CSVfGwL$=b&;gy$1tG9NK{xb3 zubwx}Jm`U52tx#Hh=QYu-YH89Bf|WpWxlae=vgiFLKymH?v@43+#`Po!CWcCp>OrQ z^1_>h81#X;nRzSkm-n|pn1m(Jw^4|$evps0U_%tfA($!417JfG`t`h(56Su#<}GcK z`6+NAv-)B7#e#xvuwiubBdn=M<-I@z+*uxzAKNUrFb2`+tt2tx#Hh{AC6 zDS672&tt2tx#Hh=Kz#=z}=)!vGAz z5F|8H&&ehPDHw(k7=<)sz=bgwhY4Zc(oQnpTqgt|2p!M~T`)YeUS4yvkO3FEmsZ$l zg;D5US29BPgoFAkVrr9o>?fz>GuX4b!0e=+-8FNwtQVMMYce+pgKP*LeCP-GfSa4- z!`v|~pU9pK^68u4lh((lYJ%U%B#iS*h_i}22@c5G2)(!^I4F9y7{NTbE7#YEY%sL^u@kseKKn&s#-Xui821noB%w32=Oy4q&l1Cv1aj=&P zQE(up@2=!7#2^mAwL%AULO0C6H~mpwU;AJ9(D|_TLGc6kgZi&=^?&uv${WqL>IIrF zR$nN*P<}r5e6v!K>;BD3b-FO^OxN_4|Mlle&t;!8{-0|EW*==lQhp@&Nb})}T>YPU zs9r9Wv*pIR^19r*=7W_7^ADO2Rv#!l;5<;fzj(jvQy*~Uoy|KccjWId@2K8hxZSzE zc3bf__qO`2rCYOd-GBL(+%3&grIat3rRr2+%9*O&T)f%6xqegWrtD3P&y+v2=GVUF zKYxXJMfLKjVz$^=TV9)6+q|rDS^hHfvg)OUOC7o9zj%pzN&Vu|#aX%PzkE^dqUME_ z3-cG6a@~L70_TF-`Ni|y^XunLpPN6|JhysI;T-3jcCYy_ot{0taa#Gb+-c2IH=I&D z#XV)?$)#Vj4&bKM<<+^>&7&$u<&QFtsvcQ5(mAqrMDYmsi2C8B!?TAs4l5s)JFIzV z<>gY{sB}>FpvHma19QJ&4Zz%9%{?o7=Jz!BtnN|R!`Y*@ zqPW6cQQy6^dv^E6Zspx_yES*M?3&-z+_kz(VHanY+RnwD-JR>pOUtv%8_UYea?6_8 zN;aQ0v(=@ArOwjYPQ{(vo$5Q5cFgYB*rB{bZinXfmF@G}o7-2nD{SX%SKGF@t-Edg z)1}|=+W%5In{JGjM{}dik;+JZ#2l#(7lxhTTB?|GQ}tvinN2nles zU}4Z1tPKMcY;lK?0J(+;XOvGYlgz3TeoI3u7=26EF$pj1YhzbU-KYJyr2NRau~* z8+xD@!Vm!)qToOb`XCPd!rXEWFlP{kAOT58!7z-#D5N0+E{wrAOu!^80ds>8fFN{0 zCv-swEKtx5J0&I{AKjd9N4Ei7r z{V)K7Fa!xmLJEdqM3`I7QRbu}11^lgI81<%5ljd`5IUd}x*!A=DCmYB=!GyuK-$sr z2Ec(B^g$f@VE_hUNSIsB1ap#*f?*heQAk4uTo{9Km;ht7U_tIP}8+48jm3VCxrdzIU(rDEd+D!{UeThxHFiA7rKG zU-|vq`_1<%@8#c{dN=!Sqgt-!s?C|oOn%0kslHQq$9bprcJXcZ?fP4#x3X_F-YiSS zzvdg2H}Y?oZ&Y6|yzabSlbV0-YxP%+SF5iSUU6QjyFQGjsr^@bviPL?Wc`WK6WJ#kQvEOYc=NH!WBJF-$EuGO9(Cr%2{0b6K2&(fd8k${ zmfdoFU1?o*UE{&>gSiKr4^$q=KVUvky}xk3bARo=qSXJZ-&?vjdvD{O@;$kGns-<3 z&fh(CSN5*Po#i`ozvgiO!)JT|^SbJ_g=?K_Yu6O7aj&UgUAj7Zb>ph?Rk^F0S5~gf zUpaL}_KL>k<;!!IH;a{GzGxP!QvJ_aTf3}ynR{7X>i=agZCp~mBzH;k;>yMOi_MFx z7ZomYE~-flK=;D>1;z!{^9$!Y=hx0Fp68xdKeu#l_T0uf<#Tf9G|#TIF*d+d%dvpU zsrggQQ>&*GPH|4Dom@QGJ-L2T>7?vQjT6f!=1y#$P&pxgf_Xyq_`>nd@wMZM$GOMV zk2Q|19#c5RIi_}W@o4wxdcKs;<{SSH#{{PSn=t_j2RaAV4k#Yr9#G%Ew10O0#;WqF z+^Xh&mHqPjnfq09g`AVCtt_r|SJwA6_O0$y*vHwYws&!FcklXMrMI}ycBjUUL)Qnc`g6-I~NKp=C*2AT6 zHr(hf_vU(=J(Zq(&(v>R|L?Bo`k!u={{P2qIsc#TFpSBiKh+KXEuBS=^64V+b=^e* zm4Oj$8(kzk-I`YWr2LLfL1kb>+eV6~S5w|6<#%-oDgz_hHd1zJ?VNnHPs%rR3MvC5 z+BQ-=eVUH(N%=jUg37>%wv7}|m!@NVQobdxJZhlQhP8{OeA2(j+xu|0PxFb}@_{?f zC-V0t%rQ`DBih9xKj~j|u;+TN<9$-Tty54L7}2(o;^|*>f=|lFIt7)15p5eO%UUm0 zJ<%s+qfS9(U_{$Sif0o&$tR_*Q&1Tg(YBG|*+ftFN%@XWL1kb>+eV6K6FtQz<-0ls zm4Oj$8!4Vm^i-de@97j&21c}Pq=pGR0i7Gc49pHhO>NP{#3`H zGSJqx6XV%Aob40yXF3Lzfws1t7|-6}9G{p!*DXF@LFJ zP#I`z+lldPs~7sj{FRPDWuUEXC&sg_UgQ(=*E$B3fws1t7|*tPu}{q3=onN6+S+zv zJlpCeJ~2PmF{li*we7@sw$)30V*Xagpfb?bwiDyoRxk63`8yqh%0OG&PK;+;UF#F` z5AxD!1C=(cT`cC4zvXk+IM4nq&$WKvF8XBtlg>nCU_`rE<|q4y{k(t6J(-vLWd1~Q zVg@R$tz9hhll{Yf-irvX@QK;1V^A4rYukyL-9PAda=U!-rmnzoGBu?3-z742eWok0 zUi$ym6l{$D6lP^M?3|NkyB)ujLb$KS8F=()a&vnfeb5 z1uD}2f6sHIj^No{fy-o4GQDtCS72|M{_sqx87R}QvZ25eg|5IdnZ6}`|IelWzf7mS zaO$_4(*A#S$tTzUPa2-~|CK)Lu&LJ}Dg$k8JL}N1^SjC?=BGLam4UXlofyx~?`ofz zpXnG>2HM(oVmv#)YkXpUu47OcXlvVv@$CGr^@;g~jzMLht!*d9v-7*oC+44Z3@QU{ zZ96fZo!|97G5;zroi$^17-iy5f2wsx`1mK~Azi^`2Y zG5@Y(P#I`z+lldfQTdEd%zx+@R0i7Gc49o+>Pgxlpwh~P7;?Lv z7|*tPt4~ZoUNmi>(uTE*#eDKbWv;Nq>=zYJS;^acGCOo8Dgz_h#WFwHKdkb8QSoHn z?vvRmIWYs3*48eT`N{ra-slB)_{4PS7*qz@+IC_*`-eMyVnR9wm4UXlofyyl;Vz#T zOUIxx(AKsSN^5J|iSg_o?(vD~)-k9Iw6*QTc=iwX`o#3;7*qz@ z+IC_*`-l5{VtRE9Dg$k8J29U9!~H%n5qasffl3?EE*8_Wt$P2K@89~j`~ja#xyVdD z52&=ZcCpNsZPoj?{6U|XsE$Eppsj5u#earxXC1gb=>@YHO4+$S?3X;A}}Hmsd3 zCY~g;|lwQ0zvurnW7w5km=iNy8`FQWXSZ~eh)T&8d_s~ ze;axGTmPGxF^+Owle@u97jeDVjdK0})~mQWWR~3tT@V5b6m&xm^gvUN7@GwX0uY1_=!7l^fdvY> zp$B>)3=yy)3J%1e58}`d1270fkboqlU>HVV6w;6Z7sg;5Ccu<$>vjNw&;eGaC<_VQ z&;z{?h6vaY1qWi#r*EyjLT*7E`e6VDVF(hCgcJzLyFo6JOmo?8H&;rI zt(7Y!jVZz5a>+P2TrL@dK8Qm<48R}^K?0J(yroSse;7t!6w;6Z7skMh3ITArHgf`E zT%g$xU0kK9U}Tdpu=06%sf|MCx)_%ls@Dukw1r;D*;^86g2lNWri$ zZ)r!EKMHBcfD2)Vh!6KP$6&!K~04*PQnuw-(L{ zFPs%wIICyl*!5WGlom_># zOuwlw*U)FPj>kg3Dg#NYi_#i}Ao-Ru^vqlzbCU1lejs)~mmE4g9 z5gdraAoOn(%%$>^@s+|5q+k?6>x6D_p=+AEYmea%rx2Ps#^_uYnJrT=x^%VCd2l2d z+Fu6_uRT_tFfCZ1pc{Ii7a}u4Xmj4Mw!B1ym$wBqTQjR`;{itJP11*Vt$xXoP4Z4d z6d(w)ReboH0@?ri%^TX-~g%67F*WN3>SADneuJdlKTCBR&`b=pi zJCl2-oxcD1SIw5b|Am*Fm)sZYFE}sMo-aP{K3}htD%nb7x;&kmZmzGa&#yPvSD!09 z=R8+?w)m|3Z2g(iGudYvPnVz0J>7h&@>KpQ^Qr2Sg(saSYfluPaG$6@UV1$Hc;hkm zvHGK>N4?klo4-b%|I$6#dm49_@6O%bysL6o{x0*b>Yard^EDf;UU$`+E0@ZU*BjSPU$*wrm6t>> z-gM#21ykp*J}-0b=Ce1PweHL{g{5nZGd7+!ed^j%R-PO^Y10Wa$4?!%`q<1d^`lEi zXOC{=%lTZsxw^7CzuH_~J*se&b5!lf;*su=^&?70WRGYZUOqf`c=NEzVfn+%!>Wh= zrv3k?_sQ>L?o-{nu(z{!ZLi{9?q2mhOM7PbZ0u3qBezF$MP)^Pg}I`-dtrBH_u6j7 z-Q3;kyOws%?%LR;yi0DE=FS_I7ni%s>&r^ZvdbFTayFN3F0CxhFEy7|cPi}U>{Q#a zxTCvceTUKx*&Q0&m$%Pt-`uXUU4A=ryXv-uZJlj5ZByPRw@vd?l~3hAWqzui!Fl)Nmv>WXKo-%e`Y#Jmr%ztW!`K z7}2(o;u(|TX`hr4or221h}J*FJ0`_5J}IL*1(ksjZ5t^vCWZXB<@fTePfA*+pfWI` z^-uAR?eLsWN=B!kTyv>Yu#FT?o%;1YDU42;Hc)9J+BS|r&h>lJM<6|8J52jzj!T+t zpwjkg853do|1h?L_W)$YCu2fqpfa#mJDaii*bd7*=Lw$o$>7Q!+d!r5)y`(>MOoFsU`CxhNYQ3I7Wto1*Tx=imNwtS#p^a=Tt4nbvLSnD6MeCL*}<|UsH z_JdIal{T!UOaA{nw!`w)fdgLl3Hh`RL1kcAOUVB`w!`w>THeVkJ|Wx53#ScK+K9G| zZD#HiyxwM(wVq*n)hBa%NsAh&v|;V+hzJY+7I4pmen>JU^0hPD17p0OR?@CjKeFPt_|X~WvZ%1+OAl3;9yFFfl&3wxzbGhWi3{+ZMyIAJziPzao&*_}EePVXjF{li* zwe7@scBt?8#O$JDP#I`z+lle)Q)hf)cGWSc479cF#CT4;R()c2(=n(Fw6*QTcuu^& z>l3rPjzMLht!*d9bK>e18r?PF`jMp zvpzBV>KIf8+S+zvJlpE$d}3DW7*qz@+IC_*+v?|iVsbhLm4UXlofyxy`URhu{d5c} z18r?PF`jMpi#{={bPOs3ZEZU-o^AC@J~8|27*qz@+IC`OTU~kc*5=liePRxjmmW1x zX?wM^*K#g5LhCyM)6(~Ug-qX(^Zpmf)FIQea_)aunLd{D{-+!k3jAEo{ogOs5}Cdt z=lxHVsVV3E?~!R-rgsjKzWy?O|9I)wFH^5fPe}j&<;Tf+eX0F_flM7TO|R+->?P9= zWDLNw<^2Dzq~HI4*Z;p1u|D^6Y5$+j*HHOyw*CKeeS03dX`ly(nD_O=GdRRod{)!J zdNrXkFs$9Wn&wCHm1j26`|ZOMxxpv$5Q%XNRN9DkvB=p26fz#ga_^-iHJ_A2bqXp2 zBic4nJo~fX@<};Nr=T)0qHQC^vpf5$Ps-ss1(ksjZ5t_`z1i1%QjX9ms0@r~+eq>3 z%zoP^2 z94)UoYM|1FwTq>EvWa@Xba+ZSe8VU57zuL>RN9DkvB*z0QSWz--}6a1R;QpcFrsZE z#j}Zi({n#hvB%OlFz=*bu6wfBQ(I@3(or221h_;Os&n8;;NjX(sIc=cQ zhPAUDKmYsVEV`t_Cmk|p4;*;PD}2W%^K_kw%D{+rvCP@Vh?G}Yp7Z|c_GEt7C-V%+ zi5aN0wsx`1xgOh+={a!lJ)f90ItG=2wzi!Z&z|8Ad}0bZ29<%fww)NyuHpMWF=y%+ zR0i7Gc49pHhClR)IZMZ&GSJqx6XV%A{JdWe(~}JpK#m|6kuu-rCmxHcT0R@7$#C zMdbj_TYVH;x8hV=xB4l!ZVgax-5R9ex-}HVgoDW#ruuL=jwAgzI)Ldx%nYGR zcYJG%{`l579rCRSdgNP^bi%im&)?O54xAvwgyR{Ex*{yx4%WkctFuRqbGP|`OrP-}j)MU5zrzpF109Dzo z11ZaH9YkGr>tG7ATZd4Y-8z)g?ABq_X15NfIJoEVP(052TGi-z#x1YVL9x4w-_Q_Q+-7}t(q zaTG64;}sda(#5OB@al2AW&*FB#Os#e^~NUg1`}@#;Aet(QwQGMiBnxz3gImjcDHV& zqPuk)CEcytsp)RrK~Z<>PO7?FcTv{ex|_Q0);&?Y*TMT@cz>U`^=&*5XV!!LxNZQ; zgZR)8KAgZulK5x}9~;KUNAQVJd@_wsW$~&tAihAs zck4wezFRL*^4)rwn(x*t6n(c|rRux&8fD+D*Qxt%y+Pr3>rE=ZTW?YNee2tJn-cKW zJJf);W+(!0RjC4Ry-OK*>pkkgTklf{-ui$_@YaWvg10`R7QFRYiosi-qZ+*RdCI|C zU!Wem^+gK8TVJ9gy!B;D!dqXVCcL%5#Tr%Nt=}5QuTl@*`Wgk{t=~3`DZ~1@iN6!T z-won7I`H>8@tf3zx4uPTcXF5dbf_2R8RrC_}EXH<;0{+yEW)+TDk zTMdfFTR);|y!989i?{wVjenKFzjpC&#_-4E__q`IcSc71dlUa5fd3d2x4w;k>R{GS zI&m{4tCoOZ~bco|INmKrp!U{Z~ZEc|3yXl(BTF(w<@>YPV@>Y;?@>U1+MkzRNrK6akb&Rg41a^CthHRr8uDLQX$N7Z?2d&)Y6o`t#OK8C*&QdMir_ zdTSXq=&j`xp|^H6)`+{9xN87+3*zonqPJF1ir(6z3-=7+UR0yE_NE-YwNE$h+k-26 zF&D=Ds7Y_Fq8PokKh@~111Lvt9Y{TT>mUl!TL)8--a3Sm^wyyRco;?Lt;4BGZyiBd z`mJx{NXpY&M^T^NT0M+;D%4v?Q=;BFh8p$Ou^Bwh#p5YcZ=GP`i4>~0PNGu1buy*u zty8E~Z=Fi9dh0Z*)mx`iuHHI>diB;C3f5Z%D%M+P_TpL8s<+OjSiN-))#|NtDOYcu z=ivDithX+pV!d@CCF`w=s9A4aJb;%_wSMc{xRmPk)@78hx7H@Hn8M44@rn_=aulyh z#k(B5 zJBIi4;k|LZuOIIp5VyXK2L_q-;1I4$U^$5orSRcld}IV49mU7e_;?1NFsH>Q1Nc-B zpYFhCI`P>qd@h9REu2Bi@K@P%G{F^n%o@MRlciQ=mcz81sR`|yo8zS)m&4TxLc z#@mC;dS?h{5?D>*yD5Bc7~dbk4@U9BG=7x9&l)r0=k(YA!{wjDKQN}hvhpj9FPFaT ze!2Fg!k5f1Rlb<}V&e;?FU)*C|M}+U%Ad=AuKwBLXPwVhWsJh+hvg5mGFCzH1LuS4 z`*|6up!{C;z52UFxlW;4&C5syWw}bB{!UTGDOmY-L&hj@->SV?c+-@T33G2WUN6b$ zgtgZSubHn^Ud_GQc%}4;E8`OsUN&E@yp)sC2}&=zFVGLH*96T#HbZaR{5Ym*q-?x{N~T+*XzA5SlUuVfL1~T!rAs z2!#2mrd)%NmGK9QH#u?zLjE&TH@Y|0ZYbPf-cY$dcYWi!(sk~2H5qZhytZ;pR>m7B zUhQ06y(%xG4V16UURl4QDAycRFVD+p17*45puW~vTe&QESwqGdaAnNF!X@S79$asU53vw4U&M(PmgSGPt=b7hK&dtdP1Eq6Z8E>#~_PVpOXVuRvp6Q%f zE#wQ$HRUzgHT5%!XEZIVyKlEiWuLmsgf;%ob&|fT~cOIn|5pv<15L9m zqyN=q6Tf5Mi8udQ&i{XP+u8Pix{d|I+6$$>s8sX#-^pc`>YA>@dk} zCq~W-%yrG4Jr|K{?PvN|KABhQOjHI&w2Nhaa(vTUl5&M7^RIm}uacaYfl6y@7t8$Q z_~yKllz-zBbG42^WuUEXC&qJp^T$3h*XS5j2HM(oVm!w;|JEnwS{;MRKwH~RjOX~~ z-}%H`r(;kVXlvVv@f_d$d!Lx=bqp#4ZEZU-p5vSU;1hF$jzMLht!*d9bA0n3ePV9Z zF(|bgbPTo=<2e`cPd+g>$&029RN9Dkv6z-^)q5_&Q?>CYKAAU5TFgMDwY7_7wrs23 za}k?;Vy1KqN()!Cwe7@sw$-LjOi9O}GSJqx6XV%df9ex+i;h8Mpsj5u##>Dg$k8J29SZ^`CuW?$9x)479cF z#CW#VfANXAOI|u{pwfo5i^Y8Mw|wrBk=eiHo(hWp>XUho&O~KkM7vn#C;JC))y5T` z%zyLAyjOB!1}d$sT`cpH{lmPfjsNZwbDxeuWuUEXC&sgX_z$0$`*jQ|18r?PF`oUy zFMVPj&@reCw6*QTc=iwf=@avyjzMLht!*d9vw!%NPs}v5uk{kKif97-zc}>GK9?~(W^le+)PK;;&VEV*7A^~Xwl{TVXET&~! z_5Lm2zxBI*z$f!j{nk(!XlobCY}r=5f6IeDF^}mOR0i7Gc49o+YKKqE<2nYFfws1t z7|*ua=@avWjzMLht!*d9v#oad#5}2EP#I`z+lldPt8$)H|F_tu`zalR%0OG&PK;+; zwR~cp)-k9Iw6*QT%xk%9+4@t ze<<)dsr`4fOn)zR|8A3MM5Yg=_TN!5{aEV$UAa=u|I2jk&ObcsUqWk)vF+vkZvAiN zl#wpap8xOJc#|AdbbIBWU>G7`Llhi{K_A4S9|m9$h9Ch+NWn0Sz$m0411^lgI84AK z7{<*;(1ZX4p#wSvS;8)Ehrj~)+HVBAp$B>)3=xp#fGj^aAT0%1euzUq48R}^K?0JH zf?*heQAk4uTo{9Km;fWHm(Y}df&mCZ2XsOgguns?-OvNQ5QYfY5CsQf&f)H4spc{Ii7s3z$8=~Mq4Ei7r z{V)K7Fa!xmLQ0S&9Om{2j6xbR;KCS;!vsu%xl#x~5IUd}x*!A=DCmYB=!Gyuz=kL| z5Q9F5Lq7}%vV?=&9)biUAqB%Q0;7}Q~ z2XsOgguns?-OvNQ5QYfY5CsQf&HVV6w;6Z7sg;5CSVfG z%|ZZz&;gy$1tFj}NRZATLHdFO=?W60CrB_1^aBaf|078Ek08B2f^_}}()S}s*AH1j z`hEoI`Vpk(M{o$}_YtJqM=%9+`UukJBS@EzAU!^U8E|0?#$f^`!7!#|`5^#7=zvb3 zlShy~9zhG_z?UpP(6J*(zm6c?I)e1-kR_BuV)71vP8~t|bOh8V5u`6iFa`AF2-1-wNI#BX8ZzL*7>vUN7#YEY00f}}I)OeLLAq=NEuh1OEFnEM zf^^sj(qAJ;ca2~K=&TW>uSSrr8bNw$1nH;|q@PBRZW_S>ppQn7E*ilEB!T`JLAqxI z>75ZAg*0TKf8BwSJT@Tz1P5UV5|D%x41=0JNEQV8Aq6f3W&{f&5QijWz}z5&APjww zfHX`(*CwGCVlV`wFae>NgXL$T4-$}uN$A=j^g;}VU=${xbED7$4h+Hwj6=s}p&Ozw z0K+f_fy^QNc7zDTAqg2UR|_E+UVW(i1O(Rz3T)_y6u1yrD_9VLI3yth=9CbEF!VtJ z(qPO8UC;|L7=lrlfX&LgBQOpfn}u$O!T=1z7#KleMk@I^AJpD2zVE(Yf3GBG z${X*N-_5<-tXAY)xmm5w6lR>6nw%|n->JV{dOIs;%*$`(-fF&Cc{4BP%&Tt{-f-Ti zy(xw@{f&XKd~#RuI7>kpJ3$Ud;){-T^$uisa?FMD6(-m;uoZ{Ab6Cx4H5PxbD? z-Ok;$yNY+Ya(=yZXZFs<9pyW6a)!Nfd;WIw_Udf~ImbRN=h%OfT7Og5Wv^>oTfR1T zZS$JSHTi4IYpPcl^Pv<%zB|z$QBxMHa@qec}C@o z{28X4k1w3=oL)Pvc$zC`r1J|%O?#*<5OPQGzc`J~)Q%@ZqfR^B|ZdP3m@ zN6yR_k9Uu+A6GgqE9d6R$L5Z09#c6cFK6egM;DHEj;`g4c_Uwy^YhN?+EK-$+@tDp zhCX{_pPX?Jbq)x@{YM3 zn>$qGOuo58b^F5h&h|Aqm+x*@-?p@EcH4%W&Ch+hxy{rz*=-u1Dt{^`=kqH|@=MGm z)ycx7Gg+G`PPh~G@zQv9yfIcD%Z)YNiko*$x0)$r967UJOuOm&=$cVyv^G+dbNlt- z(r|XTkt)mC{bsU~%qPucHBm@7iP}(c$dz;arNQiAW1u{cle7Gl{(QgLUyZMfH~T7m z`98C+8Y{#cIn!TsT&Er_MYD3Qzij91W~3seQ_V;ah?C6o`Dp=wt_&imIoi=A#~y`v;&{u{w^Fc)kFDst}M3{=g6>6kU6 zDDC|vH{W~BzlPQrr?j^JmrfZ&mD%=xWF_A-wj3C+<&KJi12O1>IP}8+48jm3APFfL zh7lNrG-SYqF&Kvlm;_^uU_tk5>hY>BQOeS$bbuDFb)%7ObaFiASleO#}4LnLKlR<0tK{$6fGe|J4n$E zQnZ5lqCKQ&4=LJ1 ziuRDAJ)~$2DOy8{){vq#q-YH(T0@G~kfJrDXbmY^LyFdrqBW#w4Jlefiq?>#HKb?_ zDOy8{){vq#q-YH(T0@G~kfJp-x16+!6s;mft4Pr*QnZQ`ts+IMNYN@%<^~}ELFj-^ z=zk)nO1XdfxsM~e25qJ5-jA1T^LiuRGBeWYj~ zDcVPK%Sk&)(N0pdlN9YFMLS8+PExd!6zwEMD@oBxQnZp3tt3S&NzqDDw2~C9Bta3v6s;shD@oBxQYHi-2(*$Ett3S&X>K`bEh!5W&{|TomK3ce zMQcgXT2i!?6m2C%TS?JYQnZy6Z6!rpNzqnPw3QTXB}H3F(NXfY{TOo|qhqQ#_WF)3P1iWZZi#U!8Y{SB)l zgrP8o2XQcg2^U>6bAVxuci@svQI=S4ep=ynJ-9;{cN)YM3EVSs7)D?e(vSfc#=zJlm=J&y1u) zD}?V@#6-FI**JbNiN6(b@H2zl{Lv6M6OaOGpvyi&aA6G0%|Z}5pc6u%pc{Ii z7s3#Mr2MS)SHt)>qxiRJUM(PxSwHE*pIP{eF)?JyP&)Fc89h**0zv42PUr%Pv#W0C zfiTz*g&6cfKMcSG368-{OR$oPo4wo|jbO&X@i;CS!fg|xGN$F`mrPLwAjtg}1NgHc{6!M~rFY{IMyUJRu>2z*-6N#aew3U2+$;^^tqHt6 zg?EnN-DCKGu~}Rfz=t~Ukq|zv@W~#0I*iZSxIQY%PF-$3AIBFH_?lxJDOV}QMA=OW zaY!-q_ebz!l@Wi~i+>)$hAqm@Nr*ul24E19FajAEhrmjq6D;V4UWkALaTtUoj6ep) zAs{0n$WBqx|Dq57x*vZ$gnyq9W!EP+|7n<;qugw!x#@EA=Ue}kdr|3MU--!UsH(>R zsC0zIHula7}-Tb?z^sz5gooa2SIO9q$`_envcN%Y(-_E_=e5>+S z{w?#Z%A2`28*h}}aNnp)U;C^aH7LI3yjFd+AR_`)Udg@Ec)9elD@P0pFPSe@Ud+ky zg3=4_3w1p%K(&&uG^fkcSvgivT<@;0$(R76d%KE1c$>R+B#Z?y2=trcTM8(vV*Ixs#hGRZhyEWJ*8%!imm_wG)abxF^()FCCvf zzHwYxdh0ijtsI*_cIueyF^!|k(p$foujKQ2^Z)U9fN@Cm;DYqquN_o8$UUfjU`cxJ zHx4KtkUOBce?|K4oBLN+6;?T`YSMe(-LIZ2<+8bk^xw~|Z0=jxH^1-HK3VC(U*0>n zcXO}GUU})mU){5?r?Y2mkD~PAudgVr$gXJYUY36R&D|=y<##i8t4dFPXV=;;#a-N8 z>N^`-jsw(|6_>fo>e*5@n{6yDFU?7R{>o1Ioy?u8I~Jrze{F~24(<;1?Mu?9zp-6; zyWDooZ7b5Ne@goFH-3XL0E~2XwD21o1DJ|uGyA1)lebiglf|B z-|eb*mO8VY4e9%z>u3fm!F)EanM8ajJ7y9KL0QoQgR-Ir zg5DL~@^i!9wcPTE+H`}_8`-{P5jbv==;N0;C>e%m8aEl=$7uA`Pm(%u!+^2o4+c|V~e z5|@bbd+6X-FwEMw=Do7#qvy_hanFMz^7`Jj&r!Y9DDS*=?Q@tfm1b`1+RrdI!`#-j z?=shAZtL0~W9}GpTi5`CP{3xe1%~5oCR&SRbMJ z>!bApmzlplS|5zd%X`;HKg-h3vb3&`0p<=cw{?9CGIx-1{AymG&n`&*Y(?uWU*bs6P;g!@~UPVV>1Qp{}zvV5LTU3~t7 zt-k_WUa57rKj3|G%kDcW&-A=WhlOZ)lQHhMyvaW9x4g+X_gmg%KlfYSjV8Ti>KBuhi4BWMgvQ^H#=*YI!RY+;91TN$$72 z6?3E9Z+R;L?zg;^Aop9|N(c8_-bysu@?~tKb)$*Rd&Ki5o%s*8zR5oCgDoG={&|mh zUNb)b!PeIt@IKh`X&9RKi03s2=Rer`nj^-Ja~otNuw||D{WY`UD>7oA%n9wkW!*E^ zmAPB?V%#0$?(CZ9?l^a6S3GwoxI4SvxjV_-+11Y7^t|LP%Pe1?<-yVU56&+0?1RbH z2UW{556^qR^OC9g54OJKMCK-Ww>L%t@@{9pTk9|J6KifYl1}CcBRMGJJSG|EF==h8 z%1G!l8;s4&yMlzA$j)J-Q1Q}o&7xP=P^=bQt>h!yv!0_X7=N)A2!y> z%k=Rw2|^iCGTF_uJ9)ObRGvNi;n&YLd3KyRH|Z*FXUT=_WvvH5ZJ+l6mC-*$e#_O0T#+;7#tS^8%7o7vxMe53r0+&7xPTlwAm z@8*BU{GIC83txA>Uirk>DDz#X>ds`}slT=I&9$#jziPa)^rbZ~Y^ZErpLuTTnbOmxr%F$jo+v$D zdaU$l@sZ-g)8&oQBcv`pLF)I`@2THizpHj<<_`Dv)wfQSN>inqOE;B1Q@XKqL+SeB zbsMEFf^pT-E3%i%#rtcsmt`-_UXs1omE$Va3knzH&o|Gfe?|G6+&S5^8&ch%bY`*O z7C2^7Iep`)#wpd43nx1#*YuH*{0Zg>&EqP^(K~`8A$6%)P+aY}_9h4_?lkUXov8hZp(@2-oxpZ^1GFlqhlvOi`4ix&G{+iSXDD*jfwOBE>^@u^icBD2yF;dvlQ=rh}^wheG z-36%%P_v3wJ~Y)i6D&v#fLfp!a07K|Sib!8fBf#h%k}>|ZE63fI~I)pr+luOcqYiT zbf~npwwYC~|j$O6t=w-RBgC#MX z)qYDq&6Bp2Ht6xmTrX)+1C=(cogHy(;m~PZ4%ua#aL^IUJjI85eL|*n2+FAdF|73u z@mzKk_6e!T3p)lXZA3deOy9zH!rIe=G%oWFY#8xLd0wZWGBBcTBgHeYq3x6Mf=)qY zU_|Sm;vLv9>XY)KPC;d0MB7G+XJA9eC*@^%<+OoH8_~A$sh+Ezp+D80fem9mnXgEi zZJ^TjY8eo4+5a%Gq4z`G=accO&Ol{guXZ*gJGYr`xiPhM(7|P%&ve`;<29Xu%D`Uj zY{tUR^jwDLI=X(JjMwFLqXsH%SnI!WdImNe@CkWChoCYrteqWeZs8l5-Ob3TdCT_O zwPjy6=o9j$4nbvLSnD6+8PIOXC*=QQ@4n;PxbOS%e{duLd`PSV!2yyWa3m#fTaY~D zEr_IstwE5~@DyQ5-m(c>@*ae@oj4}Ew*}jYoy3Fih|^3WX_B@{8X~JnnzlmPrb*Kz zLPpb(Hoy1leIRv568@mg_xsQ9_oE;8Jm^f`>pr;8?fcxlK_l)KP_kaO+Pij8k`S$= zH;pd0t)p$P91JTW-=wghfRgpI)gsO2p=P9QE#0Arnc^5I1@yDE#MtU|ry?fLF;EKV zXKRVERqHNA%v&4-rGS36mKa;}(1;@DZH|FbKtEecjIDWSw<6{pj)77@KU+(Tt$Aov z5%Vs`Kq;V~ttH0Rlsl$~`2@#6DWIRNCC0WtWhi1kNu%x-P_kau+-+NYr4thL*rs{A zQ!A{yQ$32vKcTRofRgpI)gtFwa#N&jQSDX4e2QbB6wuGs5@TCb`xG&s<`^gi^s}|Z z*cR0#ikQ!E43q-;*;-<3i|SHE%x5_UN&)?BEitx5^)N-u=QsvR0sU+(F}6kZa7E1L zIR;7r{cJ5Uwng;_Ma(qEKq;V~ttG~`s2-_^`2vl)TR_Qr*=jN7Ruzk?eIL>Gme`{d zkzb^+pn#I~v(+LGEvl>Si|Wyem_OwhCfSrqr43Qr|DRIZ|2wGbr0$*To!Um~eoXEDZ>P?4qDy;)-u<_ly1$|K{@pm>)LN*^ z)4Tsp?{{f`MbG|EQ`bb@hw0h>tCCLbuZNu4C20Ro&jEPl2mUSpNyq<_$I$fB503v2 zoBj=dro(}GKXg#&nsD=GVD%2$>g71aSMwGAYM>O*&(<;rY^#@LikLs+7$^nwv$e$7 zRxfcy%%5`%lmhzMT4HRgm*t9>zu*`s1@yDE#Mo9ZD-zstpfQa~?TEzv9%5^cNCrz=AKibJ3j(95brY+L0s z6d~W^5GV!ovg#1q?(><7kneK{lmdELb%<^2wn`E50}g>wKrgEfv2EKDijcqN5GV!o zvg#1qmTk2nm9b((A^(#XDhC`qf(95brY+JPfMabXLh$8|@*25yC`c`dp z+q|us?FDFqio^qy6%deGU65WDiQ|+x@29fD8QnHCVp}rTC_+jc0;PanRvltnGS@0X zencbo3n*C+YkqgUEwL7+a`u+KJKHj|PLc8VoB^eP9@fm@Ey>~;wnb*WBI6%814;os zteL@^lEpJ@OUzk{jDO?|CtW4e@p!B`b6;IznRN$nvm)bXoB^eP9@fmLcCll0TOw}V`x{bZ{0nD5 zDWHcnGZyZanHM`K!*(4asmS;_XFw^Shcz>*FZPKQ)*ZiLMaC~U14;osteH`Lu}>Ut z-SZn!Wc-pdpcK%`@{(+is`vy{ZU26LC%0uKo4tX%vI*q#LH_*HJ&ZlPp9_7+@p6%5BaF$bhhPsoe`__7=cGWpfO;Y#7;Vy0YcBl6B zZBFe{>guR_ek=Vgb>F7r{;R3`uRfRdBpv^saJ*Cd2EF(1QhN5EgSw~bxqmCDD;O^A zTzdB3uj!cogVZgdP7G-xf60INeox2$|8XppfqwY-f7Nd)3&o-3;Y41|RQ9~LD88Ft z(YPW4O4h^TyV>op= z`301$hehILVs~ZrGS{11&#bp?+s70c|IHat3g}^xv0Gdt&H~t=Ky+V)jf0?QV~5=0&LzvQrV_ z;1DPU^s?%ZgmufiOA(^ci2VXe*29`}B()3Q6wu46Lu|XNS1Ll9I0Q-oy{tNf_E+hrQla-KLOdJ-rGQ>m9b((@ zyGjw_qY+01l&p{4M=Q$3&bgTPXm05r8IIfT(d@UK54~EE>8G@SfRgpHd+40Y&MHf) zQ*0dS-x#+ZMUE>%0yKKRfRgpF`{-o#4Win<-|VZpQ0==K-QFL! zE|u3QGFmwUN&!9WHSe1-Oc~Zq+4YKyb{cO~K*{>p8Wu|1?F0R`Q=vB~GQ*S>pmv(b zgkBck-9=*Mf;v#yMsHue(za0Es0iuc5Gbjo20|ddyy_vt2;sR`S#RE?2eSE{ zA<)N~-`-6NN@89PqgC3uar2lAzwx(M(RKL?omz;x{Tp4{X>{!WJv#QkmX7@cr#ZFP z=-7W9b^k!e{kNY>*Xqx5X&<5E{seVDq~reUsS8r~Ivw|~qwYI&&3~MZ{XJ{w`hDfv z|KHLz|C^|5rS9ckm$r(o|Nn5cQ@eq>5Oq@tr?!E*pRA(y0Z3fCWxBq_nhs?Bmq5XZ$t#y~#JI{B%Q{e(C0Y5E?9h^`r;dFnGX zmWj{KpW5cY=V$^BQlm20#59Whh55hHIQ_->gY?NS%^%c0vtUqg?920iD>}Vk5Z$LS z|F@ih7@E_eO3Z$#ovZrh57MTV%pYW|I&A(RId;VSK}!xCIe$#zh^pyF)$BmkjG$_^ zp=!EOHM>zYbyUqpR81XK(}$|*N7ZaZ)zncn-Kd(asG1Q}%`Q|;7gbGvCn{qnDq|xm zV=F3S6qV6~%2&=6R7Q!)7)E7`qB2TU z#$Hs$5GrGA8P&sX)Wb$p!7yr{54F!VM7695wJcz*W#(7qwbn9okZ!F%<{*!?W|)Iw z)|z1sa$9SLIY35=Ab30 z8Pw{IR$39vVjpI42WD|AX0a2qxD~Uw8M8QqS?tFw_F@*-V-^Q7i+eDO4a{N>W^oL& zIEGo=iy7<3jFp(NO_;F;W^6BJY%^x8#Ef-J(2VtB#x`Nb*6*ho+kko6!t)e!GGP6p z%}MUDe$nQjdh54p4hmYoRdbNr`mLIS3@W~)_LuZc1o0)*kI|RVfiIyIUqa(Dn*3Jl zB$&T@m~|4&L5Ok8KeRx48y<%lV&;%eK%L zFkM;U+~#}0m*wI5!a>1>gPIo(3N0MevT#uA!a;2d2enU)h=vEK&Hp%0lS7PROALWia7X$M zg`~PhG zE33X7_|kzdPJJQu1^o+!Lb_lSiqo0t_;l&>+0Q3FU;bR~bLG!Ye`fO2W1ph^uTRc= zV*k6zcOCEM-$}irzf*WS{kHLT@vY2T@wZC(Y`!!#_2$GIL$AkPJNU8bk50bN+Z?hl z_dhoI=)@!A507PsCRaVQ>_epovkxX7 zEPpWf!Q=-WAIyIsMbAr0&u0DcqgD z+qk=USLUwxU8Os-{N3PtNlj#LAG>YYt>TuMoA%#0ena8<$?L}UEu(iOl&_giPmYgW zz3eKnXXc9imygrC58{`KOJ;T(yAST1zGyO)NR`KOW63ecSaL_~!h`2epEr5#*g5(+ zh3)C>#`fa2%(nQp($?(O#8$M-Pi}E+$&aQ+_0hsedc+th4rhkr!=+?4nMjt0azn`> z$54KAYIADeKYSm+fu?LzqN&`NYfLse8uN0trN7}Wx-zb~tK`f&6V7r&t|8gr zXvo*6>h*fO2LNsVGmbbN;rG4e`N4m?R*6fNnaBT&wEw?ZafYOe&WZ#Cl&qJsh75zp8qO`wy)YWh*ZUJk;9ISnk;^DDdnrv9P_jN2nd5XGd*09N zTM| zVmtAFuOj3K8gWoS$@#telW-QE?7O`dZ@Nj&#c@MwRz2A28#{-JYV>uH_0ex(>%*u5@ zWNw%Z<<){M^8<>^<0wZLP_jPu{W59gO_}xviyu^^EaMa?1@y5sq}VPxJg7*Ca|)CK z`q&y$Y&U{^NRhIfQ=k;k$JUTyyA|vqMal|Jfl@#pTSJQNX0S;`%JG~6rGP%Rh7{ZF zU|B`V37i6@fIhZ{6x$794=YkmnQ<(sThO>to+9v$Bk?v|g-#Op$U5r$8y7kF6o)Wb1{&#}z53(wKt+O4iR- zOEDYH^7tW4Z-^DL>H)Gd#ZX?0# z>p|;o+*69gGbu|KP_jO@T4LqGDiUos?LMtYS;Z+(3g}~NNU^Q2pHZYFI0Z@peQXUW zw)OS1ij>uy0;PaHwuThj`uaIVNz$s7)=woY0v8}IPP^1iU z3X}r+*cwu3eSL7QDZqY3${J3AQa~STPjURAUVDb_12}=YZ|reumr++o-E&vc{r=Q_ ziP`{MNbUcBhxY%MJGG;zdvCo9cKPa*A(e9eo>70VV5W_lZjvy?M5>AGmH?|K?5B z{lI~ftm~B*6`AWPO&3tIK6anDj`nsJ?!8ymD_e&L*V=A9eo2vX7N=#h79(Ety=(=l>vY5BiZdpGtXgv)1up(mvjXfZsWW6jh z_AFA8%5mHJjhhFo=LtTd2-!rVj|wPRA8Q_gF1(AnQV~X0&#wr!8v|caWNxN3T|mkD z*z4%P2f6cpDzj+o>MbLqwupi)p#JiE8z{pUM}uX82rcF>k#^ z{Nsw05gNZ=K*@U8OR26ccC))#r`K&B8MW5w*Ay9}oB^eP9@eaG3)caaNq{>{C9vQXW>pEb&t?ms)<~B<63n*C+Tdhi)t(Oy8(kO99dnH{GBh|iV7&`9 zuLwDhMjsVWvOd zy{$;OfX43^P_iD@T;nV(nOO;FjkDf5i{4RW?4YrC3n*DHi(Q(kgD$6`CTm)cy+`>Cvb1_nnH{p+k>-X|0(DNcb>Kp%SzZR@TVSIi3$ zm6YL)+s@uHWc~WyQ>0wPV}??|CiY5N!|hpQ88UBy-Y~M!dR+KPMZ_)|ZMT4u^|F{l z)mp(|4$Z6HgSO|!{)r-TH-!ZRl&qJ%mN%yhH$#=>cFV|+t#*G(5ppq&-Y=kJJ?yo# zdAOKLHt%P`tlcA<*Q~dGcb`^dTtZ{l1(d9h-Ax(SRNXTe+&nxoy5715`ivswQW}3y zK*{=9G$6WSkv#+R1i`k%*@Ih#)?4=xKdXqjj0*#$fIe1Tn2qbLTkX#&QZDBdCl=57Hc>t)SKz4(@aEA^o5aADB)_}FPh%r)twNigkkupx> z4+dI~@N0^Yn>YkY0llm`#CF>7>xz(@IRr`py{tOKc9rKZ6(P59 z2$TYPSu8S(o!c?1FxB9}P1b|dZzw`;qY=jhl&p`%vU%|$ZKZKU(n`zbnoV0a&K?Ev z)!#wevtwrzp|n>J=8tu4s5w)mbR=spgDQb3)pEy#At z{`-oc2WaFm0VV5as|8sXUfXry!4s?}PJW;W{Q$*<1eC1KRtvQ*yzA@>?_Vo|KFC2( z3aGQS1=$wfA1Z<#L8uq*gm`I!ZqnZ+a-eoip)nSEg+y|y)16cTrAVvCXa4kzsYunqofFVlt$kypkxCq zPJX8rc`mJ6xF_gD`DkLphQR^bIlLb!avq}uT|mkDSlj`6HJ!4V_cME{Yy0LcqqcJ? zf3HY+oKv6_(8nTWvD5ixWf;P}XRqRODGM*RndeeACC)}+ ztaa`m6){gzfL}n#df03DsV@s38EhV>4{u9supV^&SdsA*ja?T|vOd-<%EA*|<`+gq zp-N^wlk!iBl&5L@K>;P}XK@M*Z~U3}Q@LccW<9-BXtQnq@+XRzXDOgtKzjEZ>1DBy zUbRRa!vaHVpFzv+B`>44Yal;WL_S9`K>;P}XRAe;Rl$t39sK>XBIbFHf%LjL($Cfs zV{RwreZ~0acj?*xS5xK?GfsZq^|IoQ`=76FCTSk_fV&gy0m9U zT-r%=55PBvo!TDi+|<29=K#*2?)!Aze=n~8(>Z`IM_%s!w}vtC(`y`urg$PH?nqp~ z|Bj7cAOcsX^nyMhCJ6`7Kpm(D4ZsOpzzrm51WmvLyub(iAOLg_ z1kE4>T0kpkBWMcS@i`1SKqu$|5zq~yAO;N30~+c13UvVx8z;QeL@Ve7Q4j9pMCS&EXa`}?0lGmH#0Z)~1D|_9FX#heKj8oxr~~z&0XTsRG=e7J z1AY($&7c>EDZ&BjfD^cY8#DqB@PPo(0gY!UMdJY>&;nXP8)ye%&;dF@7l?pv5Ct({ zfF95b`oIz(#t8?|Kpm(j=xb@fXD4t0H;|waGyxCr0w3^$0MJ1YG=mUm0j;17w1Y6{ z0G*&^at$T-v{H{|9nlWLpaXP*E+F@>#kWngfKFflZHjOM9|(aC5Ce{B!Uepb8H7O; zECJ2~ga-scJLm>|z%{jw{uVTYFo=RBz&TBLKoGQpZqNrBW{4)BgEkNWy`cUe(Fg*d z6?B0fpvBfxv49VRKnI8c#}MHHT|;MKMiX^ogam%j0y=>Kv~j`>d>{lmKnyr02p8~z zW)KEZAf^Z>@PHs_2i>3#G|Ui9KnHCg0(wFHL81`^Kr841JwVhEQ}3qU)!!|=lYYl| zr}%c}?fBcJx3X^~-YVyF`DEUa&rhYM^r^y|={Joxi*ID!h`&*KJ^Om%_3~@E*OIR} zUdw+x^>O{wD&d@eh_hko`d71LX&D4bDkdN#A1JQoK2HbNuGgP1&1b_Z08W+#SEW zbXWGS#9ie(bN{1p4c+3nC4Y13X8q>EP3fDAn~FDPZj9epx*>Z*;)e3|x$BeHJFd@P zm%2{BuCOn?&)8Soo7o$u_VL+k6VygNcg?bEO6hDmkuHzt#*^cY@%+`PtM#i3SEa8q zuA17jYR}A-V^G}@yzbA-3NC~>qYGXfi-hp$+&lTrRo)bG~ zYWu3~Guy_t9o#yxHL!L6mStO}M~6lajEs+nk;&oM@KkbDa%O03=-}pw&4JDPH!a&V zy>V#cfeqsu#D>YUV`opDwd$;y^<(P~uA5jFShs)evbED|hSnSy93K>elLN7Vss2^{ zGpjSJw1W6Q_nj!7QlI3|B|>S+Dw!cpm?jH8N2W{!*>Svn$n zMB<3@;S-0)4=){-JuGopd1-EGa;al!eo1PHzNFBX?lby|y_w#4Z>cBSljtcMIU{K} zjC?E=(_@8bI%-6V-DBN)cOjCF7?EOErYqi6>dbZ~I?Eloj%0_UBOgwM^>Cp*-EOoO z+cItOwo+@hHPKpb$+aX~94-0Ks{dho|AHs&F+9blOjEq6)R=9IH5O$?#%0N!btl|q zSI(7mIb3;X%BedG4e17>p;(`(kJp##vUOL(4l-4&6}@X*$Ax_ZN@UYjpkp zk>l(5ct1*~I+h$L^XJO-|DP$&l)S)aN}v?b&(?CL#CD?lUlcJp8g;jT^agv<%OYm6 zJCJ5iHPKC5w$s50>t%_bD7XLz!<+)8fIhZ{locyb=nCsC1#=W3L#oP2S%;c?RSch*J+f^0!lW()^NdQIN5K#`tWax zoHr;TD4=BhY_%No%r;*b8ctd-K>WKRW{Lu00@9o8Nk41Wg@soPD_3|2``4^pX0HtW z*2?f7iqJd-1q7t`+LK-ul>s*_&-HYQ`0@We5X44Ku$e++C>5cXr0_lzR zm5^%}sn+HqJ2*75{@g*^V^1_i%%?a8(i`nL2BIvg7~6wS>J%}b<`_tCwC5ODOU!cX zwaI!#%x7t&F#+jS^Be-Q=4~6+ShwL`Md(*3A}Aoe!<|FnPKsUZ zNkZmq>fbUvJZ}l|DPsPNV<5f5onv4vF}4NBuZa0`j)C+JcaDKOX#u*1wsrG`wy zVq`>n=63$rEhgwpb)|4o`iG1G1N4Ai&<8|}Z~zU|fqKvYoWKR#K!Qfl1U$eCe83L^ zKnFq43__pAr0o@=9V!!}BpcnK3F+@0k2I@dPXaG*&0&XBdBWMC1 z-~~S52LYgiAZP|5V(xov!H`za2HHUwbbwCK1tOpuL_rJ~pa=AVJ|M;j2hczrs0R(e z30%MpBxnRpzyrL%2mHj`bOta)2SLybLZAh-f;P|&!k`0mf-VpN-5?5LzyM;LZ~zU| zfqKvYoWKR#K!Qfl1U$e?%uS~cL;N5BbPxp1AOu=KD`*4lAPhP{C+GqZ&<&y>2E-)c z02-(R^`HSbfeW~S1dX5xc!;^_^kRq)_(1^ZAPAa42(*A!&<5H;7<7P6&;=r(8$>}2 zIQA17r~~z&0XTsRxPb(Xpb2=0L(_>NKHvudpo1W21|iS_T0t9V2Vu|wIzbnRfNl^4 zF(9T02hczrs0R(e30%MpBxnRp#N2dxFvJUdzz+gI2SLybLZAh-f;P|&!k`0mf-VpN z-5?5LzyLkKF+*se4%CAN-~=w<29lVY&PEJr0v_N6KHvudpo1W21|iS_T0t9V2Vu|w zIzbnRfNl^4F<^im;5a~Npbpf72H*rPVs1L!7$QLE zXa`}?0Xjh!h=6Vo1ui&2GeBA}#bR#B!kDm;|&vd{q z1n9Tjf34$h+VJs5?f4i5oge~YzyLkKageA3^`HT`fCP=833z}P_&^8!t@|Il;6HW4 zpGGk@jsBnemrnR=H~ei6>2mmcsV5zQHS{Z>4%CAN-~=wv2%3Nw_(1>!K{IFpt)LGH zy1+*_;qH+5=)uQsAB^d+Hw2fq!z06_6#MDpXB{N1w~0FZd%6LB!HEGb;KskdZs`{D~L-vyY^; zD1H2S5dJa*%dPO&?eMo9@OPe>jl$JjID!N*J+yfX~%?u7S7;Qc-D zL*gJgslkWq;iE42goIBu!DqbiIX`?MK*}IKz8Hcphv7$cu}QeU7$jvg2!T!v{CWg_ zL&nG-df?yrV98HP9RxuLw1PI!0U{szyqEt(@)M3vURC>yoD!!R{GyZ1jjqDqVH_ET)UQfR6 zcs=)8;61SCa&E1;3)p2Y7meei!ErpxYHybw> zZ_3;hzo~R%_Qu4G`L!4b`^JKcE)#>F3Mh%xTu`UrIIN}DnFJQ z)5i)s(mRYD#S6uS`3q7P=ob{uPoHm`Up#N(y!d&gbF=3r&MlvlJ12RLT*jKoJu!`b1)a51d*A>>L*BWb!Ycgx% zYf6LJ!Ng#BAUBX4a17-8Q~i2>VRd@7vAUSZB;twEs_d%7s`8n+Gm~ddoDn~xbb9vm z#OdYJa;GIvbDWkxHFc_fYT=ahDaI+qlQSpBPcE&@u1u^fpOiZ(d6MI#{E4X(^%Dyx zq)#wTC>}44&#y?W&{wFR$)7&PIHq`X=IHp*rK7S(C5|c|nL9E`&*+aIQ93+(c;fK# zVY$PShdB<*FHJ4gmll?!ml#WmeVM*^U#U0So9Hd~qCIZR_!WAR}UF^Z0)Wy+niVky}bVx~YuNKpm(D z4ZsOpzzrm51WmvLyub(iAOLg_1kE4>T0kpk1MMITIzT7r0uj&+q96tg&;xowA6NpG z0&#$F01ecEde8uzzy;huf=18;JirTlzz+gI2SLybLZAh-f;P|&!k`0mf-VpN-5?5L zzyLj<7xaN8z(J3rtkXaps0R(e30%MpBxnRpzyrL%2mBxabPxp1AOu=KD`*4lAPhP{ zC+GqZ&<&y>1`N;xdO;sp0)&{LsRtUU1NEQ*IDreefdq}933z}P_<$b-fDVG78H7L! zXa#Mc9fUy#=mcFL0=hvI#DD>MKriS6B1SlX2I@dPXaG*&0&alQS#^z|33z}P_<$b- zfDVG78H7L!Xa#Mc9fUy#=mcFL0=hvI#DD>MKriS6Vu)}64b%~|1lQwp18@Qta03Y% zK@;!*FYp0B2ml=fK{E(}7SIaXKsyM74$uj@Km>GyD2M?A^nhN1rmzp6#TelL8mI&H zpaD363%G#z>O8;;e83L^KnFq43__pAr0o?>mVHBTZzyM;L zZ~zU|fqKvYoWKR#K!Qfl1U$eCe83L^KnFq43__pB|rZ9rf-5?5L zKui)2pn*D24;p|IxPTi-&+9=2%13%w18I72HHUwbPzO!o%q}Z zBA^>YK@1q62RLR34b*{p&;Xpk1>8V_M$iO2zzcl94+203LC_3BparyoHqcJc6o&D+ z19XBe5CPpF3Sz(jJ-~5*&_Eri2MxdpT)+(^Xar5b1H8Zo{2%~y5CqL21X@5VK~va< z&+Q-#IzT7r0uj&+q96tg&;uL?2@TYNde8uzzy;huf=18;JmCMo^&hwS|9||}|ATbr zKbirI{lDnm|IA~7|IxkwC3+uS?2owjzi?;zPVv9I_djt{`NrIh$r}&Ue7}D38pk#H zbSkaW@qK#S7%yI(xjKIJG~cgZ+>_Z8-&49WOUL--D{@yPuW($EzdS`p`Gw2U^!~fz zrI{+n`TKVzcR6d@)3+72rneefi(4{V z;#*3i+0n#kc_cTI9C3`~hf~A)a3Psa8p$Hv<6rx+erA1qeQ8~GU1D8%ZEkIHtz&I| z&8ju!!Q5bS&@q@FNDb%%h5mHE(O<0T-v82R+0$aD6;I8a8b7skO7@h*Ddm%MCnryK zoSa{oTB)xroRmJvIH`DI=EV4kr4zCzBu*$FpF2KzyyK5N=64*KKO%L6enjE$^x?+g z#ltd(#Sbej%`QzWEicI}NiK0L$@iuD^u9uGy4UC}_GEhEJtZS+B#d$_7fZ$*v3xWY z)uV;(bhpu6jASD5NU1B^mFOyW<~oy|j?R2XszdK6gwtUoTx`#@$JDEQNU!(a4ed~sjNoAoBV zWlzqN^f)~Erc{&ORA@{$8h`Zt|Ndjo%{I{e|Gzt-j?M0b%c>vLVtZ<5P!aNV z8hx{Xk`1uc?#Hz~sKxep_hv=TUs8fDpk#e)4G(IuJs&irNcje*Kq;V)t>Hl}w&#Pk zC{ku<%s~Mq>t}0uP|M))s4A5@*Q$sqQh+X?WPNN64^gqb8lg>*@=Z>GQa~SjvAB}z zb+sGD)@-2X9N8Wu->yjcHjOzdpk#e4mLEJpbKcL~@-vXIKj>(U?NQEQMdo)Xtyw_H z2H0wuX4T#@$eFggAv+W~-{l-A1q`q?<=AfK>QvN=nbX9bDbN!FFr@8rzeq zdlZ>}M`_IhN;be&%bZwqN7V_RmAQRMuLbD$J3z}A#wTV{_{^Kq;V)ts%v>T3w+?`4y)?DWH$7A;q>* zJzkOWYfgbuKp$H}in&UizsXsg-|4x3k5G3Ebzh`Fv;S668-VZKPw(!d&Q0C^`<&WJ>SpeBYL`;?8+!i#2k&ueebjyCZW;%5|3dfw z-$h*)b?@9s_xe*CfFIC(|9h$PUgOkWp?m)m)O~;A(DVN`{ou6EIO+KRyps+c|M$df z$NwiNzPjJ=R|lnlKDLIh&bE~}QIYcRH0H2?l5JtJXzmr>u4ce7Nm^Y^5UcKe>2N3fRJ$ zi9F?t7cV|nJZ_UxIeI=>5%zluSRInDK%K1?Hdnk#SfzNjr;o2vB-T+%n6BU<5w@^qB2W3^#XDiHc-H2D2}M{v1*{QJ zvN~HWY_52fuuAc4kLzBoNNk|2uz-?nVa-II^2LjH;#~2p4HNqnVNNa{lmhB(wXnJ3 zRl+L8v%T+iK#}O8l(2x3ZDGwsp7ODqdhBh*vf4SWEByn%lZt+i0&> z1bQgyYyl-3VygvuglD479#|=5+;+|4EJdo9iwUKG?QFHwL&fahyzx*mt$Q(ND*}BK zvO_@0hS+L>hl)8DI9p8Hp3DYCs-N=00!lW-UQZ{p_tMnN`=)-4~5MZ&$cJCNs*}2_Y_;eG z1zvrqz}B6dq#`xM1%^_TI)X07DZ?~#cdK$vh8fOP^<|%7lzIj*S0UTRgoN~%pL(H8)2&@TPiaZ*S_>F z*tM9q=qvvD+Ep%X`5P|nv-BK*f#+P>%m$aXMz%m$-#3XThMT6gGHzIt(Z%@c!r+;PtO5(dCT>ma?$bs$5$RY{x@cR z!&6_`C)%d?PCMw^ObRI3Fk9_AwJfT(?{s!{+V=gnE22Ajc0ws&gsm36V0K#8P1c>j za}=pvl#~=uvSGGb>Vg8#TQ}ME2G3PQM<}#MK*>hfYS9Y{+<$28WZfw|Pm$Wq1%^_< zFk3BkL4hl&vvb(CZ+N~UI!bXd0VUhXR*SZ*jN?13E92$X-NOqMnK4RRC!l28*lL-U zm9ZtWQrP9TJ;VzY!3IV42q@VITP@f!cbCmuJ1w{FChkzA_E26@K*@&LYN?jFYfGIi zux(#)OcCA71%^_<2wN?BL4gk~zqa$%DMe}@B_#!vY?!TPDSQYN?RwOWZT$knU?Bo$()_LwmrvPir~X2G9sX4+u3XR zips(x0rP-|-WI-NWc1K_YPof%aknDyaEdxhK*@&KYJuhfk1cSvn6~}JixsIyP+n9( z$#$?f%t|eCmrzgyC+J$$NMd+2zGHa%+zNTQb$9U+MdXnb)-RxBTiI%nKH-}P&ySof zs%>xaQbq1jlxPSj*)FzPuDQ2ZDe9Ji;lV?NweBrmrU*Tn;x-5<*><*CsJXYeAau64 zw!Ov670Jg?W>i4QcCgiwZF81x&YC?nv7C1mD?3wHC?b!guzmq0+sampw9VPs$l0RW z_N1;<=Dy(%!YL6mx85b5x0o&PXq2`=j z5IS32+kVtlisU$@g$0ysh{elycUC<~kr=S7maMx^S1ZDnQ%piY$p+YJVdhDSxv<&d z+4h>o6^Sb-t6MEJI9si&5F_-qGb6ncS`{{cA zN|!eFs!RJBJp=ICd+8Z|C%Lo-E_P|*Ryqgpm`gi)(52I1XoG>Ro ziRPvf%}phmn@Th`m1u1GfACpp5{*qI8kNC>Z!_D~LA|MkPt4$|MEEviIY zRC;(8fwrjh1T6w>QRxX<1lpp~6SN2)@Ph!*iMi3f}k0MKnrLEZJ-^5 zK?mprT_6IwK@`M*0eV0$=mU;bga+zBJ!k+<-~w(SK_h4)=BCqwAzt7Eeh>gU2!du1 z0xh5ww1IXI1|6Uibb$!y22l_L2Iv93pbsnoOMw_796$qgpq`kU&ISx|0vB)t2^v8Y z@BlCH0Y3-;9Rxu$2!R&R3fe$B2!jsL3A#W8bb}~}0R!}aUeHI(P3IB}SqdCuga+zB zJ!k+<-~w(SK_h4a9^eH&;0FPqgCJ-IAEXa`}?0Xjh!h=6Vo1u%J@g9FK_FnN5nNP$&QF=E^&-^RD zlY1xmj^myD+o`uF|HwB523{?^l77W_rAW{Gi+`l_;p~SKA1=R~dpY^C`ZIX;pYe3@ zsmxRHr%IKl|K*-YKH+#G|9I+g{qe$MX?p%&@zKnq@kdLK1Rg0ooPOANxR}jks{+>y_u7CZqka9iQl^sUCN#alAB#BV9xoV_`5bNQy+P05=a zH|1|k-KgJKxFLOmaYOO?%=Pi>OV?$uOI%mpm)n=z=h&Cuo7y{BdG_DpPX{PnmAxu) zRe4WtPm-Phn7=Z0rG91Miu4r*Jp(XvdHnLyWr52Im!>Z@E-hY?xg>r`>Ei6giHpm- zbGwtf9lP_pQoHnBg`Mf0#?InJnTz5Vl~UPMB2^yCjU~q%WBDDa9g`O(E-YV=yC8Xi zSY{%L8vr=bGu1~Blugk4Vu5+x*uT8Dh*A~{K z*BEPxgPFnjU}+#bkQgZU=lYZVj{f}W)M|ZoA(2iPiQ=lvs`#qXnE~6|0P#eC#A)SI zbEhUxb)1?%C3T8^O5x=6$;QdWm6?_Cm8FxiCnZiQpO`x_d7|UQ{0XTOCXY`XUtW=0 zkzCU|5fRoWgwA`KRPIf!G^O00Uj}*GnT}D^2Gt(LGEOlf% z5*_7mE}RTI!uj@8yWU=COSc(q#nwz~ytUL4usj98Xf6gb!FaHwXZ3_$4&(yKfFqFi zr~JCV;7j`qU(uWK#=Rv^)|2p*n{rLbrinlL`F{gj-;uN{C=Q-%x&FWEU-^K)a?1J! z#o3Zm={!k~fRc@{)y|eII7f5nr0R;}5nD;UQIUEYpQC|Nz%W}ab-_6r`!(qmwhKNt zDWXrOxR`*F?PRM(TQ1_QuwBGkVZGvWvm)~hN?RwOWZT$knU;%qmdx2RaJEZ6wt|$#Bmi#WOGQj0|m@f2!PiiRX4jXGoi>G zpsbYwN;bsq5P1E~PF~f!O_w#!L(D)P?yf0%m@ z@HUQXe|vV91a`?qBf;LVY?3=cHFpc5sA5%+RCAMHTe9UUNG@{R2$#6qf_t~%-ee1o z9d}1ab-HlVZ=6I(ae5-8+~npax!?I6uwY2SBY*$r|2-e{>?;r?@a_zDc6Vm?oFP+- z04=7Uxs|S+ollp6Cp?C+-TK5pWZB>lT?L-rvpw7+UG%t4VOv6;W&v7EAG4GV^YD1s zhJy9Znk~7mSGbmv@<|QMd-k zLfas_KtDf6(w10>w&)iNmPQ5_6-qW|fn2m(6}r`=XcC~stY>Z#xMaU^Ldgoj3jwiU z)nNbnW&O)m46NgwUGd#Kw<&z<$h1&^7PFdJ%7*|Ar{L>bGT6VgXZpn#Y}p@qopSOCtv_rUE;XjG}pe4X+=7IXdQ~9NR!W|0#$?OL$0ah~))ZaUmU%Dc> zL*YM#{h%elYUY9ZXH4anZmLQu{HKz0fdDOLfLY3qePUbT`yX62H08H1HLg1q_S4u7 zS^^9(56nL0cQ2ib-ledwCu6?=EoK$7lpVW~(CD_mV%5-8RWI$Z?^ftHupYDoSj{Y@ zmzv)E#jB5;$}gS3-J|fw$hk>?7PE$V9=(R0&4dT-K|RB#h^4%*ncu%4vTEtjbpD}l z3Dzdm9pay8vj`VG?-_m0yNempPrcGlQmegJvFc~iN-q+i#SAh_RUJ;q+6&*@ycH{k zXu{^H>Q35i-KSWAjil}upv4R_4{!wrPnxpjPz~%H9__E*uULUiyaJ#lz@XUF{YOK8 zs@2pxY1#a4rT%N%)X(`RzB~Ae?j*EJidCTSu<{x0TTiHK9NA#zbp*z!fxQXPVM4?OPvF_|GNtaRRiM zRm@WUqS{~4H-Boqv}=7-p+AqrD+FjUYnW$$#IChpESkJ)EmX$nZj!&5(I2oQ8$4-j zS6lc|+J!x)SjP)#?bZm;V%9QCRT0JwI!E`R^OyFoK9G~Yor+c1!m9vU0<2|zj8&L& zHz6HKQi@fG^D2Or0Be~aV-?h=fR8IyVJm4D2+(2%n59;s=oD0Z+H>(Qc$q&<_gPb;*Su@4YUMU%{)+BZ_oB4i*F}?e#C~WqQwt~re+XA6Vr(e zObY*?=e5lBbXIZ66n8yi2k8^*BdZ72FJ7^X2K?49T3>t@@CynX{qc#B*RCa5`{oPJC+*>9x6@~gwv87RR@`^)2#{`wCECnFj1XLNF6=KBN;~+M6v7ke6CFAife^Hr zXVR_tTc;RMDU@(Nf=h}@D4lq|tPsv)AxPu#L=STd?P|7C%7O`xVT^-Si$F->K){-jB8F$ikOrrT9%ex}xi?-ZJS~zUTFT23AHL+yLm$)T*E@pqSI^CDtIxS zYiylDSg6%i^9BZbq;0hjo~~!@79;My7dnZbL*RrbL)RQ)UAKA*{#>m@?;a` z2cY}^_fQUi6^+z)r}+Q#Y55!F0J!N_F1?ACUB7hcC(!c#C2l=RORn6lUr0Fs@;|5X zgPErO+Zm>QHZ7l@SE2X+iDC#eQ(usG>tEXM))xv>7hB52i=X;ovXc7$4;?pt{l8<+ zU%3=@;PAiRR8-(e^jD4mX+)UlWnNt38yl%W`o?pZ2;_G{FDU_$O5~M*;R)Pnh zlv={PV&&Tk7PDkcK>12ttTs z{e;KJE_-n0e5r)eWvI_6gy+#`I@D=_5VVKziPcSy9Eg*q)Iq&k&^(wW8Q6~fC|2wDR4 zFx7P`8KqN;FDQ%%y>bLdoiw7&EY#`g^t1FBuhZiFX;?b5_@Y9XpiguJXfbVOp-xK) zsZJ%Kbd>*+LUmUtzp~ji4n!n^~yS82v0g#_P2BfDx8raKEe& z-b|n92+(5M%tD=(5>lN?!pK2bt&!vKR}{kASO{7I^f1+RDjB6?;#U>M9c%GJ1&Oj#F4VD1Jj>ypLRt04=76S;|=GR=`+%HYyvxsW9HpM$i(Vhp9Fecb&r0 zad@x7_z)XGOMo8cHag$fJjDQCp^SqI7OxnsRva|s%sN?x@liH{mH<7>LY~0M2aSS} zuIosfYOi!8{ttyQ#YWH)pv}CHT1M$jm9Aw-MU)Q2-%<#lWFcq?&}KromF}~d@EF;_ zt>~k)gyZ8Tz0!gB+X~?`^qGzTEvAQg5ebo#d%|O+Z#dMqd`L1%N8;}&jL)+Xv;^p3 z!Z_9brtmEe^-UsOTNPf_2$mzF)$_g_xS2h{gJhnBxnpZ^Bx``6O)B=!A!Y1wlS{S7T2Os6~nl>hG^ zb#DE}X>Pra{(qX{{%2DDzt7dU^#NM;QSQGBgKqub)igf<<^OA<|DUgN>qpV@e!#7- zq2)tA;JU;{L)MAwJHApiW3Z4#gRwPHR89?s|!Eu9t#Iv`X(aK&9@MOZoZ8e zbn_hqp_}iPgYO{>-TaIj+=D=LGh>0D#U#k)=P(Ph`FR`s0_H(Bzvu6z(kgF#Iu5SJc@#^NUec*2pv2OkrQzo0g!<@w zkC-;u+>dy5GmnXr%|F$He{KN(f|--ezczvYg}IZ>zhUxZ^Y5+1(PI2JW>Gf(5d#0m z0sq+!{!80O{I?GNuR(M#6J_{8D+hHKXt=>L#Il>^2xd23h-Nq42xm7<8?-R3vRUB; zD}A7inUzgX0Q6#RWz$y;`Vr4=1`yD0Rw1I@tVT$?8AMFGS%aW z4??`Vc`yRr%|j6JZXW6d4@1nmc{qaJ%_9)?ZuTJD-3%k%-RwocyEy|9@8(Q|yqmKS z^KQ;Y(7QPYQSauF2zwtb#!(1=H;+dAyLk)(;LT$Z0dF3M5P0+W5O{(E&ecK*VMcUt zo&olif%D73eiyjF4K6gnMTmws7b6_rJQ4Bm<`M+Nn@c_5GK9pN%MlZAu0T+{xf0Rv zX0!?%s0Igv;7|>?3L)|4YQ)5wYY-G~u0>S*Xff6yI^H}9;qm6lh>tf83uS}8Mv_=+~fk!a)W1^;ARUvrvf~;5%z-`swMM3c58t{@@@X|VPdp&Wq7?(BRrB5`1mp6e|G=o>RfLFDGSGR$~ zAu!>9*R+Gzc7WG)g4b(viJ#QL8w~KqGVrEy@MafyiyOQZ@$}|x2&gx2M?}4OMxUhpo2)0=nu!FvMWy@;qc??Xtvc|T(6M~m?QV(ZNZYr%)=z=siDZ$5(f zdh<~P*qe_b!rt785PLI)7<=<^1lgNUAj;l+G6X*5fKRuB&vby#c7o4!fzNk?FNl@I z7d3E~4!&f7FPDM4%fYk@e8mlZ$^>7vz}G6kPgjDk+u$1>;%G76^x~zreBj%D@SOno zZWZ`mHTanzxTglp)PkR_13y;}e!cOaCh$wm;QKA$ms`QFw1Hm@fnRgLueXEW z=m5Xj3GVFzv)$l-Xd8&%(!p;V;CITv@0Nq#bAjJ?6Gw~j14QPV|B29i^M@7S2MEqL ze}w3K^T!C!H-F*<_xZq_AN*+m{25~O&7UJk-~0ul^vw?urf>eT7W`Em_-jP!o4-M* zzWH0k>YKkqu)g_wMC+S>K)Am7N5t!!`w^&b=0o709PrQW;9okxzjlKE)dl{o8~pn; z;%G7cTiZb|{X+-;#{mCX2L7uY{I?7IUpLXcoHk$jL9;-;0yHYYG8-)SfG#iS_JO7! zm&4@b1Wd4wPA34mb)`kTFo^fzZ9)Zd(mSbuX?EjYUloP%(G^GL+|j~3%7 z#QmE`Bk&epae+(S;4%|jZhA@`0=T;OYRlrV3nJO&l%8x*%RU zsRlf`7Cfa6JhdJ?tpQx$2ySQsW6j{{E#Mig;F)dU#t^v40ncg&&+Y&>cY^11f#-IE z=S>68*Y*=H(7_80a7!5&F9)}}z-?~uA``sW0xzimFRcW(+r-ggT;{<`pYVd0`@k#w z;FSUJsw(j6YH&CRCThTIYQbyk!0YP4>l?sNHi9=afj2gTH?@E_w}Q8{fwzXh+Z^!r zcJPi4a7QPY>;muX2Je~%-i<^8<~_(HVBU*V0_J_lC1Bo(STqpH5P)g6wPY*8;DlDN{lIQ^`+- zKb3tY{z~ALbUK>O?@sOx@6Ns)e>w2-+?R5@61$vTnHOU(YA>c zbJ}yMXCu$%o=H%Cg3Qygr?sb3l${{=Wa3HZ$qeNt(4I&=zBd(51ybpqQOZh?d@TG} z_R;vGfk)GiL@6sl^5O8q*@xnklOX+I^uhcCNy)oH7rj zhoi&!s}ol{S7)w@U8P->x-xR*mMa2Rq%V(B&Vl47!k@@q7N?8@>Fv?&`Ad_OZyO z=jF~#P>zAjIk9uJb5ffln{#I;D91qNtk_xFSt-geklUEp=xoeTet{ilgekW`{Pe)- z=~$F93nVv$H)Pkx*9X?8Pm5A!f#j*-Q?sYUDX&2K_wpiBapWwB-2 zvJ~YJ$Sp}M*?nU4#Qfsq;_%|^qWGc!WjJwHnM1Co8=zU;g> zWe-S4qLKXEB;^jso)AAFaKhZ?I1o8* zJuH7{^3X8l35XvOI3#^=^x*tK$%Dd_Cm=pOFg-mjIxXLw><)Kt=+e4UosrI5N20^& z$h61Wwf2+~adM$V$O&cIVr^Pmsx{J@Ye}>?lp7${oNr1}W`JyCyfM(2ZrE3!sCOtQ zK&(!yOVvgwBS50Yp_~A*pcYJ3N2+s_5x}X+1Y!X#kn%_TIbXu(P&R;=SM#Pk5ziJo zV5cb$K)xbLnEToIDy+G&CX&07=(IK2QveyiVqJ0a{ECv(#wJ z_yEx8rHaA;P^9?k$d44tH%R6P&|-R-rIh2Pj7S4OlJdt2<(sSoEdhF&2cVQHR=Ohd z6NT~}(zFZEVtSY#H6|Mr7?YI;ETwBQ`xMG|N#+R9VtSdSl!c0ArBtz!GN(|!$4bx= zpqF_7N~vO{3qe0sC^M`CEdhF&rG}nIOIb8#$=58TD?vX~C_m3i&=R1Rc>v1MR>Df@ z!pzSV$}h1Jv;=4~5jR`<7LdrGbPI@_zxNjk;a6A)S^~70g(gz!t{NJaExxN}hICox zLxu3`ECek9dYGj)ox<=swpPg~U6=W#!nl`>pd~;Lv((o(YMf9;>B7vf6vl6{5wry8 zVV+MHEvAYSEEt#dt&+b+>B7vf6~=FqWrYAOrk7bTPQJWWXdPsfZ`+fTu>3}${2s|1 z0a{ECvy^hIkkS>s8Pc_&-ztp%$wtr;pv^=ImQ8$@4ZSq}7`ebUw3u$Y9>2gQCkXhR zLii*4I7fgM)59#}eAzaxDm)v#z_xhV;F4mabYbTA3gbTdEJuJA(`I7Q?b1c;pHM{U zvdkY8!k@7av;^p3LO508jKa6rKe33?smC7`#t+#D(roi=1Ys@93`_0a{F( zxt*>&Z>CU)36GI2bu9%27Yn5W@}Cq!+%MWLK#OTJ3-`Kgn&2zkSXV9RUY9~t0wqE~ zrOuZ2<9}8d|IS9x5}=3qQ8&8;`KEnYDecJrqEP-1D?yr~nP@W$cMzRLKT8j;Rf-c> zynG?o>S!UQ9r<4s#(&dCwhNFZGA7#0LbaAMQnkuPX-EEF3ZtgM2+~ZyL=RJ4t+G2RHBlsVM(#uMarW|D@s8-6Ql+MimsZa)33DSg|L@)C~+JbOf$b`pm z;mcex*w;7Gu^TNWohR=byR`o=g)_)bkY=YO+DzmrL)5^8$H=Z=XwAIBslc*7KkCx2 zUhdXyy8izF-S^*3%PULW`U%In^{*Y{)=#2)0DeW+{VzV6=I^8b@1*;CKL`v0%!+W#eV?cbQ~){}JKe;X~k==%S$bp8LUblrdL47dIZiv8b8%m0Sy zegIk;XnC5h`_JI(|AzQQ`5Pa2ssGPdW z3mZY2gpZ9NjHPbvLK#PH?HV;o2Lf$bK~>5aVk2k?&}PCo)k#a?HpHPd@-A|YbRf_b z#tyP{2#{uGBYK#n#x8JTR>QaG6mEK^Lh=yJ9BH>~D4d<-X%`^P%SQAvOF2hcGIg;> zqQ*vRR&tgpoL%e$X+k!3f(PI%3?+;@rBl#yg>yPPL5fplCs?XSSSTlMV+)T}F3y+c zM2e3EE`{?Dc7il>7tzDqNLHNNPk4+R3;M@;FQdhjjsgg z{sdzobsS|0q`75B`Y)qS>0n?goMG}%P%b+`o1YiX?PpAKqM=Y~z`lVQqvvS6)gCGB z@hpY1mo)7Hq}iQ_9%d;eT1r7#82%b5rL3$_C}*$|r0Jbl396OSHhZMBm#tJNXOo~q zfHdb3E5SlLnOw1B`-2%{n{1(GrTwg}aLyqE&3432(96$DImh+~Gvxijk&@G+a30A{ zkmfpKCwKr(xo)MsyI0{nh7277qy)M|53`hWyl%(N(+YJf?caS0=dt8z7a)ao6TQq* z&hfgPCvUcr)30zI$4-#)=CTt!0H<8HQtu+5aLy$|hX5&~EYZU(^3D%u>$rx|PpJkCdF%3g!@w!IgTtEg&4aQE;%g;+WM~|K4l($>SS*vg^WG6_$^Xvo< zz$w?QbdFG`aGuCckiyy7398Q#W{m9=aE@?fr1%`6Ug2EEPLLwn*$EzibF8tjQyQvj zP&ikz6Qm@h>;w;yk5Vws!>l9tMOl(g?_RyfzO6Qoq3>;%>249n$|+DePUc?vs0N{`7-@Bo}r`#ef& zE3FFWdUk@87LuKyx^73}2}VxAj*1*4==R)^A=Wm9^K^ECmH@rX18`DX`Ri3KJwg3{ z4=oQYbL(BSq^bXZ94%j7;?`Huk~@*&{b~8{#cut2S^~5@vdFC;M9XUn-Fk$UuP>l+ z09t<0PksDZ)W@GmeSBK#=ezZ%sP7-{quhTq@84otz7uilXE>A_AmrAsro}@GE=2v> z>A%QF{r?S-@&13i_%A+Hrb`#2btARukfLrja@~NGYmsO(3!(CpZzw4ARw-1za1DCY zD79!uVLY3SAm#2OdYK3CZOE-l>T0wroad9LO@J0Nz}(EiPd$^m8pr}hp+UHi$nye^ zWN??x!8;Vj3&_yJ9A?Nogo!e zI`uzDVf+MHIt6GkYndOTpfg4bDrpZ^Xs;w;n*b@d8Zp2u6m(|kZ*-yetSaQ!)xRYe<7NEtfW0op((R4n&<5LKY9?PYE$Sj5UPEvLX&|=mwOBEVf3k&BE zD^~XpELgf?%~)~eL^!h*+IzUXpe4Y1W~uTPO_?4pnx}oVz|u+69EJH_vP~BtWpE%i zGD{U06Z{mu<;BbSOOC8Wn$5BEiLm58QsI7peA5JIF&mhrN*$oYsm+B=n@T-CUHfRU zrE{616zT^_dawX3W;3%?v4bKw+&0C=9gd7P>9Ax!T48^L3l3TWY+xR6!Q~0m<@7+u zDAbRV?qC5@rUzm(^J5o$-dMq zodUF&HOx}Qp4_g-w{S^&yh8gF3A+VoG3%M7%3IW~dnWI^!_pbg2@3Pm&vCIqOMrFEQpGO%ntMjS=0E?~rC;)6xBkyv)W5%y z?ge6ATw_g2@TfgVGZoTnsxBlo?+6#qnS2)>qT@ z|DRCKzw_z(|9@TV)~};${~r4PA-ewGc@f=DK(YVFY@_i6%KJaCmGS~m-+yzQ@&{7C z|Ju1Uo`C+pUlW(l{!P7~VtMbFSLpxqnZ=%js1FbGQv{ax7oO6i)e0c)+X?}qhoAvEU;t%6Ip6}^fC*SY1yBjtfCumbKEMwI zfGVIGK!mqd1JnX_Kt0d^Gy+Y8vGr`mD=k1P&<2D62WSU6fKEW0OV9xWCo-k*m{=jpwB1=T!0%e0Sl-ADghht z0A9cc_<;aW1yln;pa!S~>VSHn0cZr8fM%ctXa(AU5a0mqKnG!LJv;GA7tjqLcG^Pd zw1voN3xU&C8Bh)&YT9xGh?%w!GHoGZ`lF{tw-74*@uoyC+c%#g&fTEf1A6Mfx(2Yp z0Ua&WFDR%R>@Fu-Zah860uQMK5A%RW)PYAefX6g}$F+bbw1E)^>=Ql2ejQw>Zy?@a zgGn!Vmmj>R9(<$`e5?(8GDNf-paVZYtL>$yI#33<01K!9Dghht0A9cc1b`}_8mIwk zfjXcbXaJgkW}pRV1=@fR-~jD_*hkO+9Wa10pd4@kZomXApaQ4_Y`_C}0Uuz{hng>x zgS*_|%O*5_JbfbwzS9VP)=z(J{xE>|)Zyt*>+!S!XaZV*5a0mqfVQ7t0A)Zq;07$9 z0;mLRzyo-JMtZOLi)Qebt>CZQ@M${z&itbb{Id!EwVmkJd>!;3&Bwlg{sb_9GN2rA z0dAlIs02KK5AXw3Ks8VU)B>F_1O%R%1hdh?QyWiPyvo5^g22A|?1uyv3D)5^@Fk1_LtBzn6Cx@To3-W5&WCIcbRZkZ1>QAwCOIR zczHjb*5GNP4!pJjyuJy%p#{9D9lTxaC+^U}JIlbk-Qax|_&_E2kOzFk2R`N}T2*-Z zco2ND0emh%3DC{YRS~UfAP6+!#jn#eo>WCvi1>jG{=^IBd_+1oB2)oEpcbeD8i5ud z1atuUTtYcu0u_J_c!2;A1nPiBpalp49e}=t;17}gXVu_`HQ=x6!QVCzttLGELo=SX z;%UAOPaQn{%jo~~lb_=2W3Owkr#~J2wD#%LYmwJ-uO?m%znY^6`^cyAucTgyzM@f# zeJmYFXLiSTI}~M~cscxX?xo~Qk(ctjQoEwNv|XteBQNG&NW9>@kfm7r@blT{;?D)1 zOFtWXR(m$}Oyrr|(}|~@r!!B*p3|dKoOsybczfre%!Ba<0}rMjh(3_NKY4%T{``H(`@;9-IO0Bc zPvRcup3L2`yS2O1cSY~g?n>PmrKtOKGL{S^GdtoGcb~l@aYy)$-0ew|xH#!u5pSU4>L++EwPev#LKXrZddhPo3 zbr&T7uFYMO7>mKr49AC^;Vebrhp*0EmAoo)RsPDB3+dHizc z^6V!P6pf#|EO}Yvvi$ZG#p7$+)0f6B4P2U`hjfep_l=WLth~ zYHMU`E}n=x@ywRk7OiAle)!z%Iq`D>=cG4BH|Nhzo*h0rcUJPO$XWSKsZG&M+NSiz z*v0_G=Eu);&di>Xp!odU>B-Y0r{`m-STv@^(i>tM0vj?EqwlQGo+eI9pBg(gaB7BP z^qo_(Cl8+-J~>BG`jM0J>r(5Y>okhfkF5=?&8&&9an@v4Csv17=T;>tT0cLO8j21L z4~7SG14)Y3&qq_yXjF@)DPBLYGP5GS!da1}i2d;L+_L1d$g=#>)Y9luZE1Q*Y)N2A z=EV4k&WYK@VsUy=jNnZvKSS3DFaVj}KD>fAYAn7}caqvI6CpFJvZRQRae zkx7c<&(BHCiO$jHq$!d=Fgr6VKFgVvohfFfDUv@hBhwr2b$YYmL^vGI^(1>D6wjYJ zB6@^&MEdX;Mf7J5iy!73mOV5Ca71PLE8_PfJl$zcwx1 z9qSHsXS(8DPFJ=w(HW-L{$xj_Bj28Ck5Y7h+KD*N<$w!t z114Yr6+k6m10KK&_y9i;0IGm$APCd|wLl$E4>SOcKobFLi03UpE6@gn0I{2(0Xkp+ zWk5OL0^9(SDjLYCXjA~msA$-L2S7SS1KAV}KM(+rO3^?jMI#8*0JT6JP!BW!jRac5 zCOmHjkU`Nv0!5<@2mubz4rqG`I$!{0Ksn$7+yJsA8Ww>1$+Rq zBpOJPXjB2!KoF<_YJobSo_Co{74-Mo#G?4nxz;Km;#D@m* z9?}{j@u7jdhX&Ff8pwKRAnBojoQDQ-9U4e=Xdu&}fkcOf10cN<$w!t z115m%h6a)w8pv&EAhn@^%!Y;+@Bv6`XdtVhfdMN616BqGtY{4}WMyE;%BTbCfd-%v zXabPM&}acLRAnHAp%DTcKno>kH30)C1Ihsx;08><0xEz?zy>^k7w`do07F#X&uaiAD>RU+&_Jp}1DOg9WGFP60OTh$Fi2%!kjlUym4QJjL-Y_dKnDz<48S0j z;Q}y7WnhrXz#x@@K`H}-R0amA3=C2k7^E^VNM&G<%D^C%QAMCN#4weCVJZW|R0f8r z3=C5l7^X5XOl4r0%D^y{f#E3w!&3%^rwj~F86m&{+JO$B6TtA4f#E3w!&3%^rwj~F z85o{2+yI8B3=60LDgg{n85o{2Fg!(Thyg0Y4+MZJpc+7aK?8XOjar}%z`&G&oPq{Y z3L3~LXfy*YKr4W3f<_2%fOen*=mffeZa}OgXn+nFKp9XDU|`B{6KD-FG-Y6D%D~W+ zfuSh_LsJHZrVI>C85o)}Ff?TZ01QbP7?LtDBxPVo%D|A6fgvdaLsABYqznv685oi> zFeGJQNXo#Flz|~BBLp}=JJ11ONXqB}FeGJQNQ%}_r~eECC0oo3N4j4cgP!6~NH-KR%1H(`ThM^1$Lm3!`GB6BfU>M54FqDB| zC9e`md1H(`ThM{N;F%V^7Aj-f%l!1XL0|QZXa3(lF zJJ11i0$o5iAa)WoKnDz<3@8U&fE&O7lz{;#0|QV-C13*{zzg^QKY#%!1F8B9Wa^_e z4B~kWPz%%nNYiID0F6KsfZTirQu7(e%xAO#A;1CJfexS(=mNR{Z7)Fw44@3C*|C7k z?X~nDRU4rmXaE|4CZHLxb}q!q6Ka4azyb8#1QYNAL7))`0oopd8}IVa0E6L9ZdMDGQvfd-%r=mK1O2sTg!)B~+RCs4kZPzeNpI-mvU0Lu0gDgZxF z3p4}mfF4>*#R9xQ5NHHKfVPt02AWr%i1te`HV`bp2h;#ffCK1T2qxeKf0<>X* z8}IouXWMS~|TuwmYypL)r42m$NS=UJ6sjyyULPuKbIs z7o(IjFa1L7g}@7$=i`($FZ*2Lx$twjXOomSFaJ#HndmdxGil147ogsJ{3++DEalD% zQ-41BMC6J5Pk{RN@w=V7vy@RU zd{^$yP>YfeSMi#3}n;_WZ>8;q!CnB`N=2{@m2L z(Q~zP)0BZPa871(e6zDTOF8%^_x0y)%%7P$GkT_WX8MfS8G$o0l#9 zmuv&Yg3e! zPg|Q_6I&CY%zW|H&g$%{#Hujm=1UGmhVp}{!6;?tOAo{b0t1<7JSskBe?LK)`f`hs ziz18i3saPPO1b;eN5+l}9GRID zr|f;%*@@ZV*|}Ls%HNltnVK1$sg3meclJhmwcd0%Mp^taJ@Fo=CwoMK^7!QrPaYmQ zJbzeho|SJC8tFwpI@pw+O2h` zyJB5|u1sgV)9K81Bs#(!x%Omxq&@GXoT#HY=};^bpv->pHm5Dyy5awz@2}OQgL8xV z>Qr^KTB}Z1#i|07=`S8|0$G2;AEsP?Nnga5_olp2%J!G`#5@5{#*W*Lovln%hAVTF z^Djg>{}NW%%9%+sLRtS(?x zT1Lc$5TS1jyi!H?|35y@pr7cL!!jY9eShNT7meKmBi*7IQQREyyoOs*K$@k4Si>xJ zXU61PQO57dkhJp@+FhjT5Fky}K@2jH)MGQv96jMNYzuq1j*@yTUOzb0C*4CBmTuGR zQ&?XjQ=0&3x(=d`S*oyZ;iidIaZf(Xqc?U*!ubkenj~EUw3xL_B=(vr-2s9C8pNu> z$N=5^Kd@FVsC1iVzry1P(^5T3l3G=)h~OPC0{IA}?p2y3~*m|-JGnKOw#W~ri%?;&9w z*+a_06$;_!Nzy4m%9}~7VPZbB^Dc$qBQlb3+g zbC&LS9a5;jPSS$~NC`xV&CF6oE_q}1__i(CS1Ig!$=EGGN+wFIXO=2>;j89gi5Zjc zqwkgOw_U9;XUR5QfEKfnS*qM6?xP=z;*#BK6z*@6b(#Pvy(qDPS*p}UUpJL{(tY&u zhF;5U;$dpW@f2km-@PAj2)0=`#OdF`{bP_K#SSHJm7-M_tDF9w4J0-|9}e) zS^{ile(Zve-A6CmPgdAJAmcOvTFeIK0T+Bi1DDP>Pf@6UMACx=NLg2j&CHKo@bLyN z*-us2_mQz%fOO{;v5r});Dr-|kp{kE^#b|uC7t`7rV!^y)+s=XS;H(tr!tcJkY9t ze(h0;`M=$*f06G0Uq<);f0OS2AENvJzf1T3pG^1v|L8Yv{q(nJzP>NJ_4A%{>wowa z&D-~eTmPRM+Jn?2rK)oLBw$sknjG<-uJHbvT-^esyt>4CW~oi5a4h5wT6q1W4w{@q{0xQp zH*5wi0oE}~m3Y#|Q`}LK#b+wSza?3h04-)Mvy^yZRhRZ|RCxcuUeFR?EwfZr7j@9W z>nC*3W=LnYn-tzZlB-*Q7PFpNs=VXp)FWTB)K8MlXDQ74*$i3&tYelk7k$ONQGbN^ zY=!vGBx@6(#q=|g>T#-JtU?EEXw712&p$&tncl20{)JrK0<@U*%u+=iujJk}i)ol+ zuzz4NC9WDdjhD^mD9nE&XO{piW-YUjhj(&kbYyd0Ioek$?vl#6Ba#ag5}hTWEkGX=5=@ak z;W3O{FXbfZk8rI1h~q+q!(az!(*->t{7g8uiHjyE#tSky6yeMVBa$r&Nf}E(TY!G1 zTC!p$)?h>uS4hfP0@?!fF(E-F*9niY+FH}cNjXLwTNMr$J3w22K4#$?nf$eneIv^` z!^wzao5F!}heiR~Odk`D&Gfxbc#M@}aewjVdy&FX!4A+CppOYhOia%7Fj|ht>^abn zl;dKBqmmtM((ObOjUZ!yP*a6xCq~j{F;Fz3h zXv`5V-gZBsaQN8)+5+@33y#Too5mbH>>t^#E>}1L>;P>6`k8Q?HAOo|)=BJo7xqaF z;P>6 z`j`br=|(s>tGIz&t#H(_1GEL`V-_5x8{y#0;s!FTaMZH{v<2v6796D;;oywo29i)X z8rT8a0`xQC*h1g>gvZ!1edS=dcFM-=*Kb%B3IlSC{?@#s42oV*q=eaO=w{55RZsr11nA z2lyHF|Iel6PdnWD_MLR}9;V!Y?;rP8kox~U{p0=rX(B(eC5;@8s7`u{Tf!$5brRw_ z0Vz>E(a%JkTq-8ii5NX$8yr~E6E1EFHz*_yOF&zIex_Q|Q+%+vQ6Xt(31|z@&n!qL zZ$X6}IhBOMP*8&-M~j;jk}j5jwg7!hOqy}JICnyu79(HD+GX>W6z|AyRyexZ0onre zG2uABWOG})Y*}w{W!<81Ok)RV3(&_bI3`zC;mAr3sjhBSIHt1$v<2v6795i|tucqR zYr0M0ID{RbEx-V?)bvTnG3*wYKB<3s@i%h2!g45EKwE%*W+_Wy(}G1hw%(zT9L5sR z7NDQ0mPiNJ9SX_eECFo+`k88pbaYKBBuB6Wv<2vAswL9l^-hJPhb5pbKtEG0k($X} z3Q3qHAk9v|5>PFX+R5DtNiR!4TY!G1S|T-+dlZscECD?NtYU7Z4%+#2J~H9KQ}4J1 z&uk`H?p0WhWD95u(9hgV=R0SJ$>&vthO&6DZ$`MdHQuL?9K{mQ7NDQ0mh=>#kKC`2 z9L*BY7NDP5kW4=387oOIosiID+0R7B@Wby%JtRy{BYkWi@Ie{ghEkHk0 zEs@&EqYBA9mVmYZ{mg=dn?iAe9O)ZSJDDT3lgAX2K9+#C0R2q0L~18H6_WWZ0c`>L znFYz@Ugy|%GFxgVDTSn;C7>-pKT|D{+R5Vz$pV&uwgCOif@E^vcB~|`q;~RzLb8x0 zpe;Z@Q!SC&$&(7nB9?%*0R7B@WO5IBtRyp~cJh=$vX~{HEkHk0Es@&E(+bH_mVmYZ z{mjBuht0)p1kXp>361cGW%ZJq0Ptej#%j+k(^Z{Cazs{xKNJ|GT@2z#|>uCAQ z8tU`Yaxg7lp#J^_TK=)orQbt+{vKMsI^@zf(W24v@SsbdLreB_mwx^{mu}JWRK%r6 zX!&5JOTUzsDq1j!oHqQ$x*F>LKenK#|G(!iT%M5=ju#b`I>40*+5+@53+-w0#el*$ zNA0P9IUim}B)b%nRV)E*0s5Gw(jgc6eYliW+-6@=I99U*v<2v6mdY(X=8!sMFDo2t z*a6xC^f3#L$p?fnhtwb2t#GVm2WSh>$1FG|@2bZfQgw`Lsf^fhC|VKtEG0ky^;> z3Q3G5pe;Z@Q!SC2$QugD=_~|0a-&=ejc~2oZhb5pbKtJ;$ap6ZuhE|ZI_~h?13dy-F0c`;Wn7C6EWts388GIR9 zOhu7;NqZEQ^VkB~0t_%q)mP!<5A_v}6rW;d6qfVZ0@?zkxpasJV3}8ZiuqZEV zwgCN1_17X@UjCdyav@7VTY!FMsiKT;VAA#F&nqNbSOVGt^fT2Zk($aE6q0Q$0c`>L zm?+7nl9vot^evED$`=)mi`W6$0`xIakV{HBhE}YW8p@Xxj*Hm=+5+@3(M&dpl85-d z1yVD4U*Wif9iS~hKeJF*lO3bq`U1I?d|4s6lqH}oKtEG0ks8TY6q4;M0c`>Ln1yd- za!Cp&EA)*>ZRD#8$7SpQZ2|h2g@TkiA)+lyY9e1#I6lD+&=#PNStv&-2bDu=AzxQG zu4D&j3y`K4A|Ajlct-Jn?l%;ctJnhC0t_%wTT>mf#&^Lpq+Reg6_%^n0@?x$Fb}{Y zZC!g6mSMJlwgCN1^^R*saW6lskR(_F+5!wP51=T0VXi?I~vXid)A4|*k>3aV*>i>Ib zd5-%3eP_G$ADu;gcUr1w3}6@a{}<8nGwSKIDIaf|BuEG zX!$Gk{gbpDM$4Dyy7Y~-2pR+U`#%%U)l&aoEE@0sPaiJy|LGiJ>u_mkQ&Cf6^>7`1GEL`XW|>!RPw?Q?MCEw@g0Ta29|)f0R2q0 zL~0h_RY-1R31|z@$1LouO4SzatfW@)J%!^Yc7V13{Y-U1s8P^kWSHjr3dzkZ0c`>L znFYz@qsRDhP};VBppe|g63`Z)mx-G)Hi{5dw)injd3LDZPGg?MXYl{2P~6T6&=#PV zS-9^bRQ&OHKBibxeE$AJh2jqS*yRGWnSQ4F))MJT$_EO`4*K{;0oqIta~oIG+5+@5H`9qOzK#ix(aUqI2m6;6x4)c1at}*DTYx?$ zBxg(^85wF?E#G(gQ-$Mxc7V13z07myyywi4b#>y<{Nm>KGlk*-R)DqueM~5}(!PDd zV`NnB#G!!&#aq?S6^;kl0onreF)yV;lyD0X`?U=V> zU_tTO&W8%e!|VWU0s5I6>4p;2)`Z8%cGbU@Dyw+A`lUkh2una)fIjAyk1WVaDoF7u z!><&Mo$LT@0eYF6co-lwp&X<8+yyK8inps@D-V0Da6es2JEKPI!zsC`w)GZvIx`c!C|EEkGZ$;3!oNa!8l1f2VLf$qvvK zppRLot5W5lx{|J3|6bvEiXEUWKrizQ+9Q_U?e+~yyWKx16i>4Pv<2v8LQ(qo)FOzjlmEfAnaVehe+& zL*JhkA1yD?{r-!Nbm>2*d;PDbet#4F|M~)#K1j>{SuXuny6=A)_5D9Tli~nq`S%RE z{@+o!{{QV>mma6Z9&qW;L}?6x`u;zrKL2I3)Nub_6R)+Oc3d6h|Nn4tq5sdvrw!9J zJN+O0v~0&#(I59d>Fx4HJq?})O{=P^(llZ2yGR7>eV2-0oBwhVboN{&f=K%tZ1-O$ zf`+(J1ZzS!i=eje77+~YxlIH+ci$m`l{@dGKiP1P2>SQmD}vtL_tSf~JSc*JxetqA z`N|Z1%J38P+J>j;9s8c4PucPu{^SMvQ2#CwG5q53LeKoK(x1$IjefiH z9TBYF`x#Qs%}lwm+L0fhnGUe;G z|L`eaui8KL>-EDMMP=h?^)>7`i`Kj691(O4pHHP)xkUs$RMo)%>a_;-S{9;ub?v2k zMWW+ic@NcV9qP3e^;&^?Z9%=d_foz3QLp7&s9qaTuXU)`vSF&%M$~I(57lcc>a}c` z>eVftr5{nR-KbX!_3A;r`cbc5)T@npZA87c?x1@0qFyVgUV}bVVk0Wi<#)88XA4zg zEh>?2$Jgk4Ke)J3#){h^SK`>~hFpnbuh*fnnno+D9+g##%5tN!EL4^kl~skxszqg$ zqq5wnETo1Gx=>lQsH`?rRwXK{6_sV8vV5p47b>d}l~s?*Do15Cp|S)v!WL9kIV#IU zWwoKQx=>jrD$7P?1yET&R8}P_s{xhOg378yJ^4{jO{k}G)RT>RszE(fqMmfQp2kYr zF4xo8>$+S|W3LDIUruuld5qDT(sy1hXv3x&aCT4)1oquPl{A-Xpc6F^*h@9wpaz^B zR0D0O0k8i)5e)688fZlg_*PO4RAF=JKn=8_1{~CYwufrKJxn#wiW+F$Nj1>8gKD6D z57j^$3g5nx3fhQP9miGz|fp(Hj+;zLQgQIaN6$=Ev9$R!zjy%i-H+m>yV#I=(OQ7#^!)r7tizIOQZ4WtT?Wo+Nm=ox!! zNEVO1-YAR5UT@z(n?uw1=Fs6MHL|M*y&K3+V~Zs0q1w=T$ZBDmbor@(9rV8Os_(?R zkeEH_!@DZ+E)DPM#FlL0UFCR}HC$ZGiXM6w@~sE!@vc_9t06@1a={hEyDIUn3cPD< z1Fpookg7e{fOoavUG;cZIo?%`cU9nBt}R#4q-NtK6D#T0ZhEn3wegN}dVRd=%ka~f zt7E^TSuNwA(M~^)zg_pY7rj%%Ph;;y%6rqRkGvI!zYf|SYrJ#2v>N2ZANdsgq8-2R z;1|eXZ&@Q>CVu6o!qrsaSIBTb^6B^mjrNL~0DjT9uT?8Q)a%f{MH)RQK~MScauIL? zW&5Kd;2Itffyym|BH#u5Ko!sdXgdi8-~u{BYbfw|HzBZcod{F|HGr|_G!d{!7O3A( zuy-#Ia*jv0gI(SdfXK4HAFRm(TlY(9- zYKh(W`@*gf1?|KKjtJ?;HrnpXAEyE@qK(4AiqnQf5BzB>{mw_<==dv`g4B4Lze+bf zwJ@(J%@|0)OrkV@9|7}-(wxYIa@wdZ%tlFbcGA3sm;{lg>m*37Gtlrne+u>O-FH(5l?BlAZw#I|w15Y2_e&6cD5)K~r-QJfT%IE8$*(7w`jB zKoF=08i95|>?7zv8DR6X&}y3b5~y8Cs0SK>Wnl=$?3S(`xaR*Jr*+?(mOuxPg+t0`^(eUUisN1_-vcn3XWGExgT%=PuCBkDVJhH*-#Q^ZrY7mn1KV zToS!lyEuJOYFl)hwk@zV6OYHETjCccFG!!CJ}-N2{+txgRuDhiIXin+;;islxlPGU zkxlt2W+Y6v=!;)vE_l~nPu^1&a&*%#M1E6+>+#y$ddetsS~3oYA2=_#})?` zXBNd5Ig7Fj6AM!dLj61YqJ3IldR}Z^U|uE?k2sO++{E1Q+}sJt6Cx+%k53&RJzhIL zeO&Cgz;PLAhJoBs8;;yJd&8{2tjx^#OlM|xMq);IMy@y68|lr5Q{iY>3#WTxJ%OIg z5%D9OBeI7l4i6umJ1luvSs$s-*QM&Bby{7z zHdY&`&D6wel0kp3V}t+j5ccm2bIJ`0BQNf}X9sO8C5c z6T;WE<67bKhi;^|?Y@by@)qH1n0uS>)vvsR{&-(f_$v0_DSTDpZu%7eJ;GPE<6hyb z?zx{n+5e#M8T%d*zLwCVq};tz__~K5r_bB_1f3M@eUd&t^fdj+&SxgBZG(7D_&R!C z5I)z=7wP@tWm=y-go^!XdbZ_NN-?whHTrSKr)i}&ye@pTJ#Wx2b`yL%-lWeAy-lmK zXOHk%J3dPV5}&8F-4MbFdvUGU!yOY}GWK;%e5q`B+QgSSw(!71@n_YAxQkT$QfJSh z6WA^QXTwh6>DW2;Cxutd;cp1{WBdoL;>UFE(epdush|4~I+O65n#VV{ zR`XQs`36m^J)i%mlAil)zyo*zAK(W9Ko!umGb?<}Knu_cv;iSN+e6R+11JN^0ThlF~d0cZr8fM%ct zXa)Ws_U;3^jq}d?{S1aA2IK&kVJFxyY;w2YCdZW!CE2nqi%_v-JFyA57ukYsxfjB{ zTX63dY{$J2iA#Ef-DI;#b`xQf-6WfABBW>2giUsn-L(7vKA>ohXlV5A-uFH4J?GMA zJ_2EIeuF8P!88APCb)TEzk;W&<-8Y30)9_Zs>tt=!1TU zg9`&N2-=jOLjVk@Q_pSsg**oa)ImKoKoCp_LG#vM$@D=hv_U&`KqquT47#BQdZ7>c zAr3C++l2raPzUwU06{Pz1dY%H7K9-JQLw>*X7yB zbb-FG6|41LmmBRd75PrgY7r9DCYWxxCqjgOuw-@f_!E92r0k>Q{; zJ%!E9U)I9C+rKUC0NZ{hd;9snm%aVAdOd7PBVM>c8ky9#w&M>Qx1`lrrpMDCU&jZs z&^CF7Op`4~dO=%`^g1`mkzQ!~h4MMKMUM31+cUC{8kZxzz_=Xg1tzYR&&c@oaug;L zA|GXPq!*Q`i8gVh*Tj)th$B6dBRzLA$7i7&>5XiDKt52n%i&(v207Bx<8q|e%8_2@ zRyoqE+y0cKO+6#ON{f87X;cpP8l@>$KBeVwuZ_dKj>#9<8NEk`-%U5am`*_lmA!TEwS>{wkLB>CZDW4k$)ofg#JX~@$}=|A+h>hKl@1Hk@Ca2 zhm#Li9?HwN{z-LLMCbl(o2KrYym$Pb_}$y@+;YdJ+b3?Df2(%O)|)opxFI__Y2UEz zx~Xd?uNl8Oe%1CXwp_kx3xXC=-m zpP4%|d1mE|{28e;^fLJ&~=rsfI9af)`vcI{F$8%;#Z z((s*(RKodiDy)YKR@!o`ZE_F5|NgiCgna*h@XO23?vncd>!;8EbN|12^DFARzZCyV zea``&`kw#tDUf(a6-c0^p{=Zz-n?&tgoH?akGG4XKlp^at3uGy&{q0~cpk5XGgK16u_zf*TMgv{L`O(GCrX) z(9$rftY*}%?>WFz-}4urj8Cczv^0z=s~NTHdk*l__sCI=`dLx^XGT|}X-d~VqcYG^ zk0Z+TF3aqaD?Mf4x=+MsRRmfZI?BtWc>1FEsSmAQYPD+Y#QCci&R!q^pOh^s1uYF7 zB^OCtQZr@w*a}Hei)(tZ8$KyTm4cRrj*|CMJ7twhnO$^M=acd|m4cRrwz9e@re_x6 z^n>Z@W7*!5o=&IgeL_C3LeSFCR{Do{KDiovLjFdDprxU$tcI+s{Z1BoDieb~Azx4- zXlZCG{X;yTT&7RR->ML_G_;k~kTYt(lQGXHSI8&iiz);y4Q-`=h^N!3MxT%`sSva@ zw3XG*;96^!?6Q)c&#oq)kT0tcv^2Dp{vnc4>B0ecwRSH@fI!gZ(@1_#-yOHAAR&1Y?e^4oC zY3L~ZQ@k6Cin8}J><;Ra-er>Y4b_>mP$cOLr1wADW0vR-6!Rr zRSH@fI!gZ(@7B`clk#nqf|iDkayL>uTT7=;%6C)>S{gb^{}k`m(&dx#FDeBs4ISlf zq|45hLcXU$(9+OW`iFS7mL8vw@2e2BG>j^_ z*7_nDcKVtA60vmb#IXhZuj!-7UZ0E~s0_3;j4H`EOAf$y`kBdCymIyxv3))nKU5iL zX=p2}Gi%*W5j#3&l)e2z&uvWleL{YuLeSFCR{Doj?_;v_RP5I8Z^(83OJ(?x)c$8> z=#l>a-j&+_l=K1c^9$r!eHr>?`1tu!*Du4b*V_X%~Jb+gbd%1 z+W$*r2+N>t)wEw;_OYj9^8Nph$5qe&tMC8b{{P}WbM(h*j-sVuRLOV0b-VZuyU_C; z*7eEwiON7r!>F>FF?ZKiy{>g^QPDg!MI zZDp-ZwfdpMrt0~+G~^TV3l)NvhPJZSwz?x^@yf*Pjdj>3pe2t(;6yjNhsZv^2Dp{_F37v-dT7`-J?v3PDRl zTj{_49yojb-Nz^7KU4@>8rsV0sJwtB5VSP3 zmHr`~+4TXRkdO*NOX|7_LH`iX>^jUR#8M$Bw?!1A%JWqB8)w$oN|r8K;ps-?aG#8@ z%0Rg-qG&5=Xs45poqnbprKo5VSP3mHr`~FC`0oLRwV_%1s_s2>OS3_KIUZAss3NK5&Oz|37k6L*TFE`~QdJ`~UCd z`~L$n>?gw)=>tH9zewNzkIQg~^#50q@BbId5R~Cr>HqIY8NMmk|6g`YL%^2dHM#!( zSQ&mO*Z)t-&@F8M@5uN6lnlR+Hh|lu@4q1#w#aw?Q|0>q|B&ndb298B!{5ra|7UXj zzYI5a{$ZqB>i@@1khihpXSAaIe(HDXx2El@s>Q6&sLRUaQn|=ua>>q}a!pV5dcV&3 ztF>NBUezg2hori#dfi@3o*wRy`n6C_E*z*{gx4&UY%R@F>{kE$^s721QtFrKqTY~P z+$eRir)x%aB>IL4E!3y=Q?pim#-063--adfN{Jnm3y6-DDN1oEA4PK0*Y8!YCDQCQ zTHSPkn0)y8y@R~mLnr2?p$ZG=p z?=aNynjo*~SFdT|HBG$6;D1M;p4aHx&(Z2+ad5SwTfL%>Yr5*D&ez&wTi0vt_NEP5 zd++v3wD!2RQEMNPzN*?y`JiM*V?YU)*hDE+SZn@bJ2oS z%Iy<2A~9JTxtKE)NvS`VOUS0LBI}O-KrRN|P|@~o-Tr57@3!rhzIXqYm|C4=>Kb=r z6k&<#mP;RHvfdkS594iMylsrPo$H#1(Z6~2Tc}=I>wN<<#~SS)XnVBBE7~5$ zwm)lo)NQl$J)%?ZGyOIGJ}x0$vy)|=;dd6w*YMeX$eQ4_Inp3^zb9nAd zXE}FD!hZUAMcdDjg#DT&VZYw@OW5UD8YQQ9cDA}Mu#0gA7i-J##_gDTNrOEstJBgf?`5w(c`ti4$$Qz$lJ~M#M~(OL{$r?{v4Bj)Se;D8Sc6Q(SgVYnKeo#^QXPZI7%awMFot>=14qs?hdOiT z@a~K?$TUnJEX^H5SNMPXOxX2X=-Q1Lqh{m(d^Gh`VQxg;_aE+6StLb&E1;3 zmEI02H_o3d-;lc@c|+y;!gbrP&R?CnTEDt*Rq9Ip%EA@tE1WBem%AHFmt`+YTvom` zcWG+F{PpDva~CErtXz;gf5SQMIi<6+XD7~f&Kytc>B2;M!kH+YW`D4FYUWh;)Y2)= z$?=m)tFx;UtIMl$D>sj)#`W>S^7Qi5viZlAm*$oxmsXC=9kXGPyQnml9ZQTk$?=&U z1WJe7A1EH0In+J0v>TV&Pjyv&Ue@3nV$n?2=rQU3BqBq-<=qY#Sx|7|NSTa`W%6Fx@^sYi@ zy3^?_c4Rt=?U{DBz0{U%OSF|+bFInNN=ve((wuKjHS5g1H7}{>e&64U9pj_|N7wbw!)<_2&IdQP$vc%7NVUr5LiBDI z3W5nCXoM!9Z>SL6N`)d21sfb_h8AdrHfVcAr3AK zz#t64FpR)F(6*W?^PJTX?1w+MpdepcA?v2HnsDz0e2!5C<0qU=W627)D?o=o3N! z45)*8Xn-J?5Q0W%5@x2;;+Zf+APP1(&$fnMl?eu#q$1270f zFbpFw5A+Q}01T)TW~Q^AXBr>~CWN37n!tiEL?8+_IM56&&fKKRwZs>tt=!1TUg9`(oZ4-0| zfB|(-4-F6m6GG4kO<+M7A`k^bMryuF7iZ?{L44CB#^&M2TJcjc{3}~tZGPL~Z#sDR z{Z1azpI@jOdLa%j41m5}FrW_VAqXL8geI^c3=xRQ-2m$O>@)-e>YyGPAP9{>=YydzM8Sq;Xn{6phanOijfbXS#zH)_ zc-R-gxPybOIMRuGb%`NuvpoE?F3RzdVDS5vdi<*fo(O`;@1Kw0mz(jctypTuuXTuW zs3Q;mDaOMd9)7Erhy6VKjy@%R*T8M{`28UMFoZvD!k>omUn643=HV}!@zkndcQO8rTaT` z6aC+r_tOEM`5-;unUBx~p7|Jk;F(X*37+{>6rZuhP%{soZN=xi@MZd!Gyl3-47ETj zbo1oj_u^MWaq&AAelLRMs2Fmf8CszoIv@tU5Qjksj0*K&LL*oZ0S8*417gq%aTtWa z2EmR?`VU(0$8Gr2PW*Y780zNXuX=dc$HPiL4_zMqcE`W+oBgrEyJ^)sUFseEo&4L$ zx63vArYlZmrrfF0o7p!LZb_cfCHqR^mD09q83mwzhxR9U_Qx=)s#$UNabQG7h}xbt}7vD9OgM{|!RAFVu+o4yL3 zp6{{`xepbk_dET;!UL%X^at|yr)It@7B^)!xtmJ&W$#PeSH3rQZ}Q&CJ^6c5_muC> z-tFF9yeo5;BfaFM?wtKS(!ITOTlTiu-zHPH=(iMZPTj2EoWCh~Q~Ad1jS1;VFOzk$ z#mUU1J6XCRdqd)e^7Xmvlh;?S%U_qePQR{jZTed0+Tt~tYusx}S7)zITwT5@cUAJL z%9Z&mXMYRLT<%_8+L+y#*ho)%$;&F2<}XcNTDc^DN%E3%CYy0H#SQ5V`iA_)$&1Su zWiN6sDy~nj*VpIeyK4D@>;;JnO6OAb+&$X z;jHxg^tP8=S4rp7shRJ##nUsVyQh~<({}1{Z}QZ{spV60rzB6QoSZ*7b+UePVQqS? zv$nV5&98@!_$X5hZhga9OfQY`at#ri4T+y%^jLNw6Y+-AhkeWP&g!gh;vBs z;LO49!KH(=g9-YMwr?Fp?f|MvB9kVRyJRlpRV8l?QW! zv%kZqUB@lPGjTUw>eu=Ued#`@uh^UEb$d%av%kmZW2u-f*Yu~moUUSLrqk^#b!0md z9p(01d$PUKmTyb7O|~Xl%PqP0{Vu<&>;8*PnI^ZX)R=8dG?qiTP%>08^JdD_%|b98 zbb`f(OoQ7{s?XLZ>dSSxx@29&$Qvm`Hwpp1_ZRhy?&>A^T7S*Ak9($9>i;jFKL1bs z|Bn0rNo|CuR^=F<+K6sxLWpT-DWl42ZA7gCPRa0;svPT+F{Cok(lDaDOp0CCYjJr$ zo}cL(v#naWYyrVS0fq^GVrTrJyBeWqBufsZ{lxCsm0%{Y)>AmE%j7%wFgx z`ef{*GSJd6s=PuL`o-FXJ4I;I8EeLtpD?@Re7R4?zA6JP4Q*xheW)cnJ7>BaQQpS^ zYiG}_ai5U+Dg-SJqsnSXt+iJ|JaveVD>@>sNd#iH5ujw^jK4pbRvX&6Lv;SD@lW~~JKubegxluma zYu|-&^)k5&K<3Ezn+WxCVWyBsT8y{w3W41;OeyutiYbWP|`jji&Y3(8rn+# z5YH;S&L?Dv3PDRlTUl!ro_;5?3VZrOIm0L97!`t+hK{n<>NUMkScg3;@tHm;$Ep;x z)ZMxrS*5b2#QkJR|v@~>-wbtSt??u*P&mrB}J}G?Lh-qjk9p!GU#-6Sh&hbg% zoMuczOKB@>eMZi##@?F^p6e5Gq6$GvLtE(|;#rN)^9fn5LeSFCR{F2Tp5Cv{_X!zS zA!upnDE(Kk`JUDI0-uzWN$ z0Xhpd`k)`;;KBe5!VnC@2+RY0lMny{>YyGPAP6Repb?tDf-poN3N|>vowbY>XoWUt zhYsij?kZ`-fLauT8We*X6oVQRgBlbg4lWG9APm7UjDWUT&>;W@)ImK^gJMvFVo-x( zP=jJngJMvFVo-x(P=jJngJMvFVo-x(P=jJngJMvFVzdG^C$<=7GLl2!H`~P%p?7Ht;wI)SVdAofy=e7}T8@)SVdAofy=e7}T8@ z)SVdAofy=e7%k8W)SVdZ&;it)7}T8@)SVdAofy=e7}T8@)SVdAofvU&VE_hU2!;ij z!Vw4ih#GvBDpyI@!;>4ih#GvBDpyI@!;>4ih z#GvBDpyI@!;>4ih#GvBDpyI@!;>4ih#GvBDpyI@!;zXv9niGSX6T^i87=$4hh7p(t z)S4L7ni$lY7}S~=)S4L7ni$lY7}S~=)S4L7ni$lY7}S~=)S4L7n#f*3pw>k83Ieqz zvR4qOHIco7K&^@F71R_`Z6f;xfhrT(F9=kb$bLbf%0%`H0#zomUl6D=F{m<;{enQ1 ziR>2ys!R-hT%gKC_6tHC)I$RVfhrT(F9=kb7*v@URGAo5nHW@=7*v@URGG*;q|U^k z&cvX;#Gt;!puWVQzQmxu#Gt;!puWVQzQmxu#Gt-J_6!2`B?k2+MjTwAzC`v6!VnC@ z2+RZOOJw&TP+uau2Z8z$**yrT* zDobPsA?O=~fFM&yZHZ9__0Rx8pr*v2ro^D8#Gt0cpr*v2ro^D8#Gt0cpr*v2ro^D8 z#Gt0cpr*v2ro^D8#Gt0cpr*v2ro^D8#Gt0cpr*v2ro^D8#Gt0ch=U6Qf=uBckB49w zMqnQ3n}h%uPzUwU06{Pz1dY%H7K9-JQLw>*W@v%7O-m$xpk4kkI-nD}AO_vg1EI~w z$atU)y1|9Olwd*xS|J8;(6uX#2^m(xDbS%@#EN@1Y<%7 zK@{4c8(au%5KM?bE5slU`lJwqFtk7y^n*4fG=K%o&c;#--w+_y>}&Hi7}n|@=v9n(w{0knSRoFvZ&7K@3?~< zJ=<3v%|DuYRDZPaNcs`yk>bOdhuw!ua$et-^ZJK`Ro1foVV@D+?B~ID_7*NNL``J-Sg6yJC_$XW;V{Q zHLsrCPhFy4Qplt;j-21mY;ZS}F3w(@xOmG&89BpWTAy8?n5jq4Uy!;$zo2k_TF&wp z&&!w|ITjMSq?tNT1=HQCyc<=dLTIv*|>-JdvA7PE=0MpPo8hKfQ2T z`ZVW#d+wh+C2>mm0lPhcUYg23WwS_h5HO`viNtu(}_bT33C0A8e=2xax>MIK? z(kq-5#Z)Hcrb^=z|4Y61Czh6v%^jOOwsK7VnA9=)F@+_gODc==i&KmB#f3%bMb4t) zSZ2%}D=o|}Oe`!XbID|~GMXPvjq0O?qtiz_M;DLE9OWKWIx>4?;>hw5xg+97ln&1x zo;bXG*#8%M@PDsb znMSv<6v~DYp|Y7XlV&BD52k{8u+Wfha2ksBnR>UrRF|zw)Rm2#ku)lSd>|Fj0|h;; zJ9<&e$T$22snCjkIsgBw>F@uu&;Rde4v>E*4b6}S{uOJ-W}j5O$ftSaB!l)hw3HF$ zW!ihqBXc8GtsR?vs^wyzh&3t#Ee)eePNQF<)jHj|deMr-v(FPseU|!JF>7jg=*oV8 zj_22^47Akau<~pfe|)-?XVxE12DE_8ttFn$F)}_0C#wXsG>j;#XFKDwMy?)CFAF)_ zIr}`zB|Z_Ss0g$)j3{ZQtbNXQ_4wl1=Lj$Li8xh7prv6%xl#Jwxbl7GQ+176eZX4P zZN_wi+hslxA5;-&X&6%gR2gV#7*$rcj#?SA zb$A-Sukpz^OJ$&?VN_Y&JZfgh=Ar)I^!9PBPsZ6Q11$}0Wv%U_y3E-=JST6i^9eam zg`lNjR9W3XYMpwP4P^f8UB~r48Rx4Ev^0z=s~bqI4B0?Dr-yFv$+$peprxU$^xr_{ z&)#`V`h;AlLeSDMqGSV^zl#mTb8;x_6R}=JpxldBj4G=eNUeD#8;IxJ(2YJB7pV-i zG>j^%8%V7T*+4u!a^K{Wak0ukOT(zLx`EWpkm{(}8_3N*85>jvS{m9){|&@bWO9p7 z$fYU-Ee&mDbpttXr=8S}ng-cGyhT{I`h;AjLeSFCR#vx=S|PH9EcKLO-R2XrQH7wT zp{=ZLBDF%~@M@{&`093_kjqsFS{g=`%&xPvi{{L(Y8}>!wTn-jy%V{^C*um0ftH3* zC3CBG#wy8}eTa3ZPsWuh11$}s%35bOtM7wSmf6Qxcll&oCF4C&LrZBZYh_ID)XA6~ za<@;&)iU~+hL$p_WPz;H4z0OB79Ki#L%hc);~JHLmWEL!3#4|&s^i%rpUKzF}S$c-ulEe&mDt!=Ry!nWu+qIKFQ6sN9bE*_Vebby5;Tcry91-c`7=8)>E!7KU#41QwON0`X;}k)ju|USKa3M za`XDOak+WDH6b^zkIa{w*IT1sRxb!vZ(ZLlzeanY7y6(d;-F0mIt0LgI;e*R2!aVA zXoM!PAPfSLMaf2u)x?7$Oi=kG4o>V^Ofdfo5odR%nBE=zvb>f*5o|5A;GG z^g|q67yx~n5C8+}pdQ*bd_zVL9ncB-mTxmbf&E*h92mJKIn%y zXxjxH0$@NL)I%u#J(*$91QvuL0#UG`H~s?|GxS3oTo?d-R0x0pbx;ot5CjuK&gyJnmPTU9pCg#nG>6T z%og!mnSt{Ia^3al<$P%0Nl$k2x!*H+mD~h8ez_K!zOVU&{2tmoq18Vl{fxQlHDUQR z+O3_Y)vI2|)N{S^tE?D8Cp6L}X|*%jcDf`D&?RZ#sNm2gsjK=WmEBka{q?C4^lP#Q zi)=nwo*JBfsz-i{c8s2-1)q=P)QdXhmuPrgZhjtt!7b;>oxY)U{(4zCLAN)^a)*ZT zOJqSq)8u8cWFb0vg{<8Wo|5~cN1=1#dYK_GFe-OSAB5JeH_6+9$dueOJqr4^JNR^f zO?UALB#cbl!>&vi-f*A%3f2a>k9ruQ^B?{=<^R{y7Y!*baq=YL9;Wc8)PThlxa$E$z1EiH3vO73SLvCm~{ z&S#svNM_F#S!n&*rHt`fdC8U=*s^6|P~9Ud^Nnnix5$e}1$XpzSq|euBead*DZj?= zmiM$x7RJyvSq>xHa(q(Aav0Vgl!ZIVau|Jt_5Lv#!6upUEt5~mNH=emd9?XidC69p zwY{3$%D!>C;BJ!nJ7m8kY?ry(I3+W*Vd8a}mN;{8>y+f$GRxu{-jduYnPuIZErUc_$OsDwhJvXW1>S-8)c)cuG4W_wy>DY4|>{_EpS*m-3_aSrcV&Dsb>UW-x^Rn3T{t9D7mmr)h1+H7!kx0b%<0aV zDd&=HUFLW*bG(`PJhWZbe24k$GN1dIu~BAhj2YX%bO}Q*^5eCBXLodMVG8!W~6!y+An`3J7S@qHOOQQ>R}C%7BG1w zYtS%jP&;F++a_bA&P?)!0Bg_?Z^a@YM!+D{u?BVX&P>*z81JlpyS%eFYfw9DP#D2-FZFzn)6!m)yzx}0Ogl+FDGBFyp(?_C4B%CUQEB} zyjXlef1x0K05~5mKA(BseZC~U03@C(Kbw0t`D`Vh&!_TwzOXsH+1XrFJpq)S&OV)Z zy8Ki^dIF#yfb0{AC(4iK9#1}Ac`PqI0qBnv9!)>$%=8eKeK;X~0puP^K2&)y|6oe> z29SQhd7yZI=6?77QZAcI{j$QP=}VnUi$2+->&od|I+?CaN}u1pVCY=nEiwTH>_whjJfE zeyH-n{0CDX)IV4_HGQgcYVnlJDeftyld~r$PA;#_txc}2tjVuQtB|Zyq)%{8C?20V-aWo_T=uxcOkaBWV^hcK#}0{iFUl=S zE~<>>$5LbZSYcs$p|h}<%p~1pX*4^U7%d;2J34uE<*58oshR%wibrIQaR2{0f&WpR zz+2A<^2EI%d6l2Yn=aoua#O_`DQosJ>=6sa*K>M zrlF;@m9?7rcC__K$n18$hkZhBS0QL==qPuiozHVh>JgumJ5&l<8am3|Xy@~slzP-B zCw)@xRVip`Xe(#6^X+Il{NEe)f}YQ`Bgm&Veu*(Z#i_sMuvWuT>@t*mBTIwzz0 zDKGD1rDs?2VV{u4R0vuc+DiWr&*t%hPso!h1T77t%Cu}8wa*hK7cD+vX+39Ec z!#%lZe5Gd(@|sV`vnm8F4Q-`=h-VXd-6!NZ6@r$Aw$eYuvx&Un6Y_!zK}$nhNx9|O zHD}j~#Y)NWfg*!hEe5uZKIs(R$IdCpdBTPtJivNs`n9}j8{|!S{g=`)eN<-c>fH~J@r27 zlkuv`Kug1@vYMgx74M(n*+|~<$#_j=prv6{S$#`95prv6{SbeGB0j1j(9$rXB;uf5M0mE1PxwTv&fxGwOF-1qMY8NPL-T*EIziwtkdx&Py3_=%kNze$FE z89pJ`{;!r{yPWsGONJ2{igNz{LvsHAKjqy2Loy^}_U`)Yh1v(xcX3A!G)~SAFjZKtkNm2z=f>RGp@jetp9I!ogQ)- z=>QDE5Ddcz%mXfCm0ntBO(&PLhPa$n`fU{&fXi9`_jR2v9ly%xceBg%nfb{@t^a4c zP7iTO>+W`$J~N$M+WLRC>-5n7N|)&~)A@hC>-13l2AMTn-ntuIrq4_#m$`>A=? z*AN%GhPc=@#Ko>5E_MxZv1^EnT|->#8scKtP%E@SJ9I!NbU_Tdp$B@Q5Bebv`jij= z1L_2GWjzlYgdG#QGRQL~grE_cz=AMDAPP1(&$fnMl?eu#s< zRS19qbx;ot!h6%nGbV%tb5$b`o4|rFL?8+_IM56&&00z`Sy|80KS2gfV5KIU`BQ${pVZmG-;b9bPaG)7lpcUGn9Xg;Bx*!JK&;z~D z2mKHS7Y0DnZj$MSfUsjiR~tN22ldbZK`9lwz3=xQe4GuIz3$#KTv_l7ULKnoK8+xD@`k)`;;KBe5!VnCD zwn@+-00z`Sy)ZMK4LlPB6GG4kO<+M7A`k@|9B76XXoWUthYsk3E{H)l^gu84K|jR7 zg#j3ZAs7~BrckaX#8mms+{~TYcAW1ozLt5-eXS&Y{wH27zmj_;`AX&G{L87A z^_St^HlN4%zyKo|NIBa_xtw}ki4fda|gM!+yS6? zXXZ}#&e9#(JEm?=-|pOAye)H^dt2$&?5&Ag%eUliN#0VqIj{QvFWi*A$+@X`W9CLz z?f{U@CbH$p++=dHazp-x)D8L#^RF*om%A=`UFF*RwW(|MYYW$;uW_y^UY)txy}EQ& z_Nv5H&%DViz)H;1#ey4i?Y(6b@n!eLL0J6Jv z4}j{u@a$E^m6?_9%F>GLio}X?Dwj&8D&zT?`{OywizjAIbWbcT%PvbSE1!@%A$daO z`26vy+~LW?D~II|OC6>kR`@{r1I~N* z-&>GaP(CDgNb-=%!TEzz2TvZ9IH-JJ?!e@Ml>_nzqz=#zC?wJeCsCZAneWao?VsI0 zv445L+)wJ1;S> zJdztpj#P&8!>M6?xG{!g43yoRn{+Gjd^{DO>`(NU`*MBBzDjSt zH`S~67JAY>PEWBr)9rSbV%b$wb+tr zaa&5w+2%xZ*~vLcr();rl&#x^Xgcadi;;}ncDNMIh7;kkm9vsor77Q(YMT5X_y7Nm z@BixYLHYh)p8frQ@+R%)#p(wTU+Skn)J}ZfkzdRYH{%N}_+l%*)P^s&<0~EbYA3$d zg|El(jc$Ci2d8?m(1#!C$B)MGExzoVZ}V;6e21_5=DS1qv0?o92!3K7evC?*m3Y}V+U!_+ob1U6inI-zQGXH^Yt<0~{ zua)_A+5*gfq%pw!C%U#Wzd_$t<~Qlw%KR3+TbchH$8Wp%odNt88UxJl4&nEPaoY%% z=i&GDaq$NMamU;Ep}|u>s>2`G<4+p!r$PLgiT@hHpEu$!n(&tv{wj>Wj^OqvR&4w? z2Y=Iyziq*PZ^i#;!{4>z?>q26JMq7|@DDNkV>kY(2mjoQf9Vs0%e8)f(c>6!QT2v3 z{XUl04f0g|5H<{Ba0JbHD91HoV*r~BwCXTikC6t92GOR6EYqQjEVG#&vdk8`$TC}L zN-*2#B+G24mn^e`ZnDfy`pGi8=qSsK(NmV$O;=fF4}E2sy|g8mee{-P_S0RK8K=K2 z)1|{KbATSR%t5-$+VM7q=sL?Brtd6sgwC_fdGwxT?h(g5UEFH`_a4N3hH&3u+;0T; zpNI4H4PqjI2N-x@9UfGV2RGm$L0n+sp&|T0BOca-hg*0=7>|tLQBgeF#!&~8&A6}y z$6Cc5Z(~s#Pc3f8B^`K7Cm!2{OJjIkHy+=EC-ma7K0L7>m&bA3#nb?<7{rxBxM~+qU-ytVP-cG!)3pd3u*Nyl0-~+w*U>`ozj}OQ35q+!pXaFBG@bNl)q8^`Yz^8)vw29Az zaC0N(oA6l+p9_mS-p2D0p89YUU$F5-2VZK&ms{|aR(!P$Uu(zLJMfK8e6tIuVp!>Tz2GmV@|x+Cj`8&=9iYZTyf15%Wj1h?qa7NyPjKZ6fAR zX%sPkMyrVVuQZF8Kc`*9`~?jo<}Ya(F@HtVi1};UM$GLrj+hl%N6detdBpq;?IY%I zX&^EGofZ=FKWHK`e@7dM`Fk2k%>Sg7#Qd)~{=vmR4&a{#@y|o}mtiqDu4!@kMb|M9 zK*JEH-^X}e9Z%KQV?zT5gJ{xdVyadXvyo;Kvx#;S)1u+T4AXLAMrb-QsIJzzl4B+6PxZ`aM4e`|QFpg;R#d$jJL7R%XCygrRUbL#1d)MPWw5yo= z(y(IgN6U)2KTRv#av8# zi@79@$GCVbO)lnA+FZ=zXml};AI1~(QE^!SPc(3O9gf#yssUF7aV4!U<|>+B%+<8N zm?zNyW3HhE##~DijCnF`Fy<*V!kDMh3S)kdW*GBBw7;0A(EwwfP791VK@*IbrVYki zMZG>8`u z;f7(%jNm2ugm`HHFEems9bR6KS2W<2LA;748uMz}Xv}M9q%p6hmBze|<{9&P+Gorg zXrM7CX`wN*G|`wh(ne$6L?g|Pw{bI#HRdg})|j`_Tw~rwdyRQJ4L0T-wAh$;(qv=a zMVpOzH;p#tJ+#`G_tI=*-ly?1F8_?*rEUJ~=x58H$$rNDO!3p{PwSt~e=7N@@+Y&O zoccuS6P1tWKA!k^>0_CXIdXr(l(bdk-buVudOIU66@|A_Z&f~;lb#JrAIV5dMWK+A zs}ge3PEmR@^QQCW=o{tNv#-0a7hg-iroWbdH7V^A*;m|GiZ7?7bt3;#Qrai7FS>Fy zLRwlU@*hrqxcq!pu0|+6mwrxvF8}P-d?xS6bqJ}=m1lC#B%Ucfoq5`Mx*)w5R-Vks zJ?Xh0q4PxH@swPJkb5lgSn1J>T!T<}B=tz;;hbE7F!7N7Q2xQ>gJtQl(3NWs(sC!l zd@dYRad(f5M3Da3Uo0oQnvfO#ly`gx0`g;BPytF%Pkb4dmu1Q@} zxjH9z94uXxxyq623{uh~VeX2ATxF1v{s;>jQ*w<#PVRhPx-=tK7!)o^T~f*9eqOFHC`B%;1V`oWfmvxeC?1iPdk5yF-JpC}R_+{FlvV@%19`b`V0l4yfxDn6 zcMa4J$se3NxO`CdAorl6+%-@?Fn_?-L`GT*3iDI*EBoi9t)R4DW0!z|P;OtS5I|Wvxl^`)PAuR;?q2y3W+6SD$!a!=EBCP`n zw-nFBop_-?)nAd;fkalIwn^`RZf8;21oV!)+!e6g zmThyTXTWr;-kO)Y0+yvkz-=x%Y3UU(Zzt_?G#hoLH6R_)Bl&PLyuos$H^5X=r7ogLz*L~3=cM|-BpdiGkNte{ zkktQwZ(QmYf^uKIIYbsPYK3G>j-IkEq>8*m%-Y)bnYd zh<8;4S{g=_MAYtOX*}tv>G_OL#3y95F%2zcRC%Tpi&53H)6aAr*P=zF>Fp{hUMKf_bjQ}oIBw8}tB!>F>FQLE-n z=9QNG>j;T*hOvV zLeDm`)hA-Bia<-lh?0n1)P^qfY#}9|h?0sxOT&ngh+Wi%F7#|4|KJnx4=MsJ4I@e- zc2OI;(6e=X%_rh(DgrGHBT6C;(BeCND(>iJd3>Q~+xWUq#Me~>S{g=_MC{`DYN2P# z_(z|Je^e1@X&6xwv5VuYg`Vx=pL`;|DWi>PXepyg_EBsZJN?WY`*=5uZ}?<!Elkv|g11$}s%4$aK<16o`@hzW>Z>tQnG>j^%8MTkEyxYb<`(%7a zWuT>DR9VfaeSGEJIKJ(ZA#Ink%+XRtmDP;e$5-C1<2ybX-&GlCX&6;jGio1Sc{h)L z@yYm}%0NrQsIr<-`}oSceSFs^#VT@q<=sHO=M(Y+6@r$A zw$eYuv+vmE6Y@h9f|iE1(m%wr_bB^>{78kMrJ=3#50U-H_)Ovd_kBWstU}Pz&{ob4 z;r@RQOW%Jx`u{se`T#VRN!`BG{vR&GH>B?WQW>H$yefVF9V5dJKhO}!%FrjnCl751 ztd-&4rQg5%W!PVaFG=11Su$ucJR$x69U?<%mGt!|Lr{k2r0>6@W%#!A{da{7Ei$|* z_y0RyhM!2^e>Y3te=hz1*#T|i#Oi+>mhb;dSIFeckLUaUdu!Eu$Lrn={0BZW=qEDP zZVfG^t(-lB-piQ1(t7rPKlBOtsf<3Rp{2By{vn<{;E#Mlex^du($H4=hj{jZKlTav zg^ajELrWP^(z*REjt$2=$A&-giTI_8Kug1jl89X#8;*Il@1Oca{7OZjrC~%##4e5v z$2?p2&wL_&ts>CUFrp-47srNUo@2v*^@-T7BGA$>q9kG$$A)8`W5b{OL{wA+S{g=_ zMC{_&aLlu9{K6;V-&6!z8b*{v?BdvP%(G?u(kJ3KDgrGHBT6E6acnr|*)D$N6Y(E1 z+L(rxGOA?%%9gRy&&;u*cf`Mt_O zOT(zLno;}M(7S0=d@}x1WuT>DR9VfaeQfC6HvY{geg4M?OG zTe1jA-WL(Jyl;fO$FU7qvMuj~E$F|y%EwRP21a6Xp%N* z;^=#x7nFpd1Rb`q@BN0q^XK4TFwdEp_spD`bLM?TgLD)b5>_;7w+-FZ;};r@4@HA? z6d4j$G-|gE-Sy+&H5$sp`awFvu&{D*x^R{)R$XS@734oOB8G^Njv~WCy@>1D@k@<} zDI%n!$gof^;<|eLN+V*42(sV!$Q4?>k9H~jYu6<+^I-M z7#8Y9T-T7_XhghNeTO0)VOXdaaa~0|)QI>*gme@c7V1S@*OA|9MC!5PRz*6(pm0oW zI8gg)$ko2urIBb53DQwyP)Labw6BI-bwsT`@KwYS3DQwyP)Labw6BI-HN?pg_Jlz`)bHlJ1mVvNF+#yUU?xwQsMyZt07n2@Mt8$ zB0)Ne3<@c6fcDjpt7g<`BqAa~I*JSmDRF@I)sU-Rcr_BuSZ#+Q9brhwYZPn7tZ7gC z%3U!q&{w8fZJ!p=ARR@9gcXh2?JIZ9@M|>Yi3aH?G9;{M)NWs~YK-o==eIQ)t)f9X ziVO)W8vC}d{`I*!^S)EP=0Ql`z; z-uwS7QY+GXc>jMD(ofHTp8%v@y#N0dy#Id&($DbT|3gTJB7Gb0{a=Wr-~-@Uy#Id! z(x1Wa|8+8jMTUiy3+o0s=2h7HoX1_cLmCm9O@|ndBMb}m zBChLRSR)b@5z1D*QgQc6A{u;WLT&dab5kIG$Q?2 zai=03VOXdaab5qKH6jC8eTO0)VOXdaaa{phG$Qjwgme@c7V1S@*T8uik%d@st0Em? zP{{C@2YB{2>}ngfY9tO83DQwyP)Labv<-({b)-!rafnEejv|9XN*thVIP9t+?HY+g zMS^q`85C0D0ByrzSN-VFNE{{-q@&27kP-)I8xFf_N2f;OaFHM#MFxeGI6&KQ*i|>W zG!jRM1nDR;D5S&z+J?ifn$fM1I8r1?N0C7xB@WOw9Cp=<9*x8zthPgujxZ$THHtN3 z*0iT>=&l&O8jYhwgLD)b5>_;7w+-DjBdXCjS~N&Uks)D4qjuZST{U7FjblWEbQBp9 zRy6i)8}4pjx$8!sM&nq~ARR@9gcXh2?JIZX=+|f*CmN)q$dIt2QM-NRt{np!jpIdw zbQBp9Ry1n2uiVvRzDDB{qCq-}3<)b5wcA(j`msQx@hQkhJ|_&*Hz?jjmQ!aAst1A zg?bU!b>s+*$WpAhRgsP`C>(>+&;zuumb%(kM`|RNi3I5=GAN|P0oqqfQAfu1-2D$~ zB$kT==_oQNq{RN)SO5Hbb>_YB{dW-3*U|TX9?~z*^_q_$9f9;e5&Lfg(k|ThKaIZs zowOR?L5Y7K7e!x(zkKne*yabKZM^u z#{WAC>3i_|cNvlg>3R77`y~4R{|x>A*CK_G)J~>kolWKhW6bAYztQdiwxq>(sTBuGb*K_Mj$&^BD^s@X?rBu)_t(otkkNQncq z4VSv=_0bxMl_EhpiVO-Vae%hrQdg}$MkBFGBuGb*K_Mj$&^BD^s?*16Bu22>4n;b` zkdW6`*6LZ)p0=U8QXi+$NQnmNC^96hXw+^SvQ}eiC9)qLuhCc|8l_;7w+-EuOW8jaIMgLD)b5>_;7w+-FZI3o94a zi)otG)81!q?h0~}M&uk3Ast1Ag?bTJ4M}K3&J_{TQDj)C7ja!Zk{XfoM1*t{85ZhA zT-T4q8jpg_JlzvtgO* zpfA@*Tr3i#qsX9;5(j8DEOQ<56&i_4M1ph_85C0D0L_MFt^pg_Jlz zvtgO*aG#=)xB{!~P^2Ra33=+}0iQMPX*Rfz_ezb%m7+m9iVO)W8nrKl?gPF`qj8mJ zkd7il!iq-iOQHLSpQ_QgS~N(69TW|+qEY)&=sx7DH5%852I(j=B&=xEz7)ET`G`hi zqiB$hBE!PUd1T+9KzkmOxDR?tBXX^Xkd7k5LcNHqny=A_T!$5RD$)^#g?bTJMPI8C zxgM+UP^2Ra3-uzds=iJma)XGFjv~WCy@;!_pQaJHSwu)jkzwIQczV1M?}pBrX4*i* z!)x3jTu#@Bd`3h_N0DJ6MXpje&eGUD0B(4A)fvN!)cBrz|1&fqw}=SoC^96Z$c;#| zrkT^$Km4}N+>G)6y+~iiz5i)QJ8|ECAJPJ(uVdW*`AGkX`~Js}79o8fp!{(;JyhXJj^gk=b-bX44ay9VKE!AJIh0@ z7NDCkIGe57k90N$r?UWEjlt_>=|cRt!F60eTa&=}gR~FEN|0#B6#Jv*}38rXMkzZp8K+Z+a86=}gR~ zFEN|0#B6#Jv*}38rXMkzZp3VQ5wqz;%#ISqcEBVo!b8*%UcyJvcbHArVKzO7*>oIc z({Gqfw_!Hjh1v8LX46@iO$l!fbj8n}aKKo8G}}ItQ~4=mOo=dqCe)&X2=KJd<1=Q{g*tU+w{Qo zJ9$9&>=;shkB{^P$UrOE+D^8|$e0lwR{nkuxu6b&?O^s`n>@6EJUl=i*-Cz*o&01c z`RQ)*q+T)^BbTT_aM&c5nWNy{4w(;m!crNn*;s){F<>HvnJso zyo62E6Agqz1c)FJA|ga1(L}Tm^N3cWjc6x2i7uj>=plNEC=nz22(<$+2$Qe~4^c;W z2_NAnY@(iMARHn<1c?w~VWs{z>&Ul##ggN`gX7Z~YeCPjHFZnY+ z`HMc#XN3Ck&o;tKu?S%i9-@x$5uNL0e5=_G<=cn}o&BlXc|Rz0B|tet!ODko<#2^83x?^gQxUT0y&= zv;Vt;vt6A1i*C;La`vx{ZQ$QpP>hd%O0Hu;kV@}~jvAA=y;2blfmM)F^q$?`n% zXKmy!I>`TUwy#pY`kMmy2h&{zk9A?rws1DrN^WW=@9ZS+?k4Z)BOg>d!Euv(*h6mh zk&oNtlMUq40rJ@p`Ft3(8#((zGx<_G`Fcd13KyM?Ag)$GGttS+Kk6pGZ%4tucE}$D z$x;YJpbVgqXeQ zu8&_|f=|BWb>(Xd*CwwmZ!By~ZY*VTnOJ6OEInq_^vf5&V*2vT<&n#am!&Q%!}ovu z($XdQOOltAFD_i1y4bk5cv1SI2z>KpHpDheUzme`zS0Hx3z8R<)3bg5$JS4uuV(rF z&(6vBe;(fY%Iga2QtPs7<7-Q6^6=JIP8CwAl#wdJUteToYISCHZ1pre_Qg*vt;(-T zt}3rAtW2#mRu)f5pAtD`>g3GHv6H7)s1?QKY547%T9#QBTQ=LwxFo$KvSbS0`(lfyleuI(S%Uw*WTJdh;iS|_*%RaN;Fte&^3&x{6+V@M55M9k z)1Qoda_WQ(y!cIjBKL{-CrZcX;m5ChT;aIXamH~)c=C%JJ9SLvnAkDXN2{ZY@Z=Xc zYHCqtQEbt4JQt70ON05rB>edmj!YeC99cXf4Uc|Phi49t9X@?n4nF-#hvpAW9$G%6 z0Iz;o`1C6+%r8tXEFV;WS3l#R;)3*o$bzZ)nfbB#(*wDI_&}*Y-=FL+_Z8sX&*&@0 z(y>Tv3jY0K(dk~*TkJ{qM0%#+-!IlZ-IeQ#ca`AbFWFh{D0HMc4EXpBeC+)`*swPc&)&84P1JpGj$3yrBpqp=8If04*kI1`SAr{V1{9x4U% z!DO%;Cf)Jcl8g+bv)_%pj|KTmwT$_vFc z$yLLr4h`NEA6&YWWtrKqb2L&ph;%5@7KVg3;UO8tW=&b2@?`_+%-vc`F;!`utI@hc zv`AZ#0U<}e?k~tSpT#z);YG4l*r;ly^E67Euy#0$79|pQmLQern{n2ZtylG;wEJKk zU$sr=Ym_!)y`74*g<;{v63O@4Swbr7SMZ>#maa^$U0yj@v-aS6joLk;M%s#O6JCs< zzSr)@Fv2RFji{xktsP#!YIxP^HD|4-DM~NIjCG7^^zMhopdxKyldzUvgKEgeDtb#! zSv$OPaN+e=UwhdlS6{Rtdf}z%jR)Vhe(~uG2M?~=yJ?O71ENpbifj_jRX@Hz{dl$h z1seSaMW3`4*(98+{-XWqFRIqRP^15l=##c0n}l=KKWcyaM^)=@(CCkgK4~j5BCMrv zBYaeE<@m2XZQXv4{?XOy7irY-M*YTm`sXQ-CL=0Hm$RX5kzQu=ecz))3eE z=?YB&o|FQRwj!H_b1uMsD~am_b)}{NPe}ntTait|S_P=OKnxGBO`blyza!u}L0zTM ze_HfOTak^zTKZL$bjc~JNA_y~t~1ot8u@2Lp0pL&D4c`*+L0CeKS#JuQP*hXpA~u1 zR%DZ~mVDLTKY1P6rTTN!m`49O(I;(1HVSL$SMB}POKO}VT_>oFM*ew7u2!TiY!P01 zfD_cPTE6cIYVqpT>rfeYpM@$P_nffgNbUZvvfrxDQ5!X7d;z5!RHQ9z6wYB6oiVg- z^?r|#>kM_RM*c;SCv8PG3g;ldDn5ABlKoXr*ZJu>jr>cH>{p~MY!O~`fFsndhW9-} zQkd$!e!WKbH7Ir{(iXN0*W*_0N_EYwE0;nWIfAr){mRu#PFcTr#k#fYhtFKGc3o9F z^#+aJ>rjd*(iTRA)Vp9mdTpvL+Xg*aT9xSFjO?~OBLi;K$i4x=K1JHXs8A(WxcuS*FMu~@SB_e(`VKp-D&$xPrKjT)P_(vNa@yk z^9Kw3=IFos%pd;PXKq0Hk;iXtK>Cq||42VKedb+1#Jm14z>h!yz6GY>6L6c?ylMx= z7I6IkxKj14k4_(g{{OSitm^+C+oXC+IXOH%VfM4edhySS5;3BW=qCn<`NRU^Ai_uh zCSegCqK@zqK7vvCEC%JX7>v(qAQ+0zVkAC`f%q)O;j?-?JEe&tmL7i=p={M&7d+c+ZLveMCPoK+Go=5C;*) z2w)Nx;UVe>FX1EngiX{F4TM7kh#(On!T?Gb;d~>}L^KmE#5|&vXd~K*4x*FjBD#ql zqL+vgF`|#?CkBZ5!~)_Vg2D4FlduR6QAc-)kpLb9ARQ{go(uwCKgASSjHG&0w|%yc@I%XcnKfjCv2jgXdoOSKm>^p z5hfx;Bf&8yRx{B;%p+QfHlm&AAUcUIqMPU;dWk3zBl-Z8u%Gh-#C&1_aS&mQ114b+ z9-@x$5;bBrL*1cnKfjCv2jgXdoOSKm>^p5hfx;Bhf@O6C7G%%_CZgHlm&AAUcUI0440^ zd=Jq}Lv@hzJuAqLFAKnu!)-9??p)5$!|=(Mfa> z-2h71!}(q!N~j%xL70R^cnAiXv%G|l;7AgSLFO#Rn6nsS&SHc)i;?9ljwG=dSI%Ns zIg3%{EC!Xc7*oz-NI8omNGt}Fvlvg#VmLXA(c~-!ld~90&SEGz?nBNql$^y#a#oax z5q*SGn^0iFBrJksNUS=7V@NEHA+b1y#NrqdtDa!YIEx|UtN_7)aTepnSz&_F;w+9G zu^21PVyHL^5C2eLf^p(3hKaKnB@QKIm^h13;w%PU5hMDDeuAS% ztoekB0vtVJnFL3VSRR6-M=XvWu{e6f;^+~}CKw3LY9Kgj#9|aUi$UNl#(=XJ0?vvM z3;<^}0VrWJ=NbRaV)!?U(cdfvf3q0-&0^>`i;>?f27a?RZp32PH;YlC?R9J zSq$xFF|wP*z-|`fx>*eCW-+Rp#h`8$W4c)!F=8>Io5g@`7UQ{D4CiJsnw!O7ZWe>M zS&ZRkF@&4N2yPYwxLJ(fW-)x5#prFg!~-T_5gaLEaioalC42-&ilBrH+h)}h4FqGh zSq#}`F=Cq)BEkg2wOJf1Vlh~o#aL|?L$z6q)P{>Zz&LFdMgbE*2`$chh&sYc_y`7LvuvWCXdoDf&0-ujD@ZU3 zo5dh(R)k;(HmiwXhVEZA3fKL39#bggvng zDntv>NyG?q8{j8`L^IJrLtjV3=qC;%kf*HiD)N! ziTQ+g5^#t{qK)Vw28g=tKm!pWT8VC=pYZGi>WMHhkLV)$2s63@n?(ePW}<_L62=JN zBf3UT#xDqK6tIa9(L!_*F~S@J{6vswCOU{HVPpXx5g?j~cA}S1+W;@&5RF6|(L)Rn zb=!dkB0{th-9$g(*$LDWVPYQ9Mf4HM0=9iVjW~Hz?`PhRy+8fA93thF-pjw2e6L(A zAXc7HEN)A0i)@=hw7l56)9>Woi6dfO{_W)3<+loNr4Tc(_-6Xe$eUAdWDqrP`t{uF z@z+bQ04oqUagV7N1E!6M1F|ar9zOPd}A=D*jXnk@S-2*)Kei zdcr^~z4YUe$EP04JQjOw`q9xxBk0@DY>jQ5Mnt{%Bc+G)4<{ck=L`8%-pCin)8i3D z)yq5-duaN>+=KB4Cm+ZluHH0y_v81M?#m;xUisd_9Q*gvn8o;A#jh$|nZGi5W%-K26{#zXD~gD~7rA`uvdm?%%cc>7 zZ{NQD#6{%|g$=0<#)jgB=?fzlP9YXw?1JfZE*(#o5RET6T3%mRpIUDq9$)(W$oW&} zWzLHsB46&@__?KX^5;a)*?x8oG5Jbo<qm#WT`pL=c%Tb9(Ib>CFu`{JLT z{8Z*su}@8ZGWW?iBKPG_NS;vsMBx)D#O^B|pFTcv{M2z7MDLqEHg|0N*wQh1#P2H~ zT{t>*v@z4~Kd~sa$XHa2rxC?(YA`bx8=O8ehd6$vBl1Tik0>8rKqNoo@Zw?V!y<=G zA(mh4(CI^Rhr|ylA(~(E;PS%k!uZ0{LHUD{i04;WkXm3YD9%sMkIbJM$PB~~)i2i{ z?=SV``;v(3SBRxzMywc3MnJ8qZ!d4Cd7 z{|dg8&+rw!X~g}Ts>{^H>ZUz8ME)yTc`Ip^%>rWo8D`N)8xdnlWpIc8)~fga>`?Uo ze|={Be=i@P%=G`ydMpy(=V{DMn#UsVU}f!!w1rK=Yt?1y5_R=HPk;DW6rJ@emYteh zciNia^@Hd`AFg`#bF)V6T~Q-#MK%fNsumx-=@Z9QseMMHwoTMXTait|xvDK1ylGJ0 z5S!`$y=6vi?X11B+i~~+^5JF;w1ut0^(w7yP#b6cMqw|8vUuY(dHS05D^{UR(6aF6K7X@m}kM28}6VWaTBGos@TjnWa&h$_++ zhK2v#5gnT}Y8;KxiFbjiMz#rSJ)qZ*=-8~$<1nN__@$v9*(9u`SJh=S#}OTOYV>)o z8x$uUwy;S!SN;8VSh{*7?$YRUY|o$~ZDEseuKM~B9d~Q=KOy?0t;ifBmZfUCv8PG32Vu_s@~9w(~sX@XPm3M^nQ*0iO@V-k+!f!c%bndBQ?i! z?CC9))4~D9bL{RpU2+Pyp}G(60Znm}DCnRfZDF&p*6#XmjP7_)Q-H-%0Mb@uvv7_D zn9JynhcpFPA_X9AMK%lPT!8&n7}w~IaZLe+qyVI?$R=T}0#sS-97lKLHTrCZ4=U0Y zHVSL$S5?@Wo#(F69S>{dIpTCsk+!f=I0yN;jqZ3vBfm`KNn4Rk!dmiGdw-6jJGN@{ zmy14WE3#2oOTTLG&uw(aqZ;`YkX)@uTi7D}zdO3)F-;j)qI828B*!w6^Mti_5pGwq z1G`6{4ap$A{SE=c2oLn`%-qI2t|`JQDFSILa-Q%&MezLqz5!13n>$w3n`!j@mmI%& z0s8;{4t@U@qVNBQ9q8vr+JS!m_^;~CqTg>W`lZi&|L=X~u}B|y{pPVqAJpML(ziT5 z^UNQ4&3}2(Yu@*b)87zCve@EZ{7Nia&HDRcunqE2jFx>xt zZ|4601P?+7Wj{puabq`>SguS7C4^jySqUX)o`ho{C(0c9t&2vD%_e*F-oNSlFCMyU*Y|HfcVKeIu5Vaf*=3%@`d!w2zx?h= zXju7`2jj}yu+l^#iV!>_q6N9A+&FubT~KeT6B1!A;qiwX4a{VX2{nl!9Yz#6b)Ent zCHAG&!qHKWe_Vy@I!2O_*VHdPclg8VRR5qqH=w#Ef3`Y2nZR!kR_n5jVZR^S7K>(I z$R1)Q{P=|UKPU)96gJ4qZ?oz(6fbPxGqyaeCUXf4$nYRvd6Yk@21fm!M9gDCQ5iAb zm-E-lqlWSu+0n2U^Z1PHaJK$zeAlJa7R+ZSxtQ|Yfvh_GH=_xU6+Ip+iDFs5nK1aZ z-|~d9TTD+Dr<5&fax&_{@|>b58}|lIG#*dZlh|w~FdsE0q9%S4R(@O68BrBZn2AXh z-GWsaYS3ev7^ky@OTrFR7{$jXg|VJQmRoFiPT=YRdpM4@O)0JDn#4rLd|pMb#)?48ayonn@HbY7X_~ zHr>%+Cb&sqLp{?otg@pj@qqC#cHhxaWhSB?r^iuhGqx!k|0R5n@F6JhKM zOj!cc2!X>J<>7;Z!s=maS*4`3$jhq5T)~!vGQFM-=w;1prPPH4%CF1wHwmphNs2zD|HWM?rjxtx0eR6E#U}*g}pn!daBhZ{7(zPGtT5gb5Q$C{GjzL;3K- zXdQoqvbCXXh+&2g2^O0FQB-l0nZQRgx*S>R4mB>t*qnv?tIaD}GEbCWsF&LC(1>RU z6b#3$UL~PBtP*!5@EM0xSzO9JL2{odk*&&_*^gB@vWfg0<<30tgmWGzFp7U!Buw}n zN+>zrMSG$=hiv2e;O`;5#jUr*n&am=dJ`hoSPH+Yj4+&PrEG~}=1pibY zKkl7q$l1LgF-OHcIc7qspX1pnGWL{&kDe;i*DL=jrjf;gmSsH1O;o-)0J+rcDUq$p zIe-ns)c$^5^;?wWW3d6*tD>`~0RIncU}i(Jv;NO~j3PfVGjD#ZHX!=|HbAvG*}%k| z%804NI^_)~EE;3hKxx+~|7JO09=vszRf*+nLFCn7EP)l9^;sBI)PF}97jflT2`PoE zN{fhkqy$(GmPl|O2_6oxASb_Pvr^k)Jf&w<_Kxqct${@j@uK$B=n%3DPfTSU zL&fsA0O7}eO5vZ$D+uPJlURX?JkwNOeuJst9Rv+7?s0gEW8FsU!H<=qz_@(j+?r4x zlpZ-UP4cxiFIR#WKDb-&U&JL zbrC9gStx$@pYW*ig@QWc}gr z3T2L=ZND<>P2jSI2E+))eqjgKt05J}kv2Rj9B^nTPd3{ZHL{$=>y)`e`cOKQi*5TT z=ahkhB$CL&Cc*%g@*hft33FK`i}RzWpGPFBjI2LuD75YIWir907M6)r{9~g0TbkN- zprO}XHWJ=Db{XpaGTZj$AKbpKv}@O{-~4R#NBGML>^APV@CXj88aG~0I}$jY1<%58opZPm#<4-$ zen(W<<7h!Vg|>ZGWd}^`i=cl5mnP%PNef3{atl_Yj?RuN$M4BTVK*G8J=$h4TMjbJ z8Jle>V@uXl*!Fs~?G2Pdg%jEAh>D_aWIfo|DvAMT%F{Lgv%n_<>oSIvf>A9r)CvPz z;~7#XhnI83iD<`}*rT{6_&4Xd3_hU2j-S;ja|m^4K&j)gg=~BpP)BoRp=xws5K(g| z>r5taOE770*O;b94f@fb^`NDLMx!U|NuZpVqS>gl?IQ^^H&rA$0()7URna$Kk!;&5 z^E5*(Hq->lnhmpUzYwN~Py{NQQ2ouuX6ypY9hOGbLR7I5&ma?Lhqbj>u^)|PlZSSl9 z(eMA_SChdX?>gnfT_5hc{g-z~ZvXA=XB#J#H@yps*mOH=<@x1x;puCsHaWT+_e6>2 z<$l9FC9BN;(Tv=qw_@dH4)+h)EE=BNGE4!Fp}x~_0?q`{7;T0>kJ?b?F`QHhFp9Q) z*2*^dPgRL5c87XqX_B`~2|N4n@u>RP_#qS<8*OY3M-3zTn#%cAjwdEo{>A;upH3`~ zatAov*=nuguJey9ht?1R(W)$L2-abQqcK!XeeSFa)Vs@~>doOO&faIMTdw}# z-otSY37lnN=}P>+SmNh0KkE_6ejj7H`h1?yJR&(2s~uFNEu1Gj&?AyrMbLNqJgF%H zzwXB4EEa)m5gzD8n5J1T!VKQDbm_tPfBzMjr!{)(pcGT2 zEsP3v@1o2a>#_S47_4RH@z*mN+0(FSpCWBxRQO+%-FJw|vl`j6AlR-*Ti7I=>oAPj zLrk92sPQRFJNj;@Mm7oOsy2Iw$@3bub3~1_71<=5s~U%x9ED%)K7bQ5YP5{%Y462-p4(})@Lq7`c}Yi4tM*_ z|Iy_)mmqEZb-me){{Khu-hb;q`phT)!DqJP{r@M?|KE=Eq|a|2?DLsl`H9y|z2Y^0 z`Y2)pe$#74KJPVOMF0P>e~Ng3Kl7Sr{hinRC-nW_isaqsGat(M%wEH1z8&?MhYaE| z!-T26K77OSBXIw}{_MT?|NZJ`Qs$XEzb|Tb-N!vV=1UrVJ|-K)^H?4_@*^G|^JR_v z3P}FH9v<@*O&R%I|6>^*gZ0i>$yYT+;E84@$s;W4wG{pcS*eN9t@{|k?weos>b ze*Mute)@flA|E_`l#ib#HF_V@FXNVkM{A?H#BN|K=JB9wh3$LqSqq}4@G<5tU7wc{oL!rZ)@~;Q`}Yc-UR}z zBc~E`DUCVTl=Uc2woxHmcyj&PrF@&~_=R|^=kh%D9gQIGg2U2nPTgYZ4Fo5wgzNg zFX9Rz_J%oHK@BCg=!+chG*`|MJC??DmN9XT8D$Cm?VO*0j9XlRYA zV!C?6rZs}R+YF)aky}L~z&l96G+IitCK0StLqqO*`NtX!-cW|*ZH3BhCE~m9(TLBI zU^k~HD;ln9`6n6;-ZO^O-aAJ}<}2I5GpcLatKq7Zf2z^oePKxLy*qSdzM>(W9MvLw zHC&bQe`z#$^9P^MVC5DNVd^no(U2?I{xw{6@_%bIc&`+a*9R)E5+F|f9*twF*U$OA z+u^E`f2PskJy59Xeh7i;kyF_YJ`#3Kdo^4&^3OFIyy*!kvhq#r+xdiY5c3YQiQX{L^taH^!*K0O^sZr!@Ql#oF0t978 zPAx^cd-qioE7!`|Wvcc0yH|V7Gmr3@KVRiF$B_<0`p!y>&qq>7&mbP)@krn9@R=8! z?KM9<3-SAqjzaq0nO^fUBoET_hy{2=tIzyBFP`tGF;SJ`7KYQtKkMxhK`R7*d|E0{?pQ!nz^JI2G z_8c{w@eKvd;0wWf4NS`3agGXgPM)tqLHJb+dAE(K5Ml$XP=ILL0kjjI$qQ7dj%XOY z5Q`A8=mr()Ba8{aBznd!hAmA1p`DkiP?)erufz(7mXT{zXdcl%no*$+!rXo>79r}k z-M|t6-P>=*s))AHTe&dMIFVJMCW5}qLUaulqNlA8J#B>o<9A|_Z9wZJ(6s|Fqj#y0 ze-Nlo0O1j!B@1+p1J-uH-T~AT_RcL>OZXnFWe{j0!rSjvp$HM4xF2(bGyWje02R*9 z-kS!pLf+`ZD&!+tqK{y6iT1=+ZZ6PCbnJW-b42&}4b3hN#I9SA<9|78krjgH~+=MgvK6V!o z+VOepN1}b=0~C*lZU7Lm}RMr;V-c$Kx6`FBtqMPFfniZ%P0WR zz76OgVu`Q7K8emTpo?fzU&SIsi~1UVM)ZyYQNl_59!fhxi~_-NVjB?JPV4}}I|=ps zC`J@$BpL=MXP4GNRwy(%g=LB6@ozwpXvlsOIz;az5G8sCzlAxXXB*Hc}24d#TQSvzpXlvzKb#H!HkjpQR%EX0?wWK6_mq`(||y9x;2Vo_(`CW236h zM#P#9xm2{{BWe=RO<3bVglHzz1mGv?i3Y+UT8Va|ljtUTi5L;tF>}c6;Pb&JMW<)S zsPer~nH@b%)zt@M!R7MN96t>jL`&if<$HeS8WzHbx(-~_D!*^V)y%j1C+)nn%^RFC zqK-YQYTGv}%yljb=0z%k51~e)EBbBadnx!?$?nDnY&5GO(K0?$13QAdmzcM2R>R~> zrQExevu{>#aHdl3T`IJ1R(N8jQtn+UvTs&TbVSv~0+w$`O5KZ(zV?|9F?~JP z^N3cWjW7q#R=)n3-Ri-IP#x^0Zho*nST8?nrTKVi44!RE`9*BzKzi{p@CPv2o{&9UY6GzbaYv+aQyI!==g+4nE>!4s^qU>c(W5Ud%Q$%O*V^ zOi9-K@iSH3Z9%MBK6)n3#3qfwB%hoyH(mqY#@-vlwJ;pU)h?L8g)XoIm>0(7%^St_ zY~CaC zA91+@1_*QwevJ1fj*XLeQxD@>>Q z4oVgVLL=YB_Kg8v!cWu_4$-j_=ptGYe}GjJ?L>1H=puTEmhc~8r9?N;OT-9c5U_~` zB0z+Q2+=qKv=JRd7vUQNY@&e(vQ~$Pu=)$^mN4Ln{uO>fbP+v7l;|UZ<3O0Gp9CBt zNZ31p2+>5?(Z9i(i3rg|v=FUCFA*b*LBJyF2;V3WAVNfh=q7rJ7|}9;TJuuy-WfZ0 zf5H)0#>nrbzZUu0)K@cKjeT|cE4i=4zf$^g{>#ZPm%mi_QtC^_mx^CZe=+jKsV`){ z5c|UP2e}X8ACx|yM?}K%`-S&Y?;GzIKbQVoF8*BU**szr zmY*p+lX}K@rucOF>4-!nj6F5|WbVoMlckxsgoVdbj~kB{A4@+Ld2H&@3?dUwZ_RCu zZ!JBNe-k-idBGCzB_f6lMyElGs>7M*O$$QFM3R_ZJj4j1ku?Zua zlbgzS#1NCv$Q2Qduq2TPGl)T0x+QW;>@(9h$8Mg!DR$HJjV1UZOkW?le(Ji+b+PMG z*BaLrH>Nj^Ze{6G4`=eRd`99WmLA;pz|{TY;yIU1?ky zxgve};AJI5ElgfozNBzT>JsCU;>GEUBNtCyl({H&(e#GghWLikh2;w-)8nI~>j%$Q z=WRb{;_R`r5@&|b*m2r6#2Xx06HV=0J$dT*s?n8$r>K*+FP~U8wlpyu9@?>ZTQZv% zIVpPL&N;^d%pMazrgU`v=;YDmqY6i*jxvraE=n(oESidE;<5PjU~VuzSUNI)Wb(-J z5rrdCM;J#G4^JN+IehA{%we&^rVpJ!3_#IBL`0{%q)y8oIWUbQ2e0Mg8YKy zg7W;r{M3A7esLf@5E+>2&-BOor~7h!@xD?lA4|r{(a9Md17&I;Pum?eX?fTfQyXR&Fh{rdo~G;=J^{$h;lR`R3&B=mRiWU$zT& z$~NqxKkbkBr+gV-%s1`LdE?$vUA`_^SN0Sz_ z9R^3{EBy=?;5*kOPc@})ZgF+r+))Q}shO(tcN)Rdv1nM4wlE;9CAg<=Zn3Lx?nfGt zGem^66&VofMO@YM#~P6{MTE2!iQtr=Uc^;9f1(j#Z+lpgm6tsNGOrhLRnEWHh_I7A zT=kAeK<4!#uDbbCjR^bJ!}2;u<<*XW%P1`?^Pe;#>#_PS+%-^ybcF0~*r;k%O!UpUDyGZh)c?^4jzT1)NL%O#DR{vF z`sUpA@}D&t>{JZlkvTO;K0~kcp2DMzB_@kU`-b zR9yA*HyV|UsF1d}U=IrCpyH~bA8J&t#rnGxX$u`;<+{vswQG{IfV5?oRJUbaUR8gq z5oDKqSUToyVL(_*a8FxyiK{KUOCxf*4-146xst9r`a7JgjI3~mq+(uR9=ijaDd zO6|m=`=r!NWRG_jJG;Bs&)vo@?%we{`)SaXZESx84PEFjK7G-p%dtT_Km%aHSc@{zu5i;9NIsCj^YJiyew_rKkNedZ zRp_8mJQ|-rhzH`~ZNHC|PJCl_Xt93zW|eShBPF!xv&tYy+AnFxH`w!yGy}!Xd=L4Ka>u@JwXz{FkE{A{@w2 zzw>77#q6!@hsKU(P_2*}=iVN{-tOGNy}b>4yLB7(cIyQ8cKamuc9eVD8pqx?quAT^ z+a8DR1a`R^#V&WYJqxul?DzT|6ObIme(%|a{qCQ{ez&sN@1F3hP-BPweC~W-^etc~ zIxOr_^wyhW=(Xrh;8;Y)a4fpUa2Tu+9EO8<7&<0_-Z31D9`;pOJRs&aAT;V3-G^}ZK5WkJo3(wPEQRjwnIp0L zhmDi$#FK-wJF9iao@2i|D>TkNUe{6`JJ_M?%4$ro_turwFv+f3SC%Kr9#>aZG`z=X zb}P2*wWHlx{gZp_Xm^$aJF?rwiu!0pidNJ_D~iyHx@52ntw@c*it1=ZAzD!*t*C)k z6r~l#Xhn?57FxhM+f6I#pcQq}issRZ=Fy7UXhprWB9m5R(25#pMT%CmfE71DD~i&J z8fZlpt*Dz;D+3=@0C`c>nr4>1}B9m6s zMJw{siVRwjNh@li74_4K>S#rEw4w%Dk%v~)Nh=D`iaKaT2CZm5t*DJw)J-euq7~KA ziWIFVKr1q6MKM}YBdy3sE9#>a&7&2y(~7!jMV+*wV6_!h_F-eS70qN-TTvyezuJl_ zS>b9cs${iPTTvw|P;Et(thQ<^nps!16;-nAYAdQ_nblTQ$?B=LqDod%wG~ye=2u%$ zC99rR)LFUw(~1_*iXyb45Ur?(R@6u?cqIOzQGp(qZRy2=R)J-c=w4(WJKLlt+1GJ(6T2Y8r)I%!@(25LNQ75gaj#i{- zMFy>?nO4+CEAr5aJhUQ*R#ZnT>Yx<`X+`a{B1J12pcS>!in?e;owOn^t!O@b-yK>} zlm--`0eNXa{WPFf8c+ufsD}pBMFR>{8&GBUMXC*GCac7~(FJ7F~59Wa{a3D`^12<(N?JVR}40X2=nUP3!zFX0`q zmxk@Im--zrmB7{|xjl)3Z z!3Q)t=V2h-G?0E8NEZzxI06GPCSV|eEDWTR2GSOWZPY24MK}w@Xc56t9QdZ4Jn(xj z+YQ`SFSoUY+gitM?c}ybxvd^32{&d602gV0QS6sl@=ceDwy%&G4RLmEX#qzeo zw$wIbTk+lWyODRN-pRZZduRIX+}rWDOK;`hO1@Qov+!o>P2} z^lQ1-;;)rn&A*y_wfsuqmDDT7E5(=7FGpTZzEpm(@M7vk821#n zq_;%2Ox>NiJ9hWYkk zZZ6)GzA19k)Qy=NV>eFUkh>v%L+Seb^~vkY*A=cyU1wZZyf%GpFrNWJTdlo;<50fJ3iuZ1?jsZ zcTe4wxhrNR~4>GU1eNVyfS@dZa=}zOla8gQ zM{}d`(bD?-`sDiZ`GxaS=Nso2&r6>dIdAIR$hkYt-gZ{@%#kyqr|(=hxpsWbXbL0B zR&QT5v2yH`*eTN|=T45FTw0M|kz7$;URa)5ZY(b@OD~Hon_8M#8e2L&oEwf0mxl5~ z$)WO+!jjYyV@YvwdU0g&R5Fu{C8ra)L_ASCDSuM(r1FV{6H_M|Cl)`Q{&eKiQwNMa zSUfI!?8q_EqjxTvjE@hF9yxe~I($3E3yd9{SQtKNYC&c}Y{B&W-2C|b(m;M7IZ*B| z^r!lb{$gLcFVZ&^%fw=_>1Zw*kCuA#y~*BkPoXE(WAqfe)7_Eosjf^{tZTY6*BS3D zb>use9p&~yd#c@NFSe!IB5hNxnbuhA^t{}>_`Fg}z9rdGZZ0&ZnvLdolWN=^o(PQv z6M?X^12F)9xBma$&=of?LjV8a=T+|irT>58-{juEmCSx-q$8|o)b5pA z;(GdDuhGb1y&*Urr3MLaqhLj&cCXwLSEX#wXxt$hq^(FtSkb86E4Rc|CmoH(Cea`n zhMpQ^MdKLExu!k6Sxa11GN94ejFp5GX$u`;MdMhP06y&1aMj45M&nM=AZP~iE7BGQgtdAW_V&uTYNRVRSXiUD1zHhB+QOi)mg3%CId`3mXjJYI z71CB@P&fw_SFLQ+sN5?mq^-!Ha1JW2dfB8=xldF`TaiKG98_F2vst5Zzo?M5B7?#? zsJQB8i$>)EQ6X(b28DA_an;Uw8kGk{g|rnJ6wX1#RXp}1B5k1~tX!8jAlEg`Tr%PPVW_%S?h^-dshP%EyGHO~EE-m%Eer^23GV5Y8*=r^ zb!bE$5fRc>WI(7FaaGSwjmTCJA#FtlgnAKI?d;NsJSrljt;m2-FXF14-5Qa{M1-{Q zV2dK8Uc^;5do&`CiwJ2eG9c88xT+?c>&tXn<=-Ce?l6A>IblWG!hldO;;NZ=i%6zg zB2S74X)7`y)Qh+(W=tdUG*;ZDNL%O#d3oN5G;5lvm}twoDrT~}V)khSpTRmqinN7} zkb)Zy(3W-A%YKc5=&}cj-8l^aAsVEuNJm)FsNI$ws?#>9=^-|0$$nk-pjG zGe^($n!i2=V*-%kNPmd;{Vzc>k)Fl-{)e^0Kj5Waa}?=6FY%gNk&Zz6&c#?C(r+&E zn)lB4nG1%!=GTY3=J`nfxdiJ&T7>ky#TXNS^s9)^+?w*5Mx_SI(7L` zxc|R@rvG2=|J5&KYi2Gn2Wj?P0Sku|X$u`;WzQWmd$;UqJrB7~Gz&EvFNg+dE7B2G zG>)yU;X2P8tkHN;G)P;Kj-eww<2v}Kv=7lvA2cpI?pVwKF=Jg zQG5kj5k=asBmXGg#F`j~`QALyy)dZo^8^LoJG=BlFi`gyRi0TLSA=pYCd*AEVJIV!dHS+QNYF z8ay|aT<~Lv1qpTO_AwGFtQJbzlF_!Ve{6ln_`VZ{c-dhyMkX{L<>8(1{R%$cn^ zQKRuyEE-m%Eer@Nhi6}nJvOk&WdkQ^M7|~>qzykdv;k5t;W|M+)yK#695Sg(#h81ZG1H#I#+gD@H z@j1$Me3ocLzAhr9t;m2-FXB2rLmH89V8tOt+CoQIsiXUD$(}lTRCOI4)@XbaYwuR1 zEer_9a30{5bk?-nd)pFRNULqY)zV$6QT!HG%F&}#Bsutok5y_bdesONT^G`28j){{ z2ua@=6e0B@u6FKnjmURIgtXxXgCe9}#MR7Qp%M9?B0}1V3<&iiu2$~J8j(N1in|nP z3mxG_HCj`&v_>^N%LtZKH>OU}2>v0Y!iuzo0pVqMDdoBvX6IEaPF+VMNNn1DCRnKv z`6Ce_ZAAuz2Ne0Yf2lJcz}Ww;9-sMz^StI7q<_Y}{}!ZqhxyF+;O}o0?*D&^`~J-* zd(Fl};HMw=|I3kngmM2H7s8(({=W{Ne?v$+F#iAQ1wPY0-D|#tvHuC&|9@}5XI{Di z&km5Dxe(77khWv&|K&&?q~|d9|FD?P{7wSz6Cf$1#%CXycQo$*|Id008&Zk?cMv=c z$;2JwGTc>~9rHc>EUZXd7!V$C$H?Ay8SbeXk?mN0w<2v}KuDXqO5Sn77kj6fGt2Ob zRclYFKC=u}8`Wx!;xyJ5Qlu?(gq6)2+^bcYo4NX9-?>gKBN~lA77fx?q$8|o)ND7M zy3TcYQW}jv5e?E-q$8|o?AyYaIq#pk&UJLwXf*y8*4v{y*7*r-Tb7!uZ!^eJD~KO^ZnLhCd#emwPT+cbq z)X4mm$dI-oL&CYpxE^$zrIGn-ks)nGhJ8V<9gI_jz;DO zSap{oZJ{H)2(LX~s5T9v)iby5?-qi2Q?ykhUTNLcNIVigS@hP1}Fn~OCf|0E)$t;m2-FXFn|T%r;AKO#cfiVO(#BCc!Ar5cfc77@}`WI(7Fab0OH z(}?_wh>*4-146xs>pF9}M&w^bgtQeI5b8x-SD7m`B4w<&TamWV5mF>wqhccB_Hc4{ z#f%?|h$o9&ffcUQDE>?oNn4QtVJ$`0%!=a5sv88i;#C?&-Y+KLPaXNmkKSZ6+td;dj9e}wz~OOY(3Jns8@k-m)k z{?m|l;@gt;=cb3q<_Ob|AV;yKLqJZEk1M2^@#I# z9iAH?bt8Rnt=C+Q^wW)AGlvvhf^O)6 zUPwY8^uquQ!VnBYN|<>)9qt){Q5b`9P}>C`_#pr-&xfhfcv4mKp9 z13IA#x}gVpAqjoL%yRZ~&j1X<5DY^K92kL77=v-}y)XD704>l8K?s2b8rq;8!VrNd z#2^kfB%lL2p-Y%q&Tj7MfnG>LAN0cj48jl$Lkb)ifl(NPaZu7eLHocD0ce3%2to)f zph<&ngLa^8gN{HHX!bC(oN?~4ApsrG30=?)JA{{PCLMHqspZNVZNUYtq7HF$H;sF=<6aTmrw0#8 z;vxNb*dQJ;j2Q=)stIwqA6NP}inoNZ7{$BecyBL0+J}!1<5MY7K9hw}et*ulO>X+3 z1%jZV4cZ|L5r{$zY)C){bU`=tKrbYr9|m9$hF};{;J^r|?Sc>d5P%kFg&>5$0u61@ z4q=Eu6k-sNnOZNl;>#g?)gmU&&9^)83w`*dxIEkXw$0!4aP#}U+)P403_=PV7y;k= zLI7Hz6+)n)4cZ|L5r{&c{H^t)0sP4j{%n}J`Q z04>l8K?p$`v_k}95QhYGKo@kw7zwuGrX^T?nww#64n;9#<7g)?=*8WWqE^!Vy7i7v z)P4x?`+KeUr66~Nz~c9>M)7M2{6;5MyYZVnqE2%2TYcOd;O5^Aa&wrQ-|=k~zZ<~q zt@!;A{!rtO+wrFn{CQN=ac=%Hfxqs=dN=;27k}4>{}SG|T7}xKj>vzq>8@7Rb#ZQX zakJ2aHzx7se!OK6Zymuq)cfLQKi<`X_k{3%jSsft!x4NmhL6WZ`Gl35Pjuo_NqnCE zpsg<_MER@|I-#FC|6&lop;O{_!uY)?)?%WzApxDx4L#5YgOGwz@Gllx!GbmjLlkW2 zgdXUFK}f+U_%{jhl%)Tl1Ap9wKkda|Bt_lN&0h_0bBLSuVQxCy{Oyka<+u3T<+pNg z`Q9qOnUx*_O48eY?Tx}4={IVx7hli3UVp9hTJ|;HYvppTY?mur^IM&*)mICzreCeS zQhX)zO8w>1%h{KGFPEf;fZB_N7o8WYFBD!#zfhI_0qp0?&*h%;Jy(+60cy__o^hV3 zNZ$ayr%O*|o~k`rc+z>Y`b7Q-=ZUiPwO`*-l%4^qkLRVg{mNrG=@+0ReeKsCDVSaX z@((+vr+xdOvh)d1pYCVBcz^o-+I>aSBS1lV*{|G_GyMT%@Aln2pFZ|$pDsv$0F_VW zKV^Tad|URmMj!X~t(8yG&wcfl!Y%1pee9P_ZvZ9f^S*XN;fA#IwVyB8h00WZ%8?%T z3m;EU_qt#ISm|TgkNKqU{oF_Gk5;bBU*}v`y|!>|`r6tx#cMLx)UPgGoxR$3b@{5? zRrXbtEAv-6S5~hmT#>$_c6ssg%;ojVN|$9Wt6y5WG;?W9`T}tBl}))#zD=b|GSZ^H zaItf7<)WOlr!QTYxv+LY;excZrq7>mpI<&ND{bkE=cdoCol`s~b58y2(%IRweP@@? z%AIAORXH<%rgLWXjKUe|Gis+7PtTlQ&y{l7oG(}2nA>P?teloV%{i_55jE3}K7WdH zO7-NalhY^HPAZ<1IjMeP>BQ`bz7xwQ5o6XuC}(gHnX;#EoHM=U$#7%o3tk@Yw~NHHPvGa$EJ_1tuC(4tgf#rt;(+Qttuar zJH|eya&-P^=jiHD>ZtOOxg+f(D=YIWot4!Ug%#-)wdKX-ndS9mrDfS=zGda5xuy2f z%98vNXGt|v$fPs1#l^*$#q}dfM`VwfIy`-N?XcounZxSy?(;u)fPFw^|NQ>W{?+}| ze&v00``Y_f7UmZ^3#;iuI-Raf6elth^?geFWcTsyQ{Fqbx4m~|ul!!lUe!Gdd#3lS z?NQt#vqydRlJxyQwOe|(+OEZ2GrQJzDeaQo#kWg&L2iM)pfa8xcgCw@g|YNlZL~O= z8Lf|$MzSNmk+PF>Y^RdSr<_!ESPhqlazpk|WiUVJ3|0pU1L=WUf3ZK)U+*jRW&3=6 z*@!Pv4(GylxYC|)ciO9Mg|>8CO&4`W*R7J3wR~1NlndFR zN-!UEg4NbSYr3`8Qf$ez)B~kJHsA}C{W-twulVvl$5*9Tf99V&cz|60Uzcl?{~PW9 zIa~LKpP4HdnYFHSn3s8+9Qk*dMO>jaMvSvgj_inO3UQsoyxb$?KTHT}g%P87i0d5Y z6&@k~B{LpWsErZhhlMoGC?45-M$t7C<&_?Z|1DW@h1wV~epq7AoKZY*LjGjOwX&-` zLVj;TP%DfWy+aO4%aeD6TK2_L|7QJ6S3Oy|eyQt{=|a~C0oQpXwn$b&p*F^h zo1~)4r8}wY(x}@oxo+*c6OUaw(ex&L)FY-<0&Ioa7&SIxaN zZweptND0dPqYAaL-FUgI$VDpkfs}v>$aT8)>sBvnT9NBLA}pEtkV0*Y8XND=2QLFQ zs-N%%O*D@hyU^8F{Kq{ar6ex9Dr#fIc$L(pxM<0|yr;}MfGF{l;BjPr?c6?^XWh#8St4=U8gh>^x9m+s_Cpiz-x z&Fo_-S39fwJQ7DGE1^&uW5!0}C9^&n)Kp_nmBclf(_DM%{T?x6CI+>_m~lQajXibt zl6e3A`t?EoDw+O%uaN(;j|KfCdG7|5;N1U&(a)ej)$v`vv`9k$V59%Ju(W zjD-9*OTGVLnLa1&{*ROC2XgKIdb#$Wq30;4bnMjCy^w@H=!XFqgdrG)6gV&fqc8^Jpe6(#_#pr-&xfhfcv4mKp913IA#x}gVpAqjoZ4+Ag=Lof^}a9{*RVGPE>w^;B)09v3G zf)D}=G_*lGgdqY^h(R1|NI(a4LKk#H5A;G3`k)^MU=W627*gQC2#mrQjKc!(Z4~?v zfEH+lAcVjI4Qr0?7<`49)&R& z2en!7fgb|U0<92)5Llq04cZ|L5r{$z;$TApI-nD}pc{Ii7n0Bi{Q{pc+#ZA>7={!$ zFao162IJt{D)=D)Ezk-<2!RC}+Mpf65P>MfAPzPppaVLg3%Uha!X9q-LK6C*9|m9$ zhF};{;J^rs!WfLh0#MroANU~vEzk-<2!RC}+Mpf65P>Mf1X;p3w{1v32XsOgbVCpH zLK6C*9|m9$hF};{;J^rs!WfK$+AjFO4*_U_RtQ1}EYN~1VH>yGAq)|SLJZtn!3w{Vdiy%wb%IzS8zyb|z&<Kmt?( z2~Y_nKqZg>l|TYi0trwFBtRvQ0F^-G`&OV5NPtQp0V;n4sQeM2@<)Km9|0K_5Bf5ttND8uq zecbMc0T_fK7={!$Fao162IH^*d=r8n0?-1j5QGp|prH-gp=eibU{Bj;NL1(5QR?YgB1AQ6G9My4oJcXzP*kx6lDe z7>02Oz9)ns0lhE;W6-)yXa^g5U=T*3<$a+I;?NBPFarM6QL?4bU{Bj;NK)z5QR?YgB19tgb+la1ClTdYO4^0FeIQChF}a@w+ZcFLk|qX zD73sUv_TxYVE{&eiQ5}LV}GXdM*a=wjq2-#*VC`pUMs$qd97Y9m9u4Exx6*E)!tfp zHUFyfYW0=EE9qBiFBf0Vyj*{&^iuXE-%I5eb1&L2R$j=z;K)_{!t?3pYtI#*%RELneXL8TjawR|iwDWZJslrp~r)p0YpUga2f1>n6_6eU{&CiwWQe{hiizC&^Yx>oP3J;|psy$eIFe6v>OAllp@I6qz zKX<=c;X7jWO->h5t8w z{cpdzcy;FL`cllwc<1=)afRd3 z$JN#s*Jsw(*Ok^~*ZJ0!*XGvRYb)7&*2z{UH~tT<^%ssxA5}ZDcx2|t`pVME>`LFt z@`}YP>dQ;Zv&((U%gb`h>}8du`K8X%>XO2e^paYpn8{@7i%W~Mi+zjBN92yMkEk4; zKioOIdRXDG^kKC_i-)ETtsYW1Bz;Kj;NroVgX;&C4$2Y!WSn}cl**=jsq%1c*dDG7<%gW1>R@3oJy;tk z4rB)E{iXhFzpuaCm+Q0pD#?7(NmhFcz3JXsPq8P{Q|~TyXS;pf<*rtu zZ*$tJx}ej#W)-cBRS%Uy*^n<(4(5V(u+o}uby}+}g_d+nEl><(0(F1MpY{9vWna!` z`zk6gr!8Lk@4Gf1DCPgMo-_+f3O{9%vgMG)&v${^NTDSX?(&yL{dM)C7w_=RzN z$G27dq95N4;Cn4tX~i!E@yj9n3MCTjs}xDBKcY-x{V|0S>rW_^Sbs{f#QHPJCDzv{ zm{@;K$;A2#iYC_ADVywAjc-s!v9?i2v8t3(tiPm~B6R`ruPCNie@!_>ss!TSP*Sn} zmZFN(48*^uuws3i(u(z+6#j#Q-yOm4jpFt(tc~OM7vK-nHt~l({E;7j9KfHn;7?oe zXF>dV2!BE8#rj8zFV-(9zgWMb0JCE?eoaBfdY_VvRi`Lp{S##w>o*i-tlv_Wv3^Hk z#`JjlIwH)S5HheD6lOR2|7QtYw%DEC2|uO-xUdEHZN>e9xPJ%_pkQPzqGV(pNYThTh_aD& zFoh%Q5K2eZp%jm-!zdqFhf_eZj-Z5OEvATMWhf(AODH5+ODQE;%P1yU%PA*WD<~*g zD=8^iM^aR>j-sq&9Zg}$I)>7cwTj}BwVLvhb!?p1s!*%1hp0bm5 z9EB(AcuG&!28vJC36!6#6DdGhCsBg3PNoQDokAJPI+a3{^$|)@)@c-@tc{eTtQ-X? z>vT#|))^F~tTQP~S!Yq0vd*S7Wt~HD$~u?wlyx2jD(ieoRMrI)sjLerQ&|^LsIo4m zRJCI@E}?W~ZK8N(nh4v*3}fUtZOJ`S=Um` zvaX|?Wqp)_mh~}8TGsUxwXBa**0QE3Y*__LTh9TdHGtj3)b!K}@c!K@;MFzYT#VbNG{rLO8OmkWvlPs%=O~$3&r>wBUZ8Ady%@%qBKUF? zUx|r3R^!z;cWt$?oWR#Q@byl7qYFRNjc@kgTfO*p5@ylcQm2v#4niT)YhkxwHKMCNUw&0(&;@5)s=OO$H3%{<#9joz;HtyQi zj@2;!Wdy$&#lMQ-U&rxVHvUZl|F#4Ft`q;h3%}is-|4}B=*90Q@q2x^y&r1>`29ir z!4Up%7=M()A3OMy5&Y>W{%j0?t~QFl@ZmrD@s|PoRg1V|HGbX7UGE369>RaJ@HZNN z+lIeu$A1pvzeMm~qxf$z{P#HihmHT4!2jyN|L(-!cZs33s+(VYJ?QU6IrA#E^kHj1 z1_v-Sh}ID5VQfobyMy5ojErJ*Oq^biwXt#Tiu*Q+wjUD#>}bKxR_qF5cL;kd?A4fT z!@hRx592@t2ctL?!{IolY;+Ph(t)F$IM#*Z-MF9!cj?7llek+S?%t1k4B(!FxYrQw zJuL26jeSzwHQ``-1Q(9tzGJxGIPR}DiwF2{ksl8X;6W{Ta4Q}X#6v@Pn1zRHJfaO3 zw__%ZOCq>5ipyfSJdP`DT$#WlJMgGZJh}^y>Bdz(xVjgQO^Q2KV@)4-P4;7U0M`!U zx*=RYjK`($cn3F(;0dF6;uxN!wumSD@Dx9u8o-aV;AyS6F^IVko^Ih88qaLQv)b|O zFrE{^bE9}(49}0_1vXxoz>7NY;!bhLYFyIAU7NZw--DO-;$=y^ybrJF$14Z$szJPZ z2(KB&Yt1qLTKRA7m1@hoi{Gt%vG7Ibif8CZZE2s7eXIUv@y+y`)z9SR+(!A0>>G7yosgFC3-hnp(l#M0qZbyprln;FLbVwWkVC zIZsud%suIQvh>6@8LQAPmA7QK)Mcc?^yAgX@{idvPGR=Z`Xj|h(lSb6{$cy!@)Z~nXb9Y6?CiLA^DrSl`8JW=8T)s0a z;}RC-Tt)Tvyo^d%{&e=!bvaX!{#5n0{B8Dat- zs5nMLtaMdE1#T|^9@Bg-%vdBiDL+*Ir@g-?d zP+MPE@2sz^%gI@WlC&tOWeakSp(5=Ge3PX$nKdl>>4I_zoz^ zIfUANh5elUD$;7ew{L0Twsbyir^^#rX)jRRC%sQ~@4U1YDDRcstG;J(PiN1{9=Sby zdz5z1>|Wcgu$v?2405~rb}j9akuwGb83Ax|ye^~vrN^pruE3VD|FR=>Ia82!s;PX+ zmh%Kz8TYR^l$Nsuc^UPuJdl-h1VtJ1uiBTFGX&-2b~!uX$Y_7L9$!yMS_Ra)3SEwz z8OX^{E^RwD*!uKZq2sVr42y3r5eZwY-s_I_1AqxU)t3FKkM1gUwV+#|9|)N zM)`jy{r^AUQJG@gN1YAS#+Y$Fl_^~HkskDjSzuyND~uWE6XU9n^pHo)E+z)G!kBSB zF|PVZ4|~MyYGP0;j2Y(>_m~lQauKGxidc^E*Vo)oL8Rrw@s*m)T zN6elw>p_Lu7%?_tCd~I$6Vo*ZsgLBU2J7lq_;HWKy(BB4P#a^$xe{mUBT1sGKGGJC zn7vI5YK1Z5d}3TR2TL9?`!kBSBF|IxJ8IPF#Oblv;G2?tJ7iE-_!FL=ZpWMWV&j2Y(>!ZT4BsMpBUG!`ie))VI~H(!kBSBF|J+pRgaj%O$=&mh~O7&Xon)3mEDY_5;LqvW5&56n|9TOu3hytkC-JU z2DQSNaXvAwUG;U3n58BLwZfQjJ~6Ic^$m}hWhMr-!kBSBF|J+pGafO^O$=&f0VMN17Pa3S-9k#JG0V&w9ih zEwdg_sEuLcWr|MwKiIgj(VPCdNq6hhrOi9)=R5+BG3$a_Vc1CE&KdwTT7j*bba!j` zd5?@$CIhv?u(6RbS1T~daP6XB@W@zgGEgfF8_$sSI9KI3ylDQ}(b8=4$jm~ub*3x8 zcRVtVH5sTChK*!gqApaS$6NeQ%J_dr$nO4Tk36TE(R><@{>HF_$ znQWO}kox~iW%`cv|98H$0|?0fkK`pwrmt_3ESZ!{!9RXwuY=|K|GG1qum7i{lEF*n zHR+wYUMZ>7Od8 zWN_jMl^mOVQYAxEPsvjzpHa#F_nwve7C*0&&c+v2a$x&QDycWWqLMwStt#0y`I8vl$++Nn30%Ug3VcmKAxRB~|Qvog<(pOZh``UP3M$#+#Uk*df%w|z+#bn#bY zPFqvHyxrwBp2}hCwS}Qyi)zMU#aFlXr28^H9r`d{Yo`I7?{0aeND?@ zZOf_l={sbLv}K99#{tz>l%^`uS?5@*Ap2X1n!I%62=(cAH|m?PrrsvdMPyq7A!Wv_4mM#QnOsAGFX3p2u| zh?sK>zFo zXkL@i*$dG8U}E+HG(YID0L@$csCheB0GsT-*|E*f9hn{5{GdHMw)sKzzP$7Uu9tqq zo#cLSeD>?)%zk$BN~LB$*c|PX=t%Q!9N6Z1YX@CR<)8gvbB=HJgUvaKiN{sw`sjm^ zKx2oNPl%pPTU1wv+~1y@xv!i1I=Sx;pCnz}*TsGPGtcYfzHaUtn7OZqUk7J?9gOEx z=(g!RiEG<7r4l3YTU4SmRaA+#$-7jdf8*UMVao?nA|k`sCfc_NYU}GN5tWez6aFpd zskYFvKg^B}JlI$Xc`(9*{oFqWtvuLR8+kCw zg9F?@4nZDltd=|&e6cVy$`s@tBtO4xXs=kj;9`w*Dd~#>UOq0%p3El{JQmVdAU;0$eK?*tGc`2 ze@$|-y@0}cmbdPU*M_!!x7v;&@-<9WWeNP^p{E|FRR-`++ zG3Arjdt}GQploQ(Yt#GQ_#BTUH_aT1%=(+YO*6+KvmS}2W)4DTJ<>lha|AN$k>upe z5yq@XT2p(^v25}8=6WP5Z$fxxS1@l_Lf(?TguEqvE%GAuIr1X)S@Qby#pJoM#%^Jr z*ufJ!cw#G09N~$YC&qbVW4kg>?Bt1^JTb@(uO&~K-Yd;>9G(;BIbA$woacmiPE&G<=h!@_o9FmakEz}u&uMJu zWa|U@%C(lXpoEDxF;5m&w z#XM(#=XCL$KAzLcbNoD~vHzIo^z)o-z(*pb1&Oce<1%-ex^sm+VjQdGtbwbD?OK$J`Kws z(hj0tDoKxqKB+;F+hT92m_7}wj};zEKbDpr4U3Ot9;rWEdN}*APwEil9*JeYql z|A6yA_5Q+ikA|81>i3rJ%}PCj@;&9db9dWPiy(iOb62%kD5j+zL2+|tb6si?lGMYeKjYwEh?|%UvXY>Uar1WcquJ?Ko(yt zzL0sL{(R~AtkkxsK0EQu=BM6&VzRXL@%Uq#9@+NL#Dlfz{u@hDW5RcT`M%tJ_I;Im z^U{N3^`62#X{k3+ygPGu{jSnoS*bZuF6N4Mv9dWYbtkHK7Vb>nS(DlmnLFyY*FNq0 zwDYOVZMj8l;78&SA2eP!*6;uRUG9Z|YGd%5p&-(~itj?{{%T~fTH zbaD3L+(q_9wF~0sFFtqE*}1bepYdLzm7dM)%FQ9e9(c=oWVL$)5Y zeNlX-H^Rbx>HTW^7Wd8UTVGgOm|f^wSWf4penDj-KjBP#SYL#`-6wY4xM1_xdn5S~ zXQb*BoP27_(6#~9Kat$nv$^ZNj`!`5=uY&UYA>MWJ|Kt{lHUbb#>d2{zW z6_1FuGV_>1Z44WUI8Q=m{Yr~eoRI}t&^_a znost-22cF5N1#-*R&j;e7%?_h>VrKnHO5Jjm0Ebh1Pe300erRy4mmf8>#IqRe+dp*Dt% zWXwH^)w)UdC|0hq6aUyF@FaxGuqb%_HO^CIq#@h|xR5bphtjJwi@1A*dBb zjNT!x%P)W75wg*QpjH?$dWX0!zI@#yBxgcUD~uSuLtK|$zTpvahRk?Cp*Dt%Ir)H@ z`(rb+)b+8suWNX@Z61MVN>p5-Hb#sDo+pvBey00-%Pc)gy5Qrn>5t8-N61+w1hvA5 z(L2PoWB#Q_$k{UEm_ls~8yg{K%vzBhpPRBKOU;+V^oo4bBjX&Cfm&hM*vOdcn^Q7e zV5=uY&SMCQXg24#sPq2G#|(OwMWExCIYp>b|Vp&sJSE7G#|!%%Om1^ znQcs=HinHvoUYFKz*;me>1CEKS=sze`8OUJ7s%YB3bnD_NXD6J?$ub<{6+b<9uXJG z%m)-|W7tSNrn$c;*DQ5?QSR#+RPOIQ0xy=RxI%4=80QLXd{GkU+8_VkBjgejf?8q3 z=pEwPAHVGpvdM&?Rv0mQhq%5dzvB^-HzBAMMvUGet}n`e@CdoogrHU!F?xr%z9_%z z5ptOcL9H-i^bT=-QGU-O#uFEgdG4}RGAm47Or)-9jlqi*`k3bnD_$SO^!4<<~P{8mrQR9>hZ9`t{FZyASgDCB=$#{F9+)AvpZ`mdF#OQx+S z2mQy$^y8C){ww-I{=~sS|0_qyeFw=Heh139e$w|}N~X`t*nh{%^rP;Oe@eyx?3d|H z>Gv-y(?714`T#PG$n?%S>1(hfzv>U}xU ze|6%tL*@GaTW2?2|DU{B?KRS9|4)1L@kvz#>j{@)l$O~)m-4cZ|L z5r{$z;=;^w+T4?X4(Nm~=!PEXg(UPrKMcSi48bs@z=07Mg)tb11>lo#F#Ior7>3=xPz4B}uz0y>}*x}Y0+pcj(R2mLSrgD?cckOBurU=+q+9Mq)X z13v_yMVML6R_+Nx2rSS*i)`HvVTeE!Vh{%#63_vi&;{Ml1HF)hKIn%57=$4hh7>q3 z0;4b{%q%C(ueA?oe64AFt!a9#X>zS;aV^833beP@G`E&vPz4%W%P^<{O|3O8tu+m; zHSMfr7*v5))|y7vnl{#&Cf1q;)-wF5K=W!%>uOEoYE9c}P19-_{#2l0wP{y9vz#=q zmLc~98duA>djd_XWf)Y!w@L6r09v3Gf)D}=G_(QjsC5`35QP}T!G;8MKqquTH}pU+ zB%x23SK|6#Y0#S%T9BfEH2XsOgbVCpHLK6C*9|m9$hF};{;J^rs3Ny<&#y#Vp zCIlb&ApkAV3PA{g1sd9*9l{WSD8wKRHYA_}I-v`?p$B>)34PEH128DeEawpS3_}VW z7=ck3gK_XJ7W@!^7HEYjbG)sN#owyDnSaxfHuZ(iq-D&%;u{%hRbP5N`})+( zb@BSv($?%&-_~-|mENkftxvyPd#NZR{?%VBy_kK`_hR{l+zYm}ug^d4JYRiI$<^`P zv$nLa&&!y9)u#(jr=PApReUP*RQ<`)lUZqFUw$I@g#ARNlrK4@>Xw3x{8y8f_L;}) zkCh(FJ~s8}+}Ft+X>DJ4ApJn?{^I=^X>VV;FMFTwzVf}fd+nKi0@dARX>)JiRVn6+ zPO&Pj?$euVcNXu=e8?5^+HJ+#GPl)lE!~>Eb?TGpPu6ZJ-jcbc{)y5jvY+sMqI`4i zW?Nd|=WlXus@_<*F)ic&6>rGgP%o4U*@CZ7p4xGZ+4*?&dUbvIW4VvnAKP)Axo};*)mzxs&aaD<|boa-^kx z;l%WbwG)abWTvln`!)Y!pYx8TJwN+`cpU&1Mi<6nj z`kK<3>>A&i^0B#NZE3ZiU+t`}t}3ibOS}EzF_~lPN0+4S{?tzT1kA0lS5&0+zO%f# ztgtM-tS0UEGfV4BN=vd!eA0qHm$5UI#regKwBc9gO1gb`<*>Z8;;$ZBI5d4|?U16h zu3w`OnTC$kTBU9>ZHJzk1u)Mn=N=galYv@c*m#vW+dtQfwPD%X70oqOe&LaE zgULXxFl;>Eyi{{#94)U^^A(qQt}~>+^2qpv%rUM|8zV+CI1fAPXZm90QOB=a zzN&dM`?W{NEi(J4LTzj}Zj$|T?yE|Z$1Q7qci#7i_@r46)Cwa;w&XMC_z(!HC2N+g zTi$#HuI>?XtIRm2P#eR>xk4IO;0S5H0{2fI8Mn#YqYAaL-N>dq_iJ_Zde;@W-*`lP zT4p|^P#dF0F1xce&-yV#Ms`X?qSdpmiMvJz`mIOg?GhGOsErY0BXX|IOd^*bJHg^i zf13TyBjgSff?8q3xJfRKp0$$-QjL$y$(763u4~?w|JfttP7{J!VZ=ztRUZPf`-mKkb$3T9v5xZ;o{ijFBeKO-gh1wV~UMh`UFOnT} z*3WcLIcqbkCr@gs=C|*X=C7Im@<_a2vTTLg7&Xq7*x1-iqU!?re|w}nDDxjysEtu0 zhXD+JHtWZH=ya(K%hvDs&{@5F^?|!iTz!D6CeH6YG9Qw(m_ls~8_C=x7XWAd?5JC~ zY|^z}D%*ITDbY9miK95|_Nj+W25NIVY;0th&y}XX*-=Mk!?H=&b$_2n#v>*JwZgEm zkzqbocAnw7?Cl?+#v)sRQVlQQ2Sh1wV~o*~~d7tHZd)2WuOI%cv_qj<+2 z>8gukc|<-XVYWhTj2h>PY<$)b>8>27JyM=FDX0}jjq^xp?3K-%h*E!hanOIMOus)Y zC#?rhnN#TWY@GrjMLs9w9Hu z>^l@{W86r{&Q76N%9@f(rfZK|msz{MQCVg>C+?B+vRN6_3L{2xIEtF}GqWE?sygh$G&GXD;R+88&^>m^G!A3k?@ zN1 zX$&s6=ken0+q{qVdZfH1^Bh*FjZxzzvge#J=K=JZbxW6KR+*B)jx}=)zn%2Rd|T3D z3biq8JVQQuE}ZiKS^`}M(0v{mpEVh%6^4zCjP$IxYsUe!WVjBX`#mx~XEIPL3>zC6 za~(iShU;r?z$4@HCIhv?u(6Rb*O8}WxW42DJu<#vGEgfF8ygwsL#6rknm)Rf3|Fn$ zA&-oAOa^L&VPhl1e5C9=!&PZ^*dybMCIhv?u(6S0K2Ua^;i@y6^2m7CWS~|UHa0TM z=gH19TvcWrkBo}UcSxZ&MvQdob>2?)NlrU-s!3@e;XZ51lJ z!reVWzGgyDD~uSuLtKZ1dw7KWxd}n7Fk)4MD*w|Aq zo)xKf9JVh#>e%(NNlWeF>7&DaJW{GA1+~Jc@xxMn^W9ee?Na_v9vkw%A@%>)$nr4FRv0zTBgJ*3w690XUz-%v3Zuq(q_~ci_VY;j zmPtXaFlwAfitA`;e~*;EF)64OMve1GaUCxm;F0ooGUs81+88yG;_IBGE$s-8m>6~>J7iCL6x+ELF{l;BjPr>(sQGl~GLM*_ni$jyW5#*JxQ}j^d&K2&w z_uTucobH}|wC?JC<|vQMUrAbAp*BX0mrH%Com~TMly%mxnROcCXpfLz%j|81+88y` z?0IJ)jjM%gIMHb#uzZ&JGX7%_4#Z)Y3abO~NIIM;_y)+6L!W%k1gwJ~a($ClvwYF*^23A5HC z^WV&hp;j0%dT$8}o415@9wGlOGqx3KW7O#V9xZfj3F|#l{==l8Rv0zTBc-t=@WJpu z`uU8M{nyC!b1C;L!|8g$47R36 zf0I7{?~-W`nZ6?Z{+}w-KVKR2-zii73OSb`{r<0(>BpB#9|JP=%2bwq|BsRK|Bop9 zFA4eE<^QL1GWLK>efF5}i>3Vk!g)>QfAu@FZqo;O$9cSz|0OTq zutIH&8t1Vk?%RCga*?YB$nhST|1D{8h1wV~dT)uYYh@ceLVho^w-st*)abp9?CaVR zPw+@leo{~yqsDopxIU9k^hoi^{NoC>F=F)oOmY=oPVxu|$n1v|YGc&Mk;>eM5axuR zdrNS2|8cTMW{adH6l!D4IG>}V{hB|OPVtCoH8H3a#*Fic*+0$BG`%mK>JcM5rK}BV zW6U_8m;;&*BR=906EZQV6~>J7iCNTqxPO{QjAdd_D~uWE6LVm5(R`yvjI?N#7Y(&B zW}HvVLCvSLa~?5mCI+>_m~kF4`%W|$%}@7;X*V&b6~>J7iAgsf?w{ci6O~yz3bnD_ zNNu1qRLXq(H(_dOb||S2wBsW?eSp-XUF5pvc&0~U+$5q_7&bN%uWAZ2H_c_|P7*hK zNaR@_kqL&haNr@}e#)xsQ#Ky6otfafL!#N%y zohAge!idp3#C0bBT#t}06M|Y{#ONL3I+1^#M@Y8`LCt^x5`x|#uJickdxZ3u5Y!4I zM(+^UY5WU3LV8UIYUwqd5cCdloyEVu)_sXb;-F;36>4L|I9KA#o_VC} zTK6W8kRcO-T4BWK9pc(E^By6?CIq#@h|xR5wP#-H5t1??s1-(x-XX3%^D>VR$Aq9( z7%_T>xc1D;JwirI2x^59qj!jF&%DATWYmP9Rv0mQhq(64D?LKSObBX)5uWhcvzu~vo1!BjgYyn+RHcCI(I#kMVaPPOjmnk?jkvHg)->67%`Gbx8$>arfc+O zmd&cqe~m}Tt|kO!$aNEf-XXGY#&6nj0DrAV$ZjSCWx#b4f;kmAqQ(E*M`TPsnZ6|}u8TapcncCz$z|(U5f5$n1%O|Cf zu{h-ay6^WlWTgBbx!@1w|6Shut$E44UVYc+$#ott%z%8K@P8jg5@Cn!9AAxl40l<6|Bfd&+#{3S|s>QO2Mb$;e5~@L4}I zn`&mgtBLUS9wB?lEM=&96M|uLn-FSd&H9ZfSEl?gC7LEudYhRtpIYQAVEP4}lagQcro&CqW4$T&deE2F`i42+oDtjI;uG-TG#bj`-h zven0(;MxjY^))`>5xGcWWCVBE|k4y*3ZmG^Qz3+ z=CeSb_6Rx5grE%mZbI-<*;me<^W$ah@)he`=YVea2szw@pbY(PLeM+Jbq44TkC4SO z%OQo@7%}pFyt6LU`Jn7n%Z`#B&0Tw?>w52<9+4Rdiz}3Y-^GZLcWCbV#`1kIv8?%2 z?PiaVB_;%A*mo0xjga)Ltzbv{APGq?GY?Lms4aSgEHxo0gT9*(Y=nGpzufUHvvlFI z=F_xyd4w!8At*z>n-FY-d~nB{3E6j9^Fh z$O;pJGTgff!A6ML`D=pkeM|(U|I8F(|sNx zN170nq25ghHbTsy(azUok*jZ&`#nOAmRSxdl!4w&2zu|DuB-fuTvz!Y@Q6G{0^$l~ zsCN^IIr%iWcqd<&(=Xmp$GUgT2R%YonGlq*-c1NLLekAI9JhCD21gz1-ZdZc2su_} zIjm3yVi%)E`iIzA5A@Xc=u+#KE?t{;HKaJub!GfvkIXfa6IUpMoQVLy`atd znO?CCD_5so#~Y7$giM+clykk$BuAWt~YutuSizPRYoZ^~6k(e~U-TdXs`OqMAv; z=9F)=_#cvM|NF`G^^1c3^Q7G0BGcwoA^#py_WvU(^RJV-|G$!Q|E)5O$@H$2`A?GR zcT(oxEYlt`y}c;pUnk}MUrD?FTV)!Ty8jhv_kXHP|F$gXzgMP_{X+gPO56VvWekAd zO1=L(W$Kr*|63W!km*-a?!Rqu(7!+?wNa`7eCLeImq`ErXJ6PT|C>$q{hL&8_C|9v zr2f#Kt+M17=@V9HgLVjm^kPPzutE$zv=?;g6IPzm1HF)hKIn%5kRHG`ngK<~@z6rq(0ce3%2to)f(9j0$5QYduAqH`W;y?_^nR{W zEQA9iFbZQZ4!%u-9|F(XlR3W2tx#-5Q8|_kbn;8gf8fY z9_WQ6^g%xiz#t64Fr>hN5g3IrP+J6_FteO~?g>B(v_cR=!PEXg(URD01Uzq3_}VW7y-3i z@PQu!&;qRxgb-Mup$*z03=xPz3<5G!>%~@lIfSoT#KgJzb|-$J55E+bXItO4`I{bY ze!rKSN$7_`NPz<*;Co*PKnt`&2sE@oJA@$uQRtJuwSF{!KN-TG4Kp{tJZAkmh`+J$ zcOzoR7aNuT(+K`ND(W~lf0@8vcVfL8f76S<>%)HuZ(FTG zZC6L+KiPCwE9<&AH@mo5=)oJ4cymAAGKja1;2r9HakC%qYQcL#c)!L6+wtKDJ{rTv zR4rcIU&lp141YCbLU?S;x}|k{C~*1^EjvKdw=|&ll^2nIay|s z$z+l<3!=D8zzsL%unCGd0c25>2{0haGGWJ!M8pLY2?&ZJOaKKJbb@PJYf0DJ+xC{U zx3_ysy0>;AZEbs(>hJyfBm;8>#*^Ru{`dV3kMrbY`@C{aa?VL|&gZ;;5PlFM z#V|(y*oe_4jFzJqRWSP3{{QKc=iU4}$#;Zz@^2^J7T(UirBW?`%$xByOK)V~P~RvY z%NCW+MV4U z-(A|3q3ZF4r;<+zPvv(eb_zT7YRBiENKpOw%;U=Ag{`Tr^49#8#1>&o{;}j^@?(WZ zQ;#Z-79Ytx5`U!haQ0#K;qvC(=EP=UbN-Y1Qc9{o6##^u+zNF?iO&D8EH5le zE)$mJma0ojcW3U7-(940|I2sfmn4>y@66sAzq7PByI5UZUX)vuSR^dUcPG2$?!v;< zLSDuhI>b2!-a@QoT5w6K!oxEDUx^PwMD&?x;=*;N& z=+c$hE7dE@SLCipTp?VMzdU)le0kxr)Md(L#Y@?x`BBMH@~Fbd)JSDyF`kLXbQkUYNNseqm`uc7!^jd_nGl#0BZ|~nZ|fyDVzi7T3`Tzb}{i1s2zv`(H#?dc5s%9@kPUqK=neg%@=~ZsQ@43c&Las2?(l?|`W8k~ypsGM9%yDge(zAi6ko54mS< z^0*1p;{$*GKcW+II}d?W0G@|Hge<3F&|me3-pS*pj?*kNFX@ELqb8#aQf+q9&8=aX zIemCG4v)NY}x5jyz&pU!jAzh9Fd+kU0y{F+B~ zGP`*u6d81Lhsx~V=Rld7L(R3Bujyniq8u-SR9Bs(8tddxnU&Kx@afbZZ2r1V%wiq` zskAzefwjbF)^&Y4F?aG9NY&MO46G$av%1Uc#4O=4kSeV67+6b;=5U8&Ix%zg_;OL+_w8I-uS#Apt0eM={18IOTf)1Ak_ zT4FQ@xW26uvw|9pGDt<%NjG<>m;uYG=HT-yH7ECcM<=s~a=Z+RT!}kW=742&l4cL# zyE-u`9s{ZBIw^5$iP0>ppVEn0$zveZUFR{dmKe>l`e~h*RXhfY3`*QuVl>O@XLMp# z^B73A*Le)AB}TKXzNZtjhQ~mvzRqJ{Eisy9^|LxLYk3S58I-uS#Aue)_jO{{@fb*D z-gykHB}TKXeoiN512x*jAeCMxom_m}8tOE>enzK69JDFdoUQh_PUO8j5>l-((#0Jr z5(h$5BDGs`O=LkQ@;-`@85Fs0?og4HeeRe_?S}mGIw|+_6i5}$NH@2J6wSKf3pyze z@DxZ@&3Fo|Aw{!l_@YkAMxFwxt{G2(HKb_P3}4boN%IsaGU(>kkWyJO4E)sm1KRh$ zng%xwN9Y)Uu{3=18mnP04IkcXF>IsZJQ|MQL;LP&`11yfVJi)-H1tif8YZu|7=E_S zVz`$EKMhBz|Nlf9eoDvvucyI8=K$P3o{lG&LB|u&zW-_CtcE|(zW+yQXrbYKI`;oo z+W-GI+V8)Eh9)}pAE%a@AO88V@wET{kIM$^|Br2E(NtyszjR^~?Z;9)^q)}%Uf=_M z5CCdhMkU;sv70%l+VR$v1nLC?^RaR+b$ z7jOd!cz_JNzz6&w0O~+J2!ar30AbJwBA^LGK@2FM8MJ^_&<2E4gaH_ViJ)g_#<&Go zfenbj4jjMw2X3zp!33`TY7-#Gu zngU<|MqmPFU;$QugF%cq7{rK!L5w&U#E64Ij5rv?h=W0lI2go;gF%ck@B$z3g8;z6 zAVwSvV#L89MjQ-c#K9m&91LQ_!5~H)3}VE=AoL7zIEXO@6wnM>Kr3hif`>2wBQOCo zumCHt0TI}N12};TxPb&bKn7mm1AY(yb)X&uL5QGd*nsgcXao_^1fn1Y6wnM>Kr3hi z!+_9E7=RI&fEieT71)3X?7#t>zy;hu0v;d(FYpoc4E-1nfI3hQf*=GMKo~TF2xtOP z5CaNm1}&f!v;o#h2*3c0zy!>|0<6FWL|_LF-~=v$o}nA#67T>Sc!3Z2K>*Z&dJqI5 z&;Y`q5kx=}h=LeUKr?6ot$=kA0x$q0Faa~L04u=3AM^}GjN5?&IDreefdo+W-iV_2 zMjZBG^Z`EzfI5Jp_r@Ryfd&u;jUWP=KorD)0-8Y!Xa#LR=phWiNYFDhVcZNXzzS?Y z1a{y6PT&G=AOR1Mffx9I9|S-hs0Tq10u3Mx8bJg!fhdRp1vG;ef}UY3#@hhfP6)sN zjKBoUzyhqm21H;74&VeX;06-#02z3J5BNa<)PZ^s1R>A>!k`gE2zrK17>|M&P(U+i z0j+@b5&|#)BQOCoumCH-K^{gC*ntB$feW~S1aOdt5vA>oUf=_M5CAA`Z$xQ(W00U{ z7{Yi12!lot0ZkwZVn6}SparyoHXxiN48RCXzzi(F3UGJ_ZDk2Nz~LRVjU`;b4J6$)Aou$L3`R>5h!R++baSE?P+^OprAc%tq2sfr>zx%g7)-2oJh&db@U&-6Nw-Q zfd&u;jX>C?78bAyP zorD!McHTgb0LCst1QG~}fmUEX zK{$X6>Olmw0MjYL4m_X^G=gTpj6~mC$+zUU3U8*~RNgGUk$EHjM(J4gn0l<7&*c+& zA)oI{_Q`#P*Hf=6uNPm-ycU10bToTZJz9P>_iEx*;nn;r$yel83NNQ#R%lOt=B4;c zr6buR>XGu{+~LGw;c))N3cyih!pITWY;`PqZ&!SaFJfy4oU_UI>ba<0&u z>Q!i;erA7se`#NKpSrL7eD3+g^TPA_y~(}u-U8pRUwk(6Z2Z~Mp6ni#_Uz}LNjxJw zlYct-wET2ocWSq?ySS@smrVQiQ%@;R6?bNK#&?!>WOt}L%Gq2tkrlG}?aA%(_QI2? zCzU6Q+cMkY+m1hxdO~@kNPG9=kC(P)x2jvqTXHq--%mayKh(P^u}RpJe=zx={9u9h z@GF^OI+Kp4OB=Hr)s5u`at|aP5FW_ipS)kbzi?mbKIOjRy_tLC_m=L--lN`A-jLo9 z-%whgU9YY$ugk4VtP|Gd*CyA>YYS^qYm_y`)tS}t)umP0>K^{YN?~O_l}yRBk3ZF; z^b}Wgt&mp~mZxYhe{or6S$tV(X_of$m+#Kqow!@LJAYS__VgE)q?Ra4ig#wtv9G_Q zySy;BFtJcrm|u`wATKD)Pt8~67n7M}JXz|>cBx(EdAWIsdBVK>9mzZ7I|{d_ZdYzE z&dtn?&n?}Sy)AaziCZ(b#&0dn$<9&dlxOE=CuR$?^Rtq(xYRghTybn>YKf&m;?M;_^kgixL+J7v(QZ zUMOE!7?B#Gj3{1^xgdT)>HO^Z>iOm2>EZF=rSr1qsppl4<%T7O3B&Sj$u_yI(3)yh zT8k~2mUv64Ioqr@mzA87Py{6(OUC3_A)1OR(PC5A|G~b0A&~cX_{+YWFX0n>d2iAy zdkb<(R^*~5vODKaxCM9Km2}Cjf-~h*oJB{*5qFgAS$oW06fi2)_|8ML3GymzLy1(tqI=_-+4EXg5QfYS5&8^{A63y?LU(rc;7q9=4x z9_J~LD#G&=SVM|t5iRPZJi${S6@lj|u!a=PBKj?zlqadpD1%g>oumToB+kltt{o3p zL<8*Rfqe)o2N7sakoRq!%q-7@R7strO6s4GiDk5!sonLU$^3Vn%pH{AWsvHslM;8R z>8$LS18a%VtQr18C*~<01F5z;kAbzsXjTp1)rr}~W1z^O z#H}Spvu^mFPRwo|1F48RkAbzsXjTs2*NJ(W$3Uvw&SPLLF`Bi*4|HOl;W1ETP~z4S zqgg%tP$y;&kAYMnp2xsiVl?ZAAL+zAM~y}qq=N0Fn>$p@fMr#?4cDB(?#DWrdnw1u zAQf;YCGJp}1C~|oM*Jr_G0*cDNHyGf46G$av#kD9CuSdyfmFwx$G}=*G|TEqotXVR z22v?^9s_HM(JZSaotR!81F1g;kAbzsXqMHV>BQuC45WhYJOB$3T%m ziCasIW?B7(PRv0b1F3X8kAbzsXqMGq>cqT2jYb)yLhhuCJ5ZTaaVkSp7Ab>QKY zztYJ(%rhaCD<`R3IXP73nf1e1?Y3N#`D>lbBb4A}kcyX+5_hP~0qY0tw){6bF)#5L zC^9HWtR3x3pz*=H7>xbXz#Js{|AXP@^F|d}H%KBm8PJW&7_aCqr zX3=o!e(JwZLx9c$n4@z5Ty>wt@NL@nzmx_u4f|;S{}nWxpnd;KX!wx!|8JxH|L4(g zoc8_Cq2bT8?|&-|tu%a=_Ww_&{r}&g{r@W#QmsE44lb}5uBG9-r~yDje+__^!V_+>Yn$^%>bYkA(F_5ai^B7o5jOJs?Uv*;M<}pxYP~z4Sqghrz)QNeA z$3Utw&tqUMF`8xdZ#psW@)$^k<#`OOB}TKX{#_^LQ#=MzZFwF8Yl+b;tN+l6`3yB0 zWspk0lWr~!sr=;g7LC%Jw`jEHyhZ=1lldOyco?Ko@T7}d>6kOr8OG?mMWZxFCI6RB z$Y*&7q+0Mi1nP%qmec>%33;EIlo_OA@T8ktISbF(Q-U>}l~HfDQQGqs{f|z{=XeUF za_~F_){vq(Z_z(>QjYT!C^G2g>ZjnmMf6wQZhxecQs60&%Fgo?SVM}YFVn|5DPN#A zqYP3Jc%A}lcvqkP^o_nuqc#2i*fjq6gxym4@3abz2VesGA|*&%stHfyPA>Y*jrxTC zf7&;-pp)?>o&l*OJkNlYjQHtiR2@0p|8JD$J#Em*_%hFcB7;tDC1d2!8JZ1`Q77Xo z)UJm?sya_n)p=5X;nej1GwFo<3lD)*XP$>Z{SZz6KeJBAS9u7eI`cdP;)mf+?*BJx z;6h{33HetZ0;$eC4}l2z9(z=boq&@^3r@iVV8A`XQSBe|DXa6Vz~&L6Pg? z4%IcG@^v5m;!YQ#;$QbiYx@5=bTYriGa;2dC#mc?IaFrlb2iV^eBIY(I(0I?O$lBG zsR%kLafix0)2C>Z_Upb&C+6RI45TXPJO=K!2W zH30u`D;={>LkkV>&!J=XC(|+eljxXz8k*>LfOi+uvHdjsev!rSFb&E~i{ZUnEQU$+ z{l7%#{lA9>9}Tb4x&J57@ROAm!#Wx~H0)KahRafP4#FObVKEJihPAPO{pI!a{eM%> zfbah&s{Q}*%xjr7n(qd(&aC+!pEXcqP~z4Sqxo*&)rt8&kAYMqp2xsiVl>|kd^#~d z;4zTu!t)qdON{2bfnO))N7QJPK`Pl!y17He3|PNtzQ>Q&^jQq(Wd4|PybMzPc9QD1 zlS5?=Sifk$$Jgn^{Dj9qs^89IU@bA4^-H}@%ujg?r26eV2G$azS-%8zVovfHNN3*S zF|d{x&G-0_PE3i%K&s!)V_+>Ynq{>?C+25728s+y+*)EZ%W7CB=I1;HQki%j18a%V zEUS$=F~8t3kSfFT7+6b;W?7Bs#QcgHZDNp0wv$e7~U=1mnMf3ulln;3dq{{6)1=f(FSwu(Zr2LJiK&sr%Q(z4#nnmhoPIw}9jQy`Uu=P9s;6wM-fiB8IY@f1ik z;du(IAw{!@w(F$)549O(P~^I}mEZZ#-f&lbIG|(U&iwvf`Qbow{9Rlp^CO-KsgOD8 z<_?uv`C!j8wVQ5D=185)k15B?Ak{S|CGJp}r;igDrD}gT7^M?~A7i}?id>0XON?gC zaH&p=z+)g)HYX)+Eisx^!(}=#1|9=N1|@DSF?`+dEBfBQk%k}*dHU{uEq(X@D((AU zu+(Ds=iL^=(=^0s_}X0-LpKc{FR>W*&@gPY)o}by`W=9VztZ>qZ8Qw0;q&y}e=ZGw z>$Vs+U1l|SXn2Xf_m8FFhxEOFH4QErUZn5+V`%sueeYjL-~azf-}!gba0$Nu({`?- z{fY6DsQ>>>D`}eg|F&N!*y6(kTy%77WD`>Ek#4(tiz_V9A9K=Gk_)(j1Ux_nUf?*H zW|9-QIP}Abgzlvhx|d4mUMit`sf6yO61ta4=w2$Jd#Qx(r4qWAO6XoHp?j%>?xhmC zmrCefDxrI+gzlvhx|d2y$0PJ|bP@tF=-CF3AD~7+1CZMlLGl70h#qeiq!>^@ooBcp z)q^1LbSi?_$R}E+QOOHjo@POe@GIRkDoLRAmmeT1SVhx7GMQ7AObsZ0vB)t33z}Eyub$npbpf7AP9j5 z5C)APf~VL7q96to&;nXP8(`ZB0T_T0n1BUXfenbj4jjMw2X3zp!K^qtbSd0*W0T_V^n1KaYfenbj4jjMb{(X5HmTT3#~)zvqt zlSXN&CfvXSWZ(rp;0FOv2NX18#!G1dRv-d9Z~!N80XL996M|bnD`*22%vUS00TI}N z12}<^BE`xKt4DeWG=MN@1QE~#q96vEyC~CxU@!0iKL~(2P!ED21R{7wW@Ng68%V$d zWZ(rp;0GoO5-TgmmM&_ck+*;=D=UvyTp7ldR$N(Gc`#&|@NgThY~l;DfGdr-QpA-} zex(6d8gQi@SH}32MqDZ2N(Zh~_?0GHISfHITEW<=tCAS4TqGY|A&#uH*GHG#Jqww+ z@~Ea0YiN#v7*Ig4omvWk1`q~~AObACm=<6IBCrDoZ~_-_0||J547|Vx{QP42OU&Hj z-ol@mx$Eo9+`~s@8g+zvf5aT7<3wZncg$hiPWb!&!5lGA*JBYJLYlDj`2~j;;N0`Z zk?tP%>GdepD3!v%L#H65**XpHW+Iv<%)Nxa;|{!~i4X{bC=fac126$A5IHfLE6RzzrFGB>xw+$Ux*roUG{rGmHA{Wl@v3BLtJXs}I(J~(NHlis zq>Sx^@zhiF#_QdMN!U&6!=9(v_?0cAcl23PZ=i&bH{#qy1j(b z(@R0=98CuZGWrY?ixJK2AT`xV#JUdAOimMq7;P8ay@V-E8wYRf2)zz{gdz4az0Law zshu_$VwyG>=95S9D!qm+F;SO(ox)k3?$S$yVsFqC^%2rZz}}*84`KDZP4hlR1dkK8 z*gG^G?S$M%_)ie-?eEfL^%Akzr|5p|1UpWcfwkw;nAxD0Z~^lv!sz)7-gkr-H1!ek z38JO%J<2#v_|u=oGbN&)_o;cHfZ(am(JTSM^l=*7UZ7Vn_IY|(&lm7aiH43Z(RH-8 zp^p`Wbb_b@q0TSUEa@WL$B72O*jH#OfsfWhl7&`5lAYE*^fdl~w}pk)UbMQQHy3Sn z{W1CkXkoPJ^>h)DK3XaJj}N2GaVKqr4U9Iz(JrF7;{tjF8$p}D6Cg$#W?yU`z5Od6 z3XND=Oh5#75X3SP1I@Ic(A!}FleCv`#RAsxsq(wIcN6alyhechPJt=}{IGf<()ZRIUv6yxkKJj$fmMNwzxgBJ-)s4WcEq*$?~?`w!}7JTmFgU6Y>*< z$5T{0ptv=&HNLg9CA&r4QhqG=SmH6^vHYXSN99KgkE9+^9w|O7KU~>I;l|XB%8kVvGB?C;C{4~zRwti1Q-E-NeqwT> zJh3n#H9?tB9G@8gc#G9@0SsLS;3S;`K(&{}oR|;=F>g!SWLv?S zvMSc1C1Z(OO6IItHJ42}Q^F*e^2Vf5HWmyigJLKO86i&J@TWB2^2^Dz|Nnzj<@-PH z|9`T~e+j4_M|io;FC#{Jq?gXaf?r0U#I5C*5zX(JSLno;cnlO7l(@CTXnxSVQYXgD zW1z^O#H}Sp^NZ$aofr#`fg*zvx0V>qPnuWh#Mr3mD1#!`%^fOcz|V`?-42>=idXAo zij?N1GDgUR5_hP~0Y5Kl_d8sp6JzHwP-IZz))J%ndGT7E7zdAmB7+jQmKe>?i`VJI zIC%^d8I-uS#AtRsjM0g4@favFC~<3v(JZU<{fYk#bpWoL$3T%miCasIW?5BrVk8~| zMfy;N7+6b;W?3Dp6XW4AP-IZz))J#xR>$eYc&X_qgCf_(9V+I`?uXL{N>_G2r~~`z zjMvHZ^Gql*=;jWUd1n2f?WQq`eCw8Oo+!okwJ-DON?gyaDz@v z1CN0sgA%uv7|r_OMxB^2kAWhC61SEZ&H7=APD~?@fg*zvx0V>q`r#&>m?mmE%Am+~ zbBBrldW%lXFdhR%1|@DSF`8v{rcTUoYC6iG$aQmZsNpB~#KfcdJgyg**j{47#~Bq*VIyotc-lj=f9g{+~v} zA8w~({AuvhF#t!Y@Bc&^eoFoR*V7==@G|xNA4kKFsPF%sldT4U{(qMG{*R*J>(uwZ zn}(05-~ZDzwA1h&9sB>kJ^p`3a@?^S===Y5t7s0;-#PmK-=;GkFXHnNiVV8B`twoS zTXC*V%EdediVV8BHKb^IE8eb?(oQW$85Fs0ZVk)r=?~%PtvFWGTk#H^%s8b<42oPQ z7rp#OenM|W?P5DmCu1bffFgrVZY5*r-ijkNOKq1<#weZvMFySRO2){+%gE^-ks~#m z)}&6xrPQv6L6Pg?>aTt@y%p!{gj~i$pva($Tj`~C_JrVz81D)=@&30&!PRvz228s+y+*)EZ@9D)lF<0{#C^9H*7{En2tPa?O9n==|Ipy9~egs{BpNkCvqHx z$qb5IH+QJW%Ev53YM0a%Iw|9M3KSW1b8AS^ET}y?DHC`K6d81LYe>;7rzxG3i97|0 z47#~Bq-Yk?l{zWc^AspD=;qdtqFG8;>7-2JDNtn4&8;CtvyiUVNtw)3pva(`TSJOw z8C|23asy9+B7<&j4Jn#MbgfRx6l%GNL6Pg?4wZ6d5!HS+)buM~rxSS-g~<$xTsL>9 z$e|X|^*Sk2c?uL6baQJ+(JZ1HbW(2SDNtn4&8;CtvxwfKlhVmkpva(`TSJOw5xrL@ zCBajm$e^2BLyBe*y-z1)8c%^DgKlmODVjy}ew~!*JOzpjy16x^Xco~2bW&#U6eu$2 z=GKs+SwuJLq|Bt2BMeftdD6*E(s!vU{evna*OAk~^DsqQ?9j|VI1``hWik1jSF9>3UX7)Ia!k5lcxTWRS6B@{rSJXgX^?4nna=+= zj)ou6vHxpmaMSSID68S}=@vtA8l6{=2HRMR;SkmT>!9K5RQqpH7ajjk!_DV!ci%|I z|97pXXWjqTcL&>;`y#(2$L_@u^?T^}{~q@qSI9jHy#T!QXYf*A0N;rRSXgd@1%~}-){ACa(QFjWn$c_o&4$rzJ(_Jqvko-df@bN!+SAX>k7lE2wgt`l&};zB z`p|3}nvJ1Z3z}_0vyEsrh-M>b)`@0Y(JURBd%D>GnvJ2^Ry6BJvvp|Jk7k7v)U1ML zt!OriW+P}egl3!2tP9Pyp;cEY%`j*q1hOkZ9=mR zXqL{d#KLYg>+mF*gN~6#v-IL9r|x9|sdpm_g!|Ggfa+5L+4Bes_&c_+fN*Ln3;0ev z!2&HOo}^uHbR1*A-LZoOVx2o#K8n?g0 z0+udC2-r_F3xPoAa3RpjE)W7ueItZGGd*#qbv%v=txk%ErXqyOSs^;BGYd%+6Eae} zA>rgP7Gmr^I*jl1on_n^6}Ccl+}VRWn{a0X?kwQWXJ(QYcSa?ykOOy?ac48`Y{Z=n zxO4RlkGDJSjEY?$C+_UUoh`Vt33oQ)&egXz-Pw;jqq0}Xg**FjXDjY(#+^;LbM*~N zcMjmrr~npn5-ujJu-yKb0HT!l3u0*luC~bHPItO0eWPpksj&pe`WbPBtnl2 zqf%WsLbvt5j{K%3+=Tjdv}U23s;?TqDTpubko3vz6Cd-T3)yXHw|2HTX7R==!Ly>lWWp|IpU+6LP5+C zl(`rT}glI7jMmQwwgY z!%YL{NIh<9#ZC3NY2X|Q;-)s-6vRyf=ST=Qp|D^$gqsG=kp|p^a)aRp+%#~GgmDv! z5QbUjeRSad>BZ93iN&3+)4p*ex;iA#)tZ^-#`g{{$Y@+H<7rG>3ALJM1?L@T_;CR*1u+B_EsjmG06&@T+z z)^oOFp@g%a7|QlFwxV@2T5m$@jcDD2)}v@$MC&GP>t{`%gN`TW&tE%%^|WmWnP}S( zs-tZKtzVy{i@iH&^>}^aYLa2qd2q8ah5kh9#B82KY=#6cmxgQE|KZILf zq{n)W&^j{x3e79p7=(nr*JvHt`4+X@@iq%7r{1B5wYLZ%!zt=Kcc{8fpn2@3{&Us& zGT_?a@r%!Kt)I4v=)qKZDeaY>c9^4wa8PyS+Te*+!K}FLXA_3@L?j($TX2Dl?$|Csu?N-5OZVw1P zLnq-mF|`_jO{I0b`vK~vNu6h~$utU1uWXw!=}&1lnyHbu1QLYqOf*?>0v)TYxdx)t}}hA|T=FTYGpkML5{BmC6#2ro4~ z!cR?)uv60`{M7UaBQ-t3N==UlQPU#=r)JPIb!TbOG|-?30?kj%QhH&9*hFTcJbGnm zQZ95K=66%5H=jadBhev~zW|`}M-TF&LAvc+4TkBqAT^bsEb3BpCaHmLi11hR%ynKg zl%ObsJ4=s2sDZjV9Tw=1F?wo7db-u;*8hyCClq~lx4RG11NP7}q=yfFj+j%Jxc~R2 z{p9k@pmyNj;-HQ+zt}bo}Yk?(A-LcX?NCS7Mj2EB{nxXO8+al(q}ol_%A0 z$tTpuPi_&m^gi10i287Ob8d5Dv#>e;5Go%QHl;Qxn~D!+9*jR&%49QYrku{D6KNrx z-TA(bD=NFQxWU@={Dpczb3b*IyCg&z@6K>1jnwyiDBg`q!%FRm5 ziq966v_(XX^VSH-5GQK!2GcG=^G&Vanr7CK%BhwM@D2>UEQOA_86Ryi&o4i)Ow!o_g zYAXk7s|IQ-25S2PlrPC$lDI^;B!6-8V)_3*#4-Mr22*BN7)3JpMm%o^W1% zSaO&=tk9NfQ`(BHnbvq~sU_Q@wv?N5&535AIjx~He?#&4W&@!$p2h05fp;?`eeP#kN-~wWjwvIf;qrd7t@HtqlV6#D+Jt{w3Gzw2T4L1q*G{*MyE z6ViNi+C3;GY`Yh=gl+dV!~0v{11KkK+lUV)wlqHc*fOXnY9QqQ`q(piVE8{ zqpGm&VJmzDb%kw@qOh>-F;o_|Z9!>a+g8*TwmpvG!nP++UD&n_<%MleqQ0Zj zvZyd@+kq0pwwgY2^@eTFq2RD> zFDee(o=3@H+dkABw(XC>UIpe*cGz|Rb%$*SQFz#P2$hFzFQD|W?M2icwjD3JMV0UPT3B+fkGtw!MZL#J1N_gxJ=HD#W%t$`IR*p$@U_4U{3a zy@@)+wzp7-*!DIm5!>EDDPr5Zs6}l16p9h|PsXQFl-TweR3)~(hqA=B&!R4|?R^v` zwtWtjiEYPGn%GuAZDQN!QJmQJ1ym=teG%n}ZC^rtV%wKdpxE{mR4BIn3rZB*zKR;f zwtsDfUu%P3XYJ%S1o&?T_)Q}`VS+_7{FViN+Y0~P2EQZ1|FFaFI^g%5@cS;Ze=>gH z##KL*;Ez1;$1?nh7yi@-Px@gg0Do2oe_juN5rn@C!Cy7NUx(pu8sTpv@OMq{gDCuc z4E{lZe{6<-YJsO(VYv5h`}r?0_v! z*y@69Za7SW=Xv088J_Qj7x>@^KfEviFRFtV*TYMKussCh4RB-_j%tLLM&M;l@bW0U zA_lKi;AoaUGZ|M2bisDD0bXN-*P7sUW;n(IJFHN(!LcG7XNTh*aDo#~biwQ0aFPTk zd*BT+ywMA%_~1=`I5hxou7jQRFcE~)LU4KmoDqh%G{Tt?II9WHj>0)?`lo)aC<$>2H}nn+}Qx1 z3d3EEaCZbg-2|VB!aXsvf7y6eI8IkRXMlT+@Ocy5XNLPNu-6K6Hh4gU2kr2X1HRyd zFS_7iH#{Q2mpt%g8NT9$ulnFoKYT3!U$29G^)MfV$3pOp2KZ(ezSRidj=*=C;JZ=y zsTkQm8J`wT(p8@^!1s*svnKey8Ggy|_+=OTiW~lm1i$Km z|0=_;dEwW6@Ed;kZvpttI(VWU7K89xA^7bE`0ru(oksW{5%}FE_`N9nK09@0GJYV? z1=|k|@JB}YV-x&|8UEA)Pg-Hg27e~PpWERt9PpP;_$wFuwHy9Mg1_~^-^uU;FZ{g^ z{=pCb7=VAOgQx0YISBt8f`4g%e+|PA8{yv~@b69VA1wATZ8!w7|JC>}1FrgSBm5r| z{HGayWPu-BN$U(+=h6j1ga$h_I-to3%`RwhL#qUB9w^Gt?u8B?bo!wy0Nr&^s)wE+ zlta+l0DWQTZ-jvetZRbxQ5Y23$&i7pPREP}Bd!XYV51pEEU?K6qc#{5p<;*44%p&^ ztuEN+hQlOyo(B$>;rU*8fe()G!wUoOqB?kSJ-j3c+e0wk07r)5s782c1YXtzFOR}2 zV(>}@jutx3OvY6Px?sE72(K~0Yt8UF3mjvG9X6op`7GcJ}S~+r_t1Z^>`v-%Pw&ek1!v z{EgzV)G_&3KA*^!`?7uUzT)et*X7qcUMn5V(D&@ZtI1b|S97nZuasWSysW%jcqvKW zw{u6-Bc;O``nFwoG5MnKV(ta?h0>wSA%(tkCl3k-a|cf3QaL%7?@jcU_h05Vd zpS&;se1g7nXZObU7N1K!CqI{eHt}qEPj*jyPm#WR3(w@9R_U8}X1B7tb61(pC=h?D zxHGj=-kIN#*ip`AvvE3`Kx(_ZJ^y5a&LxoD7T;EUB1LBs$UmNVyu39_=MgAwNo|q0 zZTHXKUW?s(AfioOfIdaOB*vA zm5qf5k`D+E^ekfW*pjDw~R@iao3+w?d`!24t2i%L~hrbk=~}QgvzR?#$iF-G#f7 zcL{gpmZ(cgcV_NX?kp@$E*2K&7O9I$-5EM>Kw)8W;r0db1;zQP`7)g`AdxJ0WxL{Z zzJSy`nZD;I?kL}$y*++=ac*j^JU4$^;+VzUY}lQV^x zIr`3Dnvt2I%qUDxP8aA~zdEgy$RrdxXF#%3=*-=$(isCXQ?4K`SFSIWjaehd|YvCYOGA>2uP^q zjx7BaP#lvQBai8z^8;kARp^(1mFU+1 z<-)><}(ghIO`;TeI|AK#|S@Ah+b{mw+;z z10b#x>30B`&H#{zmg!f3IQ9QeMP&L7AVIzVv*9@X3Xp1$8}gx(!AwvI7U=uGP@k() z>q>!4K%rj%l77LTqq6{%ycs$VKtWE@xBr|+^^~NHq(}w&{x7(5F4fiJl%07;!cnI4 z0L1M@F(t}$7J!7UY|UEZbPj-&MYiP42|5En))c4j{weDJpEo4vn}3#i{}*Wyzh=%W zo|&c&wj<1!cYgeTYx+Zefgb_EK7P1z3!^hdYX0i@HAeOxU29}tBCUL!>PgY~B0Bz| zoBj>@OWV^PI)Z!A%I@x)x|gk3xnarj)iHrLU5$IB`iOJK3G8chyTHCjTKKrk?WX!G zDYj-%8cRFr01qGQUY=Uhy&w$vpF)h;}TML#gT(DyKs@1UtcP3ZHE{LI}${{7}GjsJhrqD&lZ2Q@&?$v90=JnjUVs+1wt1>1ilt}I*N?YS6ZjiyI{!$w3G8pAg<;&uT}9J~GrJD@OIy=!=4PwbELpH* zVfWcn_;~gHLxuf=ZWriOiwMKGojcSNn$u2tI((*{9rc7xR5OJLY!Z*cIQ0S~mr}>{ z6|ATF*wg=|O=$;nu%#6-3EOIIWZE$!QN0!uvb7o>$@ z+|L~;}*JwO+Rd@ID`72f|)x>?Y zV^Cawd}aOO;f*WY05__MqvU~q^eSSFR*74^a>??=d<`Sqc02A>U5DD7{=Y)|MdhuH7Kq>zJCG{5#$j8Ze_ebj&2BmWjS1VVT3YhkGZzJ(r#1?P+89H|ge^CaAL~Pd^j$(e6Pp{jrtlsor?j ze@ppdx0+_G<}Xc0<c@L@(!W8u0{ae6$2e6UBNtG5H%kr*XVn$gxTW36l`~dMKWE^xI)UHi zfh8V@aX*7Yttl((k;9LSyUE8dZ$y;FmB_3@g?*I##?Fdg6QC%%$BTL zuynR_>|ikx=tPC^GCq|UujAJ&qqpqxbG&WkbdX+h`plVJ z+&z!pLkm_fS-WKQhO^#BAN3B3?SC4T$qe!kg&P?#jxFwdT3QEBrkQ`BSlB&(&EokR zR(Hqv?bWqHZctM7;^_&zf=}RNK7kk)8N8c5kS(QugZ|Q$k1lsFS-N!aG^PJ}pn7Nf zpa=D@sxd<=vz5-LPU8XYJT{MBy5yk8u(XT0XqY!|oH}j%vIw^m~gRqr`C#zbF#@V>B; zmvb##7k4SW89Q&y?;wpg(ow^n0bsNSu12?bc%u>Sz;VRPJI9(E zADZ24%Jg}a^>!zHVpu&O?8Q$Ei}ILZ+=1hjupy^u`n+)~)@Wi5e`3sV9&j0V;CLlw zarLpM|4W~qrt7;`<5gOoT-J?St26LO^`8ARu>XNV^>wn*6#^SeT50=_SqkyCTS;$; zL4W+ih@Fi~u3R{+JGroXC8Klq@*wu{OV#`K2lWSAv0kDu2TA7(J3a2CqqF~HH01YL z4C8-dG5nb70QCIWVi4*719T36%fC*?=D%Vw%%|ald#r|g?N)>NE~{bZ`Bp>29;@Mn z*;d1)L95~IUt0~c{%$t>d8Wm%m5%>!-fc0w@u9__wpk6|`m4oo`wXk$_da?&4e~*% z0dUM>82v4a;fo2YArZG4O3Z3l5wp_y|EU&1V)K@%whnf8ddg>BQVdP0I|5TsODU-IPCFJmvns zbfw1^^`9Pj%h*eCZ8c@HPRd+r-_4-Nb#T#7W+aRCx8DDM+Q^L5UtgU*@-kdijd)lm z;&y7>!=T7@al6@izHRPryZV2+(u;n=>~T|W9N3Hg5uK2E)O>_Nk?Z8HX6tCnxN=Yi zqiH~YpBb~pYWw?KIk400qdJLQe6pa(po=?HVr8TJDcf74SAq#j26d81J^+Pnh@gCO+S;#}6$e@d>AEN1u_k>PJHxGd# zgD$Rqh^8;zHl2_~JOqjiy14ownyz?H>Vz!jAy8z{#nlhd^u*h)6S9OFjxZ>4om_+r z-4k!dtU*2TH0K@7>LlJpSsn&Ou8WJro^yOI>R&QDr)!qX9XcU*^AIR9=;G>!XqL>K zIw4D`VTnPJ>*QAEUFGM20joB?Rx{IDZMtTec}gc^8P9+sgHCQGgKtR&L{!$CJVUd{ z?9$0t&NHCMpp#q4;G2?jXK0p~-8va7cm@<1baE>hd`oif49x=bv`$73&wwI>PHrXR zih=E8{LJg2Szeye$yiD4Mi>;iPA)R=v2@Vi=`ES6-IA#Tw`6;C5?4`{he46+;v#V| zZK4PLRX5NxW?esS!obgf&+3HWW2MBP$aQinlf~N^m~(p8sqF(l06wRav4&?rkwGW7 zlEK?KcSd|9uCIQY*{hR*!($}|MXr-u$>8mrJ418cq33ln*6|D|GU()1GKOC4)lmaK z`0dllSkE({$e@#3$ryUES1%p-$#1_-#s;1NMFySRO2*KOy?WWe4}Mgah5y|$aK6%b z|IY{a@C+z2=;T&1hF*Q7vhhAF7Yqnqqbuu2{8Bk=<$*p7zy|j$iY`_lbWNhRaP-M`_tz?WG^opKY zVUE{)vV1`&gT9r}yn-Uv$*p7zy|j$iY$RXQ$;j{wC^G2eRx*ZOTEBc>N}e;YJ$1f1%Z|W(xJ+r{U<07Q!ZdIpH-7$6EK33Lk((JMeirvMRs0z`BP5YZz*M27$o{Q*RD z2N2O4KtyK%5q$wfbOjL66F@{q01^EFM05iX(F;ICCjb$B07P^F5YYobLw2X3zp! zK^tK0ga8b{2u#2XEWk>fex5d5BLX{c04Hz(H;{k_$iNGHzz+hT4%CAnz|s0*0|Ol~MKm!PaMi2o_APQnY0nNne=h=d5T0t9NJ%j)Zzz9sh3@pG3Y(NBd-~dkG0&XAy z50HTu_<$b-Kpm(DK@b8B07ux1jl}8a8NoG8APQnY0W3`jzyOTE1kAt!tiT3DUSc!3Z2K>*Z&dJqI5&_JAio?%?m2qK^fL;>4Q2*3c0zy!>|0<6FWL|_LF z-~=w<1`_Z98F+yY_(1^FfqD=GA<#gad7iii2g-{P&;+7@^$`Lv03$E~Gq3!3%G#OegR0@KOy%x1Des|&j7VSNaO6sQQX3Cz}Fg2T+D zXvOIHA{^m>7rEdi^>B0uULA(lM&OtzR24XmwUZMJ@OncR`G^x{-EgM|?h3-^8{qyZ zJQO2E1+?Ju5!Cn-4Zs8}Km>N+08ZcnZXf{}c!3WDKpm(DK@b9A&|0<6Fe9KZ!6-~nFX0|8J6T9F_#jM@lW zgNRWlMw{F)Cc_p#92SHZgh-L~(&%ReQZxV~E+03;&s%VX71(h3OK$izFZ`w-7VF@* z>q#+$(f??`Xd_0yAHir8qdyY*$e$SDNi+PJ75+kmzjDCexZv;HB&|qj^bcP6CqFFL z!M_CIhYj%W&J#B=t9`wT{-d|nF?zrc4~5`MGMh>rQ@kX7aw7a7j4Qtpf!`EkmoAEbGbcDV7M)_Fo zSmKyK$Ji(Ha=y@)>Qm?_`^@X{*GsQuUsGQzAI%+292Jh{UR7T$y^?uFd8J6l+Q(lm zzLa`N=6&0RBe}!s;S%+1S6(c$?1w)D~+?E|!QHvCQV^W~HoMzIkQ#ir5wU73ocpP5H}{ zmz$U8E=yi!U6$XN+8EiWY)oGoy;LXL{MZI#Lw0?F?DKQ$lIyH>`DltP^p$9OZNU#e z)^GG@FJYIYFOFWUUz{NuedD6+g>f;eU-AO$g8Z6-Uw(RZbhW-ZvnsaASe0FwSZVjr zk1sQq<(4MNT0b92MIsR;k|uk7eMx3<+tR&g-=clHoMy4uL z(`3o7pP88wn_^7Kp25hHKRQ{TZ1?O>l0CoOyFYVU>@>TFe||!0LS#aGyg5EME;-H` zmp?gm^6~rmvyOCov|Vq{kbS?=mTgV6nyopq@V8p>&8g-{vqCoh(U2a>G{wlyKiimS zG#hgbNwW0M*Qe?u_3=8hE?0~3{_??8FcMUPX|na#^-LfZFalY!_BZ`G3L9ei^4^p; z;#It9Pn2x_Gc~aqqb6H@Y@h$EBjGR|IkNq?s`5O=BU~Zt|EQ{~86~C|!v6p3`$DfQ zq2K?5#rJ;^|Nr1S;zhOCP4>K`ljLU6NdjsN^avI@Ny>Nk&9wFMzaY`LMQDH;13iKT zjq=@nGi|;6FG@6S6&j$%K#yQSLv$M!-`>Ta!LI6=wqE|1BpSCNt&{&1iN*(n2B1IKRIXHa8RujmRaYP=@VxRde?Fi;cp3PR&L za=jS#8T>_L+49AuJ@BtfL_Q=$K#hT3LAi)k+68|=B61gH>}Q}R=n*WOk?61;8R~%T zvr4<*(-MulDfa*aH9@Z+G&YTJ)(3uXox5ncxR{Ek?4X zP6>@*u*zC!zhY*VUNLV6sU1HFQB5!)|UAD4*iql`Nks0sQ6w^BnnlJNzM$m-dO-epU> zZNpFX+J>L{ghcaUQlki?LKCE*r^Ktt_yV4C!#>5vbK#QSg|;8BJ}D7-gtGKAP!seB zZY8U=9c9PLSuts~?b7^viN>Qs1JoGk5!^~Ua%p*uC4JqKu#d%N?H?o>j|mM>W1vTH z139W}DXTGa@zUBa;G(pRAJA(XTk5kC&8JB%z(7sVD~Mya zj-7Q>9Vp(TSI;=hc2Ry#BJzw70W}7C1#$4oi!6mmsgcL$B_hvK#ySHvL7!mZ=-qhK zo)qk2sY$z_+xDaK7bGgrQT_o2YJy%t9Iug{WCxB{-y++E`9+Dy^FjpF80Zzm@hUH} zbTx^TUYcK$h`c}<>kQNceS(Ecb5ptFHFGIF_?KRrUzVu6C{#d=fj+^)wOLMO`RZO$ zDZM(sB2jrssDK&+eS(Fnvz!WDoupEFeSTG<@(ShL!9Y#WCs@Jt*;_h#KyP8Rtl>xa zi;G<9I*R@OzZCcXL7Ge&|L?08In|96`(L5Ik6lRP0L*u(pQYda*V6Pq^!xw5X-@Tw zxlZ*E{q}zqO|I2W_5Rr|_4HLv^-J{o{|1`=Lcje#LemtQ4$*J_7oXu$|3JU}f4JAF zPNctIrr-WIQtW?~rY9)&|EY#c{bCPoOB18%UnjIYAEDp>zf^qx7v&BtXM2wv5VLJd z;)wtMB*hTbD2C{%zUL^|Y%%Jz2pQTI*v)F@Aadzov{Rk738@E9Lb%?64eco$N5++3 z8Klj9L($)bN-ZtZi*c~Uf;ucHEk`{T6k}eC6b)EVj6N+EG-5$9nzUHZgayT@)?z^j z3yQI<#e!Ds+`z6W3ahf0yJSs>?WWFf-xyyPg_s^#E&|5-!g1E>+BBGb;q+=EzX#Iw{MB zwxKMCt?n4gZ`c~LZDS?FJK)fbp}d-_Y572~dn_D_g*8|>a7J;E!?cj>;wW}G;wcXm zN1+uB#!zvFtqu*?+|bWpL&$`Km>p<(~vp*=c<_sDwY zm_%o=c=l+cD%yzJ&SHdaTF^9*!6Z7%LyH|q7a_%xOQUfp>992o`&UDVN=-4q$3T#R z#Xs!36A{5Fa=60O&HYTL>gx@8+i77j7CG+dA~ZN+pNkt}a7jOFDQx1PP3l`jK=-oA z>xPoMk-Xj8daT?VhLVTZQu6SKi3=qOP})$TB#o5Tiz-S%(aY|_P)Pi0+On;%WixHr zIPyLWrS}Y_Z$tW#cVZ~LZzz2o(vP$kl)A7RZc1D{pv{~6S#|LQR2S-KG3Gqm+s`^2 zl$Tz5qzAI7p%qxKODsplilE6+!s%RUo( zI`fp7NBK3s+c;+$l(ZnO>BdL9ned!042XptE_viMSdvkZ2cUyNRKbW{9dwcTM z+$|{@Z6UTNy6fPLi5mhtlxU`NNkE<7TFlzV6I;q&G#?4 zM8CM_!t|O0s}8J)t}vE|mxh;Q7n_UrE;uqTH7`0>p9>p`%&gcft8afVqd14Lp8e+? zIwx^Xbo#+*;j^-2_i*@(0NFW2O!AGIXq>K}rkt9ekQ<*GcjzS6l^$!2*=+2mc!Nqi zYh`405Nq1pu$jgYNCXd4)W9r_7LfL&YLe9nE#@{|YaM&J#dV6i@%eM^Si6+o|F4EK z(BS8G7Pf8`-!R5gU);cWP8z#W8di#~@i8!(nkR-~;?X z0MLOTPz%%n^*{sA2s8m9pc!ZZT7fp89q0hUfB|#@V}P+h7r^!s6hH+yPz5*uC*T6y zfCf|pHGl{30zSYG1OOcf0<}OLP!BW!jX)C+0-AvqpcQBX+JO!r3>ZKsFa{V4u>AxD zPyr590S>?kxBxeR0sS}z#p4+4j$;rzj=||T2A$&=OparaIF7;Jco3)s>VSHn0cZr8 z0Qh=v_;_&mcyRc5aQJv|_;_&mcyRc5aQJv|_;~O!0DL?+d_1^vm;fIS4j&H=9}f;6 z4-Ov>4j&H=9}f;64-Ov>4j&H=9}f;64-Ov>4j&H=9}f;64-Ov>4j&H=9}f;64-Ov> z4j&H=9}f;64-Ov>4j&H=9}f;64-Ov>4j&H=9}jK-@bTdA@!;_B;PCO_@bRGfe;e%r zpaLAI0vv!7Z~^e~;PCO_@bTdA@!;_B;PCO_@a^F6?cnh3;PCC>@a^F6?cnh3;PCC> z@a^F6?cnh3;PCC>@a^F6?cnh3;PCC>@a^F6?cia+06Kv&z*wLQVBG`-Pyr590S*FP z!SL?j@b2L7>frF|;PC3;@ao|3>frF|;PC3;@ao|3>frF|;PC3;@ao|3>frF|;PC3; z@ao|3>frF|;PC3;@ao|3>frF|;PC3;@ao`UzyLadF~C@$i$En*dT3q+I8X&R04LxA z;LpL~&%xo(!Qs!r;m^V0&%xo(!Qs!r;m^V0&%xo(!Qs!r;m^V0&%xo(!Qs!r;m^V0 z&%xo(!Qs!r;m^V0&%xo(!Qs!r!vrd!f%#5g3@{ex0@!AP0;m87;K@O)CBX@}0C;jx zYe|472ep<2cydr{Nq{E@wUz{Ua!_kYfF}pFmIQcmP-{tmCkM5b1bA{#Ye|472bB=M z9MoPC;KM=fB>_Gh)Ls${fW-+4paLAI0vv!7Z~^e);PBz#@ZsR_;o$J$;PBz#@ZsR_ z;o$J$;PBz#@ZsR_;o$J$;PBz#@ZsR_;o$J$pc2B1gTsr1!+V3ndxOJ!gTs4+!+V2T zZ-N5AdxKhULKWZuoPY~}_Xf4z1bA;y>rH_72DRPJ6X3EzO*a898`N|Y*a3n9z-5EOWrJ4%4!{Yx0Jv;$xNLB^ zY;d@2aJX!6xNLB^Y;d@2aJX!6xNLB^Y;bsMaCmEQcx!NYYjAjLaCmF*g13gzf_eC9 zaQJC(_-SzXY49+h93-d!2dV%E-~?O%{4_ZHG&uY;IQ%p?{4_ZHG&uY;IQ%p?{4_ZH zG&uY;IQ%p?{4_ZHG&uY;IQ%qt2xtac2y_fvG2aHX106sZP!1DRfCE*418@Q^zzt|X zHBbY1059MJ{6GNEfgn%|)B*KC1JDRG0U@9nXd$44m~RI<0Ct3+04l(ND!>6a0Tg@Bw}x0O&vvs0HeP`n|JAzO#Y;P}L(e0U@9nXaQOQZU1b_45$ZM00U4D z5Zr(dr~{gTFrXYHxBxFu3xt3UpbKywCU}4#&;+ytV*%HJIkYWM3xt3UpbKywBzS-z z&;+ytV*$q@LJgn;jX)bP2BVRe-3@A$oE}(VEJlX=_ zYY7_Q2kLVRe-3@CAe3-AK9KnUmn*a3nQ@Bl%e31|n#0**t38bAjc zfi_?aP<4b*4FrG&pcUu@FkyZz#mLXR6?@BgEBj`GqU7h^NWNjckx!>6PQH>(ABY~% z4`e7(zCrIViPubumY;mpdNuz_>Xit^%TK=?eOZ4w^HPi==4W3_ylB3ddm%|N^9SB< z(iAmce=hTE>{;X4>@$gHOtR%qK5adne=7A<>Syka-D}*Ny(d92^>cS8?+)LcCCh&E zt{g?xw?34=GgYB&|G)@%?3VP+(VKOOupdhpiEKO(Hz~$`@+Rx1{GQaF2u0aX?~d-) zcV~9Rb{V^}I}7n&rlqGV_i0yh?>#d+T>bmZN5L%AL&<$WA0@x zj$Ld}H2%az=0&*+lNVYPk3UZF_;YKLYpgZ-)hUX|udGh5imuWrDt~OHu`;_NvBIRd z{K@6k^8B*YvIs@yPcMxw)t6=>F^bKfU9$E#Z2c1yr9U?(ImeolpPiyO{mSh0te#o< zzEoeNPoYTt(V6)^P?26KXYE}Jmb79#q2lF z&7G4xCwxwJdSbeL1V3e3`Yih>e&(6EDfW^4-iyt@G9f)aI$oz({;_e!xa`S^lg*QJ zCnZm^PRe(sx*}Z)y-i2Q>SHq$)881A?M!rQ!SAer6t`QrRe^dP%LDGvJ~OpY|1qz8?DBCL#iRtpfsfGk3G&` zIuH%$fs8*!vHr8ZgwOQlyh)1opZBCZ5syL<|D!c}O{O|lZBWergl1|vcajFO%DYmo zh)Z#$ol%PWpK-(-h9g^*pveC@o}~Bvyqcoe|B9McqKd9$Sd8BAH&49p8_UT4e>Vb- z&_~$+v)_vOqAlCkBz6<8(v~^{H9?;s>?Ss|YehySC`PPX(Ys{v0-KT1*Ci^i2^COd zpii&@`yZQ?(KjS2uL~7WW1vs40u`HG?jecF0m?bRK=J@4dIb@8c^yr|K1EZ>70YHU zvsoEsB_e4d0%{EO3c`%>>Jdx~i?(@7$Q<(w6rgzS|4}0Hh7bWY26_eMB4(+P(LYH< z-lU9!4Acbuf?H`n5Waudrx>ns#lmHMRKZHEjJ_$6c}vKE8Uy`;mB^T-W=8)kk@*N^ z-N8Uj&?~r=PW=}8H|!%$KH28ZSh}=(z{4{DY7I zH3s?xE0M7|hyABS=2Joj)EMX&tVG7sh zH5LAzMCNmpbu9xm!GK^n84C9u*NQEyX*1&gzC`EqLI>0s7!a&T$1FAE|A9p3iuL%`UW1vs4 z0u@`c{WFQm*M$nGG0-Pifr_ow{<%cu8$t!t80ZtMK*iQ*|3ad2NT`4s1AT%OsMy-< zUrJQ|k#g=}peE=Ol$(y5c7H2dAnIR9H2;az0u0myy@GOoE3>r4{TiGtqBNB~&78;<&K#yR-->R&}l0MrTS6-s=EujHw4D<*V{H@AqkiQi* z(>=EhybJx8MB`s5UmpWC!5TsMTbV5EzPCz!hT{MA(DZGJ|F@m&|M^0f`Z(GDPo*h) zrBl6gdI-xGuxf&V)6m_$u^1=NK-RSZ*HX+ zfHeK^dWscDQzK1J_qx=HG<|Uke8kMsSHyQDhvi@CfCLz*33>$!SK!faZ^ide@)5JWBK}4q@^6&A zpMjd7N3h_BQttecABtJ}e)wC7#=i>Ba zpdqpQh}q(1|6Zc`pQJ|PxCu?rE9T`sVz!3l4-%2@2oX?YpjS}tBW7z!{#zpQUCLNz zpeE=Ol=t44wp;xlB`Sw0{{RCixE9eXDEASwJ@fsKL?kCfK#hT3LAj5Z?b7^TiOBaT zW1WGTpii)HX_oV=q6f>l_G|M`5|!@@6;NZKPp|?XG27MoXNk%WgbJuJ&?i`dkC^TH z{EI~8N0f6112sXPU-I=w zek)`^je&l_N@Q&JZm&e?vu#;UdVtN1O0-P$k<-g{Sui!2pLdg zpkJ^O8QYtBKqB+sLI%_r=ohR+#`dbNOJx2iWI&C9e!)s)Z13tpiOl~})*TGg1bu?# zWJ<18d;h8}q)@Fy^G~D}WS}PK7c8e)dac^}SL-A)e-<*J#z4PdB{H`D)q07{UnuKZ z25N!;@@1nJ)GA z4Nf&o)5q64)fMFXe}sJh?_B3pyXfyhdhcIgQNIEC{NGAb#}az~KSHC-KQjA{6=eT^ z_D(vT1E20Y*eRdBMSOz+ZeP5xVuh2wXfVX3P^bhL;!-?R0t|5}C@KMlxD*+c07G02 zhPV_Xl>kFr4TiWBEtLR6Tn&b}6gQOsL)_yJtWNP&X)~DNih$~a;sluQQXp{x%y%h}I05Fn8q9YokT?P6yA(*A0P|f6Bu;?&E(H=NzBgOL4;qFyE!H;RKlPQtWU7jCb8@+K2-MT?12I4W_*G z)K7pZF9iT6z?7H5i4$PTtHG3)Vu}-B%1eR82{7fQz~Tg$@={=N0!(=|nDS~c<<(%y zOA)9EFy+-?%B$4_4L~E%1cZQQpap0J+6Y7C#1a<1or(yk1os6TvsHitZ~`vC4QN0$ zPy=`XFW>|GKmgEzAW#d`0rfxw&|GKmgEzAW#d`0rfxw&5UjFqRmA z(nC-I4padSzzMhjH=qI41ouTXnDqc&zz6t&0H6awpcbeD>VXEJ5oiKJKr_$+v;u8F zJ7J)p7jF2D_FKs8VUcmOZp1N=aM;J#SLY!Ijg>VSHn0cZr8 zfDq6Ov;eI@8_-S|DCorVSHJ`;rFCHUdpR2xtacfL5T5Fi_A-+OebqV0#G)paLAI0vv!7Z~<;W1FC@8%|Hvm-QSAYHo`zb``fXk15geSRDc6jfCF#>F2D_F zKs8VUcmOZp1N=Y$(19RO3)BJiKm*VSGyx%?8E64ofi|F>Fj&qGEKv>-RDcuQYpXEp z0Gxmea041p4b%W0zzg^QKM(+PAPCd~bwEAP05k$kKnQ3CT7Xud4QK~C2m=LO8^#jl zFhK=4Pz5*uC*T6yfJSgft1(*xcmOZp1N=Y$(19RO3)BJiKm*VSGyx%?8E64ofi|EW z=pYOfG#bVd1Ly>lz#UX%fCE*418@Q^zzq~1xub>o_(!`xn)^udBi2XqZ>Qdlysf;Q zek=Nx{#H-LQUB8;dJG(RA^L*;Lgx9{^TzYp=MvAE&*h#?K5IRjekkup;`ivDly&pnxZ(juSf@Dtg`6OWq|{XhAb^;rJV)T5C{l}FQ$L@EA% z=Hb}G#>3ftiGAk29E|{AJ(Pbi^uGFr`E@fAGXLP5&Gjn6?M*YUj4Y3=H8?rkRJIo!q z?aA%d_WZWgw#YVRTY77BtG+dJ{Sk`(AGuDsF1;nXMc=WK z{57d-BG)L_q^^!!tz4bHDteWERp!drl?IIhkhsFUV(lhm!>X_T&i4}-VoiOZ^*2VtvA+Z*Cj^q4mfm4;u7qJ}J3BGkoSmDM zoMlz)70`Wt?!4rA)_M7JQ|DUe9{(5s`_G7+p&T^^fMI646WwNaZentxH8FpB>h#Fz z%IWFTqNnMnWloKqYMh!qC2@**N^U}6LS}qyyfHpIE-}s=mpeImvUPI)q|`}~la!Ov zUC}N@;tLS(FgtSX$#$zf-BeZI-k52KH5d)qdRCvVi`MCNnc7&bQJW1Wf@UzMCv{8D2U3AZKnbM%QNQlb_+k{^ zChJXjO>fSV^jMyJO{ykR6R$R_b6Qffw7fgzj<^+f+7)%_u8cG0G@RKA;{X5N$uC<; z@BjCgzW*O|D2L-e7cc$c&8raqk3wcC^kKe25F|vN>QZ zIVtMU9N$1xCd$qq|2lI~h?YVan5ypYuz+*PFIb?X=Z}mAKyWL8hMoo`&=LPf8vAJ` zMIhWoB^e{;B4R5Morp5hx^on~X6>(8m)i3u)>YM0qjdR?G%1Cmi?B!KHx5(wjeBhQ zRU^Mf4F?+YZ?##D{F5#@*~!+ANdVyuidOF?e&KPO1rwB_VgJ_P8$txXi%U1v=if6X(z_H zam7^kP~EE^z7xmTo>TtAufhQGY(t(J@~lCg4adrJ=-`Nkw~BVOW^mVs1#jwREjQ!imFm6y1e#Ml;60W@*Y;<+{mvU`6V!n z-Qv6lzEQkg3`7+y#)k8Szsp*ydVa}TweJ66t<^o6((0$g)O1CB_QMsRq#aI5+EGJE zJ3N%MqiOTMupm|8r|3pKQ1b_FLsff!$j0k?-(lkorYPe(_xhFbjg%hY`G%r14y5Lk z+6+)?Gfb&XgHoI7;cv1aHTy^3s&JL)J>O@iv~A9_Q>xit*eNvuuW|~fEm}&7Evjx1 z3EPpd1_?b#=!kzsWKD;I9v7bS&7ne3{K>(HlA>5t9|~2X<=}s?=^Y1u%BDAj|G=g< z9dIbqn+|@H8C}I-rS{|w5}c}&;MDMuKeMUE5sxx8M9Ih4N>q;FsW`*y(m3-BjwXf$GqLkX&Y_C^W>sKKdqJy z{j^Rx^wa1vQKq%fHeDl~CpQw;A+bWWXqt+|Bc&VZeB$BuScUH@z0^dd!!diewLqpO zsaWr}63JvG_3}N`L7B3=X1|A8EEAVs8-J76!7+F17}wNsT|bqG?0-4(vhs5JrRYo9 z7ZNX+FXWz2KA(J+6(dUwMU==snt0TFH1|mI5o2HWp@bL>GWFqz7y~kTzmd%DO(4qN zy^(vAd(wAD@7C{*(nyb)J7aemcUpJkZ%^GGxm~$Eed|Enhh)N{2z;q{B%abX&FNbiX5(063Eo7-|*lUuE=c^aoNz9kUbeC?sDyRXV!nYrS~<%!FVY)BR3 zFC^9-8H}}%DUPL>ps^Gq7wlbSt;(-Vt&FVHS1ehoEKNtE5j~0y-II-Ms$WgBi3W|>@D_i#HJh5vu7vHHqXvY z%THZ9MW2#6BX)*yMt;)TZoNA*F*ebd7&&e41ZzTmd}@4TygqKpU_V6O=pO8ENVgsd zr9zRA5=u7>jVP$pTeSxU;|Ey21B0;wA|<^8IY+YUpn8Pf@V~U^_di-i_W!GHEd2ft z`~S}HZ^XNQ(W|dXVm`rX6P+TSzhGMWW&qDxk(dpI`+lHY2oFiHb|8fEojRf)%LPY|z>yDsG_y zYBWkWRKN;UY$j;!5*1CTfEsn0Lj|lr#b$xlAyKIoDxk(dpI`+lHUqSCMMx*9+_iwv&{q_AT`+AozUOLV;3XmaD)P*9bF;EvQC?0L# zG^l9W6bs{;6x)POiDFPFf*J#L!Ghu>(YTZ#KBzd!rZ{;#5)~E4NEB;HWj+Hn!CFBK zJ_glcpLh+cA+z5ly+<8aTUdp$63sfH32F?i6|6wheq?Q~+FcUOdZ7tw46GHbK+}F~ zZSKG)Ni-XTCa5v6RhE2=aEWD8wmD#pmnerw za{&W2!I0pwlv_)cXV{cY+n{|DB+|_!+Q&dmuu-s_w4XZcn+K#9ubgEUwlztoNQ7HR zavlRU!6w0S!T}Z-IND}^ueHQ}noV2NbgD$Tl{6PnzY3JWkYG7woaf@vCgr2fvuSIi zPLoKt329JcU`ViH>0u|@)>NG?k!~lsJ_c%nje_N*OHQ=ef7FS#wO11*!g!!uAi_#% zf+4|j!X<~hd!)l{Yqq*2(qSPDlED=*Bv`TZu)}R@y-bO;L2`Wz)C3y^%So3U?(U-x zx2+YMBoXc;$$1Ra1nUH^BUiCaBQ%>H=7~45WlQGvFI(PgznX0=*kp<77}B#Cs0lU* z!r>}9LQEqc^Tk7K#WHItJ=82+ZPT4(Yrf8q=#C}DISkYUn*_`07Fv;_F1>;D*_CbW z*A$6zm)K)aqn{fYYY;4_Y}@1I!}i$LdYviJJ&Cl=XP_q7Bp9VfoG82MsM}&;kF7=4 zg2l7Nb0TQiG}YBx<^ zCj0*lH2pbB;|bCH4G&SYCNd!9u1bkdr~Kuxeou-x6O za>>&JDIfK)HrdwF_DH0=g*2!!FeF&9wEgK} zvaPALB+@3y^)XNrY!oafUGnrW`KYId$+i}EhD3NWNp>($6Ra2PXWOXFT|d-#73Sh- zaqC&JM`Bt3vbh)Zjhj3rJRxk;?3HLvCAAO(HNiT;a?J;xSp4+Fvao-NHM=UnM)zrV! zH))`Ph;goq=WMP->0HuiW1uD&5Zp+QR#AGG9rh9D%+F>mu$Ijcdu7sYmDZ4X5;co- zS{SGaHVJN|e$9~ro1$IS*{l`I`uZ34EnK{Gjkw|_qfo`Yn=jFuNlLRAs0r2zmeWHY znNiT|osVd$SUJviA6X#L?-Tl<#=u&^O7+c=^lf*O zg%bT)LLbx^SSwhm{-lxgZMT#~68+giAJiCFD_E)i=&^GqOFjWz-z_JTQymD;q z)=EhMBBB7G#=ttkiVHB}#bax@R!Iu5ltiNp)C6k<%N3xc_V)EHvsU(vRC{d=*J_FW zGE!c^Kus_xSWds>;-y~%7B3n}-qv!hk;pG6;dKnu1cQPV$WzZ+--z;sri(7S@BP`O zuBYkyUbnig&8_BI-RfGJp8Z6P+EwFLpZg>E{{PISzVuV-1JK;+OK!J1fu@&SZuM-J zOa1DPoa(ygoa%o+;8f!exYVZGoa(D@Io0!j;8edt@&A_I?^6He4VQWmP2Wqo)GHD$ z^~ipgx+CsV8BL#@zxbXt^!}gTHT3&`xaS?wAQYb}E|46Z6?9zAXCQ^qB~tKNV!5MJ zQaR==r$_h^509;By-=dRlGM&)pe7g;ET>;mITrWM99iDhvR)*SUq!-XKOyA7dNF_b zFIDIBQMHuGXhp)R0;tYn}j*dSQ$n4qU%>_D42b3xzA zN*?wukrd%VQ3Oz9V1wXs6k)_>%hqo8ONwxjC<3T4utD%RiXeaFTPrET#U$ItKuxe- z@X}+{4tglI)sF5Rvu2f^`lv)PN?Oef)C5C<{nQnA)d<6Jpvy#O{rw9T_s;L1F?ad0 z{=U_7mo3NjU%dR+N%Yo{lEFYtFf0hYbtC9Cu_o%J?e9l*FA?oNN_M?Oc0CDpGEfr? z3m&Jed6eu1iR@)07-FC%SSxrPbq!xu#>{|vE9TB#WG!Dozc+Mu?=bsHj_suqwabMX zs4=isuu?U%d&jh?C2AWbYMX=_s4=isuu`>2-8;HVNA22w{lF(6oJ_tNBH z2k=^n+GJ8_VIcM95}O3e-Tvg=OPeKn2&UZ4Kuxe#u$*4WgJ6Z-OEHN)+PZEAQcp6m zRWC)l zg5~s&w|i-;M18tY2dOt&sDqWMk9h8F-Amgf>gNb`kh-Xe)J1&^^^%v6-uabuFKw5| zpDW}+>bEA=3YOb>+oe}g_tFlD{&}Q%0lkGmAFLNVR`=496W6_TbeGZ%lHyua#BQ=! zL2ozO7H)UKe^O9e&JFznm$PH{u)gmtfs#-J*>IZ zQ+`S@0AFybtM^g7zb{by|Bq74z#lu+=e|W_2>i~ee(8r!^+K9{N$>vKu6L<_xsGB7 za+lghb^wn|a;uFreb{uXe_2A&e2&ojKXa?Iw%zx&3+Vm7Zg=7RA3r0xJ6KBC5wx525V4kXds#{g7sws6`q2E&IZW!jsqUW=WQEC=ufiT{!=@X~W zk0Nt~fb3p^MO1v1DJuJbn@%3AFeqsirCi%{sHz*eh205Nsd6hUFoV94=URZWRGZ@1 zjJDVJhgpxJv3M0N54x-8(2gU^PR96J^6(O$ruaDetJ0ptSr4sds)LbB0BQ4hn6g{T zSP%O^wGw1;HO`D4R&}rjjtLY(lBqr9Nul)6Htx8}XuANtfU*EZHDFXs$K|)vq3cn@ zY$k1`hAEvptg^jLVaoAVq;bwss2Lec$A|XqnWp&M9;Q+rN<2>IjV#C+TU#}Q*n|AS zz_1S;jiWw2@sdTfVd&hio|h|!0o0ZNS}f258_K0dsbM2IjXIUYJKq& z#+fgC4pJG4v-D?RcHnPuO_;v-6z8cl$P9~+K0xOkd(c^2UHn6*nO2s5pcpUgIqh-} zW51#2_BfS_4St%6bDu73yH~7=^J1DRTH7<2w%iO-4gd7SOP2gi)dAX3cCL8YR_@hfk2_ORa6+-O!7gh;h&y($&$Z;c7QIU;=Mo|>5A)s`+d9@ zh`UtDVG|91PjSI}Xb0Y99r&x=3kq#x>49J;_<7*?>cIa;o(Bdh64j`o=Yeo>Y02{d zmQ;E#7`*h6&)}Cr%@L09x$zxX#^{7ZkrnBqgtFtr27H;huzruJt-N>}*Up9y=I zBGiXg_n;2Y_VMsgsaO*&rCnv8#-9=EfLI17ZW(4m#n1ge89m>%hqG1#|@HKW%t)9XME$3u8Fi zgLOcNQUU*(b$|*pLLI+%Wsp>@fR8 zUzmNgH_YC&!qf%Q!fyW5^KBQ>o6v8H@Bgs>H+p_2wk`hHaigR&WdkOwP}mzc*C>)%Zh`Po7qB&$jySydiGzU1gv zXnzuy=+6=QAX!xsgMt<8er5J235h&9f)^Lh=H15tze}l8^g^}?v$uqAk;vz zDkIhkR;mVb6#O7MU~BLpiQ0vfG{itMAS2caR;mVbloI=pKiySSTSYmQeg;f7#?r#~ zV2)xAGe^0*jNGW0quf(QY+&EU)4rWJbCi1}Y7r~pU6Jm~X zpF{{IC@01o<$j40Oi)goIm(A6YLiLrM4F>KAkiCbbCd@q`Y=HmO>>loB>HG;N7Ec- zpF|(VC*8sjWpvC@9+v2zE%d6XBNBBOpL7dDl(Ob14Zp5Z_x*}&_I+-3 zAN~H{MAJTxTOH?dsUQEjQ(f}1Q~mKHPIc#(ooe9YPW37J{eQ~8In~eqfouSN;#7Y| zzy0r`$+6v~-m{Hj1vp*mD_t&i{1oyVIK!=uq3NdHYL&g?QseYnyYgQy_2#@wRTa0I z2+(iHH2vcSB6TB0EZ5Os`2~Piz;{>k>6|D}_Y2(uwF| zIv`Pd?_ErjsJsKO1nHvMYAh@H40OZ1hc2dGYtiIM!@8K>C?i+e#YExZN(zG6avo0< z%!mFJJf7A^ui3G~=J51p8Lfd`Ll0BvggHFDB~e2Ull3kgp1RMnIU&6*kwOns>j`pr z`iMjeJxr~~Qv{_^q*gKs#`wkRI7eL z@%p~vRLB31Q~kuxoa#cFzDw`_m*3!0^E+H>!tGN1<6P=pQ^`MorrXbSQyjo*b^UKC zmOzzT-S8Wi`a^o}zm&Vx9|Ya%dYZncyVc40YV}RBA3p>3|2>>-dZW7iV)t6sohZEj z(-9==nA=%X{#G#?JTNqNHG6l1p3?}kG~{&$5C#|GKmgEzAW#d`0rfxw&IbUb67)8MkS#rrkH`A|8J zpq#+*40W!xV+;Eb=Nb>w;I~zP12`cgoDY_>4p|=eNaxz|jBu`L-K0?s)Bqm93-|y( z5CC)_2-E^~gu!ywV@U(h2s8m9pc!ZZT7fp89q0hUfB_u$0O#8AjBh?z&UZJ?xi)I! zn``pYI0_4l z?&#)2<=jhJbwE9E%u&v@RwQWy+JO#WR0cP%Iy{rc6mfwrFX(Lq8$)2o01YMF$J}G8 zz>^$A&4t7_01c=HY5))51$;m= zZR`GFEBNDf@TVQfO{I12Upv8f+~99Ji7v%IhW^kVxSKW1dNAAW1H(EvrVc!*37iljYHUBv{=GufRDk3AK?nG0 zClH@<()2Yw|8exnY|Hh}-sNYp}@{Z=z(TQU1@ZJ6!A?6;Kz#P4wMumk*_3;clw z{-_50i5L8tkEjJO`^zBs>pC#s0KU@%{SRFW z{!Eal)dF=u3l@H@4g7`{CVtxke%A-){6tL$f5oJ{qI@Lvw)J-It;AdATe&xrZ(48W-$=a?c|&<4osOpUbml!E zdg68S_1tU8*R0p_ucls&ysEsKdc}Gr_j2N8cmvMr1JZd`_28?Cu2_z3TjiJQ%vvx!(jPh{e;xDn6Zl(@;fDYqxN$J&$Mo!TAQt?W+kitf^PWp>7P8auN$ zCT=uu%-xW@!MY*8Bef&4L)nqu9^I~Q&uoirGqz>7CbpVebJr)Yw`g3s)OFT%`7Nm} z)|Ol>5i??$&C$)u=G3*;wYh5&*BIAiu8v-5HQm>lY7v9()FR(7iuSu3#Y3L)YQmSWor7&=$ZPNnJKX;#+2+C?2Po}=wy9z zW>RdDF)3>%Ow-JDC%dig{KVA6$V6pg`t<1O`sta|Vy79WWlv3$#|Uyw0r4)h27L+I%n-j0BZnT94|wo(aSPMj-1?_)UL~MxwTSd2h-a z@haZ5C+g8XnVMLQQIoAsRGZZ~EvZ>r-koxnj_?P!s$`W_mFFoQ;R;Wy zQB_wnN=z}7EWM8YBD7=CCG`9M7Wfs@N5ua>@{X7vDQ==IaONi@{Uf7o0rN?T{%Bjk z{Jlhfv@Kx%L83nz7BEyZioIi>lBic;0VArJK>T5k)KP~|6kjQ>8p}5j*f+i&4cJ`k|KL- zYMNWUlBS=WJP=1@%jb{3v%p{YoM~ z+Fek;mgtXi7t|4n{NF+sR9;fX_n`~wza&L?AG)C4krd&5=z{uVl$k^e#T1rT71ZdtBGZx&(--Ddt8-`^z%SDHe{=uarGEJjE_EJ_0r;gxw>pQWFEmi>fZtWC`{?~YME3uW z{(yW6XnLI9{o81IoP7V=XnIv~sXbYz`mOy=^(va!L8sdI$4tvwvj5+DONssek=t2^ zahuqa=FPDGH(KZqZw1slynqkz0|7t> zftw0;l4s-x)FF^rRfCE*418@Q^zzt|XHBbY1059MN z0)P$#fm)yrs0SK=MxY4@5vYXCm~R1Efi|EW=m6LOf&!=j2dV%E-~?QN8_& zUcd+VfdHTbaN*!}Kt0d^Gy+XP2xunYEMvYEXanH4!Qr>T;kUuzx544J!Qr>T;kUuz zx544J!Qr>T;kUuzx544J!Qr>T;kUuzx544J!Qr>T;kUuzx544J!Qr>T;kUuzx544J z!Qr>TLqIdoLZA}1V!jQ4(+2MV!hmv^paLAI0vv!7Z~<;W1FC@<{N166|G zKmgEzAW#dyLxaOZgEs(;KobxGnt>Lel|UtI!#sR6ID9m?0;mAoGdSEcINUS13vdG( zPz}@o9>5Fu06!1_bRY=S0&vUVaLeEgKqJrugn(wC1!x7@fOZ0v5RMsK=_aTE2dV%E z-~?QN8-Py+hffBFPX>oi28T}uhffBFPX>oi28T}uhffBFPX>oC28S;Ohc5<)F9wG% z28S;Ohc5<)F9wG%28S;Ohc5<)F9wwm-WVL-7+eK7Pz5*uC*T6yfCf|p9>5Fu06!1_ zbRY=S0&u|K^*{sA2s8m9pc!ZZT7fp89e@J{4-=?_$`YDa0S;6F4!{Yx05_lk)j$p4 z0la_@@B;w=-WMF+7rYLD*9C{y1&7xKht~y%*9C{y1&7xKht~y%*9C{y1&7xKht~yX z@j?md58W#W9H;^ufD>>5Za@R7ff~RAcmW^a2LgZ&1OfP4@H(I#Xat&o5YP;?0Ifh9 z09OmTNf6*_!4(1>LlyHJr~({-6L0};Km)3Q8o&d10UzK80)P$#fm#4g7936%98MN= zuOKu5A)py(0pMRjHwgm#D>(csxC(Frm9Pr)4!{Yx05_lk)j$p40la_@@B;xr2ZBH? zPzTfl4L~E%1cZQQpap0J+JJVT15geTRDc5x0+rB-c^BXYG@u%&0X%>g@Bw}x0O&vv zs0HePdY}Pl1e$;l&g@Bw}x z0O&vvs0HePdY}Pl1e$;l&H&fq@Bwu|GY|%pg9I1g1!{p1&;fJ-&cg%`5Coclc3>>vIxq(nhENNHfDWJwa2_Oh zfFRHWv;$)S$00%upaYFS8!!f_Izp%h0zd=M3UmT$crNW0-~;M_W*`hGO9(EYb;&&1 z0^n;28sG=&ffm33)XfAp-~;M_W*`hGae@o*0<}O0=m6LOf)nrnL7)j}2gU-9LxdVY z2O5DkU<^=ogis9xfCiuy=mZ!i9C$nWw*GeJt=L<}TiG`gZ<=rB-blV-y^&9+(vh^1 zP9KOK&<|u@kG*cZo_#Ixn)zDp)#R(ztNB+_uS8x^UP-?keOZ4w^HS_3gDm+IFPbmr zUP!)Ry^w!C^?c-c<@xk;(dTrs=8rvVJez$c@r+6K{K==Sr}Iyxo{BuBkVStqrKd9c zWBU!V=}$aqKAC$W`GoaE{_)h~k;j$C(~m_T(;v$SyZ-DWiAT&wat|jTw#c$SwJ)+y z*_VDO`jGxm=E2y5#)H`h);^$sxHo%G;vVy!gLlX7Htx=nb-#I6?nB8BSs%*ZnX1sfKYFWv>;79Jw!$pk)Sk#5Wlwr{bho}cvn#gC*p=Ox*lF&}-I%=5x-ox4 z{08%e+>Yc9Ye#;2YI|h6vOT>mx=r7f*&5qwY|UPuxZb=zcU`h*;UC$eY)QwWF`aDu zW1Ef5*=yHct6!VBCPr5N*{c&*n^)(qN|K#_{>s#qkt>xe(^o{v(m%5)w#nF(y*x33 zt$)v@`3_T+G!uzM*m2tXC+3=Sb90h&tU3AFso9a)hi4^cS+nwe zslG^`(wCkYovF{v^u~IP-t3IT40A@#N?Mkc?@9GUdX%2@`O)+B^E2ng&NI%-o|`z= zJon%^v2%=bveOgO&FQ(blV@9J=clEnMW!j!(q~1_($C6FjZHPCX3tEVX`Y#zlAK~q z$)AxrBXWjPwEN#bDKbf!ls2QLZf3e;-9~qIVq&5>F?V|MbnEo|X{pm9rzxkUPmP|c zpPD%(c8YOIc0yu;IUzSbIo=wd9~U2Ij?0~#JlQ%qe^TnC$Vtjc>8@y(-jx{}8*7Zs zj!BF$$K*PbomOYwNEs1BG1B2^SPy49VjV_Dwtek;u>Du+({(*{`Px)%q*kd-2ctnf zn9*app=Se$fEmd7lYYye_oaLhpW;h7+w$?9-*R!eB6mUAcF zmOJlCxgsvbm3Bs*x-;X5ISfa(DpB?Ss5=h;H>x}TznP~pqm?uob#0y5VwPrB#&}Ja z+%RD9%8eecD8_(oR+wU%k&GM0zzU4P)Ri&SlodUpWJNCR?sBm%ce%TiJ1d1GmrG)W z6jBKP-*?FY3R^V+b zaI_UT+6o+P1&+1?M_YlTt-#S%;AkuGu@(5(3Vdt@zOe$|Sb=Y>z&BRl8!PaQ75K&q zd}9T^u>!YPfm^J=Emq(bD{zYyxWx+GVg+uo0*_dMN36gjR^Z7h@MINuvI;y|1)i(| zPga2^tH6_0;K?d*Vih>C3Y=I4POJhaR)G_%z=>7h#47M#6~lk6d|TklDxMC43cw3h ze1IPa06`!Ggn?S14yXqjfJUGR&;T8P=c&N+RN#3k@H`c`kP2K#1umol7gB)>slbI) z;6f^JAr-ig3cSZr?>2l%1-_&LUs8cDslby|M1TWuA{9813Y4jz->1OuQ{eY0@cR_FdgNg{4E9kmI7BxfvZK;BLS|K z0vAbvi=@CsQs5#faFG$R60~WwW7?oN(wo8B~eK$Qmzzg^QKM(+d zKnMr}wLl$E4>SOcKog(=td}4H9IzOx`+8{=umD!T2G{`!kO2qaB#cUJXzzKtmx@t@=?ZaNn4B>j9_R+^cWiQ-~?QN z8&CibpaNdN2l#;i5ClR%7>EG1KpjvI2>S>kzyS+j1#EyFkN_E|+q;ZT0~&xvpb5|b z9cTtxfL5RlVEYIHAOak)09L>T*Z~QU0S8b6H~|;n1{9zcr~~SO2A~mW0yLm<4I8^Z zuYSJpX6jA-&EgxGH==KpUeCTBf4%%#?zO~g!fW|gldr0;7G6ocqQ6pnIrDP#FF$K1(cu4J(YM$cq;#7@=5i{!miXVeOK{`(#~=&mn-&V`m&G5A0KW_ zC_j>WB=Jb@;l#tj!-hy{*qq;#+@x+QY)oy`Hx@T! zHbgg+)@Rqp*Ozb4jnhuRZp*Jtu2t6-ZcW{)-&(vSb4&D=(#_eM<2RRY%H5Q>Nw_J0 zWAaAz#=@G^8huUihRhAo8%oz_ua93}zAkrN;yUfx;_A%m=<3onS&IKJr*f%8N=W5N z0YL33T%EdFzq&{o0MS*YmD!c?mE{$=6^RwXiu_f{tJJFsqyrEm4S?M8#ByPI{_^DI z>g9!Hsb%`I;$@l3qL-B}&0ZS6w0ueKlEfv#CHae!7poT+lBuMgEOuwQqur&Y*`?iM zvYs_Se!rP`2W7S ziMhhu{AtP4)YA%cQgie<#o3wJ(b=V0*;(;f<(aveiJ8L8{EXxbbw(kcitF)WEE9{y zN~dN|jh|XRW#Hu0$@bE!>XC&bQb*`V6c5iFV(fpWDcV$O%r?dw%MH1PM1#jwRQBmO^KG5+5lO!`h7dO!_2i4XV7|D%bui4Cav(~vdX!^mkk>I4Bb zbqtgZh7B%dgDR>c&!FYBhk4Q}TN+=oVCm`eNwPIMW%{Uynm>9#PDnEOsrQqBBjQ}e6=G|oF?}Fk42=oOp;smh!nR;0;(R7qL?ILCVe(^FtAD^ zJ9|tLQ0<5m)x>_4BT~F3=Bpf$;xjQ{?T8e=iTx@^qy$XN|6hnm37VwwGl)nDnIxfV z5h)!Thn>=}NfQ3{h!nomCZvAY!lxs*~EDToA^Cu7gz12{{J-py4?8sCFK7H*6;WKo7tfMKY!M|*-K{6 z8*|j@3c;3$N%qV)913uvMxCxTu?P=wBBN#MOzdHI6-J$|H!)kKXqg5RvlA38Gvv-U znpivZ_9eJn!>@9aiM5GsU($xG;i@C2;WikwEY*)_UyA(I_9d06Y42eBQhd?z9g7#v zm_B+?AblKzBO90^2R$f|o8jN!pg`BHzIe@=DHWpvHIHL#`0ft1g^AkFkZD8Zq{YM< zTA1oS)u=!4LX(Lyzxjfb1qgEmwL17(9ggX7t&VKr%;8TMwLxp4Np z4pY68BTVccTI<%B1N&Ae)E#MJ|Ik{u#{8;LAy0RdiTy)s-8y!x{IB?`bF_*5(XCsm zF#z^>&%aXicFd6>g~{ZQJr#(eh2jkJD@iS^NKTV7-M>+$a0!5nFAxa`kg zylAYfpElBbhl%;ojaxoreChGbSG;<&PG2&8Ec=}!?MF@Qqjl>T2FeBl23N4b6yPb2 zn9?-bUb>CVGv57Kv**MY&s)?!SO;j6w1tZoMd{DXGm)^7X_#V?h8UUXV4!T!Z*aUk za587QdGHa;m_L8ff`wx~gbK;;V@(opNNrXN&mZ#@sHlLZnk3*5+pNZX3o2@$<4h7T zy3NXGv|o+)2u2jc*|QhMm&_ik7*^Ck(@gA-ZnE++Y#Gn~h_~>ZS&QbMJ(l^3DyY-M z{NLPSwXo~-*<+fosDq}Pm>=C@@c+W>PmY+)!@2;0b7tLGiBvCq35;v3YFH_wAojKtf3rs8|7jxo%71Kp`BL)#FW<1=|JP%K{y(Lgru2vpsafZY{fH{+ z$rDU+2(4;U7$_SI7+n5W>dAICx1ydzWkq!b)sTZrs4I=)GqS2Y(IgpXQUW>{C>snK zJm5jmewxzc2c=twtIEN4kumG4ipugNlO!B+y`P*ED^o-@O|x;)jyI$EWUBkgGv12AClvcFOqk7Tn)mByj+V3fzfWt2!H zZ)AatnWSW*+pOXy_OQDOZB{c(%vPz*YUYsH3+b*#PQz^xXlZE}(b7`;S6f=V%$xRA zw6sL0jc#h0HIBuqG_}kg$Jp@gp`aa#JZ@!E%N!GH6W7#onu({Yv|Nd3`OsrS8sbztQ^(r^DEHp7+?WUGRCiXvzrk2GfX^7D$ZdIFFmY5`<>P;=@m?WU; zO)ck|B%nG?EnT1Z`sbP0Kg6b%KfY)aZ*oiG9~vZa4b8tN-+%QyN&KKj60fD-{(tx1 zc5w~OACm6h8k#>O-+v9wl0+JR|7H`TPus+=Z71LVb({DBwE=ASu}uvBt4(~WmHGr+ zYZu>KZ5QWqyZG)-NsN*H|2t7hJb~snIwY~9hxGqRgT(fH%{MM1|No_pBmDpLuc>S^ zcHOGgS6sg8vP-o~mM5<{eC^U1OWG@%g3dR|o+>v5U0`CqN=-qOF+)E{UTBhlgKP>i z^18yYJ*Z}ui%hJ4M$IgrGfBp0(9E*bBnh8EGfTHg5OWQQAm=B&gN8?R8Y(9%O-!N9s{T`T4|47A9yBU?YL$tt zLuj<>tmsH{wTYoaYqT2KkE_ST(xEk4jmp22iLr@pw7SN`UbP#oR-4$bcB9p`Cibh{ zXmy>5{c1N_U2kH)x{X#hm{_lFqtzM{>s4;Fy3xdZ)f%nvDfG8Y&yeqbIQ{;=`xn%g zpXL{+-~Z7xzd-)~(KNq9=2>Vs45gHq!h+ipB?^F#sR*(BFOZ`+u*% z{&8#H;$>1dv)nQ0{~PzQZxj1@VZE{Fq}GtxX=8EGWiDEgmbt;p6>zx+yg~)9^nzFU zz!iRQWdK|i1g{Q(JrD|$Qcwz$u7OmTv>IAr(zOr^ldgkWm~=hl!lWCZ7bdNNV3>3x zOA~K`ZkTj4gu|p;pd2RM3h6LuEwsa=+aMk$rJ)`sWgs6Wt%Gi~bUReUr1g*y8@`PV zkQ0+OLQhQE1Py6vGeo4NJD?&hZBfBHp(8DAg^;v#mmj=40NxV>dqZFrlG4(>(3F<$ zgQ&E$4XV=8{g9QGwnJB1dI0KV(u0sElXgI#OnL|cWzxe?D3cz6M49v`G|HsMAW|kh zZUg(ERVL*iRwnI)TAB0&DK=0=`lUzFG&qRu8`30KU-(zS#tRUg#%&K?L98;M9M4D89Mw;{5BgE3AZ$K?g`llfHO^BvRd!U*o6(O4@{WEmaq;J)M|56YB zYXkW0M)2R7z<(F^5dT92zXPdi>AM#2dsguKHt;{~;D1TrUKuPoz#l-8P5L1;*`yyq zlx_GnehhIo>3yiPNk4%+oAgr^{22t=r2mFOoAh%(_&*S8lYRlEHtCm;YLk8itu|>N z#M-1X)Y_z9L#|Ew0D5iGZyLbgLbgr%9dz5I-$S@f`Vh)((jTB{E&Y*$e}byD^k*yh z5mc?Ezd+Vn`WU*__Qed!){+2eYe|H*wPc7}OBSeG58cOND^#u}8)U8}J9Mrk2}0MB z>;)Z=x|VAEpc7)(k}C+hLmWpk@bk32c_Z76;f`Lma-1HYYYsa)F1r!FB~a+yfq=f=7D6 zqkQ1eesFRCJSGTsgurMRoDu<#tp%snfydQ@(;C3eMsRu)c)SLlpo1qigD0^V@niu! zMFdafV9Wx>t>6qBIMWW!l8D2%Ffb9v1yqEUM_>n9pDu;;FV7BDi^rI4X#wcRUYta73}eXDIa)^A6y*( zuML9Ng~02>;0+OQO)Yq19e7hccyj}IOCxw|6S!6bZ_~lF&`r#U;5rW8ZUNU@iNm+C z!G=v6?cgQ}+$@84IKVA6;GIrzs|&o#4c@JQ_jtfw70i0Udwt-2esEg=ygvwT4}lMa z!3QJYj#}`cI`H9o@R0`a(MIsGCh&0$?9;)V&_moQf=_U8mxVZd8&6uX=_wodv>kj# z0-u$^=N#bf8t{21_<{?3(G9+&fc+jYuYxao!B>3XtA6mc0QhfnT?Se=mXm zAcOzt0KZWK{*x2@rVHHT28#;#&mQnwD)=v6@Lzr4xBcM11;Bp~g8vZ$zY_+(8v(yp z3x2;2{LgyuzZ$^3jbNz>{DB7kPzQh1OdP(AAGcuB`>o(l+Q6Sq0)Hm-6aQNTf6l@G zv4Fp@g1@wZzp{h-B(N-lzjlBh)PTQng1>cvzjK4XSHKTF;2%`*k6!RkKJd?e@S_0u zmmv6Yh-hEJ!dMX^pjZpiAP_`LJ#pwhmRK9G$<_$kn?OkeWgT=hgEcLnvlVo;f$mA5 zav10l28gN%dO7H`fPO0&uz^847?QxS3`QJaZ4FrG1nXU3gBxsAz$OouQCs@D}t>8&E@MJr9iUgi2gE0pfuK{N`!I>^_mYXZ{|kvPls}*SeDw20(jHXb%)gO%qfE+!(btQwrD$A({Huvq%dcc< zRD68=)}Jmsm3&HgD)(gk$r6oWpzkU?k$ggUBDZr-E=8jkNUh(A!;o}m#7y6!J;%WjL( zXaygN`Fj%gl<&^cI0Z!-r$8mm!Nk@wjZzT3v$!R-MctCW zWAEn7W_@#kbO(h^xsCCSB~l&KHx$+<*9+@&x5sZUt;?*_X=H+AM#$vSaT=E(bDMr! zfiwq&wYgj4xAxqk-jcsLL2859o1!-rZ%mQaV17-4MkC0Q(qQrW6pclYC!N9awOJa8 zptw4|s5*tK(OfNMlf6Ralu^DXh%V_yeV@GFR!OFPOYixH5M| z{E8BdJ)kcykiwvFd2U&JS&8%o^~(yECNJ&1Bzj4a#vD*D&LpwrzjSuyZ2j!QS;@16vvTv|^GauC&g?%UaYp&{ zER8BqoST}fl9FKJv@(q;5G5VK)NGYT6iASYV0LDd#uG@9hG0IPpwR@fq##&4HAQ0y z#7-&EI0E{~g_9B|l}SG^dSdZ})Cnr72PTd$PtQ(|l6GLKQ|-)8OOSG4_PFSA#i=RM z4a^^#IJQjMfde#hfDp}f#5+nfZh(GFVRCY^FgZt>fu*A|N9isWl{)? zHWnLF4JzpaChE&|*}5pH1Ey-#+I(bhI1|>x1=0l+Lb+f(SRz$GJy7r`{enN|i~CC6 zj8~^o0g|eq<~(s46Ck7LO2M6^5dm_pxU0vhI`cJ&nlgfOMf!hv8Uvs#WJ&$6NUwNJzCU_7{r*2?)1d!`}LBGLf^^c{0}Gh=;2iz7C{tVZiG`indz+X7uz zTZh#&rHHoBwic|?`rwr2+RzFeib)`g`*$-j#@KI|+mlWk>7-ql!h?UB5tkoqyp0F{GLWq@(5 z>SX}QF(wNm`@_?yGGJ^TRR)F+9sY|FW?Vr-;U1cdVmG|9|L^E}z}TaWSq~Vy4y*?T zujLsmokk{&Sr7OJ1`iw}(nsals0Y|^DviHsiS{rxP{WoF3fuzg`An=>y9EC9PUz zApL)>4BWw*TP?93CVFB56Ew?ufwXUH$&-@Fi=&4+WiFN97+bE<)Ax!oDi0z{(-TGp zNdmK2hMv0?pl6CtM@%teo=b!deRf>g;tyD;Hms4+ckuE4YyCBh@n)oBa;x6tNX5Px;HnXz5-uvun*r_(1qok;&h zd?(7V7#$*Y8L6a01{ibV1tZh6Mn@T+r+-IBA)YeUs?os$-oN!s2%n){j2yxtBEA98 z;Wi7Uh*HC7N;8(^$QFy{>>%l2B&k`SVPS&K(lg1*I*N^?x`_2@9@dS8b@OV>`Bjx z&1HkO$Q<&M#Tc7~KTfLGVw#bQ^DInj7S>a`SUSxz%SFnFW{<@ajt!oQlVUNtu!hoN zWix0qZKK05r414^X3gL(DLI$~kAn$m${0CK$2-%OZjEX5sT!w-o{vAE!~NyVEOFh( z_KrW_^UWuY{P^Q<-gaT@z}}C)#Q%KzX_na1kNKS+{{5-+n`xL?(hlP>$0)%TOBY>S z!+(ukLyHzB=h$v`LX2{ca#Hem1zJc8eJCr6y_)M`$>MQ7J&eDD7TBNK-XnQ8}fa zc8N*6iP%p!L#CPulqgEN_?Hhp*3#m7OViYClRo^o{`}I%%FNk2KC^=@^UM zA>2#v@>Gq9G0oy^q?6avJ?X7|>@Lc4dgdL1h0f=q)E%4KjKx_jL%As6-l?ov*yg>Q z9=;{r&SGSTwrf`UT1RIJqDqGw*==#)B}y|g(?v&7$_0Vyd#c0ezb#D(Lb~R5XqNTZ zNl#zUh{oB@G^N-=r_vp@r;SI#*zI%4GA62iXlD#(QI^C!lod3k0h+o1db}E0H_oKX zQ&CGJ&tkL%N6tV6Ox2udv(!>*(_(rs)wviYWJc_hi)nNvHaNB7YKC3P1Y^?DbltQC z7U@pY*vCXlPuk+avF&(qk$IT9oP!AyA51ecfl1SlBMfg9^A6XJBAY@tIfE{2Op-^V zB`>|U8g7YlkKQDs3{#a)OZ0BXC_gt)IgZgS#PBM_m_?(9fr`?rp`JzB!jv{t+H@Qe zjlYys)Y-IwlBCV0O>7-A968JS^i(Pn^N=!&h8=8Im>pSn?#(PTM`ONO8dGLytR_bL z`WbujPhU8CxkT69OeSeE^#6N*Z7dIUce{yRN=)N*R6LpX#XptqN#}UFCx!sZ6pEcT z7LKI_QbIwT|A9&+6=1dORIP@#mf)+7NljRb&$>b(=KgmRmS{aJ>6P-fr+ zE1{%K%+EH=gE9lX2FJ_)5kf2nr-YI*F+ayJ56XrHitn!~p^VU>Ib%`$w6SGAD&&~f znb;p4{o);42!+x|6Md`sL=9^G%vocbuTUAe-NZcV#1k2Kuqq?bgH;)!`e-nZ(1Urn z|M7a0^qfhDR#|RjgGmzR8A$+T1_lj|S0KkwJQ=e}sHl@Rnk3;fh=bW=l7#BU!E83M zjyRaZKb71_(>QV?_?R3mF>;5A^@)ys*iUa;J&e#bmabfwDo(;8M1f#;?1Y zwpL8(FbmVXbSXY}m(H6%^US3)PG7WeX>{rAb59=(gdX}LwAIAy#KykdWn%5nV_!yw zPuy){ZDM0z?isT7xr!%&vVw1+0&686idf6Eshy)@UwX%}Sf$vP>^SCzZxEjxha%Tf z8T)dtiM1oh+62YE+-G9yNW&B;8xb&y!8O!Ql4L7sYsHkdGkbdc*q3c4wvM8U{f*kV zm9a1Pn;4q7*q7}lmL@dz*C{mOa=MfY8)eY%+)WmvqLwX)Fv0mknp2tnh zS1qJx=o??3iT(ebrmvhys$x_bRki7Br%3{;-t_f^Ndl_g^tH<*0o88$deX#xm7Bhv zGBID}rmv?>%vZbV>lqXKRc`uv*2Mg0-SqXGNqRnmrmx*5N%#z!zMeNp!e`L*^@2$f zs@wGSqKWnDHhsNhVtt~UzWPnZx$K3E8 zPHfxPng^7lkMW(|FMbJ z&}^akuAA**kmjdI3!t5}0H33A01i7|5_e6PM4jfWT^7AG7T~=!2B7bEr0xG(yXdEJ z0PpilqL=2ZPZIxhu`J$9zW<-gc5yAm|1+A?=*dCzv1i{Myi)3BXWfaG*P*HV6?S3b zIb+4qeJh)ta<{l2cW2$YeU|$;_YSw{ZgcDI9zpQZBm!RQWWy|dY1SU@UB}w%`w46> z(7S=PTl)!)0fMrZ;NM56)i$zrgzL8>g1sHF-R+2aZg1GTnNIWEL8o;P_?|6XQ2;BtNzWZsZ_W{}wdziJ`(vPxsp|_8=_2*c-TieCj)s80* z`Zkn3Ptgh8&k*+RrptL=WbMtde`oEMuJEE#S#yx`2u628agUuTEK*K>FE0e8& zk=^bs?kVnC7q7_Zq0Dx6yw9eIl$dE&O3XAnC1zTncN{CGS96d}Ju;RZ7wmA@vB8c6 zJHdmoGv?K5V5fF0J8syqz>XbuWY`HEjGZyB=7gQPvFs?YV}%_Fb{w!1J{UV=Ud;tN z^<&xbz>W=eWU@16IT`s>#=J%i5*Im`#Ep5n8;NTeD{(3kXGh{3$OI?s)E}~G7lv#)C*96t93HL4Z>OW1jZI&v4XWjbn z<&2uvsBm%7o@K04-MgH13b7Te)3064IwP?Z>(u*JvrgW3J?m`jyODL)b=^vPd(*5_ zqPn@$Np*9lx`*INZ(yAPs-Qb-selvd^C(@p>v1xa?xQn$bF8zaZzt<)W4lP47Fn-n(?GF+!jV=q3bvfqp`0 z53rXI-UqNRQYLBxw5`8DSLyi@t@eDGE-*j{b$o?Z`w5nPSn_<8o)H!D&KfGuodT8T zP79UiP8*eHdV-@W_k%AfHS{6wy2b5q*N*16>yni>nZ?s?9x17G*(2Ley({(j{k?Bsc_Rzp;)-KZy zUu3LPA~@QKqdhn}jH4rD##cMm(GD1>#VIbFqT-YYPN}0e*;{#rk)pt!8(CY3u7{mF z_ovs`X{W2Th3IN+4!T;Ko32Ko?W7DpbA+w;@K+9R|tG~&(&zt;J%%S*3= zYYXLD<@Y{h92MebFLG}S<=ze|V^ip_?4Da;!bp@ziJI)CL`}9*q9)6fsL3iNYOu zesX}``N(X2e^zqP8QT-dA4)(pTF<;$Sdzz@QyNohU-@w<>V?OYE_uw<~QpFby(fvmqbpKI> zZa8YAdyU$=0J_(x)C=?zv^97O?rOAnw@=u(Cm(Rgy#D0QB~A|A76B)2W2How=-o_VL~}%D7PMzTaI#T zN4Zr{ZoO1Q+MFozGSy~nhmgvV-pm9gF#YxD*Gpf^el7mB@>g?TO?*}OYV^x{-pjlf zeXmr=7Sw^l7gJx52A~uFjI?L3vefRbrK}Do?5h>dL~3)Czq?k#rBDSCy{JUKzi# zd`0ex#1+C7`Q^#wDrq02F4r$FF3T*7lKMgRviN1?OLLbdE)_1#Uy{5;y`(@I2>Qjv zWF{F+mPiF5-d$drTbfuZkPbrfbL!^`7o{%JNeLlyVf4b%1=$PYq=k?>KXJZre*V1p zlKi6NqU?fwXLp?`oS8o(c}8KbHoG`0Gb=i)G&4S<@07$T!YTQalP4EW)JTt@V`}Nx z?6Ku&7by+ok4_$~9-TUJ&taLvqKB0xWha$eyL3U%Ye`MjQjL3RGqus$QY0IRhI;({ zqywO;1y9POdy1q45LJ4dy0ci5sfpH!(`T*g*Vx2Dxd@yLmSIi$40=FE#PoNJ6Ojxno8 z-q$-O)+V}R&bub|s@*Z?izfD~)-h+O91WP*uXYcXf{FcV_h5O?#C~;quzbnHdUboS z{GEyQD)(UdvWfX>_h9*oiGB27Isa1yZ*`3d-WoA_J@rW6zlQ$l`_~Z5WvmSabPeqp zJ-+oT(Ozc;=Ys){Hn6GlzmT#Dt z$JdAsBa*8+QC|k4YLogYGUxlO%iw-Ch3KBnh8Ecb9LOB;jo1T>)idNa=|kSo&W~tfRZjv7ai^ z>+n&LUPDE7a75`(K2Ar+eEq9QIwrc~%ePJJVRscezWkes*$M6VLM_@uuEW2Zm_5{v zFCWow{~OoZMTO?aDFz^Pmn81^ANtMzB>D~iL`n3}yy6Up_=`W-#g#M$;4eS4i&xY9 zE4w7F3Q6KGg0!FJcYf;-Pp04f-=#kPu^-vR_elGH2KD`akAC-`LGycpBrXu_;*a*y zn1g*ZmOwA*WsoSuvg9fH3i|!OdFzPZ|NAzvaB%}YN0Mvk{X`p_!~$tWhU~nI-|S`l z1Rz6mUWVkn48?gFg7Y%;=4Hsu%K-pl^D?yNWk}7-P@0z^G%rJEUWUxP43&Ag5rD?L z42gLe3iC1q=4JfsBtu?ahPu2Aad{cq@-n35Whl$b5SEvn0QBT#$jQr4lb0bTFGEXS zhLpSvC3zX04P^XwAwx!9hKjrl5qTLJ@-igkWhltY5RjLlA1^~bUTy*)9xp>XUWRnM z4CQzk!tpY6<7LRk%TSG%AsR13GhW8;Wik}wXQz!UWemdcG6dsg1%O<<47GR}V(~Jx z;$=w1%TS7!Arvo%0LaA4P>Giz5-+2-gp40wWGKYT5Qvwd4=+O=UWPin3~_jw1CWN7 zp$soW7+!`hybM`*8KUqqG~s1P!ply={&Zps1mR`q!OM_?m!Sr4h{4Oyf|nr$FGC4l zh7i0A9e5cs@G?~3Wr)Db(14dA0WU)VUWNd?4E=W*^6xU#-(`ru%YtVUr5NCV1+W4( zzz#@&3^)j%q_YNFoPY~(0}9{)RKN@P06!1_f<}O3bU51vs3@LXRO71d*+-2yv z%aC!Gq2ew>#9fAly9^0;84B()1l(olx66=km!aM+L%dzq03Bdm1OX5M4p;yy;gfXQ zu*D8YfDAZ*8o&v-05_lj9zX@WfDiBk0U!v3fG`jNYJobS9%uj>fhIr$bU^4PhyVvH zgiq3G#TFZ22O!BVLy=vEAiE4bcG(F)ja`Nqy9_OM8B**rl-OkmvCGh5mm$M0Lxo+2 z2)hgob{P`vG8EWl2(Zi0UzZ`jE<=4?hWNS+?R8lLbU^4KhyW*il1>Y@SOFVg2P8lS z96$}=1YCd{Pyi300$#ue_<;Zr1VTUTcmW^a2LeD42mxUr0@MO^Kt0d^Gy+Y4W$!G~8n=UX z7w8Isp$Hh!L0!;hGpWS_PO=hZI~EU@!6R$Hqg~)JA@KMJcw!xRaszm36ByUQnXH32 zTLe!NyNR2eVAc)Z=K=2zgOApNk2it4G$NG(LJQWP5%$oc2v`6cAOjAd25Tur2X(ywgb2NL+(W};nCTIdgb+{~dv01j9H zD_{fcfCH!jTz~?2059MJ0zeRGg$0#iQ6fmSG8Ua!Y;=Q~3by#cNn!Aa2vKHzwD^ud zltqAJeZUI7XTt_NAYuK>Ztx$x;5YqXF$jJuM3f^~{B|uC>#_JB4Onc#;`fAp;(u~* zuNC}(9sH3DzF!0W)CK;xn<#s*_zN%iD?eBcf**vz-`0Y^ckVfh*&SSv16k z2a5qLWW26xne54*re74UHnQTAeSrytxE z0iT6KCw<9Flzo67sKdr@G=SffHRAW2;D5Qnl0uYKzzg_+AP@p-fd)VWS^zOdumTd` z0GxmuPys&>0&0NI2ruNGk3V19o!PDLE|S)Mlzur*J*z&Oet_^#3unJ4roiaYW9aXy#GmHV>z75VYh7<&7~hf@#h4;LOvJ*3jF z%84E22eS{xA1u>v%TZF?&u))yFWsNHU%$UVzc35i^7kd~6Yk5A>b`JqKAX&{*#hbA z>%GN$GWSI9DUtGi{ORStUrtVbl%x_6-5lDOA?6>H|2o3(|x?(1k zQ8R^fDy^rBq{1J)t+Y0~HomreYwp&>t-`JOTau*3U${ASvwm~&rVOd^mu}477{9T+ zCTIFPb$oUCn%p(hedgDqfkoQoS-yzfPBzXO~BpmoCp<9>2W2 zEVnGNOjwq`EP0tq+We_Y^-GJFWJsUCbaD3L_{HU9juiTZWWGDut#%hkqhDWI{2cpS z{-WeX>O}?8=+`eSUXZ>ZdO?X)`s3%9&&!>cI8Pv*{^YspxrK95=ji7Ymt>Yimy{M~ zNv*%UD7PrFD7`Scu(TjcYW?LzE|EwGi9G4`t6hcpsrmZ+A}RJq&n}&nJu7}zd0uW_ zVxBNBe`fMb^~}Nb((%!aZZMm`%AO4v*WYNvvQ=}FU-o% zOwLqi7D&BcpHYlw;?a1C^!wwn@~OE~6Q`z6iIReU_T>1<<&$!x;V+z&KQVctdSZc8 z{Ph!x$7ha@9$z9I|M>KBXRb5RDUgzXa+*4=a9rv*owWQJDfuUlRgW!9NlnqG6r-7F zG+OG&lAeG0nA|amV}xV!r0B0sE*zaYT0go-n*PzFN=Igoj2~G(B6mdMi1gvn!%OYi z_IP{wu-svZ!-T`~laiCvNrkplo8DGz&5*W#sU_PIZz(tDniI`Jb6!vCs$L*{e_bm! zv8H@uvQcd;kiNg(P^{0?N9#+Z@E@-$*XC*ywE}7UCnIX45KfWKe=(E^MMI@vHW&|< z1GzvVkoHIYC0~}5{>$E+H{lh$`2&9AFHvu*xV!AiQSVa0m3Jmd^S@A&s?lqTjtr^( zm*lJ*m&-I#u~MjNc%r-Df1jpaDmkSlcFjXgp{Bg`u|6M z=R@mC`u+cbq5l8){a=s$&Tv%MMA6ti+!FF1CM_X{9+ZQhVTY}K$Hdyi2IYKr$XYj2 zFk%`GS!tzhhZvMIT9D>@|__Ei;)`WF@DVZ3WxQ;JBFtIeT9bbNEVr`;3zWm6E{Mf{PwL8ANZ(_gN z9bbN8V!zrQUw&$0zq%b?er965x*cEs+r)a6JHGtf#C)|ozWk4g{r_VfUw&bd+!%f0 zRkh>GFHI5j|CWK@QZ;W(=`mEGr;MdcUm*YlqR6Fau?S0fXZy(zuw5DvhP_B@33GKL4y~Q!90tKN3xh zb`ld^rjSPki{xxI4VPof>doCGkzT)bY)22>d-b|MmE-T!`DBMt;fwDoT!5(%6 zTSen#jGEFGW=VTl*Xd`^S-Nlz?s9s2$C{1~w4e zzlL2~aeK6qwlZtl$GYY(SX5#0*pYc^H?fGX$Ft}kZV_}EOwui0!fv4Tipj`RAB)eL zdCpLtMyKH^P914cGO>uSq|FQ*?2BDvEDu`LD$LPJnlnzthAfV6P&P4$FM;}q-p@{B zdC=gB0}Kw9Q!+SjWU;BZLx+jM(+z{5%s{8XL4(W3H#m2s!Q)0|X^n|Ne1Ds13`;RM zM1{*(9yEAhoZVotp*vi-V5G&0VM?4P7V&khnSruFx54o&+L(>>whW8$aZS2ROm>km z-5BahHs~@4lPlSEw69_sdN<;;&RTr#NQ)JNp}0*f;;V+vK-r+vV3OX9)$~4&nuh9| z_^4c+KJqy#CI*)n20@vDZiCm+_zTyJVQ?^47tdI*prfL!9zW8g$HXK)@O1{t2Hgg) z8|NN}Owv7e%ov%i@sTD~6O$JjCPA5jZi5G5vZCzF7-`aLViK}(It^q2lc3Y!bw)*w zPtA&H=t(Y~wV-3s)P_)wA!It{|$_+@orS7i+_d!)gDi9u9kIs;{cPJ=LrPsdTyP?j$2npJU!b4D5r zni#ywFbK*FbQ&D|^uKhJJvL;JzHZDK@eHFCUpGP~23HvdL7BeMz#usI=|7%9`t+|b zSn+iuY+^8F7zAYox(u3s`d3)2_`VS_v54;!y7A3IHs~}sn5UP}zKUsoo(_K)<11X0 zzHWFn4S$8JH8F^<6uR-nLN@3$IGCs78KgXg!QZX2i5nX2qHnTY+}U6kqcjiH+r{}b z|7RWb^QZZbC)mYJH2Z0OB0|R;ZWrI3PGbbL+r{sO?BbO){~<`nOtOmsns){4;;}Tp z=eLVzEg}uUZ;^%|wF6ja-u?rd*mR9ud?sZVr&A0-e_9f!>?IvQjkDi47hG_))Xkdi z;rp{_&n6lda-*@{6x&GsLv@Y*aG{F;MH9{e3t$CofE|zk8E^nKfD>>5Za@J%fEVxq zejoq@fe;V|B0w!r2h;-%KqJruXaGwS1V98hU;(Uv4S?1lhjbB_0S8b6H~|;n1{A;p zsDKyn0e&C=gn%#*0cwFdpdNry7H0 zszrhhAcBG;f`TK0f+K>0BXWWxa)Kjrf+KQ*BXWWxa)Kjrf+KQ*BXWWxa)Kjrf+KQ* zBXWWxa)Kjrf+KQ*BXWWxa)Kjrf+KQ*BXWWxa)Kjrf+KQ*Qi#|Ij@Su~*a?o<369ta zF7yyYfCGq`;E0*vh?(Gsnc#?-;E0*vh?(Gsncz+UF%ujy6I=lhGrz4MAQUF)C5P=1V_{a*8m+r)C5P=1V^+4N3;aD z09L>T*Z~PZv;;@A1g`-QEx{2j!4WON5iP+HEx{2j!4WON5iP+HEx{2j!4WON5iP+H zEx{2jK`BJM1V_9CN4x|_yaY$Q1V_9C*8m-823mktpbeM=2>k>R;D80N0ye-7NPrAD zfEvIFxBxex03JXEynv5DDfDAG00e;$5C$SZEl>y40}VhU&;)3J4m1NTKr7G&OacxA zgaLvGaKHjs0UKZkBtQlnKn>s|PzqgGb^{9F0aU;X_y9i;0D?dW2m=wI7N`U2fd-%v zXaY1q2bzHvpcM%8&LQ*7LHa`vmJkLaKrK)Q)B|$gX_Po10Mr3GAodd^zzz6;T0jGY z0fHTH0X`rCGy!dZZ7;zIc!4m`2($wB{<(O{1RoFqnt(RIHb8I!ULXuK0HZ~;Cb0yF`vpI`%=fENe@jX*14-9xAWR3HR204;!JAHe~5fFMv0 zGy|Bi-2IyRTH)2ytNN?OS2C|eUn#wueYsltZ<$?D>dT*fBK|~qXKrU=r$D{=lQ}h4 z=u7qK)So}|c=YkoW7)^zkCh+IJ(_q_cr^b=@)7lsg3+hH_)zAd=tHF)*&T7})t`GX z@u2Wv{(H~%CsqOmqBK7O{P{01vHho+1zRZ2m`%3p_?~UJE&gQa-tdPz3CVSQ1 z!ab>b^m~eTXYP*PUAilKmv&c?diF=RmhQ~n8Nai0K zGsSc!9Zi>R%ib2ht-Ln3HnCP%o4+-At9onUmeei!EybHNH%D(S-ITp4epC6z+>MDF z_pZsViLWW&kh>vqgK$Is`sDTM^@ZzF*Xh?4ugzQ=y|%PEyLzy9f8rY9ntUpmQmKD` zsz>iBUY)r*diB7n)GB>dab;#@bY*Epc13(e`KsJiiK~RG@>eFQmw(}k)D`*_#pRiC z`uX=Aq6S_1{OI|m^Rnl~&nussJ2!EzaBlvbg&g(aya`jX<}%;Mg&{?z2D>ZyfOQm5#r6i?2a96h;o zQuZY6q~eL06Qd`VPRO1RKcRel?)b#@k!F(VYPy+>j%CGy2zKk#GD|xftxVNn4)PyRic~8=#dJ0NP z(Uqb*@Ow&&~#yI{}Tk~Y;= zu%@iKwP?v$qLvcR@;EPxIWZv$VqQoJs!(8PnK{~`Ztfxf-`dOf`~UlPu%DHlFxH*g zwGhsSSZ5D(s0D#J_g&8v7vKgIpw@E}Q|f?vptk>3S_SHX2A~mW0yIDent?!Hnhxn+ zM~47SfClJ5GtdIG0`Q`g=7G($4QK`0fJp$`vw3uC1=^&DfSSI8DPF(__<;Zr1VTU< zhyZTSopft}2T%bo-~;?X00;ugzO8f|paNdN2l#;i5ClSiWAEKesR5jXQF-gab~m5^ z9zX@W0QY2>BJ3rI00%696|ezzKmr>2wo#4(O@IdIKr_$+v;u8FeaCh>184-A01eQA zW}t;IDz&ZHUbklloewksjX)Ei0XonOv;eg|57QYyJfvjf9|;`t(jZ z4rm1G*b|g-Bn+;&05{Ok`y}lJng9*Z38PZmjO{HzE6@fsYERQyfClJ5GtdIG0&Tz~ zz}52{9p~9i#{tbi3(yL*0h0ix5%k#ebO_J_v;u9wB!G1h1V99WBvm{rwK9p7D-NIr zuLUG!r^n1;q#WfdCK$LO>XZ0Pc>%1VsTnfC_j4AK(W9 zK#(vhjjn-?jEWI6u<+hfEVxqejos#%|-Fyz4rqFAP9tjFc1N10b4J<@^(N1WWWK`08YRK zxB=dAC%txn6|ezzKmugI0n`8%&s}sJU<2%c1jv8`r~#Zn8(#8B0Q1~Kc?F072P}XU zumK_}0~v3+1E>Lq5*@Bw}x00e;$5H_|AzM%A$hOiU{B0w!r2h;-% zfQHvk2bzHvpcQBXCIJGqtt%oBz-!85^bT48D_{fcfCR{Z1K_a{uixN1XE|__^}tQG z12@?Z+$0^iNj`9svCi(munfCR{Z1E>Kk>>)Z1umN^J0%X7eSo*2ZTLBwj2P8lS z9Dt2Ig>wlKAOjAd2C(-~*_HqqZ~!%c6L0}Ol>8PH>sFu*m;|s6f&e&rs2tY-PQV4Y z0R`{?0hHb#5CXzL1gHh-jBO~}0TkRI5CXzL1PEwbnS7K{LV~nNZyO;DM1WeL4)|ZV zui-Ddg9X^Q%gRm0Jy&ira-edPksp z$167(`Cqx|V4udmr$_3_C!bWGEbL0{(sva}At3rhX=iq4d}leABaHwdm+wpVseJ`Q zB>;-^(Z@=UW*?0|T7D$=Na7LUk^IBShgCxNeu)B=jzGTWltO7~^&i{Dqi_h9q_guC)vlUr3oF+jhwxFxeCx}|hS_Kx@+<;}Ux ziOs_1{HEk4byHzuYNNifxFNG4x}mf_yFR|Ye0%(M&$_+o{@c=PyKdEP*>}^xjlGA| zMo?OnT@_zdUYT2&SShT`uSl*?R}`-Lf6UzncpF!GFZ?qD62K4xV1@~69t zcZKY3ax}rgStGwW67! z_)uslyD_mbyfJr0@`}h6%B1lC;-7Im0A(;W5FIcF(*3c1t3MNoM?#ToU!pJEms_1& z9a*icPOXZrGFPQn##UM@Gb`dNLMyTtCoT?OoVzG_QRE`!qSW%}a&vk5!q|n@g_&jX zWuax+rHQ5CqUQ-R;gM6E9|$kXEle(qEL0Yz&W)aHo||3}TVO57%#Y6x&CkwD%o{2g z3m|?@h)32B&(3uvyCPjmS1J?@nW1!NtkdeuoE<+qbawWv#9869aank#im))G9B@bP)D{s(H?HkwI$mkZAx3JHQH*n zrdwhyR!hbj`JCqij#R~}tg1|9{5Kp2;Mi|8>VHhN)Ql2WLW&Rvelqw>jQama9?Bp8 zbN~PDU+}U2c;D8Ltg>2pTf|9^{=^ZTrHCAWyby_Tt>eLn(E?jCX zN#Fw<2sHt{th`QbiHi#pTO^4OQ%Zw?8mqHg#a2R}bOznvslEf!D5o!W@S$Se%r|6Kazu+`U;xm+D(Gda?p_kn)wu$ZH zI(lyV8S5`RuypzA@oGiqwk}(T!ReC3=jkmi0X5dk?xDrz23l4p{fs59TQX={RJ&|F z24_eTN9av00ckumQfIHDwBn2E>K@yo+GXo7I8ze%GKE-lG7*7LXAyY4=%VMgpRoYo0tf=-xS)M1c*s=@Goo*@Z*jeg6b!!!g!FN^xTmTGm<&sd!f_N*GTCEC7;&y*y- zNpETisIguai6`6MO@(2Z30&1*}Ew)J? zFJ-~DfcFJ#dsyd6BEP|rP!rI{o<`*OTEdaG9iD}f$ZvBb)CAO7+-a@&B_QDe+a(~g zZTmZmB!R!nflw1rXY;E_v8!rmb60p(&FuW{4*jw8=Nr`bzn`YRKF_6IL({)4a;bOI zR6*0oLYF#=rY};z|7A4&@dB3`rRnF?@BdbsJTyH$&81GG>0|2u-%Hc?+v#^``gt4u z4ox1Ko~dxDGidsx#icGScd373y41~G0A<632RJdiF5vC{jwrp4=hrvgMD{#py5_L%BZ1us=5P;r!@FS!b$h$rhDirig401zYDlQ`H^EZ zf1nanfoAb@;ST}}v;ckdKWJWn5BT#>%cwbal<)%s)DG9sX?0K!8h}DU8r}Au(p6+S zKnd_6&JPS=f_lU?fJV>++=$aa8SvzvQd}7_JwOLlhzo#fP(yGN@O@PL{0uZ7&(H|9 zJTF0d=x+rA^WsLh26W&BRR|A&T2Kd6ggbx}xbjaayaaRL0&d{P92lSiR05NN#@Z3e zk=cZhX5cdDt=*soZ&;g$-lh)krHs%YtH5*gdqO+F^RLrGzZdv`9~i&{)x&>9?*(c> z9jFHlpb@Ae|41bPC7={IfeW}n`N*$n@c@;e3Isqkr~wtjZj_Fw0s&ABYCtV;9|};@ zASeSKpaU=P0Sli?elc&sM^c7L@qlVndJQN+rIhBON^zoQOjK(*&}l`{5?nKW)U5#& zT3h@Lc$-Gxq*aERr0Kn!pn=vKYEhkyQ{WZLG z8K?l2pb7+lhRguZItT&_w18IN!+f-&Oak+vfimC$I&d7Nc{4CuCa44TpaC=jXE)8S ziCHZN^`HSXf+pamtpI)4H2Y1!F+!ApQs4w0nrH3B{1S!P_W~cN!K~JTI#3T3%$v$H z2ueUXW~KsEf~x#eO0UE$RDl3!9;Ub;us{p&_R%K!KA$?adX@}biG_GO1$FPF_cLgl zS=)C#ttrDdPz4U}p^fh7J}UaI0~CJj4yv7F)VNxH=zdxOhN*$nH~cU@$j9lIN6?@- z^b}QA_cQbf9H;ik#_reXe@Cfd(dc}W{&tvJ7p)`jP;HA*M81#q+^^sh{Tf9cKZ4Eq z*Rd#llj{8twH20(QqK}~bOtSMLuXLEch4Hzz)X~&`OuV?e8ICP|5h6n$5l4ANmdV0 zvAo?^pdu_^zOCF(PyOy)n}tUAC8rH%^RXrQ|IV-bL3-*B4E55I3ov%Q9|OA6in5Ak z71Z{9cYJ;D1^H@5{^Kr1L6A)LSk-24dN>u#WdGGG7` zl!FR>dI(QJ1*imdpdK`UMxY)i9H0c00uRuE7x+LU_86K#GYA5)i%@_H9Q}}M7I#3TR&;nXP8wg-uq#D$KTF?xFzydA6fjyNHPzszt2VUROli&1l1$!g{y09LsLUf{I#GFG=XN&3fe$BC^<@$0w*W~I;f-n)w*~EsK+lhfFQ6y z3sCTjDsTW7a03l^fEVCy8Z>9S_}y@G20upk_hWQ_KSuZWV|0I7bqI{^@5ku=RI3C= z_or_@0;Bu;F}go}Q4tv3-;dG#X`4r2bbmia_os!5XanjnQ3iD2116{h)u0YEf*@!G z$_U{APM`rD_(3_S0=6gozayVUK2`Xh0Olv@k7FNOA7?&_e-xs-0wg}fo#c}rL_SbH zNWC9@-+VuvilwYnW;8w;8qL0!crW~3?%m|Ok$07MQ-`C6&BN(;V((b*MBY~3PQ4X< z%X}+McLlKC%)AkQBlJf0^~CGp*AuUWU(3Ckd^JM%1xURTeZ_nw{c?=&3=seS{Yrw+ z04vBTDNBQ z$M=W!XKzW|622w3FS#$WPuZ8cIeN2sb9!%VueCR`C%z}NXX=#%q21Z*6Lgn=Tr3%j z#FD!rbeDkCb(X=;L40TCn)o$|9pN3ZtGl-wR~_4y*cRTF+nU@O*{Wx#_f@ykP(XD>@!7QQTZ zsd8!RlISJoCFu>Z4c3Ot`uO_L`s}*Iy70Q(+T_~ET4il&O>~X9COsG%v<5Q+)Hy`e)U4<%b5{Dy*qPRunKR;Jy#TT^5;MXxa?_L3Bh!`XscF$^=CpK2ti$Taw8z^+ z?b)_OTevOPnrw}f`mH z`fOdIE?k$Z4cF#sk~NVUr6yG!tv0LEfmpx_WUAs-p{i_UqB2~Wt4LNvDwK*;d9>Ut z51CmbVT6sGKk1M76@SVX^_jl3*Yu|Km~QDAPuvsoWPhVR0ORfdGmh;3$!Zm z041OlIDreefd>9-sp+@Bu$CfC#GhU;^6 z#2T(A)^I(shUv zD%NmSv4*RPHC$D!;i_T{R~2ixs#wES#Tu?E)^Js^hO3G-Tve>Kfp*XVrUB&`p#lde z0j0nRT)+)9PzF52#C+;_#S47E4-8;}a!>&(K@|vqYET1eK^>?E4WJP;fo2c{7H9#j zpbfNx4j{xqDhg161C$UG^I3{loWKR#Km%pK19ad8KHvuiFhMz}0F|H$1VA;Y0kxnG z)Pn}l2%11M2m%YVfL72(Ow4CHUg-deL8!n1N7(192DfFBsZ1m&Ot zRDvoH0M(!d)Pg!t4;nxtXd))&vl*`hfdyJXD`*4lpaV<;N{~>21C)SL-~=w<1{x>> z9-sp+@Bu$CfC z1rAUGN`Vu&fE#F_40wPJyub(iz#t~()5I&~paN8aDi8qGpa#@}I#3T9KqF`Z%^(OY z&;nXP8)yd|U>Z>R2o*R$2`B|l-~w)-5fk%ShF3g52VURv;1TNqP8YlxEpaU=P0Y5N+ z3CckQs039Y0IER^s0DSP9yEYP&;*)65Llpvn3&I2ywV2RK?e|r2nDFX0ZKqAZ~_-_ zgYg}1>~{}+ViY~PAAUddem0dzg;TlF)p)Z_~Fpu>^lj% z<6rLWZRyQ=1b{h zENLY(BXPR(U-resi{Te@FC<@xyfFNH==tn(iRZ%4<(^GG8+lfFHuX%D?){g3I`*{n zbmpn}Q=zA_boamTles67Peh(jo=80&ecYTFCqO*<`Ht*|4~7nA?@8Pfz9)Bg^6tpp z%H65EqIa2hrSFX0Y2BH*BYsEdj_mD;+rzi#;>ma$c1RAsHV) zxjD5ry4T#B-V@tn?aAB}zbSN6_Qu4G;Tv-|ByWh^FudD-RIkKRboW1VSNgixb=Gy6 zYvb33uFdXD>ypfd_=eDi z?E1v|@cP`kRJ@JYr5h%Pmkrh8+(R&QoWd`W0Y zwkOdO?#V4qE{-f#7N^3|uo+Hw$GWZV%mv~kNBr4^iG|^XxpR}}M$T2vO)ZEnFc+lf z$L3q}GxOr}Li4h76LZ6Jb90h&B6Eg+gFgS!GtD#8XT;91&dAIZpK~mL;pR|twkgpR zZpt+#8zYTMW2zzAU^b-dWA#>jrY>F=s>{|UiXQoks#ImP(yUBZ#44-coBp&fMlBf`Z`>R5X7z*~)^nbuC*m3Y-1q;aZ-N`Tj$LSB#D1SDLn#ete4$M9UE^HyXjTi&sgWpl|5_hT~chFH@hW?->0{1 z5l~}&Y(8nV%aJE@4aew4kEz#nlS)CBah2rOR2-pNI@b)#G=N&E>XLQOy~ zi^SsnjC-jQ?s)%HbP$^zo4*0Os>JGno}RHTMRnAUF3u^j$Pz5o@m>^ zu9GA-a3a(M)LA5+?5i20_ao81>6vHSz^<1hHd9KgfEw#%i(PGiok&_*se^j{@?R<> zUsN&Awz=CN$qZ6j3ynH~Oz2~aW#%_`oSEZN#-m{YZXvqbvC~T zJ9|ndR+LIyxi))z--nml`S~s0g_c7XnO7p zmpYTCPiIo!eVYE5#{M5#?o$7W#{b_(lZ&QDm$}s7JePWSF5Lr=#{d6a>i@rXj!XS9 z_5I&X_W)4n--laWY7<=p@D5!Au#m0+_+9G%zcxg_Lw*0RNB@7C_HFv6bt4`Be}Am~ zpO62=zwj)N9sh5XRNYzpaY0Q$FI%kYu*T=B&bIQ6Roz(RkRxRvnj1bK#ldW#WE+hYqQ7h_%ya6 z*fTdvGSA^ms0rv}Pb1S_x3+JoEt1T6l+!Ap#(LRenJ4OYVm~gw_SwFtwn{SRQ(B9F zbk8@^#}>;xQMZfji>)nlnaoo~zBF3CKfGa=pKj`Xpok!i16+qs>qC7EH$ zX%&#}iA~Z??#NS}`K;nIpOd~dZ2KKMB$}h1$>(;ifvs03}lrtgST#qxMd|zkw#6|)8I`hMY`#RT3GM95Eq}$zbCOnPI ziIs&j7Z+w;C&^sFnUL;y$C>anGAF)RIMcR+wM&w@nlqs$ppQM(J@2aW_q?;$t?e?> zm?X2GGodD+k3H2L;i?4R5ze*@EwCL^UN6a9!q3pqnrsf0e$RgWZKrx1-A8bk0f&oXF^Rtoz35HZ|dL+`6Fn$;a>hq_VH5M z*3P|>#49-wY6AM$(pKjZq-X}@iNm*?IYHWbrO-Gei@+}SRiMS1UjTl(IY$K)i_V=&p zqwJH#-Xe+J#RY}b$%Hi7d_kvvoD&5N*$QggiQg|tj8RIPfOIcBGQfU@f`-NmYKy&9 z5_XbCJH*+R#4iFADX!J->@X{W-chy1PrjBp`f!juFd_IQ@xGu|K~p7 zQlFURQk!q3WBD^(>fHS<^_z6;-*+*c8=zzVt1qH+19a?vJ54^Cp1IJacF^=b9si$C z(|4EBF+EK`>UF8t()8;kG?oBOwK|04tJXZSGA8DHvbv3E#fhbgLAK#euod_m_FFX$XwL2U;(cS;iDl+`An#s=8W zP|!K!1+~TAC5gS03ko#>O*UW9xy1`Q*H%#5QPtg&#Jeb^O+bweu%DrzbH@v6i@iq@ zdyoRDJ1@sV>L5(!3p%fOLFd^DYTIo)C`r7R-oH&i8uE|~u%Drz^TrEmi@jG8`v66? z3rGVWk~M6;55(3f1vP{*Tt}TQR`$}^XFaP|_Swp7+hx2@68s>AO&3sO>)B%Etq>K% zjr^6rdd*5A3sCW>p1eNYnn7zK6+sIfI{vGU?WuFrqSp^ZJ^ zzCn9|Z98@kNs=F@%;^Hs7?5NgTdct4qI~RAUcQPyWC~x?-#f9-6S8GLEXjU~@}>!> zv9)ZmQk%jYZkQ-FE!tswv2FWXha}NYQ|L?qHMW5*R_sbqIoy1bg*y};U!_B~^n@h+ zIW9QV1gvFGyWorM1-I>gJtB#Ip5kT-NMl8k4eVzw_~MCz+tMGEq>oTyhkzPe%@!+o z!FnCqIAy)I?dd!w2~JXEn}8Zy#TF~})b;wr5^jrqToU^VmltXR*09COTd-btPThEi zY5_wY&~17z}R{>on!$&anxoDe^L_u2E}#=sIk>-v0@i|%$-v|X4~%1 zQc@Pdytde{9jd7hG!NLoW5z2VLqJhh6Fi4^TTjP2a6|se?OQ z>R;}2sau|Lsek(em%8&!IuEdy#`k;5rT+Kdy3{*Aaj8!F_x_J*EWdBN)W=_?w*DLG zy&j`+|Gw!`M;~>m3wFEI?@-%+-}Q7Zf!hABjJecbQJepPT`pBe`~MLkexm(s_8vO^ zKljms=tf1+ZSG9-?G?;cYaAyD_`MSfizSm>1T_594EFcNFCd<*aKgd z1RkM~HUTxZip4118&A@KEx+CF?cLbl8(y-(wwl>Tm3~DMo2I}H0X4RUEmqF_3Xa9D zx3{l<^~$mM@dDfS0AH0Pf0L7;CSVO4r8BruaZSO;$q$F~$>CMu6|0v`-7&BaZ2g)f z`CF9ME}+H+*kWZqu`$KLWVk;}XO1U6V%x6Y>yq5xp~PtdYHTfAY@cAt&i=ZnMHf{+mh^~lsZj7jjd&imAc^LrczHiwzCiU{f;C$ zL!mPT)Yt~LSh0(J+_NXXLhb2?CFy_61&5k|wd`pZ+hS#I2RTxalv6g zXyc^AfZ4XaqE98cKckcm0X4RoEmmIpVE{!J9tPNhzaRx1{3S{9aY}0! zP-6pZ{%WIwL!SIj=T1UFiZg?vpC^6wl1bpib>LU8M*Nk4qOPbr1;hPefBEaQkI z<3Bh9>H-=pGImohlSw~(B>@UDFc_YL{~HTQOG5sWL!d68!OBBcbL;e2$k!zy|HUCt z7tqfl1lQF}`kAP$bv*^$5&n6VQ+@CXr#hXcZ?1Hz8!vaN$N$5r-c0TP3Y`PE=WUl- zMg0JtqvQX!`=}59y)Lzj&H;S!AhqSw^m}{g9s*C&wE;hMsT=4Vz+e1?t`Yc%`T_iy zj`KfsssHc|ml}K7rT*eaE_LtwbgX|n^$SSSaX(Fu)A4_sL9cbI;>Ux3^1Zz@{-5?l z{`j9~ewSNm52GtTwStb`h4KFrzAj(;*np~)NA98_NkIVA9wX{NJ!m>kh~V8cuqi0* zB%HtnynTcZ_(AzFQ2{DJ%^{)|)Pd$vLODvPzt0XJ|SKS)o38w9)A-uepavMj&to)Mq8zvm zjZnFP1_Gl=`ejf9+(%xb{{Us6HuwryGxP?{9%uyWFyR0t z#H6~d@22s-8$ctdKlU~~1&zQk-lbUv<)F5kr~~!Tz>%;4Tk&mecKnOd9UtY*^O z2IwXFsEBg9t&G0{RDy;>L?dVdTK89}@W8{5`tS(oplk?FfzFQ(;Sulx&nTV(FF!hp zN5BX4V|WUD{OC9y0Y5QmZoPsAc=rK6Kf-wLeqaE1=MkDwPzLlPX?kPe1LmP`P$5AD za1Vcrei@X3h9g8HXaWtL-=?Ra3Dl1g4WJSDj}rzkL7nj(`W0f*+&19#O5@L|;z0oT z`UpQTK(+Bx`jkK|DDNXGKqc_*`X&7Z@B`N&!VNTFjwm#gJ*WU>f^I9|0XnGYHZXd< zZHqefrK+hf>AR-weu3)d=!>ZJZ_>K9D|lkA@^`9GkGD^L$v48cz0cQH{)PyX2UkXlr z$(s6-I7V}jzm-Z0=Af?dSMskb_?3E|$yWSIZQ-xvUsv%f4g4!@_?4Q%U&+5tU!Pb~ zfg5O`40u3Y_pfP{8V0!CL^B8i3$%b%&<4aYLIEl$9iqkB1>8UbWxxY;-~~R=KsVE& zE#Fd6dZBN>?-ics^57QXI^bHuPilgjL}~s`2xZ4N2~W$BkA=tV{6u(aM?MuE=g=2~ zr|bw(KJrE3@f%+fp6WiL=_pZo=v%^5ca&&3@@@Jv@g3o5-xU?ku?4|9yjgg)?ybVx z(Rrotnn$(^uiCj&c&mxH*@*A2qkx@(W{T8H)tZz(OmUVSJ|e=&N8@M1tt zZ`F}|iCy;#Z^h7q!dt%UVd1SAPS7tOdPI23MjjR3pz%1p%b_ReY2Q=A+Z238cw3G= zE4&_B3%m-g1zz`1Qg|CWU&6b*Om9E@3jJBLA! z;Vq#R&l?!}w(z!5rIbdz`DI*3t+-Ju?WmP<)QSVO5`bWZIo(7L#;N?Wh$CwbF)KF;Oc4)Jhv_MMteTQ7bBH#XzkzpjH}CD=KQG7PZofTCq?o9jKKC z)Jh9#MM15UqE@OfpraCksDw6Df)|z0ic0XH653Gy78Jc5MK4Fu zt59_Nvo}Te7jmB_KgYcQvhOC|4ZoW^oID&ktQ=0g6Me^gC;fKpZR_pKTk*F-Z)M+1 zycvEo_eS!K$Q#P%95FEdIY$hPKN@;8`$*!E@FTfIG7(8AiPWL!A@flB;n>60!^es8k=;2; zf1B7bbam%;an;dnBL#O6h;HuOB%((*j$EW+Wn^V=Mdsr8#i5I{7bPwV zUzA&(Tpn4jEKgk+z0kZcy)3rOT9#QFUm9AP?M?KCdvi;YOCn2@C8?fhkJ*!699!HS z&UGidBi%}O>VoJ6<^}2VW9M7vXU>bC7dkJyD6uHKD7P@VFtSitm^wFlu6b^HL2QAw zATvKcKQuo(FEMXut~ob7CpO2LlQ}2;8;k`wJT~%wcxG-!azTmGi}5S%gFfS{*XUQyNqF9&YSc`yoxuaM|D#__8X1;A5$%L zeEk2we;W7ROzr=}kDX}$pLPVpPEDM0`G(|d$ba+M5U302XY=Qdrk9L^uh_>Lr_lrx|%pr6fWOuYtU{PPH(!}((w zzazL!I@r`HZPoFin)Bi}T0I@m)!V zn=_y;pr6fWOuZazA|q6|?Eao4gGMi>azLH+v-ymZ-&_>yN4S&o$I9{hl8iFWfVzMN zi;OEzaz+wY`QzN`vL4$C@&}R-FNZ*#cCJua5Fxw8yrK*5z&!rHv4VV0lHubFs0-+4 z^BKig!hyMkE65*8GW?tYbvlAU2Fz#7DPE2_{C{KRI4a37I0Nbe(v1lxGK#N+1LqX3 zAQ?%9$r(@=(9h<}QG6vFm|eJn{E;N1oHL*pux&RItw?xKahmfa|qN0G}wH|)K6rhBq7`K`@bY1O&kJs0sSln z1>7WdOj<|Aztz{TTzqlihVd^X8O@vlbpib>GIkbSeAlmB*;QCsKa^wyIRokfQacWr z&zM?S`ENtYu+`OHN-`|YfVzNwHlI;!@udvgs{U7!j5f}Ix_~BIYcXvVS85< zej*{YLAu~7x>H-?9JjAw|{8$n)lS7~`pux&RZ0pHSBq3*T2-F2M zSb2zTMfs^Dx_}0|oxa&Oi>Z4M`9*m7K+o(@;d=77l901G1nL4BtURQ%@SFGV zBq5y~0(AimHXkze+kK)WUG&vU_kJ4t>iwA{B*Y<57tmm(A%B0CQ@xAY`GYiliQ4(s z(v-W*sXjo{G@8DCsZ+h2rvGz^Q+?!Wr+U^!PW8LXo$5B4RGOY&?^Ng0^!;^C^}1zF z)kD+kOP%WCwNCXf*HE8v;1TOG@<8EdX^LfgEmE-$3UII_AH)>_a~g1y4sS^_&tNxJ_WJ)EJzGdysX z7oJ@W7u3Rq_3*q#ctJA^Td+rTlD#TirVf$!=rG}fj~ejt8u)x2e6bn65+pSXwBq?2 z3f+WUQ$Y!E0u7V_572=Z;Ev^*ADEyVRDdcF0M(!d)Pj1@02)CPXa+%GffgW+5eiU& z1C)SL-~=w<1{x>>9-sp+@Bu$?(3`s7E`^6(@I5zT3_Sd_5`MW3e%+wocK?Nmzp2K< zAJyPtEvN^LAP6kb0+i!~1C)SL-~t*b10J9QFYtjn`djx;8sOhH!Jjqb-BkKN_s^a1 z7jF2g7Sg5oTj?L#crC@oi*SGvPzs#D1Wf2fR-f8~J3O5u-O@W&ebsR#a@7yiAE)C@fQr*io7N|+14 zU(~=~)xm$&kFFH1vb|pVhZfzH!hMT@hgEnOuZDNj!n^9>J&o|*7Wj}jP99R>BPH-L z7kpBKPkZ3AUiiEpzG#qIIUc@L316v&Z<=D2aDStmq?>pWm7pFk{y`)BLoG=DP=|l* zgIPaGx0)o%K_v))YETCnK@hY8wVNmfZcqkv-~%S81l6DpG=d;#1?n!s2vYjrRKTBB z!N044|4>WP4J_&5|8Bs;COphFuH8$fL@m$wwlOD37EP(S(^uABr8a4rLyWKOA~E`%vPc@I$!= zlMhB7%svo*z$9>}%;%yRJ=+WM`Gm|qTGlyq{W@M))riZ8JrX{CErYX}>9nlW6Bi$Zrx7ssp@wQM~wl&cj zZq2nMTOut=OUjB`rj-uHf>tooESghI(I&Gg-56`M8Z!;?hEPMcK2aa8&($UCB6Uh# zsy13{)~0J>HC9cgI$j;B&IS^Ja3EKetcp|(|Ay`UX-~{!c`{}3&wc;DhyM7l{_+-T z|Nq;^PqhC}AO0mD@ORnT4E|nna-@q-jzC>NgUz2DnR@bg;tWj4)@JYzl91UP0(Aim zRvuz&Gx$eI$T=JWbpZ`FA2Rh6^+ZWJZRhv?NfI)LL!d68!OBBy=lA}%BxF8^KwUtC z&4=(Qys;BI{LfhH9i88!yKLf>v9n@7mxL_f5U2}iu<{Vw`Mu+kkaIZ%>H->UK4faU z@Wf{_*VeR_lY}hf5U2}iu<{Vwdh*YbkVPB^Q2p9x(>xV*P;J^5EjNDqfVT|k3HlPWq;O!^u7;QQCD8(3U;9{m4ELY8m{ z)CDxzVj=maFNE~>7Pb%nnDQinaM)j86J}OJFxg5vw=@>ipQx z<};>lx+cnDYw%Pg8LK%1>H_-Ne8$wqwTTQ{d#5VN=;I8i3+QL_8B?3RCNgZzoeoJx zgfpNnpr6fWOx>}Y$gpkYOC%ZnoB?$K{cJvC>MqwrhHWEXD#=*G8BiC{VDlN z$G&#`l8`8eKwUtS#W*@B%cLK^bE=Dm1E!+TQ3GAaGnQgVQZ{i4)CDxz@%nnWM1AI3 zr#gq){*O|-{|=g*G$pCse-TZ8M(zIB)8wV;4Ql^iLT&%YsLg*rO*J%qc%f76qv;>1 z&Ho@xt<(qLtJLnlfu>(N69sjR+a_aH_qzcO4YSBe^>!b<_7w#^ak{a5~H3W45 zO?JG7CdG_>4xF;MaCfm>lCp(UAl;*dG+6l}W$VmcAqm;aAy604V2c&y#L8jo&0Q%8 z*~TGI7tmnkC9$pMRg#eH90GL#{VYndt!RhB)jdmXYk5GDaW!W^T|hsJg4|RzV{r9a z+e%(7$=JaeP#4h8Vin&eite8DEVZ2&sF7q`!x>N)&|vd*H8o@WQ(tOdOKK${J2?dE z0vfD5#I};uNkXpW5U302XY-%P)RN?PwCEGDtt0i4jO#c9>H_-Nd_jus%+Zo%TSXcq z8M`H_-Nd^w6`P&sUCNTVcUH)lXyK$AUj)WDkcxT|kpP zjiU7M0zUS!v`A9+athQ1q}vLS@{~{yFMeYwt&)^mI0fng`q})(tLQOe&r;h0)+Wi= z&lyk`&|p!LZACkI(&}hmzS<=rw{i&71vFTBh;8xekc1rI5U302XY(t4vD%`Q-nMj2 zlVse+8BiC{VC4m|EnL$jA;TO3bpZ`FA2M|-eB%4WwrtIigxtX)P#4h0;?jq$A~4{`?71@y63(=}&Xiq_RdgG&n6jV?*VLmUBh0sSl@uBQ#}q@S@% zWG@=*Us||S&6Z?5%o$J@(9iCnLKM$fx1@h*;bL`;B;ycgKwUsTyNSLEi)Soe-M_T( zD}9b6Bf%L^7tmn0(xpeJtw}#)%T@1ss;t80YOW;Y5e|X6fPQw@DGSm^1?d#WCe8)S zlVm*38BiC{r~jcteS^mO>!IWSzov2iZlS4~rVkg z_v!rcKiBo>LD8Jc_y2F~L;ruPiT-gkgCMYgGDN7r0ZKqAZ~_-_0}Ye`572=Z_<$c6 zzy#%>0#t%35CGMn2GoK&P!Adin!`psZUW692rQuNB2?f2C7={IfeW~S2Fid3=)enn zzz+;yf^tv+DnS(pfND?!YC#>yUqfNx>Ip|9Xadb32rPiBCmgtX!l42OC;_Fw30%Mp zG*AXSKnGsn1Abrt6O@ArPzkC)091n-P)kr9*5PqIXaJ3%2{Z#-KjE-I3upyxpdEAo zWt32X1C)SL-~=w<1{x>>9-sp+@Bu$CfCRPAONaC4X6dUa>7v$8bBjx z0?i-@EYJd4K^tfX9bg(zju0wvfD%v&oWKR#Km%pK19XDs5Z6pNe83M3V1jahYbG3( zpb7*)HK+l#pbpdnjH=|ofKv{PD&%MeL12Lv&JLmw@fO3pbfdiC)QiA5tiN`MB z1{x>>9)PPQ9A4l9eqaC-l!FRT393KBv? zpc>SGT2Ke-K?7(6O$5y$u8?p9fdyJXD`*3_Lc)P7BpkRx!htI!9JoTlfh!~&xI)5# zD+aBYMm z2rSS7T0t9V2OVG5nz!l45% z@Bu$C0Ir8{l!FRT393KfeW~S2Fid3=)ennzz+;yf^tv+DnS(pfND?!YC#>S2MwSRG=XLi1Quuktpv?s z8y>fV4j^_B3Q&Oqlz>v;1TNqP8YlxEpaU=P0Y5N+3CckQs039Y0IER^s0DSP9yAa% zhmCmL1e!q*SfB;8f;P|&I)FGtC_n`cPy$MU6S#mIXrK&ufDWn-Ev4j^0R7{r1~s4- z)PZ`?0JM>1R8mj{>VXB+QNj&;pc2%9AW)7FF5m?fpcXWPcHlfl=%5_bfF{reT%#A# z-+~HI3z|VYa2_FaP!4K96KDgaM+pxwK{aRut)S#MQ3ebU01co8sKMn_EZ_r`pbi9q z(nq*JL*GSM&Ird4p#eXr0`Mp_!e4rB4fgn(Z2^a8!3Q!B0ffyy6KnLZZ1~h>- zPq!b>@n-H%%i6>Qs0pWV-H#nW~g`nsmJO& zS^xg%o#ve*cSP<`?nvDpz1_S$O+EarcxE_092(Bvmbfi^Tkb&eK;(dOAa!f>R`b^M z{@8wNf996>EumYo`x5)Y`*JrAf6g)chORTOOJ5tKUjCV#@tvWa*=rKi&p)>#xg)Ye z*^#{2Xh0-fyjU|km`^2oBioXEFwN*fB*RM(DLks zi3`IQ=9VRwMV1{~nphfMn(IyWMtYUr)RO2Db4j`<)?@W#7RMKd7H7kWaQGBs{2f^o zTVyTDEQ~JJN_WOOt*ANOPQ5AGkT_ZX8MfS z8P*w@nemySnb{eM8Q~eZ>BG}Q)3ehO)56no9m$SJhtiR1kG7lb>9$y#)s|_Ew}x7? zEs2(JOU_DK5lgXB!D!G7rki8UR&%Cl=yUY_SE^E#-IckDWJRPxsYsPa%gyq%88a<2 zW5kV+k@YA1VSmn-^hJD%FXfGTO>bI{>6V`H#62NTmd5@ImSwcK7SgirggflcxstAk zOL3)~QK#ulm&Qu1(o9LbBvg`hBphK!PED#2RZ&w)R56vbh|$5m_qA`mcYxae(@#10 z(7(Ba?zuFY%b#+=8H{ZLr=^4W7fv{wKVQ6bbx+|rvH6nIBTvv9)(NPyeinn2;XLT1 zpRsdd>z1vwoi1J=$#{}8pe~@F-Au*6>D);_V;OXVFk5@@xsr^hI0Nbe`q_L&v2sv` zt)KWpNygKh0d)cWY`(6Fm4oWa)=hkoB;y&*fVzM_cC*-hic`it1GZDf=Sd=-qvefY5RB@xeY1k?rev4|*sZoOx~))ah!B;rMmfVzNwHotBZ`@m`4=qy}0 zx+NJSoB?$K4Yt_Ik#7{j%3)hO!jh0Ahd^CGgDtk?=0mXL+E$Onl8~1;1nL4BtUScF ze)LE}Ugi*}3uv(N>awjMOC%w$a0t`|^t1Uzt62Y9TC{9yNUtR0RnCCAfPOZgQEWx0 z3|q&+rIL)-I0Nbe`q_L&vE>)52>;($W8gAL#+#f0bpicsejO=RSG11UIuu}Bq8r`2-F2MSb2zT z9l2N%a+pJ)E}+56tIM{ItdNAf%OOw~(9dGo>MGjF3tu8!m1DKFQj+l=XFy#*Kby}e zzK(R+){#|`j8V>jx`2K*pHX}r>9VaOt0fs9a0b)`^s&)XepQ7BY|X%Zl86sE0_p;q z>$a1BUOzQ8F^7tmnyt73H04&(TR0kpn{ZC6PSNH->UK4eqzk}S4uxzH-?9 zJjAx~x>OSK4Gw|2fF_%-uBjX0{Fa5*laPHyxlEGsO-_NjfF^qyDYiA`a!Ja!I0fng znyfr!Y*m@O1fKHwN7Vm+HBCR;N#pWS-~VQszDRxl*U)sF+W+sTse`68_5Z(=#{c`( zcBlFn%p!7;48gOwVS3NQoH{i>i=I((_w1+ zNBjSesog)`RF2q6MzCwW;RXF5;(Gs|+6mE9HEiSkf4SnuyXz6obiKagH zRcPyTZ%1RF`)aiIxp$zs&wUNr``kOx;OD*;Eq?Cn(BwB>j9qB@bH~v3=e{0|f9~CA z{d3=d=0Eq1X#aEHga$zO9<%_u_o4~VeKXns-TTl8=)MK5fbRWh1a#jTga<5mTMHa+ zh4D6cdpo?N1Kz0^fd@iJ3ci50LidYkEOd{cwa}eJbD{esv=_Qx4#HO~_-YG$trfoB2H$9hZ+5`9rop$B zAo-384?EzyCGfpca=aL$PP~+I!S~UO=>7ohi0%*3km&vhEs5@r(Uj=^1Z|1#Ptlm@ z{sLMP-Csm=qWeo|Pjr77&57=>pgqz3RWvBNzlIh?_YpKH{(sEf2YegHo&Wt^fCRAQ z5{qRg*syGJw_w?lOKb}gC0E&m`{-orl(;U9?#W1i{>g~ypo}!oLm6qLi!u_5Vwg_KNQ7R> zh($MLq=|mYNHZOk5u2XMh^&VsM(L}JICNG{{~gE0=(LQu^jbz*>9<(Qg@Pr{glx zLCqahp%<2-sY zBRkNQ8QGD(%*al3W=3|VH#4#e-ICcSp=HTx1XwLi@^Xb`)B_OjVWC5L< zkv-|%jO<1CW@I7#n~_Cya7Ol~hcmJdU7V49>En#-M<-|G1N3o5_NS9Gasa)YkpmOB z*u&HiE*Zw9BRD>a%f@iIu~t0D#DfEPNDvQgz{48x@DQ#D;}H=&l5WqLKVyRK&q$j7 z&&W}9fJRof;L%Y$#=&D_c$|x?TJiWcJfR&=?7$Cp;z?b2ayNdc2Uo{2(~E2R@RWW$ zbpTHr#M2XahKFYk;aS6Y_6VLcisz2udBz6ud=oDSh%lTO!(2OF-+?!D;*DK+Q#an+gSW)-)?U1= z4{z_sI|lI1LA)!0cYAoxkT~;atR3d2{0QDViuaA-{l-S|0TUk#;6p)txB(wOH; zSQtMX!N)Cpq6wdD#&tFpTJWhTKJDN$F?`m==UVakHhiHSU+ln_I`QQ$e5D&-?ZMaL z_lL7ox5I^03 z8yc|`!q0^9vl09U3qRL{pKr#0wDAiq_{AuG$-#e$;g?0m^x!w+_%FTqtv>vAKYnKbzdMNEOW^m-&EmfX@CQNsVFPYz#7YQ%6viJ% z@ZT)_NfZ9G8GmNu&s*>pQT(NYzl!0nUHnZe{G&i=E&bn{O7zgvAL|4#Cq^4nP%*HC;b{Z>_GCrrLsek1#aD{~X3i`Dh{^+}nTF#Edu`eGT) zkbBj8wIpi}ny(aIPQ6@_6$ibSN-t(!G+!*dkbI&1eD--)MlqzHt3I25HYsBmvd_5B z6rWDZ2!{Mq8)Wo?StzVat*gk`h3)4fEIpQa%zUiyXi7#ckogw=dLpUjtK9zu6*@t*WORhfk_d3RaHDY$nP?@ZrW zl@$e(ca(3>-tNkJf}3v5$y$P?TQawpw-jXd!OBg!o4lJ!H)dwdJ?P2EgiOxN6{b=$ zE+KcFcU|e)jEqVs$V!5fGUs6Ns`OP=8IO>ZH3YL)xK|WqzQO8c`OA`*m1VX;_tN4e z=}W3I*I@GE@45`c3?G|&nC0wNu%yOgWfqM8GT@$U6AzxD>C-LJF|2~<_z}%&BW-e!;SgIdIn$Wp=@;j5tWHF3a44u8cQGpIkjDe^OFL8)QG| zez16A`oyZtESNl@e0=tJSLPK=uc{uGkWmJiW6fg=GNWKcRuA-!F0IVS2!n#mC|F77 z(w?jwn3*sq3P+}7-N4)t-Vvo0nHA=W!r`gIE3$In`a{#QYG7VQ6_gLo%9?>i8B@6}>8_*eN9=268)kJCUV*t1Di1N6E}U70Skt01!iRyuOB9$=|G({8pGWHrD_Yp&I6Ey-Gdrdx=m zWK2NL@tjgLBO?L|Evc4CSp%@xoNlhlSb(IA1;|>iRg9!%BtSl#43|S$83#~oOgB~= z@-hmb9LxsYU{S^ZRL#7ZG|SS&e|XaF&reDJ|IUxj>i_qz|97(Hqm<99k5bS!&{e*V zk5YUe2!2SD@{cM7Z3AU#Us0dp|3q-LCglq%1#JUe<@-qSeI%ICq~>G|oJl#MC{Z3A89`$+M%mNPUd zWtD=qfv!@Y;%_ZyYEu4LrJ!w~t9&0RzSeS+ezIHw9(v?emhi_Js z@vkZaZ37);Eu((l^%CFFd!Z&{lgdEbz?ib$(OYYW9KF77(u*`96%~TEfiY#h!*?cR z*~;X?S;z0invfr<5VQ@9DQkz;_BFEQ871jEelO94{8)vcZD35P5Ahwpmuf=(O@*Ls zprfSTlXD!uN#F5%nI_{WDg$i;9c3+J`$uc$`1PNxT&~IZsmegxKu1~2sDJz>eaG(= znv7ql473f5DfP$ifV;8yHjSkKY9gXN6p)3Hg-@LEFHXvUX_A^@`{_ zey`Sq{91*eZD35P5Ahwp*Jwh1qe9R&&{0zF3+6a}7x<3fYc(0aRT*d-=qPI$^^afw z>BDuJjNhpYv<-BWwT$}5?*iZPJEh6^y~;q_Ku1{{UzgeLRkzj-Wqe&~_Tih;Wc)#8 zplzU|tYxgJpRr`&tfTjOO~xNp2HFNX%34Ofvmp69md+kscY`M5KU4L{a+#5&!zAGM!Eh!A=@XU@BcU%1Mqv9`|ob)|KCZr&q?3^YT5pBip&8h z+itRbVNEEoMz+6ZLV<_m`u{y-`?6g7f4XdjY)36R$|G#~@|DW;yGxPte`ktO` zfd|J|%QtBroc~l04%!CBl-oZz+lKh6`DRVXUsVX&2F8@NknNjx?S)+alBBOq+@cBj zn+ieOz?f1W;(NGm)r9=F3PIbzm{K3&d$?}XgqZRfPuxIT=_t=Km@eehI<5PV@uPgx zp4_g<2&fFS4U8!n7)Z)CU(*NIkxR#q^3Ae)hbAPbLeQ2A00}{T$ijsbVESFootlsa z6@s>bF{M7lH_Pr_nvg~ng0_J%r9Q+r%kJHpkdO*N+rXGoAL5&3_a041ScRZ%U`(kG z@x7L>)r3S;2-?yCLdn(nh;xsplzU|Wa^&!vm6~a zzSK8O|9zT_7L|dvfl(zH^=AM(ZhV<~ft+q6_iG}eDgtc-9VHQybx+`q8=vr1`U9E_ zM`fUGprfp1Z2v4@JMobWU!6aw$%v^8v<-BWwTyZvaFXGx@`p4TJt_lj1Eb1|Dj9!(2wt-RQ zq;ZKf&wcW9FkWnRLp(D#PQN5Ko1mZD35P z5AnSmKA{O2QXyy?7*py)d@qMjYC?up2-*h5l==|g%i%gr$cPF-+rXGoAL4sCENDVT zRS4P!#+3RH-!tP=nvgLSg0_J%r9Q;>)cCX}WS$B^+rXGoAL4s%d`1(plL|rGz^L+6 zc}iJS_eo`Z+;`IWtR`Y-6@j*aQ6&)z=ZNsNk>@lKyQm1X4U8&@*lUgmUkiC&6S1p` zK-<8ml88O$i14+K7c>#OsR*M%>Q?hY*E=>lCl5G6OY<_y}bVqJuc;!ukGIdt6QgPSNo5T``Yv?nuljk_3)sqqbEAbNrUw& z)JcuH?`ft_MkWq9!q=!@)nx3YGEkP$QyEyxSUCIs`F?ALuT{UM$ylf|&^FLf)-u$G zQnPcmX84-*>za&3Dg$i;9c3*;%?SG58NPPCUX!u6%0O8SP-S2(WBW6n>9eXsj_@_? zq9$V>m4UJtpvu5nhB^a$@4v&>vft2T?5i?R)&f)+Sj(vQen5^Z-;3UxnvDHa2Fg-^ zDg$d7_1+IihOd3RrO7xzWuUB|r!tUL!OoItH@5kjKCV_y9I|}&8-lkr83(Eil;!hO z23{s_2re+r-6mqDeH^#+$io-%yXkY>cQhG`RR-Dy#+0?cWBWRPmC(bsQ-R><;1etkJU#t5zABr%F217 zqdZk=qy9&5<3}DfKKsM(k7+WNs|=KN^Hc_&Cr8$M&8Ayx=POnoebnrkhd-{#I7nrn zESsk?@DzEd>K|82CyqRP_Gb&9&}1B}GEi2{QyECcnMS70vAcBQ;MDAQnxE8U9HKJN zHqcR0U4N2m~#Rr5qyHBY=m9<2IP>l`!TpIWD+$v9GFpsbpwGO(6W z@4=D`-{`2%Xfh^L2Fj{=Dg!T(2J&9ZSJoQHF)Np>oPF?qR+Eud87Qmfi819Ra`;|k zT)ExBJ6$15SDxToY2_a@AxEhYlx6c&2^q46Nt1G-N5`yVgcpX7aiUbbCj`_i7$r!R8=nDYMrahd;r zAKAVs*Z*f_Ymx0m-v7&1k?a1ik*!BIW36d~7F>PC4RZbe^-oG+XTCPHo4chCQ$LMN zTx2ZEMz4+T5p9azZpxQ2DmOU;Q^Fu5pndZW=JalHwNrCqxzV^sG#(yTKicx66NQFJ zp=I;YhSLLm;LShAaGK<|k?138_r!+NjPUSuUU<`Kvdj82WS5OXH}tPQ+i*f_g?5Op zKTqxo8aE2=)Fg!yJm}bXq2UZeWU~<5c)9$z;c_FKR$&3T|8Tk`sD5bV-c9bai@S^S z{}1rLw#hH79<`6duSfZHf?tQZ)2Q5uRr}LDRX|lN3e&Jw_Ho&#b=`6!JgM%YeR0}o z39lBKAPO$DNQ-HSEna1`cx#2$#c8>qt@ap3f`C-SF4Z0#?F$v;RbAiUwvQt(ZN>3CpGh2*={j_C|Re0{s=bZ+RIsm+)QUN zj?Mks?qyAkZhKQ$NZKD(H;y&|)VS-UAjF>CeLOEG&XVIM>(W{47op_O8`Q^F3gDCP(y zG!4^qnklA92?NkaG2^q#G##=1O>MJ_S=%c-yO_0`8YyP4I)wTtW*y&7j1vvyOE zV)mOlN0v!}HP6>O#rkEj07=|dt3{%1g3{uR*>@w9NyzOs_%`Rqb zuZG#htlbolVn$j9R5=GJ=P*SyCWThY8KsC0bW+Yfir5b=lrusREpRBOMG>1IA?2KY z&YqmU_o3NEtOX8lf0Hx2)U~~WvrApO$>hNuRE17ZXp`~=pp8PuD6b1$6ncR24nmYd zH&NbZh*9Wf%4>r+yU?|JH#X0DwyND^ZhupBcA;x~1!fnzc9SLV03*>r?Z}HVVaD!mSPLanOqToObTxf+h=vmE=Yxxn{p#wUh3%a2P;;XOWnMmk^ei(p3 zNPsyd1i)E8B@Jlt^->mSfhaf-0~cD=ZJW3aTxf+hXon8ygf3`|-6A_r-YPo-vr))% zw7^^x@-!$g6NNm}aGP8_>~P(&!)3<~R~3GiTa?Wd(e z*9#^DAP5c62q6eV`{V{mgHGszZs>`9M$(`c`k)^=*M3&^gKp@7IP^jv^uqwer#>ft z;Cdkn4us@s!?M(~Ms)QWxe;RELMyaEJ9I$b24N(2iu`df2J^s72>zc=nS9rKxBN~{ zuB)%Soqs#^cJ-}-Tv>0vReUq^ru$|_uBnpG4Ur)VWeXa0X`Ze>l z;;WfgUAe+O`-=BU`Q_ZpNx8;8|5ECu>WhUJ({h!4@rBF_?h7Tk&fa^z{9Nw21Ry2);{yJ`*i84>{H%T!< zzj}4y>h#s7T%Vu0%Dt*|W%f!>uF%i@oht_9E=XQbIX{1X>ip_?h4a$qndcSH&7A9= zTRJCuj(1M^?A+POvnyxi<*NPanT0dcXPRfumsth!H>GZ>-dMOXE%OQ#Z^+!>-cY(e zd%bskIhV^NbCs#Q%q>v8u5exYI`g`s%r4+wTe>EDjdxA?>fF`It1DOKuS&@r1BENo zSDIHAugJ(O1EtHemwT6&FU!e11C>kjm!>YQUQ&>m2Fy!}7iTVZFD}Vk1KvgD3v(AH zFRaLH1F39vvM`yRG$)G}RL|dV-r93lpELh#h9n zbjO8at#Ua|U<^mk-Jvlsu^N9xD-K zmd;;dq&6P7?tt_G<^je1Gcr>^={;8*sP4UC(b|Qp_nNVkwr|EWxNp-qP5y~1ZKbPxA0NT_dP2UT zNjX!cplx7Od7*K+QGXeOqgMH@vHhkd;w%+`wt-RQ#dAg+y=v(~9-iqw)ql}MoUJ0z zHqcQr#FFKExA~gx8$M?IDBrTT-_m59qcYGoutj;g+MVPMc?`a|~P!VVw=qS&Vzk-pw+k8z|_lk+7D`t1Gd|#7s zp~^tpKu1|?81;rtNW<`5zWcA5jEhtT+6FqxTFa=HAuYq#iSq+Z#>FZFZ3APLprfp{j(Qo=I(+>%Khk7et}@Uz&{5W!N8Jo*9_n|~?c>Lqj4MXw}a+S~6yzVpTO6cc=`s4Rn7C3hb;&{jH1DrAkZ_crx0GZ^xyRZI4s-4Oq% z$+%l(plzU|q(bUv94#5@iD3HG@K2hIyvjh^Kv!9>9o9OuRXg;Z%l*41ygf1zwqx%U4hx$b|N%>Q3GO#0(x>yhm( z>Hj}cwqHuW|4p)ahe%()^!*<%+rP`W|Gf17?<)QOUzEQ8Q{~!!L;n4+^!@KG+c%~E ze^UDXZ5adbg7p25%T|$j|F4y;SGJFOvfhC7|Nnlz%>OUjj&kk4u{L0A9C>2xP4fQ# zchmj`%HcT)O4niQ@ti5qAuUFG{|=f1O2biI$5_!KK{pskE4 z_3hkuUTSJWXex07Widc8rqs6;--&5J6S7W)psWTcx=MXp@vl7>)T9(t3d(YTqAUj} z>f4I%+_XUx@{|feSq@NzpuVm6&P^LNAtB_eS~|XnM2BWJ&J zi)bQVP!VVw7*!H+)*KOs%swl%G!ZYV2$ZD&MOg|^tVPuO^fD!<@UzcKn=~0OsSK2* z096LoGEUj1GG;Y#aRX%~Kv7l#6l)n5ZI@AdmY0l`zLyeP6Y`1* zL0JhlF#o_dU(;{hQsYPa*Lsa=Le{Ggloj+;2c6c@jW0W55szdSO#RK(WW231P?peB z8A!%O(iXS*nt3`IU+L>cXw_uABlj3LP!`Y=V@fhIQt{h-ZK?Lu(Z2V&ZJLmGRS4P! zI!Z$7U&odjKVK5Y&hG+DNx1abb#~0w4Br*L z{hEx=stlA>096LoGSqA9duRAQs2R{?{DaCsSp!gIU@b$vOMCAOUmF?JWPDC#psWC> zGO(6W?^9W+k6II%ov;1=U77c9rEI^G_x*RsHcz(C$b0{jWc#y>`@c`N-DLZsy!Sut zP#ME7+lS@-|K9Tc{~Pk&{{or&uSvFN<^BI+*}f<5{V$XE{%x|Ym+Svm$o30)-+!}w z2H?qO0H2U+|BpQ-6sXE||98qZCiDMo$b?tiUpJMsR1UBFl{_T@D<%lQ8Y z=lwHZiQA0s!Y%5jz~U`yyckAMey|##5ke3KmNBzf#mr(6GpiX`!pvd?Gb;+LUuLm< znZ@d57K@iztX*cYbeYAX0c?M#foJX3zk_dRAwc> zgCQ7(5g3Irm9iQqX)&a8OF0?ZX)(0ZVrZw;4LuNtUg(2<7=S@YfCob`3?ncKV_>WmOb9>_8lVwE z5QYd?&;-q3LyNGboKbFZAOEFpH(Z zELH}ySQyM=T`-Gf!7Nqv>r$=Vh^sm&Gbx7K?aUtl_n#oGj&Kv67d?LS7c@cv&ptWwDBv#Ufr-0?f@q0D{l} zjSzw`M8JY3Xa*ZvAPNq|z=c+5gLdeEPUwPeVQV?LB@VsN2mLSrgOC8$=(1R%%VLEt ziv_wYmgllqoy%fzE{nCfESBc7SeeUWVJ?exxh$6DvRIYNVo@%OHMuO7nL)R-?W3*bS4)#5ES=A(FD3?Jym$K&|qAU=~2Ef0qI`2};Md>eoU z2!RDn&iw;yT8PsH&vG1)uvJ(vHdi*J9_&9^7>z4-x#+kQkQh$mAb6ewTCn z3PEUqMhHO|nxGk4z=0UFLK}2ICybEb8hjfOB5{jvZN43dV#3AYb{y-*oq9yekjnxi zpEN})06~7<(1@Q2aYGm){QS8n{u37x$|{0b?!>QmiB=Ea{!5&1`}p=d{d_yfx8FC{ zi$4hBrbhfx82`<}pEl#qTkw}r(TefyZ(8wp?O5%^KXl`t;`kr-#uY}m>GBr&M-JT; zvbtrAZ#(!l*M&Fq;7z@FOF!N=gm)X8#kB#vw*l`D<3koc(u|L_;NuQH856BmzJ014 zpXtFDUFkB8e704z+MpeJx$!Ig_%$mbe&5C)MzP|EmJ6-W4xP{iap;Ex3`1bC&>LOXOp9Qq*v!w{GhVhKtAaU1@$1ApF)zv>aKUcUWpAKwn}ZFP`uJ-+?p%)jze zOxD-SylcK&d?)>m`A$Ku1E{=}dn@@?MON5Ly;*&u@J9L#Q`Xqa6y0KJeRjPktL)`o zPrhDxE&p2Twd$*dSJSVWuNGcOy;70u0KAvWvesVmrSgl}7u^@R3c!4!@OD^hnBYTG{^pC@~$dhnUmG{Dp%yMNL^9AyddlGnU@zY%UtGOR+1I@yi3cM z(1WSoEQeDD0yc^MhyUpO~) zZsnZZIY}AgpFP_>yLeVwM)>E?OrBXeBY#HfjOyuy)6=J$rx#DloaV~feA!dIQ_H91 zWPQHMn*5s7nrfyXEA*L};_A$5cXdhD=<_~QKG`_A=o?o*wcWV-;;PIlcU9@Q>~Y?4 zCo(<-l63~ zj6;eCXJp;J(m~mSyo1WibFy+@Wm$e%YFTx>FrFSa$BRodOI=yLFT2EBQcmSk$y8-= zesOAX^}xb`=>w+@NFGqxKfix!|LO+{vWB1ef#QCd{oMUZvWlO#Z+V~GKFNJ5vW{PB z@9Lt$qVytDR`Sa%bQhNP%I@XKT7HJCi=K-2lYm^3#a~;(0q{c1^MKl%RpH(PmC%j<&(4eQ+H0J7A@l5rz1Q~#1~Zr%7S?+ z0*R~EC;p~pLAx*@WR0PU$c`5>ls6Tb*M9MeE->@d)pHu|e21b=c)StR@BIWx4 za6}XFWfg(8fl(z9^{4KfNcleh8`VU7MMa=2`KKa~i274^PNaMv|BY!PzN#Wn*85Wt zNJRa?*Apqu<^C9{LlGPe1e z{xEiY+}|*E)MR{JWuUB$r!ugXp^pC9FU}sa8NSxBn*9$qWo?Sh%-exO3oHZZ2t zhxnSv0!_#dRS4P!#+3RHUmMv|6S7H#psewyLQo&#Yb1MVLMn2Xy#~q}e<}p^A--0! zP!sYaxy!hLvc{hZL4Am?nJm(T{8)vctnsHpP#@xJCwpr`ekym_WuUB$Cq|W%GU#ZI z^Q$Gk^Q(O{5kFHAXd4(+5;4d5)e>JD*;fRMIaG#oL~7@Bt1YA z@oN=UVLugtM9gu1Yrcvo5oU2#vfD$ z%DR3k18W)e&#(M#V_cK*N0ouHuAj=lT1NfzD}Uoyrpfq|%0SydM_J3Le}3g}9m_Qt z|E@C7HqcSlGU}gSO*fBi4mP_wzp;M|5392E-7OHWZO};&&&A#Q)Dw_%O9OT`Bv%wPd+Vw>CD%rgN?__ z2dST$j1{$+<*b&0@ObognF;V}@e$K(Z4Crk`I0FCo7W#?G(Yp+ziZ!kurbsyb*M4a zEcZ1Om0iO!*^>JIy5x6GSbpb3<#)~~(F9 zzMk1!WTK(OgiIjRzv*_FmSz2&GHJ{DyJbR}b$OYKX2ZRPOyhH(OboO3ewiXB@t{l= zv+fa@HfHr>GP};?lXCZ)*2xSk6Hm!KuYY>x@0%%9f=P!Or=FE*U1HBmDVY4nO1vVI z(yV_?3d)Q<0cPT9nUu+O`j|PVn;CIp%yiSn3^whXJ}&zZrkSgevhqA9( z9?HHpc_{lFYJ^!EWxm0!J9V>Dgq<9AYLlH>o{7pdh+B8*V;7rUTG=JW{nV-T9@%xs zl3j;nwrOL?W!E|fL7ZKi*wtm%p3SEjq3Cc_&AK>!4234nG&+J4=NKJ56XzQpt(zu| zj{f-<86DlL&or84mcHrzTGq-gL+fOhs7yrJ(U~~iXqL(GrhnTpCHFG2Np@+M5z`&R ziLB9KO>r-ar)Q|Nq6?WKv3B5g&AzpkA&+I>#44k)iGAdUcKNd!n`-}y{MavliA)M7 zhitq2B~ECa9I|~0Ia*uRGjGoZIa-G~S_A9lXlnKO-2uEvZogA$L8{}whUoA&#c*E0jFB|0eG}p@U z8A!JH#%n?9$CHo!n2IBX&@B9dcyXp-$O#sEb|e z9I**@jj?MNyT)bLusT5G7#Nn{Ic@SgCoaEp8aW1fIRIBTjPZ;$$}up)F)++AFi7>cQT-vRzl-W0Tjg_6I6c#)!$0>J5>LuRKGmcesty-nE6}cRKG*@k5T;*s=sS%_0R0)Y_0y8 zn;N%P|IAGT@+iG$T?aNx9d%JhgVa$k5Bzp@Jt7ZlUpqVXveTgKv~67nxu0%!8DN(_ z?x#*&kIKCbb;zzmeX{FNKfBhcYg6uZsFPj$*)<`%hSgJw)OCaW&gqfgISKil(?DIv zsq1FyI!axSQr8XCwMAVs8cC+^le+GtuDht~R_c0`x}L|YQ<%CQrLIS)>tX78h`LTt z*R9lbBX!+LU5`@NW4si}MF?_GQP=I%bpv%hNL>f1YnQr?Qr9EYb%@5@BekpMcx-B! z`Gca=^(b{6rmj1;*7cS>w$}B`O$}S?dgi7Pd6eF>t|Qb@KXqgzq>elu`0eVtk)7h~ z(DT})~V|-yY{i`FuR%?q^@Ps zQuS2dB)@Y8<#*Dwq^^V1bq{sjL|wN~*JIRmBXu32t{H~r^ibCw)O9Cy?NZkx)b$v3 z9ipyBsOw?sdWgFAsB4e9cB$(I>birv9-*#Bsq1FyIzU~wQP)B0dVsnPP}ec)x`nzP zrmh>Q>uy?di`4FPh0pv|Bh+<=RI}5vwPI&}8Qfa2GdDHLL-L*#8>K>qsgRI7Jbi)b z{kE&yX7)?4Ux58Wvfs9K>#)lRyEL*(PLD_YvfnDp=Z40{&v1PK;3q$=WMFgoRVq{QLSOBl_7>sH`UrswRTXgF{*W# zY8|Co8>!Y|s&$BJ^{Cba)jCAA#;DdH)!I(A4pXfoRBIE}YErGORBM20?WbBzs@0)d zZK`#MYHgreyQo&1MmtPJhNRI>SMbcA)=u5pTkCe__Q2M%Xa9;r)C4ZwtA(R4AoOW-0q=@6+W^ z=G(=$GHAhKgBlkw~jY=_JOckr^3+vPC&Gp6CGq1a^mtM=h=Dk*aHTP=r)ygaRS4uBu)wl`w z#nKDe7rYlT&$%*EBKvGoMoHwKPCZ>LWD0Jfv@ZFi@x(?o7ozc4@zIQohA2IfeZ+gD z{BZ8!Pu#RoDExH2Lld%t&o`M%tJ$@?nz=I>42Tg?~p>AaaQ zuFb4<*OuuI2$X?-HQNBEPdGhkgW%vqc%(;7+Dw2EfAk>GSh4rlERH;hdTI3X5lC z&T!8tojx;yp|WOuW@`1shs+NZPtKg|p1kRU`46T(SUs_DV){h$#Nr8=6WkL@$7hfC zjxVputxB${9G5>XbzJq>!m;UN&0~wlWR7u?uGPljVfVqj}MCHi*k>wS+ z70DHq!@a}Ghvp7V9$G!PaB%uy^Wehr^m21~ahW&1dC7*<+Qq96bPp^YkUhXVpuGRO z|AUbRxjmEbIX9p;KfU|rUDxiC+NHX4VdwPD=FaX;B{er-a)-*i{Jhk>>R4ecGwP0( zMzSNtq0EpwRFdI}#lg&=J6P_|^(Xr)eYxIbZzZ0On>`!5)^$#Hcpc^T-1`_CU_^^8 znHIODWM^&9E;r|zlg*W;d{e5aY89-sWm?5ZCgMg);cVComqWQwGE|wK2heNC$U5`G zzij`@ZPNe$)u(Fj|5gA0CSU*mL7LA?{zLxHxPi9PQPw^$soz)R|E%v|O~zkT2HFP3 zl(i4q*UWruG4t=%z9RpJeTQg5{!4|RZD35P5Al5teyAqouPOv>17k{ki0_l|!!#j( zQz2*@7*py)_MCl5-r<^%|5hPr8yHjSLwuixuh4}2kKA#ufwnTH)Q9-`ijL5P7!4f3 zXe(n%eTc8G=txb7sY1{;Fs9Up`1*<_G$9Rg$6W^6%BYfA1n1~0TI%a7N^2q-RRr1w zMwLX&(O0z8*G7)gM1)iX+6G3IM9k4wwA9x^R%#-`Dgtc-qe>#?=qp<4Yad5zA|fgR zZ3Cl9BIf8TTIy>Z$7muf6@j*lU?u{In4_;~sjqDutBGh*5ojA2RT42rU(r%u%Q#LG z(X1lSHZZCrVvfF|rM`BtN)r*4yNw%YD;*`TQM8P0zP9ug`5VUZnhaUELNd@+I?7r` z{k|f9%Q!)k5mOmx8|Wx&8TI>${7vITO@^y7&^FLf)-vk%75Ur72Q?Y3Dg$i;9c3+} zeqWKlah#;dXj2(z8|Wx&8TI>${H^0;O-8%QK-)k^S<9&3SLAOVAJSxWs0_3Xbd z`sY{v_OV)%(XBGjHZZ2Fy*Qn+P4k#F7RTQ}GMbPc6@s>bF{M7l_u8>W6B1V;Xd4() z>O*|59;awRdQ}M82F8^75Z~*^shW^J6@s?BH75l1A--3T(=;Lda+kdZ+RB(xAL4rr zIb9PnAa@@(&{oEj`Vil%$Qhat-nqop`sKDVrqqY{UPsQGC|7z+GAuKmACwr<(pmh1nIlI?d3q_1DLc`^^cXXN_-lVtmI zTILy$Z8zDzDA)g=Dw`o|06zA^yMJ=K^#AYoth~kA@^!nh>mIf1|G5Br*;MTpnR*vu zTmN@lfW4)h^)AG={_nT|drLX%U5IV{-*ExP_m8*gOf4=~GOF8RZh%Hy0 zN;&^uz5qM2=6`(!_Dn(7)VmVf>e);|;s1jxup_6`y99ftpr>qeDRw8s+3+MpdepcA@)&NGXSQH!2%i=ht|V_>X)7=S@YfCob`3?ncK zV_-}PCIlcTY$<00w=_Zs!Vm!qnxGkMXn`m=5Ca!lp$*!h13IA#x}gW+&wKqG`83=y!P37Wx%7KnlaF>s+3+MpdepcA^F8+srP zz0e2!!j^IlaLXVhz=I(eh7lNrF)-E%CIlb|4bTW72tx!cXo6<2p#`GgKnz@Hg*Ir1 z4(JrNl(UOlx}gW+&k5Ca!lp$*!h13IA#x}gW+&f^O)6IP^jv^uquQLIOM(f?*heQDI9t z&CPO40D{l}jSzw`M8JY3Xa*ZvVEUB%RKu8hcYfWz>viwzivQv(nOEE`eb-#`UwJYA zV(P`}3yBxX&*z>`$~FJ_=TgsApDjF_maG1Y&t#r)pD8_^RoDIJo=QGdDdY<&x$?iT zF1^lNS9~(_r2Ay)iR=^W9#21RK3@EA=ELrXOX}MH@}s#&laE#&$v={ktN#lRryn*S zE@p!LnTcpM0QlfByc|{nh&tf9HyS>!y3ZGqc;8~g&Wd0m^T!!&s^_bUy>OByj*!IHRE}i%4g>OjyV9eV?VhPUs|yMX(hJN5#XT~6xO=wWApk*WfJO*G7$RUn z6EuSjEf56cVE_gp0Uiv&FpR(`jKMrG7YhLhLIX5H z2*SX$h(QaQpc$AJG1vl3ix^~D#30im23=rU#30im2ALKy$h3$-rbP@gEn<*q5ra&N z7-U++Ak!iS`+#W?gG`GU9E1dTFa*Oe0;4bn^T3=C0uY1-XoL`iAp#aOK{MFU0#R@v z1}?Nh8?-|QbV3(&Ll4BE7y6(d24D~p;K2|K!w8JR7#Nd+2>}Q~12jSi!Vm!qnxGkM zXn`m=5Ca!lp$*!h13IA#xcVg6199kuKIn%57=#3PFa*Oe0;4bn##+II00f}{8X*K> z;8VCDpS}f~pcxpW7-alukWb%&j4%&!sX@?%R%nBEL0WJJ-*-Y6bVCosp%?m~9|m9$ z65zoQ48sVF!WbAE1QP-fga&AY5b(KMkckh27BKN)kckh2Onew@5u}7szITAB4}(m7 z7-Z_hAX6U(nffr;0Ze@uWa`6UH!$^Kkf{%Yy};CmL8d+oGWB7QsSkq*@L&jrVFX5D z42+F}2>}Q~12jTNkP?RZJ^~grK{MFU0#R@v1}?Nh8?-|QbV3(&Ll4BE7y6(d24D~p z;K2|K!w8JRm>?xIHp%xU1Rw|v&Zvp#wUh3%a2P;?N6y&<_JJ2nm75Fm{`i5CRZ{ z255v3gdqYJG(j`i&;ky`z=c+5gLdeEPUwPe=z%!&LLc9^l55%Dt`oLOuko=F(0lnZs zKrU|xMu3YcgIu5%8(N_o24Doj>kpRy7uui) z24NIJ8w49#p&JHZ1R6IA&ENvpcLup)PM)p=uB8cbkwuWv_`y!-gCPhc4v{|#qR?91>to30!&_fw@Ytj-}2rnznOb8`DW#f z{2Qq^s>MPvT{Mfu^_lhV`qJy!*S*)vujO7#zE*iP|7z;h>MMm;(yy4W6kpD~?7m!j zDf^Q5Qu)Q)i^&%&FXUfHy-WS*(h5w`X^|ALoiamFC^6tuA`MVN#m1SnXD;o9`I=C#FZGS|4*l&;QR?Ok2IDtA@#s>+r5D^pii zuP9uRzGBnm`O8z6S1&7EmcGoqtaxeWQuor*CD}{7OUf7LE>2!txhOw9yI=Z3^TJ{_ zlXYc&zwD$pS-v25LGpqP=VxVxzw&vx^OEOP&Yc+#pFYPtr+9WoX89|fl|9Rw<30Ym zQ`4uKrxs7ioZ_BRT9aMlttn@6nPjH2I=?!#y85BQhtgX{&zDZhp5&cW{$TEd$q!ae z%%7M#v3kPP3CR;G$LEhv9ba8lSe0I7t|}gvInF(IrwEbY%8O@5u5Ixg+Yo&-Y}mzuY0oLn;U74^ACi zJ*aR{`XKY5;_}7ItIG<@(#y9vUFt0@FUc)QE~%vQsZ^@ExUe|A*j!vZ zFf(fe{>;1m#0Sdz<@QVNSJ^keZ))G_K81bK`D>*X%9EGjTUw>dE$a zJ>~9Pce1983t zhB6^HRBFsNdX43VTtl*<63hov!D^roNC(V7(ae~xSu(QHt^d6<0?9jN{QrT|@Bh{K z|INPf|L1E4N$j8oNuX_DRLLNTIYx+%`^NTMpo!Q~MWAh9R7u1fBSgo2BYP$_5xdCU z#tpQUj*?M!jP2RxYs&~x|InVSCSzBXfwqB;vX)VQgs6XP&xM+d-BbqJ20F@GM*R_@ z{=q#LX)<HqcSlGU|^I^$+j4M3a$J8E6~mC~Fz@ zM~F_3@9E;0nEKnLnv6YE2HFNX%34PK5u*O)ahWD#fyzMJKu1~2s6Rr~-##waWGqw} zXd4())`r)ex=r(#HA2+iK(5e)EK(t88yHjSLwuv(uGEC=twPW?Fs9Up_{P6or3u+b zg`jOGM`?!I& zGN#mr_+CY>(}e7=LeMrarqqY{UPq=hA&cdXy9~6IQRSp@+FT<gnuu`~ zfwqBBB@uIs5MAbL9XDwrmZ=D|4U8&@m}7+KGGE)cSrf5bMWAh9R7u1f=U2;oE#nqV z#6c1TIOpPw`w8|mAj1_Xe%8huTiv&ZN9dgU-=uxZJLb3R0i4xI?7r` z{qrk-%eY;Wak$Dr+dxNI%cy^T5yXfjr)473fD$(qDkM*Z_Ef7`fIlW~N~K-)k^ zS<9$@e&uf*cWE+?R2gU+=qPI$_0O;Tt>bP@#)Qg1+dxNI%cy^TJMXfo0&18oBx zWi6xr`IWzYtkq;3tuoLyFs7`%IGwgl^O$vhN)O~^4S1Z@LjN_~j$wc}n*$gwH} zZ3AOUeTeVX<33HuaVi9D17k{ki0}2|eoe?K6@s>bF{M7F_6oA4(!P6gC~%2vG1*=| zDHK>P+mB@KziVZS%l6J;GHzeC-^#jwx63vr+syobf7?40cvQAUvVCJwD3FycD%*=P z_usf|KRhNBxKg$b+1AV2e}~ETQyKSvz0CbLAlt{5$XbB1{XQkv7Ra`fY@e5L|13+jRz{VR#_4mNATIZvAU>jr_>hV~+rX%j zh&fIWm-`y|qne1-Dgtc-qe>#?I6++QYvPY-A~GrhZ3Cl9BIYe z=sJ;4;DzUTKd<0^Bg^*vU0vOC*Ev3i#X%M&W87ox1kqYBGK!3qoB>S%E7(Ft=@Ue2 z$+%yUaT;epQ@{$gkWu;s(ONVfP-L9W8PF84f-Pi}K0&mWjRzGOXK)5I1*~8T8KqAU zt%c(uMaG$&0Zjob*g{6>6GUt2cvz8f7H2?HzzVjIQThbYT09<6WSq?z&=jzOEo78F zL9~{S&5DfGoB>S%y=>v&v|?QGC^|v37LZ33A?I)iGzIjs>JZDZ<1t0Zxf}vb0llm` z#B%g_ToG~}hd@(6FRKo*96z2=gq+VI&=ktd~`XSaw%mRD@j5A7-qnnR3@Jix;t*&GSivG>4Nc=7 zBfH+dzJ-0fs~O4ovLfSV&VZ(X6>MQ`mCl&k$Ge)5jISs%Zln3u3nzc;bjw5NWDbjAIoFfI4Y&pAH#3^m(cjOdKN}L;= z-FHlH=h|>*e?JyzBa6K|sk?uxn{UL)f@S(j{C;k61LC)lZM2tgk7u?&K^e z1@y3}23s!98W&aAC%Z*o7r(2{11(8kS0vp}BH-3umnPAOWs-&Ev3#Q9JPSjp~get1{;;o|&nDe@oY zd?*F1WOp~eYghSQ#rfY>O2;lFSa|QT?$>=|^c z6}y{p4>~G%lHFn!m;TM1%Oh(Dt0#)VDPwImJrMS>4%C1$npX} zDPR@5+Y7MELSorLy{TA$XLtdi6tI#lwE#s2h`zqT=z_joeFByp)Q=ST&vHJL0{Yof z`9+1a=jb^DyW9XQd#E2P;-BMqCvVL|qR?))Vd2{F! z`o|aPy8oCm{mqYD`T~!k|LET?eGyGRb{qP_MniwI!O-W^^jv+J-ZjP0pZ&W_pZ2ax zfAKdi{XmzYzvwjd18I8EVd&ExF8!xJps@fSbm~r;?)(Z}>p$z%hu)_C|ET`|A5`yu zGxhzqA5F#A|Ng6=Kj{X#{-3hB==wkS0UrSrCwTv@SUs=s>VZ-~Kf4>NXLh)A|DIj# zJ}mpsUnt^VrN}k`C0ordpI{5B7kxW#LA)@@I#HLbqdb&^ zqR`HrVuuy6U#7rT0VNw`KW1!rr`Wd@v0tOWdI2R{$(}=ZPEOgyWhQoubge#f`Z3XY z^XK+0?xaiTzM^&eOGVn(ISonyE7{#m3wN$PxcJV%uM}yoa~hNaR;biv%kGv~}cU~1>$8HoGuN)|TpZr_RD7eBzx&Z|N`#HR zH5At-0VP|-e$pE{?<&&vq?~|&k}YR0wj`hyb?-fD&P(*`(lJ&En}fiwffw>%C0i=5=!9`M@8|qkk$)iPL&@!RD%su5-{s|s z<#_*|A|E&QIt7$$CA+)%>iao)MgGB@52b*W?C$2P@8`U)$UlVhp%l=^mdgLQ_j5i_ zq#w%ZPzvZ{cQ1XHpS|T`=|e^OVVn-7fPS`AdeOxST`JDs<)xzKe$HPM@rQFflmb?= zrQ$6`uXpBxgLZYQYq?nZt0Mmh$~;a$$yT!y-OU*&c{gY5T8VcH6Wq-iy>99`8t`ULlO{;pVnZe9Q=1*~Fsa{+ee-p)T13(&(00HuIc>~1f> zE(?t1-p)T23((680HuJHY^en(+G2O}-p;=i`8Wyh6i~8$wp4ymfgQPY-ucqha&PC~ zig;9PbqXk1Kf4?8ihDaW!;kTJ_CGFtDoxMPwg3LjhW<>Gp@(U@{9k3dPWJ$=_@_&E z{LZCc^;?(jl7@bjVdyTJuA*!IT9-?I>`kX0d6?P&+~U+v|0>nzKTmc1zjEpwbRXcw zUpn=fH2sXO|Iei9uL+la8BG}{YTBK+&L$bc{C=r$ul*CV0ZBL>}q66?hqnn-Rlqh7Iu zx?KuVu{5YSMIvDk<;U96uWI)ekW8I)DoB0@9l>7dZP5skJEO?*ojRid6Q zkv7qtu5NlkqfN>XlT%{TfCze1BAHxo2zyyDNRd9;itMx*2iFT@V|&uB3kUtIzg&pd zp0OvrLCVI@=&4ncg_rgPlO0}LQUtZ6A#SE0w9_xpkK(t4*rba}JxQC#dVCd(&_RR# zF+{sg?F;ePUZKwz(B6y2JFeXB+U(u;_JHlRxkudg!^)riV|(SHUK+6Z0mqg*0+aQB zZZE6bwDK>m&f|?vN5uP{L(_uZsJ$+foEq7*o?2sQL7JT|Hql~C4tXQO9t=*dp}QCZ z;@YIB(d>skx^y5S=$gv#Mx};j=?{vNQJSva>YcZwJ-BzJxpfJxV&T(+&W%{dL3>iG z@`t=Z`XRYdtP^5#aDetoKB0M&PI@DqA~~79N4J4=I}K!%lzK2YC?e}=MFbu8I*q=m zi47U2&}wKWm!$IP(2Z(`y`O$3IJw788CT->*F|VmSBbtL)nv9O*GFg-*)ONnxK5AI zDwOoYG#`w4wo+bgtn;*HGjFZ;)LFP;~F;BVXC z3hBvH>}|i;e!T6a86W*#=tm^!*YOr;We5HCtEUQW>v9gT`keflpijcPvA4}g>g#Ex=n+GBCyT8~TA-lsC^`xBCh5AxOP}y-^z)AH zfyh>$80tNwm(GvtoZ_e%ULUPl&Axui2Ai0>wN9hucRb*wEjA)_ak-#Xo}}{T6}?nQ zXqye%BO;<<{n^Fmgr*IMtwLK8qz%u&N)*%>*V`JjNAawT%2ekjC%vH=5q-TD)MteB z`qtnT5!#q&D-;`p)xk~lrtv^o{~VX~4wQA zH@^Kcea5QLNLhckP}aZ4WqmuB^`$;*S-)(jvc9!Y)-^3iv!k+3JFT&@zF@4Z+fdf$ z(Z;c(tkc#+Wt|q{>aCrlW&KoY?zD4RZ>3FO3d*_{WnJ4*)~Ak^bwhVhai_Ar1Z8~# z%DSge)}xlPzRuBIDCl0;drnM`Hfzss^d^EFz1Ua!q)Pd4h_yDeq? z^E8V>Sr1cLpXC*sg}r21zjgbOg|fc=UvKRw>%T!+zih0mZ@a8e)`Py#Xj!+9l=W?6 zWxavQ`lbQl9VzQJQ7G$=k1Olz#>%=s898iYp{z$jg|eO;>b9ZeK@n^h?2NO4aEXMjw%2 z1Usc(+CA(zr55X)Vp9m4z*gD`&M5qNuO1OPwX7TYP5LIyj~*#aXlbJ?D1tN(ybz%? zVfr1>6*O}|F7 zSkjH3w9^(9qAypCye+Svz9mI6nOw*7q0fYV3BMwOL0kjVgWg4yE>4p4QAX%6Ps`?| zh0-H5b1%IQZ(YX~__20-vX9!2hUhmbK~K`+h$J0@yxv)&)tl^%%t%s}0}XYl`%A0| zTF)XBjL;`c2RQm^`oQUk9Hav-KB#pfwI^Pt|9$ll9Y4U2NQC|g;;Dv}N)K8Rej&+U z(aUjO*WCs$Ej`!EBJ?dy$fVy(>m5HGqz!JsFml^J&_u8*AtL(a+g)N^@{P=1d|Xd_ zuzmYmn%FvBbR4(6=ZcpiAN^Kry-3)THeQ>Nc3M+dnOIHqUt|?$Ynh-e(m?Ns);FDl z;9ttUUu>c)EqW$ z;vd1Ur|HV{yhrJc(*y1QgIhl2=e02T(MO7#DbwkvIt7$$C0pudO3}Tf-E67yA4UEQ z&W94Eh;IJEQu#&ql6J49%63KkObVMLpk%Ar|B03=6glz{iAD6B9w!(68FREkbQZnR zNe%w6jIf3+wTe*J+dkTwu9q7e?y@_m-HD#tZS>0I02KZSmC^rN>c5(nu=8w8YW zJ^RU7WlK8)QFb?9RBiu{8( zAAUBCQEC+VXn@km4NyLt#wfLl{6jb&ein^U>J;gRaytAh8l%)J($N5=lN+FXCXG=V z6!D*RW0XckKANGd_*jimPWbd1qtKrjjkWIIxnW9^V$q}g$-z&%VG7N1*N<y2XNybTzVBvH&gw86-_sn(Z4i3D5=f=Pn`O$N}f8D8H_o7n| z{Klz2_X71P@N1|3<9D3;X*B(t+5lX6u1hbc>0X;l-@DDFKiXyJlW2M%Z0Oq~WqK0z z|AN{ZJovZY-e@clCqG`e{^zB9<7!bCU(Zi5#!_E$WZ5y+lEhd`5@Rh%jI|^&){?|n zOA=!(NsP55G1ijASW6OPElG^EBr(>K#8^ubV=YOHwIqd?Mmp61Mp}{>X-Q(FC5e%i zBt}}27->mjq$P=wmLx`6k{D@8Vx%RBk(OjRz;H_v!!1b+wsOA>=FNesI5zdv~S*m7d%C5fSzB!*s+7(2i^0psmNSHeR?r68K?j%ww2g!gY`_j2zzJNy01}h|H!y(* zl!FT31wP;hm7oe#gBnl^>OehcAjX!n5wA3XX3zoxAP7RB6|{kN&;cd^v5C-t4s5^< z9KZ=&zyK1I0XHy#2b6;fu#3UV$ClGNh`IcKZSeB3<*e9(Hv)XX4=OQwYU0*_8Wx{khyvYl1 zse|`4!21I5!5}F^pbcMd*506}IfeAdI98>@w@PkTF4QfCwr~~z&5j25j z&;kM=2tuG0h;4)hbYKH^-~dkG0tS$v47h;_JfIv@02|HJc-#S>bit<$#CY-ar7HMp z1N^d=e%kn%55H53r*GHcX+3BJ%^(OupcQEE5jJ244&VY3lmRy|fd`a>2Krs&ohJC3 z7Wmr$=BCs4j6XZ!2L}90E9ufI+UOrT@93u=0XAR<4&VeXPzKz<11f+Q_(3J81~s4^ z2|j_R24OTvJT>vOr5px*u&oMCs)Kvhle8zIr(e)W+7%Hte7)5HzwE>dE@0s6ua?7a z`r&u0V6Fy!zm}Bsc=~1oo;Km>Pnz*GfTus#wvfND!EFxswhR7B!e6`LyB_$va*}oe z^z@H@_~$B^uYn)b!M`-XznO2$7Ot|j9{Pti-Pyvp$cv}dc$%t(SJcBR8{t*W@ak50 zy?Bq@sKXoW@MaghO~O0e@GcL$rvl#RC8Zxv@2`Rn*271AbOYb`il3B~pb9kN#cwym z@5&(ga}&N*4u>m9=>vXH1!_PoXaLP12-<)iAsoN}WxxdGzz3>8EocDEAPCxkzKZY$ zDgBp~@YmJw-8%UDdQvvx>7SbLv;|M|0Xz-i>4&5L(pTP>vMgn*)!%wB3iawQpGV^5Y zN$ttZ6VWGzA5T3VdOY`7>aj459GH02_h@!=e6zMW^GNiO;fGTXhaMh!DE^T4Q0Bqt zgToJ`9tb^3G_g9@?1L7}}V-A$3FehT-ee*GI3Mf8f{%Tt$!FVCeCDPL+RnMj6`xyw?Qg)bYvG<|9G()=ZvOJbL3mt-%FU+lYh z=%U0$p^I`CrY;O$IDA3+g6IYLwVAcCwc6V3n)n*unxXR(=ZDVEotHW2ss! z=FiEDj1U-IJ)B4-LNq>Le3iB;b9VIX;j>aSI^fWm@iVnEGiOB47(P99dieC*X$cw` zFuO9gGJk6N)bOdpr=(Abo|0dYSrJ>It;jBqFZV4UT9#NAT9#XyS{hzDd~*8a=*jtb zCLW7x@$8cL65o=c#finC#krHjN!b(QC;CntIw5gF=!D$y$>YPv4&^DWdwe}Z-HGl{cP^TW zhNHugbR-(dADKBac4YF1@Dam@rw@-FoCrn=1Y<#{x`F2~QcGoSqz=oZlm}M{Eym zkL;xQB;TZ=jzmYOBiEj454R7urQ4!y`PNKptW|5xhTP;`G!nGtU+tY*2n98^+R=ux=>xNHdPz09j-~&L~HWZnd(?| zvMO9PT$!$nR_6T~f6TA>v%a{`=Ns}SydiI{B2^Kt7%oqjN6Yh`j3?&NJXtet`phAB z!X0ww%2H+FvSFE)QJFU~M$FKRtSj#FxrUqxXULgzq#R+#usv;$+Vi%IEoRefSv{`% z^dT*wg|r-9)(;)I=Q%e~{r^`U+fo1D8nM*>H!JR%bkl4)xv9oy^w%^kiUsK51%RK? zU(*B>3((6806&|*rU@$Y`#2wdCVx#6Qp8jHJK6x?r~B75BaItc74e^S`;#_B{tSNm z@H1(D(yoY~Nx}cy?N2%s%lJRg{$!G35&j3-pX{Mn1hhHn6!0@^e==FI2%moYlPQYC zPrLoeo{GHBsQt-airCMn{mI^n*iX0p$v%oSv^J^dHYcA(`;&bYX=rm&&uvaVY5Nn@ zf{wO7*>5Cm8D1-Tj5gC~r`JAt`;%$b_9q{8D$>x*ppBauxY6hD&mXH-eQ7?^oXbn#$6 zx_volGPUWkH2UjO1WuzF`e{TU1VRs6D$pSuNhb$dMmySH5rVb`e(vm|(D8+bpQ}SG zV^&O6grGrzzo=;@Pid0JGzr7)aHA* zW?vm*=@a}AMF{H514VV_CO=1~`RGPy++(C*_V&)T6iiD~*h3Y8NAjwJk~*VCn|+AD zIB(eW#f}FDIz(@8)KV@FQ)EPF4t@b8%YRKVl7TX7dF;rr6wAXE8Bv;vU%*0*Jq?IU z&kOGZI~>bnM~0ACryYv>POMjxnrB9h==nqdd^fsC<>nYR42QEFS8@l$sOTRqt(sj+yQ(lAq3d7Lf zwm)?G%~b#Y#*;<$|64YQ-{-I5rETdPt8ZI$Xn?*j4hzD=L+}VOKpv^Vhz_GR*lmYB z4%q92eJuk(MwX<;y>Ya@_sCYI8Q1fiWQ1xugt%8Hq za9$0ZUkex1!G-m3Q3E`-5gyk>_9gipEjqp#FP+c=PYl45f^cyNE@_4FHh6M7T-pJb zO@hm{CFBYno??Ti+TltEJk1GDcfm7IDQ%pIT501fR7)FYqh8urg^Fn-ftqP!HL9kK zb5J*JoQuk7<2)Zc-w)SR!nIZKf@*kS4LSNYE~>>#7uUf{>fxmg@UljjY=Ws~czFxF zA^_I~;guoyxmI{p8(iNGukL^wCc$e&lDt-f*Xi(j8@#~|H#%V232#KrwQ&=wu8o^f zcWvB)%4_3R)Lt96q59gm9rf479jL%I?nDjt=-appHQC19K6sBG-dhRptAd-VVWtM& zUke|ogAdljhZ^9+jqs5sxVafV+5#U7z{i8|i4c6U6+YDlpKga+I$(AZdZ3OC+z!ELAvH-=FgZoG}^aO0P#4>x{=3UT8d)QB6uMwPhn z8`Oy#@1j!N_^l8A&JTZI3IBi!apRBG@J}`H&!`hO-m8Q8diZ_={Gbtj*aZL54FB2! z{}zCM55j+h;6Gc*(YNuhHoWxjcKA^T{ExPU+^&ILZq%Xj+^9$GxzT{?^O5&)Y$K}CjV9Ei8_lRlH(Ek4&fMq3ycO}cM$f3U~enzYlHpmaC!%vF$vBT z+sLCdc(e{@+2CwDJjMa%IN^W`#tb-D!oe~)&kg6BaDfLdEQgCK;IUqKoR1uR8^`|9Xz=nE^UCz8sYLLxS|=J(gIHnz?DIGS_q!r3eRYRXSTz$ zI^fybd*mt|CTwuE9iHQW=Q`neE_l8H*GRaw3|`=d7nfuc(IWYT%W%@N;$Ws(QG-0bbn*H#EU(n&GuA@VWrJJ_v6J!Humj-3D)L zhc|V=o3-EuI&kRlRvWy{4sUnBJDl)N7diSi?lSPw-4fnY2Jdyl`%JjW12g6D{tEbj z7e45N5BcH4mGF@&xVaiWS_2=eg^$<4C+gvo4e+T(_;eH8(hRdL@RZk;Z-75&ggKg?Ic_p9Is)$qd__?KGv*E;yOdieJS_>V^T&n9y8 zZTzblFa5g(eiVTJ3Bv6m(si6@#TQx|)Z3x01KPDD>CmCm23>Y&IG}XGG8c3k(3H?q z2Fu;B!h~KA^p!(@1+4VKDj%%&!^=X z+46Gi<^1QB_K?#aZHz9+L!#Gc4Mo_;(`Z4wfX`5wzY8hbRqIlVc&Irm87 z5#J-(hhq=tA4)$Iekk`~;z8eo*#}||xcv0Jf(B(s^cuGrUlF{TawLA!2HgswHQti^rCDBV(QJaJ8MX`(W z7pAGjLGFUY1-=Wi)ZQS!CcP%SCP%FeeCKD+i=CIJwg%yIbLS+^@tu=h9b27Gq!Zyp zZj~t6&LDL9&}s40w9_&xqbr9`O`RG#b?B7%DcUKS710&L%Tvok)W#sbY$LTV$eo-x z*>`f5S{LM(q?d%3l(c%u(9{-wD~{W5?&IWkLA3+_8yceblZX zwkW?axNvAee1WzgLoEu1=cVR_<_!(T2erWrwI~>lrDCDj5Va@J1~PM^bB2#e9TPfc zXm)&depY%`cvkM{#L=6MiXJsQGc_|bbBNjzXfra?qtl0}6+x(fs4w29^<{day~91J zo)EPlh<9tZ4WzvHkO1>8`EecvuT(I-{M#`=#~^?KiY< zd|z$f%s$b5hWAeG9olG2nZHYEtTb5b~K&#Q0ilYa z@_4ycp7BIItEeqN)*W-_%hJ>mASV;jC$n^_lXsQZgRDGA)~W&hUI2rk0Jv#(E;uQp->;~;peMpFo4zK+?_IT)4fs* z%$YmSayQY^n`o~h5mnIsqAn2J{2ZgP9Vmi3CEA3IKA{2Y&BQ)M#8DgprGRc05eG~V zVY!#suZTFBBcK$}%_3sj1QC{7iPIGks0a5K^~2!i=ZKg(L4@V@{tQI~>bd>gw?d(x z1vfuO!~|m#M=gbMrXm70*l2W#6$RZaA|@D{IBF@2M=2suPwnTv5eoezxcNCECK#JI zYAK3GD6zuhdo8YS>n^Tu zvkaLuTM>xLc7IW44<3GADsZg6t=n>6{}@HcJPv_{9v(d0!-G1+QW)nbLgsS_EcEB# z;r<-dA(rAepa@yOAy5kFVbvj)0vS_;EaVU<1@y4$5KEDqs|dlj{oD(TWN92vdPN;# zDU^eX5HvRM7j<^w;pgfQOR=1%2tgYIe^DC)4?kCjSPJHRMaT&h5)e?bCX2)H>Ye(~ zDV$Ew$w%*8OTn~sIK4m-cp|?mCvWk#2HWuXtITj()DfKmSVX` zk+GOFpyZ)(O}3Cxy1uR3QYw#CWGvwfCetZJ zP)*|kPIc<@Xv**J)UT&$FPdKOa_Y-z(rMZlqP_rV9KhEj)Q12~f~IRX*Y@3NM8w4- z_5bMqZ;z4o{}Y{STX!KV6szVeUNuniC~a;QYkz`sZR;N76h*`;nt6aeP((nJEu1%C z&uDqd5ZKT{EM zK8HX_L**d^szWRX_OlcrYd8c-0X?ib#ByXmTM@FBL!cDU!>U6phxS#9kPB(X0Rbgz zvN(NM%_l4LjUA7Xf=TDvmV#*+4Jn}ryohG!7f`Y$i@>E5oNHUl2vKKONm^o$he#{prk&b@jhT7qx89UkEK9fpvYK9a|}@T%gBHpR(-B*DUp@| zzb;fHUP&o_0VV5ZS8;g^(yNxo=()DFKwhMX_#Dl{Poo?l0=ij5OmMDkEsqx~BCg^H zCJZDp@k&KVnnR!z(8H=jEXDD2ijW&Q1WExttUAPUc)UsxaubI@ zDWHc{hggn}>lGn4a|o0);0HpWI>b^auU3TI!XZ!!=wa0%mLuc_MaZoj0;PZ+RvltF zL|&r^xt(Sl5Kyuvi^K40n#Mgw3MQSiS_)>A3nqT{`zbTi=G0H1>2Cv0{c~QI-quOi|J48g zyRTjK!IDiwlfB_^Z18!gf z4=4u}zzcl94=O>p$&Z<+R)db4SgNj(AS|2 zeI44+*P#u49oo>>A=aVyYFa{|0~@dd2XF!xFn|PQzzs~`0TsXte83MXK^3S5HJ}#M zfqKvY8bK3i1}z`}L?@buhBW%erUM(W0|#&d7chVXWxx$g-~r{J0(gNB_(3J80@a`f z)Pg!t4;nxtXadck1q48lpd}39xfmccpaUDQ0|#&d7chVXWxx$g-~r{J0(gNB_(3J8 z0@a`f)Pg!t4;nxtXadckg`g!2;CT>)Kr3hi?Vtlp0vg>|wCTVG?7#t>zy%B-K^brZ z6L>&5r~qEz1Ab5msz5cU0kxoxpe3xw^9Ilenm{vX0Ra#MAL+Ch&lAPyxKaN6-@b@w^gLfof0#YC#>S2MwSRG=XN&0sH-?7#t>zy%B-K^brZ6L>&5 zr~qEz1Ab5msz5cU0kxnG)Pn}l2%11MXaNC&mN1CtABx=K@F${b)X(J5VVAic-{n>K??|gAP9k0&<5H;2bcuJ zHbMhBumL-804Hz(14vK?+`t4LP!1}97x;i5R1&m=Rd`+vYCtWh1NEQ*G=e733|c?{ z1VIS2f;P|&I)L^bp#vMR0|#&d7chVXWxx$g-~r_XEnx+odw~!5K_#dH)u0B{f;vzS z8bBjx0?nWW1V9jkKr3hi?VtlxZ|tY!)*AYU_6bBCs0R(85i|k0X*xC31paVF!5+?A2I?w{z zf#VIr4Sb*$G=nx^e~%~wUQh#?Kr7ILGwE%Ca!>^tKoDpHgbOqc97VqYY)c3UDnK=8 z1R0xe0nfCp59dJq6&3*iJN@Pj(g0@{J&4Z;n4pcXWPHei2`C<9(l z1DZf95H@1V^Koh?KlEJUxzKaDXH(Qte)yU6Gtp=A*$lOn*Rt6y@hv`TEuVNg^mOj2 z)KlT7hM!D78GSPUM26bTYfoe!k3a5ve27}jhaSs4ntC++=rFaLk8aLCl6fTdh(;~v z;}83&H^0O~A!<9HdN54=`K2F-QtSE5{jvKs>d`Nr@nwcKB{qeqPruZC;roW~P2U^6 zH-As&p4dIwJ=weCcl+)h;(q;dcc$(PQ%m~v9Z~ApFLQg0+R|rli{IwEZRpknwWiPA zvg8&Y_3f9qIYce$Q#XZg8on`oW0cy|XVS5>md*%+8xl8!ZpdAqqIUILsa<{O zx*YZH7ru6wTGmIe$#2N)X8(Tib-s0*u83WsU6H*!ez}iY*(Xw=R4$oHhN+!>`m*R{ z`AajG#;B!z_LBG|zDtHKPFx(iICoL%qVPq-)ZRXNVg7>T1>p;Z*QVD-sl|O}O>B*} zCVPII+T0JFmpCtUUhdo!wYncZCq2@`Uu?CuI-7_meALHZVpV8W?(8LJ`_3LZD?z>d z<<3l<89sCPj5PK0mp?sodhB%V^enZ&_nkJhGO;qWGDmIjckb&ivOK>mvn;kuTb5lK zU+P;rL~ZdyC+Fg+csM>xt?{Ev@{2QzV~aIvj~_qDchb;_i4#NAB0qIP_=Mr()5iyo zf8)3mwaFhoHhpaL*!-dlwaV8PWf#U5`lw}oVnJv@ZhmThnA+y2=SAn`2Qz~)YMq~* z8=vc&I}}UA#K-LKFEukfb9hF2Ms!AgdS-fT`nLXbf3!c}m+6a9YyE6*yw}$|)RUn0 z`nm2@cer~vnx+=}`A8-bi)fK7wb}O_Idnwgh!C~gPaPgUeCuI}!$ODU4oy+Z{ozB> zheQv_ADp4K``W?TgW?DI4jQ7?`=JAK2c!-NA23Yq_oLJDQ!`UzQ?-$P|2B2Sy0oq= zwc_`MhdL9Tq0St&;}7pQyl;Bn=)U=VGW*2#(e}yi9pBqWZTS;>h4#wrnc6cPZBn))-r?&QYEQI>s8xTeE!;NTnr@9!yZ%fl7Scl5 zV4Pa^4+Ro|P$1W`tTRsS{)Ze1 zN63-0r>N!suq|zi+VXma+Wu>Lmc~`~X+t7G*Z1LTzV-6$RR90ZQ#M@g^Z0+`+W%jx zxLI-s{hD7u$(k%~mMoi~zRh}1@j6Auoty!sfF@hWC|%#yYq_O(y&~f-&VW)tlPzSF zu5atL+)=zik#RR?Kq;Wf7BZ&N*OtdvJyoyehT=v=#yvC>zkrf8*+RztmH_%0b!>a4sEO!&Ti*NJaqDXvzvit%{*3GWs@))F7 zEsx|#+cs-~yj2nLAkD)spk&=FA||MBvzEu(6cG<`1e5~0Swu`w-)1e2w<{tZ<_IVS zbhC(uca{FsfgIj5m3@-*NA|Kn4rGRS{Cn8L_Eq7 zPzvZ~5ivo1Td$=k-mQpuj3b~F(9I%Zg8H^zOG&&(5%C1gHXxv6O}0>Xu$*4CJh-%T zeOq5~eOpg)LA+NH_$1BIFQ8;SY^lJp`nEnxecOGCkf%5VN&!8rI>d5t+@uJ3nnR!z z(8H=jEJw$TB4i7PKq;VyRfkv(kM}D=vK#`XfF4#IVkwdjC_;*rGOq*9bze#4=F;P;}9qX^swp>OTm0t5%L1fI3S>8O%{jY)uL3vr1~~X!R#$A zn2#s|U!*9%fRZ&?1TLT8oYh(`H!Ct;;tVJSG}%H%>2uaTOR;=Zk@0!XfKot{Eo78F zXYI3;%EuHLFLMTz0-9_gqx3mzpQTVfuE=vA+R$MiKE9j(}1?H#95k`lHnLzn`Wb?Bmi`QGb6XO`B&?`+u6oxBu^HpuPZ) zrM>`Zs-o#>YWsf_P47^<|0GR~G(A@1(x)Hb)PFV2si$aaq3IQB`@e{$zfimX8)*vC zxPPy9(`z(+NbUYN(loyP|FJ8M_S`|&|2i=x z*Jz%80VV5Z5i!BJwskM^oFd|@908?(ZWa*}oNHTmBF`%#zQz$y3g~7LF~PaEbszGA zBI4^D0i}R$77-JiYg>0AFDfEl=LjeTbhC(<;9T3f2YE>m@eP`7KtRcwY~j3N1-)u{ z>^Rr%FFx0{40Qi_Mc_ASj(!0p>tRa;j-6}wTh6s#R)lU6p2lZDJA>ZZ@ zCJZCO{Z&QCcQ^z}0X?ib#Bx~wf+FO*90H|)9#$P|auZhlpve|8N}p@@Tgv3u6&XL} z3@8OO*+NF?bM1ahk$hc|@iWeVQb3a}WRyPF?zfc4|59Z9oHL*l&}0i4rO&ndEd}x$ zii}^-d;iio#40!jhhEFva2XSJ5b?CsSKq;VyRfkxPDnC+${DDKD6wt$}LoA1t zA1gxs$RSV)=wa0%h2skS!cLFxQoH}tXmZfBiQ4`jO4B!*T>2^W_y2a9GKV_#BWU^= zwfkR7Q#DP`P}~2=6qo+<8T1-WRWxm(w*TYX|36KC_kR@q{r@}j=-vQLjWoSLZU195 z{ejy3Uqw@m-=#krrhWxz`Xjab-$2tIX#c-T7aK14VAGvOL_D0`as59@{Dt2`Elhs& z6U7Sq6aAE5K*@So^$N2bB!8+1d5>lv5Kyuviv#g$QL1RtS*xXJTDsEunIbUH?+Qu* zO%{Qt(9VC{gZBj(A!E9w(EMDH@jlJQFQ8;iwvbW!Ol-QP%>1_^1GjSg0!r3o3mK)) z#HL${%r6ufA94ni0-9_gqx6~Bbjz98TZ#;9l78MWC2O*UjM8Uf(=8j>HbutYC?g=C zWIe3>3k3g~7LF~JFj zbp!jgBH}+Z+kk+Q^|0rPm2?)fnqIX$k~rR1ig`2p=XMsKVN5H&t^OND;&z&)UqH#4 z?78A>aX!7RagUMR*t|IlEXC$sMTXFj0VV5U&lXGh+-!VC;VfoOPk(2W_YEUQncpfx zbeerYK*@So^{NXOuR2QyFTYbH+W2ijNiBu3SA&IBS8A_Dt1ir|b>v=J3tLv*9~2=D4uMiY533I8=HtW2JNcs`#K|F03TUz`c_Y~Qo!Et)Ht(4| z{b9ayGLrEpMTSB14G1V%53Ak=x{9{}OJ5>?RwPQw@(UC5|yzzT}; z3n*C+yHcD*C1}OCeS+X!om0#_W}fwe?E^)KmqVZw(8J5Fdv?DWHc{hgdf4zbHZ~X~qEoCF^1F`J5@v8TUpCtE-YepV@;)7k@yOCJ=vB zBvw(DUqH#4Y~cecb!4Cq$Z}-(nUYpFr|mm;u{Li_?s)?^V_suhky^!3f{E8f}tTanSk8Bhvn zvdCCN)40dT`AA>i!oK2Dg^v^&&71+HfF2eZXHv?z$H-oxuW$CkzAmw4tfv1zijWo# zfl@#ZTUc2u$7N7~{p(W>Jx$mD`_OoQ|3!8Gi)g&RcMhX*`RMQe8)cI(RhCms{hA5fYTq?Hj6P_ibA6@zQ_aS#54=}6PpTeR6O>ax@?aWBL4d&|cC z?&!$9Z4?z0P_ibAz<7y3+I99tM+3tL(6F{$miy=0v4yBoiS3jX5Kyunwp3!_G#-hw zigwo4L|u{C!HG}`=wa1~Gj=2{>ayILv?&tzp_Iu2N;b$Yrv84BI_{CI6LrZJv3PM` z-@x2Cvlq|po4$C~oSx{snRAXAT)a5k-__YwT!QV2@ck$@AfRMD>?w5Wu$2BA_uvv- zDW=csvF!W0EVp|cio{OJ@(U0;PZ^TL{_t zOs{Z`JTN%dvg&B`I)0SeHoG_jN&(&Mx%5WP6v1)tLyX)}m^V24KzwVYgd2*8sWe*} zMw%mFIX^FaHanN_!m$t^PG|856J3`3BvKJMjbdmZX^w;@KVM4ksSUauM8V zT^0Toad4ooc-Pvjh?vU}kcQbIX_y@n5i56bsye#q&g?7Rv$iNQ=FuDj0@9#2oB@%6 zGsJO^k*k_PI(IAH0a$L&1QdbuY4&~rX#gCO2EZ8!TuHSm;~pa?q=N%9yA~B+jRzGW z3pfPQ063({uA$;mdP82=GiO%urxQ|SEaVJGMKbxkHsQ%W}Z^;7---gFP(b?X0b8BO{9UEKfwo;^&UhC`q_#BxxXqzGBUA&`co zA!$gOv5=jwM+@69y_25egUTL?j5udN8j^-HVBwAIe8D}IVYxRmS&?xvXFwW~hIF%q zjNrHrWc1>Y-be81oX#PTMy25ps1C6-&j~9+&fpM8lREJpF8FeW_&g2kC zBhzpQREJoa8SbwLIg3Lejq$=EP#t1vgFjUfayExRDWHc{hgkl|XPP2p6^B3?N`|DN zWXP3VEXUt=6C?YVnbiAlap6Bek#R1~F(4ofhr$^UH|Zw0zME~izT4k&gY!T|;CVEA zzkoC}3R%XU!)M_;@6dFi)4jn#OV!RniiGny0n)fAq?^TC>J&RCjGXDyZ71xoM-KJ} zDI07OfEJ{a&ix0zxC?eL<4E+Mqm?)&1MMT#G5naWXc84k=E~MGgh$tKZ zJ^UP>{COqLiz>zJp83`@G0W}K!xV`ZQ3?%-!ikWEL?H_e+e)2-(~!XZ#V2BiD>5$T z3`j$wkREoqSi8#$*22-HZ_&KD{ly!=5sHvYI0Vv|C?t)ELY_>!nNokeVKdwLq_t2>MVndiK4#JWmd0k?ip0w)#V;U@UP997CFDwKYPPiGh4{<` zJ(j&pk0Rp=&VW)t4~q=!%f>xME-Gd&80?!>yqWbXLe_Bzq#;sBH@k|;XX&%Qf%(0~ zpH815;!2KyG$sm1Kx_e}BaWJ9ImYxWBCe(x1_YFBIg6`eYy{&TBW)H22WF4EnTG}J^(g>jFOO<-Vp-`v6C zO<<-Xv8M8!Z%u)yFj9H>HW{J+2B|2l4=!{vSGiHg- zm?b)6mgtOGqBCZR&X^@SW0vTQS)wy$iO!fMI%AgTj9H>HW{J+2B|2l4=!{vSGiHg- zm?b)6mgtIEqAO;Ju9zjdVwUKNSq1^RVjf$Mt#}1pGD~#HEYT&iM3>C;r*eb_&?U39 z0d&bM(IvA)m&_7fGD~#HEYT&iM3>AGT{25_$t=+&vqYE75?wM&bjd8yC9_1A%o1HP zOLWLA(IK-$hs+WkGD~#GEYTseM2E~{%ZZMeB|2u7=$KieV`hntnI$@AmLY(SnPnS5 z$IKEPGfQ;LEYUHuM90h$9WzUG%q-C{vqZ`)MW{K{ZCAw#pT5tos0bm1m-~dkG0tS$v47h;_JfIv@0537N zoIbqb2bG`-RD&8&3+g~UXaJ3%2{eNi5CB0C0I}ihe26SKp zcHkh!meYw>T)+SllmRy|fd`a>3g87k;0KkU3RHs{Pz&lnJ!k-ppb0dC77zeI5CW~B z4YY#}Vr)6JB)y^o8?XZhZ~_-FfCOd04NTwx<)8w1fe-jWC8z?`pa#@}I#3T9KqF`Z z&7cJYK#&+)&JbSFHW50o0XuL2CvX7+NKgj;4{>h--bR(C`=3%-lFQask|j%)Y^l5i z!fJ(mYpgg41PEAJAgr+nbh8C4NC-;+i@kvmi#-847KDAX2s=%8)C=7`Ju@BMxzjT} z-P04z)-yd@bh~H0b7$`R9@&=43+1`}fBxg=sh_2)QoVJ~S7)iJbH1;Ya1n08LwE@v zp%Z>0K(rA-B1E(kVIo3w5K$sVbP`PmmWk#jC+T#P?sl?0LPiYIP!h{Ub59ew$PS{A z;^ShCJiL`W(oG)SPM#DYPl=MJb&{vY$&^73ihgjpjXc9P3_jo@^B(eXANgdMe7=L+ z9VhoBK+Pa}`2AI7KR()sCc;5zL<`YMxCl4lA-sf6_=x}!Btk?x5hfx;l!y_XL>Cb! z5`;l?6XF1%5H><3ng~1LAe=-qp%E=aE8!yCgop4FDh}HGhMj!NNxsue86Q7>)JA^2 zgZ!2cdpG}7=Wp8i@lV727$KrWCy^iwqMJ|-0xHo&*a;`05iLY3;Ue6Ghv>j>oBtw4 z{-TTg>o|{Q!?xysaFD-hCjYS;bSmB+{L>WQ3hY9tL=#~r9E6i-AzBGH;U#>8p9l~^ zB1H63K^Oek3^aFW{OIDxE)SW|$(}ZHQJ6d|0%~F$A3sw-6gxoW_kDKqTMn*p63zVn zT@U#~Kl!6JvK%6RuN_1Q!p9$X@MDZ0f6~d1aen-nG6DWvB@fuiKXsCSu91J)O8%9b z{G|ufeEj%#e)1pM$ZClERhaz84)UK}`&S8P%PnsF!=<}QG~e#y#~?rE+R1w&W%Puj#K9U(LL#yjplA^-AUC+{*?c z24r4RUMlQKAznc4MdQWt3)vS8L<>k4s^j_bBw__*cN@D)U(0+=`C8%m)bo|+a?csh zm1UfO(yr_-eOGa38c_oB&!nEIKAnF$`E=!}{8P!NDo^H~G!P>o^Mvw5@$vNI%HxH{ z(vK;R74w@C?M^lehw->gjw^tA$z<8weaQ0#S;o<`01ElX& z?k(Jtx~Fn??(XE>Wkd(ibEVPjs4-f;D|c7&uF9SHJ5zU7?EZ zs{9-=0Ww$WSC+2GUSV8O-k95%+*r9he|hTiYNn7$XOv8FI5Vsdmo{WK7#qr$iOY(Y zW-iq)EnSkm#JHq<@#w|Liz^r9FG^ihy|8d$`abeSPVI>;=XJ<@0mrC(o~} z%dbnVtFA4qO|KnYlU!3-onM_=T}>C#>9q1+j0YfA7SGI_sh?RoBYTE%MtMbUMRG-D zd473nd39M~S$dhWtT>n%)CWsTvrCPo4nqNr;mOq`K8Kf`O{LT zRZlIPnm$!IwRlSA6#bOa$=Q>QlglUNPD-9sIWd1?>cr{^g%i>zC?^z;&m6BGUpg*( zoN-+FSTPv~ptK~r#8^^J=90-|r9Y2RhSj4BN2iZgjxHXRIZ8jObY%8Oq+>&cawp6sdmeQ)th30g#(p+?A zoVv5*$T|#1*`Bi}?Ukl{Q>v+|7Syz=s6|`GrrSzNRxy+^ZtFMx?*~r&8s7hZK6(F7 z|9>;)|DR>?q-49oXFjAR>5;q~BcU#z<8gLvDCp92mabX8w(*JS*%m5~N)-~ZQbCX8 zjd&WfbzYU#7hJGr_43B2a_3m6?2sxX0;GZnkP6PHQhSI^m8FgEmRDJb;IRubjMO9% zAQhi$56P~ceAF`iZ+d9YD)WG)b1g)k#vv1e)Fj=Ke2UHCpfmoYNSnA|+1kmczpIw7 zIuX+%jyH|>IL|`z8Ho7>iKv+%qGp1W9GPP*Xl(?;1N>bxWk!VZ< zKTi(RzhIeZu*Vt;iRYvQiC7aLVoiXQnEz?~16t3&B@$_>dqGTmf`T zQZR#(G~;jTWy9*!vcbkT8kbmzye36RgjWE4k`$Tijc~JQ9>o)~)$7)zR2I8&ZVS1nH5a2xscg_>-@loJh>tm8(n> zP&Qboyn`br1c`tIQiZ$$37Kn(7^{JxIB(71V5&9=Z>s7sO?DWz(A*1!gdpK?AB4kw zkdw6M8nnUQK^rD%53a7wdzz9oMQqPlNWKRFzaZg$UrLf3KRN%jk(Fx@hQ9IgyWB$L zeJMg}f^q@axn{W63^p`~8Sb^oDO0((baBI_c!h=L zC(!W=60Yl|CRv*re*KIqQA}NmgEMEjUumK8sZ=51yk4r13s5oT-$Pz`8JN35G35!gC0q$ zSd`J)+^VTEYMOYo$wKox(1BlgsY!a|=LMwf#KtP_dJC2BN)-~W;iU?>0F{%H0OzO$URZ(;8LrC5H6vHv%p>9qN-!h3v-{U3b5Vf#7W{cl1H04L@E6fg(i6fD1g zg~N6OmVd|i|7S4v|2WM5FXR3HCM+73r;<)vGVQSaHs1Yzc^L2iu{<<-?OD5V|KIyz z?frk_{Xczy%=p7BPUmPdeRQ0=Hre0UD;TlJn(xW1A>q|tW(_%?0UBjY-GZ!z%=e`X z3D5RYhFplulE&u*H(JR2K+2GsAia_ckvXPur29=4GQTBdNI21#GUP&Jj%|D(vDrfA zhf;=w>wGCgE=1p;7X{?N1kk^PcS{)yVFARkD%ihBs{uTEDe}o^8x=430?E5AB>x;T2|>c?x0EDnl5@{dmWedo9h(z*kA>o2 z;P?qa!Us6$lB_9SHD@BFV$DU()HP|kIlk9I@fT8&)CB2~tSQc(U|74QM7FLm-;ke> zYBc427Mgzr9ls#qBOG)~Qj=4GXZ%e*LP;%~@$~V23z5H;A|(8ROA*pq#B@XXfQ85} zr3eYX;8KLN7BSsVK4>BGH&TRzUvSVRNs+ng!^v5V%gi39zG|WIw^DiD zOrKh|(lnU_$(c5mJQN?i+f`spE&?89= z&X1n)Cm*{6S>3H!y>zO=5kZ`6gMM!HAQ@I?o5c#zfA>mD1ijdYKrgE9L5cx+bLc*Ok2zT02gm?P02kK8= z27{|ieiqEsX^8>=6eOX>Y&GAdjxa;BVTgb-pBm^ zA5+& zVcU*n5f(9Q6K^Fxe`Orw|G)Kd!}$M+hsBXEJSYvs@z~2pYqq*#f#b5Z|EBTS)91Os zaoHFLhT*0E|BuI>K2LRk!&`|j9G9*AH;u=hKF=PWqV>3J?Z0U}_Vjr!a9pp9m0bM34v(?ZDKDUK!?^2+=`Ai5SsIbP;hPK^R0g(L*Q)02`qaO@y6r5Kf|* z(1;eIm2eSm!b5loAE6U|B0#hO)8`rFnh?=Wgoy~zK}3ld(Mfa>aUww&L^shx^b&o< zB0?Ml6v9TRL=#~r9E6i-CN!djXeC^P8<;*%57&4JAE6U|B0#heK_W!76Ja7kbP!P@ zMsyNgM4U(v2GLFQ5WPenA$$*WU^ZYQRHBKn6Ar=&OrK{n*Jwlw(Mq@oH{l_?gpbe( zKM^3>h#(On+KDg`Av%aC5hFT@E+S4O2!rS*dWc@4k61(~{SD`7!xv2@ng~1LAe=-q zp%E=aE8!yCgop4FK0+t_M1W``f<%aDC&EO8=pdp*jOZk~h&YiT3}8AxySb)^=q37y zMT8gt6v9TRL=#~r9E6i-CN!djXeC^PoA3}`!bj+Yp9m0bM34v(?L?S}5FNnuc}BS= zMsyNgM4U(v2GLFQ5WPenA%*~jun{WJMA!)j;Ut;~jc6fS2^ZleJcO6<5jx=~0z?}y zeV#$C2@&l?n1~P^M3jgTokSNAClZ7~bQ3*9FCj(%g|HDS(L~q@2jL`|35{qWS_v27 zCOm`}m_AP**XV?w2oP;VkO&d&M3{&W9YmCf5uHRA5hoIaL39&6L@&`th%rDRY=lZQ z5q82sIEiLL1E$Zjg=<;~7vUy6gqQFUI^ib*L>mz#LPR?eCL%-!5hY?oC(%X3i3DK~ z-9!)3OY{-SIA9}Gq6wHjPdnE*2q)1@XhaLqO1KC&;UT<)kI;$99yjmAMm|h@SpFdQ zLGpvj`+1D{ufA7!Fa4hKUU6?`@7TMkcdNxhFK2drn`;PHW`R&}>$+s(S z<=;xZReiJYX8KL#&EgxGH}p43uV-I3Fy=q^TJp8ZtG-uDuVh~_UMXYDfAZzZOZk^l zFID#x_N4bHdx|e+UesSK$#MVXLavZ3R50>CHD29a*qz?3>@H&L{}@L8SD!09mwrxp zuJ~-`S^Zg#{Wo@%cjk5`cUC4x{}-N4Kdn4nd@A#l{#5D7EXMzrpU6Fte4_HW@A1-O z*~g5>%K2PAnXioH$5La}9fcj~9mwQQh7N4aO&aeLxt%X z0AmlP9;`l4cp&|N@<8$a%>DZPrTen?8TXa%&E1>4w{lM&$+*Z6bbE|%9>6Yv*#x3Qoxvj~qm7DW7 zr*5upDQrn^QMME}XEu*bj{Q&HsN7i0X0kd)|7S;xk@5|>8 ziq~bX)2}OCo4wY+9Dv+4$!jWC`>rlsmA%Tis{EDQSCU_;d^!K+)R(JQ7OqTRsa#pS zB6Ed)MQLMpqp`7kdG7M$<&{i6lgdrzO|(_ z*)_(R^6K2`BkRh4t{=cLZ5o?SRQ zeYSFT@vO{QV=GfDt7jI@OrNQoSv(_shH^%6MP`M*qO?4_+*n>-mRpuwRvF9>rUt7^ z3ro{Wm8Hd0CZ(rJ1K9y%pnSSGz4)cfm-H`{PRpKVoK`+HcWUy~$|?C%Qm0f;E}Wb` zSvk3QQsyN6q|%Am6O9wgC*)2@o=`bHe|+lr>T!kR(#MS+n>@C1O#YbEG1Vo7CFv!~ zl43HG)RU$DY`@W8K00@F^61J@`J+-tRgWwjnLbiEvUo)12>poC;n~BD!^?+>!-|VD zi}l5&L$ik(hn5e?9g;kxvM9eOwW!)x=u7u0eZ}5Puijhg$@UmM!s)OQF1Bad z_4ZOI8!|%Wpa>S*GHrTWDUb~qfwDj6Px>o*UQg*&U%{95DZZjN8`l)u9U0VT4+tTj{e5u{~b3aw-s>z|7hd=zwg`P?9?~qO@HgY%f<4n$L8tqq&>Sm zFDr_le~Kca!&iz>Y~(8<6!u*sLfY^q5o+xp5h35`jUp7-w^@YR_isfk4&Ut})UxkR z5$YNr#V)>kMJRaSei7oN>yU5X!y?o@zFmae6FayyFG70aF%e269>>?=C-JibPvPtM zGdRk~E)k0NKL@q(aS>`B*n@S$FXOidUV+faYa(PDe_e#U2j86Mq#Z+Vi%_J00_QgJ zF0k)C5egl6pU3||gnCCl6d~u(N6_5=u?QIxpFkw>8BY+1_kR=T+h4-zAN&@+4t-}H z5oPG}`L-NLD0Am#)4uL`ws;R5GS3$6;Np3jIZW5SK-;4VOhw!(|an3~ds@?!<@)+HhF}Ra_Q9CoYR%`@!3=Vd72^ zjQH*r!5(q12zCuUD1v-=g#8{C!5}V+VBgpd5%eC+i=fB%IDY1P0y_^qDS|pKi(mkk zMX-B#mk9cCSp*ea7QyJjJyf?C$VAUn?wU7fb;FxCsCB!WH}s86o87#@R=2u&L$q#m^9Eyh+UDjBc9^_1GHvcQ znma&qx6s@M&D}$Dt2B2L&D~6MhiUE}nmbH$_tM;*G&kKgU_Y2UL~|>s1%e)$+f8$a zXzpH`+fQ@1(cC>WcYx-$(cB$0cMr|2pcV*r(A;*KyP4(=)7);FyOrj))7%c4+fQ@5 zY3_EK+eULcXznP@9j3XPXl{+>_Ll-@E=B{t(Hk-S?p^4`1m^OES=JwOvtu%Kx&D~3LH__a7np>l}BQ$p} z&D~CO_tD%jnwt(fupi9bPIKF6Za2;CqPc@KcOT6ipt*xIcQ4J|Msuq)cZBBdrMYc1 zca-LCqPd+kcRS7Pp}Ac&cN5KRr@3{S+eLGSX>Nt)w$t1(nma;s+iC6=np-!UyPkZ9 z+1&LFon~{_H}sj!UEkm|o4dY2F`K)-p~r0Q`UYV(cYQ;|Z0`Do9<#aY8x9#lg`W4c zOdH$_g9kh?c)$yT2NuEL0Tr!$pcw`aXfSxd4TA?dVeo(rt$ZK=g9n<>$_K(Qc!1tl zu;0TX5QV`54j4S3!Qg>r7(AfE;DIKz@_}|3JP?7w11ehiKo|xOIAQQW5C#vZXypSA z7(5V%!2<#Y52!GBAOM30{4jXH2ZIL$3?5Km@PHcz4>ZHzffx)P=uLcz4KR2h0fPrR zVeo(kg9kh?cpz9ecw^#ib#phaj?|6axZ0?jx^cByH+19b?gP_}cjM}K-N>fZ2acF( zBpO!->jrLIZL2rfjjKCgOXp5gYaL}#_OmFf=)VOWuxzlEMcKuo>|;?*uqfMM*`O0f z4Te~X=|cy*pcHqp6l*NSfw9N13rrd8VA+ka>^fk|V3cK7A1dH0tQgc-Y`a-(TUcy8 zEVe^MESQM|3Z{z%Q)j^p*X?9ZM_=6}<_%5zr(0L^22b5A<_*pD z@@L*)uXn1<8^U$tm^XOp<}q(*tCv6XhMltD*=$pt?B=m^L|@0)nRr0qT!ub)hv%XC z9_Vd(u|3|7?e050OFSc{ZLQoE#WwFAPujG_!!2R{>LJgao^76oJTrA&)QxbDJ@f40 z<{mSDCRcKUa-ftimA;w%X5q8+XUf-$pQb*kew_NK`l0bb`F;89;$8jS!bEza@OJv` z+?&ZaGq3BfmtM`js=QKsS$V0rr}9Gnh0=I-+}K_ITIPBEc|Kc6!JmNfbor^=lgTGb zk7pm}GXrI;xFfSe-%)xrzdg0R`bgoC^drh6#fLNS6i|97`;hTa`K!6FCcj#FFhAp2 zLF&Hhy@h+}C7^gu<{tf?(%sp+4fqMj<&wF|Xnr&`TD_}qSNbmHuHv1UJ9RuMpoahh z-T?}?rf=16DQ%tkG(g{M+*H0XcViNs0P@*XwmMQ6Ny8UF@rKL|2R|5ofB)WrcPAzi z?~J`A-W+-Tz^nOJQ?FKEDZG+?g{jWGti$U<_9f$`@}AtDB>XPqUrfDNeWCC|`UM4^ z7cvFCAaex17jnCkyDMMIe=YU3>hq=NhMqmJbL1KE^w^V$Cng>n$nW1VZ29Cw|7z*M z?1RRG*!*}ezec-lvGp6;qf4UZR*_g&b(e*Apjy3sWU)5AmhQ0ctvdB%C=b93h= z&#kP=uS%_|o>Mp{eU5TY@$Agm`q`zkvS%4*l~?9gCRbL@%%7P$vwB8hLC-1l)adC4 zPa8gU|H%UagnK!s7H|WpVM)%%S?Br9-lZ7>AS>OMslIA&p*P*D z^cH(EJ$g^Y7)XqFiO%8ZzDOcG8amK65E$3fx}q0-8K3Sed9z-_TlVBUNl(R{ccCsB(q*fotZIiQ6c3O!1hZG?ZZCr|wjOF>| zd51);UcO?DDX!Hn3z7enA|wKgOA*pqB-uEi>{$yD)y9!TBtmh6Zb^L+I8Yd1sZy{orA|xVnOA)drGJ7ad zZL~NO8n#k;OIW4keS>w3(-4-Hl#4-onk{Q$n*UvG?Z}Ku&d9Jx=zHA}l zl_DhKmrD_{CNgi)TzRg!Xue`0qT`SWK_av`=#l)QNSZ;xNSevU8RhFwG)?4q)k4z` z9lszoNw;Jz+TnZ&LwHDYq|?_dL;_NTL^yL0;mkp65mSfbbqkR;DMBKGIp~qBMTeZ7 zlG?N@#Gp(rHN~KO!$Kt}RY(oboTx%BK*cnr=S>ThkW?WN#9XS7)+#AeWBrzeO1o4c zH9>kL7ocKlt>3m#iQvcyL28m7$pu{1jl;j!pJ?(5^NxjP2h{w6M6h%a!O}qvH&4z{ zC)CC>53Vs^)DspOQK>;9KDyK(YZ|k!w`mR2HC?pOh)E3+@zJFQS<{%^SWj!1I??Z1 zXmm;q67kVN#776M3#Tc_#a;`ME-6AHKDrbktwoNJ4f$k;;5`eGxD+8ZLAoV5+wRJF zd$=nHm#;}SHly!bh$N&4sR`08Ns;TZ%=nw^5Ud{Zpm6m+S%80tsO;3+N8H`GWX_-d&_ndQ`o0w8pt_)Cmy?43`|c0_{2i;Td}lZ4!}E@`+v$Ah~Ib{KxO0tm5~cnMlMhp zxj<#)0+o>qR7NgP8M#1Z(!GE#xcNChe*6{s9EqcT!~%18yOl6VLwPN+l^VJ94flV}D|f;lHfZ6R6-7vUy6 zgqQFUoD-vRPK+8L+K3<#BHD>C5g|H=C=nw%i7p~eBnX4(CVGfoqK{ZaC@5hY?oC(%X3i3DK~$~a&nRHBKn6Ar>jG!q)pLbMVt!cBMxFX1C}!cPQ< zHX=xbh;{&H80O~)(LqFs7|}^|5pg0xDEk2$p%P7mo#3n&m9t({&U#Tf>qX_P7nQSK zRL*))IqOB`tQVEDUR2I{Q90>F<)jytlU`I#dQmy)MdhRywKnO+;B*(2(_K_fcTqXr zMdfrCmD62RPIpl`-9=3h2GLFQ5Xu3-MyNy+VJ94flV~P1qJ?NBT!fqO5MIJZ=!BmL z5N!bRFv!m#qMZm65u$^L5;3Ba=py1of-s0~qKD`u`iMn@I0z_&jZldu!cK6a3+iit z6J1bW1DxoB`WoOw7u47C3^~OGH8#L0E~v2qPH{nv4RDGJYHWa0Tu@^JoZ^BS8{iZd z)Yt&0xS+-cIK>4uHjp3;qMPU;dWk+FIJN>A)E&YKZDmU5G106 zLD(jMX2L_X5gkN=Q1$^%!c7E-2oWdx2*&}yMfiy@(M9wU&WSVeTOvS2h&a(lIQ9W9 z!cT;WE~1yP?+025ooFXIi5{ZqAkaeih!7DYx(QoiC6YyWh&G~wND#^p;3Q&0XWJLZ*!Kgigif>* zokS1ObP#AEd_;(d5#0nAeja{bf4}rz_C4dh^4{Fua*b|rUJcIJ2TEqvjb^fSsc#iuh*>ra=S%06X0Rfb=GAN=}fpD>;% zKc0I$`FQ2A{9~!ds`)}bomcY3vCNo0R@#x>VeBYBntL?)Xk~kTdt%;^{R?|PE$%7a zow-}Ty9Dq4My@=X8%>T@?#kblx~qC;;m-7(%ALhKGI!{Al(uEJ8QaRY=Wb8lUb!uQ zTk5vzt$d4r;FkO?savXB3tQ7$m952_GdJrum$qcL7+cDlbDNW!D>vo8aD@N9>$C9i zU*444l-yLgE)O67)oTmarmt15Enbs>m;ch$*{hAK%U9**@$)}^MfwWmisHu1Mtx)H z^6cft<>gE+lgw0x^TVm(>W0FG^af=^@v_Wi`emg{vzHo|mM_U&lDwpHasJ}e#np>O z7c|O0zc#hDx~8xuy+&D6T%B31uP&vtX(L@8`c2=V53HyzFDy?lSC$u-WtQp7N`u)! zW3aq5w=}u5lFFx2sp>#sAU&WA6i?5buAg4|Qua&6m&&K*PD`FvIW>Q3;?(jfxl@v- zR8G#HoI1IBQsJcZNyIIAU{RLOrrMQZ%nO42E)RJv6 zTFP2ZOKO$od~>R~>MS_ZPQ_VtWE{GqWY5|Sd$}pslx(V~c{Qb0Z3SD}rr3%~M$wg$ z$l?y)|M<5Zd+`4M;N<;3{r~li{A%i{)}(U|`K-j`8i>zI@HhE<=2MGjB}dr!tc27g zJ(6=hE5R`vHBHWePCTwr^XnFxM?=jJq$cT-thwr){d9{@QriT4_0D)CWbzOEnT2Fh zCX>_z>6V;Nk`L5slIEN>Nq)mZa*32AH9@*1ttHJFYl`vtO$*86AY%wplXOecN!N{d z*goS=J`aWGWn}F1JFD8mHj@LbeHNN0KrJCiP0}MdpJvU|lhib4tx2L zBp0A*&Rdg5t8ZCoo&p_1keZ}haz0I7LAAV{esfaG+f-vg`L>1TX;4cDQj_#Z&Zk+= z+ok5bHEDjwLi0;flhg$1kz9bLId7LXrt`ZNnoFf7sR_~}Y5jYFIzvi z&>V!0Uyz!lOOmg1mVCi$sU;@wli#z@SSB?{O^`0hn#Sz%IQ7bCiRrb}_boJ*OAS&J zq)W13+C8pO>Kd{hPAvH)%kZ#G^8>878wbv1NF}=j(ANIE_M9z>Rq$Ws@WbF;; zY?0}A#!FJBcg8=oP&reokeVPpk_%8Vy)*u83zd~ph13M;mbA_=(<|fOu@E^+ijbNh z-IBHUH?uQr`X$j4)BBs>wGcTM2Tll5lXOeY*FUH=oa~dB{8=tFz5M!-h2)TwB;ghS zbW7H1pt;l4##U@bWpGSm1+?Ena;=mkH9@*0GpG!1Len|pPYx^$h}4=jrr;GzO}&G% zh2lD>_yws+dL)^zH=+WX@i*!J9wC61tXtYRitT?`sGKiVNKKF)$@#LfR;HMh>z2yu zX|fObdlo7eNEK2Oq(`!Ljm)2xbD<))POAJ*3zhX!h13MuDoGnH!4*2=Z&Vd3?37w# zdNcm}77`aq2~rcJTk=YA3(PXxGiR+tEnknQIgM||e{3OgDGrWHb@>4QKqx zPFkB-w+8*+sW+mstuytP{=h==GKl#FsY$veYm%F1D2mDVm~EAvHmIBx@=+&9Aa%GC7z^+_CnFZXHHZa(h{~j@=GT! zc?tLbYd%%wc{ck0pR6+f#3H-Cf-Fi1Qj>H`&X--a#v4U)M!ROZO*&v9c@@O`g486v zk~PWMwOcKi0BeDB*P43P6$_cGr3|SF(kr!b{+3DPZDlbJ7I7HqR@u(5gj3k#7=QiRk5>6WaCj7%4} z$q)6mW@ts@Anm`j5V>B8keVPpk~NVptZh~_);7PeP`N>>keVPpk~NhttZi1D!1PTP z(!a7$$>PWfL28n2$uF{s><=t6_Xkpq-QB;oklZ3ANllO*$t~!9%+=jx!xI$i-~_ne zbiX}ly5Ih#h33uB@e5LubW3g$jAgNDp6g;2qD+~pg}<>7*(yayO^`0hE$AW6?__q} zlJ%xYZGUT_af{R-H9@*0w;&-`&imkC-OzGV|Ksm0G;Wm|q$Wt0dnkAT>d@N`6_UBGGt!exB@4uUKyCdi;Zh#O+do)CB34+#)zN z=*n3Vwf^+FWviF>H`WCQEkw3S5mFPROLDX9w9l7UYu68&Zndix8h1zyQWK<0^2RUJ zSPhNFdfKY8plNLOuPii2q2?E)Ch3-B-d!$EoX0?G z*DpQMR49LKA(E3Kq$WtWBr|V*k<}Dwyf64i3z55}2&oCuBU#J6+h(O?vM)Wj=AwR6 zL;X({D)&egQWK|Wbb4>;FpDjf0l_I1jNVg>OYkrZ{6lrXx|HVS& zJ}E+Kg7iq%issex<=3*+h>X)%HviQ^<$kF`YJ&7g*2?C5Dkz&!X>6ze%|hh?sX}Uk z^hnl9=X@$Colt2kpa0uJ<*PVyLXeuIM{)t>(=-lz(DW$m-z_vBf|_5DnxsdPnj>fn zX8cV)C0aK)bly3p0{VX}R34Tpq$Ws@{JeMLQy8xT!Xr3oU zhR~I1ETM{p$POt&BH+0cA+1GBx9v6ykufPk!uKcWk=%lG+%!iEJy~t8TC@BdQvp>i zRG!3<4MA#>Zpke$34;UA_?vt$xo+v|`Xpib?rab*wnwKY0W?`?J`FWQS(lomM}D3| z^WV?4+aAOmfNtFTe}*{#>#_U__x#&&?|%rE65{@?I@@Xc1@8HCSfW@yfbah_mcPOH z|NAli-@x(~#{aK8191XY;GQ4%{+-8TP66)w*I}tHLyQ58{}1E-|0To#JRSc3e{#9Q zwi)vPyjWg^|Nj)0KZ5W7o9O=^&jEV7FJJpI#{ai{R=fX~*)+OH=_%}$AN8?q^kui( z)8ff{UQ_TVB3R|^AQtVrOL(0JfMz1JKPSBHL?_Wj^b&n?-9fG+77 z#Le{pU?aN6cHy_osUxT7}9qR~f;tgagp%eDuw}jVCc!=1<+c+P>35QDF@cs$p zEzwPce0z~9V8+=dxW2>p9?q7Cj{u&b_hCaKFah+4uOkZye?QPQYA9Z146qUHM1n8~ z-vkgLI*6u3x8ijZ9-?iuNAU)UC=nyv6I@5M5A`YDFcBvbz>KqPA6SI-gh4pQ51qM( zclIjZ>{acF!)E?4F?*FUdzC&g>xUh)S4C&9()UZhevO5&WA>`p>{TrXwh4O&y?4rz zi#seD9f@z*H<|eQ#xTOBHNnAo# z&+JtyPjZRJkS7^uavVIKTHkYOV>c5nohczXVeZ+>gd6pQPi-`K%(SOR9*q1O z^|E!tFVDjd1sh>xH{---vLxCTh2ucE8H=7PjyERyf55~_J1JU_OTCz+Xe5b?y&D;cmX)@ z34Ss1sc?6pt8`?x7Lj=^P@VgEt@(JZwXuqBX2t9u`v8d={*Zb5 z5d*SaZCy`*)Yh$hJVqM!hfNQe@msqoBiPSXq zXHficp`p-RjyeEW8|-!sYXjK49akGN@g|%NI}tW^9Xi-0=pmZeFX(2!poM*a7#sLL z!odcfQ(wFe8a~WMTczQ<59INct#pE|w8HBk#OuIdJKV?Cx1ILwX4~32{sL0WCN#n( z)B)#$*afYpN}DS*sDtgJjRtLETNq{LMVNUpW}c6k*Urpa#LVkq=EazK9n3tPnP)Kb zyv)2PGp~)A=Vs<9Y{pucZ+@bUnb*e5>tRI#PjE8#V!k_s-SBAi!pM3UUtxAYA7Twd z1c){wNQ8)XB1}Yx4kAj#h)yCR?qHQ(tFJoo1q~}!`-wJu)oPW!#_s{hI?)=)b7LGdwkpS>W3>DdAMk!p=%QgAQHp|Jpig2|-s0VKs_9N=eAHGhvXik3V@ti4@oA71w z1nu~U%L1@*kEwJh^*uanANEXIM`8QmKDbfXmq4dh#WrCbvd)l)w)0DRvKbAHujh^< zlc%fhzYJxYXeE4vKd}MEAVNfha0~&>L<`{}JcN(%6KzC@2otlujeKf+TK**WN%E7* z$N7&_A6Gvre3br3`Kb6|=0p9%(g)cO=$Wtbp8j5HZ~9&3-DEL0QG6%!j{Z*O?fhG% zH_LD2-blVtp_jhbs;?GaO~0zVT6`t*ivCLJ?OTADn6bk8r zQYemR#`C*VyKBDc3eT6H%RQHTuJUaD+0?VuU4>ogUCOTF&dg4IXX%;jGsZK?r)NhA z$UmNXy!u$-vGilgW5s+Xujfl+*)e0Ryd$?Gxuf!E{?XK<)$N7t>Fvt);v<8u<-y_unFsU-O7~~)H|{Urm%A@{U*+EXy{UVv z_Z03)-;=*Pb$2ya$fa{it~i<*)kjNrW$!ZXD&LvAGkIs_j{F^|JF43X+tS;VZN=L& zx9hi;Zp+?g+*ZCdcWd(2%5N~6K)<0Redp<$N-|1-er@TR?Bx7`>>LpSeA_a&_unRN zE#8v3MTalK>{erI`R3fs$(t)%@>^0{s+$X&)0>se#hWrW={J>b%-(3+SkC6M$!ujL zKav`$-cYz9{Tuu2%U_YYqPnrLF}+dQSiC%Qxqf*mlg${J@^EfAIb7M0-;ml+y{vFq z`ZDFR;-#5O^-D9C^j|D4+P^-xKDj<~LI3%cb@_Fvb=kE8YpSaYtIO$e8G9gko;bI- zDzhqo&hXj&XNi@?Gc#xEXO_;$o?)C(UXfdoTv1t`U!GcCT~=6@UZyN74rT`R!PHWp zj4V(%z3`sLIN{)N`;HwuW_Sr6CiU+>YJ4&l!07*@uf9@uw%h0~ z8{>!p@SDsB*cZ$OjbOPg*OqLn1oDAYpz1I9(|*NY)HAxSmwZ{D;VXM{-lVsJ8}O8; z>Mpp`ZpB@6Wn8-JKuf+Q)l$_8T3S=IVsoZhZ!S5rPQzJt@BcmhY2Nki^t=K;ptTyU zc_7Um*lN~VK-0vqa81Sph+*#*=Q3IGd9jD?gi9~AR=Y>XE)z}e4u%jwt7b=^pv7-v zAOSae2ELwyn}n|gJp*3|Jp-QuT>)P+ntfjz8g^d{4ZBaEGwO4q{r1_=YWu=ywS6|U z)xJZ}$MJ>HIQv{^oP9C0ygnb=R^I>B1ZzT_=$6PXXzgnV8vY=98vZbZ{G68S?>hLf z@VBCC;g8~ZfIl+&r0{F#OZeN+m+*(tm+-fsFX8V%55gbC4Yxmv+iZV#|69WEK}W&w zLPx2sJ~>qVDi_S)XD+Krt&hv|K_$^NE!ZSzEf8ofu$ zv?b6toIY-JYHceT|0cG*@}vRj%`J9S>OhZ4=jd zxh^)n&dzl{uIrp$=ioY>>$;}bIk`^Vzfqpjl;2xkh4G<0FJ1V;eHnZK;Wk<(z2YKq z+(94NBNoLb_KHPO-v?q*IPsxa)U+RnjeR5*dHO#VivkBf5sRGrKNXAA5!^@ZobOOU z9!fcYL&bTh7!TFVLnU}9KM&Q;L$&fy3J}vZ0m_A#R>4 zX|>IMZl3RSrC(!6_;3oXk$KO+_r+%r{^B!eTgVwiQMQ_p0S`?&RHlW)sFMPHsEq%7TgO5y2f9JmvY?v2730x-MDS+LpT&4g1hmc z5AMc$5IQ8#H3FaGKHT2mx@x%eb*yo-fYq+%D870cHplSYTi@*G-u3bj;MaOlXyey< zDG2gwy#R#xwSMil^J{!sIKr=q>8~C9I(aQ1GeWq9oXntxlT&c#9&AVM1e;O+zz_dJ zC}FrA3-+MSgfDOS0e9j4D`=q33~IQ)4z}X{I@pamGpOSJI_SY|R?v&vte_8fSV0xH z!a)VMxWT5$3an<62FW09ds(Z@+R!^$mCo7_pSmHI=507s3(nbPvPCOSF{0yiB6gff zM8%mzTKSlvZU7f|@pBgkcWL4-LG0pdIB*F2L}S<|>cc)!5B7n6KXNzX=02_5Cow)M zT)f$lC7l<$hF?Y6@h~OQ2O~!OFk++^MvQo2#E2V4jC8|@krp1#1tUg!V8lo}o{vPl zFk-~Vv(PEiL>Zer6`?SddYAhRjvl( zcO!xAZmeu5)ID6+I`pEcWVhgZL-O4C+ED&n{90G(Mvl2WM>JS0jO>fV4~)W^IH5?} z&;$6i?*$Ptu&cY#wqEX;;GXT=Gsry+8cxMoHZ-mgnx={C>iO2eb#|_+XI_-+99&n= z!5G&$xvrj#om|(sq<4o?e6N{Olvv$}^LW%hc)12oEn>Ub7vj zphFsd7m8!=P%kRzPzx&PkT!sbQBhRTAp@^XLQ&K-As1?CgmpqVs4hIQ4C$kL5xr?Y z;yo#-r9)9v(4kJemk2dO!NmtxQiU?zsN^F7oJwo$=|BXs)90`V?L#O;`5ww^ln>y6 zX-K7f6wjDKtyGRvxtYoxLr{(|(o`#YrXhj0&)(uWUJ61@K>@?FUOc9lx~6yzPL!^& zfgWWz?%ONE?KlPOv~8*gbC)ij3C1Ksm1m;xOv3wf5KKHMLVf5rhn#p>6^bxRRGyO` zz2#8X1kNeu!|C{j5co>rIW5A^rY~t8TcCCbE9hN@=~yP*g4!V*L+ucDqIL+|Q9Fb? zP&_yIQ9FdgV=rPC)DB@g&)@t*CEO27ashgTfEe zKTv*9{C?*9neXY}D}A2*-1xlw-O_im-!Z;Z{&w!$$!}M_mH$@iTh&sblrAZy;=as2 zeIKJ2WWJ$)qx4z!Gvl-J*K=P_e!cQ({?pW_)lUkaq(4zUDSn*&$oQ!IVGdCZjQ7j$ z<=#uaSJ|82o7!7_x9~2Xq7;jnqFzi*8@<`=|{0*ra zs@E5;FK)_g(l?FVZrq-{t#WJr*3_-lTa;UhTQghrt)-jGTXI{HTPmCLn+rFkZ&Ge5 z-k7;DGaW}UIUPf>eBHpc6IUm$8e33=#QcT=o;Q>(DPLTMrOG_Xrz*-*E|)ZPOY9&I3<0Ga!T>!%*k`bBFr9R98+GBTasK-N#>KO zWVOH0pFfH*2N`d$d|2+V{NmK&^r6b3`XQx7<-S~>(YvpE*bwmgKhSv~I%`Mw+{fxpS&$99Wx63@tS5~L<$wqXDrJa}qY(eC5W?8_r)oxc0o&hnj{~Hd`pZ2(4a0YLX#IPV)MS z*ucDO{2TQM&uCbzS$W0=s4ic6ukemWWKxG#p1Wc2%+$GOET2xRNw?KP_jQ?867Ow6 zbkM;Cq%~|Y=SyvaiIW=!Q$uS_$u(7uehc9bA$Eu$HOUUi z`H~9{^`o)Ls!CcI+Ur&?pT4Y3(g6$UPawKTkeXyfa=tX{LLZIRE^DM2mvzdNXp^s$ zHVfrXp}AO)nq*9JzC^c)w$ZLRu4}kXnXIKv;z0}XZ^&emnjj;R3r_Y@Q?gA{fkPI` z--Oy?L28mQ$^UY)mrfJ%2~v}6mz*!z4dpqxVP<(YO-c+~=zbfDJ%ZFE zgOc+ldUko9zP3%O5ewDNp|?nonq*jVzSOcjPhQ*ov#ac+X|7d=h4S~Hxmb{zWK?p# z^s>&L>)M`fl+EH%3-RBQ$tE>HwoA^JY#Mp8rRtw$2=)k4lWdc`3H^|(=jiCUgo};E(8>*K)()DAanjWH>9SD$ z5%l7M)Fi!<^Cgz^Z2hwOqViO~(j*wS5d0sI>Jy|U8It6{`pg_-xY?hLz->WlHTtou z*P9b+>i8rqbbk+uy@J#vgOc+lv~JaPklwI*`QZ7}$u-Fu7P3Ev;37e4l3~gDl3Odh zlgZ@_Hgkeaot|zBvf~ zUsJEA*FyKFQkT>O8IqhYxiwwhCrSIRU7b32&9s4`J3c)>pwB}0=Teu{1R0Vk!v{X3ktQ{HmgzOxN;_8)QDej0V!uDsT1`}^CRwk^AywtxAF({|@;PFwTU zPTSanPFvs);rIU)r!DpePTLDFJ8g%2;IzH{q|uY%bf1vUGzpqF6@o+}o#%aT& zeE%=UEV&tjbn?w8K4I9_WL!~25$yxF39a^Y7~fQJr|_#ocugIectH5$c!lYA4#%$wT|3*i&z&%+QodL zQEc{aBKzcf@JWH$+nqv&=$&_aD^8_tW=4dW5w%C+IISjTgpC;yWJYu`BV5dgmd1>j z-o3psBc|7e8#7{hZD8PzxiZ3olZttn8+PV~#@t9SHxTKA@6l?h>6)F|j>g=WV|#OB zZp^XWJy&ix#x@`~bi+6Z>eHt&JF(zbkn|#ji!&V(9YF^u(nEuU9 z`EDS>tggLjz#;9-YK2+d#;opSR<|;%wZ^QT-aXWq)zfR+8?$GVnai!r z4glWaKSBhf#7{-6X&+$U_cIZ59Q8xjE}rXB9MRI5x?EeX;7-w|=2?~g^?+Yba1e)l3q!^E+^GH4(sf|Yp@JKEmN#l_`Jd%q? z>g16+c_fTJQ8WWN+k>*uf}tmqRVxZh?T_|s#ZHUc2*=p@Fc0@1!Txn?a4)-WJx-Z$ z`u*nOYkC_}`4AU^SR z3<4QNwDy?q8_W%aY!8m^!yDfE8{{q~-NmHGnQC=3kHesH4tkI=4R4j>+^?1Ub#Xr% z_iN&QUhY?G`*@usxL*tR>*Rh4_fxr_kNedsZtiDrKaKmvxL+R{g`kc5wfMd-T0Cds zYV6}^a$YU`!%sY@(Be_ThgvP}K&=)J5{eIn+h7Sd#7{(AMb#Gf5q8vX@s9DIq2QsC zi-%bLgDn4Q;uk1~sN_%+02*q#c<1OZQ5~SVi$_>HgjqX8eg7!pU8wHjEdxLtbzVG( zIxnv719a9M9@ZUQ2W+S;CYqGEhp?gci?@%UKCz<;j0ae==&V@~QW9HH1;)KZ6Y9aZ z6ZK#`MA-UK<#e;&368H78rlJlFG5Ab)VHv~mMz9~bAoJUWbZH&(R=#P@}ECraLusr-k2GqN_~^8Eq>N{}fLJ5r3%FuD@asLs;+ z5Ke3^^_IES?Np!oT}?f}WMecP4L_OecC2b|PAnHH&YvQv1a{Y|OPrKFalUBp9$h80 z$#Jlryz`jJ0Se;4`63z_xIjb`i3>%v6|?A~?vaZ`)EK!8BZ2k-8b-)Q17lrE)Y~6d zQ0HJW)(fn;QNzgjc9XS>ZD0jAurk`o>ROJ`V>MKJ4=!_5j?%*^sn|Eb5p?rxZ{qfj z`L`R16+-7o$CQeU-z>atilp#T=B4DG z(hJ3LWq0}c-1AA(dwAv9;;zgteOGB`cBiqk{7mkdYC%#1C~V@Z}rzE5d#MDB^+ZQY$d5IYb&khx3A zIgcN`-J0?|esW)ApSdr!H@er_o4zG>OYoM=p7@^79%WDB=J3tN&B@)7-RADpP0^dI zo6bB@@)@|u%EEfmZp5)Duo6Vb3yQ90U-RYZRHwACX+!((xbfa=(;)d`I#tq3`kzMAl z)b-Kpt?Sb}V>^R8GxVK?%#Qeu$Tj9Qk*mzBa;q&QH%B&`n^T*jo2*UBKw@Kfqp>l0 zdF1l=C80}{OM)9R>*MP~Yn8Q$i^3Nf7bVw3)|hKj{n37_KfO8;3WtnPvM#-c<=h`y;1T0qwooTtoZ^VnQ=cA`DpZnP(@ zP}_;K4$f+unLaaiX7J3+8SyicGZNE7(;_XIrg-BpT{AFT7phb061Cx4qc&dMQFXjx zsN5<~m&MA0Wtmc=G--@_M?Isih|6@PilRjZA940MPUL(S0K??G|L?Ee^D3SH|La)) zALIX-9b@PJPj_f>{Fn?5E#lyp?bNmHtW2xq*vOA4zL`NTEEncGCX;i_t$#dw{1Brp zcA6yi#}qh?K`yKo;tM$}Y9X8IMcC*j1?S#y9N%T)Bw3R_FtPyetf2F$ulI$KNrc6Ggu`I)5-eqX~vw*CI?pqSM)AE%~=B5*_bmV$-khq76!Sn zLYQx!PaSy^C*D>E>57PxN8W6?XG(H^O^JR6xv)f-Eq*@v$_Sn5bS*}(Yr?^D+nJb| zlEmMLM93NR3iHkBse|Q69sf{mfwLrmzoU?52Dz|YxRuV-Z#>Px@@xa@?xw@l!LALq zrMTU8-sdby?C&YCl|e4766TxFQ%iAoci-yXm1FT^Gi**>LVJ$CKc97)vQMHJ)= zdWE~Gi6CskZ3yks!`A1?nk&irFM9r32D#89+)6`3<{MS5h;_G%xteF2sdFSj|4k8< z4054Qh@e55tqHfGB33lyqM-55N{qTU_V&$_B+|9A$A;r`($c0tHZDQ!{$zwTU-D0qwi~74auIygfyLy9I>d(%} zn=i@JDXEP?E-V%1%fp3iW;U;LIfkd2e#5obZ@=Q&ty=<{uMF>;v47*DwbO0u((@$w zT;xN#8jvg%e%O5LbosVb%=wc1B9RX{gQda`o8NxAeB1fn3nck2kq{gb@v1>TCrxj_#wL@2($)H{nT#z>Fn{J zu*i(x?_7>~$i0Gkk>ur;(o1Y(kPFL%`Q9#Uo*T2D)}r3tHLLqi`+3<`Rh^O-P$pgg z-TlF}-ILycUwy`@UfH0lzo^&MZ8UxCZ$;`nx2}HtuTJ&6-#FFx ze(h8*DALvUxUOD6(|fwEuF&b6{&yYf4KF!V_hSxq_)89T?z;~4%Rh6d8)*9RE~k1G zT?269uv5MHdb(zy)Tut&=u{i%8i42HPW23$-WZ{41qSK-|B%Ld?~MH92%Z1`^=D~T zPTuZkzX{$WenJK2?jdpa;#O2*)~BHqvpyZQnDrSb#;l)#YRvkXD95bNL_KDG778-! zXQ3jqJ{u*O^)@%OP?TA3M^$G1Y?Niz=b$dLJ{N_V^>a{}S)Yf}%=)>g&8*Kyac2EI zRA<)DM|o!b0#s+#7oa?|ej(~J>kCn!S?@rFW<7`!&H5tLXx2MXq*?C@z;1;;k*W9)_0=5vwl4aJnOqq;aR_-7~Y5) z&-zU$@~rPhm1q5ClzG?3kp5!dr{|E--kla`hHY;)^A0rXMG5@p7kh-J?poj z+OvK;%026Mpx(27Ckj4~&&FLS{Hz~9L=kBHAyk3ZA4VBy{SnlG)*nS7X#Fu%g4Q2LDQNu()PmNZ zL@{XnDO7{jpGGlg{TWn))(@c^wEisWLF>aP2(8Ca5n6u^C871hs0pn0%0uffqdv6$3JOH)ucAV+(faEF_=X8bP$ybXpis2_ zCMreiZ=qDQP6Jxp$Mkm;_^t{+rooRFz)uvyPdebIobWvzewxG26v5BB;HVoWJ@9kI z@bg~yg%bEhgB+iYFZuA$mrLPS%HUVa;XhQsuT{dYSHW*o!*ABWZ`HzMbud*Azuf@; z(GUMA0RP#9-)V&3ZGzuxhTm_2|I!M7ptO-cRN=pB@cjb#qe6Jx0n<+SV;%m4!=Dzx zpSj5K+4#8|5BLIX8sXoY;D0s4|860jm#|j+pfEb=tE&psR9K+F!UA$^ zJ}z+-;vuI4>Q2aYSj3^L2)bR+tI(s>~0{(XQRiDhZYCm5)&?Mgv*-X@@BY#4U#JrxJre+8tf~8 zp+dOY0sEbBjSes3aBUG>=Ys3qaDxY4TnsPq!b?lwWd^+52RD|&fif5_hnp(k=1RDw z3T~|?$7f?(4Ia9p7G7Bgx7Wj~8sOD_cufHAFyXb0@VX{A*bE~ra3?!RUa!DiD!f61 zHx|H~3gK=Cyx9r&=0RQ;Tu(Oq#7n_;G4DZtvdL2J$$DDzUzk{3&4+?@Dq*jlTGkb&G5Yz_-SR7 z{EP}etHIF%m@I^!bHL9#;TLrHMNW>-#+Qol(3f5CD{lBz5B!H>_%$#5dI|i70l(>k z-ztU2%3!J-e!BwxV5B%_l0r;;be7_O?s0ki# zhUpgg<5u_+k$7kc`1$gKeh47aS_$w#;wGMy7;ctuJzq#P=-0=4vc%m3) zyzmbt@Q()kzz6?S3je(f{<$3fM+N-PO8A#5_}6Oqw;K5OTKHde@W1Ox=cTLxKPY~v z2B2obf<{=_M2^kJrH*Di;>zE)bkPgW_;ps=x~O{861s=X^g@6 zaBw*NZ1h?4+2o<{A>~l~nIN5?k3MZaoqQ_%l=4*k$>5XeC!%z2KKXd~apmziotaNR z8hzA!wC|D3!?B00hg0;edE=o3jWC#r#bQ=0MdJ$^2NMs39>~z>g4Rbgd%bjUO1kO1Ub&J-9u6Wt2t`OkNSbLb)PN-=9x!jczr!CbxvQ9NcWtx$y{%+m{H3 z!kK{>joO#m7@>3I2^zC6b6M;%>$23PkxPwB6Lh{jb8+lq>*Cag$OdCWVtr_RW?f)i za&4H-p2uknzZ9K2H`XNjLo||KY_&yW`9W3V zD^hg!e0W)q&YVY=noE;3!k@AvzBsrzP2>BSJ<0BHx6&P_bLQ#JXs6kkq%-EqqIfVE zOm{>(%#P&3@Iqx_+l8qGkp;$r#04SxetztH>-^Mtk@Jl667xgzGv~(6wa!h=i_A0T zCC&+*lbIWvYt2o~iOezPB+d?A;jiJVj z88a<26^I0kK*AsLXBuJ+Rzs>jQg75J=!|`)HdbrZrfMQJMopsncvZB@tV&jfE0xN4 zMX(}W9;NXBlV#yDr7TXP0j7OXpXp1|Sb&NVFA383{-a*gn=B5~xBlavpl6WA08F?- zt_*$i-zrM+2sdaHz>uDC#+(+70T^)@jznRIMgWWzSOqC9LgW7>)R3A{Vv41tsEN=2 z_w$~9jr#wMqdEQmq5D`>D%=0B8amm>p_5Vc1Fr$Kpbpf72H*z)U;-RD;5cHyalnA% zcmc=Z0*<2v90vCWz;OhC;{X6h|DU7#&(Ztm==^i^{W-e+96f)Ijz34gpQGE) z(d!>uIn&v9Jc7PIN7tXD=g-mc=jiuybo)7a{T!Wsjy^v}U!S9^&(YK8=;(9w^EtZt z9KC#wPCiE;pQDS<(ZlEH;B)lvIlA{8y?c(%JxAZ3qifI6v*+m8bM)&uy7ebtCwliB zoqLYHJxAA`qi4_2vFGU5b9C!Ddi5NgdXCOKM_-rB=jh0D^y4|Y@f^K)j!ryB zAD%W#1bXls9e9rZJ4g4Oqxa6ydFSZ6b9CJ~dhQ$@caDDh$=8YQJ4f%Gqw~(ucjxH3 zbM)LfI_@0(c8+d4N3Wfux6aX7=jf|*bk#X}>Kq+)j($2vH=U!G&e2Kd=%aIV(K&kP z936BzZhRlj1yF$o3P2%n04H(sb?SJ8gCgJpZr}mMzza%%0eqkol!0?E4Zsfqz$8w-pN)8=2{eNi&x{02OGU02BfTZ~`50Py}4S z4LqRWco)+PoY3iko=R9*4XaIPDs<_t-c$fv3rX(8-5DI7>4LL7aCRk}Uk%T%g$wH8 zLO%?eu#>fs-6~wH4v+`jFjfp7DuItw!DnjVvwrw|faE4!4mcey)UmTmON9zp2FCA6MaSHK+ykAOK9z2$U0q z1`0qSZ~_jBfD5>R2NZ)E`dj^Hb?_Gr@K=63n@azt|K0)rsKY-sl1>_KpZ-Vd?H>9S zpn(EV2pqr(ihv7vfESbiA1DRopaL`_!C<(n6M7BDT{rGF6vKc4o62Bo6+EMwyGw+IpGOPf=Nx#z33UAY#bWq1AN&@sver|$yqfyUB<=ao-S5=kE-tmE9y0FY zf@}SUxZ+xWAD3L~$8pWI{$pHpt^X8PUF$!`W!L&Iaox54>td4Q>TCVqaQU_Vdt865 zXK(?w{>Li#ryBTY_py~Uoc?YP{f`#im2_yQ1b54EH(CjAuZDNl!UOg2o<>N=@JTv) zPttLF@?j^Wqx2*lpC{?aJW0po$!AMQ?!#R=3{O5^4PP30e3Tg+%<9cgYo~R}wFW zY4o}HOTm}YFGgQ9Urf>!@5&4D=Y!9u4@VDUB)Z6R=5q-e(?2sD8@7g1&qhwu-%dRh zdCGh$`DBEyhELGQbeYFvj|U&m(6#Uu^|)h?T92k5i9TY|mGI$*m4_1#g&tBK`Y_}A zr|*y6Z;Da<4Z0#ebgx2v@9;eajcFI5{&(s?^ni6BeOHWn;F&w)cZTj%?o8Yf%ISk! zx22+ys1Z#LMTX3w6!pTbThsev`-A&4`{MgT`;>i&yaGZMRN;okP z9xw)y)JHcrrY>h=qv|KAk8aXvcSDz0G~!+C;vkKB7vB(~k?#`g!|RRp$#s!+=DO6{ z=vr%R#Qn^g_?pm~A#t61Y;|yTCKL~aLJIZQ!+l0yvNzIeQja~l%376P8Cw~oK6`vc zXoa#Ou{^xoSe{%KS!OOvE&Z?~^CuTY7MY7u!D!H;{(Gz=*pXQnUl>|AbfI-&dO>VK za6#sRIQ8L`3list&o|CbQZL>-FEu|p-qyBtmc6@edwlX_GJ$mD;IRqHQ5qrF^Ln_^ADrc7g;diP3W!VH^+ znWX-`8A$n=KhY3wFdCB7zc=esbJ%7`YDvTCdg=y;h z2gSI5Ax)v)e^@otq!Lj~(f|M6W49bTO4t9NGj{$T*Z(&U{Yf1Bql?*W7gO~}u8*js zLkMjQa-mO{@A`GBAQw_Q!OSQ1|);vr|yC;SlcG+IgbY2$5|Q!SCi zSBrSaX`o$P9Rl;k=Ug4KYz4^;AnG`86URat3|EeEB)=es5>j>EmseQ!SIk z*HUCJgIriHymIUf5X;jk=n7lUP&ZpL`En{;twa|KjbA5~{m~l#QG8P4KV;vx8F<#Q zt4o(lUSk8jx;6&6uw0n$Ey8PT%3ec7*H3jV?O(LwbjzsiBB~XVSKt?~0CM_vC&mMT z`Cb9O4beP)6<61a?zMR?IkjCzwNmmD0^%h=&R~V`fAA9WT}XB6b66#L2`0tXGsuPI z!mU#*E2XU4wyd=6?&-<>zDSg$yw6+BzdirWKtOj+%!ZrriuHLw`cjY;A=C*BIvN5-w{aQ)fEDCC7&?T%C=8MA$krvZz z-1_zFDXek(bvuxI)|HL)B;)Jhb&}XQ^s9abxzH`dP-gf(+JxIs0V^2tF&f4-xUs(n zb9(M{dRJ|$-Sv{dx%8Yq`g$b-p+}f6Fk4C+f%E3kFOSdF21y8(Dj$Pf=n=|8&dFUI zFP4Ph1^MW!q6mQ=p*&mfb{xzHn&hs?o8Iv#SVBxJq_ft*2)P#$u2 z?)N(`lZ2cnLLjH{O%MX*A?>-}oVxsC`Ww3CYqaOnzxf#CLXS`$V&yi~jgpWHL^Xb@i9o}1xU9rn<1JWJ$CYTD#O++H%l^t z^aMTzxzH`lW{8$|GJx)!%CNP{Es~5yA_H;;-NI~!Xn6G4$=j(6Tcg}6$>^jf@G;1R zZecbi<7FiX9MY{RQ;x_|c5G-xaj2Jhn^Tk0tnX2D#899Hjl-oizUagd4Tv!l6>u*SngA zlFZqx+rB+^l_YT~J*kgDE_4a;1;}}{$35XTq%n;?=|20)<7!F7GI|ytgIwqmBI2AW zB5do9Ya|iNMFivwx`c?BJ4J+T)v-eou|h;Z&Y(+(h&fY4*w!4^N+MQ@2*??92@!Gj z6cM%+$90m3RU!g%23Z9Wrh=493BCIJQY#Z{3B%)75 zK+d2`h={f+B5W;jrzB!EJ*}TXE~Kwc)BWte!X~{;rn<_R}-c z$iE~PdW87`PwrnYvh82*l7y@gA&@iZ5z0esjqwIa$VDOqat1v@d5En!-Y5xKD?%V= z&?A(G*c#+bl8|*G1abyFLV1X-N$!?}tQR4WGf3Z@C*>iwMtQR&WP=ESoI#IJ9%5^j zdn6(FXCHkb6d}+fl!w?F<}H$tOX-RI4054ch+T%AbYN)0ZLDF^{}Z! z&*@{33*ABlZkl5M+TJerNir@M8IUvR7G^W@?_V#nHOu{y42=x5vQ0iL|i2zAZO4e zM8p*PtoGJ;k0j!15dk@aE+HbO*k`pj#(O0Z*N6zn#XwswAtI*OXSKJ*`y>%NLGag!uwb?z47g_gQT(NAknRE_bLs4NmnZ3mobYP4zT= z@&bptj;0UJcc?L%&Z6nPGo0%BW%SrmhkB5vnKXT6i9_8&6Qk+r#SZn%N~ijzwGK5* z)88&~sE^UqPSZEm(6I!XG@2fy@BGg`n~pEEJJjtoIcPd;In)lC{~ zQHMN2d5CQfASMafB|;z!pi78|DfY`d zZO!qpB;sxn0Xc&%AtI*OFSobG=Oq#MhzQ6TbO{kL#eTWHF}@&)xK~6#&Y(+(h$;5V z?QQWzNyL330&)gjLPSilUv6)TFG(Wq7ZH#%=n^7giv4nXOMF=p@lkqOKZ9K87G}4< zTj){SO|0R?vE;7Y{c_u=wy#J6AE0OSG024;VZOkV`{iA>W67^dLJo=$$Z-~o_9~z} z#I|ufA_<9!5Xc$y2<0KR=J=W<6dh_ z|E7AU>buOL9=+6|E}`isbgq9tP1Q8LP3QZ2X?nlfsopZ*p;poK&bbbCHBG;t=TPsb zX$DPSI>(`|X{B-gy6G{RrqlF=E{8fm)89HB>fc^jD-ay+c%v;JvnAhldlb)F+nb$S?Ip*~TzQDXK2Lq^&hSxLxOmx6v z;zLCvqI6*HZxxJ)!fLq>6%U*_@eeEMC2~`|z#6>3D!jmI@hU+rXrPi!UO&LMdA;~H zuNU9u_2S#S-a0Dd88??fG_2WrWaG$tx2 zIQA6%8E^n6sKGl{3pn1kB2e9T82>41YG z;Kpa^0mZ-z0{Cc6P&Du*nyb+-O?-_m_T`BWvEiIWAv-6^AOK9z2x`zOY5~3u@5R^Q zz4$u37hi|>R%KfSHH}iVg)&eMDnKjMI`b-M8ZCX)7FvOVR-pnf)j#u=00a0yGi@Ba zEueXX8bk|d1q#}Sk4mI@OF8`g7lmplB z&GcCV4=4tO$ElqmtG6NsDfS$D(J`196- z2H*z)V1h=_+;KnivO$6m5iU?YL@VAJPz&lnJ!k-a5CDy!2{eNipbQf#&_Drb?)WJE z!yr*L^Z=for~$R04%CAN;0GpX1WlkBv;gHGp#lvQ0tavc9dJ+tT)+*gK@F${b)X(J z06#EB4${H}s*e%1K<#^kf~F9DOvRVB+oY+s50;w<0vAVCv22o7S7@M2toi%#5IVpE8o5aRrSx zP{q%ru?3??t)uDJVl?7G=1BZV=!kM8@oJdH7fjNa2j(lOm!mYoVEUyPje3xIF-~I) zDlaBz+ymoCn^4(+L`J&=4aam`|o?%t7mk^w<~(@y9}sDUT%{4L@o;ntUWeqadUnj?&nJ z>4#zu1s}>h_+iFDP-qOo@co7u3BjaM2&4B}_onZO-4nbgb9emi(A~=22^x#gIFP(6 za+i5mibf-}?o8hiyCZl<=JxpQq1%<)6SswLGiXG@NYsp`hN43jjY$~0HF#@ge|&$4 zMkP$_3-2@bCHF@5ntM~XL~pTfNz>Sb!9AIq<2Q$HR%moWW%scghi@3%)p32v&f|k4 z*9~3Uw#@zln+C%j10@@eUp8{-haZ!mWKFU^(r@;sR!3?4 zz;q}U3WhR$aT-BT=}Yv6dyU>CjUi~RO0A5pv{t5R6v5z%%<}m1&~jyYVp({Zu`IbX zLSqT0mPD6WOVW#DG@4+hC*Bk4QF;H?WjVfp?JicJ$f}!*K&I`;xF>myogL4Pww4Ke`kF^cY9z3gKR>{ocXN=4knoc_? z|HH8YqJGPtrqKX{4JGx-x=5W_m#U4@Sb*u8SWU1dQys4kRV&qrs&JJ-BLYS$&B|0o zw8Ek>0b}LC@=RI0EJULMCQ8Go?dOZoxPU1mYFI|PBt|0xX1sB4rg+qI&^_R4D`GSX zU|2Wwq%-0)X&k_)!*ZkxV}(f?2Oy|LR8vhUQ5pe|vG0Fl^H&pe{{OPipF00PZS(`t z_a8eh^p50s%G31AJ_fnaEzBNInIoPkhm+?3yKDy_-<4!MBQhXo&@IenxWjp@( zF-gWDkpVe_Zecbf|M|Ht+u_HLOER7n8IUvR7G^W@pP%cp9ew6NFrVo z5s*`-77-8;Q=Ff(x5m#(B3=>^kTd8KB4Ud3bN0qKDv5YmL_p4}QY*-9l`J zcTPGrmAy1dTvKLim|eLI^Ba=Dk5QD5K`wL)5x8}V^K4 zx^2z!Tat`Vhz!UXbPKZ?`OnXF+gjx@NyaBd2ILI7h1rb!`>frzMwyaid`e_M&Y)YE z&B(vc+HGr--be;ZTF2|An^l9#Fs<_zp?1=AoUZ-fM^g<=FVA$UUG$y*yZL9t_fBG<~ImzEeOGqp9$s!hd~}&i`-yf<~`+>~`!v=C|$@Kh*bOoOQE-{-^mt z0GOZ=G=XN&0u(whuBku+1)vZ(01lgLI^duPxPTjYKr!%w5?}xyCA+5{SE6KJSS zprJN_hS~(08=y9UhS~%gY7=OvO`xGRfri=y8fp`0s7;`uHi3rP1R81+(0hpL1RAOn zXsAx0p*n$v>I5396KJSTprJZ}768gI0@VpLR433-oj^l%0u9v(G*l=et2{aR+E`f%+1e$W3Pyy-^XaxXu2{hCt&`_5^LtO$5 zbqO@oCD2fpKto*u4Rr~$Vt~2?8tM{gs7s)sE`f%+1X{K(fr*L)8Y&WKs7RopB7ugA z1R5$5XsAe_p(25XiUb-e5@@JMprImxW`ah5iUe9SKt%!#6$vzUfXQHwxBEdmX-2sG3p&`^s&LoEUg zwForSBG6EaKtnA84Ydd~)FRMOi$Fsy0u8kYG}I!{P>VoAEdnh7P>VoAEdmX-2sG3p z&`^s&V|>jx^(KmjNO4&WqcIYbo#jRRC6&|Cmj2sBh7&`^ayLlpuIRR}axA<$5T zKtmM*4OIv)F04Le?UY10S)yBG}Ir^P=7!}{Q(X22Q<_l z&`^IsL;V2_^#?T6AJ9;LKtufj4fO{!)F04Le?UY10S)yBG}Ir^0>C8bJ#57NCeRF8 zKr2Ay0S%Q0G*lkYPwtCTccrKI61 zB@I_8X{b4%q2_>wngbeY4rr)3ps_we0V>cy0Vo6x-~^~SpmBhj1DXq<=75Hp0~%@$ zXs9`$q2_>wngbeY4rr)3pk-?gn5Z_Oq1u3kY6BXo4QQw~prP7;hH3*EststUHlU%} zfQD)Vv;iVa&x z1>C>`ih&oD00a0yDJTQwpaN8aDo_n-KrN^P^`HUxK>(Pb5j25j&;oFFn>MNh&Ti92 zRlGu+-=@tf;RHCzO`BB$C%I{}O5h|nZB_}K3Dgln2gRTa)PMj` zMhPeIfKpHm{GbImjuUR+167~_Gy~_z68c+E3aWu0v;fB_;RZfX1sXszC_F~EfB`B& zJ!k?2Cx{|Y0xCcqXas6tDa{rr24$cI1c1^OkIp7mDx&Dfj4H#3QNB9u@PiIMP#LDljiZ87jJRN@8 zpgMXO*FW`S^ht{<>BXK1(#Zbt$3s+0FY#FTG2^l1qYPB>=0{RAy1#XQnkwrB@5|g9 z|B&PRhwm`%82&$=(;m9nx;ec&wmV1__u@B&Zc=Va+!&^sd&wIjH<&l1c15Y`Ui$jj z*a-ijoyyKcBpfkljQ_}>IheX`;5y^FaOV zZB(cpU-)w4^5kWa%S@`s7roTFG<`|zlE5X$E{;-7zVwFJhTw+G`Z!hPQ`RTeh1VHW znJ==|T${QmdXaTedQEIia80H^PSyF8{>19=YGZYh>hrPx;duYirPk8)lGu{qlFZ`x z;?UybJ+Yo(Po_KG9inP|iLP*$(Ut6sP`$p?qUa)PQ92l-ihY@mct@y1=}1t`K4W3> z!pMat)$NNeuojG75V^p-Aa#C}D)*(&i=7udFEc+*wfmI$iF3o}8s{dddY?Hjbx!mg z>zp*z?+eb&%!$tl%~8h2{U2@*wJYrjs^Vu@$+k$F*_N6eoo&rdpA|bRcvfasd{$_d zGAl7NJky|BevvcHGgD_o&#=x&&xp+k&d5w3nr=-`Pm57Kzf5bqHPouKCR)NRMoY3e z(ri*yzi5-ylx~bQ2C1%J+zgqDnFxfbvR~34@tgis!@&Px?0=;^QPxqGDUFwgN|n-t zFYGg@(qF_djZ{gr#G+b%F>jF0>BoyhRP8U}3407r(j9S|?vyL)vRrAZ`4^y?e^GAn zv>wxgRP`_J3^^5N!V#vrf62l~p;?$Jh*IUhv=*cD{uwn+wf__~p@bDfNwNs_@M8l% z_}N=}2m9<;|6h#%7x+N*{kKkauFZZ7@rRN_BVVQ`^wIUFI5YxrIX7cC`ZC42Hv1vO zf0aahMMOZ(pi78|DbBUok08D;iTDS4T0eta=oV(r8*HOTZMReB+In)&wb_O(|B)o{ zYxImh2D#89%olj_Tw9OrT-$L;$k#;(op*+NPVE<>5kdz34oI#IJ z9%4JP|8q&mw?zo#40?p}5Zj^sUr0j!iJsWcAQ!rYIDN2_#8Q&KfkTd8OW;61iYwNMK$$yh%{ENtdoI$rR zo00!qTaT?t{!Wtd1CaqagKl9q!=j&Ux0C0=dTcH7_mYes(v$cYU>5|O5-^)bkWE+HbOIM-%xjvq)Oek>v&XV4`?#1!Y+?5*)n zl8B#(2*??92@x^Hxi))a{C7#jPelae47!AfnBw{{dt3aoB;scx0&)gjLPSil&uVXq z{~?L^xrl(AL6;B_Q|zt~P)-NNkl_X>K{c00Atx;ST_)v^uB{TE5# zujmxJHs!C9kY9@s$Qkqq%HJd*zY!sjGw2b@Lu^}>ze_@X zD?%V=&?A(G*fuNwB?ZUgz^yEhJ{^1e@VBk+5eq% zyg<$gdc@Bl7rKSmcvWk15G}f-k|UOub}By z^u7PPXeyiTq$9rc7)`(Iaj19D6rkxn`riL~nm(ZK{oh{ZR2yjgzfbhjwE;B!p1${g zFHJ2pjneo2FQMtzB~JAKjsMq76YEgf!Dm|^ep~NgEnm{aixuPlu|J9Xm2l|qs^lH| z1O1kdK`wL)v+q#;eXqr~R-#EV{wOjaXV5LoX5`=ZT5M}11(J*pL{8g5F)oSti->@nL6;B_Q|waM z7qKEq#9u`OW*o`z>6K-QG;WfQ$ZOx`w zl0ntiCj|;T$0Es%SRROkqF(w>@tvV>q*N%d+st&A;~Bb8IUvR5oSN0$r&e?fp*(6 zP$>y1rYH6@$c1j<);w#T>^QC6wC2fu=Q?v&JXMlFFGcz23+f1j9wF)!?xNMggqv8^ zIoQ%wYwTULYDq|m2!WhIj}W8yVU0TBHWt#?xwNNE?0=3ebv2R@Lxe!iphqYVu`SxQ zk`SK=ft*2)P#)4Qj%SX|Nu4C5RD?jzphqYVIeQ-7%CV4oNk}<8v7bRM^a!z}?O@kW z_(<5;Hm-Z=%KqiKi<<508x4}g3d-^^$c1iUc2Uc>jiW`)wvF>kGAcy|qzc`nN0@!< zCib|pbLC*Pq;=btw16a}N`yeF!!1IfJjAx7nUaud5dx{&wg`dp5ZjX0C<&<%A&^RH zix4Oeu`Ov$l8`!jNg#( z(k+zfOJsE9m-vm8L_~|DW07RKHAp|IKt9Ak*YjKT6mBpGnhK=-U6S zG^sQlr0)Psy#BxO^_#x>4)ygO%sYZEsa6HgDhl&)p+s4a?p}=Q z=)pBhdsp>u+-UW*x3%ZC-m@g(XH%@7K`!(Nub^GI&Gg@d+t@aJ@tRKCdavDf@Nl*y zaSmnq7^Fhiq(?YNdk{OR$3NjVzGv6J+Olob+aw`#MF^zg)}&jQ4Vk>>o$a&q^{=+Q zb(SRK9FYO3wl(Pz?xGpl!2%QJgN+^GS<}BVcaN)G5^*j)t)D?EI!zV}v!Bi67M|S> z;=^gntsmNMJ8pHhByv8*_!y)T)TCRundYi3?_q_`{x;jEGe?qfp2&byfm&q1Y{uk8 zAp7Z1hV7{0TuH|HA_GzZYLNl68Tpm~%CH?BJx7vpfyjVVf10HF)8tKbTxrK?-m7f? zZr$RQZC37Dex4*`fe3+|!D8WN+7CKi2$lgS>+D_G7PRf4o-0YYP^3VraxGHehe)yQ zq0X12EEFk_N?Vg2q5KVN%k2xDCkg2gA&_cYix9Yt-muMiKb4-|&bDA~%RFBa(nU|{ zXOIduix7yGiEi+O+t_+@O(%6tayJvUgH{(v5_?1)g_6is zA`(&sUD7SQUUX?DuVb@2{{4OS4WRA#Nrxn`mqMtXt_Xx~aUX%F`yjJxzy7|}wl!=} zlF=tJAQjXV88DlXZw*Tswl(Y`Nk&LyK+d3BxS8hTO4=Wsa2xAfboMO?inZ_9A%{*$ z#%hrPscNstfXKLxT{9tqoy_Q6k-LKJl4SIY3`m7~MFzwnja_;6Y75!Q{xz#}k2G~l zGS-L;NOgKe2HZk(k#Asns*B#cx-0h>YL6u2B9Q^9OfTsY;xpgM0+ZgW?A1Q~ecidM z*2R*DwITvikzUd*M8x*f?5d70x=Xur*Q`q<8SCkJ{R~q1T#*5hfjz_tx3OMLKkd8a zt^jNYnU+cdH_+4j7^G6VB$d(~3*1g;xhCAkc1ZjCmbS0Y?TIgwgj_5_AeGW3-NKt_ zQO>_0uj}kxk^AW^mti;jH>8JGl{~?;{ zXgWgQ|37!WQ~lz(PPLz|0Z3Ede=mLizmlfJHix>Lrk~Ro0JqUGfCidAN&WxDbDZi= zsqa5Td zS~Fi1cX`_m3}5|xaZT~P#n~Z=>yBSXW4Q))(g?FdyJ!&Ap_}NS_y~p;9-z^JeFIU9 zfl8zHHjN&jL0Ly>;9Ptc(pxh?gT_`5(x9xKgAdZ6tiun{pS97bsRhF{B&yLz1Kzg; zo}`gkPhjxwjzbtul?Li=?u*m#+yjR(EbR027acTEw>Cm!bXNvmp(pJ-LO+haMt?E< zI=zD9Z%ll(dK(Q@UqJ)>c$)(6V36I9(_pOwpQOQVPZ0IPGzxdk0FA#D^M=w@iFU9Tw#Xa{sVt zNDOD4`;erf^`84s$ z-Za``d7S}TP~066jE+l%BC0TIwJ}V?R9AM;@Y9t8G@^7B@M4^1rSAzEBDdpNdjE%p z@wcziM?}L|c^d+6(WiTyJ|}jNJ}2HrpHmTN!D#8~2$d9Y4t}0~uY*3P!sB12UjaqH z1>C>`ih&oD00a0yDJTQwpaN8aDo_n-KrN^P^`HUxK>(OQp|72IRZw>9oAi930u&5? zn_eGq04LA^2SvaI+`t2hfftkj1NcBGC$a|Py=c~9jFHlzz+hz1dX5xuns~2D$qayC4I@9G~wm z=r2G4CBx=K@F${b-*?JTP!bx2Q&=) zo?aga024HVCZG%vD$qayCC*pJMjU% zdQbyuK^>?E4Zsfqzyu0i6h&__p@9NW2$a6R(?0+W6oAS>Rq@sWUJ_>dSaliHJoh$^ z67>U{X-+z}(7leW^jiC_pv}qXb}T?U=qXADX^#7LV(xZfc4%8xj%`^Twq;c#w05e& zwye110R8fD+LqzV`1Cf?woDO2mj_~a`UmOh`)Gsa!v?J!8?*p6XeAxAK`X-stq~iv zN^H=Y0&#l!G+5caYxJvSE5#Ye(sA)!OLo zYVDx6OB<%QtFnXUyQPihyYU23I6^aDGeGlQGAiBynq{+u=C&U5?LJPlVk7PtqPZwM zMpUvdGw-yKFyk@tqFp6hSz$|Y$fJoL-Snfk1hi0p+{;Rc0$?1Z1;+Jzl(s{u`*u8$V5dY}vtfi_yyOiWae;}%{8&(IZQFWzGFi4B8 z9|TT3hUQ2V1ZYXFL>ZzQPkk8F`lG98`f??5;I{f}z7$tq@g#7wI2B z4T`JO19pN+swkicRH3d)tzd{2`vy=u{06-$&;lw)638G-P>Wr<2B37jLusH0dvh*O z1&Xm>=LO|r4-boKBdEc?UiGoh(mmkCUZ4Ni=V_*aZ)ody`KnU7ORF-X3X~qag60)e zfokAtyNcdkP!1|U;{dH%nt)@7aDwJGTGO-uy-%!j2<_lbdgTBQo%-qE;JfC#sdu99 zSns6Yj=ddxJM&ijt9W3LBa&m4^(4INdE zCSD7_X1ta>5;2 z($B}94?dqc96ua7tQ<}}7k-F_ht6R_lEW=dlR>W zZ!vC3?uqO%_oQx){vXE!h+b!1m%cW3ZSdO6j`)ty4rNE;n(#HoHOZ?ZryUJoWLtQf zu`RhZven$0+7jJjZAovAZ4PeEY>ICRZBjNR!r`zHP7Xu{%z@O#=tgT}`toC^9Z4X( z)!3Tc64_#INo|g9wl=3X#Wn>uWy0}rD6E7N1K|Nlb zm&Pv*U8-D~xFmduaY^#x$i?QxsSVK$)`s-@*!tl5%)0ox&^l#ZVr_V>u{L>8k4*d zI^&(8PNg%kD7?s6lnh3KW-!$e?XWu13u6m|3o{qSFAQC%T$or8USKRp{vSsZNVZ4X z&GwWPwJa;$7NfHYnc4B#q1npp#9869jI)xnBD2g{shQE4*39&ou``2bX3mJ85jsOT zBQYa9!z>j-KE*UY8MQ)!61rl+*o0{ zjlFWO7`fvHa_>g&PV5*tJx;OGbCcYlk-*dD@vuHV+Dp4;5#N5=G%6tthESbVEs{mC6u z-=h2fKl;M({r_=Ce=C3c4_vogqPR>Fk(Wt8!9bT}gf91tei19wVY!Gk)pBcosY1A( zBwhvzNw*|~n@Kt1F>nzp)Uk+e+~K`}rCO$tY>*OAFwiZjmRK$;cPk_tr34fVbV=qU z$KR38UB#j$>BzsV99B3sNe3tx=#tDij=$wTM z9Qjw3dlia{qyiKSbV@?8g^jLQmVZ%sxk7QVRDgnkE=efX(`n#{$G`>nP{+Il`PVI1 zC>)!m0~8E&O2V;`jlLM2`IjxvQ7A5@*)}pzNV+6(^KA6XmdiTwFI(=KYAIY1$>gr1>^7P)NEZbDP=mC$0EE1Xz{I-34A-fp|I(qWrGeE>c~b^mK=`U~CrzmKLVG<`_*{}CZHK;0g&u0knAjMfDRzpSrh|Eb{0r>7D#p$NOl%T zb{0r>7D#p$NOl%Tb{0r>7RYrL$aNOTbr#5V7RYrL$aNOTbr#5V7RYrL$aNOTbr#5V z7N}(q$aNOTbr#5V7RYrL$aNM?Kr?_`XVD5E*I6Lfd1yV_@Cx#sMG=5oN&@-L0{PAY z`OX6Q&I0Mq0_n~I>COV_&I0Mq0_n~I>COV_&I0Mq0_n~I>COV_&I0Mq0_n~I>COV_ z&I0Mq0_n~I>COV_&I0Mq0_n~I>COV_&O_~N!YfF57A-(4fRtx}lxKmIXMvPwfsAK? zjAwz2XMv1ofsAK?jAwz2XMv1ofsAK?jAwz2XMv1ofsAK?jAwz2XMv1ofsAK?jAwz2 zXMv1ofsAK?jAwz2XMv38p>`tcSs?3KAnREm>scV{Ss?3KAnREm>scV_Ss>|IAn92k z=~*D@Ss>|IAn92k=~*D@Ss>|IAn92k=~*D@Ss>|IAn92k=~*D@Ss>|IAn92k=~*D@ zSs>|IAn93D5{BAYg;%P98lV=a1L}bWpb-cFCeQ>l11&%+Fb>d;5^R7D6amG69dG~~ z5I_mw1YCd{@BpPi8DJ2G+UdnBKA;@%0~J6ePz6*2H9##;2h;-%KqC+UOrQy923i1i zjGzHFKnIF|V!#eK01gPC1aJZ_!caTic*O&h0%d>!cmW?!4)}ozpc1G8s(~7y7N`U2 zfd-%v2mmI~1T+IJKr5gH?w|z#bf5?*2JC=?Fw{`JX~QczPy`eMcEAB}Kma9x z6L0};zyp*5Wq<*A0UuBf_<;(b5~u>Iff}F|r~~SO2A~lrI@-y2kppzNL3brsSq)a3 zps5AA7;i2D#}yN4{nOJ40zAbDp6UiCSAw&v!P9EN)9b-A8^MqXcCabLE*rSOwvKqS z3ygcfd&cU9Vh~d0S6#} z62J+#05{+PYUuyvKdl3Q-T?lh5p%QAd;DWN_&W~%p^50w=zcuCtCh{Ce*)-05l{@+ z0S8b5H~}|M3X}m}zz6t&3ZMlBgW)MB@EU=qE=A9Do0;2mH_reyto#SAgHBB#LT0{dNtW*5T>*>hZJ@Pk*2tCjPq) z9xVoc>;V6t0DtBL|HBRbr-vxY@buSS@Z)kYTLJ#A3j9M2_(#`AOPHf%mz(~eO?L_7 zSC!$ZA5UYI;PutujkVy-_28{d;68SYxZeieT?F3i03Q(G0Vnvd8+^1BJXl7ggE~EZ zyc~S88hp-ROBw&PmneKdIZ%rizfuo=O$3NPaDhMafSFPv9bySypd6?GDuEiH9tZ%< zfUTWS3~-m!r}$o>-__%lEFA64KltBG^~r>DQE!_x*l z%{JnxiKo9G{FDAx_IC2E$XnW5$v4AqYHudq2vK!F?DgR5nb+d4gi#}&OmwYxtwE>A|LeFHLj!|Vm>Z!<6 z+EWRt3&=bXd%}Do{dn|olST^&C$fj)R1=Us7(HknOg$E%ih#tUp+_^1#AH1H#tBG0 z6n)5eC`r`-*$3kfh91m55Pu-}K<56qtObbC$oHvxBeD`8e2;cd;_mR>+TF=`ByPl0 z`=k5K{pq`6cLndt?2GRU?aSVoxHEibhDHc5<*4_@?a48Y4}e;L#Py-;GuOqg3tpF| z5$}yysz2Iq_NT9nT^qbMb4~o3&^6h;iM`>y+TP^Vk*kfXQ&&Z=GOtSSiR}sQ$?T5r z4(-nFO6&^LnD@z@k)6iQ)Q;#5b4Pl6Y*=l>jjs86b6egz5kiG%i5q(%7ZJOVgJ`X;gsZ=J4k1#qk1T0{lI9^4SH+HIX&O zn$+s(YIAk^{QmQU=V#7~pBFkWdv4;~@VVN#$yJe6#;VlH=t^^C`kdG~!E-Vz;wwTc zvda_8!^``7gT0xacu%M&8%~77VeRi64}dL7E{rTR7N!DK_&z_k$Gkj+M8No9$r^inZot~YWm>Zs} z%}t&bIn6jNH77d9oRgj%n;o2;nH8TEnw6cIm>Hg_%}maS%rIu8rbnln)6>(~z&HT^ z=$-ri3Bd`Olj0|ZPRfo?j1Q03#wW)`#u?*MtbS!*HbRQM+kR7srZ&#hIdbQK%@ZC-ktc=}B9}X4q0%R5P_S z{jC4E@3{@{(Eb08f#3fH^8c<>TsGOS;o1x+B;As@Y_jtNmrYjoEYH7qx=kU8O9?0# z=#gAcW#;P(T-(m|44rrOyxy+m`Ik?(D=c?Q3n&=qk=#lPvU5~R&&rj(Jze>i=yoV9 z_ecvU80eN9&62yK4a>az8_hcvl6$2D6by7r=B}7+9=M(}^v6(7pC#7*OS=@3hiS$E z1`0{HBra*Acj$|_pb}N*Rkj%?KA?cEYvadkb&|Epg z%Fb@fz2-d%$D`5#3I@6)bB^P#^$lEaCWqx#^HmDRW6}W%2D&734!L9Guf1W1rI=#qqD^h@(AJ3B1<%QXte<22s@ z1BIkpas%!Am(qtm;xVw5b)0=xcdnb<;8tcSX}DIQe1c?N1`0`!x)j_9Pc))@6G zEKf=cC>ZFG9D~KOrNtDMr=$fG4D?8j!D89gu2Wc^mKIPj&?7kpi>0jLdWGc~X#oWT zJ(6lmhoxKQ4GPN(H0J;Vg``sweU`V<>mwd=zwxr}9_!|2xsQ6ILii%7Di|mv-I5SS zXipmP7`*e)6YA{9zrAsjLh_Q7fP#T#l8_X-JdP686aCT76x)ycx zspM-qu`g<|`1A6Rz>#rEa0DhAiyy!^GdPvQI&dAtmyvFoK1%%#L#F=9(( zgPUT<$mqVi6qfg;1r!YQNRGi`S%3Q#mLt*v3I=*4$6&F1SHu;Tl(c|?fgZ^*SS;Ta zcPlI(NDC+!=#d58RaibFEudhaM{*1nOBLLG3d?7u z1r!YQNRGi`DTBLTVfj4GIlw>~3r<=1kp#-LcqV8&5R=A5iw+GV1&P{e_epa4}^BQ2yVuH`{F;)c61E6%N~F)c4;`)1ggv z+Z>v{xzTQmP~ZRmp??1l(Y^l}^yk;<{{Iy;{Wa*Y-B0=dL7F~XN11>$q5uD~ht|43 zLBIbW9q9j`|NEcfeMUU;k6yF$3ttW>*36gWngMC#JYuQjXzSm>9Q_=@qf3_ur{td% zJfzTkC^aCBmnSvgSTvT?f`=8FFG~$bBj!mBI2KJ?{&j*!6q>I{4M=0=News_&D8v| z_eT|)uSyL_qvlBsI2O&c{0kC~DKuY`8j!}#lNxX=n(6rkum=^IG|e=?KpNDJ=#hj* zadgS0Dh(c8EU7Ao6wa@c$ICz(k1>z3@}=M>H#kcURUlTOerpCb#uP^?q#;_LEd6oH+; zr#`Qc{7_0j!9b5Bx)T(V-AdP}Y^hl~#pLIZqmlc*DOAAN?;YkZP2Ftws!`v$h z%TJ^Qq_OabZb|%@FSIG-wzoyJDOe5*hZT~a(u@NPq@n7F9?3Cm36?LtnU)LjNrm%g z4LBCf?ELflPbf6Ml^T%7XOkLm44SEyDB4ddG=HL*nhc~tz=$*m z7!lX6H?Y8n-;udKz&=J-um|@b8JIqER{n*zcNNCJ(ELpX(tuq=mt@Yk^Ee}J1(w6O z@;K#@p>4dx68|yU1>PnQH&% z%y-znvE6RFjHY6m9@}QO&7|q0EA6(;G}&m{H;=9*Y^Cx4qITQ4H2t>EZo8eP7Md{r z-;RAdKmAFn|G(g?dG-H&cd}D$x%z*UXLt4IR_3OEtV~<{tID&7+WC)_X^VeVdG=5{ z|FJS{@vkb+9%|=5R;En_np7tJFDTC*YUe*zrY-(e<=I2+{Kv|)#lNaNd#Ig%SDAJI zwb~}o1T+IJKr6ud2pV7mbf5?*2JCSOcKmcHe2pV7mbf5?*2JCuTbf5?*2JC`qz=KnIF|V!#eK z01gPC1aJZ_zzukSQlJbl059MJ$^k!60aOB2Ks8W97;0xNUa14>fd-%v2mmI~1T+IJ zKr1i~U;%;#*Z>_U0*V1U-~c!vfD*t7xBxfc0ZM@~zyQ2}k1*8Ea=hXPDu7C$3aAEZ zfLfpqs0SK=Mj!x~Koigmv;eJu)=sbiI#2`@19rdxa6kYhfD=Gop>P8p!caSrU?|D} z1MmVqpd9c66+k6W1ylnyKrK)Q)B_DbBM<;gpb2OOT7XtSTSu?~I#2`@19rdxa6k}- z+F62EoPY~(10J9hC<6?@3;2L?zz;!lO1%08KRGW?|WWb%o~ z6UGxMS@)k##1g?ohARI-*anStv6!~@|6vKI!2;Pvn zK2G)j+3OP54W;X`AO=@p+uempUb?oZk)tRf}SB0+1?n&$k@6q-ocSm*`yHmTO zyUbnbow1$4otYi+9ibiB?TPK-?b`O_w#c^q1GWF*t=iUPG!iwa`ajxd_NBL+C<)M{ zJ^-;xf|q1Amu*g69KG1QIDJvHpHI}B9M3ptS zg5>j6hTIjUwoWz{)9Boc=c4W3OJ2fjh%bb;-8JiiLnVAuv5t@;m zo|qn<-ajokEi*MfH8eHbmS_vNX>G}1BxnRvQ=(JMDe1|v$-&8)N%2XcN!e2qr-o0} zPEAgXOf)8@PKlmko{~P9{lm$9*+3!?4)iw$8#4{@hR{HUpH`o&i_{r)soH3*S(~nj z)dXuY)$!_3b+#%|6|T~%l9iE4qcT+ytuQOne&$b>N6L-zlrQQteQ9sZ8}w$3xDhh4 zWr?zInO2r8jg%UtDNod6deZKgJLt~1;;xV@>r6Pq&i;S8{{PYMmq*^E`~QFaa_;v( z?*ETJ@_YG%zn2Ei9lW+_xiIr7#Z{93)^L>sq%p{eF3H?gl8bZK5{4;jo8?uK+^}+k zMoR_T`wHXVq!FYc$%!7xobk$GSMHgtV({ZqP_MOWZf0l#{>4BE;t_@Of5}6Gl1nG( zme1kD@Es!_19gs}&JiWTDTRdDAOVFWjY>|>)e=k9*9QuTCMBR?pj%Qcu@rrMS|PDX z2}nbq6J3&!6uJ>IkVDvM9VPNJ3WqKoAPsgd9bnEeTKr9@bCD(f=CcY%k#vAG*g25~ zJ0EaF=-%6i$I!PPE zEvc4R_RB9TBrYid1p{4@NTj@+HiQw6!A-4WiDfLMuP7WIns0!CG;TZ5Er|uWoQls! zJmg1$EA>lOtg>tcmWscxDwL(9@lr%Pl%Puzx?Q986C$DIHviWYjxy;01p{4@Imc-I zgvepp20l_a4Cw%A+;-^za}IgyEPw3{d_3f^YyxS8!z&#i4cjgqV9qf$fBtwr?66eh zeqG`4Ne4)ywo31@>ax?8)3Q2{OfHWAqlz?hUF#q8EZH1(UW*J~04R0Zj1f&tw ziEhc9QwAxT?j{{8NMQ%D-51f+r5r3B1L zj^8ndBvU)(n*-;u-&aT)r39qG*`)-`Nsiw$ha}T1v2;IBNCHv<(uFN40do?$_vP=M zL%U|jbjzrKKU7FeDFJDCb}0dK5_x7+STdtC|Fr4f6_O??0cp5%DFJg5x%U;8%(O)8 z{YW8cp;-nPNW+~=38>yREtOp}EtOqI70Ol;co`@p-I5VH8eCD}3v*yIShUo-Yi1OZ zaZ&;b2D&A4l2LcfMN6%_=8qMUlW4{P2GT(4M33Z&Mw0e3j3gb*??Sa|7F9!0TGhZ# z^b>`10(ra)q@mP_G?Y3qH`;IUwMDi#)%{PT{J+nyvD=nY2H?k({dXHptu!4u-)=jf zrvIXv|2Rz(X?ln1{+H9e|BtEW|2CS&Eu`82%Kf{5roYU$+wP~Sd4|LGK8^Wz9%cXi z0hxa^)pa^-Z&Tg>a+*Hwp?m#Q`#+wh52)^c4NZTdn*STx9X2nG0muRxoB4_Fzw#d4 z|Nl<@{r`{dU;*=XxgA%xWCfG5j&_Oc2Gy`ppMu<9kGKtVh44^4(f;<)Db(VBX&?n?4XX= zK^?J!I${TP#186+9n=v!s3Uez4*(|61T+IJ0P7=YfDO=rBA^(s0}g-#0w@6xJE$Xe zP)F>bj@UsRv4c8d2X({_>WCfG5j&_Oc2Gy`ppMu<9kGKtVh44^4(f;<)Db(VBX&?n z?4XX=K^?J!dH^tiCZHK;0a^jJpP&IYKnIF|V!#eK0K^UIh#S-qH>e|SP)FRL?gl(S zDS)^^9dUy?;s$lZ4eE#+)DbtRBW_Sf+@OxQK^<{}I^qU(#0~0*8`Kdus3UGrN8F$u z08F3>Xa-tK*_wgF0dcb=0xw zs9(_$GpHkGP)E$5j+j9mF@ri{26e;?>WCTCYXQUz>Zo7Q5ih7CUQiDJCeQ>l11&%+ zpdBID039d-iUB*|01z*zBVJHPyr7PFK^^geI_g$*#0%<(7t|3is3TrbN4%hpctIWU zf;!>_b;Jwmh!@mRx1u9fP)Dqwj#xn*v4T2c1@#63?ZF5Z)B}JCGy%;(3(yLT1GJ+A z8=wP4Krvtk8~}m^bp#9Q2o}^4EU3Ex1Pkg27Ss_es3TZVN3fudiWMD!f;s{Pbp#6P z2o%&2D5xV)kXl%c=ZF;45hvppHmEy%7iiCeQ>l11$hMM$iBopaVrfF<=KA z03ro-L<;JN6x0zZsJj5vs^}g7QGz<61a(9S>WC855hX}1M3|tCFhLz*f;z$kb%Y7( z2ouy1Ca5D!P)C@cjxa$TVS+ls1oZ%50!=_O&;qmqTHp?9I-mnZKrvtk8~_IdPy#ps z7vKgw1ZrU^o|gdz;01g@Ip7B>fJ&eWs0M0)TA&UIff}F|r~~SO z2A~lL0PGM!BTx%%c&-CQKrvtk8~_IdPy#ps7vKgwKq*iL7=Rb>0p)-nr~oQ~Dxeyu z0cwFdpdM%d8i4>{5~zhuc&;5L*Z>_U0#Jye+W{1!=qNTfOdr70Nj8Ns0JE=R=|Fg-~zlr70>{*0FJ{8v2+9< zPz^K!t$_Uq!3B7MDxd*q0g68&H~|Bw1nPlipy(K(1SkV4fI6TFumu*;VgVkY9H;>T zfYwcL0CnAq>Hh%qbp!#F0)C(tFacX1fdd|(9H;>TfYwiN0B*nsR0E9wJ4~*?2GuLWPryc+)} z@94*$4LzHECh<)88SRXDGWKMUvi#ytgr3Mgo_IX`xJGGyk%W;* z9f}?@DbFux zqgR_(r>}}#6}&35C%z}NC%ZebJG}eouK2FduI$dl&hSocXL3hmhp{8IJ-Xf8p57MQ z7TlJ(GJe84{70^cQo>*Q^4R6U%QKh7DdR7DY2woGrCPz!{^A#fF3Mh*xG;R7c42Z8 za{dl&3~$snCO1Sj7#mXSqwCG}=}0URjAYiu*M-()*Cyy5zqU4cLF5ACg4CMm8gos0 zb!>HTb>{r|`JwZ(=k=c#JTG%@{M^vF*;R>E;Z@qIVv*HpA)eb=^jHYFTudxh%ajwlugjvn0MGv?P0W;_UF* z+S$poB4-(Ar4~mQn~T$nVg>H?x6jXZCAz|0T350&(rI+2I-(tBM|xgtUT|I}6c2?$ z+4e+xxLs>co*6mQI5Txd^bGTi^y#tFgQsWa#^(m+rcaBV7CbF8Cq5@MCp$YaJ3L#P zotzb!Wz0&=jLtM?rf0-v1ZQNX$ESy;XQw5mg{Nu%WagjtPu}y_0?EcmqtTdZh&GrF z>H1iGus%~4uM5>>YZJBMTCFx&6R9z3Qq|FFvpQWBs|r?SD&v)*%4|iVB3z+WB>fS; z;ZK!E%gyq%FXjvSGTyj1K*2zd zZtOep~c1KpC4TtU-_ z$B<-chh?A1DkQUM#sLNjNsr_h_L-sXbSRsc)s|m2@mqy+4%xg66q0Vq3+ec|p}_Go zcm03b{-AKqBTs;VLee8Snll$XCY_d~IIHu&6wVIm1O)>Ayc>MsiA*`zTUC?wsI*!i}OvinigAg$P;dsexP)>5bWSA}ya z*#Zm{k{-#?oVkrwI<2eL;{0!gbD4C4f`J~%F*vR3)>0k%KMH3Lc}xZhNw?%^PHaKB zbvtwhl3TZ-{KM(r6wc*j3ouYfdL&144zJsJ)^%%f{;$HhLOMagK#$}YoYr+aFMm1N z>fCqQ$WkzqE|M^&v2&#p6!N)8QvFrcHnid5t7@JldO}k;&m)_cfkM(HiPNIC6P(_) zS$?zF6pr(y0~8E&N#-1d4|K(>qqog+dZ#NKtEB@J40K869HXD!wOLN@iWH7D(g6wv zx+QaGUdKCfU+eS(ugwyOR;-X*ASIw+phq(IOX7G*F7JkZd$oluzrE}V%UWpx1p_^j zW3X6$dpQ)AbY|2b^Gp6QVN|BERDAWnV%CsGE$=jq;mZS2il1h+9oF}>^b4Sy{%T9gJY3$Uy3qav;5TO1DvG?%|Fvu=B-?0~0S3}&BB z*&{6=4dX5?;212HZ|^FF1T>(#RDz}Qd2Ydu zKPcpKda?5?U2ZwKu2X3Gr3MrXER`IK#&UjLuh7J#2BcBlr3M^}#&U|?pwL_=H6RV_ zE;Zm-G?pF|jS9{6QUlW1?nJj_PBYpd5%k$~cI1C61Qe1Rqy!WUbW7$WeaG!Txsy4P zbkEQ4LSZT-H%bXeBghjyk~zra~Lv-CdTi?UNLa{n7yn2D&6S(h2X@Q5~JjdZtXx z+wLYP9C7IYX+SihQ}RN&6oKPDklbnL{4UEk_Q?vx-BJP4XlO*YG%K3^xJ1+vvK$dg?1c(|h#$|18sC`|cEnZ4*t%|37HE zYU2^A|Nluk_xoS2?frMMUnX<;f2fu1>X)ysHc&Imy(pUHK2*)}a+J+-Kk8^>pMqLiJ`u&V{8WuTHa^J)PS(LGMa03y z2o~d|Haj@g0Z!xKbQIU}8K|!1Gf`g4XQ959&qjeQpMwfpep)Fw7ZtYrbd=cgGf-p8 z&qR?eZ%36a524JK&qJLp??9m~??k07??S09pO0Ewz5vCxd?BiB`686t^2MmP;(mL_sdU2o<^fVwB|a z&8W%cm!K$@Uy7<+ei_Pg`Q@m~UjCxDCFh$ppuv0i&9>GA8L8|{V3+;51^WtKZtT(en9IdK4b$Q*1<=L zz(%jQT)q4;{-qJ0zZfPU;cR% z0P`=P0+@dhCBXbkr~$^X*TgTQ3YdQdWx)Kar~~F-Lm@E#2$jHti;+e}F#kGAg84U4 z6U@JfqG0|lR0Z>Iqb!(z2X(>xyC@9i-wS~MW`f^u0%^c(;tx?9jA65hKSFgd2G1sD zP#=sTw241Kg)j!vCjJyP!Wd4Q_;XYVV^D44FHk4U{}YA6{FkT{=D$LzFh-e9MU&sG~06YHI z0Qlb~_&-hH-}*5qN4bILQu9c7Rhjad0t$ z0xz|dfK#2|G#5DC4bJd@GfTl)W#DWBoZ|&g^MP~A!PEWV85Q7}m0&wk@OTI@czhmm z@OTG;@OUSZ@OT%Z@c4XW;qe6s!{ZAB;35-T+ytK044&NrE@=gqjsuq=43Bps4R3HU z!brvAJ&48Qy~xGm%MpynS0EXWpMz*Tz7pAZd=F0CXa7GP9EQgpgg__NqPK2MCI{|kd?;bx6_U*CR%c z-+&xFej|eP_)SRC<2NHpkKckUJ$@@f^!RN^(c`xxMvvct96f#~g7o-4B2$&HG`jO0pCXeA3uTwKAy6HAL!tx5yHnm zQw)9FkM-U(X0+RUn7fZk|A%l;9h!8&hWu)-&uONnxe-$}={A&o};~yc3 zZ*VcvNaW*RM`}>3gF0822Ra4pV=Hcsv+S?~hV%h2&k~yR!S@)K?)*DTKzI$veV# zWGRC%czgP`=xxSr$y<-!5~Dr}shcB|KbW8%3Yi;Yls=fE{t4O*3CbSKTo=2}q}~aU zm=;U)hp2Bt>{|2M)HM<6nUL5U+S_-vadq;lFl7$L_XPK(cSk94Fu5yCJrd%SH<;cL zrTz#>N*l~>i&Jle^p(*ojVqH|!&|e_cr+MI_p!djme7{W6*20Ckh(l_xpsMi`XFR3 zja_P9nz|%%iFQe1b7*ts;uvKNrY?$Hq+OJtgu%?F*d}vRit+{bZwOMhV068)J{bv9 zvS55&a9w(Bbge;s4#F2?*TkvEL27kmwYEAz{S7kb#m+O&OPw1zS35VcDzqxIvTSAY zobWl>6>;ikkX{~LZcv_JxHsDq?+H?xU^Hxmligv;5{xekQV)YDB?%^%gsFc)oN@%y zXGPCCv^calLp=-3MX806h1$Zzg3yA@{MdYReyS@%y$TYYA<7SoQJ;d;ya=TSCa6b2 zraea4fhp=wpq)8|`VvG>H%?E^4bRO|ZeZ}V^qlA%gHi*-v$M0}vx1Zv7@cX%OwI^X zVqkoFaC&-Lbecgu2*Q*Y7;ig5X@OcWF(ou5Ls^05|xrX3$Ir zq5*^Y34|N7lnxlAUINj2gR%j`)JGs*8>D2wDD@CXRv)F_0cKT-G6A*9L`A3~KPCz*UA&V5cLa)c};K1h)}P9L|LdTQyQZ_0Vz+!qj?h4BcRV^P;Y>+Gg}g;B*3(Y z3PU7$n0f-l9YIIh9;JQ&$>MNvwkS@$0MdF?H}oX+0my1`EvThw&+huck)NgL_x~@x zp7;CzNU8Si_V36efRAoCc11l0J#mlCbDQUYqtkQ1^EB~s3M4G?9MCi`9yYI6(^zp} z3!6~V9%U1}hpuE3@H1$F=zoAsDD6JLCOD5g%_exJJj*8d1JBdHD@(Eoy!|yc!8}Z` zm%YIzR3CYlO(nbV;GLh-O#x-NPn|{RuX) zyzgZ;(e=@{S-Gdp(|p__%9UPI_ER>gIPg0*sl1Av?oy z^q1_6z>z<*Gqj@)?F{3XztE?K1sdaA8)yNWTMHWneWG(JX))*M^oh=DEx_z zG>$UIMzXb9R|J-iKHL(xs^BVus~E15vAPP*v7AJ$1M@C*1g_;vVwWAm$K?Snr|TU5>HEx?-R z)P(sZ)P(sqYQp>?YQp^Tu{B`~b2re6t3AzfHy!13Kr8HM1xG6wT46&gykl#{80PLr zEAkG?xlKTBcjTSrBJZps^3Jl8cUHyNyaneMpe;P$)@hYn54$-dEvS<=^tsivq0cR* z4SlYiHuSm9F>L53nx{$9@dbAR7i=}K*$~Bgl;%%;dH>s;dGD1 zd4hRr$3|O14{UX?ao8x;P@C%+yRG07mXOUyhvMUxkv_mm5}u;d_uMH42~VLgMeUTz z!otyJ;iUOnzCN)fR$;zHn6DS}^sm(0?17hzrn!eQaX!NB6ObIyHNuKILIHv4|Qw(Ls%!SaRff zHnINbOKc)*Z?b%0s$A|s^WXLFZT%ai{w zu`U|1E^wWFVl~! zpfxs8>!*#y+eaHq#mFU7%%gb9h}}T(?;RhFv+f3pe_z8U{9XUvH*#$$=1*5q5-)^b zh(8yi>nDk4!_P*ZGM-A&H52p6;jtXFL&<}Yg9cqKi9Hg0B=d0m;n2edT^or$Xg-*J zK)XMAU*tZ6vK(S}2k*|%^^j0}IJLpJBXxW9c9X7vXtySBiQHn))sNw1hS>GN>yQ20 zvF{xF=CSm#uO9m_@nQHw?Zf1kqF*Tc?BP`Rr!=~L6nW2hFZFKpU6ZaL#XcGQWablb zTt#{-^TyFvkG^vB#rTV%fu+!1NIoB-t3j#fqR*MnrJs#G8+$tTWPhUnvHpjH4`&{V z({-Kffy9CE0qsDNuIv~OrXGmi*M9ejGbciKX75PQl^pGkiFvHdEMt|=OkA|Rv0VdJ;#Y#nG_s{-?vyL)GF@q>Rx-trvB&Kpd$u@1*8#NRWKpEZC`!?l z08>v>vBJ+6U-Z%kRR3QwaQ|P{{~!LX{OxbWKsvW9BpT`%MK!>yIxJnYC#}x?ZzBst z2Kx&=KvFLQg``^&^&aclEUS?X7L_btHE))skZ7_(@}QJ}f`M*H6nu;>>47A_1bB)< zazIKz!9b5>uHs|QaZ55#1lrMi-V{r5VNhXtNLoO_K({2;SD}>lTtVLQRb5Lh#YAli z$-`0t3I@6*vA#x^^gxndS~yi9c|=M;!9b5>uAFG|XzQ!9hepNDuP2(OuskX)pkSa! zGFMMDnuY3#$dX@MI9*|ROjMM?3dTiORtxi3TJ|BUIq$Dk0hLZY}DG!j_ze=TXxV{3d`ft0tyCtB*(Dt zSoYA_3duDPC7%Y?Po!4vGLr+sko{|z! zFwiZDvc<~_loSrs<#to~W&R#IS0Q;?N^Mm*$)LN&7UdWN&jWtZO$O9sH13g^pY z3ouYfdL&144%FqsY3cH7b+#*yX zK1Ow+`LXeFR3HyCH;AKyC_lDDJ;6by7rswFe>zpAZFL zR7)(wJ1kI0J|QKbV4z!4EwS{nSg4SEQc6Iq>#KTC7@uSTT(5t^nO{a zkh~`)pkSa|QZ2E3k)NfIyiYR@Fi=RkBsa<$@zM6o&dwg|o@wc#bhg5Hgj`+*3Q3nF zj2APx^W`7h`*WE{ot@SlbBV%{k`7QX&?T93$bGM{!?Is4RX9G74p1=AC7E-`U9Ygi zvRf`wI6f^MpkSa&GUt#d28A7#y|P>3_>6Rbf`Kl{oI`eKDD1H8lwpPAv(flrrQ56 zQUCuGED{`b*z5>20`?Eedp|4)7Y@1eT?N$CH7)W%xB zaHHqbbpOBi8+rHt*FD3|i@zq9qwert-2cBu-e@)5)w$b?bkVVS-F3{beRK=+SM}e@ z{Qk1rnI9F6e&gsq=64*8Gk?pWdzrs^%KgmW^w9z4H~SuD{`&sMnV-&(>D~QLF@I~| z8Rj2X_5#hS`$gt2+5bB8yN)(${;DZ0n%_TVyyiC!N0_r_$m>45p83lUZ-nDQnqT{7 zn%|+zNYuZD=5i!TGYD*B{?cPRn7_7c5B(Eb1b-8n%h23PG`AehMH!~Q49&Hpxy@*9 z6PjzHxdAk{4$XC;xy@*93!2-C<}x%_pt(*ow-U`QM{~>2+}fe$y3pJPw7^6Q#vP#+ zRGxPt0C>x;+ zK-mhVA4)Hjs6+L8pe%yYgfakSBa{tLnou@D*$ibXlmbdWlwMNiZ4tv>51LUw)Ql1| zBY_sQYcXiOj`*lH7FaPtcS7=%33HJplpOP0A&-Db|}42mRi^N zu-AQLJ&jj9)Qo0Ya-ZkOUgj%5)X#j*qc<_1egCb@r%$<^`B3lcYo%uRY-MrgGY;R& zd}ZzTGhgY^1BCvE>9r$IF`u{n8G57ddFJ!eHtq{hGkpHOCe5d}kJo%v-5XemTOV?^ zU~QL@)9>%2MX$jg<{_uwNlrg%hW+-kyRe(lqF0mCUqw!TB{^wNq(!eLr@w}r{;B{i zdOh|l8;wljFKMSmcan2xV{6XyR#H2h!$+f5G@}g7C`U7@(F`}5QG#ZmfZ1P+W|X2C zRcJ;fno)sfRG=AEXht=fQHf^Mp&1&QA<&ExYcqzu6==rr!O1`id}u)xTHrzp1X_SX zYJU-0;6V#2(Si!Jz>gOA(Sk~}pb9OhKnrTof^paeI9edAEf`k%m+K98Ew)w_isS+-O1tn&3wh%F%>!G@$}bs6-R|)P%hCK0NyxG^-WOa-dn<+N|M! zH;z7#ykn9NtuoN63bd*Ot#Y7Ms5bZ8&?*;Nl%oY4Eht6{P<`)bXh8{D;6n?%Xn}zi z7-)eHEht9|yl6osTF`_R6rlyh))ovab+lmkcu|2Cc+dhLTHrtniqHb|0-%kJ4p9Ov z@S+6M1xE%e6!-M%_(8{RMF{#)n`xlb2*L+%e_r`jIy_ueD zc&sA`#1Djpns`J<8CQpl;W}KFqlb+o^D?2kWGdxqH3jfFqV@7Iv zbh=43{;_GnX_=|`94}!c^;@93L5Pj8Bb=Qni1&HP#wz%}~XEs3qH+pnCt| zyYlhI5Y_r88o~`)L$W?X)&8lvXq{P?u8mQ>f2bx~ov031Yt_lBNR>eq|ItdbGF=g? z2vW^|+#m91%M;~cs`@v4DQ|S>UVf%5PF4Te(nM*vR4YwV-M`^Uxub5=op!}sL085Z zcZR6?KT#4c(MpmcLiPV9Pdj2%{ePnS{xMt7mZ3fXjJ^H9uU349?*HFCQ2#IQ{~!Ck z{Ovz*m$FxJ;pFr3!U-rC=#tD`I4OKPpqSAGIm>0n_ z6knAJP%zLb3B}YCC@hy4&r>MACKaGypi>fx(PRC(7h0|`p07}RBo&}wpi>fx;0cz( za?O9WLV=PVF9U_7Qxb|PCs0^+#Wf1WH)!So1`0`+WbU@YB_p<3Ca=Hy7~L6LoF5z5 zX^9xVKwswQNG>k}g``Uo#!Kki zWyE9XHkoywxk%yocj*8H16`6i$LP1P7F%|iixrL^Ne3tx=#tDiY}sKhQ8+Tv0SX4XBy*0@Z(%LA>@Sxp96y#0P%zLXnRASO z3v01ucezaA_=$9Yf`Kl{oMZH}y~UQj<#L7Nr!?OH1BIkpQhl~(-Ca8Kcb6*^%Ab+U z%RnLNlQ=776uB*3Q0spU&PiPx0`sFr@xBzE?TgbtX(}lE4s;D zNV`*^{SygI1`0`^B(f*5up=J*PUh^V8?+tAEvlsuc9+8WXR@_2P)Jrvj<%?!thB#c zE-IbtuI*SDTDqWXXj#eooqZ0v|L?HxO_gN1bOo~FMnu-opZsb##w_C96*pGVUl=)V7cnognVbCmlR zq3PphhwYB3cH0D+K1ca~8)%|_K(3m? z|Nehxld@0A)hdqd#*LsF+1E~J^k5DBds(Uba6c<8W7o4%z3gUITG4$gEA<_{jg=zB zs9W=)ULwWADx5+c?hq|Jhvk3e%O<};#~t}5^VE%gi_DuM1dkFL zro(t&X|ApYdUtxvF8f69vAcXTVj+i(CmGcYI}m3fCEjSHS#8yU9hKibPQ5EQNWDuPr_*5fex2$dMLnr| zn$UX0)PKsg4i#(k;6^%5%$kT&Uq0;;!kDKNfdAu~gh>At0q8q0oNHZ?z8bW8Gl_q{rYkiQe z5;XC{S;t3YxI7VE>={hjr5YW za{VY9>Ni(Oc~^6Jj!3ydmUlH$NiaKvT3Q{w2d0)rb~Ya&JDv0v*5jeKzaAI8{q?}7 z8=Z(p$r5_;>uI4Ezn&1i`1OS7#V@r;GOP`T=`gGlhG{f2qGD57B51a$yvtR7DO|Rx zysMSu@j94nYJ?HWBpJ~QBjCG@`Y0LUK0-#gM#%^#dzvssM!483s2DOL03-BqGNRpV zL^;nEvk~Q8osowaKS3zA9i`kIqiFY&&(cXbV$2t!d;}bv@>9gYbi1I=goC?raM*ls z`G~-bDgCJ;5kG3$wOZ^_A|n)boV-);#zSI9>(~go$4WXEM^{l>ppfRCdbXD8{pdPs zR^uDcBiA!~`Fg=dFJNwUVw5f#hDaV6-%K?zcsa8hjjGt=p+7u2VfNDP#n*DRo2m;MO2(V9Vq4wb2N|g$<(4Y2l z&9~9t?#}To-80w!npR^7!zFhp-Om&;qmqZ9qHF0dxXkAOaXb7tjr`6hQ%0Km+Q4dcX$Q0SCZ= z2EYlp05{MGcmOY;13thH1b`+W2s8uMzg8XnIQwz@W98! zioc|gf4;x$yZekHWgm<`s63c^AVI$S^7kk2H|{Tx|Gwyb#d|aN z#_lcMqui6bTe&+&-uv{s@^>chH0~^r|GrE*mM*2{R)!~T*U5iha-XrUus6Loy0>^+ z=C;^vrCYP)#ZS34cT3_H{gyoW@iT5N>`Cv5?kSQdzu4~5P1&2`H!0-HFL9%OV}4h1 zmqFhA(lc*&oja#!w7<<8t4 zi92-iCYVec=|U=;^a{PmjLvstFx2DOPV1nir#P=wB;=7gI zxtkK?Nict7@y+sbp$AI$pd!L%sv2$Zw#2ZT=elnwhJou1Z{`UzNWyN&W&0 zSER3qUQyhUA&-Hj?b+?6%cn1!xO6O`C-P&-F@yXBrng166)(wL5+hH6*^A>BD;MX; zS77d<)PrPoEz>zqlo{B}N_sv**RnQ_jn6PLPkl{HEk4V^d*cn!E%S&wxr-&PW)#ktg4PMx+o= zai8MLkY?pEA6SAu;1&5+-}SVM_td7LZc`7hzn z9eI1wZjkT4v@L2Y)@SNt1Ro7ti4>p2Jx@hp%`JSMl?9VhxPj;J0?%84HUKW* zIXu8~IDqHy|IQJKckdkD z-Z`ATSM1cW2QJ^aAHbtB4u9_)e%?9UymNSY=Wz1Q;p3gd#XEd9RA%o+`Dsl zcjpGs1#|;F0Q|c1MF5*2D1ZuRKpjvI*Z@0#=QErWDt5xBJBLem4v+2}4&6EYxpNNy zH|`u>+&P@MbNF!QaN*A3!JWf_JBR;v9s*hbIB)0h-Ok~>l~ifIUKKZ_+964yUyWtox|xmhtG8mm+KrJ*Et-nbNE}Y z*a^4m9A4KsoUU{DT<37P&f#jE!_zv4qjiqo>YPOg3ZMcSPzTflHoy)z01m*pI)`s{ z4%h134ZyKFhhKFLx9S{T)j6E1bNE!}aH&phc9=Qp?4aEZx|_k~7O=$t4gAV>bk~84 z>WL&xUytM9QYYBw22X4T&u9V9Yy;2k00+Wg%m9a2KXF6_SE*yfdtG3r5q#VW9teTY z;kUfwP#AnELgWU}jlT~oN9d~x)B!et0}X%^Z~<zUQD1ZuRKpjvI*Z@1=065S9H~|;n1{whmpi!odH|oK+?BF{N$awMf zqX78TR`BayI@<9kI?^=b>yJbD+5)rz9Y6#yfG$8eO3;8hpdPRT9B2TXfD3Q~jX*1< zb^N3q{AnlnH(}(a(!V+W(FXq90sgX!XjeSl^grr_^b1i1G@uTs2W)^HXaJmm8}I;L zzz6t&CLjp(KtX5t>L55;Ilj8^wX+e7=wNpMToeM2Zz0l6lD>XTA<|uvpyBW7dhqKu z?63n4{QXTl&_N&+;&%gJAqf6KGm&m|^!59#_}Y%IKkUHQFuqba6CwpNAyNnvA_XrY zQrHqA1uP*_s1oAeHWIlPUnx2X@gD;qg(4wR5E9}qTfu*E9a%?DsrI<(f7Eo>QB(yl zzBb`&x*5E)1-!crytf0qzYBbX9VJev;A3^*emnRi2M;>IXWZa(9`KNt$bI|L!_$=!3P9@AkYl70v$jE=myk5 zLOtLB8UPp22!YN%Fs6 zxHo-o^xon<8S=nix;uM!T>OfUn|$y`X-}D3v0LArCy)HbO@$lNH%4zPl288FuF?(J z8)7$4NM9aq`oj z+nU&_Z_S^dJl{CKuqC}Ex}`|o`eWynHfJ}-H>bob{>;W0&E(I<<8g)j^(RL4(fo$w z27^5Ir`Jc<7uRLh#mHxWc5QsEvNm^a;#~dQ{O6OOH$Goj!`9@;Z@<1ezbd)PSXCg; z{n3@hk<3VJq%@ozjt?utxuL|6PTu>ID~uI|SUMIZ|NWW4*kEZOI}jg8Rh`=}`;}gv z=g-KKf8r$lr2O*aa$|WRnvO=J#r_QW^Dmv4Ju!Zwa$=4=`s>T`eaSwfuRuQiqbC%X zW|qd5mX6OJA3r|zzx)l)!nw{wr{0+-|Ncftp*`ImZ7-6C|5#h8HQO3*RmjJGqD61X zhmz#yztEg+jy4yA8S?aBYRWdnn^J*jpya3tgfVGwYa8`_y2^dt9d1<7{dR5@L!&K_S-c7 zKQR0IAM^i>!G9J%_-7|)-z=FZ@ton8iV z!DhkFGC3nUHxb36d#gm3(JYBx26DlW;4Yema_s`ntGvvcYGs?(tQ*<5eB025b)%L7 zpKLDhZ4zOHB$qId3$_VXE3lvWQypS9%7*hckDj+#h{raLET1d1MSHJAyG|4uh%|I^LBv`G?Zstxkm&?3mWaG-U8_utk)}ng5 zMAbohy$s}nA;D^;HJ#$hI1wnh9-iMUr38{`aZ5&YD}USTP=#l6^F5@ns#mN1YDwhMmdVy~Dh zwnhAIiFklydl|?Dn+2;C+ti<<+m7we7SB!hNOYS>v73AlKo@KhtXAkx_UB65wy54K zQ4NvOA_j87kYKgaqCd~J?fy?*vZI!m+4o75TS)Ub26DkR!D{8jHG849U71B_6~A91 z-Y$v_at1aFRx376^6Z_e{}U%UYMCPXfJC^1#CjOW1)Bt`l^SQcJVkWF>{WZdycXF9 zC9)9`>}DW6nIZ-RZy*PmS1m9z)x})6S&XjPwrTT_r5i^rlSChqs2V~Q8pV;Zz&l(%1^dm<@D8OQ~j1gq(q z`%z8V0}|POQCyHSFeq59mdnM({CUxyH*bus-&ASPmf}7k(LG7%f}DXtK@@kPtK(cX zf^s=SKIg5)t4T& zt0&O*!EJW+?1${?w{EqoYu~V|fAF+j{lYDF^)K(YtJmIaSN}6)SMRyfu6p*^)hC{` zt1UmUtA}2(tHdD`;t6zSJ^7uo$`i&Ru>gxCG>USTrs~22qSBq)8x;;;8 z5GL&Et`z3~+tnXkx&F{^((nJl?~%py5x@T@e<8k8am!a2(E`oYGj~!fqwS|9HFKt@ z8IUtDB$%KD90_*KtYGDTv&ymcv9%jkEie$X40xZBD4#`Yy$s}nLBR#j36*)i*NNXY z8)LLerqb&yy3a~<2S_o@KrZMNOt8yo;mRjh%Q%>W*5|~Aj~S0x2D{Hm6bFSO$Qej8 ziiy=qIzJwP>fA}S2tF?n9HQ)dD4rVx!6w1&^e|*w)$z#4$hM6mvEd6Wy==KpAMAwqsA_mfgPGYlQwX&9nU${oiFTJWf`dMxfen}#{fyBBP$OZj^pQ5xUSxajf z0=+B|9VNL%4CI2%f}f?dC(ZTUvXy~cut{(myNP=5WtA)O+^qmj%FAYz zHf`Iq=E9MvWmWI161goT)WSe67!a)1bMOnzL%-10Z5xfP8iCsKQ^dOU+57NeiQ4(3 z)6PIH*eJM@?llWNsf9Cs7uy(HH?n@Xe^0c3J(%>Bm{MNG%O)WVtBSX_i90ArZQeB$^q>1$}}L8mD3% z^GP+ZhLn?p=FXLfb)(|yNs0j z8OR0wg4Oh}a@8p74V{aS7fWuu?uM(bxNiI9k;|@3>^yGYwiR2JSZNc1lk`XFbZ zU+~lFM;Fq!+&`uy`rCy*$QkGt{IvSZ7t*&pFUd*tcL;ruGte*iY4uN9NZ)ctc~_!; zh0q5%19ib_`dFeJE}#ER=WSl_>|3tz?@83J6zU*npf337)E7MWmLHw(OVqCt>L6#J zPq3OgE+LV*wok9E7OHy7kH8Nk@>dIakTcLPSWVv2^@i7MIej60%kP~pN%X%+nin#V z3pNQ}!^##MbFHCUf;%5r32~1d&CN`M;K1{yJ&yFEp9C??dOJ z4CXg6A4<%R;w=Dp1aCtYsH2Qn>TJ+@O)V=RUb(VxLz0las~zjKcxW_ zR&AjZX1P{H#)@+3^Ej3Qs!FH8sHoT1PW%pmX#wHsBtA zoDHxe2iQP({7E(t@jk-_{1nM`pm`$826*HJ`UmfeY`~a&g$=0vhuJ_qMKB!*Q3TTg z$IN?lu=fKtP)AWo2W+D|*b*|37D!Tv)MHFiRaoVmzLKpB(Q!-3t3kDc>SySndSq55 zE9BHbIStj#e3cCusjso2mi{hfsD12sWvJ!oQe~)dqE8ue^)FL~?5Pu#p=QeLxP=vw zR~-os*^yT_@@hj~oye;VdFjZj5qWXs3Jj$qRB?s< zIj8BggvsB-kdD*R!Mc^9AkK{+=f+404-22BqtvP$8_uq8kj}1`Dza8fK{d9b8Uv_C z1JziMYHUX}`cRENR3jFs47pH^ov6kjs<9Q-$We`9RAU>eu^rXuK{bX^jrFL;HdJE+ zs<8vrXrLMu>T^Q@R3k?<22hRdsKx-QQAag)q8ja}K@VzBL38$_%EG9!5UQ*RRpvx< zcA&rk6gWVkdyk`4&sCbKeVmHaglr6C<3c-Iuu)SR3*eH|fJ;sTE;(4tGf;<1P7s%z zMqF}yxa26flITdnDE#qId+qb!K@vZXR&lg8+NCURuVGa^9ZWc+uBO}BOV-<%h_7v{c=HM2f9HM71Db+x_-wY9zwwY5I~ zG@*(5Tc2`-&_b83J|}g$K5d%dr=Hj6oFsVZ0@mjp{R-=|(N(NZr>j_B8{J&`w25z$ zx#YyAPZ|3b>kCX1Z0y^tucN<9>9bMm>5EX~>+7J#*QZin?ekJ!?F&&~?bE5=+R9-t z=I->kw%4Pk+E7zXs3{FKk!Qitpdpr!(-DXf*F(o#)Ds6+OJP*d%wDJN>mpbpvB zftu<>P3fp9gF0lN9W~WKt+mgEnhH~g?CYiuNkyib3ZkZ*sHq@osuML8L{0fnQ-0J` zg!*S+Gir*XrgT(NBkHFPRnv&7G3Wx{*NhraQ3I{0fo9Y|Pl{@w0W}ar4Y*MQmg|pb zD?t?0g@U?J(0UZqhJuDrP%jD^KtVMWv;_riLP3KlC=FDo4*&lK{r|2(n+LYCtAJ?y zpCy6lD4!+4|5rOz^*Z|G6-IQx&yqlN*3XjQ|3b%>Tok6CNIqdaQJ|F((F4W(nfNbNpuI=G>md9(_-KcXGF}yKqzbrsz$@8#6b?ZY=G}?uzeHcI9qJ z+@Rl(-@3i#h-k7no*9pgm#$T=(XUpn)OQ${>zC#e$%K)Z_aQJBeIS2fdDVik zrEp&QymF+0&$>n-vnIBtv^u+57HuFGOT_e8elR&`3>F5`1JQxvIhk`}=akOQo*h41 zIXib&;w=5F{F%u!jWY|MOMfoeV72u<5pZeX`!DFVv;$qBPfk z-wRW3{}#RfzxDg&-~V|3-#z_H@g!jO5%-rRk4=)4vY&xm&@Wi+v5Dz9+sMeK*p`un z9@|(Rv3^COzfUYWk+fjOPz;-mrcldCN1_uS(=^5b_{rpil5q$kQCakp<-~ z4_Ut^k>4fcLC!$GU^RJD?SFnVy;oaM-}038*ChHk3Vo0>&?i_;-&Fe>hK3iGw>)J1 zb&32SXT|kd!!qeRAZQIb=O``puko}fK_6`#4Vjvfc2!2M{=qF^q zEs?#41X~!$1^t5Mi4)fyQ@M;@PdhQ8V9l!aF)WnX)=%&GM@)75n-aBqg&N2i=okF7 zYSI2ZXPBoid`F^opHKri1O0-ZR&9Czo_@31Z_TRhIHpz%Mp=^|(r#jlAQub@Zlf3Q zH!U!W3)cq^+ZNlhaod^=>rOrSjBTs83HS1|t@O7gYA28yxveES1)Bw{so{FqJg2sG z>sAu$y6XCCNp{(lU6jXM-}oJgD&E?MX>v7c6m$ue<2-zFLIdK4`w+JzCgPT?*>L(2 zs#D8F_je_NCzFVe9IrzVbPHA!tb{Fzopu@>JXfmUlZYV9f{z@?Lj-gS%0(=(QNAk? zK~wUHs1aPyEhrbU1bR3k5kaYaB7!^3*%c)LJ$E4UOmX2u|ihN%pcn;<1V;~oF2|_R-TAoEx2qIvawO{@~ zqA?&eK$`kXbP1L<#Fg1BGOuCjmVYGC7^FOW45Z1vM3-P$1J?q}XI{h7D}N}_h*2g! z2691{U|9nfHOpsS!_q1LSfa6lGVw8x3%Uf$8e*=MS!7Y|e!>We2iRHNIW?p@KK{#VJa?o%A80DcTrwsM*)PyXv>;_y6zD zzW>MX|HY|)BD-fl^Yv}Ha{Q^JE-1x!d|pU^oPkb3NYn^K6SG`4ek_qVS4e;~ZCprzkf;%eCT6*6 z{Dnkft&jlW^%tc8A#qZTb78q?{G~)5_jh5jkIofHbXN zh=6htOQ-w?iO5zV0@8$jAp*)pEZy=SB_bCH5s+r`3lUH*V!1^gm55wKS%w)%bL)vN zLEMIS(j%c`KC>N@#@3dOX?Yr6k_h6TeGKG+EfSiFY!Lr7w z^ta_B3Wf3e3QM>AxkTd<%EZS&F6a_0Yg8XwudwvWUr02t1kfiIjd4MjU|FO3*m{Mf zQ~pw-F(x!XTJJz~36?dgkF8f&`s6=LG!m4rk8UT>09}G*4RJ4|eU;Dr`LJ}!f01aQ zvHC=l<$^B3vW9tVEp+BJEIsmHB^s9r4UpDq5M6?0jp}386_yV9ZxRixF$s&6CbS-c zzPknGV^&L#w7ektcZnjN`T6J>H%bLM1;<5yjL_ef&)k^R+9Cf#B5?)f;iCv}kN};6 zkf?x2#FeFR%>VcZ;8Ygg#<{e4uk{cL|p7zv%sz z&+M&{o(B(^$E@WyrIsTX_~XM)ySn)tn_8lne~-|%l(yfbxPRMeQ)xRyasT?3+STuT zp7znE(Dod~{X2uU?@`>pByDcmo^7_Pr=4$8f1l$1T}zvTwihYx-#N7XkmCOBqD>3f z)k%u`cQ$Q*Ofmm<(-xpDM{)nw)Alop{daT3t~OEZKQ^kcSGJz>(eF6MSlth`dCSL- zu(buZf*th~=8EQ+@1v=a575m2R(E+yj+pD_r|4H9KSjR^)%V}YLIyoA#Y3+PAg<1olpQ729Ti*8FnE< z4H+89uoW3LB11nihIPoW3mLW{Lk}_x zAj1Y^7(|Bc^BLNZVLdW*Aj2Rs3?f4ZGVDQy^~kUr8MY%sFEVUGhE8PIj0`*GGqfW^ z8#3g`uo)RPBSVf1dy%0H8TKH<4rHh!!yqzrA;SAfu2Jefj@dswiW;;PX2xE$}by!6VE?iz!-Z#SF!?qRHt>JLQSw8_pGaJ@;_Kt`vh0I{1eSemxs~>Xf@4hOA1Ozi8M;I)JBPxc2J_Fos?*46D3;O zNQs&!$vLh3hA|5^kfT!%Y)EV7|tKZjGt{Gb$S_=Aja%e!`YD z9{D+2);_2x%Q~k#%CdmBgFq=Glxmz77scnrPzQ|Coa&}Dr?yd=Q#&ZlseVdxYBSj; z)My!!N{f^z3R|UEVqP*Oc9N;lMlv;OBU7VxGBw&krbe4dunFs47PM1?onF}42|FXO zGYC6_)$LSarw4X+z|Ju2Y@#&gHbi<Q8E`w=0VBqD47E#>qNWgP3e}^Q@Uj~O1G??(k*L&BId!X)I>6-x)ha4Dcw-?LeT+5 z4#hAObxP?Gi^EK*C_z0X=yFhkt}vRsLJ7K>DM6Qi*2IOHyqyv)ZJ~1QKF?S zlxV3B_AT7xZAinBMnM`CX+lU7K$?Y{yaQ>RNTVT59n!QSO)E;X59i6PEl`bfEvu2z zM|Dac<*1DYN*`sDR2yy3Y^jmbgOom`Y(PpUQYuK6>MO*i%+c6#VO?4*#8b6wg= zp+SQYIx-kKLbqDi;Jx&1f^M}<6qPfG2qHl*Mdb{3<1X8UyR3n`tbx01H}0)HxVQRn zZ&fHNXKqpxMpq^e|&Y;6a!Eh%B@JO&{yPR$(Ui9wO>3d zb5`uE(wW&a<7Z~ih@YXHkvlzcx_)~6ROQs%DT!0`Q}QS4CyhssoR~f_dSY=|W?5`m zsW00Xr-fa)6A~xrC*+qVml{h8$ES~v9$!2zb6o7W(vs|w_!4DFZgFCl z=uP)Vdy74po>))y=zh^~w6oZe>40xOb#8xA&*(9|1m3Bp4MQ6qtbCznx0bDo=0L?30 z`b^L7((nH-n}7dLJhyVuA1#|;FKrg^(>7Ryxf|^Po3$Y4Ws{^nq zP_qGc03ii6EO*xsQc%N+Z4Ds>H7t|V5K>Ts(*zA61vM-()eurpLr6glp#(LA64Ve% zP(vs|4WR@zgc8&cN>D>6K@Fh5K2%(C_ya(C@F$UfQ9&82h;;Lzz!gopoU1O$O*AOy4ktw0;l4s-yWKp2PsY?7c5$U+t0 zHJ}ct2W)^HKo~&{VFa}XzzHCXpymb;Mo>c-LCp*3fDiBk0iX#80?j}OXaQP*HlQ8o z06Kv%5CIGVS=fc|$`nBbG@uTs2W$WW2xg)R8r3bX<3KnKtXgn?lD2R6qmj00axvY=9j= zus{vL0yP8+)DSFCL$E*%!2&e|3)B!SP(!dl4Z#961Pde!5iU?exIhiz0yTsS)DSLE zL%2W<;Q}>;3)B!UP(!#t4dDVcgbUOVE>MdA2G9j`13du31Zs-_gbCCTCQw6|Kn-C6 zHG~P&5GGJVm_Q9-0yTsQ)DR|6LzqAfVFJlQ1Pas;C{RP7Kn;NcH3SOO5GYVXpg;|Q z0yP8*)G%t%5GYVXpg;|Q0yP8*)DS38L!dwnfdVxI2-FZDP(y$~4FLi*1PIg+AW%bq zKn(!`H3SIM5Fk)PfItla0yP8()DR$0Lx4cC5Fr9Jgb36SB2Yt!Kn)=RHG~M%5F$`R zh(HY?0yTsP)DR+2Lx?~PAp$jo2-FZFP-_B$Kr;{mT7Xud4QK~CfKDI`L;wTm0=j`7 zpqD@vDueW01vH=zs0VC-9dG~~XaJmm3vdICfCumbI^YBRKmce0f^a9ElK?O9R4yXrgfE{oE9B2TXfD3Q~jerO60y^LW{6GL` z0)jv@5CU3&R-lbQ7PjMi2ha(Gfe2s#T|hU`1M~um0G1*sfC^|p9Z(P006X9SIM4t% z0ThA|AOv&*JwW{tf)mhzW}pM; z2I`Iy8UQa41loZvK#i=SVgZdn0B8jwfHF$31MQ=qrxbuTM&N)4Xad>*15n2a4xkYT z0Ifg-P*Mat;0F9a3lIj_6u}0#03Q$nI)NUb{s_Sd=s+{j0dxa(M+psp7YG9FKo`I? z!qf+e5A+Z6?kDelPl7@!ib3v3E)biXJLHpLss^eCfID zbMfbt=W@>`p4Df6nHHW-KOKF#crbG?Mv?upPsN{7p2|I$cv62dKf8i`?0`Kqo!^ww@hYJ+lFZxjN z!OVlP2TKoRKV^Ks#9jJblXu4NRPM~(k+?&@BTo_jjC3KDPDNA2+cUSvZZGZ2?u+kJ z_T}~__Ab1dJ#};R=Hi~rp4gt!?(FXPZe@4wro>J9P5B#>HySqGp;LKo4z)BZSk7SHL+_-U(9|n{zc`BxvLWt z=`Vj(@+#vh^Ka$Sj_i*34rNDf`{4G{<=M;Qmn)a&E=yddUzWer{M$J*78@&V%WjKr zQ?}(UNnD~|lD{~4v2k(X3+XRJzfim=b5Z1?BNwJGj9ys0AagOY;|c> zc2#`U%*xEl*visKb|gNcjO2zB!}@T3C^=*d6;`BIL{}7JnOH1V8q5yH2bICxKw>~2 z$e)uu$2g~OcKYn-+0$nw&oa&`oS8l|dS>x+na{;OS31M|%RPTu@-*YL!l~&~qo)>6 z$(#~9rF3%k!w|04Du*6|Mp zO8%@r?pORdU&5#R@_JG?^ny3-#ftunC*~jT*NZ(&mj@HQHX%F^k0a8 zauLg9BQ6oSNr-^7z+Z@fauLgPqXvn{ZXp742D%01B9^ItPKn6PlyR7W!;}mR{+RXzZn=J_d3@mta}r z=POwXP`^4tZ`Cx4NITYB^tL24UjX?C0N#2UR}e|C4CZ&6y@V%AbB+) zx&+G_QTp5RnLi(v9_g28q$v|01Id#C(Ir^cs6H2W$kHJL5{)}4-!KEYpj%Kr7uV7w zEk2f;B#L*DmXCp4&?$)c5;fM3SvzD^&7uVV!n6o$Oa9lHx`qg5I;8S#zkAYm!B?!UGYm8Z~{c?#! zOtC;_{m4WMw@yGZT}XxsrzX=k+$C&rF90hG1}JN@vmR|F8%(0{*N_LEV2H7 z`WNE+>?u1=Qk_rJ!9E6ZL6=~;I;#)Qhbx%e!TXdDt6AZMUUu&hyics^{o_M9lu$Wp#x2692SpnQ04x%jLwUwrx{iZ76s zkDR_k5p)WUi%U<0{^&Jh%47lO+{xAw(TB@%~)1jrfa6of>L;kmUdo+goaO-O*8flfh4)EJ&yd*bO5i8m4(lLk49dm_5@Jl4(V;~oF2|{ptjp4bqUk*t$J`@@tXP`^4 ztWkYZ`Q=f0(u+t^MCeo2$>R9wvW( z!?ewuYg2EdEkxV9qZn*8bl?TL*0)(c1q_wEeir zuHJr%O>L*`!a+J7Y zU~fx#1@m#=?d-v>8L$W&rlilNFvhN6) z+)T^yd;waH=fh-OpNE#?`MO}OfjW-Ray(yzmgD)lU~M<7^+w3rMf290@^-SwTy2{6 zs)Lm}Hth`zE?(f+!02VLw!9FMthJH#z80A5g2_5e4#H$VOvWT*Un5L5U~&W|hhcIU zCL1uh3nqJDa+eyUNV`Nm${L_t+3SzTfMNg3AXxRD`rLe z+^{tQTf?xm6Sj83)(C7hU~406?J?V0$(x&Pt?XSq-x#`Q7lx7@KC`WrV|}o-yv&Y{ zX@ji|u+;-w1F%(xt(eB`bHUayZ0&@t9k8_nwuWJA1h%?iYq#0fO5P5$t(Cot%(hnc z>SkLjd+l`Ud3l*1+1d_UIc#l&t$x_*g{_!(?sLM{PT1N3Tiao4J8bQQtzp>ef~{R< zTPu0n&9+wd_L^<2?Dd*$t?YHc*77n#vb6)YI$*0Cw)$YJ2ex9OysrVacEHwl*xCkL z+hA)4Z0&@tPS|RgZLQ>OGuv9(+hex1ve#p_wX&DP*76ERvb7Vo+F`2;w(7985w>Dx zzmLP#cG%hmTU%jkD{O6ttsStn0k%fWwpQ}4H``j-+ikYBvbWJ}Yh`Z(Y^_|%!m!l_ zTb;1g3tQc=6-yC(4%pfTTU%jk3v6wHt!=Qi9kz1V8aCTn$-B;MYh`bj+1AQlx7pUp z-Y^+v@14KU_P|ElB-yA9l8to{vauI7`i_u|`Y74xrKj0G?-bdn(-SD4f1GUWf{nrP z$}P;4W7oWmroDmrYn5qlCt1TQ*QjpTQV&~H*rLIf9@wJ87B6h^z!nc|@xm4#Y%yR< zli8L^j)vKm%3i4GgD*wP4F+_1$BTN+`D7q*09i{ETZ zCC9MYmdak;Y)fTt8*HguLn5$6g)NKFrWtH8U`r!xal;n8{qVV9iyO9hU`r=#@tJL@ z6}bHi%W(vcMmrm)Ejxo)bzTL z#DgSWBypOPR9Z+6l2p!-fh3Jc;z5!IbCSwI-AGcY$_SFUk)#nxxH(DXpe`h-lsJqe zE+layiNl61|+FBC#f9d?O!ri`OC>YO+%wG>v#cfSRBXx<8sqKV)?24l=-t7^iEJO7$>>9 zX_8ZBDrePnP{r8`veySMXS|`}QHb_G;#i)479*gZjbzQ^}`{rwUJ|pUgZF zd!lq8dmw&5Igs0**st%;Kc0Ntc)ajf`myL^#Z2Zi#L&|p$lss5-?+bUU;4i2eZ_k- z_r~rm-BUe&UgnP29i?$Q^xIued&GX754Gll-qK*CT`Vl&EJx|#ki$# zbGowX;K-N9KQ=xte3bqu{o&LHGw-F|jlNsVWoXsM=sU_gxwjK zrLw7bN=fBzPu!l~7uh>~>)0*&E%}?1Hybw>_N4bj_Y`+$cE@(Zn?U}?v0dzj$z(jK zBy;15aeX|0ee!za`oeYT>!Q~cX}v`1i;=6RuN=EVzaqaQxx?5|*lzYDki9H^nR1zN z>GasxHg?J67vf)-j}e%>(73R0LHdH|1;wqIt+B0%^Vyck&4Zg};+c3XUK-7g#z&RW z+=j#keM5eIa=o#>ur9qWyLRy0nKh}^kyVA2>6Ouy#gWWNY@{@t9gYtx!?~fvkUo^B zbqlG%$iVd3V++Loi=9zAJ$rimbmes8wCPjEPG%=f){Fp{IDsvlJZ^Bw%%aSq*rHNz zwm06Z^yYdJJ$g^RJK1e?7rN42(XOa*Bs|{f?U*uo2`IFrTcRz+P$m=$m7257@#c8& zXkfzM?>i!0BT#CX;Qfvxw(&}|zfZ0LU~KKr*gqBM{eS)J?|}GPme}wylb;Q zL>!eo8u=zYP4F?03pxey^rgnTHtRFQxJ2SxLIUIrbP7VE#=AD_BgBmoiEj%DkW-*! zNPv*2@vhDK1aXr@;yaXKn1Ni-C0KrMu!HtmKJ)L|R+`_nSz?rJmI(e9<>+G|7jz3& z6Rf;zTWNXMcAiA!w}lAE8R!<2i&!4&Z;^=njt~Jk1Komh5zABk^Ccp`D?~ufK)0Y= z#PV2wt3>4Ygb2tP=oXZVSf1-&AQAbl5CJ&@-GXuv%Y*$3B_cOCj+W&$?4NITARHE@ip#gFR zx&+G_%js{+XI{h7B`=d`{4r(XV;~oF36?dgziV4*>5-R9H2y?rfSiFY!Lmm6cWo;z z9df%w<4-ByFax=uTTuS4&C(++fx~u46#tC0d<^7*PQh`}A0xEa@|k zcExKY5)ST+k(0zW-i9do3Sv)e_4$R++}EQA-@I z>m`DJO*#4)$OYYk)dVYJ)>W2!%D6=2Z-fZQ8R!<2i&$EH zMcWTQM{)mX^V2p(^ZwV-_O~?ef6o%T8X*7wQ>$nm0BwIw^ZxImEkfH@Y2N=<+I~uY z|L-9G{~fe_w29^h(Dn~B@Be< zr{(wmV*Nk+rLcQ;*27Jb>N-jX`xwXtU4p2tE9i26%%?JDS!L-ayCoVWp#gFRx&+G_ z)yH0|EWKopMB|@?2FMxc5-e*}AA7B`bdsAT8b22rAZMUUu&hyi?6u0$M{bd5{6c7e zoPjREvPSi>*D6aFxmBX^&y;VNfn3lnC?9)S`iLd4)NK;Qe<3X&1G%76a9p&p2<^3e z=Eh#uMz&WX@voGJkAYm!DF}%gLkepf+b5CuHz5IX208^HQDaD9ZDO}eB>r7UfSiF& zK}ggXQdnD9N+R(eLIUIrbP7VE#*o6=z|sdIH*B$Vn>!^M|1C5?&Oo=| z^|X{0qp@Q?qEt4vVQ6K4Ok5jg3v!o4gkIxN)qz~lEhw+LsJZIOk!@xb@0KX4q~&8E z7jy}htFGErjjApxiae`vk3>Tg8XzaXU8p*+Ty>w+C=dCl>Y|payH_GoCqzKbK)0Y= zWQDjt%$DRniAcQ=0XYL*f>((~@X3-O-gP}&LnRT&SD@Cm$@9OSNYGX6sM1 zMOCb?Fos9k1`I^ z8*qq#Zb6)%YlS~0OIc>`3?pmSZ93O{f-H+3G7?2UsrVSk1zm#W6ZFZe_H2h;zu9tU zcub-Z5E>w7pj)t9b=xgPqCe)(&xqyxJT4Jw5+WdHpj%KbVmUwiB_hp~ahQQzuu<>| zdP{Z{U9OM$q-@NV3b0k9Yc^PK-6Q5(_W_Ay3yF0ykPEs5x6^C6%N7_c%y!w4AxoFF zyfb@3BG^h&J_d3@w;%*}QYnx5%$}{0k&SCc#BY_^-t?qIq)mu`oPlmZh+He&Q(0sx zBJ0i{G2e`yl8Cem5s)*`B?yt-v>o%A{qZ(3a{h>UKypx`(IGTI&On!7xwfinY#cG) z8lIMDgel)n2691{AT;o+{g}_}BdC#)VN(;>x}4t53|8j)KO+(BBB?M%G=d=L5`65+pPm8yHqHItL7Pg?0493v>QagU_-$JIe_oGW{U@6D z|0r!I(Dogg|G$H_Ul{fU=l_50@?gs!IL282pO=6Cmuu<~7D_xMzGBAtNNTqJ;3k^G zO*Ds_Xbv~g9B!gH+(dJ@iRN$<&EY1R!%Z}Yn`jO<(Hw4~Iow2ZxQXU)6V2f!nkGyW zFsqManjy!$M~;b@ydJOtcEAB}08XO06M&Ow?gknG4*)0898RJ+oJ4atiRN$;&EX`P z!$~xUlV}bn(Hu^qIh;guIEm(P63yWxns)+l63ruk0dxV~Ko8IhD1!tQ(11Fi9c9^)jMf_J zp#cJ50}Z2f2xu6sX&9|(7_Dg-t!WsoX&9|(7_Dg-t!WsoX&9|(7_Dg-t-FDC(VBMA zns(7T3Nh%10T>jf9_JixnG0%M@PHS5Py@A42Y#@Cw$ZvC8Xy2R1cA2EnzqrJw$Yll z(VDi=nzqrJrqPJ@q(g9<6B}t)mcwei(p3m;;_2 zf){*H1GP{Gey~78Jv2Z7YzRUK8X*i3Xo6;FfmUdPc46vqc5q84bU`=tKri$`6k^a1 z12714z_Uy6f)8q-7V5wc7HFu41_*!+K?p%3gdqY=!qnqz=9U&{g*Ir14(Nm~=!PEX zg+7Qv4EkXJ24N1&1mVmPeki6dS-#k)bgGl1D3ezp-GY{w@% z@##K%E-K1iN*LhJFM4*%RWH;)9cZYB1_*!+K?p$@BG3da&ikyIJX@S?hv(-B5do69#QuBf{#D%s>QF=af2T${`__7v#oDM@K2ht*oxn6 z6Lkkyf6&R*Zm#}$4_EuR`V-Gi@uxoAQ;UD)$DeEbWdr`o#=i}Ux{<5@5W#&8Z|ws1AmhPQX%9bI^558l;}_o=<&b}xRW1|RU_ z!x|rLz{hQTGK5bziaNs8XPWW34ty!BRw(PM5m7fmGjws|w|nqUbX5FF0RJ+GrI4t@ z5P@cBg*NDf9*DvKcozz_U_m_uAP8Y-hBoMg9*DvKc((|RQAz(<6aKOVf7OnE*CFaI zuKr^;S9`fy?&E5VtG}82zx=83{rr2W_dM_A-%Y;jc{le?;+@jlnYZI_m)^?0m3XWC zX70`8o1QoG`BXlfFYHY3tkmeo-zdGFeLeAd`L*0@$=5uuCTmk8) zV^0^PR^Rhf?#aZHC8^YpJyA3>*cBd2KNglc{iMtikbNZaNcrKc%w<=4DEm-c=CjK@ z7?U{yQl=t3DKpyTK9l^6=QH_iDjSwr?b6$0+l%*S?vLMJx-WZQ;=b~|xqFlMmSl#2 zn3>@&d{2Is^8+M5;rT@F_QdTaQ@dW2*#W|t!gzW-HeS3nb8Gz8(kiLLrqoU0n+i9kZ;ahoydiT#{D#u?+3OS6m$&7%CAWFD<+rA`hPM{3OJ5heu6S+c z+W57lYqHlQt|?!go0uISaaAduNylVvfYcVxmfV$zD@#)49+NrqQkQ!!&&j+1rAsrH z#%1Qbw9E>Szc_hu`J(L9{COYE36R5U%Hx$;V*T>cu&r|2+&rO{hKDTgA`kdG~#k0rHj-OpRD|=Srtn!(;Gm~d}&dje% ztqZR!tWB?ttu3CBIU{~XX-#%bVoiBeTS5g;Ua}#6Gs7KD{WmsF=tk;)&A2?83yt^2xcAlP8a#6hEnSV)n$uiRBY=CnQhs zoRB|0b$s~v!g1;2V#gJa%^Vv)wzMF-AhDo4KQ}))-!ngdOzN2MF@>YkN5_sX9;GJc z0VoWmhhjs;cqSf?m*!>XCFYfn$Q_Y9!gECa@YLbq!wZL{4~rdEJT!A?{Ls=N*+UYC zln>4woIH5^p!h+h1G5Jv4lEy#J0N+0=Yag&)ZFmg!kqM+*qq{EW-vZj8psaJG|Qjr z%lD>!k2wIwo8!%;rfgH9sT|2gk`YfNA5MkC;X-4&G1gcNWkT^#NlqL}1j}~LPTC$j zA4mnlfkH#NA=Xf=&(z23OFF9)x@_gFq~)>l{**uLFVv;$Vs*vZOl`b&|1)p|J=wC~}q zcGW)KtJbd{85v!*a{2mIBd4riwsJVJdg;m)W9!$)mkiAtsy?>%v`hHm65FRx8*Sre z89KN?{+sqQaWwpt)x(ZspF@>mm5IZWJ6sZvkgSM8ZM2PBlX%W0@+b+5DAdM)@d8<@ zdHWe+t~_(YWAhxZ&gWb*jy4&n6$XrzjD1&usSHOI%kwT7$CwP%3IoPU#!PE~EQg~S z=LMIH`6dIkLfg1i>KHEH&vR87d0TtR@_F&{AzgR za(NG{9(sGpCFNL?f?8qFIExg=*v`u?DaV-<)Cz5*`x7?rn5vED6_=3XO$cg*w(&wU z*1zv?Tjf<*vT}G{qI%1G)g|O)x#K>C+GrcuG8uNA_A{~HTsxLXf60f-= zCQKq~g|?Bw>#Js1*_x#G!?7z^H{=+Sf88Z<#3Z6t7&OjeB(Ay=WGHb^)ob^LOXMjg z61BphaTbw7A3d+zh89&v?sSPdFAo&5LR$5saa#zviQfR6F{yi4F|5)x6U zjR7Np`+FfPd%v;KRgOLEn=Torn+((n1I9|mOnX?#aO`2-a`GEgfF7%!0JxJbsZ zru|F|{SA+vnlO9ci8sKvT{4!N4Acq(Ml!BcmraXMQyD9lRqtTmamiR=GEgfF7%2w0 zMqZI=KNA_t$5yYZ-o3u-lCjccpjH?#Zj_~%sSmnLbF*^Q;_8~6_gpeYO$KU(4Mtw` zO)5HVF(yBcjE#;|?^@q?iAb6V)CvPeA}-#~N7czycj-v=p7rxC8Dnz4eG0WPU?hW2 zh|_*1MqHRk@ zH2@*00eD4v|D7u50Q_9W|HtLhEtmJD2jFVC?3HozKs2^UR3A(C#nCxS!w`O(eJ%4 z>i2fbMeXva-+uS&uY6y||G!i{{y*DFJ{{a*I)(J?xI%?O zvfhX6JzG?$H=0(V_IX#UkRBCk#s%N5ZNi4lN@vZlgm+)8Lf(a!t58d${7UEORZ@Po z`vw)VpdRckx5&Lh?Vj7^FCen#E){Cpevb+<4jT%M->*W^c@L`4z>bGhsA0n+lD_aU z73$ynIM<$+zuozQ3Wevr^wDFkJb=jf%ks~5y(*7S+7`=0c~c%r^vm*ZqhC{@uI*7z zClNodsmWE9DuUCp0V+LR$pyxX`>qXx}aLs8M;sqk`Tw*HdSA2J0&i zP5z`~=Bj7Qb*e5{Kk=Bo@~2Sm_Ul!s55n^<N4ZQNUAM!z4 zH*IVS$Vt=mVZodEbf8dQ~ZhtTKJV#=;T+rV33tg@q4z!(WOX!FGRA< zFNa`Y@1^n&p^0B^hIW3r1Nym#0k9T+Q=a@s&0X|v{~?d(m+~)VP7KNNdO|%r8f9hK zwMmvS792AF%(rI~Ypf80!JV5`sBX7lLo;+iKMZWRL|%dILI9ee6JpT3Q#O(==!cr! zLIXsgZCtjVUhr%eEa=)T8&f~j>=lC00?i8#^!SH@FPVqfB7X?ALW8VfbrYNNfIM9P zO%tzgxKW<3;5>P%`bUMvEkd7?=gYT62<#9Vqq6C@ZxQ-;3T?Y3zgFhs40XUjRGz-b zLP2d2YIkRp|L%#^ptbQ+^6YH*KwjccgwoaxJzEdmc5eQHhK-O&sG)k@06W}fAk&+S$MC6jNUJQyZtlr zyzTg`JiNUR$Zu?s-A7}i>^Yiu%bvp?&B;P8e1>~|j$Oj@^0JJ-AZyvYS7dR=UzO$C z@wy5fpx%}zXyH5Z3XjTy)NKDyUgiy7lwaEeyJUCL#lqFFaK7q=t2}s)(3zbE3pcTD zS1)hnra@WWi8a__Q7jgvjzy_uQCeA)9u}pEMQLSG!YoP)ixOl}yevw1{8?FZSe^*W z)6DX;usm%nPdm$FvnUN)24xo~FBOftWUFc8g^KXY0sf|M^d=ciG=I}Odc)LSsXi(@ z>iP}0%R|}wu)OlSU*taDVExU@YqL=HqW)d7@3gkaZc}fOJ!Zc;#1pD*+$48V*dgXW#`7TW@?&<5?$0iDpgceSd0RQ6Jp#k1KT+!Q>k%gO7?b8$g&>G#W?CxC`E8CuT zxw4~su2lA%=vB(D8NWu^*7#Os*X_JP+2IYh$ZfK|*$umIS9Xi6Zgy zc)LzM3fPu>6tKIZFUg&bz9M%ZZ~k_htoC+r&l}1P%zIPWb7h0J1F{v^U9xAg`*(cE zBlx1Sy^UXzhq33&lD2mj;a`z|*Z4JMH*NTaEZZ)jdrQ<~>+wO4ZS6R~W7o(>1G{nI z#5yTBuj`!v6A+q7~axdWFy~qn4jbD%r25R;QwGflnS+?(q_a_#ivU9GV zeEmMUsdMkdEBMh(&69iek8Wz+_olXeZ|dSHsk~qfEVPH^wat^oQU+MSHnUhC?UuuG zH57$@XxOkrUY^RwzJOepj{zIy{d3}@S~z;P^4%pPiZ@Mc_2Df`xZ&yG(8NpHvvajP zFS6$db*i)Za8P;ud*u%y*E`$2E3+&A<d{9)|F;upeSD14CqAof9eqR(CY z{nC5c_e$^Xd}sXa(YK;+?%lcTjr1F_H;S)kUXQC#hKsZXGfVDa(Hwb6N@Kg{)aULnWN%Im5$6FnK-gMlp9J8rQ@-9ab9L# zd|v5@*b&9UGl$0yFCCUWEOA)*(A=TPLp_J)5Aht5KR9)8_~61p>4Rbi6%WiD7(Xy` zK>UExetP`H2TJ|f{zQK&mX8+uGJWyBQg605(Od4x^(1>dJ^Aibce-m~XSQQQd$>K> z=4p$!s+QeNJ0e@cv2gKY`}{3zDA(uell7kZyiVz`E?8+RW)=Mzf81ZH%ho08%C))L zWUZ$*Uz4iI`%=EJui#C4W8R`C<6+Qq@k_gJ_<@Z7_wV^={QrQ)Uz_j#a&is_MjQu~ z3oZvn)|&$(s1*i`l>;ODjz?FHVM)laIZ!uoQ28q^85>LnYJ~w~C1c+K_oVwK( zb;(GX4Acr6jFpV&w1Y^K2V-S9s*fpu%_ZV|6M zx`#Nn$3Jojx!8oDR%jdDLx!q1$ZxrXTw+2{E3}R7AxBnkk$>zGa;XVHt1>zaWoeCj!VepCIq!Y+vpzR=(_hOE+JQ#5Y!57qkD*>t>4B>^{-R69)pEam3bip{q)2DxlRL+jJH~g9bQC!KsY~EB z5*1OXjrGQ>6{B$b?$Er-E44vmj*}I?>ymJ-NkFZz!N?-b+fPDep3yNWJK-6f*eid} zCE_|0fm&gMk%;)mM8vDN`tQ3$Y&8+66*d@&n7Nn9*z%$3ZT<%?5!cJz_9@gx+sG?_ zt-5-j^^5&*lUhE!#yNWAD4+T>m&6++E22;v1I9{Yo0-PoMpv#{QazUVLzj#jO$KU( zwsDi%w%-Bk%Dcgt`%FI`gZH7TeS28~zA zf^3~JW!2iXW2;8Y3O(%!o&4jsuBh{Fl8ch@|HtLL|6}CxRXOK>!wGfX-^rN&BXZvV zQ8NDj6*=$!JQ?@@cNz14NG@?X_y5~6_J6kY|NGbZb>0W%G9;JXbL+h8Tm9bukiLHp z$@qUT%BHA^yH+ZOgg1 zaxecIXKPPA&i^lGZOh5J@;LuD&eooKoWIXm+g?uH_L=jyp%&`E4;E;shXx3M4M7M& zBZMIWP0$Q2!qnqz<(4*RhYsk3F6f3H=!HIrLJaz000vc9^c zXsCw<2!IVi2nkbFWh8AdrHfV!>Y)Jwg0Kri$`6k^a112714U@oZLf(N|dgBqxXI`D%98tS0|0$@WBLeL0d zh(HrG3saA?gc9^cXsCw< z2!IViVd`;)xTO)o5P>FOx@pZ!*}4_lpdC7(6S`pH6E|ZtTi%PlS9~|~Zv5TSJ6SpB zzx;OY?d02@xASkM-rD|V;>~hCmrv$BGG|9rjI5j_C=J~km9DOA@^WQm7 z-*!3kzx+h*iR2TWC-RS{9uGgxx&N`pijP*t*ehrM=N?Wz?0GoZ|dIgy@gMw<^2ERJ(+vr_mu9= z-krF+d{^$SMH-~R7+?2j4c2n`j%#HCIOE+Y1NZe4q zK6iccde8OwZK-YHZH2Art+B1e>oV8HuPa@fy*6=e`I_7{$!o^1j$d86DtlGps&YCv z<1BaC%M+KEFUwt)yv%c1{?gQ?;Y$nB10Z%u@nUsx{-V@H;fo5J)0<e%qHg$3yau?5BXnfdYgrDL+kB#tQ` zojW>t^!T)~d(Tilo{ER#g?Z_Dv3bQKGDpOZC>@?XJaKsWu-swE!#s!O4^15!KD2O1 z`jFTm#e>zs`GZmig%2tmm_9IeVDW&N#_+4>=_|#uu|%vK%|(;Z@%@hGhr0`1>8@B; zu`|;d?<{p>I}#n`_FQ|i-P4|LOSOgD3a#nZSZlFGwd9*q&Ee)kQ@SbERE%UI@klA0 z4JX3o#$02v(bJd@r9$CQA()mjzM`G6<8~>K4I~2PhFn9kVf^<#|NqYGHb3=48UKH+ zRQdkDpZ@=U?Q+oMJ`YE-P#bOIOb1OWhqF0ovZ#8L`ByF>_nQ#Z3Ty}Ftky1GJ#id(`N;AG(jeg&$Jr`>>k|2} zghdo;W57t{mi?R+S{XrGyLi+w(EN8U8IPC@)CvQ}N`^VmSG{Bt2b(3sG0yz=E*X!S z4Acq(#!7}c&bR*z$1w9hxMVzLGEggQFp@Fz336)}JIX%((Iw(>6M5&%|0byzKPR${BK#Ynh{-VXsT%QxX^f|XrTo;E3{6$Xv7NO7!b|Ll^o!=#{A7&Oiz#j&pa+9f4t zQcx=l8fTH>sA>3(OUg4Q1+~JU(LH6@aYp8ET~eNxdyXp9#s(v&D_AE@XP9 zRnFDTF^KwqTmoN^s8)sAXd4Mk$(A(jXL8tKRbugQ_1g9?E+H?P5Y!4AjfCuPY}iuP zxR#|_GnQDj+A)&;uP!++nH2gOaihp-WdBvolR%jbZxon2_w>n8#HtZO#`wy3pH{_0^3biq4yi%U6 z{dJ^aU(=#ijtvhdDm{ND_iv8g3jgVn`IgBxVQzrTk1l^1MuSQ_eAdSOgHdyA@{J#}7Xot-{HA5(nH^r#OcEn?Khps~`4 z{)%a);tMU#SB zVbC~>6vrDkd{yo_s!$t)Mp9h1(Ml_q$!*lp=R~_?eofLM3biq4 zoW+tYsD2x-cS-rWNkN$yUJM#%k#cNxjY5M<$~R03%G~f`$T(AqU-`!^CDWg*SRJ1? zq;^cT1qisreAC3B%nxs3keG(`HQwiLsq>yBbpSuSyw1CEx!?O=m&w?_T!!TG$CpZ< zez_>QJa&oH1IT69Qor|XsR8&u()<5*Irl$ws>~Cxw$8hFbDj4u<=p?RpRDsnY+cE@&A=SuNwc~d!PC{&qV+K@u_jPbN{nd{$Tx%hUeCQwc~$xh_Z!r@&`{Bdb`or zgEb7HTeXa#TXhVgTYg5-EsJ4v%Z#I2^$et24UD8)0fy2oo3V5&$Y8n^Vl>@qWH{Xl zGoEfm7*MyG7*V&HX@G9E&;i|QWiZ`p3t&4<(5()-pj(}^LASaZ#gTFI&T?LNn45ZN zh;H@L5#8#eCAt-*C%P4*DZ16)h6C+5$OyYNhaq-rZWkWVjR*GNLA`izA086LLt}VY zKOR1SM-1Y;IT-is5{JBaqz{j(!J}*Om^z%#V7s+|(RS-tnxtFD(IwqFzCoN^j1y>= zZkejimQ@75epSrc4hU(S^I;vYKTB=*;(^K8LfTrr!M#kr@O$^Xm7t&AN+Dt=r z>moX;TNl$(-MWOH>ei(+RktpqtGabLZPl$S=&NpBNn>?u3!T-iG_BRGtLUw6T}^X! z>l(VNTi4QF-MWsEdTT2U)~#)HShudH#kzF^J=U!o)t-+Q<0g;%!MfRtxA^eZ8XT|1 zOda0l$J^<-ZheB`d+QFy@2yYLZe6;J(ew{x9*MLeNA{j zeb=q+EtsYAy7d`auUnsO#|Jv_!A^XLfqd)XZhWK%AMM4*`tb3nIQeQk5#y#O`|+s( ze0mUf%)uND*{x?7+qa%&aNl~a20zE}zV$rg`_>B#@LMl3!f(CA5Wn>@WBk@D4DwsA zGRkkg#xTG2I^+D-8w~VYI~nP>@(lG`Z!*?zy~SX^^){pZ);kRMTkkT?Z@tGrzx6&N z{nqCh>bE{%tl#@gal$))yJ|x4y)%zx8Ft{jFUL{96S^{;jVt^lyEYv487p z4E|eRXY}9thH8}2!Ebu-54`w?KK!E^{8lagaUFi!kKeKIPc-hX$6^EiX#l@#f7yY1I%pJ*;xGE} zmr?xd82+js|7HOHb`bw=4*tC-D*l5P|Ivs4RD*k|6R^q@3RwT_$6s6c8)^lt-`3;* zp-MoyfaAYXCt&>>g#y;UQz>Bm2c-g&i}9b73|POTX2ANdCj4)z2K?(4bpw`%!U4-m z<$&d*bik^icEGBoc)+Todcg8iK44kY4_KN40;`@10;?g4ff(BT7#u)3n^h4q+dz(oNZwsCO~M?$!y5l;!@sS#Y-gr_y*=`Fad6_>Z+igsMtfuo(6?7~&u zIM#!!dvQ%4o)N{ho^f%V7tf>&LEbp<>{@YhG0v&urgQyx9wiC##(^6sN{}}WJfE@z zdE>y1LEIF=3n@*IHx9gr;skl)z)L7kkT(vztQ9Y(LP6d*@JebF+lvo-fH2v#!Nll)_}JM@Dn!P z5yVf1@Xkj3R2c7y;N4AlPcweH1@CRe``YmScHG{9*-rdS7k;)IALzjcd-0(@d^n1a z#PHF6d~5(8_w4*=F`n?sAFL;R_*4x(U5h*FFz3f-EPPhubM^SS27Eq%FWC5E5MK)6 z%Z>O-7+;OxYfboiGrrM+J6kc|hHtjxTOIgzC%)5#?{?#RJ@|eve!dSsh~gJw;^eFG zVLvy0aR9$Gh+m$AyXIm+?H0e{!LNGpYd-vX4Su5*zgdTW;Kx6-@Q*Zps~-Qj0lyu< z@7VY!LEIg}Vk7=(7{43A?=|7~oAC!N_-C#7!#4c$cKlHX{R-+VSOuUoL$q^QG9A3SUfp(euUJ zhlvkMU&wr6=Lg9T%Ae1EKK}XQ`|0tA{y^Fr)}f}H8^c|P~K#OF%SWuA*YS9mt{tmoO>GrM!?TsW8Ck=#*!IxA=U7oSQ$ z6@DuJWKyaUvQNa#d<5ag^N%GTD?gf*v;K>Zq#p@Cl9zgfvYCxw!-Jj&a}Ok>5+U>1 znA9SqWF~@KHjyoD&&WIkh5J)dhmez52uk;6?u|(mLh93=Pv`DQNDV^f?%3UhyY_x6 zD-{UEJJWZD@63NP`N{Gf**oHQ6hD#vMEDc=+mpAKZ_C~mzpW@|{f9I8@#J{<)~w7t zP`o95OIRuok~fb_)j{FL)Qz4Sb5e6qx;}G#?D~RK9C)_nwkEcgq~0KQUE$i)wVrEp zGS@)q>de)#s|#|@zvrr4I*~4IY21>(GI?eBitH8fD~gw=FAraymnwturP=+=Gfq>dnS`cA1KD9hRY@ukI6(=v}hUTO%+ zOR`JiONvrK5FW`dPA)D>{Xl%UxG23SEY$bqcTUujw&3PI?{7wZfJKr zE!6_~c}bZsAS<;3#lzDwTR>ha1s?3<%6;^S3ptf1i}aAWu}0# zoarB*yJ3!JPHr$Ea|C1tVgrT#RKKS`C)EL^XeJtq7Wz_sp1z!%>tE{0^u&4!a;Cqh zJJ*%yDoJHPth3Ouw>{e)Z!fl`r6wTXnrtn%WLx4b#pbls1mv5NGAlq_4(4S(fbl>~<^o7Hcp7r`37H8XqhrzoASLqv_ka0FKM^>L$A99KLBNKyKVaPa}n4_wz z9vWR@zGY%iD-0QD6La)@Ub%_Ur?5-RpU7QD6>4M9$jH;oM;B%6Y5E9&qc3R0C3Cl= zMHEUIp=cYKFM5BiXe;9eJW95Y5YyQF+q z?m4PZ8-vDKJbliCvyK^PTU;`~CutFd+GrcypFYQ&>#Z&!-!~zs6$Xv&PoHzr^){E3 zAD9%>3WLU3q%5i)VQqIw`7@J(TA^)ZfN+1S!o+x;tO}0)_#G}Ge=c_%Rj7?Y<1E&M zO8fJP!}RkV6-1pbnLm=Wh(c|&jqYp0Q1wyzE|-uWn-J6rgGTq)$T{_Tw@XS%?m4DV z8yk$&3|ye1)82_HtwfrXR1KKU(em7x`Dx}as2+#xaY_7{NkpwMV5}r=-6xUqt7a0{ zeoSPqOXSZbCaO>y1I9|^{#&A(g>;OLI~TIgCGi&~5w*gAv65Kn@>{i}rvA$$R%XPR zTqhla<58Eyzcz`e6$Xu!#C^}(uM8>6(>mrHke{EZeko%vnZJ^ph(c|&jbv_-LHTJv z6LlJi#nVch`dvc)#)P0&XdB%_90SS&E+KzwLQpHTjqV|i@#I05kiRn_sAaH+l>!Ob z-~Mo-iPB={4CZrOGXCCVpjH?#Rx+kn2B^vQLyMO>&fTBulJO5F1GPfiNJdI(XQus3 zz3hqABh?@G4sZ$iM-zftVZcZTeASw4cx6lP}1~ zis}z~2f1XF<$j|IwJ~TUgLdrGeoWa#3%k3qRf{HfcvQH~UsSza9_*6&&yp5VsExLf zOr~0z_A~VYt#+0k9^w-6YZHQ6p>1>zacq}|x`h13grHVv8{I=3+vQ;{A-^>ts1*i` zw9~p=R)lFkldIbBa>q0fhr49_i`;Kip*Gq^7UXg%o}2b#UJ~B*makdoSPLA*1V^|; z{;PyV6l!C@NZhvlluK3CZV7aJ+Mnl=@oy#rwZee0k}*@Avt-CRuxo0BKkkz8?g z?*Bp=`~Q)Q{a-8R|9gi0-p9|Eego16;42BKB}mtKf3u~|d#_yP%0+GPs{f4Ku;<4z z{(oNe`2XmADq5_J|2H%;s1^&z|9mzCAq0&Oh6pr4GqgY}v_U&`KqquTH}pU+^g$G2 z&<_JJ2yMjC zz0e0yh(SLLz#z;4&qBcqKB$3Or~^M(prIZbAOJQ5Aq0&Oh6pr4GqgY}v_U&`KqquT zH}pU+^g$G2&<_JJ2y?)*LGXePYM>VCzz-H^sD}m!fDJ(iK_i4A0!`2iEzk;W&<-8Y z30=?)JfKKRwZs>tt=z}Q4pdSWc5axhqhu{St)IcrNfgdc;P!A0d02_jWY{4O}H$oU9 z&;-rU0YM>VC zzz-H^sD}m!fDJ(iK_i4A0!`2iEzk;W&<-8Y30=?)J!>Y)JwU_%f>&4%TX4*1r+ z!xw{o7y!yVd{lY()Iz}nUZBFmM}dcr`VJrE9X_f%d=z)cBc!^+M{$Rbq7EN59X?7r zd{lJ!DCqD}&*7t-!$&oTk75oVwH!W5Ieb)d_$cJ?QODtmMG z2lT-lsM{k1AOh{s3xnX_d8+&_G(iXS!5paDB?KS>?a&K@P`g`bfH1T{4-7!fUZEZu zp%uEJAH30}tX)D7nxPY-;29PC&^>yZ{08_o2pU4r0$mUT?-s#=AT&cKM8PvI_`!xI z=zu;@JB2z3Km^*M7Y3nrx6lA#XoDUYfSSERJv2fqbVEOI;ra#{BQLz2emnMd@vV%E zl9%4h{+?&_Pw$T(e!lRz^ygxqE6TWe{JGMz*=G~amY>NzlYGYWOg@*A(euKN^p03n zxBSFYC5$14S84kAJrGne1m0pDAZ^*<{v}&2LX_56g&p`u^Dc#rrb%#br!A zdvEmK;-@p8j(@szPgX|N%XjDQPTuXgJAYT|uJB!jPo+N4CFARb+tatJ+w-@jZVTT=U;S97IG!1gkC$YOJz=`*CvWk%oZr7^TXtJw zTX}14YjUe+YyP^_bzvEAPhT6mws=kEnz)R(XRl6NUA`)JRZ_;>^XXJNoGxrhZ;5Rw zUYWTve&wz!(pSV}md8y~p{3WSN!j}{-PG20mxOh?KqWDFn z&DqU~&E*SoG6L_pFuy6aDZFXNEY9)w$XNVL9r(v(Jic^h_RPeY<#jn3k@u|2uT8BD z%cy+%jMy2)HJLSW8JEwlPOL7E<;IdSGM`_SS`}VZNTy|MzBsyJG(1{ZnO+%NS(MTF z_=?i1QcOP>}yt++I^pL6{eE-8=XMv@~Q8L3Y#4lgbY zr-x%QR-aiEUsOtD6A2lu&n-+Y^eoJuoRabS!b$0qVkZ@4%szf%>4fYF(G!ZtXO54{ zsD1Xh#Bt?gbH^rS+&;e`wIIBpFh4CL_r+r}$Hb2*9i5f2`|?q_qmoB?j>^mEefY@2 zP+Z{Bm425Qg^mH(OvG!btStzUHQ&bXIMt}(;cynVtYnL z_)BfswnSUGH78^Ip4NOzswLb~kWv0vbFnGY6mKfYIDaBi4(Gzjut!GvQ;p%qLMR=I z$yk3T7!Q{0tevpSfm|RN@C5QQ;va4()TirX^+g%;kL!|^wGvj@pYtdE9)G?rRTq|V z|8#Avwpf#?iOa};)|c>=y*Y2v>+$A2DNoo_P-!{Rvv92YxSz=Qe|qBkKj;4+uUZpmv3)M`A zL|2V08FNgdeT+-Uf14203T>l%NWA)h@_d&NpO+(vsExLfF@*hf=I7~ZR*R(rxZ~8p z`HsSY1ul^_5*AUYjkb|j=z{$mNt}FzhUYD=9`8KXC8XAbpjK!bD#N>8rv?&+k9JJLe3DB@ zy$M0B&^A^=%xKR3LylQoJ=AluOGtwWL9Ng>Rzl3yxBrm&j-JK~T|#WRE^-M8nGn=6Q5DODm5>=X&7~`x zo93`fNLcPNs!$t)M!LZ4?}YNo0QTzP;Z^bKGs@R3a1?SZcFBxLT125X+QzMFv!ZGL zw4aIfd+jO9bxCP8DX0|&jqWK4$D8$1my|Y>f?8qFIExg=yY*=< zDIIdpQH9zVG|pnJt{(nfx4_YQ=5&|LPDzU>)W(33;pX^$_6e1Nzu__GO1;b_qswHV zRv0i=GWOkarZODs^m3PsZj*spVZd0)*!RtPD#J1MyTT=-$7G;ZXdB%(PRE=YD_uf* zO$cg*w$VN0$m(r#)Fq_PgrHVv8>zP2G~*}SrNbj*@#?qHq)SNDgrHVv8wt5WF4KM{ zc9=_tR}4G0nN=#$;6mT=76L{6l$YwyioR^7tHuh zuw>3}qiOA(OIrslmxqNSl-+QH;_g^oUhmZDqhh+T!+cNflkz9Ooc}m9qkCn^!WZeHs zx%_9`?|nEaeFo(6Z8_)vV(I-~D;JsPT^(_-t^Pv3|9|HfKJ#+${eRB9-%NjL%%3L; zg3RmVC=OiUnEPa%%X4*vJU=mo+88jh*$na=0dQPFyyOXl&C z6H};-wsEG+kDlA9PfnHRHc|aHu-+x}L`jP()W)E3rp%9?+eOaj){(ivCG#YciCSUM zIEzf@bGxW|Ia4l~i%ceJg+ZhHTkKHvm#uA!9ACE1cgY-f)1H}o+dONSia zwJvbUSZp#-D-0Mb88d$@9ddju-RP1rVlq%G3>YgJGk+`{a(pb^r6x0fBqx%!)_{w;(OUP*^1hqojSo!?6?-N#eRpdkBkmK{)B`zT=J^=X5Pi7?F^2r-T__a61mz$qE;9% zretSuwY+ss`!NFxa)QLz#4LjoCrB)Ed^)(?C2@_UL=<~lRm>k zYZg@>#lFHNZ%DX0|&jg@s|=4DwSDduk{ zQnt9HtTQR76*d@ojb@&0GBM`(W}J43IMYO+R%jcUmywRF(|#ttPmZjU*1XlzK+Juu}NTf5xxj7->)4pH3;c~P zDVybHM>N_qe;kjtM+@4w6B zQYV+390NG~c)#}#rT+iI2>JB#bQiN${Jx25*~Ou77Gk>8t^%kQNA|1P<-%CUfFrT^bNxhSb~ zTKCQ3#-Gaf|JYxD^!=JXai9wmk+{EB)VjLf+Z*hsa#KfS?Wo}|{HZhLR)VI3CTxw!aW-~W2IGY$p$;7xz z%w;A9Wj=FJ<};s)nW+=Eyf%x6tKZTxE+Lnj5S01MO$b(&Ws74AkUvbkZ%WAMlIog? z+gw7fFd-=OnTtVVCFEoGFiWcUFt@v;Txn8JCNwuGSV{TVJ$Hk!WTKUMazmK@=I$P8lIq`3v<2&}S z<2&{zT{5qeoQOi1gIu(Ymn-^LTt35kv0OS!JHBM!=@PQlgrLkqE(VO(%BRAaPb^zA zw9e52{!=a)+e`*(g#qKWvLKsgJXo-1bj0zQ<1Uws>rDpAROcoGH_9>pt7gntymHmN z>N1VHT{3Pk87PyRiw(vL%~C}7c|j`k&Mz5peB8LlCE`XCfikzbD07>O%mz*6(X^k* zeZk^YBlD{F1)p{axygi}%xx~p+~(pn=7YNVepH<^Q3$qr-LT{9^}Q|`H=7KUxy?-m zUiGmVt0bd(KX9K*#;tOXQH9zVG|pn9oI0u~Uk26bL0!TteG<(|#t746PX+UAfG$fj;Vza*s(tnX}!b;4HQs#}@jSOUkEB z3d*GICIx4a60iQY{br(8m|n-G*KRK=k2T3L>(_wx=tvD;ie zHnPmIfj;e$@}S&vOrbW~#%tvzVb-B(Kjv*lK5s5s^-*E487~`l4E*nK$$VJSq6%d$ zH8E(MDRbg8E}4$;GBV{1cN-T$xTyZ5v+L&&hZHA^QKz`TrNn#Uph9PssTH(b5Cp zJ96&-X3qbY%a0%b=VSg-zW;CiRn_c}}M(7F-F z8u*+`=F^f8Q7AK@iMFwldH%G>$q!eOxoBDSQT@-kgzPXOC=;NW5Uhmk``%aC6-kJ* zb-?ayHg^$tC1-a>r4H+88ueLOyn7b9|B?acojAyJS8uX%U4ot(zD$Rx{8j0 z%YyNy#B)2bgL}m#IExg= zw)37#%G)LdW%fRkg0n~&s{WSxzDvrxa-UI!+88u`-0RY!WWAR2NU8>V*Nr%e06*`N z`JSXj6l!D8_;H#3N~UAI{=g;WeUpM(VbC~>6vuk~1(%f1n-r9p2~7&lBE_*@f9R6( zfk{D`i_oOtEK(dJF<*2^`GQG7nTyb*U?pYWWByb78<`We`smA-Tv9$XDJXLhniQNx zilgxU%PuKjG$|-^5tFJ$b0n_R-z z%5i{eWNyHXa=bwL|80{?jT{4bTE6!mCztQbcmFMNX^_jq3;o_XQNPsxd)2Ai{^L7) zr2pUje^dGXZyxrp`&4`U-pUe4L#C1OiG}gVA2dCsG(Dv>J*6}~r8GUIG(Dv>J*6}~ zr8GUIG(Dv>J*6}~r8GUIG(Dv>J*6}~r8GUIG(Dv>J*6}~r8GUIG(Dv>J*6}~r8GUI zG(Dv>J*6}~r8GUIG##Zh9i?;(=qRP>D5dErrRgZ8=_sY?D5dErrRgZ8=_sY?D5dEr zrRgZ8=_sY?D5dErrRgZ8=_sY?D5dErrRgZ8=_sY?D5dErrRgZ8=_sY?D5dErrRgZ8 z=_sY?C#9<zrXD9f zrZhdKG(Dy?J*G50rZhdKG(Dy?J*G50rZhdKG(Dy?J*G50rp$z5njTY{9#fhgQ<@%A znjTY{9#fhgQ<@%AnjTY{9#fhgQ<@%AnjTY{9#fhgQ<@%AnhsN%4pUQ)lTK5bPE(pr zQ<_dwnod)iPE(prQ<_dwnod)iPE(prQ<_dwnod)iPE(prQ<_dwnod)iPE(prQ<_dw znod)iPE$Gt{V)K7ptcAe@PZF&pjMcAoORsd2MaXRLjwfBh9HEX5yB9GCTNBhXoWUt zhYsk3F6f3H=!HIrf@fUtf)8q-R`}>~a*H1<&`=Kz5C9v35Q0VsLj;MjCz0e0WdloCJ#*cm*?KW)dz>XNkJkb$l4b;)oYd@oo_B3}7~hpKZhk+wsXxe7X;xi;6l11N`|# z&u+Qug&L>>4fW6f0k9zmAqYbRnxF+*p$*!h1G=CadY~8jAPO<)2en7=fERpF1GP{G zey~9QU)tUSzK!Ed|DWAO8=?>Z8`#8Mkd)<4$d-EnBvK`@EkecJ5#bg)j$^@9ZZaUt zy$SB!f_t~%l3s+AyL1becDXbmy<8F@POjw=|DI<+f?QhEBLDmRA?=ro#m+o4J2N}G zJG1Xgv=DwGKm>^p(MlMI)c2B`e8o$?=A%rQs~>MCKixxqK8(G6KZr0)7gv88<7zk2 zOY{>aVG(gc+XWbei*OTOLJ}>6p9l~^B1H5ctnU|nx!TAHRPoM1CzwzTHk%I>~Q!fwG&c-|gXQ zA6LKM&(#60{!rTn{@5UQy2+n<$)8K|mwxisLGrgD5N#N%zmJlCY$t1-46rH+e%Zc~d`mOPst@>;kvwpV zj|9obTFEEEpp0_$$#(MTZt{hQI01h6qM&Re+KFCn{6;_dwlu*X2FRa;$Z9JnBSe&F zCpw8PqKD`wOk$AGlYpD>5iLZ32oVvYo#-NZh7skf?c=HE=bS%rta)El+e zi?63&*WhC>Q;L+z+p^m%c-hOpmUylDYT?z?tF>2(ucTkmUMaqudb#>i{w3?B3ViJ) zUaY*3eIfEf>G{m_+VjQdQqNVN%|C0wYGCFW?U~}!DcB6mKV>~tc{2N?1&e{{Vr^?- zYXbHHvrkx0lpoJLu039SEcICR(fp&9^0#L_Qhqr5aOC0ALuptFEIgQcu=YUVfy4t< z<#DeHJAoGL1ZM8l?k(MuzDK*Kcy}6J_ezCKAyO!B$-?hm<*xi)iMy(I7T|fWc1Q7! z^c_`L3AAo6-s?n zO>T8!b#+w%-ui0kVmh7H(k1xoYu+ZHSW#M@f#1IJvg|TzS!HP+p8Kj}g|XCFZL|pA zecEVgNoGl8Ng3Yzti_d7K9xvS;lD4HtQ}iCHhpaFm;^ld6^>3FT|26HR2n|~N=Ign zj2u}$A`35mmBaIgCl0S3R)8PB+M&fm(}!w@mf*=Ra!7emc9FHHaa(NdKKnUXbM(U*qbzmhlOjd;tREIj{J+$pcjkKW| zC3ydf=w&UdS<3&P`>(fNS;hFj=ePCyf4=`eYyST~J3KV`vU+Gj!n2=xXhJse(BzPr z&(go_pz;-^Lc+11QX!jAIdtYT$FDf3d<}7$f`r385DxdiW}Z1V%oA`*=Gf@od}J~? z#QIeS(XT@yDoCjqQfwk?hs}KE_%#QWZzvT~3NobFgv#MFCuM%!LFJoDg_ME}DLShp zY?GzG;h^%iQX%26P^pkjsMuc6`lf@*4y8g$L538YP_cQeeA_{#qEtxuC{!wB6Dl@` zl{*|%{za*fQjj6VCRA+xD$(Pp&+I{23vUt$p^0xP6%w8hl?vH}ip^c+zc{FT2XUH$ zgj+(eRk4{yI`g&UlgDgkC%@$&`dtV`1qm;OAiNZUO=RtmnT_<@4l3VMDkQuVDiyK` zl|yGX((gE^{HszSr65C!O{g3;b6)0m9aO%rR7f~OR4QZ>Du>UUI{iHdm48zzB-|e= z71CK{p>0(9Uma9_pj1fsKU6AY6Dqb*>F+zJ{7|WoQjj6VCRA*r(*Ne5@*|}}N5M92bG^7W>b(-u~o5|MtYEK@Y`m9@`nzhJ0TYpB%XVKA;l)LcJRzb`XdLG zpCe{?a8xQ}t6Fa+Yl~)PZK>_OjUPLR{sKZ#LBfe67*ecfO||{{nYqr%dEpqCgdx3| zS^J5D$}g1)DFqo)Y(m90FuBt~ zlK+K+%D*cW5?&#d3fY8;?MnWa4k~{@oTeb*vJq@mY^ISOVr!(fmp6XpAo@oLMFj~T zj$lZ!iLBYK8xVElK-uP%Ab@93Ga|f zg=|8_b|wEi2bFh}3JLd+N`-7f1y}Osom2O5|L&mjXQe{IKcrG2>nid(m;MyS|BuG< zJ&gTlvG}pvkMaKz%mer;#{SR7@^_5=KZs=^mak*{|6DA!lfC+F82|6Y-)$KCe;<~g zWBh+3mKc`T&++KTVfiJ-{d26AYN?J4*~Ia;-F^JQLFGS` z3MmB{QfxxScK7i|2bKRq%%&jW$r5Z;Z05vrsO`jJvrx3lLG-^N6cr>~TY@3QCbDL` z`=~jn{Et#0;oMTGkWHxA?mqtHpz>FxLc&#qQX!jAvE6;V?O{;`}ki66{%E6cz94MWD_d3yN|y)sI({*5-uK;3fY8;?e6364k~`7Lc+&`QX!jA zvE6;V>!1=)Dx?%-NU;eO+ues)SHEqX>#<%?sgQ6bp;X8wRBU%2nuAJ6sgUpIFL}H zWJs+yku}@hhucA=O{tLZAfZ&qCRA*9A07vlcBMkXg@jTeomK32A6^HQ4y8iEg@jTe zn^3XcefS(yI+Y3u7ZOT^Y(m90jvyUWx|9kD7ZOT^Y(m9$CEwzp5>qOq6l6%T2^HIw zyx&2kTd9z6RH0PJCRA)!@&N~xUc_k%5^f{FR>fu-scjr#sm&N;&_T2hLQz4&j|3P} zY$9v6EBTOvO21Me;YmWNkWHxAuH;)CROTra60Rha3fY8;?MgoEpfaFTNcfUaDr6HX zwk!FFgNmtCNGZsWqO;26mHf=7ue)3SC*1c>VEG^1^WTf*04$%tz5i<5`~M#I{WoE; zuzU*l{cExO5%>MKU}-Q&Dv=mLMbWFl^`SV2vF)T|8(_1?yz65QBLctYdbt#*Y3S zFU>rFJyQ{M?64i!#&%9f_xA*isr|Yr)Jh>Ah1%^xGj`-8_F(r^uo#1d8B8)*+w5SC z9Xahi*ii3gun2>-Fj#bUu*Qy@C?D*dQtM%`D1-SKEHXP-V@J-apRQ|t4A#zIK?duY z9js9)`?2G6T?=vNdEC^f97|fa-tWg|% zk7K$d0u0v8U~vXBX9sKKk8gfVmsXI$dKhew!3JgrYaBwpBQjm0AqMMZuptJUH#=CP z==oO3bg8#8SRaE8Gg$xZV2$d*_fV#5Mwr3+8BF7uv2S*;Mit^qE7P?n%3uQwW-yp{ zX60bHHL4k3bD6GTZ472In2W(Yvx7CNB43R0cTd-ob_TQ<(9M8ud%zhx@@1OodeXsQ zaR&1+m}_>hMm^!{H`Dc`lfecV%*$ZL>|l+0!WVX?>q!@b4KbLH!Sva|8uf&)_)OQ6 z7=sNnm}D?*cCbc0;Y&f&^`x7@v@n9TFxarY8fBcm}IahgSE^K)~E`632VA4#2KuG z!P*#1&JNb73VdU0x+)AYSb)Jg7%VzFSfeToW5?+d?&Qv58#XmcuZx>BZfX=;jGJ_B zY7|K~HyPa2INUwl-O5xT%r70dA7q)JVF?O)cEi zIFni2`mSnN^%y&geqM_Tx=2^BPaglA-xXj57Dg+KYliODzpXCwyYHvO2f9%%Z;fu0>u|S;3_h)L-xAudo*euZ zLPB~2KEK*s2h#0Z8=`|-GuHhc{kQ3?m=Z3 zF9PC8V8`(cgP5Si*HD7}+a^#^2#e5m0tOKw+K3LKi|8hLiGD(ZBiW#f@DeSAK9XVW zX`#kcnmpTA3ip0U>0sy~9Ickn^3WlZzv}f=OYG5#5}e+O^m(~a9WoUWcAabE$akyX zE_^FnN$jY;U3fe7cI}(RZ>GPgeY5n9%r_$6D1SZsb?fVuujRj%_*(U=k*}7&lKqPH zmCBd%Urv0v@=t{?roLGDeE##b?Zxfd=SrW=d^Yk~?K7oMWj?8WBJ#2Fo7p!Ducuy5 zl&aez+Y+xQmLCc&UVULh>&ZpHDxZea?C=^=$2#$TMZU2U2*d z^knAAd@)f>Y^^?_JyCkR@>u?{;-l$DvyWJhq#oY-VERGr!O{bj`$z7p-dnggb#LaL z?S*W?Dpa=A?i#;SyR&ph=8pXBJ8v!An!2@iOYP?Io3xusH)d|k->~!g0^ZfAZHjDK zpWCr9zcI0~inlT*u8v$?zAAfF;mTcC6t75Mp7x<)8}gEmd>f1Ju>+YMJBU-^1X@L8RMsGrik!55t+lqYCcmb*TC6IiGwDb=F}~%5)CslYi^rFbGv8l%U;cfG z_oY{CTb5ZCSyo(lME1@<%6*<~t15k(DEAhZheoAC^6=aA@k# z4Bl8sEUF${J!oR#&XK}M>A=i^`2!LMr1#hMxAv>-Tia)RZ*A|=g3N;aUOR^i!>Qrg zP-JL*+=^GMyj3)(-ZDt^Z<&0vpxAB3wswk+QhTO7(w=DB5=ljB;bOSlYKAJod@vEL z1`2^xpyrSG*Go%Qe0g8dD?BB4#vO4dTwC;%Uek)25KF&!>F<7y@qhp1{lD`6mwZRv z`%lgqiaIoG;gda|@2^HJuWV?gPpi&{>c~hy7 zO{myLCp#Qeh7qSJNU7MW*vx}R+uX>dHV<~44x;lR7Zs#b3@J8|HQVT9mxIbaDr=+^ zWUFE`S+mcLv^kKAIf(8Hp{O9?@e_o{Pq3b~gH%aQz|5Ud@2>P z2^HJuWRHW&{z`?Ef($7(p<)}I>~&B%K&g;YkRin;RBWS@eGV!IDiso*K9vgDgo+6DqdRNz*~) zV8m$(QYyA8Hq%J$b0ck*l`IF*MUaaM65dI{kYW>AvyD#19aIicDx?%-NU;eO+vwz= zgUX>wg@o5rr9wKZ*heRa98?ZdDkS`zDiyK`72D|Ku!G9sN`;hy3@J9DVjG>D@1Syo zQX!=vLyAqP*hVM!a!@%^sgUr}s#M4(RBWS@3mjCAQYxerWJs|I72D|K-VQ3qAZAmL z@WcwXDmK$d?eh$6uOjZ_AbKo>qJor)A;l)LW*eQ{*FhzzR7fevkYZhBPqT>d4agbdDK}(SE{tC7!(n%FFJL{A43qM?AjW2mm zR_iZ{%-Y@dbvtbTuh{6-zqdbp@?re{e=+`lKgR#}H2?o3jQ`g#_RsnM!&p9tvHw%B zyo0g-JFx79<#mkzPtE_&Vf?=b%bOVgKLN|HG4{U+OK_D}&HrDRhED*D{ZGyR|6=v0 zpZ*2L|Ihg&az6DLxeJdR>h}KzciaIxR@M;y7y_pB4B7xRXamro4M2l701eszG-w0R zpbbESHUJIU05oU=(4Y-KgEjyS+5j|Y1JIxiK!Y{_4cY)SXamro4M2l701eszG-w0R zpbbESHUJIU05oU=(4Y-KgEjyS+5j|Y0}v^s6+nYl01a9JG-w6TpcO!aRsaoJ0W@d@ z(4ZASgH`|yS^+d@1<;@sK!a8Q4O#&-Xa&%q6+nYl01a9JG-w6TpcO!aRsaoJ0W@d@ z(4ZASgH`|yS^+d@1<;@sK!a8Q4O#&-Xax`{q#Zzmb^s09|1)U+&!GK3gZBRn+W#|X z|IeWPKZExF4BG!QX#dX;;X9FjLMIHuMYstM;U#GQ&!GK3qlKXTKZExFj37b#e+KRU z8MOarL^ z4BGrNX!FmY%|C-S{|wsvGidYApv^ynHvbIT{4;3t&!EjegEs#R&TKI_H^ndsPB$?) zdBotf4`Ybn6bpmXB@9k}FgTULFbK|0Flh77;3&4?B{;f_6mqoK;MlLhkz9l0vIa+4 zjS#_sQ-i~x1_w0_4p15#ZZtS}XmBXd;J}_iYkvmE>I}|cF*wL(aLCNy0GPqSEQ3Q+ z1_zo9li=8q5hn(TAwsMNG(sl~04a2F-A#B1FF`whh9qd`&!C+@gLeK5+W9j=1nvA8 zwDV`s&Yuw_Xy?zMoj-$i{tVjrGic|}pq)R1cK!_7`7>ze&!C+@gLeK5+W9kR=g%++ zEeGfX?ffx?Tz3;5!b|uFTKF?);m@FjKO;cU!kAP{R~?5LkdlLgr5iyK_W!75@8}j zM2R+{o#-Gsi7p}rAcfsr?;(1LKBAwPM+^`qVG(g+kQgF{iTQ-K6VM5Ra1n08LwE@v zA&C~kPXve{5h7ZNFcBf508-e-^>(6z=p?#`7|~7i5WPen(ND}H1_+a|h&VAw3=zY` zd_sipLM8~EFbEgnCOm|f@DY+|A^ZSR7~p!42obGBn1~QjqK#-LI*3l9i--~3L=VwR z^b!5UJYs+_35$pmgTxRqOb8Ru2%Rtp7vTnwLJ!xygpZI!3*jdMM34v(twflJ5K*Fy zXeT;|PNIv55#2-&(M$9Z9b1+{Io^psXy!nS=q7rIUZRhXTbDtU=pcFti_o_LJ|aZ4 z6Fr1UXxjlV5hU7(ZeoBKCOkWV01+i(#5`h%@NQdh&Z8}D_9Odh-fEz2$Rsp0WZ-v{yu~tj0r#ztwaaW zOIU=y9`F$%qMhg=OhU^6ULr`e5#7W9A+`Y?B0xlm7%`6+BHTLwKM^6ih<;*_aP0zG zh%nJf^bv7F7{Io-GH*rR;+U-UX623i8;LinuXA*^Rw|a#C9PE2mcb}(`L*n8)@zkl z^RIHew(v^omDDrk~Vc(Jxbs6w6z)TP@i1%RiBLqWXB@@zmqB$BK`o zAJZNyJ(_tm@@V-Hj__6<&Oe-ZxcX4xp%g6p6(>h~GY>=_DBqvG-@3nY-^6_p*!Iib zYu#J9Cx1`kp6cC&yHj`93dKUYpcP76GFu{B%6Db&vhJ$fnZGk}=k`0YcUX5+VBIfq zd-b-$ZK>O8w-%eU@0Zye*}V1o^!3{HrA--(8<+Fhyp^xy^0`E=dR^hV)OEFu#f|BW z+Q!ngnQJ50maoZPV_j3ZI)8QI>grX6t5R3huFPGTxU#yTupzafHaWgrx;%4v(cAAb)^qvJ`njp`Hbut))|%4^QR|Hubx&o%{*<#srgeA zr&doXoRT`Fc5?CL^vT-ErIRuk%`TsqJ<&R`vNpdqv9`LVuqL&pwz{}Fy;@scT9sK9 zSyfJF)8Zer_m^LhSW#VGSe{y5TUK0_Ubb^-VQFetX zNt8#jBi2ae!2E%U1FHuV4oDqP+rPL!$Jk5zW%i5gSKc?fueEPwpZq?FeX4sG_D=0x zTaa6jSWw-ouvcoY+Wg}D^n7i8X*e?+87>cHhpeH>V16($SdACrsd&vQT4_tON@m84 znB{@&fHhE=H}QY4{ik8{KG|MtE4HQEw6;<-6OBa6k!-|@RKodiB3x}Pw5D2Xp<*Z< z(n6(RCKw5p1KEHTsQB~#gumKSXfazVGA|Rd>MQtCzM8k_O?x$O$&>L!JY{#*ZMiG1 zyer|V8U-U|)bygB)-}DPWweM^7FpcyfBR2Y6@H2P|82XBsk?t6c04DHpDtJ5&5`Rl zD}5uTxL~r&t4|@fBb&ThT8Ff=ol6c1KS?K zuR9*Y&Rd@l9p?B`*hM@mI`rIg*tYF?(a|#U65hVby(~Jyxz|L8+*%SHZM!~)SaRD% zN2mFDeBJ&9L=`r*j+Sl1T1V%^-dcxW?29$?0IkD9BK??$#7Q+sS~pY0uDC;6kF-RY zmibIZH`OB4XrV@w(RVTWA;#RnNLv_boblDCtuekH#>Za0LuY*24n)<)urY>hS7{l! zRCqZXXvQ3&khp?VO|Qb_8xF5Sr zJSbw?#KZV19>v=F$3?7f=MxAv@)W*~KPzIc?au+p7euUM;w2Fa?tEFq`o%UxntUB= zxlfB&-29A)MYjRL^`8^5PEp3M+dmJXjf%wh?@OAy=llkzDhTd}|{9CUS@%H4kA|9Q{iMW6L4I=K&-74Zk$=iuLMLdED zgz@Os`!F|e{R1LCn0!dYTQTD@u8%(^;xhS!h>P4-5%+|j67lfXXAz(IyokHZ7e%~t z8{pmfiir1%l8E=3Z-{s-_Zh?z{w#p{8z0(I#w?ZfUl8%Wk!ZJ)2jTg2X4 z+?d!$i|f1g)#ClR{k6D>njDWHr7>h?J?7`7rwcWXDEIN8)TSCBt7QvIY?vk1%M$Bj ziS@9=x>;fdOU%O(8)k{=EHMvDOlOJpvc$SsVmeFA%@T97#M)V60hZW2mRKK4tdAvT zvBcU~Vj-4T7fY;-#-eLy(S=!bLoB)oi_XQOYhlr8EIJ>HF3O_oWYM`+^F}^VW7DfjSd7%mfZGfgvU^!UVQ3fk7rP!UP7Hz&I1w$^-_Pz%UaSW&(Sd zz&0k(U;?#qBv4}l<4mB=1csQvK_<{-0_QP-Lrh>l6WGTD2AIIfb2e+U&IB4vptcnW z9A*MrnZPI$=w|{$Okk7=w3xOK(-vadB1~I^Y3pX%qD-5MY15guK_<&!vRav}IFmKN zWc4#ygDP1}QIIK`JnJ(>22igcz(+kzB@nW8qPD8Ll8GDU4nk;xPVnW9#vD9RK? znW7j|6k&?oOp(D94KYP7rYOu5SxiwM6BAd3$i#%0nEEtnRemle#?8bSOpMONM3|U% zCML+lgqfIjCT4(%2{18XCZ>&vX=7r#n3ymV<6&Z4Ow2G7<7Q$aOpM9I^fECP6ElFs z*jw%7|iP*Okf8SIFAYRGl3B%u$>9)WZGJp zHqAteJWNrPDH>pkdYB@UM7$&RN?jCb<)P@JNC$K5V?I61r@>f#j8$$! zgzlY)(7zs8j55Od#Bvp(WP~0@7-NKCMi^s+os3X2LN6n9F+#}*eT>k>2wNCo8zZbw zOIH!LFhVaQ>{f??5q2}eE=JhG2z`vu%?Mi19`9 zvMXt4SJKL^Bqq?6^s_5*p}1qcDDGG<+GlKtT}dYjKGu(_7z?v2@vtiynq4VpWThQl zNoaRHNsv8BkUfdap%dxef&QZ_hpt16qwDamN3Y>w=P7^cv&C;7Kob#qOm}{ERar?@Ql-S zkP)^p!ahdW&ItP$VGkn=GD1Hi^fAI9BXlvsVYU(vBkW>?GY(6L5eh|hrMTnM`A_FR zmH1TklZ8*FK3V%j@e}D!XrCy3JoE9$$IBnfek}V@>!X#o@^2;JW1#S6>do34#W&J# zXm6BW&%EyRTq5$)_zRlyC=hwR{2b?ySKw11@oe>(!ZWF7YEKuRPCuROG3$ z@+(j&a#nd2o&{1{YfluPNUPc9na4AaMII|ZnpK_!@{c4QsXknIIQ4Mtp(1<>q}5#W znNJ_`_a!Fhou}@p-949IfyABFI|_HC?x@{fyghxpc6;fz47>`IZ_VCn-D=%ZxjBDx z;^yj2g_}}0)ov`_n7&cFv2;V`hR6-&&DqV?=F0W?>l5%PP|b^6>AK8yk?YDEvm33A zm230YCa$esQ@AE|P3`L9)##1+-c3zw%ZuU%HW zEPa`FS?SWurIAa^mt-%oE~#9czc>LO0)=cUTU%dTpN1EK(nY0@WIhss4}t83)`gW1 z=Rcf)7lFbBsS9c!Dt;*aA?-t@^E2m1&M%*rJjlZE_0 z=tDqTQ(B!_9a&vom0iU-^X2jExHVo`nO~V$Sv{dJIe$KVymox)xXf{p?w8(A+pn~5W$*m|(N92rATdy#SD2UX5BH|KweC_Z z6N|*kUD+^Z#%BL;e1r^Z%{nf2e!^$@%|>I?SI~i;%;Dl!{%7 zb4}Z56|K2$HEm;j#R=<{EKi-VY^*VF!)9#rFbCa}p=b$GDz+&$F>fPbo1$W~!*{rY z<|!(#q!eVA;y;qt#MB%Wo9+<~x~D5$QVKGrc&RvFTqxe_#6Aq;3_W7aisQ#tEnK%` zII(U?YJ80?yEfZy$2tg~1F^jXDHVGZ=gKY&Oy&9} zr(LNMhW6T3V~uKUlTJEFp9j(Tf|QEgigV>TA|koodbLKLQLR(9OxtW_r5u#chvwdb zl!|?db7i_+wCCpSrd}sfQx)4LzSu$h!z$aP6lAwz)7f5Z%eKw>&=Lpb3!%2RAf;lT z;y;}2#Z%d~iH|ynuZQfgAf;lL;#}FD(Vi3QX18bCn@?j7x>+a=3Q{U|D9)AX_qOLo z-L|PNbx^$&dh-P-6=RBX<(BPvvTl#O_mrI&nR)(N=Ae8TH1`&yRP0rpE5AHv@2+k) zI%T`~atHAZD%+$KWS8Px*=8Y6_EaP9DddE0_UH-+;VU6FBuJ^)p*UBrS<3a9$-d7)_8JHd3Q{VzD_$bjqi>!JIz6zG3y1(ai}4lfRVOfdflqAB_}qrYm+^}L3T3)=L=FQ#uVqu zZoTnNW_RuAsxfhg>>3BzEfCyGkW#T* zajxw0LaPtWcLh$#^-EfNj%^n^YaOHu5S=ebsTfn7E64Swq)K?E{8XlG$|pJ~->Z~K zDae>&MtlV4tPj8EoK;s&osc?i<+9!Mz_`-MH9P^FX)P@Bq6+0DY=ecdbtv~dt zS0BLg^k=;K{?~f-w{G|9M`QWYZC?F^tG)WSU-ar{T;cd5$E#P)^y;T<^6Eb- zd-bymUj5&5UVTH-s|);nXT^6P{59_XUzwc$ukQbM{blCSnLL}bOw>j9subSrXtX-p z72wGZ$K^pBkpV$U#js*VoGs4UO=sy7KD<+s8lBZq+OEP*aZr3nDUwo5h`BQu-Eb2Ays^xq1~o zZpo;l_rHQHrD#WUJy_8J(`eRGrGAO>n|N@HvQd3sNd}D6SKiqY|Grow@p2 zjz_jtOe(Ejw|d2?V~4AkI42(;W*pRBQfj0WWV_;A^@kVGt+;?be%*L#*%-wZE}H2^ z^h^h}m!Z%nNU0c7ycj*g?jEGkkbOX`N*zCT!sy6`#K_X6%=Bc&&T^1?MM;rTkgbXv za2BB0tdBbN1jWg7Xr1k#^(x};6{J)QDxM=2qR8I+4x3xJb1hqUX-wDs9$BHMEde zdR%Jta+Ry4_{v2^X~v319f9lvtbDXP{hOCyt+ zJI_Jy<4_tAq*QEEoJ)`I99ng~CGTH7cHGE<%RX|+`5*kqIcJ+^otL?I?~UsgpSZx* zU7YWr{|Ti}NRdBAwluZ&xHSvZm->mooNrElTWI@s z(9}0pnW^<9?`IxnK1|FyB=-wQ=!hVtV!Ps8hl|~Fyk1(1SFT*MYV~f*%XX@|*dYO5 zR0$xZAlnt2Ou*_>ciUQQ=c-E_67VIJ08$FFU9sr|?6$$!PF9yXB;cP^0!S&yHpRIT zFr&tfjjc|dIJUbQYdcw8=Ai%2N}rU1j4IBhKcm5(G`eQx3A>ZGovki+kpHrhC*faS z$&*dU<6-C6Zsl#Kt1BGjzoO(xIGzXF6z7tkarED}23M%N)vuqg#7{y#ed6z4z4|w= zo(cN&oqaxi9hM*W`t$?;+M>VK;?qa|$E&~o8?SyamN$Jq{a`F_dhr*_7d>A6r0>Fi zz%w3w^L_9I_$812%A4@}_j8Y4`I$$bX!GiSh{En zkL`SVrGxy}Ah}YIQn5qvygi&x$HemYo=9itF%Xx)$7JiUa@)& z_nT~t*E#5Y7aEoz;ieum6{&aTZuDXzhEcF}>sZ@oh>pBRHs>JwJxIj`3BUD9miz~0 z6Yr7DJIMY3BHe<7TXwKbvHob}y|=wQH{;pCie)FHIAvko2yW@eW*pm14r)JCY9!pV zD>brNwZzDV!)HFJxZXkSM@o%^n|7r}HmkO9WW&hJ8`8~_Y9E|c=PZFpg(e2U9z_^F z#d??GI^1htzMIFE9JURMb*U3qty{73_(Kjpd}Q77b;@1rWHr6PL2f@t3<=V&*rhm^ zT>atQq}<6TpA511`4?SC-2={xBa*4saifDQkH~-^rD8ylL$w?enDxoIgbTx_n5LFe zJ|S1EJZu4us_nFUlY`*Fh%+ikSXu;wigO9_xr|2%+RQoL>>#p8iIA|Ys6yX&u0%*!Ra7FRvxv=#>m3dvM<@|e3NonZEMhZAd#8iQkxGPwO+_U_I*Zsm zf8OOFax|hG5TsNLD4vahAwDgg^_gs#qob>A4byfpvc*C07{nPBB&;if0YwUCRGqU) zDnYjx9ZlKVWx+w?SfxS2n4;1k>l$o4w$HSNty$i^uD;h?=j|kZjtUZ{6v2RET|>1z zY-@a`HEgZ&9tVvSB8UnSh7`eoVqJqLHQQ%e!`3M8bkM?-=pPb^+ufo!SW!uRf{ry;ed6GxZW9h^4QYW4dT#h*d zfAQ!i{lcUF2KWD0V{u*T)$h2(tM?mT{UtmHSg_EiKa=q3gO*RfF4>}sU0&Vu?GrBe zE$;u1t{F(J5J%wt-`MuQYCVZrgf4s+SjDci0=gSG6WL!BAjz5GjlP-_& z34SzT>iCls!l%15ZgH^~@#FRp#>5}Zn{%7PNvz;USI(8p=}D}bmT3xC7;8d?wXlgb zJ((2dR+sR>*`Q0;J2bJxofjgki*Q(<n2A!jw&7PmP-R4DpXn9mFPF?cCnA}4MT0|&RC`Cr$K z>N_|6MccmLFD_ZpRr=ez$8Nh(JEnW&RB?4Ff6Ptq-n6Oq_~MPeOWb0MxIr6$?(#?u z*;wuq`ikvBcOz3ioH|V;YQ5>o38s0giA!Q3M-uQCXlxqDVT21YY2v}Yq|nDjQs%ZGwn@~Dk02pPNjT^7`LMIVq9>t) z-!%8#I6k}s^to;pVJ(SYlcqVk*+g^0N3#|pF6P503c|Npn5Yk~n>SMdpIeh8K05Z` zCyB^&Ou>D^W#aqv$4m(Z#x7P^-z+o~X)c^wz!3Q4aI!T6B8Q~tLs95q%_mG8u_8ky zk;~~%lB*i(2rC0Cg&3*JC&T&zl`fIgeMwc@UC6eX%;5+^#AH#pQJPQ__f~Ak92-%TeS>>=H&;h7;m?_1D~l)vt>@sONml z9{%Hll5ipJI93p|4?nqbB5LaRNmX@Jh@{wB-#dwo#z>hvZW3D<3359m#21&dBq-z3 z#ZU|DXsG61p7m<1>oyn~-Cb?)r`zk8&O?_*zV1GN1UM^l&&Cy_w{J!af39ggR4*B92lH z-=q*vyY%p=&M-PoNr(We*wN=g^@SvwlX)|K6iGOd(vvDqeB+Trl|s?y>UEP9)Q5VA zoG#a5Exc^O7sRERxg5njxg>s6AEv_`L<97>Oc@txk%Q;WxHifl;T(V6g#3ymf|(<( ziNWnd*yOqoxPCs$&vdzyIo}AP*R`;4i=00x^qZ6I$iyfPO%mr^Atn|>+jNDKK1gmm%86t$i6)M`hLI>eC0xtVl0-PR z|MlE$$d&t!c*s>mNK5FR9Fik)G0is;J`T1Ra-+%R=$xUz7G?DDNa#3PmYGCNK}$q1 zml$>BaAv^|hO43^+u9&x$qsEGXjx_#Xgl< zR0O>x$?ZOwi-v_q?QNpMjr)9+ci+*3d2bd?deghdip^Vh6!(4iuRpnFP4=C4-~9a2^-KubfN3OqCRiDE;@rT$ z*!ZN_niMTo5id-+NB7TqymC;w-6vYYVLit!;bbzu9uM(d zhz+R?3?3ong=J`}FPVEN2SWW*llwpieQ;r=wo6 zCa1&%&*Dkcuc%AI8qOQXiSTl?&$n=BAS}>;HrM-fJ?wJjTx)WAl3OhkajK*9|8Ji@ zg389kx^PT}SYdD)faCC~K7Dk$Pe+xDs~t_83D~E59sBfHqfh_b;&)rorx(K0eR_Uo zpB_M;ZkjmK?9-7RT|95H2FW${K3$zQ`BK?bpN@o1_USh_`t;LBg^rVu%8@N(xN<^ICQYWi z-luCggZfeIvG)+7rDr*Fn7*G%Sc1cfVSvMA7}kAz2sSc8=B5?Z}a z-;Yf|nutVm;i5(L>Fg!3=s3p+ZAk}C6)crG`gEOrdK`P0n}9~2&K%=EJ}#k;B8oU; zL#4^t`gC>l+{;~C#dhwU1gw!SamUY#9X>5N)u;Q=-XVbt<;9bI`t?F=Vu+htpuiuK zdJ^PEC0O`8NulR(D76LJV)Pz53SbK&UN6MWVvDBXM4bwY2^}kLosBA)OuBJ_EOsEF z;h>32Sad^49S7oIfrKFKrqFTHQlA`t#{4bh2U~HNgjk-#-=rq29FnPtTuz;~v5B<+ zhnyc&^)0TP%Rv8uOJ(RJ7vdKap)pBCi09WYP^S}=BRBC_wZlMDJ#dbZ3$c~M0NA46 z>_*Zil41l26U%iMyCL>D?;3hCY3)i)9GH7|S*iW+{a*3)V-`R7TJ&50{qEK8nmI#z zO51UZ*VLCra1bm6R^67$0}d8UA>~GJ!ovWLmcx%omF^Ng6Fsgl#YiU-zFoUFCpPC@ zM{PC6$1yKAhhP$&Ns@b`LBLaFPPA_y!u>}eXL2Jh!CknNV)}Er_OL)q=ne22{w}~O z&bv5b$d5TBuoWL34%VIXbu$SKl$gk|r!rkh;q#jwk$3U1n67qB&$-pQxY=BcQ#6K+3s&$Ytld3s3iDyC`T}UTN$BM^ zCE0&z?5s!eg9^nJkyK%#h!?TBuwk=L+>7XPN*xs3$d8%RVPSdyrE zVN*ji0dB%&kM-q~kqU|C=M!Ii_bh}AW$)cAbMM}QI{nq+&)&W0?MsuUx%1sGAk;ao zWXE44;z1F?)wiDGt%3SP#N9ZDWA#$R7539k7bHwmyckFG#%lsNo=KAjIEMwF9LhI` z2zVp_QzSQWMO)6&%;6z2w=*xe3Qp#BwdP%MRyE<#bsQn&F73K`TZ&}M* zNgNYhY|`<@LJG8|9KY)L9l^5={+}i5pFkAJ1(UNDNeQTQ-4>!nMWZPDmB?#8wZ6 zzx7=PbS=8|rX()0(JsPUu+tFJG3)b_uN@=&qt^r#CoZ-}hmSfu4tYO9Mg=Jq{fc}Xf}RpvZJ&mO?aAR|4id*9j;J7| zqF<2`2kk+^_Tcbw2Z`gA1StjSSER(kJxJJ|8$RJ6ae|T{r6B!^lt}DB!uHs3tAoT! zB|%C|n4knn37pQbX8SbC!uHg#=pd0s90Rzop#&LFtdA9(X^S6UaxUS@sqwYNGank- zrY1e%3NoNr*I0z_wvRfaam;A3tyRA2puwM`m@GpLGN4%3IM^nDFVh;fM){h9#sq>! z1t}E+igk^Hu+{dN*08n7Z4Me4L=r`JLJcyYSl3u+6Tp{g4O^2eIcTu5Mpc!SiUGyC zMq+LaTZ??%LE|i?K}z+$Q$Vq`PzGiQaA9av8Pf3ul z7z6qhDN!F^!=~v^BNw*j_%R2G^ASN5Q-UZ#`V}d$hilfww$}J@2Z;|U2~rBuuSkhK zT(d5=HO5akNL-*KNGV9aA|>{4&AQmu7C-4A@nI!F!ic2BrZaP18Q!hR17HA`(K^|Y#(*jQrE0YW?r+}UO@SbgW!6^ z7)2hKCo-rwmtfRFedQiq0ao=D6KK zReG_8ipN;7(Y=zNR?N0TbzNW@9;YNd zPDy&4lJqzw>2XTZy?{l;i9v$?rX>AMN&1_@ymUY# zbiyF$Z%WeNl%&5YNq2FHX-;|`kDM^1*lK!S7{Y^>wn`#_K z`kj*WJ0^gbo& zeM-{%l%)45N#9eFzNaL8Pf7ZolJq?#>3d4j_mrgXDM{Z`lD?-TeNRdHo|5!ECFy%g z()W~%6ZAbL>3d4j_mrgXDM{Z`lD?-TeNRdHo|5!ECFy&rkxu%clJr3(>4Qqr2bH7` zDoGzyk{+leJy1z{ppx`JCFy}m(gT&G2P#PqRFWR3Bt1|`dZ3c@KqcvcO40+Bqz5WV z4^)yKs3bj5NqV4?^gt!)flAT?m81tMNe@(#9;hTeP&Lv?PgIhgs3bj6NqVA^^h71; ziAvHBm82gkNk3GQeyAk4!?v50#`JDoH<7l76Tp{ZL8zp^|jOA?f@= z(qo0BA1X;dRFZzEB>hlH`k|8aLnZr(dBgzFNTK%caul>(p!`R#Rg9yWParLJ$u67f>L_c8? z77-`3U4TKj2shy+B+)|ni2xBKLPQV3`hL+z{%Riin*qkA<2T)w+@-K1FtF;c| z4|rr^79^U@De_L|5AwjT9kadovd_{-|7NoH&?&g!__{n ze!riq16=)~whjETLGE;uKlPG7m*g+~fp_ja=pS&eb-YIs0TXgbn7kRIjd_a;9`N>Cu zU*+yVu4JsEmexsj!Tbkex1LRLaWVIDUmkC6P zcA}H$B6^5^!XyR>Jqfr8AJIYth!7DW+KDcrhv+9vVvx|+17Q>DKWig@*+Kp~M*glF zM2C#kKlE{R9#?AvT(!9R=c&K=7XEnYW0{X>A1i${{ZZ|s#kW$h&7XfW@n-dn!W*eK zYOfbxPrt6cUMgiuky3eEcAK@W@>>42#B0@83$LbLt-VrwCH;!_O7Z2?%hi|iFIg{D zUd+FkfY-q63lU|lUwgjzTNyqdil6I`wq*sr*ycQx#>Wzf?>YYp~Lv zfUm&p6V?;u$1{&>j~5?HJyv}*udMXbPhk1s?8A|VOR&*jd$90e>cQFrg$EK3RPQg` zpSZtzU;aJ|J_0lMYWJ4zN#CR0GnbwI>Yar1(xXOV?zsiCj~@ zI(xNsb>*u3Rf(&rR~D{JU0K^u+>qX&Z75xlxgv5!`SR@L*5#GU@|Ptpt6o~TG<9k1 zlHw(G?|>=T?$2i}_y)|ta)0rn)J4^gJCGgD{QGQ~_fqh(4HnTg0md0lp$wXX63 z@qyAAnKL41luyr|Zk=8^E%y)F?$51GtgfyqtV*q_rHkowTKfn60g4r+<(cJ?<>h7B zW!AFF()`lI(&|`YEHzdeEjD4xKX**xnCj7mqfX9`&ahM@0ZxGx^H3M)V{TSiu2Vkx}(OzvUw58f=(PA_m)uN?HCK8F1!`ZMEuC(S`6Rp)yA(RT$g2iAus0B-b zOdt{{`?G$_Uuns=BwDJnAXBpDEBewt%~$efyb*8Nll54hiaYO4xT~&$E9I&gMI&u! zMoG`;5xuNsHA}1Dwtjr?eSh+MjQ^M4so(#r@&E0ARyX`zWbSXDcX)Pk8TN|8QWBq? zkU>S~XD7C2jbCsOxm<~m5^tnZgmf0MJ#GA=gUA(1gp}~zM-kFl#P+=LOAaDeBFX_l z!cH+5P~_;s#cG@Zo2EaL&l@omXM5ggGm!944uV%9x~L$fVnC6CXYFAq&i=UZpB*%= zRvM%fWI(a5aR|QKK8>NDCAO!HUv|*A29ZPs2}{dhK(Ved_fXst+r!4MIA~m}G)UN0 zRvKho<6x}WKGXTIJ!|}`gT_Wg5*4IW3@Fw$<{pY$Vte}kH3yCBlm;mU8BnZi%smvh z#MUIg?x2xV8YJ#TLA-bY)-@7XvwfzIm90g7!$BjDNTQgtN)0lgSl5_)C~k?ZL4MOg z<9ft9fH|7fAcKm|LvgkiX|t*Hwu9nks6+(`>(ZcKk)BKT@T!}=LGEynxIsyfFe9xb zNJ{KsD9+v`P6t~3I8o%WrakG*j zVfb1}kd)ZNP@KIne%nFf79~N##m2{hL1c>(Ath!4Q-pLDvGtBW za1bdd5fY}nl?dr9Vr!5;bP%~)iI5WWbeR*q{>VY(9wkCbK?W6_MQk19j~ztr zRU#zpk1G+Xf8ro=pAsQqYFvqs&LXxha;JmH1Bh}!kWw+A$Zq&zEVDk74HMU_ zwuYJ7oBMSUxxZB%1Rum+QOw+?AQ@1k;Mse)X0^A=pE_tfq%=sF23HznU1RQR)=^ut z{F#FWXUazfDHQ{Xb&W;XYWp;#McVEXd=#-0$)G=O-TXM3#2-9%*N!`HsHd?+2AOq-|vE?Fx{8yqe+K zDSzmZai7jWnblkjX&V`>k6D+v_Q@Z4WZbVaP^K`~8Q92JB-dP*SD%M#m;A9u#sl&o zaRZe$q-|uRTmkZrS2JXfly4*Fw%wn2WIU)dP#GBN{F>!^`e?uJ2wDD9#`@37GAzr> zGTwi!EdMbS@LhSLjQN-4g%kX~RkHj{#`<3;OH!7P%6R`H`vblo?PZJiGBUP z6J`0+KGLT^mPN9>G9i5mmdI^We&6k~ER^NThx>hJ%hD#xrnKMpmRP{|#Tmcv3|S2R z|Kq+N{7TyYVG%!>TBbABl+nmjh~?pSo3B3G*czHF=3!g z+AfB*-pAUmcap=K-${Pvk@%3L#0^y1pmx1}A4$rsuFLigW9~PSpL;|+ERPX4P-%l& zB6f1D?S3Emg-66AIs#?Zc`>LZVkgJi?zfR&dPF>`BT%N9*AYm>PL8#gxZXv6!SB|-R*6<`B;0Z zc}M)MN8r=)h;ajD=6x}&Z56oVSbN%ato=KWkY{uV%AET;1ieFCAL_sN2zgeApiH)} zL(n_K^{M^`kC5kd2+BnJIt0B#Ts!0+Jwi6?5L5<+wca7F&-Fifgp_p%Dk-f^2zrOO zcFI3{ggmc9P#GB3dWX1n%fEPpd{Bp=GBB+54sq?6fAt7?Q64y9pp+sILs~wDH|Rd% za?`7qxgArEwOu>rlI9)rzdQn8l81{MsI(z1foJUGSlhi{{u6LbbPGFl&NPrG(XBP+imm$MrG z+u`sogaRa3`f*8^^GFl&NPrLR>Gb_I+msS}cmHXlbO8o;dq-|uhKGvRg?UKH% z{Gwc1WqeHTiyJ644#beQk&%*ryDmG9C#PL|q?K*_RI7}S%iVDUrILXd(l#<$AG1!o zcF4A@{Gwc1WqeZZOBg5x1H`b_`qBF?RvdGCgoPw zW&1I!dx!LA8$Z-4q9S+44OH5omWZ7kv%2@kfJelqbOb7ytbl_UBw{DWtnS^>&dP7d zrPZ_ewA>drP>K_XK`jwGIc9b5jVdd@CznF{mYCC&#Srov|Y;zbBVg z5ucU&;s#2A0Wqj0VkgI}?tL+smEV&~tBB9ZeQ^V&gn$^-60wtGR`;$L%F6G_rB%e| z-;+zLh%d-}2?J#+eletNeEyy(|8`woJ!W0ne9Y>a zy*rX^{7S39FUs9AoxLbi+lygstH2${tV9M9bN=*`GKcQ#2{ZqP@+drdk zx&3oGm)pOfce(vbx|iF(qJO#lYdV0oaEi5}+mpXp+5|Ajv0_Fw5_ZvPj(%$%-Q-*Y=i=W{zm?{hm$_j5a9 zblzgvQ4>3T7_%@=A9TB`9lQP56Tn{jpWA(OK)3tpfo>1b1>GK`54t@>Cv{gFCwGW_P1sy1hFc)9pRz znQp&P4rH;-<-s^IJj^OQ{%XZF6#DPlPGVP;y(0FxA&!cy1gI$ z)9wA~pl%;P4|V%Mx~SU+(MR1rm`>{UA@owW52c&BeHi`J?ZtFdx6|}gw-2YQx;;f- zb$bb&)$M6|tJ_QIuD<=Rv5ao(_7U`3x0lm#-9D0@>-JG}UAI@zcimn|=XLvNdav87 z=)P{x(0|>|(1G1vO%HZ^4PDsnwe(%LkD>FreJs7#?R9itw~wR$x_vwy*zFU{8Sz9P zo@C)$+wkOeJcVxTb~b=HIGWl{&!98AeI~uxw?B=u=+$nYO}BRY z9Qw7}=hCs=K98R5_W5*ew=bY?yL};@+wF_!-EOa^d%K;df4jYb4(|5F^l-N?p=-N+ zDSg}Rx6!%XzKq`O_T_YMx8I(`cQ|;(7`}5H-!*|(PU2POdU4i=1q-ik!)w~{T0dS# zUw8Z6bavnVG_I%9yZs(|z1#1l+q-=O{od^x>G*EHkDl-LO>}*?Z>I0NeG8r6?Tz$) zw~KUtw{NBYyL}rS;O*P#`EI|TuJ868^nJJQr1QId7ro!@yXpRJ-$Va*`(8T0+xO7} z-oBqM@b&{qe9*y7V^|u;hbHjhNql4hK1x@3`!V{$Z+{w((BZjj<-KT_jvoG^pCecMhAKO5y^e;Pj?;ijLA;!hL!vn2l9!C#EwFURp$6Zq>%+-7bT>puLA zg}-gX-?iiK{rHCf{?W!iDg1K>{w0Wi4dH)<@xLSZwQi=<7nO8{2xY zy%+s`;@tDd1^T(k9zZpS9YYu##?T0cM=_GXXc9XejE!M@9J?m4dlGvVV6VAF?DJv2 zg#&Fk*p5Sf91h@!jiU+^9heNF6T-1Djz@4Jij$qVASP~q8oR~0Y41?vuoQ9o%mW_aDatCh$OGt9X!!2mA043lD9> z!`gANAJYLm+{P(|OFD2mh)YA__NTEd%uPo`aCsDu?8KvDxFU`#yYT34T-Ad!y_o64 z)&00;0M`!UF++IlFs>WH<3{oL1fGz@6CFHh4BtAACr{uhlbAKPi8&vhYT;>ZczQdY z;m0!r;`XO;md#CPD?FzI&kf>vAv`~f7ew&FC|=Zw>tmRYtJCFuO7#1Ch*!xypGAG?01{u_NQ^ZkDK0O z;d|TghIYKskM9fMO*Y=F@RknT7{p=-Zw=#Z5xhN$@9)GrVt8j9@9M(4yYZeLytfzc z>%;r|@qqz+a1b{QVQCm28o`H0@sR{Rn#9K(ar@JFe2kl(7{@0k@B@?hl(A5J+Qesk z_^gG`wc+M=Ec@~K0DjQM7ZkqOfiDH|Lm_-Qj318RN22)APW)I5KOV=4G=g6k#V;oCOG*5)gI^iLua4u_CUDCnR?WrY zKkH-uocu5MRb$g97k{$$iNYtGPgFjh`?&e>(#O&tt9`Wa(aj&pe5C&2;)hcouD+aq zIVR&1G9RkHRD3D*QuW3Bi?J8WFJxY*%jksE2dmHLpO4AdgiN`8ENkCc*hY<;mQW=98r-(ofVLFFfu%UU@9{nE6=g(e$IW zM+%QPk5nGcJ#0Q)dT2{2Uy7B=n=+f~4;CLxJy?Ap|3K`4^8K0n>-QD!OWjw!H-B&J z-ts+}d+K)=?@rxay(@oL?5^^inLF!xG(z_M=KD*xr*E&_R=CZ%t#WJbR`b?UF+k1-dNxi3feg68` z_2qYG-d(@0cwOqc>b3c6W7n3i$y`&vy0~NPL3uVaTfeF(BM+)q=C6!hS(b4Jv+s0d z%t7u7^NP|t(lX+p@OJ0zmCJK7-k@|@`m);F3NqTDa%t{T^U{)xHK<)&xY)V4vLUy@ z+)&D=^R@Mz>&q8qE~;NxyfAfP)iut*Ij?eV?p*WS(mCmKYG)VDcFwMxl{?Ekt8`}i z%-R`+GaMOXkUM>&j4!C3nm;vmYFS1X)U(BGDqEGY1+i1gCudHszqR<*)LW}Ewjg#= z`NYhL^%IIGq)wWJEzN zQ^+`(%1my?oGGnJuc{qgINCY7vNE^QTv=L?UQs)$aMb1_Ge_2!7ni4&SC7ccID+!B z%(D8@qKqP_PUoj%(`6Y$P@gJJrKYNf=MRq^UQTDy^~J@-sm0a9@`uF^TP&jo3Wqp{ zR1VI`*n!eP>4Rzq7G&f=<$&A)<^d%cH&ENJu%EMEMMe#n`` z=3b>mTT=N{ELC2Zk?{h>x1`=ueREz$3zXlKc~kw3MHwql-7~*uY|pZc6sYe}l(7QU z-SfN0b}#Ri*{!~yxFEG4J84dqCejnN@xr(>UKz`cnPVj9atSk08cmPZ zMhYX&NM$%TYz~)((nGbu!k{x)8Q9ie>`(Pq`|^FUzH)D-x876iN%d5_^WCxTa#u!1 z1r+0{cr})f#bV{oOlLh>lo0{dNInvalw~}?Y{-$Z0J)$UEOn$isw%Hysx0FG>VaY) z6{yN6fSAABo@uYk7=Tn;)yi8j83B;-)y<-r(*6Gz-nZvBw@Lf|us=1m|2J+l-n607 z{--@X_oiZ;_5a2oZW(UJKu@qiK?ejO1Yw9k6gnXWap;0>VaIy*a7!=rK|c(@APm7U zjKC-)APEkP!8lC7Bp6A-1Rq$?2JPU70MIU0G>cmf-rljEG>reR2XV{DHF;16#$X&K zU=qw3!3P$!K|A;%05&LL$9i^fOAta3h6qHV6JijDF6f3H=!HJ$hXELbAsB`c7=;8R z!GSRthY6SjbG_gL3)+Mo>)FmNeh7dK3OXPNAqYbRqRvV&uwy+Zxn%(uvw{geu%Hdv!4CoO9>lF^qpJUt!P`65^Z#%Vx4lu; zPC*9*Ap~KFKomM5265tt=!1S?$9fKM%ODKFFpR(`Bp?Y6jKMfez$BQP1s_<@ z2JPU70N9|Q1A-8OFhn2^`!Yxtggc!u33%a2PdZ7>cVE_hU2!>$VFX4Y0ZDLR z490~W>p8(KlVEgilxG7p>lCdzMWas9rjw6sffk*jL8oM=m1hC8<`j)NMO#kMlvA|i z6b(5=J5JGzQ?%j~jW|UcPSJ!@wBQsCI7RzS(R@?1-V}{DMcZx1deVebwBS?{Xum1i zZSs*V&}vgO+7xXzWdbcWMT1SzUQ;yJ6snIG}07p zG({6l(Lz%+&=l=6Me|J2I#V>xcC06DG({6l(Lz%+&=d_bMY~MVEK{_~6pb?F08KJQ zi%iiVQ?$nv%`xQz3)-L^{15;e6m&okLJ)=sM4=O65Epi=XBW40Ll5*qAN0cj48jl$ z!w8H*0+Qgs7>vUNOu_;%*9$(dpbgr=4*{@2K?ejOB{!nLx7a{MCYg6d2to+L5P>Lk zLJZ>21&uG<8sCFvKh*i5%1il|9BES*UQEfD|Kba2X;qg#nEBxB^Qq@+jKUI1v^OX5i`2)ER#H4+lf6{rf`h@XB z`SIN2F==1tWz2u|(ZZuCX<-*-)PMcq(!&{PW0xPwJrsMWBJFIaRNYjNk^ePmX{R5o zKTvug^T6!=DH-`+yf1xU{oc~OnR`uXYv*L_f93A{-Hx=j3wNdNs>$g8w6wQNcVzA` z?vGq{uB%83 z+_|=TP2rl9jQ=lQoxZwWC>1gVvrwMR&BkUcSLLsAq#bTZD?InE*t;t4%u7qWdPU)i z)D^XN6s0X*e|zcenYWv7FH37Yc6sHp{AJE%RcVi>-d4M`cxn35`X!}HGMCI=oVvKS zp|~Nvp`I`0GkG&#meK#Q^_7eA7daPIW&D5Y!rBGJ3(^)6LV%r{zwIomP=Hx^rqZ zSIDJuHEE@%v-ML-r({lDrly-XV#Mp_I6Y?iG(o!!RpE|yF zT=BTHwAD-NGV9EBWofU+j;$P%KgKzxy4F}*miBsVO=Wd{wX?b^E%sEVHdCBQ&(v3y zR%KS1tI9{`j*dyIJ-^afSzS?Bk&7s^&?BtcAu4&d+mtg5$Pl9%SzIAHES=(mt7e zX7^6*UE8a;S9-7dqSB(wB6CqWm6H~IWnq4yv#|P>g0$&tZ!W$${pR|cO46z~-&B5M z?v1fGR-|3;>{)$-@rLpqxjkZgRHR++>|Wiiuv==knzZcG3+j`l$&9q_%M-bY*hFPK zFYWv4SYa$RR&$Ed!mlSw$xL!KkxJA?i_*fckCa9-Bj!k1+W4{I%20mD8LCPvKQ&kz zC=R3t>iwnuOuyM*?#oGAztWrUb$Y8kMo+mrCvE*oSH8>Xs>Tb_+ONfmv2?87S(5g? z*;$U}qOoX2TKrC=8ZLxW;aaE|N{8yfQZN&o{fEc@mp*gzVRd`4am(EI|BU}%kgV&I ze{RJnZlKbJwca7F{(W6p`F**x3i+Dc7dKF8!&>hU zR|miDto*)QT7_(p`{Go;lMoDRy+d3*{CcwTn{sItQkDDS1}be>>mB0i;@6v%-qA)ErDn5q|fbK zzoNPQvfm@)Uvvg414G(IM(aMeOI^F=fJeqRbp|Q}L)u2hKJstZWk(;+rLMhlFx&X4 zRZ`t*;o2#OvW*{UmGN!4J8q!ThO~{0)_rc5y7tLokBsl= z3{(b&w2h3`eQuY!cF7TsjDOV`s0<8g8yPA2x9jriYvtM_N3)HeYV}%uSMH7*sI(z% zBV%FXS6}tj4A%~s$TohYRmQ)|-3bGgHmvpTbL-k8T?N6D9*N(Rthj+n8`Q4X`(sjW zbzQdixpnW5PPXwwt)A5P2vGe87H&y+j40Y z@gH(u+(4xbYKhoMpIi67xF9RPEtggi|0(yy4OH5omWZA7xn1ho6?en?u#3!v|+7xh-)+6Gb_I@ zmsTM^ll$TZDs5Qn9pd^_d1F?7UoNdeelGXL4OH5&);q-YvGS&@{JvaTh5SP9iyNr4 zVXb$FYh!+MR(@YDtwMe&_r(oV+OXC;#I-rUB`d!#msTOamirP0Ds4#1hu4PJ{Lc2x zSw>g6HfL9bs)bp3EV;A_+$Q(MrJN*z7}64Wmb_ukyX^S1T;|%)QrX7OwaTc=-Ejkz zHl%H2v_5)S=Gx8{d1U-XXP`1Lq-|s@l7G7{uRaggX0}(h@l&my$8Y8CxPeL=(l#<$ zAH6JdZDo6VWc*HNpwh$KL)u2hLb=s-dG&cTHZs?p|D%6AD`WqUl;uYbh({R&(!C`(+zH)apt7N$!ptsI);X5j!~qaqm(4dqn(MN1!q=s3l@2hak&bJJbOl z5r5GUs0<8hiP*^@hH(!trrZ?*dC|4r_W8>qA)?Iltf=56w{=3VCAB-XAv z*7d9o$u@qjRmR`t?zn+U8`fSV^J#JPHt(XJmETx3wRB-xzZ1^wn}=o_KiDe7Gg_0pw1LfUi)Dg(n>?~udwr{UZ)IouCT&KWYzWKc zndoyXa~V?}83B3RgiL!*28OlX+rXmcZNN3-=n{`aTT zOf6r!P#>?(ZFS2%LOOK_N@oHcg5DvnP5VfXkeCiZWnftA9kOU&p5@##Im#m>u0v26 z7}k1+?6qH0$O?~;Zh7E@fl3?JvZY<1>s|3sJ1%pdans9Jt~siCQ*%xGurk~D`Bond zJ(3kSP-#Qj#-{e#&!4%so}<^gKI4w|$mrD>s0<8i8!z1%JD$$ml~=d4Y1fvv$|Iyt zhoCYrto06YZD}(eA^kc8mDI)}1ieFCTUy2=WI%_YGBB+54smU1t35)7Q?B_8)_6pY=txushO}qM(D2h<=KyZ*ZFG9d^)~7n zx4qUQa8yF#1}be>OW+3Cqvl=aw!7)+)yt=KYkBT{;TVsQgbqPvU|37Y1$y3aSImx( zmFuRP4-k&^2ubP?R0f8$gj^=eyvy8?==AiuX?^f8_e9otWH>qlm4P8`2v$~*uSY5TubmOn|` z|2A31{wxaoSrquQ zDDY=d;LoDKpGAQ`ivoWZ1^z4w{8<$EvncRqQQ*%SgK?n1pEU^!z}O;~K!HDt0)G|- z{;YQJ0|ovp3jA3V__HYRXHnqKqQIX;fj^4^e-;J)EDHQt6!^0!@Mlrj&!VuOMPWaS z!hRNo{VWRmSrqoODC}oZ*w3P{pG9Fmi^6^uh5f7~I6z@Pi^6^uh5an%VX&Bg!D9La zi`f?}CSS0ad%~P8V8LR31&etVET&bk zDClP~se;9v3Kml;Sj?zk8J)MtQve@W&<5?`hXB~1paX&sf-poN3Y`#xICMcb^gu84 zK|c(@APm7UjKC-)APEkP!8lC7BrpcVGQkHHv_U&C2E<|vh{YHXi!mTp2QV>$#k>es z7?>5oV(f>-oCp?EB3R6bU@;Sd#Y6~J4=@da#ViOGlOR~kfnYHOf;9w8fM7BIfyML( z7PB8%jQy}27=v+`5M&RYc zVE_hU2!>$&Vx))F28{Hu{15;}dRWX! zV08d95?CP!1Je;$jP$S=>0vP!fyGn=7BdmZ8Zs4u#Y_Yi6A@Ug1J%ffdy^Q4t@xL4GKCS2q6eVM36O%a=jB` z5Qi@4h92mJKIn%57=$4hh7lNr1SG+MF&Kvlm;`gP-~$WVpdI`W02`DbYuLf{AcPo&P(z*r9XxDpu4As<%)V>#sGN?1-qA&5gijKTy2HXk9s3tcb(377=`D?$k3&<~?90qt9aAjF^#MqnJ;wh0~33B523 zW8h0Jm!}00=!QW^f;l4uV0h+8`3RtB$%^80K(7(1CRh? zv*3pi#GxNXVFKE>2tkNJAB?~_v~3eQpc8sw7{-8w>sc8iUwI+_g7ZT4g9RBSUwgjz zeERu%xg_J{&2o8jZgXsN<+=QG&U4jg3(uxxw0!ZI^fUFROHXHHynOko+*7fqDj&$p zi23T1g(p)_)}AQJnECqSrN=Xmn~#@e)O<`T`Q;yV9<9o_`IOZ1D?Xflxc*S-q0B?( zL*-IVM$cC^Xf1f(Lc2@DM^jY;YOJ`=zG|w!bL7l%%yU@qq zl(G1^lVc}W-kN`_Bct&PC#6oRomf0EE#vWLWjucE_~P;DuXADGBPs1ygIi!wz`tZ%h>$tOm-$VQ(2W?<*cg8=={{t zwUxz{>6P^rr4^YK=8E!Bxuar7RgTOb=^R;IUU;3p{)?B^r%ThBX;Vh(=a$5lRHpJ% zj*QhW9G*J7mM*5#GFrd1IJ4MXTs|x(FTrzm6h>wA~>&g^aegEjxmf3VNL znJmk={#c?injdvWt1_}bHBuWc4yT9fL#3h2kU3Ny%nin5bbo%p8L0LbWQ2dMuh^IF ztM`^ciO9M z1sVBYvx-*Qs{2YZ_TTiC&72uCD@I;g_;-K({DXcc?f=AItwz%yXKXW)=UzEyv+){Z zIv<&gTp3vud8a8CBOy0MlbTKMHKIM6gkLAPf~Lt?4uzFLjvro%P!6fw0J|`Os48jl$!-z2NwH@X51SIuOY?f=IkbopOFb3l=0h3_9BKW|9 zHfRSw1i%Ibu}x)p8qfvZ&;z~D2mLUh*(%otg?Vc`#O=c{0;7*rQq~9hpdSWc5QbnFMqm^YkOW7Vx3**4J`NKw3C2dj1Rq$? z2JPU70N9{laP}4chQct6z$hdj2@Z@w_hz97dZ7>cVE_hU2!@4uYdga2qmY0kI4}m| zFaeX0NPbFw1RNNHahQNfFc%9x7?=?TVF-p{1V$kNNpN5c#$f^`!Pxkz`D<&+P4W^7 z7PP_OE1#AK7={rTg#;wQfidXbD)c}v^g%xiz#t64FpR(`Bp?Y6jKMfez$7F(KR)rH#XLM{jqX2;)@(H_sn8j*U1meu58?TLu63@Sik&6G`ap{ zwoM@l0}CHC+B@Wk^KShkgYwVl5Ddczj6&!7qm6b)A{q}B*tS|;Ch#TY^vN6LHTBIs zge5n~+m7Ie0N7xy7nGcBkr!DALnp)_4&A_68`&rY&e_ODDR9n4HcBD9|)|6uKa=P_Ur`f)Iv?zP4Ddx&I|ML}z6dzS_&hm(wrT zKU9)=_{fHsIldpDH@vih;^*hZwV|P^EpMSse{_5?8+fy*DsRurOnueMH~lZq8`NaRzVwCl3tl-tf4*~m^}ND)sq<>*7SBze zTR*3CPUakQ7v}}onk(kgGH+igo5`Bl@+mo)xvz3^{$%Im>RSskcVF$K;z^57s-IYr z+55~B%O~Vch@DW8`TLyXtH%|NOC4v-n-8F{Hnq04rnn}(roOtgID@!XgE0Zg#GK*j8sM?XmBhxaIUuk(}xw*W2L{8@Nt1Qbe zbCy+?7GyTR+H`R`JzZZ?lKK41CFQByRBWmuGx{y|I6sg+xPDOSpv*z$LFEH;2gYPx zzx)Bt0oDBr`=?}Pzv6z`ePjDp_Q~(#>{FF_{r=~30nF~1+OzhC;v3R3zh7yO%pT?* z<=t~K!(U~${BF)})ddBa#FCrT5U33H-6o*R$JOn>b*kXip~kzynrsfSB4@1Gei zhjO71FQ%*@OU9@mfbKjb`dW0{Mz=VNH8`hp> zTwFh)+1vdoq@{0p!O1ZA{Q9R=EvvytYuh|vv$qO z{rKnH#+b|U4?_;3+?VZR4fm6WO&F-O5pCmd^V(iXjlOXFaTcau-5M`ng#&>qQjdbFZ769sUuMt7}8#B(5?Bk@3D=} zziVdPAAnQMffsoM9xWkp1C=(UCGhqBkd1f0H8ZPS@38AVGFIsfR0f8$jf__Bu#(|= zhs}Fr%;*eM28Oh!$@4hd$Qko4bDyzOGe@NLyYJk-yul+Qqccz$7}An)k#YXK2xCXa zsuj&|uort|tkxN*3=C-*)^JIS4WQjvxn}L^=FujXcx0^68K?{lX-}7D(W*dwyRl@| z>LtzNs4n%$SgSKo85q>^H$THj8uKo5$0KWIrkmed-{ui&m$Bi{|?AH7Su%vl^yxb%3IEjiIsI*~i<4Ngl zwK;R{fOO5w@90A5t!A1s0<8gbMnHq z-W<|XuFYXDSI7K!c?9MpByOP6hP4EqBa!nibDKkYYPlQ&bKl(i+LhVH54JkWK2?XH zGBB+54v{zL^*cKJU*!>Unhrr_U`X2tncuei^Ofzs+ocZRTV(mfNWiyJmY=SWI)1Vw zWemV`Ljm7WNBMm}IneLBR_gyHW%-!&|36Na-%0Jijj|;A1HPyC3-}I@Sp>NM7&GD>zdw=U5{h;Sqg4cHk8`*F4yH zt(=og-XPyIydvkCL$AoWX1X^<2ea>&bC=uXT(iCTF3!2jxn{NaKDm~COnzkR<8rEU zy?n3RxBe+kN6Q&zbNy!dI%)m$oYk$!H%8m!Y_h%nGjhIlYtoc6s^fA-ed}&=(tX<= z^3P3sno-}TH<{5;_RVH=GJA&1;Hp>4*eIvU&4uU6+1cy`vK|Z9%eu{OkaO9u$f@!L zTjW%EzdV`fAge#b>PJ}pB_34-y9b)wrt3Sw^cd+JztoaCQ-pfi4veF4wb%Iq@ ztZEOd8evrjS=DY<)nqNhtmOo2nb2!Fxn9=N$65}smP4#%lC>OXEzPa6mIJKi5NkQi zT1Ht*hqa8bmh>Er4zrdWtmP1E8DuSoSj$n?vWK-CU@eoZtn(1-Ji!vGAz5Ddczj6wp8 zSwU_7mgGVZLJ)=sM4=N#XaAK=SO_otp8W7uAp~KFKomM5265tt=!1S3fI%37 zVHkl?NPxLb@PP$w&<=hGfDH;dAP6Dod*z1`1OqS#Lof^@FbclepUA^QbmkYblG}tn z=!XFqgdrG)5g3I87&1Fh)C3<`&<5?`hXB~XghJ5{2to*$UP!)p5u(ruF<=fN`5s2- zh92kzpG*}aK|&j}gC7E519QsAp8W?|dkAFz!mB0(zy<{!5QGqfAp%k8gc!u33%a2P zdZ7>cVE_hU2!>$l&23J5QGqfAp%ih z`}^zMdsZj6#~=<}&<#D%3w_WJ1270fFbpFw3dT0U1Y_}tTmv6i&<5?`hX91+4O1!o z-Wle-bAb0wllLYcSkMOT;D-R%pr8YS5P~p7APSujgE(|SH}pU+^g%xiz#t64FpR(` z7@GtWd=T0wZ;WAxKomM5265;DbK}3tZ$MMp`zF2PxNp+Ck^3gSQ@L-_yO{eXy~DY0(z~DgrvHCulpW8#Gj7|Z+5dOt z8~)riv1=+<=dX6It`-V~RG~IooJ~s|zS32htIVs)SLUP=-~XlpK=zW@C6$ZwQjf2? zp|Byfp_VV^)A{=P()!GLQ>yaiE{a`L`3FY_R8G&I?wnpdtsqtUYNr-YO`lrNm84Fe znJZ^=*;uwBmHM1hswWrz!72d%({KIFmE{$=6|ohSqw+^NM^%q39GN<@CRO~>%j-v! zj>sHgN*%x4ve>f9()?0KD)|+rQ`5C2#U*K}Cnuf=Aq?7a)-pEs$c$K=l_Ed0>wSDuiFQpIFW7o?!VxqoLaJ&Oec$p z>}YJXGLn}Xf7Ri_aB8?VRFo=z^}*6$X3!ig599`71C{=KzazE&3Vo@*T5qv8E!F-? zJ((V}C(~_8wZB|ftg8~w#~rEnSBRxzwa#K^S}OjPqM4`}Ek|-v^RE)lhn;XWR0yR) zwO}!r4%RzL|IqjUD?fVY@E_&-|0n*^X#ey5|8CjeHqNfhox_r|FH_AYm1jN9i=3{{ zi=Z+vq-~rRdF>bOjkB1N;hKD-;E{2L&Ol{gP}|5zHrD=C=T62-M)Nu4t34vl)Dfr* z3~GtE$Y>q0s`-@iH69UX=?GK?hO|VS`kL>ox1Ui=PaVFj`K;x&9vNrr3{(aNwPc)b zw0;^(non9@=MizPJZ!>1r44EM>a6ui%T-g&CoM1E%hieG-5!DGNmSfGr44Ia1vb7I zCeU>b@p_Mt^K}R+1H)SH5Z9MH@9_w^K!>0*Fs$_saea^eUXPFqbqFd0!&>hU*95UQ zc!XS}Lr@tQ)_RAyX1cx6BV@e}L1kcA>mA~n9Qu78A$c8w%D}MJJH%Bv;UJjk{9f8Wgpq7Z#P9jpxAH%nKL|maGP#GB160v9}5sR9? z+P&Q);$8Bv2?LcjtmQ9%X^Zc2x{Q@m$GE>ea&@12zenPgk`*^lX+zq^WW%k#gPU2k zdTH~QM|XH+T%|Km85q`{VO(y!-WS%5PnYTA)~;UKyaC+l5i+YoP%6ubA?>O98|zk2 zbM;HrD&t6bt(uR- z?(xXDRvtHDpwfo5jm>QS7j4E|XCT?kn%`rN+sicp@Vy?1*GX2~K&1_7&oSO6n|7;1 z*yYDgx!z^&^T>F&&Ol{gSW5=)W%Dj`UxY3{cFpvP=FRMWkC5wi2r2`E+V!%3wm$ls zIc7=oU*`dji1+9SR0amMYyqt!j$G^djCs%_;(hY42?LcjqUBq0HiCJVxj75h%&eUE zHT8bYy%sikMBXG}aRZe$tZhWL`s+yK^wG`lG$oIan{@~(1H)P-&t|5=d6&6OU}o9$ z>NU-qz(XD(x9AX528OkST(*;tb*tAlztueK5wcN-pfWI`Jykjpo%%YT1dU#lhp#w% z&Gg#lH=9R1Qi?hSm4OlM26-ZvwM<#PZrz&I)6E<7qaG=@>J(H4hPACy8t?z49Il&X z#%nHB`Og2m3;n)!SvI}Z?>k7AZ_0Q6ryVTc!5{4R-G7kG%O`XHeM7$UKlKeVSD$?6 ze~&Et%2Jg%|1Oa4{{OmLz;~C-`@fGY|15L=uV3Kz{kqA)Es^VAr$cDtG{(9mGp;t~lO7rO z=?qi`hO~_gy^l9Pv$+Fw$#69>Kj4vZzs^8qU`X4@(7X8SXSiCJPkCfKpfgYz7}S!% zQTe>f-07HgOI&Asp7w}%P)DFLFr+1-^+)o$B~z|F{~3>rl00tGK&1_9Pm_1C^W={{ z?=rWQO|3X;rqMZW`&Q;UmGP`cuwe(cpAh*xE=>0~jYpr%~Zm#yz3m$<_NmQ?aN*mS^n3Fwe-evm{$LjQw zspi9)7d=9r)*+}2?9>wSdd))HuxF)*^Xg;Pq*t$XHKJeg$azNRpfWJ5C5KO+d6yke zhQ6iTH}~=Op={#^TXiLTR)?T6Frp=d5(@J!`q(odPiF1%m99}JFMFgsr&CZF7}k<< zev8jHzoe{~aviCE*dyeF^1w+0l{TWiNM5bi8;r(#O^>l^&D2!7G2Cza`r5%OUjg37?K);q-YhWc@jkdMm)Ck<5Eh?bEPuU8eI@dulklBxiWVKCcYy~CSd zy-#>#enQgX1}bet+n9v@LSx=#`}RI1MJQYcKA-eR`J_%kWne_R3n{MG?-h@fS9A(0 z10&j9NO652RXkEEIt7)15$!IdxIU0R<&p9!or221h;|oJTqoE+?UC|nor221h;|oJ zTxZxnyh$Vor221h;|oJT<6$7=aKSxdE}&lN*mFV;<1l5 zMsaQ5M_oglKJStFPm&flP-!FDU3g~uH-C)(lSj%IbP6g1Bida^IiUIU#1}kLzNk}B z85q^JN(mT&S=*3mG)J#ZEo}Z6|Ds3CmvjtDm3ke6yAmUx;~RI33HXvn%$IcxN}YNg zgX@j(VQs$0uJrp3ljS=XNV{B?zpn`R?mpk|+e?r-?YsC|NS%lzIQPH|GTA*ptS!FmU98$l>YzgW$BRRk<KIf8Mzy;Vvv>2?>R3`*XUJvl=<{nHF;#i!q=8Bs(GuhF?$Q{rx&7V6HDGItN9I3ETHHXTjcRx0 zsqNeR_EPnT`MQolWnfghD>3^uzrXymN6a^L3@QVo+Fgm+zxn;;>mD)xqGM1Q7}f4d z%mK}3K)>M;^GzLt%D||07h)E#pH@-|@)&H%W^d zsI*}%rS@KL#AxGO_1aa-r(Fl@|LPI)?>YpPfe|fz6<#l-agJ)0bm(%|s{F1;%J=1w zlLjhnM7s+wpZh?{RVeD;JTkXRTHHXT4Qst$K3BQQfA?Zt?8 z7q$e~hu(g!v;8%X%pXZk+(4xbYrVIGMa>_1Kkx|ou?|6HU_|TvH*#04{11Ed$9T^jGwkQ;l=Gh+nZJ+(sSvL-F{-cc%3JK-%`e~&Jz{>T zV^D^4=@{IVn0=a$8Ghsu^D7;L%D||0S7P>U-kE;v5%X&ugHnuM$KbBS?ALtE@Dq=i zZ8`>}1ig;IU5VMh`S|{)9x-(tgHnZF$KbBS9MF7x|1*!6-{=^WLi9QYcOhmk*DN_z@v?b=jn2T`B(B>@Jaf>relopQP(_u=`2=$|Lc=pQKJ~%>K6hoym1J_}3nZf76L5wY%lF{X0pFXX2H;2E6!0B!h_u(=81P;6PQTBVrF4bg zcc3g^e}{aJFH5^DMQQu*Ddzw_CvE@LM+AJoly?91XZd}OEFY7${}D?Az8}cA|946I zUrh&m4_zYP@yqg!i>1$iEPh!Y+#r1mWU1z*=3rXRC9Icu0A$%+7CJ|6Ir99?f3dU1 zi+^i;|F2(=>_(%%aGiQREqLcit<#7@>GiQREqLcit<#7@>GiQREqLcit<#7@>GiQ zREqLcit<#7@>GiQRLYc7G|C4Sv_U)gApkZ|o=SB9<*5|qsTAd@6y>QD#inLIR4GbS zDN0l+N>nLIR4GbSDN0l+=5W}tp3I1#m~cQ*s!AonfiW0|37CWhU~Un7U_l$SgC7E5 z1BI$o2T-U=QK(8$s7g_&N>QjvbpnN|6osl3g{l;VsuYE)6osmGtS1Gl6a}jk1*;SV zs}u#R6a}jk1*;SVs}u#RR1zE*gK?Mu%2g@KRVm6F>DauwU%2p}LRw>F>DauwU z%2p}LRw>F>DauwU%2p|gRw;^BDT-DpidHF#Rw;^BDT-DpbDQ7;3)-L^{15<&Rw)G( ztx`dtXw{DOqHVV6cUgG2gYC=CSVeb z&W-Xczz0$*PM!s{gJ0OOo&j#LL3UbsHV}jmgdqYlLRg*!#2^k`&<#D%3w_WJ1270f zFbpFw3JFMp17k1_6EF$J!lv~!k`9m3t%9O;XdpezySvxGdXS8<88R0T~qw8x$1*9 z@PmR52to+L5P>MfAP!y71HI4({V)JSFbpFw3JFMp17l!p6-@Af1#Qp{eh7dK3OXPN zAqYbRqF~8`+E2CPGXZ?gCZ?0CFL&d|2Jus!^3(QrWBg7ZSAWpY)d3iS5lDgqV_({rFoOe?KM$OqpUx?ln7?%8!5r zZO{&W2tWq}Aq-LIggA6T5A?zW2{D7KwqOq`u7(aHEF!8-uKqHPzwX9*FaEY4e?N$S3~gCy1UfDc%l~B4U1``?baJ(a ztA#$iW&p1n!s|!yy<>Q@u}$3Q!&}?%_5j|g@a`bq8^-&i_+Y1~;#_^G8y^|KCu7FZ zhW%-o>rws~&<#V}_>~d-no5fQ7Q*jGuoe|n4C2rYz0e1PFak*!2j60$9c<`;5JVsb z-OvYvFak*!2j6<3Gb!o+(S<+i!JqWw&j&;`#MNI7b9I!f^#oTPuKsTO|K(quFPA@* z)ARagUNT=Qy_kNn_P?0bzw~ta>Dp6;r<|v%A1HhvC6xp7PsW}sKaqRFe4_Mt`tjOh zg~uGJ8kl?3e6;jPT51Ls9(EqCK9qmRk&1ztQhif#Q%dRuGQ)r6f!qV;10|W?zjj~Y zKIguwt`*4a{;_+?cW0zhU}J9o;+?5GYj+gyNZnDBI)RSV3C!JY-d?^fbDMeF&gS<| z-(0_`bW`T0np6pN-dDLXe`D;%@-Eg0WQPCJHR)?=R~KZK|Nn=#H-T^BxcmQSwU)GF zOKVBKZ>39~(M0yEd^lyf(KcxhAq^V0CD9 zc2#0kcvUWvj6@<@B-I=J7v=;M|AN=QwJ;NoheP3PccMGoom-Gx5LqyAWa!B3{KWk5 z{M-@ABO*s=N2KOO=lSQQ=f>t*b2D?|b3${nvlFw!vvaeOvm&#!S*e-P0?&W(Z_Wic zFgY|iJ1H?KJSjIZIWaO(o0ysqo#3C4?ud0*9hvrcd#F9zmS_vNoa@W4I9_K;;XuO(D4AZSTEy1t>-P!~jYU8yKrd4*V(awv z2Ze}(ML;P)4-+B>dJ!^ga?oQpIrvDSp|b`kX*yeIfO(Da#@2;BgI?=OwQDKLSKPxn-J&R5) zP%=GCXqG+>uH=8yYER-uV@^{Rytd@v4mE{Q@ODOW+3rp^2#w#{7-`Kx^#d1O8VbQpzHr6rh)>7O~aK zzbQn@SOk;;^fJ{VwtD$@g@}hmKq){E6LuHp(upwUZ{$>4w9;nN{11hON#zCwD4AX+ zcH~^@;XdY%e-gCRuUxy{b{5!r{C%vDB>O%(yFtnHFd?^f+`&jBXnW27Plbk$H9%^F zA$pj34Ssu8xM#zMjx=oN0G*ipH{RLoXAMva(8J7Y@T;=}YuHW!O`#EB4NwZu!^~?; zD=Z(MKiLmkZ(N5$qk=U+DL@Z1ufZ?P3Uxlwu=T~&6&jVS0ZIXSnK;eP89B_KsEpS9 z72#Edm*x_MNEM5KQh;9O1yol~8~5_EYVnfQwwGy6g-A7vfKq^7rdlLacyV?qMCz&F zpa3P)%f$WoKrS@-kp?~Fc46x)Kg-tp#;uTSAhCb|CDY5qFEsv01G*nf?J0ccZ74(< zSp<{<^fL1z`&Y|+mkSaJ_3*;syNpzbG_eRM1?XkwMfR_kqas~Byl_~gR3XyLBA^tY zmzfvYzhaJxOzYu=!y;u0kroyKr2xImyvY7Fb5vxyZ6u9HArfQ}Pzun?%!_dC`=nyh zC1zA)hHb(DuR_FP5l{-y%gl@LlhJ`iX7&_5Hkk^MRu%!J0KLq-2-m&?i_Ef(-!E5) zv{S)B0ZOKqsjix~o?WwSJ-d7g$qo_=2v9P;%qU$A&O5*jbNClpcC@`}`V}G*SOk;; z^fL1z<5taON877rKp`@T3Jwa8W=tcR%!5r*RV6S$_5TImw znfZx?#@jKPdC5MBSfxVb5EcQY0KH7Li0y%+N+EJ6i-1yqCNn?r(*Apr@4HCTJB1cf zf7v~wFZ`<&DpObmlmaxF!zv}WmN*`yvHx?(2jBx5``@?H?f4sw|G$e;8+ib{Lu3Cp zQ2OXNdN)t$5K8ZDp!F#Ijo$rVPyPPe=-+qf{r?6^e_TR+11KFv>5DY}|5Qr9pYC?- z=y5qF)A;|-(b)f!D1Erl?YNHm{i0i|lGyDKnee*A-|7AT z`HqrLDtg}sqR;;p|KAi>kNW>>S|AY6G~wHOt?>Ex-5`8zLpKSZZ|D}`3l82Yd@f%? z_&mYegs&lZyYMyl-bw%6dzbLF58NYsO?~$YpLgp0!q+l5Bz$`Jqx4b=6)%&9G1$Mtol6zmF{|>!M1@ym0&!)Yv(}F#32w&r_ zPZPx3!si@%d%w-qr@kwEmBF;|)$REVNRdCv*Q1N9U3CnhIR%N4^UTen79SdQ3@EDD=}L3LW(CcK&~a zS8>oG#UCBk;GQ3e&Qg&RoprlD7M=CGJzA$@s9x)=pfZ}ak6qou>Sb8H9;-KCbsekw zhdvNxrKGcTj1DyR{YbPL!JKHV-Se?%t=r?#TD4vET5EtZRehpCt6Er9V%0jVT8~v7 zSk>(PKzOH6*`?+bv&(F=tMCp{_QqYbd9Ho?L}%3?ZC>>dZJyOfn^#WRKiQj+)tj)o z8>?4i^%|_+iq#v3zQhNR#7GE-ugmOr_jv2P&F16$4b7BH2apQlvK(Z0LGu3I?~1uq z-MMihXD4W8v9^kAAHz{0QR9CnHvuxTMpR@$d*CY3)ynW zHX~=Vcf7nTTLIY`$d*Ia57`RHHXw8GAhJHlRzlVTSrf88$ktHKdYX^9-+ag%J?}?; zdJpC5@=>lXgK~A1Qm!r!k(&GC- z)S7K{hLrMoVHe8RvC^R*3EG-{VwOJev6xjd=%EACTd&OuQs%bN^Pe{@pQ8*pYLTM^ zIh@GhLk^2_G<)>}oc;NX9?CeUjxx@1QpPzh$~ebQ8RxW8#*PC?d6Ax| zqd|pjETzIW`l+yv1D&@cIbD=9TuM2^4$2uWp`2kC5D4;_{HHFQ+wJ1N)1{mu=(Jyal15P3Yv<3*lYnt6*rBo;m0IDxejDr_TJ4huPRC3fqB}YrB zQv>GMbYxKw=DWg2|$|=u0H|3cpDbKtz$}`VJhop79dd6~BuZF>Buaoqa(AxO<5-&_-IxkPb>16$Wx9y^~hsTp0;u78mmU1C7QKvW19d){-EY{egLK$k1K|=-~GWe09 z5gAO{$QHWQAMn?wOC{yi`@bvZyJ`F8H`Dgb*Md%MzGJXLo9{v1rRKJSxx1F|vb7+acO0Dt zWN;!wB{EbYLl7AZIs!GHT$mm75W9^|R9vJFa23ekGid{w=v-Z<(E(akO9yCK10B(2 zjdVnpxv4x$((g&yP)ZF-sYfXdD8+?RN~weh-8yh}qRZaF%F3T54OHB! zmfl~ARn=77syZreRXr8A%8B9*T<>sp)lh@5c)#){lxp}&&57xeJ=Ca_-8|(O}`s^*LpYe zPW+wFJE^y#Z~5O!zZrYedNce+?)BvBk=Hfq;SqW@`$~fPcH~}8zMOh7`lA2EbSjpz zQpp!0FK92Mo{v87e?Ik0^cnv%>8E2)TTiE-h&^FFk)d82p~tmHQ;$R+@jsHL-WuVd z+(XHSA`fW~r5+4X|BS@_;rny^(cApD zr4zA)mGIx1-Vxhj?a15`za?{1{HD-N*&7o#hHtd4&s-P3E_7Y?+QhZls}om;ug+bS zyee{4_=?>2r7HurEXW=+M#Gm5G(%mAMtE<_UyW!AFv zQL&?}qcTh4OF~PcJ^r5bqSzv9QD$MfJJxM=XBNa4gccO`N{GzS=A>pvXZvTTXT@iP zW@M))riZ8Jre#A38mO0>nw%P$>OU+!B{s#Hk~uVfsDDy=Vr-%{F*6}Pp|CH($gBam zmSju3InmwA_oGkR0t!A2o4s)Bh;2MyjiPnrFm4?Ir2tK)x(z05d&y9% zQ0Zh9Pzumw7NKH$%TT9KnMx%G1xS5-Sp_VjHLma#@cP*{kGOh;W{4C50+dV-6R(^@ z2WZR8zuI23+TIw~pwQ@I4N%fe4KK97yvF|RWTP6kwzx)x#x&Ldr2sw5yvF`78Adg1 zFaMep8q-+=lmhfJ)s2ca-|J?D$P5+%r2xH5wa7Gn0Wtg{qeUSylSM#D4-OCkG1T_d zao@}>TeNs}sId7zs1TXOBA^tYmkE*cD2@3Wevz?k(b0=+b;eSN%%OsV0+dXXSwx)~ z9ZrXC6SKPtyG^tzH0P39K!B3zW#(t8-~W8hxBt^D^`X3p>+nz1rVyFOBA^tYm#G#B z^P81nk#>bhHx+CNP%^zt9KG|#>7j%6fAYr}>21Jc5og?V+l|)J3#v-w8s4Lb%m@33*TAgPg>gm+CvqZN0VAmfRbr4$J5N8w5(}Av^LEt3e96! z6O;lpnMG*YkF9M)>tPDbRitAHP%^#D@icJ;<&W*?6G;Bph6~TyPKD+gQVR-DGEL@q znx7ooh4y1>(>z?Ext29SDL|81gr@!2+IrhfRcLNtO_1i1XH8IjtLiFz*}8S1?PY67 zp?MrB1O!O)$`ff`c_JQ*x(@Pq*JbP5)uqtb$Qqy&pof{)*uOrGJbHE69`B|pG>&Ht zkmjyu4KS}U{^MPj?eT89LgNJ10HpxE%>0wr{u=q)I=z_gvYD~YP>7t!BA^tY$;?L* z`-_aeGwur8JeFoER8C?QPzumw7NKH`y=Ey?`d9^&0`xM~2h0|F%~ps+Sp<{<^fL3$ zLHi%D(TA-r+jGzyg~+K?a8Q7f>1B@he2~9!;+e!|3bWAm5II*Nc{)piG(Q{B%gkSa z4!mELxQmUs803vqg!t}}ZpRsvbm|B2AoT;7O&)+>C-1*=sULt`;c`6oDVHNm>8s1# zjt!K4O5^`yl>R|u|8JmFMd{&LZpY!2-kM1s0yO^r0~+_=N9k|$-v2I2tvznX+w|^# zJ*7X8_x}z`htT`~&(pjAO_YAy?RH$>N9$2SpQWqjZkYEm#s3#;pTz$Y#2@(vJ^Xw+ zPjQgW=7R*%WNbtaGfJ1Q3+ZM*=8wBVR*3NG;W>bYEgcrxo@b6wD4s(q0Rhs?Y($fZ zGvNZdWRCe8ZndDP0J_#LEbMnTU!ig?tAI2$8>@ih{rLH-0Dk1D!I98a@j{#c|^tX)k{>?5%d z0?CE8C%lCU$;~7d5TImwnR&^J#wd<-^&`nOHplcu3Xv@=0!jgz%<=Xsf39J_R(z`P zTy zW%P)xTWPyTAEi*alvO~Qrj1p=B2;Ym=%osk%UA`Znc7$d%&VL~{=SfnUtv?vGKI=E zRsp2|O=ezY|A8ci zNb|K3%b9t}{Vxi6|5{X@F_z^k6fy%W1JaCbECUuJV|$8TsgQ}Y3`mo04UTsDh4cbxNLB{?D5BI{!nB0E?F zq&eJ(9_D6xuo{14*4nQ1wuw&GDKu_n4UndAV-0XK?Z~O)wh*lCU2MB;uUBXcvIZyx z=wY716H@YHbKwEw$9SjcIcC+=!m$|}6dDQE0BQaC&#J{!3$Fzm6(YB@2uM?&5k1U{_*r+nW3^`e zB3n#-yh7s+)&QjdJ%skpW$*`N&WwuD7|{I%W({)Uu$Q|x~M$Nz4}Z)ZL0{3pf#Um5QI&;I{I zx%}1-ht6~vK5nY*;UcOyGWYV40co~ABF)xE#BY3{vDo>${+jhPcV^+mWRpVVJ{AFK zem)if@f(jXvI-)Fj}|8@MDAx1kS6FOn#}y= zK2`zq*OT#7=z2mbh0hkJDpVe16_6(BV-+xeMHx?pt|+8ZcuhG?p)y2e1_emYMyvuB zaZRzk>|JDQr#oGtnIwgP0BPPn)&!x6nW4x0jr>ZBdXHIQyQrL@PMX1;&2R}=p@+hl-G*utb%fu7lf#z!+c`jeL+Ezo) zR){>tA|TDw$08seTQHOQn7@&GaW6f771q#m6e5qa2uKt4u?VOZu|??TDny=O5l{-y zWNxPYIM7_p!?E*9nycAXLC;gDJWC~80;GBKh+gJq`bjV!;Fv!?Ui6H-aMdRxnEA!t zBHNq(^A(!UlTJ{8G`$^>rne)Gr#bvw4o%yOJ-cSVLh}XI1ZlE6)&z^tw7u9{WP8&e zQ)s4G6O;nPtV4Hf}u3O^PB)gm?%hl>>=pJowI3ed|`i`ZIOwkky4WD!sb(92Yd z*dFRGQHZ?7BA^tYm#G%9wSHZy5P6$LK$`K8ML@NP?M8l?LgZa4GAKZre30m2p29KW zcr~-9XO+EX+L|c0DHL~;N&w?+NfGogp?HSihpWPi`$%xzW3QN(D>Txq0n#*ttO4dV z_%ZRo8n$}5U7_(A)&OY|Le>ED8vMX}U=3Tfyh5SzS=In)3PRQZ^BVkMa9|BvtsGEj ze2z6hnt+fsz`O>>AP3g4Rm!+R<2}{@Y5GCd0P`CAzuC)ox#;OxYO9l1Dl|UN8lV)Q zhnd$HuUiLc*sA1J3XS(!1EdKKSp&>#9Qe*j4MROkZ8h?0g~k`D#Gn9aszIWciHCPg zvpeRGpL{As?=h>^*sEl?utD+~h2)n=CLlnXcaT`d?B@y@9HThW7S%gkBgZaQ|Npfk zDITYH|9dI!-$tpH(#sV8_fq;b#r@Y)YNzz#Ar$jd{QnCY`+pUsW=d~R+`op>?`Z7* zjg)F9x*d;Ca67u_{r@}k?teL@pHR$y1-<{Tr}PTF`#*+a|6gvRGANak55Q9t_b;OK zeTw_H(%AnBjQ^ji32nlMzYwxdTw0QU|Id4}cTlv1Zsm`#?O!}#!MISFz(l3+^@s9Ux#tOu90zo?f`V4 z1aJZ_zzx8-UzY%k`*j%i>oD%uVcf67xSzHV*8MuH`*m3N>#*+EVcoC8x?hKNzYgnu z9oGFitowCX_v^6k*J0hS!@6IGb-xblejV2RI$RBO3upz}fOen*&~_0VfDV)ZPQV4Y z0Rw<#KW!mQ`*oQ1>oD!tVcM_5v|op5zYf!W9j5&{O#5}1_Ukb1*J0YP!?a(AX}=EB zejTR$I!ya@nD*;1?bl(}ufwcghgrWK1T3HxXam}T4qyVH?IAb-oj_Yyg3nIC1-Jp& z_3N(V4UB3>yejRrGI_&y&*!AnM>(^n|ufwiihfTi@n|>WO z{W@&=b=dUlu<6%f)33v(Ux!V<9t13)6=);S7PjLvjQVvL_3JR|*J0GJ!>C_}QNIqO zejP^rI*j^t81?Hg>epe^ufwQchf%){qkbJm{W^^Lbr|*QFzDA|(67UwUxz`z4ugIj z2K_n=`gIue>oDloVbHI`pkIeUzYc?b+Co_L>#*q8VbQO{qF;wazYdFj9Txq%wvXTd zbf5%q0xrM}z@lG=MZaDOz@lG=MZXSfejV2QI;{D1So7{5s6}b(r((Fz45UfCaPyZ9qHF0l=JJ*8rIF>r~-r z`vI8q>oDinVal(=lwX$sO!;+~^6N0=*I~-9!<1i#DZdU=ejTR#I!yU>nDWyW!j@l$ zEx!(1ejT>_I&ArM*z)VJ<=0`$ufvvKhb_MjTYeq3{5ov;bqjzkzupGGmS2Z0zb>W{ zV8^dJ0NC;Cu;bTZ$FIYVUxyvP4m*AwcKkZ*_;uLv>#*b3VaHEf2t$4yhWt7V`E?lb z>oDZkVaTt;kY9%(zYarw9ftfm4Ec2!^6N0<*I~%7!;oKxA-@hoejSGVdJupSzupSK zh+l^hzYZgQT_Zz$9Y*{*jQDjJ@#`?+*I~r3!-!vp5kGAqtoU_U@#|#(toU_U@$0bS z*I~u4!-`*r6~7KEejQf)I;{A0Sn=zy;@4rtufvL8hZVnG4>SOcKoigmv;aZC0$PDK zpdIJ{CIDJL!9k!c)bY6lZ~`vC4H$p~N`W%K19$-wCy4 z0}VhU&;&FCEkF>kfK~!+VH-ZT108@EAZUOC(18-b3Ag|^U;q**1kfL5RlXa_m~ zv5TMq4nPM=04LxA+<*Z{pcE(rJb)K4fpWkH_zARy0er3iDuF7X8mIwkfjXcbXaE|4 zCZHK;0fK-9v;x{5f&y40}VhUAcu~^AtzJ;4S)qW zb`cD~1S)}gAP8u?32wj(Q~-5A3(x_$_7Xfm0H_6;fp);XYbg#Ip#rD_T7V9~wVU7p z0zfU$473BzJ%lpA57YonKpRl9k5CHufNG!-XayX>Wwcv>2~-00KoHP+32vaVcRA$% z^ge}Bia%uDf?LN8@sOuQI=F_%iFA}KAE z+7;d9-<5tL_JZ|7=K1*Zq35&DC7ugEmwPt(Y~)$(*}{?FnWy4Ug`UbjnRqh%WbTRN z6OkvhCsL0`ANP}+f9x^qvCO0KM?>W2pLitvNbcd}!;yzIa`cZT{mJxDY{(){|M)|p zhq4bQ9t=O2dm#Bh{r9KY*FSS_{NB*L*`0}APZgS$Adb?7P!X-u|&WtUEHd$8Qhap1mz`TlltIBAJLJv_xt!I_Muv-x|Bsx;3*S zz9Y0__bstotXneV?jO22dsE`3@J+cJlSTUbN3Zr@Jw#*AwX0HBMz8c=nI?ySE1nsM z4}=D?S0t_|9Frcs+<$p`TWp)PEpu7?ve0GOOB0udFU?&ta7pNr?AFBA@YdYL$%`Ww zYZs@sM7Q|2q&LSlTbnZ%#V-n7l)bQUhE z8#*_8PJ(>?b7v>dj-0KXojNN@PXFmMV`o}tX3mHo!0W$zbhLZwfxhMOXP(r6aM3_!s^DtXQ#g)3zA&^f8%~77;aqpJJJPLnrxrvP_!p#)j2&qmnVBD-ADX}W zh}aR<5t(`Md7*jPxrw>qxw$#XIfWzbW3#MTnVIpKp_$nki5cM;x#`L2k?Gp7@BdI& zq)Y2cg`y#UC_Obc)tZ_)JbrlS@N8$IGu)XwEO}VuFzv9^l;{-yl=PvoL#;zIhr|yF z9g>}#m>iy*n=~*fG$}hVF)=(bHz7G8GC`Y=>WFsuJJRj3cB?(p7HP%_JyXh@k!Z8~HA2I#U!?VG(zZOx9?DI~ta5}>4>3TUeVAu;11 z61G;y>lG4TWeHFUu#5?b=?9UpH9Fp)koYf_0HpxSn2?xu5D8nGwOc7@2dSp<{<^fJ{VwkmUnLgYIv0!jgTnQ9SRrMXif@;xdzC_u^dF!3hf0x@2t zq4#F?O0%f2(%hv`{61*~1SpvvCKS)2yUUor(f4NdI&-%|;|Ht(N&$M9d5!VkX)U)^ znR^r(KV%J13edyMYmEO+Yq_n)>{Mv%Wet!f{bLOv}~bFV@p%Nn2*pof{) z82_Eta$9}5PoeQ6)&QjdJC}yuJ4=W^o#S)+tU>Oq< z2YD2;*OW&T5+AYzCSpt*-EMr3AAdh19dh(b;VjmS76rg09 z%yY!abnQBMzmqoK18v2ko<+6^+Sf0(^?G|;p_wDKfB+@a%gk$T+D|k8Fh-gSSMbGQ zI52ubA@X|`0i^)F%)H2%T8rQPKHe>|mMb+{eZtaUkpl-{Iw|Ho3w(fj|KDNUsG zN~_zks*Cy#P~ZQXDNUyI`KdJ4fRdo}@!#5i=Aifge|8qU{~y{cri9+(eUf{QhM_)u zHsSue9j?G5rp)libnQKwrlZ+MApaZDSTdC$y9wTYLOT!`B2@1oG>Tr)Xa)(5y(bBG zn@RSnR7MN^r@TJ6PLz_D=Qgr1?jnEDDOgBm?hdkbr*-Ov)`|A2fepe<^7MbB??mCH z30`2rkB!TJOA|8Mzi1u%g>&kdHRRYY%6m5p!*uXYLfNxttEdR<`<$q-Xo-Zy@{Re0 zY(Lvfi|g8Hah<*|LR&|hzSEq-+gKhvk#f?8R#XAnp61bwD_F}s@YjI@e;vd&bdekL zHgo34R$wceXfqnyXfqm{vBr(&<73xoz#10TXu%pg_g|wCYqVmGT3W+Bx}Q{h6)mc0 zphXp!{@MxCRd$;m*#ug}F}PVc+vukl&4=x3r;ODl!S_UUY5!?h{*aj%w)wW$tNkJR z`SLEi!`|L`zt;M_XV7E_-RFqTrr`OaQ|pU~PPzL+(dil5Lh}mjxkPm8eV5bH!2!|f zAH0&L8Q4Xr-$SSyxJGm~4-)j<1Y9H%Qw;6I^sUX@U#dzB_2E`UtLlchaZ9yJKhp_?G4rf6q+2`$|(5e8otovpiHp>3wwFgj~#HjK_-_v^H>?+qLwLfPP_X(`Q% z(OJ>|CPBPKTSYTubXE=$wC;Ckw}9qeppVcp2<##R_W*kdLcELpB{T$g(|5blqO)Z1 zv-IEo_wtv8;(t(@aig=2>Vb2Lnc(WtNdNJ+0Ih)DPjCSe@BrE_I;ZGt_v(D2(fQQ2 zZ>tEDbiYSay3sOOH}ZWuzIWn#9pBfFeBXiZUHHBP-#3hWKLOvn@x2q@H;#O-`7RLw z1K+#webdPI4ty{1eNAtEn+oa|ZCB+UI?wB=f>hVja+xr94sSDGBx-1BZ4)i6ZJ?#z z{8salS}bYCl141aZ#OTg!;%&(@%L|`3kzL+xo*+F}70Cj;kSdi59ma(aj0vpj~rgbNGIrKly0uYp`?rV0-@V+Ql1eUqcSQC!9-ZpRD{bp-gSvrwHe^ z;h7=m|E+X@>9$XWcTvsGKTgQ*_k|q3&C)6@gWnPr`q0lrMIFtMT+ukyp;a^w`SP+< z)W{u~R;}=Ti=JjAm9>-WEzO@W@@w!kHMB~#?`L9?r~e}{$v32FlLFm^1sy!A7;GvK zJ@~o-+L8+V-cOC}JRLXoYNu_eqHQ>|jJDy>a@q!dl;ZsuEpoh!mZ!;=IC2e$PDQ$G8NgLhi8*fv_EueY4tr<5*WB(V054Wx13m(@^ z`mQC=_Z`tv1yuL_g63!eJiUJsE#-i3udcOJ0RHa4e#dJ}d6nu_%KL|(APat^F{M}s zT!qd-%-?~zaSETeM$QEK7bhgu2sx8i+&OwZ&j1-j7O^=u57S;Xo_U`q9k0KuM$KT;1R^gxF z;HB`7bnsRFmBaJ@)$WfR{eABz-;cbnz3>0L|Gn5}`_qx#sdvPidtM)Uwf_M9MxwjA zp9?;n?+p@pqVLiE{W@Y!dK<4OkNqeQoAx0kH)ntQrn~3hkH_7mbo;3Y3P#p*3i~0 zdQEKhZ%$tny)YKDVj1cg5kEh4e(1dHxruXQ=UC@t&K`F7KO=lb?)3C&vD2*6a_sYO zot)Ve-xP^z(Ntf)pF`q=@Cmu&t&JJ#*$`fzTbEpyJT`KycC5BGwI;g8TAf)HUu8uy zz46}UF_B}mW2~byE8{DZDg+ke>iK*eK zxx?nI7po;EVYz zpH=QNg?C@s-qJnPGazHc4a@^DUQYla?z-XGuj};w|Bm7KpWpx6{r{d-G^zZB8dCxS zluVPEZ&K+W+b}Xb_?p^nFwPfCha1zLQ>grvRX`~~lUam{?Y+SB3YGt56;KM$WEP=f zd&BX9LgjC)0!jgz%pz25?`n1_RQ}E?pcG&^Gq1A0`%T^!i+&f(8qTkzhJTopLgpVV z14;pwGmDY2jlh0UA@ecIfKq^7W?p9hH&3H2wq3R+$d?o%|6~zR3ed~Ui|pSzI4ZJe z^{j$3`DKNOrlScGluVPE7dh>K^`%PC@3Lf7p^4%8#kR4?uP8Jfq!tjMWSY$Jb}T=B zoirEq*y`x33KgAIKuP^FabAN(sMzZ0YYLSTRsp2|O=b})wmSN{LdD4{pcJ6V%&Q#i zs6SxRaF0ZOLHJeZ~%b!pKe+j;%ALZysVKq)|zS%ix1ynaWa;$am~ z3eaR0p<+9)-&Lr1Sp}5T<^~n82o>ACXSYJdWED^f&}8OS_P6~Tz25XJvf1XO6)NSd z0!jgz%pz25Q>1)Gq2gl|P|~c$Pyvfj=_64iz?w zip93>HJ?+6R*_slfRbr4VQF&u0SsF5Khx^PM@^-_f*am@3YBVB0i^&hpPp zN)4-kQh+A22o+oPd0(MY%POFxRzRqLMX1=S&leObb*utPYT1GcScHnL!_XHMD)p=a zN&%Y8B2;W$pT49}XtMx_fXWBF!jN+E@jY0yLT9sQhJz({bB* zF2@u~pFh{-=%e)E@$~Ng9G9bo(i>;H9IGk)<}8=vI!YF$H_7{N$p-QaApgHhDOFN> z{&bgPDWxBsMm_?R4DtYYn7sdvp!7}h0O+SwO6gG=|37t++wo=c{X31)KVvS(J(Rl0 z1K=y<0dN}p|0oUq`iH?1ivNG@%D?|d{6CRexA8X|tK)(n>M9Hgzpgkk?R;cFDL|7s z&XFlpnO10;_YH+g2djWmfF`pDmFa~~wI3){Ca?-91!yvhP?=G9_y2E&$|Nc|C_u?9 zXBKl|DV*J6{o=)iy#>Fi5S>hN0Rc*;$t+^mW)@yp{zsv52&;fnfF`pDm05)smTxIk z4rLWk3eaR0p)#8r4~8#a-&UwhVHHpc&}0^&GN;hk@;eHZ!&n8R=`vXbRI7B^LeK9i zR61D&r0FtQ1uR0v7J7b9p>jB@fKq@avj`Pi==ptx%2ZYXX;MyB0gF(XR#-`Ypit?e zGJ^u7DKd%W%wj6(w1QzH>lZI6tfW6wh)yG+fBF3h$&pRjABi6_DoVWED`YGR@|0`7?#eTvh>T zMov}%i%_x6HTrXf$`Mp%P=JzI&Mc;qPA{yaOKe8-zfg$IC%J$CCDUXUv1?t0mGqYi zl_OaNlmaxFMW{?GtfaqEs4QR=Pzumw7NIh|u#$eLQ0ZnBPzumw7NIhuu#)~-p%P{l zPzumw7NIh;u#)~pp|X%wK$C$rv8#WyP2kT8m6falN&%Xn zr@X}RIK}5VUKaJV|zDjZb>6A1|_fgzGgVNV1_CJ%7PHD$_w__5; z{-2?^|9DD&qPTyM(jk;SM{)m&lzzF!?YN5K{w7MVQS2X~^dWiwT|=pb(i;@__e9)| zAHe^QQULLPP!sDdRh^pEAA+|0&~pFrYHN4+kpa2e6<%J?ySsEnV$h|2gWoT!YS!HUZGIlQQhU%-sY_$Az^j9j|RK~AiNM-y6 zj#S2PVM%5D4xUuTz95*hh$Fl4`&NAQhc@t|cJPlK;GZUde}+Ys@fUbh8GqHm|1AOk z29qk|?{KLy{sEgR<74<#8UKV)m3xzbRh6N^tIBY|tjb`wDx(B;RfZFORfY?ORfZdm zRfYk}Dnr7v$|!|tl~D%QD#HWYD#HukD#L_vl~E4oD#HisD#H)&s^R_E6o7}7Q2`Sx zqY^GwMip$VjOrj*10yS=7EV@1T^m^64mQBb%4ie=#3qK;T^Vy>cV*0j-<5Gh z5S$OkE91yka6uc`-42F3z=hfnaghV;(ZR(f;1VZzlnY$y2A9G8%2*EjE8|n}zcN<9 z0Lxej2Q1@gSYR2)zyr(Zg$b4sfeY5iZmfbEma!UkSjHOoVHs;-h-DlLM=WCz*F17 z(>lP@VUT5<0f#K(Ob2)tJhF_lVUlH>;{?xjf#<;|%QzoKSw=scvWyt4vPO2}0$64l z7s4~kxCo|M#%8!?8CzhRWn2v3EMqH-vy4mNn`K-I<1FJcIAyrT@f(*xe+1@AV&d&Y zcwYd#zXE)q5`3@ju91h6Fz-1^>GY{H6!|A20YV6a02L_#GekT|fA}0Qmh1 z@CTLP539hv)nK*;{826V<2vvs_25q%z@IgOKW_qm(G32w1^iVI{Llh_-3tCj3le|p z0Dq^0`%1u^lQ^;)zjxuQKe)k<4DgQ<{8K6T=Q8jw9`LVT@PAG4Z{^_Mec(U*;Ku>* zpA|&+$)Xbf(W*d4HK^BsCAFZl4s_Ln?gr3k1Z5Lg+6lV^tfzTHOw==>XSi1H@w;;5r># zUjlA$g2%bQjc)LG13W>3CzgUIm4SU8FzN+2nc&Ig;3+=vR6lrH06e_{JfjjkvkE+` z8a%rOJf{{sw+=k79z4GR>~92PO~jGixS$zdUDyI%6a+V0;FebK;x=$=J9tS4cnSL>Hr_p!N*I$C!FAuF7PQg__P5&Bf)1&!RN}r=RM#H zUT~KQrpk#UyYZqAU%li9Uk-q;RDiEmg0EG9uUCU_)PSF^1>dX#->L`S=4bws>7SF| z5JT^Fzngt0{*Lud`t9i3+S|#u!f$2YjK8_-(~(c--blO=dL#3C>~;U^sn;T}rc#kqZdYPgXjg_D4gD{4lbd1uIqSLfvr+Og zOg9o3Ox_W`BTH_D*6r!rqPJW8_VkB5%Un zm5D1uS7ykW&>v3?LBurlxy-d3-Nq&UcOX8PUm!!8w zw`yCH7l$v-Zi#QPwxl*kHs>x%kP~6%!q|oW3sVpAtP~ z@Z=EnzmIM5Z%RcY(Oh4mFVvSgDRz>d{01W@=1xeQ5F)q1*zx}3QyU{2bH^pfYcR7R zw!yz4MNWgcb-{J%W24kJKe;x%HoGRi##)nJ9VLgsRclRJVJjPq2Q6|5jJ9Yk$>wl#wkh6ZHKiM)jap-}A>5FqKKxdFx^7=>qBc~U zsfpG2Yf{yb>ReT#DpZxJj8VV-6!`+?0*Qb{u7FX$=1=;<B4s)90t}HCU`+aD%7~B?V8R`8XIwGz0Zcg~&Rj`?TmUnAO!w<4@&L?f2`!{$ zsEXhJl75$q;{Sbx@&D9>s7>bm|7)j?K8*@dNB@!aKm*VSGy%;(3lIb>pcQBX+JO!L ztqIZr=s*eJ1Y7_b5G2|Uqy$O`TP@5~03Cq%RTZOT_sS@x4TNFA?2K1oslLy+mj)5!p)w_7ZWuL|89_ z0D^ki3bX<3KnI`=5gdfk?bPv23E%_}(o0125&^wLJTDQ>%QCUpbn@fjBaNGzG(!S07Tug1qcEbAodY7zyat$ z3E%`=fEz%FEfHZ$1lSVswe$dpuB8beww4I3r5`|GEh_+o)e=#)tOgKM%UZ(dcGlsW zdY}Pl1e$rprr*D3!|+BoZuvqK7E`l!9&Zy!@S_(HQ<~&a9#sAzX@E>0){Pck(f$c z>;R8)^bxP~fC&@49R?`IoweWt_25G-;G;pJw177J|4D5ReRKdNfD4d7DNqJ@054zy z<$xau02M$LPz}@owLl%v05k$kKr_$+1OW?Z1;k#01~>p6C;^;+3vdGlAc0b#4DbM6 zzy!(xoeDLcae~je!50k3`0(-dO7N|E@H0MIo7!-Yrv@K?REv*wKm*VO1OW?Z1+;wx z9Vh{ufE$oNDNqJ@054zy^_186X(RaaX7HCSD9u63jNiGyKN#R2TZwM1yp8^$8n=X2 z0d$}QZ~`vC4U__9fEOqSd_VxG0IGm$pdAW+fsY2ksF(QY!N+D34En*gN^n9gct{;l ziXr;=wnn788bQbZcRRt)xbTG=F!2BPOz_JA@N1P|rW*W44Uuk4^zobZ_}GY#-)_Rk z7JU4kwu|@!9o*{#f8+*#BEg@PfxqyAzcPu^hmXGrfWNB*bJgGO&NA>mFZe(? z_>hk%1NiuGCHQC^_>^B9O|6#!qO1Tafd+i})h6(3GD!TM2mGN4X3L3msUZY_N}w93 z0qTJ!APBSpj&6bzFo06P1DJpxs03<&dY}mi0&Re!pWq9U`j0EXpH+dss0BZ)BgzJR z{B0vXHsfQi1s^SZ{AlD~`k#;D>*#CRYpGWwuWGL*UkSgGeL4Pe=;bU$*x{FQFD74% zyr@x(9ZmUD>0Pm17Dd_d7eX&&pHDm=em?hH^0~-!+H=Wg!_Q`)i9cgKlc88UMB~I` zPx+rpJsEvcdouY%_=)V}@y9KiF(CSw_E_@KFwGYbf5dtu^Kk58i)IUmBy&TFp%Bd# z5PQgaDE(mcLG8ih1K|g<_s8$IINrAIOWzy2*MDznXM|=6NZb>?CwF(^?$F&?j<~aT z#_zOfj)3SL+8wFeBe!d}CvS^T)IBm5Jw|bN=GOSFpd^84655xwnfy@aAb%g_{9A1{M-@ABO(;Tr{+cH`RAqQ#wd!<%!$tl&B@MAP#m9|m7Eos zrOirFB=4V@o)Md2&B#m_!}9?AUq{{#P)whll$aErl$)5Os9u|xnh>4fpOEf|byyvl z_IP`UV*5l}xGmS3Y>iNKpR%G>epJ2{%#ht&syX^^%mFY^8LG@yBr3ub=_dn`fEGwm ztnc@yc`Sd1qWw^Lmi%nOX3m@RM!cFg<%v?vpDv4)S!J2hI7R(gnUG$W98}70Hu|j1ntAJ8~CbI|?+klsUDpZbT6;KM$ zWEP=f8}K4FaiuY?XA{!XflgX zu?={U3Y93UfKq@avj`R2fR|E*$|hC;r2tK45h}I;FJ%gqQ>f&i041}WSxhCJZL6d< zYi^H1^i+}y2v9OjW)Zt)8}Q;)sGPjH_fKq@avj`R2fR}QG z${DNzN&%Y8B2;VxUVI9bGg$?c0yLRLsMrR)_!TN=u?i>!XflgXu?=_$C{)g76;KM$ zWU5u{170c=D(A2YC|p zYy)2E6e<_83Md6=GK)~L4S1i>TnrH`oJ{}mhEjyn4HCF=XX zlG4wq-+!D^1Ep7}@BcBBzO&BlxQP1yo0OiUzW)m;eUJM7Z=vL)^fdMTpF!gQzD9lj z&!nVNdVu==&!Uu}{{LrFa#9-Xbvq70|NkL}c=l??Zw!k6zb^Cr{}15**Q7XtTj{6; z1t^*2%pxv8A)9l}5}Tn}vqJO|k_!k>GEHXwXX9~bg+IwBgL%5_gLzsMDwnbfC!XflgXu?^;FRj6FfDxegg$t*&}HkhYP zp|YJ-Kq)|zS%iwsxu#vAas{h^Qh+A22o+nSScgJofK@<=DVazGEJDTBC^kW%awU}+ z6rg05GmELDHs_ipHg~p(3el@bE+9b3G?_*0nypc6l0xNbRsp2|O=b})wnnkZ3YBYE z1(X6bnQ9e#qu3z|m1|iAlmaxFMX1;s#ST@dT*oS)6rjm0LdDi7HbtRwJ*$9HfF`pD z6?EtV^MCE31G~fF`pD6|pY>i^G6)Ja8$w2{1W;wH%N@{a~Su&@vlFm_x-c51= z0ZOLHEMnJejbd{ZD)+DoC|_;C3eaR0p<-(kJ3^syFROr3fF`pD z6|pY>i?^Dpc-g6;KM$WEP=fYZP0cP;Aske#49QpqL=*zu$ARkPh{vYVmO}*c!OYHxx zFZbwn{s;PW%YUOU_vm*12l{l&f1@w==yv`G`gBu&R{GulZ+*E(xAQ;Hr(3G~a?>z; z^p8G3XYP>=J>x&nsayUVow-N1^Z&n2-5BXieJ%+Y=PWVInR;ImFvwYAj5GDaBw&QI z!~kdNkx8(CRzUQA(sBI^js7DYfDV)ZPQV4Y0gP&v7}P8=rdeW0v&4vIi2=NvV3rubEHQprV)(KQ5=M`w)=%F! z039d+oPY~(0~od}F=|<2(6YpsWr-on5+jx+1}saASC&2iqm^Xbj8T>tqAW2&Sz>^)#Q0?L_d5GllH5X(M!{%`fdw zXwo!kGlV8-+TXAF_5b}mASoUx_~`oe`cp5w1%kkR?l~L|z&)!Ibb)Swp2=JW=$FiG zzz!Th1?ZB@(Ic6oLo#(5BG4U~It>x%j7*(|2p`Y@IwDi2Ap+fyIeH;ery&A;kU6>_ zQ>P&U9gsQtA5U&ibVH`jLj-ysb96qY&O-#c9#iKb0v(Te7w85(U=EN*2^lEB2JFBA zRDjOL9DR*Bx*BuzH0J1N%+b%7qnj~DFJtZl=wr;$#h3>`keFQ05N<&?V;%wMUChzB zn4@noN7rJGp2Zv;i+MXhw_=_KI_LnMpbK<^9xw->H!-yxClp`Ip@l2l3>3q9ZX!KVt3!8bI%1j?TjzeTO-^4s-MzrXEoQ`VCXVa{|4FsYeu% z07=jeQXma<&;dF@7w85(U=END5;9PL4cLK$m|Ra4w>SX@Eua;+fE###7x;h%{2%~= zAOyl70-_)W;-C#AKoYcr6i5RdbbwCK1-d~GF}a>|a0@#`NI(V(umL-802Md^2Q8o# zxPTjYfEW0H2K*oZf*=IKAOfNw2I8O%BtR0h6O-$i!Yyf_gAULMxyQQQ&(anJ@5APL$*3Z#J!IzT7r z0+_p(%Rm7(U5AJBjw1c-?h-4?_xArJ-;5Ct(12W=n$ zlAs-=KpKpH8|Wu z67|2&-KpJKxg&pvPCf7ow;yc=JFQ^u0pPp2a#Q{${if=Tg&Q+B)@~@?VBAo@zI1)| zdg=P|b-C*_>W!b@tM9E|Tevnu{qc)?j6L<;CF+qc?Jn=i?HV0#`=8w@?JVbWd5v2C z=ZE$2`R{5wiaU%Q_3fqYS?ZZzzAAT>c2(udJoU}5UeTBj&$q2|d7k>_S1&7Embt99 zwMf15>sv}&vRkArW$K@=ZLVy}Z)(hum)Tg$6>|pl(k~5VhoqtMU~X{qQiFQwmoCX( zB3)9xI7j{TD;MQ2YRsLNxv+LY@dD$5`i2tq)t5Gu*XP!2)L%cpPG47DTUeW+9{WD( zub*Gtm{Tu9J@$)PBU>LR4P>d$etBhXrM9wiex7>mV}`xVd9@Wq>bGA%w{&jyTM5o^Sh5n3~anGRs`=v$MMbe`3!W{MBuNe6$ zbMX1jseC5?8T~U=>cyWqyLMLbEaR;DnWZzcXG&+5&&ZvjQBVH->H6u_(+a0$s4su< zRO8h8g3^L4_2w_n&&?k_#WdglPcBfO{@O{! zlZ=z@MT)5*&k~E2 zmqiNX40?pKNHI0!S!$8;ib#Q+L62}2DW--z%Pdk}6)BK2=n>8$#ng~zxkburA_Z~= zJ;GU}m`1MstVPNjwB$5{T<8_f=ES0TCF7wQdT~=76yd_c~XV4>@MT)7h%Xta=t~%=R^wR40?pK zNHH~bS!t2-d65D+gC5~5QcR6q1}swcixkKi^ay8>VruM?wMZ$86v!F$2xpOEYV5Mg zBIO;C0y%>o;Ve>2ja^n-q`XH@=|AW|S_&?B5him9>7I*XJKMGE8$dW6;~=Eg4TEmFQ9QXps0Bb-Hwsjo;Ve>2ja@FXNcplzft*2) za26@1#x56IqNk7XH1P<1}#!5A_Z~=J;GU(#njkk$Rg$IA_Z~=J;GU}m>Rp}EKo;Ve>2ja@cbqsNR1uUH*aU{rA$vPnWl--v3l;15l-U z|10TYr^^de?|(X7{*vncx6?(X%fstb`2?!_|2Eb857FiSP@VsybUBGG-=%v0jdc0d zDpkIV>iu=Pe2MD)*V5%TRPTQeT{=@MT+U%*dB|NABhym8T1HekzzVGcCAIqAzE^ZL8|j4HQ_e4 zgY7!XY~q|MxdLqY`D=Oy_iWj;Yj9ovqBSd59b=l(X|F|MjZ(T8g7uZDYbvqsT(*DV^nsRTj$o;t}E949YgtI7X z#`LtB#_71xBJ&rN)6F0kMueZFteJ`D)s%aaMeZ*}F60bGg}dlk-OjemcwT+XHxg%S zmY>(ZYVP2omFEqZ3Tztl;AV^9Us2dG402(cuvvivEHIK3PwvXKYX;V?5#h$F{<#x{ zHf7&pk$sp_yBVbFeKI0!R_Ml#HD2hI>z0_xZ0bTjVv$>?tWE~GFeGeNW;b(>L>gsY z*S~7Xik0gpOKVCkSfu`r^12!1!lC_LHgy2J z-6HuvDf3tcxiBGYR_GuLj4(ff4I~k-}E_ER(GiKLl3C3|L;}#$+uLw?Z>KIdQ+8qzNE@;Kds8A zUZKigyGNB5eNUDDIAA|Bt@=KS`IlbooAg_uq=||8%*+|JP5tsQv$U+*FW>pZ#w$y|POD z){=gZ_2+2_LfzBtj!E>xTInXQ8(_?QFUHLGc7RUM1-d~GkcJ5b*nk~4fC?~Nz8Ayg zds_fT%J*WVd@n}G_j-X3V1#@xM#%SKgnTas$M<4zd@lya_hN8-F-x8ogX2$ITMU)& z#ZdX)c7Rdxy=kC>4$uj@KsS&NJWZ<%Y`_j2Km|^~K`U?pH}C*2@Bt0@K@fyM7(_r6 z#E5BY8^`T!APKZX&(cCb00cn@gh2#EK^(M!1W1B*kOFC-gHF%|xt07Gm1kw&Hdda04&!0S)*;00cn@gn{San{;R30~+vy00@E*2!jYn1Lw%wv?`zl zv;r4!0}t>54fu&^Ya77rK@b9A5CKsT2W=n$lAs-=KpN z?H~no&;dF@7w878kC1>2Y#=6X8^H?@D8L5n0FzUAF*yb81_b7#pgn+a0XM*W6to8r zn2&;X0|MQb=s71a6$L%#1g4^(=bXS)6!gRsn1zC#a{{wa&~r{;77BXKi4M>Sx&bDj z@X9~|=&a<$#1mdjJmJN}6JAUT;Z5NsoCZ4R0G*%*i-9<30|}4>?H~no&;dF@7w87e_Z*cM$iN2dzyVa? z1RS)0R^SF6-~~RQ0Y3<%7xQ{}F|UUg^LltOuZI`&dU!FfhZpmDcrmYs7gKt8F`I`Mvw3(in}-*( zd3Z6KhqnWC0ZicGW%~&U$Up%$UcpaXP*F3=4mYt07T^LN-~~RQ0Y3Lqe zejVFlJyVB0jl-pF|9aY|2E+q~Jwf_R#~Hw{?(_{#p0F#{X#F0RkTv+^)$<5i@4P_M#~EI(StEB zh5FQZ`7k?!mk(tbzggTZdN51t+)ED@vspAUF!KU^$QfX~vEf|3bf=b~wTwSCz7A{Y z`K8~z(kP(<4^8;NUl4!x(p7pmp$t))4LCsRAQiHsZv(AUnijUNu`oQ^HE;nAEIDTH z^vw0#DE<)HKY~NnUD)p)rfWlw;C>~7y+|A+f?93pO^a($f#%|?JyxW70rHQQXjXvS!`j0}u}-}K&=Vm0VCjMS{l@)8 zns+aAZ|$DqJ;putyGwUx@0RW^-<6}e_bPYh@6_+C-cg|0_iDEnZ#QnQ-&Uge_oUm( zx8`ouZmksZ1-(!mDU4)BYBUF*aZCN?(#_eMC7OjVcawHg<;FbC#8ALK7(sgB;jZfQKxi){Ter=WJnX@0)) zw%j&t*1Z7qjn!Nsm&w(JibKZG{>yWhYc#K4{xbct>ej;649)CU++u90Z!T@lZk9He zH{~{In<_NFpZRh1!O~!MP@*~ha+hkCRxZh3qSGvYg^M#6*DfkvWY9c+r3E3`w6?q^w?_MvJqWbVR+i_N>oosgVOeHb zZE10-K{EiBmSmSmOUnH@ngg)1IKNn5TwPS4SpaJbiwli~b)!V{07^!=FW0B_RcIza z{ha(~`p)*9b?A)!r;nUAaB6zN;ZqLG8=X63(HCIk_{{OO=vE^fO zG{awIPJWI)r`l7XIsR(h#crd!-c{<#c1d03&RnNPGyUZ|^p2`NMtuOJbeZP)(^8f8 ze7oLWrJ4RR$y%bAFcS5)Qd_o7YAeTcagApC%g6LsHCmt<|7ww9#E8_x2SWLfPV@a0 z{)h7b9HM#ujFvht@hq2U=D(a%b5_*6s?*$m1xLnFvls0K&Hh)iWo?qJtmJ6^zlxlf zb-5}PXa+#WPCxG5F*nu!|8o5MKkENGhJGu)`%gW$JXv{wlO*&rev;%qi<2anRiKAK zE{q79ou0wTsPQxEy)#ZmWlS|g_ge&WitM5eUI>OEVY9O{I2+Zd8Cp4hcKJwoO|cJH z#G(~NCxcuV6kfxIsSaUgg_MiAa8i3<`QYj`i%h2*Gp0J42Q5?%LJHsx^bFHkiw4s-GFP zh}A?ab8e^ioy@P9}J-w#7 znMW;hV%}uXHGZPdrsStAlDkAQ0 zenuL}#`(sIl}nFOPhhH#dDDy3$|KO^AWAO#1y?CzaL(TIRu_sbs4})A76*ep9k-fOTe_++h z^Ty-H3v5n)!6LbrGP@b%!mtn@FSZ}$IUV1Z1|}k>9;xPtT=!Bf@5-YVfaW} zqRGY=b4|f7TLhmaN((uI0pTo4JI`EN)5n=tEJDwwpdJRfFe3aUrJXnV+?s-4wFo|k zBI68lVMsX0_Rs-p)3mo7CO#$m*m%z^x1b!wwf)9-Zj-~a4+hn)L!hy3qfamaW7$|1-8=#a;rRpsL^R^@k|QRTB~ zK7jAXRr$i>RQV^@sq&T74xs*;Dqp{s>inas{KOnpPEk96mtUdB&}IMos(kuxRj%Bw z%FF3ey^S7wjVjk3R^=;ps`791s(h=a%C4L$KQ^q&iBVN%2PBrdblaCbRR4b#)jduA z>@TvkG%9{o`!N2W?xg<|4q8AfZ~-^)059+X4fsI-1VIRdK?FoW48%bjNPr}02PuFS z1`1jjC>@{^poM|b4bZ|sK??þrWpqYV!W(EqH87OFGprDz7f@TH^ni(jqzy;9O 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
  • FVRQz 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%0A>gRQ_O2 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%0A5|9JWFWS$$47cVdBO{IP|;fAJ7{Q3W$ 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

    H_+^$IdeL_-;d_6G}1HsGo7kR^CN4h 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

    5+HdHHy@~m4~5`k23t&*mH z^DklCY{t!e3vQaY`M1%3>AL`(Umtr>c`^M$^abUG)bsZ9x#tqkSJ4`yuKJm2mbndC-Q}$E&?Wyh2?aKDlllGIjClXJXPh{y_dy9@5 zh(BgLmVPw$sPbrPo4qafNa7Kbju?nNtUR20$fn~35)YaWW*>+@VA9b7(NunGa;rth z3dFaVTQc{@?pN+l-DlsIyEk#KN$1<+IDyRF@w<(?)0?AoltA(>`>y<*$vZ7N<34$Z zbw}>@#O)>>BM`eyxh;Kb^j7886rFXi+>%bll14H^=iQr|vNtDgwrvm(C2T#;R#SZ*!PElbkb`uV}sV03VJskJmW zkfgKq^U+i^8dbjF@c?W=`luM4x1X6GpKs33&P&jl`?J;oyDJ> znV4zK%pIDf^Z4^KQZu466grbXHr<$>IV66FN$2vjk>da|Q{z+3saY#wSyrw)N$2zD z4@w;rJxDnyO=t8QU70EIDdv#mTyhb+5Jju+KiconTf6FfxI7zzk&RY=6t2^Cf+@FYirxqh7_E)?;+ef2J~C zX;x+{5_HyojwiXz^ID3|`&YEIC+0Cc89MXdbZ5&GQdked>R?cA$jlBOy{eSfO|DrUp=f}!LpU8CY@rjJ12D3}@*+`x~S7>99 z3u}b?|B1|4wZM^@m8AYnq(aVMwGbzNucJ%Tj{6$cnLb>{=o-I6O9y)#pSU^CkN$xq z^)tHT76!S{FDx}yTzWbvK50bqXicPh66S8?q5g2L^`*Ryv32IN|MwlGK0Dy|y#Rg*C!b!^DSdg$ht1xvyvW*kB#8Ka#}$lL9*! z_Y#oJ|_avzb<#jN~g|)&`gDos%6hsQi1NP#jV-Kz)_kBrj86~zb z$b|u6;UceluCTc5c$K(PucM6VD8l?yl2|ShA!pDpEH%>4S5{mfcywiT1pZ7Cs8L8O zgIri8#JR9Tdnvf%($%%BuWx9eca`(W>nOW?APJ>Uyr}E~sU%9)3rmd>rKU#llGNAN zKd@xc&_JI}@uS0aB>!BJtW#P$gIri6j8SDewwIUS!mET$C#dgH#Izg*mtRO?y%gBN zAQ#pOOAYw*C$K0o4cJr;9~-VC_m`4fKP8435Tas2Q(xA>@KzK6SNH6<)9=w4ARNSm@<>0_PQ7RwVy5uAwbs_}n4ElwI zGw@Hr%ocx%BSgv>U43JoIPPF1<5!Xlx~eEGHmD2z!ct{@TpOYs$1hkjkUf&|Ye`0< z$bdS7eqpI&B*rqjrx#`XMv~DiGN8_2Kv>Awb6FK05E{ok$3T87326}_P-ie8l!rJ* z@;gaLs|bNQg8?CqNL)ux<#Au)Fda9Yvb&&fYVkwzdr3%}2!T3-0pYoHtYztt!6g(@ z{Frv4Elw52A@*0MdX5>d5&lBCz6aVkpXoE1H!_x+Vjw=!fO{TE9Vn9F9|tFgg~9a zfKVRdc>exX64EU~pw6IQSa?MC97*Aoo*of;`ciRlWPSfsl3|Gqs59sn7Bae7<(4va z+hVsmm-+zyd^KISf00|Qp(#zh02dzbR)2pSUAO-X>f1-t^QXJj{$t(hN2}cG)ijwj zy-qy5x&K0m z!8Hebu|M#CGWm=BL31R*8XNZ*s>mK*~)3WY;4sy>w;Qjkd2=6g- zRr~&frak_^-1!=-yv$cYkMw%q=A!?m2UXehP3EPakNuQ>7ViHR3mZEL7ahqOu3Y~L z3(zy9!grugrF-b`nPa~_^8BDbicpBvM1N@o=`XD^`b(>McuMiYy9_fRy`#XKgTDA5 zxreXA5cjx$uWK)}+A-$_HjS;niA@Xc*uVbff+UQF}QV?WKH zC-<}(dU8*zqbK(?jh@`oLc_1KX$n1?rp3!gJob~83eHm%CQVMmO&MkK^>Ms2+N=X%fN-=P_GcBtH?Wq^U&%gywl?gdLDvt{c=h!()N+hSlaFX`cjb|fXm5X}W7a-@HTZni z!kD!N%$g6gRw19Oz1>T&`xLAYNneH6C004rcbRXqZwtM`7p=XcFYmPe)^0tG&8Vio zsxfIDZxDa8jn?_2#{YidZ|E=T=`Usl2_v*$3Dxwg`+es=niHci7qU6`Va@|zWX=Pa z^M>_nS><)U2095(^;L|mBEcXH%@aA1RVHbPO&$9={j_PKSG1Oe z)lDfD_C_9{TagD@I6zy~uxsZdEbQ)nl!f`u$5}W`D_z)6Th(yGj%Vo(0?*Se+O&r2 zA}`V}?;;vEy+rrY{W1#&KY4|PTj=>*w58o+BznZLk=o<`m0`z*caQ&XaX#nw`2R31 zAAgjd74&SQrQ6`!Hntqco<4l{X{@WFJHfgdX=~e6x%E2MrO`^!#C+D zN4IV#XrXmg(?aXgXr<^1(L(F0rsdUDPm8Lnkrq`~BQ2^f?@KFW>zdw*Bg?oUYRyH|}eW)zWk9 z-`5;_osZ3C-$Tw9f`&OKG4CTjUcA(4rt0a({s!86USIql;su3cd|PN$xX!nkR*MF@ zwYhjPi-k;g5u(?Wu4Z~A=?c*+Nmo6+l5}ZU71Z@f*5$$aP(!aI^fOv1JXk5*SScFm zm844(D+RrNbaAW{I#!A*tO^l&)#xh6s?bcY8eNU_s?mjGPrF*^Rin$GSBvvV2R?tKM(3{<^B2ba)nfi?F@J8%UxZ%iy2>zrRhU0F=C2I%SBCiu zVgAZ7e?iQj8}r98e+K5S3G?T|{Dm=pAm}b$6&@5VEnnkODX3?skS+vS%5n2^Ai&h=YBK_=kf@aauXclSL^*&}*(kxoF zG>eu_vuOEg7OfhZMN6eu6U#%hXhmoittOg93kU65Ce5N%MYCA6E`R~|91vA&agEBTiFR{qV@o6$Fw zH`Cva{Xh2ZJHCzcz90B=M-t#e9&k8tZybkYc@o<46hu<8WDSC(hNlD#+p;a2ke9p( z?`^_+oA7q**n(H$OraTVer*$>?XOLmG!@cxrN1^po6#m|`}=;r2a-5S;3NO~Pkygg zkk`Efon(CQ+&wqG2jHIHw|+nK&GbN40hi`&e`*%#ku@5^4Fps^To*CnruT$jH#MWZoj*QT$DU1MF7q45~(t21$JG<_BB z{E*viT@u@A?TpY!3b_kM&$DT)gv7b|&0`}08V4ahXb)yLMAjc%vu)MkzEoedPwPvs zh|#D9nMgchN3zQkG_FDJtmv7CP90q``!^f1CyveQos;WH_CzoOLE-)cu~4dgyk)F$ zv~C;UOCTCp?(3}z(KrAJPuP>INLEB>B!E0Wsc#P>nA1f2X1I5>Jf38Sa zM6cQ`puzgttLb-@;iDutgV7JKb6p1eg(6}xM?gbBKZ}UoSt5Fiuj2kv5wV0Lpdny@ z-AzA#-Eowwd4*32hWoG4f$9)f-~F{BAUUd8Pj?wwz} zw0@(=IFmD=A)v`R8KtgEQif|`{ih=1EY5(2fF|o?9JxlEYoC?N@X~%1TawG%gAmU`NIEM_n(@er0g;I{GFZ-h1J~ zcbOt&6^B4WzyPZbarLlrMaUWsfrfwq7N2)qNz;tS;c)R0%cBTc%OTJZ&}4Ve2lPkV*B7?Okv`Y1-mA!1#~IKN&}6aAhiBP$ zg=ev5ZrN}s+Ga!xfL;6_^GB96+ihC}e)7fD!w;`fi%aX?kg+M_;zfqyOnnkG_W{FHNuXdGxbr z`u+-!e%+8qw`h7N>d{xx^y6O2qp2h0(Zyj+ys+!w!ZE70~WC=Q1VUuW4ES}xGc%UJmpGCytSt1q}pIEgjA}-?yXb9+M5wU2Nh(*QU>1tC% zT+R{D5YW#eV&N1VlvXW5!^_ zwN-}{5m#~qGz9dsh$wwoW-#K~sBJ~WRU82g0sSl@N?(>4jJOW2or;LP903ghO%`KY zVau5DD4ZJh_q#WYE=9)GoB<61P1eca-d`Luo#EOtx)mAMa0WC4G+8HuyZ_NMT$@IZ zBI8=lfQEo3>tt~MKYE61+nA%sxQ;U*4Qs|3(8=Hp;OH5yjbpAN<9g13hJYsPWE^?6 z5U37uZ6hZuLdG}*8UhAbb%<*tIYkkY;1FmC7+}>QuC1h35pp|+KpOv!L!dgu zwV8w!A$M>HGz1K=>JZmW;wrF;o35m zDIy-?2xtiCXAv>W`PB;7c5$jAVw@wOA)v|P7=tqzpuYUC}<@%FU`_HH8+f@HwMw5r8m+3qIXVUb2s{QxTR7cbMr+V}aH2t4t9{oO= z=FpVc;?Xal>6i3<|3_&$iKaiGx_<{v|3$U`vjZM|F-?Ec@6oTMsfwo8srFw%(+{cs zziGZlZ=~s?uty)F>8DitKSFv(7ZLd%)pJ#db zKtsR)>l|3OPrthJtngV14MgnTxcd|#&v6Je1Prk15Z7_9UlH;=hd@KX0ILph9r*?n zAun(UGz1K=>JZnlZ>1vSMGk?6fB{w=;yU`RQiQz3AdDZT&)O6aR@X746y1D*LJc-5%MaBKtn(p=z$!iE7D6u=!osaxqv^|=Q=k$M-lNF zy~n1$8x#?5aRf93q~RwD5wn~d_PMr=K}E!8I0701`dPGM zmUBb;E)hCg;c9MF5%D%hKtn)3i-=jy4f|Z%#gHQ6U56Rd3}^^wvQ9?nb3^ymu|<*bA!k5CK$CScN}n6LH;;1_ z86R;5Gz2tRC!_SWH~02&o+9J(oB`=3v?SejmUIqIrM?hD=U46xBw1KtsR)s}6A;KQ2;)e2GJ#Az*-2hq#U)TNNQ+ z<`8HI7+}>Qu4BkHMaWk;1k&&?90JuLuA@jy5%N_IfrfwqRvqFxj%-(i{2qruLqI<} zO2?5|&ae7i=T|!v5ntm7Xb9+M5i!g8RljQ+*{O*5I!8bntA-;WB4#UV7+yA%=M z;0S04=w}fz%lTEmYx}rZ5%EoqfQEp677??YU-i4Tj!P5~zt0iS5YW#eVwUr(e%dyA zrz-zT6%l{H5zr9O&mv;R`PI+XSLn$zJ^INs{ULq!e<@8BG`)PfM?Zsp^Z(uRJ^Ix& z`DuEKe(&E;(_ho){x{N8Pu~N0pFaCvPt#B6bN{<(>ZIu_D?R#oH2rdsM}M5AFiqcH z=+Q5ysgkDG7Et|9(_hi&{`+XEq3K=v?0+>r{~z?|x6#y06Y8Z4Px-=UZ>Qh?w{;Z# z{(s^!y351ae16qMgTc~|R&Mn-``W$z8a;$QxLTNHpd3^H4`@8NMwm^Y8MJ^_(9ye2 zm?2<;PS6D~)U3CIUlpUe`Y?2=ubckHSGzwZeBO!eG%rLyX!GwUs`t|ms=5zcEPNef zSJAWmap7wnyj}S0@q2|&j@>7Gp1=e2pB;Ws`1C^$)7_m8CWWu&(4)fFeCRRZtDAV7 zUb**4nn$-L^aV$s6TYeg6T;WC?PcL>Jn#zrX9r)Ue>eV`@YRRjpdj(K@HH)ehyKao zcZIKE@I(49CO)FS9s8Kx!Qkg8oURx7=+HR1n4IP`jm?;$E&rnXUo`IjhI>Z$!4CY^ z4~yD)4eK!f{&IRo+eDB1UwC@wx@U9`&U4RbKE%J#oPLcSTI7|5HK`q5B}^TZfpSoZ zH7P+As0IdT=QRmJzy_T_4APp^fDXz)IcONaQF!Rrdh`o1>Nbt^C$kAOgZ9BKqQd6C zsX6?psBRIDi)wBEgs7fF-xITH|C&kw4+B@ zhp0#BPdBTj&uX^oYQI>Idd>>IZ(hnU>E# zM*X01jJiN2jj-qo9H6ytEvL2L5TLbRJ4kE4Vw_fd$DzUsntV61x7%6TlQZUpGK!PfOp@Y5jqeg0THT~Jwi8lA}_JB4A(B?9gzf=VEPf%f@;ADAEjFjBIYeg#i$w&>438*T1Jn_JOl z6KyU>n7Sw@yfPtaC^wWHL zjRyL&FN8LCq0JWBSC97TXkQQ7HwSw*8|`aD`+R7hf%a9Sebs2653TZ}Rkdi9g;upr zH^_w4esmf;!NMH{S%BK?`UF806YZwd+t!4eCaNdeEQ{8q|sg8E8;78dQY_RiQx!8stNRYS5qn8q_k~ASbF~x|D7+UR{v zHmDsf=m0Y=iu~@6zgq&oTLQmZ0>4`V|Nkz5o6zj$7%e5?5I7Oy()24_^RBM$txpQ=J%xbME4}G7`uG*vTeJq-I+_{m)e(RFG*Yy zz9e^X^5V$F`CX}9(OufE^iKSGJ+s5wk=Y*KZg0=V60vYBw=KCXvMsT7^rCGS4ql*L zkUl?lzIA@)ym;aF?csBCTasHMTk@Mzo1>ex&FM|rru4?xMr&hcBtBw~WQP+p%0PT* zTXb-6`G)-Z)cWXpZGC!OY@M|(vo^lgUYk89aZdQ0+?wQ?$eR4>)avMJt!P|<%*yym zdu4VYF%TZe^(Xry{rSFdUuZ=jB9^Dmik)Shl{qthrhR7ijKmq?GjgXVPmi3QKP`1y z^fc|X^r^8^ty440;>+x1*`*!fT@6b)&ibVsbi>d3Um+wJyj zo7E;-4>uobI@oxiVSoKZ-FWR-&1ldLX03!3wsL`FAQH%%DKlznX4)U~TmFnM?z4Sa zBVmM%Ty?TKQk}0#RYj|`s&-i*i8XG89bdY3CQ{+KhMA)v`R8KplPa$nWELXq)p&VYu1ChKIB{%pv7 zS#OUb<2#%I4FOHo$teBVko&scm5PjmoB<61P1eaM{n?QF!roPij4WqBLqL;tGD?3o zge!aWD159rs>t{g&VYu1ChKIB{%pv-dBhbNf65uq5YS|ujMASCxwntKii|&}*KH8c zU<0gkVSVR}%|lFo_r|?}T&)QC3l4#XfB{w=;=1mAjUwc`90Cmi1FSm4b>;h7MacI! z1R4ScSarxk-hK*w>pDfqUvdaE1Prk15ZBf3>lGp2=MZQJ7+}>QuB~LBBIE}g0u2EJ ztUAPX6uChW@>d)J4FLnJI>dDxxls{vh+eo}K!Y_|XEc~2Z)xuQ)`P}m8Q^0~VZGm^ z$jH&F*9mB_eij+KMCgcZv2cT$!2v$R6e4a`MEr=DK%DWIJREKq z>gPjDA>$TB#@}!TGz2u+J@h-{qYW(JEUI221%W3lLhgP?Hw|>7ON2>B(4KtsR)>#Xup zA+*X@yVm)GijaTj5NHT!vRGWZ=-xUr9)*52v}Is@@t*x5MaF+{1~ddTSuCy686%WY zyxJdDWc-RVpdp~i?x6kpUa@ROGbZ;|eP<6Xn=fcYC(!5i^xOYR`u_iG^xgjm{r>;2 z=yU%YXsV+rO`rX*qv;>%bN{>W`Tr8<^Z#?{`~N?q@BcqS)A2NYW5lCxqv_Yf9{ow0 z=F|88zfIr&zlz ztOI8c66xzN-kU$Fh!8qXsG!06SwvhlOT>oaJ?&$P2#q74A)uc{#O_%lRu^w{k1HZ{ zj(~=MChJ6$I$%U-4^_O;J)y`b;|ypBXtGYmk>5geRybw!6`xK$smLhj3}^^QL%@+v z#??oxaOYRXlrii&pL$9WQo$k65HP^1LtH0RPb)$yIRqL4n(Q7ri0>DZ{m}o>gR2aRxL5G+8I3)X67hxR%v(iVPoTK!ZL7M+U^e zf29u@k^X`8#oPJwiVQzzK!a|liwuYi+<0@wqj2bp^bfmE+g?y)n4AF(`tk=dATlnd z1JjJhRL07o;+@Hhii`kfKtn*2MaFJQnemv)SiQ1%Z}O5N!{Q8R2xziSM#;TNzk6>o zp~whw1~dc=u*evtH8SH-xNa5c9~^dVASp#i4TnHOzyPZbacvlSRn&G|hMvI`F{2=7HjKlh+j)&71*gL_yAg&eAHKF*HzoZt{jA zqm5qiGyx^+XZOuf%(Bf|XSw-G) zlr$iqWP@y}JS@dR9xiOIzjf=1O~<)LUw&7SH;T>1_89V3($&Ec&T|ca{GKB3 zcuHy$P_lLG6?B}#5}om&_2#1if!Fc^?H^bf*|>J(xZZs$SI)yfENp7~6^SQPRx^#S zfJE5DZl%F$ub_Hh#)FooMbp-;Yd7?rvvtMlk>RZaTUHN`6y>EAdGk2~N&#zFXQbLA z3v!GHY+`8M^^uW{G@f-Y?MViT(%x63E#NdLX}Bk(!DCGe_wHL(d^Gt$k+zW2pcJr% zJ=V1Oz59BL(>^SuJuqV>*rJT)Xf(_)))tg(J-d~*^6QRr?u9XbY3$v|rlGB?H!NJZ zV8Pb2w}!>w)Ww016lo_>PM3hyYy&jRa{a}B@#wuY{oX%&^bwkVY2w>Y{u1YSzdTn|2R<3QI+TvWUgzo-aY zPOsP|pk#fl6L{qA-|03qGW+mQaT8qwcz;Qe*vE-b3g}~zh=O;0VPZKzozG*bDFQF2 zmv0kLvOZS5OkIhtgW?}55>XYj@`rVjrF-tu9A}wgt-2o5%d~iJ8g?BM|40!Sr&nwh zP_hQ=EYnhfv`k%ru0!GVb}gUs|dW6UcOC0$@_)zM*ho_r~Y^^IhBGpD7aW;zTF~^s%K9 zou!Jz;-%_N{NIYiyEzd`0e!4GvG}ZizH9UUb4B8PoCu|WbaznF861Kyj?tf{9=wCA z5gTSM)yO>jlR|m=7m7rT4%NnEL`l}imP&M%DiU2w)k&OsV|entlfC*SH2wS}uYLzj z7ELeFwSbdo`cjKmKZmBjZ1(Dx9`DtE+2qylrm1$GSAV6^tIwzDz+A7sp~0*Fu->ch zq3JhuUi|@@S}MHyTisrL2~FRu@#-6C`kPL#9;ZnJz4{}TS8ubu`a1!yerky3O_Yhp zt8#sJS8o%eU7qRpxcn0lN_~$1TyywyVqna!rT;6d1NEQ*G=e733|c@dXant_1B8GL zIzboc20dU7m(0zzZsY1XZ9K7{CYo zzytwcfgq>>wV)2vg9gwDnm{vX0j;17w1W;10=QQ}StsZM-Jl1|0ds-YOX#2sl!FT3 z0bWoEB&Y(_zyLnr2POyr3j{$8s0DSP9yEYP&;*)63upyxpdEC85U@cf=mOoK2h0I; zfwr8`K^Z6q6~F_$pb|(>1*(Aoe83M(5C9ekf*Mc@>Oehc0F9stG=mn<3fe$B=l~&L zgHF%|x%0;ZNWi2uK~574%CAN&>wV)2v zg9gwDnm{vX0j&U|0hhG{j9Xk50yfYl2pyDxa!>(0zzZsY1XZ9K7{Eu+JM`nZ2?D?Z zK~Mu~K^>?E4WJP;fo9MGT0t9V2OS^;Y|sh1KsV?CVn3k)9h8A`Pysx^OVB&4#B&L% zKs7Lc5BPxz0>A=6Py=c~9jFHlpb<2IX3zp!K^tfX9Uug3&JLmu*f|j9; z=bfMnbb}r+2MD^;3mvKm9h8A`Pysx^3o3yGRiGN+E-`edBK*JvbUQU_1PFo}Pz&ln zJ!k-ppoyS&*o@~bpcS-%cF+Mrzy_V53v`1XFb9YLp#dF~fpSm*JirSofdo~c8W_L_ z{J;bOV1Xb(@302XYe5~T2MwSRG=XN&0$M>EXa^l21Z*Hega&j_2FgJN@BlBU1QJw% zYG42#@B1;!3Isqs zXa$`>53R;pB>bQjG=mV(=pIC6xJgu5>);ytFF@HgLIM-iffir`eUzvKeozaVK?rDL zgctZg4QK)#KLxr&H-@T1%(*$M#$MGw;RUv){|Un|L?;Ztk_SwX<;b(KtB%g^qlYct(bo6QM>GV^vr>v(kPsX3L zpUggycp~sb=JELB_T$;d5|4!+%RQQWH1cRZnMy{JS~5Kz8@I+YkHjCbAIUzPcsTrU z?xEyEp@*^$CLRnwn0p}kK;(h^{i*w-_iOj3?~C1M-IuvHey@FR_MXH&;d^p-C-08j zoxdw}SM)CJuJoO;JFPo2cf{`yccgER-EQ5UNyHO&B0H8C3yOZ_BRA%6NZk;<;n2S1zR14(^{MNl*K60OuZvx0 zU6;8weyx3N_L{^s;cIeNC$ElNo!^_<8{MnzO~+$#E1nsRPyNFFz?JbU?JKi;5_`gX zFamt!iu~oN%cGZTm!~g_U1nXD*&W|)@6KMDxHNoe?vmsskxTLyr!J0OtX-Vm729R) zn%EiLsqIYfh#mDe_xY`!+>7sfBNFU($$xFCE%?)>EWk@NHCjhz=h zFL!S8+{n54EvYThE!vj!=GbOyb7oU~lf5asF|jecF*lMNiHzijQ^V0=Z8$v?8?uHn z(RkF3W(T(oT7#Jl@eTHd?E1v|@cP`kf(#(?h5_?H@abj_Jac)s^ zQDjkmVQOJ?p|&u+Ahy6-keMH!Z_m$$6EvJ`t~c2m>CK;#Iwg9Fc1rr>*vZz(nUmrt z*(YUBOq>`#F?T}pgvbf`<5R~+kJpY*&x_5o=4FnH&-nd*z9-ca?a_MD-LY=#n198e zXbZRHT9d7j)_hBSR&%B)-efmr8xxJ;##}?PA<~eqPt`~3wfb~jtj?;- z)W&P=+H6gtCR~#XCWDb+-bz_fOS95}SilNo%(!WrS%1PG_UC*_U&NO;QbyF!jC6IZ z+N#b}#jEV9tW3zT%vB~UBb9k?${Y1+-n1v?u{@cIc!gb&El-q(%X4MPvPfB8Pw7!z z)6-f^v$TxBwOijgU;p!asQ!PayQuy@^ocl0cj|vs6a!<7ZTNlM0FuiT}V_H z64ix7bs7ZTNlM0FuiT}V_H64ix7bsfAyIEg)Eg4@hD5y~QEy1p8xr+~M7<$VZ%EV|67_~ey&+L=NYon=^@c>fAyIEg z)Eg4@hD5y~QEy1p8xr+~M7=TfK2di_)EyFaheX{WQFTaE9THWCMAactbx2el5>pkheXvOQFTaE9THWCMAactbx2el5>OMC~C_ zdq~tC619g!?IBTnNYow@wTDFQAyIos)E*MGheYimQF}<#9ul>OMC~#4K2d{6)F2Wy zh(rxi`5;OVi4sJj1d%8~BuWs85=5c|ktjhVN)U+>M4|+dC_yAj5Q!2*q6DF@q7o=U zBuWs85=5c|ktjhVN)U+>M4|+dC_yAj5Q!2*q6C?IqYt7KktjtZN)d@tM4}LpC`2R* z5s5-Xq7acNL?j9ki9$r85RoWEBnlCULPVkvktjqY3K5AyM4}LpC`2R*5s5-Xq7acN zL?j9ki9$qrK_!r&ikNzz)tF-dAMgVc1b_vCpa#@}I#3T9KqF`Z&7cLef;P|&IzR~6 zpc81@2pyDxa!>(0zzZsgsrM-{rwUX91NeX+m>>Ww5Ck=#7Sw@y&;S}i6KDo4pcS-% zcF+Mrzy_V53v`1XFbB*9+Gx@H)aehh43vWk-~nDx2_&cj)xZEg;0GoM01E^`4X6cm zpdK`UM$iPBK?`UFZJ-@=fDo{WspZ*;IbEO|^nf{FF3`pZ9h8A`Pysx^3o3yGRiGLe zzz6)m1OZ@yAgBSgpbpf72G9taKr=D*K3g!S6|{kN&;dfg2A!Y_bb}r+2h0UxoX~&{ z%0M}&03P54l|X_jPz?;=1AbtF0I)!in0lWzm{SYtKs{&xji3oMgBH*V+CV$#03l$5 zPS6FqK@XS%!~~%M9h8A`Pysx^3o3yGRiK)fdY=a7_<$dnAOI|)@}VG})__`22kJos zXar558MJ^_&<5H;2M7ThbOLdJ(0~rgKsl%Y9^eI)#N-=&NMcSEs0Ie`0Y5N709YUh zYCtWh1NEQ*G=e733|c@dXant_1B8GLIzboc20cI=Bs8ECQ}443bIL&l@BlBU1QJw% zYG42#@B@>meAqeVrvDrNT<_;{A16PKe4PI%^-=UA?W6REu@9{eGatl1n0P<>zV?1P z9ZOs3%>MX(dw=%5#CzfQa_=VJjl7%xZ0fVo&uX7dzY}}MdMERC{B8T~>}L|634bQ{ zR`RXLTlqIbZ)V>}yb*pQ_j>a6$m{vnQm;i{(_Txz8hh1xHSL6 z$vvHXI`VY>snk=^r?jWiPsX0Kp3FQEf5Ltu`*`B<@Z-710*_@LjX!EXnoTB>;bd++ zIUX6$KazSR`iS;O`r+8a*29^H;t$y+uM&*k8@V@sPwJlNJ=#6#yJL4-cW3U3-(}yG zy)$uV_|DuN$vYx<bm8>2UBH>Pih-C*62*%#ku@5^4FxITP+?z-f4k?Zo;rml@%t6iJE zCU(vEtXBt$@4u(*Nna7W!nz`JdHizw^6X`a%fgrCb_b5(ZhY|__KxiK#P;y^Tr3%j z#PZux+oIdFZRxGCt>YI(F3Mk+x-fd7c47L0*ag-Fne*f4+vjJ`OB~acfxt*+I6iC- zXNM9);h|hK8I45qgQ>yjpf;G^5ZhpF$gGdAx7TOaCDw)4<<=(GM%L!fNu3ipC%-1O zCc0+qDAxpHE3K88f%t$uknKDV$-YQmeno0UbcMDe9f?J(NM?C_xxGAlmN+YY zX6#Js%*+|_Gwd_6rzcJipPoA{d0OPO{Hdu^qo-=8rkBN*S<5m@<4f(O*(EdY-Z!=| zyfC*QxgfG2KR-1;I$xWg4#&b)ICG5m@)Q5VYXM^&;f`E;vOUtCZ%egB+qAZHYpm63 z&9uZ@?3QeEqB-20Yf3gnn(~dQ#%QC~m~MzQSPhx_c)eYptrKQr^KdaNp3m6J&sk@?D0 zWwcVOOnYNq%bW4UJ+>!Xk*Ek)32G9taKr?6ot)LCGgANb^Hs}Ohpd0jnIY1jE zbWjG$K?U#tFQ^0(RDo(>09>7rzvWjY=%fK}mzX>{h~LVq5_DQX?-N%errzgoi=Sg@%H9W}&PicV5n&4?I z@QgNiRtJpOuut@o13Fx#ZzJz9VA2mC3&1BD;S0_1r4IONh?F+y!k^#N4$@N{lmict zpbAt21NeX+n7{%-Py^~fJ!k-ppb4~qR?r68K?eu{8*~D3h|quz%0M}&03P54l|X_j zPz?;=1AbtFGJ4UKSAUrGN2l!0o?`Fi+ojqvBq@R!EH zb;4V<&qx19U3Z!kj_dHza`?CxJ|*EZ)$lnV ze8Ge-1xOjh)0b=Et4;7NORN`_Ukj452GoKU%>3gv_#GJ{e_+7B_QRY>(%y{-f?7}y z8bC8>10m1_^yNeas03BO0DfSBTF?NRK^q8xE})MRfe@wtO%43JI`|Kb@SmDU+IP~^ ze`&?jc0A2@;HizLKb!o2`cvTZ>CeSJr+qH{ar9&DLqUfaFA&zAq4e$$lwA*8sE^Q*;#|_k7}c`}r(?R{+-ltY_2DMCqFX&J}>< zQ{ks_PbQxXKbfQN3E1>Kf!O2PIvyUVm2|tp1 zIQeko;rv6XhoTSV=vxBzgP8~74_FVRkMTPK(L1#}Q&j)wZcp4EzCBCd5SUs0CvT11 zn!hD=OY|1)mh{cBo2{EOH^pzVZ_3`7xG{WV?uO(IksI>+Qv0I&w0-I8W7k{PXReDM zk&EnVs>S_Rj2%#E$Te-1g-5$o70J6^q8SSbAG*o3$;oHNMr}n!QL|l)f-_ zp><*Ag7^jY1=;h*&JUlTJ1==&jPA^z8%hpEhVs!=G#b^S>A~2i_)dT*x=+8oD!VeVGQ2W3kQ|5%_YKB{4T)Q zyzso-amnK%$K~gy=0@jgbJKHTbF4X;o_LSllkHA)hr4rK$*xFOzBAPs?bJHccFeZy zOeh|*L)i||k#3K*TkV;)c$?jpZB4X>TXQYRmPkv!In^9()|%5zu_mi2(-?2G8?z0G zhHyi!K3N~B&)22uqIF}n;o4kHvL;fK52k|ApcYJ9G0U;K0aUg^BAdbzl;Q2*oi|DEC&eD$&LGl}miekOrC zFSH3LSs$zZnS|@7AS>n}vXJ;aMItVawhJg(AB&&!Tq%zJi^Wf>L zL_WfiPzva0OGV1BJyZI zc$;ix-%z;tH+J(~KM4CPMdXtl38jF3_820If0aGo^^@KoDk7hum^J|=>tjnTSm$>= z=svwgzdv2z`oZg8D-xgQL?{LHv85V0nbez; z>)Yu1W%dHsPhNA1#Fse{N&$VWlemNa?0OV_XGe*y-`Op2{p9sWip1CGC0hlQtifI* zaKpP&zXcyzO?M8NzI(_5*Y839MiKZXMYRbiSs#l)+ys5bqtL{W)$4}ODNc0VB;m)3 z#JA~1TWJhZBtnC|WY#9Gn$g5a@qX@a6@l+kNSlC?^|1&n-NaQho4BGl@$VFgxX#=m zpkys}H}A@OX|C%rCWWLsq^!oqc-^iY*KFN1&^NMS$bGx2zgHxFo?fzBK*`p#&JBq0 zTYJ}I47UVo#LbnqQtH6a(8fW^K3eQQC}O`zuiGJ@WG&Wd=#f8QoN8#;)lk=N=N}b` zU!tsT0VP|{eu{>MCmZUD{fQ#>s}$HHpky0aXEWJFb6pR<-C47s&18Un0oxZD9C5YR zwbT12MeqT7<+%dVr^{qBTdKW55genNW$=m}+&IG7boZ>OHoKz#k0SbO6xSo5WEv=n&J$3wt!$|_*NWP)c5d^AjU(J>3Xf2uBa>^|75*=Z@ZaZF zLn&YbTdLJ`+tab8$u+%U(@IyPU3>nYDsumTvbqG6Y#m#w(a!Cvu%b6?8W>u+cEjeW zb?iz#tVsPs%IgtOvJLDpw6>Rm-K}-~x;wAP{UdHIlmgbV$KKkh-IXi#Ulpm}p`=a$ zC0onlPAj|ljwJLK(~mJj7-RK;u`@xZwgwx24k)e^TLt9*pbe%^0ToL+b6xSu7 zWb4>cjhybiPVhkArpczdQh%XH{R_(L7ErSFY^kO?M?Fr&01~doy3SyJsfhh9Hx^0( z>)2y#Y=2~AYRBYC{dYy`_c;|x0c+V(jm3Ix5Zu@i_j<*xdnTst{`Vh>)E`h%kARY` zXOG&}s;esW$FKD2?KHh{i&qctq2K;r;MLdC{Q&>se6Jq6+^hfN{a*d*%e?xp@AK-n ze$T5{Jmb~x|2*9<;AyY^?Dby#IJyr&`Z}+E)*P??$30&C0=fslPw2P*H`ID{Fa7@$ zU0%J5rZoNj|IGPb{SU)leG5&0+e`Nzq)E^{0ABv&iNyWY%f%Cg@BgFzpEHrCCg8y* zKTW)aIZJ0KvVM57_qlIt^ee@(`D=Q)4gn<_V4a(`ZADh`V+{9Ot>HWGxz6%jx8eA; zBJmKtVuyhAAqYt$JCR3S8`M(lOM=`|x>ej%6J3G7Q3U=Cy?m#DlC5EJZ5Zp$JtAQ_Xedis$Gh>G6Q`e^XB0Nc1N(r%6D`*0Ec~b+mqWO#SP^lQA@xZY1g~ z*kQhd@BF3s%LXv^pPC{KTVRubGzt%Cvbbx_UaD?qJos)W6=HM$(8>k)t3rmZ$oNl7`_SOO?V?8NG|?UrlCs6&b&#f7&D<4PQeBSSRDi zWrYhv9<*bnt09$&kl%0!q%mMP1gb+^Es=_l|K<=#gTQbIyoS2(ZrUVgJPKWFWW(wK zS4*lCA#?{}T3paz11v6Xmk!xL1E_?H*GaV^MB@-h1Hq6Mi^2jiGaj@)Jan`gS&fw9 z&D~I>=$ry+EEqDts+U)9@uuiggjCQAHw#E(sE{U$kn2j0dpELSlWU#$6&W7RfQEo3 zi*<5w$&3wsD_yI^RAhKL0~+*=0c1d|kkT2eDWiCW1QZ#SoB?Sl7|wvsvf^D+@tQB} z<7rvB)`z9YsOAi42U^oOiAxEz9sh0G*#vQ3wgakMQ(nv5I0@Wd|aYq^yAvGKVX#^G0WN~-m-jc%@ z^$qvBMrmnOWYls7qybbo13DSJPeS*Zd=$11%5W{LCPhXaXFx+hlXWtVTqDjQmoi+- zs#%fI$Qh7^Pa$de6cPi8?J3!R>1;LZ+9|duLYg=P((ox90@Wd|LvE`gq?tn?ji16H za8z7BOG^efQ%i~uA#I9~77l@ifB{w=;#w!|ijZ~=frfwq7W?-rX`1mUoII@VTi@rb zlNo=141fISB9A^u(?8Mpe|OVl)AZ%F9{pUJeoo{6ji2w)PoU|W=XvxPP5(X5qrX7Y zveh2_f7AW{<23nbdXw(|zv2=aBarU@zmKLGn%<@H|JKkL0DnjK|G%B4HW~-;6T1KZ zMwcEOOesV8PE{WWSxxC`?RoY z`{`C>%;5}Z2pC|UyQ*F_W1UY9uu6AT-QXH1wnq^%mqVZ-pr1tuPG4p`#++duH}|`S zwwj}eIF2KrA)v`3VzlHs-`qdwTIX{W8S^*;8UmWElTm7&Q-*7&d7L8Sc+P-^fF|o? zlv?MM;acbO6d5Pc>oy8#uqNw#B5-8E(P6d4OR0~!LFELM4`+a*`f2Tksw(t8yd3poQC0-CIoQEKy;IaGRB zk+Fm`pdp~iI-AFlS5~Gr57$uX^A#COIRhF3n(U_=Dt&<><225IG*}JkXFt_Y=?fJR zr*j0P(P=mWeyX9;7bzmn;0Q?L(U2zl>4r*QtjIW%GoT@$kNq@5r7uw=oW%*y5YW$l zs-e=CDk7G11T+LR**&!R?Vugjj7Oo$S~u9YjyIb^1;0#@(Z?Ck5HP@g%Hh~gRfP0& z2s8u?u%B``_R|z00~`Vk0R!x(9FF~TMaW7Hfi&z7X|kVgIQBCX8LK!08UmW^ryGv_ zOhv}ooB<61P4-xZW2bIc=vrqfGFEd2q!Eia1C|<&-P!BT9MXKbB4Z6_Ktn*2{d7Z` zM-&-1L4$#2`mNLqI=^h~2Y9xW-K%P((yI0vZCEtP@e{ zRCj9J^qGtD&(>4@ex^tF)ASbA{VUI)@%*Unzm=wDnm(rbe~6}krn>)Ln!0HED%JfL zEc58UI?kg%Np=5%r5^p@5|4hxDvw@C)2k~z`f{3nKz08031R-!6>*H%QkS?C6ybQvHAa+@kvbfUEvrsaRG+ zysV%hpvgMR>c~qe&K5Xx{P$IgjA71zG^7<7V4aLo*BFi%|NU%5$Owl(L%;y54sjJx zs}&)eIRqL423UmbEWHu-^}9F1HHwfe90F;?U(#eh-5~SlC^F9F3`k>eaR&T!gUqj0 zWSqwt&=AmMKiwen>l7Imat1U6G+BHxv<~JxZ zwsHof5yLnGBBRu|;VbA1Hts>@2NfCHI0G62nk+JoeUSO6A|u8b&=AmMos5#Z-Wh|; z4=FOXa|Sd746w-f6obqUD?)Z~2s8u?u<8)kb)OMM$W9J{hJXQ99pc(&ZB&F@LN8n| zpuzgtQQBWE5~YsmgDVzcNY}~JxJ`HM}*d?HmCO0sSl@W;qV_xq8**iikTn0vZDPSww_I zsCbWv=Y{JfgY=ys{IPIp=?X=}og4va1V@g5h?wO#*yr>p#7sWEM|J;oG}X|wpKAYg zH2vgss?jg-=pmZENT2&}qA5>x|ARCgx5lG?o$CK>H2sEZ|EFnMNK=;T|0`*#rs>Va z9({nOA1(6ex6tSRjWm5gpZjm1YXJX5b^kpyb6cXZKStBZbRFPZRQK?h-@R_3@(|@-7bMy}A z7o|SjGv0?gH5Znj(O9`a#;A73T?jc*S6O&$78 z3;In1`b{1BjUWA{2K}ZM{iX^1#zwzsN5APnziCFlk?1$o=r=+18xQ(T1^P`n`b`=7 zO*i^Y6Z%aX`b_}+#zw#Kpx=1WZyL~Vs?cvj=r<<%O&R))AN{5c{iX^126y-_tUISU z!RapJ%&430ADy;BoUhBXIf>_rzpcd4DdZ6>V2IZgvc!0#Zt^(D7E|$|v0gQ#^ z?cnu~VW((=rS(r&(P^8;`me?MZ^rts$NI0u`ZuxuYq9=ou>Kpd{zF**ZCL;9SpQ8} z|CLz(RapNP)_(=oe>v8F8P>m!_1}f{-;DL&iuG?|{fDsrE3p1OSpW4{{}SuJ1MA<9 z^{-?7`>_67vHlye{&Ac4!uofbQ!~B(of);$>))ACKfV5)8QS#vFZ?Id>))ACIlca! z8P@drcV@Isum8epOs{`uhHrZP7iLVae`khCD`j&12e85|UhAL+G-6#hfo9MGT0teR zYfuHMfdNdc>j1Do5Y&LC!@GpX-{p^T7pMIx2_Rux_ft2l9;9v<7^iO7x{bPF z<6-KCO^2u()*hs8I2YYeKSbS79-?ljO;9(SgKpS^ZrF`(=$W8y*nWVzVeK~RhTa3z z4I2+oH`K|~QO{o49}s$QD<_7 zFLa{&KdGbTJ=w|X(W@G`Yk?-vjtO=Emc z%){}A?T51uB_0aXoeq-^Mjp&Rka{5cfc8M-{@(jS_Xh3}cOSm<&>aVFKakizHgQ|@ zHtn|bt+89J|KaEb)-{oJ`72XbMz7SaOw%0;tv#75;#b&LWa*xT zsmr35X>`ZJ*lugq@e1-g4sAaeJFsp4)`^S8FC4pI^!#n-4W7GvOYi2~rsSr`ru@d# z#^^?EV|pYuV*NjkJPut<{;c<7eAvXICXwg;(WPCRav^#v{!49a?cP za$x!XvnI|QKV$6l(bKk_I=F24(%vPx#mU8y#rZ|4MbSmtqV&SpLTh1WL41L|AUi)X zKRiDdPKG1ld~d2Z+N<@ZPl=skosu~@ezJXX_N2r~;gfPFCQpo)Wn1%L)AGjNhERQ=PSmDrVl`GxCKwOe!K{_A!d5Pj3`7EX zGi63i%}o1ae#@Wn#eKFfYb1=Yk*iKtN2>Exsj6s|R+W}9X~|4wywa}BdTnpklkkK+ zxr$^(q#|FQDvy?H<>|6mnN^n28;*g$8>!CE>~4%X3`axg$=%E17gq6C9YPl^nCo-SsAtS=8UN~0UbnsXz)|LQ9>^SJZfN3bN0}>~)Abo? z)y_HljJW~loNC70O6Tl-#@rg`6n@6sYUezD#@uq}WPavc=Zt>F+_r7o>DIqE!*%+D zLFYX|FP+N+x`S2|o#_T^ z=u9_g(wS~BKxexDm$mZ%Y~#4{_v``$cF9F$CqWWmk>pNDmU{t2QYBU)NLrFB1*=$! zo1kLJv10>rle^$57de8v<0iP*Sa5pmBtnvlbC={|r1uypcex~Y{=eT_5XMphN4fj2 zy`O*uxF2TUmYFT{{B=~*_197*m(~nggF30L{&uSA`WvZ|>km*R z*YBZ9u0M$Nrjy!Q{w`{3`D=F2decNTU4J*$n+~e!`g^e61hC$?sm|+HcGG&}qB^g? zo$9>)7OL}>R+)-|)rj(nR52CVtM>nH$gB=yQB{1`y`sEwR7|b^u)K0qOm&*|=Sg$W zKIBt3lcp+WO?uK)k6E3bG}UR=sV7bC{W#zizac=O)v1PS2DT1?bs(^f2y6`k+m65n z5m-9{>qKB15m-M0>qKCi5m-M0>qcNb2y86^t0S;p1hxZ#4Ir?62y8n7+lIh4A+YTT ztQ&#tLSQ=(*iHo2fxtE*uptCCfWY=5upJ1j3xO2~tbxF`A+XI9Siik8j^)xJ6EA<9LrOkm2oUj6_s%;Pjy$uu{_mL8OQR}p2|3ur?w-G zZ4+^_Z$o5k~`YoQ@rP z9pc!EI5r`Uw#qn`ONYF2Ou^Jk?Pd$MV!^AMb!` zUFE5+$~cy%)>Ou^Jhi(rj^(Lsh-3Ri9CgIejyN_Wj!wj}199v|936_Qyt5XWhVV=dy?f;cuJj%sBb%cVn-z;YbRQ#&i;Sf1*ujAMCf zQ)L{>Q|*;;EKjYejAMDKQ5muFRC{H_%2Pv?5i3t^MZ^LV5z`Pc8zR<%h-rveCnDB^ zh&d6lT12b`5%VBowTM^)BIZHF>JTvl5pyD94n)j_h_xYNt%#V4h_xVM&4^elBG!V4 z)gfX5M63-FYe&R%M9hzfbs}P|h?s(i1rf1YM63@H(-E;|M63Z3Qz|1?E*)|^mLpc4 z+EE#?@>G9i#L82fD_R>rYBwFPmc zi#Fzw(1|#zh+`|_s3VSDh+{9}s3DGZh+`|_=tdmt5XXAN(TzCPB93*4qXTiQK^zUl zu@!M_K^$#}V>9B|ggCY#j?IW;E#laYIJP2=ZHQwn;^;#hI}pbf#8E{YLx`h}IQAlr z8sgZ5IMySMqB4%<(jif2IgaJ2fyy|Rr`A`-u{^bh^yq0}6{;KcQ+$)J!La*dsPQ4s{x$sh&GB*@o z%)A(TQF$@@Li`2a3%TbL&xfARXH(g5wy-C?C;Qy+vmZXa#`E(4W|M$@+`E7wx%V_>&*5&8&^BRn}(DkDu>5Ker~aCbTBMI<-2yy09v} zD!Qt;GP5$aQdyZjFMgiyyj(mH55@Btm%(=01m5K}q>9hLJ+_!xF zGVjtoW5c5##&!(%FWI+f{ld_~{AsDv!lxDJqIUEX#RZuKu?5QiA#;K6)IBE;pY-7g zJC5%^Zr?HMXM2y{Gjlln;ZZw|j2>A$B6CFS2<3?E;qk+LhvyDU92Pn(e`xB^@S%l6 z(uYJ3DbC2uh|N%DWT(fc`=;lnC8mX@<@-{7;l4s|x;NTe?8)@RdX%1Qcf30u62aY_ zk&X}AlWoD)z0E6{MC0!Ii2nm`(i3#=HCEL5>Tgyu02dpy3$bs~F2a#UyBIYD?Gn`YwDqXHYYDW) zv<(h$qZ8buftz*k(pqp!9k|s1FLQyPa)Xz9h!e%Q!i!0t_JLRW!K>=QWCNIL1h*mC zn07U?jcL~)&6svA@{DQMA<>w2Ju;1H+mUKay8*ezv>TCZOuGr$#OuG|l$F#eUcTBq*iN~~ikaW!jgKr%d|_5|wFRMW!xyvSs@dM;A(|(8~X4=0ai<$N#q%qSzKpr!#fJA26kL$pn7~oG`;LqIP&pqHT zyx=c=;II7Puj|3zAiuiyTO?T5euoU}+V7EKUHd}|_+cwpYy-?Zm57O01qPr3FG=bh`(ANS|YlB$d1~#;VjRCN!18nXD zTe`s3AlMcH+q;RSay$^|!K98}u(J>Bng#}^gCS)-v0DXuY+$b)?5hE%Il$>oaE1mR zqJxLlf``?Cha2D#F7QYWC0T(&I#ZGXE1`g|BtQH(W-B24vOEI<|2XVauCRA{P4cur4H`Rcf9pI%-aEk_R)xpbZ z!B5qJmm9>1VqD?Eq))rSD?Q*<$osA(k@#IpA@jSo4JqHXs~f;;8o_Iu!0Vd9>s!F> zNc^tdfXwgOjqTt~0r2Jy@D^l$*KX|sZwrEy5{sDb25;{H@8|{Z>;vzb2Hq`p6Yo*L zoho>*4ZP0|-d{tUD8>U0OxooHAJo9l=-}>JFjEIUWPlI5z(?HRqaN@vFZj3*e8LYt zSr2};0eq?ve7XsIrWt&;1$?d*+|veT+rj4p;0qn#i=E(0UEs?>@RbnwYB%_r*h_p} z0pC!G6UBJbhDmSP!OzuzZ#%%fPB5o|@95y?Yr!wnfnPMhFS)=kyTPw`z^{72ulc}t z{os4`;MW_#Z#076Yy$T+gZUQlTdm-?+raO%gZ~l$zuN)6-wA%N3;fq0_-`Tb``yHe zV*H>7lYZC>{(B$zBe9S8fdUp(@W(drCwB0sHQ>)2;Ln}lFEsF%I{2$v@Yi+VZw&Ca zF7S75@b@0@4_@#?A6WE*f2;@p)Bygu5&TON_#e&Sf3|>sZ3X|U4g6a>`1b&Dq8R_^ zz@-1~1plWC{3u9t?h+xqQMy632eb+A>vZ5yz#0{F*g&Tp)M`LV!bq%jf^`~b=%A|> zbk~6%1N6E;pBwahzI@-X_cCae| z20Oq|C)nKu_5{J+5ZKoZPU``u_kuI}z(Yho@lXXkOa%|Ofk)WEBWu8;9ALi_3~S&_ z9h`;BRoc;Y;A{gt#swbh29NWA$9usOa8IdrBHt!xR@HZ%gnP!clN-QO8o^VWz(_L~ zZ2{-Bf&*>fU^_Sz0Oxjq^SI8xi~iX)Aa=hUdAsnr)aOE<%e@tUOL;5vX7tShwRZQs z9;23S`nB+D`BxLv&dt6Od!_htnp(N}ml7}eUdmD%w@BFu!!P8ih3k7hn~i0Q)V>Yx z$v>BP&i7p8*}^laXF|{9o{m4QJe_$e`c&bwsn3Q!n|m_;r1E6uiRcrB$5W4o9?v}% ze@uBS^Jw(Z!Xv3iLXTu0jy+s_DE-jhOgy7xGSn_Ed?s~(e1y6CH?Oz8kYQe6T&WJ+wV{ef)am`pk9F>k8MVsP&w? zCSH+yFtja~il>xRCK*i@u1Z}Mx++K4?v*PupN@WdJ>?wCULL!=_^C8y9L!&qxXgE1 zmhuf2x1_g(x8y0?pzqS`=Gf-qru3%pru@dlM&HKlhS-K;BAo~)^6N#_JcFSNa-WRT zRr}1k=(@t%)Y{P69JRBR^D}FrYYNoL4z13uim%#1`33XmC8&L!rR;*m6=`Z+=P9?K zZ#+wF>*6`-bHeB3DYu~S?Ce>wvx<~iFnnhIjKmo}$}1RKUR)MjmRlNMsw~Y=M!~{Z zYAi%o_2Z+;XofNh7GkMbD3%+J4=cl&CDA2?#i_-i#kocCMarVg!sx;RwaNF;wfy3O z^n&n$JYC86&Ckw@%`4J%{P5iTP-4h8l%*Vk#ewudcpy(11buU|(O9$?Nk>AF+^O+X zl~emq$)B7!*>`f5at9VqOrID&F;AHTeJ5m(j~!p6yn*54^2a8Q^-CSLxp7I0wI?NZ%`UC zlohbxPtpAVIm!vB_%hz8w?G*IL!KPn3!u0&uBdB0j}CCAgjgb z96;I`rh5PqbOs<>6Qer-($xOX+Y)sBKTECuqLQYo|9RTP6Q`}H-9gX)f2VZ)pZoud zpeyb2V-goh9+S9U!PB9j!SpckTo;~;nKYE2v$H-HbFsv+ogJVdKo8S&RDYJw`drK< z62}ef01W|pn5LupvwYSEW7bO?H?jjX1n6O!j+v7dmH2pBS)PnZNE|n@12hEaVVaKW z&+=IxjoBb^+{_Np5TJ)?I;ua*S9&(4^!Uw2iQ_hQfQA6QO!JYh{ri0Sy6qnR1C`-P$6N+`$si z5TKVSmsp;=+A5LU$r8{IpqD9^Sf1s(Od`35C7>ZdH*-DhwT>0R{kBB2Z^_}oV~@p0 zrHFh=qS(m_&=8=T3B@r}D2}P@ZRc`{;$BvOh5+46D5iKKanSNa;uR9beXIZt0lJw` z94)FZD9iToX^G-~R)B^8-ApKEO`))C9al;e53m9>1n6c$F>?xqW!tz)qS(a>&=8=T z2}O7cg=Nb~N)!*W0yG5ZW>* zR^oV+9U!GQWd~?Fs@F;eEgQ#m631ig01W|pn5Lt8tz^)$bzCoTJkAc#5TJ)?I;z)7 z1}&S%c8TK&c7TQeJxtS4y;fq~K5mdWo}&3S3y^ZL61`0G;Iyi8y~XQNZ`ahrfOP}8 zQ6hPoC7>ZdFHZd zFHfhsI$8}4EgLHD)jpv9|1Lk*p*GQ&rT+gG()bH{?tdGN z9W=g5&;F0n_NK{~Q{B zM9=?UL1Qb8FH_%tG3o>0x1;p@KaJfqzBS@dm(%!XdiH+@jfd0t6?*P}75e|9aqanC zC#0$U-(R}^kM@6e@Q+-o((<`evV30U1}ef3Xt+X6TQqe;zIIloFo#Q;?X7ME{u-OFBPh?RQE|- zpQrh^3y|_H6Di*^aSdm;-+zTb+C!h1d-~|m_@bdjOGeJ%gnYb#mez~=CB84w+z%5V zJ*z>iXIAqew`0ik4V*SQw6K51=8HG3JOARt<@lVXGbptv4JH2r691Rk z4^pOO_JarO4H$!)ny;{OW!LCUzye(+%ZGY{mqB%6Ft;{Phy4i%uz^fRmZu@(o- zj(82@#0!ymx-I8DMF1ZgC zASItB`kB>!LB#?<28IJJfZ3G`AS2PgN6HQXQVwb&<)9{BSXu)nZQMyLfO@fzH@Lx} zxzW=Xj?L)bI(KfR@ga$EAI-l_fRqZF*vcHI)S?&C=Jr7i4XiSIk?04Xaov7Tw>6}@J_N{ucZ8DFsE=%d3&kIx^k+%rEeu^mA(?4gZQh&pC7 zvziTSX7hw?`SRr?>t1&Wv`4P(#!oA)El)_SIE4`4%Nsh=V4@q}jRzzJE)c?K;qdNbj(F3>rZzNaO= zD9xr_fI72|Y4+qFq^Xu+!Z&Cs-$14B8HsO@W*88l&ZHy-^cv|wutX;f+>D@f)Wg;V zI#?-uRwBd|{D1&;CiU}AuOY0yijEFjm*`NX@HvSPJ%$AYs57av{E`q^izf}`5?U9j zP#2Y%xt`AlFvNbR4*vA@tDPEsc5|*F)pRK1_Y=x z4W@Z=VE?Ob=6;5j=|JT&wN$NMlnBpYA*c(GdJ`v_%e0!1mZ?Q(sY$&g5uQ!6?+~EQ zbTQ@2)M7L%Pc)DJ<*?^Sr+R9qQ~gGVQ$70#r}~?KQ~eZ;I*mKqo$7QNU#WGf^Jsiu zcdBbzo$6m&oa$9;ovQDb4)x(*IMmrRe);DPb(zDd{;ZF_^B1T3(_T$o{bzb_qkn1q znX0LqRhsWR4)rq`hk9(vp?-Zgwf}dR?f->yd(XbTE+Vcv%)I}f+y8t1$fYVB3SX8i z&vE*4fHS`9OzM7|rkHEY{%Ix3Ys{R=HRhPg{md&8A!Zt&10MniQXk$#bB)0(%kc45 zXb~P;DSTBTM1!(}&ok&u7gN5*Sd5mV{c95AS~3PG#}k{DwG{=AdbtZK#O|Q*mT1`k>p+y+2T&8bGgs4(?P~s5?K^IfLOf5#s0sl>j zF+rAq0Cgty*i5f+o~rr*cxcFS01jJ@_-{#s*g*#^lUgGhIw9(gO)`4y#^3xUh0P zwHWtGjF+P&-)^rqF))76Uw z10&&55yQt&Rez@C0QHW-(z0MJhmWsGl((=F)CK5bVy|;C@7HP4#{=(q z8pPPZ;xX%vz;Xb2SE9U?X4ok}o#|#)Q<@8wm6io-QNAZp-o{E$7oeMY5K7B}wH&p+ zE>YgjN>CS|n+fHCj>{9Jtk@UeWXep-QREvE~91TGAuG7+XN6;66SLH_Ng| z|F%T<2+h7jfI8E~gb>MnCk>?{jxAU;dRnE?vP1ul#P~SPv{QgOlWw1(*XK`J#Cem7 z7_Ho$|BFQUS(<%^0ClE|31Rgj&YN7sIhDrmN{la%t4n}7)5k3!SQw z3$STix_afN@ufopV@pP6SSoezON=klOnU{WGn<&^330SuEkhEgs9SKdf1IpCBO|8| zliQ-TeE(qHym+NkokQmU_EFn^oX!FK?r^7i1-1Qa>EE4)In`-2zHow5jnMe@jwolWECsr?_L@khN*^&%So-s4nntaqxdG(O>Xs>gIY z)i3&->KKhb4m#C@*Qp8`AN=jkbML5&h&K-Zxc%R=_b*(8Qv3gVl4bb{eYs13I@8BA zqsJ%mE0@Q|(FY6x(t{`;o-_1+pC? zK%E(2{?o;tGf`}d`~!*n%cSiSAl+p^Y-Uy~wnuo9trO8+vUIMc(3UfL1&Q}7SDvaGyrTdY5pSl=a6p8)BSIK1O53^cPox({M@ex>vO9xns@8=TVx5?2hK%LpZ+{~w= zaPrMElnQxzbYyINWVxk~mKxeGB+~EDTzdpacMcF6nbivU@!D&OhX$5T6xCw=rNsI^ znfe5%Gn<&zii#>st6<~lgLJ=wrRHS06X{nH@At^qD?pvu$egOQX4Q$^gVC|_4%vF? z?bj0R_et0zK%LpZtX5pCzRhNF$E=YJTk46wkyw8~zCHo!%qC{F!kP;i>n|5}Y$UpP zbRxD^?{6jEACa+FfI7308K)X?`~Vv(R;d;dT^t=Bprf8Oww4;s?Ferzn6G_OvY9L>dZ#wINdLTlk<~?B#KLSjF|g}QNERLX5~Xue~{RI zMKf#@puzMot5sNW!Kwz$jqtJfAul;qD62`*~33D98rm^f#6APLShIq8%$NurfO`HRHzC$@lw0Da7Zu*{iF z-=0{#{zGEZ}oCOO{$f|6dZvf6;8(1ZXh5Oax`k0US6L=Ah8e zMdVk!HnFt+CXxJ&C7>ZdFY^ErZAp##Fg*)!Dm@qQZ}cp{ri&b^o5m+Dbf^RLJix!x zvjCUT*mxQ}FF?-%4E)-mzIy|;-7j;hKiE#!`RN{jKWuTTTdt>b0p~l_o0mG(0Nn%d z_~}kHyxOV0c8yaVSmjjTz1pcR{L~nysT6G)efh+VLi3~={&$U zKk57AopmdOaioKO^2G4E=!(C}Z=8G3|6fR>e{4EX3)BGy-~!x$2k-(uzz@^|4L~E% z1T+IJKr7G&v;zU41Ly?0fFKY8x`7^`7w7|~0fM>?q+h7eKQ19$-+;0Nk~2A~mW0-Avqpp`(sunn)skoPY-CKrK)Q7=R0K10KLjpkL_2Yd=sAGysi26VME_0Ifh9 z&<+HE4xkh00)jvY5d8!NPyriY2WkKZ-~=>42Wo*jzyMr;n?S$NgV$cb2l#<{paEzE znt*1Y1!x7@fOa4NbO4<|7Z3zOKsTVQAgF*1umd%K18@QwpaZo)9bgdX7rOA;4R`=A z-~;?XJYzTP}UPvzy{cX8Up=7 z2VOe?4bXvFpbjtq7vKgwfEVxqexM#`02+ZNpc!ZZT7fp89S8s&Kqt@z1c4CH4fFuL zKp%mA;WWIS4k$^23fKTUPy;vsC!hg3Pz%%n2H*nRfCumbKEMyu0}VhU&;&FCEkG;K z2DAeKpabY6&@b%5>mU#Ux`7^`7w7|~0n-7ogP;H^U<2$x4d4KrfClJ5El>v-fD3Q~ z9>5Fu06$OpcCi42Wo*jzyMr;8}Jb57kcs92l#<{paEzEnt*1Y1!x7@fOa4NbO4<|7Z3zO zKsO-v5)?oMY=9l80UUr6&;T8%1?m8UK)=w1*KWWAcmW^a2kLLe6=(z6 zfdJ3}bOK#K5C{R?Ko8Ih^Z{ZYK><|22H1fbz(Js2=)`Lc(1BW@4ln>0;08Q^7w`do zpdM%d8i6LD8E64ofi|EW2ml>GwHpbv0-KrjG5&;oP4+*t^7ia@F(am0NVUx3(xPbw> z5PJv?zySO}3(yJl0yX;xb$}0O20DNq!2Thj7VrX1Kmh0lgpIK0r8xDImwPesV(7*E z3n}U;ukd{O`RMb-Y=-*EQ?l7T@jbphIqEGh^j!Yg)U#pgF)#g0^qJz*nWtmaXI}QH z_*1^8a-U65uX*_=Q%{DUEIg5>e)EctXC99|t~{Qlp7VT<q&$?R9`t;f-0sBg(C$3-p%?y4;lcES(FcpWGP`2ClwH{e;t%*9$laf~ zKXiZozSMo;`wI7_?~UGD+?m-KqrUXA_r&k<-IKdJLA~ka?^JdeNJTH)d{(-KbFC zdhr{4H{`Y_sDHiu^{MN_*B7o!QxAK^Yctozu2rthQXhN1Yj$59yIQ$AyDh%WN4@MN zQlV5nnM#JKpS|=|(W{DAX0D7;PkY%<$3N}+bnc486`?Egm!~cdUtXa8_M)FEUY5Kp zd|6>@dTW$=+{&PtyZJZs;XDe9B2a7Ox!=o!W38S0f! zS)N@MU*@Bp`4US*OY^6vP7hPxeCe_1SaCEn8l&F%vLo>k-$*W&h>2L1`secv=awXv zgqGx~hraOQ!lLw|=%V7n%);10WnuQT_-Ve=a-T?iBJ_#;f)w@CSD2rkADv&Em!ZD; zKA4nqFFxoS%nc+4LeyVhYEF1gA)1axsmH!dBo=_w=Z>a_~gAO zB~A*Rls_>=J@*w(NS_crp?G|T`tDPX&mI>)&UajndhZJzn?ELXO!$}r_1_nrT|7E- zbnIw_dhmkGd5G1nWbL*eBoSwqCeE1r+)mxM-`4tA5>rb$r<4ph3RSP&#yQw zGc7hvnU?K~_xbvAy@}os_3D@E3HKDb)7??(*Dn)_g_KY>7!Ue_xvoT4s4L&OqSM!z zqrUw@9r-{i5DpZmcfV+Ru`SaUYg4Fyzj&*!HP@1$KK}B}spfEVp(#zh{1qEBjj=|h zG20MnDAs4{WA#dX)*tu#sHeY#FXYR6Q{FK3^_TWUJwV9{9pI{?^ALjK`s2p_6;6)7q$OqR<{2?d`+~Z%=W({h+|~wynvJ5=o+8{ zwLl$U04~4{cmOZp1N=Ze&;T?7O+Yiy0<;2cKsyisI)F}~3kU)sK=cz7Km}}o9jE~u zfD=G#NJnc(M{7t&Ye+|HNJnc(M{7t&TS!M+NJm>pM_WioTS!M+NJm>pM_WioTS!M+ zNJm>pM_WioTSyN8Xbb6R3+ZSJ=|La_bOXu?f=VbaM;oTtff~R8H~|gNfm)yrFaQ_e z20VZl@Bx0H9%uj>fhM3CXaQP*HlQ5{03ARl&;__LX~1+qSx-;_ z8(;@&00-a%&@R%^F4EC1($Ox`(Js=_F4EC1($Ox`(Js=_F4EC1($Ox`(Js=_F4EC1 z($Ox`(Js=_F4EC1($Ov||4y`zbhMB3P5|vAJqUz=ZlDL~1^R$#z;r-K5>&tj*nt|r z0XP8-(1BW@4ln>0;08Q^7w`dopdM%-lz(R1ZkGXesGIAOv&+JwPwe z2TTLRZh``+fDNz%HH7l-bYO}T&;T8%1?m6;Z~<<>19$-+;0Nk~2A~mW0-AvqpcQBX z+JOMj0dxXgKoAH4-GJCjPym%s{+%{Vu>&=L18@QwpaZo)9bf=1zzui+FW>|GKt0d^ zGy+XPGtdIG0&PG$5CA%WPM`}20wJKAQ2w1gn9>XM0b(CP0aU;S*nt|r0XPA)opiLF zbhMpxw4HRcopiLFbhMpxw4HRcopiLFbhMpxw4HRcopiLFbhMpxw4HRcopiLFbhMpx z`v-$UvpYej3v@Mu&8=W-2n;E~A))oy!D%%_-HDfn=-^>>;1MqHsAll^R`A4j@Z=8g z)Gja@0tZAtaYzN{sVj)r8(`WE-r)uBY5{k(fuHFD9|;m^A4=%K`zMrr^il=vfCJEh zTA&Uv02kl}Jb(}I1NA^7&;&FCEkG;K4g`P>pcCi1)N1MENz-~gOJEl>xz01w~={6Ia>2s8n`F!%&sY6PuK$4dh*JKbQ= z2lh08(^|koTZy!d^z~8hI^>)1ceE=^z@v_*3mm$3T^TfaO&P)C4$6rxi$-W$WS$R1_S>y^Yrd|xc zSfC#Eqc0Sn&paP{UZFnr<5^!ewb`jy_#@ zD)m(8sXXZp*)d!JoNR-YOq#h1EoPQ|s zP>9YJ#4^R*>D^&ESCBYBfBShpPmsGWai8zL?7cBMOOW0f-C4XRUCKWfzPoT&>aGx- zBZ%Lr+?l;2c879DhI-vsZqKIUX)6*p!|X9uDi3W-!AMCS(L>y@hg@`o?Te=xygB z2RJ7XU+ts5`4g)`tMV&T)IWdWy!3g|^NR5d_0X@xvn%2&d@FL)M}KHMf3B#=eiu4B ze^&CW@L2`wr9XOR@r=wFu`?9vr$4^jw>-Bju`IMKzcjTpytHt7ntJOmj%CJTW69C* zXkjExz4aGknOH2Q{FCPc#Q!0SUgp%;smW8qrxZ?3pBz28cv6P?@K;XCo)|yTcVdou z@eiGlKR$JQ`1k_#;~zb)cx>j_*s%)r6z)V>B{u%wD>gNv|L}JFVvUsO;O+eg`RXzw5Qmeq2B$K?rbO?@`ZB2L@*T0 zcZsfSXZ-(g4j|bOZYb2Jsi*&w%qT88@lSG24%?({ix)boGHk*`VBglh`a_kYx0 zv}J5Dn?k++$5o%2QxZyu`~N@by&t`QcU?rdO6`9<|34#%8%xZgbh8a^hL}@%gUa6} zH$(iL{=7|q2GhgD?I{PkPx*($@eg)@h5$WG^Ujg|9~&_pbmxfW?v($Q zI6h(rXb8~FLBT)ziiwZQDZYC64rcf-ayea7;i9%ro zXb8~7+{k4JT8cn#lB!UtB%?!>@fHu5U%PqIw${+l#R7#1Ck z4@&n5DH4N?=GsQ5>|p@C%ynWTtyBBoCuH8kvtX3c8dR=QszhRE31|q=%alv{XI7NN zCXv*z1T+NbWtx)x*V}SQ`YoNj+9eVPOF%<_UZz}P>EyLWBGFj_8dRai76_sbtbXcW za?((`cWYp@-_j+nL*l4q2WSY;!!#ZH$KBk@$zfSoPKl$A9iSmV57Tt)ACa=dvaB?T z!_5xR5TK8_Qd~mY$o}OpZ`q^!YQs^>oo>3s;$aJD2++qo2#e)@&02}Y%NEcOAT@i4 za?6}>0$|J2++-hqNsHaKjF zd9%b3Vh3ml(8Dwx)nZN#%kHE_;^<}vXb8~5G#%AqP7X`VTP2P@c7TQe-OTkOK2?I8 zs3k#8n?x~<6`&zNHxr6uL~y^=s+5B#YDsd?E>TQp1!xG+&4gn16begq_YgdOS+`{~&N>i549{r?XuV)kJhX5B;W{|!f(_y1S6|IOp-;GlJ* z?v^Z{eqKJHAwUn)Ts~X}s9Z#)HUT*-TXm1b5oQNy2++ec9bCgau*0%h_evZy*#Q~? z^e{~aAJz`+ux!_T62~ldfQA4)Ow+;5)&n~%8}>Ab<7jq(h5$WG(^0LBM)9z0+0!MC z+3WzRA7plbrlZ<1j~tdwdxpeu3_CzWfF7plsCLXFhvk@eh{SO`J3vE#US_p!7fWq{ z1&gg4$e|L+2`m8(0eYEoiDe5pOd>gvC7>ZdFHGVPp|@{j>%a8LeVd( zhugAU94}EUq8YXckh&r#dYCvyVau2_l8M`6vThkCN*qhr z0U84IFil7G`jvIlI7#9dW(P>UsIvn!9o6es)@|cti6h1i&=8=9X*#OcudEx#DH6vB zJ3vE#9;WH2Uca(#9j8hhqwD|;0aE4>qUoq!zp`!~5s71r9iSmV57Ts1uV2lvY#&jH zV;MU@Lx5hUd2l*!(&jO79*H`aw{9SFB$DMU0Sy6qnR1Ec*fAiHoWT;1`m1LND3@4{ z9)l9enJfVf0eYEoiRJh)B$1rO63`H!mnoN6jv#X-lCxO?8Upk(yG`kzVTU+5YC9W)+Byom-&s z3zYY7oW{RVyZ&m{*5$x(Ek5Wh|wdr4DO`%|M&VU z+W-B3Hn&A|gMiJ?vW+j0ETA|qAkYw?n~5wZ$BN*7+j!}u-hicU_z8*PJXV0z^*<{> zD5j_z4p_GD(s2&T;mc3Y_Si=g?5TKh0#T0eJ0n2v1M4~vK6`&zNHxr5}>V|aTA1hnw=7M2~ zVl68`%Cx`=5Q=_LeL-2aisTgnB-jB`LJM|)rlWe@(7JgnmpC@C12hEa zVVaKWb;AM6_Hl;9v6&s9AwVzFJg`=~dX2%0`xNF63bC!g+y`%OF%<_UZz}P*-qjT$yF=?4FS5D>uHNWR#ZJyS<}y- zCs8C>0U82yGohHGel=*>MpjA`DOP}n0NqR|rl?;HTDFi?62&%FfQA6wOem(PUkzHe zkJS>z)vN#w0lJw`Oi{lYv}_$~B#LWT0U83NtR+M!rl?;HTDFbzC5mfV0U83NEF~pH zSX5u5EL+A}iQ+n%VVeLArkjaUOi{lYv}_maB#IkY0U84IFma5+mN984*RQM_#wR6? z8`%LG0`xFVNA>!Zb<4Ow;<$+&pdmmH({xm?Us*Se3nh-5*#Q~?^e|0F_4<`{+qg*L zxP={{AwUn)bX2cjSvQW0C5~I!0U84IFil7G`jvI-xJ2T(jUAvNKo8S&RIgtRnwy9C z5%uwRIgQOUzOcxlE}`)^3mxk9H1^W<{~TTaKbOY8({=xyG|r~+TgOxTpT=6c58%<| zblslD@6&bvOKJ4c_%vPrpGV_QhUlCCjqNnPLf8IBY5W6S|G$aG=`?;}rbCU>_&;>r z|9%>eqw!zp`u_$RJv5^IufF!i{ClbWKX2y8?f>cAnPj=`v|h4+cJKlM4FP(X<^rl- zIkaxv35nwlc7TQey-f4Sx@yw4U2)>jx^-`mNbY0_Xb8~DluIlJzKs&eT`U0&0eYEo ziRI9@Ng}zMC7>ZdFH1g zQsQ`o9iSmV4-=_+Hj!o0P^$MV8XX(q<9x|+mBjHVJ3vE#9_C6~RMkU1FuY_TALmPs zq{Q(UJ3vE#9wr=XMSM~*M5!DD!}FtjoG&?26365004a+SJ3xf|Kv@STR;v-qcD_yG zc!C|EAwUn)bW}SWjt-AlHuI|`j;GiG8Ul1PH;ApY5eD~LR_3ZZvV7oJd{kOg*GLpk zvjQ{(=w@!3QZcrCpmOWDR-$-@6`&zN57W%RUTq^s@`B2(<2s4sS$2Si0A0*AQ$G1N z*K*tX^%BE#Yyb@bx|!xSUM&{1jaP0O+a-$USpgaX^fJwGuiG!&=51*d?gf_J;SCbW z3oHQ*0eYEcz^h3p;0r7}#2Y1&7g+)t0`xM?kXMsX$QM{*ev?G<5=%fsfF33m*J^qa zX3|jFlZ-4MT3oqDyjkLSnH``ZKo1j3tGZ*19F<|eMdEmc9iSmV4|65$4>yS8Cl#Z- zN1Q)$eB~bTR*BDiPeT9OfP|IxtwdM@&l;Z?OV21n6c$amf^lC6#-t+a-$6 zu>v#%=w?E(ZVJVM$`$txiQ;WmfQA4)OjA*9ryHfMymH08Q{vdm4$u&whiN+YKb3DD zX2~&7x#Hd>apc$m8Upk(O~=Ol0&eaT$w3cS;lt8eb+<(F4og5ofL^9tVjj#Ve#Q6c z+W)0A`sp0Nv()}Sjqd;dCAIypr7=Y30p6nP|7Xzn7rOSJrt$DI>AnDJ`=3YSM|ACf z*9?bxJUs*OUAp$akw(uvdRAaAodck;@*KdcM?2IpItTC}wf%3#IRLr`;2pXL;2awN z8gr<3(0C+`UmbR+t7sH-4}i1hgdg5V?f=JSecb-<+4m>@>7|8qk7OZzkrxtZ2++$! z67UVQ+D;luPXrDP(LTL$mD(whe2FEXAwVw^l8fj`%}GO9vS`^*eu?81Xhl)Pv8 zglaAg6|P+p*Vk$OZ35JpF6L@F4}PFSF1C1G49(<1Sv(I)Jl`NgvjBCbp9v41BbqcM zYeg+By`h=I(Ro9o3(mB}=`#}3H_6d1KuXC*^fK2_D>_b%l1W2S6B;eOxeKGC^Gk)Q zTzb1Du5Ysoq|9i<7UmkUnN0hycSv686LU`=9U5OWv}no58JuOQay`#TeBULa@r=zEZ(Mi&#j95ZSFVk3IONLlIZLexULTU^-zV{60aA7}qMvyX z`nl9J9y^fUlF;g5iT-<}><}O&Nh4B{G~$KS`3aWyq=BO9qKvi+d2tU8&5fSEaEww~ z&$Z;2enevY0nNWnfRw3>*vcHIY+)Bt{bbTWvGvh7KE80tz-i-i7L1LK4=rCXI)<;6 zw){sWz7N;|QWtZ?dZw8wZ2wAjov2IFO{)v$Esl;+F4FOS+R+SE*dCME3Ty*)0oF4Q z))wyHYN-@IF0uWXZ6Kv1V;gv|wwe7~EnUn!QL^1KDF_o?r}WbFR?7AU8`#7gr+vVs zv>%-`B#~o|lAlGFj*Kr@GPZc;%<=i-mD}Z$65A0p!yWIwe#EMFAfG+K#j37NGMl?@;?tkMiYJ`5i^ROaocG!~J^C^iC zZI=MIV05Oz#6^h>)asZt@S)r<1_wvxR0=KWHJ_FUPo#Nv2vBFbm^eYUflkCt8n}W| zFNT+lj9HA9T$j&CjHl2{0|L~U^yCt~MonVn0oEIHnGOvNROUVp4;+GDRtn;?5@D3S z8W5n)G?)-#sZJV7%XDaH&>|eH6h0>r4zdu`1xQZ<5h09EA&gptLzTik5+Qa;9Rj4P z1JT8-CPWpZUJMOIM;2DDHWp)6Vw}%LP#2(!i6{Bd*TtlvwAxV53YI9&w4}6rUSd3r zX4)Y@o#|r2hIH$bhLUk?0NK_@=VG68937fwSq_FTNQ{fw2^lUgGhIvw zaXn?yP}(-;O)labHct9-<=c0UbgE}|I@MnuK{@<7oN5jId&l8UHALfchdI@gX?*uk z`c50=>T7kXTWNG0;#BWyajLyEK1(_OBEO*f1b$BKcpCrXXAbqc8mHRON8kCgQ*EO0 zF`H98;qwl4-$M>{?KX${kDNojJwxq(dIsQY)b3x6_CJkJ#*IhsuZxI7jyBu>C)kB> z?)?Y<+~jV0Lqn1&l1ZTmOxa!|A|eJFlWxrBfa1L>qqo?(x&v-hHr4LP*tB$l0ljq4_+|nRfHByHVC0ng|+mFhEGD? z2z@Mq4fF{$k&@yX-7a?9A~cosh?L;tkm&Y`VWB5QLxhfXY70K2ij_*=@@kl2QrJm_ zsrVBbf;8F{p$K}+0qJ(lzu=!k?}aL;m^9D?JN;$QPVa6AI)q}!LI~1G^R{0@|BCHm zj-BRnE&c{WlDc%m&+AQY$2aZj9J~`^w}Z-1Dmb<0XwIddB9v|L-Y0}Y3zfupw=F_1 z@Y5AO?$NvQkThQ@Ntzo5P3+(w3QLmS4`O0c5kY!vmEY~Q(+>(_>I@nqHS{`21?Oc- z1yO>@_tam0wKozJdq3Js^NrghHJ8(sczj!B zAN>Ij+fa1ug{W*k(cPQGr$PD>h88b<77;YV(gcyT(+}uQ;zJs|K@myfh4Kl!OPYVc zQ4^6!B-u|hQ|!}}oY^v<3XrJ*!$UX$z%)Y7dO zXx8+5)rmPO6(3RQ>76%(QsNf~aV7sYRlFK~CrCdscnVKf6$F|F^ViU7WELkVBKD+N zFqDXf2CVdA2Y)ZZpCFF--TVcLG`}U_E4=zA8zS@)+aUd`;OAYz|LnaQ(`YyjzutzI z5xW_DyXIDEs6^Z77mB3t;wf^raLGyvIJ;Y1y-)G(rPC-B zmN{w-W>QO^21T?t*-yX0u2F9TDCUbOfVbcG0jZ-3ejU~Il0r4~8dd40Gg#fKj-7@& z4SyEYyh?+Z9ig2?)S=k-UPG&Zwq56I)`2V3;F47BUa{o;kKS+4 z`sX^d#nB~;X&u<6tk8A~?>im}ts;IrZ&lJ<2kd?^UsG4uBgt)o)*O_Cq~5C)&6`w% zv<__dDz!;N`3IdF-A19)>>T|0!3G?zc>Uv zy@$NoPEFBQ&}7S?VG&q|ND_0Sfy#^@;urLb@T308{eVVGoMvLKdPI6>Pm0ojwSKMwce)%sosa* z<`pQ8H%a%s+o|m2qscSy$H54_7G}LqOVSFCG8?9V77vx577hkGE!80X%bSMzl1rTg z?IKBp#~kn{UMOiO*ZZ~ysZKy&#UJw@*{{LpG#T~2q)_qBTUtw~-iKO4Q1q%QeUPM= z_?sY&G|(a@75^0aP`Mpm)cfd%N4P-v0U|=Pr8wj7hRydpF-gQp;Cs`n{$;G>Ueq0wK{SLq`fR3((0PcxuDP^qw|(j?UT?B#mj%2U7c z^`j%f;0GV=jfe>CPdhexDPHt#`V|#JQlwChP53dW_mLQ%nqTr#Bt;}h63bt8CuuSU z{AH5NrTxSK>U}9YFK0S{am|>%Y2Q9fr9KzyXwgLq-ThX0{g6yqc<09r!&d|vCQ>qbSrh6+pHXr!tQDb2s3FP8^$O&%i2 z(v;F?T*t7}wEgz?w1xKLyFtvIzylUYX$aE4mi;|SXAY%#V=0Kq^*)+(@ca8fQqXTJ z*ZV{#y{7k5*ZZJFiD)qEedhi?!plv*zi*1rAEJ&&|0!ZaF=!w<65`>?SMpG9B6e1r7=o1lm!>36Q6LMwPj z12^C3-w5xWv4kj2Ewn)WrB5Pey${p(Ch3Eycm5MvKbo?%BJ331^cS?1s#L>E@dEaW z-U!XXOItut`0dFct?Vhgjg{1yuxS<))8$9Z-V7Z`O*yBAWkK zPZ5XD3yK*-v}+m&(r=t8zIX9oXFpIE5jC?hKOxZn-?Tk{ ztv)IMu9&po+S52$hek$DA13#Kv~NnZ7tyTy__DUnY+;%wz*g_4#U<1>F}7gQ5S_?e zvUIMsyp|KFZ%M=#)69GL)-|2k$gEag^O_CHyJYFm$lQfXmX(WZv3^csT~F2)x<-Sg z3^p>y>8cd2FiaYfu)0NQxsLMX;$!fg(n|EUM7D*#+Q@fu&@;32+QY22648M^S;H$) zrDLzev6USlJu*wAM`nqpV-3Bs3^f0mqyvt*mafrr63OK>mqr27gQi4!(3FUz6zgcY zO&Us)u_X(JESC)5kw~tf`7}~f84}RL{O2-Xd|u+XiX9+5XG(N2|CyW-UyvA*Yyjyo zQ=*Ic&*Y5wqQsD*xi->%6b8`ClqW&3+$8oTiDVl~Kzh!UC7@hlx#RoG63MkJ0qGe{ zqK9c_D40p_Ekn}WJ|<^c_=?1F9nGXsfb@_i(Ze(yVT*v?eC)6+tglKO*VCUi3eaGB zn5JX@gGIR8KX-$-R|-Q{uRX9Uwi7MszdLx!=)M!!c~_Om3eQ@~qppBnoP3(ni;o!A5d;w=iUEjfCVtK zsDs58Yy)Ns)hua2N}{MrkX%xfL~%hN2 zW3xO=r-mVARN2g!w@bv%-JxVSp71|*$=ISYFr;Br+02;jEiM_3XZ%lGGRpF}of=AC zI+cOVjM?7elHu5`f7d1Bd6j|EmriA1Gh?>5xMVn<^FMXTcu8fTbV3tj%GufwHFxV& zFLQKi{WF)4msJQ#FEkZ`?jeq6{m)%OUQr<^-OyABx`#NP_V2lbysAP_`k|>1bPsVn z?|gV6SE$#pFGX1C2|9e8FxibB()c?CkrZ(vVutnPcA0^XwrTzaVnJlRT@V3+dI67mP@qzhUVsAbkKL z(g)x*Y5zYiH2}X`lRgD`X;Uy2@NC?`x$}VM7k8bUdN#OFJMS>RS^ zDOct=!ot03GC#j{jsDgp=L31vP7O_ET=_p~GXDdYqz@&dS3^@7Q+{5Pc`3O)(`0^Z z{?gXf`k_nMClb@Ap{eXq&en*W6F#5cX8uPmd0&^LF%3;+Tsd1_OPl${C#)VnaZiob z$M%y4+xfcuJD2!xsCYCrj4Ssde%2=Yjs|Ui?-IXFB8N0Il?ml+@gXfFXZ0LS=G6~s zSz6cnA6#O8T>^VGG?hu^|GeS+Kf2_7N0O2nn#vC4-Zn1Zwc-4aUDAG2rJ<=|hjMSz zXgIIFB2Mqw{>dfnw^SOM8g?l6HjRe!t>^Q8GM&cJV(V>Z!}xf;-*;03Hu7B7r&Gj2DX>5&s? z|NRe_j3x4`(vL-K?Jz;cY;D4Q^0Y5qMQ5Cy8UN{$F|IPO*+)XgPLca$FcR}Fx0&@= z?Whd$OP7qL@-T4?O{EN;BKOJIQ&-QO&&T*l^NF9{R{!Oaah&{WO4@glfz6&5WLz%2 z1a`U2yeU_ld}`}%z|lqMzg-fS%Y()>G?g;aiQFgcI`tXi$eiAClIM6&YR@)*Yqnj@ z@$%ns)!xcf%1|dW8MB@2kqpOMQg_KXL1kdG2T4fvAZf10Y$vTG!|{&vxMZBDGSJj8 zq-8&$gB0G>q3JV}(3OTtibSW46fsW`=s#wT66_(LA5j`hUN|{g0&vz{xT- zqz=G?GVLeRN7C+pwVVU^i5&mmFVj9U{hFKuI9uuf{F~GOcub}tY5!l5w*L!d`u*;J z=d67Ko}c_c#`3!$;0emV&q^PFgJt?gTflSNrhw-+e;V){FVmlS0-nqNK*j)&egIDw zWn4h%1MrueFteP!%;|%E7=S@YK^klr zf?*heQP4LC9`HgN_`nYVFu;U%2to+L5P>Mfz=Ak*Kth;V&Q9iZK{xb35_+Kz`e6VD zAq8o$VF8f+MXVbFF6I(WbfZQuhx1caRnI%P1&gmwr*2*MD7D8#^m zICMY)I-v`?p$C%C3w_WJ1270FNP`VSpnocOzzc2Q6K0mv&zt}lU_v_tAp~KFKonwN zK^!_D0iDnV-OvL`=!HJ$hXELb6r{lhE%u2lF?hf$%q(Xcb9~^302p9GI|LyFVTeE! zVqifWIv@d^&;{Ml14-zGKIn%57=#q0!G<9i7G{=nggK)y2eh=Hg9p6O20rjZ01Pmp z9fA;oFhn26m4Se8-02p9GI|LyFVTcGb%Nb=(3@nI42PB{qx}Y0+APK$D2mLSrgOGwW z*n&|S;_fhvz$j=Ff({<=LL2zN4*@WQoeNqrnbQtI2tgPk5QP|65Qh#(KqpLp=Pqee zA1(Z-@nQMH+=u#yl@IbCSRYj1FT8KRUwg0k-qv^X?^^FxD}{<(sckK8&1|i|Q+g-+ zPUG#;+u64pZr!W;G*wbzTUXI`(rR(dV_TI1F9tF>2(uVh}S zzg&7b`*P!@@=Ljw^p`3x=3lg4tiDiq!G59keDV3r^YwD6oGmxDl(*!z=vykA^P8>B z)#nP&ZFx5Ltp04}nfx=>Gu5XHPuow|o+>_-d8+B;PqjW3nIl>3tYrOFfeC#)x` zUo3pl{$lO%;^Ude>yMQl%Rbh4H2rApk>VqnN9v_gDO+kxm8Wu3`c&oN{KMA6)rSfX z*$>qoEIycdu>L^lf$Rf~`^)#|?$__H+?T)4y03a~;odFxDuhIjcdx+Bsjz9wRk^G5t127w8?BAiLZM(6Y8#3hG8^hwmafcR*|?&7MeYjyipu5r z%dN|+mlZCvFRNWzyfkxZ{gTop*-IK1r!THuRJOaX7!B18TJ{q(~GBPPOqOt+mxt3a8ko)J`s*oH@C^ zCbp)!y0F?_U0YRLm04BKm2%l!W1>8fo6sjJEAuO@mDQ69C)p>}RuorcR@6@{otQnb zaYE^Y>WfQ@ zvx^&x%8PP~^hK3yK5J#G3kwVFg|%a~V=KqxkFk!a9$h%vKDu^P@uN+zGNGS#udm_1fIxOi~p;QB$OgR%!T4lEy-J5WEc@`d~ttS?j#C>&rPP}^VI zzp`I`KWo40zJ-15eQWy^_sQ&2pHrHXozoaCkLE`8(aK1E#2Tp%7l!TO+E8&QGgP-r zcGhmB%jsNtGL=cy2TOz5!Nx#&AUB{7RQmJ%R)4jx&}aA6dW*f8-g>f>%qAN><(^!R z-c#w$cU#@nu0ogHRqNC`D~Wun=v9d<`8UW{krb*p4$twyXI%f<9qC7O>~(Q2d+ zu_Lu`F`Nn4L#0qQ)CiV?x!`1broC>K%&gfk%0|x6jY=RNumV+o!EgI(zM?PVtGAWf zvTY4-*_-p~-ijyhu{>41pxb&)4(lH+Uh@6Ta{NDec+2tswy$VCxsTOBfA6->j{mhj z`N8am0T_f7q``(E7={rT1&!l+9X#NLHt>NT0$_j%?GS_zgdqZ)jxhfpKMf&Yj^tZb z7$Ojbn6UH1L9>_>hYmMfz=Ak*Kmt0U3%a2PlF$o%&<_JJ2q{Q|4MQ*tBQOecK%Wpi z;Dt6}W;uP#@k0O%FrgiS5P~p7APOs|^g!vG9I3esT15DdeJ zFtePa%=y258p53I^ux?@{=ab=!tC52o2v`Dp$C$}%yRZJrw{sJ00toiX|Q1kv?)Oc z4|t&seBg%w7+^v>1R(@rh(Hu#U_l%@AOW4wCCn^mH*8N$n6+`SHYSdHaG7Vlcy|a(5qva;kN4oSy|_7rFQ!E~ zZ6^%#^Q-!Hx$A*8@Pi5M5QGqfAp%jbAPybS30=?)J&=Sx=!XFqgcPK~h9S^)2s(Jc z3vJ*7KLo%46WSpNAqYbRqTrPWHQw;yTLFB>ASTA$FDLM;z4*Du7Jt*t-M{YP zZW8)n0McN?5a^!@UT6a!1i*xL2to+L5P@F#TjOv0@rQ%>cPSptBmZao#E(BU@aIEf zK#vZ~Kc*gAD!&3=XagVkApq?VgfK)Q265;x9pTJrd{$aN$rw--rANO*%pSyoL zz}*ygzo%~%|I&*)eE8P^{Jx1l2;z^z`1cXfjB)qJar{XF8(sL*9{hPP{!3{43N6rn zU0D8+m+lJ9xG~1vPVN@F@%AL%*@t%z;JrimkoKuK<-teV@UZ|sVd9fPd^(KJMsagY zG~?WTK7lVL@ij{d$r-;E7tIbxKp!)IcL0CiOpD(O;a^3t9u?)xju3|gbU`=t!T_XU z7(5FF9~jUMA&7tl3FwAi7=SbkgJ**fOH2CSbl?v<@kc%Q4@uGN^j`M8#=GTrbMNZ!Rx0_5RjF<* zY_+%6-YLG5d8h6;8&G~T`)2)(;>@{#+G~Z^tk){9=3mucEx(eLa{gF3 z`Niyu^%sijJV4=j`}s;aCuadlTQXZ}n+uz5IR}t`PJgcaZ1&muGsS1@XKLykK=rA@ zQ`S?JCv$QJp!B8eml{u$p2$2=|6=KjnJ?Dm_}_lK`dI!k{jtiUxkvR!%a7z9(I2Ul z@+GTOohnS(Q?-YS4`&{(KU8`s`%vS-@`E`!{x3dYKTy5DaK9x-|GE40`zrV5@3ro& z-cz{8zNdC~@$Sss^}9-UW$$X-S-vxOr+#PUj@%vk9p&4zx7Tkg-j=zoCP)8Pu{v3p zv?pt~7H`emTEC@qOZJw=&E=bOH|sZ7ZpzSWZ8XL z`Eov&*YlP2`SsTN>bk-@dtL2p?d-}~`LnFEs%I9?w9l-aF?mMjjQZ)N)3c{HPAi|5 zJ54{Wa%%om>(uJn!diQ6?UdpvnN#W~mrl-}+*ngylUp;nIgC)HP!R%BN+PAs38J5fKeazg$D>xAm@h2!nxYsDo5szw2rJEQ8>arqPC#8AhV!;cq%qhZYXC53L=d9a5Q>pJ&ah&MnNf=hiaCOeRwwD~)Bx8V8pT&K;~D zTsbIzkabY?z`}v{fweCbzmWMt{eaQ|*#jE;m-o-@Ke=CKzxuwVeY5*E_9^d^+ehE0 zGABRBno}JujM}5Mk>W^Zq&{34&JH(*%0sy!eW+sRZOg8v3u!xDOKGXfV1CdVtPT_g z?15T;u|Lya?<@6X`x?FF-dwNVTS?}VRHsxv(Ctgz_OPR1Fq_cCgl7 z{9hmcuiiA-yG4%wUu!-7-~JUXooycfk8I%h-yW5JymMe5&?f~Cc%cn^;D-PhU_v_t zAp~KFKonwNK^!_D0iDnV-OvL`=!HJ$hXELb6r{n1AsB`c7=<~o4`@?@4j%AA8~DHv z0WiRXb_hZU!VrNd#K3|$bU*?+p$od92a?bWeb5gBFbF9~gAGG43?ncKb3of7=->e_ zw1E%&5C8*AXonz#APf1R(@rh(Hu#U_l%@AOW4w1>MjCN#JCbmy=jtPGWgEiRI-amY0)Q-Za=S z1j8@_qrgclFDJ3QoW$~S63fd;EH5Xqyqv`HauUnSNh~iXvAmqb@^TW(%SkLRC$YSo z#PV_y%gaeDFKubOw59RVmc~n48ZT{WytJk9(w4?cTN*EIX}q+h@zR#YOIsQ*ZE3u; zrSa01#+wEkhF}=9*jHqk1$hU1xbKBF@PQu!V1Nnj5Cl$Rc{z>c6m4Se8-02p9G zJ8kbcHvyf%i7Rh6^gt4Np-+${?C1Uf3_=Rh zV8aj$!w8JR9MC5O4|t&seBg%waLUSSLOTS3Q&!$EaLUTdDJw6hth}7E@^Z?`%PA{w z0yt$QOW4KzZs>s|^g!vG9I3esT15Ddczi~=XCytJ9|dcX^9-~-yscmqJ2882;S zytJ9|(q_g>n;9={X1uhS@zQ2SmXKC6URup~X*J`e)r^-`GhSNFcxg4`rPYj=Rx@5& z&3HLo<)yWZm)0^~TFZE8E#u`hl{XEvmhle3FpR(`=oG>wsu9D$}W@{uFZG)6vh1e(UkM~*<#82QK% zXc{9QIRZ^%D}zRjY_$a ztLT-=*8Em$YxSMNJN7%Zw~KFQ-mbq@dMo=@S?UU=Ppz4lu1 zwajbvS4*#EUv0cnekJ#c{z~QL{L7Xc$roO-U#h)Wd@&=(@}(EDFEpMnKc9PEm!tW7 z*(z7J6t>uMJYU?L*<63F^j!A2#JOG4Og~tYBm2w)_4`ZrXYX&^SKiBG`}`f&9o5?l zw`-qsZNGd=?iT%)%FX$kt(&Vi6>hR`s@+(;F>_=6hSCk$8yeS_ug_h-FX+I=g+pzuAWsm%RZ}iX7S9-ne{VDXJpT4 zoIbf%SNTh8vTGWv%d2y%_0^SC`Bm1cYOav8bG3=}zrwM8aSzw}7cOm#m&bGC`gmnY zeu=fDy11~|UR+yLT$EW<&z7>;Y-3@0VQ!(muySnvSnJs8F@3x;ne6Q78O%{@N zver}V$@J8_OWoP-MpwBj*QIw=I`f@YXEjks*oj(4u_Mz_kC)=vc*81NIZL-Hv3$&m zRilNd9j!%*kxZl>E`_twpiSt*Yb*U(gk zl^eD5wF|U8ccJrZtHzhEc62E9yM#=r5HwZQ)v(e%B-7gODBu#ZN*+EX6}kz*kdiSa zuhKTk&yJhwbt2v07CZX_I>zlVTmo0iBgQo}m0{)H4q`d|A~0P-)~FC{9sk5V#L@An z-6iB?6@sRQAtfPu8rN{TTiD_ijxivEE*Yn&3^X+iDVr;DzWnUCO?L{~b$ry2OU7Dx zka)|`EkSj^nUQt`$Pbe{2di}q^BQ)EI8{ZUsi9Pm5Q*69!D=He5vQpLG&KwsIK2z&bV=dKj;p8KR7RA|lxyYx95*QqI=#i#t{6Ln|C&ze za!EN)el;$yUe*O8%DqU*94f!PGo{-lg*{bVJ{(EGh_ab-rTpx;eYP%AhqU$G+2fLO zfjmrHK7dKVh_aco`-k$(7F+Ecm_F%}a*;f8N<&i_R?e0}-LDQ_$<9wq$DnMzE{PXQ zR$SixBw|$AOypJKxT#TX4fWoUqQ4%;hQun?;zz^4Y(0U%>mxahv|ODX)el zi(B8MDVLBdLeSJO ztaJ}?>=5R-gxsJ)(9|%jbPsXt4)$>gxlx6nsbN^@9^%*;?CTP8lL|po!?4ml#8DD* zKbMf3RS23IhL!FihpL@{`~kNeQv2^lnYv`ENbSE9W%{Ai{=23>;AxZo|Ic0O_Z%+M zA4;G9D`X1XATo`1hkY5~Y}kWAmXKx+BP^q=SZJztb5Benm& zF%s~cd5GWhuTuB#@p)2XP^RCLx__6*ej*XASK>ONK$-^|3~FpEbJs ztoXLw{;+%ZSv|YYO71=@z56VC_gO=`&l=u+R%-H~U02B7eb&(Kvxaw{<=wX1W3}x* z%eVV1|L(JV6Zc8eIQ8N&)hWy9aTk@kqUc%8qFnC#pp`RCC8f+MX zVHkl?m;?F-!2^Br5}bMAHPf3!*|L(K&){Wi#L(lHB+IOEdz*F+1dP>^a{Qb=>FPqxO22QFs6dSXb z?bybK3$VF**+?-qO_&YhWiv!s`3S4r-@0neNAGQ2=;o~SWXo&5Im>2oUQ~-SBzL0` zmMIEp7R-jAdLe+xBDTW-%Q*-J3v0q4OPm6O#Wo?xvWK9P73hK>YY_sARf)q0Pw*&o zuu=(#vt}L8-MV_srR~{$R%h!PH-D>Z_gN#Y8=?7Iqr1-<*pb%)_o?j?jg_=;?~V_& z@aXmrwQ$?iM_RZ$_OTXDZ}>#+ZC|AYHb*?_SBEE8Xuc=q+s|>$zub1VJfmZ0Xn~ui ze_07j!@Z zyr15x`JRuoN1D5`fcJUzE2@it>KvdN z`lxzjhWT$lGjnQd1y}|HOlXG~zi2@mIv@c$59U!vU$Pu0Tha#A@=rxGKg)G9toMf&SlJX=*`=N8a&;$N0r^v5B z2%?~GT`SuWe9#UdC`6u@=-xzHho*=8~JZo->81Q@OAs^wXYSwmib!!tMyMxpJYGDf5rMr^<(Sf>X!>& zw!d8asQ6Llqxy%X53?UOJ}7^X`#}Go^1l9l<-PoSm09a5l;6(1t-oD)EB}`DR`t!o zoA#SE=}VD$qyBp7_3Z17*UGQuUei@?3hUMCD}`4|FV|lxy;PUB7sVHf&(}Vuy+!$% z4N^aW+6nG;6UwURMCK9tOxRPohxLam59J@S9;!ZAc(D4w)cx!48@pG#XZu}Sru#zd zY%gKoUQ@jx>cvtqTWn00Cv%hfWaZZUt=6s8TMD<>yVOI--Wa=K$8}pjr|$#x4{{sR zg-@j|#MI^MFB`j5yJWj-O#`=n4aKuFXV=dvos~VSac23<+?o2Bl{4~ZSZ7pEFPv_l zUOUY`?bEf}PMJD+{hG18=)aIzp`Ez>_$|vf9Jg>;Y-x2bYZDZY%^X`lrgTj9n8wlN zqjN{=M^}!@OaFw)BPJH45C8PAZHG=Bl0Bp`uRJd|PoGzro1bgVt!Ae7y6=JR+72N% zk{n?+rm?!^}(@r&8!%C!!oLY zLck8x{6&ApU-y-KSzn{A+?H$8+bZ6?*YZ|91&{5i=|w#wNBHM%cT2Esh;1Y7H3PDrD=4fQ@A@f_$Vt&CT zq$m%ZQbUB9%I2V9jAF7;U2&5C{_Li%XiBlwC953g6de^o4|EBl%I zwP8~Za>=+|WuPfT8FQHyn;ElJ1YNSr@Gl3uWZa=L(3J6m$-riYy3i*-&D^Fh1xtqG zgyNV>#+~v2aW(3hscepe*36hU^Wf8WKFe^NPt3Sv+@&(mY#9fwnW3&9wB~%4;W(W* z*Cpd_m4Rla&dI*~D(1Zr-m`maV@<4Gl&YGzVDu1Q1tLD2zJg6ej)G(<0l}6w?+$G{66@jK2 zaV@AMVz0*$Ti_D$u!=xa!=RFgy&eti2$zT{6@ezhTuTHJvDag|9qAHLQW0os7*rB* zsFs$W9k=QBB@>Gr@5Q5BA|8>)h-+vngGwR}`X`M9lx32**3| z7?+60-9sFg+p;bpUs54xs&NCuO7{@Qr{f}*kSA3Lnrh_0u+lxm z@$tCWCFCg;f~FcfFsyVBaeO{5aS3@^g`la%4Gd3@9(b`_gWvs?_SqBfcvFtMgixtH zuA!+6E8W+`@wQy*62gDSRl#;s8CJT7INq4cTtYTWNJ@=NXeygy74k8>aSxlTc^zE7 zvpU|G+15AaaV~*d)LNlbt`M687ZRACwTk_cCC>Nda+i#F=fH|D7_WW%}e)zvmR0 z{#NS#-!|XxNy+q88UODznSODo-}9(UV>11&T>C#m+5r5ET>pPmrh{erZMpV;p-f(x zHfQ~wBW3!nSYYP*|C7%pu6R+d{~vsm|Fe~!`b7JO#+TL417q}-Q+JupkjSo-u<0%1LOD|aCRJy?$r_m4AIGv8L z#u@a4HO{0ftZ^27VU4q+xGsk4=?-h;=?`n1(}CyGBi1;NF0sb>U3fvaxN|iwq-(5k z5q)Egi|HI|Tte?yrk{Uf+f{&|B8Hk?yj_P4t&FZl=SmaSJ_Wja%t5YfRE-)+o|x*0_ycv&QXon>FsB z->h*b-DZuu=r_A_HSVVWtZ@$=XpMX6L2KMc7h2j8jsSK)_9E0w8rD~rZv7ucUt2K`qLU;8pbC_@F}{~8c*vR#AiJC ztQVha!_7Y2;>U6TpQmfB@dABojTh-$YrI6?TH|Fp*X~@6SLkGGyc)sR=w@rYPCr}Y z4GZ6l<6CsKHQuJLt?>?>ZH=v6Sn0-h>2GViM~7SEeR|v)AJFC2_>exg#zzDA(8hvt&Kj_3i?85&;w_M|odhm~v z_$R&iUApEPe@fq6zoD0| z@qN1K8h=YKUE>FI)7`lmKcu^^@gw@{8h=NJUE}ZRv1|MTU3QIsq|dJLV>;~`|3t4{ z<0o|6H9n=^uF;_5uJOqC06b`3x#KzGfoHH!$T#bFS9WrZQ z9ryF#{$4zw4Zq;S1O0eV01q~B%*0GP&JE(c5FQf7LnC-t6z9kAa0?g2@rVvQGJ!{R z;?Z4rOgA3egA0?G?ZriXxVRse4B+@6E=`F$S7TY4S;yJ9d$@@EgXbji z++IAd56|z%3kJlUt8w8Vvo1>E#c906#!I!B)DFK)$ICrl?RH zUEi3byuMMSzP@oA1@?{GsjzR{L5Y3iPHOBMcTr@2=W5(dv3=tns_h&1Qf}Y4k9zyY z{b_u_#s`P+p<#S@1gA!^M7e$A5$f$5k5X{oc#Mks#^aRSH@-;Ced7s=?i*jC>b~(L zW%rGzsJm}GP2qjx87l7^&r*8dc#hip#%7A|8(XNpZxwgx?#+zZk*49L2w)bic8K+WkhI;{C>7Q@!8#8_M?^ z-=}`R@wXK4H-10`|DCJxLn`?jKcbYs@pshnH~yYt{>DF0&ENP(%J~~Vrk=m?PZabw zenKUG<5Noc8x3mt8~;o(f8(cA^EZA*Ie+8l)blrfK|z1xU#RGB{A&;X8#Vonf2XLw z@gG$6H~y2d{>Cq<>u>xQh5e2Hrm}xvvqo)yLs!N9Jrwshyj1r$+9>aD_^9u1__c|d z_1GNHz^5 zP2rrhIQ?{N-p6LvzC*a*Fz!Es2k0BbFL>}kFCNr}2m5f$kC^~A4}mw!KbsHIwtQpZ zH|k$6$`$qM*YaP}zgGTgR<5ZRKiT?~+*cYOmp;yXT$5|+meeQA$yf!Y4>KRuJ}5|S zgUb84_Zw23F!NsR-GYo%P?5R@jjbgar=TWP4Xk$-N=1X>Tee(D&r3anl3YixNi_rO z^@?0YZ%8eJjEqlEc*T-R200m>p!8Bk>KGJcY=X)QIjLe$dVZT!Fwo28E!iz~sb8>r zJ;LhK`KR@#%THzHs(SHB`^oB;@-iMl`H8GlBP_~j1QU-pWF&%&R4gbwYCT$!N`#G4 zsgx8N z-DRmhSeMZU>^rM>)Edles$EsM%97CravK|kQXwN_4QR90 z8MH60N(BP_lJdpbi|cYd-oB`MVg5q>!tw>#3+m?=&$nfKf&6(>QeUtpbqB0-DpFmr zvA(oEv%V&^1udyLkdu)GN@r!H;y^*h6{wt%lX?RssW(tNt#Fzpbp>;$HrA$PJc0Zv z`YC0pC|F-pTw}|40(q%2P?m~<^;}VE3{<6_pgvJvnO#|zYJ&Dj)fM>_`iioQBTzq~ zc*0g0L!hy|B$Wkf#}$s#k1H?BE~`rwL0hiU=cTGZc}Z5r4=74af$E~Xj2=*yiURe8 zMHxGwD)j{PW5=YHK;dXhuFU6-YRI?&nImgbIna_(19A%*Qa3OoV+IuFTT(SJCnE-w z4$Vl-z``MxR1nC?hykU!+hnu=JyVuz_Vt5{2ipf%rCOkVQ2D^@fpw`BXv;VO`2+L= z%KK;cukTmf&z5ll^84!hmiNiZC;`Pe_MC~)#z;wO1lDAH0Bg7+6#^SFIzYy*r3-0G z>ICFc4H+FEBUJ(l1D1>pkdqn#rM`@e3{a2?0hQzqsSaTGRAo#6y}K+`0qdQ`PFpGi za z$N#GTzt+6|&zTJOYi*7*iHlm#B<5Vsl)NsFAJ@=S29+DsdBn8Lb=-Ddd~u#gT;&q+ zhCD`GLsJ=45|Po;j>nfDW+EKt5m&oJyeWSf*U(f3l|+2bwKnHz#5FDvZ>b10H4G|= z_?&BP&a;RoyF|RLBGA+@s3hWZuC+N&BA((B@s5f>Q^TN=h|js!<~)bE)+J)Aia=At zppuBsxz^@9g?Oq%`dZugxT8aQW^wBq@pPBK59HC}8k)+Gl0a%->~fnvEjm8FYJ80UnqH|hTrxhC zUyW;MDnm*#uKk>hwd0wVj5A#_K2jNIY8Y0Mak=Uv$V1KCrn_y9kFQueuDBb~$m#lHTujXc2-&g0jB>uWQUR*;{8B&tCVb)7! zYnMzoE@7YRlJPB-fu@EbWivy)cVynoZTh_{8IF&*^IS5%Ee{aa&{T$$&5Y)8!c2m; zv#F0{I4+f)?~?HwDg#XogGw^apY@Y^?UHeI6>a*Rdx1;DcT@zL8itfaoGT%_+-5e_ z;&F8qZ93yZmyF+$he>H@DkI7b(ii@+J-o;$iIC7HPCU_B-)F9)rNl)pk-sZpaScsn zSV`oSdx)IAV1DAt#V54xzAttO`8^eariLM9bG>HUcCucM-S;If8NaVG(9|%b+#oA) z>8#Js#Nrbid+$qKGX78=H>IJe3@h1C8|5qEF1P8Oz{X%J^DA8v|6C=asbNG(;-0=EHQ#4z7RwXq*sP9<0~=f-zb7$q4NYZ8N!hN< ztb6mtt22(hdBG*)FH{Da8ith3jNMlHu5!Z*TmC8Up?29aZ{{|=tCb8#!-q{S89U?w;u^{zH)2S+L7tC2y_K8WYGU=O zjA~3Uy*t0!C8I8n8`scOhLq>3Zw#|OA8Qsj3&P1?&D_2x*Z!}QDIwEVx%PjeOh1zA z|5qOs@OY*Ff9ZgLCneKc`v*MBkC$ux%l)27x%MAk5b(TqoZqwbaKGoTm-#)n$kZ#- zt8)UL!({qaXTY;Yrk||wd+w8I&Jw@pn{wSh*Aeji(_Fvjewp@_>02487a-GrkNG{% z$h1HvZOW^CCvbf7<={fO*wcFa|8uq6)7$78mu>Vn^2;d=O=U#67jMPZ{ms0w)-P7q zxd)|zf~bB_~KMXiS{H@JlSP=%nWVOZ%Nl5PEVb)!qjk5mYn8b*}V zo7>ZK(kuqGcqPwC>-VdhTvGl{rJ$){M7b9!j`CSIyQKWRNnJyQi%ZHs zs1!6cj41aa#ZhnaR+p3?%Oj^WG?fwMm9m@UvvQZ4Dg~C%R<2&WINN%pHP3O}GwBlf z6BUW3hGC`q*MYH?uLJYuw(by$E{P45h^B^NS`%+`N&II?iEC&o zLrOm3#y;oUz?kFP!0j#>KUEoMY8X;BGj`uO?EE$`=J+;nhfBuKR0f*rv~Nh+%$WV# zz?kFPz@07`e4NBJG?gJ`^OIWbk>!78Zqwfez z2AUd%mFG+8sZD!0Ez|sX7(aE*s-^1XG5r~IuS>|ks}M9b3@Oi1y=-P%kwvm1tsg=6 zxn%r@%0N@YkdkBXjjCv%%=+v$bL_opY3obiewU12$|IySG?igx^ChtRp02qQke7ht z1kb!fTVDbXxFr6UWW_Z!m0{(@YTvs13%mLBEML9YxfgiQCFH+V2$~v(mF^*q-M~XG zA)3ybps5ThuaeL1F)b~jj@$HwlGQ65@6d-`BBXSbM4+h*Dv6l=TFmMdnbvOyQ!Wu6 z6@jLP?aHgvDWtSx737CWkLHmzSv`Iz|1@=5acvo3)NiHd7zDnm+68?(pU<+k(N<>KXzTCLByWOS+wG&Kw> z>5{f-4;j-R^e3%Z>Np=M!~51i7_RECvox!K?K%XWR&FKXR%TU-)*BrC3=sSGQd zn{M~B`pwmvkoSt?kiF~@l2jpRY8Y0!hd7SdpLYrARUv3<7*aN$pxwWTH4l}ROTFgS zz48k#8T-oPrZhB_mU6ZX`J9tN)MTu?=KOOvtvh9W@tT#Z_H`Uczvz;f{N@-c#&LF0o&bz#$DyWkPwed>E{guR6Qj zCPP|ivP)aOa-H<|UF}#`$07X7E};jibwyLkfN2_q0X6xwb6ZzQUAOqS>`BYUcdn}= z_7#`dF$o#f&{Xy)n;*5izXf7iY_eCrZLJtzm07oV#YEPzzK#2 zw_Spdmat(BO=YKY?^kzbujNR6$0c>4N<~w{PGz$O`MOX~wc?VxM3ROyG?fYEZ0p+GLz5`at7BCi$BFN{ zgpNzxsD`GpM>*T7Hg}bL8a0EPujHL;>j-|&CHOdrv^6x99ZK2?t=q#9aZn3Rc536} z>sBo}&9SnM1ETj`GMB5BMN`8brTfZ`k58;xxnkX_@vNjzKedkF4_tyzl&}#EO=YJt zuc{yH`DNUrWu?#t9|(@s%{VTpedrRqLIQ_1G?fYEZ0pM_s=14riQf4|!;$)tOX^9I zH>#nG9VT`uXG`S^PEzd{o1cDJ`9igG8#~wb%PzS&$x3NxDq~8EW0%BLDiLMaFEOf|ZA}AOU{c2Hk~a^jJ2$N(@GCBXYa}G8p^V5Sb}HA& zIUU-O?s8MR!>Bf$w0hm@<)@F&Z9Vh$iA&n4Dh*}4DKVm?1jXfhIDf!Vce}PKyJGyL zC1ckuS<2E(pMd+SOVDX52xZhMF{->y_5(!ia#Lfo$k11NO!}Hj(&;J*O%21!^QBq$ z`SNDm<)*GE$Zm12TBG@DjduB!nIFIVkkt5pTWaz@=l4AEW4UHO5b(S&Z2*pXAmI7- zr2)^%8v~v{ek$NO=lFo<@16{JHk}sm{MSVR&pk55WqR_7fM@u^famou20RD;vHb1h z0nhwD3V6Q$SirMvQ^4~Fs{@`hu9CkU3V806e*bBy{r`y^_b;~tp6|}7apV!l*{UFXv2$?J*WErXkdvdA{vod(HO)b0bS4o zz0ePX5ZxjLgDvQQPUwat^uYk6zy^Jr-~~UJ5P}HAAPx!Wf*$BdQ;!(BAqjmj04cCx z7(8P_8~DM55JbU(4(Nn#NJ5{QxAk?I2TACI0Z4%j`ZmD}J_vvbK?p+>Ea-qv=!PWp z!2tMoNJ(V_+93oHh(R0@&;>ov3;i$%Y0y6vyx@ZXm=J_8L?N~QZCM4-Hwa$vK>$n$ zLKvc8K?ig~Hzc7C1|S8Yt?$W#Lk!}OfG+5PUKoHhcyw zU_l%@AOW3VrazJef-pqEf)40}Zb(8O3_uFvTZII4K@apoKMX<|^zDKdd=LN=f)IwN zV(QBh4js@5-H?Pn7=RSm;MpRyfgkMj$C5TCc)R(vGfMAGd5cRIOXuFumRV74yWoK~@Ph&E5P}GJ zwn;H`FZjR@2AB|p5JVsf7Q`U|ozM+E& z3=xQd1s#xp?#Zvo_J%$ffE3s;4EmJdg~7>h$?||cC3wLHvF$<}63{#GZQ0(!F57m1 z`6;kLUoUvU2LXs~6D){B0=l3FbZJB$^+Fr?!GO;6kS=d0Aqjmj04cCx81ym03qA;d z2|;0(r42Jb3Kn!gCv-y+`d|Q3pf41>;DZ2|5QH#9!GaFxgldNVbI5fHt-9(ENw7-lID{yqmd2j%V^(@Gh{CWDHxeLPX+*hIgna- z8M_U^1M!I~WnTsf=vrTp9UAn&;I^yeFF@Zec(z_6`wnP>-tE`RJ`eh#bN$UcfY1%m zEt9fW0}J%6xA6di7yR3W02t7|LkL0$+NbW6A0Y(MtwIc#wCJ{v3Ln`Y)jljrulo82 zr4OuzxrmSdh5Na^sKkvtyPMZOr$6)M@08!ky`#TVc{~5M^>+2Gg7mPj zy;*!S^Je{x(i_<~8n2gM&%Lg{ZoRhSmC`HOR~j#urGLHta^0xibSbL%P zLgt0K^s&!A-zb;MIq7F#*^=L4ZK-Z9NKgCPbH(Q}&uPzAp2|WNePd`#C6{Wv@eX2B-ooYN>mLB)5we0N&YY!A3$UIP&UiaDi8~2s(%iX6- zzx({X*1gqx3im9$yKz_fuH0SvU6niYcUsc(zHo-^R7Zs#Oe(l077vwI`FQ}ZKKi`u6_=WTA^J?e*Dz)*qol!W$K4bgo zMd_DcKdp3H_O!;SW$Br(pITX)Uu#M4{K6^rDYcV}CugL8erZj1O=ER=bxwNdS61a$ zS*vzTlqRwhjg{qJ?qw7bNj><~U{qm8yBlROIN93jNesw`%fxV!1cu{)q z*XNh!XXiH#D@*@<{jkcR`9rNktI~ttKBP9UI4?7=E`9j3a~qj*CYRAOm9hMoHC8>i zaIpRV5qBr>O`Lb$z@M41B|rA)7~AqKTjPT(mjwxgoCw&cfHbjkd_i%CmD>KH-J{A(nh8~QzTtX8La|J z*3Vu+Bi&*Xbc;c&omb3T6d9h+jWWHn=9M-yeXIzJaTui1)?^cV1$QT%_`;wi<}Du{ z7+E~9cuy+g<#lT> z53RW>wsGnmBXd_waWut#MUlUj^C6Xt=6rax`QeH39qpB0Rpej6`H+f9b3Q!U{OJ?r zJ1zu&O_6^k=R+xA9ecF-GbYM+T$24nk$)BELn?DkT5P#|^e*Tqy#B+>mreNUJ1&j> zxgvcXr$Z`v&FS#y(kFcF9ak#9u1LR{(;-#DCaEg+5z=u82_1azFCAPq(WZA?IsAqq z{u&DF6_6@qleKKQl`o0M$lZk##XBzM{e>d_T8dmGAXUyL1MIcMtv~(%iVK%>#Ueh` z^bgF7EMK&23je^zfpBP2=+IBo9Y4)D_!HhSrPp)+QtE2*AkNPKN&)NG za?haT*gP;W99c0iQNH8Y^esjHM$U&+UYo3C%jK86L5BwyO#A{k4o%-y#NWX2Pzo4e z%f*+x07Jve`WFn(o$v*49G?DK@eFRH)Gh%f8(^6(*sG3n9t`aVZEL%P_Fw)z*DLhb;_BV>O&720QvNfl{qfHCi++hW?IZE^n@ZIt~MJoEOQwJ)NI#ZD*TPQGa8U5_IanDyS%27H5KJ56Q{5wV9>GX(g0#XMm z(qu7z`e!VV_4kUvGbtn}pkzI)dQvjSDmwa_{DUI#9Lj1FP_ibAz9th*EKnGIam2}& z{!tMa;Xp_oh)9z~;Afob=bsdT{Tv9X?+^z<1b)V;e!i~=#33mtAYC9QJ#4u^^fIoa z?mI`C>gS&oiSs!TQimZUkBSHGe^DeZqz4TOC|M7C zf2`EEpX}CcTJ};OfOBd2cAHzjnEC?zjK%`oN=pUx2YBMAG#-GKFaCt)4WQ-wRc`(A z&%5JLE6*Yzs>JX*f4(f?`r zJK@%^-belacewOxhn`saCY}HP>$!#N|2+TSC$q!I0DohAea?Tt`_Q^qL_NTI}(RB=|Q);?`48oA{B!pns|r=ovG4& zI#VT&)aTCY>~mK-9OY+CgtLC%1tfIjxvrW*OJBI6;>fF{>*^|6JF za=T#PuyeA6|5jvd;S6YU%~L;H_~w6jgH2&XBYpE<>bMT|KZ+2vIRv=gsmXd-gsh!l zFEoTf$CGh$RsJ7E#8!@gCRaW6v543}7uLqziifN5Q*QoFk&)yKXmZ(8A6v)>kBbn8 zG92?t{I4Qo8)rb1>z?}9LPojQeEbxszgJ{D#~IM%GLGJ2F~?)56Z;261pYW6pvih! zR9Kx+_7xwT>zK~&kBW#FI0BjidRatFKSG3K9v=P|^iRvRiM_}Xuuvt^%M~LL5k5kM zNH5<O>2ID*wE$`P(OE7%K}(Rv z|9^qT|1YQIzi8b5BUJxyD$N1-3C#f*qvd~T{Qpxl_J0Qb|JyY7|Juney_%NSXzYJv z1+@n(r?~}b{C~}NUHapfyY)622k0-clZ8^pL6jWLxo~ny-I&MP*N7s$M?}Fh_~*z+o5gcc;{9s zGG5~hSSSnW6S!Zyf8I9_;D5t8N*XmY^-KZ`cd zjePD;e{kqlJdvU)_MNlFdlVt>&_e_SG+953kYkwt-m3_CmqVZ_ppQk!(NE;>Q)Ily z8L&|Mz&BO_;phtz_!Su+(xW#CSSS|Y<@=vu#G0iD`iO&Ip+(0P6Vu(O&N!e=WaNk@hW4gM}&pbzBADXw$}D%WqSpeVfx@ zp&URRmjgK3G+fK)Z_&jaC0I2B%m|H-xd8RM_zw=2?4qNi~D*YanKyO!UfNX7O0 zV9B+758uCuzOZeapua-lBI)wELqqdRrhMyl^y&#I649F?C?HKrLe{W_G4LV!*>R(Z z5{=PX9s@s2Qw=Uy8lE|YUPVVI9$OKJ%lM@i^G&{(UkJR#kw!o8i2@J0Us+tk2@*RM ziD%IRwFyWwppYh8NW7MQcHB6TSFv>FW9KS%DFV-?M{E<2W#1+_ zxZ7Cb;^nJK->8oMk&_gO^XNg_1eC1F#^_2ururXuJGfEDt)in3$Ye#}0uF>U_XlaR z<@QBfS*aD+7faW$Fy{yTW9RK}+TD7LmS52Pf17DB>6-tubj^P%UGx8luJ_NQ8UXvQ zrm_EYz5iD~p*j9&X`J~id+AXuJ_OWH@E&5F6t-nJ!&s_mFE4wm&W+h|37?; z<`twl0DnRA|35fP^9s`PF^&Ddh?d{b`2Qp=C(`l_8vlPeErOPN|EBu=T{Wx4_vX3| zJ<-uGiKaZhKvFBzjV8X<{g$ZuEm8Da zqUN_m$#02@-x3ACCF*@kl>3&b_AOEDTcXytM5S+uLf;Z~zNw5Gfhyk;MZP6!d`r~! zmMHDbmAxejdrQ>ymMH5jQPo?bsJBE-Z;6uL5*58A3VKV_^Oh**Em6%|qL{ZtEpLfZ z-V&9(B?@`VCV(>D5>>n(omZ-}uQI=a`AhkqMZi&&<5+%7MhEz)wZ+w z))J+-C5Bl`6ylZ`Yb{ZRTVlYqL=kR@QP&bBxFv>OOBCRi7=JBMep_M?wnWu!iK5#Q zHMePM&#_{+)Z34KkUB6x1*ilr;07qUEm3h>qTsefy=`d%RNIy)wk=U>TcXsqM5S$s zLfaB`wk67JOH|pGD6%b4V_TxcwnT+(i2~aa^|dAHYD<*WmZ+*NQB+%oh_UTy<2Rk4 z3v`1XFbSZjwnR;BiIUn96}2S_YD?79mM(y5+7iXIC2DC)l+u={q%BcMTcVD(L>X;~ zD%ui7v?Xe2OO()-sGu!TKwF}4wnW`*iL%)eRkJ0EW{*8j)XtWz0F|>P3TI2y&6X&e zEm1XFqG+~6&1{L1*%B4AB?@NCNkH@x8qk3ODnKQ00XIOIY>6t_5=F8lYGg~4$d(>} z%GeTxu_fwaOO(ZysER%IJW(85qBgcfX>5tg*b;@YCF){Jl*N{)iY-wTTcRemL`iIk zir5kbv1JI@pc8a~ZqNfJ0TjZPsDmw023w*EwnPzZSqV@ATcY%}MCEIV!q*aYuO-S} zk3CORzm_O|Em8YgqV%;ySq0Ua2i0#p)X&(nq9xB+TgOO&>j zsBA4!*jl2lwM1EKi3t%Tidsv|iXc(aTB4%0L_uqbde#!hOBAz~sAVlt%37k5 zwL~Fni8|I2WvnHtSW6VKmLXt+PS6D^_VPo9KHdbMZ-Fm% zz*j<~v_ThsenZZs0KB_1AM>_YC#GOKH_tYe`uL>Om`h`7QK3t@>*j zBEN6KA9!KTN79EPQ48up184*-AP7RB3+Qu*N>Bx=feF080`;H~w16N8fi6JT{b+-R zDE)_Z@W%o8?@jP$%_M!)(%t`T!`*h=&3E9gjk~`(_<#Dz|55tG*oWGO=?|hGXdk3# zCV<>~iTA?q<=#!c8+kYXPU@ZLJK8(xbS!P9GkfEE?Y-Hz6K{v#&h1I=iR{VmPVJ8F z)^?|MMQ9#?#9Q`T**6n!hTqKYjPJB|rr(IYp}mo!*#L5{C0?^%%g|f^+N-HoBCq6V zCII{8>`U>N?3dCs4?uoLaz}VamS+LTybyaqdm;6FG5>W&yAt&O8)<$a*L}ZVmwZ^V$0o_lNJ#-Iu&C za$o-5)Vof3h40EH;t4B}8I6zHquDzXcZToG-I2T_az}o1 zYIAh6wmE%!>@&{=5V;}0F|{$WF&9t7?RaKGY=gETb$#Ue+;xfTY?=!owq9GGx;8>H z0VJ*oUz5E$ezisO07Td2uS#AOzAATR^2*4S`72VNVJ-l1Y5J1bCDtXGi{lsD7iTXT zy(oN9?!x4Skqh$|q%MeFpk0t&6wdZCd ziAXq-o0FUqnUg;^b#C9XUIHR_d(iS=w3YGh=63XJ*cbpJAVoot>B+ zo}D{Ad3xmZ{H)Zh=qznkdS+~d}8i|vMIGtzoY zxAcq_*K93Ir=#^V)2HsPSuGa#m7M?Y_>$<*aCwI=^9Qw6L^3Z_y~H2e%!Y}EvN(aAOIRb zBWME6paryoHV_2upaX<}4LU&==mtGN+d$~R02QDTxPTi}0nA`#R1@?JF_D>J0?cM+ zcmbv~GyDMani;hKlbad!05hB!4FJ=e8BL%Wv;a(aX0(AIXa^l21Z>a=#8yHBIxs*5 zs01$HCg>Sf;l2dbpaz)01H8Zo{J;XWpbpf70B8V>pb0dC7SIaXKoGQp4iEy`4nhY8 zr~s9~1>6LlA?{;pH=`P0emBDe9)QLw1C3M$8mSC4QWfm(oODg(__2AZi1G*cO9rZSp9GiU*= zpbZ2;JLmu*U=#EVJ8{1Yi2Z~H&`@Qdp~^r*m4OB-!v)*`4O9jis0=hv8EBv~&_HFN zfyzJwm4OB-0}WIL8mJ63P#I{TGSEO}pn=Lj1C@aWDgzBv1{$agG*B66pfb=vWuSqI zo*|m33^Y+0Az%YEQ5o6+LI(z@0F}T6+@K1eY05y;l!2xx15Hx~nx+giO&MsKGW-Bd zQ${VQ18ABu&@^SBY05y;l+gs5K?`Ul=oz-*eh{>S4iEx15dJUGa|JpuKn17-Xp}P0 zC}p5g%0Q!(fkr6Ur;Im$qDl!4|b1InxfMzEH%}xfIoeVTP z8EAGg(ClQO*~vh&lYwR@1In+ zb~4cHWT4rJo*^2Z=<5n$gHF%|x`DQV(18IeKqYViH>d&fO+`t3sKr`q7 zVlUwWCa48XpdECB%6&u)us|aSf-X>TfT#w3&;Z&%ClCg)_x;%W*87?F;_un-W#3J_ z8-6$UPV$||JNa}f9ZhTL^xoKBYj5W5_}li|**%Fp;XS$C$=#9N`CX}9(OufE^jopF zthX|6#^1E*Og^zQyfgPk@{PzF`PWmgM_<=oPrnv>&7!mU_^bA-*;f*;gz0=f`Eumt z{7b2qqAzK5MjuOAsmzY}4x7&D6EB8e%)O9&A@V~0`PB2#=e1*;-*5Hf7MIK zad-4??e6qlvAe9hGIWM-C$gi7(eP;Q&g7kuJM(v>?ug!@-I3lL+iY#l+#bK(zCC+e z;*mZ&@tf?MvNtAf4Bwc$ zA$ddL3_rS2+nA2W;uf9b$2Zs;ve&P^-nu?>U7XJHv+EP8oROrk`0CUuUn&UX_^OTz}5m{N<_3qnB%!r`N>RSZgwu#V@lj%f=G1a4fevxjM2s zKav`Wj%Xw4OJkQ>mu4=BUt(X9y*P1k_~P6}$%{hAG52348jp%&Jl{_&2rtOZPtK3b z&!3k%FM8ho}$Gj~SvjK~@J*{Rvl+1l*%>9NzT(=)T;v+P;f znTeUS@RZ!-dDM z?!QoVRwiUv=Bkoak*d5q<&L^FciI(mS*}cFywa}BRwOFI6*(hmM2x(i(xbYjr?r@7 zX&Dix^ZPG+@`cTNYUYUDa|`GHT>tOmU-P+tv3J%KMQ@2k^p}G)ffag7Ko5J9n7DgJ zvF8$X&nTUvqc<`Yk;TNRip0hASAzmltrF71suLrn9W>^aCQef%4pK_1fOIL1tYJ~~ zb)yK;&yL$D`bt@1dB3AWNMC8*35vX7dcZaTC2O)b2vp50*X3n+&{4^_x4$&-L`C2V z4un!blSN?pJ~qQtqq}sA4wMF-qzJr#10mJ%;6RAL^3$FS4>~ugqxzKKg{JenlSzBxbdDr1z-E9GH6K`>FJKn zwP!05@1=(f3Mg3*TQ0G%RgqZQW7(N_jw10sPK2d17^o9VyDU$4?EdE}5+C41C`%?a zK+YY8c5c|mP;&bRU|sLsv|L?NPLJBq2x&p zJghp=u~i-4Q0FQVw@_9)Pj(<#4|}8u$m)55FXx-p@g=oS5s5*r?K~1(vW007%0;5) zTQSnHT^*7Aib#ABY3HdBBPrjmOq{9))&$8kJSJFDq4OsndNNBp?&(D{Go;4kU93UNI1*ez6SnOEuY+jyb?Su%CNam-`4ND=r3 z1qKC_tcN|GdF&P|65rxggpvo~7Y5@W$2@jR6oGqq6`|xI>>l=b=CNCKE~ZfF@lx8AYoF;o7b+najdLq=|}mXA`xT4yLmLYWE;kLMt6PxFek#N3piOhpnySgziE`?l&lsd6euH!~X`h!Ea(L#B6nj3#)c$u@rwd1_*VnygT=^@)o z#=HAU#=DOkiYwe3MTKjN-^~avR=9TLU82bQYkH(k0VP|{-oysUmbAJ!+SLk`1ux*Rv2j(6{2?syb3f6sg~#ylw#{+rXAv)xxJ9C(<>D z0msTZO3|-Y#QrU>ER+HU*rQz8{>ZYi1Ct{)rbzuePK8pydbZrk7An#6$}V%huFlr_ z%M_`9Pf0xjO16P5x31X4g-Y~=@i7?D!&c zg(7r6#Z3~BhCq=`Y`L|>WG=0IG#VHf99p_~WN08l@x{ZEGx65q5lwxk?fHBMR&hP_hkdxfMS221aaTD6(wn(Aeraa@Q$x ze@uzZ0!lW(9%;^FDzs79u)~ESX{Xb_J$OcawIc23oCZw+eJmP*H;OChXUC13WGiXv z&7pZS@CS`x^!L{&GX9hPRtiny*B>Ec?$V)o)A8^}dCSsVfa_`b)iU9&$;!VU**;}t#a#CRc?LzO1B=o zlIHol&#j+w1no$n*VS8MrseB`TriErHRh} zU!(K>)BJS)KWK;rAEhey)~pr_2V94q`PNgkme}+BGrCz*1=gp%)2RfZt%OxcJ`Q3~HDf{r<#2w#X8_iSzaz7uqTZlI$EwS~&l?Wijq0%A2$hoaGyC=lJewVkT> zf=*D?O9hatfeF084{AX@XaG&11+)PZRhhlO4{AX@2myVNt1_2v+Y0)X&jqSLH86n} z_(3gb5LB?Z3ABJV&<;XC3lRpW1Z|)lgn))(#|E%Johx`4Ki(18IeKqaUi}KphBxM$imeK@fC+ z>H}1)*aTkS2eqIcG!WySZ4-Xq0@{GsPxXs6paTO`fJ)#3ZV*CE<1V0WC8~i3_<`O_ zWs0pir_fUd0ni9sqo<620#%3qs`~I>nTP*M>x~JS18O#Gq}>(N@3@gFA2VBTp|ZxnxBph!3qUgn zf-ayRAgs|lsPZvr1s%ZJH%fo`z}@thK_?J&oy_N&b3bw50orka7x;HPL=O*|K;@1{ zXfFpIX6vK$S3m%?gp%|CgWFJIc{}~H!N+MWK`ZFk_XMQ@Z9maC`V^iO5dyWVpP@$q zEue$imVKQ-?dHbKtada*1bevFCACS(LbSW<^NOs z!JpAX9Uy8#bTst=|Gux#(*SjIzD9o!cyKgqz=5y^$H4XjMD^Yf?OY(#LvL-+02)CP zXa+5y6|{kFfdh!2(DqHn0feXlKH%CB$tNKg%GfC)Un3w*#28aCW6D(8D|_g3>GS5V#X z$|&D$9UP#$-aFj={9|DMFulN3=fzhcE)|uxdv$MNpA5~plmRiG6+bO&(r z4h>A~(0&lW4&BUPhYkWi_TYNZ0@^`0sKp-K0NOwZ)D9-_P9T~~8K^q9+IM4-j91NOp2xtQ~sKX(k0knb;jsso5z`?+W<3K&Az;VD0CgEV9 zjS`ihqW2~G15gcIy)WZ6BDB?n4k||Jcu@r;sKfE10krZx950$dJA;EpC(v-@=ve(0 zJt5EonsK~n2R3kRr6Wf*r~wv^90AY*d^mE{fhN$f|6RPuM95DE5-mg+z#F2YNiC=Y zK^$D#K}9beT&h6RKB5f-fqw@baOyy7FCB0?fcs+t<00wk5*TXdbNT70gF#I6qJVuw z6KKGZs1^8dIBLY7hldi zI40GBMi2yDpkg1(A4zzzG zp0?B3y@|cyy}7rOZ%5wF?@8^6?$P$7cgJ>HyED7uyX;+A8ucH3EB9vd&B&YiovEGC zof?n(x8BIS9)I0_Jxe41!>{FDO}-j=HUCQLmFO$lE9sYGFIz8Xc=UfZl}LqCIU4^T z*^z%S^}l)i%v15F z?5DC%CW`X_M4re$o_aj`xb}FOW&*Gt%WRKtx3_1vCANjP<&w!{B$?lu+8W)eZB0KK zd(?U~vn9U8-jaPJ@kp5F0!Tg_c{u-2>Y?aE8qEd}d(e6?^FaIo`+@A|6Q2)%K6iie z{>c6L`%?Es@6+x}-y6Hvx;JxA{2u$B?A?jG!!#d2@~+5T`9vxaO=yYqXl&FP&D5-xj;gx-D~S{8szc?B^1S@dDb7)(w%3(YO{* zZ^+Qt0M)pF%vJHL?5na@Caw%$nY$u+MdXV7+SJnexZF~_JYI(;R|xBlB*)C@+(s-qbs$Q=@qdR){4yX z_;P!Bc3EOscv)^ZIUE_z52c2pL)uU}8jD)d%wT-b9?ULHEDbNsElDnkEXglUEsieM z7N-}*7Fmlj3*!szh1v5H=ZDYFEl4hiEXdDK&5zF4=BLk#ooAhwnHQgD&&v)Z2Eqfm z{$zioKi`+?i}q=K>AA7F*4#`a9#*A!|KSi$J_1pY%mcF z2Xk%7wn$sPHPsqz)mqanu@Uy-VaR%jJzBW74eMvv>Zp4Ads zSQFx=FZ|o}X}bPDrFj02{{NGA{EE;0i_In1Dw<1vL4UbfK$G>e$5;bry&~iQhd@(6 zAA4-Ye6CYu{E{=EDWH!ncaawz(<*T_J3Nd2?!mUD>lGQ;vdsdTtdA{s#e6KIcVg`!=K6^ScC{+mOfDWIQKhd9<`qax&Y z90E-N{j9n&m}5!^u(+^sk@|I)q%1L4xwCXi1DXQ**)?>@X#E7o ztHS%2F1&>u2gQ37Aps77rhtA{9pd=Ny;l*^z#-5S(9dq5VKe2|WN;;|3BO#$o#Z}6 zNF#?pQ$Rnf4spCD_bWnLI0Tvk`dJ*`ucKw$t@ydVpl?Z^<2CubBBYf=pedlAMaWt@ z1dqFog$xWkKB*p1gtT!8GzIjrYXmw=m)%R2^*IiX4=OT(oB>S%eJu8paM>zeeZyhL z-u{pxqn$ILDWH!nWRzWxVdq=xVMRsBZ`bp&VZ(Xezq_Y z>H2Z6xhTHqhZULJq6q2Y5NHbMWf8JggboXtu*l@2iimEGfTn;x77<5ZWOAz_qlYt~ zDWH!nWR!c&sQ{$oaFSGHOyUe^(!~d4z(Pj3*L-}D$!&^^sq~1rgozA@YoCSj$`hR> z6h5h_XWPImA%0BP`R}5oot7^ycIhjr_TPV9?9#VT-M?wH{5jSAyNs6KQ{BI(XqiFF zw=Zz%>u9NS%eJnDr60x!w^CP8S+n!QnoWdE<6wt@wB`-IGuTl&T4moz}rxh8!oB>S%eQY74 z+)hmyjsy8Kii{bY0ZjpYY@wg*;VmU&JM}!;smI<|&nhxbd(8`<6+^4~N>}4~Ma1bG0ZjqD?2Si^ShlLKbS+*` zM9k(0XbR|K3zKXd-VjrGHPFGebT5BVk#PoRKvO^udj%h=4&PF`&}lM{d5+@HI}{0L zass6KMx>W59IFmbD7+SQtSa5bQ;LYQI08~ZBhtsNr`>N2eM=vAE1uCT9_(ApyG`*c z`b&z8b2$T=0{Yp)Tk7xztHK!#y`}gAZ*1RqSrIaaL!c?3pDnzp%7xIIYJua!;}u0n zghQYypr0+gt;&Va+iHR1ef6p$WG;t5Q$Qb!&9#>2Z*aUQ#g}Ag)xeU{Pmk9W8GW1q zO#yu@wpRI!Wt36+)_Pr$(a#ys6wt@6q0f$uTpnzq_2`>FG`sZE;|)c|0B1l`Kp%^3 zb(!G4prs*W+iLFVrDvEs6&dq515&jp&Vblfn}a(zNLsbpCh0tpr4IVQ&0I)z7d)Xi4Kp$JkIJ`-r@Cij3eWiQHUPZ=I&VZ(XezuTt!(s2L!hx4E=rkFBSUkF?6(NHh z0!;z^tUAQ;?dlyx$S{XMn!budAVN?YeB7;gnoRqL^UeFNB4indKvO^;i&Au(%C=ij zF*--P#e0g3<(vUc0ex&Cquehvf+FK$&VZ(XJ{B44$__M$^e>plhb-r6evi)kH`3yz9OhD-*=iz-`(xf7ts0tk7u~_yJ_j5c7QL_O2vmnS_VYhcgskQeXbR|O)gg`@ z{ZADkYv_R+1T7}6O81XHQ$$?O5zrLS%Oc{`BSf59`icIr zB4RB^K$=&MBOoGXi1KSOqx1tkqlmbI906-Pjt504`tB6>yn4dr-8eN7Q@4Lx9kfF|o>F-aWWQ{!&M!+L+e^DXs> zBI8=lfTn;xwvchyVf9dk<307~ij4J~0ZjpYY$1c+IHjv{D8uol`nn?HI?jMJcOPfK zLI!^moH)bruKI=|<9g13rhq=SkWua{3B4YUx7A-LGB$7qGzFyY*kmE2+*cCHaJ;Yn zQju{3XFyXxKU;3L!@{>+%y#HFR{fPCRgxta*kmgC`5U37uyt)2b5weLxpedlARfjmnaksJ059eFz?-UvLa0a9aCpiNaGRl7r zI^R=&ugJKUGoUG;k1b@B{~UC_ss2HcaUW+uQ$QbE$SD6g=zLfGqax#e&VZ(XKDLli z{&Udzw)!VU#^*T$ngaURLPq(|LFfDG`-+T*I0Kpj`q{$a@bJ^-vCl#08|$AHArEs1 zGzIjt>JZ1#>R%Kgk8lVy1@yD(5XbTA2a1p_90E-N{j55~am3oM2ziu4pedlARfiOg zS%;1V|8S{GzmXOnEpJ}p(g$eC(YgO-od47EK3)5d((-dU_kWPi{U_7%H9G%~(eej6 z|9_U2nX6oSmah9>ON*P9m+0L8Y+C+-&i!wq#iC_5o%`eb|6l36|1O;W)AHr%F8u;p zeiL@-+i5vDO4tACy8q?02xe&sCyhrE%D;FF(|DUw_m;B_5N8OxaGi~L~1Wf_` zta>v!j=P^KLbh`VGzFwtI7v(vKTCuTZR*0kgNOG1S*0ykKU73KMi1B^pvih!M9e%w z#LUu`_8%!C9_I*X3g~4KafI(9{f_S=|Eh?1f+L_QAk7_0BH{?&NBSLm_>UD4PjUn_ z1@y9rm?6r)7LNV<-xLu~aRf94^s_^Be(90evh!o3Lk$yN!JxaqbvDQ)Ilr8PF8a#}+d9 z-Cr7WD8sR5{D&grMb3bxfIha6QT}_CbJzH}B4Y<BoV!O}k?{&= zKvO^;TgWK?y~??N{Ffr*b$Z-J0ZrD=7CxK~?>RR1y~??R{8AC}28TdXKtHPvaqJ<# zQiSZ}5NHbMXVoE&PmfGkvfRfN3DA3{D+fv&8h)?Hc#kunDWH!nY_0McLj!zND{ibmC^9~z$30U(lcgz# z>HbC$qm6ZV21X24i=oKkfhGODoBHQrJ&QqqR0MrQ58EuD$=0%)ic#Y?80G`45vwLl z;`!9+A8Z}>j}8t@{Q@UJQ$RnvmcG+Xbp06zV<`rv^BT=6T_f$qLO{8kFVbVT2xzi( z>=o3-Ha5Z4Ld>b?5%U&BhUXWfO0)E0Rw$LS+I2ajOjB*=8u%V@eD=UNtDnfU=7>ImP;#4o?A>?wQ3cGb*{S}u_s^ENsn>x z9a5o4#TT$PZr+lt$rg@4hj-*ax0hOR#F9jnia_)NYvaCPlBF)E^c#FL*htr##@%=y zt`$_~skGuk*fE!^OA&Y`J!X)0H@u3_!+xfcMB|=a@yD;xT>r!EZvE3B&CkEyt^eUa zT>7?eQvd&lsgM3!bdCO5x<*gu|Buo#jr#w8Lf8IR)ABny?|*`pFfHGt^ZqMo(P?>} z&i!Z4bLrou^Zqz39$I$Nx&HtyIXeH}OiK%$|9?p5{>x~|)4Bf^T27$l8+6@&EiLH( zKfm*phu^33|IGP^&i{Mn{FP$uALVD1kfRgpF$5U~{ zqexuBiBJmYVUMTch*yyq0UGQ1*Ze0XWxpdTDT@BKSHA>*BEhk`1us*7xwb2V<-2NNrN2Zs1jf zlFqO(g*!ab?95*0?98Rj+s%rwTQ~p~3M~5gtghUfsL(wc@@>B1sO7Z%B5>Ww>15%Cm9 zK)SHV5%4H_<8JuU!EYERC?ZfqF~H>$>B1sMK#K4$tNk<;OGz;4WI)Y5CGw z)DNG=0sI&B0oX#zG+I8PHh|T%{9&p~e~y;Z7r6BAP#eH?v{chrfam{?`U%kd|9hUG zI)XP-ZNDCBU!dhvs{OZtY5@L`>i#`K_5WIF*-143X3_Eq&Hq14%cnH=e;o7w)AHS) zuK2+RH2?q3#V&f1#oK`|i<3V60{;-8Ib8=v3%^e`&=0Z^G=XN&0$M>E2!eLd0YbnA zouCVJ18oDL0|QimO5g%+Pz5BY1~tG09^eH&;0G2l_B?Cxn>tVr0-ymjf+o-mT0kpN zwXF?zgP(0?bs!0|QimO5h^K zo~IkXsR9yIgBoB05AXsX@B<6ff;vzS0-ymjf+o-mT0kpk13}OZIzR~6pc8a~ZqNfJ z5o6C&9H8H5KnDh>0F}T6+@K0bPz`E;2|U0He83MZPz&lnJqUmX&d&d&S2LaFk8bK3i1}&f!w1FUK2OS^;Y|sh1 zKsV?ClYq9G(18IeKqYViH>e`Uo~OibszD7ffd_bj5BPxvYC#>S2LaFk8bK3i1}&f! zw1FUK2OS^;Y|sh1KsV?ClYll#=)~CbH1L}WPzhYX4XS_y)u0BLzyrL%2mHVSwV)2v zg8*m%ji3oMgBH*V+CUJrgANb^Hs~bAo@W<+(+zsSBp|jD8qk3ODnKQ00XL`u5>$g4 zU;+>D0w3@L3)F%-P!9s20W^Xp&3#w+whwpXa^l21Z>a=x`5b0Xg~)Br~s9~ z1>B$tNKg%GfC)Un3w*#2EKm#TKs^Y62GB^1JH%tqNKD@^8$lCj1}y+n z`pY&D1nr;$gn$h?K^N!-JwW@I(18IeKqYViH>d&S z2LaFk8bK3i1}&f!w1FUK2OS^;Y#{a%8qk3ODnKQ00XL`u5>yjo&$9-@Dl9%$xBy?KiVK6Fb8@ zb8q;MbLRi8&qtomKbLwg`keM$`q|jC*0Y&s;?LO6WS>qv9ez6ZRPw3FQ~4)TPez~A zo=iUxd%}7m^LYGm`|<2!iO0f^<+l5`XST(++1s+oL^7PrZB1^CY|THKdNlf|_Go%b zY>Txe^GN&=`;qL!iHE}v=N?Kv6nQBBVCuo>gW7}X2VxIw{e0x}`TJA%NAK6}Pu~~2 z&$=&jZ~R{S-t0Yzd&2kR?oQqvxjTPX>aOTr+Fj{HEMX-wqw!IDG<#>_&hVYNJN$QK zHpe&Ho3pnkZV%s{yDfQJhRUMb^dk7R{>z_rIAbXm!vLLx^DoN`$A|6V z>`-DTJd}$jqmgKSFf|w*)CSW_V@s{2nI-Wh_LA)4#NzPc+@j>7$fEqh)WYaOZDIQS z*!f$JbB2HaxtVj~=h)|D&rX~jK09|-@~p^N`7={zM$gpFOrH@u!#X1~J3iZ%;-#QX8N?)XbtXF_oq0QDM{Uhchhm|v9g&WFd#XL!uC=Fw zv7i;qw8h)(wrp#nHQbtONw!2<^3AE{XtUOwZi+QoO_|1cqurQoNHl~SashuJQy;Il z>$7!k=dE!Wv*tjDTzWA!RRUg8i)U5GgZszV%GE3624nL{A;A?6UM4smR* z>57ooI0Tvk`q@HPymj=m<2Kf(a9qd58H$kC=}`g#QZHhXdJ&TdIfjmlrz%3;;1Ec? zh)ExdkfZOoc$y+(CuczFM9dkmu(j6GJ;$xMBT_d{N5{pPii}MWSImLw zgOT$Fh8JAuc#+OfB<-aKYY~u6FGxRoq%M-)k}i_Hv*yjivuOmQzdutE_8$GMRskj3 z#9l#jG~r6*xZ5bMxm#l1^5KDz#RH3%4qd=ig82|$%sWew_aQyxGyx@B%a+T-W(*bb z=Fxnv%ck6P-3{xmyl(B~p*2^beCSk~)O(8e#Mz5_!%gD&0rF{!W<}O$^JTkCq!7#ch9o)ck6nPo?tIYyR zwvH`yrMM1{Q+lIaq-NBIt|Ln#%a#ufjP&+y3J>6K6kpDWBJC^mSDOWtY#n>FY2n^Y zvrFH*a}{Y{ZwLFfchfIFb3gF#_x``nnf-`bPSOOS}5@I=cETPz0V%t9f`o@SEtYVPo0A<#UG|fsUSj z=PLry_q(;EA9xMlzlqjxqX^NTId0q`z!J+HonU(-rAN+%ioA2^0b5J@PS@~#d@dd# z&$&V8mgX%|vwF=zS6wKioAY$z&7qJUD|WHa0+m_ zBaD9F@0&bwpueQ6X4vuByF?Lq9tT1xpve|S4wMU|kpqrE>c+fx>}vl~Md0}q5)@Ff z9(KZ!1An-#Qh$WT0JPDv%j4G1qUD>WTfeByt^c&ut>1W!TX+48Y5@F{`T)@K<)66p zCA94Scbemm7QM=?Z=LMct>3!!ZNG8roi4Zj{&!va!dG4T5ASj5pL@ln`yX@ZyQuH~ zd|G}uL~{(%(oD;HH12;XEkC0%|M%0<#qQw6L^3Z_<$c+pcd4DdJq5&pb<2I zX3zp!K^q8ycF+Mrzy_V53v>f*1EB*0RDeq00&Y+RB&Y^8zyu!P1wP;h7N`YvpdJK3 z184+IpqUsL+qX;5C9FJ5j25j&;nXP8wi4S&;dfg2A!Y_sJk7=qwH=l z_B{VTbvuya0IiP(bYOrAPzhYXO^iLyD*Q%*YET1A@PFBR6EHW5JO8`7rIA{rmei6) zntP@-hcQ%-@!vFiN)_A0`<%Z4kfA@Kx_w9N5Gp(-f{#I32RrjyD4jNqMPU;dWk-wpBNwp36qEsL&PvKLW~j%2qES^vj_!0JSyQJoJ1Sp zBHV;Vc!+kwOX!4;@Dl;TAc91Q2ooJdgoqNIL>JLb^boy7AJI#}^7uhA86(HV7`Q|wPf(}8+jTPU zCm%4#4|S1`_mEExlFyhR8U_Hv{QbPL9h)lQBwU1tXeYdcPWT8v5g>v@hzJuAB1&`; zT|_t0OY{-_!~ii!m_&>iBE$|rAymRaIEgmGMYsu#@DS~Um(U3x;U@xw0~gg^Y$IQC zlP_zOF}V3=2l<&E^796c*1jL)Ii1}6Q5QG6iC&_gFo_s3L?}A}2jL{z2shy&+6gbA z6F$OE^x$0WCw=742FPCw@@gvFv|qc(-)iLVhd?*xY{x&3Vl2fWgoAJrZG?+(6YYeT z@DTyRAVNf#h!9a?gbG2yO%2d`Jlxc|Ip8PFAUWJYF6bin>jpidfX&Y;phqPf{5{h~ ze%{3$ZbIYlFZs!Dgvf7qkd-L;H=Q6F8esG9dbrug&F}VebC8=qP_}{p=pc8rkw0>i z|Lh@u>Lq{fBmcz@;{5=dzY3AR?jUPX^0!^&?|aBU>f2Wecl)(I{6o@RDYP35ZbrD7 z>m+aOCU5H{Z|^7X93t-(JHf3gdB2l<&`o~WLq6gqAM=rq2goN45YHHFKGi`!(@nk* zLM05~QqLb($`U#U5Ce#GbMrcGk zp%Z>0NOTaLL=VwVn8YxlP6LJs^&f}HpGL@^cagvB20gvp{I@=C4sf$J$julxe>eLd zzl=9aZ=~N)-YC7EdR=+Fh_(RL*K)7LU#q^Fe>M4P?UmvysaKR&N~LruSSoMJY>REH zyqtSE{&Mvb`A;N2QG2QQQtBn;rQ*kvAFsZcdolK6xDiu@3S|MME7b;I?o{T+Nej@#Z z@0IDC!eI)jg%431Ih!%`&0KT_m}eNd@x_$n%NrLTDdQGU;Mu6z4?2S_tx$y-jlkgitqoi50>xF z+#S5TwCn4C@XqobnLA>4RBq4R9>2Z%f&2%OAE@0{ye)N`a$9LjYKyX^i0}W^&AH9- z&6Qkcx3B;Co0B)!ZYtiCx=FdIbYuF);Em-QGB?C-s9c}BK7M`my8Ly?>uT2)uT5R6 zTwA&(eNFJ1^3|EEV^>$M%3T$|s(NMq%H)-`D~k0t0Lja%nOr7@769pKWx9A-65s!G zm&PtFUy{bx|Kj_T@2_5*yEu+-|Cx(|7nL@pHq|c7Ul_lzdO`kzQAYmNuj}1UHmV$(#~9rE+raQ)cvAVq%!#oRE6c_5(z5ij;Ii@wnG<3sRF>wJ#+O!?lDT9&Sxw{<$wck=;_<2Dv&Y4cs~(#_HhFCAnBp<1W0Ye`N2iYt z9$h{vb5!i8%8|Jv<40DH$RCkBqIP)k@YLbT;ibdUhXoHSADTHdc4*}gaY*Ul^ufV{ z%ZoCLVv8#A9OjCwj^)RaW3_{d2c-^D4l2Db{l4J)$_Hi+j2&1xAa_9gfa?DF{geCG z_ABm}+Aq6reBbKA{KDkI+CIg7Qu`?Tloq5H1Q(P?Go!K5%1CY`K2jad4=0CfL&c%g zkTO(?rDMTZ+02+Rvoa_KO9SbF;6S-Q(;w@v^yT{EebwH4Z?d=6Q|w9gC_Sa_ba$}3 z+?DBybyYfZo$=0UG#^byYms6k70GtQJF4M)I2o>milJ0U36+BBU@%xVGDgg(1ag6R zpz6>2lm42o=u7z&UrA5vLA~tFcw^p5d+sm({{P$9`-b0w{hwUrsvD>HxBWBXmr2Y1 zcTexK3!Yp=%UC;@rm=PiZDZ|F8pqmUw2rmIX&!4w&_33Vq=Bp*MGILwnkKS#3~glX zSQ^RNakP@P<7p;q3EIh8l7_Ojn3l3O-c3%>M%I?}l1phNYbVf5)|Syu)|S&y)=o6Z zlVaqGA#x>+Wo^|6xmwuKq8Y8FX-8{k(~#EAp(U-IOA}fd+X=Q6Un%UZB z+S%HzG_q zH$ZNswXNk%aQ1H8ALFhEhR6qp$q&);)*fPuf9=C;@~=J2HvifqZ1k@^%2xl{V{G=X zeS`+M_Bb2-YfrGnzxE`X{A&fa`PYhU^sha|R{z@5Z1%4`Ljzp#E3&$8ve_8go3 zYtOUozxDzf|7#y(>woPOY8ukeS$pzw3pchK-n3OfU6 zud+9Q_8PkbXrE+%0PS^l2+-bOj{xmWb_vklVxIu*Q|uI=eVV-jw9km0;Aa)`b1M0^ zgPd`ay3F7gXB)3q$FXyY?O0?Rcvs|DKk+_761O@p4Ii zkH)+9{Xy~vCi%k{`Hw^7KMj*RM#$ng|4j2;`w8uL?WZ*0wV%;~*M3eD zUi$@Yc$N}7uGjuZ!(RJ$TK3w1(6rb7leWF~Uo`Hu|E6`X{fXwi_GjAn+B-Dx-33(h z;)g;TUsGx1YYtlZnv>?e)<*kYbJ4)p+_dmDjV8V(ZG5ereG4?NlhoTtpNsUn$pAYT zXa;*2XhC){sE4BvVpjt#%)SO%2Rj>R5%xCFqU>&~^5-!+rAx zyg?;zbdWbW$(!5ATU=z;P3AOmvxmI3o!sIjZ_~*S_{iJ+PJ_HFNZuVHKNu$O z=^*cokoQH&t(|1P3!Dwc{oUO4Ko9v~FZrQ9@}Yk6!vo~QgXAM7`Dl!MY>52GF!}fh z`NSys{Hl}uS{wOw7x@i0`Av=dmWTYScJkX^a=T7eeBf*_{@Tx7e-j}8 z)*!zVB>yf%{(YGIhYs?)5%POc^820S54y-7c9Z|uL;h1QxucJ)_LDyvAb&ha{dS>-`H_N`*j<+lU*mY8v9Pn2IDvEL!tea zohY>5u@{B*dv>GH{=j||+8^1GLi>02q|p9@T`9ExWM2yHzu1{V`)~H5(Eh}36xyHJ zk3xHg9Vy&J!LAgV!oC!m%FYy;gS{yx!9pXbF)WgRHwi+!&A+4N_X&lW$E{7m)JxleEVRO(Z;xAJer->STsc{7Om ziPRgl*YoJBQ2Au$lfh4xUQ3~NBKK1rd z;7cX+P^i6_e=&|aiOk1>A1l3(dZG4w{`vUxmFF_g1)nQDn|ikP(fmi_AFVu-c_#Qw z>FLzdwWsn=%@or`rC2N^3)Lrcd#H~nqfdhJSn<*1qgC`sh&@t%IQ_8laPh-Q)JEhU ziaj*>q1uCa^hBsUka-~ZKnXPwwR|2u5h|#M2yQK*A3_ba5b=8}=!Foxr}V+p2W#kq z5Wl-}SLUuDdLZn$BZvBj^6hE#KPaO1p?X^my${M;(hYSFvCU=lJWz7QY%*I#zk}E< z<(tztD>oN!O5QY$I)~B?DfBtWqsF0fT?Rc4N~mwBU6V(Dg9>UJf>)Q&+n|QJhWM40 zD>7FEuPC9nK`oQd#50v?(XyT)c5(Tl^hL@=#ZAdg)eCbM#x5*hkiI~PgPL25ZqWgD}|l~`7`5ZR#3MPJfn1a>hv0F z7UHK>PR*PeM7=_4L+un3{Rz@1D<>CGqflL!TNgurg7jKtZ4osJ)l@DOOO?@=ptd@{ zI*!_e%&Oq3(#jO-67nnJD=H^tPAZ(3Jh8eww>-AIjCurRS@DGA302f0#Fmzqq?ag5 ziWA9+>UeHEh8l$QVr6kLnMD0TE)h$Vk53=396yGh1DRuk$CglcP&+z*bo}TFY7T-& zm5xjuSwp=+{D{ionZtvqHAo#+J2Zc29CZenLxQL^NF7{TlwULxPsf#b5%mStgK`JO z4l1LzKzU#Bz~q5d)D^@IDDR)%U)jI7Uvj_dzB%+0C@)MeR2CM|OQ51;G6GYv> zj;({WIRDn3H<Zf)`2BzSGs3J`_J5Z_;~>_Je~uoam*^wu8E+=NDWh<3tD=!B2(69K{?f<%Z26CFf^h!UMd7tu}h5WPen z(N7EzgM>-Mh#_K_7$HW91%wy_6hb8&gp+6^T!fp@2oKRtcnO{G5q=^-7(|c=5n-Z( zh!9btljtJ4i5{Yt=p*`x0b-Cai5M|N3=<>7D6xPL2|yuK!a+ERHo`@?361a&?Sz-m z2_NAn0)#;Xi4YMcI*14nB|3>NqMPU;dWk-wpBNwp36qEsL&PvKLW~k(5>N=0a1c(S zjc^feLL)pxJK-gC!bkXt0AUb8B1D9V4kAKCiB6)6=q7rIUZRiaCkBW?!X#qE5HU=Q z5Xv;55)Q&iv=J`CO=yINXeYdcPWT8v5g-gANQ8(m(LqFrDA7rD5#0cCa1Xb8i9VvA z7$61-lZX*R#4s^JDBA#)a1c(Sjc^feLL)pxJK-gC!bkXt0AUb8B1D9V4k7};hf!{K z5?w?$(L?kSeMCPoKnxNl5hI2Ou^mtdm2ePFqK$A7ZbBnGL_6UnbizmYi2z{`K_Ude zhhc7a5D_9ubP`=eH_=1%5`9EJF+dCwCJ`fsh+#tP02D$c9E6i-BV2@=U@ez}m0S+i zaXDDU@!D=lB zYqcD#)N-&+%fY%V2dlCitjThiM2r|BhKUhklvqHBoq$59goAJrZG?+(1Ms27Z4c2- zcnO{G5q=^-7(|c=5n-Z(h!9btljtJ4i5{Yt=p*`x0b-Cai5M|N3=<>7D6xPLf-lf9 z1^*l>;UJtu8{s0{ghqIXcEU^OgpcqO0m2}HM2H9z9YlnP5}iaB(M|Lay+j|;PYe)) zgbBchF>VhL!^8-oi~(#<;$T&i!%4IeF2YT)mdU|NCI{=79IRV%uxiP{nk5G-mK>~C zaW2P>2utWR>VI?2J>BnK;#9IQ)nuqp{YWL=VjRY?xk zB;lz9#0XX+;i&|S5TnEbLP-EB;UJtu8{s0{ghqIXcEU^OgpcqO0m2}HM2H9z9YlnP z0`Orcx4VdLqKD`u`iOpFfEXl9B1Q}m!^8+NN-Q9hDL^G0gp+6^T!fp@h{)EZkROWT zpQDrLBD#qlqL=6+JcSbwAR7-R;ann2bQ6QbDB+p`bRtA_5d*{s(Y77%5<#Mq=qH8==T4xVFo-D8M+_0F zxg5bF{6q)QLzsjz3Al;A$rEt~;g|wEM1Y78y+n*qrvZ)d6CFekVG>Ffa1%ZvOmq{2 zgxChS2%QKKUBmz}LbPoMyhM=bB>IVA!nqS@Ck!G=^btb@S8h+iMlQdWc`f!@1y*wW z)#@wxzpzJt{`utdwdab@rJhq@HK(5q;!A$!qcPacxo6_|mY;t*3Cp?oRO%@OU-Q$& zV6j}t6k_{FO^`m&7lrzCVv|{I!dV7pE>(E-u0P z4qjB=l-U&9RDu1y=kNT5b5rLk=a$Y%pA$T%3_Cn_b|sxl$J13<;>oGn#^T1*Mg_Kb z`mEqt40tu3xi!7?wcNv{d6DW@{9%`1~r z@8Mg2Zh3rpbynu~zor-Ul&-+y zPkV#ja(kvd2AeMAUQ5F2FS=81#a(ixVfUBYGHtQ8iZchxzv{?4l8%~Mgzc}W zB_*u{m9og7itoYSd}G6>y$Nw!-Tr6)|KVwC{D1Vwu!feOT)k#pQxA!zA&4h!dPuB< zOrIbk z$vyS~X^PXP`6`+^My<6`JQ-Sjg7ir0lI+L*Kb&)6osHnBQjqirQkSIQ|8UNQ^)`ZM zNI}vgNL`YGdzu2lN;RAUp|R&s(+mhF+X$Wsk^Y83-hFbrmEgOXbKw*l#VM&sdIV{W z^3EYu|EF^HkJk3Ut9m@NWOsGiuB<&TKHKd$HO&zXJw^6)MDv};S z>XMi3HC9*8kJV&jte#<`xJfFK)@c1c!R=OxR;*I7DOQ^l&$LmzNGg)nX#GCHZF|M0 zSY6y0#0u$v2Gw`M%+i z^h>sqv?5kYHbrcc@A$=O_T1WWX$!5+@Hk>q>`{etvJ`XpOLtX1~#UXC@C zuLn21Kwe;@c(YU_J%aQ}whH8|;`o{-#e*B~d_ll)6&(Ye@0@h%xe($g@m|6eeR&iicy?~y?yJ#tul zpX6UMi_RrBiVs0+P>>$Upk%8FP~OcfI+xlgei&LKa+rLNWK_}`OzbI@cRC4bqU4-_?!LQY8vaW_jRi`9_dy+SRXpVtqx<|cDP$T7VFm! zbE~Id{RzhXzXGd*^*)UK-;ec0jQf8i)~{gP|C2*FCW!F`u&NmUKaX+$O^*LBRMGpu zedcHI{r|rjzyEK$K@7*QM#xbnO}7I}AwhHvBSCbHYR7K zIXN$DyqarXL^ith%!|rKHy^y^>z?z~Fny)bS2}$)L|={2S3~qwfWC^*R~migqOa8X zzG}Fdd%mw4+`qU-iuSYJ|S>&{sbCYM8znrLTtRD}%m@(pMh(%1vK6=KHGQ zYTA5XHMsT7_f>;ifWGRT^VKMQ)lOge>8la?O0Ym0p|67URVRJbPG4#Cm2;ikiP1l^OZth>GYLBUn%sJN?(ad_$o|ab<zS3UHVkG}HKSMK?~YPgy{-&YN8=6qi@ zxP|Gfh6kO4zVg#oA^OTeUpeV3mA;D5SH1L=pT5%RD{a278m{J>@2dv4*nD3#xQ%3Q zKv!WIS9ti2j@=?c-W^#H@=b3Mp;+Q}5$c(FN`!)A4W;p}!v`Bn;$3^AMnhS7vu6p-k}6rH3v)x>$jduPc7K^wPyomxjC%pi3WJ0(5Cep9Wp}>0;2O zA&ms-GC-FgT^jCFh%SS48O<^x8=jO3oT54-(hqmMBOoHX8Ihsph-^5;Y>vnVm(J#h zY;aNFqo#;d>7@X@q|&nu1-pYT23;IF7 zR|+)kZM>4d*`?u1BRd`!?tJ~xP2Y?iF#D#_u-C{wfq@xjGp#?{aLlf~ZZT+`iP)!S zcHSb|Cww0gplCk*g}uK6ceVU`DIQ&$Ur zqlCKkI?*$*+Zm0AcyLaj;TqCJ`Trz#e69Lb@s-k-i(lIDh5Q%tpWi-{n~A+W$-Wt% zp88bqQ^B{yoAEaiukUzGd98qc7h)T%ijp@ zi}_-*m@L$uEIwI$B871stQH`t$F@CUJUm@*;}QQ*wcfrXet#8xC9D}6YWEiJP2HQi zM?oKn(%or{(h$6>d}roPYjlS42h7{Dx9-U0bIDvSTg;}i$y;{Zl)cex7-^w&?ar&m zuA06gc17j#+~skMrI61gGqvgBbZR+scoxwt}LQIg0ix-BE2HGqKqC1 zv6Cto*T7gdxpXV~9@NH*+|Fah_Sj+}c=+U@TMyp8$59B1 z2Z{rx_M2H~?voweF`O7Gm|}3Mf2P;$sdVSM-UKp)WuwnvMpecN&G4sagK98D#y9^ zNOnoK3UZUK9SKA0b2jO8k_Ps~a8WX=&sCS>kde>cUQoY7T^^+)rFpoiuK7g>o%_0&{W%acwKu zdt;kqZ?TbO=dlq%dL$!~X>lo1@kZ=zTCyxCx-bMya^pD4#isk(Jo<0eM)uRV?x-L= zl2OUMg|=Ik%9Ks6Nv>PHW;V3Vx;Y!&&qC1}^xhf(KT;n6|7x^7VLO|qMFuw@>Pl;_FU-E6i|`ywtE5u`2|kZkqwg-xT{#BzMUKb+pEKh$rv(fAS$jR;bg3`n;6lC?`? z?63xnEjAiol^UcjNJG-nIG@*PTt&gy4ZmEZ4-Rk8_nnH5BjmWofiHIO|$)F^gitI^*%?sRU5Cf59 z<4w84M&++?{ZT>cl7=K7w$z!o%m!sSWDcfVJ$2n_Bl2w=8WE%}8I)`#Vg+R#MdFPr zciE_Hmnx(#NJG;8u8heqnDwCCZ6oqGQiRk68IYvN)nfNAp;ks&xBBF!JO4o&jlY!| zq%KH9l6U_6J!r52gbR0mY4eT0$42BkQiRk68Ia^{-;+o^$3vv?j@)ab@pn>#)CC!k zv?6N^znd1>GPg}2vYKwleKs23#YG~5)FpkAoM^_x-@GNO3N`BxYnL2Khx#qwYNPNy z92ya%F6ooJLR_*pg_VaiDCBJvzAqI>U66+4CUFJs#_oyAy5Y;$j>nsB#{D)TKae7% zE=WVtUZiP)kq2x1CpHjVyxvHcH?WutS38;x0au+a;cloa;g1T-#pW$uEknAz@^@Yb^jGE^(!a2 z)U!`_seeAvr9N_+OFj4^m-<(yy3`9dxl{-KKe5539*OlkC%DuMR>#j=>fIl3s~uOn z)yJd{xa)i0gnRwviG)$g5+wgmUP)nBIF>g9R2`upu}^@akz|8H}v z-#zVgbPo`aJ7l09TP>!E}f$9S@-EPupC1NBFC>rJsQg^2kh&lZ$!T%T9>Zc~yU9~lV)#rPJX;PvW+UG zi!|MpkJyO(s}v!1K^l^LEM1Cq-ZJ}=IKFDU>83nxBl0U;Cn88)(vYOcdC1@MmR%xC z*2Wv(te&tD`8O#->VgbNo+BIkx6CK&#+%CYCv7x-Ej378kO4{NllWc=sd$t5QLxe2 zDK$u4kO4_cqh&bOHYcs3jYdsskh&lPl9op6{2p&gSx?z$u#k($qE44IB(3fjm%*)R zso(TdCf2Q9()c8Q+D7E}xJpEjx};x{B77g2x8P00fw!JhCYoNRpRtkn1FjMgq%Ikd zq{MW~dw$BqWYazWsEx)Sr3R@BG9YPbw7TceXev&gwbA%@sX^+33`klUt?oHAn(p~? zHX8pWHAr2Mh9o=ryoZTApSKbDZz)3Rf(%Gfqqy(v>V>u;AN*p3gMnvOM&*YPf4{0n%K4Bx_ z#04XQ)Fu6rlsI@V5(hULXD{1Gv`Gn47o=a35{vdC(Nv6VvypH~2~roNUy>5>y+|~b zA|)FMx0E1tO!Ytsk`iOWY`hQL-gPgU3XxZAB-(Moh#+;zfTT4Gv`qYsGWEQNS)iLT z#;Z0OUa3Lqf(%Gn8Z!0oS)(auyk?`JOAQj0%~FH3G-UGMvqn?a_@s@7Pim05AOn(? zhD`r^)@aHbuiI$&r3R@BG9YPb$PBP&ji$`;hK)u*YLL1h1Co};qQ>iUd+we$<&HOP zGz_Uh>VgbNS{kh$vh!y!f6GQAC^bl3kO4_cqt!!p{tV`yveD>}8l)~rL$Xze@4E4^ zd{uJ>`LvBlM2e8QAPq@-k)|B-85@zP6d`pqd!qVF^@(7oD4A$=+?ozLU%^$@2@snNZ zvZXHdpO?7QEY|)*QJ=8RrLLQBsXH4M}^Erd&Q_Bhn*9NL`SIq`gSfQ?P6!(kn$sU66*Py-3q@@bfkz z15$+41?iWZ#uMZ)Va_K0+5fYT+KHwN_yrq@K`BA%Xe37ok`jA)d7Ef@LVeLj!juxE zE=a#5CHC_2Hqn%Lzhom3lMhUnDdB#_ zMq*e>kh&oKl9brX%iBa#vi+)!#E6t2bwTldr$bo)&kjs2ts zsiW%+HAqXN^@~+=!u^(w#{N=+)CC!kv@}}3ST(2Izp~LdKx&Y>AOn(?M(Y===A`>= z8;t{{2B`}&AZcl|ez9s!yW4Fv#-s+R3(}CZO7(N+C0%Rm9+$vKI?aiVh;R?M0f3-@msJIZ}#{x*+|Mmt)w1bA-8D z61M6?*K8PXtW)|28;PT&1gQ(sFL~u&CDv^iZ>&@Lu8qXeQi9Y48IZK5QEyfI#wKfx zl}g{U(KtqGkh&m!lINp#&&1!nrT!gzX;aqvRVack-n#3J8 z8WU23)CC!kWNfw8SO<;9+g`QNSRyq@U629Eb1*K_<>JVB!I-Tr8DF;MNcq68o1H(h z(O4=qNL`QtNygRL;)oU+Yc?!CLO$^88b7wtI6-QVx*!9RjH}if>!8v6!2dqJ`Co%I zjP+&M{wHDm=^3#9vG!qo>u8sH%Kk3(x3K@W!uCIq_CLP$pM&+!_}2dj)G&b8p8Ss*#0LS;!=NpuuHuS>k!tr7rE3ku>MEfvi}c49l+No zQMZ6qV143>i4V@e{{QisIs1P!@p~D6^+@_>n@BoQMiQwD(l41tfqt$qce@c*F_Ijg zXw2b1v5`1QN|3rB{gRZpY%db48;jeY+DNRB5~MCjza%9#?L}gFW6t}Tjl@bRL1G9* zFd%73w0deJ=e4Z+xsApusX^+33`klUyMHdX8cIN8yfNqf!bW4Y)F5?18j_aA6}#PV zt9}m}_ykPHdaC*t8<9yVLSpzvDMH$dG`)@d(ne&h6d`p%8j{vmv{r>WzM?fZcKlZx zk#$mp)CFlszQ=Elzp@coFGWaQkO9f}_RaC%Y&1@m8YG6Blp5rF`{wv-8;w(O#a=;T zgh?C;=;_4VGQ!0^RxqUuH%S-Q}xr`>XtY0i$ zkzBh>25Ri^rH#S*osC!;0=ZbTX@x_S8TfA((}$W&$%#t`Mx)ATzvAv zv3=>wdffiOM*ci0Ph$8=DNnu&`L&bFm#o^8d{bYmKibHj53znhdL$!~@2`7cer&Vj zMp&$n(LJ$bX>$FFbr?@>Y14Re|8Apr5wv;)iIFA2Zpn>eBa+kZ&2TuvQc!H%xMKDA zNgEe0U$=JSk`2q(u4{uL|oyX`UI zz#c^$3-(HSB)cRxq7b+m#pt}Ho-;QlPhPWe`RaA679AWvc;m8-jiLLKjUG#lQ9*ho zJ0)A`F>Q8>y55Ej8z45c>9Q*?rSSVM9HRH?S@O>|y6bW1pddYxc*0`)T)Y^z9{YG= z`9$MT#AETsGT!BcSgkRUyhKFKr$FWo~+)cOn7@>TJP#@G}EoR6i|-P-`SkRUyh zK1oZY*?z$x_2zHM<*UXf8lMzO0ghN&iJT6%K|y*XeUewfe7bxONrWK@i}j1wtZ5vC zbF68cIJJO_VQHm!7Tg8}>5=qFUWNDgD_Sd#uU#|VFg)d0Qzv9c0T;v4N^uHqAwf0{ z<9rp~BKGuvvhLRUm1~!*Xsmv47H~e6Rw8M*h2&!#PeE+!l2_r;zNf~?)_eW>$(8X& z6R53#6S1_?I2&#u+!_Xi)FmyA-BZLajj=`>$W_3JSXyb&1_|M2P=mBapyspuY^?K^ zdJV_=wTsstOs9H&br-DTT4}H<98Ybqam;Be30!ZTI>&m-UO&F}wD=-{nP}=FTERM| zl?Y!wLh=QqahU17iu~c<+SEMS033*VfUltr;5@7X?f>t^*nfRk-$1+nHCU@XZgtaL zZuLJrZuRb8;M+ddmw)b3kJsGlxAt+XtN!R#zx@Zdy3yrUfAbxeddEjys(G7Bef=4i zy7EDn`U`ybzYVLo)}?+L-~La=T7%txPtv9Ci}lN6s9V4)us&3}>C0vBlsIp#Yc5V^ z?i2UN_$glqxA7^CA*W*ezeV-2MdUCd=BGuN(<6mBvrsr>epZCrwgJlI+alaEGb6%- zTR$(tz37@4)@QyX!tG;U#=b1E9cVYcBEq9nrV{SkHmrn$J4TgoD7%jm_GR}~!lUN? z*oQADn86eXX5}DmyLn>ri^6l)?D!yxf=&!y6yEyqAow`|@pgZ{KKcoEv~9g!cxDG@ zVKBNTZx)fDu~|gI+inFW??5Y(nLB~$yG3LqagT@$Pu?dY?wxrNaTyPYNWgedM0Ddr z*xLG#h%6X;SVY>*M@7WH<1t*IP!N%>!c!vBCZ561oq%`jS-2LS!v)M2@N@D-5$P;^ z9J=PqA`+Vc`gfK@MBVxtwzho|l3QQLano;zh?aO04l}@lt#65l6E`Em=?Wv9iYmfc zoFW~F`iKKj9~m8c8&^iuNBR);kuHQj;z!g+bVPk5hNzFk5cTl=S8&F(sYC`5^^p!l zeI$aYj~Iyhh$FGT5(y*fBW^@}#NQb8jZx=9TsFjYH)GOZOm;9PLySq4F{v^pM;VhN zj7b+`vW+q6XH5DSlLli_nM6!_8Iu9VWCvrilQHRJOokYfI%6`xm~=BH+ZmHl#-zcR z9AZok>_ki|jLAO6nM_WlWlkNs}?@WlXA!$pOY>m@(PGm<%u`RmNn9G3jDV2AX4XE}3@DIi%`| znMt#8uXQl?b~o;|25Z9Jfx=o2+0*0esSne{v^|KO-oDu(d9Y)2CsMyPZV=tInVXS? zx96A_w}^0uafb*G?YvWj12cDvaIA0-GVZqf;IQ?6|?*J&V(JJcqnJ`2q@u=@&)VyYu5B94&l8guBMJVQcyo>`Q!7 zgk87^;VyKQ4m%5gidYW^#>$Y~iK3$)nK>NWjuJxIjuOJV1BFA|P81Gm0fj@yjsui% zdjW-m(GVpKC6qgRp77l4bNH=TvPLY`wq78*J!2P%Zgc7q(LFRajTSyzFBjd;9aoBO zZO1jDyB+D;edFxtO8rRIhK^)ybRk(Aek5zdg=B5GkgN^o)IGv*Oy4IA70KFAkgSb% zBx@sxWNmaHSsQIg)S+3k*p2ZULaCHBc#YI z9z(cC;pmPJAoXoSLKe73;b9a#;UN?~Vcp2{Nrlv`V9?gE7xyUa$2|&GjfuM! zX3K=|C^L<3?yli@zdHAfj5fP?=3M%wQo{WRUIT9QPb*kNUv>=wF}6f_pYq4t6aJY0 zS^p!r+LL~aPexzh7^k^PjJ9o^6r<6Z^}_F8hV!SHP2tu#eF29uQ{iQdE?gI4(G)e1 zL*2}w#?*P%A&<;vZMp|=V$_d=qN9@-&R0b?j=HlL&R3hkaK8F>4CmXo^Ln(^L=hKt zpmd9NBjZMUQM%y}jO5#c(kYniz+D7qE3`)(IASmXaL0-gg%Mma1*10D9NIIxQS5>C0W#mk}TSRk}TST zk}Nue{1kPfB#RF3*jI^~)B6J`$)Zu*l&CTr^^B9I0K1SW-0d=k5PT0J#n2E3M$gVo zC^ZlVM!z|YVq*GolqB1(6h`N^Ymna&2ZnDOO0aI^4x=e$$W*g?g4tU-+WlymvUcAs z)7tL4W$N2~w@i<_@BaT&+q+F|jJw@ZOv@y=$D?Js+@p(3tb25kDR_@AGFk80g=u|{ zE;0k`(dB=d_P4c|y)gao%&r*=IhtMm!Q_Lr2Z|4*9#9@A-JiZccz-#c$;a}Qt+}o7 zt=0ST_a*PM#RtJ}l6TeaEZ&*Avvzy&_SEg= z+lpIKTa+!Fm9UgGZkfI*c2niX+>P-Yt2azvAG^MCUGBR0b=ALc=E3Tv`Ad_R)-EYt zlDb5>r1bvu`-ATm6f@b@s-sT`IAhHw3pk%tb*yK!KLLTnI*9$ zm5JO$e4;v@A5V_g78e(%7AuQO$#gQ9EGIIFSfX-#?)doe)#LKVC6B8eTRgUOO!4T{ zQ9F;=didC3h5wbg0`oEPzcN2yMK60R?PbrTrf4O1+8uP4T^U!*RcXt$#oMZT9Q`i? z3;&Rt|MBt9fb^HG)Cv5&1_F9ySCJHzxm#}`R+BmkdMofq{F?@$(;fVU@+cl>r zZKTvfsn1nAzgQdngv?B(Mx4LYX2tku7LBArjDG9dZY*B+Lg5 z6TcEd15d;%gtjmDs~(J)Wvcj%2@4ituV$Ew#QJ5bSf)4?F_X(Gik21s?M^~x=2qon zN@!tr3avj>F`i5RTul6Nq06la*HX>j*5(rCU0)QYhWB4p)6B*2S0a(+I91NXL5 zLbMJ0ppr<$pe(l2r%n@5Aq+DCC$&Q)=#EA0N?5vGR9En4PQjRTEY4B8wwL z4l53D31KF18I8d<5Hm13ompoBF$<62fP{&gZ7T4TA`Tf+#ulpdGL9X`uqh&|VUC(? z!HNEqirBIldvN)zP~ag1f{DSDVN^~0PT-GxN8!)ugn7J}8GK$Fz>VDTz|Elp#P|RG zZp846k~2GhXDF_8mSpZVf>I!nbz;9kzrf$0S;XjAArd*~iiF6HiQLFY0w)OE;xw463pv!%aq)F8=Pcbm%mUQ>lHi7 zYUn}n4^v-7xw%6qW@kacXQ%(X6-TfW11`g36>N$m?($arzXPoX`5VZB3r%DKrw}H3 zfN^hD8*@7KqGJ;Na3Bag*QA5=8{B!YD5yHp*%bGh05b_vF)K{?69;Aa4+}E!t|e=2 z8N2}G5zZ7haD;-KypY>O0yilEO{Yl6>vF&8;7MD!i9pF*jBCrEJQ7)5WZ{tI9+Sut zxbkdX7Yw?!cQ$I3190e+hJ#`XoVNQ`X z`CFcl;I**AYnG@I%ObIGQMqdhPEKXZgtmE*K}-~0Jbd{H#=4nBzY0v4VrH?b{2)A| zBAuIf2FcSbMd5IIpqjuXm|RUNFodcsr>C+B6k}sN9-iVdgIg$uxVwJ7$YK-4Fg>wF zEDPe+i3#k%lbfYT&WVyL$3yC&!*K@EqygXKj5a1u=5>K=S(m{6guLRc0(Q_TtIU9K z;$mXW;sT9}Nr`1b=5>TcQJpfcGZkh{1+H>YkQ_E+D=`G0ma(x6&WJw+scoTHo^?)P zpJDGknp&&pBD@7ScVubD5@6*O3*W{Y-2+ou<+u zve`QfJU>izi&%_WzWaxSBPsUrm|4fxcb@8Y4h!|nx4!nDn+xI(@7(fd`0=pC3wM0V zh~j2$-RSweSiA&5Q#Ggh0adJY7T`0}&~zo?Oeo?(rAzNXGCoHMt5=t8QMn zux%_kwNQg&3?(%7Aq}iy^d^My#b=Q9Ma-w<9Lj{q-kNYGk?&@LF(vG|WpnmMaeyjT zhnH2}x$Ji3)()-kOP6-mt>eFyJ$<2e-WX2Q%OIWJTaNK=coP{Em1 z%^7ns+V-F+x@n3#h1RuM6$c3Qjxn(~fmh+IAE^LOA!jg#xLbzT97P~K!IMeeBS&_F zX=D>w1l{*63exBSTh%d6W{q$ZaWPX-rf^upVq%+T&R-IZJD5b97v?;~3gTstXEz

    QHAf$mtU)9}q{o5)%oJB^E8_r!0tu{O|qUk(ibeq&2m)7x#U((Y}eTre#-5HFcs0 z6s&_tv8CQlwopQNQhx26Smn`8R!)`=oiunub_awVKY7+{bAA$^keB2Aqr!Udd( zrIpAva2v$XW)vZPlJ;%<8t3*NYZ_g?qkzj`X{E?UT!Vu2Nctr0+xRukvptsFmlB;s z_D_)l|F>4W5pE$tdL(_4@39|aw1D%mvbwS-6D+>5(>lE8s*dtu$_hTL`t&)F5@q zciEA#o=5r%I1x)LjSs+WP>>!;pQL@RY@CXIY;j|*94O#oSXwFG0k;rq_n=66C9Pa( z;&;n!4r(QFC!9mD6)8b_C9OPZ;&;lJwUW3C&LKG?dgHw4 z@2xX=%tqsGsX=-K*)I8BI+G9CD11;VkRCyLCErtL@?jf^d!z(u&FAhF+-Cda^IE>Z zte;%62nWrU^CJcRXq}?&g)?ZEJ}|8{)iXJ)4Xc_@lMNeQ*m2(j%!$ zUV>1ZBi}1|?yjZ&a5=qHT8dX#r_K?thMepJiffxkPT0R-9n?yN-;zS|i;_puFKMaJL}*&(R4{W% zqv3Ht!8)#$%42X23DP6!m$X!_u}+=ioC<~`Ka~6HY5u^1bxl9tNuDZ#ogzxs2Vdi$j=HHP)mm$=mRSbvQ6{#WR3)q(W^ zuUkC`zVP80)MoA$UO_UkRYuY3jK21QrT<4vb3>aIkbQaU}+VW=in9+q%|F(Pi|W((>$?p znY%@kOB>6T!wS|>twf%Ob4ZXLNuQ)8a;|mi9OpzP#t-4{dVC#Tu#RaZ@&cSgg7ioR zBrTEMixu`p*W?3c)w-s^s*bRc`IwX;t(g=9awf%hBhzHj9BCu-qLd-6c@qP2-o$q! z(=kNlRwW2|zyln_s7zxHiEA~DkMmcq))Pypj8>Q+rVb z`Xuc|4sFb>$J>a!E=5Rdl0~1KWYJ#akjC7aun~DfijW>TouW_DUZg3nCT&FClp>@@ zkUmL!k*1uw*hb_nDMES#>65e4Vg~Y_fnx;I{)Jc0u!8)l`k^MHDLxS{3>XO!gkMbdAoo=yi$4yK$ zkHxsOU^%zan1ORhkRC~0($bK*0xr9jIgO?qb3(y7qLoG&&LP=U!6T_lS{gD_>=MAn zoJLcISyr$PYNhdcIEMu3k<=wEjf1UI=QyX)lwXz?tV3F9d;!iOL3$*0NlRmqb?O}F zG@7!@i3RJBRvKS~a|m5>s6kruZ(17i-O@VU;+#fPZaJx7Ik(dI5}ZSV^hjFsZ(17i z)zUiM;+#fPW?50NoLgyp70!clwoQ+uPm5=qGa%A7bT2`z~HfNSqHWJ^E5~N3vUP($Ex)+J2yt3Lx;+s-}^vD@L zy^@qTWG@m;S!L2j;#*RJ^vL-=y^@qTcrOx7IVEKy@mErU^vKCQy^@qzv=@n{jIzc? z;@eV!^vJ0_y^@rO??s|1pRBc!*e)eVkDS-jD@lp5y+|ONOzkrE*V#z?4K6+?=kxSP z`Xw(wRoy1}?G(;)i>$cl5GPD7U%h6m@lEXD@4e5hUUQsF?Z8?()}^k(`paX`Zy)O@ z)>rp;tE*xE{}SW>-Hvq_>)WvXPsjSlWiIstU2Zjo@&7)9vHwoN`Wx8)_h4O!^$W25 z*F@av4%q$IU5Rl3vA%c(Y<;Z%gns|mW9>K_^#mCA|CpFt{d?H`nJLr>V5R+k*2lA( zzT}+}*Ph~<3ySesG)Vij{M~`>iA%C|rwD#{qC_XrMRXHAL@&`t^b-TbAYl?QVu%=plNEKBAu(AO;DOh!I1?Ffl@m5(@|=3#h;@e>%9wNwg6z!cAy| zhiE6fgiiPfKM^1dB1nXYFwsFoh$zuXbP?S|57A5X5&ws|I{|OvJokqG%*c}Fu@-A& z*|NMzb7Xl({+a!(J)8%wI zjk=xFHf>OsG~J`q{haok_x?Y!jmKCFz52cH_366ihb&|LH6zVPn)_KAKqH8P7|=iy zG4wc_aZ3wm1#N)sB_tpN2Pgwh-~w)-01nE52Y7)G_(25-02Ks5B?y5kPz}PM21GzD zs3V3RXFYCd0F59DVn72;pc$}!LIN^yfHL3&F5m_V;Gi6MfEW0HA5?$f)JOli&1W^zJ8fXH|parx7={-UQ4p0W1zy;hu z0UVSA5AYI0kJE=+{Gb8^fC_@35`;h%s0LwB10tXn)PZ`?02)CQ#DE6aQ9=STaDX!4 z1TNqP3gDoe7>7Je>3|6BQiioXft>W^!1H3I5D1Bd|) zGy&-o!U4*F6Sx5f<-h~Hzz6)Gmi|`xSv~xDBm6}a_a@Wtl;64F?-lsRCekfcG}Av^ z3M`=i0vw3>^6RJtzE}3pcodf}g+OhhGiCZ-ij38h$HG(h-}kezz7^>v8pa4Y(S` z)eoe@08$6EMj@B2$>P=Z}P z`iEY+)C_)i09UJUH5G<8Mc|$~cxwZ^y$RmKJ|XwY@V+v*&kgr;_^<~)>VuD0z$XJF z58~>95PUiUUr^aHrhGm~@=6c_b-3~C4e%R0MtZn~zw}e!t<0N=H>Ec-Z^Yk_-Y{P`UeCXldQE>V|7!YG?6rX)JHN8#~&^{lzzx~sIWi1U*Dg9F#VwZVE%#B z1KI=GeTjY2zKrN|Z{8QbPr5IYPNdazc5ia8wl{Zg>R$cc{5|P=jC%@qn|H_W&fk@y z9{1ThlXt3jX6}gJA>EO=J#o8wd-k^EZQ5;8*`~-N=;?^l6_iV?uOJ2`VIN()7Kl<7p^m}i(e;Qm$^1^t$J;CcXGG3 zJ9ka$8vUC5)#hccgb1I||#)?Z)=P zHglV?EuTy!wPbc{Vym>(yu!F5e|hS1?egqp3F@J5UTR#Lza({uPW|(f7poU%w#2D- ze)=N)qWtFcW@B?rMe+_Ka% zeOZ2Kda1Fru*6&vUm`8ZoRv6BJu7==@=T3-@3Y03MTte~qU^%tLTzDgL27}%Am5el zGP(+#W@o%p>dbT`I@FHr{N#LXe$Gf4x{;rko@dM}%r)o6=k}eUpOK%Fo@2}@%rDg10r)sC>PGP5H zrX{AS)3Q^OQ?;o%Jw>xj=iAfmMtfn3IVC-Q%r+z&w1!-Ls$Q?p*QM)>xRAIzV;6kFjw~Dhtj3k@6zw04054gcoL^d^x>yUP8lA#s-NzSE~QQ>evf_^ zWsnQ~!jp)cIy}-cI`Zm%x;MI%iu{0n7iEwOy~1K8;{yEQ@QXM%8^i=m!y6vy(}%C) zn*QQnlnVS2{W{1X7y5*y0*4B7)~Pht+Jt;4LLg_*C$tZ-%;a~rO~_HY;~<0dk(Bfa z?L#c*XV2-Uzobj4&6TI$1sUW*pU^(Ua)$QYe)@a5lnVJV{VvEL7y5+uA(nHr=k?Ry z)1_3%Pw00+2D#8Dv=6bIr9Ho&{+=$SLVilW3o^)sKB0Yx+dQh~pu zUk4fFLaz{km>qq@WvEJH-7hcbFaEz$8NZ@m2N~o-udtX=y23c$vRiJj$@sO%fSf_E zu$WQ0!Z_cuS6*n7@f(o=IfGtdF{5;a(KnVd z?D??llbiaB|EW~Q@95V-2D#8HEM}ChFwVE^lACQZJ`ov^Gw2l-GfGz&=Uev3i)=Cq zA_H;;y~1KfJN<0A9NSiw9db*5@qd-tR)3&hN2xn4GN4arUtzTDk(OS17x&ZM(4|!3 zpXhf%2D#89#KiA2Sd4D9Ttu7TGPc6HLtfHf{7i3rFU^av4gf+FU8%g%U( zO~ikT2*?@q2oZ6DBBpg;+-ei?HxU6jgB~FwPEf?O?utp9h`);n$Qkqq5pjYd=6uVZ zxXmU4{ima%qc#_Mg~j*Z1Vvgd18|p?!$uKzXH2NSO$M90TQ02(%BeJU=^aLfmwhQ93J$5a<=+ zXuOTOoQ}8*JU{f&#q#_Z!#}!QWfMpz-s$;)T<8;)3M@W92(&yuyKF+rMF`{!`h@l& zmgnbcn-Gr(ft*2~&_0BopT40+0N2=r`00+L4054QX#Y-j>ovHWTICAIy(m6j@M|DU0@|4V84 z1-1L%LyJbsJ2da#T3Y@{bN}5Oa?4Tb2k>cX`@fQwPpI~PCoOHXWNG~Wb7}b%wf*1K z?v|aj(BMq$vcNmv`I2Wn+rDO4{lEPk7BxS^aPc4g4AqCU3i`(p04fNAN)Q57pc;fh z4TykRPzUNk184+M5Ca-$0?nWWw1PIkJ|QF^0|zJrPT&G=f*zrQ>l~B=5AXsX@Pi5v z04fNAN)Q57pc;fh4TykRPzUNk184+M5Ca-$0?nWWw1PIk7;0>qME^Ks-~eU730%Mp z6u?0_@BlCH0Y9h!0ic2)s01NU1*$<9)PM-61$CevG=N4B1u=pip@!>Cpc%9Pshz+e z)eZ+J15V%qZlC}Rq3^(q1P%}I0w3^$3J?G)2!cw0_9YIqD{-J*i39CQ9B5bKK)VtL z+LbuauEc?MCG-f zlEi@)Bo4G7ai9f>11(4#F`$7a&`i)HWc_qq0y1!bGT;O*;06ldpd5IB7x;i5RDb|b zK@e1e5U2vxAPj0i1k{2$P!AeFBZw082xGXefhN!lT0kpchY1PDzyZ*D#Nh;JJ>o#? z5eHh2IM8~;fz~4qv>tJw^@szlM;vH9;y~*W2U?Ff(0asyRwE9y8gZc2hy$%g9B4J- zK&uf4T8%i+YJ?sk+Ko8SZp49hBM!71aiHCZ1MNl}F`$7a&8UZ9FzkO@B$z3g9;D;DhLwv2rF?t1gbza2!k3B0kxnG)Pn}l2%;bc&{o8O zwjvI+6>*@ghy!g!9B3=zKwA+9+KM>P_TNzsJOG^l96sO&6(9gq5G3#jaXkd8Ks5*h zOikj5fLc%o>Oli&1n6<#hye{qF#_`dI2@o1IDreefdZ=bE}-P5YWj!vb)p7DKrN^P z^?>&;q{j`aKpoJ4e3(#xAA~?Hhym$6!VP?&5=1~0v;x;r!V7|+1~h^e;6A*F{uWe% z2#A7K;Chenf*_~?ji3cM-zPjk1!2$tnnBqoL^%k6YETcFfE-(lZAAD%2-JcYkX8_G zP`~0#`U~J#PjFBHsz4pkfV`DZfFFcFErH7k^HAF7s^SS(U2!$!D}@a!;q8)~TMKe#&^NaKJneKOj*>KVhn7wm;dg zQB6Pfr2b_7iS!f36NSgk$K#Jnk7piBJf=RD6?OgGBdJI9NAeG+A2z76Z$1=%NO~x< zKe1okpB)%cfBge0)%KJ7w0*hzQ}^rl=kH73XWUmvo9TF3N@w;a_Nsfc_a^Vv?#xbC+fSynRIV@8 zr}yP=NZ(-GP`KW_K7PG)edfBvb?SB5Ym?V%*XDMocI&(I*QBp8t|?sI_fL+*zy1pK zitOb{s`BS9OI@a4mcKMjb^gL7<|Xk;=gSvkI45b@6r5y3F~B^VRdS=Oxe6&dZ&fI#)k8 ze@^vCuW3Gv>k=A5ZCswPgv#XM;v{kv4sg?T5d~dqf=q>b^ zJ@Fo?C)1tiR=czDWSsqj_5P8g^&ef3USKRJbeUc8E~zWindnqIvmMC}ts^%-HD8~f zH`0b-6y}-p;`5|=nYoF%>fG!Z$uqPwa&uC1^f~X%PR`b5=Vqm5>9g{ur%yLdFU&M& z#%D@1Gp8j^Q%}pzNY2n^(le6rcX6aEu3Nw8`r;oYJ93RHKQkVRnN93+qL%G zl++Y`N`7*BvN5?Z$($6QBu&apOiWZKW+x;kXcKbdQ{(mV`EluS#<;@RzOnk){Fw9@ zV@#pVY>T%^ZJE|YtJ<1vNw#P$x#m=}-kfhrHyKR@&D7$Wq-A1>m>SDQlTj_2Yh3?N z)c&QaOlV%HP-#}iE2YXzFcDOPSv9F@YA%op=z)Aiy27X^_)UM@FZnaRgirNly-Ba; z&3RHD-IFg*m&eL;JjHdMSJH~16x^me?v~scSHh*bvd*MabLPrYWqMiOk#-o4f^5oh zS&}nSLQCC|VI=p0E< zjEK*L9^qD&IMFFt>uIHHZ6Z_=0Xc&nAtFw2O4hKPRJzV4A}Astr}23a0TFS6Q?iET zl;8C>5mj`D^)wwFBA{1@iPSf+ZN+VT%z;yWU0s&ZMD&i~&&&-rfizq%Ju{FCeL@6c z{?HMZfj;bAT_dIs?XwBNgpol8xzH!H53$T2nz9M05h0K>=o2Dj8{0BsMFwZB?ds~b zj{kR~O-Mw9Ku+_+Ap{}>!}N@}3~jEZ)}e-OvI(gbA&@iZ6&5$w#t|8V{VwS_>C*AL zFzEaH&HebdbWN;IWI)cKS6JLyr8By_L=|u#V^2R4N@q0E{nj(cglckftLceZo?KIALDN zy1I<+;R7666K}IgY^IbTgIwqno+!~J5-p|w+igNxL3qGNJh~+)*UYn4~boWsPxzHyp4sy1gjkpYUG45E}bJnoNc~jemzsc>j zNo*IZ1v!I$Ardif`iRTGFjFf!7BB0aF$2FGINYWCi~qA!byF89kTd8Po+qYQGPUw9S0 zZSSCcX2fNnck}AbUh7EOQ!Qg=JZuv=o5F$&a-mm<$SrKsh{VCqJgYkwTZW!`#3o~o z$bg(dudtX=>N5{zSVpva)F$H$kpVe_ULi8JQVW+67x4k!$yRr+m?m1(4IF45v&on% zG9YKrD@4Wy`lvJFGL+HLbqanpknwnb@&A=Nn9UOzkYm0l`mO_!QF=tp)ty~p6$c`o zu!%541mp~Qg~d%(s?i*6D$8E^q)oXyGjM|!1p-)`j$}o9CscpBSr(3tYw>)bT5~n+kG025p zAqGnwEd(Q&RWcebb+9vtK7DNauBn#ZAkWz(c2icAK`!(OOC=UJBoc>zNwX$CZ97^b1Qx7T-)nq-8(0L}qLvH;72c8T1QJBGR%WTbjrov5DM7 zF);>do*dFEEEQQiJYp>ejvU49Y79T>ziN}XnNp$*a-mOHDzSKYM51N0S`uHgNxVoT zLe8L1XrE}=s+Ri0>o$p7C?&=q7y5)JN-Vxy2U}{6vRU7-iM*J?q6~7OUsx*g*vr)@ zy(x@R z_>@iL6%-R?kR~f4{lZd_gC8m>(z0PKk)O7S+$tg=XV5P^iAc+awVcZSj7{Wr5eaD$ zAQ1^q;-mB65%x5EPO_ZLe%mJUN(u-v$b~*3KDAs<%ZSTBZDVoAvJQRt8~QsoAv;9~ zjMdf`%i+VF44pS20u zMRz%wK`!(O?L(#x|Bn2gO~}=B_dy1^&@04zW;&HlM_dNJztYI;md_% zGJ{8XvCCM7WBwPL$UcgpnTA9p#5AFdUdvaE`a&D{5WIY;ZWQ+!HvE#OIRGv{!!4K7 zxqxTsJivTfen@=)cF|Hv%PZ%&bho^emhYeHmUnD)$$na%zmV>emJc?#!wYB(ZtmNo=0>;d}cRZBlL& zDUfDK5-HF=Wxiz+i7(lt+$2&U&66Zj;7O!dir8PaNx7Nsa|(l8=o8u>R4hB=zuJWC z5h0K>=o8w9SoX%R*o53hcN}GqW?&-yLi@e3efZuu%~Iz1s!ik_6hqS`iAd-d*Nacl z@dufqy|H~@ZyY%J^EI24J4Fhl36n$$Jc$&`i~8#}DR+q!NRuXs6lkAfeNq3LP0HOO z1=74pA_bmAiseQ94V#pEL<*#-lSrSi_rGmhUW2R`)~ODwy~_iQpAr+bVt zNK+z_K4GcvO~q3S_;xsakmPBW)BoSMN$eMikOt2q{lb%Y*BSn`X`1D%`44O&4^T{y zK`!(Oi^YKBH)QeXMiqy4OU2;>n~;^i@r@sUl&5xU^*iC>}!TC19xnPP3Gfer}Wa8l}*TKOzx& z#PzN8lDm+_j$5nZoaQT5cFw@B23G3h{^I|;zxdCP8g*^K7!$9H2uSn&hzPh{d})pi z{qKP*eZ`2LrIu4bzvwUix>Up)A_CHEKV-RZyJ)=-8@T78fBIx5Q%q0S@KzYV>@WVl zRKlBduLgTdB;dM-L99eOiw)iNz?GquD1LAr{_7vo*#EmHyW|@B_jPIm&@ss^e@M0e zYv?p#{Zv3^8kE6WB>1>B}B`iwJ!NgT7E`j|8Jx3{*1o+KSurkPow4A)c1cY zEnZrlr~dz)wB$~4%a>CBe>W{AegB_D%Xet(|0`(uo9>qPqYVHpU!$@AH(~sLT4sM~ z^?P5X@Bg=*JN*0qAH_o-c%FaNUtEz=o9I)tL4pj@96}_`Aw+JWja0fAzqqGEx6CZ~ zYnzZyix5b22#FAAA7YtU@HaLgpAjLDGw2f*LykY%7vJP*O{{MzzqJW@TZBN)pigKY zVtG&bolVGR>5iie(&R)U1Qv?~qpwLNDtFee<(5kECpL+n6N!*B=ofAm9Sn{?gcVQN z_pDfIZA~`KG6q}0Ch}h>hGydtk&tHNAve&$9|P!&xD0-2>RmB^`1#-ew8{8_$bd8( zkH~;{3%j&rM)!gx^QR$xUAzu<9 zkTd8LA_QG0MqCC?$*)-0)!j4vz4DJXAz!9D?qHDS6%rw^_#!yI&028>q8CBevf*!* zf3gYrSGvoY4053=#6kbkQ9ixU7&m?8bkJY2U`6*rYtWxvZ2y25HJ4(kt8{+C(1z)Zi0Fko7KJFuYaAG)u+%uQq|-ppYPg zG&_$7ggfZ?uyd5kN%131@A6fa63~CyWV|mjAZO4g#1UxIC>h0i*e8Q&5akY*YpeZu03 zjDEa!(eZjg`~2aDfd8=x`L+mwoI$U!__QA%GW4{!4?hC@uT92xLw+Z|ih0x%?A`sHxza;wO>=@;}df;WStapKBzbQ9QyzM@s zy9_eOg+8Huh^18Hu?hLP2!WhIudvuBqvUCTj>VR#roA>9zoh$(GDw38lRn{Q+FqrP zYYRsn*X9p@etb5GzowKRgEagvNyGn=#Z4y;`^7C^bl@X2^_a3eJ%01VPtR}Y9)k?h z@V_Jt|4SA#O1 z|7rP`*&qM@YxMm;f8Me0|4m}#T*lTdUXI2R(=4s1RGY2zC$W_v4Z};S!cxyRKAls` zZxjP|ZrreA-KwsR-sRn6Ew!_tP2!&^rG-Hnm6xm*Zl_n+X0~p`)57}v%->hTdKNES zN2y)i-78m6_Gqz{HnD%9s73~9q+T*0EES7y2f@ME(E~#^f&Wb*Q3h$mTT&I4+E<6R ztZvz|mO4w7P2%4urG-Hn0GF&5mRiM8wyZw5Wi7GQHnD%Fs73~9P+T$~EEQ|nvZDuv zZ33ChSSy2ESR*Wco;?2O5nzG7TKWREw2K<#b{H#qEgRTURjRQGmMC%zgIriEEVZUV z7VN7Zcnz&s*()3LVxy2^6it<_+q_KL)u&~t19y?Bov z%4%kihU_7$gr#ziJ+*_mYer3Nvq_CmQY(Wr@(mdlmfFU}wJmPrm7U#PmaS|#BRR$< zw^rmr8VpC|!cuE{+*a;1dWR0nmfW#6xpg8J(f~Ok7oK#kSm}Y+vL$z%O>QHlG&4wp z=8#pwQrmg>Yq{6@TDF|U8gG*trKDB{xv)l9YHg3b2@Sladb^EfJ%cYROYj7n;21?V zGsuNi!cxJ=_%%F)6I_S;T@>13< z4OA!D#I{gWD}ywy4p}WMwX!%o7C%`b*623q`_JIoT5~7cY{}Jaa>r6uj6oWphg5~7a`7cBBsOw!eFrzM zKJGWv2jI$k+_JRHE#LOITMpdqmLI;>EjM54mS23-EuV6UTYmcvx7U;H4ICvG+|s~n%)++U|eFQ6$2A1Z5WwY8H1sT zm9ZF`SQ&@GiIwpfomiQG;fa-r7@t^~gaL|`$rzznnSvpTm3E9#tmqh|Sec4Zij`>? zrdT-z;}k2WVxVGWIz}p1W?-mdP$3|*`k7`s@RkHL$T4vb!`bYk#gr3<4MD+@4uv9b{37b}Y}fU&X|BN!`Z zVhCg9ER12SEWseg%2JGCtSrMY#>#SxW2~&eK*mZOBN;2*7|K}b!C1yhF9tJKR$??` zWfg`qR%jMRat#JFR@P!fW94iNX{?-sF^!dTF{tt2YMh6`jg|8;y0Nkj!y7B>F}|^q zzyQa}1sLI2*?=LAl?yS#v9b|E94nhJ#<8*)gB&XtVU%NK3x+vXF2*>=$|V@+Sh*A< z9V?e%sAJ`FjCHJBfx(WItr+cCNn*HTWgEsjR<>inV`T?MJXWs6kjKhSjCrhFg+Y&% zT^RLPxf;VBE7xG$V`Vpo*Orrmt8twNH(l?AH~3(mAEqkcjRAO*3U3a=J(cj55WKYt z-c}8755qfZ;GGe8S1r7|4&GA_?`?p48(}&M?~B3vHMp+{KF|ywY=Qe*;X`fkVYY&N zM1qgX@G%EDxEha_;ie~?@JSc!cSBQw2RMAH96s%V&v@apKKPs;K3@S}2*4Lr_)-wQ zTnP_`;44+|P&GUphM5|8Bm!Tpg|F4Y*X!XM4e-rI_*N8tDh5BT!Ot|ox0}hq)p(}` zH@({mKg-sW?@2H#!_PV3=gZ)~IN=vu@QZHvB?W$&!+$M@U-7`Ndg0f6@aul~Zx!$x z0r879sEH({GfpxT#X+#;-()(;fFDJ zRD<~@_~T~ylNR{XR`@fikNil6KX<^7%iu4Z@Ru(5D>wYL0)NBdZ_DBDJn$1QEcoDm z`r+>@;2#3;k1G6A5dOIm{v`zeS_S{B8vb_}{;h@_T#dg+aMSpCL3cA$*j|!Luv~^72lSRfpA-6Bu)+-k3RF1^mcvR940&Od4_5nO zxB}J$U_^zrL0DG_>qF$gdK_q|!cC3UFdBxj8mL8JQ!Q++gDv&2wE?y@!ZA@eHU`JB zesa77C&+N315PS~lbvvi3%0wVuE41rPAi9}c;KmCINb+l_~B_4aAp9WuEJSCIJ=S@ zT#Y#)+;m12oLdd&g`rUc=SN^iE$pm=UG;E5164vKmxSGQ?<#4SBp6!L__~5yIa&R@ytH4d?2jDstt`EXQ zCA=U6H&nq3tKr5l+*AWMN8m-Za7!J$xE@~8055HXmqp>_F?fXrw>H6KGu+k!x3|I_ zZSYF=KDkqZSIKaf172MQuW`cNE_kh*99)g-6x?(@hc}eNJ`YTJ;f+3clONt(0rv#p zEh@Y<2yd%|w};>zRq)Pgcvl$ST?6llzsmvPe*4)|ml>~})b1rNC4Qwn^V!)MCjvmW@I7e4QUFZkh$ z74W41d|8DDgYcC~cqjx9SHVm*JQ9Yl*1*>y@by~wMjd>!9=_E8Kh+379fhBX!M8PX za5dg(!cFfs!_T(B_gZ0AV(-!$hYUaOfd5hkzu<&lbipsV;g=QouN;1*9DdaUzvhKs z_rZVj!*5i;_X9Ae!fyuQw<_VcL-0FQ@VnLU-^1`fYT)-G@cXs!2X*j+dU9|ze%OGU ze$)s*jKZTanAhNso8V8H;ZIxO&syO}ZSdz(fc#j7zi_}`mcd^+;jdlrH*WY_1^$l1 zPs(Az1OL+tfA52T@WVe=z&{1xpH=vmApC13{I3xF?<)AWYI1Nj{vO6n|5F41H$u9f zVzu}|s)KSpbTq)SM(B(}R}8u}sEE(}PbqH2$yonq=Y2N+Zt7j_-RwJwccgdBxAnJk zpGkhE|I@~&^Pft6O8Zpyt;Ac>Tjra_oB20VZ)k61XinmqZthnhonR8ujCFU52^<zZ4>;;l(_8a|qn!7-IGW$g03F!&*apUp) zW2wh9nztbFsPw4$h(WU!q#o8D&OVf&ISb7F#{T?+sRy+OS3FSIm)@t-Yz4{t)%!E| z#c8gBbXrg6_9khjg3P_~dkgoZX`X@{%~PP>ow+N1SAk|J(C^IMk-S5_BXj%F+fuh_ zw`Ffl+$!B_-eTO6-;>&-?aAJpxLLZ{yvevJe`D%Kjb7<^_ZDm`{D~v1hm#1h3g6w69%cRRpntvdFN$L{qk}SK~X|uV>*p%Ox+Nf>JUYNLW?*@HCj^-RtFUTa~i2}_yps&xZORiIC zzJd7ph4a$q=``Cw@?7=Y%sKIM3TLNju7TXz9SD|uG`nZ}v< z#i_;G;_RZtB59Gi&{&vXkXoQE$aW>Vq%O15=*)MdXg-1L{KR}|zG)aneqL&xHZMza z2}pC>X&!;(9Cc1+c6@eWR+?rJ$eo@%T|GTRa|jepOP{8nmZKR2)ESxS@#zJcKR`b< zcS`aU^_0xC__V^*^wjrg<^V}I+l}@-%^RRi$xcp8mL{8%j7j;4sfilR8IYJDO)$qB zG-E(&oHi~yHZfKjYtnoH`L*0!Rx(2{P^X{LZ=v)Y_#iqkv+X-(I1v1Ck*WuozD zp)uX4H|83W4QfNCK3-p_OV{ajx!Po{TAPU+tx45rHQ8_?EQQT#qdH%es?w^mp+rau znUzLmK9~w>!K|84CDjZVG$%l+LaWI76Eq`$=`(y=y{b3kiF*n(7l2N40VKJ~GfJFh z0!X`ccg~fhc>prbxU*1}rda@Tj-*3%WM~e6f|QnYDM!0_a>cLIf1~>U_;ttX|JuAi ziJgC-jn7n5{KQH%^%_T~LB=ph!wHiSVX5MW%2X<14l8TTx1I&EREnqBM31Mq@eFcd zy|C2T7?kv)qm}gL51k9Lq@QAwK7n%E805klVX1VSPOTH^mX#koC1goH)h2l&WsYHx z3nRjl*yQcvG@rGIs$1%}(`}+BQRsLExv*YXYNbnUa_VR>xZ;-d88+#YDYuP58daLC z5td3HvB?Kle$?dCY?7x?+8748Fd{tZO+MmPZYkl;w25w~(D4k?z}95Fu+&PI+~mhz z<(Bl*ZPIm0Y-5lHye4aerP4>;z|my25Ji$Lqny7lp5tBFvv^%k zFN%Ja_C%Iy?rfXfQz@&3K^jV$tP+-5<6_+awfbY(gRd}4>>Qie=^_@=*wP{v{?oB% z*u>7HkTDE$VMJJJD;E#nSkvVLg?j6Twp4WI+C-mDp=}J(2-IYau+$nKdudtX2e-8) zd7e%3ERhU3gEhkcFOm(LT_hMp!PLUeQ9G0O3yxT$G?^AfLYOMSP?CVD=_jc1TXq$cZyrB?XZA$zsa z+p(yVs&V*?Kn;(E-X$&R3vALmD6x$}8mpSD5td3nwqIFResGgpk{8+}FQBvr25Bs4 zvP!s)`W0brqY;-r96Br5z&iG<>sfqu*R<2{p9Vg8F0x5mEY=Ou2+d?jSnO_ge9KR~ zto)3+o2^@6EbJ0t!+Xyxwh23v0%{rLLcb7mv|lz#7ZCK$C}-UU^=<2H-_^Nb*jk-w z6Lgjcf}Ft$;VwElAZo;=&&}L@9=2xGq_b?2mWU)sgHMw*_%ykZMrhbbMe-3B(W05N zuBl>;W(;4WB{n%r>0ZMOa$!)2989Y<;zFCPoYtso>fp09yu0R7o1|rwQO_V3288IW znV@&l5tlwR9i`FAml!>Z#7ec#STKCGmf3`LQ%oI$G~_f{BiuxN=+Q@T#HA0rnaUQd z?CDy!v}@_|?zP3&JO10i%YC^`-b%`7XOIgkg{AU5%+se8^E%F=Zi($|_qa{|YLO2)gO$RQ&7V42 zKE8FmGr0Y`ZSvQMd`N>~i+p&p`O}We|HZp*d5d3>f8kT)EwudAOZEH@TyoRPH2(jc zE_uaEG}iwk)F0sc)X)EyF8RI}XdJ&^P&A zi>`FbxgBnK?aeg4z*BBH@e}H2aD>JMIN+9ln|I6GGj92>{nUQoDAoTDyXB2{7=QT& z)&HkmQ2hQcUbS1_Ws@!_*8frI?&=e_vini+=BRgbl)E{q-5kYkj#@WIshgwH%~9y) z5^Y#60|zJrPT&G=pa2fafd_bj5BNa^2mloXK_v)*Dni*;jjLf|@PY2D!7UL`3+g~U zXaJ2M3SvM5QjCy+1C#+LZ~-?^00-s31H8Zo{Gb8^fC_@35`;h%s3wLUXBfBCfC#7s zb)X(JfJP7nF`$7a&S2MwSRL_rK_pb0dC7SIZ$K0*c#P(}K|| zVvbrdN2!>jQp`~(=BN{Ml!-a2#2iIpjv6sXZJ47p%uyNUC=7Gdg*nQ?993bCqA*8I zn4=`jMMe057+oFQpbxNqx?KV?aDX!41TNqP3gDm|cz_r9fFD$V08l{?RDuww0@WZ4 zYCr_kf;vzS8bBk65<`zOhFdhy1e!q$Xa&+?LIw^{2AseJ+yKR1j#@8Ash6YD%Teg% zsPl4^c{$3v9MxTp;x0#Rm!q`HQQ74v>~hp~Im)^mRb7svE=Nsw=y9U7%Td|oDC~07 zbveqqJO(t-1e!q$Xa#M6y-!F$1`bdLoWKR#0QFmr@-0X8mZNyfQM=_R-EvfJISRKN zbz6?IEl1Usqi8$yI8nRhDBW^YZaE6K9CcfcvMoo|mZNCPQM2VJ*>Y5DISRHs1~kwF znn4R_1?(sx0U0Oli&1W^zJ8fXH|parx7R9`uYuN<{kj?ybf<&~rG%29XaD7y|lPE=nximx2CSB}yv zN9C2H@XAqlkAEIqIhzjUP5`$ zhpT>20Rlh;K~M=opbAujFsK0$Pz&ma!3X+aJ#J|LjUWnQKw3e_zyZpD6S#mID1d`< z-~nFXBb5DqT&(~Bpn@Q%1R+obszDgkfC#7sb;RHU-CvJe8bBk6f*4@y2?@x+0m^_A zxPTiBeCXca|K^G}r8hHgB;HV|s-ApZdp-AB>NTC}>giYCJCZ!29m!=<8J+6t>BGk1 z!XfieoGR;?SK_ZouVfA;sJfngIr*~oa_*%R)z|Ycre8E(EWBV+gF12+ z3eTEUVV9oGJd=1veI`pacJ1lhQ^}{ar*a2U2lNAZGi@4Xq2KI}_e=emClgPqRBKN@ z(f@e-aq02QV~NL9sTdn+{9Wn0 z4641GcgF9O?#$egpz3?}_T=sTx5aOhZp%>pUA;AXOY#=&mK;^!^*#BU(>EJ87j80d zir*yNl({i+qe@lyWJ*ir`ci#5)#1}O7&jEIk6oX;E_I!LUH;niwZ^rD-6qxIrQMlp z64$8LWT_gjU7g#N+NJNxQ$60es<6}C8Q&>UMLuz*dS!M;a!3F6_;!gZ@`-Kgwrnz) z)Tkz(+Ny8OUy-J|eBpBQ^7!S_7UI>hsA9wF`3_QdFbQUy#1QxS)_QsY)*;GV2rT)%97b z)Av)AUOGQ>UgA9Uye!q}wR3alq|VXL$y24?IJ>acTpM32t<9`StWnowS0`6%t8=ST ztMpZQs@NMV3%#-4Tu-V;@5xie-smpG&3HU6QO!QFLS2zvo?Na`)jqXMUzT5*UTRR? z-dqx2A}z_Bl{ia1D|=@0%>Kp3;=&?xQJiY`nT3gk>cZ@TBvtQoU8yd;E8m%>`hB6p z?1*RZWwKR?^l9F*J+^RcEm4D5ZbEcfSGf%aDqpaXC9dU<5)&GR7%2_EXX`=o=qjk@w z_dWC2#)0<#nE!9E|394{vJ_`~%z^U&#eaqz9Pn|iI6neu8ZS~6mO4Lzz7aHSAkK&N ztn3~2?3ATW*=v)2wn&FGy_ZObCzn3zxhYHWZlz87IU*g>v|nUUSSlT-IAeq7=IAv4 zai@l8(_89Ut8C)W74eYf10ySirQ$8820It8I&HLkOMz##P5yb5c{YPwSS7@GY&aP@ z;v&xbuV72WbKlvuz*xDYcdYoKc%m}a7CZLSRLf7(27kg!X7GB)Sy+d0NEtYjy2j?= zuBQju&LF)VlU2e}n+s)%=Hj!}-P7B-xM%*7(KeXnTzwRJw3=h{4k3&lf#oWY>5)I%7y<5IC~`LfYo2bQDOc{cGIMLgsT28AaP-?L(I z*QoK9!`AsW@tZ_Eq>1RrN@1z^VaJWGt{!7m*J!J6Ic}}9$=@vUAx%q1s=`wF!`?DF zSC78-mZR2soAiq)v6(@dqK>Q*UUY(^R)j4&{-`CMis6T!giY=xl-154P2omX3rnr_ zu$_N!bjeYlc+2tU0-J|$DaAH0$c0tHjVD<3O4emr_4Zv0EVC$Wuu0rXS+xvuVMMr& zD)E=n=yM}3R4G$wS+{P<@{Y6C&0pNxv#x8+;-21N$M_3v@^(;Cgh4K>6c&r%#}_y8 z(yl=3yk$l&jj6J(y?vM7H7sqTP1={=#4>F55eBe$b}wZ@l_C`TP+tc+IuCVSHaMgv8Y+h}>!uIiK!nB7@X6iS!DKk(biXmWzlC zB69e|n$~qp+5~pcJx-)?p%DnZ!eZb>mNfd|Sm5w!HQOzpYPQ(~E};9F$RM>sBB_lB zSqwbk&OCfpvUd6)6B}w9u-ztdAq8j*dW3!k8b(hKTzNQQxy5FX^MO*Ew45ya@l{D%Qs7k>@2wDTdDTXQUBjd z<6GbP{a@!i>)GcME_&<(m-pUbHSxE_59n^+)i-cEdfjt$x~C!tfiCwPJ?^OpLZH7r z6+sB}wx=Qpfll@uee9|DL7;~{6+Z~{uczV%f!_60{22Ks{&xjUWnQ zKm$#n8MJ^_AoUS4aDX!41TNqP3gDm|cz_r9z)<^wp~o4(%_<0jN)Q57pc;fh4TykR zPzUNk184+M5Ca-$0?mN!B_tpN2Pgwh-~w(iO8bJL$NB%DodJ*GL9l*80y1!bGT;O* z;06ldpqvw;I*!8$9yrMdr-b3m2%J?1=QO~% zQD|tegSC@gGF&LHCvWw_v>)CdfDhEb$7|t}QTTL>q`j1A#?Q}7@6%NolmQpupd5IB z7x;i5Q~(tOK_#dH)gTONKm^o*de8tGK@`M*2ATjnN=QHk4p0W1zy;hu0UVSA5AXsX z@Pi8ApgUDwa>9ddct}A^09W4%!MAJS=K}P}1n=r2axCU1vpbj*E7|=iykUk+C zpbR*H8*oq#JirTlzz=HaZV}Hu10b71L-jN zBL_U{ggzx0zlfUCa=!rz5pp&I_a2L7=Y{@MHfQsyq-<)eS-rMr{{ zX$atI6|Sbj@TLgdQwMKtfVVfnd)O!BUK!q32KTw)ehwe@z(;-X@e254faF13JrIIV zN8k%8TSlV_1W8^ALZA*ee!T&HgU84ZyzoOm%vX@~p@|5B5U2)WPzxGB3^W6I9^nKE zCX3dY|4RB5 zkbcN`sIWi1 zU#A}T=?C=(^Hl%W9?0%X?34Co?vLLu-EUH_d+EMRI+0e>S?YJM?akerx>vt9Pd)FA zdkS}(cgLyzpSnxCD|=`1PL-|*}i0-)|aDR`1%d`>(kd8*B7ocuZv$NU6;8wL4EPFyOX=M z-MMR0)Ehs4b^2=K>cTFQ`r}KxGFK(8Qm@KVk9=)s?#k4a`jvU=lW*)OY&W+X+Y8&w zZN|2IGDR%_vRe~drIP*f^-FRWCofhn&TNTqDO{BPCu;xNy4?9}MD4%tAE^DCz46|@ zf1>uUotazA7H6p6zPc#8Fu71$n4_Ni`ht8{y36P)bef&!!OOw%u38sXJx4uzjk_VW@@HBGf(~a zjnfJ<%o*_+67}RyOjoC8PfebxQD1&WJ^2&U)M?qN$*J1ZoSxEkJ>QErTa(_@XXg)!!s_!wzSrY+H? zwq;wBty*iYB}IMv^UdjIqq)#zQty7LDWfGcRm)QUel3=ZvS_9;(Wo|NseixLkgHGC z>-Bl+;cwIxYR%estweqN6A?9%tw~Zp|6Di~*2DSgH1+f^RGC%rs=kmO%2%eTr+*=6 z2ID~~n4!M@s+tWX16m+Qz5Vryyg%(X`~{!si~A&B#+#r%|5;Dcqj_@WDeCqA&(;5b z{rQPM`KD(cduT)P`#Pg93%c@ zJwod4Mb{C6$x=pKhE`ZFTFzEaHRW=!C(f`sI^a%aJV#e_uhz8C8cP{RlhPxlg z*kzNkL}Wk@gB3z#Y(2pl;1$+0z*pOZEEOTp!(fHbKE!ec_!^s#Wg-N67_1Q5hgi-4 z@3skv(;ZJ_kPCf6gj_~V8Ae>hYYS(9m#+Lj?A>{M8}*$({?E+EmNeGw`?kh*0)YTl z4B>_-zG6sX%XSXVMC1S(LacBE%25kwDR;zO$`NtjL>z5*w@1`#x9xU|y1fq?b$jo& zjY_+{x8L{cE!ok>vG{nmzrTJDl*c?HOZL1pqnVLr=JWo{`r-juTri_YISF~KCUJ~L zY76LQ{p?OUZn(AV8#FdBIIdhD36EufDrWE^@CmYED?8JN;!tf%oV7Le+^ zNDqq>GndVAz6%+2fLy(hWslMvC7}sCi$ZJx-K>{I;ARn`N0nRgBD0Y`a2n9rUx*rzmd3nTK#TRTle~UntF7Gl)4y6!Px+;7Tf$1az6Ugc*U=bl0o|;hEf-kWARtg# zrXSRVT+boUEuf#(hbW8mhcqGY;}GZ;(9h~a3QIKofe>$2kE+hy)=AAHVj z`d_?BEv^1&{OI4^8^zn3OV0lv_=E_>KhCecb2rZa+gJV0Az+A4(CY&dRDeq008Zcn7N`Pl-~nFX1AY(y zK~N29KrN^PXf7hrTtuR|h(vP{iRK~_%|#@di%2vVk!UU=(Og7^fDMcgVFC#%KqYVh zCvX7^pqYq7GZEfL_-mYh9VLTMI;)ENHi3YXec7lP(-4kh(tpX ziH0H)4MijxibymRk!UC)L%;@|pbK<^1z;gS0}+V^A`%TmBpQfFG!T(!AR^H~M52L+ zL<13tjwt9AR^dLnqLAo{LZT}Q=>vX%CL$6|L?pVPkm!O!q6-R%E+{0rppfW-LZS-_ zi7qH4x}cC~8X{Xk8$cHn5?xTp5U@cf=mOnf0T3Gr1DHS(^a?9*zY;ir6S#l{s(>4K zfEW0HAE0rFMB@;N#vu}oLnIo9NHhwOXcQvRC`6)Bh(x0hiAEt3jY1?Eg-A3Ck!Tbm z(I`ZQfDJl97eTME8}}CgV~Q|=1QnnXIDiwlfCZ|68+d>hpjn9Y12hMbXbvLL97Liy zh(vP`iRK^@%|RrZgGe+7k!TJg(HumgIfz7a5Q*j>63s#A6{10i3;`Q-f-ZmtArcKj zBpQTBGzgJs5F*haM4~~6M1v5C1|iY{=x{=!!wHFoAQBx;NFP9l6A~RxNOU+M(cy$d zhZ7PVPDpe(A?rZ{K!+0&9Ztw*f?i<@?xV{I*#^+%ghZDU5=}v**h3h=1QJw$O5gxa z-~tw?0&d^|Uf=_M5CB0?4QfCwr~~z&0W^Xpf?i=W?zeze&<5H;2M7Thbb>C>4Hf`2 z0-;Yp0*yfE6Oce75c&ip(D;Ks0SODBj|ut&B+$nMeF75bV}d>b3G^{RpMV7Vn4nKU z0)0%-D?~37^chGr0Q53JpMgX(K=Tj!3?$II1bqe)=v{(70|^^+f-cYv7J!97yh#|q z1QJw$O5gxafZin}dY6z@zzsYAy-Uz5^x;1GmyqaRLZW{OiT))d`j?Qkpbns435k9s zWFu$-=vP9bUkQnRB_#Tlkmy%Jc7PDDK_}<}-CzNz+dW9}o%Qq|Eq_EKXadck1+)Td z&k&Xoq7JkG8<=|u7w~~v&CszD=Y2i?HAcLm;Rq6Rd9 z4zK_?_7NUX4H`i^=mwQ<5^fL#4WJElfrPJjXTH@*>kBlCLvb^G-!^^zZcE%$2j)yS*)bSfQ98|n1k z*xn%ZlplY^ekJ>I;^pwmxtEeJMPACkn4Nh{}WSGw7C!dH=&-tmxqmLVOHb0gMrZRitdu%$N zpLi_%Snko}qmf7RkE9;?ztr^y=)8XXUYmN;Puvr}CwF)9?#SKwWGWd=8p-tT81<;1 zxhsB`eOLC*1of$(yCZo==#DI%*$>~Iqh9qRx8-k5&GX!T?55yNnH%Fbig&2(PhB6S zUiQ=1#jXopm$^26t$l6wn#48XYjV`re&oIRt5a7;uik%E@~Q~+wx8M+-DT`bUm2tR z_A^(+uduJkUY?*H_j8vei)Z(vJB^*`cq|^I^ZW5hdosHtu_L@=-=%Ttc|W^7u|2#! zcS(}^-p_AKZHsO*wxy}}{os2t7soHQ-=W5T&*tc6V{>{_Y*TPkhWg>RFUZCcv2ZL$ zJ@H32<~O7^L^l}J7k}*h;Q5*J;^*1a8-L>5@VU8jlIKLIKmIA|k3V--@~p^N`Sq#w z(e=jq^t#x(;JVD(_*#2yc1?o%<sdntnqiA^EZx2FN!S+QeXb@!|lVfhb0aRQ*Zvsg^`8%1*rwm z1;&DOcdR?uouNMc?XGNRqBGo?qh9?Zc0QB}MMDPl>mTa~c4XS)?Kbu7pJ)rWznTGGui>fJxn6mPPdved(WxG~p|Y=|`E>r?g7dZRvF7pn{Yot6JVccv;{ zWmBL32`g;nTuE1idi_s1qfWz_cEqUP|4e1P(yq)_B&g^AoJ`7y%$q6d``<9rM$8Br z8G++X*A9jozvdnl=?hBs|9Q_}h?|T5AN=p(>bF%Ja7!^1M3!+YfpEPUZF8ame#ql=0tr$n$qAe}C5@&#QmG`;g~9sQi8Mkmr{w z`FGELe(DY7`FmzRPiGlRAG){n2flxc^89@>&tFK7SI}$2aPaoX!MnwK>hq7zetzm- zl<_|{`}t+{{iP4>Dg6QWXFXp$@^u{x=nfhx!KRp`upc+KR@g5U(h`N;_T;t zcB_*A((LEo{rTNF@a`OVcMiNe2i~0n@6LgD=fJyj;N3a!?i~34^&EKS`q6v9Fjd-zu7VBX*3$&NKfF4zD#kM&8{YpPGVWoljqnf}E&=_q2 z-K>vA;01!4kd-DDoBsCqt4(np(`4XKk&4ICN$U=w^LvA)`kLpdSuqC=2qFnhYF1TP&c(df7>_gBIk=56M6quNpBr zGB%;KDpT6YKcz{;0XbVhH|u35c{vUpk|>3wDH~N6Egt8Prr-{J9Nt>?; z>t?+yBEs(wp)ADDYa(!b)8wSyxd&LjS7d3$o(y!VATCA5XT>cNObCp}MVL4rYZ&kRovF}TokPp#V zYymCS%j!dVcvD@Rl9x3h4{->z1oW~9*(oljpOxFpl#Ho`60c}NK1^e=1+-W%i;(SN zQc0j6W=W~4P4IM!|pXt5r) zFt^HQj1BZ4yqNK-CSwo%>LLNDPXW@yB4e&vj6&Vgz(BvUF!z@(%&%zzaR7difEMdv z5g2=iwI`wk4wMGIt_ggSqK**IV!dp+z`{q)z(8cIwC}R8lK6%u5y$u!3uv)kwr~x} zP4uX8;{}keO4dK2Y$28?-SU1!lZdkhwt#Nd&lVEPtyh#dJa{}_OL0;8s3zn&4uNg~ z{j5Gj>3r~Gnh>17umyCpJ{BR9^ienKR$Q;v^^f+JZtDI)lYw&}wt#Nd$0B1BErzph zGZ}pYrCYjx)MVg1iY=g<^|Hv=B0{qwMDaVpx_+e~?4L9dI2B_H=w^LvVOH^`tTbk3 zGDek8?2l_QUgiww7SP8QGRl4Lq_;!)$o_;T;}y<;ZUKF4A%iz%^w`Yp;B+XT*`L&8 zyh8a`f6*Z8CM|Nl*G|L>uphlVd7>oDI#!ymew=DmIN7!Cir z++kisLj?_csQv#jL8tjeYX85520_EB?>@Zm8}4P|ysahs|KfLe$#w}1h59x2LN@)=FaM>z$$1q`tB zNKw|4&uUWsk;c4OK#TRV7t+4jCi*w)R{ZE1n&?wMx|IF1&uJ3>iAHJ*=w`hvdYauX zLbC#=Hb7J{Y2X($fuEx>E*8*YeQaUTI5ZHOv|52>qo=fs)FoR>BfqGL{5*x(0=n4%i{kL@ za}@3tx1uAfdLrS{1>{Sblz-+F=oT=*&Lc(XPvKuRDgVML&@Etq)u$|1_T#>+N%;b& zK(~Mab{;9pj@-X#QohJ3&@G^!-6bxZ^L@e6?hxySR`n>Gysv0NzQiHWEuf#(hbZgq zo0^b+qY*C_&|-b;4%#@(wZ$te)Fb14eUZ}rgI?v^dR7yeg_FEbN^iv`E`o11$481b}Oy9o90+^3roo0 zNMBE+bjAIeCgd9&0^I`oS$)XzrS!|w+u5&cLcU4AY76LQ{j7d5T*CV+4M>{$>o+tZ z-{KJH7SP9{_mCbs{x<7Y{1V(Z-lKd``KBi0+cX+mKsW1S3mN6U%u|N4&VEai@g2^9 zZUKF4A>+`G!NS3C%1~C>Z)-BXPvc!Ipv8LG?X+Ocb>X1GNA0S|dj33e17Yk^yUbe6Zl>44ai-7VywO8qK;Rl+;AM;c}w}4)Dk`}qmB1Atcx9NlY zYx+w!H2XCXKcR8h0=iibdl?@w2r1*IAEr!UQp~v0L0L|d@KgFjTR=DKW${(J`~mp! zRpDb1UVQg|sEPO)M?klLUKSDM55SMF>M31Q{zDV-bB=&+0sZX7{E>a=Hm0x?50Ce$ z8?qm1LVm#^&@G^!)rZiQY-;8T06*4*{E|kzSU`*QveP>a&c`au$Ep7RR2sf>s>9qx zL)}ph^Hn+qu#Ecs{~q=Azl-+&Yv})1&Y<6;V*uZ#eg7+H2-5H(?f(za@I%`7-*LRt z{OdxedFxU-KCsqd?pxz9&)(uNf4kXX-busZG`!L4H2Z6u=2xi?fbCTOU$w+xK4{bR z0%CMbV57s_N`s)`AD;j655MW&C?2@bL9e`c+czPuOqm9L^6uU#2I9UaeG7b1Z<9ec z;iHHA&i$7QzY7FGHE{3WCHx*x2kJq4;2PoY02Lvk5`^|$FZ?!eyh%7g^TvemH|-{x zLFFF80qnp{!ruuhdk6=p*nhL|OFI4QuK@L+0n~5qxw+X+opQr+EP_yq2 z`eo1t+CkUeyM(_RINu~(z`f^gnj+u_0bp;uk6sX{oFp8;f8c(47Bqoo;NAP6@cTdm zXau3jhiC+#Vv48)fn^WVOa#rK1^A~PrPtDvq9t{dr~s9qY3d33J(V1fOgOU?8z5sV!#5h5XitwG%DZ%7T??ZGTj3n;02D! zy)=3d06|c(`&D`czz6)m8F(F|BHX|O>XyAh?;B_W&7f`f$LXa3^eo}80KPXrMGF_G z0b*HZ_R?t3L;fn@29@G7^vZxA1enRs;^h&|pam@4A2R$#z&8AqzyS{1*hP;`5+2|M za@hjI9|$Zo{6SC$>VZQXZqUpn+`t364lFYK-M|z_(BBfX)}6LJM;iWi&FzE?3%z0oKv*eR)KabtTt%h zLyM>lns?KJ*#f#j<33s@n?NV%z@pa)>`__8o={nivw1-b$>x4S`A58(zj=6fgbU}NV6zKt~V{h$#v0kn9b zWsGP8?VvG4bEgRyJ%kCmu^bycL?v(l7nWlS)PP!08K4PqfGXhTA1AM+j>GwtJLxWM zf9Q|JC{Y0_LFWP6u-Xb!M|Wur>cp~31Zg5%K9irS=BdJx(*?X(hkRfGJz-h=I}7nU zeoRLI1o3n=Xx`s$R4(?}KAV59V{cScF7Y+{KEyxzc8}5fz5kzubJADEkJQlN3V+-F zZ_zg9z;|el9{367)X!_H-n#?sMsd}s-Lny+ zD+B~5*9zyYz9l?vn|`Ts1-+I@{;_(`T2Xne?^a)7m8$JoPjAI;0$uC#6HEE`(8<0Z zo$ULo_K%Co>z)0+1^k4ce)I>aTTJ@QBAjooqGxG**YdL#{piOP11c%M_;S!+KD|AI zG);Sn5cMTaTX@0=>h_P)asZk^8wde^PZTQ>Q41P?XBkm(fRH^j6CG28dy-y|4+KCp zs0H<)3mAI{2^_!$s(`td2m#N2A_%I13)5Bu8Ufzkc`UWlUor~o4ll#%L%c+*5ApJ? zKEzAA`VcSs>O;IHs1Naap+3ZGiTV()GwMUU2B{D6`lLSOm}~8t{*}U7$LpH<5U+Xa zL%bfU50$KyQE$oGIsIFOhj?98AL2DveMq++7k|6Brt?~@KBQU4r+>My72q{qeQ4JD zPiuzIZUaiT1Q^*8-}J_Tw+re+yp>QN;%$cd5N|=$hj@FUKEzuW^&#HYs1Na$M}3I5 zL+V4kRZ<@+*+xxHZ*%6mt-^eJcYF1J*k1MAl)Eu`W8}vC4XGQVHyAgh6S2SR$^p1) z!1NUZaJ7KwWwD*Xotb!cGPfhRBXVhSdt`h5lGG*9ON>j>+hW^-+cI>80Q)`Bi;ate z7ugqPwEa3HzhBKT#%2YV)>1!jnR$9#`K2RJMr7 zhNHRB%G{aBGb3l_&q$pSJ;OL7JscYj z4rf-xSJ*4ELy4jAP;M|e82LN<3CNwi_oS&4M^6aN>JMOFZ@ky;%`QnS2`|Zoli^4> z-;?Tz_82|sV`9eykI5VzKiWPzdsO16@KL$N$;FYy`6E+DMvpX(Odk)P?JEwaMB@ZN4T|6Rk07($%r*V09)K58A$7PPoJFTvf6vQkAz-R@5@Av@7Ncx-!nV({^SZ2}jtGt4vl#D)SYo zifDyVk(MzTlo>N_+Gf^B7-8DO|JEH3eD+)JW#Xg7{eQIo?|$>`=_3K9{})dY<3wla zNx)vEDaB7TM@bIQ7#9m@u|D=PYPf*|ezR`H>#UBCu2Or~?p4~q|5Ov1r?J`sx>+B) zNnB2$b2qrJ6nzt;%S(@x{Y;bb8_s}k0e$RFv6Wh-l*t!#eMzCAU%rg3JJUpm$f!(XLv-p)J@lTXx3+QJ3EDkkp zEqgw0q;IfCS=@fD3HdXJK(~N?Rv!{6UEB_6LjJ-b&@G^ky_`;zTsg;-6izWsjI8Y` zUE1=RjK9%%7Yk^yJ{IrKTwOXBn>q|rm(I#LTBSM1Z#0p@z#9bJY=FhQyO@^0SvTIw zImHO|A+NqeZ);KvPJwO#1MECfl(*=&niL!dwgq&veim=hT+>oGLO(G=(^C2#{Z127 zNuysZpv8LF3(KrSg{I3xv<{WD!|#nP!i+7R+W2oxpo5}p0o|;hMSta&&#`qVo_AP1 zF{rc>`MoB@$sy29mz~4X4GWz+AG!%DEZx+#_uz3Q6Y_^tVR5;)@ZXHn7iX`cF)kL+ zV!bTp++0gHCZt9TVd*ZNbr+P*x<6_X-IQeu=w^LvVb<{mdge9Ko#F}9VQTSEdiv~7 znhXzTK(~NCwlL=oU4drioN@x~&zg)j8gGYy78_*CO$R<8Y6PZZ!5LOoKH-~c6yw7~8z^;PY;4UaWzQA+S52%< zfwq7aTf>&?W1Qa9sXDKFd0CZ1I41bjo^ipc7r zfthJla{s2uT|kLl0$OYxTiDnix^Q}hcdCItj92w+7+E{0ys=6H8S!}Gttqz>F62~b z30TLLo7zGu-q?|~1N1F$WZlfPDyfDhbrB`m0$OYhi)x4sbA0hAysrZT8^-$2Ql|9S z(v{!TWFA3j3+S*nGGQZIZb}0pFxAZOE7i-4jjY-*HV~oo;zFzhOHJ@m6xJo6#n!Pg z+F-}#Sa%AuII=pjp>Jf>s4}@qOMwba>d}&y4&#_MP6zc!~o7DIJP8tN& z0X%TG!(2k=|G!NA|6fEy1=RrTSw=MkJx)`+X^QmIufG0m+W!|97ta4<|KHw^9kiLR zQkG`^ok(-8T|kQsuxL~Rb_w{+37b-33qG4Po=0P zyJb~kEJDW}`g^WAaS)SU+`9;9g8DfKS_1mntLRf1QL}DSc+cEo{hUcbP0|1-K}$d{ zyM@}BZlRCHSvNjjL%+9#r>M7dimEj^gEa1X0WG$gMb0Em)2tgENvWbK8dx&@E**>Z){R#%uNYhz8DCMHsM4vb)nu)tlokOkwvpY+ZBGx~ z&A_*rpcq^;KCofcz^ak4vkHrQ$+XpJ@pPPUP4ygp#if^B zeBq^AHitG{6x+Gz`VGt19^O;>?X6yuKg#*g5|BD%Am^JOo-1G30cz0XM>!wT)iuc= zTP`2FTpfk!A73*u=hQ3v2928ZF;0h;fI)VC>2prI@@>6IlRnPr&=RnQEtjsm_x;0b zPnc`oD_@|SHTe^q4=n+!*>d?mN9SAK9@lRMQrtkNiiKS%vCw|eTTZVSc>pPoXS&x7gTgR50 zJ$QXxg{5O`e4>ANeEG_`-XLY$)S-C==kP0lmVotaxmSQ)t?t4rSU%Ffa$s$l&7-n; z3Ta-#x%?8KC15@Kzjz6AZY7j$l&yIQ=kZH`mViOF+)F6gLiVqldnr}6QJtFf^En+_ z0#>u-(v_8jz9r4I2q>GVE=~Lfifj|mV(Zw8-eD!F5i69Hr01%^!P3RPTa&nnvYG|7 z*d}%Z?YCS)2e@b5=)*rq!-fqjNBYj(uzYx8e8a%{;qi%*F8~WPc^6VrlYkam!xp~G zANq9-TS2-~^YGB>$i$klfek%9SA_>k(iUpcF5)z330T9}vudGU_RFAev`j=rc95yfw(i!`w~snN=n#&l$c?l-aJVzIzf7h)q56T_>| z3in1Rn$L^~@ym9ndFAy^)AcKd`Oq&N=3*K??s1xDP(8qx{_HeY{U_DxpX4%!X!zVB zm$|^IGN1l~(_H9sna}**X&&Zuna};iX&y<#3zaVONE-gB!fB3t)?xnm3F=$mMmjD) z|36R108afXT{kf2FgF-Z^H%|<8Gn=Z|LOncD_mdu4(*uoz1p7St5 zG(1;)s~2lRPM}{62xzfhRv)6&*d3(_Igvvk9XuhutUg337Cc%LauSW$FCZN-Aw4Xv z1U=V&Z{ci8q;Hkd*~>ASj8kd6tpd_<5z@^TmVyxdtlYS!iY}T?hbYGBB;N2yc>EjSc2Sqpp>O+*p{8&v$KZig%Ai^O~ zAEGSg$7w?F(HIbrj&X1Z)Q9x;(yvW#6_#p3aCjjgARP!H>EHvY4>`8<7|8LOkRc9% zbPR+;pg!cd(lf^=XhK$S2($$Bvigvvr6+Pv)PxLk2($$BvigwYv2mY%PfpT=oJqgh zO1oDGfgZLHauNNk+;~&KE9Q!lQ{X+y&g{vWz?C${fPi$|i1f1M0%umt70QZviY8bz>r`qB?fI{r~-f`u%(Vxen8&|35)>|Ldv#|LwD> zhM$I(lbq&9&T^Ph8vcvw{%@wClZH=F{r`Fz-lp^aH_-Y2Hv0c#)CORjhF?uM%v)&a zrr}d`{{L(meqQY~cTpbz4*LIbI`@AnwE_4R_4{`j`v0Rg02ep@@Gsw`{r~&7Ir!D% z{QqGaf6MoegAHKnucMk7gT+6&EXeea}-%2YQr~{bQOyY@Gr$1z4n@mqj2tkC=6ve!KgI)en<#O~{2b zo&dD~LO$3f6w{a5y zi}kYjSf8s$!9u&>{^5S5Dj}>KkU3kExPuY{eAL`xy=;sUFP&o>U)(7gUft8*Lw`8E zjGdzindA^?(HA9xjHQrwPFZE5MsAi}kXF5MJvJM$n=>vk%$ZU%E=3uL;3MD!`j6i}kXF5Pq?9 zhb-wYT`4zcLh$`6z~8bg*2@+`dP)Ou|KODL^p~!d8#N(U(%-hxv3S_pq{)AJZi6qLd)jRv{7k*mBLL3;k6VnoaXW7Z-yIG$~hc3bg3E5K`bgQk2dA zCQZuKoB}NYee66^l%0vqnw0l)3bX|DvGYh#cJ#MsQm)|?XbI?J=aHi9>2KAfT+1oY z641xaBSqQOzfhBMJ&n0lK#TRT<*qn{Z~N7Pn#h-SEf-kW z>L5`0CVsIdWQs$eC7_qphbW8mdo&>l8gW2Ci}kYl5M_zprU|)$L!c#~m(_YTx#n7cx|g4n!uYW z&@Z6Hdf5Nnb&e)A86V^fXi--t_(BN(ch_r*Ycg)(3~2Ecr#x&Sc5Zr|1)Uc|6$ti zKc0rK(mwxo8eBBoPwoDDd+B^X_4$9v5{GHg@D%O)FQa|`@6vw%d+5A>CHDVEg&2By z+mYXMZxlb>?l?HxrambegP-7^JNJA-3``ZD>Y^X4Zm<9tblk);fdmzx5;%YpxPS$! zfE###7x;i51V9i}gBnl^>Oehc0F9stG=mn<3fe$B=l~&LgHF%|y1@dl5QsMk1DHU9 z3Q!3gzzJNy0#(2bJirTlzz+f-2&zF1s0DSPo|u`B4S1vxG=XN&0$M>EXa^l21Z>a= zxgbPz`E8 zEvN(apaC?3CeRF8Kr3hi?VtmMfDJl97w85Hz(QaI2op$90V;`^*Xh6`PT&F-r~+=_ z0bbw(eh>gbPz`E8EvN(apaC?3CeRF8Kr3hi?VtmMfDJl97w85Hh?&=E^w1+Fke~uo z0tavc7qCDTa03tU0w3^$00@F=Py=c~9jFHlpb<2IX3zp!K^tfX9Uw%^yiOaBbOK`; zVFC#%KqYVhCvX7^Q~@{e059+XKL~&zs0KBl7Sw@y&;S}i6KDo4pcS-%c4FprcHof^ zFh&UzNKgSPfde>!3s|5ExPb?Ffe-jW00cobr~$R04%CAN&Oli&1WlkBw1A5J{lZn@ zgibH?Ho%4^*knW72n`5VR|Q;HNm@?aU1Y%{-S8+cJf;Dj*aS~*fv2{?(>q|qhJB)k z95CUKxsklt1Cu^@PXON62p?&Nk9EK&L!@PcF8utgK^^(gM+;E_9KZrqzzsaW3w*#2 zf}k4IfI3hQ8bBjx0xh5ww1IZe0YbnAoj~j-41i7w=>vj5*M#%|K{$XDxPS$!fE### z7x;i5NE)f@g-ZC66Tad?OaOO3RtrDg3_l&9-*$aBh`(vT-5)mMZWCw$Z6E|}&4KfEV~cGySdW$F1Qs@o z)`SEVpb|KM6I20ozG!)Y9|S-(r~!4L9&{riC~((BxSB28_26#14~BxUs}?S7ghw=y zme@mgKVguT2_$~rR|!AuzynU;!q1=c!7o+Auhhb9J^c3u(rUupZ#3g>EAD=~4RMAe& zM~m(%;kqV(yLGsmXn;31!S}boo7>P15H(Q43n|;FsIrSF8~EJrDeW59a)&6$I6w7Sw|V&0mmuH@?^2n|&qmO8AxB%gL7`FXvxMy%c@Pcq#Q_?z}^)RU1Xb5A6mu%F029)H|^Je`WB@_Ukd z!h5oh#UHaD%RCx;)Oa-YNaT^+!-4c-JiTae1Gn~#C`UCnR{dR8uzB}iQZ$}le#;4w{dqm8A}F}nceZ-_U`OmiMzsg z3;evE*1}EFVopqfsN89*vC# zM>8Yw5ql)NI7TYxf7BnL{7*bpE^Ezym5Sb zX>4h5Y38{2arSZ9W5u!Q-dJz2H?t(Z#9opOC&J-yt|!?O>B%3HIwpFIaZLK?*wMkG zGe^abvX9CxPAm>D&K;RNGIC`8h}03$Bc>LG7v=trJ^)2Wx;@q&Y|pgC+w8V%YoayW znrlh6L|XFAspe?2(VT9IH3ge8jqygiG24)62sh;Fll77Md|j$8S~pc2uFcgXYa%uI z>Qr^K+Ne$kW5HlB6Nm@wK-Qn|hy6KU(iidNy(w?hYk1S1m?!ATxZ`fyovlh#g{yK_ z(u!DlSIQN28LqT5<_tPBj<~~iWGfSu;mTY^vLaHEmnj*QhD@6=GiYXvxM3Sv+O2_||kJstGP80Y5MfvBvFgV(@%(@j1G7b!=*K59Blkp&Dz{0h_Ju}w=-}Md|>y+zG zzfY6#AsTyN&P#!B=hKWO zJ9O46i)iR z<8``k(gZ$6Q2_xh*2|U)ES&U1pt6B}zb0f4hd|n+A-$|VMA<%nKogRp5eEdcSTCy& zQ8v#vYeMjJKtPN2vicBZ>-<4Y$P*j_3)fEf3f$L+C>!TnG$BuN2%LSr^tqO_gKxaD zZN60#@)U#0(x0}h|*mBc1_5$G~zb8z6e5~mqo~2*R#j$ zsuAyedHFjuiO*9?D_<7fVm)lR#OX~zq_p2l^?LSqY64%NzyMz(-D16LxxncqBBE{z z?$U(3$RW@wxnR0JMA;PV)`YyoA<*KBrF&U@h_We2YC>M-5NPq$(!H!cMA;PFtqFOB zL!iZ%OZT$+5M@(vk0xXNa#DE)jnc8m3}NSvIb(P81FHeJ+S`DD9alkqxdK#MPJ?qLfVVP%r& zhvIiZ%21Z(2Q(RPa0avl^st2t{whX~&D;)VC=2t0nv9Ro2z-1&bBirp;v5-UL}+H@ z#XH5uv+MemCcq!kM0}L~+Rs-rw^$F0h)onS>ozkPeFMkhsp7ZIhcp=V)#%M3M4Jc-OSd;M&G>(9P7VBk^f&K_*-HKl}X+a(?luXZh9zTAKuKPFL z2H-im_TK=t|Ig9+|Lf2Ofa?9D^Ap7nvhS@ui`v4LLg3IqwVKT zYNb0#_mtaA2=(p5Tb*La9!z zJW`ac|C5@O&vFX11oW}y^xmaxi0ly_^LiM(WidXP-=mm)g*p_vH}8Htd~Vm>CUo60i)w% zVdbmFbDEGZ(&&A3K|6#%H;Yb9wwKw=Rfvi4Ri$(8c}>K>(rDWRv{)~Ts|M_x;~P_9 z&f%IbrEQLvC_Re4ph^5PWmOAkv3|B(B6`Dg(bW);sLZ<;H8KCjG0+mw&(0@CSyx}u z#C(Ngpe3N6ollIivc9Z|d6Q$HC7_?3PmHp*zM_fAatyQt^t1DcQT9IeYGS_1G0+mw z&(0@C+5bpuV*Z_Dpe3N6ollH%Fyd8B%-1*uS_1mn`NSxPBVN7&dX!c3 zlbVnpatO2p^s@R8W!3zYCgeY8#6bZq*2kiNcdjWZes3RH)w5hVk+V;e@*_@xmViEX z9w|7J^U3KAW=50pV@`pVfIfDvls}(eY2J6K!#swDFP`Txx6tsLQ>d?hs{cQnhR;y@ z|MO}1Beng%mxg0#_#)K+oJBPNzq!g`-bO<=4WHQMFxS%X>no{00UB%?URmHYS03ju ze@grPS9Ci~|7M5z+$M+FN5l6opqc_2Dya{E$7uimB&q@UI<@`ZBAnFz-(mjt(q&)z zfqSF4WJh8DpC&?xeV-H^VeI?TB{w#rJ-FRX|H%cwm?BIdK?SG;4&VeXV1X*&1|HxA zKHvud5Cqkr2GoK&P!AeFBWME6paryoHqcJcE9}7i5U@cf=mKIlVE_|IPys4|12};T zSfC2Hfd_bj5BNa<1VJ^Z0kxnG)Pn}l2%11ML9eg{_gg_5Xa^l21jHV~049*20#pJA zZ~_;wKoxKU5AXsX@Phydf@)9$YC#>S2MwSRG!gU)n{mGdw1PI!4mv;x*q{@10ThGC z1;E%#m_Py)gGdyENC!YMh(s}nL@|g&F^EJlh(s}nL@|g&F^EJlh(s}nL@|g&F^EJl zh(s|6y+V|ONR)#}l!Hi=gGiKvNR)#}l!Hi=gGiKvNR)#}l!Hi=gGd{6f-Zn^5Q%aS zxe$mq2?Lk_@8 zBnm<#3PL0bLL>@8Bnm<#3PB_aK_m)6Bnm+!3PB_aK_m)6Bnm+!3PEHD*q{@j5JaL7 zL@oegKVbk9NPt2Ri9!&GLJ;XB=oO+AM4}W#q7+1;6hxvFM4}W#q7+1;6hxvFM4|*l zq69>u1Vo|)M4|*lq69>u1Vo|)M4|*lq69>u1Vo|)M4|*lq69>u1Vn~_4LU&=KnaLM z35Y}qh(rkpy+Ra$NECrc6oE(wKoN*U5s1XGGKnG(i6Rh*;tz=_ejLL!#_MqU=MW>_ejL zL!#_MqU=MW>_ejLL!#_MqU=MW>_ejLL!#_MqU=MW>_ejLL!#_MqU?iSAqqbv3O^(Y zKO_o2Bnm$y3O{5QK;ef(;fF-Qhcp2SJ|qf0Bnmzx3O*zXJ|qf0Bnmzx3O*zXJ|qf0 zBnmzx3O*zXJ|qf0Bnmzx3O*zXJ|qf0Bnmzx3O*zXKIj#q1%iBb=VQV)qz4~bF_iBb=VQV)qz4~Z%d zi7F3?Di4V&4~Z%di7F3?Di4V&4~Z%ddWER-kf`&JsPmAh^N^_Xkf`&JsPmAh^N^_T zkf`sF#wdaM4vG2>iTVzS`VNWu4vG2>iTVzS`VNWu4vG2>iTVzS`VNWG4vEqZiP8>< z(hiBz4vEqZiP8><(hiBz4$MQ`M{$Qlafd{4heUCQL~(~iafj>xDC&?X>X0bvkSOYq zDC&?X>X4NHMI91F9TG(y5=9*nMI91F9TG(y5=9*n^&ArQ91`^$67?Js^&ArQ91`^$ z67?Js^&EJGxQ~hsiHZ)1iVoQd+CV$#03l%PCQKkf1*ilL-~=vUfhynz9^eH&5CB0? z4QfCwr~~z&0W=cy3Y&1h8MJ^_&<5H;2M7VNmoR_{B&YzDzyX}V1uRen+`t38zz6Df z4^nbxJ^e>7g=hp#pc%A)R$%QJqFD~=Knt*extDMOAE*V*AOwtkgcEo{4QK)#U;%LK zCp@4UG=g@}4V-&d-~|&kpb2z<1;DY7@PKO22--n6sC<)fgCJ-CZJ-NO93ZMd0Mvt4 z&8Z?4-&m$Dg;UC4b_%@N>Cmlg~z;%|DZRCi;x=O#12A(?M#@AAibzD*I&O$uPC& zPd*WOBL8^m@#y0Qwdjwff~m}&_#T_u^d}w*KbCtm`Do1QfLlJ7(pL#I*pz&b(f!G7V2Qv4^@3-&I-na3-Ahqp}-)rBSy(e)` z_@3O|$-5(W=aZ>qG-)K$yJNe9yEAvi@3Qa8-kG>FeCNJ9;&<40WT|z3`1agw$=f2g zRvweT;rr=F`Zj9b&+?c*0c0=%n47KpL6WOW6RCp@)zU2EN@5^7Gx;}cnaeex_ z*mc3{GS|khwXe-ylei{)P42zP_eS2Ezk2HG@YT7il2=8p%I`|;itaLYrLT-#8N4!c zMf?i;itOcy%fpxFE=v|$_(yjdJJa!4JV%VMEesgMbbhEKJy(zXSxG8f%`~v%e zY%CEA$8sB!8zUR@8&Vsh8;lL<^JC`+&(E9}KhHiddv4;~@VU8jlIMiZdGqYV+2ONu zXC=>yoRwdnS|43+tWU3ttqZQptc|a=*Jjrw)`ZvOCXy48iTrqKJUVWSr^jMr!Ldv< z9u@z~_Wp_C@NjNLaz$iCeke5*9oj#b9E=R+2T}vk0b?NDAL|eHXZqrOc3*aRVtIIZ zE|QEyBKc*hWzl8Evh?Y((}SmHPK%#rpO!r}accO~eW%1vu}{gKoH#jra_*$$Ns*KC zC#Ft}o@ktyJ|T8O@Py3q@#F2|vr7|8!%K6=C69|7mp?XjZ1h;8*zSMNlIRj+Nje-0 z2g8}3c#qwaJtlEX_?X<$$)h7j=Z{Jq6+Oy0D!n+iIJh`-Wc*0`$m|h`Bf>}I79|%& z7Ud70Iy`)M?y%%xk;C!}QwyUDjfLq2u?4{eneKSE-JR`9bcMTeoypEfXWmZPQQNT7 zp;#yw%5=m#?2c^v#=oQOzfqU2T~?c~N!3JajGA5usH zzLYQOGkj@p%p3G(JaLch$+{Enusc_ktO`|St%Mb}a;~H+;>tTy&ZyIHrX4Xy(2=Q( zSK5`?ibO@YA}5nFBJ*a-jGBg-HeyE5$cQ-Y-|sp;H?^P6|9`%?|IhvZ?fWh7`xC`$ zQ`2Q7sitBn9&G?qfBm%P$jDFVw}Jv%tdE`R$OuMv@F-6tTzW3+Gn$m2(I2-7Xt7@Q z0y+BM-;$^b}r~A5EKH5J%(1Rz7 zGw*YnkYCWR`USLD4_hvz(5ML^;gXEcYcl?eez#pfi}kTPXd>o1fr>Y%R*a1I^+ig% zv+q^fYW=e&@|P6m7tmro>?RQtm&|btvoKkdryRok7fr^mI0IS&de}k+&mMYg=2mPR zL>bBv%r9s%eoZ6r3uv((wve%8X5_^?2Q!p&3t!Y^9N-LS3Fu)98NJ0(&-`~VLpinZ zB~3=2M&K9FVm)jj3iX( zIo^;$Lx#bTzMkc!Uva;$38~}|XbI?L^&yetY1y3qD)^Qr#7QG=qdqGT0=?{ZnvS`y z8(C1DTwtLU?IXX*HHzu53~VEx3{ATQ~~g&?O1siG141+-WXi=Bg=qTGZmrwQRD zy_oSsO@^B@pe3M(Ei}+6mq86?21^&_|IlQ3X}oO$S}a}5j_wy0fpR-JvIZET_ zA88VOH2#2q7VBlv<$3wlXL!6%-Jtzg6XNF(XbI?L^&!d@?I)U$0FBrupvAgbw5IG4 zp+golIwVI6^!TctUJ;mS1MpK#M35t(C7_!{M7S97x3?BikPUrqJbl(4L8s4UJ z{0H)NSkjl%xIsBjOI89i{F6OXkni^sEW}3Mw zCWp>_QV;v~k=#M?zsDM%VP0ZsvcXiKwHIw+U#mUbb9g zzk}^%OD|#5tF&zYPfcPyWmOAkv3|B(;=%T^5w*SSe`#VGI0jk*`q}x!D68NvH8G7G z11$ml?0jOB?-jq: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

    oIO7H-H2EM7SbU<2L4~U4v5Wz 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%0DV$JBnn$d?fql`6U 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�a|67sSNjU)lsa`or^~%ZV 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

    ^Xy@vis_R9eu{HJn)b+e;T; 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 z

    {EP%K#yU%SlQvUy9aS=w$RS5HFC0#un{<|P7c+o4&CCwMinsR)zT)pO8 zZe}W93DIrz8cAu1099r!b1FR?tqfCd@fq}nP|x)1uDoW;rB`m+s9(G}dG(C#>ldA6 zO;^K4zlrrhRe-h3Bh`;irf=CXBR2ZYtPiRJtYsdl{@ls*E$3n#Hu^2B52^yJWge;i zyvg(}XJwr>`mLn7RDdc|V@{=yhyUBn_^&;4-K5dC>|9+o>TRqJsshxQN2We$>@8<% z-8Sm&q_{+YDzk<;l{%UceJuA^pSfD=m099rk6F%2yY$gnRI@2#!a9h*cwzPwk7tS?1&1fxJ-MgaitRrcxX4Xs!MGj6x6 zxn1%ze|E~peVIJ}KIN3xJnE8v`MguU{5vlBgKs{~zC^8{;(K`adH6#M7fEO>=DOayr%G zDgmm@8s=1WSo6OXHEY+A7x$tSlU2W^1&-RR z!EDm*5TMGeV{Sf73*0D{9ohnOFe;nUxi-4TlHy8wA{M$}J#(rpuV_l?ly6D@nx&Ih zzU4Ayp3N%skZh{}Rc0M?(_uEfR`gjmy=R;C%zD0!;sVlYqNl*22sSd;(^WKjU6?S? zS+z#v`t>VTFFs@aqUGz>uJ1c%`Py}uZFJXOV54^;Yk;Z%Ynj*3-L6X~xgJ6@84zoi zFI^R1cjlVD^*wY^)K{T)oQ>K^tOlwAtYsdlTC``|3G*w|j<-=enbkm5fVIpcRh!$h zZQ=11Y70lzo<&*3Fm{u)lgb(eNJoAm9r=mt=>qKfN$#j2T?1l${H!(Wm#<#8YVN}I z%hpF}{;{~7V52sNX6+E5huOfKN)63I!7gn?g^4~f-l7cY*RE)C09FQm(8>)n@=Y$Q*lrM3!?5|rp;ns28b zDp@6}(zSRyb+PFHJ*sFqc{$le@nlv6DQ#F0+)BG2ZpTg-*yNyAtX$n|RkU1QonoVS zDlN2CfGX3+yq47PKJ|oQRB_#6yiUD#3G#<))p9{~s*U1ltO%+C^f94$@g&J=*6O;& zi`Q5bEeG+_Y!vCfFWoW#Ri=lzg__cZYYSk^2)b1~g>9gm^qxV*?l zaS1K7h0aW%2zr@GQoCl77^2&k8WCT-)>5UGYn#P3f~T_}sL~7L5Crkd$d&v|1brAE z(xzZP`K45Bq4h=HUK_zPXmKs{syGBeFLNV_T|K2>Z|@q5pk>$Zvk_cDBCT|~1wqiq z9Hd?U>M3``e(E8}qG;Lmm)I!wlS&I-(=>1mfs_m*$AG=f}kouFB7*wCu?d(vnFoY6Ql9U^Ty>if@hIP zD_w*`5cDzagJ{{rMU{%D+bH5kq;~$HLuJw_8I}A!ZWw3SC=Sr_I|ZmR>zU@M4YVx- z{T|_`U()EbZ9TbD(C?#X_S2zbG82v!HnM2Q+POJXnHux&G2vKgqqvb2J9%eUnf1)0 z*wE4YFOA=v=8^|!{9U(8zJ*5hIG6m;CYRjxGpGD%y8d5I;}3p9_XHG|{MU#} zzJ9J-{vbp18ub4@m%L*?UH{Yg*FW4{IG3*f7kqpC`hVKUA9(fGT7FfvoI$L%siDoZ zfHncD%m8z$z~C1gjWdvHW-KBWy?z_L%SowAfGV?rc{o#tQ6Gy#O&u)fEeRXlD@d_} zW3Dpmm{V=1d7_Oy4ZYwkp_Dkdqghnf*r?)CuY)i6RAwFXaKDr{O#Vx`<(z4)jp`t& zcG3YIbqv-sr`p!>R)q~a*2KxvXDqZ9*>yIuSCdpDpR%aTI_BYiv8F30v-vWAv5wBA zC5-LbXWFQ3qgew2RGD7pRBafJM^&&cvbfouWutK;Yk;Z%z09c&2nRJRrhI4HXxzja zpejHw^9oAOEtC8PXKJiivAk~q%{x|C=h$f6OtS_Bs4{&_^vgJz1}+nvV%_THebnX3 zxX8ISBDb&zsPbciJ|?=DyO{h1Ck%Y%>=et_E{a2G3pssO8**U+7h!ziq*+|w_%QMj9y8sK+pRHm1SdpTFr zeSirAUwc&1y__{mDjyZtXrpltEhZ>HmFZ({qDKB&KCD<&MuX9J&bl>AD(}8+vJttL zmJ$%4%JeeLON^;Dgsu~pa3e5!3VMl+#sjPYssi*fFF9=HE}_h=OsY$5G=^xoK>?~v zAM+~G*gDDHVYct9SFh}eRz`iZjYyV7K$Tz6^fB#4dMd-d#YW^oT6{o&D$~ovt&kpi z;AX-wnp%t3_E;=0FSF5jh&4b}fL^Alap-}{JmQjurFFmDM&n`D0965cnWn~}hmeCB zme&0W8;!?kxf;Lot1|t}tN3Q)7W$iI;Jdgkv3eCb@XfExt*tgHkJDl_0jf+t^9WSt z9fuVd-Ak^tQF($@KvjT#<`JmOtvnC9%0}fQtOBY6^fQk@#j>MNe@{F-YyNkTW4|Cg zNhO*9Ri>YL1S*z2C1s=XQC0y}0s5J^Q3<69!)WwZE?&KAiDh58+C~NMzG(agjLP&g zk3hw;w_IbR@-bEcRepQY&pZMZ+F$k@ycuwi2IRjbEpJ|1PCbqVY-U_iq7>-=Mz#Ei6%uq&31|jdfL5RlXa{t_ARMgE2ueDDPC(jAkO2j709Ak!Z~<;W1*!oL z;01hu9|!5Fu06!1_f`A6p5Duc?dQsv7{6GK*0vb>Q)B+)(4yXqjfH2SqGy%;(3(yL*0quYe7(fK* z06Kv#KuQy2Kmi<#eZ9i%aDgr#=xYEQ8o@>bG$eHD+2H`YtB9%#lQUFsmIs{U1CMP0 zPiO>BY6eef1y5@S;|91`^bq@GaH%{%yweM2{oq4E@R2b1R1^4gJNTSVqzxl<;PZ>p zUYe8v2jB!$pc?Q1Ucd+VfdHTZH9##;2h;-%Kp1EQnt>Le6=(z60Ua=a2q5+mBtQlf zzyVYNPQV4Y0TqCsi|PTqfDiBk0YIUJx?idSUvYu2xgit8WwI z0h9j~#$+SV4736|U;q(7+D}jb2T%pL02QbPJb)MQ0e+x~zU%&33;2sR@K^0vnoNIl zzv~2l?*{)EA-beM2mPl?W2fNH=4_<#Tq1ZsdL0=F2Ie?|Lh0#(jMZE6mVY^_+KvYrz-e!5BN(T_}_k_8pPypYruCy zV7VUreHi>>6ZmKE-j%{tz0F7eQR=P~?wf;{tixoc0lcjdyuBH`vlYB60^Tq76NhB* zK?nG-3w%rkpYVWB`oO0G;L|~(T7$`FLf~_a;3qVC?$rH-8X_It2qB;ug#W75FnAIAQtPr=XRKb`!v^y&Pk5}%Sjm3u4x zR_V>mo6$E*Z)D$yzfpcY_j=-W>Gga*nb-1#J*hp$p5kkn*P^eLUd_H5f3^Hd?v=zV z(kr=_<1d$9%DiN}RQzP-lhIEWKanDTxBQFA7o`_-FT}~+E%R~X$Qe@^E%II$V4@^|V2*Zpn{HAIm)zCr`J`M~#mbpG-YzJX!ciiX7eY zPb8iwKc0O&{&@MZ>|@c#N{?nAjXqj>B=d;zNa5k+!_vd~hY}A-59JRfBgRPeYyJ*_m%F=+-uxhxF>awc2EB9#NE=}`MZ*LX?GQN zr*<2=i+5)3jNVzgBYQ{uj`Hof+Y`4-x94{yc1gQ(x5aNO?ab_q?kr|f87)&tr_x5c zxFfS8x}&r`yFI?Wd~5F3#I4e;`CF2=Xtxw@PTg!!Uv!z9qSPN<_Qv>)b?)l;)umL1daNr9CI_X#9Q9dO zx-xU6ab;m^a;vm8cSZb)(&d@Uqn8&iOI@a2mfw=tQr?{19Nk>HG<#|M(()y_OA?nz zm*h7kH))#+8&eyNjm3*I7e_BHZOCqjZzv~o$wX30<_D4k+CX7_YQ3?(c#*g$e_`@M z?ZUzZsSAt?isz@#kDgyTFMD46yz;rZa}(!E=jP8zo}-;pI6HN=adz>n%vsU1N@r%z zjGtLvms^)umtGrPTUwJ{6JJwKeOmub#YZ@RdiKpWp-tJWqCzz zMPh}tB7a8m4DF1<>8aC=(~HZ+^8B*oGHqF5X=?d4BOo}`^rI5Bmiabod=%n8vG zN(-|K;|t5j=Z;StFCCvhE_s}GTwy_Kfw7=CU(CQ^3Bf7j?OO4%Fc?|pq zc4j)Gou!U!N4%pP$wd+oDUvsmhGrD>ly2z7cF~@1OSWlkh1OK7(OPWDv_xA<&DrL7 zbGa$klxUKg@)dpf6&o@Q(S}lewmx28uFKUW>e8WTs8pM+jn|fIay5w>sV1)_HBBo7 zQ$ZtG3}gb)0DAR{`^&zZFX5AXd2iCIc?+JD$M6)ZGu6@RlA2ZHYT2E0C#bK#yesL_ zTm@&!X*i2jnW|`2$&q!$9c3k_Bos->%Sl<23sOolq#|9`KmWbuP3P0^|8IQ9y#B}Y z|I^cd7`@;>_}}QQa6GZ!Hy@>=H{hvu#QWoxXxwZg@hUCD&+aZN)5CdYji5rQkjmL_pl)8hfbta3YpY(eAJj`7(=u zDw*9w1hn50OaE?n+K7CGML<=6KBm2hrK`H#HX{GRBB09Ft3IZ^h^2+U%SPm@ECQ+m z^fB#4EN%SVHX{GZBB08)w?3x5h-E*y$42C9ECQ+m^fB#4Ec?m5HX`4k1ygUxECPCX zdXO5g?8NvNZ?%2FF=*)VM1cTVI(Yj$OASK z-((4px?LuEn2?x%7zxY%F=Qk0EtUYOmt~d!A#s@VA8W_KSsRIOvjj+;EVBd%iNl=# zSo=SI&_?1rECEs<%Pavx;xOkw)^401vXS^MOMukHGE0DvIL!HvwKwXAZ6v-=3k(R5 zdL|}%nK-0l&zLYAJpZxo7?0R!{0A*2AVBJxnCNAi8plnL5aSw_J>yXujUTWEs0z@_ zG&L4Xtzp?U9<$N-A!~rt|1oQTrpA1lvJB(fVc9nxx6$}dT1Y^E)Za1D%QQ9SSp?|A zxQ6A>@q~@WkLarb0a9g$;3WttjOpN?Yp zpx+KhPkEoT(b&ftAl+XldYPt%^>p<27gfm*ta8e;X#Da@>Z6aw11spae;SXc@!Ka+ zAAL0XX?*EKr@V~DpPk^8chcBS^aXnc}>|3997`~UV_S~iV-8efV!<)zgB-%nyrc?XRxJv8r#BrMfZ?Kzk9({yl6X z@(UILsk3Aj0qsRBJ9y4U=BiE?J$899uWeHFfpoa;GEr*d<&Ihhhi5F}n_S0emZ11fyy-ZVL6aCFHj5b>F z#mg->5?{2@DAPiMYzRz!NYk{BX=+?!5ugvFjTULFwWQT2Y()NtML_B{n&@NNi&)a? zlQtq~zUu@?T__X%Ow*_D(At7cV6`x90%2oEUl=!>f4)Jy&Nsw`}yCq;{GBRc44el|KAt7nr6r_o^(5#7;);M+EWaS~}2py_Di6Y=_Y75Vu#mpq@wFSNSkm0Ml%kAFkg=rk%cKJsg) z+~sk}+0#{7BhSAq`Tc1$X4&)4E$3V=c>z5CK2F#A*E{9EJwn(2G*({!OY@!b$L2ZZ zlW6?z8d^4uUK(FWIORn&{%5~a-bQ0BjiN^qm#ly9Qx|$;;=1oSX;lxo{8 z(947%_N)m5UzpX1zP{c{o1tiLrQko?2(Dp4P!*t;3BlxH1mhOLzDmI_*$A#BkyZh! zOdoS9LDLMYuP?r)($p+!QT(!v;yJ7cssi*e@gxW=xF!sIA$q8(*<6dW(N}B~FQA3C zQa?OU1bxh-vlyFaaW?uF8^sG*5mW`}V;-Hw*gT6x$X9I?ldK4;lqygJ?Jc+}GiRQ~ zx#C}K6fdFWxA3dWD$~n^DG6-NCJdwd#yYF3**weM|1}%IEws#5T0Axp^f65rl*#X4 z)CziWbL|-w_D%CF_Dx^6QQXRkph{HU8XS z`dd4_o)1M(V@_qB0l(E+7IQvyOQ z(5wLgs!T6)svQQWS?p+I@zMCMjmBNH^dK8TnC1{Zo<0I6n99q(f4332mp25gv{kS- z>!{TDo{h!>v~(X^DVVkj)jWMPJ{sS*Q5a$cP-Q!XYUa`SX#9tbLY9^tWEX`>M}@;# zz_4SE)rsH-HX;wQ2xvMg_}EdwUc_=A`-e6nkI>=+0#un^=F!yy?c8;y^$259;Zc-eoz)ZiVtQfFMl@*B*5*=Rh) z8ldSu;AQs#Q-kl}Pp*N~{nBWwd*CNiXheiW-LDB=K#*5@sH<|cR!8C%yPwp$$gh91Oa8{C zF8S;`UGl!`UGkOW{r6s%OTL@N#yXe$LMPoLpz#YGE;&KtkIDP*${LsazUGqerLl?p z|349Q$qQ+OvF#tXzW=q0yaVEE|KS|p>V01l?b<){=cYltzic$qe@Y9`3bX<3fJhT0 zKn4`R0aO7_zy-Jg6{rS0fEVxqegIYj3M>W`SPUqz7*Jp_pul24fyICViva}|0}3n# z6j%%>uo%D^Vj3m`3QPtRm<%W|8Bky{pul86k%kB|pa2e_3UC528Bky{pul86fysaZ zlK}-L0}4zA6qpPsFd0x_GN8a@K!M4C0+Rs+CIbpg1{9bKC@>jNU^1YOEGoZKt*bFGJ7f@g?puk>0 zfxUnNdjSRZ0t)N}6xa(WuoqBZFQC9)fYuNO0}2cV6c`LBFc?r^FrdI-K!L%40)qhs z1_KHV1{4?!C@>gMbie>2KnKtXbOA6JP^JMe7*Jp=puku_fw6!BV*v%m0t$=;6c`IA zFcwf?ETF(xK!LFUts$%h6j%!=uoh5YEug?!K!LS@0&4*U)&dHw1r%5dD6ke#U@f4) zT0nudfC6g)1=a!ztOXQU3n;J_P+%>fz*<0orGNrU0R@%fvJE3Qvn600t!q8 z6qpJqFcnZ>DxknrK!K@%0y6;xW&(;17(fK*0N^8_z(+uVkAMOn0R=t+w1!Shy8t)| zD0r}1fs=p&CjkXc0tz0pR^TL{z)3*C6W9uz1Qa+4C~y)`;3S~HNkD;-I$&Rz(YWh0eA=~ z@DNboA)vrRK!JyV0uKQN9s&wH1Qd7(DDV(a;31&ELqLItfC3Kz1@-|7Yy%Y71}Lx% zP+%LNz&1dEZGZyX00p)I3Ty)u*aj%D4NzbkpujeO))2-43XB7k2ms>%1;zmii~|%2 zfN_8V;{XN50Sb%*6c`66Fb+^)9H78BK!I_90^6AU>KmlFhGG} zfC9q+1%?3%35JP+%6Iz$`$4S%3nw00m|N3d{l&m<1>>3s5?M zPM`~bSpXe&2nyf;ssJb80^EQKR0AHs3-|y(5CDRJ2Gjtx1X{xort5%upaBR2jX)F7 z4732PKpW5w=zsx4fDWJ&=mNTdX@IncAOi~E0IC2d-~!x$3RD9gz)PSt^kLc$1b`r* z0X0A^5CZCedY}Oa1C2lv&chAO73 z0T18>e1IPa06{hMw$1?qrizyRbu1UKLZLO>Is1JVe=1^9qkpb=;Xx&Y@sf)}U(!ay6) z3ApwwqwfN>KqJr&bOFv0f)}U(!ay6)2~_PRcmNG(09t_#z_FiD4FrLDpaqBkvc8-) z3-ALWpb5|csh{8iTKZ3?Zve^wK?MRp9ncIIfILWW1AZU`Gyyswr3o&;2h;+MKszAz z5S)M)r~$%28_)?0{ZC#XnYlD)&_4De0;FN0T4bK3d@S z`imdQd?fmj(i7Py;`C;J?(xLq(&PEZl8{D`oRT$suj1@IdMTZ%p49y|J_{yDh%0d_(Sr#0}C7`RkL{Yu6X9OI>GN zSG+cJZS>mGHQCWO{1aD8SLaj7lt%CPrv{C|;#C7zX;&4lOwn8Z#jTmG(XFK`vh<#R z`SRT5iOZ$S^Oq&*P5;7{)D~k)adT#pcl~3V${TYV6C0(C`HPbmYZn(bq&65Eipfke znk)@u2jTx zx#e?m=OoUN&dHyhJX<@va8~LpLB6jB3$B zPpZf0DIS|SHhOI7nCvm}W6E=Ka}sl;Ir-Vi+1l*Ftkf)HR&i!#W^`t0Ms`MgMtORA zdUSeeT6S7|TDd#do#>Xj^IgdNGlw9hr`3M=6qx#3N-RXCw^C$m>a6(+lmX zcB8%6Ht=`6`!ChyL$Oe~HdmXdm1^@f$r`PuprtfJD+V*cXs{H>2I7ITKj%;QC4b(R z^l83=H{~_FMNh^P^^~f!)p~VN&8SheePI5x*x z(7k^`LG8X{taCW_ZXs)`X0D{>o~hYp_G*nMLs;3Fn(~9cp zMD;{aJu<4tf$9mPdfccU1J%=x>S;&yRHJ(8Q9aG5o_17^tFn4bZMCv`%%b|r>M@J7 z%IYzTS}Uu^EHWyq$1Dm}R*zW}sjMEesG+iY%%a+TN#WY=Q@Db>JsW7l_Y*qP7t>Y^ zZWMtos=q)pYEDAUg;8@=sJUv?TmUs!i<+xP&9$QDq`evX2CAYmR~LJxeFW*H&W^nZ>%Qi~PnqE?F5g%G4xD$tEUcTg)u>q1Zv@&G~}Lde4i zIqs$faO-5WwHd2YTsKZA!WF`VqUP~-YwU~u@f;c}a*VfKV@1L7v>GdF9Z##VqVRZH zjTLo{r`1@IJb17b8!KuaPph#aMI3Cn#)^XDX*E_ye zkyLd^szxLg?$c63RFPC>mEw-X!3;8saP2vvsHrlk%(;A(No5u(l}Tk51uB!uENZDt zDzm7eGO5g>j>@Dmi=@h=GK-ojlgccTE0fAB(khc`tca4TiIb`tNu?vHB1ozblBxqq z)rh20kW@`bDi@N_+SDw3)SNmYxaszXvKNGb=CssTw=i==8n zQZ*r|YLHY;Bvm7lNR0wj!Dag3*RxbRrmT1S5oCG$I(S z2!>i&cjj7nDl5t?3RhN?SyWqDQD#wlWks1q9hDVj7S&f)lv&g{ex|T}^bEAFvZBnn zq&;+|aJSz)ZSZ1WlTlyc5vni#t?&OZSq%*Slkrc*&u2cL|Ht${^nXtO?EX)Wd}`>e zfj4{J5Vl^6`InO~YcCgGO0nCb@yY!!j=V7R@qy=io)gdR%?%F^J{|j5@Tq-I?)gai ziRcrhQMbh0V~NM4$MTORAJrZ$Jdz^6#Nxx5hocXd9?Cuxf2jOm?g$(crTg;tChyhQ zGts!Gcz5RR=-s8evUkPrD(}wiPVAO;=kHA3sohz)BXx&yNAdQ|?M1qqGPpCA38wdL z-*apFmj0XdoAz%Txnbz~f$Mq>dlw{gRg}CAvscEiEN{(iO_1AR{)*%k+7*S%QdRb{pc1xTb4|AIno2AY9OOuysmliHbU1D5P+?3fA-Bj9`-5B3kzBqSr;$rFI z{D$NPZ9^fMN*c-HKxQC1kXhe_Y;U}`yg0Wwu~=H1UzA*=Eh@xQaU))gWn$4->9p)=@zctu=1xtVDxI1? zC3%W=O2KmHLOXHa!ac{QkLzEc&)+|HBs$bHaIAK0;h5Ah#xcb?nK{uprP(yaW<!`&+fw?8i4fsKb_*4h_N?mUZT1D0#unE=AhVcI42ydU)0ZRBwl6-&}wkE z;c!kki!6=+Kev&c8+i*B1oJAHtfM3{1yvh=w)!=T!;hb<5S=<1AX(RC(OMq5` zyA6kP!dYbT0{E4U#2%IaRRMaK2=`%}a2CzwCy7Qg>c4Fy@+<+W0`xE;aTq6@MV5z! zer+T1I!l12O`nHt`XJFW<#Sd2i!6`1{l-S(En0Yh4echH+hNa`FpNI))Z1&_F@9^K z@hR2-RRMaLc=rXn#)M&9!?I`m&PL9|YAl!_G4^~IZHHyoc-KbbGpqrc zCVgHu=`%H^cEYjl8~bfEKFb=Q>CxvEm^L-$(UfHvuPe*WQMS?e94#auK+~en%hRUD zRL{~;U0L>y|FO~d2i5>p0eYFHMwC8VhVkvN>>j_j(fCJNNI-xp)5|n9=y^HoFs@@%PK6*xdACJNY zkS&L40aLxE^mUd1RRMaKM`Z&j;RKL|sU-f5{^l2;%JeXg$_7xjk@yBnfGWFIj(b-g z=H$m}1E|CCX!<^S+5OSfnEJ$|*V5=ZZ8W~a8lY+X=w%;G4+WF za<^yfA^-QQZ8UyBOAoT$qiOx<<7u;1-$;L>;s5>4AwNpb`_HBE-{@KY%V>1c_zXSo ze=3bXAm6`jG}h7hI(h%CrtvrA`*#e{mXrG}kHLOkT)r2kC}=*AO8%On2@5!-ACVdH}2`* zi<{~96Nc%AeccG%uy5H*H|)F857X^edMPL1-}4xj@&uuuZrBI+JVp0l2kEY@f8VeO zOv4TPrajN%hZwqH-!=F=g+E9)?Ca7m;&%BbY1MSPVXy3`8}_~dy2a}p%;Ppa-LUr! z(hd9YAlg3d$_r0g#J2Gpj8|G0{wD9$N34>heu5(7MZu{D=XPBZ_`&6`A6FE#6e|I?LK}O zqO!;{#E(N%7S-?Tp7=$7j30@poXa&bbK+brL4N3=axQ5v|9V(i^+=5XQlk^8(TdclM`}cn8jVPedZb1JQlkc`QG?V7 zAvKzj8l6au4x~l^sS!bHM35R9QlkZ_5kP8mBQ+Y48VXXQ6RFX)pMKD(M{4Lu4H>B+ zBQ^X;4Hr@)jMVTVH5!l_-AIiHQlk#3(S+1+BP*(r5N$|^020E1gy=#-G$J8dkPtc& zq74awXY3CK(X2E)QaYi?R~c$^uA0hFn?==?p*D-^Dno4+`6@$g7C9?JZ5B0GhT1HW zD?@D-xe)3$4s|O+-GNa15o#|&Z6MTj2z3=gU5!wO5b6emI*3qrA=E7hbpt|eAk<-m zx(=bPN2oP~T0^L75$Yy{x&xt(Ak;yG+CZocgt`WyZbqns2z3`i9Y&~Sgt`Nv?nI~? z5bAb>T0*ELggSswyAkRJgxZ5p*CW(j2(^JwHzLX^qTGrA`w`$KgtZl6H4xTzgca{k z9E_n^LEg$3nnhY=49z07GKOYRs4|A5%c_i_SyWXSL$gS!447HuM8MiPU@Zt(1Of9Q zU>*c4f`HW{U`_JYF_1WZT3!U$M30@i|n`4F&X1gs4Kiy&Y+0*1@5g8?%u$Ws|GvnW^@Ftf;A z88EY`wlZL&%c=~RS>&h;*l1B@z|5jn3Ye>U>~S8QqU9Q)K!x-z)Uu>0P)!I_I|8Nb zr$9OPQJ_M@6rsT6GFf zC&JS*OyOxBpzzd9&0!f}pfwFX}*0S`ZX} zKLte^rl9!J6qM$E3Q9OgL8+n}Xn|mwV4$t^4^Sv-_fsfbdk-Gc#UI7{ki)S_e=NZ@00G^d(ZIQgLlPt2k+c> zd-nGD?d4rL?zu33Tkn5^X{Zua~E7G zm*FZpGtQ{9RF$oYSCt((N5UaF@=8+Cl!Ba+4Y?>~q$oY%UtX_;H+Toc{>tlru|?dX zC~wS zXa-tagD zfE%dqCp6;%y9H^#~`5!a01dE zLMJX&x`1v#>?cTo3@Ctur}+K?Pz5*v7vKg|pc?Q19s1{K$v_v-4G7$ukN_D7^IZy{ z31|jdfL5RlsK&LE2k-(uzz+m~AfN#?fDhMLejoq@0S%}DYJm_?2WYq!s{v|(5Ksry z0}VhJXaoYdW(xuuPy^HgA)pSZ2O0p_f&}1j5rD%5-69~s;UWNk3%X<_z~6!{I|*=h z2*BGQ0B?f;ybS^&0Nw@xcpC)ZZ9rGQ1f`#^8Y^2vydECF>)`>s9!{671iT&|!0X`w zygN--)C9a09Kc(_0lXC)z+1rqycHa%+fR^!U&ii1Pyh!|1vmkTu1o_mpa2e_3UC50 zzzwL3!H5(H(}ioG(Y$)CT-zp;Hv=s|E6@hC1D*X{QlJay2BaZ^3@CsDr~;gTN>{yf zMM>}gUcd+VfdCK$G(e*3;eZS%fCH!koPY~(6DAyKRFt=*XVQuSZ9qGq0|p>Q2ofLz zZDKaf0_cDNM1WelzZD1pbwEAP0EB@?z`Kv&1N=aMFkyXyhZZ%C@cmFr9UofMd}vY2 zp+&8S7PTE()P87@erS<#Xpti5(zn{YPfJ(9fp$O#3?Kq@0G&V=&^SWy;X2t51b`r* z0X0A^5CU3oN2wKP1KI%{5S(?^lL*d1YY}IpwTSc6TEy9EE#lm@7I7w9i#V^XMV#f< zBF=eh5$^%kBHkaYMZ9-di+EqL7V(~AE#m#iTEu&mwTSmIYZ32p)*{~jtVO&xT8nt! zv=;H6YAxdZ)>_1Sv9*ZzX=@Sh;npJF->pTw_gjm&EwC1G%U~^vlem7 zXD#A(&|1W;qP2+INNW+dnARe0KdnXFnp%svZM7D0OKUCScGp_;ztd>Nc9n0-9kG`{ z{+9I3{Ws}1?!RH=`l0IvuI(X{{Jn$2S0%2JuF7ATyi&Weur;;S*jl_Ib4B!u(&gF9 z0>o+KGh|QYRQE6c=U|Mi-Wj&mJE?zIe9Op~VNyOZ5occClQ zWpougGo8`SQb)EU-cgR^B8i9;$s0*SGYWc2H}qnArajtTYRk68+sduE)#n+p&8n-5i5AH4CrYR)*-BT7G{KL@$TO0(Ze zA5U8zkQi605V1UYU zKV}io?7Gs&U02$RSe|zb*of?75zy?r(kC!&FJgK6CTJs4qD2M;s4{&_dlAd?j+%|g zPigV~iVh$>JdIvUHVU2oW*O4tw?mJQP3S$Z#zx|2vi2RO30^HxD z+4rNDry+6!jT45^xcBv)-BWHCks;})|KDqpYO8HJ3d2|ukTG3r(9Zz2&%oV_PR19f! zI8iHBEID&+-}uRbg3-oonvL3c_kw0ugSFh%;E}4KGro$p`TglOY98J;P!(V;^GMau8DHhm zX2z)6^A#b-1*kH;%p{#gUp&dn z-{>NQ70*5>d5Gd18^u#et3`k+)5|m!ub@)Pz-J~k*v85}wXB6G`b zbIO;~=%n!(diMV`>i_SD^xXfAG=|nV<=3e1ztd^_S-(?G)7VU-*dvMl-+k7#(M#9= zKQyoZPo(Srs@VIyQEuJcLm%lyXX>LQ!bQ3)95_(W5aeVG2We8Lj*`>55RSAEf|ui_ z2^#o6M~E5)q3gmuS}LTF5VE9W4nEXmVmw7>ZBmQ`g9fdG=-|0OxRbiDl@!Nc3SZSR z(+7%7q?Ms}7f2B5qyN$Dq!ANo;Z6(Dj}@mO#A_Sm`FeSMPUmvBn`WR@qD9d*(Vz!e zFG$M>#c0hXT5K$hLs441=Ze$Ek=rC*m{>?_FBE(!)*$36TDH^e*Q#Wp@5D0GB1lWr z7hwkaKphN;7*&vP%esThOz8AqhPnYt)Axj&4$?9)_~|Q-pqsW#lI1w}Y)YlN6m(#z zw+S~11W}XAFt^h?B!az{&4GtzMusT`+`HvluzcyA+YFJx<;6n%WLaM-QL6QQS$2i0^(7AX zDvA2k;2dxda}I=PnW9%u(~^aVIch}AEf3Hn4X8tN$j}O;WiegIyUiTvp&Srtsw1q9 zESBj(k5gn0e`(1Evn=0NMf00j|M{ z9MHXJ2RH|?09s~64xk;N)smsd9g+jV2{~XM3yvfQ5OdUk z?07u0NXMc%2ZXF0HV3dFqdDL(a{ylzW)Af7bj7iNKaaza9?yZDl&`d-QaeD4wB~>l zB4ar~P55{YPzb5^=x~QhOi!8voRTy{hW7Y0w*xdE>TMA10PO{%DOr&NC>CNTW}!o4ss%flWhV|8V&Q#+L zh1y)2@24V`rd;V1A{KitwhPOa3`u%N!Z*cGES9E5oOY6!ET?IYlWvSv%kFeocElX9 z>t&~KJQtqsmRll{BQlci!7M_rl7>cbny{})1o3}7<`z43BwCQ@5P=~vP#xb*3TgVQ z2&Q{!9nxt^D>{S*V>qVwhI@DF9qxFCaOkRAmuTf_#l+lLTA_{NPeMxbIxgFdzs01Q z9*J^AICkB=la4RFlmaoVjZmp7Ad((%yK7`BrfQY+U@R7i37zsJ?c61Yh3*u=Wv5ez z~EH!=8VdujbdCg=(a zv5VqOLy*p*RkxT=ALy^bUBw#~qxEy^I|q7%ZqQ$73EO6hk=>oN8d9g8rtir!qcr=& zG!>+y``svV&|lLI(YTC~#x3HgAHfT9qw*x$26bq&K?`@#(BOlyi z9@V9c^Q^Qa#9k>UWzv%Fj!Dx=-7Qr5mZZzVJ)iP6t&4#mEz&J?a_A@Jn8;)VeV{C$ zD%~wKDl~>kU*AUi-g_gfdcG}fJUtc=Vuao+>i!E(=}Y_H4ohnEXTNypZ^!@jn01Z| zszTLwT~dElFnHkC>w5yNJ&W%6QDF98{_=EsqkO`~9e>+#>M7sIzN@_VPk;G+@w4yl z_-)|*9q;eh@#6!R{&mLz4Cgt2^7fzKJ8Tck}yif8PA~ zw*zl~-JCjb;N1g%#U#yZ4sU;O;J~lPJ{dmTFj_v*9@WF*QHM?DqHj>QsbHKU7RL0PncifQM$mx3wj zT2O@OUXIXp`jZ0(M|WD!hd9Dhv)>nnpzb{IwngV zYQPrCBGWIZ9U!S-)pFtPB~jX`JL#NtS1?Vds{?4|Xe$zgcf>AQAx?kF)d8I*sWJ1@ zVep&~t*1~hqwEeY!v9ncVpmO2#PN-oEc957js^aT+Hmm)ZvE-BrKcA`#1_plZd1=9j*qeeIUQY5XCU7BvoWvJj6uCAVWp z^rT&BvB)c=m=u?H%e&n}B(KXoRBJ(5cP|_gw6jkayTWuR)|W|C>GK`BThuIyRq1p$ z!R^q6!zH;By$)?;m}++@jYfRnD}s_ULYdNuLnCT{)YPgXwOE*y*6`4r~3Lv4J$|j~X+4 zkFv@^i0Kl2q)qdsg~N}vr&E#Xa=MyysaASX)e;ql1Z{n+Dous7RhVmcOkCoK)71y% zHf36WPcO+&&k9+hgQw6by?bNRhto7?5VO1Eq_b0|&4oye7Dk&R9PTQt3<~AC@S^J2 zSH7GUU+mMx$YNdmfA-!xzKJW{|38|sr88C?cgsz(4e7)JLP@nSh7g)%8%Q?_JqZL+ z5=gbudr*20O7B5wTaw+4wwJqEbhq5CchUCj-V$xEH^1lejBPXm~YDmuXF{?ElUm&mIjH7uN2cb_D(9m}0j=F-mW36`;ZNGNHI$Y(+oC%Lwi@ zLUG}e(~D1A%D8|$0ImJ&TNdJy{;4-DB9ZTs{%h2jwP+9E)M>0#nl<%+Tgv9GVU z_&kmD7N0fK6oSiG5HtknVL}jlwPYFHr+t01ZGy9l1*a?;LU9!29JSM#(a&xVU#9QvA`FY&&sIR4A^dPFrbL^=7i|IG&_XT*Hc> zAwVw^$8ba0kN;5bqM=B!qV2BV$qL1_tOy$9IRHfviu?QcTj%OfFYVSM#VNKMtEVUw zFQES01ZXgQ%!}wd1DYkvh*LO6YQ^Hg-ri{O$771^WbIK%ZlGRUX%|8g^fJ}EwYzvD zCl_A=q6)Y z?FLz|Lh%w-1P#6+=4D!n`yNQ^)FDONMQ4ibrub}y;^m~(B0z)bVQ!&I&g!yP@}YTi zimy3SY+sIj3c;&*6G4L}*l`#^2(B-?Q-|g)9GqW#;>;{QjB^xEYQ>h}rG33aiw6$3eg5Yu6z`z!x&&x2>zUT=_~CJ>(Z+~R_(mGV z;JmrRq}n$yu%w@~_a}RrLiSGTu|t3cvzCeP$6<_t?aPQqct+~Qyv4)xi*?Ypt+p%A ze1+&;)NPvp4W^%2Zd+Z#HDdC%lIqw-+VmDE^zJ65E}kwknDxwZdVBXR^mBh&h1;&*{U*+*Yoy^9z2+xD;RI=e_Aj9V*5@Z`F| zY+;t$-da&R(#HFD@sgqbB||J89q5Zh$F|xgzE~mt5Q$F^puuclmfLE-@Q*Z&ZS~@% zb8H)JyVUn9bRQc^yhX#H8hrELn~ zUZqRxc$y{y}WmnejvA+b&Y8q7LooW8%} zw7DhAi1lHJE{g7Z-LcIKELEsJOC5I!&|uax%Wdx7>nyHz(Say^XO3;GO?H_=_5~7b zqr?!91p`cL9&6u?CEp3m@sQtD@prZDC)eo;!53K&w2D>u1={7dbMN;TL`RRNP45ha z9$s$Z#Kl%wi8^i%i;L;x-S<~4j;3FX3Jng!T{kj=dKjCeJ5!H>itZ@SchbB?;P9SI!~dI zrGEW%mj@dHdYIUdi_2;ZEnaHdSt}G8pJffuDhJ@<+d`H`H$7`xMn5B@VcSFRiTkRt9}!+{DFl6$yl>Wm`tb zMT=wxZ6Ea23WYCG7d}e6iyZ~JnVV^F7}<}4wGo30BU7O~`Y~UlkoYpa)h9rM>1INL zZqn1Uwq>GQ25`d)6Y65HsqxM}YeSgp}7kiOH0 z2IlZo@91G)uMna8le8hA!Spb#yD6*p5gGjgp$*|Hz^KLsg~m5o11wIXk6U2fRMM$r z89gAqgWb01)Qc1v-(n50IE}ug!TY0FX0L|r?A@r)_%>^R#cA{{jdE8++78>vn^0(c zmo>oR^z$p|kgq6vW$zv8jZCM%82hMiQfPdSH9$jv9_B`xo5UrnWEtI8{mT~GzM(cN zG`>&Wm;yAIJ|@Cn_osm=Y?q+l;gm_Q_@~Jhg~|_D1+)_B`#6#Q0jP8rUwyYKRDMYP z`-`H{J>14|k5JXKl4bndicknQrE(hmj9jeH_z`P>RxrAUgV9$A?zhMH^Kn+j}An%ufyk7?L zei_L7WgzdDfxKTvGtdIG0&PG$5F(7*8OAdmKqt@zOaLYVhXIaV1P#!E3ZN2j0xm!T z22cgK0T18>e1IPa047ik)Bv?W9Z(N60F6KsVcgCjo@oYJfL5T5AfIkWGXx;hnb84s z0^%Kl1JD2+r~oPfC*T4kU;tHs8}I;Lzz6t&0AK>uKn+j})DgxEeYzgcGysi26A%QN zffk?@Xam}T5D*4B0I{3k05m`cDu7DB381F3fok0b>cAUSfE(}tUcd(+t-lcfOrV-D zZf6aisRfW5&OmNB1G(W0|GKmag-YJz;G2F+Rkne2>upaEzEnt&kC4732P zKpW5wgaAQ5whafM0Xk3tR02-G1xNtD&y6a=n4!<$x4Pj0ya0a28-5@Fm_Rj91JnX_ zKt0d^Gyy40}VhU&;$g5 zW}pRV1=@giAOwgWf`c$_r-o;ApaQ4_oPZ0EfB{qiZomV00UzK80)Por12sS`PzTfl z4L~E%1O$O*pap0J+JJT-1cV9Wb~;Ar84b{Z3ZN2j0xm!T22cgK0T18>e1IPa047ik z)Bv?W9Z(N60F6Ks5Cocm7N8Yq1KNQQVcbsf4n5-lG(ZO`fJ(p#xBv+lKo#HyJb)MQ z0e&C=m_Rj91JnX_Kt0d^Gy+XP5NHNkfL5RlXeW%@8NxG;Jp>KVfeN4!Z~`ts0tQe8 zxB(B~1$=-X2mmHf4b%X&KpjvIGysi26A%QNffk?@Xam{_d+o$CVZcFSeM19upaQ4_ zoPZ0E0A>b^Dgd(sh6nHhm^d)}Kmag-YM=(F1?qr$paEzEnt&kC4732PKpSD)&UQQ# z0>VHC;0O>jKnE&-O27%Y00|gC72pOufEVxqejostKs8VU)B<%tJ>55-@-&zzui+FW>|GKmag-YM=(F1?qr$paEzE znt&kCOc=Mb1<$ksZGh+@H~6c?KJ6_Jb6o1Kl zDf?pL#qf){7m_bTUdTV6dOrGm;kop4vF9Ambw8VbCiP78nZncQr(;h$p3XcKf69C+ z`()zD@RPYGl21gQ$UmNXJoce5biH`&isr`NcQ2x z!{LW>4<#RpJd}Sh^l-@HG2U*f*-eYty+_eSo`-;=s0dQai* z^xd($9d~!%mA^A}XY|fODxHd@9I4EX_zrVN_Kw6I;X87-CvT73p1&=1TlBWVt?651 zw>oak+!DXVyd`^c;^y$pxto$V?Yc33qj_WYhQtlw8*-V zqHuZo^4R5$%QKh7FEcO8UYfWxd}(fba(iTZep_l=bX(z)^d&LMqMx}qezAFRc57m5 zcx!G;a?7sG@y+Ju?54z~@TOcMnTRCv8&eyj8w(eu4=5X8_qzPr)Y|CU!kYA&*c!*0 z%0{CFU~DWE{ZJ5FH9|r zE-WlaFNiI0EXd4{&o}31PfMJ(b6#woV_xRe_^IZp*|~|i;kmgv$vKfZ`My+Nw68Eb zJv%nrF+0;6?=^d~vl6qyv$D}dG#t(KBzqz~`BMU?WKT|<96mXBQu3t8Ne7<|aL3f> z)WVeXl-Lxe%S9g-Pj2u}O|enPcL|n8##~P8=OR zI(Jm^sK`Why4HrV`P%Jd^5pw{Fx=d}n)~wCe zBx=Gnx$0zfq&jb=%&1uiqyw>lBardO{iZ+bOZdXRoHyx>c=Mi=C+aD<)9#piq$*OC zH&RB_D9E&oQT##16?d7gtTW*ZJ9CxE%1C9tB1NGD1wF0DbcdeN;+m;t9SKL+k)vV# z%pc5cT7k+)KH+ zs@}nfZC-DiLgUA*0b1$vJe)qy(kMT#7qQLjZC7aggnADM&|rF*t7$%L#eU}8tm*YR zi+dx{;u+&h6(T?74FL@SdYBt&qH2HszoV16g9Emmb(uorXRHAloHozHv^2`?tp33P z+s?XNq47)VJy4W)&dY7fSNkG*&9;ore3P&C;=bZpy(<(VzoK4z0yLOzCPZ*+sAL(v zr?PBzU-4anD-{y&Q7`_Yv~wPALtA@_AUWC&&|rF)mPWbnK+>=s@tYJHi1qVx#Gk>Wa7lW`(kS;4 zCk@*nzgeN7u?A=$T97{CprujnBTgE&V}6T5qmp_IaLP0*eVUisK;AwVxvEn+*j?of!(^a5=O zXr-9*a$7B8JGpi!M37l7z}e)i%yM3Ct3_;QS4tt`B@v$h4W^rkP|NbZBqdpW?^H-2 z7S~T{Iv@dhm}}_Q)vB_d1#<`b<`ny@+@;X)Q@=hc-2x5J&BSILaOU8<6%xn^d-GhgXv*f607!+uzrb_W)8krp;1k}Q(73- z0KMF{G&b*}VO>u4$sBy2LZpU8Ktq6Drdq^y>fWyqsb>+;5TKW7omJ(wgifnL+g<+$ z6e0~Q0vZDJGSwnBf5ZnBB8@Bp8Upk(;R|~qonR%)=r8x^>;=(*;=BG2DMXs6W4{0m zriY0T?rmj%R#OnS?Yj7|LLYS==>#&;JpHMl)-Gh5$WGOT%$h zh4u*D_n%4Yx6W~D7tvZp>r-btwH{i3Nca4=pWxK$X?>OM`7b`+sr{Pn`CmtCh}O4G zcWO&%Ei7|tx6wWSBWV4?9H$ni^&iOpcbrq3PV2X(I<*9?K3bor{C{(3{mCq+b`|CS z3sU~SH=|B%fY$${yni?KIJF71ihfP}Vr!?lj_&`bitqpTe@Qf^;nPQ%7?$t79Vja3 zfl&$kFZTp6{#SYc^o?MT(lYJ|VEnK202sG(+!Mek=K)~+|LFiQZs)io0NqfclkE@n!%G=!Bg77Xc+7j-NZf(oU1J--rxaKKJcypcuynv zNDzFi9egrGG{Qh99zW~YO-&7`0GxmUQ~_?l19$-+;0H{g8mIy4fO?<-Xat&oW}pRV z1=@giAOwVg4nXW7H~;O27peKo#HyJb)MQ0YUm( z`STX=mu=vC?dVOT*W`aY!QV;n4;@68!{15&(B17h^cFw|Du7DB3AlhNzzui-KM(+_ zff}F=s0X^BU1EnxAqI4Gqxo_?=4dvratW z0wf-P!3Tb=8vI5rn5zfB*+4X!(ELsi%@#Dj*NSF4nm=^xBL2G$?x_TS;sSqWfWL5q zzw&~=_7RN$n*Ui1{&y`{s0V-72>u}m{>ig@p>S1g^U^Mj)WvH+TOXeJxLYns68 zn!y`d!J9h3+r|6D9U6FN1$eg$yw3n1aDxwd!AJbyV*#R3jppOE;FC?@bEa4%#g87j1cjM9`MILFz+YQy?sJ8Pz%%p4L}fR1wue4p!E52f zKrPS!1c6o{1at!0MnWJ&>OZXke^CeisuBE66OlXzsQF(lXttqQXh$=Q=I_V;rAL8} zXFeAHnB!v^_61145q%^7dh+$i>-pDGuSH)gyqbPB_NwF6OeUT&Gud5h|dEh1=4%#cs>rn!Gi9Yxb4|-Tlwp9J|?Z zbLOV_P3BG68xuE%Z_M40ydiQ!{`%DQ(d!G>rLT)!=eRC&ZR}ddwdrf3*W|BGULCnQ zmrNwhWOgJm5+2E2mAoo)RsPD7m%r$Va&MA3iNNPaM>}|6DW~jYRW3 zsh((0;gs|#u~SA)j+~r7DRolxq{4~m6JsYjPRyJTKfyd9dwk;f@bS5s$(fOv`5CDh z(HVv5>FKfQj_H|c@oDC?>~V?X!pG&Nim90?@hRq%?BvAc@Z?-1NjHr1-Kp+qcj4Id zv9V(v$7UwQCz+G7$0UvkACo&ed35CH{86c+qDK{uOdlCLa^xe{02J++ws@P_mTgV6 zhFfzj$(Bex-d z=4(5J#c@Q_hQs5?}OvJyuTBC0Iu)yLHNGQ zhv57!ABOk4e8fSsF!E6id`t&-!UJBW;Q}uohY!4b0#5MqNqE7_r{D%JpN1d2dzJo%je(5^xeJc*G6T>B?TM#l2(5csJu_~{PtGo9c&@Q;^S z2l!cd$ji^^;OF5ZFTVgMdHF?n$;&UnO;59FI!);#X;5RS-6^`@roA8{M-@=GlejC2?@;ewa%YVb5S$-F8^YVM} zo0s2*gD_Js+R@0)yv<) zuU`HRj`i~Q7*NYUz_nif5kqSECpgv1Kf|kD{snIJ@~`l#mw$s}z5F{o>*YV-S}*?x zzV-40IM=&g5pb`U4*1tg4G#8F4}le7u(AVmc7iT=*-HsGd&z$GqucRHm3W_?ayvke z26}bS2cLWChts_b!0TR`aJ!e)@Vl2aaJ-kb7;wuvxZcZp47p_kobF{KyzXTa-0o!% ze)qB&j`y;KJ?~pF@|JCIy_fCqy_X?4-^(z(?_~$v?`0?a?`0Pp@Z|(};LC|{!Iy`@ z2VWizCwzGXyzs|11?hXJ~rgAux%iy^u^6=QTc4}UoORfT`t3jU7ik?eR&3a_T`yy+Lvd+YhRuX zw|#jI{PyL!aNL)}@Z6Wn;kqy5@ZFc^!FgY)^vbwi)NcmtS50XMTAhy!qvNcIV%K@w~hU1A4g;4*fC#kAArcF8y*deEQ`UjOOK5 z4Cm#=7|+W~Frb&)Frt^+F{GE5y1>gMc)0;yQ3YP<2CwpfBVI7+1F!aj*95?8P4K#E z@cJ6?hFb8(I`F1?;@D=~+<>QUX#{U=0&fd~w>N`#V9+mjVAL;DZQz|4{L8yS;N7B! zcn@X*erpAOz%0X|R(KIjA=a)A#^@DT%iv- z!Dni~XKTUd>WE{T@q9g=dZ7V)u@QW!34A#SzS0ctY5_B?;Hz!mYwh6cA@Geb_@-lo z_%RLqxDI}z0{mnp_?8oV+Xa3~f}b|P&s2f$xWTLk{Hz!JoDclGAN)c9{GthdsT%xp z4fvH>;@D<EQP(z#mkCKXigWa)JLY!5c!27lrKf9eH)<^zB32Y(R&e`$ihss`Vy zA&zavuWRwtZ|cDRs0aVE0sOB<@V}eD_k&=e8T@Sv_`6o{_if-G+QC1Dz&|9eR)Bx21pn>?|KS4vM}i+1MAt4+g$E8dsChu$3s(5RNatopv(Z;@Taq%ihs)Ssr1{?xASi$-`e%b z*e460NPQymiQLB%A2(@!B1W+asW&5U=H5t9q(bKP*y{zFort`ado@9k3YknSQ`nWF zIECCRiC4^5dS1@Ilzb^n5eo4a9WSO|h*Eq)^7-)d+2`UEosfPuO7RKFXTr~9pN>;> zLi(xbQ~4*86q}HJBL0NqiS*;U(}}c6Q3M|=8@PVg@;oQM<^yC z@sRmY=D`?6B%~gQJdnFTLGcKg`(pPMcs64BJ&t?QcSrBe-<7;8d{_3)IL$<)Qjt`S z<{``-nLA>46lfMAa(nK!#BJtn8HzzD+>*K_a!ZaP5KNkb*mGl&<{z>*#BXrikfzy( z{B_Ce!q;W5jTg;5gs;vf<4H#{JrW(s)67Hos_d2VD;-y+Dehn+%{gQ)i(OW@G(|HG zx$TMV=JpKDHxw>OT@tw@N3#v)#hIaiaA(5h3gWN_@cAg=8 zLH7Lk`Hu6`>!K86kX##Hn_Uy92!r(M=<58cB*hnGSH@TFSP@x~J1=pbNs$Gycwu>J zd4%E$62szEpL@2HxakhDO=B(IR1&S(&oS8c#afV4T1+mi$%R|(@j=I6nxYBvv1BY9%Tg?Xqd&bkx;Rgf1mQ*5h4F=sh3N&+1^M~O z`MXYwomQBanirXuJ2gQu1ev+9xrI3?iXh1KCHl<148;!=dQ-iT-W){_n6om`ShPU% z2a%rKDT!0eQ+jCjAbC>wr0j`tnmb6J5IrG(e3E7kvNPi|9W&E3Z;+p!oF1N@rC9^V zwDfV&1rZQGppcsHiMNUuXCPe_mw1Ok$h_L_v&D&peU*PExyGQT; z!~ef)&+qxeU(R2U{3C2`F^?+zBibDB^8gK|hY4qrRg_7tWEu4ljn3{{RGbUrF@;7u zYk-CTJxpjI@lDAxt})nK?9#PUp%G#Y(4cx4&;X%PE+=m#C5W42^NC3-G{UR_8Upk% zp@Gc5CCm7B%$rl})b+SRqk}a-1La3Z1GF^CI(5yq*EfGcq0vb_1_Wp@y-a8z#Gqsu zcOdE?v^n=YsSxR65zr8zm#G%9IXyn55ShRtpdmmnQ!Qfqh&-(jIh;DK7NEiOGLcpC zAZpG(qYycQML36ImZL1X#x`r;lW%o!0gb3=YknH#lp- z{w%O%f__b5!AWcZNL8_k)y#4hREesQkY&MO|Gd6M`;)gN8h%|Ne=^I1R3e+@!2^(= zwU~Z8?N8p8`u7cm{3$FCQo(Fu9kZN#(f%j-1$|5V_PhUW`FP({SkObNC!<~)Spe2D z%UOV&@>8w-Kf7;EbjgCD!{;m+>>IW|4xx#my^kVekN7|xQS_nwn8KvlWJZuHicuLT zYBw>5DHrmEitZ*Ztc@8b%+Q&|Hv1X#ngG6ZiZ zkrN}h2>6kVd{K00$w1$5clWkPUy<4;6l(KW4Wyb=tOg#aTBLj1Odc_eUf@2dP&dHB>}_7)%Awzm~($54lz0(3JQnB~;0yxF5_r=Na0iFK^IXv>Dk z_SAon4?nG6`HfRMi`L&%xwO-dH?;2@A+=?HacSTEGt~;9BD&vkNo^^uzi_&=OTS1Z z2%o0Bf7dy+Q|@tU-?^J|0aDICAM*YUQZ7JRe@uS=m(p5CYleLP7t;D3`TbuWPa#SOKb=*Ff+C0S*r$11r-A`)%qRMU_ZkN0CT4DXD zOE``GZfrFALxsiztN|JV^e_*uHqVa~8V^&yfudqC% z#&#F>=L(VMSp+l$=w+%!Y1A3I2K!Eh zTUlH7$?f-Rg~)5vy^rh0SvBO`+=j@i{d^Ful1wGJ{eGj6c%3BnEg@&+#N)42dVPEu z-B+c#{r*Ft@dkC^7ofrPFfEO8$GkMR-+wAJ-ee8X5TJ)?X_PzWrMdn7OQG>u>et8R z!>m$bZf+x=+yUqI`)`HB=U4(X1n6c$;(&Aey|0k?JWGIv0NqSTOfGv;_1iPO6%-O* zU7Cw>7MOb^r2D0dm5ePwfZ`jbNA>#PA57euo(%3VfC!}itjXNAVQtN|7mM6)!? zT}DX5_SNwhg+`8g4+zj;dYR>J86Nob~72}&;mt8(Y)M_)BN)W zp5HJ28!_hGNcTPGPQxpsKdT-1eMU<;ksr`&Rvk2}CYqaTqG3BO`jG8d%opZS2~8pK zLzVyyE`{c1T1oLj^sH?eO`TklKu}jm{D}JSa}BiOdT5r!DqH{bVD#Esnn18Zp@H1u zfuh{vUT#|&oA=QulR&UiA@XAu0j=cXUQRBq7O|bXPKC%%sQYTpC|;ah9P@hz;RZ_K zth|&vv3|-Tpp{+R%h|;tau9ByQX%p)76FUXi$mnV-9Qb6#?M&;Gz92jT6?S9xmD^0 zTBXqV74=(JlwI7)G=4B{phEoUQOfa0`Ty!@-9=;l`LzCm#`;NGTWP%iNy`1VjMm?t z>D2C^{C`K%zh9u-f6Hn88|D7Hm(~caU#HxE>u9Z{H9g0vokZ*RCe`W)?JkQ zZy~L}p5oN5r~H2%w0@d$0G>73sr@nL)b6DF|C4C_D&6~EMR@=Pt?T~fb3fkTSuQU7 zxs$eZblLN+2<5-P51RTB8ypVOKYBCJ0<;2cKsyiu!hl##Z~z*B?14J62I`f76L0|% zK>a|y3PAlp9rXisFM#@iI_d}N0l);Rff@ky19j97)awD%57ZlhCLjnj11&%+&<3;v zAs`HN0G&V=FadCk5HvssDu7DB3Ag~%4b)LLP_F_|H&932K-~+VZlLZ5P&ZIF0n`oD zQ8!RWE(IMq6m+Ce(2+qwM*;;M`4e=cPtcJ)K}Yfg9k~;9q)yP0IYCF_1U(FN0G&V= zFaekd90oXc5i~#tkS#$+vIN};xBz5I(2*!XN1g;7X%ci~NzjobK}T`~9k~&7q(;z@ z89_&41RZ%1bfiVlkrhElQUo125p<+P(2)^AM?wT0`4DuZL(q{8K}RwK9k~#6q(acc zKnKtXh<6AM07(#Z9jE{*0Vm)Bkp4hN_5&SR4|F6w(2?^%N6G^o84q+MJkXKvKu5X* z9oY_aBsp(}U109(TbR;^^k>@~1ngbnK4s;|r(2?UnM~VX-84h$LIM72t7(jLd zUF;?}01ZH91HA&M1d!H1M>+!?*$i|fGtiOCKu0PA9hnStBr?#E$3RCK107imbR;p* zk;6bo3IiP(40I$g(2>7DNBROC*$Z?eFVK;@Ku78V9hnPshtcW) zkg-7TBG4yz0@@P+@jd~03Us6?&~=~!s05IrKu3lG9SI6_8JC(s2Tv4D=e0y@$P=*TLdBdLInoB}#h3h2lvpd+Dx zj(h?-(h2CuCZHpkfR0=OI#LPf$Rwa6k${do0y@$N=*S|VBZ+{H90EF029%|Hv#3bX<31hO!Mw%9>%02-hJ6+k861YCdw44?{d10KK& z_y9i;08F47r~zt$I-nkC02+ZNAP6)AEkG;KMj#8@(GCHQodgZgfeN4!Z~`ts0tQe8 zxB(B~1$=-X2mmHf4b%X&KpjvIGysi26A%QNffk?@Xd}Qvv_pV+hu{D-KnE&-O27%Y z00|gC72pOufEVxqejostKs8VU)B<%tJL;*f|%6 zhENAI17SehMUa3Gs0D&R2ynbZZ~feC=m50PJlZV42h;*VAOtx2 z2`-?e|1|mwKwnNU06$O%Gy`Ek+enar52yu#KnQS*5L|#4r~#UQc0lYRH~|k(4KxC6 zKo?NCo8SgapaEzFI)RG!2~|JNqVRb7@z~=I%H|hOo9XP%#Lh6~^Gj0v zeE!kYqtQnTkEAJr-tkE0;rPSm!&!=<4?mQ9F!^BQ!8}FLM=7gc`u^Dc4vM3X-)G*J zy*F`h_}<(-$$J8n*DrB*`0gA<(?<@dvR~-79A);4+?uDT`sgi%o6`rF+b@2td2RNZ z#5LlY%+>L$O^UEjB*V$vNOB}XG4`peqE{8JOkWwJDErJ6@hi+LvX>_=4_}_UEO}Yv zvOLAwM=vdGPj8QH-}9l>{UTfPn^U9N{bHLOn=*-b!le9uiH+fnxr>q)MJ{@0LxM8= z<<=+HN7m;rOi_-%!UgFIVi!0r$WZjXd46_XVqJJ$j^gk4pXYDq%GgTB%FK%R3Ufu4 z;_$=g<>JYBB%Y^8{OIz+aC$g4?4VeDdzHV)+4-|lXGJLah@Me6Jxvk$ zj?**C;>%2m%17UE{RZFerhN>R2WPT#wapBGY}sz2ePpQ#pdVwmmgrAKjivL zQj~uF)YPfbQwwv`6sPZ)o0-!yr_h(~i}g7uQa?W1oSp4W^oA)`KRGKhD<4foqZF;5 z?uqp{dNQZPDPF&{+F$6z+zH7OA{4csIzD=QVP<+}jND{1dg|+FVVtCPH!ksp@ET!AzSm ziuBI};sG;|^(QFSKj%yOBEGygMbZ8RPudgnI4I&j?l#@oszgX{|D9w4FT3L4^&?rz*?=)|0C;zh5&1r2dY1Le*v76kDz|W z?jO`B^#4R}?Jg?BSHtZC)t|CIeVeaptwJC5`MS9>pH-!=j@#w*ivmawIDofKVZmS6 z0?;brSItHI%2{yG0lf7Jc@*{Q=AwR9fxl{QAAtOU1@JZ~HVjM_l6XLJuC?Rlfrw$3c+3$1pi6ly&Vd{IVAN@3hy2LvD~RpoX?7&6)fxJ zU|G279cr9qmqM|h6+uIQUgk#$dYqt89Arh%5TKX&QGy;PDioKpB4`NE%ls%okB2D~ z&tOH+5TKX&QGy;1S16uKDlGyum>%Xw2zoq1As8pARskAJFY}`WJszo0T*;dV8uWp{ z4Snz<1U(+55L`puw~_z^K`--=f*$Fw4|aKrasix1xd6UV27oZg!YjV3>Fwud;aUP>k#Kc7xPhS|!dZs!?OA*I8Ng=z1WIO0O zjSU5BnIAEZ^H_!GRuXCxpuzMr%WbPVjXQ*ibC}YRs{_K)-ewuw9yt&IaQ&0B`I|Y z&|uax%Wdo4L%VNiqfPcWh3p6kHVM#*x~}8)!Gtz;)8CFwdrVWPT}N;A7sVlaxLxjQ zwExh?=?abOSpzf#=wTjQXyXip#!b|3peVrD%WZ2rR?};?Wz@%%u5WW}F`6?KA~#bn zegPUx5A)zc8;@6L+(x|zisFa8+&;+A#uF4GJ9tAtD^}RUvBC!z+IXTu<1XsmTNI*O z#qEQMJ3L9Da5pP}h5)OWo5cad9gYq^PF5(~L%jwBXfVA@br_w^&HEIE$h|BA8Upk( z)gm@m*&c<+1JtpfLyC*Tiw`bVFRIXZkTpOhWC?sB`K72*7vTkleqWeQ6Y=?WHLgEdQ*f+$~ zirboM+XQ+rdP-5;mMz+8kwW85)&Pq`Of8Km5F5TJ)?X_WhjlZN#Xr}rP~k|F>9g|xm$G5^=m+HsOo`^?QB~ALjM2v z(mI)9|KB~$shv-&i(&yDrx<{f=Q*|SpGtoIw3-wL@ZvJ3cG_W1?N<|>+O>0>TKiI` z_7=qfEL}n|1eE{pc3ML}quc_UUD}itF6~q2xwO8kUD~?|mv%1A0le2wIRZ9P{C~)$ zO?d0&UnFS!fBr9>yjh(8f8-C`9{o)bQ|!)9(3|}NG?*TywL8mQ&1iSpPVWJQ#@p0; zK!66*%Tz~>9d{i4$=J|gP$BXu76AI2U7kO1LlFKAkLg;+GhyY^IiN84IrLoi}JZ zt;eKu( zf(O=eh0wbsR3ktuI^4_c5A(p1qHl8FqSBcNv~Ug2D64)PVe9yuvRJb zzsLHZ6^LEKf!GJCuXey%tw^ZzXV)+fRA23YwML=;1J(zv0PZ>t;4Y_MrpvVDg&fw6%(EdEYY!koh6!JeJ;Yd;JcP+Qe$;1EW zumkh|u@#ayUtvX_tOyFwU^X!i-KpmSh2GCesfiaIzE2D65FplYQ~J?j-}zhpJg5MT}SK-J*X!(-9WueA-MYR^(n#mkse&ynuwtm%`__V3f zQir0A3Q3Go<_OSWdYNnJMk?+umMr|6r(VqMpSQT1GwD->nHh)EzNMwu+by9GoyMY| zAwVxvEgC5iwS5{lDMY8UC`e^=SQJ!?PA(C(xx#K%h|XY9&=8=PsTQ45B1#uu3S4ZU z9>mB$wkSkr(!1se&|rF*4eb@$8iF;w$Q+Kd`LCI#?t_wFPBo~s{OaU59HxrU;KSc7>5=q-t;YNkzA`+X< zC5DR24WXpgD!Mk5ETemNaG-B)iDvOd;e(sXXm$$x40DJfB9#y+>3lOe9HJ0#$uc4Z z{@c7|<+=@9CauM*{2Nt#aB~@%V}(v{aRcqF5-m+@b zjNvU?Nss;sIf^82QAjSM_a4T@g_@ZYndKxsBlR>BI3^jHW@+MIo9L|y(bHKJY!=`| z=7EV$nQV#T-y+eG4{j?X+Ce)OJNIm2EmIb?hs7l{q}xQV*_IKS|Dpeemn|NcP3I1k z3G5rd8%75kx0lfx8!DemZ*}t7XgP=1v2*x`XpOA3Yi-@I?xGE$%Rtt++^y^Nzi`f6wAf)mF7%=Y}LCxot`|Mzaj|J+fs8DpDO#k&k|+}~myrwyg= z86js^`ft<>{Gqk8KG;#BGS=tVfjOU^s1u-MTJ2%_XyMS5EFs)Uj>Z=-tK^G=i=YI!@Jkc(BEEAsJoe_Xe@AGBlm1)WJA2qVq45HrGvb50ON7RR zC7oeHRI*=WJ=0{?F)g8eKg^X>=&%|>1Ko6>#x9p3zD|x=BgD_i_y2Or4OqXyskPna z*D^n(+<+I-J^jl(TI1K8+7oBGv`MtSHPfXHZKoOmr@FNDGpKgpbeDGhT#6H*{QnOx zb!msu`sxywcFJ)s?W;pn2Y}W+gH$ts);|uov?Q$_TJMXwv<_NdqWk|dXchEpa?{e+ z>o$9qi$9N!|Jk~pD@8|gH8)%7)a^_7Cit%OP4->xyV$y|}tH_Nw zSk-fl2)6FNPXs%6KO%x%yPg%n7W(NMtlOCp!KRI$5y7^Rcj(p7XQ}nh=R~lwzspg+ z=gRk23V%zH()+7L(7SORy1q~ZYj#~Ef{nWqBG}x$g*qfFgY7WJ4P)FerVYk)!I%j! zrWMB2!GRP1X^k$44+Y29l~D~$2MmGOn@d3C6U-m<|}D!I%yhMp>o;DR3wP&?xG?uRujqN)x6pg+e7m3E2cM_tpEwn{6hTp$fG&(k3DjMs$uM~~` z9oJB6*G+`}Tj+f~w~5B;{yRit=>5AzW9PjV6s(}b5^SS`5e(A72)5%CtE1x(4AOB3*3oeY21-w{rebk}tnn8enGP7^hB09n z6M!*wFeU_JI$?|sV;W$L31hloi~(aRVN5%WX@)T&7*h{pnqf>mjPdVlOp&;RF~Pli zCJbXdFs1{>m@uXu#)M%^7mTTZF^w>$8pce3F;y_e31dPqrUk}?VN3&zX@M~fFvhp9 zF-77o7*q7s5P~sY7}E)3s$on6jOl3}hf zFs2p8G{P9~zQz=ZJ7G-G1-u=`_+U&IjH!V!jWDJY#yD_Ua>AG(jH!h&8jSJ47ztxK zU`!i~>4Y&&Fs2R0G{G3pzQz=ZSHhU03wRrh@xz!2Fs2s9G{KlI7^A@$7mR6!F?BFT zhcR9lg9`UC?`uqvcm<3px`4OBm;j7%;H#_-#sp!^1Q?^k z7ztxqU`#!Xsemy)7*hpfx?oHQ#!P@Q%`heeW13-1)xO3QiR&dD!eMUGPyFcGQT3VB6Z%bFEY4Ov{)3Wmt z^TPAYQ~T%an7w;eAliS*j+1tu5IDYn#*S&xX@%p`$Hk6w9G96IpK4CcPDxA&PsvSA zPL52@M^ce!q|lx2j&(b_Gsnh{HIL0sN=yn*${mwDCUQ*v=+x2Cqq9fuIXrcE^zg!A z>BC}&IS$KAj88NtW+x;jgeT;>l3kImd}pdN+F9r*gae^$d!jwuo@-0CMcVSMsn%#~ zp(WiCYjLz>n&Zu8b2gX=hJ)dzo&(Gh7z=Flg?%}1(i`#SJt0Zm=#$)p@;RHmee9zp5`OIxaqpzZ=w7DwZC@qnTGrS z9h|9bd}`z##ni|x^oR8VG?{fw_0&jYpQ(}2xtM!P1jjxCW3$#b(i4&=eRQUaS#Hv& za->l-@}$p}(P_-R6F}CC%;>b?ePv`TM(3J#kgS6vGJQq$XssJ{`_464bMm-Rw`#-I z_1FYU<{$T$$c)JvEK@1&q_+l{R@=wzax!q*tF!J0_AeY>v*M%>c>>Lxed38WSD*(J znh0%e;c(VUW`J2v6P|hvtT}Hn?sJT)&YodY6(2lUqKch>W$ZX&hf3a|I@850r&`H( zAFxBWV2_5zcCGCgK2%0>Y`*YOl5~hCiB>#hlfW}8#D(GlDxqAmjLsMKE||aXeBr|- zLSw>X^MyO9uR0D-G?}%`6=Dlb{bL%~wv1GanDpW49U53r?lbX-LN84nHgKq-$*gB? z6q{+|w%Ekz!H9E&+}1?@;D;$bs!)8KI;!KqMUz>}ypU$lSJ2KZSw^faT(G!zez`4t zOriG#b=k-jYfWYYa}#YH&X|&A#KmXJz)0*{UTdWHW z&X%zY&E7M|c9N#c$c~+)FOjT+%QptN0BIw0Bb_(0h&bK$EMY)-tW_+s_UEvHdx_oZd4Ez1LX}GzD18wDeZdW7{$^zI}b=^qy7d zy+Iw;aiLU`SPTP-xQx9QHOYk=;Nr#R%W>?48?@df4Hg)5(fJgl>WAOp+s&>e(bl! zTO`yez)EHVvz#1Uo7-%11HF^Se`Iub+rI8c{_&zh{B4r$;<(L9W+StlIJp{(w3moa zDN>J=sK2C8{}ii(l^oXD$UHdp`C~tIx+j;YzpPOIH0gG7q-Q0wfmu#{-yMJY;=$f= z@hK(ZuPDSnL*gAA0b0qdXO%Bw}`)WoB=i*~5uN+u6&^PLnidpN=$5Td{4@H0dzg zq`S@Ud~XRPMVpb^=X$T}{o|1@d<@`#ya58F1On&W+&A>?ANzT<^S`3Xy9x)ml^x(B z)55IQwyCXw4w3Q$yz6hhibKBJdn{9B6_oeb>$D0y%OEpz7!NS3tpa|@S=cHx&x=l; zv9R(jcBrB?rFG>k_9nGZ%Mv|ROgr;iT5I!_w-zbB()9KkQhwLj;T{@(i!}^YEdA5Y zJmrRm6dR^@R=0+a^w99ztYL_rneZnCJmrRm6&t4Gx?96f_t5Y=tYN5PIihyvDK|W- z*zj=Ha9i=#{%3k<_+4r;%rZt*Ob4@C!^q_GciYD!R&Ds>@2O9~`{)`x4OiW(5zI8~ z|1I?gI8H01-_r;UKhX#ef1wfj((uHOHNv>RsfD)}YlKBwjqq!_|NmSXG&I~!wg39i z@cgH0A$A4T3D`-s1czyazla*)ih7OUr2h}xq!vaG(Fm`{HNu>zM)9SJ zwk(r(8C$rN{61Lbm&P+ zhn}Q#=t)Y4o}_f>NlJ&Fq;%*>N{61Lbm&P+hn}Q#=t)Y4o}_f>NlJ&Fq;%*>N{61L zbm&P+hn}Q#R)C(Qbm&P+hn}Q#=t)ZF1TNqP9^eJ&U`iJN=w(V*3-~5N04ksc24DmZ z-~@gU0O~eE1B}1~Y`_kjzy$&z2x^WJDxe1jAORb25yjWhjX7b!cMvr|1$00UT)+(k zI;wRdKvuL)0#4upDl4G|eh>gM;KPI(Xn+A2fdp*81>C^cPMCm=D6Xd+b3DKcLV!C; zsDK)Hfe+MzFwh<&bU@$wE;S8;AOymIZzHro2Q>RJ32KfKDxe1jU1ZqJ| zGob=HqPU)V%&`Lp@U#+M!0jh^pavRX1rl%pH{jX{9;kpC7=RH-zy|yv0BSl270>}a zumCG?0vF(pm#rsH6S@$n1-$h=dYym-*R;!UW8~ z4LpDk69Ui!1CW3XxPTi3KoIba@0Zq7pb4D@Xn_fsfgL!22Y3PBLI^+uv_J-Rz}iMg zpk^!3nEeHck z8({@*-~nO4?I-lW0IWa)F5m_M5CpXG+Laz*EK0Jlf z*4Mz^Dw00*XtbXW4luxhCOFs)M|vZpaN>30eWBnCSU3!Ylmnsvx|k4&J~WC-(~QrW$yQ z2HviNcN*Z`CU~y}?z56Q8%FPUzz4nXF^RG=w6EJpogFxUA2UA)!Vh&}@)INcxf$jy zBz<%fHsAm*;08Vr1YuAQgeF1-v_KDxzzihd0B+y|K@bM@KxiebVQT%CcKDeSe(r%^ zdP$uhqrVSeG=$MYEk|RQ`YA)&&HqSpUpfIdxn1|{dDx{{E_65$dUZv)Zysi z!lCq`*dhK?Z!EOe&s|QrW$Uz4G4NjmaA$H|B3h z-4MN@aDDpv*!6kpB~ZRDdu`%c>DtUG_7NDnoWDGMS@g2}rO8Vpm*%L4Kq;AROSH*t zxl59lL@vo+oVqxAap9u$MX`(ci!!_8yQSUP3lkU0r+B42zcaNny0fq&-PJ>2bbCIL zOvuzfV7!%YO>c{C%Wq9m?||7Yak^rjroI95XD82&oSi!>K|KRzHpMm-=-T-L9l_D>EzNE2I_K<%#9;^4zkvWszn1rKzRS zrG+KwC9x&^lFZ`xVrg-9QDTw2D7P@VFtRYeAhjU6pfEo@KQ_Ou?239i7K`z*OmqA{ z=o65ek(nN!E=|u)OH7le<)$X5MyBScq^3lt6eg!9$0qZWGn3+zq)FL{iHY*WTr?St zMDtClrf5@PLV7}MLfh$))AQp~||(Rs3{atd6hC$Z=Vcv*AQo z4(DpQ+Ds@Ol0w;FA}9xQfn*>O$oo_NsK4M#`(i%cm+{8Ek~ix~cw|q`opeXsc~{C6 zbrqaxXUy5=h&b~0ls#%M*wVI`jkjf_xFktgYr-m9bC#qfV#%9R=BT+~N}FOP-jp%M zjgm2INEl>8PM_3A^m$!M7u6NCX>Cl)Ycra-M$%-}3AL=wsgkOQDqoYTiPjXvv=|e4 zF(bqUNyzdEUgmRjT0i5ikFGq2uKz#Yb^U)JUH?C)>8I?3AKwTZRW2R#Hg-+8^C~gI zEUJ9r%zN24$(`RV7o!KdzDMDG?5p0+FMo?s6uGko))9ZSDw6w zeV5t!?Pf8md`HJS*_UsfU&j@r$`@%A#djRF%wkmewu_?p8VenLcmA;LRlbsw_v#S_=MTvU2@6*gWW-u&5_PkxKr*u!eN%~gxS!F?I%YBYmJ;=HKc|`X%wqIyCFs!%foEE-XerRia_ePxJdTi_y=NXe}3@Xg_8#`fDW`=7Q|8uo(S9iF&wtnqS8( zM!!^|)ZrIJ>zT#qZ%|@mi%|hrq3MU-zsqTUEfX`?J`$Cvi(5g_FtZq~DMeSZ zC@e-*rRXXag~g~^iMqKKnlCepQB5ftXHi&;YD>}8EDDQJof36%YiNF$S&ZsS(X}iJ zi%~-L^7MEDDQJXDPa!MPV`OQlf5d2hEq6#i+X!-N~Y`81!-w!>nywG`!96c(d9N>RFALyv{U=uRanb6T1|fLV<0Dn)fH3X9Qm zN>M$F!eaDXB^u@oG`~Ny7(K5PHL@ryM$a!rO)LtF(F;mZGmFAv^ukiq!lJMk-Cc@W zSritd7nPzCi^5{`;!@PcqOcgfq!hKYC@eK-k!eTU8iaJ>o7NeJzqAnJN#pq?F zsGCJ$F?x9^>S0k>j9yWSdRY_}qgR%qlv6}|5Ei3Xm7;zYg~jOArD%XfVKI75DH>!^ zSd8u|MMEqKi_vRK(OMRT#prdVXqZJ|F?xL|DzhjoMsFxZ>sS;Pqc`l2 zMsF)c`?Dx4MsF`g2e2so-~2rDJ6^bhh6`v|PQ&RmglQ0H_|Zn`xL$ zLn93~8ov6H7k)^?b2QvV!)_W@($GXh9St=!eD(z|yhFp|G+al+RvMaV7(#=ChCly? z7e1ol1sd+5;bIzEXqZSt0}W~#KL4B-zC*(S8g8JWm4>-A45PtC!(V^R3m?<)5)Jp! z&_=^*8Ya`wn+7cnUwp<3@6+%U4SQ+WPQ!c}M$q7);qRaF!Y4GmLc@Ljm!)-L2 zN5fJY#?cU>furHq2T$8@uCax?ul)M|-V3>pkAB1s7t`Krk^iqZPdAUC8UQI%S^lZM zjdG)PZIm1BYrK_`ocB|1w5o-2qdiTO8yz@~+~{V?jSe+FfO(V~?Q5spXhS3AM(bOi zpukbejc%Yb6i;2_Ag|;DF0@k8 zJJ&%;@1_n)dNWO&5ylSi@jEdy(VI> z@z`r->@^Ganh|@=fV~#LUaQ4k(_pXpu-8J^YXR&vANE=Rd(DKsro~MtAA2o~z1D!eCROgWvh-`ZjSuV;3nlv`|E;3gQp)(+c=k#a3#ERp1GbL zJ-sW2>%m@JXZ1?Q=|TJGL3d(n*aMy6`JB@O{2&Bsn+X{>S_n7rfdB{rPvd;f%3gqd z^b*|JwVw1M(7H(UNS|hMw|QP#UP{qQJw`33%%{;>UdAD=MK+Vc4c^VH3MK4G4|L+m_2%bw5BWIJJ=W&b?7<)X6y2R54~bxKVP znzqxlq4N`srW}~+d>7G_6H}e}{WRsmRG1yUH07o#ozK)+CxNCth;|k#peZk+{;uC= zH0?vQ_`H5h6`v`9WrL>TV}sqIRz!=-N|=(Bbucv3C41UO`)CK(7Z0<##(kU$JFV+; z8mn`(>(_br+0O7jdNY^a%Cw}5W|jYqQ@6Jf7=FkSXBl zgbjm8mN-m**}kTq<2ECFQn`i}zpDvO9cX$NBp!>K3GT$ve`C$hN|k2;E*(+LYax+7R7PSf5-MSr=VfSd(58Tf?u;#8HDFwg2kdoRlMSKAZ|i!-d*(ZLF5B za*sj6*X}v)YIL^R+oj`{MsusNU4Q&PybFNiezo#}cg~~h|L=C4|995^$CXh^;b6(+ zjUy}4GL-Ask9Hl7l^HOli`y!8iQBw~1c@?`f-`VX~wU#N_yDiWyBV8@jqt|f^y%Ci(M3rp$}yHdM8r1{mFHn!Dqb>%O3DXpw5%PY*T_;gi+c)7|7C|PCS zW2=EL$;=$agUo6xP|DnFo;PvQNz%%c+c1>vRhn1Q%1ZZUsMsAEE@rjnN;!N=bCFfu zGRwMEhfr?vsMdDr&JPvqvdqQ&Puec-=f=vk&7&1BbLDpbkY3u(`$|;o?h+UC)Y~3b zw%wIUo5~F;)wa8I*NTeWyW(P=dfP)*mA1Qk&L;QGYZco~o5_BZ;~R&Rm37!AGA+z% zZI|*UmHl0QfR_%qZb$g*RaQYc!hb@mz_ZS>%&h0K0JGXEl=3F2=)%0YlPdEjmHT~^ z7h7pvIlyttS?5haDt0T7lUc2`(kEzFYYS#J7eB@*bFy2XM9R%X)tWBdVWeXB8M&C% znl8P!x|*I}o|{X@cel2cTa~J{UAlis#qMHqGpn^-N(}C5d+wz2#_0g>*0^#fRJF!C z=r!-WJxaxHlA`Z{X->7qOBvZ^8(#L?nzAU%TIarbr^@lA9O5{>EbRCayNRwvI0t-jW4M=p8Gv%rT>}DOJ6pfAeNenbLe> zsg3VcG^I4Hl-l?mJ-w5I64Sx_@5{lwSJ56lG5b+oTWpS=ZJNl`F{^EwhW;7}bZwea z&!BumyM1iDU!`f~W1~P#^W0xaGl%gYvs%-gzZg3kn>TCDqbT=E-vw z%`UcH`Sw+AH>}or=^jKCyA#pF{0~~67hPD|cKQuf_V#W2mvTE}wbuX4wjHWiy)X~+ z)LWl7fAYj7#cdx^(YkWGWVP1+LhW|mL#bkSQhJ%yT6c2Jws6-0-g%Tw>E1k@)zp@kgA&ujJdf*qF)Lftw$b6lp(4jgYfDuu z{w(cZ0d$n- z|D0MF<zNHbSKBEynqWu2_!?nVX-_QsvXvn{=5!TW0=Rc~2T{f-o z_l!okgoYX#_UzXPRvK{ptQ`5(!SjtR-0I)r4%n`r{cm$$(2K!-nx=45+B!#<^E9Dd zA;6U)Y^i~96Y=v*`g*}&Zy4$W z!+l|0KUm)%_8I_tp9cF5g#8A=nS}_3t>N(P5%4D?;V(wP zUyg>Kj)9+zg`bauUyO%eo(_LM0T!CbuI^Z+ z8uM98F|lPC+`1fYTLD{F!X2yN&K9z3OU&oSG3$cWaQ7N`$y#{nI(Yedc*O>I)kb*D zCV1Uh@P@NtYBRiL3%qM9yn7qGrxo6tfcI^O`*y(nJ7Ibkyr1J@ob~}8J}AJ4MEGzG zd_)BwRl~ai~~OFgwMI) z^KSTp2fpZqFZtlhe)viNW`ppx5PZEBz7d9R%J8i^_;x*fr-9U1q+Xb?^@h$q(A5{Z z`$12CvTHjm-T|29I}Q2=!oVOH91KH^ur>n2L!dkq)(wO8!(qb+*lQ&0Jqq?24f~FP z{l>!nf;P&P4oE7l= zm2mee*wz9skHf21!)w>T8`i?T>)=i6;msT1?Hl2po8aANk;+!wb2et(yBY4^0`K1n zAJ_&TY=w^`;N#oj6FcC6o$%l;nBh9e!#q49z-L7GN)0@!g0HJdN(86T54G@^4(9am zdj|MFM)-Xb{DB$%&;oyCg&#@q$2Rz}9sa~YDqHc16SIEmfE5 z0Q^-Dej0+G)xv*-;Xh?kW8GDUiF4}V2MzGMz2Jwv;jupO`+eaL`oSOeCpA+40hkzY z8XPeYjvNF>4Thr|;g|>7;i3s}X%k!2S{sc-pD~ zoEjp#w!=QH7PF>@;S3p`Q3ubghcg@CtX^<-Z#bt9Ji9O4+>g{a&g_qgnFHXg)8OoZ zaM2*RcraYj2)9Pywjr=}C`=54+lRv)BjC=FaMvh!&S-e<82I5>cx)W0aeh1=6Q7+< zc5R5WFafjv)`Yl=i(!ML+=deI|KU9gn^kbGz*4j!@4=J zp&9m$!M=0hfO&A>d^mUk9I_A&TLecehD}RgbSa#;3{F}OC$E50R+3%Y;hMS%v!=Dc z>2Ww?H9TVtJaa9axem@+4`*+Hb2h@}O)z#AoO?E$w;9gg0vBwB3%9{lt*|8l*IIrVbn<=jh&m!y}PUd+Fcd_jI8`+WR) z{`vHC(dTl{CZ3g8g@VGKvf@aR+V zr}(GRPez~2A4ndM4`iQ+Kfyndemwek{;}j^@?+U=sY;M|Kzg9*{(L%-meQI1vHgX8 zseO@sx%(1ytvPdV?B2pXse2-w<2AXf6IV-DXReA}Rk$*BWrS+-C$5m_+I8&m!ez}O-^y=IZ;5WnZ%%BM zHfPR`(RJ|DS&_4Hn-ZJ&O=+sppWl$&AaBT0g?@g0dR=r~p6c_r)79_-)fb4Y&czdP ziK+|4S_-RDbj<`+`sI~bsxH8~d?~*)y(GFMzc{&AUffKT`cqU> zAh#evb^0?@QJ^p{MKuL-a}#r=xf!Y`P-spyN1AhU5_6d_5S%`>7mh~`61RJnMjN({ihlujk&=Is`H;26dP0+n4&8GxziG-NvCB7 z#0C`lr}{_w=lUi3N&PZ?V^r}!)hE&?*E`XBKV8MoQ>}lwAxqcr3w5cw2wlNXP=$a@ zI7Zj+lT`CROBDk6P?{?K=czt`9LQ3=|AH^&i}-S0&YSi`J$b4NAiJ}!xQlnCol$4r zk#xw8j6FtG0aCVzEhiF4J(E0zO-ws@K;hQe_mK(n9fggC`cYW|fKRgzIxgh*$2>z@V z{yYpjWcbTE_^W#OX#@PM7yNZ^_(dQ1WncK)ex#;d=#L3;0IWF;ss=*!AgCD(wT)00 zf%+k2*LJiUhGLd+7_0p zK0IduJa-{HZxK9yF}z?2yl^Spy$oKo9A3NvUa}Ilt%AuGcxfD7wi;f(241liUbzll zwH{u*0ba8a?%4#dJquoUHoSf_ykQHxaVy-r4W?S*O$m7Oc2e1lTXta9tvlguyWs6y z+dG{04j$eqz`I0vcMZHp1@BeE`!sN$7Vg)x7XfDahqgC_Wp89r=*k67WO5`4@C zAGgCN9Poe>KIwu_x#2+%Z1=*94<7Qv!vRv+j3YtJdO8H3sfEvm;d3&4z7D=n4_|D6 zFZF^i_lB?Zfv@(3NBhCo`@=T|z&B5WZw-X+4uanq4Bu;n??>Q=L*TKYFgFZ-Z#ewH z2>8R1@JFNIN2B2%#=zraVPPDpY{nnQW7gNF!#_`ee`$h$jl#c8gnyp||1lZYliw5G|Yv@dC)W;nioLJLTFtCrNz*; z1lpHE$1><#PIhfa#o+$*7H74)`1UmW^Z!@wFCTnj_%VC{Ms-T>u|ux=BqKMOXT z4SQ{dy|=(VTVdaAuwN_epMV3l!_#)afji-#U2rf*g+a89Jd6l%hzN()z+tE+s~xT; zmCYET!K{&5I7$ac>){v!9BYK*OmMszo^F8?tguOfQ5&3Shm%mKRy)}Vr=UiOcB&gr z^T6p|IKv0e@WV3$aApwB3c=a6a1JV)Xq#mitAlgv;k*VozZYE4n^ZPqVIRy|)E6%9 z2bc7RO9#MZr@`d|;fg_U?1EPAIBDmhLx4^ZdTO9o1p{gr)WDDy$~su5 zhxG>7V1&I)u(uiZvB17ovTHjI^^-8GzYPws!$A%>*a;h5aHty&^T6R=IKl@<`r)Vm z936yXLU39woF0ZVWH_@9&Z>vA8{nK?aBgonuMeEx7cS}t7x#xt2Ee7K!DR#C@YVyovDqN$|jA_~aD$)KqwI8f>2qGc(|!GvMJf;WIPgv$NoHv*Gh|;7iSs|QM6IK)SGZO7rEe#{yXfFpx&R0xi)h2z3- zybMpTgA?juQv;0lf)m*Zz+w9D@X=RWUgcj+zY={V|8nwW`Q_|O@t63Q(k~u+A@PFr zLgx9{^M&V9&qXTE{^h5$N8(5LBWbEmm_L*}Bp=FBZ9+biZjZL-sWPE_u$ih7rk;#E znLCg;ARWj&5qqNWc&e->VeHYuBdJFskL2jSa_QmBLovFyJoRAY!5rORE8d|&q7_`UqS>3gF0J?GiG;&<_PrSFX1nZF}>hkQr& z_W14m?djX1x3%6X-I}>2c1z*r)XkBbb2lY!lBg14ELGT>+8d!dgozua8#6b=s0v}~ z`pEUU>k@RAdgj{LwS_&YJ&`@RYq)FDS4XeTUzNN{zAAfV{7U}H^cB%7@|PzsmoLv= z7N?&1(w9ar%_oydnQ9Nl+xWKhB~hw8n7CNFI74*@+jh%Tb1;4(e_{H9DD};kJYPOP zdtRJ+=1ZR&JvV<&lKSP#?uzf?ccrP;V17q(hrA=ZJx)FJr4!LazSY{A*%sSYpuYJc zTXS0yTO{h4FSfZr_raf7XE3)Ru|c99`eN$~>r!+#e2!`i?q3t7`hv;T^6G3nPSpj| zEzy?zswDN&mt7fO$*)XPAAR}dNvbWFr5^hDWofD`m|v1yA}`5OT|s_vBh?g4ER?99 zz8F;$OwEr_FMWx5(!9*v*xW)a6^q1j%?YX}n3)rsQ<$Ba9iiU(60@XPnVB)_t1ort zQR=6UKO;ROIwLg_K+lpmTNax9XFNRbTn^H&(08XOs%8{)K)isuh^)o9HX`%}{@Th2E*&k=`x6_+IITDE0K0te5Ey{y0?#Ov_Qae?J+P zsn5SS-Mya!3n z2-E_hgBJX&NKz4F8vUmRqgtZt6Y$_a4K$%?=Zy%MfEieT6-dAa?7#t>z(Z)wUX1#H z9|S-Ugg`9_0~zofmAkJYw0;#v)j$KZKnL`|0F1yybggT<-;6mHU?a5s>=<L-9 zFzN+9;0Hkv0;of%3j-O{0p3aoKm;`)KmqMg4UKA>w3wj-dSC!XU;-9k1ro3k%DOh$ zF~fAxtxui=?gwsDKtTSL-mU2PRB!Fk{pLtiX<$ zTO1g50uQFQdok(*eh?s()!iP%oDkre2p$MP1T{bf)IbBYKnL`|0F1x{%)kPyKms;k z2M*u_F5m_p-~~S52LTWyitEX@(i{PZpa!Ub8fbtP=zty=fDxF08CZZ7NWcc{zyX}V z1>C>`yub(iAOM0O1o(DBAd2fLVonWE0X5J7EzkiyFaR^5ea(VVE0BN#Gv9Gy)CJtY zhne5?V>AGQfImtzzb}yV=|a>14Q76<#i$PGfdLqSiBMMdV>9MhfE7r<2JFBAoWKR# zzytgQRb<9!5QG4CjAnktlR5#2pa!Ub8fbu?(Ei(iQ6n$`Gq3?1BB32pgHa@~>eN63v_J>+z(i=rnK5bsRv-ZzumdE&>fD5O zst2Q95Ww`AK~h=SGeekP3-~YvV*;rYff~~b*&pMF79MJQE=*_H$!FzfbI&B7X@5HQ zH2-wwNQ}<1Gl%1crNh}n33i^H$jF&od$K)3XWFT*J^&(5<>_oY`efli`atXePv_em z>})&#Sn9FJWBEsuk47HNKa!;L?fk>3ha(T?A4)wGeJD?7+|dUM)C)l5f&Bfc`y+JC z9eLe(>IdK`>jfZ3XWfze^7p2wAArI=>3d@L@b_fyj^8cOnRntY`K}yYd5_S!cj}JF z9eL^tAbNY@w)AbW+xXiWZ_U%y_b8ozr&(VBnVaHt2A)kNQZikEPtrMf{>BttgD>2W zrn7MVh74VWm#)v!dANLCj;_PE(^YtBPxhL`H8Nd^PhK6NbMe$wQMwkNzA{E<AF0BeumD>rSr0MWnMlvN9X2|b6R#uyRvj;Uf!9bbMwfKJYAcQZZ9O# ziCBV9WT+pcGbd5fGR$)_`dIR7$Wj4k) zN*l9uo-S|5txv9xtk2V#dURc3ZF+5NEx$IiCcZ{mlU<#l^YvUj8IQzUTBMfjssx>{ z<9dB$Wqw79&e#jf)5~Ma`Q;fpXP4-jePXG+G)HIc5xQ!hS{z+mSd?BATf{HQEbJ)j z3xJ=WnHQVK)46+`uH9#2iI^PA(%HMruHMUYa-%!=T(3kgxmT|18h?V$@^f`b zy2_uIQ*@r+8b&Vw$=XP5K9r*K{6etvI)5q<4HW!of6UMOGrqV_qI3O(SN7&S$*z6? zWOvS$bhSI-V}!2!AJ^l&zi>hi0K6unj;ndP_8(VCs%%ZXMykoOtN&RcA;?0GPj+4ZfANjG z*6uboargeN^ZcLX|2HA4r>nzy?wcPSWK*1yic^^%qT!J}0VSq~*>m>9)aZ<=-JO5b zLz`OGCY0z~RCEjuw^Q!oP;N-)>XvNl%-EPaY3PtMCq=8a`Qski)UkG;M4!@ld0;E0 z3vQ-%D}K56yBYqPA~7snV>HHfW}WseTk`<}e;& zR%=$G7er#sPNlCJqqC=-kT>|#iuRQDmApYKwb5B-U&V^;dzsbR>r5cSrWM<395#PW zDZiU?jz{z>ZSKF6lKsk?rm}g7n(wURui`N7VODFtGjp(8^F!v(8C}etqpag@tt(vu zRBPSFHXf=t=w()G{UjSddj6bJ@dosU+^u=4BglTLHDBt8K*eF)$E?=8i*vQf-S>5b zwmwp-TS2LdW$km{=#>rDlNyS@0G>3iK~oshrx ziz+Lj9Pn;h37!j)W)9;)X0?^*%#%fnNIW}9*WbUaXijNfIo{E+LoW`hm~`(MjaO@~ zw9A#|rYxS1ewme0A(fqf|Eh=POZ`WvIE;Ik)tWCI?@IIZ(LMcwV(XQa96s%#^-}*7 zDh}fzX0_I-w~Mx3Y=Kl)nPqD>}6OOX=`JIp`~QK!Doq>;*%`VLZsJ zwhpv=+8Rz=hsc@bt3X++-3oaqy=qijg&;NCpLMvQVuqO2R-wwv5E;>J9jH=H**b9F zd|t6DD&KoJ)UE8W7nv4jwRPysoGm}>OK&}8=bZ4)`%RTqP~Lemtpd;WCe0ki1I%ix z&{^05t3bcZPg2-I>8wO~(UsPfH(oup(Ak5DiuGgSVpeOdv${lCYjY=+b$Va{big#bVcv#_q1xc4uvgvJEdCWM%uj+n+PPud)J4b~fGPMaS3} z(#m1n$E^03n}NeW{N;9HdiEbGT2fk8(zA!qvpYE`F&)hRK0W(*5A6-5mO>nqm_g=t zs+h6kBvms^)V;lr+rDncy6xwzTf3_9yvE4(Dp}fv9vU9THWW%6bTHRYR`_NbDt_8( z+VB@5{kb2l*4`g`Xm2=c4@w+#Fgx2@UC|s@YHwn-_WsmEdn2d~4+kZto7s8HRy)6- zV|LQ)`Hj_@{Hlj0N3tfN#6dUnRGO^17r*YI$x*CHC~?ruJe4MgRNKlw_t4~MY9_=% zi5X;``Vl*_d&6|Ox9jxnFBJ_d2Zi!?Cf@iu_8}lLwans&fbU?9kiJhN3_4vSyf|JX zOsC-^qej?B!yoRZe0_sPa6Un~|30nY`Hn`o`^Org_FavT`CKgw8l@E;pQaW1jMNGb zOw|g#KGO&ff2|QleytV`&DRP;YP7=PKWT*FztjlN{E=z|2pZwTghp5v)d-(AYJ{Cl zl>bk|(7j{7xX9ST$>rDon^tqHcvP0457DD^K|MhQSyN_IdwsZbj8%P|&Zbf6n8r+A zR)m^*381;X%z9Q}R$w)0Z8r8lRXy%3TCD2$h?}E3{uwu?w&N>q4&N&9bHolSKL@u4 z_#dXK$(_&WGX+f{D#QD&&&i&Z=eZhs(z#lC(zzje(zzTx>0E)HbgsYYdsOILq_xtS zW8Kz@9;G_o!8O_%|G+iM9si_WeU9t-M#E7L-x#1r)m~h=xEhPwv3MO8=drjEiw9|O zulM9_Xz(Bh9>j6~;u-}!$b<)lPTGbRi#xG6kHtkSZpPxZXoG51pKLpHc#sPZ67ZlJ zJjj9vg-_as9*euNxQNA7Slo)mWwhZxc^d{i$b$#f;6Z9UNWz2aPTGbMi+i!S3X5y7 zxDAV&spP$ijwbp?`?;$SF-jw=S~hTA57oZ+>YBE2-T>9U_sUfJ-rK8fC+8LSo=dfb zk6pldtyKHoD<5m)yk;tZ?{zj^MNk!duZybSdmU5--)pBT_}<#4n`n`in>lYi)x-Dp z-hUfa6{mXm-a4v>@8!6AXyN8GHN-tYPtfupJt8lxU#h`Cj+_I^Nrh%Hex;?R|K!*v`6|VDGdOUK>+qh5M5SrB>FV z#L0tBE9*7l_i`Fku}_ss;nVV-FssIm zwLURup~vW0L29KSw!eJwZV?H~qB?%5gg4g5TmFC(!&Z8ffy&4$&+qHLczNX5ZccS4 zJ`PdQy6jNbw)aJy_1*MYcVf^_k3vcBZjZ2(KcX@iphsX&m9^mNzI^wf4J}+uZ$DPn zn{9^;8?HNk2^Xl{U$$;1S;*XU5vRMe`zGPRb;rvdcanHb%ln*aU)M^~@+O+LdiH-p ze;^+v{B2)w)|$P9z5TD8H2|EgYTg+$TDD?o?Dq1HJ`qc6 zuyie!ma(*irB&98I2G1%54uSx+rPD8`uub3?ag}wO?`Q<^H|r5f3jsAdlx8AlA@g+ zqs^fH7O2E}secLOSnl1vi__GjSUcumuUgON?3%p|yj@FZ_LPNm;d-8q(>rNTpjCbG zm7#})@H~6W*A$<}hv(@-{esvv$9CZb7}E9IxU(6t@qGGxq!zrY@Dxs@-@NoBUg`%z zXKP^F3y^>vIDs4Zh?>qm zHRu7Z@LEnyo745yqd!<^rlx&57U}#Hr0GEO8JwlQeI{pdG_K|>qIC^t(d{LKrb{`C zruAyhVr;&K=5_4hEc*8AIE$+N2F?=No8m0t{Wo!zK1XlnEbg{jsD?gw8)tF0-AOdx z%~>q1`{)V6Y0hG3zMr%7+WP>_+y5Xf-1-n_@f?4cp6b}+RDb{Y6P%^NdW7aRKTYe> z^b9R`j4(7kOHaT($60!}JkMG9<`-!F+Fs%;+V(f;`S#cHme8?!eDcuyy0}5wj^4b5 zYhu5B%I60;_Ay&N%X*ysrYWB#A7j5?%4Zqq71Pqo=%at^5L5n03)4#%s5v&13s9;7 zXXxrSg#JFnpN90(1`%(dmo{Lexaq;pLqv(nh>Cc$4v*eL8?hUmY~UDU%dqDN(Nc9h zEmfz-QV*Vdsah;0U@2qUee}lm(ecQBC3UTdwym`7Cj?FO#2PP}rFE{OXQJIghl3r5 zgMh<9i^GA(;h@IhV8G#^#o?gC;ZTFaA&A4F7KcM`91boV4o(~n4jc{+91dn24q6-z zdK?Z7I2_D499%dY+&CO+a5(sIIMm~CaN}^O!{K1Y;h@LipvK|Q3x|V%!$H8|puyqL zfWsk3hl53f1E9fLJOGqU3zQB3WtOFM04THSN(X>4OQIL(qz3@sLc36pU1-M6IpF}P z$1YYQZlieR0U+SfIz%mabd>|30lQX1OVtUT9dXc3`u}c)j=q<8Pkt}{uJms9o#fk* zxASi$-;BJOeawZBdr(ce}%)gwWtO@C*?2CyPPtyCPHxAw{_mg*(!B#HbcRhO!}~+q1VNZj*1z-I}~L@-6pd$a`~?3z5D)Mzs(! z*TpFtB71G*+B{`LME4Y~NnaDYhQB6rb(|_9WUrDaBO-C7d_|73ArhBmlIgY>ZC6OWPJl7PTzM&1;++i8am1 z&1#$}o!K-aH!V3WLKOy5lw%N?lAoNS`T~VX=}D=H(TRmPF|DKa zkBCv;KxTM+xI}dW5|lZR8=4#%p~?ZNA<-d)NIDXW@RUCgZ$9>v1^M;G*`v3T@^M73buVa-wl`k`t|Eba74>B-$3 zl$b8&|E8AY-+O3r8nxx*pu}`A|NF0F|54GNvOARTnDFvx*-I%hHOy)+W#{F3yp+l= zEWNDV_TWFOG^^~vxzsGrEh4QP#=XpQxwYT22Nz8~$sYVyMMFx%${w6gPwwQP#B?zK z``7c|J+!xgTJmsEV!D~UkJ+$0H?Z_NdF`dk6Ez=bts&uaG=E#t4J9=0})0!Td zj@|G-L%=gQOxw`Z8EG_CxWIE$L*xpPS~hjAaXTGJ*D|IpZ?ll+>nRJ5hEt^AtUOwS+Y zpo-~WR%@$tIJ368eSB2@p0M`N@)l}S=Aeq{WL9gr^vT6q{`OxKQV&gUWlcjB2c67Q zZ2H@OQ`mZFdK+sRsyOImo?_GA{;R^?L({F)Tpb5hOc%3S)19}Y6c4K&epfhpXgk5$ zhAIxan5Wow55Fv&J+!@@wGCAqbTLn{?H+zxxO!-N2el`2P{njItF>Kukazn4tNeB0 z?xE?OtZAs?pp$uuO`r7l#XIyzI{mc$%hN;CyI9ju#X%>td(+Z4HNtJLXaqkE`##VJ z^)x*4zD79hCAz-n$3g{}Hutc!x%a)@y|C4$%lJ>DvF-DYbAhUH>=p8sVNWuKTM6 zT>g!H{j+~wVr=0)|6^JHf6E74ZDAh!m4NL2DQ#Nh_lwBy7m=VZB0pb5e!htOd=Xa) zMO*+BacxgTe!htOd=csSBGU6kWao>>&KHp+FCs@?M2@_O9C;Br@*;BNMdZkf$dMP3 zBQGLHUPNxZh}?J)x$z=W<3*&#i%5+Zkr_{Gh}?J)x$z>>;zgvzi%5$Xkrpo^EnY-g zyvSP#0U#}2tN|K;e0UN0@S+|VfDs@SUbF%U*nk~4fD<4EUPKDKh!l7cDexjv;68tcZx{v6p`F1b|!afk=7|9 zty4r=r--yp5ow(w(mF+?b&5#q6p_{`BCS(ITBnG#P7!IHBGNiVq;-l&>lBgJDI%>? zL|Uhav`!Ieog&gYMWl6#Nb3}l)+r*bQ$$*)h_p@-X`Ld{Iz^;)ik)elS|oIeNaz#= zfP_vF37sMmIz=RO(n0+lS_go%K@n+#BGLxw@FtKpNQXCJXeNxn1k6AJHsAy<;07Mx z1wP;h0T2WsP)pEp7{)l)O7K7cA}|9BumTC#fE_r16S#mI2*(K#)BqJw0}apu9nb>< zFai@W0}HSM3D^i)Lp#PDzzJNy4LraLOil06QveIF0twiF9XQxz8zzAVc!3Z2K^XA+ z2?2zfS#Z=G+C>`yub(iAOM0O1ZqJT@YWCLWdh_<-0*)BqJw0}apuCvX8b@BlACYv{wc9|S-Ugg`9_0~yo-u9@J007Os& zR6q@CThQf+E=>Q4GLX30v<1Kp9Kd*V0c|cY0}HSM3D`hwcp)_pWKajVCV~e75P=rx zfF2lt5tx7lSb+p=zz!V130%MpJirTlAOM0O1ZqJT$e<2z%>)kwAc7j80&1WEI-myz zU<4*$1`@CVJ8%H834cZa7jOd)@B$wQf)J<$VITv(jSzqcYJdu8fez?_0hoaWSb+rG zzyrL%2mC;Nl+XawJrYs(i1sCcvPZNp3EWIc`;tJ}BN0`PL{vQzQK?8oogxu+ibT{Y z5>cl}M4ciLb&5pPDH2hqNJO0?dM6U7Q$+7S0%eLslqsV3AAvGO^!_7Irik8u1j-bN zJV$>xpdybL0<|CvP>_c{&5 z>f}WZFG*f6#Q=NRiJ##RAP&$}>D)E&3RPMXGOpg@@A*#~$XXZeIK$>7nd{i3eq>oTudRNAEAB)9F~6r|S9f z|Hs;yz_(Fd`~S|!W6kxV(Rh(<*^;g7Bq3PNPFSpLB#^~&9Ck>=zGFdH3MokJ37f^f z#|mqKg2lcQwUkoY(ulUS^mU2)+S2X4Mz8xq^FO~U&q$hhEZhA%pZkriqkGSpnLBr8 zq~ASvP#;W>b1r}AzTCaZd&87TFLh7k9{ry5-O;-PcW3U3Q#So9<G_9HqSaneB1Pte4%E*cRHByD527_$G<6>qm@l zlPSM`{Q4ke*h^d&q73`VYr~XdFGV@_^=s1cC}r8pP?r5*EPHi=^6cfVN?sMdN}^1A zkuU0BOmB@+w!O@i@iENn&r;6)&?URK#J2<~>t5pG5M|v@UKFOhd#Pw7sz=lP(f&Yx z=EBVv>XdswdO?7)@5Rp#Quh7Cc_GTbm!$mr(z&T~BIoGmq$vY`;Oxv<@w0-IgFn9- zeUh^9NoS-^?;d4te|B?XbBMC>CpU#RNt;rXk58w3{LzyFCuJxjUyw5LCr;=%VfXRz zw!HhJWg)$Wi)H=_8{@29C^7p8gPxH&4bSr5Bfdw^tw@@){PpGOWl_r3pII7T z8eEzUB|;&}*q7`McT3$V%Gj?To<1ykSb(zj#}5r2y6ceWA%R0Ol(#=fnfnq4hYrpy zPA(2p?!MHb$ReF`_eUvvUuHpkL6EZd??2anuq)gpQ4aqIW${aQMmqzP#XnAY{IYWr zb3&BIKS`PVqytm4Bb3QMO}YF6vobT|l*>O$+5AEWpZThh(Z;W_`ormQF72~n26WMjBdYD_hBH{|M*l;>Zn zPt_HFcOQ2L-C4@@AJTHJBnkE;%Jv_r)oar=QOfwAsg73%tFx5zzk_oA$9a%v)r1-Y^pLHZ0AxBP5Qtp3APDv3-m(nasPxzm2hz4Tx{lAtg z%>SRf3oDBj{lqMv%#8k_c1xL$M=li~kAMmT8wE>09x zQ`sf9qKCE1HtsKaXtOvn92;MmUrUWQF;Exu2%g4HXP2_G5o_^JEWd!}@)bv~UT!;& z$XCYWb;2X4GteVA29LJWi2P+dUN1a?Is-j|WAJD@i>SSf#~XwfP-kGHAZ8Jbv{#iF zeS*w-u~$oH57E9C{e|u8DC6)(a?;E|U9d^;9JYl;*qOzL5WmNqF`6{Zj_eB^vC-aT zpp46#$eEvkx}Z;R>@%h2+imNlGLE;AOAiBe!A8OSxpC@#+nV3GbZ#u`wR1SRjKl3> zOF^B1KEbhXsbx+Wg*bdvr<8GgGdc4zP#0_wL?^nKePO>Xk3!8R!v&7HbRZH}=2r|L~=3^}4>E-qm)e%Iq>8A0{u24Acc11ShUHJJ90K z2-fH{IAUBJJ%^wwXm|AT8ccEYj9yc8C`-D{92>_*w|R;jOYC)`o8k91!PBVQL`JwB z$$!nhd~ImcvQ_)vksM_4W%xEa&ePPshk?3aqoCbR%@6NT)Y*;!on;(8BOHP{0~-a) zJG4FbgJm2(OHNuCs0%g=M%Zce?;_)v8~+a{qzWxx-aDFZu&a#EFO#=s2I_)Mf?LSn z*|s+beZ8xXpd=P{XUAL{mrlA@$NlO#jnO`NVWPQCWX+}H@!x!ZF z7AMxe`8>7L#6VrpBZ$jI{|Lip{%*NRq{_S+99DA}-=9f9;fqR^C z6O~6-P#%GePWff}{(pIcQ~u_iPWjlmPWiJsr+mpIr|h7T2sq^#qyu_$#-1Ut(J^ybV{{FvI{~y~weTVG`xunbvdYN{Omw~!qiy)rZa06laiREv6m#^5+ zH)`)Yq>R&7gi}ywV2j|`oZ5E3L(4dQRX7E82DS)}&8emT(QX+Y#ttjv^fhwiXP_?V z6CAPs(bMAo$91LMXm+^8v2mn~8yMU>REzrvhhUYU-F<`_!)GeP_YuY|Ov!CU$xTeR zjdSBB<}2h}Vm~0d8GdgOv~ym?@DJWD-g40;r;1)Tyn90yM}}kL4(2^-ype&rV1uCD z4MjzaJ~3mXUE7zI@%J_I*TD3 zfx2L`VE$JB45QN-{|{fB=vIH_n$Qs&?E3DCGCn^bZzLiTK0%N8{Xco2Sy{&8H^_^h zfx4hiaO}I+_7j#PY#bYRZXc3M%0Nw|q}IYcIMF+|RTgiCcjL|tZF__tJ0P=j@_~C)6|+Wjz1EPL7jmG(c;TE1jhXy zZnIQz%jFPs3fkRr$kcVx4sk;V~AMMhKjqi*T9zF}ax`nE$;^{BGxx@?gg%@8>eO^tiqiW*SRt z*4$&uMDP<40jMyrO>le>bd^LvlM0K{wZ=X_u1o|!6%l|61KR}07s0%e2&}n#k1rF! z&qM^E!oW7c@kOwxB!YbA-VXE8{sc<|)*g@U)*!l`L$F@ZE&@F^o6X*@ALPG09zNly zLuUW&lsC;$<)0j=$|q3ybhav=aR}x8yV5CN`^`$ZiOMsi{Xd+_`}FL;mdf|;qj>;S zetxf0KAXy3dhWlBO2dLm`H5dv$_L&}c?738N&CO`j!Jo7#wp*B zaLRg^^#46hc{&wJlE==fPM&)WJ^%0dW8wS%_MShAT~Ih_O3u_1ZFZM&rv5kWE{Xky z=wkSNlAzu0qD<5DZ+OShhfTdJ)~pXLx1OpeS$rBX7^mtl$A; z>(`Z>szo`)W1pW~CW2p)?*ka92>Jx=BFLwA-fydy;tMx(w6JD%-&7`q&qN5I!a$$k zctgNoX@+3U`MbGH2)`z`2Qg3)oGfS;LOW}Z&D{Uk_fbOs4WVUytJkkH1F6YLi{BOI<=ee87CAl67Q#%@xE7h2Nec33y#P8@)ZT|bP5!CXZy~u zc(?XE9N;=}upNTBpq+OuHiHJP(rvePJEH@XjKXKygkki#KT#MG`v=j*@cU#zyD*?K z@EBp>Q`eD);j=7GjUbGE_ZM<>00R|4pP-%7l0mS@sdXGKnV^1lnGpU;&Sx@E5%de% zg^kLfCI0E{WlsGBNy3!~iM`^b3wV2J1*%62rM=V)#4x?PQ=LI7QGdh7Q&d zn>E7mw;76yB4PW^vqWM&A<+9gq9-~88wKqmsgHG1-1{Gql9Qt7NbNTmpKlY6abkQ< z;YduTZ$DfNzjp}QhQlZ;esMU)$%w5KpH#&@zrf$yDKZ=e3HrX;Bm$>gQ;~wAnPGz7X*djPC z_m%;<$UWN^wYazTKOE$Galjpdb%J*8-E>D{-jkr8Ve9wnd`2(mptg;EuoQ3Mxu-1_YOh3K+x~Zo;Uopz4f;EVv9#30;A{QJHDw5R0L_6F8bZhW66OxJg#54 z(!3B`A78hWaj%lISqxMJ+Xe01x3X4RX=k|K8SaJjjWj2nW)RjV*h|U;!9@_DLQ7iW z<_nxq5J58t>qG3NWrC;@L4XPa+XW{SL}AUT{Bx|?|31I0Oc2%NcqRiCLBF6~5G9vJ z<8XwQFM|TeJQ_i3m$DbR2b+NoJb7ju?U(S z!WezV@qcQaDj!JYOKVkm%1Nrc<3v^VQhD&7PWgaYPI>SFRSx{aDewHdQx3GK^7Ett z==hr|-}9s@*U=gPw^9E8>IL*SegCgrqRNS1IOTdOcREygQa$Aa_*j)|?oj1zK~=7# za$SciySp(GNbE<68~<@F&Hq2_uSN6!yFX;VOTI6*0Q0z3#Kf;dmta1ZdMPG!sh43! zmwGv-bg5s!oG$eWOzKjv#H=oLE2ed+U&OpF^(sv4Qm@9$E;WX!U1}V2yVPqixl6qk zv%A#mFuhB?9`n1@8!*93y%96K)SEEHOWlS!Ug~yC@=|ZcEHCvIO!HE2#XK+dHca$V zZ^uk8bpTVn)CA^wsdr$qmwG2=d#QI}x|gvTcVpU@dJpD(srO>ymwF#&eyR6k>X-Te z=6z5N3a=4`ce5`UvKKsXH(MOdZ4wFg1xOVCqiH0aG8vBrx?c%mPy%$22hY z3CsgipTtBk^(o8*Q@@0%VCvJD3#LAU$zbZUm<^_W8Pmbk=dc#L`aBk6SBJ0~yPCps z?CJ|`;EO)+C9KG9Y{tvd5WVz@48H0BU#kFLSHL&0EW7%q6MRbr-{#;uRp7f=n_b;i z1Ey=iueiXkYT$cr@M}8wejWJrdhmk=@EeWbhaT{oP2jhh!Ed*KA9=y=w1T^_j=P${ zLhkCve(<|&7x8-%(b$ad%XsM%2l#^u@P`WcX(jk0Bv4TQ3mFvDA0vT+`jaZ~r%0io z{tP)3)ICU|pk|RpLH#+>D5(F9JPPVBkVrxOB{C_fzd|Yn^)uvBP=AeN3hHl=O+o!F z(kZCFLp}xd_buT6c)|Y_3&8)O4ZrX8fjK|;f9>EOJHS7&-G$BgvqXQWf04nzVqtjo zZx!I*u{6B;k4o^LPViqU_&EpvT?Ou|COT8B27gGkpzH!28d%{56&#)(X0@X1uCn(Rj5EtH!JK(q3W%){P%N9H~YJUh-f8d9_Ia zn=8QK5=w zFL+cdxTXzUi{<9kby#m+U5^Fl)gBoPJHXxwaDxK&RT7QO*yzMdM`QVU^%$%_uO3?k z9#;(>Ujv>{3!dl#Ptw4X-QXr2+*}7n>cLYQz*8H+(>&nmP2d^L;F&GpSzhq$R`47w zMX#Rg1JCn==d*s|1rm6n4EAF|dNo=BUZj8*SAtudL}N29QSs8H9K5Uwyu2Fx0#cZ$ zS0IOpdL@#Ws9TZ6MExStn5b7FkBNFU5}BwmWHM3XNM)j4gIp%+wMb^7UWaTZ>h(xx zqTYafChCnyXrkVPj3(+fBs5XC`@oz1;4R2*qTbp8-X_I}w4ixo1BtcQ{M-~+I0i;1uA4DD$^&uoeQ6EMo6!j6L zLQ!`h7m7NFWGHG9*-+G-NQa_6ihL;QV@QaiK8}ni>JvzbqCSb7DC$#4ilTlASy9xd zkrqXL26<7`XOS31{W3D6sLvraiuyboAPyllikd=h6!irpM^Rryb`RZT`qP~rEDe5~K_%0HrsJoCcMNK1Riux7g zOi{mzq$%oq$eN;l4QW%<_mMY6{W=n-s2?D6iuw(tPEkKZ?iBT#NS>m83)xfDZzFw* z`VsP{sNd-TcO!p_nn3~;^nO{-Xx`XD#?I z7x=jb{@V@i(}~U(SRMY5>Or{ybTon$9#CllE1N-Q3#fWQ-U?Q=fz>{+#t+uEgD$p* zs7at(26YEmR{_>5U_&KwcspKbbmAqC3N~@Dxe9El2E8?4Yc1I30(~0jcZ2OZ*ii=t z>cL43;N(VdiU*w91Ws!Pr?-GJyx;+?;LJ8~mJgim2M=rq=X8JvF-oVSc1mDS2D=>K z+zN0W38Ku+m|uyP7C6C$D!7P)i>ttctHC8T;2}ukqaKPpKI&me*SOcC^3!dx(H)-HzanJt( z{rAF&Z1COgceC%r-wC{vemg>$?2~VW-palie{<-K@EbYGVIO=w^IG&Zoif;mU(LOe zcqK^r>!UC0FQ;A#Q}+7Ai$Th35T)GpsZ^M<8YG5-Lz(BJl+&R5xh&-~2z)vHY~)$# z+2k{!XR=SnpAJwig9v4{Pd*iTD*I%dGTW!0h)^DbkLZu29u7a8dnoZx@SzN4z1JU1JrJgx_woA!_owfRP{#Y@ zy`g)v_rxjReb3#wyAqVIAaiH*PW{dlWh=-f5{Y0UL%9m{fz<8c+jEquAb4Bm*66J| zWxNmHlDj!U8SgXOqucfEscn01ir*BVT=$V1r5lqsgl@=Ec7nk5>FXlbN!KN>4PBeP zCVoxenshu8mni>zi1HG|uMS+DzA8dl36ft7eX)P5zBP4a_{!WBi7SGX6F>R|{R^qf z!olp#NRL7XxW zq|c9>FP)#H`~#FF|J=a2Y05qzos&E}bas|<4+PFipBXt*Ix|Vx^0TMMPY;})J}q+E zz^TDgGp9sP(N9T5!jT+h90+dCY>IBuDc?Z&sY&5Uxj-Ti3}iZ@9ePKqJ=~u2C;UNwhH?bxzEoSdEk_vwf~^^E)T>i| zfIZD|$__E#&koZL25|Whw8I+@wxzI^pEJ0o^*#OCqSIC`lnqH z$_S9G4b}G7=ryV8aCMGy0R$-*K$Pn|rG_aJK*AYxW+>CYUYSzDO0FV7SpYJQs6%(8 zCvV4j;@)^qckGBJ2W44}e5zu-h-Fwe~{>$!PtnHZWx44}e5zu>rH zpmVddPg>8->&nE?EMfo^2Kogj5<{U+TF=ev%f!$kVgMCdo)R&DyI|S z6`E%~H*Y8tgIB}=Dh%`sjz5MKy}ia*J-dHAvRuKcJFwieJ{uq|gczx!nhjz^9 zynLSZ+`Oqw3~eF?P+_27a3V1*HDj=zo7>97;1e-`3IqLu6N$kT%*?Z%o7>C8;1@A~ z3Il0^7;z#on1ZEw)^qdbGBLD^7(j)Ae!=m^5G*+_tmoz}Wn$O@ ztl1^k?pw>m5D+nd3IqLuoxrDGBF$=VgMBe`US@yL(y2ZzMlV<;M{7UZwt{bs8Fd&|Ty zOT+*w4D<_5AclWYE`ZBP1Mnx(0Q6J&%~n-Dh01?jsmgs+zE`EnJx8kYw^pn2Dk|@- zQsr(cZ_)Svi>SOr8h}nJ&#qAA8B`uyuF4%$9$Kc#%~bAMO5gcYxh15^lqyiZuA5{z zRCeC@2)~}b|NqlpioX9J_>8^Z@u~O>0AKCXda+(gLMYRcu2rtt#QSO4)h=4Xn3m;s zRngyANSao2&)aLUemt#eEtdYJOZR6itZn`?3)i_FQn;a0 zm%@+`9Mo2}z6bTasP9Jodem=3eFzSw^WiugW!q^%J3h2ik9It0ry1=)vT#sK+4^48 z_oIFT>NlZ&3+hAcaFDlb{Z`axo2h;y>Nlgl7xf{NIH>%7Y(sqs^*yNHg8Hqf4}rxP z_M;E=Wz=s%eJ|>_p*}<$0WTfb!ci^1H=EE}EB1zt)*8^72dzO2GKRg`jQVY;Ux)gQ zsNaP85Q>cBsQS^416$RMc3RPn5A8r|GKM(VW~yI-`Yov6hWdWgZ|eAf)mgeemeJlZ zyp(lOXQxhHOJOY0X>*o1shK5J)Xb6^YGw)YBTwE*C(o0v#2C6NP8@1ZqvrbRskuH* z&Gpq#bA2vqt`7>G;AnkyxB)jBXg~v1XrLAiXlMYcp5SPmb+`c?4K$*GYBb zx94LPm^$K4@Ndqtg?!f^*uv)6=WJn1tXf(q_q1RM>d}Xkk(;Y0Pm^hJ@ceKhMily$ z_D(zeRKZUR{CMHVF*ZLVHHSRbfvvRU`egfan7q1Zk1VUBJ+e%tJ+iEt_QFF*pKH80j)I{~>PuWUs^Ji>jW$e#vrP|?;R#tWE<#*7ST8DCJ`e=uiBJd&t zsh=WfLDb6`+gW_VW8lMpTuEsulamPs3raL{arZ-8pNkYv*Xgso_vUBMKVv zq7fe&VQ2)B&*`|%jj?BQG*pX*DzJ|#v5)A>`SK%czGsia6J)4k>Dg6?$c2a$MC3$7 zeEboOp=U!RJJzG7BB~lh&lqH>NesxkHt2zbZZ4V;Lo8d1rJssd3}jxVY)cDNBA zRLb_oa`!KV;c<*%{Qv0Q|4B#uPrJ;R4{patyFQ415cnYT_4wD*?`?ipe>eS3l$0fr zH`yzxmm{PaNxu|&VUM}OMe?ceQ_@qZCnHblPlg|p9!rt-Lw_{AQyLs3U5E5Q>i)?6 z*?VH7+Q<$h20{brTQ}dNlO`j2W8lW*b=~GF5Xmdtm!(Nj5x6vSNodR9h2aaO3sV2FbIrxxOj1N1CGAL(V;ndB*)z_hd!S}p3kAq=Md*}X!ALw`5cmb4n;nf=!TI) zkIx~;=TPHwi19hJ_#8L197=r7fhwRHs3DkfLX6L$#pjUXb13mSg!mjfd=42thYFuV zgwJt@$|1q$P~dY2@HzDN9P)b(^*x99olM3IaKx>B6|*vJ%_}eLt)P$ zu;4lzB4mYzdO&!ME}5Ylt# z=*>9Ycm-;D4lzB4mYzdO&!ME}5Ylt#=s9Hc94dMa5j_bE36RipDCju^^c?zm4*5KX zdY(fy&t(9bd0qiPG0!2G=g`Y@$mKZ)AeQIQ%JUikLV4~Ym~m=&1!{Q?u{?)Xp4S6V z$_t@9hfbbDCeNXg=Mc$rXyiF0@*E0z4uL#}KAuA!&!LXz4gjKft^kn4b134u3P2Cf zA&2Ks!*ht?c`e`qGyp<)GfwE?c^v>XJck&bLkrI#h38Pha|q!%bnqN9cn%djhX|fS z1J5CW=TN|N2;jK`r~n{)=TN<1fW)0c;m#ER`gRUo zJBO^DL)Ff!0BG7dB<;KwfS{d2&(0xd=TNhAh}k)`>>N^dGfpVlIRxz-dUg&uJBON` zL(I;hW#^Exb12z4gzTL46Ch*fP_c7}*f})p91?a81v_^FDgfO&hisigway`0=g_Qk zNY=RqK(NlCSLcwcbEwrh#OfScbu&&#);SdG9D;QYy*h_nokOk8Ay((ms&h!yIh5+W z1AtDQL#ECh07U8>8g*U?K%vf|Oy>}$bLi4JWa%8LbPiEEhbEmvlFp$>=MbcG=+Qak z=p1Tv4l#NmPP_t1I)@^iLy*p)N9T~EbEwfd#ONGabPg#xhZ3Dbh|bvn0Wx$B6*`9q zokN4pAwlPmo^vMv;W>xyoI`fbp*rUfopWf;IV9&CigOOZIfveyLvGHYHaFvh=$u1y z&LKJHP@HoJ&N=kv9CC9GwK<2_oI`8QAvNbvn)40-I&&@qP?>Xx%sDjX9NKd31fVSE z5SDZ3$~k1^9IA2-Q8|aEoI_I1p(y7Nlym6GIppMpIPnTZsg zkdt$$$vMR299nW3&Iu9#Avq1_gbDyEavIJF5RcPvPJncrhI0ah<20NTARDLQoB+`{ zhi06HaRLP6G>j7<7dPXCYMh310yN_^oD-lJr{SCcy*Lf$1gOPnI43|W&e0UZg>#6)IW*xMl5h@1IENsdLl4d&2j@_ObBMut2LLHJhZ3Aa2+pAc=a7MOsK7bY z-yGs^4(&IG^qWKZ%_02e(0y~rzByFi9HMUy%{PbSn?v!4#78v-kU@2&7t<@5PNfIy*Z@b97=Bvp*M%ln?vT!A@Al;cXNolIkepz z(rylAH;1sBL)XnA>*i2(bBMaR8_ zkN{e+n&Jd100pQ7oPY{&pbEeOw;T)Hax8GmvA`|Y05^c8ZaJ2^EyRge8UQSQ%dz+^ z$Ktmfi{ElAe#^1=Eyv=w9E;y_EPl(e_$|lcw;W5~(%4VH(zi7B6R`9xjr{}#s05sV z3UHtbs0M0)S^$gX(%4VHV!1T-7sZK1bLkpDz@oWy4Ip6ATpIfc%|Hv_1zLeNzz6t& zSpK`Wr|{qASKY6sUx~gFAWePz<>1TNml7|9NL8PFG5lieKU^!24L?_=TcL9?LzNd^AiN`_#_JPJL&ZboPN{W-vY&9L$o^KC~nENb-^JBe92r4`)ef zA9^VFVDiE6gA!@&BM;~gr0^yeE8*bWiH;$ldzg>ARwL z1xR(zNOK>#L%$=Ph$aH0x{nV82eP*(ZV!>}K6zXCHtDw1tr1e*r*Dbg61XLEbDXsI z+3kt#q3yYC$!+0nv73T7Wp7N}7`iccL-L034bly%>m%3e*Qc+GUKhA7b8YAcjrk#lv@=10#7oRc}5ot-)>a+Xfo z{OFm1Gc#wz&j^w_KXH0!jOzl%P7a=&C6#{Yq}++g6T>G;q|=X_pr4RFK6-qBl=|`G zg2!c#O&l8{t$y;D@G;UcDbnlfN2fPNHwHFl`dD9z^!kNo+juw_&h{jFLOr?l$@Ss& z()!f8$U2==`_Z+5wV5^XH9^wtCyojol{+#?+WnYiJwWM*)XK<8ePx=|`+*gi_Pby(yu{jl_*QBv_|4v8NUJS4j$K|222 z!O4Te2TKR1NXf4+PA`fs3M|TymOr>KyCAV3L~8!z{P6tPyx_d-+{D}vsri!=SPPKN zOdSw8Kqp;)bVguCW_o;jkd*z2X`yMksmZC~snXQcl*kl)N}BZjfytRk@kzl+SyK3i z0=bT4N4O)_9&FE&!awBC`I5e{Pa=(fq)l&2w?x|X_j5O#C>H27Wpgu!t|6pBKPv{{%=T5rAZpod}il5`-wZYnKO`;}LldDdW z?mtGV|13}N5YMSe()~+n${BI$&NM0i1C<#it^}1VY5zkNIY-hFc1WcDkI1^5mZDNX z=>PxniQID|>HlvVp8t>h|Lwc}BE}!myAJD@7FczK_m$B_%oe%`P+_27a00rBWu|y( zfmK&{f0-B#6fuAb1O0*%iNVwrF0kqfA1D*U91#PkFwieJ-WW=Bg$t~@!UxO5aFB=r zR2b+N9DfYOS{bcz^2g@Jy-@yAfC)v@XdA1)I^P{aT#4D<_5B!8u%okyR3IhXz69}V3SGd5cE8JNoj0GYLP+?#|a6(}e z?+vT2@X<11EF{-68K?;Q1?|GH(G{*J(G@PT>Ixq#6T>1A1E?_2FF5`fipHu%R$bxa zWnx$?VgMBe`US@yL(y2Z$T~ORi83)9EMfo^2Kogj5`#HbEwWz2pDYu@5)lKaFwieJ zkr>Qt_#*2y{HZcA93o->6$bhRClZ4>W-hW`!@pD}hC@XRpu#}E;CN#wxrQ&YUc;X* z6T@L522f$3UvT^}6rUH?Yxpx|VmMsH04fah3ywdA;`73K4S%*w4Ba9IP+_27a3V1j z&I{``{L5ux2$A1u3{(WYf_5?3UBgW^{37c${JApzmy+iL8K?*b1nvCWU&CprF1m&< zvR=cVFB8Tx5eBF*Fd#UgFp92Pi>%l1p)z4C7h!-30|SB+2&3d0zQ}qFPn8K{g$M&w z7#I+oP#DE~!+H&Wp-dPn$@NSIDuRANyD)67;VVn7;UVia{KYac93f%=6$bhR#~(w{ zSQWBf!(S>B!zvL2s4&nkIQ|%l#;Q>M8a`ys4S2as468*9pu#}E;0Q4^uUF)|Nc-=m zatmqyl`pFDRiyp@E9w6Gsq7`~|9PbS|266UPouJjbpIz(`6224`>5T*rLjFsXTkJD$k}IfKQR`e+rdB(*3tlxsP=J4MP7fu}gpEx%nn~{+EZp|38qP z|1a(SiFp2pB4C&Cq%U=dNBEh7Fbk{k3{KX<MNPWGy__nO5T|OllL4SNR7n(`q~;Nt4CHPyTVpv>J~tWGy_Um{#M7f~JC{WG&omnO5W8h^&R%Ak%8xwUD)NgJN2Z`w6lZZXHakaiu3~;i7I@jcYI+ z!NTR%v>I1P+RufHp=mWPTx2a=qfD!DJt1r1(qUSSVVGf%XrZr<&ee42J7c{LO8`d^#2%v81A?Y?Z^8Pou!5#FSFk=Jte|QAzk+p# zu!5%b&xX~{9;er52%6Tv7}j?71X&LdG_8LvSf3PD(6s)oV0}thLDTy8g7r(n3Yyk` z6s%7RD`;B(S+G7Mte|QASHb$Mu!5#_pJAotoayyRf~J+F@^7Wl`$e)&6Ev+-!TOT0 zf~Hk2SYH-a(6l-V)>niTG_4f{>#M>FnpUM?eN9+F(^^@uzAmhwX{GF};)k~A4PgcG zBkqD!!|G#i((BU&O)D>0-x5~Pv{n_YZwo7ETB{4zcZ3x*tu+PfyTS^Z*4lz~m#~7S z)m5;jg%vcdTEY4iVFgXA+pxB?uhQ!W2%1*CV0}+mLDO1SuzpQgLDO1au)Z&>plNL= zSidf;plNL^SU(U}(6o9A)^7+aXj+>J)(?dhG_B1A>o$ijzG_Br(_1nS< zn%35W^&?>gO>0}h`W;~fO{=e9-7T!3Y4sPZ8DRxYYkR@^v9N-swWDDDuCRipHBhjA zPgp_II;mj&zOaI(b#lS_iLipEbxOhd17QVC>(qkvhr$Y))@cRnr@{)F*69W7kAxL8 ztuqSN{}NWvv>s5f{#aN+(>k+Y{fV%Grgc`q`cq*AP3!D}^=HBgn$`mg);+=sn$|f5 zYgSl6(|SbH{o0hOnz+(P97Dm_%Xs5DUd%Wow4hg9C6 z@(`7)sBEUPl*$w;l~jKHYf1i)%Cl5%qtZ{Mm&!aU9x8wPOp<>@E4Fh01a& z)2OIae)}s){uY(zs0>iKh)N%o1yq`;{NtCB{9`KbP#L6h4VBZVtfVr7N)?sg|3Z>K zqB2C~4k}xy98F~r6)%;4{kJ6ll*%qDJE>epnF^lteR#Pf*ZS3)*T!TYj{K zxhLa@$&Z*S&`vYjX+=9ew9`N{?)_p%@ewEZchJQ9#nm+NezBJ(-Y;&YiT8^udRnB# zjZ|^!NOS80s8NF&t*Ft48VYK7s75SdK&8aQLi2KRMcy+^HhNvZq#T;jSke{sNsbtB=Q*9lY)9W>UE%A z0QIU+uhq^|C2G{6MgTRWL8?)W8g1}|)F~r-a-v>6>PP3`dB@Uv}J5BZCShRmes;v3;b2Wp9+6< z<^9<=D3QMr&texmdEv93Z89i1&wP@|gdmL}=_t$2SW-rtD#H{tyOydSgVgr|PGVOd49(pQm3n>;T0 zbVW4ChFWNF3~57uW}&(shZJfU(4~-vJWm}VQ;Dd>HfPzPwdDWMHu8U{pZp(M+1(-? z+C;UcTjHg=A>0m0sN+H%AL_KDjuUk-i*M>|R~JP(Lb3vpT#2f;P@pS)6zIx&3UsB1 z0$tfmfv&`Kz^SWTTSu?ngzBxRuA_Pbs(Vl!6A7n=X&>1n49F*Uq5ztyh1G4;!sTuNYQk}^*7ck+i0yTBi>_E*)s9A-Yt@hp&)Tu+A0P3(9)u~1uoqdP7#Ks~07H&nW zL}IR0W}*=zKMs19fAFVlp*r+?N|3YbACw?xP?Z+e4SA%68Z}ctT+=06>QcovsyL^T zD$Z%5igTK&;v6?soa3g7t$hCqK2&g`LNh9~pn{GH&G6)PWk(j*L29)bXN@cf>kQ)X`B#MjZ$0 zw4zP}Vx`9pO5syQ8J-ILZg`*4j*+Ntu$t-y+bG7MkG3<|NOgmas4G&Vjk1;0fJ_Z6 zsG$ZH_^5#eerjNWhZ!>>!Pr(TQDx($(6^jFffVng8N%u8unsUh$}CKXQwQ}O46 z&u5=YJQsQ{_vOqp@n?dxK11T^(9;Q8nIZRN^2zX%(vwkIk0JAD{L$c}*`47*X)v`T zvP0jIekAgc{!p6MUkE&yc_4aU;J(bg@q2@`?n3bHEUmc^x+`~Q^3F^mZqC~e-kQB7 zaZ89+SV-O++@9T**cRHByD527;)Y$;FZ}ca+h~plGzfc zbrG@`hcAkmGcCgB#?1NrDO%$|KP`P~^whwq!AO?YHwbOcZAxy^Pfni{Jt;tI8^ljc z93MJ9cU{(PIL~WR8v>9XvX_F}ESPAxvu-q3AhbHSD!Hn7=0ov}2dO)Cc!bs}NFNqGEWRX2D-a`?A3%0SVuq0qAV8}O#3u(QXD1~lC23^=sXgV7 z_;tUL2O!=OY>_;v#z>=1D+ojzO6CyIIsxhGXmy}EQx&I`0gM~~^jWp@haYUG=l^B@ zD0=?y`IPDDHRAan$;t}%VG{i?BplO_G)%)vfEpG8)cgQ)1!_p)ry+lwhO}=QGV*Ci zr>7w&o`%GB8nV-ANGzZsp@4>j0vZwuXhg31~etG z{Ax%fpdpcfhC~9Ey@|8}8qx}ANGqTrt$>EK0vgf^Xh@*(2!0*LplKs=>#;S6VQ-OKtnnK4e10lq!ZAPPC)Ym zxKXl1i|e?Cy9o{V1R8EjG+ddrY8v#k8lV<%0l2hixJ+ocR%vxWJ%G_w!!W6NfF=M} z2Mxo!hVfc!1=;`~;0M|Pse>Q`4xj>1fJ%ZTS|?st0S;6F)j$nU3%CFca05C}2h;-% zKqKG*nt*1Y1@Ho`KpWr#`~d4Acz1nFR-g^=0e+wz=pb044dC@jfJCSOc0B&G4+>dIwRnle0 z;iCc#&;1%6hKo^mxjxN3L`)$o9*;i*l-1C@rS98CrsKn0)x zm4Fja0S;6F)j$nU3%CFca05C}2h;-%KqKG*nt*1Y1@ICq(YE6CHoyn?fp(w+2mq4+ zsq?!OH{bv&00pQ7oPY{&pbDr4YJgh61!&^W{vXhvfCjh$9jF89fd-(OeQJ%ijb5U& zl;Cy~bf6BX2O5AzzymY^%|Hv_1zLeNzz6t&cAx{0x(PDi04e|ls05sV3UHtbs0L~P z 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 pCj}^&cLu>gZg!g-U3alce8>1xun_8 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

    5Y2wl;HRIv*yRz>}y=&%@ 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 z z#m5!LX2vGQmd0eqSYyiZTs#@q;`zQ*pV?RFP4~uoi#_Xx*ZcqfeD~L=_TSu4IhYG3 zgIX{jNCnJ5!AzTRvq-D{6aJDf>$7}iZ_bCrs-rc{&JRA@{$#v6+bnTA9|NoJ)b%X&^v>YAR{Qktn1M4G+5gv-yE0sAIdW)pb{{^);V)xe$~v0`6K6SyzP>F z7$-v|V1TVNc|le3f|1GJa7mua$xsOxVCzg?Se0yR66ggQy#kR9f!6RO41lN46ZSxF&;1a)_g2xM}*Z}Jk zKjO6>tnpgg<{AEvOLCHvp%O5_)|EW^wYJSO{Gm(o3QFr2P_ZWKlsw|K9vuBzTO$vm zKXM6PNs*HUR4lD@qx(+5BVKC+*LJ5~SGC3r1GP8LwH?W|Mq zh}RmyHD7Dn`TAX#_~ZF;LnWZeR{D&MZdzJ-+~_byw-r^(0qniTe&!N<0tZ7Spvl%3 zT(uft(DsOTx&*JIu(1MC4M@_*o+8lXZ1f|>65yynd$alTm)lR4(`~1$l1prgqWT3? ztjRjXR-S0YuCSIZulf`^-FE!^xl8cL91N9!CR<K|j{?aA*GzuFhpkn>3Q!wg?#dz0Rxa6qnm)LgL z{FO`Y>6AEDK*jo4r`)}}^vdN+s~)cHnE9Sd>=_&jm4H6Bp4h{yVr@svU%SM9oTA1F zs8~Pi6ub9XUb$l7;;LNRf#WwWxo2}OR08_hN~6Nj2ae%fYEd|U)rzX8d3dpDZytTieI9*0 z^#XjJ)&NZXi${O;UXOm@Q?v$v=KotCRcZhn^#uLS$36P$4?OxicY5@bAM@zHrZoWP z((S`7^tHGgNA%nM;zyA;YnePvO|NpJallKXF!o~}z*Z}MF7`TLnUBxJ8N2LR7``DjcvM=Fms00kL?%Al< zdE|VnI@|VH>I0YTjg&V*K*a`Gr|imG3(xuTrAuo(<+kttAG$~rD7-8#9x0Y6| zyqjs;)&Js>eif%fC18ZzhxDq|cQb7}`(ItshbVEXfK&jTjImDXXt6$K#50d~`cbQ@ zzAeqP?eTwe*?XWDlDf4FSG zbrd=vpkl+U(*{s=G^%e}sSiB3tk%A7JFWfGCH#60hf2UOTW|R2UEdn{b>?3#;WuzN zR04+C`opXDeA`!=f4hX=NP$xXRBV)W3ik^?P0ZT!wAbG8ZC`EviypK9Y=hv^7(sf)yMGNWvOrGe5eGBvip=@z1!Qq>}W3ew^3$XK*hGPs1JP-jaXFu zk4v;gs6O;b^nY8a2785Q-6iyPiW@7SVtuSrXyyAPhc2%=#?P{Sl#(v7cW^9J0{Yl` zVykxXS+-M4gG=ltj)h7i=CjRQdk@{t;h&?Dr~-{wD6a3iDo($Yz*KSir39vm(=R13Rh)h) z(b!j_%>^D{00o*s3upyxzzcl94@?jMK@b9A5CQEV3SyuGbb>C>4SGN?=mT*u28;z_ z8i9_JK9d?g(tbh6<-e!r8ALV_?H~$bpaXP*F3=5nKrawm2o0Fa-=_@+K@b9A5CQEV z3SyuGbb>C>4SGN?=mT*u28eZp26P}n184+Izyl1RKr?6ot)LAAcYa9!-Y&uqy5|0! zazWD;!UGJTKr?6ot)LBffe-kB3HrppXiLEup!o?MNYDTpK@;!*11Qi8T0kpk176?* zeqe$C2!ap@g9vB`Q4j+ipc8a~ZV*{V#{#vU2!I~Hq4|1&XNWL>0?nWWw1PI^1wP;h zCJ2BryP7qh*4Lu>bRaqH*1R^iK)?ptARM z^2|L7FI)fcr-?E2S6>4yGWYe)P12)UPBa4(XzK_abZwzeSiK;)?HGCH6ZLKKd4K_EP8R(t&_cgY#W<-Izq$>0fe(cI^jpIq0@^_o#6Sn=1YMvT z^nhN_2jXB17z@M@p#dF8&;S}i6Yu~7D9{XAKr3hiUf=_MV1fV$f)EIU2xtekJN)x4 z-1RU2dg^ua^}=iE*W$13?);Lo5r=B;TFFcptQvsl~HL zPv@UXJ!Mi2fb^5`CyP&Ho=8v?fb8Sewf=zh0W>B@y*41Gh728 zdyjQb`R?4^Nv;Bry34$)P)FCl|I12&>dt>wraY7zN)Bm5`KwY_nO7CAEMAehB5_6O z^2Ft(%d(eQmz6KgU7Ea9yEMNswK083{F35^%!b5<(#6?}t^Z@!zkOLDurJjBGAAZZ zES-=&!8)OQeD3(<@!IkE<5GLN{}tC})+W}Lj?Erx9a}yocTDma?U?+U)EaY5VRd?S ze06bEW>sQUX=Qe$wX(b-w<5VhTaizul4i27JiR==ym)lx=)}>bqq0X?N0pc5mL->I z%koQ8OU=xf|a)7R&j1-ZenifubDr@PAw-@c&yK zK%0~w?g^Nl7@t_2keQH}P#T{dZ;dba=lYZVT7Q0AYMeQ)Fg86lKDIa}GbS;n6wk)3 zc)2gvm+aH}^1Z2Ev$xQb?uqvlyEEO1?hnmRoWy$ri08-<)bTn+qzfaz@g~coLpcQ?_aET7aU=$fBOn6M9KY(0BRA zl8-$2+qSvl^5O6QT>pP=<@)~sMgWE<0W`aei9En#B2WqFXDdzMMvul+#zfHmZS_v=IeT4_w{S9~vPGN>>rAd1t)F9i zwtX(iIZlR3zyMoka@9Ef9NV+)cS(MX()tBdtjRhhSEl#j*?x&%K? zkrM<|Y>;&duI$?gK4O)%c=f1g+fZ`ACHe_|%uoqvvQE)^A2Y?zuev@l$2O`PbP0Zv z!UhCXY?yTlu3QVmW99~Yqv!R^v0V!cxr9GOu@ePUY>0IVugm~IIO_h_$hJ+X47+4+ zrPK)mDmKVE^_Hx>*xXdI*5SlnDLvv6{VYdAC18-PBbsI@FJH05zKdJ7cXhi<^m7!~ zFQ8&g)+xHOpYfv}eekwyZ|bN^@QV~VSwO|Mvravze7wE}y|$>Q=1I$z&tGP(teQb) zuMi(|iGPXXp%Sp2tuKDfayR!(Aa9`r9F3Zic9oRZu;`09_#=g-QA6?8Klz0=t% z^mn`DzD9}T1ypQ+b;_-rw~<@xEk57&KI?Hwew{M=1yrobIwe=$XSvaA$2tX9t~Vq2$c0t&#OK@gus)aAHz;s|fQk*WPO+7vDPrk}R^vss?Obt} z=+98-H~|&wXDhvHopvsCtsRwH)xLI&OYUbWaiV~V4Y5wSm6I28Yc4fOOtU@RV_mX8 zN2%ilRBV8C%C79#$gZ(tC#Kn+?Qt&2Z&GHzfQt3APRV#HcL*e}TDWY_nvcXx^t?z+ zvwcwMcM1MHMGgq4*f8r9JUnR$FZ1Ek_@%ZVzZ3QavEyCBw{tjD0*2Z8!|g}!M8b9~ zncxy$pui~tDmKbGg%8gg8h+%~f(0u^@8}8JA!VXV{ud~DvVe+hXPxpZr*3|O(KEkl z#gfGJkX&Hca2qpy9%qwl1-|EJTn|KHPf|MThgSDN#G z1zrDd#P$E>LOkBvHtTov{r|B@<@*1~`TxW3i-heBImzYe`4T-PlLS<3g#B+%56xs9 z-aA$-Tt4FI;Z8J(gza59*(LqUlsiR0#YS1Dbo;(Z`vrDS`}gBS!uAbfic9`iI3Fqj zqwGHA+rK3z61HyG_&RR@R077>ecOQQm%uiy zFyXQRZ&T=ifQk*XP8%@t#FVIYVzRex9&`!+28Tl>V3@5xyz0a>Xge`YcM1O{1x^uA zu~F73eB_%yaZ>FQ)1d9dG{YtTTa-LmK*hGRPWdBGOo`ejra{|>umfD;zs>Pb2^e9W z;zypC5I^$7G<@J6v>o_oy2S6G$Vmb!Hp2e5_}vHo1PzsqKJX9P4*auR(u+u-1Wpx~;eRp)TP+_npE=zWE0o4*b(?2mZM(`9G$#$pR|2ops6|dEg(c zec+#NJMddB@ju~ss056#PVplT{D`k{;J24QnCBAz4ny&PP?Q0+S?KKz{xa7af`A`WMW%nt+>aa82cHm#=lK(T#hg3_I z^Wi?_R~>bxTLU8w{EJ-jcT(C^0jbpt8DpLDM;`d8d{FHJ|8(1df3eF3lz0Q65-`T@ z+Xhs>0(9WtzGpz-aF-4EId1?|0>;=nH$dFcq+iuz=>P6E^ebr`;NPwEC*8#FJ$mLJ z)ccQaSJT}8#vfA;K$`pSi5dF!QTjXGuJh2Jbi1y}&^mygbWC%*f8t#;F_uX$3MVLK@u?UMc*%AF#hVxz26 zy8X4UeNviX`!=%NCI7da50!vXcAxUA4v8~tC#9rI{_i*+DgmSHKIK;(b!J!tI3x|v zMq1&L|9i@uDxhLxtW*BTlM>ZAt9??MVLK_UblHGE@CHC7V2s_j4XAzvY~My!xop56 zc>|ylFvjlN22{TUwgdlamklUW=tKb(8)8qRQg;`Kjd&?X{%@#qIf^H7;0npI)%NmK z3Hzk5H7?nI;%uk{46*fPCq`%64*SQrWPiZfPze}f>&qS-oo)Lba;!`Chnx+SfFZWN z?CGPkZO8kyF4-S(HdF%A+BLGi>=~o8Z3p|0xn%#Dv!N0&#MYO6!02q->eu63vj4)_ zPze}f>&u=wI@@-dIo>7vubd5)fFZWN>{+9;ZB;{0aLN7~4d75Xd}dqc68=vP zhf2UOTVMF}8sWBz5h<7Oe{nce0*2Z8!e`V7x1CZ?b_xGCheIV`n5{4TfEwYp)9EQL z;s4=qs00kN^@Y!@5pFw`p6U`VTJTnbiVd^%h0m%HzKDL=o*nKqmvD_@Ckm+85bG2^ z@;ttB)rzC%*(VPr?6ZwecgfZ%b-aLz4X{qxm1!lFW6T0;Rn-Iw`)uPgT#_3pvtK~P zn(Vps>E)anl|(D^rH)#&jK8>5T|ge5B8I2D#{a(eh)4ezt^a@bn;tzya{zupa{$hu z+i!nDYxU{2i@x_?K({~BcmGSj=F$KC7L5nct%+_of0e%9)9uc$c=QO}?g<-uh;Da< z3_VC=0C!3HlWzC?oc{TrJo@IcM{lR^{}1e-IR$hRJ2Y{OnfS^d+SZBZJ4USkAKEE? zXZ@777A=w%4)NWuor+dT#%bu4WSov>NyZuImSlV!?UIZ$(Jje13+0UXOgiVO_Pi?x+WRtqivFL0s1Bx7ou^JaS=Kv85g5q9iX3#~+xEgJgjBC(GY4^jp z7X6fr>(EfixE>vqj2qBW$+!_cm5iIvQpva(J(Y}G&{WB|6N=6o~m5e*lTgkW!&6SM1(Ot>72kn)Nd(mIX*o+2C#(n6pWZaJyOU47}v1B}m zCQHUc=(1!yj5bTgBj~eaJc>q3#ujv1GID6OWITpmOUC19wzT_UJb|W5#*^r}WITno zOUBdayJS3r#!JRl^j$KZMdKyv)(oFV>m};h3|~a^CF3P@UovRsCz)@7FQWmI@d`RH z8Ly%RlkpmQFd46-36t?jbYU{yKpQ6GQ|QBFd>W0IjL)DGlkr)!VlqC5UQEWDXvSoG z9^IIX?P$kj6wr^!_yQU-8DB(4rri(YOX$pGd>O5ojIW?KlkrtFXENSGcP8U&XwGDO z9o?CXx6z)-_y+nj8Q(;MCgWS^&}4kO8SX%jCZmWZO~!Z7rOEg%+B6y8L!Tz&`)Jf; z`~aPrjQ>HaCgX?b)nxn#&6d#sPlvyj@HY+cw~g?3P4M>~_y+_2QNj0{;jR`~ZiRnp zgCBU|hd%g`AO6{de+j_92I1dA@b6*xj|lu{JN#D^{yPT$(?NQ^E;{iStqbbiQ1+0+ zkK^kNVmbY&QG-o7^hjtlK-CDFn_!Cvwi>WaL2onkwLpI>G}~an3xhrw^24wRBLUbR zgwYU;g<(eocDBQ=DC~~Go(|aC3H!QWyc>?`fn$5g-4A1&ww`{}ufy>YPH2D=8{t3` zoaBL%4LC)?sm*Y|7Px;aoYn>tUO4E3)BSLU2@eRsnL#)!1ZRigoCrLy9Uc^g2gl$c z9q`ajcvu&l+YPNAIIkDZ7hCo|j0GC~g<8?WMG`JHu65gvW&7v0=D20zcLckBh?NWAKCycw#3!sSB>_hN&KS zaxXkZ+qU;%oT}4bjMF4My#b!l2tVEg&-B2v40yJJpJ;~Xw7_#);dyOvy%(l^@O(eK zz=RhD;6*`raR_b*!%HG?V>`Sw3NMSn%RAr|o$$&ocvUwX>VcVFc(vG0UZat_cdBc3 z{OCFfuWx`iG{PI3;7uNQvjJ~W@YZH{TMN9s72eSXH+f;!2k-R5yG(d@0NxXX_lDr+ zFuX4U?{9|>MB#%m_)rIYxD!6o1t0B(TY6xw7d|F-l87&l>PK1)pz*FSNiHTj5J>aGMwAeeh*Je8q&X2H#nrzT5!6(g?rW1mE(&uNm;`3clS8 zztIA}*$Tha2EXlvJAAO{hu<;bcLVTyLHPX;{6QH0PXzw39sVc^e;k89>45Ka!k>1* zce~-wdf?7pSn7j6*Ze!_#G#YBAI2{ve)P)*_^U?vUK9Ma2mZ!@zg6&e&G7dv@DHu< zk8SXMFWlvWWk39r2|ozH4}T(}QqE2p$lIGb3?d*I;)T%zC+ z&G5(;xU>~6YlBC5;nDn=|84r??IXpO&(HmQ>CMcW@iz;fOMOoJT<){hXG@>Sd}iCH zlb)F>6uNSF4f%#hg)#R(?SF*1pUMaque%X9EPdyFG z+p^md+ltiD(0pkwbu-Mo5PzXSH3_umbI)1Nm7dK|C&R+l)K+b4jw%wAp3XcSf4V^R z2(+hiPg+lws2V~1iNfQl$F;|EkL}2%sTM(gi?yXhy$j=y79L4GqCJv(*m}71Q0AdH z^({<2s6Ci_z@n~&nfv4S7w$_@&%)ehYjcSz5ybCZPE`o9cPH*H-j${r1o=CY)T=O? zO=OFk($uLie@F6;^6gpbQ&^-vh30MfTa&kzsY_wvmg3Fno6Vc^H|@MJb7TC*!VRe# zv>S5QTi2Ja%Ul<~u5fMYTJ750HP$tyt20-}sWV|Jqh)eK7WE~}TotEU11aiCn7hKd zV*Taj<@w8!RBIr6Y2wo2#`H#WWB!sPbtBADt%2gjY3fCozbJW8`NAx9A}n5zzQDX7 ze}3}(aypw%q>Jmt`rLWed8KnR=f=-1oRd07J16%E>l3B3GiS%oE>QPD?X29H)|n;h zJsAIZ;f&N7+8MditZVf?rxZ_4pKP9-PbE|3b=h@^b;Xm?Cz;f5 zFnMB`Y6&E$+hF>5lPU=$k1KyHOT7k*Ytw7ZwR!3^SU#qYx(ue)Xlrt-E$T6tSruPZ zSec>@gSi#fic&I@j8pA^)N*Zk?r4iD2V{u3bFHSBlQ%}LfqT<5zLX$cQCKr_FXXhuVpI~~PIWKP|shePy>I4)IOCM$) zHuuodA(=zshvW}V9$Y>sOI-wu2c{1+56n{!!Sd|v?8NLMbr3XX29+--<9ktcV;^ioyCrHhuM*j?Tluk@o1qv)vmSYB37gn&V=LPLMRo| zLb;$7ECn)wICTX~nVOmNThtRUs!s%JgxgLQ!l^-^#V*QQ{`#h zf7z3zmH)-2H1z?@Hzpg)4O!{}Sd?jL$~^S|ENfX>{a>WF__q(b;(;He;Wvrx$$4a0Q&}8cyE2+B1Wna{Grc1DggP{`8Wa|sAy0&Fs)OMCju))Dl(di7q z&^;KVQq`kFwhJ9+y96r^hBV~F!LYvI>ZjUvmE#jG!Oa{Dm4GH&UvTwPZM(#Aj!SS0 zg^d+Zu|C!*xUzl_199`0*_YlY=34_eqqT#ff1T?R+e(4`0xH&IonrTn|6#PXYT$9c zZHWCmm*6%IhDtz_tuMH0y2^ap@cMd}U@wJD5Kyr})+xBMViHeutre4r`L@CJv`e&) zLdR3ZBt*ji>l9rX=0$X^)r0eGgWKo3B>O3CqJWAGu};aA!EGdCvH!d!tL)t+5({iI zW-oBb4pQoP0TmlyQ#5t&6p_MSI`V%*!;66z%&#mIweMqt(`?BXx+I4<87ct-Y@NyW zoosNL?c(@FF3Dj^n<$`SL#$JB<@vVom{%-ZH0nae;56IC@rzxuBa}KpK*a`Gr|jV+ z!N^{?rbe{w+V}>S=ynR7B%op=tWz}RLiGxM*vnTeTuBWz7OvR6WRTay4ceE;UgDA- zrQC@EDmKJArH^>hDY?cYx1BdOx@5;FbwEJHhFPcV%2i^1Ao3o)3Fv!-GJy;{#_Sxu4m+T(ShDyL7TUYk<8ril_ zDOb5<_flTJfQt3APT7@J=)9ZHuU>^dXkTwS&hjfap@{@b`lo zT=FMyK2!om**fz_?s^{{<0JEe`_)H%jx>Re2{7ZeBGnB z(CrSo{vV{<{m*#xE~@{(g|7XNdC#Li{klh=OxOSO)c%l?Wcc`0OHei6F2Lx1Xh;`Zk+uH(5QL9hC z_H~FiyM#~TaHs?fvrgf*w?$eIec*F5&xgI8*|LS*LK@u2)%XQ?={aj>wx_!lzN-6af_*Wu3xp zyWVt%UC%ZvGwYI{;C!eAjIwp+*WUH4fe}Z&J6-YzDRZiTijA>O`L;ru0UUhTmQ`{J(6F4=P^ zb%KD34YE$zdj>P+)f~*QFYLO{CHg=Log|=QBdk;Op23WH)VQqXV1|8N*ZnT(2T|@s z0Tml!ozh1<=`{y4X4nQZ9&pJ%m{JD>RBV`a%HDH)omacW+Ms<&*@G_OhfwTz0Tmly zox=AFX3#rq^k9a4Ez?6T$%j(rL;)2WWSx@t3}#Srt-%a?^WTSEvJc~Is00kMb!FEW z%s9X{nDK~9_FT?}O28mnS9XoTj00?g8IQVTTbvD*fI+sd>>7g^2iOKPwzy=^qr83r z73*i6viA&T(Ca;FFyjE*M~IwD@O+9K5KysU)+uXa~hP?;wV=mzfD0Yf~ijA^P z;d?&6@Lpc~^UF-z(D>sn`3pH8DgmQxo%uCCzu3F*KH-wTh%%=NsMr|ml)vZmOXcxX z{-UMU;ys@sDqkDzjd-7Q*?`3qJs_ZBL#)#V?D_ms*?`fXU+hhIpK=L5oWr3KFw8oI z+jhNLgBdd``+fBXpBjJv(z_mgG2OmG>;D(g`v0%ccmE|c|9=O4?_WhV0Dnl|`;VvF zPWs+|`c{wr8~WaV4$b|4pT75B_(`hgN8kIee9EIY(Cvor)4Bkf|9?Hr{cob%O|<^M zm2S7t+W!{a&~Kr+|K6fU&(hp~zn^Lh2u*zB^36ByqVN9)bvj=Ef7<1_TSCv*6af_* zWu2Zo+dIc$EM}(dlm9a=`A2X*R02lXI`eD4bF2ZpRKw#PTV3*xq|B)TDmKPC<=fsl zPU9UjZJ+#~b=iQW6g?myHOV1EtkVYA-Z{0#J7(HG`9J3pzKp}65-`jC%Wa=@Nj{E~p%O5_ z)|qTCxjfx|q3sQq4UbRj?cJ6pG0vJ1ypQ^b&4MG zuoqj@Sjk#y8%dsSFQxfem+WgQb2QGooBZ@Pq^%;8W87-H)RPt*#x21cCGKJOBK8U;=e zP_aQ4N3>LpHP6FiiZnmUnm=vyo^CJLvfU;6bdH8fz#v;s^yq31(`VbhcNbiu&!D(T z0xCAbIzeSSD+HLdFzUY#ECMEU@s92MA zO0Udvwdk?eIEl@+4R3wPCHO23hDtz_tuMIh95&l_T>G+1@YxhLK|sX@S*PH=`*^K( zanonhuv*{Gc7IL$ic9n-D0IAliVd(6dK>iT-}LCysSd!WAEsLVfAHvUQtiL_pY`Z( zea537Npk?cMeF~U|CX-f(-^?oPkHp8()a(9-|*lfk?tgKk zq5qk_`){QBfB&TK{+Chxzkkqo|I6t1Z~E?^p_?!beTWuu3A**X^R;nhTK|7Qcjfy( zju(Oo14fhY@;$6pA6`^Mha>un!kTr3CF=?+))f}4E38*nSgx+HT3unWy24s@g*EC5 zOVpJRKNCs=I*_0NG=e7J0R~W@8MJ^_&<4D~2mHVU0T2Ws5C##@4x%6iIzT7r0^Oho z^a8Dq(18REpb<0y4={iN&7cLef;QjE@B$z30}}*55QK=m+likS0l5vF<;|dGL71oO@EEiW; zEv~RwTw$%a!cuXCmEsBu#rJF{){84F7gtyEE88) z9GRKnLgqU7#EEfL?%w-U72OI8x)s)QD=g<$Sk0}lm|I~jw-Vb44d_6E2G9ta zfCm^rfo9MGT0tA|0w3@L69hmIgg_WXKs&K_JMohk=m4Fd3v`1X&3MouCVJgC5We`am3v0b(bi0Ub!t02)CP@BjlS z&Zf24eiU`$h@6BGYUJMR8Gin}q;3A#Za zh=Vae+eJvw02+Y@D9{XAKr3hiUeH1Rt?|n)_+AhEO)q|%PXEk!zX^U|z>mg|9?dtF z{!p5q+Q{obf(FnCnt%s1gBH*Re83L^APB-B0>&Z16u4^;Mu)=PR^09J!afs@4Z-nI zI4MTbfu8PuP9y0^Pe}ZIdn5cp6Mofn4Ne64X`-2YL?ZVw3 zb>nU??!KdKBj1&9XCwT%2mV6AU$wwrx53|fNjehK-9H52`yp74zz?GEqYn6&)*Z`) zr}>gL`h#}eWmH_lkGo;q&9uX7V(_|7ctbb5X$-tw>>@Ym@XiK!w+C)k@ctI~U>khc z2Oss5bbz3{kA>h9F}T$fM^RCT0I7l?1Um76x?NY#nEf9%5D z9^5VW;%*#wKivH%{moD7>r7L9z@p}q)r|#D7 z&fk^1OS>yatM0Ws^Vw9^%ob?feSA~#j?5j2J4&?j-nzYfTkf{xZKYc?x5jTR+>*Y< zyd{5g@@9?J-luLdZz|lFruFy58!|T}ZYW)!r4{()>vGp6uhXu}Uz;4U20w9iF_X@i znZi(dC_YrARrrakN>^sDw5}{)k-H*!g?2^$@)WJbFI<+sEPh$>(hRM}FKx_jv^JJ6 z$7nU!`U0_{MK0kN9b$%(GNypQL^{Mrm zTR0|tO#GPQn#`KSn$qelt=2EE%B@PS8d{lHSz3{$)%xXR zE}2Yf$vmysHBaHI#YGufxnEkCU1%*VFUZl_eQiO0ermoszd)<^L(&(n&2 zbHBpW^wjv&BCY99OesyyPPQhOC*>w3Ck+iG21*mN6RnBm3AqW$3EG7G_|$lFe4#(x zAMY=Y%h1~X(%9@+YixN;j#l?;WAgD-+>94!eSf^K*eiPTJ*ghEr$FobbtBiW(R8vj(xj1{73TIXME&$K7nOOY(C^e=~V;beFyln9lASz75|4&(yK zfELKpT7T0l_|yKlzeub76TXr+>$SY)wp?4XO>4`yrfAK7p(WiCZz(osXw`p7WtFAM zMvm6~YewFa@|d0it^AKS6&o{+iN+GG{kIy*GAEN#qt*W@-P8+OT8s1g|1V#B+M85o zOr*L-T>oGH5r6l08WtIzTt)*ywFa7J+sep(^=tgA#Ma6mdyET7_cd`I56D2p_k%2w zPyR21j`L~{I@+sCzU30Vo}-}>Fv!*uU1QMEUS9HRF41X)HR3w z><#U|?vj2!r$Z%RgsmsN_MoG^tNq(9=@(F9zkrH0S*P^fgN`+?oXxQfI)1|?_(Beb zN8d_4Q;`SXb zxtH=IhDyKy>y%r0#K^7jh-cUrw-;TKFQc>x0xCAhIwe_;=@812`WJPc!?0 zOYRV5^$Vz2KkJlRnU;&^dH&JW({g7_v(0t*AD7^3I2bAcP4+^uL7YkN<*NS;RSwvz zj#*Oct!%$4_(PZAYbk81fQpT=PQjHaCLFxXTDgjz?a`O1X4tO{{>WtmuHy}WO28Pq zZyR7gbIh<`9{jP(23*e@0F{6-cHcI@KJ#M6Y}*yWpSWzm4HUYcfQs#4oi-pK0z+fP z$d{njQPqB_@Ew;exRJ7_2&mX7>$C-xc~&F0V4k(wUI}Q1{fgmFUGi_@e5eGBvi0Yq zv8?@khRcR~-}dji(3uKEueCkwSPeWnM?jHoDY?NQMQi!l}oKP3v0dy zZHL>PF8Q}|K2!om*?r2dehb>>gOptIZ==kq0xCAfI^~Zz2vr_`%{PEGFk%PzxyuIJ zPSKMERBSuzv;mbqUi=2AY(S0u&o<5Oe_i75;CQG6Y-j6^ud(~tPCmbIiNBK~`vp|2 z$yVY|t2+0Hp*<&`%8qA$-&xZ}KJCAB3BHRWrwXXp80!?g=XGCrlJm*Os!U9=ZS@bR z_umP0?f>0>dGwR$_AageKath|yi4oDoWt{&Ss2zvjyx-FVHT-%e})BiDNLhaUIn@mDf(FnCnt%rwK!Ik^ z0$M>E@B$z30}}*55QIP&L_j-;f*9xkouCVJgC5WewC#irBxnGQpb2<@0TgHkEua;& z0Wa_YKQKW61VIRdK?JmeD2Ra$&0=#L=L9zmiz zf<$u!iQWhjtq~+TBS ziKYhM0?nWWw1PI^1wP;h zCJ2Ba2!Sw&fOZfCG0*`zK^N!-J)jq8eS{7qXaJ3%33z}36lex5pcS+MFYp0BFhKwW zK?sCF1hj)Fh=C5!3A#Wx=mEVz%q29S6Z8(2xZeO8K@;!*11Qi8T0kpk176?*eqe$C z2!ap@g9vB`Q4j+ipc8a~ZqNfTOGILph{P-riCH4Fg_tKI8v*8tNX!$Fm?t7JPefv# zh{QY*iFqOt^F$=(iAc;7k(ehUF;7Hdo`}Re5s7&s67xhP=7&hk50RK3A~8QiVt$Ck z{1A!xArkXLB<6=m%ny;6A0jb7L}Gr3#QYH2Ld+16m?0uDLquYRh{OyLi5VgiGejh2 zh)B#3k(ePOF+)URhKR%r5s4Wh5;H_3W{6145RsT6A~7>WVrGcM%n*s0Ardn~BxZ(4 z%nXs386q(=M2anh26P}n1A#5X{U+c622h|Gw18I72E4!r{J;bO5CkC*1`*H>q96u3 zKqu$|-Jl2b0?Y}aGX;S;A#|o7Feikz5VJz)TtQ$~2%Rek%nG4%1%X*1bgm#UD}>G! z1ZIWMxq`r~5IR>7m=!|j3Iel2=v+ZyHVB<72+Rhda|MCfAat%EFdKx<6@=JMXg~)N zG=N3|TZsD}U;qW0K?`UFZNLkBzz<9i06`D}VGsfBAPQoj19XBe&<%P(FAzHk4d_6E z2GB@g3vu5A44^K;sUg1(={6bc3;=VHeR1{2&6lz!-oV?ysX7`Gr^0 zuf|_3zLKFT`K6b$FIz8{^Es-MujTXGQrpaJ1*()Ef2sIl=EVe6%g?@Gy-#MEJ!d{wcs5NH^NU+ETN7JL&t$1)e);L#)5)i`r}I=b-=r(~=_lh)7O8H2g0AIf zAGaPaKbCte`Itsm^HVu9SJ;x?5~u6=nMV_kmLADIVm(rRIQMY!VeR4kL#c;Ms-cf- z`o#w_4m zX;D4>TsE22viVIZs;FPMBYj8wj^gbZs;OVPEqhzvZAH4WpSZO|RrRe~$~WigytbdZ z*1WcGP5K&fP5$cC)h1QgPiNwp;!tKNK{fWXS6Nq;ugqPUq$>OQD^gdOR}?N!Umm}_ zcv|S>?Iae+s|!CZqPR5FHTXt{lZ1*i{cj*FU(NI{n7>5 z;j8<}^R@Hy=~UXJ>-*{T@%6>?GUp}E+kS4ED(@H1$()lor}T*|)!r|kojW^uwsv-& zs_&a;70yhb89%c~_4jLE=ihQ_@>K2A{3)qZ%u@=kzlshST zl18=oQzx1y7EVZ?5T|PVnd1}3myXLGXHh-=A*#n;TAN*Ktt}s$ql*06vH4?C$Cy-= zKfNZtrnow@IzqUBPXzrr&!ra2-LX9f*rxutC3iH$R<5a6ZGcPf(WMwUjs`cmQCg*B%^M|FV zUVq`x^r7)Xi&V2eaY*Ul?7@8p7Z1u%)&A0f*#oTu%X4y6w_lr+pPia*&Mr{p{`joo z%*@Qh%o5e^w+<-J$jwO3(Eg9t{IyB>fz*IWwfxf);}eS$G7}P1%|AQd8ei_u^(Xta z{`|PqICETqYWl~=7RO}9B*v7es=pO4_vQMMeHzvEPxYF;g`RXzoGSZgx)a@{u56b@ zwf%FQ$xf{^-;tu~{)JdN7LOIF!ha%KYR|S??d3==l8k7Pd^i<0smgyk6b}`HnP7tI z{AUAJpls&MBvty)`%`|?U+|@=)_>8P@g}^bwk%cqFSq7eldT$6{7Crs-rWDovFEpkb_l_d~k=fAjGCf7Ji$-T48JQMALMfBnj3q~vZMDS=AB7`tyHB~?RomaS0BdoCMr z4{rce0>;>V+kmQ3a?3VK{%e;FxR*lr6Hu`otkVYU871E{R#a<{(6U|I{*B8PY^Llf z0xCAjI&Hz8QSv=oFmKc-xn;Y={acs(`#2ve0i$gF`J+cEE!!yh?_Bcl=X|IHjI#CT zj~=G9Y*)K~?~?xj=R+l6l&vGbGDutFN|j|BCI5p<{)3zkm4H!ppYp5Ug0@leKf2^U zM43|sRBViO${#UWT6z36-vHJCjz7Z(q4!-j;9-iMETCfBS*H!yGfGbFY56imjs0)l z$oO3@@sDskR06iMb;sA({pOF1FT2F&D6(Hb#hUDTah|~S;i~@)RYu8|AH9NlLAK*gG@Q})Og`{>oxPq^(Q^Jkaf zrzmowfQk*VPQfEzYziLzV%ttIe{sovnzNx2FvQlGJ^IDAom~FvlKl*4LnUB{tuuS{ zi)}lx{LLkME9H$7P_cg2DZ4Vert$_`a#You%XUKfyG!n~lsF)uV#BOcZl$)$?%Y+Q z)+NuJW;>hw!zKJVik&2&Vk4|mcx8Izp73dO0q)4Ehi(mwIF7yre&9u+;`L|2@i<}OXfDyKy^yN#A8eIlproDB=e_YaE z;&iA4jIed4kDin}GhwR)AiiEX5pJzIAMT!typ7YL5-`HnnLaprpHJA%D4I)pp3|Wc zFv8ZEKD|b|?Hi2llKwKMLnUB@tuuW_jda_IMY^QF!s$>67-8#7KcGgs?bOoXlKv{E zLnUB@tuuXQjr7XNrD`wxFMr+sM~^;_ZeOCc|BLAM7Onq3f^OgVoku^4ZaZl0{|dT& z|3_5E|0a)KqV@l$(d{>1_2}zq4#0;K#P|24Wif3NZL2bF*kw$A5o zR*mP+c7kkjNq>V9`vp|2$vUO){WLUh^haNNAtsMY@TVwpqJWAGu};BzKMis4s82)o zQcQ+R_NO@;Dgi@mo!O&44cUt^DVOZea5hu|hS)l@M|~QyS7T~+$^I)DhFPcF z|Hs^YfVpwj`2&AP{Z$){%BYuFm$<}^$FaR$JH>K~(}?BtMyv!vLfVQ{NaC#03rVbW zr&><$RvLGd!wLud=@uNvapb@{%5hYSUhaKN}RE({3=WluF6aVn;< z;kbm3nT}4*@Hf*W_g^S+E`wYc6AsE9Z#eQlIc>GO+_u=4>AHSja@(@BJoTvCHs_0O z+e<`?wBWd}<_vw0nwCtw2 z|4yOt|L=UtZQD%C_ui)K{?YjVpEupMOKJJ-F1ls_UHgyiq5rF+Wv)Q^za7*x-;O)U}K`u#Q{7;ftZr9mNO>91gsj=h4RKn%sE>Q^R{dNDtY5EmMO#$LKzG15+KLTbP>PcpFnQdv0fH zcISubNq64G)KsX()S<#XRBYqD^ti3}G1Xppfd0AjL8jWaZ=SI)^okVQ&$LXmyeuAm9 zcM_ScpQM+yXcz6%_BNTSZT}QKZuh6DE*n3?)EPU8_+G-X^~XV71qyB7{96A0~Qe)rm7D!4d!`^2ZuHvS332=XDv=ug>DdetAQK9)kDio^)wcxg{l<_h)lyRa=24%7+ z6GfR2%4`eH3U25rgVF5s-6)eonLNs&E4rAC8K z1WQw4*mOfwW?7cXEaOyWnUBgWlc>zHIMq!JmV!2#b7Wap8LV&=#Q1wXNY&I`R88GY z)zq_8P2EXhvE-mSMo`BB>gY!ugQ%keb#x4_V;FVJqmDk*F@QSSQO5+0 ztrn~ml*GvhdI*UgByuF?k*H8f`5Jlyx<6A?z)1y$JXByPk58^d1%~2OU??(C#eSb$ zoDebJONHj!C}qB#3e8Vaq4{Cdum2|(XHv}PC?lba4P_E26GfT+pIn@CG2e$Wc9e0T zObTUEcr{ySI~)zz`>e)&9}=9Ep(|8g=U5wFDzCFqS{rF(Cihbkr*i0Fl=Pyc4<#j( z%%EgyKP7SghaN#mA4>XB(uR^*luYlZBu*O9qbTV|$pA{)Q8I^;nf;W+nI?J+B?BlK zL`erq=20@cpOQE|MORTWh>|i&I#H4psAO(GC2>xR9!E(TB||9bLP-fF^ZO|oL&*e6 zhEP&LNjFN`XrJv5*e5>L^x;g<{yPz;y>=o+d+kJo_Sy*>?X?pr+F>UmwEIoOXs4S< z(H=Dsrd?>lN4wAj+x-ca$kKi!x_ysdL<{npa0(yfhK%C{)DG;glltliwYsd`iOM*YV24YeDJH*~JAUthXjy1r2@ zPn$DQ+tRwWdaZtK` zmM&~uP`*I9ph@!|md{hpYre1YKJ9(2bGzp{Y;LY>);71!s-C5vRXtNbvwcSGjN%!c z(~Dj68Fo&ppHwl|7?v~*~FWof0fvazDPLRld#Zw!}* zmEq>H$}-G1SY4toX&+oWxUJXpqTX3lUsPIDUszfwEo>|(FHjbg=1cP%^UCv-dCj@X zoYC34XD*ttRok22nA@2NrAL#ydu9NXVvT4yszjTSN<@pa!qu=IZYwpVsB}X0P$?vZ z8gf}yyydBSbWht|a~ItmSKU=| zNv?*o>{OghN5!EzTK1}4x3_IIThZ2$>JnqG-22@h|Cajy_e}i$7ybXEzY?PrFr=#g z^i<217&^6PnH(7TCLI!)#~>G~!a)Z{raHAmc%M$KCB^Pet=T5&|0>cUXHXSdOz+dF zwPba7`T-{C-xBGNGpGtJruXU8GG4oPj!F7EA{}xDRiTyi{+(LJtM|?|N&h#I4mpFW z&|-R@POYVe@m%vv(!VXzA!kq(T1@ZLsb#!+@O+c>?}&8B8B~Q9)BAL4Ej5hiI?yD2 zk4T3!0k}wq7SsE5Y8kIyyuc*AEz%)pP!(EC@6)NZ)X=H5&?NoeMLOgRszQtDeLA&_ zS5H33B>lT09dZU$p~dt*omxwWyT5G~nWX=K5@#{Ug^F-c`cyy1+TKnrfeli>fL z$TJ^dWU%O)RelKr0|8*&DtLW|iw z{T#+CCND9`{t@NPVvq|J;h^m9H@l}(%Xqcqr6$2YrpP%Aa$!_BD7gF0?$@cc%&>JY zGs*sm$cCK3sL*0|@0)Gt)EYL){;9}@oWZEjVs`JFZP>Dxn`Hlt@@6u~g(2af?5R$z zwLP6$6BnnR7!ovMlKXQ?oXa2=#)N}%r$$2|x6g?H#!EY|FbUsFvGW+@Lh4PS+k?WV z8jd2oPs4FpvHQz(rAc~6q(jc2Dzup1r{QS4s`DWx>Aw)^kTa+XEvENrI2teOe5gtK zFGV`!45~sa>HQmy#_KvCW|ICZkq$Y7s?cJ3pN6CHs?LX-r2kr^L(ZTow3yzf;b^?3 z^D2|{--vX`8B~Q9)B7|WjTdw-nxy|$q(jc2Dzup1r{OqkI1ymAN&4?ZI^+zhLW}8r z8jiz;UCSDi^xung$Qe|H7SsDQ9EZnuF8dkz&)DZ^-2c(Ee2K>WA4f}z#{C~p%hze# z|H-s`lluKnr{&u;_WxWO`~M>v_kS@hzo4=IAEdGW|4rlmtF$<2`7n+B4^sdC*6+D( zVOs9{F3kf-%R~R}wxwu!l;-}+(XyTT{fB5_1snUuxBj&9chvuXYoV+EfBP5NLg{T$ zZ)t0zyZ_(YedIfZW6F6PQ?`Y2-QBl_M`_azWh-NJlsUAQjxtB~(4lM%N3kOXI*RSx zMMtr1yXh#lvXzcv^HDmAZKL=^8aV~z*r(@o9d;X*oG5Z4$Wf6q135F1qar7V=bVA(bWMNGuIGr1eVO@#GlH`wo>uf;dT97T z#!JHwGBz51ka5uPgG_3bDrKDPD=b7u^3jpLjE+9-pg|y0U76vq=lTIo$10>CfV=V%JeRm zw9*%fNh^c9zRt8+lRenoWwM3uv0=}~U$9|y*PqyMd{;mk&W@&~VVTOz*fRMVC+dk5 zl;9{4M~MVV1IVl02xh6%mT$7<%uJKbX*Z5I> zOVAt04=hi`ZB%@9#43)@lHiNYBa&Y^G+g@Y)p?Z2=C zg( zVgD_WKBF#r-3gE#hxZQV^PVil(qu}Y#9vC2*> zVpW({#Huig58l?PIMvrfr4RQ~>BDVQ`fvx8K0HFD507Aj8?>p9m!*TH>~J5-+ELbt zvQdk7CWiHVmB37tWtr+D!mh# z0h=Y2bI=>IEJSa}vK+l3%kuPwEOVH=A%mYSPGLRY*p%W#ih`6pQVK|MT1)Bk#wREx z+kbPUEElrE$SNR9Lzc@dYv8jb2fQLTQX)vvkRt7&6t}gMKCj3|yXZ)X`r5tI21HGM zmE*%G)6RKGl6KBZytH#(;-j7OlKfUxT9RD!#qst4eIwMwxTq&Egk*B>C(6FV=7q<8 z#O8T-{*KM_kGiCJsqIl|p0t_1QVb7`ZGVRq677BG+*EZ9BJwj!SpR0)y3@rgaN~BRDgAxoa0X8P~Uv~~ z>UyL?bv-gdbv@EXbv;s|XPL`QO2<(;jnZM1j-s?3rEMtfH7T7y=?qFoP&$Uv4wSZ| zbjqZ35~Z^!9YtvsrJX44KxxgSbPA<&C>=xTI7+)v+KJMA+E9kImPYA3N~J64DV;@W4W$z(okD4j(jJsvYEn9f($Y>UokZz0 zN_$b7Hk7~7GuuYLs(rQ9s2#V>chRR2=xOVXDbpD%x2`F!(pmCtFPYkj8r z8T~WuPuD(O{B-B-`rD&AR*R|JMuT@{uUu!p%SDUX?UeR7@ylIjTg!<;OdadbIoTf z&uY(>o|2wwJXwBHd9t~qPS=B!>W%H??aKD{W3|VMk98icKU#XUvu)!8(gThA%l9ky z*Y4eWcm3|t-O}BSyILP!bX)t@+O5S~JGWGB-hF-bdj0x#wN|ZPSGrERuCb-OMcGoj zrg%-~>iX5CtEH=3S5>dluWDaeyRvwta(VNz%4OPRtxKzy>Xr6rZL~Prxukwc@uFRm zvn)#Q8=JghVtsRIv$VN!R{1RDtjZbNCuc`&oyaydO68JLYHn=3iyhrKs(h4kRP#uE z!{*5u47FlwRdtoVs(pCvaOtqdq2)uBLz{!*o9#Albu98 zQIGG5)ndh1Ct8n|qEfUGDMyq@Gh7L4VNKaQaBM)`yJz66fSO~oxC$Vh7#f^^$M5O) z|2MU+-~XW>vux|@;`hI2^c!8j|0Vh#<8+to1wP;h7;G$Ktg?(Dy)uRa%TW*mDu{#Z zb|MGzpa3+$b`lb>0d+SK2MLe_DUb#kkOeuA2L+%3X)j>|cHjU`-~w*o0rK{DsD2;= zqO@(x*!jr#R+sVREaN*?##g0`Z#)@aTr$3YWNhp*z76C&C;({>VFPyH08ZcnZr}kN zc!3Z2K>!4S3_?HwVGsdP5CbZRg9J!|6i9;%$buYT^uwA~31I_v-~dkG0&d^|9C(2b z_(1>!feb=G0bvjUQ4j+vh=T-3f)q%D49Eif+?VldTE=f;8NY31{6>}Wvs1=z5E<=n z8O>-J?O_=WTN#a2*$)CB2xJff3J8M;h=LfPaR*c@kN`=L0%?!|S&##Hz(RxsY`_j2 zzzJNy4LkxmfFj2L&g78eAOVsf1=0Y`FgXMifI}v-Z`F6`6#-1QFJroW8Pn~{m~LOj zbo(-<+m|ujz8nRZZePZ9`!c56moeSGjOq4eOt&v%x_ueb?aP>MU&eI%GN#*?ak7Mr z6B%Tj0U_h`1R2B7WegFQF}7UBz;796BFGpDFJrL3jKTCW#<$BD)-7X%wv55nGR95I z7y>P0G_#C>$uhIU&d7XQ^zsHw;?9pmoe?WjA{2}OuH{*+I<<*?#q~V zU&gfivL9gDeHqj4(`SLewEOf~ATaH|908biU&gfiGN#>^G3~yLY4>GJyDwwfeHqj4 z%b0ebzD@~DyDwwfeOcN`*nk~4h-tNT;(iyv6#TLWaNq?#;0FN^1Tw%B{4%ECm%|_e zq96uT5C@ooU&a*tGN#~{F$KSjDfnef!7pP9ei>8n%b0>+j#HyuPJkpx5z}g$#{C(P z1v!uh1%O7sjCQ;%0UNLb2XF!xa03tEzzcl94+0W8N%u>@2JC?EBD}x{{2%~=Kn5X@-$N7t z+e=6QKWM2cL|)vY9|SUfbISNJC*wDnjGtCAej&;Dp(Eq>ij1EfGJZW!T?iYn6VukM z1NS?D3%G#?aNq?#;0FN^1TqK#1%yEaL_rLwAPy2B2~r>pG9U|bAP=Nngbmn%gP2xZ zC+>FvH}C)syub(iAOM0u1|gt;Fo=LChyfMEK>{Q}3Zy{>WI+zF-Gl^e00-D*9441> zxO-Y{aS&U^acLO`DPlX09)#sM=KN4{hn&60ya1|gt;Fo=LChyhjH8Y?k3o!LdL z+xYGhou~qwi#D-<8ze`GaOhm-!PzDBpa|WTmC^I)DM4iW1@x4_zWZWSohZ=s+Oh`R zqnA=;fwXlUb6!J7S{93E3D7@j6W&Nw+*_jcvGD|Y$YvtE=R_tO|F!)i-M`sdZ&csV z-)O&Hd%gI2=e7E4rPrj_8jW(JzO%Gb+Sz!u{HpS5`4#1r=F63rwU=8jRbSFyYQI=} zvG`)=h58Gn7o-;&&zGN9p5OCq?b+h9ooDLLl%A2EX*^wiT6wzpROKn{sn(O#C-o=W zJ8CvZMu0PKH>}v$*_qXq>-B-M?b8r3L(!GUyTD59TueG<< zwidT`CVwZE?^5n+-dVX*Gr2y%s#`iY*KaP}EZy9=seF@iQ}f2kjoOW^8>% zU0=MuQ>|A^RjJw-D~~B-&Fd=HY1g&3RJZ6`+Sk^u-F%I5P4nu?)!Nmq4|R`cuU}QV zO1i3XW%)|w%H|c7E3_+Gmsc;>FK=H~yR3Lw=hFJ6rAwtt8y^^}bpH~a8tdM?sB)2Z zQR~9$h5Ci<3u+e>FX+6#{{GVYrS~_^FQ2cR-#o8!o_1dAecR71ohzN&cyIZ=%6q%V z!MD$@on1V;Q?8dwWvSfQT;8l~Zk|;+OFOIe?&`bscel^1omo7ybH=XIE2nFx?>?>i z7hVTo&&Jxu?s4Wcf(t$mWL1 z25m#@i0Tpg5$*N0^~JyP8UV#ZIxD-!+&4!mBicx7d3CwIygghSE)I8=)t8l)Ny{2b z%S)A|%_Ws3+LG46)r0ke+ly<9i;FvYT`%d9-dI##q%3M4R5?gHsI{=VP+!b7iK9DhE~=Tty!oPv_dOi&FlGgu9hq2I@x-*l$ElLOgW=u zn(0bf>-iO5N=S)Dyc}2JO|_zGYAaTa>9KaS7A;0Qk$R*Qks^(7Ijn@6N=4C>R;U`% zLv6Vx7v)Z{PRC89U?WftD1oNG;@A8wU)87k+TNPC=BhG33pTMJO;T?6%GoY8u2Q^`;2&9 zUhE$6y3r)vBhn#fP!(EC?=#|c`ReZUl1Vxj>5#Tukq#}U_ZjiJ+;9zrO(yAHkq$Y7 zs?bV${}HbvhRY2fZ<6j4>5wz13N5Dh8Sy$|I92KdlXSmGhnzuGXfeIdh}RLr)Ym7P zqz6Pgxg0Ja;izXBGMseP!(EC@6&J`G3;JWGf9t9;w%Qa zP!SGFpK432?`=35uPlDLNpOrJ=P<~HQQ@HAskVd&?rAtqTvUAGY>qQbvQ?1{In8o~ z{W-Ll-P4vZUZ(3zlkB+2hMd8u&|-E^Tf%sSu6LVcCn#?gjmAYbRD^@FyWi}dhNJPq zTxXdCCn;q1jThzGY?7T4*^o0B6jK=c?@!)Djc+8rW&;(yicRHSnO_A zzSkr@FVZ2WIo7b7ffm#IG-`{6M(w#K=>?GvIfJUuVtSuOZPC!EeV<9XCek5iP!(E9 z@876hZD`bl0HMEL(ZTow3yzfQM=mEsC~al`b?1y zIfJUuVtSuO?P^1#_5zdiSt1>B234WO^gfN+)rLmxg(m55wz13N5DhY1FPZ?D#G=NuMLqA!kq(T1@ZLs9kN?^<83;KA#e2G026Aa8UYG zJ7-f*qjq?mVN)M92|kb_=P<~HQQ@HAsdkPCp5CY(UT4_QD<;_sL^k9MMuir$r?+#4 z*BLhR513>x6xoo|?3T!e7PF_fbB5O$Hu6hNvJax9SqyTaA{><6{bo;Z)DEvRY~Poe z1TUh7khnzuGXfeIF;W)g` z&~UukBz;(GE>dz9-;(pQRf$Qe|H7Snqhj>GE> z`;;-0^g~2CC{84HfV9R z^|pA2*BkbWH=3lcrmWcva$#6_89Rsmzi9fZAM-NrSel)%X3e6raHX!I;c^eljn}@u z$s~D=NQRuju+U<%@oMYKjaR#l6(ZE&1H}aW5Pkn z<1HZZ37cpDP5+P?nw+gdZ!yA!jfqv=C08_TEn*W7+XfHGQ~NpSXV7=gW9;zlTh+PZHUXGZ+zC$fnO%pKQZNY@12;$s!wa z1|vdC*{l0x7rWQ_!zS6Mh-}Cij0i1duj!L*_@F&vl6|VkhMd8O&{Fo=KG}xP+M_1f zXHed32DvaS9M9GVx5M>*?QrAu6dyB5K2sz^&R|$*F?sSUWxQo*yqe$&fP` z7FtZ6{7#ujHnhW^FiAd3Bty<%SZFbM@=IkR+0YK(Zj!uNBty<%SZFbMT07i$DaE=; za+%WRGRTE7;h^NncDTOpK;-0ZYvN@ac9%O$!p|1rkTVz)S`VN8IU8?>Gxq&&yKU#u z^0SxSw##Vw!%J@47%eVZZl`Pi1!=kG^E8hiEf0UrZPT{7ZO=XAwjD&vTQvXQp|t$t z12l&qEnoh++g76GpXmC3C)4t;Uvt~eq-D=nY3{%sZre}lZrcZF`Q3K9?jJ3<{@)3k zKl@+*P3Qk#KfCMv|Is#E5dOBkOFCtA*SkydvYKTq`ia<*ntB$feW~S2XNp8 zKHvud5Ck#^0R@CX1Vlj$s2~m!APG_+4Kg50Ox81pd-9+Fq|hF!C$IwtZ~_-_0}r4T zMfC(e;0FN^1TqK#1%yEaL_rLwAPy2B2~r>pG9XJ#)f4yR0b4{!zy|EV0i3`E+`t1k z@B$z3g8&Eu8H9iW!XN^oAO=(r2MLe_DUb#kkR_(-iF@)u+DO=d9XNm!xPTjY00&;+ z1AY(yK_G(=P(T<&KorD)3gRFEk{|`rAOo@>M@-f;k9!J08YOJN4jjMw4I7ombNP#rSfGo%nQ}x6>(sqL8Hl->82XF!xa03tEzzcl9 z4+00rzNN2+RO%Cm{hFumcBh0vB)t z58%KHe83L^AP8g-0tyI&2#A6hP(d6dKoX=tnwYF-2KQt^4&*@rXkZAiU4#T|zz!V1 z30%MpJb(i)@Bu#vfFO`T2q+*7A|MK4Km~D-ASUaX#62mH1{shAIgkehpn)MU1F+qM z1Z=<#9KZ=&zzsZr126CaKL~&zkUhI>>H2MLe_DUb#kkOeuA2L+&k zA;9($60iX~Z~!N80XOgf4!pnz{2%~=Kn5Y85R>%`gbAQO}I4B;LHgh2#EK@6xM4iX>Bl_*5Ck#^0R@CX1Vlj$s2~m! zAPG_+4Kg4Lav%>1Km$Wy24JfQ3D|%gIDiwlfSZ`Crw8|N-~~S52LTWSG6(?$gh2#E zK@6xM4iX>BK!Q;07MRffx9I9|S-U$RGq1 z5C#zt1u>w4I7ombNP#rSfGo&?JSYGSu+4-7Y{X}znN-M#rEp^r4*s=TGW)q1n~rv7I8joKT*?y#`qS;FYEKoP>O5J0 zvh<|%WMfBphq9wtuhg}AYkPIOzPZ@2S71^d9LwjdRN9DCacKuAHr%-6~hhdbz#1 zwz;^ub5{MV(ph6&a{<)PD4ijl(Kx+)x^jB+w90APX{}SMr|PG+PpO?!Jf(AT{p8Zg z(#egJ$|or&HBYRZsGZn4ft}DezI?oLd~;J}leVcznH;>$G*Pwbixy+V+~-n&O(y>iX)^YH4+&SS~8X=BmmnZB^@V zc6j5k@?pwh%|k1PYKOKCsUD&q(q36xSzOs!QD0G7A+2bPlt+}2=JLvNZFy_BI;;=3 zm(`XPmvxrbmzI`}OJ?tl={z;pd8Q$Qg_Yt%mo$aziiSvnJv16XB3E7!z6u@83&kyr|)GCgJB%;4B8Y zP!SFapX?>n&+6?ZTw>@YeBLDZd=U&egCXId;K^P>I>z18OK7~h+6yMZ?-#+4GZ+$D z2=47ATxK}z`Jzei1tJ)7217y%!M(kN#>-B&-M7zd*ziUAs!8@G zA{%lBBSK5rt9$#7hKqCYk|$pGPLu2pP~L0?xiBm&vn$zq*;RO+?*C1U;VPcI?vyp6 z^Jrf;<@jNJ<0LK(ljKV&a~^|Ss0s%qj}I^&PhP)v-ATt5k3V`^x}g{6HIwwqD0dEn zTo@G&N*^Cbzb_p-&uQ6)ew^1$vM(3ekTVz+TFE~CgyIP&9zQMHFrw-Wlk6)*HslOO zg;uiHp0N736E;lCHhiPKX_9><<;`c13**8;*)o&I3T%9xk7sv%)+au2h9OmNnZ#d3 z!Lu3U!mw~q{P=LieeuUkU+IPo{39mG9~8-uGZ+?HOWrU&*)WR#?@W?EL}_yw{3>y@M-@W8~!~$PukZ>DU`9)nz{3I}D6 zf2Hrs?)TMZoM7P}Oww^5b>0p;h_{}05at32U>*3SJLl~zzXqtrILV*hyuGnf>bSHO9=%XVYVV{_9OfZPAgZ41zHH(mcP@DN_r7S7{Q#vNz#tb!goCojTRbAW--f=%@Kf$f zCeaU4=qv`gP!SG_?poiy&7C!d-*I0y34WL&XEVr!VIkUh=deqrz0YjoxAT#k)*N?i zpWn{w4L>NpVv_s_WzJ)e3svEu3XFq41t?hT#*@*G1v#**YZx_jsGZ+?HOg4U{j2O>4 z`+2@TPl{y784L?8 zCL2e)ju_86`)8BnrzmYMgIpLB4oV(xIh?SDK4E>&IvZJJI7sphlklfSIOGh*gx15S zf6ffMu75EJe@28u&R|SvAsk;RJ!hSb7|%NUrb+m-A{=rCV?wLp(|c7$jAxzwt4a8C zA{=rCV?vAJJ^e`|i;CS}Y2Pvle_n(`&R|SvHN5wg8xEAbV-o&?2#1`(n9xFa-~OZ# z<5_3_W)l7)1lve?jAX`2MUDuN+r zFeJ1TJo#ld-k&tGxHy-E_Ut<_@b4zUJ4G<$42FavICqJ|_VnX!+kv#a{uuq1r=|I* z+qU){x9zj^yZDPv_ct4mKe-+i z`uOlLh=3@F0TskS0wh5Sq(KH`K@Q{rTSQ2}2JFBAoWKR#zymn&0w3^$00;sZgovqn z;+`;wfGCIo6~sXTBtZ(KK?Y<&4&;Hfk+1%` zgbAcGK4h^czw zo(PD77*IhRBtR0RKpJE~7UV!4u&smyY`_j2zzJNy4LpDYFYp0B2!J4vK?o?sR6TJ| z1Vlj$s2~m!APG_+4Kg4Lav%@>W&`pk>-pCX%;$gG0r`{lly}nV2mu9zK?FoW45%Ou z5+DguAPq7g3vwV23P1xx;I9~vKUvSec3?jLn+(Wz>{-h^4mWfMU?2|TNto22CKc8( z&kP5g?IdYjIo+Jg;d~!l5P%28;Ybp$Ov6L7@bEk=YH$r(M6R>JBW#<=Tl}yVg!hKv z{R#M33OFH~b!lKk&gH2H=l^Bz;-Y&7X$h z&!e!T!e1ufuT${1{@uqixA&?5{f9of$1=~=A>54NW;G6PNWz=a@RlsRZ3y1Q_L5s| z@E!-e&kY~saGMW45`d4%@QDz~!??L43ZF{C=V^Kn=J`~Z2t3!prYE4)k3 z)#+-0?PscVEjTr!xWCbR|IT$<~g_4sAz+uJ_*AUZb-BTH-2z&Bx1+OOMy- zy6^2rtB-1rwjQZGqCL`lxI*UuG`5wtbsnlcRD7sIX8`CAwjZcHpg+*Qzk0uRfAhZb zebRjmx&okdZ~dOqJ<>gmTDhjwnp-PdwXLnYt9R>nx9_UmRlKWnXZ_C7o$U`-KdgPY zc}L|A<&MVfrQ4<38@H8jQ*LYCTDeubwRKDN7X6m?&9$40H+OET-&DFux~Xwv=|<_s z`VB?84q%n8GT*9Js!FvvRvFXATGv&t)30l9sck84>0DdCwsfs@ZR48qUwkdV;-#Gr z)ae|6cBNX;Dor{AKpLg%(qGc1@&DSz&5OzxNf*^GEYg(#s~6}OwBBENze3jmES=vu zuXdh(Ui*Eu_Z8pQIk)~7TnmuByK!duOy$hx8I?1%Gg_yQovxqWKCO0I@wCpV^;1iy zN~bnXDW9U8(mc6xvUYOor0PlfN$nGBCl*iaoKQcZbi&y2`tj{ewN1rMol?D2DoLfr z#_~pGWAnJmaoTaMcU9k|zpH(0?bzb6onz|9l#Y>(X&hZXS~y0ThZ-6~d#da=E#wyL4&ustsPoCv~x)PkkTR2A&r&gmCDNIipmOYMQfxwqK~wf*OnKTcZTc3 zrD18fv8=pIS=L-yS*k5Ian$k`8Jt zEH6|RHWySDXbV~gRu9w+!Z)Q;TXRR*#ipV^KZYj?^N>NGDtmm%>uG zp_COxX@)8xE!2{$vM#sjdZEQ&Cr}TR0#cyiFZ&gL(^v6nzLvN8SC9YafBc^-q~I#{ z)rs@}#r*$Ue<6PR_vy*#J_faB@|ga<10#mvN#8X&FwzhQMj&S}B(!uyX7Z5!zF@;l zCEqg%evQKBFvx`w;h^AsBYf$oTfY&$BgR>AzHgHKy2yr{!HCd8cE1t6BL^D}f&IWF z`wfu|IfD_QrR>#RQC{e%N%#Ti**IGq1;lkiW9aL5^q z39W}u|C|~63HO?W?-JpV4t|JmXd%3RKcVrwvyMr4Q-nj#U`%K=yr;L!c;4ABOv2w5 z;gB;J6Iu-K?I$#zclJw@@K1?w$Qg_Yt%mo$azj7iuS~-KQG`RzU`%KsynjET@w~HN zn}mOw0%tMEg^F-c_+&p}pYzT}jOU&G#w7SNA{cT8L&8D9lWnv<=beoh&pZ3AN$_Vy zFyst|gcgE(`w5Nbo&C-v`2UGu$QcX?Ed=-W6B^Gu`@Ko<=R`2%42Fc3f+xSsCR#|w z^UnTY68w1zo5LU%MudZcCtIcc&pR72o_F>~lk6{uY{(gm2rXpyZIv3&JNqw_>@SLJ z$Qg_XEoHCnZIv3&JNs{w?5|MX0St0sL}=j*iM73h=SGZYNc@jU^j9f#4uf166%HC8 z+BGDaeuwl785}X5A@L`Z?5|PkJO;T?6%NYo8WK&}eMU--7|)PkUl{-K`26^PCe@go zZcFT+D0i-q3uD4T>0LvjG47#f&h`=G84{97_}4`^a@$p9D#2FHkukp{n z@e+;uKZusbPu;eqUvk?%`f<1IFdF;+HqHCDo|Z2?Ompz8}C>`IPd}=@Phyd0vUvW z0>U5yq96uT5C;j61SyaP8IT1zkO$IE!UpWX0h|QY(1qJ>-~k+Xfe-jW00e;yLO=mw z5CKsT11gAv1W1AuNP`T>f*i;Lwu_K}4cLJLI0@7cx81-4IPd}=@Phyd0vUvW0>U5y zq96uT5C;j61SyaPn7Gl72^;O0u+feQ8||2|(T)il?U=C9jtLv>n6S}~2^&#E+{ToR zc1+o5$CQnBOxbA1l#O;w*=WaZhHU+Uf=_M5CB0SgAh{Q}3Zy{>WI+z(fwYmpI1sxXIDiwl zfSaHidT^TqFYp0B2!J4vK?o=y3?d*3Vn79PkN`=L0%?!|S&##HPyo^>VFMTeVs`*1 zZ~-@g8satwUf=_M5CB0SgAh`XmL;zqSM%sT6n23?~9|R_1r2Pkhi5O}BL0}?A+J6w3 zh>`Xm1SVpn{Re@G7-|1OU?N7^e-Ie&Vb{PAm;u;MLIO5m2M&VPp%b@VzzsZr126Ca zKL~&zkUkOFCt0a=g(c~Afv7y=mSLHij|LmO^m@Dw4Wg``Jx?@FVcR7z~qaxpCK^$BJF1gOuk6_ z83JQGXg@<>(nZ?O5SVn4_A>+~U9=Z~M$kGO!fi~uXlJ_#3D|%gIDiwlfE#!K2VUR< zeh>gbAcGK4Ko~?o6vTiE;vfN%AO+GO1F{6wFo)ZDPyiYj0&FiK0UNLb2XF!xa03tE zzzcl94+0Nd8AOUhT>+RQSuN7bGH0q5~Luxd3mUk*Uo3B=0)n0AAQhh~#rTud4<>Jeo zm+CK-UXosFyjXrwd9nFI-0ze0Wc<8%8} z@73>Z-&4D%cu%KRua#<2t+BPdRoU9SyK=X7ck8a|UHV`T&} zib8$-l~HZ9b;;&SluMcySE!f2by4*q{i61THR|W@Tu{HDbb)k12IE2IbS=! zbzZekU;iqL^ZZF?HQrr*xAN}hnUyoOGh1g=&(P0kpI$q?aQg1ks;B9vwNI^`T0FIL zO8u15Dbgv8lglS7CpS;3oTQ!9I3He*#-{QnWmB_MDX~AZ zzrQ+dzP~-|YwL^aJL~G}O6#O`jkV>q%G&0d${KA=Yjt(CzPeqk6^q5rs`{$ZDrr^Y z@bclx;myM;hiQkk4y_)lAG+(1$|2ezt(Dc4`pWi-+KS?e&PaWvG$M^OmY0_+%bUZM zVQsjzth!8J)?Qj$T3p&$QeRS9B2D!BZ~qJC{HxB>=e6h7<`(C6=8VnJ=d=%~9Z)== zGrK;!G+Ub8m{p#o%xcc8%+zMKW>jbBGulJ7q2f?St7|1q(i(+wK`AuzmAsa3Y4Jx}$Bc*^Bm$t!^vX zBwIr&ON!KF6*^q8BY5pG_TVZe%^CmwFZ%zD^Z(gQj;Z{!IHm$QgE67?V=B|S{EQPn z*iFK}L4gYxE2}Mv8_mFo#J6{zX&(at4#aKd%DQk183u!JH-) z_!foEVUP=>!a)`2K9bmHa)lA&~|=29)nz{3I}C(A4%*xxx$EXas{_Z`oB@` zTn4!?CLEOBeI&7O|GIH<1&>Miw?#PQ490}k!>7IH#>o}9N%(g}IOGh*gx15SZF0uR z6}%?ldnj-LgIt&t4hrwytq)D0CKs zT&M`gPxgP$^kcwdlPCN4>oqV=t`IN@{ys&{VUP=>!a>24lPj#>p6-0St0sL^vpWa&iS4R?$0O+=y{<1=%F}KPYq-gIuTx2Ss(LoDvHL_{1ubrAB$wj84L?8CL2H8MdNAyVUy&ah-Ana z3=1tL8^2hJ#?$;GCdoe)$&fP`7FtX;4&NynPxFtOB>zk#L(X7WXffG1e5YtU%|B+6 z{Bug1%ODrVgoBdz4d0_&A{=rCV?yiU(?4g1FVVP3ct?ao&R|Sv zA-wPKouctH|Aa~SFGM)x490|3!>12oDH>1nPnv}PQiMa!U`%K+yl41M(RiAF$|U?( zA{=rCV?wLpy{~+A_b|}3N%*ftIOGh*gcid44&NynPxH^1g#U&DXEDfyif~Z)zTrEx zsr8)ZUo@WPpEU{otq6vk!H{rJ@V?vzCHIv{! zieShY3<=GHG5_C(>HPl)Ef3TA{~9gN(HsEtX%2u_==^`3mN)49|6y7_O6UI{O3SC{ z{Qo0q`3jx?el zt;lUmNGk&Lv@>}BLg;B);Xt7X3Pn*Uk3yUZMFu5O8oI3(GAg)Grh*GYRB&OM3NG|g z!SwVrDu6Dog%S#cP(VR}3<~&Az&ovaQ~=#!3vDQ%pgrcx_xR4Q_N@R^`@aHNdL zEFw7~y@*U9Qrcf+5Rn-~dJxGGnM9-q?^_M)g%0*tD(99R5ys~=1^Vd{;C^BbqlDjAJq+@x>;1$z5UBfPVTEDy#tX| z-)8CD=AW>1VDt|xEwA!OX~$+&N=GK%b&Fd=j$Y&nFFx2wdXXzq^deU{H`50@O3yQB zYe1*!3LgrkP$-Q;E))u3t?p-QKo9LgH$JN>6oJ6w0s>(OKMdUTauk1o+#(EX@} z$w$|TYWVh74F{^>*nJLjkAH#D=P|cCCxsG($Guj3OzFNP{WHuK?{$YF*R99WgeBR(S!P2xZ27IGaS#|Rmo1Nb^TbkG% zaC+E&9`0vzEj}_vPn@DBoBAG`NK6#o!+a?^{B5JZ+UUFWz=>B94o^HHPLGIhn0{}H z?u}?DG5s$Y`b%uI`(CU%JbVkSsN1{$fR~)c(~o~4BXAVg=@mD{wy#_Ze5WOC!w2W-50qT=I^NN=ArS*M;qM)92EpLNvVPtO)fbwAtG-!lK7 zyZerBtGfTkf9}23IJPyernhzN>=3X*7Gzm=CP|2ugs_Q~u&2cy30OcFVOfL?Ay&c) z(_(KTprtL)Mr}XcrBMgnZPe0F`|0@f_kJB&_Pv&^>wZ7~{ovteoE!VTbabRE>E8E! zU;TQ97uR47GijJZufen)6}L(n&;^hDiN=Eyhi}ymXY1e%rr-6s&t`n^<&OTU9XywL zRdylsHtp|W-ipvA%E^|1cmDX12Pztwz5|y^?%s-LV?hkeCV17sFcIIzBcn9-W9=eP9 z?fv&Me`EXo%wN&|AoJV$A7cKd-ba|<-?x{3B=i))o@V~)?&p|)!hr$iZ*jlG{F8b$ z$zRvoIy~s4F0wf^ZS;SrJurRrf2i- zmfEd-jr1L@wG}JeH~7Lc@|Q8hdiw27m43U^Pruz6q~Gqe&~JAJ>9;519psMUvvcTH z58hGu^*Z|XWp4WQWj^}#WdZv2Wfk=6%l`9m{NHYF;S-Zq=1w%bC;pEE9?uQH-P!Yr z_DS~R#K+-}b6-n*CH$4#N6C*OALYNC`Y`&T^kMpg*azwdk@v!HXI@Xfy#K}ci{W%+ zAo{}o=h~j_f7-n-^HlsP?WydOi6_HPhM(wv%)Pfa6;9=-Lqw!MzdN-%x?9?vrXCUM zqnTatUD~cJb%_W+l6yG!P>;#=A+tN%?(Rml$emqx9Hh#S)Q$tUu$$92#kQwzNGAHO zOKb~o%U%7NqVR>e^CRcw&dHn=KC^Gjq3%?7>a^S`S*nmgbp-k# zL^kG+(_is0zc#ftyC$(FvMPU!wlcdSt-E?*v{UL#cf>l>j!dN3uRx;f6^0k)79DjT_>g>!ceJ29_6$rD_6Vt=fbJLR3BGaTP>B+Il>g3F%_@u~$ zd~2#T+A6iCTXLafC=$vyr<$Y9YGbA$-k>#P>l5|*P6ARO?T`6Yf5sR0#XXuQt0vU2 znsdiosw?A+(=#;dh*nG0>8e3DO`Ri8@sG^x)bH+VG1)2dPq9-3at7T(^PM6TJhVH%xHrad+I6c*@V_W*3WHqe z6^<2LJei92xQ%v-f5do-{{)ll{}tJgGw2nLBfGORQgT95#CVGTM3d})i)_dl^a{t7 z-7!jbL_gV+OtP5+_c`Q3uW(%1rKk8ujHmcdHp!MmHslO?h2zRDJ;gs_JjH*CNp=P0 zO=6G>J;Flv*r)g}9jyc*Vm!rvs!6g%Bty=iM>x*pq1~P0Os0tO6#r=^$ySjJIfEYI zIFm;lBb;S8#ecdgvL|+XPSgN zML6UP`i0{SFCDqz7~zp7;VuylIfH)TIKoFiMrb_6f0jwOn*t{?$c5C;kG>x(eCQbA zD5v;GjHmd|HVIZmFysung<}N|9U~m&6#t0v6#qFU!5$F|IfHKDID$)$5gJeNpKB8A z6~U0xo(%-UaRk%*q+%V@;G09^DgN_Jf_)+wat7VPaRm=;%!@WRLo;)Od>je3R^;$cCIjuW(%19i{I| zji>l8Fv+f?yh#jlp+`8@6&Q!Fx4E?R4F8Dn(y|LplItmR8XYo1G7JdEN-osK;;NTR zH;sB}*~mP@`=muC=?#=Pg+VU#3CBt=R08T1LqlRe6%Wh3*b6uf7s1|VXR-AsAY8RWvCaI9<>07y7T|r{>ffRep)#G@1}F);=+yB5^tc#F<3=~iSEWiqE z#E4sK$8ruTK^3S54&VeX;07x2fI9XCbJc?e&8Ud9^eH&;0H>tB)KYp1z3R%*Z~KXKx?y0bjvE~hk*rH zfeqLJ2bG`-R09Wa0vB)tl^AhrJy`AqKHvudP!V!d7_b5xumcV%K@|vg1teGPp`hfd z1NESR7?IOhx~QpiQFG~{Q0XFx)r?%dT)IdpT~txJ$Wpqivp#Kf~AXUN*C3ZE~+bCRA0KNq3`R=rr}@_ZAM(}S$dQM6?lLb z_<$b-KoHb`T2Ke-K?7(6O`sV_-GmGjPysB!3T&XE@4NJCpb0dC5YT|sPsl(46~F?l zfKw%i%h^VoFBfnF6?lLb_<$b-KoHb`T2Ke-K?7(6O`sV_U4#r2PysB!3hV>4P2`{w zRDo*X08ZcnZlD4W@CvXMwe`@3%?>!I1XZ9KIDiwlfE%d51H8Zo{2%~=pa#@}I#3T9 zKqF`Z{sVue-vB{S18PAXs0R(85j25j5CRHS+|X8oHhGnx3RD9JZ~_-_0~L6H7x;i5 z1V9kffLc%o>Oli&1WlkBgn-;dn@|N*01L1J8?Y0D8>-@Cnqzq-r~=i%0W4HAL?fV0 zV-=_d4&VeX;07x2059+XKL~&zr~$R04%CAN&7vTgMOCGX zs!JC+N*6gx7r9Coxl0$RrHeeJi@c?ae5H&0rHcZki-M(#>fJ-H62*CJC|%T8x~Qpi zQFG~{Q0XGAbdeM)xe;>dBBgXuMd>0->7qt@#o>jwt#)kuIj96xpc*)U6S#mIsK5if zzz6&w0D_EQw2bG`-R09Wa0vB)t6?lLb z_<$b-KoHb`T2Kdk*!cTF00cn|s0DSP9{9w&Y;3GUKu`@_r!@ei~QvhOF}55J$wBr}mret&9zbicGe{a)-n^}Woy@prX%v+pF{ z3BQwjJNb6x?fhG*x1w)JZ>8Uiy{W#Lc_aRY_D1&g#OvYLbFU>|i@cV9HT5d4nvniK z^jpY3v;XP7eceyBJ;|Op@L2!eo;~d;>QM9Oz^>j$x*iTabm)Qo_xIh`eQ(=6Z0CVw ze_zjC?RUEA==H#k-dnqF3Eg~X`~DmIZs@+gEs^U@_C|X1*QKtDUMF3bzBYEPdTnM~ z-`2?1{57d-qSr{*q_2)$tzMnEDt?uARrbonmEkLMS0t~9T#>&#b$Rr1>GJetvCGuU zGMC0L)h^9mlDH&%N$%nSLvMn_MPa%ELGr@Lh4~9o7ewhA1nKi*=d0&u&WoR?(Nzc% z=Z4SCos&E#Lf0WkogF<}Iy-$<>@4-H%$e~swKKD4B+dw*kvlzkdgS!{meiK$7HLa* zb8NG^ITMS=v{<$~(H-v2ZAxy6Y|5XOIxTvdG~!wWiU06g1kwimk@;*i5e-LkUCFLU z7mm_L*Gg;C$HtCTkIk%!uhG_IS0`47SLaqGSK-)w>X_&;(lP0kv6bq|%!>F5ZAEr@ zVtIIZZm2&&c1eF{Pe*&i-F|SeF?xI<+oS8?V)Bvo(pDa7`|l3`T2 z>>dfxj*&?Wa-l~!*6tDguDB%|R<9qiL(0(kzSAUG6UmS>=n;-DdBwq?XC>6AK+PBB3?3<$@{*0p1x?9q0;8XLPFW0HOtB~E3K3;n{e z(sk_^aHd;HW7mkWvFj?6@EIZ;at8gv@rMr`*(q$<1{=Euu^sIF*J_jS!$mmc4ElxR z4SPAF&?_7(d#D2n)qa(BK#3STpqywDy_iBLGRTFhaI9$E{ayN& z!q@@jB$MC{ik!qC7kY#^c7JA>4k*h;dqwXsc0f7VB)L;0L(ZT_IL>6_gS*4n0p%2v ztzj@j-Y(4Lq?Ho>T`Gqp2^n6GR@n9%D&UQ1 zhHc-DZrJvlZ186E!?xdocG&h?E8z|_#J1mtj@b6w(GuH!2YO=L??hAV;xO)_U5|7T zU3AB`C($0;emDAK+jpWtw*4M-$hO~$7TNaug7AJc$+ka$F4^`6(I(se5c*`>A4a2W z`y=R-ZQq4f+4e`#E8D&s&9d#(7M4u4z&+@fZQsiV$j2o3xD20A;FA^bDGS_Zg-_ey zGj{kahtE~Q=c~x#FkYy}q5%g?JK>9HqHTZ44PRE_D<1f&7ry3$ulwN}0r+MRzEuO? zu7&T^!FTK7dkt`ZBg{0x_nYAdA^4#NztjT1jKXz3>M<_(QbZw*Lq{x9vYh({1}_=(=tH3EFPk52Ek3J%`5I_Mf8jw*6;l zy>0(FdT-l*f#%!x&(VF`{!0!13f;Huzef9Q`)}9*^0yNFoeY1kz&})w#bNx>f<=d{ zFmHo@vco@f_(diBOBMWYwB)w`)dBzJg#Y7$e|N)wsPLa2_%AQ~UmyIppR|3#0{Dv* zgmMiO4Z7_Wb@<*=53LQ*)(GuQkgjh|R)%1e2CG}3gB>EB5;-`IPh2t5rT(nWN{crv|v%26v{DsScWqdcw_~fWr4G;aE=YmwZnNF z9#sjCu7dNc;Q|L-=!A=0aIqVByX#g$@!sRt^MJ-%e2alk!RBTd3PDYSEiJH>?I$NlaH0$+ zDR6QHoMM4ft#FzRPPfCuIGj-l53eGN!#JWEi`pD8?1VF2@JKhDrNY@BIL8a;`rtf2 zJSqT>7Vr5#r9VEM!}{NAe=qlLf{wXo-if^IXcr^qw5yL9+nc5g`x11;g06e>_ayHL-;>=L->L3Q-yNlE6(p14WVSC(=boqUir$sK zGfCGe$kKHR)H~9*M{m#5x#;2BvOD5C)E((t58jfvMY|<)bL?j6=G0A*n{wL|+qLbP z8)G+0H>Pfg+>pCIalJ-YCWs}ZM2e31=dMd!r(Kt!y@Mq}i1Jb!EI=-KyYY%8=XXxm@bXMxj$eFn_ z5@%>K>QT-l=R8b zlk+Df=~@HX6XPeUC#LC21Nq}abd`bFMrmW}xCmWiAhAK)kXaw2D-5L8Mb_o$2)-80 zbj7-)uGHGd+T5{;V>LQ@A6p}>Nv)31vHQfT0XlAKNjuc%@AlIH~*V;35Edgn98(l{rzEEA5UJ#}8@so5F zf$Y)oqt&C+bPa+0yyU#_yewToK%JYO6P=T%>j#8qXJ^G{sdV*#=#lxE$(j4Zv9J_Q zwME);MsGyJ6t+EH6t=3cUa;u?Xb-B*mP-niq6*0O-)SIre>zZrbts#biIHa z)dpyjx~MK7IU!6}3W!rxK)NML*9k~!VJ#bqhg7Nyh&Jb&l1*W%3WztVjp>Fc)dVE# z!}Zy^I8_9sYY$R2fL4bNr)Kd8z{l)3pHNT%{_2D7|%0(wY8QYn-kFkhVmr0w76O z0mv$GI{u%gYXIb>Bpv-nhri`dZD5>^|KB=T|36Cq|Cq@>l$EsKWGaJP=ogM-AIhjF zX?7SJxo$QIKSqQ@&Y)j7-tdv9Ds~tfxo$BDUnRmJXV5PkXL!j;njOYQuBV%XuNL8u zGw2tNH@tM@hNJsun1rtp;gB=v7mg!*)RQzjjE!8+GzmYJ0w*%ag{p9@@Zw3Dw8yZd zk!y#sk?UC|!D~e@h>G7qjjv5@dv02JRCfUb}Y{(h(3dfb*F-mqs z|0wG*$v#13L(ZUAIIir{W+@%UW+`!#>=Q*cJ%nL#e} z3dd2HwXF1f+zw-5)+Hvee}Yt4r5`~RVFv!3~>V>XRucIpWT3wcfX-Z~kn}8iQOI5RR3tf69$onAKq{%-U*_elF!sWsnQ~!m-lzPr1goghS4tUpW5o5l=Z|Vb*mf;TKTg3o)EnR>rYUZ>;#3+QV<_5NReuTB0s z_5VMPzJ9dRCU2py-`q{t1E8-j=-B@i^!0c2{iiSV|6lg;RrX5y{68>w{2!nHCv^V_ z@0Hom_GtLd8TrsKYz`78cTSw{kckX(p(-pCF`X$Ab@UDuF^%@pZ!8+S-X!>9ik!kA z7y5)_1rHUCEi0Co7>dR^j74KNm}FlN{HLMJlF zg{p9@Xx;r?`gX@yG`8I&cq>KDWsnPf!i%VA>~ywCH^<`JUfkdGNt#+d($~5rn>Jt2 zc4eFBoHzK9?Ix4BZ4@+*K`!(O%f&hLaXoFg9fMgnn`B*2DMvHNg&yG+*269vWoS5w z#mPFmj-!s2U7OCLfh}963%kW6>;{UN&mb3igyq7jhQkcQy457&~fD=e2cG&IWVnW=l|-(?cDgI2$gK`!(P%S8Z{ zw$mi)P6}DbAQyUt<)Vg$HhXYrhL2eHnB?6hh6XuzSh)+WjU`cZ;Dx&Y)LVE^26K za|efJcpvzHN#0J%Sim3`dWGfkhK5FYJ#%$Kd(b56ehOL2AQ!rYV?|+)eIaTkjjQd- zdHQz-51B+gKq1Q*nu-G7RZqlbnYrVK#$Y=oXgCDGX_Y7}6~LkRCCK zdYD4yFvx{&VY#TnkSNOV0NiDgvx^euG025(VY!^bkXDEx&D0O+QIn`gDdZ>yxzH^v z7gZP%MHx01yG?TXDPa+VT<8{-%P9s1$`PW{?Zr!g5iCAyJfJ-SmXcit#_^R`a7-iuimlBy?0n;KmGaK?N+(tZL9o)+pO|MZ&_s< z{rSk7Ryj;x8E%s|zG0O=w^P0U>sGmn{_KCvD!19_oPk%Z@^M!BeE*77zS=^){pio# z6|_&_Wvl$5Vv|qWYn6ZhO{<)E-zt0lWR)LG(tdGTFJFzfXbSE0#5402&mST55&BGWL$=S<>W6+?ua!Jx2QoMDKgerSH)B=a@OS;-(528HD^4MQCH z!TAM~xYsG@7zVj8C@dFe7~-fOo(D`a-w;EDoWY>5T&7`&BR@c=P2%36h*b=7p4d-^^b#3rf;6;#iyWQ56G(~k?&K?8V0#AAS@TDA0VEA`kf%JnWTL{Ima@{g#lr?H2naJPe8+d zkk?HjKNJImoWX#wT%>-0c>d{kg}h;s_9aR~LzA>`Q_dm=xzH;tmqwpg=taJeW|+G#nM8e$LKZMc7knoD!m*-; z-@mNe(7AqHXW?VSQr-KPFPr3jpE4FQ$c27kxxB*rmttPwbKkgj1bq23tGv-^lYdK} z{kQ$zDm(vWl^dH{c>&;K1Z`MRG{ zhQ}s9k+911(^mOgy;k|`0V|#VZGS`>BZfc!Pv|y${{P72p8EmaXNwu+ z!hmqBdv5s6SmB;4ZbuAHvags#{*b~JG024hVY$e{qkbsT@G1SPCTTws1B9HxfUsOz z;gznCR@{mh-fe!(B=W};vxq@13<%3b>IaC8h<Euw0~mfOs>ee`WpDBrQh?OBm!rpKz?SLO}wyTQq~zh_Iv};p--G zKc%3h4054QST4>XHj{&KhVA4xOtLm8GR#-jB9)n!y6^?c96<(?_QybTxSU4)srhiU<+a&Gx zlyek=T<8^+ORE-hRY)^zAOFiF>W^YzkTa+X3sI+!JzGoGL`t7p-!aKLMC(6_K`vB< z<+8+Vi7dnO>boXEUr@v>2DwlbmJ1RO!6lJV9)jO9$@&YW%w~`aRbjcT!l004cnE&q zB?gI3JXE8v1cl>WN=XW2jCA(vi?TvpUof_s={(vVo)N>@bLSgNzmUZBEldS zx`kr}6^`-J^Qt&e`km-MGKu;Jg>*2;g>GTFC^}!O5M_Aq{n#X@(#cpSU1T0PP!$$( zE**QGHXL8rs2dLQerA$YMeAR}AYEfqWWjP-VxB~n;q&xQOoAM=+M^kyOIngXVIk>MwC1B3q{~K% zELbj!&fpsy8r}f6U1>Pt`%{xRl~z8VLAqF^h=b+ghKGhdk@}a%pP6KNY0a}3q{}pt zs<4oCNy)4Yy%bZk$HK;4f7tiuCRsjO|7-^7%8Vilmdg?kMUiEAfAI^Gpa89QE`xM6 zM3SzCI23et$)JW_idU>$w{-BOSbrCOZju(HbC%d%DlC^(*l-}ruz~-zNl*i=d@+M` zEkh9m%LR#t`-aZKQ>#tCh5wC7RwJ#sok6;Gp~!;evIYl*=as1182Ruq{{7QOt#a(^ zR{3wctn%%jT4jy)0lf4(t9;BOR{67!t@6e6rToJx-~TnMJmv3J`Mn3JUf`=%`M0-F zy#O8m4?bX(pZSRD1@5=X-}$mtzTiHqEYY9$(Xsz2zo4JLhkpJ;tNfdtR{7cw=(s<9 z?WJS?vuPi|`(c~BA!n6yZPZKfAbtL)Kfk|V-!TrH|KB$J`M>qx7ve?_9{KsL$z669 z-9hsiC7Mz2g}77hB)dzjz5`XUPuWG8KjeeL?$ekX&B!+$Z!x}4TOmq9M{ z2`{4ia?2=1C554_UEjH>YxU~Ep&8y^{kKWn6%;g&K`!(O%f-_&UNas3{e&JYY z!w=1Moim3==~9#0&k;`l?>A9Ga?X{3oJY^hXM_o6~!d&4qEp*2I-6z zGAJA?4R6W3L(jWaL*vtLS1L>r@1&IV4AO}$A`zBLq%#_e8?wUu>7VBolej)w`8o#a zWD^kw%f$^3aLv#F^@&!K#3ZeMJ%e<*iAaRy5{Cy^NHlC(sKu}NZ>(p-PFi^vgLDcA z84!*YH~av_Q+;TB`fZEdB=8;zi89EA0b#ko;+AtT(6DjgCTR~)PJ}@^7laH7$4VQ1 zfG%4XT^BiadEqlrr~V{>N|VF~DW!u!E({9GB^KsyIMJ{#ugWCuAqrZ;Af1Fl)(FRn zb2E2uKs+Ccam7zXhVq|klhB7LsFOiD9Yut~a-oGywl35#NQX(@BeeD<402(Ouw0&T zkj2kMBQFZ@{nKpnIduI0i&LprKOOt`&alak(>{P%4OG)lpZ(WQx5+=J&;A!rv&j`y z1F*B!CQtglReqIf|5tv`Du179|IecufWHT9^6gXuP)~n8|6f*l5!C>ElRo=zq2vF5 zrO*Ah(DDCT`g)vd0Ors>fcGOdd41k0|D>Jz0pRn$o6Z$DIGy&6cC)XB3!neRv$j9S zYNUhWTXaAlY%0na8liLaLFZ_L&d~*(qX{}k^K*{g=NzriIXa(nG(P9(d(P4JoTKYG zN7HkTp647b&pA4tb2L2X=y%T1?wq6BIY+Z|j$Y>+t)6dpSqfa*n3u96if9T9$JwumSWd=V({X(XE`LSvg0qa*kHz9G%KJ z8kKYODd%WY&e5fuqe(eOk8+L{lMmfav?%B3P|ney zoTEQEM|*OPw&Yw2<>(dz1yleFumT&f0}d)d6{rRd-~=v!Hso9d9^eH&;0FN^1ZY3b z(S4kw`S{T7L=SR~7UUcq$T=F2bMznQA)tX4&!2+I)`&K4(I3_&e1lUqiZ-v({PTS;T$c)c?f8r1+Xqc0y0nl zT7`3T3g>7P&TRl~!a2Hxb2JI(=n>A*BAlZ`I7fqUj{e|7w-ar`Il6>%GzsVE5zf&f zoTD{3M`v)3#^4-%!8zK3b94pgXbR5J6P%+ZI7dftj)veo1T?_92?@wR0TsXktiT5B zfP+d<1*(CA7`mNKEO7xhPyu>?b1(1#KL~&zK-+JQuHPI@zd3q-bF}>C==jai@SCIG zHxB^~NWFv%6i@*yzzS@@4mhX;RiK&}x}6RzaRL``0~L6H7x(}=d-DJY0<`t!=<3bU z)SIKHH%Civj*i|O4ZS(~dGip^Knp-CZ!Q5e^5*E{%`1QfSbfr8X_*jUfsUTYM_ot)-^sNjkfE931393LfZ~!N80Tp)fP+d<1*(Aq zI6)o#uKgDc@Rv>S*Uea)O#f#8qZR(y4*$|Z+9X#i{lO*oGWrpqfC^v%R$v2_pb9vE z3%G#?c!3`Tzyu_y4By%bdmYEO)%do_2}3Gu^}$Isa9SUW-#AI`#<#!sz(4w6J^=q*1OHM7|5|-u4YO5V>7YO8p}U5zYvIPXeteqr@d1sx>?d9bzmR)A`F!O0{Bx=2 zqR&asrJjvEn|mhljP^{HdhLgw&hCrvQ}?BxiajMgm3lJrWbTQ?6WSA*$77F6kEb4s zJeJ#=*sJZ$?uqZw_M}tMRK7piAMVfYj*rrBKl^a}VeR3}L-B{yhtdy5AIv|Hd?4~b z{{H0sVd}V_yf1uT?%u?`+P#^3V)sb*q<2PlN;^~3bzizWos1>bWQO|gYkk?f5_g5~ z%2DV2$esB+Qg=k}$lac}UAsMVTl_Zlw)BqZ4vBj2$8J?`&D;{F{`=XR6E}x%&fS!x z4*dD;sqNA2()RR?QC$!I@b%e5JfS8sz42bHH%ndk!`J1mO@rXT;7>sW*T8bnW!)mIU?Z&uva_j%?1yQq-Yeilw__-D-D+dh~0XvZt}r z(x=8wRZq=OkACfx?8&_+hfmH?m;T5}`4dwoMo*NePk-zL^@Pmv@#D4Qvl|l|!y9wQ zC8=9~enVmYHPF9u|IrlZcTDcWKDi` zYIStAv^u>iwn|-f;}om!F%O8=WgrC;!+Sbxvk>e6~it{26ufj~%HVnVA`%sm;uW z6X9?;*OsJy{`n(PM?{a1j!08SfA#RpjQ9*~MwWW|hY!n5Pfm|a&reHDi%#pE8lIY) zlAIEmlAoNK9GxspPEU$WQYU35#wThMvl9~3+dtQuY>l+$TT;~BUusEfF-_Gnp?F9O zWt&-Zx+&JAHf5;4zt)&-NHl~Sa@65JQlGC&)kW(h>hT||RckXfaq9D*4JLx&U@nlP zPXBp-${+Rj`og}PH%XoT^PZF^>XAHY>h-Ux8F$>RxwF*mKkUjmlg@}U??^eK4#|=ByTrmtY(l41H!TLhW8zwK*y9;cdZe-?hTb>Zj-=%idw@U zy;hR}VY$G;o!iAgLoJzVlD3BuHZjPB0b#kc!a*hMN*_9bUf*TTV-mQRqPiKRz8+*i zST1mQ-@OPl>>Bl&q&-Fnn;E3m9%N8BR$8H)0(;U2hgaNjXgKZ6XOj6i<-{1|!l1BR zW?|>(aHe61ev`N-C}=Z-)K!EG3d_a$#m>>exZ-X@L&ZqIB=bqii7`k`I7B8amuVOx zo`d?`=|PjYr)cGy8RWvCuw0yBh{bXWL&ZpqN#;IEi!n(3Kggi4T&7`&D5uaL5veta zdzvCPGe|u^L>w#^XBcAf3|_-oF?A-H&rm{)K`smm%Vipdh*Nm=r^VEp#Jxa4T?}$z zP*^UmaF_`X)MZOnE)$zlL(O1=N#X!yMH%G6ps-xx@Bj;mhKFgRN!*JRw1PouMnVRK z<>K@MEFPiPKQWq25?`W}l?+lh5|IeYCF%!=M8l@0*(B~YTKNJ7sc#197mgJ-e2AWo zDi_a^G#q9MndH4r84DSt#u*|HmdhJDiY@XC$6qv)us3Mciy5Sj8Du~>Rv2FBePTOW z7+mp{!f=SG#U%1gidn=U7Y2moA`7pDLy?97wwk29MLCNZ#n%Z#@4X2o zk#CCuLe5}7ST0gOz>#m&CYq$ZO9@LEq^2MwH3cEZN;5n>m(lqdXqX$;zm=I}lJ_31 zeHnw)7ewU2a(P1!PmyPM?oBoc+fS=r!5|k>N02gMhKDDG6(634H!@R9A~O`QoIz>} zLQ-20lgOdjD?}OwIMpQWeOmVl2B{;6NP}bDnb_hk?&z< zn52D~*1dv3>IfpzV7WB?07rcbbGS+5M-;G}L23&kB4N2m{QyV4gE_(^?JKnI6%0~G z5RnGUrRfJ)Y(he9WI{Q5b09wMwwXkJl>(MC$b|u6xk&v0(S+oWbpHR=MK;;_2dn(> zLYq8;dH}q+z$UMz8i4Q5r(^qc{{P>Ow#m2sfR61~+T`cx{Qslr{Qpnr{Qnc_{Quv5 zmwumW033g%-=9R+0{CzG{fRbt6`lY8T{{2&Y&!n`1)cxDosRvh^yeNr_J26l0PLsQ z|Fx=3&e5^|9y<2Vm`(od_AkHcrsMzHkF;a>h5ruaSV%i4zPI)rq~k-Hjs8&VfP+d< z1*(AqIDreefeJjp3w*#20w4%#KrN^P^`HSXf+o-mq<%sM3a9`UUOli&1WlkBgn$NG0NYPUKn5uIP$~clJropr zC@Az$Q0Sqc&_h9?hk`;61%)083Oy7QdMGY{LJtLn9tsLQ6cle;Gx(63Op1Pcql0FP*C8ZR09-v zC{BO^4+RAt3JN?F6nH2o@K8|Tp`gG+2>=v$C@AnyP~bt&V3c?$DDhBG;-R3lLqTbW zg3=Bp1T@eBB-$J*GEhJTumF^HC^mr74h5wh3Q9W^ly)d6?NCtKp`f%wL1~BL1}g9X zFYp1Bb|@(AP*B=Iw-Ci03W_@v6n7{n>QGSBp`fTkK~aZ-q7EelG|&QC0g5^l6m=*v zPymWL6bnF6hk~LG1w|bSiaHb&btow6P*BvNpr}JZQHO$}4h2OW3W_=u6m=*l>Y!VQ zvJM4h9SX`i6qIu)DCba6&Y_^3LqR!*f^rT8jflyE30;ZRV*p`e6AK?#R~5)K6= z912P}6qIl%DB)00!l9sqLqQ3Lf)WlT1T?_92?@wR0Vv^6EWiqE03{p>N;njhaL_G8 z5r={z4h2OV3W_%r6mKYQpaKu@0u*m3DBe&40L2>$iZ>J#Zzw3Lp}=;tiz&Sb!DS0E#yh6mQTiMEQn-@(l&$8w$!c6qIc!DBDm_wxOs1 zWg800HWVN5g8&Eulx-*|+fY!pp`dI-LD`0avJC}g8w$!cln~HB3t)W&$~F{~Z73+) zP*Ap^pln025_Ah~_}&gUs03A@8aRLxxPTj|zyrL%2mBxaf}jS}f;vzS8bBjx0?i-< zG|&RrenJ8=Pzbt(75Lr)tiT5BfP+d<1*(AqIDreefeJjp3w*#20w4%#KrN^P^}ye^ zjN)4Y^aqWKr~$R04%CAN!26d|9`J*DpaFS+umdOXfjSTZ(tg4Q9KZ`|K{J>LtOto| z-~lzD2}}UCffe+-zzb?YGnfdh`-y7c0X3irOaPVxL={j$5Hx~TP;rQ;1a1%j4WI?c zp_Mc&-~>KU2SPyVB5a_c>lpeCpmY-)xPTwj0}aSMgdI4657dDWka`IlZ~!l;1TNfI5(QA^w8)LiYK@^Wo=n&n2IWJePkq^=$N6>Dlx%v1in0 zGEc{!*61jHVqbV)?y2Nck*D%crk;#GDLt8fBKCwzNAly3Yma9iOFR~)WBJLwk-hmn zsXfs>5*^KtrPNfWKi;p=@%+T@@b28B$wwoP=69ubMR!TN(vQR*Q6I^OWBS>L5)XwR z$~~BTFhWQ5Qx8NRkRC|iAG=?@KXYIFKJC6N9oKi$asBu`+CABwiJjq{xx15hNAAui zQ^{yjN~Zf_eQICkuJ~QrUD-PmcZToG-I2T_bVrts?1yj9-Ily9a$9~!YMjURV>hZd zW^Rbzz-~xiAG=C0o6tCwdki(jT)mc2A_Y53CI zCCR~~`_YS~i_`H~T&3gt@gA)wdr{(|@J0JCj9;i-n7trzLHL5)`N{Jm=jYE$ofkb% zIxl^0jE?eW&WWF+os&H~F~)KJ{?ntUOQ)x|#I~qgGMnR@wawXBA{LJ2x|7|J?);|I zrsyVVQ~I>nY3ga2Q{$&7ZO9+x;Sd|YlrazkW8etl|vbiK4by)L#+U6+Z*qgpiE)%_nF>rbo< zugtATu86G2FHbFxE|-?4m$fg;FHJ3tE|r$1m&BH+OER7DPOUTBk?06_iy* zo0OasnUtTHni!oZO-xUSO;9IfTH~!+YqllP5^l+9NiCw~L#a?SB!$w=v1YY7(-d#g znzD_F#&Bb2dkoL#? zsz2k4`!rwHoA8FcIZx6P@#NK%8dW7V?T)!scg7WWX|Aj@;S4)-j-(^v$XBPTqt#M% zx++$sR%I&Vm0D$%CwQ3W>`8mXp0}lJQJZ8-TVqz$nz6(!nk8G2s0df&l%x_-@^VU! z%95OxVv;IlSe!oLpLgrwK9xTIH|szD_wQw=s8ten0C*36k1dTmw^9*8rL$6^|Co;! zxdMkiAGthOx~QgfQT3rOM*gCsbdhtEMLn`K;+D8d7r94SbkIHW7uC{5p3+4V`a&ar zG1%WSa?!*?6GtxM1CvKCQU<1uT;%AUK5~)TGh^f;zx(i!i<;a=j9lbAu#4Gd4o*-_ z=&<6y7ZTrUN_3316!HpLFdH5RQte`LhA6M zdin`IQ>?dvzID0uKT=p8C|%^iZ(S>XiyyjWJ=VfVi|c3_xxg~u zGya5gT;$dz4KAwh`IPak zBFEYDW9Cx(emgWmXJI+-{hyJGD!Xk%V;KCYhHn4JMKwJe>4q0(#c}X>=5o?V1|Lfj z24c|c$Ei7Yh&#&S-bRnSP%m@&`X&_yJ^YUi?SqfG;YI!fC5t8vT*hpz&WVMGsrxG2 z-U-E36_?wG7ws7QQ66e7{?ra<;aSpzRqb%zDppm8RZZ?4T2*nm?Z9P2_f8xAh+Dtv z!XQx^uM{RrlpcEqj;HEXP@gkhh^YS=4k3mGDoQYZswT0ew3lY1$$jdWJbBxL>AaU9Zq>X@8Y| z?f_BM{u-@-z0Mqyy5C?9sq0O;eZ6lphkf8nw7&jk%+j?(BWXGyrfqnE{h)Z@3@>2q z;x%A+K_e3z>fr_MLt^_syg)l3w*JEl>~!zh2R9m=zIRoEDo_m?>Hc&zfo2c_8kj)$ zu}eBY$Up%Vpt|=_dIr~t*|7Hx-=M)o_#kMj75|FQTy&q&TzN59GUm#TxsotfR?Jlu z=E{z_;+U%n%vB@isu^=N33C;|T=_9qKFpO5bLGTb*)dm@n5zkxD<|eEfVm1{t|~BB zb(pJG%vBI`)q=TlVy-GNS60l`M9h_pxsowgHq6z8;khb|q;Ytz3JYw*b5&R{!96rr zg#``6b5&U28lJ1df|lXADlBl)U00kd7beFIRNw)vVqO62CL|yOE9S)p?0|zx;Ly#L zZFsI~2j>c(*KLKF#7ARC75$FGgSnD0S2oPmWH-%~1#?x2xw2ud?3gPBbJc*kYQkJi z#9a9?S3b;@7jxysTsbgT9CO7nSFM;U2j z<{|)spaxW68Z2TifDPC|wU`Fr1TNqPm2~6n&cnnL1-nda_2OIXop7l10}d7QF!>N+ z#XL;xKAoNrn2ZWc2FGMrF&Q>YhK$Lm$7D2OGA3X$e3%R`Cc}ft@L)2kF&UMZ3_B*H z1(Q*Y$?#z^{Fn?GlTm}o&@dT(OhyQkQH{y4V=^i*8LgO%3QUFt^UyLp4~3D`56?qk zfn|6e3JY3>=b^B`F+2~21rvtnp|AiSG5&w>-=QxZ{P4gB``;hP^zZL`FY;dg-PF6$ zccpjJ@5J6w-^sike_MMy`&Qzu@LRbzlW#`e%)gO(Bl?E)M*8*G>+0*7*W#~fuVr6N zyc&Kr_ezq^>&U;HdO7;C^m6p2^8170&vifB^-TNIZTmt`xu48D5vMaZvX3Vo4?muJ zEJ^2X4<{bZKGgqUZt&cV)cw)>rTf$O#qLw@%iJ5Mvp2H$B<{)V9Jsqb+1J;5SI?c@ zcXZt@-JZTJMrUVacEopRJF>SXZVlg>yCr!`8e9l9K8I%W&1B3xTOE$zIY^_?@9GU>8y+NMX`(2i!%Sudu6mUBBz_3 zbCEbLd|K|*1glM=@&{XMMijfTtZ;46buW0?N8RSC0uw0^Uc$8>3+is~z*sm#O z4TE&05z;R#7p5EDoWbE4PBB=KuDjkT-@+$9>p166jqvK9isIg%ODr}g=1wI zU-MRs`kHr)Nn)O|)-cG0eqp)9;h96CVR)-d!u}+N2RVa&VY#sXkG=bjZsR)B27YJI zX3z&6AV^|JNv@I!HCvW!5fZ6lixQz~*^*7jmU|)Gi)<0@-GqBL;of8u?j=ryv`u!` zv5;ibi(sc$VbeFs=6j!uLJTF&?0$RBcfLQ?=lDku0`cGi0}Q6T_nlZUR~&Gix5^;# zca$=~pv(<&^%7f#H+h{mU=a3uidoGdwO1j7T)nWC;T>?Dx7r}_50o;%AT?RxiBK=G zWq6aUuJhI!B>si&e}F-m8|3OGwhV9bI&Ymp*nd#WY6hvJ3>oC=g|!S% zyUxRUul2vL&a#Qy>HPoS(VTxbe%~qv=;w3aqxty{w~1f+F7*YZx&MAn=lx$sbN@N0 z2f(9$v5H5~+swpf#h~epv(X?;pq%9l%3MEJFU`p&(ll%8O$JdW3OSZeWJ476 zai@y1Gdpd7^Qii`G&35UU=U`efW-{TTpw32%rOzB`F^$8AjwJ@83tu;fIC%E?F$Ho zHQ2YZJ}}M9?I#+<*(himgEBY3)r)iSfz{(Q-;7T($dV~#F&!2~7W8wc%9>adH#HVT z%?!(14AShB(90mTgyLyXFRivH*3vX(;ad%&oIDE34EnixQ6ByzE?HB5$$DBhFiti| zb5TNy4!I%?`nh^(wSm>rG$s9~7({vK?tAH=4WeLxJ5|)g!q|Vp`o_pwXAq#X5%_;o z?GyDORK$RwKUE5;8P8v!gTiw8KmY(WPm$W)WmDHZWBI6_G{gFnn7HIA{H?ya|2wx zxY}!0kJAioyFpevrOaWFdJU02?q#&i=xsH`iV4ZJ}H-nPqF(`BWT)n*J(6AvkujN_1z#!^i3Yp8G%nfp>Y}`)jqy(AnJgh{FfR8&Y`G224!x5s~6~M4b%+o zGJ~wSd~i@^Fu>KzniyQmXa7$+Y~q#F|4*i$k5liz9;*HS;>%RmPx}CVMce;795zvT z-zpZU?tlJ!^l!3FJn3EP|3`EGqyL|mem?u0Ra`*(06wI?e^x-wo9JFZuPgEBY3)ytZA z6%M$Xy3!!!_UuNyk#gat39tpF34j%ZK>^S5hMeX^Sam1%ooz&(%w-f0*yTmdY7KEv1m949eUv zcdDq`*)CX1t=qhM>5>iWY8|qATGznW8YK2nRv&{hH_X*b^zu*hiA2q6_&S5Ql@zpq zL75xip2tpQmmFYEVr|26VCjZaj$5Bv-najT<@E+}$5GJH49eU9S1-=RTH-WAyTKr9 zHKnXzQ07LtQ)MYk842>N{*CK4uS>34v-EgAKFyxD8x1noP})icWp0$Km+9LtQ}eC< zCWF8Oo$y*EpH&Rp|gEBY5 zohq<)S{;^})TaIu`X|QNy0vtxLF6V1>t|5rM!0&B3V$J6A~j#EZZpW+%!deN1|wX( zyg)N=>BJCQKWT0^h&+*E`WckD5w2e3#1QL|npg1-gS=BHX*Gi~H^?1k=drWs<7U!- zBekux!GV=aPgy;%vi}7BUOcL`8Q7f$c|(-6hCym%LI$~dd2ZI4H+*Ev*T1_A!nRSs zY6fL)m^)QiZAHPuR;*mLaaDbInmxv&28pLq)*1$7ZkVf==&cQ}nW$Mn^9FI-DJadL z%#CoTimSZ``2Yv{`&vfW`u*i@gUHhmso!dn~9ot;C%*h=h2<7V368BlL78j zakZ5_e+}2Jt$+X2yaDewh&!JmRx(JPpLrbAi*wapzgnE;{r7-D)-c_3KZ7zi$ek*y z<-=v=M$F!gJ>;5Wq7NG6WhrSHgVgt#4084I>K`ukJk3$jhYZ3lqJR{GGB?bfDy(I} zti9D~I$au`=ELP-gT#v|YYBrgH_X*b)O@&L0$=`4pY*BT`s-Kz(<*ME^8kKJ$NzV_ zY@+`|tN8Ta=o|q0|8sQwe;w@u*h};OWvK_?KMtYe{B-=ki}nM&M%(_2Y5u>DXzsr) zN7}?+Qs2MJmf1ur{k*%MdIZw;|J$_vzk>e%1|9!DhqnL!PTT+YJZTkYe3j-1ELp{s zbRNL>cU#4CG5;U^+AC7-keYLo5$;sa*#4i7 z^%tr2^YKxG$jd0EpFwKS%_E^+r1tX>uTtx$)nf*ESJ1upGDuCj$uM`Syq3kV_Gwig zVQb>!28mZvN{T^h)6Em1UZUpn5d&=f#_)te+)ldl#SBs>Ycj$;jlQ8|4zMv)dky;r zQl~6k(Yh;H^BFm25II6Iy$s6S2v;vsVUr>?pOXcHylW|G8H3c#nhbNN%B#JG^}MzH z>-uZQ5;dQcPZ}g%M=8r0q<+>s5$Yv+8zZbIYCbEUGKjl@?!1pdnH%9w6{mR(*Y*$g zr)neAoJaDsLFA1T*3Y2Kjd1lMo3CLbQggWD8H2o=DQP8x)I^(%aP{&6jc1gO;IHjZ z@4sF9tU=^06muMdGB?82i);?D5vkd%ea;~7HcDE{Aa&9vBV4__<`CDdT)n(ehSR#m z_q;*m?G&?)L75xj>P0q(*of48p?<+2?@mfOjzMasO~$xW<@uOzB-D5nmu#S;`m5+G z8Om{bT90qOXb^fA1s%_z%#CsNLg}2o+9%vZsOB^EC4+m9H5@ zK0*O27^K$TJQC_fwhXZrsaaRPZjkpF-TOKQsb>`#=1!HT`7+SIc5S`$iDp&#hC$-v zl(L>dnH%QnB{shd)Dtyp$~O(-#wchlgVeK%40HA3njd%T*RHM)P_qO0ErY}YrL1F6 z=7za?iOm7l6E*9}w+-T+qM-E*Qr9Z7jXPBwK3(Z}Lj4;ny@IRP(~gVUTBP+Xs&@=h zpQfY@3{v+ho(lC+n{N%giuF{@+VWk4$Y&^E6NA*eii~roiVU#8NNm4>Hr6AW^Qzu6 z2!58rHZn+Utavcg3l1JASTor74KkmjgiQ=m8!Mg(^)mM#Y-3HLIn(M>2Eor$%ti*O zp%o8?dcpe-7ON8em85lJe~QarSWWZ&KW-DhHDD7@d5q@tr}_UcJ=Z4MXdl3Rv=3m$ zU#;RBR0GgQ=K+*y?*9yJ|Nn-z{jZ|`O*h-bQQH2G+(hRB(E0z#jW)4lv5Bka(R}`9 z+U}og6aQ+mi8s%&iBakS@LZQoJW{lYpHJGv4O9d03Dp2xL^S}6Y5<=8`a`#b+`a6e zqguBA*&q3%uAf=>fx%PvB0W(jGDwZG$Tsd&Po3tSh&O)AJF)fq+@}pvU!tUw7^GHN zJQeDtHs6UYshTfzpD~DhnF6*lD0Ac7sUkJ+#AamUov8Unx7#3i7e#JiQ0B(Ddcn4E2KdAME5Wb)PfH ze4P^3F-Tpz$Tsd&nVLnI+FGrpBWKl}_o;G|a{_t2t@;D+Z~bp`<|usdXApg?g!zhKU8X_0;8$3<67Z_nR4{US?#RJ5?Y) ziXx5YwXc8O`j!vfp4M;hdkkVfOHn5>NKMUnEYyo_zBgNAHQ#E>2AQ9uge?qGS2MDm zJ5^?o1xMQUA8KRa)qIElszLJSDeWW%slyphhI+}(U2PMirDV-;zh)5n1&Y|hAoV!o zp-?aM0K;u8#F}sMUpGkpBITUKAoV-r$xtu(0K>(C-1<%Q-wZ;(L=o#5q#k5slsi>u z?QE<1mMEU%#z(JaZ{{})GQUhY8yKV}WIPk2o>EWE8NwQn0F{wp6Slo^b1^%5r! zw6WxBzV&{`AofFw+Q=ZypT=XMUhL$7VzF)Ak@;PN#4_FgaSYPrVq}y%Rib9GUB7na za$2|XZw$*?=Lh+oLFQK}=XeHXZj`H+*<5U!nVMJg`v!quqo@G}Wp0c+RiI|Etp~O& zwj<3Rfj=;a{W=A%Vo>JBxUI4NADYESud#`TQ60eBv=5-4<^lN14mz$+^8oz#Dw}w5 z8*QH-PdxxnqXn!Q5{gI6JN6p8HHb}A;C;)AcWVAt&(FREl0<=Mr!vJlNWVAt& z(FRFI8zdQRkYuz$lFLUjAlsGsg^)9BpJ<+WHdvP z(F#dMDRz&@r&3{1cbEWk=MAEyo1NI(X5 z-~dkG0&d^|UZ4OU@Ph!L$4%$Hn=p>qtGl6S_ z9zp~rUhD8L8&AOM0O1i~N!q96v^K%8hk&UReW z0XjhfsGtjU12#ekKm;aW1{PoiHXs2R*ntB$feW~S2Y7)3e83L^AP7Pr3?fAHaYk`X z477nbXa^mj6C{8Nx&Rv^1Rw$vFary)0vnKk4D7%GoWKR#zyrKM0Y2ad0T3jbk28d8 z!XN^oAO_k%9JGTD&Q z<8zy;jE1H3>1KHvud5Cn}c-1y!-^tSiy(p%ZL)VIoS=H5)cS$QM>M(T~~ z>xI|TuaCTze63Q<7gNRRcwsy}E{qpn&Ah6-T6!h>iuy`%S+#pg25DgW0q$B#Uge5~?l{?XK<)kg}Cq#qF;DL$Ne zSb4bgQ1&79q4I;d2a^w09>_nCdZ2oL;r{gf!u`ejGWRLXK7s6>;@z3MmAgy%Y+lWm zM{}de(aK%3*a#Q}M)J@eJ3pb{36mBfukhwv*p>%!rdiDD9b-C-3*Hx~~Uz@tNnk(eeIU!dZ z$&4r?rJdQG>dx{t%%DG@a7FR*%;n1ErOUFHsh5>6&0U(jv~o%QlGG*DiwhU0FCMul zc~RxU{Dr9ttJy*}ofWdh;moiyT)H58fqFst{M`A;^DF1&&r6+GJ-2Xf`ds1M;yIaf zlygdFXU|s8E}zBDDxR4+Q#rGAM)nN#jPmKZ)03xHw&%B}wpULp{1y&k+wb`}m+HyLVPNpk^`N7m+bxmPSdX2EAxH_|1SzQ{)4yXg=Rk>BkRh8rO z$ES|39#=RnecZ?adIDyaDa%Uz*?zUZ+?VT1_EnbVm!_6hmlT$yY1aE z+FM@C78j4r9IG5#IwpIJdQ5pyZc%bkWnq3{YGL*0!qMrYg`w>ZrCC+SBbqdoiAgEAdiW zwoPp-$8xb`tP;&fQ_*Uq5J^XbNHLrVE8$Wo8&X4M+S6MMWCBW{J4>CZ%C4L%>8d#M&Xlw2C^*uN5qr{Jk@Ip&u1WXu-ts z|L#O>{y%*B)c>QI8hj(oJx&w5Ml?HPerT{)S|j^%5r!R6GA^{T!m78N~j8qNtq!kA*RQSub|-KqpTm z`g4QCA5seS6yS+4#xLt7P9Eq1XaD|%LF`_NqQ(L|7RLBxz1YbEoje8jFAWkaltSGF zcp{AP%X*2E2YO_E(bb#-@hgMak11*ugEBY9)r*}xP>R)@0r6{t#Gg>sTn1@cd@{(L zDzR1wiQ{mMxv8k4KyzC5Zw&H&N*VJQq?z$~9@NXDd2d_tG=uxCLDsNHo%NdlpVeV8}6X#<0 zE!nVaU`=2D{%7(2yFucwDQg9TGB?cCORSx$JdvnbOa9Iv?l%;49D_6oKN;ap6^B!E zYDc9Tag9SznlA&tHwgVL1+8R|rsC(JP%pH0a!yOAW{`g{$lFKvejI}`H^SA+(+;xn z)lTz8;Ex8ORf=25AkD~6M!0&R+Ck!rUF+9?KN;lxjxv@pNK@pKA?{Rp^$tn&wisNy za$-qs4g9k~;O{A9IfFD!J`aR?fz%f{VxV-f1vwb$skRUPlmZurQw}eJ2$32 zyvA~>Il})R2AO}PoD~exO!+($>Sfm6ixZieA^z1M?oV{*D;cC|@_8K8i_;9Tv6O0# z?f=an^Usv9f4f^m-P}G18gML)`+#c|AgxQv$JfXNIyqs+C=s5R&m!Vn|Lgp`~T0!(>VaY zr1}10bgsXhYWq*LiTBHNo6S`J|7WY%doa!O|4&wN`=4lTKbrslW~)sM&9I42Tw)Vv zPPd6~T}(9t(`@307ty?d-8S(@7uv)NyQm%@YZGr#>HGltIhL@AhYZ_9HY&0u|8erF zsJoXvTR;Af`Tx7M^ZyG5PmV}W#a0GoZkVh01qKGJ`Z%J{jif zB{p7;Mxy3SMUz3Cg(9{xD09PHy|~5zdnN{`siiU-Bw8u!WCm&0d@{_{OKc3Vk*L|| zvlzrl6tR^-nH%Qn#We;v2j}|Ndp911rMtepXEjKaDT`W#^F$ctm-P}G18gK}*4s9N zI0r>+Wl-jZxq5Mp0nTn2U~5gaWRU2jtdkj}IrPaeS1++Kz(%6x+m~z*=cb6Q49eUv zS1+zHz+}q+TX+4~4H7++bu#rnMj{Mz^%5HcY$R&VR&yA{DHO4lL75xo>cuq%*wZq= z*7M_>28lk(I+;P5QJ)NR^%5HcY$R&Fn79n$LKLxzL75xkP8B!t)pF^IIR~yPb{hnS zDQbX0npmFs~D8IA+BCp*D04$x zy}-us>VcYVSj8YM&W8tO218uEw8rp~&EaWQfj)!4b_y9_ka`F3K&Thk7+yV4vj+4V zq;=ALuVRp<^yg_%FRd}Wp62j0E5Lw3V1n*`fI&I}%LAcaU}JdoK+XCuXpq)L_q~Qe znr5G;LA|ub@a8nj-8IczLI#1|boYY{(q#KQ5b6ashF1^Nto_0UY18Sx*Dy%)-}5x6 zm)02G?1|yEuKXeffivjt2N|RZ@OdEA3v3Lp9;jLOMGevpru$yQAkBf#)1Y2jV|dAl z;kB;%Vg`YS(A^I*NR#06K&Thk7+yV4v*v3vNIQ(~dkup$3qDVSdTEW}^-K(}b;TDq z2t1tbevm<$37-c-y}-us>VcZ|Ub{hBlJ0vIgET)qPlMaprPR{virV(lgw*rOO$P?~ zJhe3U)WC)l_CE)`!ys@r-TeTAG)p}XgnEGSbz%IC+;!w?W*Ibmwarq*>s39Mp@`3{iVDmwmFD&hMvfe?~v^ zwC&$MU=v^cl~p`8ZWH&=w*M(@HnI8(t2jdY0DSbb5VeVOer^>%8?lM&e@6BDVVii# zPpzVve%}8Rn!`UtH3T&O|FWP>{3gx)x1F~C|44QJ*VFcYkbXWz+y8TE{{PR?_WwGn z|F6*Y|AqS~pMEYq^n*iU?jiQKg)Qg*kABP|mA(9JhcodT=QXka_8Iwf&Lo|@{r~To z`11eLGw_?wF5m_p-~|fs0Y3R{!XQF4A7>QT#6TN}gLcpXIza-cpbM}BApjAWfEieT71)3TWMBsl z-~=w<1|HxA3h)6x2!J5be4HU%69y3w1u@VD;-DRLfKHGALJuJV6EFh{umT&9fDG)w z0i3`E+`t38Kmk7B2LTWyCLSlQ34;iTf*5E6anKGrKqp856|f;f03t8}Gq39KZ=&zzsaW3l!iZnvc_uYXTq$LLdwxAPQoj4a7k^=m4D{0aVZhx&a#@1Rw$v zFary)0vnKk4D7%GoWQ)dk4a`5w7H-w48u_vRiP>*`kB;ihBGWAy({SAAu>G70cX14 z5n;F>3KzD)W7^^3PMA{RQr1KEi*UI(MBe0tc{jYr3-61-$71k_PWW_!q!)_l#_!Jy zd+4GF%)km{Ux5oy9)j$jEf&fa4`zn zKs!hP6?6e%A7KJ!U;#ED13Pd4CvX8bh|%9lKaRtncEF!^;@(91H|e)l_&W*yp^LN$ zo^JXnU;$QO19sp5F5m%P-~)aT1R*dD2@1nSiI8G4E;@0s!wnM(><+*g z5qM~nl-U?v{6HXO5t#7%ZVUXZ6<64Rgx|m5hX3M&9|d4J1iuz0N%B zE_UML_k?ls2PU}J0zbCFAIb114)`+{{Dqs8y}0;mAN*|qRzvW25%`A~{F8If0JGUI zchL`8bO)Gpl@}L-xR?vW>!R?6Hh5Dzyrm1?$@Y<>BD~uS@3p}PWcZK+KH`FpdEgUX zQug8ElL7d26uzL)Hh}awA4y*xhyZBAl^?dlkK_dTJtzF38&*6dtpEuh2!Id>gBWNB z3D6D1Ucv$-U+Ue-ea0i@;w-Nm{Ma#oxqnu>%*Y zow%st;_n+j={N5?#kVtW3vUQEe{A%vi1?4^`-KQxfhc!mZ=s%d7=1x z=6T`y!gHzTD$nMgRi7B>{Nr_`s)PiCJ~pDY&Ah3Z&-EIC$wBKw5; zMCtL&asQO_3!PJ9QssKnnP`N*UfAapy zeYyKoI{!a&uW)bip7cG!J%zi|cMEqH^O?MoFO6nL)zR`@xx12gRqo8+nYy!jN8yh2 z9hKX2bpC(ow(M=nZN*#Dw+gowZ^_)E+)}zZd$W3T`KH`W$(t%S=5I{hSiPZeL;42c zhT`?<>xJtJ*QMzE|J=37YsNQ^bm8>k_RMx=d+D_7Y3ga^Q*);#Ppxdr zZ%b{fW(t{fM#vP0GDFHx>6Gj#>M7-u*~!JNnXSs!(w6KNbxZlAk&}`qRZh&Gm^!h# zxv)9CS=d}WA#;LqLTOWWle($AF}E?fv9ck*A+@2pzOX*Meq>#8U1e>4ZE9^bT}Y?X zLb^DZ8B_*KYqD$9HRaX0)ydVBf&4&fpt`ECD!ocrRXjd(ymEZ$xa@K2apje4WpPDj zg|ecwJiA<7US5`4mRwfp&-bVLt9^yObf3^yT$)*`EG;d`E>V}1Q@KM~+P%TRA3wOzN2GqQau|B4JT+VP>JSuyl0xX!Ypwg4}}Sg33|(qf$pzk1QOS zK2kWcI6pIAnO~Zhou|$#&t-Fqb24+3Ii=az+3M_aGM7vyD?Rz1R8RGY!V&2sgd>Wx zGP9IfrJ328>df-txx4SuWiZe1Z zlo_Sz+3D)^^0eHvN=KrP`{oLM$B2LGxf0W+$XWcP(+AZ4p1p1Gm5Z{ABd=CooJt)NYpb+1K zLVOPj@jck=_h7T%g93aH3h+HB!1n|I3h+HB!1sg!3h+HB!1tg4--7~t4+`)-D8Toi z0N;ZGd`|+P0N;ZGd=ConJt)BUpa9>40(=h&@I5HN_n-jZg93aH3h+HB!1tg4--7~t z4>tQfD7^Qe@ZN*Mdk+flJt(~Qpzz*#|)!g~)2?>#8I_n`3JgTi|c3h(LR z{umFJ=m4D{0aVZh*eK!g{&e!QnV_pYDhMQqAP9jlh=3@Ffi@5a?Vtm6f&>tH2@#lp z8CZZ7*nk9NU}0mSiN;o%WxU;$QO0}_yd z9XNm!xPTjYfEOsh2mBxaf*=IKAOfNwMofCNZMZ%T+Cc|kdkF!Ezy!>|0<6FWBp?Gj zZ~!N80XOgfFHnFF_(1>!K?o>gzomZ#eh>gbV$!1x;rcL$fGCK8HV_BxpaXP*1W-X2 z5XK1+n1C5rfECz)1Y}?b4&VeX;07Mx1q$#1KQZai25@~4gg_WXKorD48;FB;&;dF@ z0;quPCIlb?6EFh{umT&9fHM%U8qfHUy~v+Qu&-7)^JF8bBu z1|HxA3h)6x=fD=WF5kYpnJdQbWiD}ijQ(NlN#+vvJx$k*KFeHe{3W^r z_9}CQhTmW=`}mv86&QVsxw?nmX0AlfJ9MYxM0oUF=5i(8XReNYM6BmibUO-?Tqgc# z!t4fm-YL}M9=w&F&waOHxx9lO_};tdc^|otUfSLV=q5c6(Q7gKFg-gXkJ9V2=PA00 z_jzL93-o6_yXcA8Gfwy7eVrDI(H*ok$?v~o_fGl~3iM3tp(Hnw{OoDG1-CJ&{tUMd zo=ShThfosR=|$){gYI|iEV?;0knyN{E?}M+>_U2phA*a9ariQNZila=OM}Up+pf?8LqL+fw-pA6oo1WIu&(aXs=V|0)o3MC1MKhA@ch9^yB!(Jw9;h&^fM zl7P@ls6*@N(lBA!vx8Y4a>e=Wt@MlJUQzp7y6lmF4D7%GoWKQw!yhuMTXyf@e-NVI zJks#@=?{Qo^p|v75ZSk$BB=7Tw&X|XcDBRoqm1E?9Jsv;xN&bHvGR(9OL z$#04qcz}8EBxc)DzmeefPcN!E%LvO(si~c>&tGKZbiS;-uG?zlOR3^Y9mh2 z?{e)GQSnc4T7WH2Q%wDzu_#MJAJCxp5)lvuG0+C$pdEC8PLRMtqk=Bb4W@zVUHP|ny@d9+-uJ8T72Zp~C%jjDH}kIYZs{H6 zozmOcx7D}HZ{^-fzEycMPkR!oZxr50zahL)d_D8J@_OmD>}%?4#(j&r1dZ)0ncunRS<(ksf*{jv7%R6#Ak~=C_<*!OzRlTxsW%^3t z%KzGaf%HYfMa2s<7b+K)vRT?Qkf!|t#S1bQ6wl9`uh4#h?0M>W<#TiACeKZsQ$4$I zcKYnhS;|?ZGqY!^XO_>%osm4Fa(e#s)aljjh3)C>!uH~6nbVZhN~dN|RZlH%%WX?; zW0Up=wY{kl0w>klT>lP+6Z}pITpCS6G)`C#);3&8$_{meSd@nl2CK29tx8 zHTgBEHPzLH)#=s3>f%6VKp7~l%C73I&jTPFS6rD{sjMum$gWUVl$Yn0Czn^2<(H+F zRr?G5>3*TV*q7;3`btZ)OVy?2CAlTZC6!b@HPoy0mKJ9htBcFW=Ke4C1&qu~&a2GL z&rQv(&MC}E&k^PnXJ=+BvrEZrQcae7ay`kO$`Sb^Qb$y06=tPp3A2hbGc%Q$rNgs_ ztB02l8>4*y!vA0nfZd(hPPMb#k?TlyRNC|HsrG8T5KqU2c(E|F5`V0QFU+@=w8K2@SDOp8T%HEte>8*J3o|LER zF3{$;;4Zo{F2z-HW}T|D?8rHij*2~RPuZ(-K~BqpT$D1BB9&}en`$dtbJnD_V#!-l zma4g6PMZaD(UdVMrjnQyRk1AOgrvaON9SDnr#PMeFV?sJ`T765|G>BX>*sP$GdMZo zC^{8lHG|Z)o}U~6^-hk^oQpBJ=6t$A+yc7uH4IYIdL9S$;xy-C9I)VghC$}hl(3pX znH%QnWom{vx!U|7gSdqhw1z>M8|Lc8X@+>fQuBiiG8ge7LYcuZS1(gD#L0E$hZw{i zLlJ8jl(}K9UYur#2P`r_)FAU%N?XmK%nft(GBrb-Tw#8gLEK_KL?|;D=IX_1hIqj8 z^1}@>dnso%gEBYF)yvcjadK_>OoO--1+8IF=7za?ahf3>u&{iVLFN)ZL?|;D=IUi? zhB&#Z{0M`%Z&SpH4AK-AWQaReTIHi0r_HMy6(na}46XPj|kRL75xo>cuq{QXbbhKT*@}Vy;2v4=8O5gEBYF)yvcj z5$7k)Z&_yM8N}_Spw$f0@qRMIohok9LRxQdtvNq`zCmDxLe?-Sb3 z*Uz0Q$-x{Wbe2tRSOgCmj_LpO=;w^5Q*zswr_==0_^>omP z?xgeoW%~Ibo&Vo;Hr4%8{r}cj)Ch538BCtnpEJb3a|Chwt> zuj(2uURw+vs_tJ=st2r!$TxQJQ!z8rRGF zU)7PA)ku4&e(1owXDzeQE_!}f(&$Fov+g~C#t5SPp1t3q{rbQTgyG*eUeCr~iTht= zI?z=e&Fp%dW8x7u?#nbvM~-So6(X(wTD!_V+K;EzHmK17G60z-6Y%DjgTO-9h!;_)4~`T zqJ=R$ObcUlgbq!4M(NO0aO@ts9S%*2V{~ZBGx#9AKX7PD*!KuM(q1|=W!pnX6}tut zblnIYnzD^PO@DzyQ^GhMnhGXpp^XpHLTlMgho%B!uh7HT`zj5qhnCz3qeD~E6K~R= zCFszUvgd93*Rgjn)c0saV+8ZQPlFlz6y3`Z4mGe()4lBd4E@8t-E^m8bht{w5rxp` z7wDZe^hLVU;l#viT05j+9ho-ys>I&uldm$59W?o>=_7|szRK0xd~-Bj^1$HXlW)~N zJah6@s&`^JZya?^95MM;{;|!>)Xf+C1YMN9m{B6M`($Re_0fk_?MRz*WG&r@uIR2G z;&IRwbl|D>cgpZ-%v?W`YU??ZS)#5ESM9*3z|Ns3$a_AX>tP&ax`y1AuxP`Qnc zQJLugv|N9iyZ4>SY_a+=C6V5T_{SCX!%+g>jj`d4Os;(NLiy@Y$15Jm|97!lq>1Q{**o&;eZ?62Qheca|fbaHOvXrgO~ zj*okRn83$HJEd zS6^9}=ocC(VF6ZP0}_yd9XNm!xPTjYfEOs7!N-}!js=sC(nr5~{2%~=AOyl70&KfC z<1bd!j}$9(Xq1+!+DC;QM?}>z{)X-ly=$wY)6`3oPD@vDVFIO*5UzWeLbjfJFzM*y=gK%N7-rqob z4nyhO?78Z><(94nxwDdIRj9Thb!PR9!Wro^gfoh#XEc=!nNyWhOWU&B)NSQVE|bhu zhVnzHq3S7xQ_`mhrxZ`loUEK&s`oU=oiueXgTjXN2GlX6*X7pcTFzA{P}PDmAgmIO zFCLena}!2Z3@%SB+t;^y>FAQ7R8KEkyyuwQG09^pi}H(7i>eC?3)2gQg~g*YM=M8{ z7GxKw3(803j!GU?IWm7_>d5N+!u<4nVSaI5W}Y&yG&eg}om-xho0FVVnVp}Vnq5s6 zlIf(7EcRr2l%CQN*(1~=%CmB_lCvr^^D|R3tA`g3PaiHEUOX&wm~vR@(Cne=q2)tz z`_&$x?w~wvjA{*btD}jb&Yli7sh@xl+Y=cJ4^!`ebP#<5RR2C@w|CStLH)S26s_E(KJ;>v z`q9iyS|+fMQCbOCnBYn?JkA1-x58DZB$oyxxEi(O(i%G)big#q$)&X}xXumNqoQ2e zfRb`)BWlW}O(-gtPC!+;v>9dP{UdxtAD)Qva_J=0mrGkvU@mP%g}HPxO3bBGP-89) zp~zgypvqj@hVpXhRMeMCr=h@H+Ma-?tMH62cxE>|i+Rbj1$d4K&qblRbRH_rrSnm0 zE?t0Hb7>gG=28~b=F){IHT~HTl%GpGP=796jRJJ(8dRW5J5hozji3fy%Ap8dx)#;v(sd|5m##e3UaP?yF~qAnFsqb@y(;&kaL zRHsW%qdZ-D2KDLEvnWuPo>;4Yzud(ZxDzb<_S1?`5tdExtEgp{zGi`6x59rzIlJ@? z34T+C-$F&Z^lb;(7{+%{+Ae+91;6Kp-$!-3^aGT)OFu+?yR;Vt?otI6?$XC7ZI?bl zZM*a%6t_!1Ms>UN6O^}0KSh1J^fMH=OFu`2yYvf`xJ$o8jl1+K6uC>kMwPqtn*{u= z3ik=aWL1R!Zi2rjOMgMddt(^?fy#I3uPA+& z{)XCj>F+3hm;Mvg@6ta|{%-pULjk-bpaNbJQTi^KQ2Q>KQT#4hQ2j1hQT{I3Q2#DT zD1euE1-xWO3B2S$4ZP$;5xnF=6};p|8N5V$r%0~~l`iP(hJMt-O924}MHoUkyc9OW zhy_NiWPKc8iP>;f8%pD)xD4CvumjccQl}FpTu^nxE)VSX!f6Ve?t?S@@Sp%ZI0z33 z!9&CFun0Un3TMXPtTuQ=9QL%sWCxtx3Fjo>Toumig7euJd87c365#?9*%-#rW?Z$< z0vB1~F*bOt1Q*M&*A7z-xWoyUx?rCh_IuzmFI=v`6+XDq504ALIhsD zg@ZAeZi8#%a9ulG-vKvt!i@>INrfk{adNXjHimJch^tOA!7XOE)dEkp!c%N;NP-y| zZnMKv9q=?K-0p&>yWtrgc%~PgrNFa&@EkupHvrEI!t+D$f-oG8z-$y=7=stJ!HeVY zl6H7$2fVBkUY>wgsAOXpSF$~H)l~xAA;POo@ESARX@MhFn6traC3u|-ueZY+9Pmab zyvYS`cEejd@K!IpO@X)j;2nN=X8_(6grgyt55v17@SZ5VHwN!(gZIbb1MTp^4){tXmt1il%CZ^hu-ZSb8qe7Bu!4CB2HT=jk@{8R#d zpu$gg!OwKV-DsXCmC!v;`YhV#NuNXiJn8djpeKC+9rUCxqJ^IHPw1g1eF;tUq%Wh3 zp7hUXqbL0f`shjjiUxYphv=XueFZJ_q>s=;PuhbfdQur(^rWw%jh^&1^wE>Pjz)UY zzoCwdeXPhOi%hYy6H8B@f~#4lfH|#deZmMS5Nvr8tX|vKxaMahiI)Q z?L}`rse3Ur+im8th3wL5Dr*r)aS!{R}W zHha>q&|gpbH5%+mzd?sR>9=UHC+$OzJ*kQ&d(yw7%bxT*wAqt>k3M_SAJAw|`Xf5+ zNq<7CJ?YQrwI}^0L^g);A7Nbe*9iPu6#hL1|FaGLBTm{rV(s`v=zwA;G$o)}g_bU8 z6?#dV2qhDg&CqUv4l8uppi6>o8Pcv^((8bV6Z%}x?}h;n40>Tmfngtv_+d0a*2nQt zEQqVxLNFeN?Ge}!g`F{&XoG4TcD2Lq4mhn7PUl~iKcXKWsch^sy`QOkI`?Vy)1?nG z9|#{5K9%}Z<^A0I<5X8reK-GZ^4;<~S*j~2zMX!%`c|H*3d(P0-&Ec#QcXdXW+zC# zUZ#oyh2|zmQ%ymRW+o_6pF-i)9_mq;-KFd*zMQ5Gh546~G$%op`V$skNWV~hKL333 z`SNpF>Q7jt`hw~+d8#ldKb?JAdAj&i`l;%Z`6qW5G6kVf7)y;+sK#Lb`3OpnWT+=$ z;o;Q7m4|ZFk+4Kn2Eu~{>PJ|)KX<=+|KNSqd-L}u?=9bxy+@&5glVcb$mf&Pi7-pm z2F1J5)Q2!nwFc!ovebpJNRV_vReUKTx_ULlp)Enth;hLyqbT zO4nyv<{nV5E#)%Qd9W~&8mZ9C1M1EaRTl`?6s}HPJxp^B6t7BCT|u5^94KFrr7iFx z%{NfJEPq*&`VD3;RW2=FlBRBh`HPbmmoLg*q)=F_1ZJl;#&G({{MBtw^&ARB0(1r*u_ zPoG@fn%|n-TBf-L6zVIOKB-DG3nZzlV0N=Y^9rP?r(j}JiTVi&8w)g}KxKVyy}G_c z{RD+|1)5QyLfr(_bcyB@5C#iWJy4<91XSuIn5MY|^3+GLe0=u!vEx$5RaWL!s#H0U zSs|<_EKgD0KyI13tkj>Os)0gZiuwoUsAizFBtzW;3#k;%ACRNofu+Tn#lqsAW6RVz zP&uYZa|cwZZ(wp^nPv`9sB2()L6znWNK((h?2!u18jz-rfqAMHDAU%vLbC>>sbgS% z_HODHC?pFsUqI!E9Bs9iXtn@hR)MzJD>PStdU%Pp*oDIiho%m#(Du4|Na^6r!NS3X zgHi`oX5?n5GX|$ur{!smfO2=XTj?&+3;|U&uO`(p%@3d?ik<1sDs=};c9dy;0EM>Y z)A1_J4v?hIfZ3Qra|7&+WW!UdWYpc2dl)nJKw0t$fw%?ePVj)1DKL~{ZN zO2M0=dVriqrEY*3ss<>yQm$c|3!q4S0IO67khGU+YhR%%fV5PlZT%$G0A#I-wP;CG z1wh`MG?z_TI{&{Yrp2m|r?dad^cKJUG5?{RwEf@Fy8XZVW7a8D_y>Te7u)};mwuQO z-~)aT06`D}VGsdP5Cd%>4%$Hn=mZI%f-b-Y2?2<}1kAt!tiT2&AOkya04G6@(1pux z-~nEs03Yy!00@E*2!jZSf*5E6anKGrKqp856|f;f03t8}Gq3pMweWIhYiH`5a7`&%uQG985tF0+`Rig!vpyn9sq4 z`5a7`&%uQG988$c!G!r7OqkEXg!vpyD!_aWCd}tx!h8-U%;#Xjd=4he=U}n`%;!Ll z(1y#H(ZPfn9ZZG66HN04uNo3CO?>9KZ=&zzsaW3l!i3eh>gb5CUNk0Z|YGZ6FTX zK?mpr37``62)l5(8!#^+01=pg8CZZ7*nk9NUR{ z!XN^oAV$z5Y{TU^Xa^mj6C{ApLx{ix%)kPyzy>5B13Pd4CvX8b@BlARfDiaV00cn@ zgh2#EL5#p7#N{|>2OXdjB!CLo5Fr2&n1C5rfECz)1Y}?b4&VeX;07Mx1q$#1KL~&z z2!Sw&5cCM6xEup*AP(9=2j~O|paNl-5P=DpfdyEB4M;!+cHjU`-~w*o0bZa0AMk?! z2!ap@6Z8lpxEuvB&<5h59dv+BkN_&^0^NX(5CRZ^37CNeSb+^lKn8Z;08ZcnZr}l4 zpa3866Z8lJxEur_5C#zt1u@VD;-DRLfKHGAD(C`ij1YhbOu!5*zzS?Y0y3}z2XF!x za03tU67&caT=oG!2!J36fiQ@GD2RbJ5C`p`19XA}Pyrh!1Rw$vFarw+jxM9*t`Pm8 zRS*#YQ4j-dAP(fQ<#@D25VQdmh~tC=+#mpAAOVEkgblcWA4EYXm=3Ia2`BJ@2>(UL0b$S%x`BBgVFz9i0&&m<#KcM(7I1?A zh=BwU1_>L84<1K<0Zc=L3_KtR+JFkgVL}3K5CAcd0Ky1i11{hPQP2t4IAH}&-~$oR z0j2@V9>M_>5C-j_8<_VIcHjje5C>g=nTYW>GqjytdL#RW`bPQn9BnCAUdz9hdaYV4 z(6+KrERJW!71~dOV%X0FxaD=(F3tGQN_pM0T0+s&!x ztIrjlOFt*jmUHG=g=X{1KBLmMbMEOR&F7bYDn(n*g(uTb3N)i%rl3%bes)aN)ah3r zD?FBdOn9vLXy#Gn(Gs86ul#WC;UsNI=O0SZ%zlLj)3hyJd?53H@<8eSENxAf?;E;L zp}GA~yI;O1cTe)3%H8?9^=kNc({{CbN10~#OWt0gE$h^6)msby#rgd**DKeLU6;O2 zxUP6@=30feva>lgS02fYBxyT4zcaP7dQIV)G;L`Yug+YpTwU6c-J$L%UzNKmc~ynB zw^LVEuNb)^c}3;&{N*Xy;x1g4zD&5Rcxi^Vxl5O1FHtWkU!0?@?#e~^`V4>R3vmoQ zlT~PrzwEF&T)trF0_B3z`B|FfuY6wayySV6bMrLMU-g{AIq7qRbBeSDuAE&uD|?oD zR++ZJ_n+&pcYF1;!fEN#gwu+r{@0F)XSb@fMV{M|+)_Cye^TP4JtyX9o4m3)zd5zJ zdP0G=%7qh(n=+de+A_~>R1NC;*?)7szud~?%F2rTiqwkg^1|};^1c6s8vj(P+FR&N z_X@p5+GbZ4myXRItI~Emj=%3-lwG7QDlg2@mV4#s{L!hSs|yOW?Jg`R9+f#tIjTfk z@9L4|`MLSY`4!rJPtB{&EzC{N73%Z;jm=Ka7G@V|D_%*Kda^xgPnovklSfo$i-%_pS7=*4dzgAy`Ow^$%88gCKG&V>u5{(QQvZj&_l|GlIPYV zo$q~q1AyFxfSufX|Gl5rpO3x->3#OQv)G;8ot>G7p6iQ7#*mCsGD}bP<;J-GUH^x< z|D-_4zw-Y$_CHC_{CO>Wndoolb)xmU3#GK2EzK5z|93+Kvhu7x;FOZ-jvwr;pRlH$A$fbv)37K$Yc112qQv zIPFx^MQc0fz&e5N404PxP~-G*+WDr7);iz7q(F5hNtQBD7* zn*^$JdC@?Pfj&+<)pXI?&MmN6;5&~TBMj6yeVlf_>7upHE07VW&L_!I25Ou>PCM0f z(b~=_utngzfENwa80h1)^Gz46bv}Wu0@cN|`r{d>ar!wssp^T`8{_ZBPCWe#N>aZl zg}S#fY;v1GcL|A>Gf?C7bK2>g&Ea>@S;pUO7q~7Z%P0di&LC$eSA7&ZiZ(X3Ax){O z>V-3B5#1pWUPh`h25Ou^PCKES7j9Z;Nu#z?V7r1m;|$a|eVmW5_AW=WuSl0bDeSAiM>eVlfx#%`Q0m^pje$pYIoWLU>Q zjnl_zXR8-%jN2@!(>@|lT}P6o4AeM-oSjrN2jtex8`f`HJ$d-qc8WlFJ*kdmpvD>G zv=i3%RF|A4@ZCtJQ3h(90Zu!g zi=S>ypXH!DT_C%OG;0{BaRxa%$?)CL?Elk+YYtUjJkM0VT>|CJBpYL(#u?Gv{RZ3h-U%w#1>}? zY`1e8s4>vb*~vC@r5hWYK03|1vjn<3NU?^28mFJrPFKIuHFTCU?`(nVPO^+MP~!}6 zc5>m&qx=;7N=HR&9-EfQEY1-a?;_V)25OuEPCH}$+~cLgp}EL(BAhFb-OY;!Y77i; z+R04CYaW@FNi5D281Es=S_W#I0Zu!ksd%jqspku11ug?M1_n7h$!0DK^bJmDvptsY zPwdnG-G8M48t?xDhx~U7RQc@hJLKOUrOLPc4UNTf0>G z=WjUVs}xms($6PkRbKo$<^GdYd1uKX|BR{fb^9H1KmB9}82jL~*F6S3|3BJz|Ig?D z^VFaJ8@HGj2zKXvvsBs24?RICqR+-+NmPFDQ3TzLM=L807oPN$uwwYRG&Gc8d z#C$4zRG@p1L@OAmar!y!boE-Lp|i~5bdkXI5Lq@cP~!}6c5=;J&*>cBlpd|$t(dPs z7Ylq3lW8*pHO>I1op1W2<37v1*d+qlqomouK#kMS*-2*l-e$^{!l~9cC~1r-|F2U+ z)MF&t$Uu$L&uOP?d~bD~rMk=sTzknf$v}^I))Q{i;>`E^M{=i2RtqwvRmP z8AzF4 zYMg#fJ7N7>YX~icyIkOUnime#80hD;bIla4d5v3YzWcgDAbf@-8yKi@`Z?`{Gljz? zZmH?;zf$0Ojx1XksB!u@JGm@}WSSq6$CwYvs|2>^$+MM#8mEub&Nh8WlFc#|+|>fr z3nbajK#kMS*-2$NB-719a*6p{yG9^(=Y-6Ct>F2Z)&J+%Z3^V)HyrJG^S0}kCgTGi}xb4>t=!LEwYR-P~+4&?OeV5 zB!J6uPjZVu^foDuWuV6C~;0CZT<9x+wypNt3dY-iIy@@FV>>ah;`L zw+T$|@`8aH1HGJfre?vKN22Ay^mc*n)1+9+K#kMOX{T!z42NOLR6pJ!FnyjJ+Zd>E z#yLBg{LDWUt{)oIQn_kk+g5(pb@=V%odWF_NVuJW8fTo-P8(>awcL8$C2)R`Y&#jK zaV9uBIRh*(MM*vBz7mbH(?xC8o0c2Qy9MS0qi5`80Ya ze^r&gutAmAUa!jEf7u~lOwa#a^z*?#Ipm`rbI1q2O3(7&amdwqs(cx>1IYCAlYixq zkN6LV{MoNKN3_oO z9P%8R1Mt%ohde>;0N+1AKAQWF9dyXMj@f+D5Iz5YXT{9>e`DqEd7&DQTK5R{X_V0Q<3|{%aV9wJylo2GdW-&$K>D|&JC%VN z=KyCXX^;h{;%y4syyjT$)gKn9zfRIq7^ra$aN4Ou?bVi>_D2NPZ}0+x8UqJ7?X2wz z+^m)@ckho1)bEq-6b5RX1Dtm1b_K@aY`(RAOkn*x@}0myjWf#G$?9d^sg}d4-TnOI z0_itNw}OEhXOz=UT7NW}zLPoZ#{LO`@mu6dGf?AKk%Z08UtgTcFMzw+B|+O_x$?=-hU+5N(O42F-|-0 zVMWEkn=;+}7X`}il57nFDGdj4kh7CA#6pcb;x*g1j%_`C-L~{v`mkl9&CKIZ3C!Ok z+gb)vG7fGA?acMZj>FBC@Ahed_WLB6U?3&sASO9GX~Qf$HNY#yR&BFJwmhvqBar`q zgyRgP>>OMU+R5t&RvWpc(9a6I|4fz%25Ov1PCIY=LbpAtpA*Orl6IVdlp}&?j zAtpKPyzL9!w&(Cm0{M?gNa;(s98B`hcJlUxZtX_=DS`JVNoJBDp!tG<&$n#<)1E9 z<%@4q<^P&P{ReiavVIP=54@$y$+K1Y**8^r(Kc0n_a;?dy_NbCJf+Ipwy5%VimH50 zT9yB8w<=$=ncn~JQ{}y1lRd-q{O?N7JpT_Js=xoYTv^)ohJIDBbAC>{Vw{1L_=WEr z&~E3n|594JM!zQT{(>wM45ZXA+zZ-yr@s_Sq1*P8-Y<~Hw9~d06gNfYwwF%}jK3$>b_QykQBFH!YeAd0 zLzd?6&j_@C-~|OW21YsUw5N=EvMD{CR=#Pvlz1K#eoZ*~wT>1%J zn`EHI8RoQ8)+L$zzGf|Cd00Cjuzo3nia^*ystKAd5JE7<*-40IL31%jcWfQq zR3Cs<@7UaU_4ii-t45}E45V%m+zQ%R>n&yV8lh>m)U$srQ1+2vI|DV&IA7cpzSB&4hCwRaZWp}`95=6Yq@rQP2hBqZ3_c6&KPGWXX|&m zYSU8uUK3H}_s>)1(`g*QFV0ovt5sEYP#eGl^!%T= zLX|%?Ta}kwuFCJtqWAxosq(jnRr!odRk`L>pBo^oZ>QHlOz9{LmI6C!v4AK(W9 zKoAH4VITrTffx`65&$NoqSR}IBp^|XiyISCxiKM?8xvBwF(DOYKOZcI<*#`IKfOi$&; z^i*z4Peoay2$-CTQaBMXIh7leQ@JrYmD>Q=E`kKefC6*@-GBp7fgV5udVxLwlT*2! zgqE#!;qPw11L%Mk@Bw}x00e;$5C$SZ6o>)+`+h=e2V8&~=-%~nL=eJ26o>)RZh{O* z`|t@+fG(gLZ~!WyWovuzcMa$T`hb4G3Ag|^-~n{N3-|y(5CDQe2nYiaAPU5QIFJAa z0JfhX0WzQfT|hVB092rd(6Y4}{@x4p0sVjzZ~<<>1L%Mk@Bw}x00e;$5C$SZ6o>(F zAOQ>jgFq6H4ib6~{ffLmKi~vhfE(}-TDDfl-@Skj@B;y$$8(5wI?xOB0sVjzZ~?SF zS|^|bUcd+VfdCK$LO>XZ08tt))G;d4j&DLu;6(@jrU;#~}VF(I3@FV_6^m9KxT6c7KW1 z1MzCntOneZ3jN*?mf*NZq8>e3yTbRJd zdM?5NED~=lGB~qHa%K@XB;LCbZO;R=pZ@pbvj6Z$i4~{3-IrujIklW zzxxNY|AFp(2kF=X!h3#7B?ktls9s`w2%h)bafHBA^G*fL@>v=m(sDhUBolKp)T#H~|;n20VZcXh>5ZomWRfVzv4&GrBq&O1TX*$0!hH&pXmH^Gn{w< zoL@m8f^#Vf$nR&FI^0N1o7{gEN=xt^JcnF>yz6|btAOynkD>qs>u>Z2x4i!|+0W>o zDStZmX@h3y&%c{`H~WtMPWkQJ+Xl_hpMNX$R`t!on`xS(zxYPx4e5>2>sgwmzg)_d zj8cW>=}+yizE*fG{aWqS;;WfgrB_R@WNEhk^2@oGjh8E*%F}%P)t3q{rC+MOSfm;I zr58&tWM9x1S)t6ragFBhkG5*{AiV%TMK=GM=gw^TkxL zy05S=y|1>nxHq#`+FN=u`=tJ4`H9>U#uJst^N*(4EG6`U7Q}&EL4ca$o+w)O}T&&p%zL z?J4fb?2%|j|Lnc`z2#5jK4H+D{`q@S_f+pL+?}Rb{fl>H?vm~*-I=9%{mXac?lA7C z(A@s1+pD(~ZcE=*yR~?0=2q#}(kRX`hWz!Z>#Nrlu1jB6qd5ojG{3(@v-@YS(yuCCnY*$~^9*J$FVOsg zsY|mT(?3>j%qv*DBy)*$N$KM3#rnnNi}Z_{`StP_rY@|{C#auaJ}-A(_FVnk^f|e+ zi)Yo&EYd9g(iy32o@VbapO!n#IIVJOp62eao>DkvSW0soxbe7i>Uk@AOfA2MiO|NN5FlIk&q zW70IUfAP@>~u zU!0YhCCw@gXKAMY@=$Kb7^)cil9{AL^ZaKA^}+H$Zor_K{_}}cq8cy6(=^wAF_wu* zu~IZkv;CJNxrh;|(2W17a5Yp2r9-vgfk2Mt`>*)({*=G!E6|MpHE+?I@k-tj&H1nE zWlzpycq%mOf685@1iNWh%~^D2oRYKDpQX9~57NB<>E4=F)H0exGyi9M^q#VsQw^H? zKkrC6s@;X|G|m2B?8WoO+*hwqzR2IM^mch>4<~A+2VkMU%uN zZjmS56h5g__+*^IC;KQo)me*Hj7i*8PkIpNMO*@L{SUb~$t3RJNl0;i#0?_O1uJ&3U0Ko8GKpJ%5>j*k(Md$R?X75?nZ(lq2`Mg!I0JDW zSYrY!nsp}em_b5{4k21PNYT2z6)i!Ncrqa&#f1?kBhCwJTwp~L(j*>fNJ!BUL@S8) z*;~=-G>NAm5>i|gab1Y>!_xqQF6# zvp%@eD=kVK_$G_&bx{)gHgydJqPcBJVD}-mL|XI#TcWJ&mzFqLR9Z4Xfkx}uP623| zTM|TojDRi#xDYT%0r3vC3&o)|ZzM!QxT>kY^Z|=?TRB&1UL}Tg8(lAdT8&5=po*`p9g3^&p{jD zoG|U@IdR(0a}u|$E)1g9Jh*rzxF%m9UNw{1i;c_1dXBsjr z7mhz~r84=CXx)pn<>W&H>GC*yJ@ECy=l}D4?N_SM-sI)Iq0^CtOb1Kio9RH&JanM+ zdgwq2&{4gli$dESS!i}%l0ZN&0{RdTL_jwM*c@4CsU8`ixRE}J8|kOGkr2g=I4G{& zk%d<6kwFCXBfyD(FalHx=zL_M9egB-Fek!X2#X-Br-KJ=<|76ITnKO@Ac_DDp7z%! z`o7T0J|gX=FgLfL;ZEghsfeNBkK zdyJ(%L?jU*A)+4?6KDR7xY8@f!Uz-3MfT$Z4~*@qp_6oD5d%L0gy z5uqT$g@^%)7;InJz=U@z%Yukg5Z8q`H{u36neZZJSqKqbi0DRy2N6k_+8-1!;oZ%$ zFyguq=Rll}IHQvZFM5_m5aB?CiU=M?`${H(1|ddLQ-(E?IQx8aGv^ymIO}_yaZ9%Ki@DDmpRar_|G5-pSFC&{|C!Whs+3(Z{b~K(@;kYAjCU$;=ie^9nSE1# zv;0Qx4dV^TlpmsM$_tUD9E#-^b1xb%R$fRyUwf`d`4gq*O3#*`&OL2BU3n`1RO+eX zzRW&pUukc4ufEsZ+G1{Hsb_V_KbU&3`atG>i83T+@6+!q7jpL+_f|fUr_6}ed$M=y zcbD(V-DOZ##M17xUrJY=TrIWRQBUKWkAf` zVBAo-zIJVqvL8yX_H>}mRGGuaW+A2GLeWGGKzX?u3NzP-H7+`duXl-p!%s!(>q z)W*{K?0S8DnKBa^lg314JU^ZqudXeuHMd;k(nh*MIS5lLt1Al2)5~ke7b*LobiDrI z^0M4AV_D_c{ITY21*OH=#rooMDwi@+m4*3*sfE=A1M!`y^-KbkC$QwndUQ|OU2*1}DQC66 z(4X$FY6UH=)q0AQ8_=8^fU&&`lNZjR{{JU8p8qlb-w?Bm|Nn-d6NQ($Pi$wP#u?|d z>qK#Q?~P`cxns;zGrcbm`$)Nsff{F=(@uPN?+x^tGmkQ@2%G_4SWshNl(Um_W|V2O z`_bs;`WQXStTBHlkOoP#gMk`nl+#XX?#)X5V<5Hkf&8Yx7$Vn+4AeMdoSls5dSvd- z&yCFvIhM|z-x7GkWZcO>jWfn+=WXeHw0X3(yXW5vlo4K3P-9?>(@uFP!5o6B?C3iFlQ%aYaivU+uQUe`zL{NkYs7PQGpT+ zbJ{7*eU!P<(v|Gn0$-9Gs~M{;K#eoPX=iOIW@~NxeSvT`sn#-3 z1?bRq*a&KRei)m+e~)$)!0M4((uvXdF8amG12Dcf}3?KCC&PX*#*NO=+iHO@Gv zow()puP(L}_Gbd;5?)wPV_=-q&e?LWOU`E1Yq?waxj_6OlAXjrjWf<^CqBHet+xxm z5ICvPn7&z1HM zmYvB?XXo>-&?ZdPC*Mx5K7C^2whfy`#}1!&?^gofax$%8pvD>CwDY-`*=HF^@N0qW z1k$7#sBs24JIU(FG-hPYTO!L)!+#YhSCDKa12xVdr=8MmDj#m*&BF};O<-He3kYfq z4077p{3cuTjHDrkyQc^K9}+0jq*=*8jWft;r!*Jv4^KMen@>>X;J-TLr)dnp2;~C! za=$8Xp>Y7;evEPhOsev)9#!S5)~WLUJfg~XFQa8?9Kh4Z(wG1m2k;r{`#(zK04gJ@ z{1F=a|H}Z)6G&tK75aJ4Su`eq@&LSaj4Cgse_y1&|LYg4^0%n({~3lV|C+}BU%gV5 z*&bE?(l<{2_7U{_f6wZf@&B_H{gxl=s4vVHpPFEgtfqZ&0s}QpKWC>sQlH|zev~z@ zb(UGDeE41DtloX8q8(teMAM|4txV%ZmqU3=DAE$$T@rvU&DchFt$%U>qmQN(O42 z0Zu!ksdzXr&7-aVAdsyi&G8J>IQ^V;*?FdFoqwE~J}}3(@~WMu?lRwP{)a$E9XBZF z8mMvlIqh`(z-;O)x0(MbaBU#V3I=MN0nSdY>C4vmN%gXwi+pnCiuR8J-$pX6WT3`L z7hd{o=i}eow9oQX^e2IA6Rmm`12xVdXD8Y8Wvd};o_3b|tp5@yH)6Z@v(Gmt~oPJI_9Y6D$ zI?JPgBye3pmNWw?9U#%qS$AF3vVCl(QrWQm#Lb(w)^jYFD-~IwyOI>E7)bd5xem0` z@uD?#mP$ntxUQl#k1|l>3~+XGO<(QmuI6cHX<6zL7_TPRY6emYLSlf^&d95kX``ih z-2&M)Bp78NWgz4-&`!p$c6C|vq_bSi9RlOEwEoo$)Hnm2c1Bb2aL$=8=Bhw;9ce}x zNLdew0Zu!asd&xjHOs}kM_|03EUOtvX%D#(v@@EDhX*zD#at7}K2EDnGf?C7b9RzV zU(D&-+c>tCpLdJQH?_S2-4uydF;L_5bK2>e=N;Ess+2x~D^HeD22w&tA|-Src5<1| zJ90J8JIni)eu42uTK{SWQc6c|1nrE?Z?0~%6wfJ;-9)P%Wgw+=~bbCoO&Ol14 zMf7vp>G*lq)L9NppTPArt$!T@DHRkk$XRz?dRWow2?6QpZtLpw`mr_i0e8{I@R@sB z7e4Iw_XbpX$JZ$j-+xp7K6>WwS)j^~ea|7!J4%&5_g$LT|45qGpXUC*=Kuf0?;Y}8H2;5`e!fa`{~z}uRsP!_JLHp>(DVH_ z9rE>*|4;u5hx`=H`~RW8quhY>+`oh7|Nn84+7xL1e+~2h?_unciNX)(()0h{kIp>* z4|{&cx4UtV=NIg~XK0U2GLZ6G@x2Gy?LB@+IkWdH-&H_hdzRL{fq@!lh_jQ;&D>J~ zJgPQrZEMM(!1)~6)-#Z@X%R!5c1}-=(^ABcK=(W;HZYLVX>lEBr?V8XZA}>#IA0*c zdInNnE$#&EoR%WC)|C-~?nPSp1_n}AEv^IYbe1Bvtu3Ph=SyT*&p^tq#hsv?(^ACN z`Z6ZaeTr7Tfq|4;i|ar;ou!CvryYt5oG+7MJp(n)5T~8fQpDCthY|waD1LwJEx_Ht&^o10^OUm^5Ypu`LBqS|7u!yW$OiOiY9uZw;xoa z?rgkqPMN3991^(RqBSpPAmzW}F0fv-_O9M(m*pX7SRi_bR=b9Ql#q%TSj5AQ<3~|~y`C(~tT8emtK=)Y^O)ya73~}1&_?g$#HLrq}W{9~0=jV74 zL5+bSPCKWih`0)xI}^?m=)ORTH4LQOTf_ioC*5@8EsEHDW3tHXn=kNvksNCoNO`xo z547{~=Y?sX?E6Rylu#uN2uj#_9%g}Oqy{9QYI>{1nrd5 z=V0TdiMcLYAh5kh>z-gBWuM|U(9XsiZyN<{9-o%y*@Xh-Uyxv&ff{F!(@tqFVCzlV z(E{67$g`4xl!S@s=j>#gZfV)Mbz6E{n>XT%1iHT>MVf(>eu?WqJ6-)c)X-Vp7pDZS zzos>>W*{Y8A_h1+xu#oM>P2fFo0j+Civ`B7l4TVGHO>I1ow0uI@zRmeQoLgXvagY5 zH3KQN6EVPPC*w^K_2M;;Ov{A3O9aNhAw1nrEb;^DwtiaU+QP1%P8vai#s z(+s4HO2i;%U3Pd=#Pr2Iy*gDtR?rx+*nFyw2!!7t$tng?G9@kq?S%Zin-SJqI2$)p zKcaX3AES1F?jJbh`|0_A4z&ZkNzeb|f8&t9P5J*W{1=D(A0JlbJAdhrL-g|{dj9{g zrpjNV+%K%A%B0A<`MjNhy2IYs(jaP zDV~15Ky3g^Xb!-?tkE)QRsJD8`(KRr|CImlzO$eC&v~w0Y{weY{C~TD#KOfY-`Za4 z5HU8@*zi93Me7HgfD3Q~9zX}YfDiBk0U!v3fG`jNqCgCY0|{UN7zC1l0Sp1d0GlF6 zfD9-=7tjqj02Sx~G@uvg1Ns3c-~!x$2hag8-~;?X00;shAPhu+C=dhUKmr&527x4C z07C%VN00y+Pzcleu?v6c1{{D2^Z**r3-kf~fD>>5ZomWRfEVxqejoq@fe;V|B0v;~ z0dXJ!3;=^b5->5ZomWRfEVxqejoq@ zfe;V|B0v;~0dXJ!3;=^b5-$oA;08Q^4tN0{;0FRg5C{QbAOb{z7!U^%gz4=Zz+VP|BwzqTz%al(Kca01WIzGB zfNsD6s6Y>(0lh#U&<{8P7vKgwfDU*8AK(W9KoAH4VIV@7-p(lg5(DBu0vG@Wfh1r6 zLjX$>BtQlfpbO{*9DoY+02^a1^V6L0};zys)j7w`doAOHjj)7u%sU&25HhypPn z4kUm9U=TY|3@QEn6cMyCgNz@Er7{9+Dy-y!ypbKyS8qf>$0sVjz zZ~<;W2fTm}2mnDK1cZSI5Ch^s0vG@Wfh1r6LjXHSkN_D_fG(gLZ~!XM186`m&c=mu0k1A2izpdWAoE+9&=JwJ(qKN|plF^ILv^#6MP%>n+l2mIX-QI*`o^n+?J znn+Rx6rc;}1{{D2^a6c=6L13_zzg_*01yOb!JspI>>>0-HGJ&H#{n0Z)WKmtI42Cw zj}SGsk3N20B5E?A;P(UF;Cl}IK?Qp7`(L`iuX(|5_`ymL{AP$qS9|*S4^e!K-J@^>F$9xF9DFWUS18+-!cMO4_V26l%WbnQ&@BtNkNCO|~10QpO zPq@Lo9-`*O$EW<@GZFAb8Y;$m=xKN(eHj3aWuSu#fBf47_zf*d{9Zr!&n~d)CQ_|U z@B)4y2!wzrkN}dvFd(labOSv=FVGLT03GlHAs`AQfFv*s$h!%iB-wxD1AiI-e;x+^ zB|@ZY0e$?}I6e;GV{H&04Sf9f=1=;~^KR*#>^sssrMEM0OK%t7O4ICp`8QK(c9`QnsX*%KLNsjs2C^@~@>{tG-%zHT`PsmEtRzSEN^pFQ;Fw(%gN< zrz$VyUrN1Hp>g6mpSe$Zq4<3I`6|uZXFOMaHv6pfZ1I`&Gu5Z_e9SoJ>?;*B#Tw1n zm)cj^o7-#bEz^8`(v!s}(oa-rwm#$W%4505jK|84<{s5)uD;A8wTBB2rys68RA|i9 zm-=M&!Tf{9gJqhhPkNwqKgN_7@5|gL-B&7P3woivC%4DgQ@J;PZ|dIaCkmfPf1-9z z@tzFL(wD#6;G@iSnxijsr*voOj_e)!9p&3|w;Q)tZp+`6x~+O^;nwu6wOfj}WNwje zDbc8N>EH5-j+3WP{%Gc(uHLk5(lfNc)P4()+ z)#@8d?gIUS5{+Q5omV(7bzb${ z!nx^lYv&Zt$($pdQ#w0)wtjZ`tlU|~S(P*MXQs}qo>4d>eMT)?%x1DuwzMm|OW##K zJ$JfsdgU~BTItm6srsqqQ*x&mr&K;N^^w#^swWptPM=&msd!T6B{gWA6Ncx?!(51E6eiBQp>8x7LH9HTU%OOnpr9>EsbPNbN;aGuzOcL?x4>9XIVyit>Zt0Gg(K5P*5()I zXXa1MOUKp!Y4atR|*iRa^~cr{jtrDL^dF`9`=(NZKE(Ie$>E^LG= zp?oM6ss;ear^ZZcjO8WLu>#@Wk!lqKDbq7C$Z02Rw8k`rmN!Yu1h#LH zVU&TCaG9uc)@|)yS=E~*C)U(Ey_mc1eOTc7ds_b(11ZTecY$`U`s*>cEH77%6Nvti zR=bvgl;W7^)r;pRl)?YtDQoLa1PFTwY zs_&3wEdw=9AE%wFd2BQbX11Lmuzi;o45YNpL?5S}tx>Q=ykO=g$Q1(BL9PPnmYx{m z%(Aoi2sM7b&Varx_Y^hhj;=m^_4w&@nr*4~z_KLwSt&49$wG;Hxe*NU&vr(78D=qB z8gSJ@i{;u^^&7)VKUxfrw)A6{6TtLDq~CV}&JWEf{4<#{EBIXgM) z^WQXfaDDIx@9DeLJZxvPK>2&pOfZlVy>caJr_`JKx2d#LM;U?d5484422zGsVuZ7k zuRi~crHIWV*HZ0n5m^6&OzRj(Szfsnw6jiMN9(1;VQa2+w+e*+Nvoe^Amw-ELeNea zvhLRAF>9%Gw+XC&B*!`iYMc>HJ8MfZalo4E-0cG4pGY;yKuRi0jBwfsTZ-AdwpfPq z>=0Q0i%jbnNO@(s6|}Rq6cd*g^N^mM0^xtt>L(dUiDkJEv=g=zv)NhJ(j((Uf%OA& ztYaW0mgQE^&e~E;beH90XJ>A_|Ljli()<5a7t{Ft1dZRnh{o^7Y5e|2Y5YF@yyrq1 zzu!mi{psER2#x>$JdOXKn4tWB53BO2H2(i*=c@AMN2u}#SJ1owb5uD%KcAjW{Qxdk z<}K|B>|k zzhi9=-**1|zxlWPbK~jmB*A{9ryif-1AZ4v3Qr22xCtqu=O1`$W>L~)NLXLF|q|~+C3ffuC2WZ`D zDdwpHVHd4_l7W=9mJ2~Uq4_){VcS~uG=a679P1dUaYi`ptS!ZCtyNDK2py!FWT3_w z;j|OB6tiuux=UbHc`-qafe}tSYfCX(Yt^hk*h7*@22x63E(Gm_EyZkGtDYgS(wi9i zHbLqs&aI%GwWXNTwQ8gKIa46)qt%ZykP-qD!d9Fa{Cdnjaxq=XkaM}sY2P_Gj)sN*t^A%0QZxml)x+vzpJ%HUk$f6$l4OGDax@AOs_vcEag;wqDHU z5o@VuFB4dkWEy24b;aXW(9YUY%+`ALa)EFbt$vJw8fTERld#cCyxyF)dc57+peqEz z*`!*-K$@+V8054Q(z_?K&~mU|DX`5W!*T}F9_Yt>@2NW9F8^ zs|3FJefV<&%498Jhd=@_F>Ue-%CN(>wqH`uR*ql^3n0x&4CFHgFC-?+0jZzq3{OH(jdy zahe0bMeP6&pGoWU(fZDy^?7N1SyetsSLGk=QsqmTDzinZ{LSC|@wB6;|NrCT_2+-S z%?E$PlC>)T7)hdEuo0ynN(_ht2>|KWltCZ~NQ($Epa5M!H{bwNpa;+ZWSLQrI7aCQ zoPY~(10FyJynqkz0|6iign%#*0ir+*hyw{=02l<4fB~>w1PPD<1?U300SBN0J%9%E z0(}7Ta4E>GrMLh$-~n{N3-|y(5CDQe2nYiaAPU5QIFJAafI%P$7=W~!AOi}}1#|-r zKm~dL4d?~>fPTOUxBxfc0d&9%_y9i;0D?dW2m=uy3dDdokN^gNK_Cejzz{GDuqlEB z$bbTL0o{NDPyvk2P&5FeGZc)@P%t_}aRM&D4R`<@@B$c}q4)ue&QLHqL&4|_B@9G> zD1gx!N*qW41Hd4V1PovZVEYIXAOi}}1#|-rKm~dLjLJ|jDnr4j45c5ys0_sgxB(BK z0~nQ|_yCN`Pyzr(WhfYxp@e}5fKeGr42S~>U;r2dl7IoQ{R9b+0R`v+x&a5E0zH5R z^a6cAKj0+L8SKJmH{bzuzzg^QKM(+dKnMr}5g-c0fH;r<27o~z2^au-pCAD;pa5M! zH{bwNpa;-^UZ9UaTiB1!PQV4Y0S}-9Ucd+VfdCK$LO>XZ08tVXAVDyE8(H9CvUnm%TpV92up~hOWCCp=#$6~FccEb1g@SPx3dUV17VF4VBCd*aTf~4T__lLpU{}V8n%j5f=(ZTqqcEpUv>V59|Yp@Gjs0NX{tSPMl46aZr_6pXb{FxEoBSPKPXEfkEk zP%zd)!B`6gV=WYnwNNnDLcv%I#RKSo7w`doAOHk`5D*3;Kop1paUemUEgZn-K_Cej zzz`r!5oACCx`1xL0jNL^paH!=AJ7jt0T&3OrN|JV>>_A@8wda~zyRdkgdV^J_<<;p1f(f~3OE5D5CH}Owx8et z`T;Kx1_ppxK==EEK0pUTKmr&Bx(*R~0S^!a;=mAqfB3xXE&Z+Xo4GfQH!E-C-$=bt zeZBB{`t@3=Sjv>lx!sJ{DzD~WO}%Q)@g}`o`c(E)`lre-GAC2`r~EZr@!)O{?XK<)kg}Cq^Vbb@!`zF(!-^P zvJdGGl|R|c66c|Q{kaE>2P*gH?@!%dy{~Xz`o3DBSjZHlLTOKSkG`jTuQ_vE;hy9@ z73$fay1RN;;jZ*uwL6P{X5aqo&HBydn{qd?n@TrkZ`5xrQ}2EwUzy5JrKYMMFMK@x z@!Ac=8!|UYHVsDmu1a53yRvv? z=1S?x(iPb&^ef7j=PoxcuUwYDEOlA+(n6zmzc~wCZnv?!a!LM@)FlTl&QTBl%0>B$ zQWsS}TA)7uwF`?EW-gR2EM1VLUjF6tbLSi9SI*0K=;y!htjt-`S*0_xXXZEJCBW~;Qdv?aSm-%`%xGDfDddDs7B10FN*)$OiO4*`M%Xg)^s!BmgD>b<&XJkn(Nm)sk$}C4u_&0p**9#WV`~Qa;&;NM;KYYM4|KGKO zhLZ)ntp=o&KExoWUBgMei(b9qq}i5e>AG>9K)H}KD;P-me7F*{Q<~dq(2!`J^Za^& z?Pyx}N(O42K~6iHxq!`=#g^$bZV)IJk!%G6HO?TXozh%DyeVFa=9|X*%#RCfi^;Q& zft13B7~pPS-3T zrbKCs4p?OF*m$$RxQtwr4AeM7oOZ@$0h>n4+oxLuy5o2OL5+bSPCH$*fEe`CETFmX z-K_%S@no4~ASDFiM$pdKEMU`Ud5?ITKz9PI{5S?uiXNh$vy-kd*%GyQuUWr+>v(;n zk@@}X?E>8jQXJ1fO3%Y}pq-9JHO=TOFTC#%xYD%dV;M-9a)|Ug+r~BXrlL75Ke}g_ zU$EaP@U5b?FJqv_8Q|cKX`!WBxmRFYPlhoDYMc?yPBy&pt@p*)GPZTo`t92$Hf`iD z(iWL-C-w-O8_2eXft0d^7~!;Y)_1AdX*vH20^vrIj5CmOwh$>x8?lpcrZ2{fu=zsG z^1}B%fp!x~)-sT?w{R_Jr>$4n7OkbA_X~`hY5n62)HtJ@cE);Nj2UC|Zq(B0|~s&QMZh(X}a^#XOPoQ zS+8`am6ifNBCwsr3kYfq4077p>dzB(Tk{aLyxe|Npgfs0V+_D!p-ZZF=+JcQcO*gr}0~1O{rHK~6hiy?E0?s%Gf*O5<_q z34!f&@=P*N;|y}z+3LmHHnw3ieTS#lzTl8=qWAya0eX*5@BLHDRrxP|<&ZZYPw(a_ z2f(F$sw^Ez^Z#9=%HjE{T)djz^+zZ_z_==J{5j3>NALbGp}GG)pm+a;e{jf#LzUm6 z`Ty3?{D1#QbN`(^OO=05{r_(sroIC7^XVZ~UP5yKzGtZNHW~v^rT6}qqW?er{F48b zBNx*9|8?t3@Bepyi>)hv6%UXsxc{qcEa#G4QCF`z>M~qUxeCN_b<`Pi#+?c00R45g zt5=e|Uaw65yk1FSeY?KP7P~k9f-QFJ`2$<5dAg;=y}NwU;t;Ja#KW9}?E?D|=s}>0 zz+MFQAuxeBBl>9GGe+B<3LP&&$n1; zcI)DJ-#FLLYHTih{{uExdcR+q+rKX=%}vnaksGY*#(T-R0W2(GVHpcMv2YAUc*MG} zhc;x6pEhJpA8p7S7j4KKH*LtA0a~-)snGYKwQddGc+L-!V7^R(`3ecF^Fvrz!NOfw*o}pgv~VEOZvA+VIzNn%E`)R=#Dfr{&HC}ab$$d3cVl4(7S^%w z5Y``Uw|=~xogYPr10gCxya*X?vwpnAogc%(Di-d+!alzJo4>{ShF#(JFgI{HRH;~Do zQuWd)J`OKAqproSr<@UI)S0B;tS2{4aGd6JlIy#_%hm*T{erD=?)w8<<4$%*>ZH)o1clCywyjo7;a-@7FuP#(z^ua@MR?4K zL!sklyW#f1-3PZ5ZWr7k1jp?{`zdslheB8NQ0S^&3SHGlp{oWEn!qlz3-@8OL)dIL zHe1JLd$HLugbz4v-5zYVADi8e&30k4-Pr6ff^EMjCpKHhW^35&K5TYBHake6gNIjI z*wd)QDePD`g&nI>*s&Ug9otJ`$7=h&#RjbvS0e;n8{s(M{PG``PIGsUD zdMU)P9-7>NZV*c(1n3CxA|QbPc8E63T!A$Ve%h$TVcMw09@?nIUfQU|KH8|oePoEY zsl*y_=xQ+{lW4?Cq7fg7Mg~YU(ob>2ZMF>EGDZ{x_z>Vnz#syg6p%Q)GHZCykz=F_ zVSa=K5SB!ktAhufK1R9`5I{f>0R{rx@El&LH9Y7hGU7m35Md#N4N;isT7B55&5urN z72jB!r^CjfAIgXdO9+-QEW>}ErOhtY=%Unz>Snlk4?&eq{df8B^Je;HBC+|qY`IL= zt>uwje_+dF2fL)@iIqNSc`vQc&}yb`c-g1S+Ifaf% zM|NXrKb8()=_Hm`u|VwXlKc4?eqm%6BA!FHz_ z3DN0lfrARTAV39N5TpVwFsOhF+=pG9XleA$TA*U-AeIhc=^-rbp`}A@PBMx?XRZZ3 zhzTJkjF@4>=JE6s{ zM-JaLIA3JBv4euNgC?SMs7!ci2Tk~C2TcTN2TdrnZX;>G4q6cvCPb@P6QfnE@zE;Q z1ZWj&LbQrCQpe4s^QZML6I+F~1!!%@MQClu>9n@ve6+UX0<^Z{9JFhUmSeXOgWhyY zlXQEq)JZ#Nsf%{d(g^L&r7Fc7Rxxr5A`C>h5aC8d6cJr0Hf|z@aTE)7BJ|B28K&*t z9;fZz?x*eE9;EHw9;WTy{{M|qV5fyQAN)$;E9tM)zFhor=F8>xa_<@MRm%Bts$BeH z=8Mu7OJB%-LH|PbbNc7XpUr*N_-y4f`FB$9RNpSVoqoIaR^|=qjneDc*Y(%SrNS%e zS86X8U(UQtJwRT{zNEiYrWqWK7jw@W&sS*f#?*7wXA3lMW9{kU)0wBGr_;sSzT&>j zK51WRZ~loC&D2vErkdMAviJ`hCSc znLW~;(!JSx^?S4T==YTG&e1%KmAlG!tuE||vTvNF^ zf3>+!MRTUa%%#$$My|3uzdN?!Yos-$vFuoSb!}B~ zRc4j6s+2A*&o0-OmygdKZyax)kI>vB!Q2-ivq)N0Iy!r_esp7!~# zX6DcII577$$jp*vm4>s!`fzzDZ={TBvXD$CYlG>5TB4Z9B&0+so{Jf=N;Dr$MXQlw zI1`q_rBF7chf1a%1Uawat>}3@rB^*^cg2XjLxXvNV1OqkB0B0u`+IQUCFNh&LuYwk_PoG# z5m`nVsBs23JGo{KOzvtPn8%n8%oha4i^;W`ff{Fk)6Upks~auFD+y#*@#29R0|T6PvgUzFvgUbbc{%;Mz<4!TMj5Da1~~1ErsCneGj~XN zLm<0`G-C|ZI0Kw^GE?!I=bh!1^qT_XwY+$s#=rolozYZ0oOkB8(QgT4A1A?j25OvP z&Q7wKnE~i!*jA*_-cs*FVLtcX7AWa{htjfw8fTc(PFbHBz@)SspzjELc`|KcpvD>D z?Btu78DQGi_8fdyV7-xi8yTo^MmX)P^%sq1tEHHq76@BEp z&j_qHlW8LZHO>g9owcQyt>@!s1;SfM_5ZMUC(vzF=l}5UXq_ud8jY;oo5oJU4ptJv z5=gAr*+XI_fv^N(K>}g7!VU>ogainXMC>6ztTgPK1!XBMZPbPCCF(}EU$KDF($(s| zQU1^Oj$}&)Yx?{5ocDdtdrD6~ktJK-d!^Axn&;lR%NXRsu&`d>xNd&zYw|M&sar)i zA!jfwtd}~jo8w=XuNeexqmV8JxzH<|DA2(i<#BNIn$%11)%&>58id_OF>waD&?~GL z)}WvK0AV#7>E{fRc2LG#2D#8DoG5ARZN7WKw8~i>sy|-uH;CIwLGu{oLZ7f+oc=an zj?+JXitp3lt#8>({r|F=Y|q+EyJ+tJ!7X;v^K{<7cr&fPTmNh`HBsi69X9csK70h~8FzZ>ttY-zYo)ye`Rxs;X!K`Nmvz`?;L`c8{%mA~V70h~8FzZ>t ztY-zYo)ye`Rxs;X!K`Nmvz`^qdRE*(0hsfwV9v9GInN5_JS&*g_nDeY)&a;9!&kE)|E12`FV9v9GInN5J z#tN#z3T8YjnDMM&#O=py1%U zf@A6m4w5T4_N_#L2HJr%LYROVV8*k88P5u4JS&*-Jnq@XcmxIG3>1t7P*CGnP_}LhDpB2o0RxtZn!R%)Rv!4~repXN-R8aO)P?A$nW>Zi!Q&0#~ zP}WjVbyA{01MQ##VD__u+0P1QKP#C1Jg&8v3$0)-v|^6FPYnew;OQh(;02Aq2mBxa zf*=IKAOe~|GiU*=pbbO;qeIq;1WdpTEWiqEzz$@;074uqhP#_g3&h$M$;%5AERKLiQ)$V5CkC*1`*H%nn4R_1#N)!5fU%~Gq3go!HGAI~TprA&tpvX)+vJtut z1VIRdK?F2`X3zp!K^uqy4YUJxfRKO*n2B+%wcvUyumL-e0S6Ay0Gz-D+&}>ypaL&w z1U}#g0T2Ws5C##@1e!q$Xa#K`3N*k*2#FZiS`)4}0}HSM8?XZzaNqz9zzJNy4HV!3 zD)53v-~)aT06~CZHMGYdBA^L0gBE~+Fto=YP{g7=#z$J)j_V~V0V*b71}NAnsKY9# zRVpY!DyS(cC>1IW&;Xpk1>8UZ9-sm*XapFrrC=bIg27S>20hV}-~-Z0whM0+D>Z!6k6 z3GHo1dxL1Ng7!9{y-jFu6z#R5sU|eFNi@}rrcOdr{b*_sO>IU~+tAbwG}Vu$2GP_I zn%aP-wxFpFG&O>zhR{?SnrcH+gJ`N9O%0-{5j53>riRhf7BqD-n%aS;hR{?un%az} zHlwK;nrcH+B{a2JG}VNrPDWD$Xle*eZ9!9`XzC<1HGrmu(9|%R>O@mp(bNVswFylP zqp5Z@)sCiy&{P>s4WX$`XsR1c4WX&cXe#TcrcOdrThO+4w9SsTF|@5kv`s?W7&hl1 z+7?FJTG2KQZJUg?)&4a6a^~gu%cYmHV*S6|i_(j^PbNR9elq_;>ILnE!t?3pW6u|J z87f_thO$G6A!#W0T=F^fx%{)KXSHVw&!nG;JyU!-L+k&Qo{B$JdNTWD;z{Yr+!IM! z|1bY|>T&Jy!ei;jVzdHa=F#}0rAM-lBxnu5+`i;KbzlAyDX|J*dT(rRF`LQ8vzfv8 zU};ZwPhyX>Cr9f5st@NMNQ3#>LMEMwWr{m9JL5Y`JF+_xJER@C?aA%x_WT{GJG6h}tO451 zg{|qWv8}}|nJw`xrJJ&1J;2=NIde8m$PJPRG*4fy_XBpmam_hQtlh4Y})+ z*Q?j(H>EadoBo~k0Ee&0ToJ#bbb0pj#O2cExyzE5sh8z9q&8?93bYnrELH5!^vC;4 zmu4?bTq<3fyCiu@b;Ub&5&JjK6Of-^J-}#RVNH5XY)$d3%vtfXN@r%zOq?m5nOmJ) z?OB~aBXx#$M&a~yopS_qmDd53R_0bDSEwuU%Tvp><%L8#5la+%GrjTN(z5Kb#4>4F zb@jZkB)ufIq_{Y@cQCH{Yds01GPoX>A9qTU6 z$;^q*DaEt#L|lsJx&~&)W*28=X2oZfPRyQ|I8iz=cS7<6^@RM))J$z=;rR6NvEz%! zWsZvJaUa!olf-V+R)x${Z9w zs5B)zB{4;slAD~ItWM5PN=?!x6*|%#v5sPUraj(X(z04YleAnk8C9dht(n&9dVR84 zZO%7USM4+5c(@d*uHEMYsel$J_|yKFzv#>O;=WR2wlUEtHRilYuj;<;;&=??4Elui z4vDosZ%KMT**8Ozz(C z(nDD(W6r1^sq}q=#7|PnYzDc|FRYhX)jgCjt4|{Era{=*bD?c_!`z+;jG025};Y4X;ZwUGfa4}pWR$asVi9z1y zC@Ib$7y5RU2*-pY8-qK^(9c-tWGb>f;2fzD4}6F6OBI-%a!XzfHCOwKV^~MDzYP)BJxA z{rd@;|38i9|9|P1v_3$@ZhG&1o9POg`!CZtfP1O_e+Z2Oc$w<|i@$6${eED;WXfw^Ha{&C9>i-u}{h!gl8Jhb)`SUi@OC_6WQJ!w2`v0Xg4uH|W zYj3^g4^!#;|J6&z#{Z8y|KGa?59inEft<@A7y5+t9!~v3OJ)3V^#`P%8DxEfQsy(r zg?`~gSz{ksYQ`VejDvj7An}`&HIG3q^b6}HmOpM*#vfOA@8r! z$nR6kd!HP_>Do{o0PPWK`smnC(6^uLDqD!^7dZy?)O`R)E`jZ z0tUG-EUcGW{xn$WC8gGM^LGY;KNQ`BoWZcLUSLrF_*n_8yvf&mKN>Me{ShTCV2}&L z!g{IWx{23g^?7dC9%x91b1Hy>{$G$7k=QSFkyg(nFJP&X2t*T(>&g!) zUXRtgxxX01y)C*3IfFrAy||h#R$h%Y?~H#n$b5%#7Ba|%L1Dejnl6riZ~U7<+`AOC zh(Rt43hTwybg}YEteGY7cZ1BIi7rCUU{F{uv!;vV-yi>B5ceKMEMkxggTi`oHC?PM zM_cpF@Sg^mKc}>X402&mSTD1ti&%_yTGcE61B192K~Z%VdW1S3pz(TSN(C3y`g_? zdP4taRE^eOU`%4aql_g&F7ylQHr+;{>$@|#13X4JN zUnp-LgIpLE)=Tx)_Hz82h1DSNucDifGZ+@u3k=ora1sVJwV3>qIMIbV*sVq-XBh*@&D_VRgM2=KVwI1 z(AWRNqDpfI^q1xn0s4Ul0Tx%{SX_x?aV3t$l{gkx;#gdXV{s*p#g%vzXrLWPU4#jk zfdyCrmR90+fTfi;l!UW8~0<6FW>;TIwaV)dMvCI<3GD{rG zEO8gWGE1ZF#Bxg<%Pny%x5T}m5n#C`j^&m(mRsUjZi!>LC648mIF?)DSZ;}9u_cbh zmN*t$;#h2nW3eT!fp*XVr2PaITjFM50ajoGc7Vl}I2K#tSZs-7v8B;=V$mgzMVB}h zUE&Jx02O#aBk%z~2!J36fiQ@GCeRF8Kr3hiQJ{f#z(xoOn1C5rfECz)9mvFJJ2|d# zfCk_MF5m_V@BkHfK_l=1KL~&z2!Sw&fF{rkT0kpk15uy>iM>mW1!iCYR$v2mVziwy zuAz^k)L75}oWKR#Kmi`00xxI;KHvudKp$tRu^R{!XN^gKr?6ot)LA=fd-^b z!bFU=(~N5@zzS@@4rIWA12h09Z~-?^fCs3+3mSnB_(1>!K?sCF1T=wW&;nXP8;Al8 zv=gK4?7%fr7hwWsU;$QO19l(-4jiBXIDreefdV{01zykye83L^AP7Pr3?iTjG=mn< z3fhR#c1CfH2HHUfVEu#yOu!5*zzS@@4rIWA12h09Z~-?^fCs3+3mSnB_(1>!K?sCF z1T+z&?QF(1Eua;&fhf>GJLmw?0AT`VU;$QO19l(-4jiBXIDreefdV{01zykye83L^ zAP7RlXgkBWCIXs3GiU*=pbbQU2HJr%NSJ^bSb!DSfE~zy0|#gTPT&G=pa2h0ffqCa zAMk?!G1|@`t_guKh=3;03|c@dXaiB8fp*XVCIM-PFaa~L04uNoJCFef4$uIczy;hu z0Un?NFEQHAMqJ|qeh>gb5CUNk0ZpJ8w18I72BJU%?Vtm&1B3)jzzi(F3T(g*WWa#~ zGyo@X0XH$)P6gL^fC{{z5%_=~1V9jkKo~?o6KDo4pcS-%D9}JVkcJ5pFary)0voUc z8F1hL4Zul^w$p`c+&}>ypaL&w1U}#g0T2Ws5C)YG-1ywx_p;~Z{7b2qw3iAmreBP` zSo~z>lkrcMUdXEexgyV}r##nLY76rH8W*CmtTCKA+s~#BOPK?t$b3>I3;* zsa@Kx!u{#{WA_*D%iI^guXJzr-o(Aqy}5gm_o$=m1hTvI^UUQlsf?B>>`d>B?JVxd z?1=9uZO?8`Y?rp@?x;TRT>7@yZN+VwZSifTTeG(&ZXKZW&lPXZ+#J8Tv^Bdmu~pid z+mhU(Zpq)2x=FjKusOXswz+s?=EnGqrF1r(NK5J5KypAG$ls8ikuytF)^MSEjFwU0JLe^FMG|?6Ts9%!c@eQYxEDq@+}?KiRML=PylNs$E*R zBz;NjlH$dgi{lrUF3Mh%xJbGvcVY5E^}_rGsSC6V3g@%)bL*4q)%E%FQs-&s70ykc z8#}kSF0(GauCzA$Z>$YCa8~TB;+dH<<7bvuXICdyORIBdB+pRK$e*4%z51MZ@l#8y zva1rSq*b|7lBcMrb(5i)LdnV0;x~tEtmyE0Nd{?SV>nhA7!yt6_3mu89%agMD~cp5z-O4!;^=rhvyGV9i|;tIF$W|YXJ_l z#oCJh!5jeQ&-s!*)t7HfHEN9oZ`vF47S)UzS4*C(C*hGiIVGv6O5UBK(`pu6X;;iu zbY`4!r+#+70Y}VHX-S_eXJ=u>l+e8h1Em{DEz|!GV##(;<=h z402&u_^}5@%7Nn!$9(LeZP_68AL4Kfn(g)C%{3xmRm0#Su& z6i1y_oVK)k&dDoI`{h_le0Cm7_yuyCR{ zY&d=q*S+kdUMg=dIYlpTcXngjDi_k62ANh$Th1UChK2Pq^=GjTf&1@mD0V;7sx~3jAhCf`7Bk3&A>l-cW5@NEoieX_ ztF4ao8bmrNYzc#07!uZt)Q{^|Mb^AB8x8VYl(dvVE({AN${RbbKblwBW@}2oK7&*@ z<(n)r&|c=ud=^jG!UW3xeID}}`w4>IQBpU9To@Kkl&9}#YVs;OnwmGqR)f?i<;`J`3&X;CsovUNqJUUE4YSQ4P!rvR zoWZcLUSO~`u(G46d25Usq_$Ji90s{CEUcG0uAAfE88w5z4vOk#kPE}YdV%A*S@~dI zGnTL2Aa#=HCgco;h4oU$brT=Vr&oOd=r9PJOd;J2a$#6lFK}EpE8|XT#_~-vNS#7? zb7;9Oq{6VUUh24RV&qBnSiZ>yfd^4YH-lUl7S;{^|5^AU67bdi4nG))gR^#HV8b7qE4jc zS`Y{W!g_&9WoMuV>Te?0U@QOql*ayFOtt@i()j#{b)>{(p~$#vb%h{eMJaTMqj4 zJ4aLf|FvHI`@d-8$h+)U#iF=~nt1uR<{Oiv^n*M_g9o8HE+5SL$U`J}C<^5AVW^PH zhg;wgsFBM@qDU?ug(|t+i88qyL!DfnibAOH(muI3xqKpO$9WF;5U0#7g zy1WvVbopeI(&bZ7OP5!nm@c1+YPx(H%INaxsH4kgppY)FMkQT76Qy+dEY#BFH7KUb zeW<3(NtDy&vr$i%&p|<5UWYV2}9itKXA0ykLUWvH{um!r@wUx7-yd?iZl@>Qs{%U7e=E?Im?DBP}v&$P%XqPvk(k@?*QoDQuYVGm>itTb5)pq$tl-uRasJF{Eq2ONW#ugOb z<*lf^%QvI+F5iOMyL>B(@A5WO-{sp-ewS}Y{awBT1$cS826vzYFYiPRUe2HhFW-qO zynGkR@bcZL!^`)e5HH`0O1yj@O7ZgjsKv{>P=uEsKowrzjWWFaAnNe)Lny?{52F$< z??EYE9z-o(&Y~DE??p9U{shYL@;=n#E8Tbmb$R(w6z1i}P??t>M`>Pu0=0ShNfhVh zr%;`jpGJ9Jeg^e<`B@a`<>yeLmxoZImvgAm%g;;fT_(R^f}b?Q7cKB5D}31oU$Mha z$?#PUKka~@X@IXe;b&d&b8fg_fq4)7yb8bIg1 z`1J_WrGW-dL z|Kor^ZGdk%;jjx9-SBM%zT<)Ks$``bKl9?M_Zs2Peef54_$Z|gpSUtGPrb4?H%8iiwpu-Ov0?-+Rt`KyGA)R%M^fW=W8G2h_ zV=MHvL4OnmG#HdR$&d+#%`jqtO;*@!gDrO0D#JDoqYkJwz;-9>aKTA#veJ#o3a*;s zfd{GZU@ttR5gzJ;hxy^*0eD0Z9vOm1g<)p|#+u;NW;m?{PH%-rx4{`vc#H;*ZHLEo zz~iMZa;6EMV1_4J;4CYgZG&BQ7?F-aAgyuC9ud-THvZycxoFwEecQ9;2G_3bq73?^^<2w zaE%G}nPJib&$hyIY;dietaM|YjH}M&@H_`x-vG~d!V6sRLN~lfffsw=B`Uns3;P>k z$_F?2;bj4Mc@SO^f>(y&RS|e~6TGGwUfTk%YlR!z;HD_NUV}HZ!+{Q%mIlZhO>nar z-ee&w-PmHqRai#~fVVs09WJ=t4RrSxTHwR2a8DZ?jKZu2_qM}NNQ2})6ItoTBW7Ins0BV| zg^%0d6L$Ed44>lgX$O3!0Y2-5&$-}`8|D=Fya&FZ!cThPi;eIlAAH#lUkSiZ1>vh9 z_~|hGOa#8x1V7shKi2~Hx59iI{CpICL4#jxCoA3fQU|VjeG>e#G(>*I1ixyAU$elk zTj4is@SAq{Eg8PS;Q!0RB%9 z{xk&N3d7+DEH=Tno8dbx@ZDCj(v6?B;i~td@aG!*MLT@I1OAd7Ab%ynUz^}>%<#7s z_&X~cvB8oZ{$7TE;P8(Q_@@T=XD9rN3;xv&|E9pdd*DA*_)jnVpb`Gd2S4CbAP&A*m>O?oZ+nfPalpH6>z=+(rlrB7u(75h~FmED+|Hq4bb8l&3QjO3!uDSqW3msL$kRHM`PN znWth;6`oAdigvjt5>J#K&paNZGZLm~d_wNg1f7pCL!%Q4`%-i^!W^w^SK6D|yFZ)E zO4;mSoJJ+2_h@_abRI(K;p{_kTIDYNp!Q&Xcap{=WFLq>P~4TK5efPGllM#aXK6e_ z@!s^k+P%HB-d*PI*xiM@QgrUY+?|O#OPLIvd9biEwNs^a?-Dc)A+tTUy+CIjRPV^$ zp18eqTZYCU6t<tpR(^&?k>$98UoBB7Z8*|qst}9)exi&_t=B2JtX~aR|>e5x2 zt70_XAa$jBW$uauonbI@dF=ASWhpwpU~WT#MjK@4?1F`U)}OsJerb`$8ECYUUh-n; z;_OB7i;5SfFVtv^LGl9Wg6#S6^NZ`#>opo|8QIYwKnDVsu8q)Eae7?yLlzPcTC(>=jn0R;x6wAaO?N^bDO#uy9)HH1)LH zsRAKv?N344=gNBEgqy*_=*eDbpF8ng5&~eL6*)QSe%!hr_l(4Ufn#4J7D{fth1t zG-e=0=L^iuNYIFZ%+ax<3)556)#5vx6 z)0%!#FdK*migZ>$&7Y?+0g^A<7;h}nhycx-SCguwW<7B_A7EP1Xf!~QR`|=h;;w$D z>det9el%cc# zq5dDgyzRmnRR5RDt%YXkILYPaP|Dd!wlk%6kUXz!Jx2SoWDA*ay+=E@N~FA=24V0 zi$N|73hQOoba8yy=?H_kX%sY{K`smkCyJ{%u(o3Psudrd{dA;3;B<;wz#ta}g!KYP z53K2dHP7Ht25CoA&LRf6FescTt!5)d+Q)9Bod%gRC~YAv1ddD?6xPceeFn>!HC>Du z#2rHsix}j>ps-%t=thdTkKIV88e|?zX$u+T!l1BTW=$8zZ=}-<;*Jwtgq*>kuwGnE z7b^ven)1_hgUsV8XCZ@J7!=matm)$TaYRQO#GODvOBv+CX5mC}KIR(;RdzKidKNBS zxUy&2Qhg%nvDJIH83wT@Qs6QMxv*JSFLvyat%|K#C-WGC%-NK-h(Rt42`9>|shF$b}(cy~wIAR+lWwZ~rq5@_Hz#i$N|73n$7`X?fEtmx^9uZ*t}9|LNZRqiqfTtZQc805l$uwJ14F<>;XrhFJT zNIQvgmN3YLLE%JcV;=*`X_Za2rbar)Aag0DEoP7lgTi{5`WwhtW=$8n4dRxGE<(;= zP*^Wc-;jml?>1bfhh=utEX)7rw&L9^Cg%hQXZKUP2 z%0^lkuwIt)t-5gX~zY+&?+0E-RcPNSgX8012~5OKjZ7SrQ&4#4S4={$cQ*i4C& z?520<{C^v${%`)L&9q~&-4y+Y&GaBIBvrX5uO zZ$8FudfGbH6z%hV;WBdTexB-q~1016U{`XVv%Liu}6*%b6F=BuwM-mt>K$9a0j258Dkp#vH za10gT7%9LpP=I5c0LL%^j!^;}g9K=DB!M9U93uoc1_*Er4B!|SK$9W~j0)fw6!7m( zxgTvO#sqK-3E&tJz%d|zV>|%IZ~%_c033q>IK~2S3Cod zL)9%iw7Z}y2!ml5)}SUu=Q6p&0;gC>dZOv#Asimo0FQ9Nqk{0bFr3*0Pi%p++hAOS z-K>+GYl8DledNtfm~q3qJn)_nd?*6Gt2!J36fiP$S&7cLef;JEZ8fXV>n2>-8n1KaYfeqM!3^;Ir2H*rP;06jX z)1AssS>ZEw_?(Ow4=%pqgP)1O&wJ>%+=LRbht@P6@$7!z5>ebn!KbA3*Yd;LI8dzNb)c)em{bX&A9l(7F=w@#h*w+-~&y#@|!L24IU+b;)HLxVNoGzpH6sz4+KCEL_iCOf(~HnBCJ3L4&VfCpaLHV zf(U2F+ec_x$h|A^58>N$(hR@wd&m*oup#HeA$j@sE{%=_k)CxtEhK zOE2fd`hVFM<8&^7^e1CfVb8n}f1&hz_W1aF=(QdEC0+?>8Sc5`uShAQx-E!i!J zEz*{pSnsb=gOAZ_f2p*Z&JUypw1EOu;bS)xug_c`zrM67yD70r+LYV)@2vNir;5CG zW#NkS6|pOdRFjWiUb-xMS^TonhAf=}ph#=}X{kJ&0YI9tE+4zFKy&}q3v%Zt&M&Rc ztdFfPo|ic{2pI6?!R|>r3{j zeR-7}uy#gj58 z#i?eWU6NQLEy*oTE>;)k7o`?yiwX9gk7{KGPNND$UN$PRt&d6`NH&F>_-4#L@{_s^Lo~7eXEiG!qra#NC1)G7JNsma>p!lX3S_KO{vj(A6@JxkSnsXeD9HC4+~ zeP4?f+E`nzHQB1R=Bd7~wG^7u&9UYpRrupgrARiCh)7i9PlnZSK9r(5e<7F-#)8E_ zhARCff7YMy5BOrfVq=CX{UvYKoA65B9M$?&HSbAzG*5x5{V}EJ&bZ_5k}K;i?4l^!oqD&0Evw8=`!_V)^K?w3<2H zOAL;SoK8nXj%Sby{lbY3!ywNsN+OlKn)=I024QDV%n1x~VL&)h7>*R`^%p&?awM&$ zUbxgCay5m`WRMF3!g`VA1KQ&8q{x~ME;C3wQ*;n=1_Q!+Y1JL997n5}sMc!`c^1XY zWRMF3!g`U_9mHX@>iIVbgS0-%nZ+O%`h^pvjcuL_=Z$Ti)p^Se@{*J^n?Wx03+v_S zn`b4jrl_>SAna_4i8IKB0pUbpW1FWQR@ppjM$W7>h&+eFx)|ibfUsVq{_KrL)^zY> zgS54xgOD>A5Y|i6H%~pSvU%2wn>ocGavjBVG024hVZF%e4r24Ho?*PoAnkn0na3a( z`h*ju=@Xj8-m|AWzCxd@UA>UgsRnTuP|$n^xzH!97w6J6(bE*=wF*kaa1gEMSleeZqQK zm9BL!E1$-sdY`h|Ag-T+7Ba|%K4HDMO4meO%`5IqgRB&#EM|}k{lbZ|u)l1qY$3~* zeC!_OEQ7=il(mRKF7ylQC6?dNd#HDKzpJjqtuY9@Omq)&2K~Z%VO8Dx*!@YLLE`0< zvWP)0^b6}HR&{Uu?j>b~VK;V2}%a!imDhb|)t-?^$x%M~m-g8^m2hK?@n=LZ7f+ zoW5a}<7(>C=NM#NODT&P(%$macT7$&vC~FaeT<90pOVppaN@7j- z))|Ct6y1ZILBFtGn7(0(u*!y6Q*=MqAaN6=EMkxg{la>QRo%meSzU5J&mimuidn!Q z7lworg^i8XqJ4AsY2B5Lb6WL#-Fkya`Y28tC*;DAuwJA-kf|!N=Kbz`gS<2)EoP7l z!@`O3#s)Ht=2bS*norXg7^L1vd5ak2!mzMjsy@P}I<=;o7a9a^7TtuL!LYDipgxdk zG_bO<){HN>$RPD5N?ODq7lwuPQpa@@8|?I|j}sRg1a6_I#SC&`SXeJ`TsJF&MQMxy z6(P$XVlFXA-AZ|j805mRuqxI0hQ)L*o%??>&HsOn=Kjy3x&L3Gx&Nm+?WUj2q&fO@ z?tj~1cGIpO*-Qr=YBzoQt2WaTI{*J$wC>-mnpz0%l+VR$v2mAOj8@paD36 z3%G#-JU|6r&feW~S z0z5zkUeE}9z%S@}2aO~!)z_}QdcF+N&{e%hNGz^LbSOErHC>U^|V8Dff0T&7eTqqcDpU^|V8Dff0T&7eTqqcDF|M^3exYFa zg@WN1ievbFiU1y9X1}C{0xPfqJCFef4$uIczy;hu0Un?NFK7fl;0FN^1R)Rx5zqvh ziE*uM!S$`64M-ls1kAt!tiT5BKn5H*Km%|B7jOdwcz_DLpb_|h9|S-Ugg_WXKoe*N zEyTFiw&MCW5Cu|{Faa~L04uNoJCFef4$uIczy;hu0Un?NFK7fl;0FN^1R)Rx5zqvh zK?^aywYa_wM1j;rn1C5rfECz)9ms$K2WS9J-~w)-01r@s7c>GN@Phydf)EG;d)IGp z_XGzHVq9w*aJ>__fEy^l161Gzjlc)|AOM0O1hoDVy+Q#SAS7S{W?%tUU;}m_0}dRZ z0XTsRxPd~9Ypn;@tH28yfe-jW00cn@gh2!}fo9MGT0t9#0u8W1LINgW1{PoiHed%b z;J^VIfD^cgajkXZdIflZ3cR2Z_<$b-KoEpL7(_r5Xa+5y6|{jU&_Fw2`w0n{fEieT z71)3s$bbU}F|M@@xZVj|zzr1O0V?o=~f5Et9TMXhfwvqsAI9Hk%Z`aQSdqJGbDF*JvZT^e$NqH)bAOi2rO<*q+skogRl2oX0!LWw~4Ey;q}x>b`d>#(M$0v zN#R+$jGm_cEAez*LyvdwCj2-+&l*soX?lkGx6rfEe>1k2ZP@y6$BSV*J$wgt(zDT@ zp}Xq46Mu0RuDgdAxQ`y@-d#lJZu*P3p0X|LBu+X+Pl@d4?|aKTA)gCr3Yay+F_SFyZjLNDYdj1QLfWcMWYNPBWLKVN+~|4`~7?V$qA(9hDE0U4T`AKR6_zi^*+U+UgG z&B%}6ow=)cXY9^2&BNDrYC8(s(=-Ract_@r_#LI&vos4|x;=MWlEwlI-@A5~q+4<{4`01Gzcsa0+ghNR_^~a;n=&`WZz^rhZcc2LHs@|k-l)=S{8U;?7Y5P; zu>p2Nj^^U4*XK8-Hffs*8`B$O8;jRvu8Y%*{Oq-fYo%***Cc69e*Wsz)!NmCtI{+p zzj$Tl%J`L~E3z~%KT31*)BnL509`Z&AiF-XURs}{+4<^u`Eyg}YUdVcetv9SacyR8 zd~NBR>^X^Zq;qm-Cux>`KAB2t$wFV6=IIyLWY+YZrJj{PGj*m$v-H!eW2=j2>^vh* z^YpW)Cr+16&z+W}nfm!tQ>SXD7FMNK#a0zh$(#~DrF3%kk98GiXJ*G| zmuBt%zdY~1baZZdlIHOb(;WWz)KV-POT?sDt~1%GcIJ;t(Mr ziSqaVUa`{P0mLV{`jkqCaL1`m5LIoFH@i!v{`dbkm1F z#ce5j553uRxD(>-X3D@B>>ax4D7se*?PK?r_p+h>KK2i~>-BE^Pu$nLcU5kpH?1%H zG46ROMh$kkNlLi(qGJ~%5ihi z_LiZm#N%+JljaY&7l`X@L#MNM=w9~Ps6UZ%eGvx=Rb>{+RrJJw-gmtQWW4S4|{(03{l%n{d}s7N)zh&<)raGUbmcjeWfgBTb&gBfr4C(d`iT zcnKd6At$RcjYE^B*A2A>jHFpfqPH+@soCDMEI{AboEAeqTI8F1Lv?G z({G3H*j-OO(4QB}f!A3x-Tx!{)97$#@Mwt6wM4hEpV71PRoqd=6?W+#`s9(%iTl5+ z@)x`4m7zcJ?VeTa8}x)uria5Eap|87n+M((FTLI3b>xoduM7QY7<_}-DEw5tbK<7* zU1^?MScqlFXyUL$%2RAX= zEqwSBdZ_J=^21;n>5%Xm-Jm};5o(X4eCO7owd{9v=U)|@X!%Y;p4*s(et!);2zIR! zH*yX83*GaVs2TQcP%vCZlmntN~|qdmxn zyXorkhjX=S5j%wPzk#dt{)VGpVbmJ7jrwIxxJ{LfqVqfAA-#v9=*wMEY&cDL^;?F1 zCw};#@?eksQNw}1i<{ompSK9@rz`i@(rKoKGj?0$c^JEicc~JZAJSiq)qmxT?qS%W zyij>4=~dw_f8`in$zG?&z84#UCZ6lS;MYZ0mQ$N8RflMC)E568hvwr*0RC&y+gNib zci^w$rarxm)i*giT@rQ+^Yu1X-xQ$_pKWy0c6$2gD+g_R`ge?I|M_C4b~){IM|Vfg z-dDvom(x3>(eEeR`$X&8qjxYod?#Zwp#6xrQtG1b@z+kZrXXH z-X`o6Xa`d6Sn$AB@mPE4l|x4~c8ecYQrGF=`Ez1xUPE`UM0b8x{7}LVkfdvBEn_aa z@7WY&K3qJFyTl!YM$Ts6r0wi9Y-dyH(djSmm>ui}7Nx&9M}I1D)3(Zvu= zh!<~VCw1To=A+;LYUTIw)a#9$d|<8ERMt`J=~>=Y*^vy`B>tL(tXbJ#$OfJn`u6#G|%=u8x#n z{o(x&vft3dc?mrsvio}RKxhX}VLzouvLDayM%ugUS2rD4F80+g>8S~N-EAx1OG9)n zdy5(=(ZgU)&|{h@zkjrOE@3LQ^mx5v33?*wuSAM#Ai-XtmTHt@?xzu+~G6}D3xp##9mYQhOxBq_npjG)jv*%x8GyJ^X%<7w@E~kW-Mpl1q zSKkz(_do2n-q!DMBYoJSk6fZX_MMlC4;D-DE{ok#NBOaqqy1vLFzcPeO;gK#XzpCk z-lO)tK--eNazv%6?^=e>MF-JqnPUF?-+v#0|2_i$eFXkL^$2(#rK4J(=-QhbWP5ra z8r(fXXOGO?r`_9sck#~7Onygtd+GM{Z3k}6+%mj1wPpY2)Q$TGVmD+rja;W)m$_#6 zD)p-Pm8mPTm&Y#4rxN}7OA;3kUN~}odOaQES?5`sKRce>xn}sx&eh2?iZn-qt?E5_ zaK%WXt2ebQyEJx^w4|^oxv(@pJ1;R;>gk;$#dEV`vkE6fXZ9bb9os)cI=XjSF_!9- zj_N(4cv#}l!GmK5EV~M$y~_XR2X8_sCh> zh$Us-FAdWp{+qQIn`XNESZC$?f8QnIdDuYG8xnII*udVW9e9G?FzGus_U)DTe7S3z zc!T*iKEo*cpJ$DF;72@fKfxBWxW00W(pgicfKPi`U<#B0~$9hps-Jnq|J8 zzRfh1f1eM|7vGkjz()f5ek$J7+Ud$5{q`Ny5_@y`H=RT0us_n<_{C^T^WO0(3=(#IH`lXE=G_dhuoRIsK8jp8hmZ{#0Nap3nY3 zeI7uIBIU1w9dxCaT67~?)LL#)bYv0x4YlY=v`BNcl&=oc5EmSeIg9#g?Qm5-%$PbC zGklk!lg2aaH&RgqGwV(1dRu_F^%qIiT-H-pCsvHh`7lVJ%`bw z%T&65dw==MmvjF<@mc0%WOy>BC1T|6C2@yJUDUK2l*(9jmo0rA6`^l3_w``;8l{0%=yLvM*6a@14W#PK!0 za(9h=zY#Z0(mxGV-_+XsdvVh%AH69&h(lbAU94}j)qfQl##eL3hCg~!Qxsb*W7k!l zhOuU}^fgI1(Dh7Z6B@h8v;S)GO4>k=tbK3gljGo0@k#9_Y%O#kt^8W@^RqnBDZn-pLHL2E#3$e%k8Qqw`XcZ*dYwk_cpgrVXNTBcqy4utJY^BQ`lh-kSN0xM z)WUy{V;gMU{~59IzNx@*~vjna95Jw+}!36JDou__n;km=F9)?5eNQ zW5p9weyF|C@3VL5Iap8IjG1n5nak~I-T8a5`MxvyH={R&2fr_#w@C@SI2;BWe~u#2{b%A1FI zWI6jXJ*FQ}Luj|StGvr@?!QwU>2=^$un%v4qIF)+M)6(tPCUnzqlkfl@3CLeU3?uc z<;o`Fjs9M|fBvZQl<=hKDvYdVneteN(((Z>0Vzjl(|^kMn+g`@)fx z%7HBNFm{uS?brKReN%9lQ_C59On-E$Z))icN%#o#y1rFb-xT(|Dvq)5r5@AEPJf@2 zJ5ObKdhOmwn}vBVh120?(O-A;baB+@TlyX0xD_4L7B@A~#(^UqYv^G%@53P~aW(I} zSUkHg(E~^Ch5F0dMhDmNyNBvc#c%H_zkpmjH;8BJO=^#I^6260Fk2}O!7jn`h4&5p z(R6lh6??=>^hfGZdc~W{brw7n|NZa3kHCK)f&V@N|37;KMzURlg@=<54ed@oP`bbC zzT7>@yNB*%ncf|PcNA_<-d4J`>z2aS_?E)v^o<7wqBj&ar8lbAWv>~zO1mm|Mf~#A zW!VjCs_#^Z)<;BhTdk=DUoWl7UlOAC2EEPmZ|s4gJra828s2Gt)H^ zyTyko8ITKo!m7y;)qgiIHo0wiZ)N^a=P~$|a$LVb+^rO}gh4L!3G2n_liSL1HPaGP z23gxEWhsMP=oe0uH8#0TWL4%3)y(7GV32qlWu3$z7y5k+ET7C2-{9EOBv)szp!3d zRrf0MglbL_aiu}x4$(cx8T1S5C02EB{3+$HG6=hi0v0mJg+Ad#VPmhmRUbd8^lF2+ zyD4Z9gIwqn){E0$cjdU6S(n!sWZgq4OBm!rzi^_gvDcl*s=V%MCY4@mka#a;EoP7l z{la>Q`ZHHatm)o$24VM!?m^C=Usx|p-!Mg3<#ksxsdS@3;{BAem_aV|3+p9Tbq}w* z>OJ%(gRloEW)*{6=oi)t(`R_jT`{_4*32lq-XL!`C7sG37y5Wk6HnhvH7(jFEagq*>E zuwI&eZVx@JvUS$XBE8Wdau3D)AMV~ezK!F||DW9@0S-GzbOI!oR4+CmOQsraffOZ5 zq6*Y3$&M}9j^l2@y~vIb+i~J5xZ80NT;dknf=ldlBju7@oW!_XlDkwPJlL;` z&h4KlKZ4{tn2ANLE@+ptm#}i6h&*dhC?@2Ok7NBH?n6-TNN!{$LoQSs0 z*@qO?kCJbb03|cTbh1u$tt(brm>*UMpW-kAF0t_*otW{xFci3)I z2wx=08UadXgn6mBLQJrw)@|B8zO%ecjV%?&?F#K-60Q}X zWJZ`yTA!FkYwO|Mp>XENwoZVO8D-XT`h@R5*U`?(Icn?39aNZKBIlR@B{Rx&GW(}B zm&3(n<$wCW*G_foLoc}XuhP2zTd#HNMOyd&JX!6&=ueft__=#m=_$NJyrlGwU=j>ihW0yl1a*Bt_G%%N*X?JvV==6uE;}t(v zt@?pjj+w2?yY{{-mPgxN+VYkyUTwLgY6HDBinTi!A6wk zU7A*2E{&A}1~I>OFoe=wDBXn84OH4s5$&Tvcr=j!`%8a#f3eQM0?f``5TG&(LR4mf zq%sS%fp3cdJt((tj!ENlFtKrt9QeDK)3~Zdo74VISeyO>qYtU7yiT=-=*J-IE?^G& z9L$rP(}+5oP^ZVK&Z_b)_-yF8y|qrPl0eI1zb$4(D6CoC6xOU(3Tu`@JK)7HZuCu5 z?Hi`S&%;#Bc}=t*^O|Wt=5^HAkLhcuqsqIg_73yv=V9*Wyk^wef?7MBYptrGo@({s zSL&no7}NFV^`h<;)ZL1@y|wC|wg%TUdyM)2^DswsUMp&CL#;mNTC4Wh`^MKq6HXiq z#iyU?TA!ekCsO0s$H`MZ7O|wp5T>OM)zOzWjH>Dz(VnPT!{e2<8G<#Nil0pU*LE zy?+VH6xq6hm#ae?uPHzafp<_95*E)nGfJ$cMFd z=3>2yx$U&|+z#4$u1;Ie_0it>r#qjh5LQ@Oh*ba%cT;6P3ZrEeo-_z``Ds=|!13lnG8}z!EPDu?)e&UTke* z>v}dE;FcC=(W5w<_)MYdo8S39O`)J6O5N^(cSW~6Qm=If-|5u4n-5We$<0jK%xj3Z zg*QT*dAn&dZ?m9O%(DGW(S#|9VLGCpqSo7>+Ih}c)d5;*yRj6|AePJ+4DLhEr58Py z1L(O>O@WZ2G}aIr#9AAJA(ZYy=_ZtJLTPlsoZMJ^Xb_8Z42DrUg3`?>-Hg&*iqcrM zXb`J=40fS(6s22Gx`9g9>NSyZ0agiF5TG&(LR4mfq%sSl1Jm`Iu%OKxEV?j9Uquaw zv4t8CNh60Wy(Y_NeRQv>n`*6Yl(0U|9IW9m$3UHRsI$?j&ZygJ&CdG)j(^O|bx$24afS$nB+TQh;< z7qtdaYdvapq1I;STC3tSsn+RxO;}23UI=x&P`4X(x74cp=(Cshu5X$>#@a;l!l>1a zS{qPnt8=YYdu&^VqkIjlti)0NTV*kh^4}`!ag_g7S(2mtx5}y<<-b)H<|zNIvNlKg zZ&S;2aNAm0po9OyV_D0a{eLPu^j6`U#cyceFuxvuGx@djKW4w0|4Qb|hrgKoqUVeG zFQmQ@`}~&AX`jn|Hu+i4XH%a(_=)%@O0Q>MPrUAVZD2AJL_AkIoIRX4tR2q1n0n#x zbIIpC&*h&@JsW#wALVu^Jehtn_GE$bI>a6?K9+eb{+MlzhKG_5c^=AhCWpfP>HA~% z7b$;3{JzrN*}D^*wIO*|;-GdgcSrIL&mDQ&x(tPz(>KR%E|ynixG8&6;wJ5;+y|2% z%-xW@!E;0Y`qcI2^@Vgg9ZMGvWDdj+q_2xzSG+cJZT#BO{_Hi0YqV=}S0}IbTy0xt z;nKvV+NHTml9zZc$)*x1EtR7T3!Z(+3q2R+FGyWrUQjr{cy8w0__?KXvXoUJ@jmT+ zxwDdIdCtneH)mNj0qZ5iPb;08JvDJ^=9Ks;xjo4}g$2U8giv=d`P#g&CkCf6(|9P`fn?EJ)hZGLW^XYRnP;>^s< z_{`FbT>o3W>E2jxu_x10jAo+oXepA7BqE+J8fzBJ1(E>|{l?$kneRw-m>mU=HETeu zrP!QljyIQ@vQ4(t0qV{ALS4EpR#&8-<$b^W?u{qV{r^eZEcgEheH!zv1{wefGy+XPGtdIG0&PG$-~l>-PQVNJ06!1_ zf1x%n1Ku6j@N7X?8)2IXL z0T^a3W(2Z(nF8h}iTh5^(8^?(a-0}TK&EgFqL6VME_0Ifh9&<=Qj z4xkh80zLxmp&#!9KoAH4VW10$08yYD=mB~G6VSxZXg2}mSTvAh(Ljzx134BA~J_K#oNNITj7%STvAhk@gT-77b)sG>~P{ zK$b-VSr!dsSu~Jk(Lk0(16dXgWLY$jWzj&EMZ*M;UC}^xMFZIt4P;j|kX_M0c0~i( z6{)!;AiE+pw*+KYq~?}@?26Rf5|CYynp*<0D^hbyKz2piL*!Sa2A6>Riqzl|kYAA+ zTmtedQiDrCeno0<3COQV4K4wB6{*1`Ag`h!dI`v@XdthmfxL268GI$f;-`r=o$J ziUx8j8px?=Ag7{%oQei=DjLY8XdsuOfn16Paw!_frD!0RqJdnB268DH$fal?m!e?+ z$fal?m!g4OiUx8i8px$+AeW+nT#5#ADH_P7NPCEEiUzVN8px(-Ae*9rY>Ec5DH_P8 zXds)SfozHfvMCw?AP9tjFwg}=fGE%n^Z>np3G@N|fY?XS039%ZI-nkK0dAmyKzk_h zz7c2wnt>Le6=(z60T0jtbOK($2l#;i5ClR%80Z2bKosZ(dVpTQ1p0t}Ks!Lt0RyN5 z>It-mF1&XG4S)n1fhM3CXaQP*HlQ8w03ARl;01hu9|!Z+5v(aXaPEb z5YPjN!vq)540HfNpc|M0)W1b&0z5zfhywjU-8+OvpdIi75ugtc2I26l$yYtE=3hy@ zV!l#%IsJ0%<>E`3m*Ov#a@kxWr{!{olZQQr^Dm}eG+!*dkbWWdLh<>`^YQ0PAIp9$ z@iFaVxygGwlQQ|GpNTzFd^+=V{OQtD*{2duX;0-on*6ATviYT+G@mRyk$xgZ`TR1E z#~&{}mVGSom_`}>l37nSe<*dxq?~@~M`Mo`AIUrtf28zq_Tj|C+QT{P-Qa`i2V=Ba zU*>^0W%kS7pSWMUKX+g9KF@vmdsFwC_ZIHidyj{5`=#zS?=IYxzAHwn_+{>l-&x9J zGl`6r$sJ4{^c>9Jk-DR@rr#U4rEW86G-rVn zpLu`${iW-&*CnpguFGAUyw-DVet&Aexxa8t`kL4^#j7({$FDA3b>OPlRmCeaSH`a_ zU6H*aafNn8?(*d2p3C!>r7klsD_oksGh+R-TKXZQk{L*>Z^AhK2=jF~#Ql`KBIjM8Za|&mtr^)rV>b<2i zvu7sG)XvPEkvzk5M*j5F>E`K$WI7p37WZcM#`l&^%bu1vO*<`jYVxSH{xT=`p8VFH z^q$zB;_l4u`0moK?5@NvZCCE3n!+P2)* zvUtE$|5?@kUoL!t)tWD(oJG3aVNL!SPC1ajgejqhq4it_}9~(Qi zcueM)_%Wr0*@cOP+QQs|Y zf0{4nUG;xl`>(gLAk#7?iw&8EctgpZbtl}KJLgKeJg$6w%5tZlG2%u^&*}+XqjCR9 z&713W}2nWU>SqH7&rI3D{rJxjGm|08OAvzA&q+8dGZsO!v ziv}#8@!bmPYb07HK*SGWqA9DLiz>LZ5E(pb~9^9{lb4BGEK0Rfn~Pgf)6RwUnJ=!0ZL{! z(@7neUTq8bVTJWe955&a*v)jZP8V>c8MX~Oe?+1F2hwd4pk#J4oz&9>jCRYl5SLhk{MEsg%ZGnVi0+h@M(@AS7=zCxD+R8ZGk?cFn*T<1*HJPOebS?pp`b)HuU~kh4x=aH6%dE z3^Sdy)q$eDwYCY*DU3fL*Qfv`GsLWAJnFFBx^4}ho=dI$!H+4NKP1~40ZL|w>EyH> zw(PWZ?w?l(f6PKq3NXZU657tqlO}>(Yz^`Sh4Tn`)(TKELrf>9El76S#@xTC5dMTz zs{|;SQD!aSQ60gN@eN}%XXNOc7#e@*c=7xx8RG(!%qY{zYrB+9dTsYHIfeA+q#F~U zWOgxYNjpX70bA!}>n>{JIaJ)p{H$_M{F1`@3-YZKpk#J2Emkk(0epn=0M4bk0J+=T z`YOr;_~y7DIqRIRH;R z$*up}EVq8ePPeX|<<>v=DvkYruUo(86}R5I-K{@;y<1;A;?_TNv0L9j^8mh+aO-E% z`2XK+aqCypA92X7e=o8BkE`hZf97_}{eSx(%3q{~lqI!7}> zkp6~rCkRk7Bg|UTqq;Q1JGPB(-FkGF=Hm+Ozmf1n0ZL|s>7=zaVHK^dOY@q-`CGCL z3s5q|xfj21MXMbh>b-?csb<;VzMNwE!ivhw0?D^*1UJS9fzhrO^HdhYU&q_As5a(}p~4 zU+2>b_wUKKT7Z(-!*p^_8*+7r=Q9fJpGY_=K*{W4*3wR0Ikt_*caGMag!fs6^S#Jn|8>kj_EI9N~$Fv4_l9vy7uD7HPU{=6dC|0WqNhsR`Tol$we_98tT5J*YqbC+ zvx`~FSlt{|o)}*+aOHrt=kyhYwVr&V0+h@yrjym$9968ge$!VKN;k>Y3Q#gb%v#Fo zgLd-k99WFb_kZnwWv_2Lw#B_3658ATR)?@mbLfA->bpn*k5YtI$Z4I_e zKGm~6ynIvPY$Drw0ZL|w>EyHp$xhoNgRd)uEuM|zFg*i! zhUWh-p=SVJ47>F$>)rYfX$^q)o#WR3ILECY*yYySf^PjIYu);6`t!oQZhiS0x1PVp zt#4Z5*8k;9x1PMzt^fQBZvDbb-1>if-mULH-K`sUy7fEaZatWC>yOjD|NH}V|9@B) zr60b(IZpTgdv{pw{}2D3_jaP~{Ab077Nn1Br2r)}#B}=5tY_Rbk6gd45Qg|$0;K>$ zOebO0w^ZrB*`Bz5M_~<Ah&_ttB>uKu`6xx|2r00691ta|4No&3M zPXDm=hYIIx@~jo0WQLiwoYh@%`?J=`zT1x!(mA9XqZy@;f?=kU)Y=uF?lI<%6~=jF zSs_5l3^8jNs}EaR$7;O%SkKxKKcaBXC)-K^N@j@Z=Q+WIv=RVW8YHcCq}KnVt!wUkGnNtf3Vfpag?VC#AieC8ez+{&R)zIC6{%P%;C|TD~?~J<=zex{SKtsGxPX#4(tt+1^i!$tv0rk7dER$jpsUGLG!M>qr4FYj%IZY7B} z2~aYo2bVrf?3EZG!+MGsJXqb{yrjJ-hjLg>Zya8wDttVP-91c{GGQ$jXg{ zZMn?fDzvLfI4(fR3^SdyomFv?))wgR6vj~w6qEuCGo6gVDr2Q@Zd*3<9ffucsm28; znPH}rwmMLB&X?eDo4DyIDU55$wNZeQ8D=^es{^G)0WX*nTe;Hq#QZ-L+A$K23s5q{ zOebx1prp0+UVpDJuH!&KDZnt($ygoeaT9^so|gYXp4viow})WbfD4@4Xmkdw5I+0mp9S6e8;%;A6@I#&tFLQ_WRxX^$Xm3 zGrc}Yzy0@LeA2nvrGRYt^aoe-TV9Ab?J}O@BhcS-TE8HyY-Fq z=ezW~|5-k|-(OA72xtw!Ci?yVKKkvym!1K<*x}Y!47>HOX>NU2jK&wVyYgzm%_M}TpI-_nPH}ru{zL7Yib**{oe}hHVzb&0t_>q zwAF#4HMMpd|Ee%OiZzb@dA4Y2?}{K*vVWyL|I?(EFom3dl zB-eTYN@j>z%UInIEvhs`LsWL!Iton+;aQ~GC_u>! zGiwQ}8zKlR4Uw%!)U43HkA&j_l*};GNo)N!C$zReTNK8#IZ#jvFwAr^S`S+oD-DsY zN7Sm&o7=a=w7N&srZApMu8jhe%rMi*SRH7kA+q&|CXyi6936EY2MS67 zhM7*<>OiY|L>@(;=aXfl03|cbbTU>4T4{)EJ)#bU_5u=)3s5q{Oebx1pw&I1PK7Z= zu2BI>W{6qKXm5z<*OqK=d>#FkPhHhx&y8nNZ?*Dht{r^vC?Em>R_Wv()>Djm&3G;LXe3`W~7C@YBoao}O|5{Dpq||FD;y5zuph$NOnpy8r(qjr|{? zIRFJ3`@e^N|Nm7lZM(00|Nq?2ZuF1P{eR)4sr&yK2mZ(%?H${vZ7hR|kLGgvIMxbK zGQ&)#kEZ&|sBSDn3geaJS}j1y3^HpO%fH}M9^H)YtejcL4It`?OMFe9$?ewDrKd6uzs;v{rzU8DiG*q4fyZeUr?g;_abZTA`73hT9GS|dQo3^ARoRbk?QU1B+UdKAJmsYV4T znE~eI6AuFT`oYDmMsnL%bPo&8XSu5zf_?tK?1q<4{Sy#OhxDly1( zl1_b#6H;4{3l+Y*$+1CzlvR~|pp$RvP=&8@sM_v(k5NePA;o$DQhHUEf=*Iy`*s#dNV)&^ieA$*WjqXMK1q(nc{N!T{k%0XxgFQ%|P zM26J@q?Dj+1D$N;eg>MiX)lV46vBt8`cVN=LQochPQt11j=m-yr?6$I?h^z^$t#II zW-VKbXrbX8{OxVqIzF*ViEVX&#R}hJoL0j|H8k!^qoI+>Az@p z>sS52rAvDK$ZuTwJR1N1>9<|_2KxQ~`;vaw-|g1_v%#&WY3zRo{q}!|?)wMmxBpM= zqv{vZ5;gOaeJz)zZCJOh z+%^mhT5PKnwj3G81W5Tn*#x@*2+R#a3c!WD^&A(0n*Z#>;j!!6Ne;s*Atu~+Suw18*T}o9C3y>bv6aCCuGIa21c>iQ@)1Gzf70Sy<6Bi&osb?kV zq@ESoqKqs3uz-iCCafR{<62t{4nSQ2|(i&j(xwlbayOKP^ z0;Ff{L_gEXW({!Kvu~3^c@=5m0;Ff{tOT8u)&Q%|zs(BU)l~Pe0O?6P+dwCqHNa_q zjNGD7UPFSo0O>J1D?ulvHNfg0A`=SR`>F0R0ZOKqS<5ytnE)rm$m;3t(zYse^jwhI zPEazvOeY;pCYaLMZql|XTp!@jKzhne^fH}XH0y+2mDNCP_h{P{y6Z`?PJoi>Wjg69 zp|Q?(i?&1Ix{)kn0;K2LL@(3HRS9i);#;$=;;~bq`yeUS2~aYG}i4~V(Igp zq;P$REMo$cOfS>PRS7LV5t?o3j$I1fhdDHm9^DhYOeb9>G}hVf40bDAw^03K0;H$t zL?5%3YwBWt(%OxiS5K^mW$ixiQTT2p$2tMh19bL*PQLQRyyCN6>rPh4ZlkK{={d_l zKfkXfo4S~nWz$~FPf;juCk;J2XC>(8_fE=kOF5~u1^6C??G7?*5TIoGnNGIyrJ!uH zU(6>uZQnbAe$)T0OaC*?`M;I!{Ua@I{qUPEJ^tS={o7x2>1X|yOaIG1y7XKA;?jHQ z^)QY5AO5vV|K?Jf*H7dBe>+Iy`+w=uTj=%CU%2!IH1_{<-*)Mn>uC(Y7hU?r^xMCS zUhnCowFST6(qE_h|BWxX^dA>p`XzanuG4dXd*5*BGimI<*rJQ!O}lOwrTl-~oV z@@`%#mX_Y+xAMrh1tn&^jxrJ7-1-3JAznmz!yjk~(Q7~bO}3WPc5+H*N?cCqK#>RO z7=7=5h+{h5q72`iM<~O0=s=ftOysRMMQ4a|*FM%dMn$dZmMg_kzC-*_Eb+eewph~K z{%5hI^@vMb5^eWsOS<2nY{Qj=%hnP|-V_UN`417RCu7V-##l2MV?9)2BHg!jd*peF zg|NK~+qJvdnOcj#d8;7|)v+&z8Z0o|d9oRp#EZ0%u zZnQFC+RF^>ucYPzspOA3usbHcC;sf+w8xtpX^%JSy?+*)>u8TRchVkj_Ml#>ftnnX z8=YzD!G2NsK}qEYH7Y-7Q2D_QDnHnU@;CFoVDD;uYE(rXRk7SnRV?qO4{f zAa0qic=YIfK%%uuRj$8Guiew2>d0iv&o2Nf=C(iFM zHL@cSYGg;eIKTZkzg=_~j2PBBr#sJsRB~>ZO3v-TdG5t|UPmSAJfG$aMb^QYk|LZL z!dVx_S=UP~(@YO-U3G>cIpNGkY#YY5UD(#dwk{mTI6KGa|6%G4Ji)EzH0M*f@#>;o zTot8VT;-!(Tos^QT;--+T;-;UqK~#-SL36h?>It5>3T{RN^M4yRHVZQCEEZTnkj+x|M)TR&=_u01eN zq75Z_P@)$l43r2QT{|*!&ThxHz1Y^owsqLHnYL}o(1C&r&GcOfBm^bnZ zFaw9*6=rCkOEcwRuV$JkF}0odjUR|W@Zj4b(Duf=BH%gT(gJ<7U4V|O>ZZ2lXJfq^ z;Fhmtx{vmM^9k0f(caYl|KW31d@K7tYks!yne=C3pDBL2^r`Hp5}(pOmHTA!lZDsQ zug6|5zLt3{{#xnP?5l}awO4bmBwvZWRLo^^@m%R}_OLZWq%|{S=9&02rKht`C!W@x zPJPt;XyM89ld&g@Pvjm?KJIxu|5)lV^Re`y*rDR1nMdP~mL7>cRQyQhBk_-v9?U+N zy5GFNa9{eq*nP!&J$L8tO5J7NRk$;KXZnuV9mU%-x5sZU-Il&3c1!W*%+2weOCQdE zDD@%pLxr2tH^px9+?c;1b%S|B;rjIT=>xF?m7I+EYg5;n*B17t_s8~E@-SwvN?aAc zqI7xo^2FuZ<+;nWi?>{)U6i{pd7Wuj5 z2TzNiRys9%YU0%VDXCM;Qwk@iPmZ0e?aA#`d>B?JVxd?1=C1Y|n2? zZ8NtOwx+ihH)l4-HO zp5gqe)GBjT;l%Wbu@jRkJuCAoQY*|Ah2`;OrKQ=WiKW`o+@QI*a9sMh*m1>0nMLtf zX&^h07|;fC$L1HN7McqS3(^Z>3-a?)^UQgLx#_vFxyjj{+4)(iS>~+5%;XHujC_Bp z-|R2+m3p(iiC(QY*OTliMYGXFREy>!$%rSM52Zq8s1QsCWB#Hq5$h;= zGM>1n)Lv*!x5iqFEt!^hOQ9*<6l*FrW*Xy-xrStery=i7xlMPjE?MWP%Nr@fG=zBI zth4La(Eb14toQ!|KNrE&Px<~IIgdvV@LPIPMt_mWeJqjtSR(haMDAmWdwz-B#}c`Z zC7L^lR!rg^O5)Z?q8B33y^y$INL&dd8h43STcWX%XkjJpCnRnZB>KD(omq+gsYI7j zqW>q+Ws}H!ERp$GBJ;6C=3|M>#}b*3B{CmNWImS2d@PaqSR(VWMCN0O%*PU$k0ml6 zOJqKl$b2l3`B)lNi{Kpdck0tUS%Q~PQK=xya?8g$>k0r7n zPwpqOAWLLHmdJuEkp)>I3$jEOWQi=u5?PQXvLH)jL6*pZERh9SA`7xa7G#Mm$P!tQ zC9)t(WI>k5f-IvzH_!w00w&N0XomUY|gvtGEz`sbK5oiLMffk?@Xam{- z56}U00$#ue_<;Zr1VTU<=mH`@6zB$efL_1^`hb352A~}#=zu|(+|N4vOFiHM+&}{$ zfkvPSXa-tLe6=(z60T0jtbOK(W?#ODBB|-^TnWx^ z0vEP`#|FS>;dB@I3fm!qdK@&-%Gry8O*eTceR7}1i^>H;G;d@6TL)f z0{!^=)7o3~RtM?;7a)N~pb2OOT7Xud4e$URKque>{6GK*0wJIahyYQb8|VRg0Tbv0 z#1Vo9=zsy#0rh|ja03m11R8-Rpc!ZZT7fpeph_E_s|TNVgD*Bf(~h^Vd%;hK!OyqT z)(zkHpiBU7e-gyo5YPogfnLA_`T*@6f&tV4^?)0YKqJruGy^R_D-fo#4L^^7zw8Eo z-Gkb6`fm-tbAi8a0RPxWbZc$>^g?Ic8rlRffI6TaZ~<s2@2mswc7yjx@PQ`qBQ4;=ZQ!HrMA?D2k9ol-Lf|tVTBWez3mrt+ z33!1n{NvZ7;5TJ2@dwS|k6XcF8al{6GK*15uzC=m+#wgnFO>Xat&pR=@*z zfdCK&qChXu59s>{?Y(6GX(#v#ANZ>v_?r+>cH!-BBY4}5x1}DuHSzWjl~?*(`|G*a zlCNp6KV^7xu=tKf0%tL{#5a! zX}U|yKbd?|doue({E6b@>Br5-3w)oL%OxT zA2J^*d?fV|^CS5OQxAF`%sr5Jpmcxc{`mc+`!ak7nYlN1Z}Fb=J?1_6yOVcocjxX( z+@;->y)$vAc4sb=%y=^SgQK;ixA z_s8B}ye@NH{JPS$*=rNmYS-rWC--~y=dVd!V_s9ZI(>EQ>f%+ItKwIcuFPJUxKg_^ zcSZ6F&lUO0Q|iAdN*9!p530w2G554 z`qX-JePNwgmm5otdB*Z(Go68H!(#vAY zic2#~<4a3}*}=r1Hkdm;dA#TN{F2lXb4g*bSe!d9d7S6C{G!w%b5S9dj>Tfdfy_XB zpmc2Z*u=5gvAJWC$9Rsh-h&tCXXeM}m*!>XCFUKV`|#qN%$)d~((LT)#B6PLZdP)Z zXI6e@YNk1}Fe5!9Hlx^|>5uo9`m%kAKCLfjCQXl-?@jfZy@ejplj}})d%E+{RMdr40!cw^pTXQngW zS?b7kBs#Q?oG0n=c=GM3cC)?EmTrr+73n91cx$O8+mdL}T5`?FW>0gzDb-{)6&llx zvBsjz$ha&uWE&CK;9>r8HA3 z&~5#fZohW%S{na<*~I;SPn{5z`Tr9G#7|X>k~m1?Bi0L0GW|@aQ4-cM8P($tPgB@3 zJSGFAxrIbO)5&HXlQHf1!@UaSoupYWK$>63O3+DZ4X}FrVNzkcm+BrCpk#J3YuU=< z?RgB_#x3QXoVNTvrz>ptk!M7JlG(|0vNe}S%(2Zj1>_8c>H!W6q{)56PNtJ;VwB@X znq+i(^+MujDr^suVMKs5vyW|{lWj6Eve{-4zgMAph$(%>e5?bVbmb9;6FS>q%JUSik5bJi2v9P8%vvstIHaZCX$UO4Dr53&labC>7@s27 zkN|1&AkoKkGM2|2R*bgrE>OsxCcy~;q`8AE1D#}+@G2wnY-{sfs4zZ5^$!V%ot2~H#bmz3Qb}m)uawHlNAkC8_dYMkTN@%RJwU(DDTrW}m zqXMLfazr1qmdo0tkgL+9*k;OIt}wn#mem5JnR09dos5-(vTU@4cZEXs3ROKSK$hAJ23fb$V85N*p`j}2KOL)`H*4eKxeuBdTr2u_Q zC!;02>d89SDrBD_!HEKt%uZ%4+0@;@>g{72kM3Jur?7pNJgWpKnVn20Te%BXw%PiY z?^meaAj$CpluR$PmTKx!FuZ&F=tN}J&gB7xE>EIC0ZOKq>7*;SmlHZ_P!3G40gzU> zzC@NW0ZL|&S$28eU#CC$4VQlW-(33FKI78gLu&xMLv#PHqqYA$^!g~R{kQ1*F8vK! z`)}L#TzZk#{=1CU|98i># zd4lWcl+t#4cD=&)Wio9Lpk#)awS48J^K2njE@8Gt@CJqTE96@*K*tL% zlw`Gqd80!3RSpxB0t_*ogp?K0Dy&?}Y>QcaP+|Q?GOZV&WQLed)~YaZIkPS#ag##$ zCaE?EP%?weTEeLVcJt0P)&th6{E$NVb&`z>P%?u|CuRA7wJ2>Jk`F6<-yqW_0ZL|w zS<5$dz)t!q2du5nb+f|yP4aCNpk#)aPS)}_X|>wIyhR~=i^Bw^07FbCVflca6jlyc zTi@$eg|$GYjRKU+5Yx$86=rq+>o$e(+oU>4fRY(x))Gz~ur%G)a=?xZSX$WI70U0B zY?lBfGstvOPAnlXrQCPC#dn9o_gymW5ujv-n6-RU2kc~sl>^pxV}4L!{TK4>7NBH? zm`>L6H)*xn!ptay|H@&4Qh*_*ldyciP6{grtnCKTaxHrh4she+buxJ3^ARom2Yy&Y76r|h42W63DPhSVu!jGsvtZv>vd-mIKzd z80&)y<L z9I)07<)aGW+oU>4fRY(x))HC|*tqq8wJHxOl)oX_E&)nrkm;nX9I%s0TjwsT@ckQ^ z_6SfiL(Ez}>j69As~oVlKI~%(>%Wt4w*VzG#B{P&zR4*og?VW5R{wE@@V6W$Czy?Jzh{YCe}U%zFFn((f0^e0 zC(dx|Mcu7mxX7*lmFE55MCGjZFT0fB10TjXzM`rx#vUN26{~PZq-~Xf6C-(hZ z^cKtG|2^#($7*)ai_r;q0UzK80zeQ50b!sEhyYQb8|VRg0TU3t1P#yu1E>S)0TS) z0TA0e!wq0cg@Gv*2BuUPm{MV2N`--`6b7bJ z7??_7v;!WX1He=Y!wdKTKM(+dKnMr}T|fkg0^L9l& zf%kPlJ>UY|Km#CwMxY6323mktpbcmTJU|D~33ve?;0FRg5C{QbpbLlqQJ@>>0eS%w z=p)b`_T&8wKs!v(0RyN5>H!zv1~6^Hz_bYi(>a-2~dh9=ylI3Bv^XfPO%{MbH2pz=R2-4yXrQfE&Ps z2?G-*3{03XFk!;Lgb4!^CJaoNFfd`lXa_t%2ha(40Uv+~6Gi|C0wEwwpgruu`v?#P zx`7^`7chZ7Ks!Rv0RyN5>H!zv1{wefGy+XPGtdIG0&PG$-~l>-PQVNJ06!1_f&|*b z5Z;G@E+7I#fo`A&=mkum59kLlNy5M+2?LWP3`~+RFiFC|BnbnPBn(WFFfd8Nz$6I+ zlOzmGk}xny!oVa61Ct~SOp-7#Ny5M+2?LWP3`~+RFiC>;5Yr?KOp`D$O~Sx52?Nt4 z=;B7e^aumfBk1Br!1M?M(ptqy$9$3Isq@> z1N=Y$2m&D>40HhzAPRH?JwPvD0)2qCg`filPzTflF2D^m01{{fnt*1Yg+P1QiuY|m zJKzC2fKI>*_y9i;0D?dW2m@U}1c(CNKo8Ihm_Q%U4`_P{I^a9FhV*@YdNBe(5C{Qb zpbLlq^3Yn^L%;`g0VbdyCNu!8fENe@y@2)x!40$koj?fa0cHZOBZOw40|)}$zzo2B zc#O&doj?fa0cHZOHweu@2M`3hff+#kTZAUS0|bC5&=1tTLudrr0Y4A{`T)Im9Zm;A zE8qpfKrf(eA-I9ami72(3C3Q61lj-}&;^))zK_rVv;tlr4D&))V^YQ0PAIpBsI>S5ltVyHz)6c}7DL$Qf zI{tL&sq9mUr?jVXA5DJLLnHZ9Pnu5_o=86tqp|#%$K#Ke9?L$KcuadNmrZ6p+5Dl@ zA(O`Qryq?yT6`q)Nc@q~!`X)u4{HzS9!fssc_`0g`U?-HAB;U%d?52coJRF$?@!#X z-JiQJd7tOL{Jp7r&3g+puD_ke^{4JO?=IYxzAJWD@y^Vh@jFYIY$lP>GP#4vgPw!= zJ5qO;cNA_<-yXZYcw6SS-rEW^vOjif@s`Xj@moqaXa9#|`;#|#ZpdGsx?WtL`#|yo zo)6?{bibJ{9I(za&t8|fPP;C5ZSq>rwfX(2{pS9{HR)?&*I4JAAGtDfW&Fz071=8i zS7=w{E>B+WxjcVa>N4}P!lmg;W0w{$$xMvyPh6~BoJ%EB9va`D+Gp-7T$H{jcF`Lb zrf7tJ;ezx9u?vdlXK0Ln>AdWDiSxAca_1&#lz;x5)H&ukg|pK&#`zyQGjXPNX6}sS z8J;upr>9OgPcJ0X$yl&X1%<%#p%ydN?**jA!EUcxhF3RbrL4DtBV?M9+!&6H+IbClrR#L$RUa%FN2% zm4y}Q6|oh?<(cL2<)vlWWr=0lvfR?-QqR)-U~14DEF7OcK6ZR@NoGlWNojF*abmId ze;o6#&CAVA&h^aA&q>WO=M-kAXUAq2XJux^XO(7VXC`K9GjlVn^YPPtvA&|2G2^Cn zX1=E<-<|3QmUGux~)`b*8(=0vmBoNG!pd7AQ# zsYbK0Ak#7?iw&8EctgpZbtl}KJLgKeJg$6ws@|+G)TQfUbwwj%#Ep`k)f2j==d`5e z(effixB74V^>h2y)9?R(Ic4hi|Cy`GzyI^Xs1pxHDi79dzqLJ~cslYsdLpu0fRY(v zIz1h!dK`lXYt~U7Pb!4JC)HvBN@fSMmatJY9w-mZ8QHj+NA=pC0e@5>`vYl~2v9OR zm`<{$iJ|i(vpp7lN@4mVIR*tNnVrm9CJX|aczCyQb>%Ud?YZyM3g3T{>39K3W+&6h zR~d;7pDna!6skXQXrL5eC(}ta8CvC#v_0#6R^fY>9LEb#GCP@0zRA$4pYlGZQ2m7@ zg94PyPNtKpJbHe7M`a?1by~p36t@2&&r$(OW+&6hRt~Ievz=wnD^!0a$zlOYW(TvD zYU(Uoy>9E#vjSdF$o@u}B?6Sp4yKc=e3r4y_Q?80g~>ys`8NqrGQG@Nrl}EW^z-iU z&Z7q>A6Do(NVHjilIdkS>B=M0CUmwR0&@zNmqP=k0KH5nS7n9ek%`c3lZswa=zOHu zEI`ThGM#jl&{${tE#+l}D?pY_0+dWI)5%o{ZMYJeHPy>23SE#x1Em1HOeb9>G}hVL z##a@tFx9_FfRgEDI=L#L#Ves%Tab?{bX_FcEI`ThGM#jl&{$_{LS9q2qGVYmK*{tn zom}P6wv2AAgl6p*yspr7lPE4g$@DUvbmh<{bhc*X6AIUHWZ5D>$@DUvT$OKa^+X1{ zr33g8hAI%^z+XS9&@HCz5(1P=FVjg^`PNux8yWH`h3j~-Y!RSjdYMkHN@yb!q1l$# z|Fl9k$f1E!fL^APt`ZvSY-4*qqi`*w`nL#BGQCVES0%LJiO?1eSiZH-Ds;<9ln|g~ zdYMkTN@%RJ4UhPo!nKk^1Em1HOea?*wD?45wn;Z{D0D-lNYEmb(1Bj2ldcjP>ulGx zyux)N)gKq2WO|uSu5xG?WJ}2#F{jkpLVjMMTScN_TFewW(93kvl|!4**;>diC|tu- z|7rnBrkCmDDu;&AkrSa=TgWdebR#4h6`*8#nNGTLXcIbH3;895Yb{w$6rg1Km~h3W z8FOAqiV&-r;piU}zA-Yb5};)Im`*<26;AmmxWkhp0=}$}ts~8_043AUWLfJ)b$a$k zEzJOU3v$-K2Ev+25Id7S7_}2sZY4{(zjgt2WjkokjDN$ zPh*>RZ3s5rs%v#?El(;dnC~ZgER~5Dm{Dpv0fPSWv4GRWTY?Yf# z+jEb9R4B(u6BnRl`k78jYk<`cJ-()}Z6wdI043AUbh23koOXuSn+oM74iJ14A8IPDy-Zzz;oNER2MWcry-N^5}Clf1sEux%&Lm;fb{ zcAwtYvQ_Rp=@1>6Hn-1P3f&H>e4PL#)5~jWs7KBkked>O0wY^~1WoGO?XvJ4h4MWlTQ5M# z^fR55<#TRQX$$bX3frk1ASeasXFA!+jY`=z?PcL#6w1>`vtEFb>1R4AtpQeF7XDRX z+e@Ae0+dWY)5&HHaN5hl_Y}$`2M9_5`k78jYk<|4h3_kD?q041}NS<6%1l_Lt>g(O-jK*{tnopj}k z!Gz9sohvF_7m?)z0ZOKiS<6*fBO&In?8;9R#(m@(5};)Im`=v>l(aWyEHB~+$ zKuQkFI?zd132kE8m4BnT|JTyoe-FJrM)&_qC2XtasYmt#{Hj7IRM|Sqnv`2 z`!7n*0dkc4Z}|5v{hw*xf0D-k|DNXkABeg24tjl*=KjZM?!Ra^MC`+h{vUJq9p_ec z=l}mmnvw3Ernxh!(>117%M{z#7|UZD8?ZgH4K~#ly<^ckBYMXILJ7^HgccG+3#6iy z&F-e5B%6fYO@fj@vZ*MfXE*tMUPq&ud&idUmOp-99?5fLVf5A+wR^74`F!>|Le~F( zY_o0s|Hyzx+6Z`fhQ+sihyH&L)>=P#&&=aFB(U9e!a)`a z2U#c_WT9}7g~CA=3I|yx9AuerkY&O_mI()0CLCm$aFAufL6!*zStdN=-m+*o$fDsO zi-vKSqTwKmhJ!2`4zg%C$fDsO zi-vivSc{OlHnjrhJ!2_o^fwkKpbQN zagYVXK^71PSwI|Q0dbH8#6cDi2U$QIWC3xI1;jxX5C>U69Ap7;kOjm+77zznKpbQN zagYVXK^71PSwI|Q0dbH8#6gx12irIQLUOkX?Qi{-Uxv^LT@ZwBVaC0+xV{H^Ap~KF zKonvShd$_s0T_fK7={r@z$mEq1rK<^2QAPFeh7d8CbU62bU>#t!cpcA?v z2;E?Tti_Q#48?eh7wP1QIX`v%oVhc)TY?vS&;qUChX5F0LL0P02XsOg z1fg4)ac?cI?}1(jL3nXk{;SQx=v)2rD}jmHpcaF=!1S3fI%37VHkk~jKVBX-2*ZL@PZFopcVWO00T^DgLdeE zPUwOlbb|#w&@0Tiw;`?%Lj2PM|TXcK2drt`�)@~gR5lhQLF|4QnW>dS?f(=U5o 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�RsOa}9R=tB8T;5pP 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�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

    SJDis6Kz1?Zp6Ad# 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 =^;=MV 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∨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

    d6ZgPBbX;NmAJ*m)~Y}T4{P4T8uBoncb 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

    )-=aah}~_I`iVc0^>mTC{0-{pp$iaipx3 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 z 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%0AYwgBQ!xXv_LDgK|6FnCv-tK^avBTGs-0~aG)3Z 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

    @$gH^k;HUC!dZyoqsCzRP?FnlM|1p9?v}1_2}rs zT@Q^8cRe_If7d7T_oeQO-dDIceQ)eu?cU5i@q7IDWbaPgt>2xyD|uJsuKb;;JEM2T z@0hrK;I@gOfm1AmE0BC6}xu)>i(<7 zujs#g9M3JrFnwX{LhZuL z=J;m+=IjND3-k+eo06L%oAMh|8>1Tw8`2wM8?+6X_3`!o_1Rb=rpI#qsdZiF=htS> z6X$fV8tNU3inFbrPxw#Go{~64KP9(3xjeEwzbv&ZxiormdU38RwWx4n_JqQ5*@e+# z`CK8_k?e@K59?#0$(C?)f8$X7Xl=aKUz@E-)aW(2U@{m9=BrcH(dt4V9f$?AK*k^U z`~6v8!WZ?9xP@z=(qEaC38~9mMY1ANk$0w?QD?!CcElW-BU2tP_m^kO5@mW>&YrYK z?0H+t7PS?$H16>K?c2?RKMr(@*4`QW|5^V3KCm!~;HO^!6~|91dK8bsD8l4m=+hP| z%asZVhgKjQT7gHQVsg9k84HzDlnMzSR!W6D3Kf%2>p!tjIaR5U@L{D?$fHm(#V-3( z3zgH93JD)pN`*WM6;lwlKeJFd19^r73GY%Myi0+MKXRl%M#d+Ky=!_+k>$HghOM8q zP&^a)2LuUMQ%aFEOfG3~WSWYfVZ->bt5>b8k2meh^Ge@$dmxfzY_GMWM zkrmi9AV{g`Ry0IZKFn)snh`mA|J}LBjnO=vFjDR6a%g-9WOc68Vya$VzM)5+rJ2^R<_T%d6dn6FB3 z64-$TG=Wz>(4afuEGl1~B1-cZk zK(pE@t~KS4e~M+bYD3?7rK5AsLSrL-8W1GBSb^|j1#ZKE?4I{9R;)R{bZq_`3yBMm zVOWrGF$KC5jZS$0|C=Ut80xc;&83lcx=f!n{H=xJg~&22NU2z*XefqFa`;Ep4bJEI zWMl)peXLohB1xD9|IR{i3-SpG5}u$ym!ctf-a9yM-1Px5WEaIh6D+RO`u275S-hm3}07jWG(fv+hzKW;2$g``2k8m zkZ|7wx)mwOP*Ag`>5;YHJhFb1Oy59O`u!RTEsN6e#b&2j*J7S9g2`{MQah$ z$ohXQM7Ajr5i=+-ZpS2Oofy`1=z4|3%>k;CuM? z{{ZFy=EKXKwo~c<4>17uV6Mdc1bqK5fe(Pc#<%}hVJ^db7~lV&hWYQ|`+pGg@A3Wr z6LE)aG3KuiIBb_=7MM3CTL0-^0s~@wpKEGYh3HxYLxvMICUj2VA@-22;cc(oM%alm zqMUFLPNIU4L?uy0xCl4lA-sf-@Dl-|ng|j#L@iNA)DsOvBhf@O6D>q55hB6>_K@$R z?QKLm(Lr<)3kXe|g#9P%L>W;|I0z?EK}e#Ks3Kg1oA3}`!bkXt08vc@i5jAos3Yo$ z2BHzb9yW2gnP?$ei4YMcbfS%DCj_1`+cm;Q*oiWtoNy3MqJoe_B~eAV2tK5?dk8P# zBm6{w;ENeMU!&P;h*|)9SjXjhqJiLx3VRdLOtcWKM2H9zI?+b76CFe+p@ji>yTq;& zWkfmQAe=-6A&E+&if|Eb!b5loAK?eEhXF2E6G5Ves3q!%dZK}7B$|k3qJ?NBXbEl) z6Ep|6w-K}nw|5Yt3!rtl-A336+KJoC2^x#rodj*f?UJBrxV?%{7U4s>o69r>w|fa% zfZP294ZrQx1ns@;H3ZGP?R7*wK@)F#BSFhq55hB8bPP7s2LWF%xfoLR}h-RXN zXeB~Kn9zwfqMhg74WkfmQAe=-6A&E+&if|Eb!b5loAK@ngL^Tm4 zYKU5*j;JRZh(@A`XeL^SRw6`%0qmj9ijj$7CL^F18i+=siD)KTh*ly* zgbAH!Bie}$qLUDlfJWE|J5ffI6Ar>jR1lJ=B&rA(;U+u)_Rz~^AHkQ8IHLm9M3AT< zYKc0co@gK%i6)|%XdzmO5D_MHqK#-LI*3j}_!eRR2^(Q2%7}8pK{$yD0DCC8TuD?B zF2YTC2ruCy{6v7LCW1r_QA^Yj^+W^FNHh`6L<`YMgorSq6KzC0(LsnXpb<904qy+< zxLi&+2q#fNNTQOcB3y)<@DN_YNBD^VQB4Gi8lsk{BkG9;qLHW>UMc#9+G_E~UPsgu z4MZc+L^Km}WRSpa2`^DYG!Z&s8w4r{4-q69i7=rJ0ZzhAR1*zEh!CTI zgK!Z6qMm3aI*9Udpo;Jlbwmr%PLxdom4uI|C7OvgLfC=P_v7#T-_O36cu#*X_ipmt z$h-M>Qtw3HDP+=_SVqfaM&qOY(d^raxAnJkZzbP~yp?}5^=97n3hWUd+Fc zdLjBk;raCQvFEktGwFERpU#dXM)Z-~;pE}S;rw%{=c3OQo=ra+dscfk^Gy61|1;UA z6Hn_;=blPF6?rQEWa`Q2lZ7YJPsEJR1~NInpGVC??H{rdg6PbNPZIm-9R zg*(!B#O~1U$b2IH3I8WXZjarr-JZEEew+WcY%-D5lewYfP-G~7YwFhMt%XDBL$O2J zq0BAuTl}|V4<-)k2Xi+kZ;srYzbSQ7^rpg%LpMfl%-@i@A$mjMK>9%JfOa5ref)a= z_1WtZ*Xh^g_9yp8_UHGd_C@y<_NMp7_G)`GiFm@F$POk3^}*bpfmv^(^Vg=Xjb2;0 zCVfrp8tt0Q)$yzSS7)zET%})?yE1uYA%EwN4CmWwCjk$8R}H4q&rY)x;CZPm7BE{k90zbt!c;!^$6+$G6NBA4X1 zq_%{&jQ_9RZHri@Ki==}&#p_X)7RzBPo5vad+yZQ=-R@0>GNXeY3F6mji2j3H+xRv z9Q~Z!n&g_un*8e2>gejis`RSZs)?1UmC==jzI0!#PwUI{#(Vv}*`7p?-jiFAToGB3 zkEWv0XrVjZ9qZP*GiS%o_Me?SD{+>7R_@H?nUOQc&Pbf0pOHH~d3xmZ{AsDvqNf#3 zO`jS&RXa6vO8gZ6DcR+T<@)m6vgESJvi#E2(&*B{$?210Cu=8Xmc*C%my9fqE!Gxi zBJqenlI==#>0P-+$wiSx`IAy7MNcZ6m_9M~v3CAL$3~9LACo#JdQ4$KdO>V~wjk3P z@AP+OI}#mwN3K2D9%;|FrP`ux1wF0DbWP8M<6(a|8%l)qP_A{L)!&+JNwnxKx#nbZ zq&eS|YKk@$8q7CdQB%%gcS?zr3U&bksV-Ic3KRz<4vm8r^b zWlkn#MCL0}714@8kG!<(H8m8xnKeW)e z2AKo|DHUCchQ?x(0REZLFg-^6k%a~yR|f_R5+ zj15Xfm!hGex?QQrjE2b~=@eK2C78=)M(|{o1eH(Ns z8V54h3v2N#20!9Uu_03tlE@(-NI0VhU5Zzt{^x)FzZ$Rq zms7deAOF)r<92Ks5~Ni0C|-dx%vI`C#;m5NqQT6n{x$2&CXLaB+@>h`TMNlMuxUt; za61or6pupEWUIBJRPw(pB=1s^q!gq_@hBu0mtJ!AluG`$h2%X-l7z!~(5+}V{hNES zZkUR~^`0pZT$d@h`~O%d-V2q0AmMIaDUyaFPkN@Qcs_;V#vawTiY|EsU$@$30ihLs8_1?f>VRCxJ|>G!`VvpoS{e~U4HeHY%nV-}d7zQkc$ zh}eH0obI&sU>-jW{`v6kzXJ1%c<9J^S_4i ziv(7E^nI>NID7G(aJwg_VG;|5wum2L)gt6t=COI6=hyT|uOA!`|AVZr^cX+!9D-Yc z;;NCA;*0Wg*kl4IhpRN`vnQra880 zRR2^@?ZnJ>V)XZF)jD5sCuUZK$6Q)1_HVg=&Z;_mkN1z*zyCn_P}JRG9PH%xMJs-B zR*8;Bs#Ptc2UIznD*>gDRu)!3j}?t>x6= z@{8`5)vB7IOH_6IJ$_-A{7T-9PZlBG(0#sWKvrc~!N!o{ckf8A9_SapLE*i{l3$H) z%_~*1r@v1rKZm1&a(l5MxCX9J*?%pdO0yCft>(9Y$f&vhM%CJ`l~Cr2!D3lBy8l8| zPOG7?ta!+BuMhMYR}<-}wjCv`<*Y(ZV`X!?pD?KTehT7E@d~f;BsGYAeqZC~psN{;tKUeub zJoSqw(KC#SZ}V*yUq^*@qB!i0?k3}ihkmNM-qWfd!8wQO7iv|_$Tx)p;ujhRr&blS z(tUS}daQaEZK%xC=x$X%uy@}kzJr5^sJ@Er-654O2eye8Y#qnePU&tg=6;L7u<+6M zP}I)KVlmhz+coyly++kEVt*=&nU|055Whs`UsX-Cm`T0wK2e74x1tc7`jp({jp9F% z^Ovz3&U=e{Y#-PpT-frbtUw(ffEr~|KeS3<(~mw;hGe!`qoH|5)(DIsA3cp^X%v*d z`y8~al8%TzZBRTaW9UmJm#@YHHxmkRYm$Jq~J3#uNqDhdw<#JFV#OEP8Igd zkE+K1Tdn#Bquv_vtad8DmM%MXT!{Oo>S1P;?DlKi{d%J}mj22WJ}fw(ygOBt=oKEL zjZ{x;6kkEv_p>4Bsy1pzzNQXkJ@&cGBRz|Y$5PhyJ+)h>a`%JbpQ(RZjD6Hgwksd{ zty(o;>|^OFSC?Dku&~P5$I?}exMvJu)dQ%$GIW1ivA2Z>uTq2Behj+P!;uTVUD)O_ z#sTTrKIVB*?R{JLe!=3~#AbkTL?vnieWD%}*31q#=()#pSS7o+tR3XV|M>L*5&l_@e4RcNiIzZs+M@f{v&xoI+ICrB$Dm;f&LFnTb zi0`8$2U))dF}fScP2=m;Sp9*a8bg1&x0p*+xKI2Iexacl>@k#Ss(AhoaI3}yG^%LG7^_a_u=u!|&44)0Od9Ov@{%n_@-SPd27LDgjJ#=&uwatp+hcGs2S$JoDj(afCp7PoI2 zxCu_B@Cpju95R2L{#XKkEP+3k!2j(M7<;Aga{8so7vj&4j)=qk&yK+MCH`dY@$h4V zkK`ZfN@X8RK2Z2%^1ktVQg=_>nYd%@_QY*tLy=q4w@luw-<-N};(-4^^!mhg>HU#? z*+gtGyF0dP;UJs@ZGdB zMbJiA(neU)Mp)8DSkgvV(neU)Mp)8DSkgvV(neU)Mp)8DSkgvV(neU)Mp)8DSkgvV z(neU)Mp)8DScVCmXd~K*4x*D-Kxkutjj$7Cz;rp5GsQtTi3&mzv=o-K6qd9Umb4U> zv=o-K6qd9Umb4U>v=o-K6qd9Umb4U>v=o-K6qd9Umb4U>v=o-K6qd9Umb4U>v=o-K z6qaE^C)$X1q63)T&rYU@aX=$zFDz*GOD92lVM%*oSxL}dSh@(>3rpGy zOWF%d+6znC3rpGyOWF%d+6znC3rpGyOWF%d+6znC3rpGyOIiy{S_?~B3rkuHPwywK zhGm%030e(HS`ABD4a-h~R>M-80BnSvC?m=V2jL_t2uaXtSkh`((rQ@JYFN^0Skh`( z(rQ@JYFN^0Skh`((rQ@JW?0f@Skh)#(q?#iKWRHGX*(=wJ1l8CENMF|X*(=wJ1oP5 zPP7s2L*X`$;=u zNjqXmJ7P&YVo5tPobi2zYe)DX2q z9Z^p-5KTlg(L%HmAtFrZL>nO{0FAH_cA|_ZCme*6s30U!NmLOo!cBMxFJVWf6|a|* zZ#v1hD=6dR;%9>7XB){c_^@@wcm4cL9T$IC&&39!iD)6hgif>(+9Y5n%7}8pNl2oS zs3Kg1oA3~g_-(~MHP{nBXKT`2UwZpNpRRkK2%0N;v^rJ$Sn6G5VhiQi};zbV7u_gv%;JY?PrVu%F-M3AT@>WD_7g$NVvgsmGW zCn|_a!bNxpKM^GAh(@A?2ovpuZ4mH}X$%sGuSM|HK;l#WPi0<> zzpA~OekJ-!{^cb6$7NrNzofmChWEJq3&|Js7jn-hp4aiUKrCGtNx^em?r`F;emMJF z9Dd`{&qklkKa*5mWSzR1$d8(Jf43n^;qPw{G-W7b$lZb ze?)sE^Kk58?cwx8v4^yWGO2jVpUMs=hV|jxgUJUY59S|8JrI4MaDV##*!_8YA)tRU zdtc%{|9zQ{^*1;3eL(CJ+9%StM{m#Hmb@);TMl0b_>91 z!Y%1rVz+3wWDdp;`VVGrPT>A6cT@7F$W8ehQ#VF$EZmU3A$EgyL*_sn_jK9o6W8n4 z=dMd$7r8FKKea!)zpyV|{5l{CUvForIsd?5_AOZC4uK1>~n zHzzjhn{yW=FNj=_-;~-E-Bj3^-Wc0Bv>~z~zdp4-y1o!g$6_(<5BwfLtjVm7ulBFb zu1c)ZSLIeFS4LLm`%-<;zCv%hH`c55W_sd1{&{`<51kb`D}QF{%;=egGty_o&d|=t zoE|^je|q+`#A*6zxl@y;Mo!J2k~$@NN@00=d2G41JhLpm%)czVG_h1)nmbt(zXQlF zPAt|J=OW2SB$Dq+bw#@hi_(i?i?l_Vlj0}&Ps*N{I8i?_cS7=n$O-x5Q^!Y-FC3RX zE_U3|!pOq>v8iLD#}wY~OPK5PvE+mfH-~W-n0T}ui-+sC;=S_Me-aH;6M?D31+8uLi?#%zv?|;S?xA|>Z zEuraJ4!8Bsog?o&&Nm=V{7+fD$;Y3;&xtR`?^FLf@P@Xp=s&;sl-Y?S1i1qwQAt!0 zF2YTC2ruCy{6v6g8u@R;G9p@t%I**GTf#-S2@l~Ve1x9}5Yu zNmLS5z^u}AG2Kmg2ruCy{6v7LCW1usPzCmfXeC_TRroF8A-sf-@Dl-|ng|j#L@iNA z)DsOvBhf@O6D>q55dvoIZJ6mg(MGfrT0dYT>_iz+PB@5$2_Nz#T8R)5Cd4G55jMh3 zlo92GgK!cRgd{47D#As$2@l~Ve88-|^)o#{R1-m>hNva{!?jpTR1x<|OHh<29G@@`g@PylrDZ%fNPa zN5n8=2n+-*y8>gI*xo<6d;pq5bHSLkG|k5%dD#2M?hWjt((i+3i^C zy9*mn+`~|u_n~tQ-H&cI^dJyUG5d#*egDJApzBd&F!C5WCSqlv;XZ}#J^3_y=W~!8 zKa4IKP9uASAn`KV2!g7;$n9RnZxL<8%a|J2m)G#Ku{W>@LXM!hz0KWy2YZj;BVGm{ z!9er@gb;kh%itpr{|rVR1RwD-_=uOmN4yL^;$`p=G~YkN=r#&4Mu(RXNW6?d;$^fB zG`BHqH}VB&ARr0Ezl@C;VUz($ybMT!CImQ!!)R(Fs4WKWK-&Tsr32yGP;ZR7frCbs zF+2&{QPEMjim{?zsPP%oRFxI0iNQ0ZVH3sh8eT@!@G^o1TAGTWp?=7K7HDt)<7%M6 z0SsG#0|poY15FHIObRc9PeB?YFMu?iuflFX4JR8pBKAcRVy`~Ru94^U%d2QNL)dl?D9%b*Tu+W;dw;Lrg& zqsOp>=zRt2V0gQxPLOcO4 zg9>=*$R34{4#V&QUb?jRGA@Oe;Uc_@HsEE<2rokpUmzC?Pa`Mz`?N z-@lh3F1!qr;HBq(FN0lRI06_0z{{`~UWQKamJOh1mJ^H%;AO}QFT*By83x45KnY%k zyYMnPfS2(Ryo_?;Wl#Vtq4P4hg_p4aP;}_VjA?-$1~7_+myr02(yo0eI_(dV&t-y^IOqttT1?MhEcH>Abgw zs3qD4FsQc^jv>HFFm?dCHc-*8Mtgvv1iWR$|F+n94w^XvRSD)KRVC&mRYB$?RbA#J zRe9zlRh8x>Rk7wIRn6ukRq5s=)db8*szI2ORP!(=sm5YXQccI4q#BYrNi{2Tl4@k; zB-P~1NvZ*wljduV=B@tkHK_4F!1sLW$$=-j9v6>|KazZ;A5RN155*tyKa@=+QhF*k zoE(k}=O0Wx7=5ttK>C5$1KI{jj8%%S)p|Do(HiCgqratD(KBM0+0r*4kkT(~KHQ|u<~rp%4;|DQeF zN3Zo=GjY}El|%4xpWYeUsqM_{i0|<4$Zk(;*SF`kCAUSk<>RS%G+r1;55xwvfy~zU zR{z%QWr@r5%W{_{FO6K9za(`@^pe7s^p@BbZOhctfwYS1SJ;%^6x*b2%502p^l!{= zNNmtI|E{K%sKIM{O4rXB-ZF_a;uZ8BdhbPQmdk?3M=szd!@EA(--ga_how%y?Sr1C)pF} z$*)MQh^{C^)6rNIZ@9bT-TvbcKHg`<&n8-2t1*rwm1%=LZXRK4}%yh&%{2kf$M7!ReYfH98 z+VXlzkLrc+SkVtavNh70Z%MU8TMEtT=2)}VoN0J@d|%M)|qhX&YUCZh&b})sq$!fp)6e% zE7Qs{_PE_|&)O0;-IgoH|2y>C!F&EK&@G(B_y7F#?p++hBbZ5nO6KZ#%`hVFg6VdQYyL?=Tn*f zuxP{j(odQC7M3WMStve&Z3BXoie5!Saqg!~PT?G?;1?`C=WjH98dz>2^Qe*`r69eE zMKBj2WufvcHVp|x7Q z#@)(40+MDX)z^YzBggYn|IrbXOYUk5$=8r!NRU#|qew{>?5t^866I<-N|Vd#poQe? z$Tc8HspwWbfaf4b`ktLN=@6S&t?e?MwQ4Lx-cTZ>6r@{`ADdr=dDc`M8{spdr)vq< z6~~iW3z0XmX+V%t(XB{oNN=zp>e2I~6eizOu||+ql4K`yqV)AKZyJ0Qma^d;l!KJht6oyBPCt z;P-zR^TNFj+ZPfJ+ZN2f9(34l3p;Ji^#4DmiQ9j1{MA1Xbc-FU4g3F6|9^Enf}szO zu_&Z5Y!wisRCFmCg{02tSTjA%6q0FFIo3jh&ldvfDT7pWDH<9lPiJ0Sn9(o|Dhn+% zzMwQnDM**1p`p&_#q8Ce84c5za-4<67xCi&0^U-CbSWAdYS>Vj7crw@8d8q8(D)L5 z9uTBdbSWAdYScKghG|4O!9wFJ$Ri|3spwW5gnyj9N4Q!x?g;wVt>0)m*PC3UooJ!> z7tjjey&)CJD#bxHpoHNk%lC;flyy$5s~$GP`C01LS202|l=7Flv7B-xf+ z0fM9@TM_}1Dy}3XQN>mvR9s~naFv@(xOWqd<6a2ciJeZSI8I_af}O-pCsLf^6d|!w zZrc0&pC!OukkIP8_kQO)=l!%i`y-y6+4;}R&dkp4&dzE`yg^|&1t>91Oh|ZzTNOST zISEyRa-4?5H)v0%041i035od!kx-rG+chM<$r7L>Kob)Z3l1Wos*PR^iEpt4C<)NS zgv7#wNT@2~d<}^=Spt*f!y5ml8uSwrM|ECNabv@o?rRF(1+4UzX)1e645VQP!0s^zH~BJZ;Z zC<)NQ)D}@y%+oYPen0^?2~c91nK%va5QQoxb-Gm*)33Z|cDjb(4@t@?K#6H)LNI)g zPPe*V`ZP2!t%y^A64T6-H41mS{ilC2GG&5z5!hKf1sz!EeX#9*dKuLgRrmRu8&+1oI$TKuFenH_j2~c8MnA&|-RgF~5 zvA9G-@t36K6rjX3F^9Q6x@oIw$#y8!6>_PD#0M0HQ-BiF#Ds)bxK-hkk&{r>$1^n~ zenopa1t>91Oh_E0&#JDDXK6_Mnk7Ip+4$@~;*T!WU62D;yP!gbt35kRBSy35j zBxW`Frwifb8WO)HUrqr^OcQfhNT(O;pE#{lAE0&e)KdMGwARx46wUqDxs0}*MRW4e z>Z0`(n)@$E>+k5=e=n`oH3t1lbltz4)?d@L|FyI>()ty9tg zzqYVczmnEJEhyFBPV3RMeq%n(H%RM8H22>K%>j5ct#8o$f9q)#w7&V0`{+N=_5b+N z>FfVFzCR>dy(8PqqLHgS2 z79^-4@ka`_UVswQ%p9U84zoS5!A*3h=;~6SX$JU~)T0n)4AL^BhDnCd)l z;m&;t3HEli!)dD2_G)Nk$g5L;64T6t#_&Njf?a&NpVH{l(D)N;fRX?$OlWK+mAqx@ z5l2_o@}O!u@O}*u6k4YMC8mWbXV&IC4UrS+RnG^$QbXh;76B!mLd?RHb8Blsk)V3! z(p4HFAF~LEH*AnyptcB2TuRH-F9Jnn!`Qi6br|QX205IkAxHy` zNf4Bn7AEBIG%;`CYE~{*clN7V!TG8|4(Dqq>PgEfK#6H)LUFj@h0W^Dpz4Oh1sWPf ztN}_q$(flcYZSV$Aq`bWYCuB+Q(iiG;!BBXX384#^D<6MwdSOuy0974&?sRIP~ur# zO-yJE3HJ;Q`UV;4tnTdMYo4iwBdj4&$`YW&6OEdgkifI|yd{^6Ko?*0Olhpu&@iwD zDDeb{W~Q7~99N}GP9wNL*#NH7&?sXKP!gb-35~)Zhh9w|hvsXZsdTK@(2!UIlxW5Q zXn?ZD24x!XJC}~7s*zPg8XB06w@L7%yi6-|n2yHQSw=!&3{Zs#2A21orJOu|zG`^R z1`SC}$?D{ZB_*bn2}wNb&s%upih(4TuIOK+?3rxTP{D+WPM$VVVp^Gppt4xmH`%12 zVr3Oj5}=J)NJSpX$!YPbW>(*V)8Zr)+0VSTi(#AX#8C4bCq9NmC8Bh|Sjd>_C3zfBWtAMBca7#=p6EYeVwOuhjaK36(+jb2}%%$n%88s!Qm02id^7ue5+^Uo3 zu!c%CtALUKt;|DEQJp>`8Y-AY*vWGVOH3>C5L8qr&>b2om>1kBK#6H(9)gN|Z!oXz z%b9P}-2a`RD=G@d+3=wtsh-cs=tlaIkbN1@>2cT7nbV(ytz~#T};pE z=^nsq^bLT1S`X0t|F@k;`_lif(cJ%GTK`DT{c-(orvDGnv;VoYzFKb3_tG~2eoxQ- z_tM%z>zC-d|6E#sYd7d`Y%kTf(kgsaJDyqAk7i*|s zR&^)Otu8UG%tKI7-S50aLj_ZG(+m|viD_b@o9-2EKEMj_twD$A>{oRPRKr;>)zHJ# z&`zH1S7KV2vfdVj6#tyM{wBR;s;1^L4G|BEfRX?$Ol=WWOLMt~NHdFok^n7CZ4p&N zbA^UT3yXk~04+>y5!Ew@JsKjdECNabv@m6nO@)ui64fZ#D>X#gSOk;=XkluLsBTwW zr6DqhMLq8cLeDBvcVz5ybjnTd;MFMst@ zby)bCz)2&`y~9E*UG04+>y5mlRZgN8^ui-3{<&CCsSX|RFHUEVTP2)cva zUcNCg)xo_{Lj%rE0ZL2@6B-!&pSMh%0lI_!fa(fouZGBc76ByzT9^9ohvIr;%(882cGV>~0E?kt76<%eNc8i9{ z@hk#L0<+E4oUY*N<=#%^9f*AzB8yoBlmuvDZlGa~Xsq*=Y=Q0xcsrFhAa2(XIf+F; zNq|-+zWzB|O5|&_Ko3%)teYbmDkrlFC<)NYJOmY0<&0~noWd%gBtRRpkcxaW1!?JM z?^9OKJ2YfYWf@QsppAJ5GTuJr9l|>`WKLrlP!gbxsV(Dg?^9OMyEJ4@XBkiuppAJ5 zGTuIAzvFHV89xQxBtVI2VXmX^b6!NPLEbWTJ>z>dR06C5N&>Vp4?#tB{=82^rIS@aNq|=7A*jd~1s~9Lf0Wi* zTAw<`p!Z){s{a99`|qUHOzRUDmFj)8{*cE0UrcKeeGBjr8vDPP*6+}>|LwFIX?=pO z{r&X(|3~!fe>1%UP(t?r5?!VGcDe`fE&BG~23mErK1A35C(`;3UHfmPwT#yLbO!zW zFg^39vHu%r6|}B+e6itxb5JZf(O1Z2wrIf2|kUk%!r#Ylt zEhC>7u4sU4$pmC?L9E==)VC_SD7Jj;$EtycPa9;cSmYaI^@6MfijItNmcb2Or zx=y$p(IMe-(tJBE3r(=&Y8~7vT!QA&ag~hhpwv$8B8SOKD8}^lKUeGcRl-#@5~Gya zuOokgzRgxeUx%aA-a>(n-$ofSb~~9g7niGy=HhbM#_uH0gLjkAfqTfLL*r`3F>vA- zl;IfE;TTlm7&PG+G~*bwO+HE6a17iy273GR6d@dgG8}_a9D`yU11F9_5zX!8s>d;~ z;utt^3`+PI(Bwa^3S_??*>6DhJCXe@$oW>}yahR5BJ`U4g82A*=1kY6r5~imYx!R_l<}rO0X{vf7HQZb4SJA*(Bq z)vd_tIW&)!s~TBdgsiSYR?k6J<12qI1G3tRtZqeCJCW6PWOWO&x*S<8A**YV)s@KV zMr3shvU(1(x*A#Cgsj#ftBaA<60+KWtS&-UJCN0SWOW^~+JdaMBdbf1)jDK#C9=8* zSzU&#F6WYttZqS8n~~LeWVHubU5Bi0qgkh1Mr1W+v{z-dqS9i1{=BSqQy!W4!&%vy z-HZ%#A;a`2mTl0T16><*OIVk7QXZcc>{5+gbl9a8yR=~!D|RWyF8ES_sa9Ek@Yw)m zAPscTrK}HXVe}MUML8X=3JV>YiWZvAtfGhxO@+NZAu4Qi1S;C-2vn5Q5vXvFz91?* zl(Q99%Grt<%G8Q_R9QLo6r2vhIT4&0!8Ic|J%V!}I4go{MQ~08*M#8Q2+o4wTnNr} z;0i(CmsBR9bo6SfyrWdC>^>?{%_vc}{Zyiw_EU*!7^Wg*w%ZY(5k!TsANHim*MF_GU0o5WPHv%#tj9P?IfiUuV9EZ)rIdC`! z4(Gt(95|c<#xidegyp&>zh7 zBzi(Ux}M~U@CwI@iRF>yp5>{7&KQ`c?+4`15g7OT{TW}v7xL+R$euV?7_|LD~9Ki>au z8~GC#zp1Eb&hpd>&m^APTgsGej#prO*uDxf4lD^pt~pqfeWK@F896mpXQ zC8m`*O!vsP%<=?7e#8`9wk)8UN^rjFecFdKB$twyQ-BiF!h|I5GUqK*_n3prdID!D zZ)88LA#x^*fRX^sOgUYJ#%xl$RD=8<(a<=HH9$##W+p~8TvTveXfSY=YK;G*8XC)3 z1C#`4Vs4>vj$4I0FR!w%J1y&5uDne;sv)t0f^8C@#I!KwsmEr&=U*;pvNQEVM*loS zW~u@uG!%oZ2ucF9Ftrs`4^LDtrah*i*vpEbBtQ#OTTwZE!+h17ET7O&>}N$#5}<{t zt*CtYZocYugU2-#SFs`}3DCmCGpX4obi)Ipa-PslH2_BSy1^$k6xXmKC<)NYJcOrU zs%%w_{(nM4@@$fE3Q%I2nd_)Ncnc1V5A>-YPd}-laSm&Mk^s$2Sz~5}C>F)kNRfu> z?)p<28t1YGC<)Nalr;(sjVBG&fSac^G|poUP!gb-DQgrOQ%)MHv(z&h8t1bHC<)NY z!~l}v0%NfaH0CNuM@0Gf>sbwz3s?n|1ZZU*f{N<#^m7_21FQl{0yHy`jvcc+{FIM- zu&-D3bozM>jX~A`B>`HP+D~!UC|mRwG(^@?z)b>_m{#T?)JtXKvq1Hd%!?Y5>qyKg zK#6H#YNxA1c~T$K5LwS6pd>&GQ(MHZd^(-f5E)_-P!gbpsr?ANL-}y}B@K}cECNab zv@o?r{L1%MUe*xV$ReO5Kr6G*W7g^C>>aAQ`HF_hCRPC@0a}@dprWdqpVCm-%qpNH zKr2&Q#jlz)^3xhB7qSW{3DC+s1QpfbkykZTwou4T0+g6m=5}glFt96cnVJT*r!Nrj zD__%Fpn9Y1H4VvaED1^iv@#3z4diY$?0*-nR$8B;@&5rD1Mm}i_J0|z6|^Q68T6;n^Z)nh`TvfMG-iO- zr|8*#C#{q8{C^Lv((wlUy)^#6jn;JzlSB(E3`!lCv>hk4_8dH4m8TI&Ya8y0Sd5Qgv0nKsA_sTto3v(sBw=Vw#!qWFduK+@lHZx|Qee z2@Q?QSOb&Yc5}+hNBXcL+ zTXNH1-V)UdJ-yS?*QFfq_e~9jYbjKx041i0IZTbr`dJj@m#2d(JC$SozNH~?Jq6w* zK#6H$4pT+hQ9!~Wg1yQicneem*x%I9yMdIP0+g5*CiKFTsJtb6cd^&s8BjK4Z)u3! z$ReO5KnoKhg_`G5N)&zFLD`VKts%0PMLT`76ByzTA0K1c>&B=lec6`+ZkQGeaeFHu7=1y z3fL|{iD_X%_pEAHma^|_ zXxz;jAbom?H9%Q|!%>!jsRBS6s`q7nprLUOYk>6KC8C9io8q(Om0Tx#D6dqd?1vg6 z_p%5`UtMAmP+P>WEM`B_5V?;Fqqi-5Ao%-qVQ#M_}fJ^xrk6=R|0&0u+ zl_%(*Xox((A|QQpiA6wdkxu0u$)9S7JVZe@2~c8Mn5dPr%>;n#qGuCJY03`8>oN;e zPZ=jQ6dxunrvT~mOGGOZikPz_Z<#uK_Ad=A?NU|Dw1&zftO7~`v@lU=3cqaBPoI=i z)y$u1h&;+7Abr<~ML=y4Rn`2thR7(3fRX^MOcaCJQX=0h>_K+Pbu%wRh4?Ow`yalb zRBxj7ll1=o0(uAF?el01Kdr^IK1y@{pG52TXzsrqv|4F>nCAXlOz;1Hm)`v!rfYu_ z#{bjU{{=Mv|63bM^&4r`(|Z69(;R@ulo<5iq`Ch#wU+8j=>KCh_ur{B{{MX%_rHPe z0qE)a{}HfhNFB z$i>rxEyCSJlkEU{pa>`iN`O+p0F(g|U<6En8L$9Wzy{a>2jB$CfeN4!r~;}17f=J# z0(C$=&;T?Na`9}!7B}DlngP*H&;fd&2q*?hfKtE!lmQZ81nl@YcJ?@#XiJ&ijO`Y{ z3fKTU-~gOJIZy#q0#!gY-~wuZTA+@Q4P9T4Ee${;&;*DeK?mr8BA^&30ZIV_PzFeV z5ikK}zyeqS8(;?30ye-7H~=S54pab@Kow98xPTg<7N{fS;#saZbo!S4t3+9mm|R8C z1oS`=Pz;m+rGNn_10=u*m;f_i0jz)xumcXj36ujBKqXKGR0A%c2B-z_V15gG?fDteOX21ei0UKZk z9Doxj2P%L{pbDra9w-8e zffAq;FaTwM1Q-DmUm4!{YN0~J6ePz6*2E}#ae z1?qr$paEzEngBQ80h$5frdp>1^gt0%43q$+fB`52B)|xm05f0#tbh%$0}j9mlmit& zB~S%a11_Kjs0HePdY}Pl1eyRh-~pNe;Unk(Jx~M`10_HyU;xSh2`~aCzzkRbD_{fc zfCF#>fhNEWcz|X=1PMAo4-^5#KnYL^7=SWB0*rtO zFas9A3fKTU-~gOJIZy#q0#!gY-~wuZTA&W72O5Azpb2mT9-tX$0mLvtB9u`DqMs(f z3|IgwU<2$xJ)MWjj14#?H3Ch58}I4Nwcz0rfxw&d`pVoak z`Kj=y9G{waCGv{rmDJ0zm%T5iUy8rve<_npBtuDEGC39=bBs;A7hljOUru)3K+$Pp6-XKjnWa^JL=5(383+lTU=7 za6B>b$;c-?pG-X-d))hY`V;X__&ZcW@8x>a{;@|N%|j$0;fj@<0IIdxO)Chtw@z45*Ny_p*mH->K1 z-I%-~e1qeLiR&ZRd#+Di7rV}TUHaPiwf<`}*Ceh9U8B1u84Jf8v59CT>WQYVj$Q4& zI(=3AD*siPD-&0SuGC$b+!Nm8*fViO zU*foA;^N4~o{LkvW4pb()4Srk{JSzc6FWmYGdmJHLOXOjl96!45t$f{410!C+hg0k z+tb_P+x*)yTN7JDTXkELTf$o$TP7}wT;#bZbz$s6?}h2j@y-6t=}qxX{!N*UiH)I+ zx{b*V;SG)r6GM?9&roW8Y`u4VdR=^-e_dv6Vr^)xZf!Cg4m-jVgONeU;KV>=U^H*c zzWe;td9m}n=cUh$pX)z2b57!%&^fwul4pm{cAP!2CbGt}Cbc@Y+PgZvD!yubWn`si zWvV~c@9j_b#rynynchTis8`pU4246E&_pm2^aN8qu^w+vdPRJNe??|_VtHt}Zh3N9 zc$s6F@2t$3i8DiI>ds6q4KH;pomdiC;#rb9BX)-OjC6Or+uxn(N_2&~bY02LaHpel zA`l690;!Hzhqoi`kNd}c5ueAGIz4u}_w@8>@zeaLWll|;8ah>XYVwruDUMSnPL7=H zIXQJw>?H3=>BaHI{>7O^iAAABx<$zo!zb!aY(HV}e>l2-^2qp+{v$K<67xdybn}vP z!*d;TCyt05;W;8TCpO1BC*2lr^S5PM69q>554s)hiKa-CrzzDKYxFjz8{!TAhD?2; zK2)!(Pu7L%qP5=IbWOa*Uz2eqTp^dvm8=d|JE|wDB2}KMRHc}8jDOtWcVz4dd&sV{ zCv9Py!!}`!SUuL1C1&wj(&o6?Z_bz!rjRLW^cvGrT=GkqvP4;^OjnjPgbfbEL}{ed zQ<^G?m3T|i#qnZ)ai%Cy6e`jcCG}ywLqDO5=sdarXuf=`l&Q-BiF%#^1!EHn&&CL8Tm-UI%vhQ?E@0n%r>i54bi9o|LB%3G$M zFwwlj-KueKA8Lp^%_5*AKnqh_L^bT~cN!wkQov0Dq)&0P2#CW|_#W^X`S*Z3l*i}y z8j8VyI|DYlAJd1$zU2YZuwMA6JAOEN!@&b#1^j&VE znJFKjnL{(=p~+MVRE6MxhQ^Dm0n%r=Sp$?cls8Mc%uPK2A`Mj;$Y^MMmO^Y2AbtIp z=wKE~2TdVP&jFB*fs2RM?HX9s73lBjovRx8_$Lj;&yh;203~J>b0?*1qZr7mJ|b!r z)~HMLEj?p^RJ(e6R|ZLYHrYRG$bOLo-2$YK^%9*-xm3)Y>dYvNJV!Z+s#2;NaQTsj zB<kqdM61T8{g;OBw@9l+fb<1cVkNUsqAkJ_t(K4V zsxBI((6ic`O|44x9~!D}lTw=i>2s#UYUUxNwtXN!wW>i(|J2a^Hfgm8P-0dx4?VTH zHcO@YFAddqNUv3Z^bJyC6%!+xHWzFvX-v~VU%$Us-EOG{>ikh)lvv5s zPVBVwR0FM2{f~y~_eiN(fb?-sVg<8MV$H%FtrAeoKd!2=B0MuEom3|BPAnc#L|b&? zJrZhT(#JmOw~JXQsdizH)^aJ9h2@f*EyyZi-Fym-mO{cmAZL#N>D!#dawb00Gce1j z7?UtXE9p~21HGMRtE#N(3A|oI^M|C`MmU4`?!X^AG{Cq-CCD*HZ1*%v>_NOG(B0&25C9#58D7`3A zaub!4&h|4@swEn#lcdxpK)Mr1tYQ{YMgOLTixi)Gd;Qd(%H}arOHbyeu6;^1bbn4- zO#+mdb|%JHuA7m`C0Cc|Z`)_kS8p@uN3S&Kk9e5I>n}6tPkP9p|Ju0*ea}S({ri_2 z^lL9P=zn{YLBDIWLI2Oa2L09V8}ubl8T5PKGw7{P(pdkC4f3N>{^V(A{H#9dH0npd6?GDuF7X8gKzMKrK)Q)B_DbBhUo60T0j&=tc;7pa>`i zN`O+p0F(g|U<6En8L$9Wzy{a>2jB$CfeN4!sNPR-0gXTtV45VD0SjOSY=9l`0L?%P zpgTa&14TeFPy&H#+(+6j7~6fgp2zzWy^JKzM$fl8o?kc+1aTWWzipdM%h+<*sY26R5fPI{$Lq%?|^ zMv2lWRT>7RQKmE`rD0SWCZ%Ck8WyEtRT?&>VOJUsrQuW>N4TI7sQyP-eFe(j`(l9Fx zi_)+v4V%)iD-DOza4L;*rBR_YDwRf+(x_G%E~QbUG-{PbozkdR8VyRLQE430ye-7H~=S54pab@Kow98xPTg<7N{fST7Y_N zX#g65Ccq7NfM%ctXa(8;-8exH6amFR2~Y|cfHFV=jDQI+0~Wvv*Z@1=0GvQMPyti| zRfJqTtFgre)Bv?W9Z(N60F6Ks;08QEGtdIG0&Tz?K)0Wu2a14Vpadud3_uwm0Y<r)_}PS?Khlj6e^LZamViGqfWMHy4@}^%E#PmhM9GeyzjuOvtN=4r;GbRK$F<;J z&HI-NgYi-e{iBk;T$Ej5$InXqj8%iz)_~X7fj2gQH#LL%!~x=n9=xL%yvqRID}nc$ zzy~eh!#40yJ5h4t=VKM%<2B&Z4zWU%eZ@(nqerL!>ag*x2JqXGoA@I$_){yGwh<)< z-~=jwDxeyu1sVW1&;savgc6_(Fal=43OIlYpc<$J8UQ!Y0_cYcb~ma2yd3hZG?KQm4E>A}yBvj54lzm|M8{HpHN)NCc{Zba$+np<{3-97<YABL}oNT>ZMTukw-m`PCOERME6L7#ss7viaq3cDD`0ELC=E|4@780K=S_3{h9mX z_xbP3(0Bmvz3F@6_jvC~-yOT#L!$x0cj@j*-Wj@6cW2^`&>gxvlJRid5uX@|jCe*; zx5sYx-k#nU-{;?#xh-*9=(hB&v0FX2PTUfqkpRh?LpSSgPTmy0$#K)f-pF3h-qek; z8@)HCZ;0REzaevd;`-3_y6cnIg|5?Gm!NR~>1$%wc&|ytBLAp2-bc61O7rD-JUFzD{wO)#U{2Ko?nOGtgis@p>XgKPKPFx+i zdi1K$Rl2K^SB9^2Tsg5Pvd6P0bw%t7?-l9G(cEOeRfvgD=VOC6U^ToSp& zb4lvr*u~z9)4Sul{kt=}+`CdcV>`V&(>vlj{5vv{L?jf^MUuneVaM>q_Q-b6_SCl6 zHt)9d*7#Qc*36c~me3a6mgGg@iyRkCTo}1F;nq%MeE;JqMye*Ap@ z`I++)=Y`JGotHc}e6Hi%iE|?7c+N?k9Xs25c6v>GjekvMwR?4NRdnT8|74%N&(}K~ z8V&C65k2iI2A7X48$av7neH=#OQTE1&Y0}Bcl)}AJ4XZiJ48pjf6zB_`uJ%FPIaFe zJSBSa*h!O%?TdYjhEE(lVgK>s`1XZ^3r6OTdk?g`+k?kNj~zQ^@@V_fzN3bZ9G$m+ zu9(|?#NeEfw(-^jE$)_Jv#vSm340u#33tTpai^NZ|8S1KXoa^TT^=v@muH*_XUM5@ zCLLjigJ$`Q*gf`?EoSrD($=`uZ_QW|mXJmFzc%w<_WA!W&i=tMe{l|q%Ysw$|GUrN zi~Vbf)jAg`S9PSNltcPKu$8T76z^EIQjXf}= z;Z5vv6AZ)PW;X7FQDwi7jmKdKnq&{lOJwAZQ{||<@eA-_8QsD@-h|N*ls{Jg9t?wB zegyY(7s zMuum^W!ry82O9ZL^oq4(`&;|3V^1F~@kjMA~2*yUjuuISBdJO{%ZyoHU|U^KaJW#e@i zmG;}%co&A4l#NLk^&|V(<##Yjqqnp1Uoc$lBW#pX;gcNpI2+|K^pmpThT*1J_OToV z!#sE=8;f8xio4k8fMMG&8$sSDdN;eA2cs%@4;!0c6#4FD<6`!j+1HfVfHZzAN3=T zu<;>`Qs1L&`~^ni0ol+S$#9H~vWo?VJDOml9)>6Q7#l~xsCIvXjfF5;$7SPm7!C9> z0xW02Fh)Pg#kvP zE-%6;rq5Sk`3#I|-*ard4r2~|!UfBBU^pkAXJZmZEqyQn%kN>74Zq07-(k4iV{DX| z$S4v?Hk>e8$7I6|!#eg7yBq_fB>FNNr@(Lxzrw~@FdV^8v2iwxV)v)n7$PHgoXYph z8zb@%a!q&^#M>rX zGcBH$P;<Uyj0>c%YV8aE&==(Aob79ob*V3>ogkjk)8>hplr%$M1ISYm@ z`ZYGrfl)+X5X7<>MxFiZZ0u%l``={a$1tq!Z?o|i7-si=HcBjHl(|!ERKlonzr#iw zjM@XTu@FY%fp^&@0K+}`9X9%56p8P#u?|M@0om9|My^jQjlIV{u7VGv_&ys?!l)BJ zVdIxD$`8m!28M0&r|d$nF_6UgBpX&3#nChywJ?msKVxGa472a&Y@7(Ay!{t!bi;7i zf5}E4jLI?DI3I@F{VR646-IIJcWiteM!onw8}GuX8<&lr!l)Yg1G{_(qbc}DHvSHy z*?xeHVjCI72V}zmqjWOEE^Zj+@jtO~EDY=5pV?RhqssRY8{NE5@ULt{VMx*cV&hpD zCBA>K@hS|R`=4yQ4#On=#l|}@EMv0qV;IipzuD!tFsj=B!^X#C8x9t>U3%Eqr?6t&yf_$v%!yPb^^2N@-UfLo9Q^>v#KSK2Ff6`iHs-L4yM>K~FiIz7!$(F}6hYBq9cg7B zXTe8}uZ@jWFmz%L8*5>>_RGe07)7H;u*)78Rld1w+z6vs%wyvY7&W7^@i2_i!6Vt_ zX&6m|N3ro47?tj$+4w4Z<8Rpu@h*&p(PP-<$1rSz$FlKT7)|cubPh5z6;VY+G5B!i_ z$6~M|!nq6TN!!JK__{57ndOpVZ{-4M97yi9#Xn5ywTeqIn467Q5 z{%dUNJqY=V8{6bXex*k*ULx}-rjc32#2d}CyZP4s&FnlC^jvw>Mi9`8UN!SelG%Y$9?`p3%NuBlk`4{aSD+7aHh zd&iLbyh~5)QpVyXjacAe)iDAzGF{9?(8#P{7K#PlEpu`Dd%L?2+OT72=O(4>s~WPn zBiAB8Bh$$&B#T$cW!csK{=gENN-n%>-6pDZ`4#Rp4O!g#YZIW6S-~tMi`3R~YJ?^60k6-}E!FBKx~^k#7H$^gzW&3)Uq4(-~sdD}+! z=AG_Kc5KIwZSGy0hB#;XcJ0``4riWYmGS(NMm*o37`6$}$gE&qLNB$>_U&4^Dz5HY zMsGfL4N!cWdxwU5!^70}h1XxE5+2tO{su|T5ulOjViw9EobKcnzps;~m7rYe@9J#k zQo+*7Bu{84TD7b)M^__i2~+tjY>6-L`qx=I}06JO5=3?QfA% zlK_oO2eXhiT7U{J7U=0rb#n3>+plOyzDZ)O0yHwKn1v)!`)XLyzp}rF-%4+G`*-i! zzH?W2$1Y_ye^o;lxBKP`(8z3H7Sf$Qv34%)^LH%kqH^CAr0!K;v%7Qi&hXkTL)5nz z8m8{mPGu~GD%sPbb$+ zLt)jienUeuMQY6gG%_ohg*4^Yw$a)JdU}?1_N=C~2DWeCvVQv|s+4|1L-id_DQFa6 z1+$RqbV|GEb66{J(a?1%wVCTx$Mu^Un(vZMg8+?8C$o?ydQ48aT@Q9qyW#E|9vWJ& zx;FZjh9I8zwFuD2EN2!H#3VR!7i~q)Ip-{+G*WXhf5rC8FW)kxl6_M{_Pd-;&?rDV zvyiMo7^c$MfmA}XBQKqAX$a!!Wg9=xG%~B0g#=MitehFo4v?=?}|F<>d-sg0JMgdkZ3(3hRT)C=n z7qt2BUo6$%{O?k|;}Mz%puwP@M{@zZR&UUE(p&&<(;NWjoMq5YK4Z{ty4j%r+2%6+ zg)|qyU+Fu5SG-}+>o5<%z2ts_QNN|zp#NP-nf{{6GX2Nv4f=~eGU)$xr$K+iPJ`Y? z>rHFR^tQ(g`a35KdZ(jIf9qhG-g1EE|EHEE{OTFDzdHxTSF+>(DIH?})xxPm*P7Ba zMsM3itoK{zTSL~kjuzpfO}0j$6{sC;*4gTSdY}QYxZ89#D_{fcfCF#>30ye-7R1NPDB}=S( ztVRyGcx1gO3Gq+NP+t|^4{ZuBqeHYL(J?qiz%SP|p zkz1R!jm@I{VPTkW^{`P&2E~hDcdr$c%LM%aLJ^>gt`oKrpqbu1u;~T~HG><4tq~|b zuvys3fI8n+VQT^mG|Jy*0?flZC{UnsbQkT$7`a5)8UXv`<-%40)B=q_E8vV?C2Und zJ>UkM!5D1=TtF*Od*E8y4QK&$G%()QHg+S$ew*Z{}qEu;(70Hve1 zQSt#RW8`-70#pGd(KxvRCZK8X4q+3+1U+CJxs!GS>_A2EZegni>H+uudnjsvev;sd z-iH(sJV5#21Ec}e0dDaSc?OEw3AW)!C_JE;#)4B42y+G#I39!&pt$`pasZ4#Y5ON| zj0n0xf*vT2K2C=RkbrU;?oF9UsN-KW#@ki{G%{#lx2+k_1qn@q&r*bdHlSwmIUFN` z2PhqR0m&zr00)iFrn*R|1#H2Wphj>3Rg*8{AQRm7Pf_r0LJ?r4vDZ|i3FSb;IH3_J zZhw^`4!HIc>VXEpKKdGY2I|^BLy-gwG?>WNJos5emtY$ul-fT>i3Tcyz%wM1TUHKK0}Vh6P`sZ|6Qx?+2)KbZK#%sQ3@An`WCW~01t6g*vI0(Sna~tf04|^g z?NK98jz*~haG+%>N6XZLmZ=pe9;9YqzIB+Zx@kNp3@1$0`zkVQb&~{(FGM*;&4+WQ{NkPx*H2?-hpot$KFmhW#)O=fL3{IGh8AbKr0e9L|CN3v zo;faYTN)0SupwdvZDt>IQj>qJY0#^k4(W6j>?v?uQIdou2XJLJ~6 zlTBe7qd(CYY4kLv8e$FJhIDGE@;R zca%>!BTkPq<%l`Fj1fT{Cn@{=bqjAH`V?Z=iDFb_~u1>eRN|* z^wsV)A7=ed`egT@N`H0EJ?l@Me;a1HtM=cVbAO-Wh5WIr+^c_=4flnPrFUFM?uh5~ z68>xU_iMC$5v@L7b_@RBlylE+9ainXZ-%=%{&&uBSJ#ixocrwcFzdC=TIrnJC z_iuWb+|}j(mpS*@%l}UKWef^`_VWK>&RtO0Gt0m3AG9kkvzPzR<=kg4{|)jh9~8pu z<-a@Uj&#o~|9f-p$X~bzRr&XN&RveB>?ix1z6m?iUA6!FIrrJi{|)ksDHP!B<$u5Y zRtdS!UjF}K70B1=iFy6|4--KXD|P6<=nH; zP?!HD#%%m>d{BPX<$puYJ-h#YRr;UIxzAqy|Cn>1z5MsfZ|G3qvzPy$<=oeF%+~&Q z%P;jHa=zKh|9Lt0*~@>G{2mbPK70AUH0S;XrF)b#)a`pB=RSM+|9Q@Raw>l6^6$ah zD5^zWe%fcctMY$A&VBaspU%0D`nUb?1d79$YX6&Rv-)HHx85|9yHL4*Cg+}wzuNun zoclE$bnd45t&ab4`CTSO3f1mCGu#zk5C1%z1BY|qa1I>Kfx|iQ|6vaN>HVgg|3laR z9}mgb|7-63k@)AM^xEWnU2c6t$iFF?{_9?=T?{uYWmBuKY3iM4a!-a|UCfSv@3_wF zZ}^?LjCQPCxsuMwrGcy){0-3GTKXK`^imY4I62`H;+u3HmY1x*Eh>LY0~Z9ICVwmQ z!V8Ow#g6Q*^#6#!wjZ8G{$9@u?_wG(xlZA4uYcvrPm#a;@Gc=$Wq79suKzGY{){T! zFn{}Dvm(6g&o#67+nRNx|Kk)dAFUV8;_niLze(~FrTjCi(g9sBeWYf38KiLFZ`_yN zhWvxSwZfggDK>m)Jk&a=Nzq13+ zK4T|;y?OqI$k#wtg8m;#?njd5UF26@+MxBS^nRJzs~Cl~NtJ)_w?p;y z$(4a*`Lz_@dX+zvz4f$CFRKGT{Pb=LZ~D3g@q@oD;)H2$Vq@UpoqzBt@9)X}*3ofO z9^Y-0FKDj@DNK2h{cWQ7O*hNr(y@5oI-iK9RmTHm`65+#J_={tNB13P@i#oBfPZh$ z{mrMyUrV09?KBo!S+1sbiQYPkKV|*>D&-s2C3*RW@D@x3f`8isyHdwc9AkOm4U65X zbi701+)Dl)$qR2Mm#pakhbWvO_?_X;O9P;%muSFadB-Qjvw6C^D4&(}na29_j zPKOu0pVG0L{HWU@q<6hiH~I>NcYyK_ZH&BR^JRnbxJ7Ram_9x36Jps6-5siYKApn5 ziu{z#;%_J`LH`>A10A2E@a|NVgZ0!FY*Cd1dtk$c4=8Tu<@wu8Er+t)XMaALYdl;VsMtLjO^Yv#Y#W&KLMomV=dn--XKjVlhlM}+acW3!EwDn-B6z|Wq->4RbSwa)(nMrH2IYm z28_Im~1m1cxO8%&iHMJmq8z_cuReI|w-yR}=>f?se99E^{M;)(jy@JB}ol18D zr9s^fn-e(gZ=*ip{-r7%8>n^ON!ruP-#YGkZ$If?pz^no&Tc5F)5~tEm)DSPvFiA4 zB40aH;k9-=^8Qi^Z&Ve(%@jNIh^CjbseO6gFQOl+!h^pZs(Sf(3J3kz7xKbepLcxM zQ#da2*OV6?zD})dpR+OeATK=lQ?>_-sNMaT!i!Q`?ZpE8ilin*61v{ z8x;P&)3Nu)GkkPT&(qyODOToln8K+dKkDlv^zGHhcdFgUYfm>*DuyU$rk6pwjzaxa z*N@F~RfZ!ny<9-YBT4?oRPn>>YwK0*5Yqb^<;zF2_**|6oH!@YbUpfi>iV&TN9 z^zuPRs_RM8ZOsc0<@us%Z{nE1Pyck=41Z`P)#v>+9UC@mAb;xXqpcL0x?jTOiZriN z>B|0;@mm%6(#vrQZ%dxPoq6^AJJe2E$j|ybf4ixdtt?k>lKV1R5BT4jIICNf2gOg; znmL`_2f6-VTXdKI!Xx%A%3l8)XpesrT&?o;KioS%d;fI7R9yda;8{eUqjJ65r@WqT zCO2I7FB3f?AkLy+9bzesi|?afU1AOW?jvhzi6#O|?|AKW<#Da${rzH<=%qcDQYdTq zZ$K;|JG+boe)E{gr@Wq*_ghW=dqpR$UE+)>tuC^rmgx5aOHO})_8X^FUa+5^Vmcs} ziK&dWHQE{eeb&6BV$ySvyE_}y3E zR_$LgwSW7RZh%7QrTuw{{xGm;7+S*}@&>xILO-C#4Qupm%J+wL%XrHDrt zBKL5vm|otT+HWwI4|c_V@?D-?)86UYKGk(2X?{Boqi<}-DEw3Uy-ws^!k4-*hKUXdEp`J^hpKrX9!U=B?DSTuSG*0Sfn6u}St6{UC7MM{9kwUrt|7E^B31%E$juWYPDU z?tdX4J1C6lzxJ$e`hRg?$MRyI@_GTSRR`r^2bX|s%dnH~>s?I#)cM`PwY!`4m|CL0 z3S9khwJ-m=TRwh@>zU}61CC8+l0RQA9mpS){{;vtdVApGC-{6ye&hxDgJX*pEJ$&~ zFiY8!2CJ z^ijm}{Pj@X^io{1d8(uE-ljBNI;%e%2YGoqPmYU;CH6K)P?|;)nX6YU>ba^pU_Z$KZNooczj5G5uSgy9T-{;JRVL zr*v;7_fEmKr>ZnxpDLwOx6J__vn`5N-Ka7K6m zp$MMYUFdbTxyj4-I?WP;f!!_-d;+* z4V-yV8s)P>$CS=O`aj(h`0s?*PoZ{ki4M>&gnO{?s0){uPIdfFr2VIRHZ#x5?!5ic z6OvPgbm6FF+aB^r{fkuBtG@hprIU^tdSTPcYHC;P0cjxElMIiJz7K=t`3 zXw%27k^P|$iF%G+M{; zg@W2K-2z-5`1NI9q1^4~Nd~`pN{>uyUwVO(KfO07(Dy|NMZ$8f_6wd>YuiezUK))H+Sf~@oi&eBv zT}6vc3q{V%$orx*v0`Y^p8uI%I<`+V9i#3usX z)musDn>igfZJqYNoMMG~+sieuk8=AQ+A_WDpyS_8`#+J}->KTakNZ)%mM8is`Tw;~ z+3&0%{~PIO?4r_v`zp)nJ_wEuFVT+zM_gP*;j8;yXOLfeX&LHx<772*ql zMD=G$ALnv;!SPt4NHJQdZaRW1xm;y^y%A_w@`_J6ei6reDIM(8 z_*s95Ywq|)?+E-XeG`TEls_KYxKc;g|36)e9_93c{)&9I&9$<$<<)@cm8dWO{=R$- zm^&+zzdeCp9{(NkH+}xL(pK4@vJPJrsQ-GH;yYbWnWu;!~Dmq;EOJWhKW4erSot123-~ z^yQy7(UziJoL;`uaqF?TUol;Okq>e^s60+r1m1n{1@ecoD=+8|ZKD=SZp$vGkMa&g}JsfSRvz4To90ZLEKiokiL%0;+EnG~-K+)ybJ|MNGxj*a*-4jkGOEIZUe()JGR z;Ft5qcuMtOOIEaLB=I~-tw(8Jx%>SX7i(^r`{K7>HSCGhJzC+Tu(NfnlEjXc17U4 z^M3E6YZ`@7H`O0^$h65H1=fD!dY}HesOmp2^Yjnr*CO)g@KrV^5mz_0CBv$t>o4R# z1a?0^>?>^d2!DRIE|AR1z_e+TD9^e3O`LCPxNK1dXWRR}K-Di-P?%gkaX+KUhvedGKIFa=_~49R`1J9nRR2@dRFz4y92r=aKP~~ zg%b_KhdL7!f>MUegC;a|HbTuy)J54DnFe4?HU7!B%2K92?BKYoSc zwG`w7cP_Yt(YB8RpC6h?;d1sC_56ng1KS&cnZJhJ##E3FM(*BhEyJ$Z*0ztr<;Evy z50HjC^xW8F6WOVDQMg<`i*jSsHIJ?Vxt`>;!0X?gN$qB0Rxa8Np5fxT@PIOY#S_17 z#kQQ&{~Oe=d;#q(+b+kBr?YdD{p@>>9i@DU*?7>y0NJYtY0t^;1P06z@*k$Jx_M}a za|msC3AIFw^m0#Y^fm+vD8CW--Quf#`seFNe<@wjl)9jL{>h0=t}h8mgjcSpk<3YSX{_7jY^a2~==it#`42@582s9d3Fy!YksM-(r2zdcbGPt9?U zlJERfV1=1YA+_zTz{}_S(WjpmfqK>CuTUhTKSN6jP;F#3`Srk6-)*HjeK(s}T{a%B zNXtn!;$-e*D8DD{`k{}WFKMt;Cz{r^+)?& zrktfyskSp4g}WpmQNE5)SaoZl9m3(h8MSR>rNQ&1U!49d#T)TuqS0b~h===XBRksX z$*yyN!uqo9TCHDL88FJ&q$We@-ZOx9kV_YOQd_rn7mrye+I@fVeK+!t@OaV#d!qVe zD&Oj1WH&*7ro~%Dtx2=Oh#0edE3$7cO)Eue84yrI+h(swo_1Wem{B z4lM&S3;W1zOS61|K;!=->(Fwv?Fq{Fk9`zBn;-NCT2F+tU#pcoU6I^r(;6vnM<}kk zd1#l5hv&OmZ-Sn+P|xoLc62}CqZtKRxvCzPP*0S(r&W?gyEl=X+#BlJ}_jB}TBct#J)F|2TS!i}C8Zn);@TA=*- z!1s14cHpcWoVQy1!cyXTvH$5iefsB*YB^U?523$Kz8?6(pDv{|k7UzT!{NGuTx2$q z|HYQ;^3p?XuAn{^SNiVk`0>raPv3uu!X3;@4>pE;OWqrSz$vd%xHk*JL2GF7nT_NQ z&zwQwy0hV+-xX8}^zgaulfX@Pp*`mGi}nO7B(5pw+0hHB_Idre{eEEIjTraI^i?Lm)f&1iPpXP-6!F75Mh0E#b2Z3KdIE}*Ot}94ym2xgD(xOr^Ukz-KFt0BEIqE9P zX^&o?)L#Fvxst-=^yyL3o1^Fwtw?RFr_*S<_^Aaa|1J>y*K;X;&dz~+tNpV#cLvEn z3p}v(b{}1rXKR^6f3uqOmVf8BFtGPac%H-It86CXg;~2m#!=TFAszUmz2mvT`C5?i z{kR6kH88G$aSe=XU|a*^8W`8WxCX{G@DJ0#E4Mv6y^O~HA7tMD*92jFvW@IPd$P|c z;ZsNRE$RJ-k&&!P7U8zjIDQ+Ar*hlq>@5fSeDq|G>OK*nO2 zOAJTn8HCf@BL)K3g-)mUjVcP{;=LNZ{!XUnSikh?pJPFP{baT2=0rNuwhu^mcvJvBFBSi^EOL3-=8Q zgJ%!9=h|9&)APc;OX>ZMZXO8kr!?#aPd%_!sW)TYPj`O8=@AK_IR%v^Op+C zyPhoG`f$6cy!TSLpBBhnPd2iRy7aU|e_p-yQ?0?4mfJ3;dix2bx4a;|4b+;&TrhfH zOPybpd#ZYdGS5V%MX5W9`LWJ>U zf+=fw^k?jXnj6QV92ZkK=tkYt^fnfxcNNWBgPnWWmmh8u&E3(rzkbp)&P}vebyL$* z-?Y=*Xr3C`>*iCqujQRbcnc5~%c4#0ET|8JTUQi}<9=t5-umKja(=&|%H5y~w~f-l z_cVj_^z8-q5`1&dp|$dE*WQs(QjO62NO*sk!&lkVa9a!7ix@cN^S|+NoV!3SY`N<* zF|ot>i1$e93c{&9U@qW%dak|R&-Jd%nh;gFc#n4|7fgA-Zivzwp|85B;RdL7VLjHi z3u%7Dbri;0AQ!755_MD4L(ie_ z|IE~%dP(-%1^Gibeg6K7t_v~BA77MS{{0o|V+EzPwJ5!Ty!$5fyBwv5>##n5SXDxQ zp6{h_BR-n%ktbJeee1QTv`2cwl$I~A-VhE}`{J#xC>-qWxvk%Sd*=l8wAl#0E z_7|pg0(>Obm)Bl~lru!sgwej4-b+1)!W}ILw_E8ca{+6pJg0VK`8LZ zybpba?|tDZeg66ha$v@t-=lC}%F`d-anD~L!%O+vN^%9#UR&(=W{_>xH zAzXjncmvTyn85b z_~f=Wn!abIa8-Hf?V(!39YSuK7&!f%-}>k`zRHI5uAp@^^3%(B>Yj^f;quq_(!%}y z_l?g^ZZ^^Qe{_@j{9jxDFGv$av~P?Plw-`(fBk{e&VW0%GIhs^HM#Zwc0YF78FYP} z_2nC}*S6d|1h}lxoN4_5gjK&;N3NFFj&WaC?4QQNN@YX)EcX9emFC}X=)d2t`PWd} zD31R|*1y*<{#Ua8I7f=(PjYDKAI)6f5GJ<`Wc{`B<=P2CeWA!dKmMpwOY2QT`Kw&V z_J1SmugT9(|7(~mqHMPTX9&6Z!G`P ztiN&my;*;Zr;6+M?X16X{BLIcaUCy?Ul-T%_pYJ;uB^Xt`oGTluQ7~&>dRXC#`?Rg zg#VYb{>JiulJz$(-?UdW`NsNRR>D7$^*7G{m$LrG>Hj|KZyewKs+K=v{oRxGH%|YR ztiN&kKPlmV&uf}|WBtC6_1|k)zpbxp@r~twlsLBk!uOBue>m%p>u_=VHGM&gZ>*o0 zS^u9J#(zHRZ=Cu((YsS^HWU((Vy)_-%>-#GpGCH$i${C`=(-|J**p7l4De>m%J+`l`&b8Pw1tiN&jV_AP={aL?z?DW@X{f*V%|M!nAzc1_mrs4h3^(FjI{ehOgar|W^{C8*ljoZ(^ zX8n!RfAW`_eB=1$Uupiv@i%1sZ#C>cpU?Um$NyOg|Bti&#_ju(UmrVv-z(w&rxN~+ zzd3gLb4&R5mGFNf>;Iu)`}uhZ|5JXe<~8_s%|rdA@6=@qaQi{x`bc+mQ`#oZmM}_*Z2Ahs#*seOZ6w z^q(x@|KBD2>p#-UYn*;lG#hnFNgU_i73MldZ>&zr2M1PznEg zOZa~`>u=oNXV{LNzc)(w|Gb2MbM}9Xdjq~?W z3IFr5|FdNre@6-b2TJ%avupWpF}z>6rG)E}(u=M3Y| z{Wbj3_C0%$h0Fm`S99=rP19&iYI_ z*g3dv&z`Bsf_4NUY98LwGDvmxzWBj51*|DhPLlH6**A%5TME*!67!C z{94sT;onid(gH|+UJFQQvUKtrG&kB8%l~Zs0m+@AbV->5h)^}~eny)4?k!(!J^BqE z=OWhE(AMxM&cRf)!JUJB1A}YUZ4GT6ShJyT@Uo#D{cE;`2DWbAzIK;4bF^k_X#1v} zp-p{LF3lZf#EtL9H88G$aSe=XU|a*^8W`8WxCX{G@PDO&_a3(hXLmB;oiZkzP2bPW zX2O|2vj}hTOqdp7!b?6TOct5IjSAc?m%lUPPIE7}w^{cr?&uP3i5OI}Yjy^?xnX`ppQjlTNN;cXl)I>_q zN;=z{$;~rV1k$ik;(A?@44w)xDM+PVKr*J<_d)T;h^CfYK%{+;VDD0j5hSIdCJptQ zkqE6R87@QYl8Vm8qD-2Pp3k|XR3@|vTT#WJGRi4Y_kH%Ks00!zgPL4bV}3cP9w?lJ z!bt@UOZ8#oBic{4+lr#8xketwstiiFf}&TP3>7Nkvw5Xo`=FcrRMjR;(Hs=*Y%5iv z6*VSM#*uwv?dVm~(m#(g8oQqCAr#DXF}~vSmQ{;^+*;$eqx}h0vmrI2*!ePTnyKtqWg)@YyODGe$ON zB%)!YhbymYA}uJL4;4TVP*OLky|D)1D1_58&3hmvs$Cz3~t zsfSPjR0DOrLC#{$)G6v*Jx>KHk6NJ7Am?clmvWwVKm=O*mvJ6T|8mY#OR?*;9BWY; z$$LV@(I8i!$+qSpkpe7Pjj8F|#O0jbGKc5YpXEKvxrPeBL;t*~1-3U)n?dWzoTF$a z>PDsN9A3grs`t&yToJS?(Z^Am@}o+-Ln_K?s-=+IQ(D!-OF2siX#;(+slVoKM|LXLr*s9cv&hK4f=!W9=<1WeqvGlywG|6 zbJGiB3#A3=Icb0T9RAGssgbGPsfj6xlanWTPmE89bcUoztG6jwmv$$esj8$c$Rv6e z_Kg#Na^ORH{{Qf5K`BT(J^$|*`IB-i26k*88rZQ_T+`h>O?if14|n-*qf^zp4(-{R z5}F_>e+eLPKcM3_g*Jswh4|A7gTMEYEu2MmbBmYFU%PnW`5p+HDlXoLbt-PB-%KeT(6XIoEL){-J=H@RnKUg5r1LgEocB532lYK6xqaiJ=4 zVZOxgmynnuDQz5RQ&_F=_$1CzCCf2K$TZ5&vw@c1MKREdFni9akM@#iF^ zi34p4oeIa2h$drK&xruZ^RHi@cP9L(gs@+bm`)C~DXdjEmN1-vjf$|9t1no4?%bv4 zdBl}_E}y)mZ{V{0LjJgfTr3IQ%z-wAE`?*sWgL^8s@%os;Z|-7?a6DYKPe&ZS0t#0 z18oZJ3da&>=FGBH5x3ft-;4gVgq&Y1azGmg+7*_TbAjjbylVTm5^}I&a}5XD6xtP* zmUE%!iaa?-O33-GA_uf_pj}~UIdeUId2&)E z|HAXvu39)}u18!P+Pq!NY=yUpzb+yEC<&g*fi{J$3da&(!_~+qDB^J=Gk2+f`HH1; zGr3q!H#B_%p`o1ved3xur_I&h2K=T(F481_G6&ieHYgk`7Y@!LdsHPXS-x;dRt-Cb zHt)zNqA&x$Es=r$BGD5$(5A3K;juE%s$^gp-AB${JGW=)lEofz+0YIuyZVDtqI)RX z^rd|p2l@st)rstX4RdSloK5xACj|%L5BM;;PWl z`b+7gD?H);P(m!$z3<{co5C7}V~Is+)o#3J>D(UwQc`u#Kwm#i%`Q5}{#kn#aO<>9S%a<-$wAR0L>5^5R+<3I$6hB%*Jl4baaG*`0OW|1JaTQU= zYRgxgPlaB-b9*0pIQ6_9>E<)%R=R}LzmmMk9B5NmuaKlREHMd>Znp>>A6tZHAF>G3 zuCfSk@3jaswld-E=PZKn>lWd?CMKM*g$bYki$$2T*&=-XUW>5i!*b#0_gI9XKbH%Y z*Ov>AUso=iMc;2y8b5Yd6z?bnWI1N(3XJpU~qF`V?-+ z#&614p)-DyP$wAy^dFtj%QkN>5GH0zNRP+pZzKzgV&!}^aeeF(>ILCgCrl|O@}!jP zlTT(*Z>!~*w|w#mypFx0oS$Silxz~6OZ1V?ek7 z6PZ+@ZoHP^%oeInGc`V#&R{Gx#a$MlH(R-yUJI*5}dTgihQXP`BdJzJw(_AKJF{|SHq#oNh-HHxy#-nFxYnNR$vZ!N4+$ed{zoq;TfxWZBKhi1-$ho+bfL}r=%p6- zk-4h?UxV&gUmZ{ea)3TkdG7)a`b|D|83%_#14GoXx9;4wU5RF-*}5{4Sy-8>%Wulm z*VptS>6oO})2*=nqc5W>mEP&-8&hV3iArTINLDK;-Xkg6O33WnzM)h(o6J%L$qJr7XA%iO18m;iSx6hAQRBbaz7^`Fu|O=p|}p&*OAWSQFi`yq*9(pLqz(>bL16rFa684z699|NwF?-R}urizt^SYt6FJ| zYvmNfDnW71qU*Qz(HAItEiuTnQEhCdcz*;0SE9JN@1(SH{KG1&jn|6zCcq1p{(MJA9CvyA7 z&6|#O>6wg6LGCnArE2o%YFNCHy!;D~i_6MW4louF1KRnYcgH;Ac+Q^uuF5J;=ai4U zmi`?cpE6zIM|7v=yyHnc|J1a~9!~kto6L*kRorE|qFlCCD^^|)h?COTV~jJ>JVtgG ze3tCCbIM0PRSwVyV(nPj)oMLIubQipQT)i_^iVMh@C>o>J*YCUdGknvlWmFmK={7`QFZWbxV7-x&-n%DATsPcRCvKL>JMV*bE_ zx|CT;kCDqSXQa%?kIllghpUBKw%LTAeqVWK0e*BXW_t!{a&lK@VseKvqnIWuE0bb% zlY8Aq*3vX~UpqgsRc_~xH6r3^38a{L8Kr%PI_*6>cUa3A zW`#uj^bQ@mSox}Ulr=h6`1RZ3Gz28({I&@vs46qDO^;5>9z7H z{P9O=pwQFJWVF&%$8pPRr`)+PyE{lT&@rjEC|6J|Wy)JeVoHW=q(I(sqr8-oVWn1B z1=UQYdR{>FuFh*$-#@|29{u)5$W=e}_Yt&GeG63;sW7WkG>v8|Gy^4c3S#Sa=FZ`(Ij9NfSy@4v& zTZ!^{($FZW<7S`7B$n;QIaXu(bRejASsB4Vbyg4av(@m7O=}ks?JB}2p zjIwte@kGjD1*Yf+Gp~u@};lBxBCc5t1p4(M-wE$$;079;Ny#2%wx0l&+Q1 zozhO}PH|JZQ_2g|Etx=#TJR_BPmz#Qsqx%spOIC7);I)`GO2;2OsXU)lf*(Ll!#4L zSn)WO<34(WLw}1w`LCgrJr~7yP}N|-j!d#F+$a$P+C2b6cb6QYoh$u*-1(r zpPz^>U_Bx}l_@_(G$Ud&B03OJ$d9NC*no)7kqAp;k*u}G|G9@Mn z?4X}khs#MRXvUdLIe#i-6Cv8`u4=eCU!s>MFeZJ|K!mf_8uyNcV!xy8{PoV$w~ z;M_w05a%xM-_5xj`mdm)o_!Q#G{U+0!`Ep}RSEP4~T&vh#kkxm9K=T2Xlm`8Sl4tNKo)dfjY= zqmvx%`k=hHoojNDt3z!XN_+v1)o|2a$)Xx7gQFXcYBNznn&4OiN42#mj%GO4!clEB zilcrMH-0>>f&aY*MiPmU@JRSQ={@P)Uyr=* zeLeYVhb8~{>Rgg#U2Yj#y=K+G!_fST*KZ+f)9ruiar>9Abx-HzSO%{}fYa-WpuSv-xSB0;Vu1f9= zU*X%6-W}T=+|BPA9gGZm2U7#Vu(;#s*4WnI*3_2%joi9;C=`lb?7Z;MO8?6AitsYA zXLM0yk#|vSp>KYAUTj`)UVKikKY32%9Pc@aGkvFyObJhsri3OsyAqvYkK{?V_q6aW zQe(0qT`RksRf)=QWr~UAy=AVl1P%FjS`I$*KQ#Uyyi)f7MHcyW@m9rzVRN?eb7iT5 zc4d`76<`M(fD>>5)qoqQ0cwFdpdM%d8i6LD8E64ofi|EW5CIAB03ARl&;{@!K>*4C z6JQ3)0SmwYD_{dEfJ&eWumcXj3Ali2zzx&@wLl$E4>SOcKoigmv;eI@8_*7jfCPAe zPM{0md;}g4fHJ@Yn1OP@0x-Y|*nkS45~u>~fCF#>E}$B412sS`PzTfl4L~E%1T+IJ zKr7G&v;!g_0Un?O;Ccx>AOK~62`~fYfCXTH6|eynKqXKG*Z~LN1YAHh;09`dTA&W7 z2O5Azpb2OOD*FjlfE{oEPQV3J18$%Os0HePdY}Pl1e$aA8@(7^{umcXj19SlVQGx)J0VcoAOK~62`~fYfCXTH6|eynKqXKG*Z~LN z1YAHhfpX}^aSc!lVDv`UAVLGs2s8oBKnu_cv;pma2uOej=m0u_E`aYR2tXNN0?a_| zAzD5|_SDg?tR83p8i6LD8E65l!}B@nFbK6kGav!NVFCl}Kn>6YhyXuAumDwn8)yXD zfi9r@2%!?F1{#1ipcAkhUO;gHH_!;Q16@G*2%!?F1{#1ipc62U5-I=}P!F^M9f0X5 z!3H>iI-mvc0D`!XiUrt#8lVXf0iG6JDYF1AJ?Bykpsbf*1sp&v&v2bwCT?0r16f z?`y8t60e3|m0nH05_!e@O6uk4%l?7JNiQW|jJ)W5G4(?9 z1^)}_=VQ+YpXZ;CKNot=^<3iF@Uzmh$!8+Zc%Ml<9evvWbo!~-Q^BYBr{YhBo^(B# zcq06S^hEOU$m8C}Q;$U-^FNk;H1=rlQU1|*EEIFa62swPX*l^vp6DLGHU`@r-xb>B+LhQD-YM-& z4n>B%L#e^&pnotu5E}>%@B{I1DC`O+`osNFe{x6fZrAR_uJA5tS8``$r*~&+C_3aH zN)N^cgM<8Fd>}O78c2l0VJV#KkMw){Q#+zN{5#UyW7~t<`R(y-zHMn`oX2mCUlzK| zby;Fdc#E_pxjC}gyE%1f^iuz&=}oas!A<<8_{Pvi*TzI&xKHX!ZisB~Zb+?w7bY$UU%*`uUmaTQTAf%GUL~zcu8geou1u|nuJEr&FOMw`F6WoWmxY$OmL-;k zmvT!F1;yau9$(MslHMgp&zH}4o}d-2Gko<&E_>!)eRht3txJ-pDjaCAZMf}`{0 z`Of*n^SbAa%p$v~eNNx-tnOJO=k%O&lxw8+Q zC7yNoOy8NKGka$qJwrajdB*VR-KUS7)^pmC8T~W38HY~wpPHT?n;x9bPmfOvO><34 zObt(!rY5}+uh*OEj&}RI)2GBv37*2A5}y*9;+m3}9G)yqPM#b&*?V$oQgo7kQu?IW zNx_r&lj0|aPIR4^m>8ZYO-!B;Il+5EYC?2^e?qz|))nmHyW*XpPFH85Bitc%Bs~$2 z*OQW>l3z-TF)=9eV!S=n?rKl8h1;aIWGlT@--f5OZK&2&o2UubNHs}!#O-ybs-xBZ>a;873c7e#+!=DZ zoC!zRAvu!vh}~;XRYj}(Rq4uDWw4U3j8}vzTonmh*e2PM)`-<>O|dBRv$Q2<30ind zygXFyDo>chX33m1MND2(sw`UOFG~wCAt>-doDcCXKEZ{_VDp3b*VRll`M61Cs`ZBM z4y_F`-qhf7GebVboQqEp6e6@~7RJ+nGkHQl-KKXv)-(%5p%)82-L&Yh=Tg*(%pOiN zoUDTRKQp-f*^f3sW$cMQMpIMfWTZT2IOT-@)Kg9dIitxg5R#pxqni)@4Ix`dql4*& z1#hRhMANvdv!5{vuFV=U%Fo}s)JA3dXMK|?F5RhyWozYHIWOnWehkZ|IMP%jqbWpl zGIQ&Q(6E|Di1rx6? zP&6=k z7`1^pnVcBcw{eC`b-gm3_eXSdh1VZ%J!i#HJ=2{oKJq4ck9-Yx&+*r@QIBL?(?%hW zRo6!63)E+HA??d+w;3hpc4rvYHA)=h9?E`>yRMB&VwBr|L~R#dXfIc5duDM7bH&d; zq6;l*@KQLWx=RA~CH+=eX$Ds9Imi@5$yu(^}sCEW>I;Zf9{fO%>s-$qi8Mma~F z^A5_6^G*ufdlwxYxtrn+-%F|V-%nZWevqUM4^yP=QM5L?uY5glbemJt{#$B}_miFjPW?z7kYD z)affhb#m$}L3OIsSAyzf(^rD()S<5g)u~)x37Jr+1e(N0l^~)LBve8(DxngUU`Hjm zQ3-XZgeFvi36)TVN@zzV*ii|cs03cTkpiOyP zO7Nf(Dp3g%DxnIM;6x>uPzg>{LMN@zkQbf6MCQ3+O5f(ex%p%O$?f(NR1 zL-h?%y$7oAg6b_$y-lxrwe+=m)vHbpz3Nq`3cc!8C#zods*^{rdezCISH0@gPWrae zR7t2FT5o~YtDtoUv|ag(7G8~w?pe~(7FR!?|{|?XuSqn=SN8EE@<5ig||TA z4k+9Mg?B>Xb|}093a^5~MJU`3g}b0|GZgNC!fT-LRw%p`3U7wOJy5s@8m@s}8==<@ z=(QXwwdz%>ma0atQq{?>SE=e`)2mczKGrV@HaNnE==mg-*LtLti2 zr^=qMaSVTCLeY5fN0e3Zx70wyKU3j`O}v8>-8@}G7jtI(Ukd$c3x#VF&*#eM4Ies` z=#bW|A(R2-KrPS!Gy`pb1atx%{S$;$I?~Ho1w4H2rwRV_e;Z0-P2Cf5CFm!I8F;gT z((m#WIhAu)aV90mR3(VZc@;HRPNvq@L#XSWkV`}jAs#AnY8cU_tA_H77CD)+qV_7H zoDkIpQD%s0(2G(-NP1DKQeQhZr8-$g=aMq0SoD^eBCGAlTxyI*3FQED&ZCxg zbTM5-cZ%S{tMF=#4ZS4z<-K41=7-FFcM7m3@_9v(x^VKj`QEabL*i@+D@4 zXGycvS@5Z|qi6fiPM;M!D|i-vR{YG+nXWSvGs82bnaMMxGmf4%LURdvr*}`|rjB+; zy1m`0Q=+H%Pf1USO$konr^F|RCc7plP7a?eot&H$ndF_6Iw^XR|D^PZu@i$Q@+Zb8 zh9|X4ExzwG^FHRIA3kZ6W1JvzOsuA#9GUpIUMBD&g;%VIK2esivA|fY|6tfb1A}7iwL~+WTJbX}b!%vrzoRb??q{!q> zZ&h*v<3yj+By$qUrxZ*A-#w8^hBTc4fhc2{=z}B+3tSzbOwcBeaNO(~D&0Yuk{11n zBcYR%k0>Ev>*?VJM#QoMSCeJz9J1RS`DDueZ`XePPoKog*l$vniH;9%XkIP+^^?j5 zu_|pjdLB2`#B(3gja0YnH#KmFNXorjFa4&Z1QU}P*C0CSRYXw~YoKLpour|d69sZ| z%t?1_lwTkHnoR}pkz5n~ILKGZz1-8JfQD|$8{=fG zpYl*idX-7@h>T6^`J2}4GPst$A2j8C{rf5*$OWfdraI2>Vu<_BfqjqUVnSoJA59I8*bo)L!7x+RtsH5F+Y5tfK82!BV%V|i8iI=>LKb~-QcMBP$2cB^{Ky= z()V&sB{C{0D}@e3ksNdzDS_j0p5Q>+1fSAms93p8IhGl+ zIH;S9ozI87;Y3q%M>|oG2#3rjXg=ge=~KUvO>!bftH~*w;8a5K>MxQj;z;>P`jFL7 zN=6hYzDS12WzZFVQ(&L(Tsq*WW5y5aMzGQ>`7-${N>Z6jQcIeMU=T^?V#bTYQ6#f+ zeo#YTCXxJ|iez;88BJ0Yk~fT~ild@4rc^U$LdS#%B7NcQSNA?;$8oZ#ilv{%%_0*{ z+liS2rN}x*)tv+>O+{ZnS|IF|ocmN4(mOVkBDeW+hebyjk(qd^H@V45vZ`3B_M&KT z$V8=}*gWb^InlMl%-)y#&5*LX;XqUm6?s0o;Pq?2u@{gj8AqHfG-zcKom7=QnF9J6 z1YXSs9MnQ6UUW#AW?ZKdT>*7;K61lGJvz2b0eng^eToxx#W@evB}b$zD?derIjD-t z{LToGbKV6I4JF(bF=OX8h^91r*UUL3MM@|YhhsuCFP<&;nOf#KdN~sV5iwEa6%D7KNF$wh2 zJ2qdgq?uxofv8*N)KZBkD+R%Z#AVGxaWMq-MOp3o)DWV&%Sb{~(``OF*5^^@r5)yl z*Br<9;~E&(z_Sj3@`y^pd7FO46p(=paQ4_ zssKCS0Gxmes0Q3X4Nwcz0rfxw&VXEJ5oiLMffk?@Xam{- z5s&~6&;fJ;T>y8KzyktM2ABXdP!3oC23P?bPyti|Re+t4&8Gt{PQV3J18$%Os0HeP zdY}Pl1e$PzIO)Gf)m#07l5>(+U?GPyti| zRe&9E08YRKR0D3H2B-z2OI!agJkcUh*mRD z4p;yNSOFVQ0aOB2fSsUa^nC|hoPZ0c2HXG^s-rHNfYsfoizZ;zHR_@XSagrNXhI9n z3bX<309Hn{N&r@Iq^_BOg=eWlUQ18Mfil1ZV8ub|kO>xm0a&e+I%HZnH*-OHzXC3m zKox+6IjLhNH~|-cH881TCe#46KpjvIGysi26VME_0Ifh9&<=5xfbV?Jj+8>?L1gyeGr!)cUFVZPZ5CIAB0KBgqr!Aoj zFac(u9Iz0w`NWznbovsoUJISRgi4?az&b5-`Vz243!T0Mtj|KHF9B<_(CJISx-4}1 z60jxyG(g%vB-SFvJs6)VTC#DXOeC)2wJa!yKdhbM_-S<9(d@k~w_qo)w(P#b7rk{yD6MTk$CjNBj zY1h+Jn4Nh^+fau{}buQV~+Dywr z1#jbTi{Bc$)pcv)mhdgon5zUFI_N)`zCLz+@Ou9G_;sP{T-PP84PPr=n>-LX;60GK zCVGwkn)LqI{@{Loe>@V3xFQKTEK73o>d4i2hVI;#$gIT{+3Ve#x-xpD|H||gu`7aC z@K?ky4_)rMJh3OdN7|Fz9og;Oo!S+p|8Y<6jO`5We`yPEPR=CS#nEci+4+EvvYIe((t9yrO8c^P2NqZjnR$%jp@E< zpT94?A+{m7f!`2cA6oBPpI8@OC#_3{A|Y=m)f?^g_ommz)&|$gmv}EpT^zmGe{p(E zY)xkAhkOGU*tn8T`LnS!YiZ|$>p5x9e?$Cyf>KY ziT3z=(o14Xf=l=%@$*CHyUtH64lkA#CzX}wQs+g_^PiVKH+F9DTzR2)VQN8ifqy}I zer$elK0iM`FEr0JFEKYfSDKrg6Pe?klL|xw{y=(mY<6%qKRfOZ`Ca~mFYJ?i$ywa2 z_&K3-T<0Xt4xcTZojfaYmiMgGnb9--XQpSyW(H^SGvjB3&TyTPI6Zv2bb9i%$Z6iw zQZu46{4>(0#!d~MDo^)LPfd$X^G{1pjZF15pQsDhNp(s3$DVjisK!;3aEINJJ6Rp6 z_Ex7{QJ3G9cE+4RC-00qLJpTBVGq+{yUD6ZmA5KY8LjkJrYm9twWX|4tKXVt zF&1Pzi(5h#mnBgiE|_6f%47B4peKX?qynIM2=WuVCfnlU_QCBFCI&)y4&YT#jGZ%*HtQuo==Eh*1)nK&FYB5~Tl*3zxVLPkGxScg%;LaK` za%W8#y0d1C-B}9;@2nN0ch-jCJ8Q@IorxI0GYKPi=J9|X9bjiC*oDzMn}FdvI|1W& zHW34Ob|Oab>?91~*(8kN*~u8hv&k66vnd$Hvr{mRXWbacGcQK+Y$}HGY#PS$Y&r(> z>{N{AwPMV`sGgmMVLdw?<9c=m2KHvV06!BVR+Ac7~eBL z2KH<=M)oX#p*@>}u|1oM!9AOY(LI}w;XPY`@jY9J0X{nyBYbuqhWKm|#`tV82KnrK z0bEiB_F$aPf@W|jM*3_ShWczd#`=F$A*;%-WeZN%W8ZNliEU5ep9 z+l=u)+X4dsy9^cpwiPA-whcA_w%r5n=m7g+24LYXZ~%q?HV8`q8-gi-?Sw5rE5iv>tqS})%nR%rurIKGhJk_o3oH!mUtwZk zqp&fsB#aE~o3JvlZ^6vKz70DA`wk2ZS~0#0g9G~>EDr4ZFgdUvz~;by2%`i05v&gE z$1ppvpTO?Geky_g<^hj%fT>RKXD~XjpL0IqFL>~m0{AN!9@wv8d0@YR>4E(gwg>h* z3;26jAK1Uc{J{PL_6PO{7$Dex!UDmL!UVz6cJRMogkb*-D+K!^%nO0d7dEWtj8U4nfA!-Qoj2h#-OVUu72j1sI& z1WgiX_JHNQOr(FmB{G;M7!7xbHW(*ZMLAe$0jn5jhk=4QV4+}6m?)SFHVRe^BL#EA zO2KMireL*BVx}BZ>o7oJ^%$YB1~=GBR+xz43ZtbZ zi5?7CSO-QdtP?{P)`c+(n}9(JJ3#^`DyESWVH#m4!8XDs!8pQBhINEZhIxcdfqjIX z0s{%_hJ}QAVIpBuVIyJFU?gGFVI5(o!aTxez&@fC<20B^*cq^v(8U5g6Q&ZnSb%54 zSV9*Ia2CuZbg=;aFqqKA0t~=pLKh2gE{rC0u>j}8Y{C}8Zog3zK1N zVG&qc*nXH>*fp@Xumdo-uxnv)Vb{Ur!mfwSg&l;^h1~$F3%e0!7j_fuF6?F)Uf3f6`s_AIP2>^Yca*z>T1&hQ(o=VK2iv!(M@T zhP?{=40{a*8umIYGwcnRX4sps&1l8=9Bee~^Dxq|w_v4VZ^KN(-hrKly$eGPdk>Zx zHUd)(OTbpc-iNVs9L5~>3s@ic zslTA_5pMWB-+QTdBkxM@Cf*6X!@m=I+y8dzt;k!4KOg*j`g76Gd1-z2@SCnT<8K7t zNWUJ%3hl3j$yyPAHTY_pR%!RXl6*P*vWwPe5607nqhzZ{(yE58mwdFMVdMpgtP~+y z&oK6!pKKHnTFo%=Oo%KLFXdZqn>L*J?s++Xe2~@+Wm#hlm3tTkMKe#%*N?es#8CuD&jM1ur zspXO7(((kY8OSe-E%h%=(d>RHnCJ=h@IA35{w1mNBj-zGNeC_G7snR)7p2aNoOhUP z2<8XJa&~yOi>wDhf7%!IdC7JV zp5>b5J12E^ge(V%vqCi2KSp+g)XWIY^iPo0fIlO4y8rYP*$kx95;H#a@F%7Ct#xI5@h z)4G7(>ZB{|a?z@QL1)?#b$A^~vIe;9@v2~zTq#v1Xf;5-B4+cGB_LvztO*t(J3!3h zx1{JD0EyNC44HXzj8*|mmW65lf1K6;O!HBi{g3hgZ+36%d(Yg<)%$py@aoq6FJu^5 zp&lQ;h`RU=o_4hEETIfA0cM~aumB9O0ydxms06A2JKzAEfD5Pw+&~Rb3)BJiKm*VS zGy%;(3(yL*0quZDpd3m#_5d9~C%}&q1fUEs0cM~aumB9O0ydxms06A2JKzAEfD5Pw z+&~Rb3)BJiKm*VSGy%;(3xRUjisLq*9S{Kt@Bke^C%_#c@PGi60Vco?h?v6PzBflsh{8h%17Y#|JZvI_%^Ql-gjm|0t854Fa)@7Go&O-wqy~c_m!|j zS+cbNTD-?3BvCS>4Uj0WvJKer9@~T+FY+eBcI@mS5-(|1B57~ZB`I;++n2uf-V*I? zlHP7av$Vaf?f3hg84v&|m`ZY+zV~^egzuTN{^y)Cb7uZC=YNJ!iFTrc=oDcR??-yP zaBS*0;EN7(#azHS3H0c@+28lEl>pE91ME1Uc?#&50c`q%NZbq54ggvRXp95x<3QCk z;F^6HdA*OIZ3aGpwvj%G%0@p0LEbN*P6I$^?-x;WZyJ>t_$CsEh+#k-|0efPoy4|x znwSB!Swi|2x50RX&d^F@asVRB+xbk$oh78C$7P+5RHVt_c|OFL^IJa z0W=c+=ne1^jYJdCOtcWKL>tjgbP%0H7oigdA&mnvp%6Bril`>+go9|8aE$1LLHMPc z(P%n)xt{P5exiYBB-)5}qJxk^fJ`Waji>_9Jk{K`6Aq$=a1t(}mZ&4#gojWGFQF0j zgpcqO4MZc+L^KmEM62+QW6L29OTsY@v=Qxua{_P^exebF1op6rM@BOt4*=CfE#W8H z2zwl;BkG9;qMfLk0$hYfG!i;dH3K+_MnaLkhdL1rM70-aBMic>1GR)kG!k`_Ks|sx zZ02?+Q9T8;5M4ygG~kN41l5COQdq252CpS%wj^_xDjUp%HCF?EtrksyN^xyhI~WHvx1JHB*3xs0UE( zMsBwf@(kc0+=P$l5MkawKp4?P$U5L6G@_AcC*)qhLAVJY(M-t0fP*jyZycx^2O0_I zG@udr;Z0CfQN(8q0G@Apw`6lf>92sI8g5jx?T0K7ya(M~8+Kn>v`{6q`UML1^w zm1rQ^2u1nIom=CmM)GqKRlGT8LJnjc6x2h)w}4Kw#@48fF0(_po&W zXd~K*4x*FjB6Om57?se7R)I-ubr25L&P`OaiZ!C1gi81bR}_`4C7hGoB9!4B=vKl( zI0-l5C458!(M+@w+Bn0AMxu#mCR&JAqK$A)11_SSsAD7Bqd*POp>v$=P zubD+&)n3g&e>PItiNr);A_omRcq0Ew>Xq;-GIZ$3%i7DCmtrp&(4rGB242j)kbEHs zJvwzfd|W=Bem(+CI`drYIpewPvkB^aKad+VE+_B`b;IaH&sk?g1z5yWL zk-mNIJ8Zw~HvkT4hcX9a2MuW7i35QHx&6ugLFnJ9ec^rbzVt^U(7-dJu~B0*drJa3 zcy4cUZ*XsZPijwikGv;6GH{CT`DN(i6L{ZGH*&LfbLJzlj~LL*6E_8J%H5c}F$mo} zbwl_D`G)lM5oqU`>tfd#*JZCwTpPGHcTE!Cj+@?**b#t^p4=YXp5K<*7KWCd-Wu7e zZOw#Z(9^S_L?{r-ZAn5?&u>m`4sVt>r=hEBn=%_?8;y;VS4XbauFhN)yUMsKyCLyQ zzxN*x2BEp92EqgKK>G3sbob0UJ|?{e{t&K@Wt}Q>5C#4Y0%+g zu-DICkhmZKEk1dE@cjIFsq@0nMJMD8aQkE%*2_2Gjq`9gDdjOoU5sox`14XQm?t z-9Fo%Xb-gK+LF-j^R21YaI4&!Zi%#LEt%$6vjH7H(G+OPH6|N_(DG9a;RYG+{s;Vd zUkZA@>`T{2>b3d|G<`$MdK2D&HwRrmsOCK>PuL?v+mE<4@%28VE?b+Z4b zum3-L?Paga_5taNdrkentxA#xr2RtocY^T`Y>U} z4_A(Qq;k}wm7^Z39QEgmc+rYWHrKd+acshsQC z%2Cf%j(Waw)bYwuFI0|tv2xT)m7`v+9Q8`&s1uc=CMrjzDo4FqIqJ2_QLk5y`efy( zH!4THSvl%cm7_jgIqEZ&qdr?X>T{K&K3_TN3zeh3SUGC4a#Xr<)R!tpeYtYfTa}~U zt{nAF<*0WnM}4Jo)NfUe`fBBouZmf!4^SE+9@3sIZF`NBrWcTq@71c_m7Pp9J)0!w14ynw#Jys5{dQ|f0aZs zzJ;s!pmJn`pxK(D9Ff~X+%38B8ybp?jU67{d30=~v?1TGwvrWO6=b^>RJgRz+a+E6 zE95H3Vo%G`?eto8v0G8|QqCP2l<$*Br(nGx>oO`GwDQh5ahK%6Z)j-r;QrBrWfghP zVWp}hh&$pF3tBk^RY9}SM1Rjo!A9I6Iq*ZH9XU|eTs8Bg6r}#2X)fslK560K{8}`M z` zyXgZi3dg_sa(jea8J#0ZK|zts!Y=6|=_Z`Q^Zw%a7%Tp*x#*_I;oV0^4<1?-IJ@_z z{i8cEEp2q<$W0qZV@F4KuQ`0jk+I1Ba^KmvuqopT=z*g``~vcJDfL@W`0H>z2r2 z{Y+id#;Rdqjq*x0ti%2^aD7aiLu9?+5otskJ4p@Q81eklk&&^Z(V^%qhsL6#2NzWF z1Mj>lT3#$D%AJrUR=G*gF6bAmBvOqxBBv$t&}}1!Z#lGoVY_~yEh3cdu1cg`uukv@ z>Ntw?ZQftp5%(be$kEYVqq|2I*0A16U#U^q=x(t*yj{>GSgD59@j5iRsNq6UzC}c_ zvFpSNZFWH{{eh7E(joj4N4k|?IPt1Du8-3GLx-XZCHbwCl`6#+_KC&$?1Emwz2Zm_ z*K;esaN@PR^h_Z_iTNLyP?n1?OL+HG}xGPS9yZEil zTO<3Aj_lcgC^A+$GD;sbT6rqfkZs)rkvv97zhEVS=7CuhIJE!J!M*&I3pLNfg~M^- zY+$qZKoo_N9>GdNopCN1D1;sv89BJ~(4qZh;@-z1o#L-h$AWlseDR9H4Z#M%t}=0j zTvj3IMUH5uINWj^+$%;H`Noehfi=RkSc&K5o$E$+b1TLeR*>`v{>l|>ohPm!zEDAm zXci)1Z#%bL5I1ip<5j#55fwCR#=@<7wQ(DN^RmpRgHyQppa%Jvif!N=M)?`-@{`2B}M0huh#= zwv8MfjqKk#f{W9Uv8^LVMow~d`k=$gUP(F|+lTuQN+-R7yC8k!B=-*H7_eslNaXPL zL)%U&uyYZC?CmBTJ`_m$1uG3Y<|%0oI)@JL9>vENM^4hlU5f~1&$rn&whwt9fk3)QuDI&{Ss*x)C74*jhtjKH*Ythhe!D3%%KB^ZavAB%Ah#> zRg%aKUyg%_63GU^N)ihPu_=+&J*m|9yHOJV3Q`MuVV`LH&+m&yva44aFwJU#iokRI(vqSmU zCWrFmn|5W%yLRQ>Kd~!UT;ovw@LY#7RP9jyeu+bQ>!3rqX3VK%wmFpz_dAroQS8e7 zJMBvAQ+DO6vR&DnL0P>HB{qSD!o3dVbD7WY{AvBL^pP!vCPOtQcSvu>&K7M)qxZqM zL92H-G<(M!CxAxpHrl+~X!35O#k-9L?>5@I+i31?qqVz@#_l%Sy4z^#Zlk3;Cb9vv zbH{XhfL87{8oAqOcv1!%->qYb-_ChRs^u-jX-lv&_>-x6LlLc)NM3Sx6wY`M)PzVt(8SzE3v(L{%x$zU$24Jp*5x)D zm)mGtZlh_rjh5v$8kXB=S8k(Oxs6ukm{SbUrrbu8avLqmZ8Rvi(VpB!b8;Ka$ZfPD zx6z0k)42hfklScMZleLYP0|6GPzW13n>CjvpNoX$)hX&(t9Hv8)arkI6 z4u?kLaA-9Shi2n&Xg3arhU0Kl)1m1&e6$^hV;YYeG#iJHcH?jwOox`^@X>S}4sFNb z(0CjUt;gZed>jt#$KlX^91ac0;n0E{j&3@J>2#Zp92apkBS#Y2k;ADnoodsun~uYD zXiSbIPSc?|IefGyheLyMIJ78-Lz8kiv?+&U8kHL~Cx?&r}7aA;HxhgRiqXjTr#FdeRk1s_+$g2Oej;8dATwdrtW zECh0GEI3>p3l7)Eg2NTE;BbvBI9w$Q4%f+o!-Q%`7-v zH4BcpZkE9nv*6>JS#Y>&796gd1&1qV!Qt9jaJYIF9Il@Qhbw5o;Tl?SxQZ4WuA>Eq zD`~;uT3T>yrc-4))uv-N9f#@En2ytQT&7cNI(4SwHXV=YsHWpJ9nEy=O~+?Ce$#0% zokr7XGM#2C4j!@DVLU7qOJE&j58qJ<&{b5=#ijKd_)V;MJy%kQ$QV2Pc##q#1f)<8mJ{S zqKW7rdWfo7z(sh8MxveQCKP=GszrDRKha9)gd74KM0@BeWOBelUPDjPXo1tMl=x}L=RCl3%Cd`(MYrt z-NY|-*LXVd=@$6^cMEvutst0uI{0+H>@nl9EG+l~kLDgpJ`#K+|8VNz@Wb-M>4ze)V z1s2#DL~hq^&)gQf&A2TK+y20^t_k4zpOI6NI2j?G5nu^ zVCdk?f#?D0!1#WB|Kz@bebXNu{^;yz94iM-+|ql?)ZWnEnLW`x(w^}VePnX?!0zc? z!@Fj8#&>#mPDFYmQ^TR*nV~3NA&uXxz#<2QP5oVcO)hN~X4X8a2M zipk(WaC%^PVD|F(<=)FDF6+H)>eA4qGnYg!kuDj(SigAkmz?+S?a%bZ`i#D8AQ1=z za=ppkAnf>4tHZ11)#BQr z?D->SXlG=W#g-Y%vP%<7150yDlCbK}_oRBlJ#tSPcKup+#)ugPzUPd|yz~Z8Ungkz9Z(0~W~zs4ifU zT!5+q7RLpsCSY+~fGPqO#|5Y!U~yc4ssR?q1*jHaaa@2Z0T#yvs19IpT!5+o7RLps z1~{n%U~yc43V@Th|5zLsFmL^>Dwzs^Z9 zf)!&b43@`K8!V5hJXju6g|IxPB4K$VyRSU~wDj1f>R5L7(sccvtQ{}Kc zzS6xmwGb=D)I}_hsgYP7Q!lYRrgma^OdZAYn3{^^G4&P8V`?py$JAXckEy{}9#fC8 zJf=2dc}$(g@|c>9-*^(V_?YEhQQ)TJy>=}N?ssaIJsrgmj{ zOdZSen3|U5G4(CWV`^QN$JD(nkEwxK9#apqJf=2gc}$(m@|c>LUNgL)bK2ispnZ9Q`@sVrp{-1 zOwG^onEIdPF||O;W9ovI$J7WdkEs`09#cECJf@Clc}z{w@>I>N#U~OSq{B_Ro5-dX zvc(_`Ss#>YdaB4})u7YC%@t1atXguFo5ZpR;Ds&Z#ckxJ9pvR*WY8ejNWI{oLSCs1 zgAdh_Ne}t7mwcv~e7Ti8(M7(lgHD6!q5o6zG&U8Yim($-!bQ{)b%dMn5GtV&^@NXT zAR37#qM2wR+K6_dgXko>2%Rv9ZbF&?WI`cqL={m@*a-(wLpTW+QA^YjZo)&Tgbjt( ze72hWyo3B=4aIo5`4vC;^;YuRUZk%1GmUwgxcQgO+-xD*hz>$045FKmX8{{gMN|_G z!b!M@TB43{6CR=!d29ZIA!lTBq3}> z6;Vyt2?yaKY6&-?5?-R7@DU9}Be8@MG>MxvKuxQYn|0jm^pLtn_V~$V&E%Oapi`Q_ z<~L-}sSq~$r>eYUuwR5BdA`E&3117X$LpExcTSu zB=|pU{f^l0R{i|H}h9z1;l!dh#FrWWJI7X*2orR`Q?gumFO?b-No5 z4&6;y#?Q;m25u&r$opH!2inMoI><-5$tR>)a9kmusv$EdBO`i z>$&-=pM1TA{In)*mTJCJ4?2B>pJ-#?_dCcxbn4)r*O7nWA#*C|)QEb*Pc#xuL@Uuj z=tK{p3;@+c4dEi{2oIqVexiwJB{~S5=pmFS;MF1huYBZ>8pxkClYiR+I@`GU5AEFS zjVQqbnUk`Q@8ej#-{ zcs!49Bm|z%VjTqyUq}c)o5v~&0el}J_6bd_p&&n4&O&Gl9}4rLD} zuwG&AK=MHFKz@G;D;CQ8)B7U(w0#+@S!jGTJDL~`jOMUvVeppx-qhYO)-6o$iR{t# zWJY3GxiGssu{*FkyDM?Zs~2YQRRsCQ)D6KKa`+~Kf%Oq)@w_8+O?=1X_L*(oZ3A1Q z;fc`n7HLcG=HX4_c&;&fm3~!dLwx<@l{0vjF)$ciJF#Z^3h9d8;PAls0LQ+R`kq?71PV5 z<-KPNFB@MvwPdzO?+JCsjY)l`%iA^38SR*8pT-oE-qzuk@#d+f*+#uF)DZVi`ey3A z^#fYeJE2Zv3Sw{B`u}om+7)qWu8cE=mH)CeiJCx7&XL60e|dY#9=6N&G*9)0)c?i&f9V(I85ZXkr+rdz?V6!mM|O=3T{F05`YKpkve1MnPb5`;C~{zOCp_us^Af6RN9M~&GY`^oSR)QZQF3=5T%|} zV9g=|e=G!&PKopi-iA4XV0oZru@r@IqC~OOEq^IMCLXclY_F)%GnS`rje+Oo?;~whLCOcE#g-?Oesn zr27|<{sH8kC6P|S4#7QAL^>+%Uoe(o3U6GO)&+NL+&&cAx@9}ANE^0nF0cFrrIl}3 zM7#`3nHGtJ^%~e9I0VbJ5oy-~@wB&6C99&_hPG|EVX*%Krm`-Ejg~ajrtGh9F{DY6 zAG6mfjZ_6An9sQz)t&bzE`}~CxOMH04V$+FdV3jf32L$geS2P>f*{lc^KwbkMy_6L z??{Vp{k9 z$iclwBYQ_mEs@@9U!;axAYp|>x&)gA4`6QU$!=g&NsV_(sM*lAwL=>=ZyVgYeQ<5} z8W>CIqX&UIu;Qgg4i=8(k0j=SV=f9yX^(xTL(97xuzid@CYa7mWgit zP|>ET)1WXpatbyHR%&3@+gm(@)~w&MVa=ep7qJc`<3q(M=u1gjBIpuq6s%NJo`@}? zrokQCw`|)U+`7G64;~#m1hcclW2G&;d=a@cu`q2OTsSo)9KK{Fxx8KU3%Q$u8#Z_A zn?}eQ3+p4Og<+w~dVHTMm!z9X(hoxoZ*0v>aL{Y=&Hd z&4QIA^N6-2&p(sJXjLj%UqmvEhn8bN=4nitMn#n*v(6o6o!1VPoyHpuj*gAOhM`-+ zXH~2dYw04gX_lc2vkaG@U$ByFj?fK4c4+J1`oSPhtI*+*TSg*sQR1>iB+@RUTi9i| z1RDe^NrbIiyh%u0vt`T1wOg*;tQ19^v4|*IW9Y&f!zJh!tR$*fxxwqUZ{4wWuzhBz z(2SjnNZJfZDkj3={*^K4)zH;1pR`$aC>+%Ybp;;nqhsF9E=N|0(53dMgxb;_PQ3L*E5@{Fo3-Z=w#tv6B**4qRy^EL5%_+^n2O6y3If6&H;V z9eBH0HPZsOyaQLw6Ia;HLI?7+UyAXC9Z0HzW(O{OeCUePG7KF!g!{m;qYF*_-ap$C zP^ex(zF9p@l-?uQQL@cvO-Jyrkjp9rX5q9cJpc<%3}+SlZ}mKxmUpiIIMgl25yLu? z^@5e^Xqwy?>lod8VBsMubVU?Z*x|x1nAP+P0m}sSlI>rwnuRBi1(^^p{t8{makdqm zNzIgO60Bq^T8;br7HJo4Mb~ZFx@Hi{6t10v`uw`aKj;%uigmTTQoq=cg%p#8m=AH| z#W-t-F^gGPe4$z#)V*R*wF|lhEA?JY9QT#t2pz?}-2BQ&ADm;!uhfVf%n6A zf;(}1p3EZDycq2q899l0|GA4u;z+LHxTGY~BUnk2X@^cpM{YTE_#_oOZxL}EMC);f zMRBAmSg9EoJ<&fne-U{c#Qk{gMR}wq$g3Wv<63#=oVaOPixqapu&xH~TTa$>;z1Cy zRO&j8qz!o1MTum+U?qv>Xz0vS`xYK87or&cRT9a;yi+0_f^NY*sNf-tX7m0q zn(=D8hf4I}{=&7r^xANdm7^f8Al@8RR8e^Q0{+U^hKuKkE9`IK%;VUtOQb{4Ejaq2 zwHp<+>pNNPE}18;AihvL3hERhN?EyfTzvYtKenxXJx@phxhO zs&~@<8?Xcvj?RMoLiH%AL&zxQuUx(0JaLwHu6n!#cS@u~&?8vs=rnuJJUaVN+Iv^b zlUI;ms2(M?3mI*K=JxH9S;0c1ScSwDaUHtd>OS5Dmfx4HnJ3Ni&ee_=`wsE4(IMy- ztW-O5WU*>@vO{z2JaGl_g>#SM+JuN!L38_8t=!-|X_j}ca=fGHfF{PSBi(|hQn_== zDpx4C-2J2X?aIhM*p*+rXICEnd%M!?b||0zce`?79rX8qvnw~$!fwCSq1*}k|62TB zg5JO4LWlD1a))vyzHj3;ELqT|1M4km;3&$I2~N>`}g8>aJlcj;&gDi@BQL*aJlb; z;&gDiUn))qm;2@7ba1&}DNYBM`)$SP;BtReaXPr%UtOFIF8AAu)4}C_M{zp1++S0i z4legQi_^j7ephiixZGb`oDMGc*A=IO%l+=+ba1)fQ=ASi_p8O};BvpWI2~N>*NW4@ z<^KBOba1)fSDX$m_xp>}!R7vj;&gDizp*$ST<&iwP6wC!n~T%I<^Go9ba1)9wKyGI z?r$qj2bcTXi_^j7{*K~waJj#;I2~N>?UsjwBF87~NoDMGcFE369m-|-~r-RG=g@+Jxr|jvC(=Bki1x~lX z=@vNM0;gNxbPJqrfzvH;x&{7U)&i3k&RpQVVBq}dc@yVOpCg^q+dtel9+>K#U9GPU zogH5_xpL+#?^y$9MpsNMpFTr6qj%Zx((xrzJ+s|`aDt3G5dY) z7DvC^hVYeE%}th=fqr)WCj%lw4+3%DT=VMjLwom?d65aEJ1e{ zOXy$;dPxaY^Gk4)mrxVJBbnc5&w1V`*cWs(7^nQdx&68a`}HVB z?|a0xAvw1THXNvXlb#-20M>H2$5t`2@i(`BuR`>rXd+%?qH}xK$<})v`*nOSsO3L? zpIm6CH_=kXj#9B7L%b{=FGQ8JQUfEy=-T6+m2k+i;QIUP=T)K8QvFHO^rd#|L(Gk4!MS3M^LZ^b^b#8&(aY*F5$ zb1CddF?tUJ#ZJ56-GTE5CvhJd`~>pws4PFHYLV!`T2a)ia|P8QaGQa$??Ikp*u&T1 z_91Wa9B?y95Av}oQRG}+SLt=-|5!VTHjau~C}43vJlv1+CN%p=Mnt687%IFsTfNqY z-CmC!F7~e%u~z?T*hH%p+G#CPu?>%lmMG6vkEAhEnh%@X=8vX+7RB>1ihpKD6-726 za+jI8k(rYo+yfW7w`}K{iYc41dA%uyb-rh=)msp8jdjv-)W&!q8mTC+6)8qdd2QId zmVI~Js+>4L=E`bE^hemOkK&l&=vTZ1bTF!L!k0E+CnEM*4UaMD`i1fp1V_viHf&zY z@w2DoxT#{`t7vO#8sT|6UyaBSGqW9=J1`pKUn|ZjUSW^nj5~p2mFG0i#^TZ8U}7A$ zJdqdlKn)_T9&loF8`Fi&bfRr|!my}f8@iBepSc^gEO{l%M4moz7MPb*YZpoyt&WAC zz<#ksapa-E;%%4%4L4FeOx;XNy^LM65~uR9l0mNqX-^Va%go#1bWzn#h? zzLoz*@EhT;rM{Z|O5)w@JH}hFFDKKfN$rdJr;=|(Ue{jBOk_`_UpAhNJ(GDd@kII& zDS=fb?~Wal?~2`F+#bGFI+Q&yHIm;obz}befvw@N9Fn&rH>EaeS5I6Ky(n^F?1JF= zf%AgrCi~-OjrUBnrCU=i$>u~;vN6#R^GAGv`k)r{hSi8C<_^~7T{&mIChw4>AK&no zH`VzDq`$G=|CibSpUl3Ewkh4FZOZm7A=qHTz#H~BV~3)!6X7%xUBBt}^9Q^6^gv9Y zjKB9!i&$3t8LBC)n`9&L&&0B`nU>Cae&4x)JIoIc!8mQ~mJyvTvu*6~(OqNs zP+X~%<$FJ0WIwC%SZJw4x&-}#A7=G(YUZ8q{bCWpc8FXikuJez!AcGE%h+oD^CFTR zkhvVIV^K2MBv?uEsn}|vm#tIbUlx&F19@E%=@P_;0I^+3_9+=7{_7$loe;1DtAJ4? z*(g{^WVspOhuK~J??vRgAgfOzVSNmC2v(B&s~SQ6+ah~W3&~3)(k0j^SZOcHYyV+J zkpI4j+&V~HCXp_|Cc#Q_d61o|5#)P|NOnV}E|D%ld~6Tfl_VEOyLsk-Wj40&FCx^NK6K}u`$x*eDvOA%hma15gefhE zPw{<-SaVe$8pU71T2kf}^Xh3^M4%7FFO^7G(1MMEmFme8wN=z}U2yZzHnVZpMGopm z7Bq0xB7*%8)+Uj#4+mi%4ptJ(A=zsR-nix3ZhhVUL${SRZ1p1I8c_IBiG&$E=ohRc zjt8w-&ox^%Z{NCQBhM6CcI{talx|-{a3h3uN+gWZL9bvX!R%3=sOKiyW3xx~O``|P zs_IxoVv~?a!T?=JBu_zN@VbJ;$n9kkYZj5%jPkoB5~k;%Pq30io-C$e^12`wzOsa_ zgUxE0ROcd6TOg@NB4L0HHV9Ud%F)j}MY*!U_Q6dd)6RYj=7?otU5kiqg{Ve}gcUZZ z3RV(pm+UZ+>5|BL!BdmC#+10GT%vaoi8`dTN~BBBD_BV) z4;ha*WP)oTFSu)0*_og%BFumo*x(9bWP{kQB#bAZxwObN*Ihq!)!^2vyY*{szhl)$ zM-J~}C9y2EbvIwXh}>?-YLiHppe88fwjQcdUVXx$ocllQ%6DM@AI9%5Ryvde_$gnv zE6;z{t{8VYl+S+Dp5|nCivr;Af@#SxS z#f|y@`$v@G&CEoPe1;Y`{WC*+x5d{>OC4*)V_+FUszTU^Dx#XO6Aq$=a02tPx)@$d z)DdpNL#Tw8(1?1%NBD^bqLFAKnu!*om1rY6i7rAX3_{k2v7>~Is3NKfJK-Q|2q)nJ z=Iw1Q!|Mn);UQGQOK3zr;UoM+1JOt{5zRyk(Mq%t?L-IBNpul9VG!MfJkTYp3SlFv zh-$)4IEWfx-rhPH?jmZ5I>JqO2$j%?dcsHei3XyPXd;@47NV7CBie}$qLb(%bV7~; z3SlFvh-$)4IEWg;3C!DD7sG3bI>JqO2$k>>8c|R92&}G$y(MUdqSE|CrP+x}a}$+j zCMwNKRGO8jG$&DMMxxSuM5Wn?N^=pFW+EtMHA?~bkySzAu6pwR9bIaFG4sI=ZtX|v zPa!NW%7cX6MR}00z9*^Vf#@YBrHJ6gO=z^@UO@o_lVpHd4yV&gFW{249(Fdjzl#8&7YB$-ZNoSVF#1M0)bHu(q;dJF^Qz~dM)Lr-$NPhx1E zeF`J3^a+&WeFmfV__G*kd!I+i-WPc3d6C2DD=2Sr0%7r2QQq`x6#hDj?|lPFCf-D$ z(x)-B_I?%xOneT4q%R`f6i_>xM&9UK+?Tf@ZTuZ19)1@U?fnW11w7-w#f!+-kaubd z^&S5v!PQpdh5_N=|@DM8DB{ZU*@DYBZfoSy}#MOpqCpw5uqIiivy>+?; zPPf467C7Ak|KDnXnPbUg!DIQmQg?;#lJ8328M#xtGjj*t5#N!$J#l;B_S|jB+k&^{ zZ%y4AzE!?8eKc}ZJDS0I{D~uhBe}!L!@a7oAphzS5M&^g2U^3 zuawqJW3Bz@6$3%W#+8dS;kq}GZSY9&djYyt_ZHkFF*Nr0YgjVCF!0>kJgjvj&&Q|StDTt zjGUg-gL=Lz)fMiNyV9MJPOUT35$iBIvh9iXKzpt&*%oZex29U7Ek;YWInf+w&NU^Q zf=&6xRAabNZcH~s8nlLtKjt_5Szp2z@a5{0^}+hQmeRtStfjpXujb9D-XBUY^sW;=+st)Ti#czL^SrDHTJAPC z?kwx;>lOU!Wm!^@%!g^RWr5yl1nOl$Z3wExgc?jp!Gs{p(#1_@p%|8!U4;^RxWg>k!3>2u!ta7#MEDp{*b_uF79#wt*jx)X z!KbmHZfsO;N(s5!c%U(4$mM~eZnQU!g2;}5@PRLDSq9CVnhVhTHFquU$slsr3tc>(iVT%?_E@Gwhm9?u!cGjXL`A)UJ7A>jiRJ&}^l3Gr+ z*A^|wajG4+Xh{vx8zd**Cy6=9=p8Y5wjj_gtYCPvfk<>2uXPCK1%ED}g8{gN&IL3v zK%etAvK&q{7iOuVj8+7x3yW??FfZ71Svwg}T68l5ibeb3b#qR6A4g^EoDTsmTm&%D z+dRI^k+}=O?K)u)(l{U!3SlFvh-$)4I0#Mpq2$HRl#Ke;@B&fIvwvM2scG;9nU&JI zLM5a6B5CW#OGfWS()xN!M(IV;D#InC@gixxR>jNC`NGJGx;LG??v;`|PhR~>$+eTW zK&9mMCvSvG$>o!`L#5;@nxdiX1S+%xhpNU(4N);iO{KP|n8RDCIV$GRDz!+(97gD* z2Zw1!H8)t7*8D*kUoeb3pgoZJSnOlQ$Flb)=6%C({3p@B4*g~CUwHp~_J`X4rT=kn zcHjr0-yi;7@lN2K+}p{wgKy{GO1%|+OMWZ;<;a)w>D*-g zi@7gkKOgyA;IqNc1U_wiD*Z;}lT#D=OY!Gso*H;!;*s75rsAPvGq**LNQb6A8s9Up zQ@VNT`uL8(j@;JXP;N_dOK?kmb82&DQ*4v5DZ4STF|aXkb?&Ok{h%>vDtgV0vw2t+qC^CblMgg?vRi7#lDKvX>_=4_uzREOlw_lElRs%7`CQ|iOkXaLTdl1QuS%>8oE14!TM=9yS(aUzUlLgo>B-`GM9?twOlPFSXwS4p zS|Uw>#+*OtOKVwgR?T|S?l5Nlr=8)Nyggr)vBmJp|EaIpT0RE*|5tuiqW^~;m;TOp zNa+8~6PpX8j=1^9G1xH~#v2yGAf#zPA!=rU?t!fcivkK!Hx8(TC$tUkEeM_HCR(FF zCn3*V!}s@ue!Zmj5LF?-PB;k<(M+@w?L;S`6Fr0y1*(Y}qL%OwUZS4x6OBYO(MEI< z2C;;&#Q{4}L+DdL58)ZdtO75g5%q+Byc4f{2yGVdKu>cX6W0b6n<}4ysI3GaeW>k( z3@r>VjQ~DfQQZU|aj1NXqVf@j$|n{oA2&Eph_a}}t9($P@~MT&=L0IAKj0M@z{de9 zA2_IdVxjUmfXYV=D)oGoYQ0Lu+lhxF=s&8LDpg>W`nO8WQl-|5w`KrUUX}W|N;O}l zhO1HmSE=l)RB=_R;3{=}mAb7;rAoz7 zrGBYWdsL}ps#GCWYMOY@C`u^RBSlFCeNlL*7vk034+~QpLk+E6us>Jjqt&P&MS%?wHac*msjE(+%az#B1~ zngH*;RNf`2yy?Pu0`T5O<-HBg7=ZUSD(`Jn-rK0Ww^4a-qw?NH<-HAdf!ZrV$sl2wUytz?%slura@csoS8fwF9v&vf(l@}S6*It!(Au6vRDzB|7Z!}cT zz;`7F4B$o0Y!fKFW`d12g@TM;1*s;HNkuBBQ>3Y48Yk0qF^xQcG&ZL3GL1{5sb(4% z)96g2FijQHXiQ@s40fieWg3HNY)n(lH1$klh;kfEQ^z#&G}2Ttjh$(HOw%LM)G&>k zX%wcZW*P_6I6^qo@39^*)WCx#0(wF?^p+4yiH2#scyA<{2>SpILI+Vpw0LnOwi0bb zX9$O57Xh0s9;{>RLY!N6$};c9yHToJMOp4;y$2+>5Bc29NbT-GYPW$i(e0giL~?86 zk4bJ1o+Y{6IEUSxz0V+a;#tY<9DZJMx8sy{>o}#c^#)=m-$bFkpGIDs;cgvgxLc7X zDdS5pLzwvn1nJ*`jM*v4-97PbB*xk9?wVL3yQ_!KDrooS9(o2=l?Swq&kJzttIJa? znY>dfOqHmPVjhBR22&86A|!W(P~^W=YkPD9Jr@RB|M(GMu41&@WR_|R3VA6=zt=qlAKhFf$M z>iI187+s}yarEus=<8;CbfLd+fqxT%&|erpKZ96~$kpgC$o&!)F~GTf3XBy_Bu(W@~#0mC)JlOW5wUZ1*~%iU(sgp|cyh*$qB+ zgP&*+TkMb}><~LU#6i>$RqUE-!cJ7NlNxbSsZE5=?lOp_>@#T!sAtFdh$i-4GtokH z5?zEYw%DyYv5aSj%nnuv2hm+TSqk0JvoL7s!XQWSfGA|FSs3J8800D*Hie9}3xm|+ zFi}Y5T^Q6}96JiBIu-_bivvm_m9{X*j$_67x_LnI5UJ%c;T0Xu&b6^$8`+0W(R1vj zZuW@G&S+#yFJ=20rA=iPXD@98GpKVG$NvdFm&dJLo4$vK5oQ>53m^9tkS*T$b3Eab>r*VuO+?~_*(9(+E-`3GWl-gUG3e>JF$0+ zcd~CM-VVH-dn@@?@U8rpgJ1T3X=ZZri}5dnKCgdn_A^tT9{<$vo0yID$?4Z7UJbu0 zznV@(Qd%lA5t}ez_nbHpIFWlL`AYDW{L87A!!OG(r(cS^q`j1RG4`VIV)li^3xOAM z$CJl{$Mespo)14SKc9Xs@|^Zu=GoY@#i+Qk^8M-iBKK+cWfHN3k;ujq@jyIxZ}Q&Yy|B@~ zCwz~5Px|i2-P+xmW3gk#vFu%my8?IR?o8epyfc4C>W=Uo=6m_TZMj>Mx8{x}j|Pv% z#*Ddl@`1xrZ2C~*P~cGRVDez_VE#brKyLr^zNwE+j!xVXzD2$zy*IK~+nd=F+hgp> zjwD6`Be~tl-ND`YU8!B+UGlE<&d5$}XC@Mh7?JF7VmL6I8%hr4Zcg4DygC1o)JMX2 z`<}ija+7vb=Em5K#*Nt<5_k`vyFPh+@cR69#&y|i6W0c=&0UkcCbuKGBe)~KJ+(c& zJ+&>oP2QH?8riCCjfAyuCKL-9q3jl8OLlW&b6|6BQ*u*oV{&6~WB%&Y)#0lXR|T%h zZAfkiZpg1stq-r4*Qc+HT&Z1|Sr=Pptji821_Oh+waK-?wfQxvHQ_b#n)DTsE3_*z z!C24;W(N`jfq~rR$;*S6=PyfL7QRfrEPbhbY5J1LCE6vKi(?lX7iTX@Tokw{cVY6v z;Dz}MQWu0TkS|D!c>uX{C(ntTqn(rKkM$e<*}g2 zk+ajQBCE7jnU%4X#>(tjiL(M{<<3l=89Xz#!dQ`AE-z1?5jjIUBeN{FEVVSeR9>2f zZmliJ^u&4$XxNGFKzGhaLeI|YDLt&qdb%sprFCUGW1U84wjYpa}FcP-9xGiBVEU1IwtMK{!^cC<%AYAiS38xvS>;NK>kc9Bp-oQ47UWsF$H` zhL)D1G1QnClWI^a*4!)z&!dnag`VyTN-M?rMjh zlB)5p56^GS*NFFEi)&P2b(BJ7gsk@H)6xp>cuHE)uD>d+(Dc{L-Z+)KZPC}I6|K=P zNGohJUzS$XdEb^+RO#Fz8 zIeNb-t+4A;NF4ngc*g^F`cl@E#_+A8%?mA#l`G5J96iSFZ5_WuTHcMsTFc23v@t;s6Y#}BX|Gu& zv@^jHCTKf(f(|BV=-p%P4_BNq--YmnGLD3k?U{JTh`no>xJ5dz3ZI=kuf=;vI~SGuHS@GGPZ#r4F;5eAq3tA*xd@iXC-R?2-1*r9IpMDdtFM-}$gr|&4~2CSH5t=c2*r?lQ3Qb!|F zG-DDs)(4VhrTE8##g7E5mC$vPhjSxvHzi&&p+lY6!l`VghA;*H#dw3X=W3JJN)24~ zh|79$1-GS4jniShSwb-%@{7zYhuMt@JR!A~>Y7W1@Sfi5r0yO>`g*XROu#i(jnX8_ zz;$ShY2=?~c)O&zlno3%Ye)ePX5ekj>_aAJ@b!xZ+IOX-!qtP)LX zH7)k34bODWapOtOISqJzb53KgS3aj2&uY%`p{%yj_aCJh#VLrK=hq?U`F`X)zX3VV zuR_lA>yfjg^rb>sPG)UE){AP9^&%g#UgSsCi)_exQ4_M(h(^-tqE+&S>u zQcK%ZNOG7@9J_kMc&tM>#uHMtb$y21=9!16fG4RdK@F`5MHnk~0 zSZejc>Z3KpM-bjKVe2sogOAqnr*VSd*`is0E&jUXZ9|v?EoSxyYEq9-pX!YuW#L|l z&0dWP`kd2o$+u+UW0KGCJ|y`XQB|J}RrNKXsy+!-_4)Lqg%gQeSO_CK+E*2l1~|i)b98jCLjp)W|j z4%FAzhWh$^({D*Wuk?=OYaM@A^4ZZJJ|`;etDEkYea)z}PeG-91}g2-LN`j)95CN7 zhdb1zruRlpfifRzwoP}+csRplNzGNxS}^_~gB65KTnLW?7MF&@bhXkEshtCsQ{N^z zIrr3w1WbyXKuBrVucc)T$Im1R=c0n^J?lkO$HcW#n{#Hc7;l|j7^^tBDvZLA7Bq{h zMbaj|cr=4qB&QB=kULKl*wP!~-6USOi}8;`Yhg_`9HH#h$&hqLGg38hdMp>X!^&+U zrU5Za8yREGNkwWO!n&Fe)`Z%NRDOooqw7kgus*F=CegrdEyeDbw}m{X=LRNmc6!Hm zNcCugm7;mLyxZ$6)x7SQ*No2SW~usB>=`R)?YWTKHGZ?y(mviPx5zU<^$dFMQOCKc zfjP6Sbg5Js!-$A9uuIk|j&tk5Igqoq2YY~P!(5;ZIdIcHuY>2JYcTLE^-iqgu2E>| zl8@RzSZb<|UL!R*kg7?I-XJx(Afu^$>SlN)e6zi4`bNovc_NtShufvXinnfrs;!uv zT)KvM9Rhs_oJ&>9fVPqV7Xz?@_go5j9OZ~5y*bm_^Tu3+f{3P$k^l#?YVD9$T&dg6 z(n^c3MnFR`9>>7EkOk>`|6A~n1AioAJ-NsqhJO(Je&7#sznA#k!0+b1m;7Gvd-?CC zz8n5-?st;Ello5h+li_4HzVKFzM1((;Op{NlkWuIiM?&S9e6AE<>Z%wUkXebUx|!hF_FlOurC$L3<%{Ja*hTo_#*?eBk-qbIIp|&*h&@JsWG3xcu?-W0A+S$1;z`9yK1# zK9YDO@JR0AjUd^S0=9v zUYTE)S{Gg?uS*X`2DQP=+SpoSZFWs!O<+v~i|u6w%=h`(OB0s{@HRhrN%ErLMfnR; z7ltpCFHD^q##(*B{zM=Uh^;nOr&h{m^)AO+|J}jvypb}(hHRwuh_30Gu2`4RmF-M) z20C*c$&O%0zCG0*ZkOBBZ8Ocu=3sNaiS`3Qe_q%PB(#8*RwF8(8070xb>UjMHtS5_ zt-o9&JJNPO5zz4VKd9uP%ies|s#iDF3`?tz+JwF@Fnp8rZh&jRV6Bbu^`^#&^V4k_ zi*_Lh4}<~l_(nY4Ch7?v;U^5lTK1&fOxQy#A>>J*foU3vCZd^WAr!<~#-}zWtRkuj zJJHHCZA3fKL39#bQb?-i;ARfH9T;6PTiJXK-x3WWC((&T zECzPTQGFoL7<2}MA;-H`291GzbAFS-Vz3#UE{^?mULj>q866?;d|>R9^Ro-i&n`DV z`|jw$n}A(;e)gczQ3Cdl`PpCRXaAg^opFBl>iOCIMgtd~w~wEXPS^0P~e zbPtnJ$))9ImzJMhT7GtE`PoNA&-w)H*P=WB41FcPmY@AvR2844dq#dOKl`=(z5QBV z&U$;VJgT>k%A>aWo4l{=QKI@vz@8y$%4lSlJxSD*5wJ&ys!@+C!aIZg4u1AP(B%+# zU4QQ4`@K#)`w;xx?WX}z0`9(3eI*Dmuye`J?j4#FvWya9U~i6}T}L#8OTc~|KRc29 z>=p8}hsV$EBtQFys16gbW695+BC;w0dwr-jQwzy19=ap+4nMnir~;kNI_jITi-(Hu zc~n@)#p7oe4}H3bfLuI&cJcVx#Y6S*DvE$yJalb0bM3g5K9P&Z&n_N6yLkNU;-OO6 zLZ^|7$ImVvs!!DMVi!-3^RVZcpBz2{#qJ-0VrP&*ZQtR+t_IKH;oS>%S@_upLRJ3@ zvKRyVH~j2spfOtl_H<964*PmPxT{oNK zW*>#0d-_yt3E1V}=RUum9S3w{3Ap!9znb2ZU0ScZtItHgBJ7l)8%~L^Yr)U%2|xP> z{On|)pAv@OJON&c-2L}+_n&41Z0kbs4)*lwy)WFC_p@uj&%OXZ_v-z<9Ri-LkB&ZP zlDhd0ck>tzQdh-hdcRnlqQ{UC*R>tzQdh-hdcQWck&(XUud&K?10t4Dws_6GR3@dgmZo&cI_K(&iK z0eep9eD!$>xeef!gXb@JdZDf5BGwfOm{N0Dkr%cu{z61CM8?fagW% zdfeOE+4qiehu;6cQ37~?;LRE``VRl&mBeA=H2Dqly}d2 zQ(g(^P5m$3*3@l0|GMUu(9LZ(Wo``K7`~z7y5?)s|115~;KeN$b#7_clDV+;g66u$ zbp81?=PTzoofkhZcwWo7$#cW!ww+UZPUSh7v+K^TKD+a*hO=tUQqF2RGk#|9%$75f zXN1paJH7Vw%F{Ea)t%OIYF95+Ii>03IL!}8)mGMKQgx~7RC06GiJd1joY1r>zA3n= z<@n_B;p5wmt358dQQ6pZZ2Z{Zu`S0Wj|m^sc69AFJ=n?(ne}z+tJim~YgkvaPFdHK zj3-8QS1=ep0VqnQDT=~Xp>Xv?%@ zuh{_Ahjbp?aB$7R%E3)j;!}cCS`JDc6h5eJa_!{G$(c!Yld30m9@ubT(*f}V>LylC z?A*U$|C;@k{j2xu+_z!ht{L##_M5xr!Po6wy?5tc)q8dB*|2BLp30t0d&Kt$(!BWO z?&00rCe%)-{9jxXpmS8isG3pAsHTzek-?EIBa$P+Bie@74zC=Z8CEx}dRXVshM_e> zm7z^T;zNQ%S_UTvhX=O}svT50C^N8bVD-SxiiV1s3ZEumy69BM1CEw3!k zl+~40mvxpll-86grA-6k1A+ruN|GhvlD7V}{VV%titCE2i#v-NifW3KqNc)lVX&~J zAXyMDsPy{v4Y_Uo>Vt_u)$h&)sIlT^&}=c1M%ZZ6YxPP!qt$5{wN9;8J98RxYI2mE zrtEljFk62A|34r8-Mz|;p=NQ8*Y)=xwF$e`PV_!jAkO{&f%Kp;n3}_`*XljbBglRK&;se-Lq8n@a;Yq6H8ty(|5 zWsq|sxhVN1+^&bGenjQw&@dG_+q*oDUG8UtD1M)cMzpqdi00B>Pk`KW<#_nQ%-^}yr_Ken*#Ac$boFoqK zLBc*}c6GCRl_qTUIJ;?Rut#4OnTfF_m;tA^f--^FM1JF&ozT232-&^oB!^z4uy`L3 z9_}WRvs_MGf2E$L{PQ+NU4wyi3LVKxQQmLto=2+DoNSF>BJ)N@=|2wxbvc;5XmmQB zOJ4PDIW>AD`}f(M!S6kj>wjxjEIL*eV8~~%qZ7NNv=xn)cy24*&0EL-li0P+zHF}~ znH`&Hm?-K!)zeO4^kS{3D697#Hh%x$K)ydb3cxc2x^8@S=uo)Z-be3p95OEnIpefZ zjF+Q)GByjl)>`19a6V3>Rb83$h8G#gas?y}@;&U{#pZXlUB)A|o0`tkQhC53+`VpQ zL5RjAx<)K05~piDHh=3Zu~i;sc_GXDliX_^elHp6ya61q$?^KrCy816ZTPS&9m-W+ z`xzKKu%ixxvqBeQuwJzVgSEy640dn>23wK4Ft{{*F9wI2@55j-@DK*u>4!16u<=V%&2T-W|=S1jY=a1jb}j0%HtHV2n-)jBzP}F*YSIri>C86Q%^l zSd_pRhY}c5L5vytyB4weqi1=bjM9k*(h!oTx zjYyz%BO*@h1Vps@6e8t~Cn1v6&X7J85xtSXX(s5`PEgoEP#QXoVyPm?i4vG8f80&|1&pn9t$(&Z8td(um~7wjdJhxCoKF^d*R>vCAlesw+6EtLQ-J zdO8rffs$;!kv_$4CN4o>RozNo+iyd}2;7N?TXh#AN~8&q>?lEqI_?n-k5L+Ff~=~? zDK8A=QHB^nD9zAFfOZ0$G@DJD%_cS2q%NB@mrYv4CM{!=X0b_CHmSuX z4YEm#*rerb(rh-V!6wz&q&k~4n@w8CCe34$_G6Rgvq?2JX^>57u}S-}N%PsHxopyW zHfcXLsm&(MXOo(2Qa_v2$0p5TlPXa%sm>-XWRqrl)?^5=NkeQ>ur-xd1~#dWP3mKl zX0b_2*`x}aRArNvvPm5_DK#kDRBq3trEF4%O&Vg8X0u6cHfa%?v>%()&n7k4q)IDU zGlxx@!zMM^q<%JO9-Fk7OO z%fl@9u{@jQc_jaxrgIWCR+D-jfVMWd8pqrFUQsqIju&Z)H;d!V;dt}^Tf9;XCDg#@ z(hSPpmq<~UQ5!!rkFq?pklOg6#nf~U)hOzr1L%yxUKNql<*d$UbrGxkvs!0$9+j~m zZ+^#{Z(i2BtkHSd9m_DX>*v+`xb1IMmnFI+((hR*96uB*9DxvuHj__f=vqX&V%ghsO*0Cp>spShMEn^hNkuL^}+Qm>yqoX9lftk zbgpe!TeDVK+q5RWCb*_$b#irhb=#`iRh6qUE9+KPuk2jWu%c##vZ8ib<+9Aux~0`i zJC`&psac{dX<8g#99-P8D7h%SsBK~G!peo21$7Im7j(uO;x%z4-V}?+g0v!Ga(;Mz z+mW?LRvwu-qV9<5BX|Zt&Ed-7O^3w~3m(=&a{>U z)kE5TdoLjvZYytN&q7JOB;3EYh~F^?(^`U^!RlaTAmdiL)lQq$VAhynqf?8il{xiU z4Za5IRtA6k@{v4?cE)~woBn^tJgltV==J}HGYvl!d5Xu8Rf)Z6g!!|GUz--v0vkvJc>oG_&^o8;{Ci% zby1qU@a6U7g)i;cLa8M#rs1;Cr4%Vc39nOK-bzDW1&#FDS0O`rl>G78-gLy&b(HZC z`Qyt{H_>2H2RY?!hC*Jfx_|0+9`e46hRYZ#8fjE)AVYtUXC5?W;V-Cvls)(axiK2q z%ws44jcg8J2(&*zqihUHI}O}uykfP^;3Vjk(qJ>a$=A<=1ifyS+Xb|Mbsn!`t%Yb( zqt1|*@LsE>E;IRIy6m4XQ$>Mpch6Q;u}t~tK6bzG8laEFc_iZY0R6!@}QM&q|M+k6xQ=CWhiDa zBQ(TfG57*!a490lW*8Wv5tl&>{&v3C3>D3E!v`|ht#sEN27^YW=>2el01Zu%K?zJA zim@2VI;bR+GYn{?l2FQE@W_nGP+oN<6&41Si-X26fXhTFLm?N8B8Cu8Rt+;4JZ@t$ z*q|cfFbqu42+kmeY#Q70=PlFT`n5*<4hH}l=+eXH5vmLN*RKn=A$1&E`v@F*Yt)YfsY1}XzBxjvTeERipeKa zIoPHscBxdED(Ue#Zp~Fuz#9ndD(PJ(7RywBF2nSsMwe0EK_xB3;M8v>%QFm#)soS9 z^iF38aJ!MqLwMjJynZ}{SHXoR#O=mVZZ|?)TKqhEr}F5X#!${>B)~&>xe+QEHW!Kt zE)M}N3gui1D!2gH&2;Y_29@u9Dc|-|p20jgO*dQN!MuUZbh8IBl<_S_jP8rVP#mM1 z;HPmsN{FD0ZC%b##I`PGa8t*ld*=W@ee?$y{1Lj$07H-=kLyxCLjgl+jIO$jVKAsJ z4Pj8YR)s^9{R##vLaEyf4nq+ahGK^P41oY;CdkmwgXku7?^uvaAN>Ov%qX2_G1v@R zprU6h1D!tl4Td1)M(>`CRl&I^sNx2X*zP4D1~OU5WG<6kzd3`LEMn3P(BxEhwssvT zO&vnl&^(K8%hjNF@w;e^-{y4^wA%lmz#RVNJFBZ?B!!yvX?QS!T1pRE%3KiYw z<@FT5t&~j)no6JWA}HK?yoWOBxKZaF&ENKD7nQq}8rWUSbdGQ!`_8GXvL~O?CojJD zmEHGrUkH2*Jx+P=SZ~+8NA)=3y)V7p^&Yj=EAM?}kG#LfBkwWni}&|<-aUr>?o>Sp zwtCpT1MKTI!rn)AhEwBDz%Fe+yW9QjP^XzH1ngg@5_K3CboO<7r*wI^y^lTqZSM;^ zv#GRnxuiXYUD;HK2-s)sXP-3_i?PPq0#8oLTu9<{J*W}y=wLUW)-$*A>6KUF|S&1 zji%?)|8LY~z75_Wlb1EGX7{G#dfs|r)rFm2AG;-;Oo!8L+sqr_S?z6ShtC#gvv;0e zeR_?zYF*}(x>H(CPM%zQQna=<72RBWV&#dM6Y5TAptS<(k4tQ9IW~Pv%hBnh8oV_D zn%2eF1=m$4I};6wrnT|4!L?oe;Na?(RmoLNE8{DJE8{DID_WK(mxq_PEekJeTUxuc za%pBs-ID4hor@b5*DO{RH!X@U3NC6{m|PfM*tVc{LFIx>ye?iH?~FCXI_EdcubHpR zZ#pu5WbnwABa%mik7zr*_VCKXGl$h3R!yt)Hym1XsB&o2y!gD}yq3AiUTXwY&+eSn zFpKBPH_eRC49;wsk(?2p(Kfwydgb&C^@tH|omziL;^3+&frHwA8}+X_Q1M3og9o%s zOirx&AFKfo-z&IR%bv+S!+W;vQM*Uw9+};@ok!oaTYR_RZY{eecMb2_HokUz<@n6F zx^dOxI(KQ?Rz z8(BTFb40_4ni0x~rs477!Qm~#lEcEo+J@E+tsI&eQb&F7&cO||?q2i2bVV#231!Ob z%B#ye%NojR%9OIE(s*gGv}HhYKzKk~No`4GNv3~Y|LXpo#SO(Z#Y%BgQM@SlU)KVN z=LU0I`X&2?`?UpYX+D1@P#35Ubov|oHGak4Vu-%GXuX<0%r0yWamV&ju}` z|6tc#fcahjwqk1Q_O`PR;ayl~uZ|zvYd6i@u@ou&J-PKH?^DnI$OGwc9vDpzT@San z6=M!^Qiiwh(>b)_ zxL)ZL^pVaGFC9h`jIM`$r!%pl_rA`BeWWv#;w}NB>0!{r?WMDAao}x$XRj8v050ky zxnY#hVCwC0a*PEYZZA3Kw_TlQ&zxR8d%m~z@a&oE;zx(Xgp2z~csM0iLbHZBVaA|` z+e>)sbyj=DzFI8y{rgCc#);@U8BGrhJltM#Td%Wv{`84-sr${OO;1O!TfAYNxc6{L z9|@17BrCvZdYJ3s_7dK@q3->^8bey7!|dzID!eWW^y(i=&$tvOZ3 z0uQ&BDqn8MtL2AOPo6q|&gA_kR)h|TFJBYt{-fQc$5wDN(!K9$X&=dtrX+U;qv>I( zhucd&4|%DfUh=%z^2F)YGiObo*qw`+wCVEVb@2^Hty>&A{McP5Zkvm;K5{XJ(jQHJ z2hIg!k%!yM1$7ou6i(fccBCagVFRb&%^B{ zyLHq0==6!v>gi($KmU-4Q)iLIRK-Y+t#cReWbZNr8X0cria5k++LdHC{Io9YD_0ipIm+L z{E1Z1rhC^uf5yz|v-acPn2H%|S1;bMZ26j{q2=pC$E;h+AJ&96EL-eZX2ynfM=j)E zo-tlNy~pSsu)_j7Eb#vm3w(K&>05V@=KI;ueaT|o_s?aTZ`0p2U)H6X@0?>aUp|HN zm*~Fy8#Ui$&uG4)eBF1!BHfq!XU%ujLd`emLd|#I&#G_F3pC#=ovLqft?K(VrTQ+S zFq#5deRzA*ebs^77%u4U|M!@-FwKvwfVU%fs*8Qn+Y7wsi?<7S&lhk1@18H-&fh&> zygk2rzUUnhWn#}4Z=dg;FWwH{Jzu=Ny?efRyL$J0@%HoX`Qq*5-SfrU!@K8;w|jTb z7jNJ0o-f{x-92A&x6O{XOLxx^Z-4HdFW%1FJzom9J;&RPyXOdY{Oz#74h!tCzzz%S zu)q!r?6ANN3+%AK4h!tCzzz%Su)zN*3pDm?4+er&frP)_Z6(iZ#Ew~Mv)Sm-LwZz8 zsf{`9*@5h;tc0&#X{Aiv_Q|ymXCs8ao@;wq{F7Dn1pZ>-uU6s-{LRAOt@JJO778##8Y8JZ2^KqrctQf&n&4?e-Rw+X&f#CsAQzpk4JOy~v9pcH&74vuWA-`X@2c#t&}m zll0atcCu;Gaixu&?Z{Ku#l|>0_7trZjooZ|ZEtrQd)UoSVJ{nd+Z|7#%0{&vdK&xL z*x!ymjRR~PXs4dWWE%(BjZfoX8;97mtj#nVQ9JMqrrVfdS3QGSHfG!O2H;#9^X&R( zaF~t5?bc^-q>cGDo<-co0z2|77TH*A({f=;Z7j3X&tip*l{T#$w%W!TenB{4BWZ`8 z!+IMV?C5hi+Qu<<>N#w*ah%=w95&fF!ES#Jn{A}*!1FlC#>sZo^ElPUX?EgyoMGck zyZ(8cZQ~rf^?96U<9r)0pw7kxcH{+Yv2l?ddjXf&xYSO+fXi)MVK={kt883tcf5dl z8x3~oMO7@Q95^?bes@xQ!=lyo?qbPuh`}@wAO+?AXhA&c^e0`enRm<0ZTKWxQhJ zRlDP5wAyI1L$BZs8*kdtSMautckI+Fc+bZBcH=Af(8fo0`z!dwM!Ow&6`$Jp%&vMB zU)cE4PP~e*ZG2R_0YejOtmjC7h` z$7qLM74LYRUR6b<6M6$<9bO3i4UBiNtCM;I6CCXBG`@j79qi?_zkz)mR5^h+v9E*u zoT@i5(ZK;u;!R9)Fxjbp6H^=5| z4s)8{!VwORbUNNb%t7167;8+J6o%(lhyn{_n>pM8n!Da{VqSnDlPUKyj;^0&#_AX9$aE6n9 z7iT#*+i89m=Q=pg>3A1u2X#*9JzVHuixYhh7dyDbNxg^599-@+zK1IvT;;UChie?v zJAwCct%K{Fs`qh&gBzX1`?%S`El&OWxXr=sPV4)))4^R1K0uR$yPe1fxYxmbPV56b z;NU?g{Q(|!@QBm=0UmSkxYO|gnjN$_p%3wtgQuP7hj`Y(b580*yx`zPr}0C)?BErr z{X@Lwpw$U{gx4Ls;Z%Kuw;a6fBtF8s4&HO>Kf(tNK6F|?!p9CiaquxR4nB1vALDZe zUpTRk@s)$Go%F}}*1>m9^T+tb#g9(M$LMg->4ZMPpB((ziGG5AxKRD6PiVsf=>GZ+ z{L6vmZ~p}UacDwMpdCIJS#DK3a!BVU+G+MW47a`=mJ8c$ZKq8J=p6%O5OitH=ST*5 zF7n-228AwdP>{~hmJGB7Npl9JF3Q}F3_>o#Zs=1Cq}fky^ivFRG1N_cN}GRRgxmNj zM!6X6wttG9TzU^a@ELY?G1jg64C7pkcN3psHy0D!`p>Y3OKYdKeulkW?Bn8dRJ+*M zjeL&%T}*UipW{Fmlic*@ILO5mxA}7%;$o`X@j0R{YTVElnBiik8~p;aUCeP)Utpe# zL*2$NaJY*j-1aXp-$l#~e2E1v7P?hmVzG-QZsJQUbFti|EfH6`Smm~Ui8U_Py7&r7 z7wg=}SJ>dA?BWzR`ZZ2-ak`uO z8fUsV%WeD`=eRi6ZT}kQyGXl%Z*YN&3*D-3aFL6P-NZMz)Wv0P{WrM6#g%UBH@Mox zH7>qIgNtk3$hWwj7K(6V-{K}0H@oR?ajT2l+~#j_hl@Mij&ITEqR9qfuB z{VpDGQ{Uks7Z1CQ-{DagkGbvN;RzSbZs2=7>EbE3>U%un;#oKGJ)U>*f?NMRUUKoW z+xk6Tb@7^uAJFFFbvN<@-gNPn8~Xw8xOmr1|A6;heBd_!fR9{!>~{Qsb}B4x=tq1; zH_eUyh%ad@*q{0l-_S+49Ub`IMZn+wBYtwx;Rb%f&o2JtR{exLKmO`QJMlLce|KY@ z_$SRa^Cy1BFh7R-n}5QuF8=Ly`~-TLgg1mkmLJ*vXa`34F~MK|ClvY7-{07Y(SB6; zBR~J2diL3o&JGLgu)q!r?6ANN3+%AKf44xWd%6FIe_8fx7WMz%KeMa<|F4|Z`S^DZ z{*!|k6cs)-5<|9%95oh$rb1WKF_vvA0UE^;M~;Rzr)hpNjp}=pr1T;y^XE z2$NMDq&6+ZSP)il|Df2258mL#B7iTy0&9BUQ{- zu>^4y3)ILGEK;#pjV-}a70cB060A_MQf*#>)hgDg9ZQft2jnY zEyYF^$El4=u}Q@VYWq@bR*_Nz%W#s4lhvwaI90`IYGN7AP;sVOzYJ%qI7e+=hVxXM zuVOjsR9v7&mSc;Gi`3Y1T%zJql~y>oT*Vb?^Kx9J;%XH?qh3XW8d`ztR9vq{SKvk! zH>s%=xJAXSYU2vruHp{0eFg4P(WnMi;%*i9sI)EYeJbu(6D#qciigztm3TzOqiX9) zJg(viULL$f#gl4e6`oe{j2c^o=TtnerdQ!b6)&mHtMH17SJjSHXjRdsw&vgs6>sud z_;0ItN2S;H-&66v+PE4Ys`yB4UyV;xw5x$N_*BJbYSkKiq2fz5u?AnO_(rW?gYQ&) zuePqik1Bpru@;?lacX2O{;c9JYHTfjQSmo5y%zsa@lUmREq+z;Z?$7Bph3}SG5stJ z*%~bpplZ;xR04(uQ)^7nl8&^XbbEqdtqy2`B>HK{)vA)n*AVt6k|@$ptkow`qS4-g ztx1$=DA%wKVU6~Ui>$*SjaHtEt;0|a!!%lYV1$N|TJt)L)-XovSjVfKRcfL27^`6y zElT_2Y1maut;YlnyK9Z>v8RT;wD$GbM?;ks*noXC?59=H#+n)q&=MOkNyB8Vegmdx zI9O}lfT2v=4hC!rH{g)8V=K%kHQfej?_AiLQF$k3muJx z8Ww5Mqp?K8QZ02fmTOp{H6D#s8dhuVM`Nvqgcdjk>oly_s*b@?8jjWy$KY5E8@2jl zaJ+_1TI(@5QNv~p$D&rlNm}GsoTA}WEp{wU*KmfGJ{D(bI9qEz7Uya>PwO}qX$^H+ zXd^Dvutke*#Kjse(NY_6nTE@?#*MgA!&O@QMqHzzUJD$DYc*V_RUL;LG~B2qj>F9w zZqe$G!)+RF*J$(PJ2l*;;dnG@xLb=Hk9#%Tr^SxP0~#LG(#PXr4UcHe$Kx>#k8AYy zeY1uZEwl+wX?R+rw@{y@mHV~SCcL2GMXhlYUe@r6MyrdwrlC~}oPgIgyrET{fVVWf zttC#tyBglp>QBH28a~uoPr%0-KGAR@G8#VBA}8W=4PR)n6Y-UXueJ1v_*TPrTJwqc zLBo$)$BF3B(5Zzs<4+p?tVK8DuNr>QQk(I24gb&@H{)L#e%0DH<3Adp2U76q$kMA) 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 JGW36z{uffJ3$g$J diff --git a/Marlin/Marlin.vcxproj b/Marlin/Marlin.vcxproj deleted file mode 100644 index f16ea5d8a..000000000 --- a/Marlin/Marlin.vcxproj +++ /dev/null @@ -1,118 +0,0 @@ - - - - - Debug - Win32 - - - Release - Win32 - - - - {510EF280-9617-4F04-86F4-19F7E48C6FC1} - Marlin - - - - Application - true - MultiByte - - - Application - false - true - MultiByte - - - - - - - - - - - - - C:\arduino-1.0\hardware\arduino\cores\arduino;C:\arduino-1.0\hardware\arduino\variants\mega;c:\arduino-1.0\hardware\tools\avr\avr\include\;c:\arduino-1.0\hardware\tools\avr\avr\include\avr\;c:\arduino-1.0\hardware\tools\avr\avr\;c:\arduino-1.0\hardware\tools\avr\lib\gcc\avr\4.3.2\include\;C:\arduino-1.0\libraries\LiquidCrystal;C:\arduino-1.0\libraries\LiquidCrystal\utility; - - - C:\arduino-1.0\hardware\arduino\cores\arduino;C:\arduino-1.0\hardware\arduino\variants\mega;c:\arduino-1.0\hardware\tools\avr\avr\include\;c:\arduino-1.0\hardware\tools\avr\avr\include\avr\;c:\arduino-1.0\hardware\tools\avr\avr\;c:\arduino-1.0\hardware\tools\avr\lib\gcc\avr\4.3.2\include\;C:\arduino-1.0\libraries\LiquidCrystal;C:\arduino-1.0\libraries\LiquidCrystal\utility; - - - - Level3 - Disabled - - - true - - - - - Level3 - MaxSpeed - true - true - - - true - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Marlin/Marlin.vcxproj.filters b/Marlin/Marlin.vcxproj.filters deleted file mode 100644 index 475ca8dd9..000000000 --- a/Marlin/Marlin.vcxproj.filters +++ /dev/null @@ -1,141 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - - - - - - - - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - \ No newline at end of file diff --git a/Marlin/Marlin.vcxproj.user b/Marlin/Marlin.vcxproj.user deleted file mode 100644 index ace9a86ac..000000000 --- a/Marlin/Marlin.vcxproj.user +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file From 8a8ea50f3303ecd44cc16e904340569dfce700a5 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Tue, 21 Feb 2012 09:31:28 +0100 Subject: [PATCH 239/430] fixed manual axis movement lcd option --- Marlin/ultralcd.pde | 90 ++++++++++++++++++++++++++++++--------------- 1 file changed, 61 insertions(+), 29 deletions(-) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index ad7b752fc..32ef2f3b8 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -485,13 +485,13 @@ void MainMenu::showPrepare() MENUITEM( lcdprintPGM(" Disable Steppers") , BLOCK;enquecommand("M84");beepshort(); ) ; break; case ItemP_home: - MENUITEM( lcdprintPGM(" Auto Home") , BLOCK;enquecommand("G28 X-105 Y-105 Z0");beepshort(); ) ; + MENUITEM( lcdprintPGM(" Auto Home") , BLOCK;enquecommand("G28 X0 Y0 Z0");beepshort(); ) ; break; case ItemP_origin: MENUITEM( lcdprintPGM(" Set Origin") , BLOCK;enquecommand("G92 X0 Y0 Z0");beepshort(); ) ; break; case ItemP_preheat: - MENUITEM( lcdprintPGM(" Preheat") , BLOCK;setTargetHotend0(170);setTargetBed(70);beepshort(); ) ; + MENUITEM( lcdprintPGM(" Preheat") , BLOCK;setTargetHotend0(227);setTargetBed(105);beepshort(); ) ; break; case ItemP_cooldown: MENUITEM( lcdprintPGM(" Cooldown") , BLOCK;setTargetHotend0(0);setTargetBed(0);beepshort(); ) ; @@ -518,21 +518,22 @@ enum { void MainMenu::showAxisMove() { uint8_t line=0; + int oldencoderpos=0; clearIfNecessary(); for(int8_t i=lineoffset;i200) encoderpos=200; - lcd.setCursor(13,line);lcd.print(current_position[X_AXIS]); + if (encoderpos >0) + { + enquecommand("G1 F700 X0.1"); + oldencoderpos=encoderpos; + encoderpos=0; + } + + else if (encoderpos < 0) + { + enquecommand("G1 F700 X-0.1"); + oldencoderpos=encoderpos; + encoderpos=0; + } + lcd.setCursor(13,line);lcd.print(ftostr32(current_position[X_AXIS])); } } break; case ItemAM_Y: - //MENUITEM( lcdprintPGM(" Y+") , BLOCK;enquecommand("G92 Y0");enquecommand("G1 F700 Y10");beepshort(); ) ; - { + { if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" Y:"); - lcd.setCursor(13,line);lcd.print(ftostr3(current_position[Y_AXIS])); + lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Y_AXIS])); } if((activeline!=line) ) @@ -578,11 +589,11 @@ void MainMenu::showAxisMove() linechanging=!linechanging; if(linechanging) { - encoderpos=current_position[Y_AXIS]; + enquecommand("G91"); } else { - enquecommand("G1 F700 Y"+encoderpos); + enquecommand("G90"); encoderpos=activeline*lcdslow; beepshort(); } @@ -590,34 +601,44 @@ void MainMenu::showAxisMove() } if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>200) encoderpos=200; - lcd.setCursor(13,line);lcd.print(current_position[Y_AXIS]); + if (encoderpos >0) + { + enquecommand("G1 F700 Y0.1"); + oldencoderpos=encoderpos; + encoderpos=0; + } + + else if (encoderpos < 0) + { + enquecommand("G1 F700 Y-0.1"); + oldencoderpos=encoderpos; + encoderpos=0; + } + lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Y_AXIS])); } } break; case ItemAM_Z: - //MENUITEM( lcdprintPGM(" Z+") , BLOCK;enquecommand("G92 Z0");enquecommand("G1 F700 Z10");beepshort(); ) ; { if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(" Z:"); - lcd.setCursor(13,line);lcd.print(ftostr3(current_position[Z_AXIS])); + lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Z_AXIS])); } if((activeline!=line) ) break; - if(CLICKED) + if(CLICKED) { linechanging=!linechanging; if(linechanging) { - encoderpos=current_position[Z_AXIS]; + enquecommand("G91"); } else { - enquecommand("G1 F700 Z"+encoderpos); + enquecommand("G90"); encoderpos=activeline*lcdslow; beepshort(); } @@ -625,14 +646,25 @@ void MainMenu::showAxisMove() } if(linechanging) { - if(encoderpos<1) encoderpos=1; - if(encoderpos>170) encoderpos=170; - lcd.setCursor(13,line);lcd.print(current_position[Z_AXIS]); + if (encoderpos >0) + { + enquecommand("G1 F170 Z0.1"); + oldencoderpos=encoderpos; + encoderpos=0; + } + + else if (encoderpos < 0) + { + enquecommand("G1 F1700 Z-0.1"); + oldencoderpos=encoderpos; + encoderpos=0; + } + lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Z_AXIS])); } } break; case ItemAM_E: - MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E10");beepshort(); ) ; + MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E5");beepshort(); ) ; break; default: break; @@ -1896,7 +1928,7 @@ void MainMenu::showSD() status=Main_Status; lcd_status(card.filename); } - } + } } } From a0a1f81913023b81411558fcdf837f2af76faa74 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Tue, 21 Feb 2012 20:17:28 +0100 Subject: [PATCH 240/430] various changes --- Marlin/Marlin.pde | 29 ++++++++++------------------- Marlin/planner.cpp | 19 +++++++++++++++++-- Marlin/planner.h | 2 +- 3 files changed, 28 insertions(+), 22 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 07716fd35..b122e58d8 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -509,11 +509,9 @@ bool code_seen(char code) plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ \ current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? 0 : LETTER##_MAX_LENGTH;\ - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = current_position[LETTER##_AXIS];\ feedrate = 0.0;\ st_synchronize();\ - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ endstops_hit_on_purpose();\ } @@ -567,7 +565,7 @@ void process_commands() feedrate = 0.0; home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); #ifdef QUICK_HOME - if( code_seen(axis_codes[0]) && code_seen(axis_codes[1]) ) //first diagonal move + if( code_seen(axis_codes[X_AXIS]) && code_seen(axis_codes[Y_AXIS]) ) //first diagonal move { current_position[X_AXIS] = 0;current_position[Y_AXIS] = 0; @@ -585,10 +583,10 @@ void process_commands() destination[Y_AXIS] = current_position[Y_AXIS]; feedrate = 0.0; st_synchronize(); - plan_set_position(0, 0, current_position[Z_AXIS], current_position[E_AXIS]); - current_position[X_AXIS] = 0;current_position[Y_AXIS] = 0; endstops_hit_on_purpose(); } + else + { #endif if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) @@ -599,7 +597,11 @@ void process_commands() if((home_all_axis) || (code_seen(axis_codes[Y_AXIS]))) { HOMEAXIS(Y); } - + + #ifdef QUICK_HOME + } + #endif + if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { HOMEAXIS(Z); } @@ -616,6 +618,8 @@ void process_commands() if(code_seen(axis_codes[Z_AXIS])) { current_position[2]=code_value()+add_homeing[2]; } + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + #ifdef ENDSTOPS_ONLY_FOR_HOMING enable_endstops(false); #endif @@ -1254,19 +1258,6 @@ void get_arc_coordinates() void prepare_move() { - - if (min_software_endstops) { - if (destination[X_AXIS] < 0) destination[X_AXIS] = 0.0; - if (destination[Y_AXIS] < 0) destination[Y_AXIS] = 0.0; - if (destination[Z_AXIS] < 0) destination[Z_AXIS] = 0.0; - } - - if (max_software_endstops) { - if (destination[X_AXIS] > X_MAX_LENGTH) destination[X_AXIS] = X_MAX_LENGTH; - if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH; - if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; - } - plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index b895b95e5..b631eb45a 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -439,11 +439,24 @@ float junction_deviation = 0.1; // Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in // mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration // calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder) +void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, uint8_t &extruder) { // Calculate the buffer head after we push this byte int next_buffer_head = next_block_index(block_buffer_head); + + if (min_software_endstops) { + if (x < 0) x = 0; + if (y < 0) y = 0; + if (z < 0) z = 0; + } + + if (max_software_endstops) { + if (x > X_MAX_LENGTH) x = X_MAX_LENGTH; + if (y > Y_MAX_LENGTH) y = Y_MAX_LENGTH; + if (z > Z_MAX_LENGTH) z = Z_MAX_LENGTH; + } + // If the buffer is full: good! That means we are well ahead of the robot. // Rest here until there is room in the buffer. while(block_buffer_tail == next_buffer_head) { @@ -451,7 +464,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa manage_inactivity(1); LCD_STATUS; } - + // The target position of the tool in absolute steps // Calculate target position in absolute steps //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow @@ -461,6 +474,8 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); + + #ifdef PREVENT_DANGEROUS_EXTRUDE if(target[E_AXIS]!=position[E_AXIS]) if(degHotend(active_extruder) Date: Tue, 21 Feb 2012 20:36:43 +0100 Subject: [PATCH 241/430] Small fixes after merge --- Marlin/Configuration.h | 7 ------- Marlin/Configuration_adv.h | 6 ++++++ Marlin/ultralcd.h | 17 ++++++----------- 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 2b561923e..545b82b7a 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -183,13 +183,6 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define SDSUPPORT // Enable SD Card Support in Hardware Console //#define ULTIPANEL -// If you are using a RAMPS board or cheap E-bay purchased boards that do not detect when an SD card is inserted -// You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT -// in the pins.h file. When using a push button pulling the pin to ground this will need inverted. This setting should -// be commented out otherwise -#define SDCARDDETECTINVERTED - -#define ULTIPANEL #ifdef ULTIPANEL #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index a19747d14..d73962cff 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -148,6 +148,12 @@ const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement +// If you are using a RAMPS board or cheap E-bay purchased boards that do not detect when an SD card is inserted +// You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT +// in the pins.h file. When using a push button pulling the pin to ground this will need inverted. This setting should +// be commented out otherwise +//#define SDCARDDETECTINVERTED + //=========================================================================== //=============================Buffers ============================ //=========================================================================== diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index f7bf9c09d..6cfdc74ad 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -28,17 +28,12 @@ #define CLICKED (buttons&EN_C) #define BLOCK {blocking=millis()+blocktime;} #if (SDCARDDETECT > -1) - { - - #ifdef SDCARDDETECTINVERTED - #define CARDINSERTED (READ(SDCARDDETECT)!=0) - - #else - #define CARDINSERTED (READ(SDCARDDETECT)==0) - } - #endif - - #endif //SDCARDTETECTINVERTED + #ifdef SDCARDDETECTINVERTED + #define CARDINSERTED (READ(SDCARDDETECT)!=0) + #else + #define CARDINSERTED (READ(SDCARDDETECT)==0) + #endif + #endif //SDCARDTETECTINVERTED #else From df1437bd86bb2d30a35012bbeb43d4d213a3c41b Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Tue, 21 Feb 2012 23:05:43 +0100 Subject: [PATCH 242/430] Changed display format for some numbers. --- Marlin/Marlin.pde | 6 ------ Marlin/ultralcd.h | 9 +-------- Marlin/ultralcd.pde | 40 +++++++++++++++++++++++++++------------- 3 files changed, 28 insertions(+), 27 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 3c8c02216..bf31df245 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -586,8 +586,6 @@ void process_commands() st_synchronize(); endstops_hit_on_purpose(); } - else - { #endif if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) @@ -599,10 +597,6 @@ void process_commands() HOMEAXIS(Y); } - #ifdef QUICK_HOME - } - #endif - if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { HOMEAXIS(Z); } diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index 6cfdc74ad..c4392d26f 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -9,18 +9,11 @@ void beep(); void buttons_check(); - #define LCD_UPDATE_INTERVAL 100 #define STATUSTIMEOUT 15000 - - - extern LiquidCrystal lcd; - - + #ifdef NEWPANEL - - #define EN_C (1<9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + if(encoderpos>99999) encoderpos=99999; + lcd.setCursor(11,line);lcd.print(ftostr52(encoderpos/100.0)); } }break; @@ -2223,6 +2222,21 @@ char *ftostr51(const float &x) return conv; } +// convert float to string with +123.45 format +char *ftostr52(const float &x) +{ + int xx=x*100; + conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[1]=(xx/10000)%10+'0'; + conv[2]=(xx/1000)%10+'0'; + conv[3]=(xx/100)%10+'0'; + conv[4]='.'; + conv[5]=(xx/10)%10+'0'; + conv[6]=(xx)%10+'0'; + conv[7]=0; + return conv; +} #endif //ULTRA_LCD From ae3e7586c661d7c9a68b046c65862b850a7566fb Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Wed, 22 Feb 2012 18:07:56 +0100 Subject: [PATCH 243/430] Added HOME_POS. This adds the posibility to make the center 0 Updated the Xsteps ... settings via the LCD menu --- Marlin/Configuration.h | 7 +++++- Marlin/Marlin.pde | 6 ++--- Marlin/language.h | 22 +++++++++++++++++- Marlin/planner.cpp | 6 ++--- Marlin/ultralcd.pde | 51 +++++++++++++++++++++--------------------- 5 files changed, 58 insertions(+), 34 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 545b82b7a..ef0d206a8 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -146,6 +146,11 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define Y_MAX_LENGTH 185 #define Z_MAX_LENGTH 90 +// The position of the homing switches. Use MAX_LENGTH * -0.5 if the center should be 0, 0, 0 +#define X_HOME_POS 0 +#define Y_HOME_POS 0 +#define Z_HOME_POS 0 + //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E #define HOMING_FEEDRATE {1500, 1500, 80, 0} // {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) @@ -182,7 +187,7 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t //#define ULTRA_LCD //general lcd support, also 16x2 #define SDSUPPORT // Enable SD Card Support in Hardware Console -//#define ULTIPANEL +#define ULTIPANEL #ifdef ULTIPANEL #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index bf31df245..49753fb45 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -509,7 +509,7 @@ bool code_seen(char code) feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ \ - current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? 0 : LETTER##_MAX_LENGTH;\ + current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? LETTER##_HOME_POS : LETTER##_MAX_LENGTH;\ destination[LETTER##_AXIS] = current_position[LETTER##_AXIS];\ feedrate = 0.0;\ st_synchronize();\ @@ -577,8 +577,8 @@ void process_commands() feedrate =homing_feedrate[Y_AXIS]; prepare_move(); - current_position[X_AXIS] = (X_HOME_DIR == -1) ? 0 : X_MAX_LENGTH; - current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? 0 : Y_MAX_LENGTH; + current_position[X_AXIS] = (X_HOME_DIR == -1) ? X_HOME_POS : X_MAX_LENGTH; + current_position[Y_AXIS] = (Y_HOME_DIR == -1) ? Y_HOME_POS : Y_MAX_LENGTH; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); destination[X_AXIS] = current_position[X_AXIS]; destination[Y_AXIS] = current_position[Y_AXIS]; diff --git a/Marlin/language.h b/Marlin/language.h index 78fe30e98..c87851401 100644 --- a/Marlin/language.h +++ b/Marlin/language.h @@ -25,6 +25,7 @@ #define MSG_PREHEAT " Preheat" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" + #define MSG_MOVE_AXIS " Move Axis \x7E" #define MSG_SPEED " Speed:" #define MSG_NOZZLE " \002Nozzle:" #define MSG_BED " \002Bed:" @@ -52,6 +53,9 @@ #define MSG_VTRAV_MIN " VTrav min:" #define MSG_AMAX " Amax " #define MSG_A_RETRACT " A-retract:" + #define MSG_XSTEPS " Xsteps/mm:" + #define MSG_YSTEPS " Ysteps/mm:" + #define MSG_ZSTEPS " Zsteps/mm:" #define MSG_ESTEPS " Esteps/mm:" #define MSG_MAIN_WIDE " Main \003" #define MSG_TEMPERATURE_WIDE " Temperature \x7E" @@ -86,6 +90,7 @@ #define MSG_PREHEAT " Preheat" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" + #define MSG_MOVE_AXIS " Move Axis \x7E" #define MSG_SPEED " Speed:" #define MSG_NOZZLE " \002Nozzle:" #define MSG_BED " \002Bed:" @@ -113,6 +118,9 @@ #define MSG_VTRAV_MIN " VTrav min:" #define MSG_AMAX " Amax " #define MSG_A_RETRACT " A-retract:" + #define MSG_XSTEPS " Xsteps/mm:" + #define MSG_YSTEPS " Ysteps/mm:" + #define MSG_ZSTEPS " Zsteps/mm:" #define MSG_ESTEPS " Esteps/mm:" #define MSG_MAIN_WIDE " Main \003" #define MSG_TEMPERATURE_WIDE " Temperature \x7E" @@ -147,6 +155,7 @@ #define MSG_PREHEAT " Preheat" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" + #define MSG_MOVE_AXIS " Move Axis \x7E" #define MSG_SPEED " Speed:" #define MSG_NOZZLE " \002Nozzle:" #define MSG_BED " \002Bed:" @@ -174,6 +183,9 @@ #define MSG_VTRAV_MIN " VTrav min:" #define MSG_AMAX " Amax " #define MSG_A_RETRACT " A-retract:" + #define MSG_XSTEPS " Xsteps/mm:" + #define MSG_YSTEPS " Ysteps/mm:" + #define MSG_ZSTEPS " Zsteps/mm:" #define MSG_ESTEPS " Esteps/mm:" #define MSG_MAIN_WIDE " Main \003" #define MSG_TEMPERATURE_WIDE " Temperature \x7E" @@ -208,6 +220,7 @@ #define MSG_PREHEAT " Preheat" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" + #define MSG_MOVE_AXIS " Move Axis \x7E" #define MSG_SPEED " Speed:" #define MSG_NOZZLE " \002Nozzle:" #define MSG_BED " \002Bed:" @@ -235,6 +248,9 @@ #define MSG_VTRAV_MIN " VTrav min:" #define MSG_AMAX " Amax " #define MSG_A_RETRACT " A-retract:" + #define MSG_XSTEPS " Xsteps/mm:" + #define MSG_YSTEPS " Ysteps/mm:" + #define MSG_ZSTEPS " Zsteps/mm:" #define MSG_ESTEPS " Esteps/mm:" #define MSG_MAIN_WIDE " Main \003" #define MSG_TEMPERATURE_WIDE " Temperature \x7E" @@ -269,6 +285,7 @@ #define MSG_PREHEAT " Preheat" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" + #define MSG_MOVE_AXIS " Move Axis \x7E" #define MSG_SPEED " Speed:" #define MSG_NOZZLE " \002Nozzle:" #define MSG_BED " \002Bed:" @@ -296,6 +313,9 @@ #define MSG_VTRAV_MIN " VTrav min:" #define MSG_AMAX " Amax " #define MSG_A_RETRACT " A-retract:" + #define MSG_XSTEPS " Xsteps/mm:" + #define MSG_YSTEPS " Ysteps/mm:" + #define MSG_ZSTEPS " Zsteps/mm:" #define MSG_ESTEPS " Esteps/mm:" #define MSG_MAIN_WIDE " Main \003" #define MSG_TEMPERATURE_WIDE " Temperature \x7E" @@ -315,4 +335,4 @@ #endif -#endif // ifndef LANGUAGE_H \ No newline at end of file +#endif // ifndef LANGUAGE_H diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index b631eb45a..468d9fcac 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -446,9 +446,9 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u if (min_software_endstops) { - if (x < 0) x = 0; - if (y < 0) y = 0; - if (z < 0) z = 0; + if (x < X_HOME_POS) x = X_HOME_POS; + if (y < Y_HOME_POS) y = Y_HOME_POS; + if (z < Z_HOME_POS) z = Z_HOME_POS; } if (max_software_endstops) { diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index ff3cbc758..8c5033c7d 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -372,7 +372,7 @@ void MainMenu::showStatus() if((currentz!=oldzpos)||force_lcd_update) { lcd.setCursor(10,1); - lcdprintPGM("Z:");lcd.print(ftostr32(current_position[2])); + lcdprintPGM("Z:");lcd.print(ftostr52(current_position[2])); oldzpos=currentz; } static int oldfeedmultiply=0; @@ -411,7 +411,6 @@ void MainMenu::showStatus() lcd.setCursor(7,2); lcd.print(itostr3((int)percent)); lcdprintPGM("%SD"); - } #else //smaller LCDS---------------------------------- @@ -485,7 +484,7 @@ void MainMenu::showPrepare() MENUITEM( lcdprintPGM(MSG_DISABLE_STEPPERS) , BLOCK;enquecommand("M84");beepshort(); ) ; break; case ItemP_home: - MENUITEM( lcdprintPGM(MSG_AUTO_HOME) , BLOCK;enquecommand("G28 X0 Y0 Z0");beepshort(); ) ; + MENUITEM( lcdprintPGM(MSG_AUTO_HOME) , BLOCK;enquecommand("G28");beepshort(); ) ; break; case ItemP_origin: MENUITEM( lcdprintPGM(MSG_SET_ORIGIN) , BLOCK;enquecommand("G92 X0 Y0 Z0");beepshort(); ) ; @@ -500,7 +499,7 @@ void MainMenu::showPrepare() // MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E50");beepshort(); ) ; // break; case ItemP_move: - MENUITEM( lcdprintPGM(" Move Axis \x7E") , BLOCK;status=Sub_PrepareMove;beepshort(); ); + MENUITEM( lcdprintPGM(MSG_MOVE_AXIS) , BLOCK;status=Sub_PrepareMove;beepshort(); ); break; default: break; @@ -664,7 +663,7 @@ void MainMenu::showAxisMove() } break; case ItemAM_E: - MENUITEM( lcdprintPGM(" Extrude") , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E5");beepshort(); ) ; + MENUITEM( lcdprintPGM(MSG_EXTRUDE) , BLOCK;enquecommand("G92 E0");enquecommand("G1 F700 E5");beepshort(); ) ; break; default: break; @@ -703,7 +702,7 @@ void MainMenu::showTune() if((activeline!=line) ) break; - if(CLICKED) //nalogWrite(FAN_PIN, fanpwm); + if(CLICKED) //AnalogWrite(FAN_PIN, fanpwm); { linechanging=!linechanging; if(linechanging) @@ -1597,7 +1596,7 @@ void MainMenu::showControlMotion() { if(force_lcd_update) { - lcd.setCursor(0,line);lcdprintPGM(" X steps/mm:"); + lcd.setCursor(0,line);lcdprintPGM(MSG_XSTEPS); lcd.setCursor(11,line);lcd.print(ftostr52(axis_steps_per_unit[0])); } @@ -1609,11 +1608,11 @@ void MainMenu::showControlMotion() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)axis_steps_per_unit[0]; + encoderpos=(int)(axis_steps_per_unit[0]*100.0); } else { - float factor=float(encoderpos)/100/float(axis_steps_per_unit[0]); + float factor=float(encoderpos)/100.0/float(axis_steps_per_unit[0]); position[X_AXIS]=lround(position[X_AXIS]*factor); //current_position[3]*=factor; axis_steps_per_unit[X_AXIS]= encoderpos/100.0; @@ -1634,8 +1633,8 @@ void MainMenu::showControlMotion() { if(force_lcd_update) { - lcd.setCursor(0,line);lcdprintPGM(" Y steps/mm:"); - lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[1])); + lcd.setCursor(0,line);lcdprintPGM(MSG_YSTEPS); + lcd.setCursor(11,line);lcd.print(ftostr52(axis_steps_per_unit[1])); } if((activeline!=line) ) @@ -1646,14 +1645,14 @@ void MainMenu::showControlMotion() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)axis_steps_per_unit[1]; + encoderpos=(int)(axis_steps_per_unit[1]*100.0); } else { - float factor=float(encoderpos)/float(axis_steps_per_unit[1]); + float factor=float(encoderpos)/100.0/float(axis_steps_per_unit[1]); position[Y_AXIS]=lround(position[Y_AXIS]*factor); //current_position[3]*=factor; - axis_steps_per_unit[Y_AXIS]= encoderpos; + axis_steps_per_unit[Y_AXIS]= encoderpos/100.0; encoderpos=activeline*lcdslow; } @@ -1664,7 +1663,7 @@ void MainMenu::showControlMotion() { if(encoderpos<5) encoderpos=5; if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + lcd.setCursor(11,line);lcd.print(ftostr52(encoderpos/100.0)); } }break; @@ -1672,8 +1671,8 @@ void MainMenu::showControlMotion() { if(force_lcd_update) { - lcd.setCursor(0,line);lcdprintPGM(" Z steps/mm:"); - lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[2])); + lcd.setCursor(0,line);lcdprintPGM(MSG_ZSTEPS); + lcd.setCursor(11,line);lcd.print(ftostr52(axis_steps_per_unit[2])); } if((activeline!=line) ) @@ -1684,14 +1683,14 @@ void MainMenu::showControlMotion() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)axis_steps_per_unit[2]; + encoderpos=(int)(axis_steps_per_unit[2]*100.0); } else { - float factor=float(encoderpos)/float(axis_steps_per_unit[2]); + float factor=float(encoderpos)/100.0/float(axis_steps_per_unit[2]); position[Z_AXIS]=lround(position[Z_AXIS]*factor); //current_position[3]*=factor; - axis_steps_per_unit[Z_AXIS]= encoderpos; + axis_steps_per_unit[Z_AXIS]= encoderpos/100.0; encoderpos=activeline*lcdslow; } @@ -1702,7 +1701,7 @@ void MainMenu::showControlMotion() { if(encoderpos<5) encoderpos=5; if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + lcd.setCursor(11,line);lcd.print(ftostr52(encoderpos/100.0)); } }break; @@ -1712,7 +1711,7 @@ void MainMenu::showControlMotion() if(force_lcd_update) { lcd.setCursor(0,line);lcdprintPGM(MSG_ESTEPS); - lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[3])); + lcd.setCursor(11,line);lcd.print(ftostr52(axis_steps_per_unit[3])); } if((activeline!=line) ) @@ -1723,14 +1722,14 @@ void MainMenu::showControlMotion() linechanging=!linechanging; if(linechanging) { - encoderpos=(int)axis_steps_per_unit[3]; + encoderpos=(int)(axis_steps_per_unit[3]*100.0); } else { - float factor=float(encoderpos)/float(axis_steps_per_unit[3]); + float factor=float(encoderpos)/100.0/float(axis_steps_per_unit[3]); position[E_AXIS]=lround(position[E_AXIS]*factor); //current_position[3]*=factor; - axis_steps_per_unit[E_AXIS]= encoderpos; + axis_steps_per_unit[E_AXIS]= encoderpos/100.0; encoderpos=activeline*lcdslow; } @@ -1741,7 +1740,7 @@ void MainMenu::showControlMotion() { if(encoderpos<5) encoderpos=5; if(encoderpos>9999) encoderpos=9999; - lcd.setCursor(13,line);lcd.print(itostr4(encoderpos)); + lcd.setCursor(11,line);lcd.print(ftostr52(encoderpos/100.0)); } }break; From d9f2f509d52995c4e0d6f52f9a8f1e7359d7b132 Mon Sep 17 00:00:00 2001 From: Blair Thompson Date: Wed, 22 Feb 2012 22:51:04 +0000 Subject: [PATCH 244/430] Added new menu items under the prepare submenu. Instead of a single pre-heat, now there is pre-heat ABS and PLA options Added defines to the configuration file to adjust preheat temperatures for both --- Marlin/Configuration.h | 10 +++++++--- Marlin/Configuration_adv.h | 4 ++-- .../ipch/marlin-7ce658c4/marlin-4b8a948f.ipch | Bin 262144 -> 0 bytes Marlin/language.h | 3 ++- Marlin/ultralcd.pde | 9 ++++++--- 5 files changed, 17 insertions(+), 9 deletions(-) delete mode 100644 Marlin/ipch/marlin-7ce658c4/marlin-4b8a948f.ipch diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index ef0d206a8..e36751e85 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -26,7 +26,7 @@ // Gen7 v1.3 = 79 // Teensylu = 8, // Gen3+ =9 -#define MOTHERBOARD 7 +#define MOTHERBOARD 33 //=========================================================================== //=============================Thermal Settings ============================ @@ -44,7 +44,7 @@ // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define TEMP_SENSOR_0 -1 +#define TEMP_SENSOR_0 1 #define TEMP_SENSOR_1 0 #define TEMP_SENSOR_2 0 #define TEMP_SENSOR_BED 1 @@ -129,7 +129,7 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define INVERT_X_DIR false // for Mendel set to false, for Orca set to true #define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false -#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true +#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false @@ -194,6 +194,10 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define ULTRA_LCD #define LCD_WIDTH 20 #define LCD_HEIGHT 4 + #define PLA_PREHEAT_HOTEND_TEMP 180 + #define PLA_PREHEAT_HPB_TEMP 70 + #define ABS_PREHEAT_HOTEND_TEMP 240 + #define ABS_PREHEAT_HPB_TEMP 100 #else //no panel but just lcd #ifdef ULTRA_LCD #define LCD_WIDTH 16 diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index d73962cff..d47b9b262 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -74,7 +74,7 @@ #define X_HOME_RETRACT_MM 5 #define Y_HOME_RETRACT_MM 5 #define Z_HOME_RETRACT_MM 1 -#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially. +//#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially. #define AXIS_RELATIVE_MODES {false, false, false, false} @@ -152,7 +152,7 @@ const int dropsegments=5; //everything with less than this number of steps will // You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT // in the pins.h file. When using a push button pulling the pin to ground this will need inverted. This setting should // be commented out otherwise -//#define SDCARDDETECTINVERTED +#define SDCARDDETECTINVERTED //=========================================================================== //=============================Buffers ============================ diff --git a/Marlin/ipch/marlin-7ce658c4/marlin-4b8a948f.ipch b/Marlin/ipch/marlin-7ce658c4/marlin-4b8a948f.ipch deleted file mode 100644 index 2295b1ff94f252bc6e0baf9fdf9738eef13e70bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262144 zcmeIbe^^}Gc`ml+9BgA-wq+aJvQ3ohUarqY*O_ zV~?0I3_2V~Nk~ExoU0_*RveNj366um^-BkiPwBYwh*@c)xGG>&ISu4-9RsuSZ)x-SVkVMK7lM z2h!QTX!A>ZqK!ur{n0)9qI;Y6G)0^CyxP3))#g`Te3uvTJg*UF%d6d|24LU)S|*Y1 z?`};Ed^w-Zb;B!@?u%dCBUj#wu)R&9_Cmonxa#)7>){aDiT~n9PqxI{ zPIt8(J9*^zv6GMl2Qz5K$+B>;@(RvX!q3p;Z8-P5($vIj|Dc&4=)Jh`1HI99;&bIq zb{Uhyr#d>~#_r{&m-l?u$Krnly!RO6*G?VjX#L!t)fVrd#ZMhM_VV7+*HeLdcC{AlNqjM^riXVNgrL@ESX1trKmd?&o z$G~4}i7R8R%F1{8FrCoFZ?wcuoI2KZr(Khu3ZnZabLOiNx~HwH0-MDTwhmrquWv)cD_ zRrzMpXS>h$^!V**e(B|x_I6ip6|-^r2k!l#6J64g{>orF+0y^kKt7RKoef#7&bNCo zpU$N7Z}nvp;*jKXD;?IGsriL>q_pz4BuB(R5FLb|8B$AAKV|Fqp_h zPv!@c>1=dQ69&;6E!~NH=EAw2Zlt>!me?DFb@9H*G}p7pn{3$Q^>nVmfAOPTM(z)V zvQzXMv@V#*#d9b*!#;>J9zXQPiTI%|j`F>qd8H{H_wDIp%=}d|-jmA=4)FBlwmw(^ z&JLzCdES~5@l1LkA5Hh=z2|{qTfW~9n8@e*(`N_ssd&6`=tYlhv5ovyD4y=aeGV4> zy=ApJF>oR9=5l7Mne3qxt*4G0JC1H`^4m$hIhIjj!*Ij`&xn+P(EXpjyuEpi-}hp3 z|I~|-I11M~G6y3up2p_Pq2jfXvFv><5}P?()OG(v@!GcQZYeLfZJxw+;|pGF-zU9T z$AR_d$F@%$UBBOxXs5<}@(eux{PR=CDhwCSNuKVp-xZ+VI_<@FD?aFPLxei;uXjkrV zu^*-`H>HPxP~R=iz|`Mu?p)g9&DHcCBLlmCee=dv2kv!`G4*X7YT_5YSgy)F!M1Lw zCciBiSj_2M-j*G=g_557Lmfj~s5>;3XOw}JKi7G<-MfDH%i4$Ay$?12fPtDne*9zk z;OOIz`K=j*-=@s6-i9n}OT^ zWb@}u{khG@T)P#IPTTt%Pe)s(#vfffYQOpDupeE|D)OUZpy7Ku9v&69F7DN@Y!cUJ z9v-J%exAn7@p0G3e(&MivXPv}eztPl*51mxuvlY%v~k}s?59zG_pPnR*Mmp&Ze!>v z+G}l>v3UE7)s3&wNBB;E=?T1_+b;d1c|JW1L?6NP=~idw`q!#kU$#;^?oMpKoVOBx znu{{{L&djFG|_bU(a z8QPQLYGmxmaP_3xt8uq31Kqz>c`VMzyOi~0pZkl-cJnQs_vNo|&AhhCnA>O`XR7?2rE>W9w!n7+-TQ^& zxQIT&d-wQPi*d?vv6if+Z{xme;XdoSA^m*hSswzM+Wy*Y_&avfTjXcbH?<=aY!w3! zDtw-QdRXr*tH^qSg5)+_L!KaAn;N=N-$idKp9;2p8QAq}Yu^`gzrD8Jw0vS4ekNsd z-)Om9;oa)om#X8;jyqo^&$iE#xbEEo&+_YO_rA>f`(i!#YP)?H*p=0>uzh+D)Z?k6s zllS8;JCjdl3_gl>jy>djTKM_L&qZ#F{;a}A`)7XW@pI_rI`NF}VQxJG&yx3k=gE&V zcid@R8FmA?Wv!v+L`BJHyc}G>+}O^jaC%Oa>+|ZhVexW**Nv*1|UX zzUJ;Xx8JxKTIYUXyN}6{E%<%s+nv)VnSb3D_?+WOwqIjEdIl!+Z?rsmk~PAH7#My` zf0J@U$*Gev@RTr+5BVLKr=*!rO*7iBZ|!HX8T^gkr-tljupwPf=zATXL8`UM%D`h` z;IjTK+hgImT#z$c@OzD><@+#hOl|JH`ri4?#Vg0>vnIRqW##ly_4#zVl-uN`puYQ0 zO689#{-eUZRmC&iXm0Daapv1wH@8RCXU{5b{S)||m}iyit=jH-{f@$|+BKS&GVst0 z)NPaR_j%}sDu6Pe3@8K77y~umd3K)H?mooNnLlI0!fUVc=Z*8v!0(ekYkjZneL5Lv z)SolnQXPBK`FyGCYg_+bJYVKJX&N8%eRbgvwmwf=WuSG)@7Qg2J~toY@9J!JE{gYb zGH^w|1NrIf*fm`}6w?DT)`j01tZTLM3kB69NGs^xd|6cPA z9XH!%fHeQ%v$N)Jn@-t4qB;HkjSaA-F3Ny1pbTsc2AY0B@5NiAC$?7>v%j&vant^r z>$Beo8>gM$Roe*0cJ`_L{-fb|_7Q$ov_IsX$i81GwrS@!`aa^N%f-C6+nCzi`CmciFRtt^)s;a1imk7>e{0jN1e~m=PB#& zY4v!T8OTgLnmP3-Icr+y_rc7__iu#dba|b)VR))n1~!|48)u&Ud~L7dZ&VHG_it== z*N5WGf9uJQ4U^=|H=kTCP22c;>CWiykC-9!RF!w0q2FbGsyc3y8?$>0e?QtLH+9qD zhW^rvjXU3=cUeD++jO1@*r4AJ`AB$G(8tTb-LbXzp>tdGbDQxhe}?n%viWpHYxw20 z$HvpuT5ZkZUub{pC{PBr8Ux97yeqmos&ja&_1~k;XXLxu=bOQCW{d81H`2EI`u!Ul zp>13H^lrw_RQ}fHttHLd_~#Y3^+3?%m4ONj>{#c|*jIqrR^qO2Z{C`=l^S02`%h=P zrbf0_yK0=Dt9&048PQ%~ivbY0s$m)PK0(mQNmXXIa-gqLt@O9SdYZjo1N}!Ss#vKV?7}PzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk4 z0cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx z8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5 zlmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1 zKp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF z29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC% zWk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiL zPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk4 z0cAiLPzIC%Wk4BF29yD1Kp9X5l!2$4fnA;#yK=*ed0vEPp|QN;dE(!jIKZ+7CvBfA zBZtU)UgW%vz=(D{=x0!E`P(e{b7J2F{I^3+-&3Fd?twEXSs#P^9VlJ-6y&vK$Gz|2qeokQnp13w!jj&%@=9e&fI>2%*i+=e!u(LVjld-Pa59 zM#w(~8EyW}4}bSS^qoO}AB6nlBLB|7_~Pl&v{$lN?ZnKvRj z+VQaSSK@bxj&?k#$LSxOH%Zao0~SvzhDGMa zC*D{YJo@k;9}}YA_cn|NoRm*jz+=91Yv6JHxefg-jA7#NK<JM^dDfw7PCuAHYKo5Jy{$1je>K*VC(_I|$pn zoYRnX;+lD$LD`ElgOgZ&iG2DZvg^rS@Gd0!66YnUS;290V&B~r-6Sw--ih|2d;r-r zO2(K)Igj%e&Pp-pS6dT_-J=hTmQk*V{Xj0|XEBies?QrS>S4>$&4+Wj3A%m4Ic<>W01+?O8x9o>cS-rkfwzpBG)tyTL!s zI-H{-oPdqozE$0$Yq!TuT&orp^KCtqWtZ{Fd>TIHNH zc;a-!sxyC_{=s|kEz#xS%ae*Fk-2Lz$3yKqFmG}1nS?D*+V6slr8}R<&u-Bzz?LWN z4vNg>hxT2ft9cK`KTg{BRL;DfY&BAu}eO_#t zevmDoWV}U`_i!%ZBvvw$@lr!6Zy?owG2N5$YTz>|7#x3fs836s{57CHD|Nn`l8f1KDtm}mOAm0sMo$T;FI+{>QSpcf_k&miFXC{cB?*#dQ$4dpGG}z)n`#3 zl{)cxj9YbJmh{hc=-Mmn<#@lC6<;3+|JnXKQNIm+9_woJ&fuioviLj)W80qh@0xc- zVpn7xrmd^5hkmp|J{)h&(9_QxwmucUl*Fg8)vygT5G{)?#Z zvg*sI@0L2Syc+l%wCZ)JcUkrgsOKy_V~j|h`S7@E>Fxad{fFq1@LRx{$2nu!k5F#a zub_TU>db!<^%bi=jrz_VLHn5hEb39IGats-Cw0SLyJc_Z$7hQ((6wTG)_gEHA@YVS zf7_npWmI&{u;)qpagn*}6UWaqbak@!&^CfME5P&*;>|-}i}iT~SUjn?BY4c;j?elM z@i6yj$0OoJ4V=gE^Z@#1xi6H{*S;rG@OAaPAMJv^wFJL({n!otB0Ul4<+!H*PPmb>u z=<3iv)3D`9`yKBK_;BYR*T;I%EyA|pBe*xCY!(^uYana2>UF4}w(9iBSars`WYz8V zus=tkn?!rM;5ULZiSw#upGW(c^kdD8xN1$*M(gYJqv7tz+n zd|WgCqE_AZXFko))gg~0e0efPdj)&ua~irD*jl{C*Z(`v zvy%K6+K-dhOCodc4_seXpc|<$e%K#7KY;O9VL!?Bp#l2aYdoJdL*F2Iz`Uft$yY1% zl$!%>DeRw#-v#{w+S~l`;G|tre1iE>yuY)5@}f(^o+s@`jXkbye6CmH(ADwz2ev$E ze_iaEACIZeM`D?JFE)2A&>y@Jl#5>oa-Tm^Y{T$@;&tF%{{Qjg)!CKzUM+plRm7Wk zaq2(>4ZZZQQLZ*si87!JCG*ry&}lx3+8o{j2(u3 z(00akujEaCN9B!)Y)2g5w}b02>_ZN~kYLl_QF%*(-3uLKhhe|w0E_~gUmQYzN9DDP zY!)SBhheum09S#{?+&8Bqw*$27CnRS-mL=rumdm!Y<|xO{T&s)yep7hLdn=+dB5%e z+z`I$@2I?Pk=;hg*kRc14#1pX)8A2fH$>K)@M4S|hJC~VxGkK}-%)vWA{#@=*kRZ| z;Q-tNHs=og9hH|8*%C^|4#WO}1MmRY&qGFkN9E0nto^JPW9%^O4hNv7E?7_K@2I>+ zkximx>@e)34nQ5SIlk%dsJsy)>%sSA;yMibm;(?6HaYR&@2I@Hg53=rV~1fMcK~(^ zC-iqz-hPqYV2LvfyVC*K4{WX{zQ3az7wo#E7h~)&?4NY}JAutPPk%?{Eem!II>rve zKH&hI0XD}s{T-FpDYAK#j2(u3(gDax-t>1=-ZhamrttlhRbZcT0EPvd{*KD471;<% z#tzH-4F_OMu<7rpyrjtPqGaqa?4NP~CIp-Qj>?-6+5U6*Zn`S4PdfnDfz9v0qQ9f^ z>P0q=lCi_`{%Hqb2G|@Y^mkO=kjR!%GIkjDKXw3a0h@D&{*KC95LxGWe9w0k*gxX{ zECQSRD*8JruSsOrP%?H{-rWwsvT#CwN9A1>S#7TuW9%^OpLGCgJ{0gxe@Err6YL~( zj2(vE;sDeEo9hYv9hKKAvKf?&9fsZI05kxbeMx^u(NhvnVp0JH;}-|t3$N9COs*#b(&4#Unm0B3;B?+&EDqw=Oj*7PMW#@J!l z2?roA*z|W)-cFHSM#F;89h-?leV~1hCHs7qZ~8kb?~KUqpk(azVh;&6{ax&vBHNesVvHSz{c{e$ zWngp8)8A2fyF_*cC1bA_dqVi8zl)t0*?p9Z9fp0$0hpG&>F=n#TO#Yo;k!nw!2Wp$ zU=G;4U((-EdAmh6g_5zu@^-Or1DoHUPJb7BRAe<@@nVb}hW!f;z;UWrHutgg zcU0a3!Ola+*z3jK4{ZOtaLZtKiR>0i#ty^&B`3K~U~^v5-%)wjMYekY-!;7f>?E)` zzUl8`?-1E2O2!V$`^cZ=*cO2!Vu{xt`nRr034qw;Quta%9Uzc+y0C3(}|#jX?C7)r(t%lp?I zfTZM2e@ErzM7D&IvDb^8m%QokV$X}L{Vlxzt^#}10T_|I>F=n#Mv+aTWbClKUF<8s z=JP!LUF;Df`zqdl<2nr6eNLMKHuqH?{9Ww3g53=rV~1hiZ~$h2&3iHZ9hJ9VWH(si z48#7K1F!&W&UxS8(Txjs-Ou6u_Xe;Rg>U*h(B86O=b&Tku)Hrj01tr8zvDuGN9A>j zY#t?JhhhJw1F-X>0Vni#RNgg_HD1E|?<%l=+X09In`4mvj>@YQ*$7I;4$J%N4nVWy zO@Bw_B}H}@C1ZzSf5QQ21vb}j`a3FbMr8Yc9`C<5fZZi|)8ECe7uh&U#tzH-n+`xy z@}|F|@`gmVjFPd}i=7v2`n%W*BJ2DGy#KBO`-%fF0&G5$(BDycO(MI7lCi_`cCoKW z-t>2|FN>`97xDfZ*J0Sd;{Z%b-t>1=-aWxiLdV$a#hw;y`n%YzBAY?U*kRb;asXz5 z&F3`wJ1TENWc9;%|Gfe11z>X@OMe%8MX-mUW9+cJf7b!H2W-wu`a3G`w8$1vGIkjD zm;>+t*nFO+zoYV|Mb`97c>i4m_P7JE^J4)v{T-FJQ)HJ>GIm(r|C0mI2yDI|q`#x` zG9tT&lCi_E|Fr|KAJ`v)jQ)_knsJsS|O`v4#u)G%? zfJ?ysC}i|^RNk=2R!}l_8210{089Xze}jttj>@|uveUnU_uo}u|1S=}P2q(8j>_97 zvT2lz9hUe1>HypkPU!EbyelHxIfD1!xDLa<=K_2@;Dr9J>b_uSpkwSX?0;hcFt2)G z?}Ci}mdd~E5ZN3`#ty^&w-x|>4+=K@EtP*cC9;NJ#ry9nu$LTwB(S+hroW@|YD6}S zlCi_`{@)#dOTgw@MSn--oe|j`l#CsQ{eL(BSAfm+g#M1oyD74LzlQhURbc<04!{(! z`PmWu9hJ9BWLHo!c39r`9e`QMoBoc<%ZuzjO2!Vu{=Xc6+rZ{MjsA|xyCt%YU&s6J zDzN`=2Ve=4q*H5zv1twya$4vhmNts@^-Pifz4+?`n%X&BD;l>xrbp7H~@KIbDYrMQF+%z zw);2m{<{k7yaO;MeAC}ic{@ZlijuLz^8WW7fC<5-zoYVcMYf2NvBR+cnFDYg*xYN< z-%)w9B0Km`@cz3B>=_4OMzHDcsJy7iuA*e@u)P0;18@u2e8)k5N9A1-*#ne}9ftj1 zIRJNo&9#dDj>@|&vaZW`|6K+4f8YQtOWyQ%R9>^luA^k^u)Jp-fSMl&)^GYdDsN0= zJAM=Izi}Og{U162yMWDcLVri)EeUonbc`K_{U131jld?~^mkNVyU1oyGIkjDf9wG4 z2R7F#`a3FbQe@HJ!u#(ku;(0r4q$VQrN5){Jds^O$=G3e|0fPWH?VncpueN?xFR(dx=pH9mum3$l8x-^c>j&-FzkQnVBZEd$B74j7yGVYcSFb6Vc7Ey zz&&7duStJLQ4VF09i@gGD&UxS80UsCax^Lk9cNN(Go#Vgb6TzIPzoYV&1v>{F zV~6E^+X1KtHuI*xqw+dMHjk3A!?6E*2Vgg_`7A|$N9A1;S>reH{<{k7|H1)i1vbYw z{T-E8E3y%kj2)Kuf8zjj0h{B5{*KB^itH{*#ty^&R}Mfgu(^KI-%)upBHMoj@4u_S z{%;+CAz<^KMt?`;)r)K#C1Z!>{XaMWmj#>tj>;Pn*)mGT4#WO09e@d7^Ld{Bj>=mQ zS?BNI{dX1E|DywNL-MA-qw<rve{&yBYB;t8{q<$YUc>f`eW#V6Uh-?WZbEp&paQ-o6VZ2{t zt&lbSU?dhn=e}?_bvC-U3IF!&eL?h>q2qXE3=tKId6D)0F5VI0IxK!8?2PkApf z(smA^&d(r-Yhs!5jL4QzvaMk;Z(0~8=4r@oIx%U`HmTnom(oDo^qA7ahNHDd~V*_aQ$Tf{IiZ@_QdiMfnA#}RSen9U-a zL&=;NleRp{wX=Szh+$&xhHtd7w4IkwC%44)!L0wLM7IBru>RqiF)elB(!{TUoe`Qo zoq*pp#sopHGzZ$+7lW}&Tw`y_dXZg6$(+Js4p|tcopq3PAVvfO!3?7*)VT*Du8C#J zF_AU=G1fm^Gp7G+2LsbK+M4@Wa~W<&;kUq;aM&ZjP5&tP43fAaDik#$8%N2U!rFPp z!Z6&fz;75a?3i~@XYRx;1e1#)k?okk`iJYVmWV@_c)+bs+ea}j;*oMADqTNoy02V|EKgV^^_a$WH8oM1EJ+wmv(JfMnL^{_J#CKl_pF9orZC>e`* z#?F+xMRo%va|vtLsD)w28j)CcQF49|&%`k0xX2p5gY^T~VX>Ai3_I3}#5(CscC00d)xIa_FXEXP zrkoa8>!0G82iIY-cEZm1+OaZ-VdQhTW}gw$$V}NFvYRNGPguNR3&Y$8qmV5lMg$v$ z#*5i>^2GqXb8oQEAhwBT%Bv!4#-4?Fg~fefVVJmMkPRb-8}|-moae+g@l07KvPqQ8 zD=co#!Z2}bA=~+Kk>3oi$uBWY98->ntQGq~<`Wk0u7zRZ4MR4L7?DV@Mx*eL`;hNy zhTPi68eJ{o%|l1SGoJ~@8*>Oei~l!>Yz8IsXMTMD$-`jz*Rt^(voIp>L_XN~yxjEi zp3hqL!?2k^O!_sy5_}dxeAew_LS#wobC?@r^Iag1aOe1Ae*Q5TBc zBAY?UoEVdzA@ML+{2DtsB5VG0+y`;Zm|TN-l#5vd zyFk0Toh$HPk(gsY9=uZ~uCX^|oyew8GAG95b3Bi7F^4P+x1BlYZXgzYJN5@-h`6lV z$Ee8a{{m|Ot{Ic>cX^bHxnyCuF&Cj5MlAZ)eJ=Q!N#e3@A1i_}1|4%^Oum=lQ7+~g z3&V|h8oF-8qVIi_eC{PK>-LeeWXy>%xnJi|F6M$|@5Y>muI}?e%>02MW`I=s|DuIa zswu7UXG?hu1MA?m)wu`Sjs0)hRk%vvV-looEkpXU>#OO3Agp z-IAI1@?EZbn6+!HwHU+r?)Yomp9IJCW8KV?yOzy-OC)AvMcaaRtHiP~nB$W8^+IQI zw{6UIxg4q62W;j*f7U0Z^xJRAOl-3^p{+R#cHLpC{o=dhI@&MS#@;Rq?YC??k&}%z z30%e{mhJ1eU;KKZGr8L~=DJ*t)D5*u{|ok{lz#gynTgGJqVDl-8PH?EGP-v0-SIbQ zzg!!gT^8DJ*-XEV{Eym;2+@2*3r8P zIc;|x3*z^pY(&2qzs)X_n+^CB;?1HDxTbOblxyBy=(+aZsi0qho_pG+zc24!cO1`P z<$y&Ng`UqFV-@_Hq31L9-3t0v(I33AI{r9x3^VsnSL-N$*n{J%{qF*7@?+K~?m5|J z^X$er=9z8Y;n8q22l?*KNUT@z$fxNOewNGis~ld`;)Tz;e1B{(cR_dSCnK>@!6e6~ zANl((oQvf!hb_z@`x^G<$UuGx=fsIfY)ywaCnK?Y zg2z5(&b0X$PTm8`;Wb%(-)LPA(NT_i$amvx>cTrBs}Ib$`Z(-3&dTABSeWE^4?a3H zIbVYA0WeJ*EtLUfKp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk4 z0cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5lmTTx z8Bhk40cAiLPzIC%Wk4BF29yD1Kp9X5l!2$2fn8oCcIytxLml`Pg_GAXq=KI8an_Mn?_DiWA z^G5=F*+4usl#gLyl*v+2I1 zn}1ItlZhvSWQlWbu&*ayOu=WTCoy1P{JPubo@`GhF;K+l$zF)#yQEV6=Mp`sc&abo z|CXOU@r$(}&z>yQ*-Sy-lgq`wGMFvNdmx|4r!K(Lw-Ud>fqeEtARun?Y&_A^1NyT4 z1uV#VvYEjPHlM!i!i7Yibcp!o68#B53-Dn#kR9yrF%1{HRsEk#ol6X6g3M@BXg9x5 z8Apk1Z&4|=$dGd;l}QEZ_;G_6ahG?ox5Z`q$Jp7)`?%?WTp`~eHQzr8c_#5z zX>Nmwpp&FcsSD|RI$7+u3)!ThD!>SGPG87n`}5XZaQojL!>NnV#xea;>5HkL8-1+& zTe%W!>(r1nF0AoJ{ke4MI>LHi;zCJm+QqHeZ?G+qpSN45Um&xy zka-j2b);1qS&Es=m`d5Sx&uewFPr_c!1#ICeOY>)iDP^WnikX7Z7U)dMAW>;rbS2}OZFIQ_Ca;<0l5a)3 zO!{olH9jBt%-Pj=*4Rn+^<)NR$q4!;kxca$U3^Xhn*uOp93(FlQ}Scs=2MuG<+#uE zn9&%t0W0A4O1 zcP_Z=TVWyqlm6~pz~WfgCHOfx?Q`#`YtNn1IZs=698{W1mDZSQ=2VY!|Hi!YZ?|!) z@od|Lf%ssbvmd#D8*bXV8`7>Xi!BHDRHK_BdZ2Dufp<)nDk+Fn>o14|PFx8ss~9mj$z zlMo!n_U+1V1NI&Rm>nheHQA4pq{ev3R6dcGiNv~}zeV7Ba;mnCZcKk1VZ+&ny`;@q zafci9G3I!>Zy?VwSWb$Z<+A=Njm=5vzR(?mx&FlY3kl25uYKe z6YQje93Ve$RyMQhMWsN7)bN2WO>iwy6c23!gX{^dNrZqkN+}yP( zH+U9HWD%o3(Rbc-KJ&O?9p!^QM`+=p2RX1FN%B~2C&~XHzwLxp#yz3kt=CD zY-s1UpY?$pp6#IHK^u(4d=^hGzCdIH`L_xapEiT?7|H7aKNdRK;@QndxRsq)5GQTT zH9Q3P;R<*cQu*F&U{0Bvw;$6D7`J>rg@L7D72b%HuV35~Ph|4NtQZe6 zds+3{OIhDw@%bC|!cg*k@Uoy^UdZ@$XFuld&n~9p_EKGz_cyVK#4mvSUNftMHWafB z>ZZM6WlaSG=F5YBPn-w8U%%;tk(gg`{xi0Y*w3Gv7$c|MSqu?-pX|Of>gi3C+()=a zP4}6e4%(Kq=0`G%8;LazQkl|sP=yXcY{usXt>0Q3&SkQRV08%e=dAZa=do1Txu>mr z9_GHUB4#FAc6c@fB%1OD6&vSXe7 zk6GgjShqLBK|T1Jqk%`zR{l9XyZ&Zx@nr*j!2N*Djg3J4#cT#i8ukOsc>LI*WAV5T zOPhH7$g#smjveXxX%Rve$PaZKdHvY&!zH$f4E```_FReV$g!?Nt*s|YWajDH4}Gvbr736TV(RX zQpC5YR?g>2L}E9PPZrGrS*b|u^1W&9m~A}VJ2L4$bGr@fEK$HaMmS!a*@nJ+wOHZ| z;%USGbG3fr0fu=~D}7n4iqE+;oC=$=0KY^ec6i9SSiJAVi&fF5hI&%6VKaSaiGp14 zMtQLGeHiX71(DbU<0_y&z?PvVB8i7ty)TgXe#L50zvmU-!04q~)W5v9L@(8%UjBfz z@i%`@I>_@Z-k=xvCGlca{5fDx9(lcFE>PBb?9kD+!r%|ExZ^e}iu98u3T)En@M!|} z$H9iNAj95ewR~U@&soK`72n)jGCWDx?Jrg(e+caM7ptNlfW(Ij>cy()2TS$Es_5S| zbO!ZeRrDR0_=k_24nl~mFPqI-G2_^L;Fg2ERLOlPjt%bs2NtG+xQjpKJ=vT*a0MJv zh8;*hR)S#Rmb;2s`=|%W*m%8J5!2}XRhWza8W`o`W0QF?o#2Ny<#RUrweX8JtJ`OE ztD0!>axvYX#|HwdX%L$>bF^R-J{ZrKH0 z>OwAG(l@}cHU$N{oIDVqb1hlstqa-yT(7wkTRQ6oOZ&t?aUU25=Rr;Ei&eqKCto?- zIOE0LP!JP4?_gtHR7gH}Y1?BSf@y2f;A5WaPvb)lC~#13FYv5i7%YCO!+I8zIZ+%^ zzE2J##(bR~f4XN?9^8|e9hRR*ndjlbfzszC`V<}_q&@g-3GYhe1%$|i z6HIOle8_kNZSTpr&jNjenT%ODX%mmzlE5z>$9?5kTWh?f{m_Y%g-dvkIMbkP?Mr_M(AHsRl% zy)P7fmyp+G3$HX%`C50hd|ne4PLNmE5$m?=@C)$f+ln8N}zZgT;G#vHuFX=$_Ah_Q&?@>F`6*?=Et>VPTca!Ih21 z%JVdD;RHFI>}qX^w;w;*g#lK4HYny*qBq0J=d)`Zf4|p{<3_JsZ+M}6UP%kb&+Df+ z*yCOCR%{9|_6;I+h1?t)lN@d4klUh#Y5dnJ=PTsq`SQTi&+XWut|M=>#hviJK}mk) z?M#|Jhx>mIf7jQ-Un@VOOa4%K4ks)eKhOAU$B%cEGFXydiN27QpVxKd)#%4DQL88$ z%I9^^!U^&^bmGLJpN=2zY&&tN>-dS20$rM$VB_ocETW+%Y}=YoU!%vCQoZ{Zlc!uN+`L7k<=!XAMd7f@qIDQ^-A3k=fqocFyMEvBb&d%c}u-_4&622ALH*x`ms$W;brZo%IDf;;rO}6xh9p{hxu|dwES^Cjy&#I{^418-b95wmMolN z9$1*T3{=dgppP~;1rHqb-7(?Cl75_OG74*SGt+!pWp>CWPV2X%$< z<#TA+L-gdt3O`7Pe#9e%88vI=Z! zUn-wluZ0uj)`6{m>GQ6MLj7IDzGwLu-CE^Hh1e?=P7wR>k&ZQDcl-&)xR13~v{Kzl zh1f$D4r2$8^u>4028FsChczcMNfFTlV2m@s6yie7o;iIDTAwv|Id19+`6zfch20?)0&$ zi5l1}RfwImaDvz^$FX5;vp+*KQK;{o#9q(xF}k(N%%1Y?zH8wGvAIz`*>&h>XJL|2 zZVp~AAbz`#XQbifa)tP3ESw;||C8Q6AnV07(U(U}BUG<$1Ye;SjqJm(N5S zc>W+p-j7w9(>!HV;^5!8=kWoY%T9b>vCjWi<&EvqdYhOC77I(JxMp4`Z`zJ(yBn(g#NGH|XW2m-l?uN2guu_q^DdGI`U0`js-e-dBok zdLIpO?7}%@+0u6-2mSmuy>{wIhiv*OD`}6fGdr6g&l$9%nR%5t=s#OVx9i7>?bsoH z{4t$&%a*|9KX=sCgaZr;?n)dyg`?5`q3pWpv%2Ew;lRCppXZ zq1wU6#g^koJF$y3FPBQ%V(YDE+uLYM19K~L(Emmm-TqgLZ839qCv5jywhz@7yvoB1 z$Ci$hooy{AzZp`EN|sd z$(Q#4_m~qu6Pv!gejev$wabm^*8c&AD=SxLUUO(`$Dtzk)wK1DWp8jJwWh^bADq4| z*q95eEP7c&xio9}YE5~G+iqg>=TWR*Yw#!=|4T1+@U``|x$_G}dlNnK&SLhr%5Xxv zqJ{A)FEd)R=QH)NvRs?vub(RU-D&glR#Ew3r0$krOom|_eT})0vK{`mC=w~xO50-X zHkVpr{<#9F8+naf^jdxBx|ob^!-i|$%;AS?v%xRqz+Xzh!S%G#VRERXx8(-cmf6=4 z3B>m7x7NxM8&uAS?l}OKTLnx`90Rs*rEA*v{uSN_SzMP}BWl|sF?&6%1K;x|Monbc z^P-hPl$D!2skFy9<@R{~nJ)(JC35SB@NAsGvhx4c_5sJ;4BA@`iSZUi7uE;t%W@d5 zjF`QD?Zx(4G0XMAWpHly!B~4F)@gido*RB7eGqW%cSHA2Jlq_ccs<}lrk3}dT+|$N z87bDuO|?g*{xx#5u5hiWglXb6Ay>1fGO|iOw%o+BW%jk1=Nw}V=s#O$t{JagbkAd5 zz&u}-f)OxJ|y){7sXW{ zCVx7(^S@e<^>96ge9Ph5c|5lU*Kz!u`PsqqtA2KR$KQCdX$!j?cdeK=Hh0V;TJ#y- z4DRZWKHS`_g+KE$d_>G7rLe+bY%8cs#FhHW$j#j38dKtERZP5j*w}OPI{IM7+P{_S z0}IB#T(s)I?$R)^x*FCRx^Ot-Ey3b}3>Hco~BFvZb z*<3e%I~Tu&7r(eiuDV|eBrjbYNc1NM(|y^OdVN@8G#tY{Mo!lGyv5Q!hV6=VZR}Wb zeP%g+JQ%aQj>iwZaUy=G>jJ)zZtrJaX)+(c2D-C@X?#5j@?14fa1S!y3TIsWoQ5QJ z;2->ki7^Od_(c~Huzu)7>!~Bhj{9D$Zw6moXrDQWY1-`vk^hG6igiu<=9h{;Lv%FT z7cKnOK=4EQ{;v<1&%0<}co(#a%cze`o6Fz#VzcN&Uts-59iJsf`3^{q8M$7Ok~Sa5 zY06s5ma>f;^c(xhAm%)JZv0#F)D%R+w}MNxw10t;X23mtXS<~9J=;ONgIB)V9HCD z?ZdQZ1^DES?J?XDuh>Us&4@x8v~>*ah{~Gf3*|rV9oUXp$(dr}vux@LO4@u7rztxu z+lOh#Ebz%0+hI5>ZHK?k6?%layJ$yqnRZ~i>bK*v Date: Wed, 22 Feb 2012 23:05:52 +0000 Subject: [PATCH 245/430] Added Fan control to the pre-heat settings. I find that the PID routine works better when the cooling fan is switched on at the beginning of a warm up routine. Otherwise when you enable the fan just before a print, you have a delay as the PIDre-adjusts. This should also be safer as most cooling fans are directed at the hot -ends thermal barrier! --- Marlin/Configuration.h | 6 ++++++ Marlin/ultralcd.pde | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e36751e85..da4a0def7 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -194,10 +194,16 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define ULTRA_LCD #define LCD_WIDTH 20 #define LCD_HEIGHT 4 + +// Preheat Constants #define PLA_PREHEAT_HOTEND_TEMP 180 #define PLA_PREHEAT_HPB_TEMP 70 + #define PLA_PREHEAT_FAN_SPEED 255 // Insert Value between 0 and 255 + #define ABS_PREHEAT_HOTEND_TEMP 240 #define ABS_PREHEAT_HPB_TEMP 100 + #define ABS_PREHEAT_FAN_SPEED 255 // Insert Value between 0 and 255 + #else //no panel but just lcd #ifdef ULTRA_LCD #define LCD_WIDTH 16 diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index c43290738..02da3dd30 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -490,10 +490,10 @@ void MainMenu::showPrepare() MENUITEM( lcdprintPGM(MSG_SET_ORIGIN) , BLOCK;enquecommand("G92 X0 Y0 Z0");beepshort(); ) ; break; case ItemP_preheat_pla: - MENUITEM( lcdprintPGM(MSG_PREHEAT_PLA) , BLOCK;setTargetHotend0(PLA_PREHEAT_HOTEND_TEMP);setTargetBed(PLA_PREHEAT_HPB_TEMP);beepshort(); ) ; + MENUITEM( lcdprintPGM(MSG_PREHEAT_PLA) , BLOCK;setTargetHotend0(PLA_PREHEAT_HOTEND_TEMP);setTargetBed(PLA_PREHEAT_HPB_TEMP);analogWrite(FAN_PIN, PLA_PREHEAT_FAN_SPEED); beepshort(); ) ; break; case ItemP_preheat_abs: - MENUITEM( lcdprintPGM(MSG_PREHEAT_ABS) , BLOCK;setTargetHotend0(ABS_PREHEAT_HOTEND_TEMP);setTargetBed(ABS_PREHEAT_HPB_TEMP);beepshort(); ) ; + MENUITEM( lcdprintPGM(MSG_PREHEAT_ABS) , BLOCK;setTargetHotend0(ABS_PREHEAT_HOTEND_TEMP);setTargetBed(ABS_PREHEAT_HPB_TEMP); analogWrite(FAN_PIN, ABS_PREHEAT_FAN_SPEED); beepshort(); ) ; break; case ItemP_cooldown: MENUITEM( lcdprintPGM(MSG_COOLDOWN) , BLOCK;setTargetHotend0(0);setTargetBed(0);beepshort(); ) ; From 01d28c18ab43b806c095068b63f52b879103de1c Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 23 Feb 2012 18:45:37 +0100 Subject: [PATCH 246/430] Fixed casting warning in sanguino --- Marlin/Configuration.h | 2 +- Marlin/Sanguino/cores/arduino/pins_arduino.c | 24 ++++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index da4a0def7..c3c942a01 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -51,7 +51,7 @@ // Actual temperature must be close to target for this long before M109 returns success #define TEMP_RESIDENCY_TIME 10 // 30 // (seconds) 30 seconds was too long -#define TEMP_HYSTERESIS 3 // (C�) range of +/- temperatures considered "close" to the target one +#define TEMP_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one // The minimal temperature defines the temperature below which the heater will not be enabled It is used // to check that the wiring to the thermistor is not broken. diff --git a/Marlin/Sanguino/cores/arduino/pins_arduino.c b/Marlin/Sanguino/cores/arduino/pins_arduino.c index ccb88fe98..af3ba5052 100644 --- a/Marlin/Sanguino/cores/arduino/pins_arduino.c +++ b/Marlin/Sanguino/cores/arduino/pins_arduino.c @@ -67,28 +67,28 @@ const uint8_t PROGMEM port_to_mode_PGM[] = { NOT_A_PORT, - &DDRA, - &DDRB, - &DDRC, - &DDRD, + (uint8_t) &DDRA, + (uint8_t) &DDRB, + (uint8_t) &DDRC, + (uint8_t) &DDRD, }; const uint8_t PROGMEM port_to_output_PGM[] = { NOT_A_PORT, - &PORTA, - &PORTB, - &PORTC, - &PORTD, + (uint8_t) &PORTA, + (uint8_t) &PORTB, + (uint8_t) &PORTC, + (uint8_t) &PORTD, }; const uint8_t PROGMEM port_to_input_PGM[] = { NOT_A_PORT, - &PINA, - &PINB, - &PINC, - &PIND, + (uint8_t) &PINA, + (uint8_t) &PINB, + (uint8_t) &PINC, + (uint8_t) &PIND, }; const uint8_t PROGMEM digital_pin_to_port_PGM[] = From 00690f7ffd5bc06d851abd373fc4925e05d138c4 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Thu, 23 Feb 2012 18:50:05 +0100 Subject: [PATCH 247/430] Fix cast warning in Gen7 --- Marlin/Debug/CL.read.1.tlog | Bin 3204 -> 0 bytes Marlin/Debug/CL.write.1.tlog | Bin 3350 -> 0 bytes Marlin/Debug/Marlin.lastbuildstate | 2 - Marlin/Debug/Marlin.log | 1042 ---------------------- Marlin/Debug/Marlin.unsuccessfulbuild | 0 Marlin/Debug/cl.command.1.tlog | Bin 5746 -> 0 bytes Marlin/Debug/vc100.idb | Bin 19456 -> 0 bytes Marlin/Debug/vc100.pdb | Bin 36864 -> 0 bytes Marlin/Gen7/cores/arduino/pins_arduino.c | 24 +- 9 files changed, 12 insertions(+), 1056 deletions(-) delete mode 100644 Marlin/Debug/CL.read.1.tlog delete mode 100644 Marlin/Debug/CL.write.1.tlog delete mode 100644 Marlin/Debug/Marlin.lastbuildstate delete mode 100644 Marlin/Debug/Marlin.log delete mode 100644 Marlin/Debug/Marlin.unsuccessfulbuild delete mode 100644 Marlin/Debug/cl.command.1.tlog delete mode 100644 Marlin/Debug/vc100.idb delete mode 100644 Marlin/Debug/vc100.pdb diff --git a/Marlin/Debug/CL.read.1.tlog b/Marlin/Debug/CL.read.1.tlog deleted file mode 100644 index 5fc3d3889cdb1d68b3ff03890a943cf732071208..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3204 zcmeH}%?iRm420(__$U_j=&iLCi}nZG>ZR!Wzl8c_7om7t=}DGCm;Gsz%uX_SJ@49U zr%{7C6}s>qmFcWhC9_dEtDR2j)u?4&v2$U+RIP`u+I+2zoGduiy1%8&2F@2su+#D^ zwV2)F)Tczpi4F5L#{=`W(F$)9t?~HiqR4e~W5J5W*ASP*pAwhF{u%A-J$r*g!(-6% zkB_bSG3*?QhL_z*#4dz?9k+CKcR9er$h@%ZHS`YT%Q+$!Sob_~zT))`!I-z9d7Dvl zO@|@_e^Fjz;1;Fwsu$T8!oHS@m!k7^R9p}U(~JtWwTjn(-UI&G*weRIKNVRR!oq1M M>-+H%R{l4NZ=vbVr~m)} diff --git a/Marlin/Debug/CL.write.1.tlog b/Marlin/Debug/CL.write.1.tlog deleted file mode 100644 index 703f553b26c58bb61f54efca99fc4a61d56d4e57..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3350 zcmds(O%8%E5QX2`#H$c-=}tflk-tD;Mf4(`U3~*C#MH2HSWKGGw1vL;rqdaok1Jvv zFrY(=6B<4TM96VO#?gR;vn?)gs8DlUaHZjTh7vdQ2*2j$Z%lh;{3b_0rJC)opjgqq zj24Pb@z^_BS*fblqnAo*ir@6;TAsn4RO0tUStp{3oLNe5=InK;QmQ#do}8U#e253v zA?nAN>v&6aedoBp+$G(}6P4nvGM!ZO!L`K(>t_#9{ddNa92YST&&*{#cMq{+3rL=D yUW;=%XIWwOXG$w{{`_o-?pIZ?#OSX@wg~4n-4dIx?%Lt=ReLLR%l{bbSNj($=Id|( diff --git a/Marlin/Debug/Marlin.lastbuildstate b/Marlin/Debug/Marlin.lastbuildstate deleted file mode 100644 index c9516f041..000000000 --- a/Marlin/Debug/Marlin.lastbuildstate +++ /dev/null @@ -1,2 +0,0 @@ -#v4.0:v100 -Debug|Win32|C:\Users\Blair\Desktop\Marlin_v1\Marlin\| diff --git a/Marlin/Debug/Marlin.log b/Marlin/Debug/Marlin.log deleted file mode 100644 index 40d9952b9..000000000 --- a/Marlin/Debug/Marlin.log +++ /dev/null @@ -1,1042 +0,0 @@ -Build started 20/02/2012 20:22:11. - 1>Project "C:\Users\Blair\Desktop\Marlin_v1\Marlin\Marlin.vcxproj" on node 2 (build target(s)). - 1>InitializeBuildStatus: - Creating "Debug\Marlin.unsuccessfulbuild" because "AlwaysCreate" was specified. - ClCompile: - c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /ZI /nologo /W3 /WX- /Od /Oy- /D _MBCS /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt MarlinSerial.cpp motion_control.cpp planner.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp stepper.cpp temperature.cpp - temperature.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - stepper.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - SdVolume.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - SdFile.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - SdFatUtil.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - SdBaseFile.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - Sd2Card.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - planner.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - motion_control.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - MarlinSerial.cpp - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(103): error C2072: 'cos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(111): error C2072: 'fabs' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(128): error C2072: 'fmod' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(150): error C2072: 'sin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(157): error C2072: 'sqrt' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(165): error C2072: 'tan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(173): error C2072: 'floor' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(181): error C2072: 'ceil' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(211): error C2072: 'ldexp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(218): error C2072: 'exp' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(225): error C2072: 'cosh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(232): error C2072: 'sinh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(239): error C2072: 'tanh' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(248): error C2072: 'acos' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(257): error C2072: 'asin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(265): error C2072: 'atan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(275): error C2072: 'atan2' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(282): error C2072: 'log' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(290): error C2072: 'log10' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(297): error C2072: 'pow' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(305): error C2072: 'isnan' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(313): error C2072: 'isinf' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(323): error C2072: 'square' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(331): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(336): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(337): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(333): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(347): error C2072: 'fdim' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(357): error C2072: 'fma' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(366): error C2072: 'fmax' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(375): error C2072: 'fmin' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(389): error C2072: 'signbit' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(397): error C2072: 'trunc' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(405): error C2448: '__attribute__' : function-style initializer appears to be a function definition - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(413): error C2143: syntax error : missing ')' before ':' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(414): error C2059: syntax error : ')' - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(408): error C3861: '__asm__': identifier not found - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2065: '__const__' : undeclared identifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(428): error C2072: 'hypot' : initialization of a function - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): error C3646: '__attribute__' : unknown override specifier - 1>c:\arduino-1.0\hardware\tools\avr\avr\include\math.h(439): fatal error C1003: error count exceeds 100; stopping compilation - Generating Code... - 1>Done Building Project "C:\Users\Blair\Desktop\Marlin_v1\Marlin\Marlin.vcxproj" (build target(s)) -- FAILED. - -Build FAILED. - -Time Elapsed 00:00:00.70 diff --git a/Marlin/Debug/Marlin.unsuccessfulbuild b/Marlin/Debug/Marlin.unsuccessfulbuild deleted file mode 100644 index e69de29bb..000000000 diff --git a/Marlin/Debug/cl.command.1.tlog b/Marlin/Debug/cl.command.1.tlog deleted file mode 100644 index 396f5b925a954ab829c8ae59807285068ab6c22c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5746 zcmeHLO;5r=5PfG8|AXN!ir%Q?5Pej>)UEf( zY&<=e?U7T?=Zs+ze|2nKE{HBUo+64i6SQWa19Utz@7Ar>q3Q+he4 zg)wESHC*OPw4dMt51dELR8l%F$6RlDq-F*COl9g%sFC$-YVRVhlK4B~x{SCkOFYwV zwhjqLo~!W#)}<=9&~un^{;BfxKVn)0l6*$bBk}}mj*=14=UX(b;LJoc{VlGWM^sla zTZecOuCt8v&Q<1NC_j>$M@>jxKOq0e&R4gn`PkviLrs1pi$P6|n2|G(%U!HRX&J{{ z#u4oN6whK1$DvS;Ye)3ur0lON5Z&|`VW^t+ev&UgDqF^K7_+f|QuWxHFM u&Ng|mECM+Z@glD~_FlF624vzcl^4m)qeez*Ys_S)oWQb<(Jwo{NAwMj{a&L0 diff --git a/Marlin/Debug/vc100.idb b/Marlin/Debug/vc100.idb deleted file mode 100644 index 2e3309778541c978be0fd9d640d5f871c07a3d50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19456 zcmeHNO>Epm6y8wULZS4~lnNvyg9JjVcC(v}(l%05HM^U1#cmSqPZJ_b#%nu?sn_1x z-h^BMiAxWa;KGGN;RFJ%9FX9EkPrw7sYj4FzzIRG6hy-N?Ddi#r?HKoY4e`+**oL+ z=FNQe?3;OZRab1wu@+sSFjP2mMyS>&g|nG#_V}?Ui}e)AgQ?U2olX)eD3hG`_L`o4aY4$7F=bu`-%TZXLLqN+Jp zT&p9tW!unAX(iYD)jN@?{{ z#nMD`%KK5N;8dP&l%{GID^m61yfjg6)W=6hP+y%W)V*`PAWbyOmEw3VD3<0MrRjQk zX1cF1*{oEg%ca_QZZw zg;m+sf=W@bY|RNu5%gDNx-q8fh;402zJtDNSq8PcVta_JsGEw>RW&iT0X#)AGW3?X zq$pmuMl$)#u(-QV(zR*4M3A9h?dqyxuQ{%4?DVsXqS$qHLwD&uREuV1oqYf+dh$rwCSjO|#k{xYPH?%|! z`^NEnF3K*Rt3)mX+n64cj?kkfp05?l=(dyb*)xsh&(%7eL{F#Fvy9`-)!O8YZl9fG zfSax1^?8b_KO9M=zB{xtPq1+~mAX##A5w~~8FC#K2+cpy^*2fPOTrqJ4^tU3LhU|H zb(`fv@7lX`4dV35RRolQZ*Yr`|A6@{j1hATTM z^ye`G275uE1Ie=l)B_k}p70RiaRSEDBpf3^Fvcmu!zhq&{O9=3@jqJpe}v`>^7=P1 zae8u;CfcX;hcpsYY&zqA0`n37SD1I0lbCmyixGDZK@^X_aR@Bq{GU5&KZGZ7*f);n zGl=0yTn4r=J#zftv_thbns-0`M_qyYTkOm-mh7Q>!L56>U^~>7-DNWR7pn|!UGQJ6 zGLTewoiIj!4yOq$%m6d6-xxTx-#WzoVFs9i|A&EMtuA1#|0lf*fk$DJTPzF0WRNPK zBRoJjapR9yf_(y#836VNdkNYG4$@!K~8x1aK@kmP^_{*kl*qO^x$Qhmgt*o?*kGj0Ca!;*w_8G6|RfK4glT1uE}1zpACiUBJl%2_v$+> zpNA*Hb&)6npu3cQ$?xy?;ksCI0Z}+Z5(z-N?|zDy%U?&4{-~Us3B!zU(=J<~`!tw??y>SgQzzpms2Jqb-3p2nBFayj0 ZGr$Zm1Iz$3zzi@0%m6dM4BX!g{0-I)&M5!@ diff --git a/Marlin/Debug/vc100.pdb b/Marlin/Debug/vc100.pdb deleted file mode 100644 index 208b456087e7b6978c1219d7b9843b7a1d4f88a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeI)F>4f25CGs=jCv*ptVBfcEK*1yUa&}NBS{r3f|epELaKnVu`}QgNZ}8#(!wJD z!`enkam2gDu|P+g;y$_+)E)>+#d>%8ixz`R@A0 zYIkX&*PETbe0w7@E<`lhoXfmY{fy4<#xDT^V=nN1KRR_kpUJFy{B-8|%&B2cXZ!i; zLF~p(oXzFsY@_=kqMx0NnatXMwmQT3-o&>L`w_j)PV}$k_QR-}Rlkl^wQ9dQW*wvI z)N$K&vinyYHu2^DF?DOBs&_GSF7syQTISu%N12vMSo2oNAZfB*pk1PBlyK!Ctt z@N!|X*?xQLPR+r+9v{EHT02~Q^WfR*x!rqvqlpbQ|G!cYAV7cs0RjXF5FkK+009Ey zDNyg^)_eWSt<$gfb5B)1Z>_XQfB*pk1PBlyK!5-N0t5(*t-#E?#pc)8Kfm)=-}tz|)g009C72oNAZfB*pk1PGjbf#b&iQ~3m-J^nxWSK$l^5FkK+ z009C72oNAZfB=F23DjJFL4W`O0t5&UAV7cs0RjXFOtwJ%&o2lNAV7cs0RjXF5FkK+ J0D;LC_zCWtByRu! diff --git a/Marlin/Gen7/cores/arduino/pins_arduino.c b/Marlin/Gen7/cores/arduino/pins_arduino.c index ccb88fe98..c67ab73fb 100644 --- a/Marlin/Gen7/cores/arduino/pins_arduino.c +++ b/Marlin/Gen7/cores/arduino/pins_arduino.c @@ -67,28 +67,28 @@ const uint8_t PROGMEM port_to_mode_PGM[] = { NOT_A_PORT, - &DDRA, - &DDRB, - &DDRC, - &DDRD, + (uint8_t) &DDRA, + (uint8_t) &DDRB, + (uint8_t) &DDRC, + (uint8_t) &DDRD, }; const uint8_t PROGMEM port_to_output_PGM[] = { NOT_A_PORT, - &PORTA, - &PORTB, - &PORTC, - &PORTD, + (uint8_t) &PORTA, + (uint8_t) &PORTB, + (uint8_t) &PORTC, + (uint8_t) &PORTD, }; const uint8_t PROGMEM port_to_input_PGM[] = { NOT_A_PORT, - &PINA, - &PINB, - &PINC, - &PIND, + (uint8_t) &PINA, + (uint8_t) &PINB, + (uint8_t) &PINC, + (uint8_t) &PIND, }; const uint8_t PROGMEM digital_pin_to_port_PGM[] = From 5aa9c41ab1aa128edf54d618047b323fb9176aec Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 24 Feb 2012 20:42:07 +0100 Subject: [PATCH 248/430] Changed comment mode for detection. Added M221 extuder multiply factor. --- Marlin/Marlin.pde | 27 +++++++++++++++++++-------- Marlin/planner.cpp | 8 +++++--- 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 49753fb45..51829a496 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -98,7 +98,8 @@ // M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate // M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk // M206 - set additional homeing offset -// M220 - set speed factor override percentage S:factor in percent +// M220 S- set speed factor override percentage +// M221 S- set extrude factor override percentage // M240 - Trigger a camera to take a photograph // M301 - Set PID parameters P I and D // M302 - Allow cold extrudes @@ -126,6 +127,8 @@ bool axis_relative_modes[] = AXIS_RELATIVE_MODES; volatile int feedmultiply=100; //100->1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; +volatile int extrudemultiply=100; //100->1 200->2 +volatile bool extrudemultiplychanged=false; float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 }; float add_homeing[3]={0,0,0}; uint8_t active_extruder = 0; @@ -332,9 +335,13 @@ void get_command() serial_char = MYSERIAL.read(); if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1) ) { - if(!serial_count) return; //if empty line + if(!serial_count) { //if empty line + comment_mode = false; //for new command + return; + } cmdbuffer[bufindw][serial_count] = 0; //terminate string if(!comment_mode){ + comment_mode = false; //for new command fromsd[bufindw] = false; if(strstr(cmdbuffer[bufindw], "N") != NULL) { @@ -411,9 +418,7 @@ void get_command() } bufindw = (bufindw + 1)%BUFSIZE; buflen += 1; - } - comment_mode = false; //for new command serial_count = 0; //clear buffer } else @@ -447,10 +452,9 @@ void get_command() card.checkautostart(true); } - if(serial_char=='\n') - comment_mode = false; //for new command if(!serial_count) { + comment_mode = false; //for new command return; //if empty line } cmdbuffer[bufindw][serial_count] = 0; //terminate string @@ -459,6 +463,7 @@ void get_command() buflen += 1; bufindw = (bufindw + 1)%BUFSIZE; } + comment_mode = false; //for new command serial_count = 0; //clear buffer } else @@ -1100,8 +1105,14 @@ void process_commands() } } break; - - + case 221: // M221 S- set extrude factor override percentage + { + if(code_seen('S')) + { + extrudemultiply = code_value() ; + extrudemultiplychanged=true; + } + break; #ifdef PIDTEMP case 301: // M301 diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 468d9fcac..c4b998322 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -81,6 +81,8 @@ long position[4]; //rescaled from extern when axis_steps_per_unit are changed static float previous_speed[4]; // Speed of previous path line segment static float previous_nominal_speed; // Nominal speed of previous path line segment +extern volatile int extrudemultiply; // Sets extrude multiply factor (in percent) + #ifdef AUTOTEMP float autotemp_max=250; float autotemp_min=210; @@ -474,8 +476,6 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u target[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); target[E_AXIS] = lround(e*axis_steps_per_unit[E_AXIS]); - - #ifdef PREVENT_DANGEROUS_EXTRUDE if(target[E_AXIS]!=position[E_AXIS]) if(degHotend(active_extruder)steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); + block->steps_e *= extrudemultiply; + block-?steps_e /= 100; block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); // Bail if this is a zero-length block @@ -531,7 +533,7 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; - delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; + delta_mm[E_AXIS] = ((target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS])*extrudemultiply/100.0; if ( block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0 ) { block->millimeters = abs(delta_mm[E_AXIS]); } else { From adc108d79e30d178471ee65476eb0f6a27a73f95 Mon Sep 17 00:00:00 2001 From: Guillaume Seguin Date: Fri, 24 Feb 2012 21:21:19 +0100 Subject: [PATCH 249/430] Correctly build the produced applet/Marlin.cpp source --- Marlin/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Makefile b/Marlin/Makefile index 71ee74748..7c039be57 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -61,7 +61,7 @@ SRC = $(ARDUINO)/pins_arduino.c $(ARDUINO)/wiring.c \ $(ARDUINO)/wiring_pulse.c \ $(ARDUINO)/wiring_shift.c $(ARDUINO)/WInterrupts.c CXXSRC = $(ARDUINO)/WMath.cpp $(ARDUINO)/WString.cpp\ - $(ARDUINO)/Print.cpp Marlin.cpp MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp stepper.cpp temperature.cpp cardreader.cpp + $(ARDUINO)/Print.cpp applet/Marlin.cpp MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp stepper.cpp temperature.cpp cardreader.cpp FORMAT = ihex From 84ea2d61e827503c95c0c05037e3cfc4d94c75ae Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Fri, 24 Feb 2012 23:34:41 +0100 Subject: [PATCH 250/430] Moved gen7 boards to motherboard type 10, 11 and 12. Split ramps1.3 in Sprinter like config and multiextruder config. --- Marlin/Configuration.h | 17 +- Marlin/Marlin.pde | 3 +- Marlin/pins.h | 529 +++++++++++++---------------------------- Marlin/planner.cpp | 2 +- Marlin/ultralcd.pde | 2 + 5 files changed, 174 insertions(+), 379 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index c3c942a01..1818b0cc2 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -16,15 +16,16 @@ #define BAUDRATE 115200 //// The following define selects which electronics board you have. Please choose the one that matches your setup -// MEGA/RAMPS up to 1.2 = 3, -// RAMPS 1.3 = 33 -// Gen6 = 5, +// Gen7 custom (Alfons3 Version) = 10 "https://github.com/Alfons3/Generation_7_Electronics" +// Gen7 v1.1, v1.2 = 11 +// Gen7 v1.3 = 12 +// MEGA/RAMPS up to 1.2 = 3 +// RAMPS 1.3 = 33 (Power outputs: Extruder, Bed, Fan) +// RAMPS 1.3 = 34 (Power outputs: Extruder0, Extruder1, Bed) +// Gen6 = // Sanguinololu 1.2 and above = 62 -// Ultimaker = 7, -// Gen7 custom (Alfons3 Version) = 77, "https://github.com/Alfons3/Generation_7_Electronics" -// Gen7 v1.1, v1.2 = 78 -// Gen7 v1.3 = 79 -// Teensylu = 8, +// Ultimaker = 7 +// Teensylu = 8 // Gen3+ =9 #define MOTHERBOARD 33 diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 51829a496..0cce611c7 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -128,7 +128,6 @@ volatile int feedmultiply=100; //100->1 200->2 int saved_feedmultiply; volatile bool feedmultiplychanged=false; volatile int extrudemultiply=100; //100->1 200->2 -volatile bool extrudemultiplychanged=false; float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 }; float add_homeing[3]={0,0,0}; uint8_t active_extruder = 0; @@ -1110,7 +1109,7 @@ void process_commands() if(code_seen('S')) { extrudemultiply = code_value() ; - extrudemultiplychanged=true; + } } break; diff --git a/Marlin/pins.h b/Marlin/pins.h index 20e1e59bd..bd6535e4d 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -45,221 +45,179 @@ #endif /* 99 */ /**************************************************************************************** -* Arduino pin assignment -* -* ATMega168 -* +-\/-+ -* PC6 1| |28 PC5 (AI 5 / D19) -* (D 0) PD0 2| |27 PC4 (AI 4 / D18) -* (D 1) PD1 3| |26 PC3 (AI 3 / D17) -* (D 2) PD2 4| |25 PC2 (AI 2 / D16) -* PWM+ (D 3) PD3 5| |24 PC1 (AI 1 / D15) -* (D 4) PD4 6| |23 PC0 (AI 0 / D14) -* VCC 7| |22 GND -* GND 8| |21 AREF -* PB6 9| |20 AVCC -* PB7 10| |19 PB5 (D 13) -* PWM+ (D 5) PD5 11| |18 PB4 (D 12) -* PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM -* (D 7) PD7 13| |16 PB2 (D 10) PWM -* (D 8) PB0 14| |15 PB1 (D 9) PWM -* +----+ -****************************************************************************************/ -#if MOTHERBOARD == 0 -#define KNOWN_BOARD 1 - -#ifndef __AVR_ATmega168__ -#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu. -#endif - -#define X_STEP_PIN 2 -#define X_DIR_PIN 3 -#define X_ENABLE_PIN -1 -#define X_MIN_PIN 4 -#define X_MAX_PIN 9 - -#define Y_STEP_PIN 10 -#define Y_DIR_PIN 7 -#define Y_ENABLE_PIN -1 -#define Y_MIN_PIN 8 -#define Y_MAX_PIN 13 - -#define Z_STEP_PIN 19 -#define Z_DIR_PIN 18 -#define Z_ENABLE_PIN 5 -#define Z_MIN_PIN 17 -#define Z_MAX_PIN 16 - -#define E0_STEP_PIN 11 -#define E0_DIR_PIN 12 -#define E0_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN -1 -#define FAN_PIN -1 -#define PS_ON_PIN 15 -#define KILL_PIN -1 - -#define HEATER_0_PIN 6 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 -#endif - - - -/**************************************************************************************** -* Sanguino/RepRap Motherboard with direct-drive extruders -* -* ATMega644P -* -* +---\/---+ -* (D 0) PB0 1| |40 PA0 (AI 0 / D31) -* (D 1) PB1 2| |39 PA1 (AI 1 / D30) -* INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29) -* PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28) -* PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27) -* MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26) -* MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) -* SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) -* RST 9| |32 AREF -* VCC 10| |31 GND -* GND 11| |30 AVCC -* XTAL2 12| |29 PC7 (D 23) -* XTAL1 13| |28 PC6 (D 22) -* RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI -* TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO -* INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS -* INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK -* PWM (D 12) PD4 18| |23 PC1 (D 17) SDA -* PWM (D 13) PD5 19| |22 PC0 (D 16) SCL -* PWM (D 14) PD6 20| |21 PD7 (D 15) PWM -* +--------+ +* Gen7 v1.1, v1.2, v1.3 pin assignment * ****************************************************************************************/ -#if MOTHERBOARD == 1 -#define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#if MOTHERBOARD == 12 +#define MOTHERBOARD 11 +#define GEN7_V_1_3 #endif -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 19 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PIN 29 -#define Z_DIR_PIN 30 -#define Z_ENABLE_PIN 31 -#define Z_MIN_PIN 2 -#define Z_MAX_PIN 1 - -#define E0_STEP_PIN 12 -#define E0_DIR_PIN 16 -#define E0_ENABLE_PIN 3 - -#define SDPOWER -1 -#define SDSS -1 -#define LED_PIN 0 -#define FAN_PIN -1 -#define PS_ON_PIN -1 -#define KILL_PIN -1 - -#define HEATER_0_PIN 14 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 4 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 -/* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */ - +#if MOTHERBOARD == 11 +#define KNOWN_BOARD +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) +#error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu. #endif +//x axis pins +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 24 +#define X_MIN_PIN 7 +#define X_MAX_PIN -1 -/**************************************************************************************** -* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---******* -* -****************************************************************************************/ -#if MOTHERBOARD == 2 -#define KNOWN_BOARD 1 +//y axis pins +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 5 +#define Y_MAX_PIN -1 -#ifndef __AVR_ATmega644P__ -#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +//z axis pins +#define Z_STEP_PIN 26 +#define Z_DIR_PIN 25 +#define Z_ENABLE_PIN 24 +#define Z_MIN_PIN 1 +#define Z_MAX_PIN + +//extruder pins +#define E0_STEP_PIN 28 +#define E0_DIR_PIN 27 +#define E0_ENABLE_PIN 24 + +#define TEMP_0_PIN 1 +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 2 + +#define HEATER_0_PIN 4 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define HEATER_BED_PIN 3 + + +#define SDPOWER -1 +#define SDSS -1 // SCL pin of I2C header +#define LED_PIN -1 + +#ifdef GEN7_V_1_3 +// Gen7 v1.3 removed the fan pin +#define FAN_PIN -1 +#else +#define FAN_PIN 31 #endif +#define PS_ON_PIN 15 -#define X_STEP_PIN 15 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 19 -#define X_MIN_PIN 20 -#define X_MAX_PIN 21 - -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 24 -#define Y_MIN_PIN 25 -#define Y_MAX_PIN 26 - -#define Z_STEP_PINN 27 -#define Z_DIR_PINN 28 -#define Z_ENABLE_PIN 29 -#define Z_MIN_PIN 30 -#define Z_MAX_PIN 31 - -#define E0_STEP_PIN 17 -#define E0_DIR_PIN 16 -#define E0_ENABLE_PIN -1 - -#define SDPOWER -1 -#define SDSS 4 -#define LED_PIN 0 - -#define SD_CARD_WRITE 2 -#define SD_CARD_DETECT 3 -#define SD_CARD_SELECT 4 +//our pin for debugging. +#define DEBUG_PIN 0 //our RS485 pins -#define TX_ENABLE_PIN 12 -#define RX_ENABLE_PIN 13 +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 -//pin for controlling the PSU. -#define PS_ON_PIN 14 +#endif -#define FAN_PIN -1 -#define KILL_PIN -1 +/******************************************************************************* +********* +* Gen7 Alfons3 pin assignment +* +******************************************************************************** +********/ +/* These Pins are assigned for the modified GEN7 Board from Alfons3 Please review the pins and adjust it for your needs*/ -#define HEATER_0_PIN -1 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define TEMP_0_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 +#if MOTHERBOARD == 10 +#define KNOWN_BOARD +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) + #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu. + +#endif + +//x axis pins + #define X_STEP_PIN 21 //different from stanard GEN7 + #define X_DIR_PIN 20 //different from stanard GEN7 + #define X_ENABLE_PIN 24 + #define X_MIN_PIN 0 + #define X_MAX_PIN -1 + + //y axis pins + #define Y_STEP_PIN 23 + #define Y_DIR_PIN 22 + #define Y_ENABLE_PIN 24 + #define Y_MIN_PIN 1 + #define Y_MAX_PIN -1 + + //z axis pins + #define Z_STEP_PIN 26 + #define Z_DIR_PIN 25 + #define Z_ENABLE_PIN 24 + #define Z_MIN_PIN 2 + #define Z_MAX_PIN -1 + + //extruder pins + #define E0_STEP_PIN 28 + #define E0_DIR_PIN 27 + #define E0_ENABLE_PIN 24 + + #define TEMP_0_PIN 2 + #define TEMP_1_PIN -1 + #define TEMP_2_PIN -1 + #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) + + #define HEATER_0_PIN 4 + #define HEATER_1_PIN -1 + #define HEATER_2_PIN -1 + #define HEATER_BED_PIN 3 // (bed) + + #define SDPOWER -1 + #define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support + #define LED_PIN -1 + + #define FAN_PIN -1 + #define PS_ON_PIN 19 + //our pin for debugging. + + #define DEBUG_PIN -1 + + //our RS485 pins + //#define TX_ENABLE_PIN 12 + //#define RX_ENABLE_PIN 13 + + #define BEEPER -1 + #define SDCARDDETECT -1 + #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work + + //Pins for 4bit LCD Support + #define LCD_PINS_RS 18 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 16 + #define LCD_PINS_D5 15 + #define LCD_PINS_D6 13 + #define LCD_PINS_D7 14 + + //buttons are directly attached + #define BTN_EN1 11 + #define BTN_EN2 10 + #define BTN_ENC 12 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 #endif /**************************************************************************************** * Arduino Mega pin assignment * ****************************************************************************************/ -#if MOTHERBOARD == 33 +#if MOTHERBOARD == 33 || MOTHERBOARD == 34 #define MOTHERBOARD 3 #define RAMPS_V_1_3 #endif @@ -295,7 +253,7 @@ #define Z_DIR_PIN 48 #define Z_ENABLE_PIN 62 #define Z_MIN_PIN 18 -#define Z_MAX_PIN 19 //19 +#define Z_MAX_PIN 19 #define E0_STEP_PIN 26 #define E0_DIR_PIN 28 @@ -308,13 +266,22 @@ #define SDPOWER -1 #define SDSS 53 #define LED_PIN 13 -#define FAN_PIN 9 // Uses HEATER_1 on Ramps Board + +#if MOTHERBOARD == 33 +#define FAN_PIN 9 // (Sprinter config) +#else +#define FAN_PIN 4 // IO pin. Buffer needed +#endif #define PS_ON_PIN 12 #define KILL_PIN -1 #define HEATER_0_PIN 10 // EXTRUDER 1 -#define HEATER_1_PIN 9 // EXTRUDER 2 -#define HEATER_2_PIN -1 // EXTRUDER 2 +#if MOTHERBOARD == 33 +#define HEATER_1_PIN -1 +#else +#define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter) +#endif +#define HEATER_2_PIN -1 #define TEMP_0_PIN 13 // ANALOG NUMBERING #define TEMP_1_PIN 15 // ANALOG NUMBERING #define TEMP_2_PIN -1 // ANALOG NUMBERING @@ -635,180 +602,6 @@ #endif -/**************************************************************************************** -* Gen7 v1.1, v1.2, v1.3 pin assignment -* -****************************************************************************************/ - -#if MOTHERBOARD == 79 -#define MOTHERBOARD 78 -#define GEN7_V_1_3 -#endif - -#if MOTHERBOARD == 78 -#define KNOWN_BOARD - -#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) -#error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu. - -#endif - -//x axis pins -#define X_STEP_PIN 19 -#define X_DIR_PIN 18 -#define X_ENABLE_PIN 24 -#define X_MIN_PIN 7 -#define X_MAX_PIN -1 - -//y axis pins -#define Y_STEP_PIN 23 -#define Y_DIR_PIN 22 -#define Y_ENABLE_PIN 24 -#define Y_MIN_PIN 5 -#define Y_MAX_PIN -1 - -//z axis pins -#define Z_STEP_PIN 26 -#define Z_DIR_PIN 25 -#define Z_ENABLE_PIN 24 -#define Z_MIN_PIN 1 -#define Z_MAX_PIN -1 - -//extruder pins -#define E0_STEP_PIN 28 -#define E0_DIR_PIN 27 -#define E0_ENABLE_PIN 24 - -#define TEMP_0_PIN 1 -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 -#define TEMP_BED_PIN 2 - -#define HEATER_0_PIN 4 -#define HEATER_1_PIN -1 -#define HEATER_2_PIN -1 -#define HEATER_BED_PIN 3 - - -#define SDPOWER -1 -#define SDSS -1 // SCL pin of I2C header -#define LED_PIN -1 - -#ifdef GEN7_V_1_3 -// Gen7 v1.3 removed the fan pin -#define FAN_PIN -1 -#else -#define FAN_PIN 31 -#endif -#define PS_ON_PIN 15 - -//our pin for debugging. -#define DEBUG_PIN 0 - -//our RS485 pins -#define TX_ENABLE_PIN 12 -#define RX_ENABLE_PIN 13 - -#endif - -/******************************************************************************* -********* -* Gen7 Alfons3 pin assignment -* -******************************************************************************** -********/ -/* These Pins are assigned for the modified GEN7 Board from Alfons3 Please review the pins and adjust it for your needs*/ - -#if MOTHERBOARD == 77 -#define KNOWN_BOARD - -#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) - #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu. - -#endif - -//x axis pins - #define X_STEP_PIN 21 //different from stanard GEN7 - #define X_DIR_PIN 20 //different from stanard GEN7 - #define X_ENABLE_PIN 24 - #define X_MIN_PIN 0 - #define X_MAX_PIN -1 - - //y axis pins - #define Y_STEP_PIN 23 - #define Y_DIR_PIN 22 - #define Y_ENABLE_PIN 24 - #define Y_MIN_PIN 1 - #define Y_MAX_PIN -1 - - //z axis pins - #define Z_STEP_PIN 26 - #define Z_DIR_PIN 25 - #define Z_ENABLE_PIN 24 - #define Z_MIN_PIN 2 - #define Z_MAX_PIN -1 - - //extruder pins - #define E0_STEP_PIN 28 - #define E0_DIR_PIN 27 - #define E0_ENABLE_PIN 24 - - #define TEMP_0_PIN 2 - #define TEMP_1_PIN -1 - #define TEMP_2_PIN -1 - #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) - - #define HEATER_0_PIN 4 - #define HEATER_1_PIN -1 - #define HEATER_2_PIN -1 - #define HEATER_BED_PIN 3 // (bed) - - - - - #define SDPOWER -1 - #define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support - #define LED_PIN -1 - - #define FAN_PIN -1 - #define PS_ON_PIN 19 - //our pin for debugging. - - #define DEBUG_PIN -1 - - //our RS485 pins - //#define TX_ENABLE_PIN 12 - //#define RX_ENABLE_PIN 13 - - #define BEEPER -1 - #define SDCARDDETECT -1 - #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work - - //Pins for 4bit LCD Support - #define LCD_PINS_RS 18 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 16 - #define LCD_PINS_D5 15 - #define LCD_PINS_D6 13 - #define LCD_PINS_D7 14 - - //buttons are directly attached - #define BTN_EN1 11 - #define BTN_EN2 10 - #define BTN_ENC 12 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - - - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - - -#endif #if MOTHERBOARD == 7 #define KNOWN_BOARD diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index c4b998322..ed5b67435 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -504,7 +504,7 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); block->steps_e *= extrudemultiply; - block-?steps_e /= 100; + block->steps_e /= 100; block->step_event_count = max(block->steps_x, max(block->steps_y, max(block->steps_z, block->steps_e))); // Bail if this is a zero-length block diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 02da3dd30..54b701284 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -9,6 +9,8 @@ extern volatile int feedmultiply; extern volatile bool feedmultiplychanged; +extern volatile int extrudemultiply; + extern long position[4]; extern CardReader card; From 35e57bf149685a10cfa64b3437c428bf57519e5f Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 25 Feb 2012 17:44:45 +0100 Subject: [PATCH 251/430] Added gen6 deluxe. --- Marlin/Configuration.h | 17 +++++++++-------- Marlin/pins.h | 10 ++++++++-- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 1818b0cc2..035928ba8 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -8,12 +8,12 @@ //User specified version info of THIS file to display in [Pronterface, etc] terminal window during startup. //Implementation of an idea by Prof Braino to inform user that any changes made //to THIS file by the user have been successfully uploaded into firmware. -#define STRING_VERSION_CONFIG_H "2012-02-08j" //Personal revision number for changes to THIS file. -#define STRING_CONFIG_H_AUTHOR "scuba82" //Who made the changes. +#define STRING_VERSION_CONFIG_H "2012-02-25" //Personal revision number for changes to THIS file. +#define STRING_CONFIG_H_AUTHOR "erik" //Who made the changes. // This determines the communication speed of the printer -//#define BAUDRATE 250000 -#define BAUDRATE 115200 +#define BAUDRATE 250000 +//#define BAUDRATE 115200 //// The following define selects which electronics board you have. Please choose the one that matches your setup // Gen7 custom (Alfons3 Version) = 10 "https://github.com/Alfons3/Generation_7_Electronics" @@ -22,12 +22,13 @@ // MEGA/RAMPS up to 1.2 = 3 // RAMPS 1.3 = 33 (Power outputs: Extruder, Bed, Fan) // RAMPS 1.3 = 34 (Power outputs: Extruder0, Extruder1, Bed) -// Gen6 = +// Gen6 = 5 +// Gen6 deluxe = 51 // Sanguinololu 1.2 and above = 62 // Ultimaker = 7 // Teensylu = 8 // Gen3+ =9 -#define MOTHERBOARD 33 +#define MOTHERBOARD 51 //=========================================================================== //=============================Thermal Settings ============================ @@ -186,9 +187,9 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -#define SDSUPPORT // Enable SD Card Support in Hardware Console +//#define SDSUPPORT // Enable SD Card Support in Hardware Console -#define ULTIPANEL +//#define ULTIPANEL #ifdef ULTIPANEL #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT diff --git a/Marlin/pins.h b/Marlin/pins.h index bd6535e4d..69afa18b4 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -475,7 +475,7 @@ * Gen6 pin assignment * ****************************************************************************************/ -#if MOTHERBOARD == 5 +#if MOTHERBOARD == 5 || MOTHERBOARD == 51 #define KNOWN_BOARD 1 #ifndef __AVR_ATmega644P__ @@ -509,13 +509,19 @@ #define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715 #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410 #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410 + + #define TEMP_2_PIN -1 //changed @ rkoeppl 20110410 #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 #define HEATER_1_PIN -1 #define HEATER_2_PIN -1 + #if MOTHERBOARD == 51 #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410 #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410 - + #else + #define HEATER_BED_PIN 1 //changed @ rkoeppl 20110410 + #define TEMP_BED_PIN 0 //changed @ rkoeppl 20110410 + #endif #define SDPOWER -1 #define SDSS 17 #define LED_PIN -1 //changed @ rkoeppl 20110410 From ce714fe3068f9815d958d05169948eaf519f2cb3 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sat, 25 Feb 2012 22:55:17 +0100 Subject: [PATCH 252/430] Fixes in pins.h --- Marlin/pins.h | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index 69afa18b4..ebcfdd360 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -217,11 +217,7 @@ * Arduino Mega pin assignment * ****************************************************************************************/ -#if MOTHERBOARD == 33 || MOTHERBOARD == 34 -#define MOTHERBOARD 3 -#define RAMPS_V_1_3 -#endif -#if MOTHERBOARD == 3 +#if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 #define KNOWN_BOARD 1 //////////////////FIX THIS////////////// @@ -235,7 +231,7 @@ // #define RAMPS_V_1_3 // #define RAMPS_V_1_0 -#ifdef RAMPS_V_1_3 +#ifdef MOTHERBOARD == 33 || MOTHERBOARD == 34 #define X_STEP_PIN 54 #define X_DIR_PIN 55 @@ -515,7 +511,7 @@ #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410 #define HEATER_1_PIN -1 #define HEATER_2_PIN -1 - #if MOTHERBOARD == 51 + #if MOTHERBOARD == 5 #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410 #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410 #else From 018c567abf46ec683b404c841402d6096b775390 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 26 Feb 2012 16:23:47 +0100 Subject: [PATCH 253/430] Moved SLOWDOWN function. (jetty840) Included AD595 calibration options. (daid) --- Marlin/Configuration.h | 43 +++++++++++++++++--------------------- Marlin/Configuration_adv.h | 5 +++++ Marlin/planner.cpp | 13 ++++++------ README.md | 20 ------------------ 4 files changed, 31 insertions(+), 50 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 0bdcde1e4..16c2e16f2 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -28,7 +28,7 @@ // Ultimaker = 7 // Teensylu = 8 // Gen3+ =9 -#define MOTHERBOARD 51 +#define MOTHERBOARD 7 //=========================================================================== //=============================Thermal Settings ============================ @@ -46,13 +46,13 @@ // 6 is EPCOS 100k // 7 is 100k Honeywell thermistor 135-104LAG-J01 -#define TEMP_SENSOR_0 1 +#define TEMP_SENSOR_0 -1 #define TEMP_SENSOR_1 0 #define TEMP_SENSOR_2 0 -#define TEMP_SENSOR_BED 1 +#define TEMP_SENSOR_BED 0 // Actual temperature must be close to target for this long before M109 returns success -#define TEMP_RESIDENCY_TIME 10 // 30 // (seconds) 30 seconds was too long +#define TEMP_RESIDENCY_TIME 10 // (seconds) #define TEMP_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one // The minimal temperature defines the temperature below which the heater will not be enabled It is used @@ -71,11 +71,6 @@ #define HEATER_2_MAXTEMP 275 #define BED_MAXTEMP 150 -//These defines help to calibrate the AD595 sensor in case you get wrong temperature measurements. -//The measured temperature is defined as "actualTemp = (measuredTemp * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET" -#define TEMP_SENSOR_AD595_OFFSET 0.0 -#define TEMP_SENSOR_AD595_GAIN 1.0 - // PID settings: // Comment the following line to disable PID and enable bang-bang. @@ -119,9 +114,9 @@ #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops. +const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -135,8 +130,8 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define DISABLE_Z false #define DISABLE_E false // For all extruders -#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true -#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false +#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true +#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false #define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true #define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false #define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false @@ -148,11 +143,11 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define Y_HOME_DIR -1 #define Z_HOME_DIR -1 -#define min_software_endstops false //If true, axis won't move to coordinates less than zero. +#define min_software_endstops true //If true, axis won't move to coordinates less than HOME_POS. #define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below. -#define X_MAX_LENGTH 175 -#define Y_MAX_LENGTH 185 -#define Z_MAX_LENGTH 90 +#define X_MAX_LENGTH 205 +#define Y_MAX_LENGTH 205 +#define Z_MAX_LENGTH 200 // The position of the homing switches. Use MAX_LENGTH * -0.5 if the center should be 0, 0, 0 #define X_HOME_POS 0 @@ -161,7 +156,7 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E -#define HOMING_FEEDRATE {1500, 1500, 80, 0} // {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) // default settings @@ -169,8 +164,8 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. -#define DEFAULT_ACCELERATION 1500 // 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 1500 // 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts // #define DEFAULT_XYJERK 20.0 // (mm/sec) @@ -186,14 +181,14 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). // M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. //define this to enable eeprom support -#define EEPROM_SETTINGS +//#define EEPROM_SETTINGS //to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out: // please keep turned on if you can. -#define EEPROM_CHITCHAT +//#define EEPROM_CHITCHAT //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -//#define SDSUPPORT // Enable SD Card Support in Hardware Console +#define SDSUPPORT // Enable SD Card Support in Hardware Console //#define ULTIPANEL #ifdef ULTIPANEL diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index d47b9b262..2df655061 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -59,6 +59,11 @@ #define EXTRUDER_RUNOUT_SPEED 1500. //extrusion speed #define EXTRUDER_RUNOUT_EXTRUDE 100 +//These defines help to calibrate the AD595 sensor in case you get wrong temperature measurements. +//The measured temperature is defined as "actualTemp = (measuredTemp * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET" +#define TEMP_SENSOR_AD595_OFFSET 0.0 +#define TEMP_SENSOR_AD595_GAIN 1.0 + //=========================================================================== //=============================Mechanical Settings=========================== //=========================================================================== diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index ed5b67435..d78e1d999 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -529,6 +529,13 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u // Enable all if(block->steps_e != 0) { enable_e0();enable_e1();enable_e2(); } + + // slow down when de buffer starts to empty, rather than wait at the corner for a buffer refill + int moves_queued=(block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); + #ifdef SLOWDOWN + if(moves_queued < (BLOCK_BUFFER_SIZE * 0.5) && moves_queued > 1) feed_rate = feed_rate*moves_queued / (BLOCK_BUFFER_SIZE * 0.5); + #endif + float delta_mm[4]; delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; @@ -554,12 +561,6 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u if(feed_rate 1) feed_rate = feed_rate*moves_queued / (BLOCK_BUFFER_SIZE * 0.5); -#endif - /* // segment time im micro seconds long segment_time = lround(1000000.0/inverse_second); diff --git a/README.md b/README.md index 11b4be60f..6f04764c9 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,3 @@ -SCUBA82's fork: ------------------ - -The main goal of my fork is porting the brilliant Marlin firmware to GEN7 Boards. -I'm working on a 16MHz GEN7 board and have only tested with this configuration. -But there were reports about successfully running it at 20 MHz. Expect 25% faster moves and maybe some other issues. - -Using lcd and sdcard support on an ATMega644(P) is not possible cause the sketch is way too big for its memory. -I switched to an ATMega1284P which has double size program memory. Unfortunately it's not supported in Arduino IDE out of the box but expect a tutorial on how to compile for it soon. -For the necessary pin breakouts I used Alfons3 design of GEN7 (https://github.com/Alfons3/Generation_7_Electronics) with an additional breakout for pin A0/D31. -I'll publish my desing as soon as possible. - -You have to use different chip fuses to get Marlin running. -The fuses I'm using are lfuse: 0xF7 hfuse: 0xD4 efuse: 0xFD - -For questions take a look into http://forums.reprap.org/read.php?181,118329 or send me an e-mail: christian_thalhammer@gmx.at - - -Expect this fork to be highly experimental. - WARNING: -------- THIS IS RELEASE CANDIDATE 1 FOR MARLIN 1.0.0 From 27f595a444508186ab01bddf16bcdf283b8a3be7 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 26 Feb 2012 16:26:40 +0100 Subject: [PATCH 254/430] Changed version => RC2 --- Marlin/Marlin.pde | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 0cce611c7..93c3a7185 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -37,7 +37,7 @@ #include "EEPROMwrite.h" #include "language.h" -#define VERSION_STRING "1.0.0 RC1" +#define VERSION_STRING "1.0.0 RC2" // look here for descriptions of gcodes: http://linuxcnc.org/handbook/gcode/g-code.html // http://objects.reprap.org/wiki/Mendel_User_Manual:_RepRapGCodes diff --git a/README.md b/README.md index 6f04764c9..19bb20128 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ WARNING: -------- -THIS IS RELEASE CANDIDATE 1 FOR MARLIN 1.0.0 +THIS IS RELEASE CANDIDATE 2 FOR MARLIN 1.0.0 The configuration is now split in two files Configuration.h for the normal settings From 286d5003fadab0a19ae4eddade6fcc8c1cc7a753 Mon Sep 17 00:00:00 2001 From: Daid Date: Sun, 26 Feb 2012 17:35:01 +0100 Subject: [PATCH 255/430] Fixed compiler warning for Sanguino compile --- Marlin/Sanguino/cores/arduino/pins_arduino.c | 24 +++++++++---------- Marlin/Sanguino/cores/arduino/pins_arduino.h | 6 ++--- .../Sanguino/cores/arduino/wiring_private.h | 2 +- Marlin/pins.h | 1 + 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/Marlin/Sanguino/cores/arduino/pins_arduino.c b/Marlin/Sanguino/cores/arduino/pins_arduino.c index af3ba5052..d5fa6fea3 100644 --- a/Marlin/Sanguino/cores/arduino/pins_arduino.c +++ b/Marlin/Sanguino/cores/arduino/pins_arduino.c @@ -67,28 +67,28 @@ const uint8_t PROGMEM port_to_mode_PGM[] = { NOT_A_PORT, - (uint8_t) &DDRA, - (uint8_t) &DDRB, - (uint8_t) &DDRC, - (uint8_t) &DDRD, + (uint8_t) (uint16_t) &DDRA, + (uint8_t) (uint16_t) &DDRB, + (uint8_t) (uint16_t) &DDRC, + (uint8_t) (uint16_t) &DDRD, }; const uint8_t PROGMEM port_to_output_PGM[] = { NOT_A_PORT, - (uint8_t) &PORTA, - (uint8_t) &PORTB, - (uint8_t) &PORTC, - (uint8_t) &PORTD, + (uint8_t) (uint16_t) &PORTA, + (uint8_t) (uint16_t) &PORTB, + (uint8_t) (uint16_t) &PORTC, + (uint8_t) (uint16_t) &PORTD, }; const uint8_t PROGMEM port_to_input_PGM[] = { NOT_A_PORT, - (uint8_t) &PINA, - (uint8_t) &PINB, - (uint8_t) &PINC, - (uint8_t) &PIND, + (uint8_t) (uint16_t) &PINA, + (uint8_t) (uint16_t) &PINB, + (uint8_t) (uint16_t) &PINC, + (uint8_t) (uint16_t) &PIND, }; const uint8_t PROGMEM digital_pin_to_port_PGM[] = diff --git a/Marlin/Sanguino/cores/arduino/pins_arduino.h b/Marlin/Sanguino/cores/arduino/pins_arduino.h index e0b7add86..fd7ee5c8c 100644 --- a/Marlin/Sanguino/cores/arduino/pins_arduino.h +++ b/Marlin/Sanguino/cores/arduino/pins_arduino.h @@ -58,8 +58,8 @@ extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; #define digitalPinToBitMask(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM + (P) ) ) #define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) ) #define analogInPinToBit(P) (P) -#define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_output_PGM + (P))) ) -#define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_input_PGM + (P))) ) -#define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_byte( port_to_mode_PGM + (P))) ) +#define portOutputRegister(P) ( (volatile uint8_t *)( (uint16_t) pgm_read_byte( port_to_output_PGM + (P))) ) +#define portInputRegister(P) ( (volatile uint8_t *)( (uint16_t) pgm_read_byte( port_to_input_PGM + (P))) ) +#define portModeRegister(P) ( (volatile uint8_t *)( (uint16_t) pgm_read_byte( port_to_mode_PGM + (P))) ) #endif diff --git a/Marlin/Sanguino/cores/arduino/wiring_private.h b/Marlin/Sanguino/cores/arduino/wiring_private.h index 56c471353..7449c76ac 100644 --- a/Marlin/Sanguino/cores/arduino/wiring_private.h +++ b/Marlin/Sanguino/cores/arduino/wiring_private.h @@ -27,7 +27,7 @@ #include #include #include -#include +#include #include #include diff --git a/Marlin/pins.h b/Marlin/pins.h index ebcfdd360..5d1b60611 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -539,6 +539,7 @@ * ****************************************************************************************/ #if MOTHERBOARD == 62 +#undef MOTHERBOARD #define MOTHERBOARD 6 #define SANGUINOLOLU_V_1_2 #endif From 7b14953c99bb33764eb8f70136349231e3bce72a Mon Sep 17 00:00:00 2001 From: Changwoo Ryu Date: Mon, 27 Feb 2012 04:05:33 +0900 Subject: [PATCH 256/430] Fix build on Sanguino based boards with ATmega1284P --- Marlin/pins.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index 5d1b60611..e950cbe68 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -475,7 +475,9 @@ #define KNOWN_BOARD 1 #ifndef __AVR_ATmega644P__ - #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#ifndef __AVR_ATmega1284P__ +#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif #endif //x axis pins @@ -546,8 +548,10 @@ #if MOTHERBOARD == 6 #define KNOWN_BOARD 1 #ifndef __AVR_ATmega644P__ +#ifndef __AVR_ATmega1284P__ #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. #endif +#endif #define X_STEP_PIN 15 #define X_DIR_PIN 21 @@ -867,8 +871,10 @@ #define MOTHERBOARD 6 #define KNOWN_BOARD 1 #ifndef __AVR_ATmega644P__ +#ifndef __AVR_ATmega1284P__ #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. #endif +#endif #define X_STEP_PIN 15 #define X_DIR_PIN 18 From 97d42ca2b229597c124dfdd1ffef8499d0f2644a Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Sun, 26 Feb 2012 22:05:38 +0100 Subject: [PATCH 257/430] SDSUPPORT default disabled --- Marlin/Configuration.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 16c2e16f2..38bb61c5c 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -188,7 +188,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 -#define SDSUPPORT // Enable SD Card Support in Hardware Console +//#define SDSUPPORT // Enable SD Card Support in Hardware Console //#define ULTIPANEL #ifdef ULTIPANEL From 245dca4bee3ea5cb4b1a294162cc01c40a55a3e5 Mon Sep 17 00:00:00 2001 From: Phil Hord Date: Thu, 16 Feb 2012 12:17:33 -0500 Subject: [PATCH 258/430] Makefile: generic pde=>cpp rule This adds flexibility to the makefile by allowing different pde targets to be specified for different needs. --- Marlin/Makefile | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Marlin/Makefile b/Marlin/Makefile index 71ee74748..7ab358653 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -138,6 +138,8 @@ all: build sizeafter build: elf hex applet/$(TARGET).cpp: $(TARGET).pde $(MAKEFILE) + +applet/%.cpp: %.pde # Here is the "preprocessing". # It creates a .cpp file based with the same name as the .pde file. # On top of the new .cpp file comes the WProgram.h header. @@ -145,11 +147,11 @@ applet/$(TARGET).cpp: $(TARGET).pde $(MAKEFILE) # Then the .cpp file will be compiled. Errors during compile will # refer to this new, automatically generated, file. # Not the original .pde file you actually edit... - @echo " WR applet/$(TARGET).cpp" - @test -d applet || mkdir applet - @echo '#include "WProgram.h"' > applet/$(TARGET).cpp - @cat $(TARGET).pde >> applet/$(TARGET).cpp - @cat $(ARDUINO)/main.cpp >> applet/$(TARGET).cpp + @echo " WR $@" + @test -d $(dir $@) || mkdir $(dir $@) + @echo '#include "WProgram.h"' > $@ + @cat $< >> $@ + @cat $(ARDUINO)/main.cpp >> $@ elf: applet/$(TARGET).elf hex: applet/$(TARGET).hex From f3101e96d90d4046c2ce19508a2bac1946d88964 Mon Sep 17 00:00:00 2001 From: Phil Hord Date: Thu, 16 Feb 2012 12:06:33 -0500 Subject: [PATCH 259/430] Add suitable .gitignore to avoid build noise --- Marlin/.gitignore | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 Marlin/.gitignore diff --git a/Marlin/.gitignore b/Marlin/.gitignore new file mode 100644 index 000000000..37a3c9b84 --- /dev/null +++ b/Marlin/.gitignore @@ -0,0 +1,2 @@ +*.o +applet/ From 09469add5560ca8a676c42e4bcd499868c33f0dd Mon Sep 17 00:00:00 2001 From: Phil Hord Date: Mon, 20 Feb 2012 02:30:31 -0500 Subject: [PATCH 260/430] Add board reset reporting (from Repetier-Firmware) --- Marlin/Marlin.pde | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 93c3a7185..3d906cc0a 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -252,6 +252,16 @@ void setup() MYSERIAL.begin(BAUDRATE); SERIAL_PROTOCOLLNPGM("start"); SERIAL_ECHO_START; + + // Check startup - does nothing if bootloader sets MCUSR to 0 + byte mcu = MCUSR; + if(mcu & 1) SERIAL_ECHOLNPGM("PowerUp"); + if(mcu & 2) SERIAL_ECHOLNPGM("External Reset"); + if(mcu & 4) SERIAL_ECHOLNPGM("Brown out Reset"); + if(mcu & 8) SERIAL_ECHOLNPGM("Watchdog Reset"); + if(mcu & 32) SERIAL_ECHOLNPGM("Software Reset"); + MCUSR=0; + SERIAL_ECHOPGM("Marlin: "); SERIAL_ECHOLNPGM(VERSION_STRING); #ifdef STRING_VERSION_CONFIG_H From ba8500a236041e812c5ff2150e4e65ec82f308b5 Mon Sep 17 00:00:00 2001 From: Phil Hord Date: Sun, 26 Feb 2012 20:15:40 -0500 Subject: [PATCH 261/430] pins.h: Define Z_MAX_PIN for Gen7 board The Z_MAX_PIN value was defined as no-value, but this causes the compile to fail. Fix this by setting the Z_MAX_PIN to the correct value (which happens to be 0 for pin PB0/DIO0/0). --- Marlin/pins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index e950cbe68..45cbebf00 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -81,7 +81,7 @@ #define Z_DIR_PIN 25 #define Z_ENABLE_PIN 24 #define Z_MIN_PIN 1 -#define Z_MAX_PIN +#define Z_MAX_PIN 0 //extruder pins #define E0_STEP_PIN 28 From 740f0c76902aa6182555b0123b7944b6331604e5 Mon Sep 17 00:00:00 2001 From: Phil Hord Date: Sun, 26 Feb 2012 18:46:34 -0500 Subject: [PATCH 262/430] Add explicit #define for bogus temp override The code to ignore the "bad thermistor reading failsafe" suicide function depends on the existing of the PS_ON pin feature. But in some boards this shouldn't be the case Fix this by adding an explicit definition to make our intentions more clear and separable. --- Marlin/pins.h | 3 +++ Marlin/temperature.cpp | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index e950cbe68..52aae6b7e 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -111,6 +111,9 @@ #endif #define PS_ON_PIN 15 +// Gen 1.3 and earlier supplied thermistor power via PS_ON +// Need to ignore the bad thermistor readings on those units +#define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE //our pin for debugging. #define DEBUG_PIN 0 diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 6efbbd1d9..069674be9 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -851,7 +851,7 @@ ISR(TIMER0_COMPB_vect) for(unsigned char e = 0; e < EXTRUDERS; e++) { if(current_raw[e] >= maxttemp[e]) { target_raw[e] = 0; - #if (PS_ON != -1) + #ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE { max_temp_error(e); kill();; @@ -860,7 +860,7 @@ ISR(TIMER0_COMPB_vect) } if(current_raw[e] <= minttemp[e]) { target_raw[e] = 0; - #if (PS_ON != -1) + #ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE { min_temp_error(e); kill(); From b65ef8d66c99bb909966ef4d1576f347cbe88b19 Mon Sep 17 00:00:00 2001 From: Phil Hord Date: Sun, 26 Feb 2012 20:39:49 -0500 Subject: [PATCH 263/430] Add support for upcoming Gen7 v1.4 V1.4 moves thermistor power to the always-on 5v line. The BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE is no longer needed on this board. Add a new motherboard type to support this feature. --- Marlin/Configuration.h | 1 + Marlin/pins.h | 19 ++++++++++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 38bb61c5c..74c03eb04 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -19,6 +19,7 @@ // Gen7 custom (Alfons3 Version) = 10 "https://github.com/Alfons3/Generation_7_Electronics" // Gen7 v1.1, v1.2 = 11 // Gen7 v1.3 = 12 +// Gen7 v1.4 = 13 // MEGA/RAMPS up to 1.2 = 3 // RAMPS 1.3 = 33 (Power outputs: Extruder, Bed, Fan) // RAMPS 1.3 = 34 (Power outputs: Extruder0, Extruder1, Bed) diff --git a/Marlin/pins.h b/Marlin/pins.h index 52aae6b7e..2fa53126f 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -45,13 +45,19 @@ #endif /* 99 */ /**************************************************************************************** -* Gen7 v1.1, v1.2, v1.3 pin assignment +* Gen7 v1.1, v1.2, v1.3, v1.4 pin assignment * ****************************************************************************************/ + +#if MOTHERBOARD == 13 +#define MOTHERBOARD 11 +#define GEN7_VERSION 14 // v1.4 +#endif + #if MOTHERBOARD == 12 #define MOTHERBOARD 11 -#define GEN7_V_1_3 +#define GEN7_VERSION 13 // v1.3 #endif #if MOTHERBOARD == 11 @@ -62,6 +68,10 @@ #endif +#ifndef GEN7_VERSION +#define GEN7_VERSION 12 // v1.x +#endif + //x axis pins #define X_STEP_PIN 19 #define X_DIR_PIN 18 @@ -103,7 +113,7 @@ #define SDSS -1 // SCL pin of I2C header #define LED_PIN -1 -#ifdef GEN7_V_1_3 +#if (GEN7_VERSION >= 13) // Gen7 v1.3 removed the fan pin #define FAN_PIN -1 #else @@ -111,9 +121,12 @@ #endif #define PS_ON_PIN 15 +#if (GEN7_VERSION < 14) // Gen 1.3 and earlier supplied thermistor power via PS_ON // Need to ignore the bad thermistor readings on those units #define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE +#endif + //our pin for debugging. #define DEBUG_PIN 0 From b48d67ce10d85f8ae0af6335c55e9e3c074dc24f Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 27 Feb 2012 18:31:40 +0100 Subject: [PATCH 264/430] Fixed homing --- Marlin/Marlin.pde | 20 ++++++++++++++++++-- Marlin/motion_control.cpp | 12 ++++++++++++ Marlin/planner.cpp | 13 ------------- Marlin/temperature.cpp | 4 ++-- 4 files changed, 32 insertions(+), 17 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 3d906cc0a..0ff3464b5 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -513,20 +513,22 @@ bool code_seen(char code) destination[LETTER##_AXIS] = 1.5 * LETTER##_MAX_LENGTH * LETTER##_HOME_DIR; \ feedrate = homing_feedrate[LETTER##_AXIS]; \ plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ + st_synchronize();\ \ current_position[LETTER##_AXIS] = 0;\ plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);\ destination[LETTER##_AXIS] = -LETTER##_HOME_RETRACT_MM * LETTER##_HOME_DIR;\ plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ + st_synchronize();\ \ destination[LETTER##_AXIS] = 2*LETTER##_HOME_RETRACT_MM * LETTER##_HOME_DIR;\ feedrate = homing_feedrate[LETTER##_AXIS]/2 ; \ plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \ + st_synchronize();\ \ current_position[LETTER##_AXIS] = (LETTER##_HOME_DIR == -1) ? LETTER##_HOME_POS : LETTER##_MAX_LENGTH;\ destination[LETTER##_AXIS] = current_position[LETTER##_AXIS];\ feedrate = 0.0;\ - st_synchronize();\ endstops_hit_on_purpose();\ } @@ -589,13 +591,15 @@ void process_commands() feedrate = homing_feedrate[X_AXIS]; if(homing_feedrate[Y_AXIS] X_MAX_LENGTH) destination[X_AXIS] = X_MAX_LENGTH; + if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH; + if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; + } + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; diff --git a/Marlin/motion_control.cpp b/Marlin/motion_control.cpp index a24b2b782..67619b86f 100644 --- a/Marlin/motion_control.cpp +++ b/Marlin/motion_control.cpp @@ -122,6 +122,18 @@ void mc_arc(float *position, float *target, float *offset, uint8_t axis_0, uint8 arc_target[axis_1] = center_axis1 + r_axis1; arc_target[axis_linear] += linear_per_segment; arc_target[E_AXIS] += extruder_per_segment; + + if (min_software_endstops) { + if (arc_target[X_AXIS] < X_HOME_POS) arc_target[X_AXIS] = X_HOME_POS; + if (arc_target[Y_AXIS] < Y_HOME_POS) arc_target[Y_AXIS] = Y_HOME_POS; + if (arc_target[Z_AXIS] < Z_HOME_POS) arc_target[Z_AXIS] = Z_HOME_POS; + } + + if (max_software_endstops) { + if (arc_target[X_AXIS] > X_MAX_LENGTH) arc_target[X_AXIS] = X_MAX_LENGTH; + if (arc_target[Y_AXIS] > Y_MAX_LENGTH) arc_target[Y_AXIS] = Y_MAX_LENGTH; + if (arc_target[Z_AXIS] > Z_MAX_LENGTH) arc_target[Z_AXIS] = Z_MAX_LENGTH; + } plan_buffer_line(arc_target[X_AXIS], arc_target[Y_AXIS], arc_target[Z_AXIS], arc_target[E_AXIS], feed_rate, extruder); } diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index d78e1d999..00fead128 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -446,19 +446,6 @@ void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, u // Calculate the buffer head after we push this byte int next_buffer_head = next_block_index(block_buffer_head); - - if (min_software_endstops) { - if (x < X_HOME_POS) x = X_HOME_POS; - if (y < Y_HOME_POS) y = Y_HOME_POS; - if (z < Z_HOME_POS) z = Z_HOME_POS; - } - - if (max_software_endstops) { - if (x > X_MAX_LENGTH) x = X_MAX_LENGTH; - if (y > Y_MAX_LENGTH) y = Y_MAX_LENGTH; - if (z > Z_MAX_LENGTH) z = Z_MAX_LENGTH; - } - // If the buffer is full: good! That means we are well ahead of the robot. // Rest here until there is room in the buffer. while(block_buffer_tail == next_buffer_head) { diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 069674be9..1155d88cf 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -851,18 +851,18 @@ ISR(TIMER0_COMPB_vect) for(unsigned char e = 0; e < EXTRUDERS; e++) { if(current_raw[e] >= maxttemp[e]) { target_raw[e] = 0; + max_temp_error(e); #ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE { - max_temp_error(e); kill();; } #endif } if(current_raw[e] <= minttemp[e]) { target_raw[e] = 0; + min_temp_error(e); #ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE { - min_temp_error(e); kill(); } #endif From c6f2ec3c82b57063b5d1eb70028d25cce329d591 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Mon, 27 Feb 2012 18:45:45 +0100 Subject: [PATCH 265/430] remove stop_heating_wait --- Marlin/Configuration_adv.h | 3 --- Marlin/Marlin.h | 1 - Marlin/Marlin.pde | 2 -- Marlin/cardreader.cpp | 3 --- 4 files changed, 9 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 2df655061..38e940950 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -25,9 +25,6 @@ // if CooldownNoWait is defined M109 will not wait for the cooldown to finish #define CooldownNoWait true -//Do not wait for M109 to finish when printing from SD card -//#define STOP_HEATING_WAIT_WHEN_SD_PRINTING - #ifdef PIDTEMP // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. // if Kc is choosen well, the additional required power due to increased melting should be compensated. diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index ffa3839a7..e01d98ad5 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -175,7 +175,6 @@ extern float homing_feedrate[]; extern bool axis_relative_modes[]; extern float current_position[NUM_AXIS] ; extern float add_homeing[3]; -extern bool stop_heating_wait; // Handling multiple extruders pins extern uint8_t active_extruder; diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 0ff3464b5..d80d7f15b 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -131,7 +131,6 @@ volatile int extrudemultiply=100; //100->1 200->2 float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 }; float add_homeing[3]={0,0,0}; uint8_t active_extruder = 0; -bool stop_heating_wait=false; //=========================================================================== //=============================private variables============================= @@ -886,7 +885,6 @@ void process_commands() } manage_heater(); LCD_STATUS; - if(stop_heating_wait) break; #ifdef TEMP_RESIDENCY_TIME /* start/restart the TEMP_RESIDENCY_TIME timer whenever we reach target temp for the first time or when current temp falls outside the hysteresis after target temp was reached */ diff --git a/Marlin/cardreader.cpp b/Marlin/cardreader.cpp index ecf0c4712..052ce2030 100644 --- a/Marlin/cardreader.cpp +++ b/Marlin/cardreader.cpp @@ -447,9 +447,6 @@ void CardReader::printingHasFinished() st_synchronize(); quickStop(); sdprinting = false; - #ifdef STOP_HEATING_WAIT_FOR_SD_PRINTING - stop_heating_wait=true; - #endif if(SD_FINISHED_STEPPERRELEASE) { //finishAndDisableSteppers(); From b4833d55c269f9726604b76fc3e2cc4e75c77d87 Mon Sep 17 00:00:00 2001 From: Erik van der Zalm Date: Tue, 28 Feb 2012 18:20:03 +0100 Subject: [PATCH 266/430] Fixed HOME_POS in combination with G28 X0 or G28 Y0 --- Marlin/Marlin.pde | 19 ++++++++++++++----- Marlin/stepper.cpp | 2 +- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index d80d7f15b..f417ae5b8 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -490,10 +490,12 @@ float code_value() { return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); } + long code_value_long() { return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); } + bool code_seen(char code_string[]) //Return True if the string was found { return (strstr(cmdbuffer[bufindr], code_string) != NULL); @@ -504,6 +506,7 @@ bool code_seen(char code) strchr_pointer = strchr(cmdbuffer[bufindr], code); return (strchr_pointer != NULL); //Return True if a character was found } + #define HOMEAXIS(LETTER) \ if ((LETTER##_MIN_PIN > -1 && LETTER##_HOME_DIR==-1) || (LETTER##_MAX_PIN > -1 && LETTER##_HOME_DIR==1))\ { \ @@ -590,7 +593,7 @@ void process_commands() feedrate = homing_feedrate[X_AXIS]; if(homing_feedrate[Y_AXIS] Date: Wed, 29 Feb 2012 11:38:12 +0100 Subject: [PATCH 267/430] Made plan_buffer_line arguments const, which optimizes better and fixes the RUNOUT_PREVENTION feature. --- Marlin/planner.cpp | 2 +- Marlin/planner.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 00fead128..b1e1d2b2b 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -441,7 +441,7 @@ float junction_deviation = 0.1; // Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in // mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration // calculation the caller must also provide the physical length of the line in millimeters. -void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, uint8_t &extruder) +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder) { // Calculate the buffer head after we push this byte int next_buffer_head = next_block_index(block_buffer_head); diff --git a/Marlin/planner.h b/Marlin/planner.h index c90581bfd..ac9719fbc 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -67,7 +67,7 @@ void plan_init(); // Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in // millimaters. Feed rate specifies the speed of the motion. -void plan_buffer_line(float &x, float &y, float &z, float &e, float feed_rate, uint8_t &extruder); +void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder); // Set position. Used for G92 instructions. void plan_set_position(const float &x, const float &y, const float &z, const float &e); From 10bf2bb8e19286bde16e531ece204a529a6eac27 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Wed, 29 Feb 2012 14:51:15 +0100 Subject: [PATCH 268/430] - --- Marlin/Marlin.pde | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index 7ee076221..2ec088ca0 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -714,6 +714,17 @@ void process_commands() //processed in write to file routine above //card,saving = false; break; + case 31: //M31 Delete File + if (card.cardok){ + card.closefile(); + if (SdBaseFile::remove(strchr_pointer + 4)){ + SERIAL_PROTOCOLLNPGM("File deleted"); + } + else{ + SERIAL_PROTOCOLLNPGM("Deletion failed"); + } + } + #endif //SDSUPPORT case 30: //M30 take time since the start of the SD print or an M109 command From 3d831090283ede2c7ea1ed8112efc2b9d47f8571 Mon Sep 17 00:00:00 2001 From: Daid Date: Wed, 29 Feb 2012 15:33:23 +0100 Subject: [PATCH 269/430] Fixed general 16x2 LCD build without SD support. --- Marlin/cardreader.h | 34 +++------------------------------- Marlin/ultralcd.h | 8 +++----- Marlin/ultralcd.pde | 14 ++++++++++---- 3 files changed, 16 insertions(+), 40 deletions(-) diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 67fe58a90..55fa786d7 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -64,39 +64,11 @@ private: char* diveDirName; void lsDive(const char *prepend,SdFile parent); }; - +#define IS_SD_PRINTING (card.sdprinting) #else -#define dir_t bool -class CardReader -{ -public: - FORCE_INLINE CardReader(){}; - - FORCE_INLINE static void initsd(){}; - FORCE_INLINE static void write_command(char *buf){}; - - FORCE_INLINE static void checkautostart(bool x) {}; - - FORCE_INLINE static void openFile(char* name,bool read){}; - FORCE_INLINE static void closefile() {}; - FORCE_INLINE static void release(){}; - FORCE_INLINE static void startFileprint(){}; - FORCE_INLINE static void startFilewrite(char *name){}; - FORCE_INLINE static void pauseSDPrint(){}; - FORCE_INLINE static void getStatus(){}; - - FORCE_INLINE static void selectFile(char* name){}; - FORCE_INLINE static void getfilename(const uint8_t nr){}; - FORCE_INLINE static uint8_t getnrfilenames(){return 0;}; - +#define IS_SD_PRINTING (false) - FORCE_INLINE static void ls() {}; - FORCE_INLINE static bool eof() {return true;}; - FORCE_INLINE static char get() {return 0;}; - FORCE_INLINE static void setIndex(){}; - FORCE_INLINE uint8_t percentDone(){return 0;}; -}; #endif //SDSUPPORT -#endif \ No newline at end of file +#endif diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index c4392d26f..253149cbb 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -129,6 +129,7 @@ //conversion routines, could need some overworking char *ftostr51(const float &x); + char *ftostr52(const float &x); char *ftostr31(const float &x); char *ftostr3(const float &x); @@ -142,10 +143,8 @@ #define LCD_MESSAGE(x) #define LCD_MESSAGEPGM(x) FORCE_INLINE void lcd_status() {}; -#endif - -#ifndef ULTIPANEL - #define CLICKED false + + #define CLICKED false #define BLOCK ; #endif @@ -160,4 +159,3 @@ char *itostr3(const int &xx); char *itostr4(const int &xx); char *ftostr51(const float &x); #endif //ULTRALCD - diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 54b701284..8a059a1b7 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -12,7 +12,9 @@ extern volatile bool feedmultiplychanged; extern volatile int extrudemultiply; extern long position[4]; +#ifdef SDSUPPORT extern CardReader card; +#endif //=========================================================================== //=============================public variables============================ @@ -480,7 +482,11 @@ void MainMenu::showPrepare() MENUITEM( lcdprintPGM(MSG_MAIN) , BLOCK;status=Main_Menu;beepshort(); ) ; break; case ItemP_autostart: - MENUITEM( lcdprintPGM(MSG_AUTOSTART) , BLOCK;card.lastnr=0;card.setroot();card.checkautostart(true);beepshort(); ) ; + MENUITEM( lcdprintPGM(MSG_AUTOSTART) , BLOCK; +#ifdef SDSUPPORT + card.lastnr=0;card.setroot();card.checkautostart(true); +#endif + beepshort(); ) ; break; case ItemP_disstep: MENUITEM( lcdprintPGM(MSG_DISABLE_STEPPERS) , BLOCK;enquecommand("M84");beepshort(); ) ; @@ -1629,7 +1635,7 @@ void MainMenu::showControlMotion() if(linechanging) { if(encoderpos<5) encoderpos=5; - if(encoderpos>99999) encoderpos=99999; + if(encoderpos>32000) encoderpos=32000;//TODO: This is a problem, encoderpos is 16bit, but steps_per_unit for e can be wel over 800 lcd.setCursor(11,line);lcd.print(ftostr52(encoderpos/100.0)); } @@ -1957,7 +1963,7 @@ void MainMenu::showMainMenu() #endif if(tune) { - if(!(movesplanned() ||card.sdprinting)) + if(!(movesplanned() || IS_SD_PRINTING)) { force_lcd_update=true; tune=false; @@ -1965,7 +1971,7 @@ void MainMenu::showMainMenu() } else { - if(movesplanned() ||card.sdprinting) + if(movesplanned() || IS_SD_PRINTING) { force_lcd_update=true; tune=true; From 7d124478faea1934db70e3c7a640fbcf441f4eb0 Mon Sep 17 00:00:00 2001 From: Daid Date: Wed, 29 Feb 2012 15:49:02 +0100 Subject: [PATCH 270/430] Only protect the heater pins for the defined extruders. Changed the way the extruder pins are defined so it doesn't create extra -1 entries in the list. --- Marlin/pins.h | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index fb809ce58..1210800c1 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -942,22 +942,20 @@ #endif //List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN -#if EXTRUDERS == 3 - #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN - #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN -#elif EXTRUDERS == 2 - #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN - #define _E2_PINS -1 -#elif EXTRUDERS == 1 - #define _E1_PINS -1 - #define _E2_PINS -1 +#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN, +#if EXTRUDERS > 1 + #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, HEATER_1_PIN, #else - #error Unsupported number of extruders + #define _E1_PINS #endif +#elif EXTRUDERS > 2 + #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, HEATER_2_PIN, +#else + #define _E2_PINS +#endif + #define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, LED_PIN, PS_ON_PIN, \ - HEATER_0_PIN, HEATER_1_PIN, HEATER_2_PIN, \ HEATER_BED_PIN, FAN_PIN, \ - _E0_PINS, _E1_PINS, _E2_PINS, \ + _E0_PINS _E1_PINS _E2_PINS \ TEMP_0_PIN, TEMP_1_PIN, TEMP_2_PIN, TEMP_BED_PIN } #endif From 00d33e6b82eacc80735f4406b03b408671d00568 Mon Sep 17 00:00:00 2001 From: Daid Date: Wed, 29 Feb 2012 19:01:21 +0100 Subject: [PATCH 271/430] Typo fix --- Marlin/pins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/pins.h b/Marlin/pins.h index 1210800c1..804d6f35b 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -948,7 +948,7 @@ #else #define _E1_PINS #endif -#elif EXTRUDERS > 2 +#if EXTRUDERS > 2 #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, HEATER_2_PIN, #else #define _E2_PINS From 9fa586bbed11f710df08e34d87c735452c17fc04 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Thu, 1 Mar 2012 14:05:40 +0100 Subject: [PATCH 272/430] fixed languages; Preheat_PLA and Preheat_ABS was not defined for non english --- Marlin/language.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Marlin/language.h b/Marlin/language.h index 6dfd7e0be..e885f23e2 100644 --- a/Marlin/language.h +++ b/Marlin/language.h @@ -88,9 +88,10 @@ #define MSG_DISABLE_STEPPERS " Disable Steppers" #define MSG_AUTO_HOME " Auto Home" #define MSG_SET_ORIGIN " Set Origin" - #define MSG_PREHEAT " Preheat" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" + #define MSG_PREHEAT_PLA " Preheat PLA" + #define MSG_PREHEAT_ABS " Preheat ABS" #define MSG_MOVE_AXIS " Move Axis \x7E" #define MSG_SPEED " Speed:" #define MSG_NOZZLE " \002Nozzle:" @@ -153,7 +154,8 @@ #define MSG_DISABLE_STEPPERS " Disable Steppers" #define MSG_AUTO_HOME " Auto Home" #define MSG_SET_ORIGIN " Set Origin" - #define MSG_PREHEAT " Preheat" + #define MSG_PREHEAT_PLA " Preheat PLA" + #define MSG_PREHEAT_ABS " Preheat ABS" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" #define MSG_MOVE_AXIS " Move Axis \x7E" @@ -218,7 +220,8 @@ #define MSG_DISABLE_STEPPERS " Disable Steppers" #define MSG_AUTO_HOME " Auto Home" #define MSG_SET_ORIGIN " Set Origin" - #define MSG_PREHEAT " Preheat" + #define MSG_PREHEAT_PLA " Preheat PLA" + #define MSG_PREHEAT_ABS " Preheat ABS" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" #define MSG_MOVE_AXIS " Move Axis \x7E" @@ -283,7 +286,8 @@ #define MSG_DISABLE_STEPPERS " Disable Steppers" #define MSG_AUTO_HOME " Auto Home" #define MSG_SET_ORIGIN " Set Origin" - #define MSG_PREHEAT " Preheat" + #define MSG_PREHEAT_PLA " Preheat PLA" + #define MSG_PREHEAT_ABS " Preheat ABS" #define MSG_COOLDOWN " Cooldown" #define MSG_EXTRUDE " Extrude" #define MSG_MOVE_AXIS " Move Axis \x7E" From a92b3afe64a3da424720c8488aefa943d8dcf32a Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Thu, 1 Mar 2012 14:24:20 +0100 Subject: [PATCH 273/430] added german translation;Menue should be in english.. sounds better --- Marlin/language.h | 62 +++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/Marlin/language.h b/Marlin/language.h index e885f23e2..fade6cd2e 100644 --- a/Marlin/language.h +++ b/Marlin/language.h @@ -212,31 +212,31 @@ // LCD Menu Messages - #define WELCOME_MSG "RepRap Ready." - #define MSG_SD_INSERTED "Card Ready" - #define MSG_SD_REMOVED "Card Initiate" + #define WELCOME_MSG "RepRap bereit" + #define MSG_SD_INSERTED "SDKarte bereit" + #define MSG_SD_REMOVED "SDKarte entfernt" #define MSG_MAIN " Main \003" #define MSG_AUTOSTART " Autostart" - #define MSG_DISABLE_STEPPERS " Disable Steppers" - #define MSG_AUTO_HOME " Auto Home" - #define MSG_SET_ORIGIN " Set Origin" - #define MSG_PREHEAT_PLA " Preheat PLA" - #define MSG_PREHEAT_ABS " Preheat ABS" - #define MSG_COOLDOWN " Cooldown" - #define MSG_EXTRUDE " Extrude" - #define MSG_MOVE_AXIS " Move Axis \x7E" - #define MSG_SPEED " Speed:" - #define MSG_NOZZLE " \002Nozzle:" - #define MSG_BED " \002Bed:" - #define MSG_FAN_SPEED " Fan speed:" - #define MSG_FLOW " Flow:" - #define MSG_CONTROL " Control \003" + #define MSG_DISABLE_STEPPERS " Stepper abschalten" + #define MSG_AUTO_HOME " Auto Heim" + #define MSG_SET_ORIGIN " Position setzen" + #define MSG_PREHEAT_PLA " Aufheizen PLA" + #define MSG_PREHEAT_ABS " Aufheizen ABS" + #define MSG_COOLDOWN " Abkuehlen" + #define MSG_EXTRUDE " Extrudiren" + #define MSG_MOVE_AXIS " Achsen verfahren \x7E" + #define MSG_SPEED " Geschw:" + #define MSG_NOZZLE " \002Duese:" + #define MSG_BED " \002Bett:" + #define MSG_FAN_SPEED " Luefter geschw.:" + #define MSG_FLOW " Fluss:" + #define MSG_CONTROL " Kontrolle \003" #define MSG_MIN " \002 Min:" #define MSG_MAX " \002 Max:" - #define MSG_FACTOR " \002 Fact:" - #define MSG_AUTOTEMP " Autotemp:" - #define MSG_ON "On " - #define MSG_OFF "Off" + #define MSG_FACTOR " \002 Faktor:" + #define MSG_AUTOTEMP " AutoTemp:" + #define MSG_ON "Ein " + #define MSG_OFF "Aus " #define MSG_PID_P " PID-P: " #define MSG_PID_I " PID-I: " #define MSG_PID_D " PID-D: " @@ -257,20 +257,20 @@ #define MSG_ZSTEPS " Zsteps/mm:" #define MSG_ESTEPS " Esteps/mm:" #define MSG_MAIN_WIDE " Main \003" - #define MSG_TEMPERATURE_WIDE " Temperature \x7E" + #define MSG_TEMPERATURE_WIDE " Temperatur \x7E" #define MSG_MOTION_WIDE " Motion \x7E" - #define MSG_STORE_EPROM " Store EPROM" - #define MSG_LOAD_EPROM " Load EPROM" - #define MSG_RESTORE_FAILSAFE " Restore Failsafe" + #define MSG_STORE_EPROM " EPROM speichern" + #define MSG_LOAD_EPROM " EPROM laden" + #define MSG_RESTORE_FAILSAFE " Standard Konfig." #define MSG_REFRESH "\004Refresh" - #define MSG_WATCH " Watch \003" + #define MSG_WATCH " Beobachten \003" #define MSG_PREPARE " Prepare \x7E" - #define MSG_CONTROL_ARROW " Control \x7E" + #define MSG_CONTROL_ARROW " Kontrolle \x7E" #define MSG_TUNE " Tune \x7E" - #define MSG_STOP_PRINT " Stop Print \x7E" - #define MSG_CARD_MENU " Card Menu \x7E" - #define MSG_NO_CARD " No Card" - #define MSG_SERIAL_ERROR_MENU_STRUCTURE "Something is wrong in the MenuStructure." + #define MSG_STOP_PRINT " Druck stoppen \x7E" + #define MSG_CARD_MENU " SDKarten Menue \x7E" + #define MSG_NO_CARD " Keine SDKarte" + #define MSG_SERIAL_ERROR_MENU_STRUCTURE "Fehler in der Menuestruktur." #endif From fa2e3a40e943e97c1488f9106f2660bacd03dddf Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Thu, 1 Mar 2012 14:38:50 +0100 Subject: [PATCH 274/430] fixed LCD manual z axis move Feedrate to 70 (was 1700) --- Marlin/ultralcd.pde | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/ultralcd.pde b/Marlin/ultralcd.pde index 54b701284..00f5e5912 100644 --- a/Marlin/ultralcd.pde +++ b/Marlin/ultralcd.pde @@ -652,14 +652,14 @@ void MainMenu::showAxisMove() { if (encoderpos >0) { - enquecommand("G1 F170 Z0.1"); + enquecommand("G1 F70 Z0.1"); oldencoderpos=encoderpos; encoderpos=0; } else if (encoderpos < 0) { - enquecommand("G1 F1700 Z-0.1"); + enquecommand("G1 F70 Z-0.1"); oldencoderpos=encoderpos; encoderpos=0; } From 5f3a422e68b098460a1c53d69913d48247a25fe0 Mon Sep 17 00:00:00 2001 From: Christian Thalhammer Date: Fri, 2 Mar 2012 21:49:05 +0100 Subject: [PATCH 275/430] added M31 - delete file from sd card --- Marlin/Marlin.pde | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index c595b5baa..5c213e283 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -739,20 +739,22 @@ void process_commands() //processed in write to file routine above //card,saving = false; break; - case 31: //M31 Delete File - if (card.cardok){ + case 30: //M31 Delete File + if (card.cardOK){ card.closefile(); - if (SdBaseFile::remove(strchr_pointer + 4)){ - SERIAL_PROTOCOLLNPGM("File deleted"); - } - else{ - SERIAL_PROTOCOLLNPGM("Deletion failed"); - } + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + char* npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + card.removeFile(strchr_pointer + 4); } + break; #endif //SDSUPPORT - case 30: //M30 take time since the start of the SD print or an M109 command + case 31: //M30 take time since the start of the SD print or an M109 command { stoptime=millis(); char time[30]; From 79a466ca26770c26f8581804ab0d37e486b35fd3 Mon Sep 17 00:00:00 2001 From: haxar Date: Fri, 2 Mar 2012 17:15:21 -0800 Subject: [PATCH 276/430] make analog2tempBed return a precise celsius reading for BED_USES_THERMISTOR, complementing changes to analog2temp in d15f01e --- Marlin/temperature.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 1155d88cf..77f9491ab 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -397,7 +397,7 @@ float analog2temp(int raw, uint8_t e) { // For bed temperature measurement. float analog2tempBed(int raw) { #ifdef BED_USES_THERMISTOR - int celsius = 0; + float celsius = 0; byte i; raw = (1023 * OVERSAMPLENR) - raw; @@ -408,9 +408,8 @@ float analog2tempBed(int raw) { { celsius = PGM_RD_W(bedtemptable[i-1][1]) + (raw - PGM_RD_W(bedtemptable[i-1][0])) * - (PGM_RD_W(bedtemptable[i][1]) - PGM_RD_W(bedtemptable[i-1][1])) / - (PGM_RD_W(bedtemptable[i][0]) - PGM_RD_W(bedtemptable[i-1][0])); - + (float)(PGM_RD_W(bedtemptable[i][1]) - PGM_RD_W(bedtemptable[i-1][1])) / + (float)(PGM_RD_W(bedtemptable[i][0]) - PGM_RD_W(bedtemptable[i-1][0])); break; } } @@ -419,13 +418,12 @@ float analog2tempBed(int raw) { if (i == bedtemptable_len) celsius = PGM_RD_W(bedtemptable[i-1][1]); return celsius; - #elif defined BED_USES_AD595 return ((raw * ((5.0 * 100.0) / 1024.0) / OVERSAMPLENR) * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET; #else #warning No heater-type defined for the bed. + return 0; #endif - return 0; } void tp_init() From 046a8e00395f1458648326b94dfc9019a6803f05 Mon Sep 17 00:00:00 2001 From: Blair Thompson Date: Sat, 3 Mar 2012 15:51:47 +0000 Subject: [PATCH 277/430] Added more defines to the language.h file so that nowe most of the text strings are now configured via this file. Still got some hunting down to do to complete this task. --- Marlin/.Marlin.vsarduino.h | 58 ++++++ Marlin/Marlin.pde | 95 ++++----- Marlin/Marlin.sdf | Bin 0 -> 15749120 bytes Marlin/Marlin.sln | 20 ++ Marlin/Marlin.suo | Bin 0 -> 12288 bytes Marlin/Marlin.vcxproj | 117 +++++++++++ Marlin/Marlin.vcxproj.filters | 140 ++++++++++++++ Marlin/Marlin.vcxproj.user | 3 + Marlin/cardreader.cpp | 38 ++-- Marlin/language.h | 355 +++++++++++++++------------------- Marlin/planner.cpp | 5 +- Marlin/stepper.cpp | 8 +- 12 files changed, 564 insertions(+), 275 deletions(-) create mode 100644 Marlin/.Marlin.vsarduino.h create mode 100644 Marlin/Marlin.sdf create mode 100644 Marlin/Marlin.sln create mode 100644 Marlin/Marlin.suo create mode 100644 Marlin/Marlin.vcxproj create mode 100644 Marlin/Marlin.vcxproj.filters create mode 100644 Marlin/Marlin.vcxproj.user diff --git a/Marlin/.Marlin.vsarduino.h b/Marlin/.Marlin.vsarduino.h new file mode 100644 index 000000000..d2925972b --- /dev/null +++ b/Marlin/.Marlin.vsarduino.h @@ -0,0 +1,58 @@ +#define __AVR_ATmega2560__ +#define __cplusplus +#define __builtin_va_list int +#define __attribute__(x) +#define __inline__ +#define __asm__(x) +#define ARDUINO 23 +extern "C" void __cxa_pure_virtual() {} +#include "C:\arduino-0023\libraries\LiquidCrystal\LiquidCrystal.h" +#include "C:\arduino-0023\libraries\LiquidCrystal\LiquidCrystal.cpp" +void enquecommand(const char *cmd); +void setup_photpin(); +void setup_powerhold(); +void suicide(); +void setup(); +void loop(); +void get_command(); +float code_value(); +long code_value_long(); +bool code_seen(char code_string[]); +bool code_seen(char code); +void process_commands(); +void process_commands(); +void FlushSerialRequestResend(); +void ClearToSend(); +void get_coordinates(); +void get_arc_coordinates(); +void prepare_move(); +void prepare_arc_move(char isclockwise); +void manage_inactivity(byte debug); +void kill(); +void lcdProgMemprint(const char *str); +int intround(const float &x); +void lcd_status(const char* message); +void lcd_statuspgm(const char* message); +FORCE_INLINE void clear(); +void lcd_init(); +void beep(); +void beepshort(); +void lcd_status(); +void buttons_init(); +void buttons_check(); +char *ftostr3(const float &x); +char *itostr2(const uint8_t &x); +char *ftostr31(const float &x); +char *ftostr32(const float &x); +char *itostr31(const int &xx); +char *itostr3(const int &xx); +char *itostr4(const int &xx); +char *ftostr51(const float &x); +char *ftostr52(const float &x); +void wd_init(); +void wd_reset(); + +#include "C:\arduino-0023\hardware\arduino\cores\arduino\WProgram.h" +#include "C:\Users\Blair\Desktop\Marlin\Marlin\Marlin.pde" +#include "C:\Users\Blair\Desktop\Marlin\Marlin\ultralcd.pde" +#include "C:\Users\Blair\Desktop\Marlin\Marlin\watchdog.pde" diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde index f417ae5b8..5f585e62f 100644 --- a/Marlin/Marlin.pde +++ b/Marlin/Marlin.pde @@ -254,28 +254,28 @@ void setup() // Check startup - does nothing if bootloader sets MCUSR to 0 byte mcu = MCUSR; - if(mcu & 1) SERIAL_ECHOLNPGM("PowerUp"); - if(mcu & 2) SERIAL_ECHOLNPGM("External Reset"); - if(mcu & 4) SERIAL_ECHOLNPGM("Brown out Reset"); - if(mcu & 8) SERIAL_ECHOLNPGM("Watchdog Reset"); - if(mcu & 32) SERIAL_ECHOLNPGM("Software Reset"); + if(mcu & 1) SERIAL_ECHOLNPGM(MSG_POWERUP); + if(mcu & 2) SERIAL_ECHOLNPGM(MSG_EXTERNAL_RESET); + if(mcu & 4) SERIAL_ECHOLNPGM(MSG_BROWNOUT_RESET); + if(mcu & 8) SERIAL_ECHOLNPGM(MSG_WATCHDOG_RESET); + if(mcu & 32) SERIAL_ECHOLNPGM(MSG_SOFTWARE_RESET); MCUSR=0; - SERIAL_ECHOPGM("Marlin: "); + SERIAL_ECHOPGM(MSG_MARLIN); SERIAL_ECHOLNPGM(VERSION_STRING); #ifdef STRING_VERSION_CONFIG_H #ifdef STRING_CONFIG_H_AUTHOR SERIAL_ECHO_START; - SERIAL_ECHOPGM("Configuration.h: "); + SERIAL_ECHOPGM(MSG_CONFIGURATION_VER); SERIAL_ECHOPGM(STRING_VERSION_CONFIG_H); - SERIAL_ECHOPGM(" | Author: "); + SERIAL_ECHOPGM(MSG_AUTHOR); SERIAL_ECHOLNPGM(STRING_CONFIG_H_AUTHOR); #endif #endif SERIAL_ECHO_START; - SERIAL_ECHOPGM("Free Memory:"); + SERIAL_ECHOPGM(MSG_FREE_MEMORY); SERIAL_ECHO(freeMemory()); - SERIAL_ECHOPGM(" PlannerBufferBytes:"); + SERIAL_ECHOPGM(MSG_PLANNER_BUFFER_BYTES); SERIAL_ECHOLN((int)sizeof(block_t)*BLOCK_BUFFER_SIZE); for(int8_t i = 0; i < BUFSIZE; i++) { @@ -312,12 +312,12 @@ void loop() if(strstr(cmdbuffer[bufindr],"M29") == NULL) { card.write_command(cmdbuffer[bufindr]); - SERIAL_PROTOCOLLNPGM("ok"); + SERIAL_PROTOCOLLNPGM(MSG_OK); } else { card.closefile(); - SERIAL_PROTOCOLLNPGM("Done saving file."); + SERIAL_PROTOCOLLNPGM(MSG_FILE_SAVED); } } else @@ -357,7 +357,7 @@ void get_command() gcode_N = (strtol(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL, 10)); if(gcode_N != gcode_LastN+1 && (strstr(cmdbuffer[bufindw], "M110") == NULL) ) { SERIAL_ERROR_START; - SERIAL_ERRORPGM("Line Number is not Last Line Number+1, Last Line:"); + SERIAL_ERRORPGM(MSG_ERR_LINE_NO); SERIAL_ERRORLN(gcode_LastN); //Serial.println(gcode_N); FlushSerialRequestResend(); @@ -374,7 +374,7 @@ void get_command() if( (int)(strtod(&cmdbuffer[bufindw][strchr_pointer - cmdbuffer[bufindw] + 1], NULL)) != checksum) { SERIAL_ERROR_START; - SERIAL_ERRORPGM("checksum mismatch, Last Line:"); + SERIAL_ERRORPGM(MSG_ERR_CHECKSUM_MISMATCH); SERIAL_ERRORLN(gcode_LastN); FlushSerialRequestResend(); serial_count = 0; @@ -385,7 +385,7 @@ void get_command() else { SERIAL_ERROR_START; - SERIAL_ERRORPGM("No Checksum with line number, Last Line:"); + SERIAL_ERRORPGM(MSG_ERR_NO_CHECKSUM); SERIAL_ERRORLN(gcode_LastN); FlushSerialRequestResend(); serial_count = 0; @@ -400,7 +400,7 @@ void get_command() if((strstr(cmdbuffer[bufindw], "*") != NULL)) { SERIAL_ERROR_START; - SERIAL_ERRORPGM("No Line Number with checksum, Last Line:"); + SERIAL_ERRORPGM(MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM); SERIAL_ERRORLN(gcode_LastN); serial_count = 0; return; @@ -417,7 +417,7 @@ void get_command() if(card.saving) break; #endif //SDSUPPORT - SERIAL_PROTOCOLLNPGM("ok"); + SERIAL_PROTOCOLLNPGM(MSG_OK); break; default: break; @@ -445,7 +445,7 @@ void get_command() if(serial_char == '\n' || serial_char == '\r' || serial_char == ':' || serial_count >= (MAX_CMD_SIZE - 1)||n==-1) { if(card.eof()){ - SERIAL_PROTOCOLLNPGM("Done printing file"); + SERIAL_PROTOCOLLNPGM(MSG_FILE_PRINTED); stoptime=millis(); char time[30]; unsigned long t=(stoptime-starttime)/1000; @@ -559,7 +559,7 @@ void process_commands() prepare_arc_move(false); return; case 4: // G4 dwell - LCD_MESSAGEPGM("DWELL..."); + LCD_MESSAGEPGM(MSG_DWELL); codenum = 0; if(code_seen('P')) codenum = code_value(); // milliseconds to wait if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait @@ -681,7 +681,7 @@ void process_commands() switch( (int)code_value() ) { case 17: - LCD_MESSAGEPGM("No move."); + LCD_MESSAGEPGM(MSG_NO_MOVE); enable_x(); enable_y(); enable_z(); @@ -692,9 +692,9 @@ void process_commands() #ifdef SDSUPPORT case 20: // M20 - list SD card - SERIAL_PROTOCOLLNPGM("Begin file list"); + SERIAL_PROTOCOLLNPGM(MSG_BEGIN_FILE_LIST); card.ls(); - SERIAL_PROTOCOLLNPGM("End file list"); + SERIAL_PROTOCOLLNPGM(MSG_END_FILE_LIST); break; case 21: // M21 - init SD card @@ -787,7 +787,7 @@ void process_commands() tmp_extruder = code_value(); if(tmp_extruder >= EXTRUDERS) { SERIAL_ECHO_START; - SERIAL_ECHO("M104 Invalid extruder "); + SERIAL_ECHO(MSG_M104_INVALID_EXTRUDER); SERIAL_ECHOLN(tmp_extruder); break; } @@ -804,7 +804,7 @@ void process_commands() tmp_extruder = code_value(); if(tmp_extruder >= EXTRUDERS) { SERIAL_ECHO_START; - SERIAL_ECHO("M105 Invalid extruder "); + SERIAL_ECHO(MSG_M105_INVALID_EXTRUDER); SERIAL_ECHOLN(tmp_extruder); break; } @@ -818,7 +818,7 @@ void process_commands() #endif //TEMP_BED_PIN #else SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("No thermistors - no temp"); + SERIAL_ERRORLNPGM(MSG_ERR_NO_THERMISTORS); #endif #ifdef PIDTEMP SERIAL_PROTOCOLPGM(" @:"); @@ -834,12 +834,12 @@ void process_commands() tmp_extruder = code_value(); if(tmp_extruder >= EXTRUDERS) { SERIAL_ECHO_START; - SERIAL_ECHO("M109 Invalid extruder "); + SERIAL_ECHO(MSG_M109_INVALID_EXTRUDER); SERIAL_ECHOLN(tmp_extruder); break; } } - LCD_MESSAGEPGM("Heating..."); + LCD_MESSAGEPGM(MSG_HEATING); #ifdef AUTOTEMP autotemp_enabled=false; #endif @@ -905,14 +905,14 @@ void process_commands() } #endif //TEMP_RESIDENCY_TIME } - LCD_MESSAGEPGM("Heating done."); + LCD_MESSAGEPGM(MSG_HEATING_COMPLETE); starttime=millis(); previous_millis_cmd = millis(); } break; case 190: // M190 - Wait for bed heater to reach target. #if TEMP_BED_PIN > -1 - LCD_MESSAGEPGM("Bed Heating."); + LCD_MESSAGEPGM(MSG_BED_HEATING); if (code_seen('S')) setTargetBed(code_value()); codenum = millis(); while(isHeatingBed()) @@ -930,7 +930,7 @@ void process_commands() } manage_heater(); } - LCD_MESSAGEPGM("Bed done."); + LCD_MESSAGEPGM(MSG_BED_DONE); previous_millis_cmd = millis(); #endif break; @@ -1005,7 +1005,7 @@ void process_commands() disable_e2(); } #endif - LCD_MESSAGEPGM("Partial Release"); + LCD_MESSAGEPGM(MSG_PART_RELEASE); } } break; @@ -1021,7 +1021,7 @@ void process_commands() } break; case 115: // M115 - SerialprintPGM("FIRMWARE_NAME:Marlin; Sprinter/grbl mashup for gen6 FIRMWARE_URL:http://www.mendel-parts.com PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1\n"); + SerialprintPGM(MSG_M115_REPORT); break; case 117: // M117 display message LCD_MESSAGE(cmdbuffer[bufindr]+5); @@ -1036,7 +1036,7 @@ void process_commands() SERIAL_PROTOCOLPGM("E:"); SERIAL_PROTOCOL(current_position[E_AXIS]); - SERIAL_PROTOCOLPGM(" Count X:"); + SERIAL_PROTOCOLPGM(MSG_COUNT_X); SERIAL_PROTOCOL(float(st_get_position(X_AXIS))/axis_steps_per_unit[X_AXIS]); SERIAL_PROTOCOLPGM("Y:"); SERIAL_PROTOCOL(float(st_get_position(Y_AXIS))/axis_steps_per_unit[Y_AXIS]); @@ -1047,27 +1047,27 @@ void process_commands() break; case 119: // M119 #if (X_MIN_PIN > -1) - SERIAL_PROTOCOLPGM("x_min:"); + SERIAL_PROTOCOLPGM(MSG_X_MIN); SERIAL_PROTOCOL(((READ(X_MIN_PIN)^X_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (X_MAX_PIN > -1) - SERIAL_PROTOCOLPGM("x_max:"); + SERIAL_PROTOCOLPGM(MSG_X_MAX); SERIAL_PROTOCOL(((READ(X_MAX_PIN)^X_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MIN_PIN > -1) - SERIAL_PROTOCOLPGM("y_min:"); + SERIAL_PROTOCOLPGM(MSG_Y_MIN); SERIAL_PROTOCOL(((READ(Y_MIN_PIN)^Y_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Y_MAX_PIN > -1) - SERIAL_PROTOCOLPGM("y_max:"); + SERIAL_PROTOCOLPGM(MSG_Y_MAX); SERIAL_PROTOCOL(((READ(Y_MAX_PIN)^Y_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MIN_PIN > -1) - SERIAL_PROTOCOLPGM("z_min:"); + SERIAL_PROTOCOLPGM(MSG_Z_MIN); SERIAL_PROTOCOL(((READ(Z_MIN_PIN)^Z_ENDSTOPS_INVERTING)?"H ":"L ")); #endif #if (Z_MAX_PIN > -1) - SERIAL_PROTOCOLPGM("z_max:"); + SERIAL_PROTOCOLPGM(MSG_Z_MAX); SERIAL_PROTOCOL(((READ(Z_MAX_PIN)^Z_ENDSTOPS_INVERTING)?"H ":"L ")); #endif SERIAL_PROTOCOLLN(""); @@ -1144,7 +1144,8 @@ void process_commands() if(code_seen('C')) Kc = code_value(); #endif updatePID(); - SERIAL_PROTOCOL("ok p:"); + SERIAL_PROTOCOL(MSG_OK); + SERIAL_PROTOCOL(" p:"); SERIAL_PROTOCOL(Kp); SERIAL_PROTOCOL(" i:"); SERIAL_PROTOCOL(Ki/PID_dT); @@ -1223,12 +1224,12 @@ void process_commands() SERIAL_ECHO_START; SERIAL_ECHO("T"); SERIAL_ECHO(tmp_extruder); - SERIAL_ECHOLN("Invalid extruder"); + SERIAL_ECHOLN(MSG_INVALID_EXTRUDER); } else { active_extruder = tmp_extruder; SERIAL_ECHO_START; - SERIAL_ECHO("Active Extruder: "); + SERIAL_ECHO(MSG_ACTIVE_EXTRUDER); SERIAL_PROTOCOLLN((int)active_extruder); } } @@ -1236,7 +1237,7 @@ void process_commands() else { SERIAL_ECHO_START; - SERIAL_ECHOPGM("Unknown command:\""); + SERIAL_ECHOPGM(MSG_UNKNOWN_COMMAND); SERIAL_ECHO(cmdbuffer[bufindr]); SERIAL_ECHOLNPGM("\""); } @@ -1248,7 +1249,7 @@ void FlushSerialRequestResend() { //char cmdbuffer[bufindr][100]="Resend:"; MYSERIAL.flush(); - SERIAL_PROTOCOLPGM("Resend:"); + SERIAL_PROTOCOLPGM(MSG_RESEND); SERIAL_PROTOCOLLN(gcode_LastN + 1); ClearToSend(); } @@ -1260,7 +1261,7 @@ void ClearToSend() if(fromsd[bufindr]) return; #endif //SDSUPPORT - SERIAL_PROTOCOLLNPGM("ok"); + SERIAL_PROTOCOLLNPGM(MSG_OK); } void get_coordinates() @@ -1370,8 +1371,8 @@ void kill() if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); SERIAL_ERROR_START; - SERIAL_ERRORLNPGM("Printer halted. kill() called !!"); - LCD_MESSAGEPGM("KILLED. "); + SERIAL_ERRORLNPGM(MSG_ERR_KILLED); + LCD_MESSAGEPGM(MSG_KILLED); suicide(); while(1); // Wait for reset } diff --git a/Marlin/Marlin.sdf b/Marlin/Marlin.sdf new file mode 100644 index 0000000000000000000000000000000000000000..206f25a8be8fa205fbc88dfb08d78981729a336c GIT binary patch literal 15749120 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%0D84zOhF|&^z-Oo{6XMOgtlkYp0(V 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

    #T0QkEe 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

    )wn5=h)iAaN&wi~|W^ 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%0A$eINyn5m(A1KU_ZjC2OWzJ&=@Qf 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 z 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 >Pmh5S4_F@Do);HBm#< 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%0D>T-ab+OFmB}UEd^t_GwW1pCR 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

    FOaR!R3RHs{5CpY= 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�YV#4P>#`qKK$dS!hX^Yo2% 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

    3sDWCjgL-IyMreX& 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�Rx#lg5p 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

    )+Ut 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

    om-b&7g?7-D|J@%Ec?vt8Hu7g3z;?X zHTIh9>cr~s>fEa2s@TfF%FJMV&>qaLNUR922uE`R$$`i~etBwnbh)v7d`*SKso_&| zi<65Zi}Q<8i=vB?3-|WL`|Q5_g2+jE)J4c2mpU#zFE=|m+nBk&XK#1t*z7UMqvJ=~ zM@Ek@jtC!?o0jZ~bY(jd9a%eJvlcH{vzMEuyH_7^LlJ(sr>$^$TcayB|CRyK2vc8*SeK*PaZj$xgBH{vzMEuyH_7^LlJ(sr>$^$TcayB|CRyK2vc8*SeK*PaZj$xgBAh*F}A za1*TUCRy7}vbLLKZ8yoM1WvrH_6IwvYKFJH_6Iwl9k;gE4xWnc9V?+E4xWnc9X2^ zCRy1{va*{D5jN3IbP%0H7a;}!gK!ZhQ9_gwWrUkxT{p?PZjyD~Bn42! z>$*wSb(5^?CRx`_vaXwCT{p?PZjyD~Bn2&(O)@x_jI||0TFGcwGK!Xr z1SLaAsX{wOYO<4HNF|N+fQvAR5~7qSBisb5x=B`bljTGO!K!Z3OR%b&WK}nuSpWfo zRox`3x=B`blQjgZx=Ge_ldS0`S<_9jrkiXcSkq0irki9?T>+O|r6^ zWMwzW%5IXC-6Si!Nmh1~4FoH@Nmh1~tn4OP*-f&t+t_rn!kY{cHqlOW5S>I9VeAH6 zgh`YTr9>IwCRpK3vcj8Wg*RD2cnB}S`fif--6ZR~N!E9htnVg+1nav=)_0S&L>b{GSmjMh zf>qumtGr28d6QnkNBD_KB0y9TL11h;tNBh1QA^Yj^+W^FNHh`6L<`YMv=Je~CfbP( zqLb(%jQxO%Fo_bPlqe(IghfcAoTwl?gqQFEW7Fy9JC#I$s3L+yHBm#<5_Lp9(Lgj3 zO++)%LbMWXM2N77cA|smB)W)cgmD0H5hhVWloDlxo3Mbf>6Cn@oTwl?gqQFUexi~H z5LHBws3vNNTB44qCmM)GqKRlGT8LJnjR+Ao(N1&_okSNQDlfoX5H4VBI!(S)LX;9^ zgqyGkNt6>6gop4FKEh8_5&@!$2olvq4N*(f5%oj^(MU8A%|r{)O0*Fn!Y0~*vFYsK zJDo%qVax|ygh`YTr9>IwCM-e{J<&ik5=}%i z(E^N3XDi=nBSM5tv=beK7yt~yMVLehQA(5%Zo(oYQBG749>Pob2tQFt1c)l4w!2?g zb3$aqm=E@vWPb&@)Jra}CD+!0m=BB$Hvinv&Ob;0k3Warvfs*lDn6ykfU(z&*Hf=WP!}-qs{JbCxbQ2vmy<6?Ue3Ri zdMWyn@lyK5*o%P|GcUwnuwTeNpLjm}eD1mAbCKur&!(P@K0ExstO+O{P49~B3hc@} z5`V;gB)c=QGrTkRaPr~E!}*6&4@Dm`9!ftLdob`|<^e{A+4~dshwslNlgUUjzazCH zx?^~Iczf=?Pfej5s4V$vqNGiy(zXSuqpHZvku_!#_-16dCBu4 z=jAt~HbgfV8`9^-&JCQKiN#}fEW19jKD<76PV$_{Ir+0wXGhOA&Q7n3tqZKnoE1OI zJ}Y~sICIY#u`>c^WKNHtZl9iAn^+rOn_H7y6IqjAomw4TZLChOimeK)%AlUSy)rwP z7z_{QRwP$MR^+3pXf!%J5FW@aPcDxv&o4_Yi!L*krI*H*29{=)#FyAhvZp0Z3!j!d zHF;{})coSq;^<;yae7f~QD9N#l=vz3DcOaIh2e#{{$zioKi`+?i}o3P>E2jxpf|H1 zzQA6PjU*!BNN#>|eq?_BXY@6ddB6^ zI-@RK8>o{-2fBTI_ zvQ9}z6v(OLLkW$gBsDJ**kytp#ky!X!jq+T`ssxGh zPaw)af$Zp(No?a@qsbV(NLz9|wsSyZ*`O>W%0DR!S;&$&bm@(yd~^>up4-W5Eaxc; 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�)};I?tv@WFWP|Kxp)b9x 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�W9KRtE2b$a2n^l8p%#Zxn< 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�ulZ^{YTELc5I@ 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

  • 1* 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

  • 1* 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

    V&P3{Q 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%0D#ka>6A3wMfk^bx{mq@2 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 -H>s_;M^esMU0+dXP*-VRakF>_eB2}?V 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