From 1e6dc815abd9ed7dc408a0e92aaabd889be426ad Mon Sep 17 00:00:00 2001 From: Wessel Tip Date: Sun, 26 Nov 2023 22:49:33 +0100 Subject: [PATCH] chore: Add standard repo contents --- .gitattributes | 2 + .github/CODEOWNERS | 1 + .github/CODE_OF_CONDUCT.md | 133 +++++++++++++++ .github/COMMIT_CONVENTION.md | 160 ++++++++++++++++++ .github/CONTRIBUTING.md | 51 ++++++ .github/FUNDING.yml | 2 + .github/ISSUE_TEMPLATE/bug_report.yml | 83 +++++++++ .github/ISSUE_TEMPLATE/config.yml | 7 + .github/ISSUE_TEMPLATE/feature_request.yml | 42 +++++ .github/PULL_REQUEST_TEMPLATE.md | 19 +++ .github/auto_assign.yml | 5 + .github/labels.yml | 62 +++++++ .gitignore | 4 + LICENSE | 22 +++ LICENSES/.gitkeep | 0 README.md | 25 +++ assets/msdac.jpg | Bin 0 -> 106078 bytes .../Build-Samples.cmd | 0 Build.cmd => scripts/Build.cmd | 0 clean.cmd => scripts/clean.cmd | 0 20 files changed, 618 insertions(+) create mode 100644 .gitattributes create mode 100644 .github/CODEOWNERS create mode 100644 .github/CODE_OF_CONDUCT.md create mode 100644 .github/COMMIT_CONVENTION.md create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/FUNDING.yml create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/PULL_REQUEST_TEMPLATE.md create mode 100644 .github/auto_assign.yml create mode 100644 .github/labels.yml create mode 100644 LICENSE create mode 100644 LICENSES/.gitkeep create mode 100644 README.md create mode 100644 assets/msdac.jpg rename Build-Samples.cmd => scripts/Build-Samples.cmd (100%) rename Build.cmd => scripts/Build.cmd (100%) rename clean.cmd => scripts/clean.cmd (100%) diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..dfe0770 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..471b894 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @Wessel diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..45d257b --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,133 @@ + +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or advances of + any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email address, + without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +[INSERT CONTACT METHOD]. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.1, available at +[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder][Mozilla CoC]. + +For answers to common questions about this code of conduct, see the FAQ at +[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at +[https://www.contributor-covenant.org/translations][translations]. + +[homepage]: https://www.contributor-covenant.org +[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html +[Mozilla CoC]: https://github.com/mozilla/diversity +[FAQ]: https://www.contributor-covenant.org/faq +[translations]: https://www.contributor-covenant.org/translations diff --git a/.github/COMMIT_CONVENTION.md b/.github/COMMIT_CONVENTION.md new file mode 100644 index 0000000..68dfb06 --- /dev/null +++ b/.github/COMMIT_CONVENTION.md @@ -0,0 +1,160 @@ +> This is adapted from [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/). + +# Conventional Commits 1.0.0-beta.4 + +#### TL;DR: + +Messages must be matched by the following regex: + +```js +/^(revert: )?(feat|fix|docs|style|refactor|perf|test|workflow|build|ci|chore|types|wip)(\(.+\))?: .{1,72}/; +``` + +## Summary + +The Conventional Commits specification is a lightweight convention on top of commit messages. +It provides an easy set of rules for creating an explicit commit history; +which makes it easier to write automated tools on top of. +This convention dovetails with [SemVer](http://semver.org), +by describing the features, fixes, and breaking changes made in commit messages. + +The commit message should be structured as follows: + +--- + +``` +[optional scope]: + +[optional body] + +[optional footer] +``` +--- + +
+The commit contains the following structural elements, to communicate intent to the +consumers of your library: + +1. **fix:** a commit of the _type_ `fix` patches a bug in your codebase (this correlates with [`PATCH`](http://semver.org/#summary) in semantic versioning). +1. **feat:** a commit of the _type_ `feat` introduces a new feature to the codebase (this correlates with [`MINOR`](http://semver.org/#summary) in semantic versioning). +1. **BREAKING CHANGE:** a commit that has the text `BREAKING CHANGE:` at the beginning of its optional body or footer section introduces a breaking API change (correlating with [`MAJOR`](http://semver.org/#summary) in semantic versioning). +A BREAKING CHANGE can be part of commits of any _type_. +1. Others: commit _types_ other than `fix:` and `feat:` are allowed, for example [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/master/%40commitlint/config-conventional) (based on the [Angular convention](https://github.com/angular/angular/blob/68a6a07/CONTRIBUTING.md#commit)) recommends `chore:`, `docs:`, `style:`, `refactor:`, `perf:`, `test:`, and others. + +We also recommend `improvement` for commits that improve a current implementation without adding a new feature or fixing a bug. +Notice these types are not mandated by the conventional commits specification, and have no implicit effect in semantic versioning (unless they include a BREAKING CHANGE). +
+A scope may be provided to a commit's type, to provide additional contextual information and is contained within parenthesis, e.g., `feat(parser): add ability to parse arrays`. + +## Examples + +### Commit message with description and breaking change in body +``` +feat: allow provided config object to extend other configs + +BREAKING CHANGE: `extends` key in config file is now used for extending other config files +``` + +### Commit message with optional `!` to draw attention to breaking change +``` +chore!: drop Node 6 from testing matrix + +BREAKING CHANGE: dropping Node 6 which hits end of life in April +``` + +### Commit message with no body +``` +docs: correct spelling of CHANGELOG +``` + +### Commit message with scope +``` +feat(lang): add polish language +``` + +### Commit message for a fix using an (optional) issue number. +``` +fix: correct minor typos in code + +see the issue for details on the typos fixed + +closes issue #12 +``` + +## Specification + +The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in [RFC 2119](https://www.ietf.org/rfc/rfc2119.txt). + +1. Commits MUST be prefixed with a type, which consists of a noun, `feat`, `fix`, etc., followed + by an OPTIONAL scope, and a REQUIRED terminal colon and space. +1. The type `feat` MUST be used when a commit adds a new feature to your application or library. +1. The type `fix` MUST be used when a commit represents a bug fix for your application. +1. A scope MAY be provided after a type. A scope MUST consist of a noun describing a + section of the codebase surrounded by parenthesis, e.g., `fix(parser):` +1. A description MUST immediately follow the space after the type/scope prefix. +The description is a short summary of the code changes, e.g., _fix: array parsing issue when multiple spaces were contained in string._ +1. A longer commit body MAY be provided after the short description, providing additional contextual information about the code changes. The body MUST begin one blank line after the description. +1. A footer of one or more lines MAY be provided one blank line after the body. The footer MUST contain meta-information +about the commit, e.g., related pull-requests, reviewers, breaking changes, with one piece of meta-information +per-line. +1. Breaking changes MUST be indicated at the very beginning of the body section, or at the beginning of a line in the footer section. A breaking change MUST consist of the uppercase text BREAKING CHANGE, followed by a colon and a space. +1. A description MUST be provided after the `BREAKING CHANGE: `, describing what has changed about the API, e.g., _BREAKING CHANGE: environment variables now take precedence over config files._ +1. Types other than `feat` and `fix` MAY be used in your commit messages. +1. The units of information that make up conventional commits MUST NOT be treated as case sensitive by implementors, with the exception of BREAKING CHANGE which MUST be uppercase. +1. A `!` MAY be appended prior to the `:` in the type/scope prefix, to further draw attention to breaking changes. `BREAKING CHANGE: description` MUST also be included in the body +or footer, along with the `!` in the prefix. + +## Why Use Conventional Commits + +* Automatically generating CHANGELOGs. +* Automatically determining a semantic version bump (based on the types of commits landed). +* Communicating the nature of changes to teammates, the public, and other stakeholders. +* Triggering build and publish processes. +* Making it easier for people to contribute to your projects, by allowing them to explore + a more structured commit history. + +## FAQ + +### How should I deal with commit messages in the initial development phase? + +We recommend that you proceed as if you've already released the product. Typically *somebody*, even if it's your fellow software developers, is using your software. They'll want to know what's fixed, what breaks etc. + +### Are the types in the commit title uppercase or lowercase? + +Any casing may be used, but it's best to be consistent. + +### What do I do if the commit conforms to more than one of the commit types? + +Go back and make multiple commits whenever possible. Part of the benefit of Conventional Commits is its ability to drive us to make more organized commits and PRs. + +### Doesn’t this discourage rapid development and fast iteration? + +It discourages moving fast in a disorganized way. It helps you be able to move fast long term across multiple projects with varied contributors. + +### Might Conventional Commits lead developers to limit the type of commits they make because they'll be thinking in the types provided? + +Conventional Commits encourages us to make more of certain types of commits such as fixes. Other than that, the flexibility of Conventional Commits allows your team to come up with their own types and change those types over time. + +### How does this relate to SemVer? + +`fix` type commits should be translated to `PATCH` releases. `feat` type commits should be translated to `MINOR` releases. Commits with `BREAKING CHANGE` in the commits, regardless of type, should be translated to `MAJOR` releases. + +### How should I version my extensions to the Conventional Commits Specification, e.g. `@jameswomack/conventional-commit-spec`? + +We recommend using SemVer to release your own extensions to this specification (and +encourage you to make these extensions!) + +### What do I do if I accidentally use the wrong commit type? + +#### When you used a type that's of the spec but not the correct type, e.g. `fix` instead of `feat` + +Prior to merging or releasing the mistake, we recommend using `git rebase -i` to edit the commit history. After release, the cleanup will be different according to what tools and processes you use. + +#### When you used a type *not* of the spec, e.g. `feet` instead of `feat` + +In a worst case scenario, it's not the end of the world if a commit lands that does not meet the conventional commit specification. It simply means that commit will be missed by tools that are based on the spec. + +### Do all my contributors need to use the conventional commit specification? + +No! If you use a squash based workflow on Git lead maintainers can clean up the commit messages as they're merged—adding no workload to casual committers. +A common workflow for this is to have your git system automatically squash commits from a pull request and present a form for the lead maintainer to enter the proper git commit message for the merge. \ No newline at end of file diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..3162d32 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,51 @@ +# Contributing + + + +If you wish to contribute to PICDAC, feel free to fork the repository and submit a pull request. +editorconfig is enforced to correct most typo's you make and keep the code style the same throughout the whole project, +so it would be much appreciated if you installed editorconfig to your editor of choice + + +## Prerequisites +The following prerequisites must be met before installing PICDAC: + - [XC8 v2.45](https://www.microchip.com/en-us/tools-resources/develop/mplab-xc-compilers) + - [MPLAB X IDE/IPE](https://www.microchip.com/en-us/tools-resources/develop/mplab-x-ide) + - [MPLAB PICKit In-Circuit Debugger](https://www.microchip.com/en-us/development-tool/pg164150) + + +## Setup +To get ready to work on the codebase, please do the following: + +1. Fork & clone the repository, and make sure you are on the **master** branch +2. Open the project in MPLAB X +3. Code your ideas and test them using the PICKit +4. [Submit a pull request](https://github.com/wessel/PICDAC/compare) + +## Testing +When creating any new functions, please also create unit tests for them in the `tests` directory. +Use the library associated with the project when creating such tests. + +When modifying existing functions, make sure to test them before making a pull request, this will prevent +anything from breaking on the production environment. \ No newline at end of file diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..a0960cb --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,2 @@ +github: wessel +ko_fi: wessel \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..97f6043 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,83 @@ +# Adapted from https://github.com/discordjs/discord.js/blob/main/.github/ISSUE_TEMPLATE/bug_report.yml +name: Bug report +description: Report incorrect or unexpected behavior of a package +labels: [bug, need repro] +body: + # - type: markdown + # attributes: + # value: | + # Use Discord for questions: https://discord.gg/djs + - type: dropdown + id: package + attributes: + label: Which part is this bug report for? + options: + - Infrared + - SPI + - Rotary + - Potentiometer + - XC8 + - PIC16F887A + validations: + required: true + - type: textarea + id: description + attributes: + label: Issue description + description: | + Describe the issue in as much detail as possible. + + Tip: You can attach images or log files by clicking this area to highlight it and then dragging files into it. + placeholder: | + Steps to reproduce with below code sample. + validations: + required: true + - type: textarea + id: codesample + attributes: + label: Code sample + description: Include a reproducible, minimal code sample. This will be automatically formatted into code, so no need for backticks. + render: XC8 + placeholder: | + Your code sample should be... + ... Minimal - Use as little code as possible that still produces the same problem (and is understandable) + ... Complete - Provide all parts someone else needs to reproduce your problem + ... Reproducible - Test the code you're about to provide to make sure it reproduces the problem + - type: input + id: version + attributes: + label: Version + description: Which version of the package are you using? + validations: + required: true + - type: input + id: lang-version + attributes: + label: 'XC8 version' + description: | + Which version of XC8 are you using? + validations: + required: true + - type: input + id: os + attributes: + label: Operating system + description: Which OS does your application run on? + - type: dropdown + id: priority + attributes: + label: Priority this issue should have + description: Please be realistic. If you need to elaborate on your reasoning, please use the Issue description field above. + options: + - Low (slightly annoying) + - Medium (should be fixed soon) + - High (immediate attention needed) + validations: + required: true + - type: input + id: dev-release + attributes: + label: I have tested this issue on a development release + placeholder: d23280c (commit hash) + description: | + The issue might already be fixed in a development release or main. This is not required, but helps us greatly. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..24e2e66 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,7 @@ +blank_issues_enabled: false +# Example entry: +# name: +# url: +# about: +contact_links: + - contact@wessel.gg \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..2c78a12 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,42 @@ +# Adapted from https://github.com/discordjs/discord.js/blob/main/.github/ISSUE_TEMPLATE/feature_request.yml +name: Feature request +description: Request a new feature +labels: [feature request] +body: + - type: markdown + attributes: + value: | + Please only use this form for submitting new, original ideas. + - type: dropdown + id: package + attributes: + label: Which part is this feature request for? + options: + - {{tree.parts}} + validations: + required: false + - type: textarea + id: description + attributes: + label: Feature + description: A clear and concise description of what the problem is, or what feature you want to be implemented. + placeholder: I'm always frustrated when..., A good addition would be... + validations: + required: true + - type: textarea + id: solution + attributes: + label: Ideal solution or implementation + description: A clear and concise description of what you want to happen. + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Alternative solutions or implementations + description: A clear and concise description of any alternative solutions or features you have considered. + - type: textarea + id: additional-context + attributes: + label: Other context + description: Any other context, screenshots, or file uploads that help us understand your feature request. \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..89f7430 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,19 @@ +--- +name: Pull Request +about: Propose changes to PICDAC +title: "[PR] Your changes" +labels: pullrequest +assignees: Wessel + +--- + +**Please describe the changes this PR makes and why it should be merged:** + + +**Status** +- [ ] Code changes have been tested and there aren't any typos in it + +**Semantic versioning classification:** +- [ ] This PR changes PICDAC core codebase (methods or parameters added) + - [ ] This PR includes breaking changes (methods removed or renamed, parameters moved or removed) +- [ ] This PR **only** includes non-code changes, like changes to documentation, README, etc. diff --git a/.github/auto_assign.yml b/.github/auto_assign.yml new file mode 100644 index 0000000..d05608e --- /dev/null +++ b/.github/auto_assign.yml @@ -0,0 +1,5 @@ +addReviewers: true +reviewers: + - Wessel +numberOfReviewers: 0 +runOnDraft: true \ No newline at end of file diff --git a/.github/labels.yml b/.github/labels.yml new file mode 100644 index 0000000..00be3c8 --- /dev/null +++ b/.github/labels.yml @@ -0,0 +1,62 @@ +- name: bug + color: d73a4a +- name: caching + color: 80c042 +- name: chore + color: ffffff +- name: ci + color: 0075ca +- name: dependencies + color: 276bd1 +- name: documentation + color: 0075ca +- name: duplicate + color: cfd3d7 +- name: error handling + color: 80c042 +- name: feature request + color: fcf95a +- name: good first issue + color: 7057ff +- name: has PR + color: 4b1f8e +- name: help wanted + color: '008672' +- name: in progress + color: ffccd7 +- name: in review + color: aed5fc +- name: interactions + color: 80c042 +- name: invalid + color: e4e669 +- name: need repro + color: c66037 +- name: priority:high + color: fc1423 +- name: question + color: d876e3 +- name: ratelimits + color: 80c042 +- name: refactor + color: 1d637f +- name: regression + color: ea8785 +- name: REST + color: 80c042 +- name: semver:major + color: c10f47 +- name: semver:minor + color: e4f486 +- name: semver:patch + color: e8be8b +- name: tests + color: f06dff +- name: threads + color: 80c042 +- name: typings + color: 80c042 +- name: utility + color: 80c042 +- name: wontfix + color: ffffff \ No newline at end of file diff --git a/.gitignore b/.gitignore index 11600af..a50307f 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,7 @@ output/ build/ dist/ debug/ +tmp/ +src/tmp + +!.gitkeep diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8d48d65 --- /dev/null +++ b/LICENSE @@ -0,0 +1,22 @@ + +The MIT License (MIT) + +Copyright (c) 2023 Wessel T (https://wessel.gg/) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/LICENSES/.gitkeep b/LICENSES/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..01df22c --- /dev/null +++ b/README.md @@ -0,0 +1,25 @@ + + + + +> PICDAC + +[![MIT License](https://img.shields.io/badge/license-MIT-007EC7.svg?style=flat-square)](/LICENSE) [![Language](https://img.shields.io/badge/language-XC8-purple?style=flat-square)] + +PICDAC is an audio amplifier interface built using the PIC16F887A microcontroller. + +

+ + +## Table of contents + + diff --git a/assets/msdac.jpg b/assets/msdac.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7627a93a942adec984c573e28557abfaca3f1244 GIT binary patch literal 106078 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 TD(X8n!UFdvC#DB_V1NJFM