{"id":26857136,"url":"https://github.com/ltriant/atari2600","last_synced_at":"2025-09-06T02:43:34.291Z","repository":{"id":73975673,"uuid":"260077623","full_name":"ltriant/atari2600","owner":"ltriant","description":"Atari 2600 Emulator","archived":false,"fork":false,"pushed_at":"2023-11-28T09:49:18.000Z","size":246,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T00:31:55.039Z","etag":null,"topics":["atari-2600","atari2600","emudev","emulator","emulator-programming","emulators","gamedev","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/ltriant.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2020-04-30T00:36:27.000Z","updated_at":"2023-11-21T00:19:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"6dd3e10e-fbc7-494f-9478-41ef39ffbe63","html_url":"https://github.com/ltriant/atari2600","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ltriant/atari2600","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ltriant%2Fatari2600","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ltriant%2Fatari2600/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ltriant%2Fatari2600/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ltriant%2Fatari2600/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ltriant","download_url":"https://codeload.github.com/ltriant/atari2600/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ltriant%2Fatari2600/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273850547,"owners_count":25179354,"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","status":"online","status_checked_at":"2025-09-06T02:00:13.247Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["atari-2600","atari2600","emudev","emulator","emulator-programming","emulators","gamedev","rust"],"created_at":"2025-03-31T00:31:24.743Z","updated_at":"2025-09-06T02:43:34.282Z","avatar_url":"https://github.com/ltriant.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# atari2600\n\nAn emulator for the Atari 2600.\n\nThe goal of this is to be able to play a couple of key games that have sentimental value to me, rather than attempting to be a highly accurate emulator that can play the vast library of games available. For that, there's [Stella](https://github.com/stella-emu/stella).\n\n# TODO\n\nThis is still in progress. It can play games, but it's still got problems.\n\n1. ~~Docs~~ ([this](https://problemkaputt.de/2k6specs.htm) is great)\n2. ~~6507 CPU~~ (rip out the interrupts from my 6502)\n3. ~~Basic memory map~~ (13-bit address bus, RAM, and cartridge ROM)\n4. ~~SDL integration~~\n5. ~~Basic TIA frame timing~~\n6. ~~Playfield rendering~~\n7. ~~Missle graphics~~\n8. ~~Ball graphics~~\n9. ~~Player graphics~~\n10. ~~Horizontal positioning and HMOVE~~\n11. ~~Graphics delay on LRHB~~\n12. ~~Vertical delay~~\n13. ~~Collision flags~~\n14. Fix frame timing\n15. ~~RIOT chip (MOS 6532) for peripherals~~\n16. Fix small horizontal position bugs\n17. Audio (see [this](https://www.biglist.com/lists/stella/archives/200311/msg00156.html))\n18. ..\n19. Adventure time!\n\n# Building and Runnning\n\n```\n$ brew install sdl2\n$ cargo build --release\n$ target/release/atari2600 roms/Pitfall.a26\n```\n\n# Console Buttons\n\n| Console Switch | Keyboard Button |\n| -------------- | --------------- |\n| Game Select | F1 |\n| Game Reset | F2 |\n| Color Toggle | F3 |\n\n# Joystick 0 Keys\n\n| Joystick Button | Keyboard Button |\n| --------------- | --------------- |\n| Up | W |\n| Left | A |\n| Down | S |\n| Right | D |\n| Fire | N |\n\n# References\n\nThese projects helped me understand a lot when the docs weren't clear enough.\n\n* [ruby2600](https://github.com/chesterbr/ruby2600)\n* [Gopher2600](https://github.com/JetSetIlly/Gopher2600)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fltriant%2Fatari2600","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fltriant%2Fatari2600","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fltriant%2Fatari2600/lists"}