Skip to content

A simple base project for an async/yield-based clock-accurate emulator

License

Notifications You must be signed in to change notification settings

niwax/async-clock-emu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

async-clock-emu

This project implements a very basic cycle-accurate emulator based on asynchronous generators as inspired by a discussion between Matt Godbolt and Jason Turner.

The basic structure is a number of hardware components implemented as generators that emit cycle-specific side effect using yield. These side effects are gathered and applied in a central loop on a fixed clock cycle.

Note that the C++ implementation depends on certain experimental C++20 features. For MSVC, these have to be activated using the /await option in VS2017 or higher.

About

A simple base project for an async/yield-based clock-accurate emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published