Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add fixes for Take No Prisoners #5

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

adambiser
Copy link

Take No Prisoners uses MCI_STATUS_READY's dwReturn value, which wasn't being set.

The game also uses MCI_FORMAT_TMSF with dwFrom being the track's start time and dwTo being the track's end time, resulting in info.first == info.last and stopping music playback before it begins. I added a condition to set info.last to be info.first + 1 when this occurs so info.last is NON-inclusive.

If music tracks are found, report that the virtual device is ready.

dwReturn should be set to TRUE if the device is ready; FALSE otherwise.
Take No Prisoners uses MCI_FORMAT_TMSF with dwFrom set to the track's
start time (0:00) and dwTo set to the track's end time, which results in
info.first == info.last causing playback to stop before it even begins.
When TNP wants to restart the music, it calls MCI_PLAY with MCI_FROM and
MCI_TO with both dwFrom and dwTo set to 0.
Since playback stops when the last track is reached.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant