Make 'Ys I & II Eternal Story' playable.
Posted on 2006-01-03 00:00:00
After further investigation, it seems that the game won't use the FILEIO functions to access the movies as I first thought. What it does instead is seeking to a sector position associated with the movie file on the disk to be able to read the data afterward. So, all seems to be good on this side.

But it still can't go further because there's some problems with the thread scheduling stuff. When the game is in "movie playback" mode, the main game loop isn't used anymore and a totally independent and different loop is used instead. Instead of relying on "WaitSema" and "SignalSema", it uses "RotateThreadReadyQueue" to allow other threads to be executed, but this system call isn't implemented. The implementation of this will probably require a rewrite of the thread scheduling method.

Fixed a problem with SIF registers not being loaded/saved from/into virtual machine saved states.