Skip to content
Snippets Groups Projects
README.md 995 B
Newer Older
  • Learn to ignore specific revisions
  • João Magalhães's avatar
    João Magalhães committed
    # Chip Ahoyto 🍪
    
    João Magalhães's avatar
    João Magalhães committed
    
    
    João Magalhães's avatar
    João Magalhães committed
    CHIP-8 emulator written in rust 🦀.
    
    João Magalhães's avatar
    João Magalhães committed
    The goal of this project is purely experimental and a learning tool for rust.
    
    
    João Magalhães's avatar
    João Magalhães committed
    The work of this emulator was inspired/started by [jc-chip8](https://github.com/joao-conde/jc-chip8).
    
    
    ## Goals
    
    * Performance 🏎
    
    João Magalhães's avatar
    João Magalhães committed
    * Separation of concerns 🖖
    
    João Magalhães's avatar
    João Magalhães committed
    * Simplicity 😀
    * Compatibility 🪛
    
    João Magalhães's avatar
    João Magalhães committed
    ## Features
    
    
    João Magalhães's avatar
    João Magalhães committed
    * Drag and drop support for ROMs
    
    João Magalhães's avatar
    João Magalhães committed
    * Pallet switching
    * Visual diagnostics
    * Variable CPU frequency
    * RAM snapshot saving and loading - (TODO)
    
    * Multiple implementations (classic and neo)
    
    ## Reason
    
    
    João Magalhães's avatar
    João Magalhães committed
    And... yes this is the real inspiration behind the emulator's name:
    
    <img src="resources/chips-ahoy.jpeg" alt="Chips Ahoy" width="200" />
    
    ## Inspiration
    
    
    João Magalhães's avatar
    João Magalhães committed
    * [Guide to making a CHIP-8 emulator](https://tobiasvl.github.io/blog/write-a-chip-8-emulator)
    
    * [Writing a CHIP-8 emulator with Rust and WebAssembly](https://blog.scottlogic.com/2017/12/13/chip8-emulator-webassembly-rust.html)
    * [Wikipedia - CHIP-8](https://en.wikipedia.org/wiki/CHIP-8)