Remove DVDInterface::Reset

It only resets the registers, which isn't something that needs to be done except for in DVDInterface::Init
This commit is contained in:
Pokechu22 2020-04-13 15:41:54 -07:00
parent 0fa96df818
commit 4415df463f
2 changed files with 12 additions and 21 deletions

View File

@ -345,26 +345,8 @@ void Init()
DVDThread::Start(); DVDThread::Start();
Reset();
s_DICVR.Hex = 1; // Disc Channel relies on cover being open when no disc is inserted
s_auto_change_disc = CoreTiming::RegisterEvent("AutoChangeDisc", AutoChangeDiscCallback);
s_eject_disc = CoreTiming::RegisterEvent("EjectDisc", EjectDiscCallback);
s_insert_disc = CoreTiming::RegisterEvent("InsertDisc", InsertDiscCallback);
s_finish_executing_command =
CoreTiming::RegisterEvent("FinishExecutingCommand", FinishExecutingCommandCallback);
u64 userdata = PackFinishExecutingCommandUserdata(ReplyType::DTK, DIInterruptType::TCINT);
CoreTiming::ScheduleEvent(0, s_finish_executing_command, userdata);
}
// This doesn't reset any inserted disc or the cover state.
void Reset(bool spinup)
{
INFO_LOG(DVDINTERFACE, "Reset %s spinup", spinup ? "with" : "without");
s_DISR.Hex = 0; s_DISR.Hex = 0;
s_DICVR.Hex = 1; // Disc Channel relies on cover being open when no disc is inserted
s_DICMDBUF[0] = 0; s_DICMDBUF[0] = 0;
s_DICMDBUF[1] = 0; s_DICMDBUF[1] = 0;
s_DICMDBUF[2] = 0; s_DICMDBUF[2] = 0;
@ -375,7 +357,17 @@ void Reset(bool spinup)
s_DICFG.Hex = 0; s_DICFG.Hex = 0;
s_DICFG.CONFIG = 1; // Disable bootrom descrambler s_DICFG.CONFIG = 1; // Disable bootrom descrambler
ResetDrive(spinup); ResetDrive(false);
s_auto_change_disc = CoreTiming::RegisterEvent("AutoChangeDisc", AutoChangeDiscCallback);
s_eject_disc = CoreTiming::RegisterEvent("EjectDisc", EjectDiscCallback);
s_insert_disc = CoreTiming::RegisterEvent("InsertDisc", InsertDiscCallback);
s_finish_executing_command =
CoreTiming::RegisterEvent("FinishExecutingCommand", FinishExecutingCommandCallback);
u64 userdata = PackFinishExecutingCommandUserdata(ReplyType::DTK, DIInterruptType::TCINT);
CoreTiming::ScheduleEvent(0, s_finish_executing_command, userdata);
} }
// Resets state on the MN102 chip in the drive itself, but not the DI registers exposed on the // Resets state on the MN102 chip in the drive itself, but not the DI registers exposed on the

View File

@ -110,7 +110,6 @@ enum class EjectCause
}; };
void Init(); void Init();
void Reset(bool spinup = true);
void ResetDrive(bool spinup); void ResetDrive(bool spinup);
void Shutdown(); void Shutdown();
void DoState(PointerWrap& p); void DoState(PointerWrap& p);