News for hackers. Stuff that matters.
Re:Doom crash after 2.5 years of real-world runtime confirme... by lelandfe on Tuesday September 16, 2025 @09:01PM (#45270293)
So the invisible 12h timer runs during cutscenes. During Excalibur 2 runs, I used to open and close the PS1 disc tray to skip (normally unskippable) cutscenes. Never knew why that worked.

(I also never managed to get it)

Re:Doom crash after 2.5 years of real-world runtime confirme... by jonhohle on Tuesday September 16, 2025 @09:31PM (#45270511)
I’m going to wager that the cutscenes are all XA audio/video DMA’d from the disc. Opening the disc kills the DMA and the error recovery is just to end the cutscene and continue. The program is in RAM, so a little interruption on reading doesn’t hurt unless you need to time it to avoid an error reading the file for the next section of gameplay.
Re:Doom crash after 2.5 years of real-world runtime confirme... by Insanity on Tuesday September 16, 2025 @10:01PM (#45270693)
That’s a solid guess. And if that’s the case, that’s actually pretty good error handling!
Re:Doom crash after 2.5 years of real-world runtime confirme... by Jare on Wednesday September 17, 2025 @02:43AM (#45272563)
I recall that handling disc eject was an explicit part of the Tech Requirements Doc (things the console manufacturer requires you to comply with). They'd typically check while playing, while loading and while streaming.
Re:Doom crash after 2.5 years of real-world runtime confirme... by ad133 on Wednesday September 17, 2025 @05:49AM (#45273772)
This is a significantly better handling than the previous game (final fantasy viii). My disk 1 (it had four disks) got scratched over time (I was a child after all), and the failure mode was just to crash - thus the game was unplayable. The game had a lot of cutscenes.
Re:Doom crash after 2.5 years of real-world runtime confirme... by p1necone on Tuesday September 16, 2025 @09:26PM (#45270481)
> Never knew why that worked.

I'm guessing the game probably streams FMV cutscenes of the disc as they play, and the fallback behaviour if it can't find them is to skip rather than crash.