Introdução

Bom hoje eu fui buscar implementar um pouco mais dos registradores, dessa vez estava focado em entender o que exatamente algumas implementações que eu vi queriam com o uso das flags do registrador F, basicamente vi uma implementação que utilizava uma struct para isso o que parece ser promissor mas sei lá, não queria muito fazer dessa forma(ZEBRA - zero evidence but really arrogant - da minha parte) então tentei ver uma implementação que achei bem arrumadinha em C e vi algumas abordagens bem maneiras que decidi dar uma explorada, basicamente ele utilizava:

[Day 7] - 100 days of code em C

``c
// Código de exemplo
``

Implementação

A minha implementação ficou extremamente simples mas já consigo enxergar que eu poderia encapsular melhor minha implementação para tornar mais interessante, depois que eu fizer isso vou refatorar meus testes, porém por hoje meu tempo acabou; bem meu registers.h ficou:

``c
// Código de exemplo
``

Testes

Os meus testes feitos no assert.h ficou:

``c
// Código de exemplo
``

Conclusão

Como eu tinha dito essa forma de fazer testes vai precisar melhorar mas caramba é muito maneiro o quanto me sinto mais confortável depois de poder brincar com os testes.

Referências

  • [ZEBRA - zero evidence but really arrogant](https://github.com/AliM3ski/Gameboy-emulator/tree/main)
  • [EmuDev GB - Cpu Setup](https://aquova.net/emudev/gb/04-cpu-setup.html)
Buscar Code Days Hoje Implementar