Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ColinEberhardt/atari2600-wasm
An Atari 2600 emulator written in AssemblyScript compiled to WebAssembly
https://github.com/ColinEberhardt/atari2600-wasm
assemblyscript atari2600 webassembly
Last synced: about 1 month ago
JSON representation
An Atari 2600 emulator written in AssemblyScript compiled to WebAssembly
- Host: GitHub
- URL: https://github.com/ColinEberhardt/atari2600-wasm
- Owner: ColinEberhardt
- Created: 2019-12-02T21:43:17.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T02:10:33.000Z (almost 2 years ago)
- Last Synced: 2024-11-11T00:02:16.948Z (about 1 month ago)
- Topics: assemblyscript, atari2600, webassembly
- Language: JavaScript
- Size: 2.2 MB
- Stars: 56
- Watchers: 5
- Forks: 9
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-assemblyscript - ColinEberhardt/atari-2600 - Atari2600 emulator (Projects / Games)
README
# WebAssembly / AssemblyScript Atari 2600 Emulator
I've been fascinated with the 2600 ever since reading [Racing the Beam](https://www.amazon.co.uk/Racing-Beam-Computer-Platform-Studies/dp/026201257X), the idea of a computer that doesn't have enough memory to support video RAM is just nuts! This project is an excuse to have a play with [AssemblyScript](https://docs.assemblyscript.org/), and explore the 2600 further.
I'm implementing the 2600 by implementing features as they appear in the [Atari 2600 Programming for Newbies](https://cdn.hackaday.io/files/1646277043401568/Atari_2600_Programming_for_Newbies_Revised_Edition.pdf) guide.
## Other reference sources
- Addressing modes - https://slark.me/c64-downloads/6502-addressing-modes.pdf
- 6502 reference - http://www.obelisk.me.uk/6502/reference.html
- Another 6502 reference - https://www.masswerk.at/6502/6502_instruction_set.html
- https://en.wikibooks.org/wiki/6502_Assembly## Progress
- [Atari 2600 Programming for Newbies](https://cdn.hackaday.io/files/1646277043401568/Atari_2600_Programming_for_Newbies_Revised_Edition.pdf)
- [x] Session 1: Start Here
- [x] Session 2: Television Display Basics
- [x] Session 3: The TIA and 6502
- [x] Session 4: The TIA
- [x] Session 5: Memory Architecture
- [x] Sessions 6 & 7: The TV and our Kernel
- [x] Session 8: Our First Kernel
- [x] Session 9: 6502 and DASM – Assembling the basics
- [x] Session 10: Orgasm
- [x] Session 11: Colorful colors
- [x] Session 12: Initialization
- [x] Session 13: Playfield Basics
- [x] Session 14: Playfield Weirdness
- [x] Session 15: Playfield Continued
- [ ] Session 16: Letting the Assembler Do the Work