<commit_before>
PIC24 Bootloader
=================

This is the PIC24 USB bootloader. It contains firmware and software to
implement a USB bootloader using M-Stack.  It differs from the Microchip
bootloaders in several key ways in both licensing and implementation.

License
--------
This bootloader is free software, and its firmware and software are usable
under the terms of the Simplified BSD License, the text of which is located
in LICENSE-bsd.txt in this directory.  Note that this license covers the
bootloader firmware and software only (ie: everything under this directory),
and not the USB stack itself.  Information about the USB stack and its
license is in the top-level README for this project.

Firmware Implementation
------------------------
This bootloader's implementation does not use HID, as the Microchip
bootloader does, and instead uses custom-class control transfers.  This
difference makes this bootloader faster, and gives it a more robust
interface, since control transfers can be rejected by the firmware if they
are not correct.

Another difference from the Microchip bootloader is that it uses linker
scripts from the Signal 11 PIC Linker Script Generator at
https://github.com/signal11/pic_linker_script .  The generated scripts make<commit_msg>bootloader: Fix license information in bootloader/README.txt<commit_after>
PIC24 Bootloader
=================

This is the PIC24 USB bootloader. It contains firmware and software to
implement a USB bootloader using M-Stack.  It differs from the Microchip
bootloaders in several key ways in both licensing and implementation.

License
--------
Like the rest of M-Stack, this bootloader is free software, and its firmware
and software are usable under the terms of either the LGPL version 3, or the
Apache License, version 2.0.

Firmware Implementation
------------------------
This bootloader's implementation does not use HID, as the Microchip
bootloader does, and instead uses custom-class control transfers.  This
difference makes this bootloader faster, and gives it a more robust
interface, since control transfers can be rejected by the firmware if they
are not correct.

Another difference from the Microchip bootloader is that it uses linker
scripts from the Signal 11 PIC Linker Script Generator at
https://github.com/signal11/pic_linker_script .  The generated scripts make
{'fraction_non_alphanumeric': 0.069520983467571, 'fraction_numerical': 0.008054260279779568, 'mean_word_length': 4.2444444444444445, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4480839', 'n_tokens_mistral': 591, 'n_tokens_neox': 548, 'n_words': 325}