{"id":21235726,"url":"https://github.com/comba92/chip8-emu","last_synced_at":"2025-06-28T12:33:39.569Z","repository":{"id":204129043,"uuid":"711116536","full_name":"Comba92/chip8-emu","owner":"Comba92","description":"👾 Chip8 basic Emulator in Typescript.","archived":false,"fork":false,"pushed_at":"2023-11-22T21:07:36.000Z","size":43,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-15T02:44:42.008Z","etag":null,"topics":["chip-8","emulator","frontend","html5-canvas","web","webdev"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Comba92.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-10-28T09:07:54.000Z","updated_at":"2025-02-06T04:37:41.000Z","dependencies_parsed_at":"2023-11-22T22:34:24.619Z","dependency_job_id":null,"html_url":"https://github.com/Comba92/chip8-emu","commit_stats":null,"previous_names":["comba92/chip8-emu"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Comba92/chip8-emu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Comba92%2Fchip8-emu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Comba92%2Fchip8-emu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Comba92%2Fchip8-emu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Comba92%2Fchip8-emu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Comba92","download_url":"https://codeload.github.com/Comba92/chip8-emu/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Comba92%2Fchip8-emu/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262431814,"owners_count":23310116,"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","emulator","frontend","html5-canvas","web","webdev"],"created_at":"2024-11-21T00:02:39.507Z","updated_at":"2025-06-28T12:33:39.551Z","avatar_url":"https://github.com/Comba92.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 👾 Chip8 Emulator in Typescript\nThis is a simple and rudimentary web based Chip8 emulator written in Typescript, for educational porpuoses.\n\nRoms can be loaded or dragged on the web page.\nKeys mapping is shown on the web page.\n\nThe emulator runs on average at 60fps (so 60 Hz) and executes 5 instructions per frame. Getting Chip8 CPU right clock is tricky, as there is no specification on a precise value, and different games will run better at different clock speeds.\nAll the tests from [Timendus test suite](https://github.com/Timendus/chip8-test-suite) are ok.\n\n\n## Building\nInstall dependencies:\n```bash\ngit clone https://github.com/Comba92/chip8-emu.git\nnpm i\n```\n\nBuild and run:\n```bash\nnpm run build\nnpm run preview\n```\n\n## Resources\nVarious resources I used.\n- [awesome-chip-8: collection of resources](https://github.com/tobiasvl/awesome-chip-8)\n- [Guide to making a Chip8 emulator](https://tobiasvl.github.io/blog/write-a-chip-8-emulator/)\n- [Chip8 emulator in Rust](https://github.com/aquova/chip8-book)\n- [Chip8 emulator in Javascript](https://www.taniarascia.com/writing-an-emulator-in-javascript-chip8/)\n- [wasm-rust-chip8](https://github.com/ColinEberhardt/wasm-rust-chip8)\n\n- [Chip8 instruction set reference](http://devernay.free.fr/hacks/chip8/C8TECH10.HTM)\n- [Chip8 timers clock](https://www.reddit.com/r/EmuDev/comments/7v7flo/duncetier_chip8_question_how_do_i_set_the_timers/)\n\n## Possible Updates\n- Memory and Registers real-time dump\n- Roms list picker\n- Dynamically change CPU clock\n- Settable keys\n- Better page visuals\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomba92%2Fchip8-emu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcomba92%2Fchip8-emu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomba92%2Fchip8-emu/lists"}