nes/main.cpp

33 lines
830 B
C++

#include "src/Nes.h"
#include "src/Window.h"
#include <functional>
#include <chrono>
#include <thread>
int main() {
using namespace std::placeholders;
nes::Nes device;
nes::SdlWindow window(nes::Ppu::SCREEN_WIDTH, nes::Ppu::SCREEN_HEIGHT);
device.setNewFrameCallback(std::bind(&nes::SdlWindow::drawFrame, &window, _1));
//device.insertCartridge("/home/selim/Downloads/nestest.nes");
device.insertCartridge("/Users/selim/Documents/nestest.nes");
SDL_Event e;
uint64_t cycles = 0;
while (cycles < 1000000000) {
device.tick();
cycles++;
while(SDL_PollEvent(&e));
//int64_t us = static_cast<int64_t>(1000000000.0/(60*nes::Ppu::SCREEN_WIDTH*nes::Ppu::SCREEN_HEIGHT));
//std::this_thread::sleep_for(std::chrono::nanoseconds(1));
}
return 0;
}