finish api setup, ready to connect

This commit is contained in:
2024-07-30 03:04:30 +00:00
parent f8b4896b7c
commit 33e2120130
10 changed files with 604 additions and 18 deletions

View File

@ -6,6 +6,10 @@
#include "registerfile.h"
#include "reservestation.h"
#include "tools.h"
template <int N>
inline static void DirectWireConnect(dark::Register<N> &src, dark::Wire<N> &dest) {
dest.assign([&]() -> auto & { return src; });
}
int main(int argc, char **argv) {
dark::CPU cpu;
ZYM::CentralScheduleUnit csu;
@ -15,6 +19,7 @@ int main(int argc, char **argv) {
cpu.halt_signal.assign([&]() -> auto & { return csu.halt_signal; });
memory.reset = [&]() { return cpu.GetResetSignal(); };
memory.LoadProgram(std::cin);
csu.SetInstructionFetcher([&](auto addr) { return memory.FetchInstruction(addr); });
std::cout << cpu.run(0, true) << std::endl;
return 0;
}