diff --git a/src/Library/internal-include/CD/cd_internal.hpp b/src/Library/internal-include/CD/cd_internal.hpp index 45602186..beefa63b 100644 --- a/src/Library/internal-include/CD/cd_internal.hpp +++ b/src/Library/internal-include/CD/cd_internal.hpp @@ -19,7 +19,6 @@ namespace JabyEngine { ((parameter_fifo.write(CD_IO::ParameterFifo{args})),...); cmd_fifo.write(CD_IO::CommandFifo {cmd.id}); - cmd_interrupt_bit = bit::set(0, cmd.complete_irq); } template @@ -30,7 +29,8 @@ namespace JabyEngine { template static void send_wait(IOPort& cmd_fifo, IOPort& parameter_fifo, CD_IO::Command::Desc cmd, ARGS...args) { send(cmd_fifo, parameter_fifo, cmd, args...); - wait_completed(); + cmd_interrupt_bit = bit::set(0, cmd.complete_irq); + wait_completed(); // TODO: This was moved because of Duckstation - but is it fine on real hardware? } template diff --git a/src/Library/src/File/Processor/cd_file_processor.cpp b/src/Library/src/File/Processor/cd_file_processor.cpp index 04bf7f8a..39b826ae 100644 --- a/src/Library/src/File/Processor/cd_file_processor.cpp +++ b/src/Library/src/File/Processor/cd_file_processor.cpp @@ -88,7 +88,6 @@ namespace JabyEngine { Progress CDFileProcessor :: process() { const auto cur_state = CD::internal::read_current_state(); - CDFileProcessor::process_data(); switch(cur_state) { case CD::internal::State::Done: @@ -100,7 +99,7 @@ namespace JabyEngine { return Progress::Done; case CD::internal::State::BufferFull: - /* We processd data and unpause the CD drive */ + /* We processed data and unpause the CD drive */ CD::internal::continue_reading(); return Progress::InProgress;