6502-kicad-library/README.md
2023-05-20 23:01:33 +01:00

132 lines
8.9 KiB
Markdown

# RetroLib: KiCad Symbol Library for 6502 and related retro microchips
*Version 3.0.0*
![Required KiCad Version](https://img.shields.io/badge/kicad-%3E%3D6.0-critical) ![License](https://img.shields.io/github/license/alarm-siren/6502-kicad-library) ![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/alarm-siren/6502-kicad-library) ![Symbols](https://img.shields.io/badge/symbols-53-informational) ![Downloads](https://img.shields.io/github/downloads/alarm-siren/6502-kicad-library/total)
This is a library of KiCad schematic symbols for a variety of Commodore, MOS Technology and Western Design Center retro microchips, including the eponymous MOS Technologies 6502.
Currently included microchips:
- 6502 8-bit NMOS Microprocessor, 64K, DIP-40
- 6503 8-bit NMOS Microprocessor, 4K, DIP-28
- 6504 8-bit NMOS Microprocessor, 8K, DIP-28
- 6505 8-bit NMOS Microprocessor, 4K, DIP-28
- 6506 8-bit NMOS Microprocessor, 4K, DIP-28
- 6507 8-bit NMOS Microprocessor, 8K, DIP-28
- 6508 8-bit NMOS Microprocessor, 64K, 8-bit I/O Port, 256 Byte RAM, DIP-40
- 6509 8-bit NMOS Microprocessor, 16x64K, DIP-40
- 6510 8-bit NMOS Microprocessor, 64K, 6-bit I/O Port, DIP-40
- 6510-1 8-bit NMOS/HMOS Microprocessor, 64K, 8-bit I/O Port, 2ϕ Clock, DIP-40
- 6510-2 8-bit NMOS/HMOS Microprocessor, 64K, 8-bit I/O Port, DIP-40
- 6510T 8-bit NMOS/HMOS Microprocessor, 64K, 8-bit I/O Port, DIP-40
- 6512 8-bit NMOS Microprocessor, 64K, 2ϕ Clock, DIP-40
- 6513 8-bit NMOS Microprocessor, 4K, 2ϕ Clock, DIP-28
- 6514 8-bit NMOS Microprocessor, 8K, 2ϕ Clock, DIP-28
- 6515 8-bit NMOS Microprocessor, 4K, 2ϕ Clock, DIP-28
- 6520 NMOS Peripheral Interface Adapter (PIA), 20-pin I/O, DIP-40
- 6522 NMOS Versatile Interface Adapter (VIA), 20-pin I/O, 2 Timer/Counters, DIP-40
- 6523 NMOS Tri-Port Interface (TPI), 24-pin I/O, DIP-40
- 6525 NMOS Tri-Port Interface (TPI), 24-pin I/O, DIP-40
- 6526 NMOS Complex Interface Adapter (CIA), 20-pin I/O, 2 Timer/Counters, RTC, DIP-40
- 6529 NMOS Single Port Interface (SPI), 8-pin I/O, DIP-20
- 6532 NMOS Memory, I/O and Timer Array (RIOT), 16-pin I/O, 1 Timer/Counter, 128-byte SRAM, DIP-40
- 6545 NMOS CRT Controller (CRTC), DIP-40
- 6551 NMOS Asynchronous Communication Interface Adapter (ACIA), Serial UART, DIP-28
- 6581 NMOS Sound Interface Device (SID), 3-Voice Sound Synthesizer, DIP-28
- 6582 NMOS Sound Interface Device (SID), 3-Voice Sound Synthesizer, DIP-28
- 65CE02 8-bit CMOS Microprocessor, 64K, DIP-40
- 8500 8-bit HMOS Microprocessor, 64K, 6-bit I/O Port, DIP-40
- 8502 8-bit HMOS Microprocessor, 64K, 7-bit I/O Port, DIP-40
- 8580 HMOS Sound Interface Device (SID), 3-Voice Sound Synthesizer, DIP-28
- W65C02S_P 8-bit CMOS General Purpose Microprocessor, DIP-40
- W65C02S_PL 8-bit CMOS General Purpose Microprocessor, PLCC-44
- W65C02S_Q 8-bit CMOS General Purpose Microprocessor, LQFP-44
- W65C21N_P CMOS Peripheral Interface Adapter (PIA), 20-pin I/O, NMOS-Compatible, DIP-40
- W65C21N_PL CMOS Peripheral Interface Adapter (PIA), 20-pin I/O, NMOS-Compatible, PLCC-44
- W65C21S_P CMOS Peripheral Interface Adapter (PIA), 20-pin I/O, DIP-40
- W65C21S_PL CMOS Peripheral Interface Adapter (PIA), 20-pin I/O, PLCC-44
- W65C22N_P CMOS Versatile Interface Adapter (VIA), 20-pin I/O, 2 Timer/Counters, NMOS-Compatible, DIP-40
- W65C22N_PL CMOS Versatile Interface Adapter (VIA), 20-pin I/O, 2 Timer/Counters, NMOS-Compatible, PLCC-44
- W65C22S_P CMOS Versatile Interface Adapter (VIA), 20-pin I/O, 2 Timer/Counters, DIP-40
- W65C22S_PL CMOS Versatile Interface Adapter (VIA), 20-pin I/O, 2 Timer/Counters, PLCC-44
- W65C22S_Q CMOS Versatile Interface Adapter (VIA), 20-pin I/O, 2 Timer/Counters, LQFP-44
- W65C51N_P CMOS Asynchronous Communication Interface Adapter (ACIA), Serial UART, DIP-28
- W65C51N_PL CMOS Asynchronous Communication Interface Adapter (ACIA), Serial UART, PLCC-28
- W65C51N_Q CMOS Asynchronous Communication Interface Adapter (ACIA), Serial UART, LQFP-32
- W65C134S_PL 8-bit CMOS Microcontroller, PLCC-68
- W65C134S_Q 8-bit CMOS Microcontroller, LQFP-80
- W65C265S_PL 8/16-bit CMOS Microcontroller, PLCC-84
- W65C265S_Q 8/16-bit CMOS Microcontroller, QFP-100
- W65C816S_P 8/16-bit CMOS General Purpose Microprocessor, DIP-40
- W65C816S_PL 8/16-bit CMOS General Purpose Microprocessor, PLCC-44
- W65C816S_Q 8/16-bit CMOS General Purpose Microprocessor, LQFP-44
Planned for future inclusion:
- The VIC, VIC-II and VIC-IIe
- The TED
## KiCad Version Compatibility
This library requires at least KiCad 6 to function, and is tested on KiCad versions 6.0.8 and 7.0.2. Note that the installation procedure is different for KiCad 6 and 7; please see the [Library Installation](#library-installation) section below.
## Comments, Requests, Bugs & Contributions
All are welcome!
Please open an [Issue](https://github.com/Alarm-Siren/6502-Kicad-library/issues) or [Pull Request](https://github.com/Alarm-Siren/6502-Kicad-library/pulls), as appropriate.
## Library Installation
To install this library in your copy of KiCad, choose the correct section for your version of KiCad and follow the steps given. These instructions only cover automated installation using KiCad's built-in Package and Content Manager (PCM); manual installation is possible but not supported.
### KiCad 7
1. Download the `6502-kicad-library-3.0.0-pcm.zip` library file from the [Releases page](https://github.com/Alarm-Siren/6502-kicad-library/releases), and save it somewhere you'll be able to find it easily.
2. Open KiCad and open the Preferences window at "Preferences" -> "Preferences..."
3. Select the "Plugin and Content Manager" section in the left-hand pane.
4. Ensure that the "Automatically add installed libraries to the global lib table" option is ticked.
5. Ensuring that the "Library nickname prefix" is set to "PCM_" is recommended. **(Optional)**
6. Ensuring that the "Check for package updates on startup" option is ticked is recommended. **(Optional)**
7. Click "OK" to close the Preferences window.
8. Click the "Plugin and Content Manager" button.
9. Select the "KiCad official repository" from the top drop-down box (if not already selected).
9. Go the Libraries tab and locate the "KiCad Library for Arduino Modules" in the list.
10. Click the "Install" button for that entry in the list.
11. Click "Apply Pending Changes".
12. Close the "Applying Package Changes" window once it has finished.
13. You should now find that this library is listed in the "Installed" tab.
14. Close the Plugin and Content Manager.
15. You may need to restart KiCad for the library installation to fully take effect. **(Optional)**
16. All done: you are now ready to use these schematic components and footprints in your projects!
### KiCad 6
**Recommendation:** If you can, you should upgrade to KiCad 7.
1. Open KiCad and click the "Plugin and Content Manager" button.
2. Select the "KiCad official repository" from the top drop-down box (if not already selected).
3. Go the Libraries tab and locate the "KiCad Library for Arduino Modules" in the list.
4. Click the "Install" button for that entry in the list.
5. Click "Apply Changes".
6. Close the "Applying Package Changes" window once it has finished.
7. You should now find that this library is listed in the "Installed" tab.
8. Close the Plugin and Content Manager.
9. Go to the "Preferences" -> "Manage Symbol Libraries..." menu option.
10. In the Symbol Libraries dialogue that appears, switch to the "Global Libraries" tab (if not already selected).
11. Click "Add empty row to table" button (the button with a big cross in it, beneath the table).
12. In the new line of the table, set the Nickname to "PCM_arduino-library", and ensure the Library Format is set to "KiCad".
13. In the same line of the table, set Library Path to "${KICAD6_3RD_PARTY}/symbols/com_github_alarm-siren_arduino-kicad-library/arduino-library.kicad_sym".
14. Click "OK" to close the Symbol Libraries dialogue.
15. Go to "Preferences" -> "Manage Footprint Libraries..." menu option.
16. In the Footprint Libraries dialogue that appears, switch to the "Global Libraries" tab (if not already selected).
17. Click "Add empty row to table" button (the button with a big cross in it, beneath the table).
18. In the new line of the table, set the Nickname to "PCM_arduino-library", and ensure the Library Format is set to "KiCad".
19. In the same line of the table, set Library Path to "${KICAD6_3RD_PARTY}/footprints/com_github_alarm-siren_arduino-kicad-library/arduino-library.pretty".
20. Click "OK" to close the Footprint Libraries dialogue.
21. All done: you are now ready to use these schematic components and footprints in your projects!
## Donations
I really hope you've found this library useful. If you'd like to buy me a beer in thanks for the work I put into it, you can make a donation using the button below:
[![paypal](https://www.paypalobjects.com/en_GB/i/btn/btn_donate_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=UX25HM4CZFFWW)
## FAQ Placeholder
No-one has asked any questions about this library yet. If they do so, this section will be updated.