{"id":18946705,"url":"https://github.com/circuit-overtime/8bit-computer-programs","last_synced_at":"2026-02-03T12:02:31.536Z","repository":{"id":215907154,"uuid":"736025913","full_name":"Circuit-Overtime/8Bit-Computer-Programs","owner":"Circuit-Overtime","description":"Arduino EEPROM Programmer for 28C64 IC and Arduino control Logic for 8 Bit Computer","archived":false,"fork":false,"pushed_at":"2024-12-31T18:04:21.000Z","size":35,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-05T12:48:06.308Z","etag":null,"topics":["6502-assembly","arduino","breadboard-computer","computer-architecture","cpu-emulator","systemdesign"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Circuit-Overtime.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-12-26T19:12:51.000Z","updated_at":"2025-07-27T08:17:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"bccb2fd3-38ba-46c9-bf48-5caea317b985","html_url":"https://github.com/Circuit-Overtime/8Bit-Computer-Programs","commit_stats":null,"previous_names":["circuit-overtime/8bit-computer-programs"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Circuit-Overtime/8Bit-Computer-Programs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Circuit-Overtime%2F8Bit-Computer-Programs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Circuit-Overtime%2F8Bit-Computer-Programs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Circuit-Overtime%2F8Bit-Computer-Programs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Circuit-Overtime%2F8Bit-Computer-Programs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Circuit-Overtime","download_url":"https://codeload.github.com/Circuit-Overtime/8Bit-Computer-Programs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Circuit-Overtime%2F8Bit-Computer-Programs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29045440,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T10:09:22.136Z","status":"ssl_error","status_checked_at":"2026-02-03T10:09:16.814Z","response_time":96,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["6502-assembly","arduino","breadboard-computer","computer-architecture","cpu-emulator","systemdesign"],"created_at":"2024-11-08T13:07:42.919Z","updated_at":"2026-02-03T12:02:29.269Z","avatar_url":"https://github.com/Circuit-Overtime.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Programmable 8-bit Computer on Breadboards\n\n![Computer](https://firebasestorage.googleapis.com/v0/b/videolize-3563f.appspot.com/o/mySkillsImages%2Fmsg6432412431-145895.jpg?alt=media\u0026token=35921957-3199-47e0-983f-543870513678)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/EASY_EDA-Schematic-blue\" alt=\"shields\"\u003e \u003cimg src=\"https://img.shields.io/badge/openSource%20in%20GitHub-8A2BE2\" alt=\"shields\"\u003e \u003cimg src=\"https://img.shields.io/badge/with-Arduino_Nano-00ff65\" alt=\"shields\"\u003e\n\u003c/p\u003e\n\n\nThis repository contains the code, schematics, and documentation for a programmable 8-bit computer built from scratch using simple logic gates on breadboards. The project is open source and fully scalable, capable of integrating additional functions and ICs.\n\n## Project Overview\n\nThe computer is divided into several parts:\n\n- PWM Clock\n- Address Register\n- RAM\n- Instruction Register\n- Control Logic\n- Program Counter\n- A Register\n- B Register\n- ALU (Arithmetic Logic Unit)\n- Output Display\n- Output Register\n- Control Word\n- Overflow, Underflow, Negative Flag Register\n\n## Credits\n\nThis project is inspired by and credits Ben Eater for the original idea and guidance. While based on his concepts, this implementation includes updates and differences, enhancing functionality and scalability.\n\n## Features\n\n- **Scalability:** Easily expandable with additional functions and integrated circuits.\n- **Custom Updates:** Includes enhancements and modifications beyond the original design.\n- **Open Source:** Available for anyone to study, modify, and contribute to.\n\n## Repository Structure\n\n- `code/`: Contains the code for each component of the computer. [Code](https://github.com/Circuit-Overtime/8Bit-Computer-Programs/blob/1290e9e6d5b0815a8bc3304a0e4bb99490d9940c/8_Bit%20Computer%20Control%20Logic.ino)\n- `eepromFlasher/`: Contains the code to flash OP Code into EEPROM for anyone following Ben Eaters Approach of Creating Control Logic. [eepromFlasher.ino]()\n- `schematics/`: Includes schematics and diagrams detailing the computer's architecture.[Schematics](https://eater.net/8bit/schematics)\n- `docs/`: Documentation, user manual, and design notes at [Dedicated Docs Dropping Soon](https://github.com/Circuit-Overtime/8Bit-Computer-Programs/blob/7d66061673cd8eb7509ea8b8da835e5c4654d911/Docs)\n\n## Getting Started\n\n1. Clone the repository to your local machine.\n2. Refer to the documentation for assembly instructions, usage, and programming the computer.\n3. Explore and contribute to the project as desired.\n\n![Computer](https://firebasestorage.googleapis.com/v0/b/videolize-3563f.appspot.com/o/mySkillsImages%2Fmsg6432412431-145897.jpg?alt=media\u0026token=d36dbc96-da91-45cc-a37d-31657e645f3d)\n\u003cdiv style=\"display: flex; justify-content: space-between; margin-bottom: 20px;\"\u003e\n    \u003cimg src=\"https://firebasestorage.googleapis.com/v0/b/videolize-3563f.appspot.com/o/mySkillsImages%2Fmsg6432412431-145896.jpg?alt=media\u0026token=7bcc363b-dd5d-4477-9c1a-314ed98063f4\" alt=\"Schematic2\" width=\"30%\"\u003e\n    \u003cimg src=\"https://firebasestorage.googleapis.com/v0/b/videolize-3563f.appspot.com/o/mySkillsImages%2Fmsg6432412431-145898.jpg?alt=media\u0026token=96697968-a0e8-4ad4-b03e-d779f98ee663\" alt=\"Schematic3\" width=\"30%\"\u003e\n      \u003cimg src=\"https://firebasestorage.googleapis.com/v0/b/videolize-3563f.appspot.com/o/mySkillsImages%2Fmsg6432412431-145899.jpg?alt=media\u0026token=2c5d123b-e003-47b0-95af-bf26a02d17cf\" alt=\"Schematic1\" width=\"30%\"\u003e\n\u003c/div\u003e\n\n##Changes\n\n- Used Arduino Nano to drive control logic in place of ATC16 EEPROMS  [Code](https://github.com/Circuit-Overtime/8Bit-Computer-Programs/blob/1290e9e6d5b0815a8bc3304a0e4bb99490d9940c/8_Bit%20Computer%20Control%20Logic.ino)\n- Added a negative flag register to the system [Specific Schematic will be Dropping Soon]\n```c++\nIF ALU_MSB == 1 and SUB = 1 THEN NEG_FLAG = 1\n```\n\n- Updated the Code to detect negative number and push a -ve sign at the output display mux ![Specific Code will be Dropping Soon]\n```.c\n#define NFLAG 11;\npinMode(NFLAG, INPUT);\n\nif(NFLAG == 1)\n{\n  negativeFlgFunc();\n}\n\n```\n\n- Updated the B register to be able to output contents to the BUS\n- Updated the step counter to be able to count from (000)~2~ to (110)~2~\n``` Now the Step Counter can Count Upto 7 Steps, the current repo code has only 5 Steps without NOP) ```\n- Smoother Clock Speed with `20ms` delay from Arduino and `333Hz` PWM Clock.\n\n## Contributions\n\nContributions are welcome! If you have ideas, improvements, or bug fixes, feel free to open an issue or submit a pull request.\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcircuit-overtime%2F8bit-computer-programs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcircuit-overtime%2F8bit-computer-programs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcircuit-overtime%2F8bit-computer-programs/lists"}