Fix auto repeat of CDDA

This commit is contained in:
jaby 2024-07-24 08:25:17 +02:00
parent aa343d1ccd
commit 582e0d9f34
2 changed files with 6 additions and 3 deletions

View File

@ -5,8 +5,8 @@ namespace JabyEngine {
namespace CDDA { namespace CDDA {
namespace CD = JabyEngine::CD::internal; namespace CD = JabyEngine::CD::internal;
static CD::BCDTimeStamp playing_track;
static CD::BCDTimeStamp last_track; static CD::BCDTimeStamp last_track;
CD::BCDTimeStamp playing_track;
TrackList get_tracks() { TrackList get_tracks() {
CD::Command::send_wait_response(CD_IO::Command::GetTN); CD::Command::send_wait_response(CD_IO::Command::GetTN);

View File

@ -6,6 +6,10 @@
#include <stdio.hpp> #include <stdio.hpp>
namespace JabyEngine { namespace JabyEngine {
namespace CDDA {
extern CD::internal::BCDTimeStamp playing_track;
}
namespace CDXA { namespace CDXA {
CD::internal::State interrupt_handler(uint8_t irq); CD::internal::State interrupt_handler(uint8_t irq);
} }
@ -148,8 +152,7 @@ namespace JabyEngine {
} break; } break;
case CD_IO::Interrupt::DataEnd: { case CD_IO::Interrupt::DataEnd: {
// TODO: Fix this!! This is a freaking static time resume_at0(CDDA::playing_track);
resume_at0(BCDTimeStamp{.min = 0x0, .sec = 0x09, .sector = 0x0});
Command::send(CD_IO::Command::Play); Command::send(CD_IO::Command::Play);
} break; } break;