{"id":16031850,"url":"https://github.com/mario-deluna/php-chip8","last_synced_at":"2025-10-18T01:42:12.800Z","repository":{"id":221056044,"uuid":"753331416","full_name":"mario-deluna/php-chip8","owner":"mario-deluna","description":"Yet another CHIP-8 emulator, but in PHP!","archived":false,"fork":false,"pushed_at":"2024-03-13T21:03:52.000Z","size":175,"stargazers_count":52,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-10T14:57:37.536Z","etag":null,"topics":["chip-8","chip8","emulator","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mario-deluna.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-02-05T22:51:38.000Z","updated_at":"2025-02-10T04:16:10.000Z","dependencies_parsed_at":"2024-02-05T23:49:31.191Z","dependency_job_id":"34ff6a7c-3f13-4f1c-8b26-11d7248195be","html_url":"https://github.com/mario-deluna/php-chip8","commit_stats":{"total_commits":18,"total_committers":1,"mean_commits":18.0,"dds":0.0,"last_synced_commit":"339aadc68dc4be8afddc297bc110583332bf2e0a"},"previous_names":["mario-deluna/php-chip8"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mario-deluna%2Fphp-chip8","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mario-deluna%2Fphp-chip8/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mario-deluna%2Fphp-chip8/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mario-deluna%2Fphp-chip8/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mario-deluna","download_url":"https://codeload.github.com/mario-deluna/php-chip8/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243871510,"owners_count":20361368,"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":["chip-8","chip8","emulator","php"],"created_at":"2024-10-08T21:06:20.790Z","updated_at":"2025-10-18T01:42:07.745Z","avatar_url":"https://github.com/mario-deluna.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# PHP Chip-8 Emulator\n\nI don't know how many turing mashines deep this is but here is a Chip8 Emulator written in PHP. \n\nBuilt on [PHP-GLFW](http://github.com/mario-deluna/php-glfw) and the [VISU](https://github.com/phpgl/visu) framework.\n\n![demo](https://github.com/mario-deluna/php-chip8/assets/956212/ae03baa0-8a00-4872-8131-39ca420a6310)\n\n* [Features](#features)\n* [FAQ](#faq)\n* [How To use it ](#how-to-use-it)\n* [Credits](#credits)\n* [License](#license)\n\n## Features\n\n* **It runs Chip8 ROMs!**  \n  This is obvious, but the moment it started working was magical to me, so I'm putting it here.\n* **Debugger**  \n  You can step through the code and see the state of the registers and memory.  \n  Press `space` to pause or hit the _Pause button_.\n  ![stepper](https://github.com/mario-deluna/php-chip8/assets/956212/dbcf3e7c-4652-4f5e-a05e-21e96745d978)\n* **Drag and Drop**\u003cbr\u003eAs seen in the demo, you can simply drag and drop your ROMs onto the emulator.\n* **Fullscreen mode**\u003cbr\u003e\n  If you don't care for all the debugging stuff, you can simply go fullscreen and enjoy the game.\n* **Virtual Keyboard**  \n  You can use the keyboard in the GUI or use the keybindings:\n\n  \u003cimg width=\"275\" alt=\"keyboard\" src=\"https://github.com/mario-deluna/php-chip8/assets/956212/8dd18c0c-3c2b-4ba4-a21a-5da98386a54d\"\u003e\n\n  |   |   |   |   |    |   |   |   |   |\n  |---|---|---|---|----|---|---|---|---|\n  | 1 | 2 | 3 | C | `-\u003e` | 1 | 2 | 3 | 4 |\n  | 4 | 5 | 6 | D | `-\u003e` | q | w | e | r |\n  | 7 | 8 | 9 | E | `-\u003e` | a | s | d | f |\n  | A | 0 | B | F | `-\u003e` | y | x | c | v |\n* **Ghosting Effect**  \n  I'm honestly not very knowledgeable about old hardware, but I'm assuming that the old CRTs would take some time for the phosphor to fade out. I tried to emulate this effect by adding a ghosting effect to the display, as the flickering otherwise is quite unpleasant.  \n  You can change the strength of the effect.\n  ![ghosting](https://github.com/mario-deluna/php-chip8/assets/956212/b0014e39-ed44-4bde-a6a1-2f314502a21c)\n\n* **CRT Effect**  \n  Some might hate this effect; I like it, but of course, you can turn it off.\n  ![crt](https://github.com/mario-deluna/php-chip8/assets/956212/5d2c269c-55fd-481a-8699-0695c258b978)\n\n* **GUI!**\n  The GUI is created using an immediate mode style of drawing. You get results really quickly, the code is really ugly and performance is really not great. \n\n## FAQ\n \n * **What is this?**\u003cbr\u003e\n   It is a Chip8 Emulator written in PHP.\n * **Can I use it in Production?**\u003cbr\u003e\n   Of course! Its beyond my understanding why you would want to do that, but sure go for it!\n * **Why did you make this?**\u003cbr\u003e\n   Yes! \n * **Thats not a real answer**\u003cbr\u003e\n   Yes! \n * **Is this a real FAQ?**\u003cbr\u003e\n   Yes!\n * **Yes!**\u003cbr\u003e\n   No!\n\n## How To use it \n\n1. Clone the repository\u003cbr\u003e\n   ```\n   $ git clone git@github.com:mario-deluna/php-chip8.git\n   ```\n2. Install the dependencies\u003cbr\u003e\n   ```\n   $ cd php-chip8\n   $ composer install\n   ```\n3. Double check [PHP-GLFW](http://github.com/mario-deluna/php-glfw) is properly installed.\n4. Run the emulator\u003cbr\u003e\n   ```\n   $ php bin/start.php\n   ```\n\n## Credits\n\n- [Mario Döring](https://github.com/mario-deluna)\n- [All Contributors](https://github.com/mario-deluna/php-chip8/contributors)\n\n## License\n\nPlease see [License File](https://github.com/mario-deluna/php-chip8/blob/master/LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmario-deluna%2Fphp-chip8","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmario-deluna%2Fphp-chip8","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmario-deluna%2Fphp-chip8/lists"}