An emulator for the Atari 2600.
The 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.
This is still in progress. It can play games, but it's still got problems.
- Docs(this is great)
- 6507 CPU(rip out the interrupts from my 6502)
- Basic memory map(13-bit address bus, RAM, and cartridge ROM)
- SDL integration
- Basic TIA frame timing
- Playfield rendering
- Missle graphics
- Ball graphics
- Player graphics
- Horizontal positioning and HMOVE
- Graphics delay on LRHB
- Vertical delay
- Collision flags
- Fix frame timing
- RIOT chip (MOS 6532) for peripherals
- Fix small horizontal position bugs
- Audio (see this)
- ..
- Adventure time!
$ brew install sdl2
$ cargo build --release
$ target/release/atari2600 roms/Pitfall.a26
| Console Switch | Keyboard Button | 
|---|---|
| Game Select | F1 | 
| Game Reset | F2 | 
| Color Toggle | F3 | 
| Joystick Button | Keyboard Button | 
|---|---|
| Up | W | 
| Left | A | 
| Down | S | 
| Right | D | 
| Fire | N | 
These projects helped me understand a lot when the docs weren't clear enough.