Fix parallel-rdp integration and reset whole state upon loading rom

This commit is contained in:
CocoSimone
2022-08-13 11:44:35 +02:00
parent ed34d9c9ba
commit e2313c212c
41 changed files with 250 additions and 92 deletions

View File

@@ -9,35 +9,35 @@ void App::Run() {
SDL_Event event;
while (SDL_PollEvent(&event)) {
//ImGui_ImplSDL2_ProcessEvent(&event);
if (event.type == SDL_QUIT)
done = true;
if (window.gotClosed(event))
done = true;
if(event.type == SDL_KEYDOWN) {
switch(event.key.keysym.sym) {
case SDLK_o: {
nfdchar_t* outpath;
const nfdu8filteritem_t filter {"Nintendo 64 roms", "n64,z64,v64,N64,Z64,V64"};
nfdresult_t result = NFD_OpenDialog(&outpath, &filter, 1, nullptr);
if(result == NFD_OKAY) {
core.LoadROM(outpath);
NFD_FreePath(outpath);
}
switch(event.type) {
case SDL_QUIT: done = true; break;
case SDL_WINDOWEVENT:
done = window.gotClosed(event);
break;
case SDL_KEYDOWN:
switch(event.key.keysym.sym) {
case SDLK_o: {
nfdchar_t* outpath;
const nfdu8filteritem_t filter {"Nintendo 64 roms", "n64,z64,v64,N64,Z64,V64"};
nfdresult_t result = NFD_OpenDialog(&outpath, &filter, 1, nullptr);
if(result == NFD_OKAY) {
core.LoadROM(outpath);
NFD_FreePath(outpath);
}
} break;
} break;
}
}
core.PollInputs(event);
}
if(core.romLoaded)
core.Run();
if(core.romLoaded)
if(core.romLoaded) {
core.Run(window);
UpdateScreenParallelRdp(window, core.GetVI());
else
} else {
UpdateScreenParallelRdpNoGame(window);
}
SDL_Delay(16);
SDL_Delay(1);
}
}