{"id":28144541,"url":"https://github.com/kernelghost/lameboy","last_synced_at":"2025-06-15T02:06:56.651Z","repository":{"id":256696675,"uuid":"856154340","full_name":"KernelGhost/LameBoy","owner":"KernelGhost","description":"A DIY handheld game console that's so bad, it's good.","archived":false,"fork":false,"pushed_at":"2024-09-12T04:56:56.000Z","size":46417,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-12T14:22:09.114Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KernelGhost.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}},"created_at":"2024-09-12T04:52:48.000Z","updated_at":"2024-09-12T04:57:00.000Z","dependencies_parsed_at":"2024-09-12T14:32:17.540Z","dependency_job_id":null,"html_url":"https://github.com/KernelGhost/LameBoy","commit_stats":null,"previous_names":["kernelghost/lameboy"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KernelGhost%2FLameBoy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KernelGhost%2FLameBoy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KernelGhost%2FLameBoy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KernelGhost%2FLameBoy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KernelGhost","download_url":"https://codeload.github.com/KernelGhost/LameBoy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254235711,"owners_count":22036966,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2025-05-14T22:12:45.661Z","updated_at":"2025-06-15T02:06:56.646Z","avatar_url":"https://github.com/KernelGhost.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LameBoy\n\n\u003cimg src=\"./Images/1.png\" alt=\"The LameBoy Game Console\" style=\"display: block; margin-left: auto; margin-right: auto; height: 600px;\"\u003e\n\n\u003ccenter\u003e\u003ci\u003eA DIY handheld game console that's so bad, it's good.\u003c/i\u003e\u003c/center\u003e\n\n## Overview\nThis project aims to create a retro-style handheld game console using an Arduino Mega 2560.\n\nThe console runs a CHIP-8 emulator and comes pre-loaded with 8 games.\n1. Blinky (Pac-Man)\n2. Tetris\n3. Brick\n4. Snake\n5. Space Invaders\n6. Hidden\n7. Pong (Single Player)\n8. Kaleidoscope\n\n## Images\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cimg src=\"./Images/2.png\" width=\"150px\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"./Images/3.png\" width=\"150px\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"./Images/4.png\" width=\"150px\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"./Images/5.png\" width=\"150px\"\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003cimg src=\"./Images/6.png\" width=\"150px\"\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## Hardware Components\n- Arduino Mega 2560\n- LCD Display\n- Buttons (Select, Up, Down, Left \u0026 Right)\n- Buzzer\n- Power Switch\n- Li-ion Battery\n- USB-Powered Li-ion Battery Charger with Variable DC Output PCB\n\n\u003e [!IMPORTANT]\n\u003e To ensure stability as well as prevent overheating, it is recommended to power the Arduino Mega with an input DC voltage between 7-12 volts.\n\n### Getting Started\n1. Clone the repository.\n\n   ```bash\n   git clone https://github.com/KernelGhost/LameBoy\n   ```\n\n2. Upload the code.\n   - Connect your Arduino Mega 2560 to your computer.\n   - Open the Arduino IDE and select the correct board and port.\n   - Upload the `LAMEBOY.ino` file to the Arduino.\n\n3. Connect the Arduino Mega 2560 to the LCD display, buttons, battery, and other components.\n\n## Customisation\n### Game ROMs\nSince the LameBoy runs a CHIP-8 emulator, many existing CHIP-8 programs can be easily ported to the platform. However, due to the limited number of buttons on LameBoy compared to the standard CHIP-8 (16 buttons on CHIP-8 vs. 5 on LameBoy), some ROMs may need to be modified. This often involves editing the ROM file in a hex editor to remap the controls. Examples of how to do this are included in this repository.\n\n### Button Layout\nYou can modify the Arduino code to implement a larger number of buttons. This is simply a matter of declaring additional pins and modifying the button input code to correctly communicate these additional buttons to the emulator.\n\n## Contributing\nContributions are welcome! Feel free to submit pull requests or issues.\n\n## Acknowledgements\nLameBoy [splash](./Screens/Splash/Splash.bmp) and [error](./Screens/Error/Error.bmp) screens designed by [@gawdn](https://github.com/gawdn).\nAll included ROMs are the original work of their respective authors and have been referenced where appropriate. I do not claim ownership of any of these programs. Some ROMs have been modified to enable compatibility with LameBoy.\n\n## License\nThis project is licensed under the [GNU GPLv3](https://www.gnu.org/licenses/gpl-3.0.en.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkernelghost%2Flameboy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkernelghost%2Flameboy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkernelghost%2Flameboy/lists"}