Skip to content

About

Desenvolvi um emulador chip8 utilizando a linguagem C, com o objetivo de aprender como emular hardware através da programação. Implementando funcionalidades do processador e utilizando a API SDL para abrir uma janela de desenhar os gráficos nela.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chip8-Emulator_C - Um emulador de CHIP-8 desenvolvido em C com renderização via SDL2.

Descrição:

Este projeto consiste na criação de um emulador da arquitetura interpretada CHIP-8, desenvolvido com o objetivo de compreender a emulação de hardware em baixo nível através de programação. O projeto simula o ciclo de instrução de um processador (fetch, decode, execute), o gerenciamento da memória de 4KB, registradores, timers de som e atraso e a interpretação de opcodes. A biblioteca gráfica SDL2 foi integrada para gerenciar o framebuffer, realizar a renderização da matriz de pixels em uma janela e capturar as entradas do teclado.

Pré-requisitos:

Compilador C: GCC, Clang ou MSVC (compatível com C99 ou superior).

Biblioteca Gráfica: SDL2 (Simple DirectMedia Layer) devidamente instalada e vinculada ao ambiente.

Ferramenta de Build: Make ou CMake (opcional, dependendo do fluxo de compilação).

Instalação/Uso:

Clone este repositório em sua máquina local:
Bash

git clone https://github.com/seu-usuario/Chip8-Emulator_C.git

Compile o projeto através do terminal:

gcc main.c chip8.c -o chip8 `sdl2-config --cflags --libs`

Execute o emulador passando o caminho de uma ROM .ch8:

Linux / macOS:

    ./chip8 caminho/para/sua_rom.ch8

Windows:

    .\chip8.exe caminho\para\sua_rom.ch8

Tecnologias:

Linguagem C (Lógica do processador, manipulação de bits e gerenciamento de memória)

SDL2 (Renderização gráfica e captura de eventos/teclado)

GCC (Compilador)

Referências e Fontes de Pesquisa:

Documentação Técnica CHIP-8: Cowgod's CHIP-8 Technical Reference v1.0 (Thomas P. Greene)

Guia de Implementação: Building a CHIP-8 Emulator in C++ (Austin Morlan)

Vídeo Explicativo e Conceitos de Emulação: Learn Emulation with CHIP-8! (Canal hexdump)

Licença:

MIT License

About

Desenvolvi um emulador chip8 utilizando a linguagem C, com o objetivo de aprender como emular hardware através da programação. Implementando funcionalidades do processador e utilizando a API SDL para abrir uma janela de desenhar os gráficos nela.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages