#8346 closed patch
FBEAR: Partial fix for the piano
Reported by: | eriktorbjorn | Owned by: | Kirben |
---|---|---|---|
Priority: | normal | Component: | Engine: SCUMM |
Version: | Keywords: | ||
Cc: | Game: | Fatty Bear's Birthday Surprise |
Description
This is an incomplete attempt at getting the piano in Fatty Bear's Birthday surprise to work a bit better.
Currently it always plays the same note, no matter which key you hit. There are two different mechanisms for specifying the note: The standard piano sound uses o6_startSound()'s "offset" parameter, while the digitized instruments uses o6_setVolume()'s second case to specify which frequency the next sound effect should be played at.
Or at least that's my guesses.
There are several things that need to be done, though. The patch doesn't do anything about the standard piano sound, and when using digitized sounds you can't play a new note until the old note has ended.
I don't want to apply this patch myself since some of my changes don't agree with the comments in the code. Still, it's a start.
Ticket imported from: #977249. Ticket imported from: patches/451.
Attachments (1)
Change History (4)
by , 20 years ago
Attachment: | fbear-notes.diff added |
---|
comment:1 by , 20 years ago
Owner: | set to |
---|---|
Status: | new → closed |
comment:2 by , 20 years ago
I knew about the piano notes using the offset of startSound opcode, I should have documented that before. I didn't know where the 0xe0 case of setVolume opcode was been used, so assumed (Wrongly) that it adjusted volume, like other case. A closer look at disassembly shows that your right and changing sample rate is correct. The piano should also make a sound when the sound type is changed, not sure why ScummVM doesn't make any sound at the point. Good work on the patch, piano is sounding a lot better now.
comment:3 by , 6 years ago
Component: | → Engine: SCUMM |
---|---|
Game: | → Fatty Bear's Birthday Surprise |
Patch against a June 21 CVS snapshot