Commit Graph
3264 Commits
Author SHA1 Message Date
Tobias Gunkel f7a869ccc5 SCUMM: Optimize player_appleII sample buffer
The AppleII sound player works in two phases: writing samples to the
sample buffer (sample
generation) or reading samples from the buffer and passing it to ScummVM's
output callback.
The sample buffer is read completely in the reading phase so the entries
of the already read samples of the buffer can be reused again during the
next write phase.
2011-12-22 12:08:28 +01:00
Tobias Gunkel 3a9f2c5f5b SCUMM: Use finer grained sound updates for player_appleII
This reduces the needed buffer size for the biggest type4 sound from 170kB to only 2 bytes
2011-12-22 12:08:28 +01:00
Tobias Gunkel 7d551c9e6e SCUMM: Wrap player_appleII sound generation functions in classes 2011-12-22 12:08:27 +01:00
Tobias Gunkel ffc88c5ced SCUMM: Reduce sound buffer size for player_appleII
Sound generation functions are now called incrementally instead of just
once to generate the sound data. This reduces the max. buffer size
from 1.7MB to just ~100KB (piano, sound 50).
2011-12-22 12:08:26 +01:00
Tobias Gunkel 375047b729 SCUMM: Increase precision of player_appleII
Use fixed precision instead of integral numbers for sample conversion
2011-12-22 12:08:26 +01:00
Tobias Gunkel 8b7ad559c1 SCUMM: Aggregate speaker states of CPU cycles in between samples
- formerly only two sample levels were possible: 32767 or -32767. Now the
  speaker states (0/1) between two samples are aggregated by the new
  SampleConverter class to allow more accurate sample values between -32767
  and 32767.
- the player's state is moved into a separate state struct
2011-12-22 12:08:25 +01:00
Tobias Gunkel e56d5df295 SCUMM: Fix error in player_appleII when both voices are triggered at the same time 2011-12-22 12:08:24 +01:00
Tobias Gunkel 109ba212c6 SCUMM: Add initial support for AppleII sound player 2011-12-22 12:08:23 +01:00
Matthew Hoops 00279659b2 Merge remote branch 'upstream/master' into pegasus
Conflicts:
	video/qt_decoder.cpp
2011-12-12 15:25:28 -05:00
athrxx 8d1b07f054 SCUMM: fix minor bug in FM-TOWNS sound code
(multi channel pcm sounds did not get restored correctly after loading a save file)
2011-12-05 22:59:33 +01:00
Matthew Hoops 4595b75d24 SCUMM: Add support for the mustard mac map file 2011-12-03 15:54:30 -05:00
Matthew Hoops 712100b77e SCUMM: Add support for Putt-Putt Saves the Zoo iOS 2011-11-27 20:13:03 -05:00
athrxx fe21e5b0a9 SCUMM: paranoia "fix" for ae5192c5d3
(change sizeof check to use int16 instead of Common::Rect)
2011-11-24 22:00:09 +01:00
athrxx ae5192c5d3 SCUMM: make FM-Towns save files compatible between DS and other platforms
(only applies to new save files)
2011-11-24 21:29:14 +01:00
Travis Howell 46b020d860 SCUMM: Add code to support different keys used for skipping cutscenes in early ports of Maniac Mansion and Zak McKracken. 2011-11-17 23:01:47 +11:00
Strangerke bab4b6f729 LAUNCHER: Introduce GUIO0() in order to replace GUIO1(GUIO_NONE) 2011-11-16 22:38:58 +01:00
Matthew Hoops 627684ca73 GRAPHICS: Make drawThickLine take a thickness in both x and y directions 2011-10-27 19:20:02 -04:00
Johannes Schickel 833c692fc9 SCUMM: Make some variables const and one furthermore static. 2011-10-06 02:52:27 +02:00
Tarek Soliman fcef333b99 SCUMM: code formatting
Thanks clone2727
2011-10-05 09:58:57 -05:00
Filippos Karapetis 2a2e0377f3 SCUMM: Code formatting 2011-10-05 13:02:01 +03:00
Tarek Soliman fb180cba85 SCUMM: enable speech gui option when speech file found in unknown game
This commit only affects monkey and monkey2 except FMTOWNS
because FMTOWNS has *.sou files that don't have speech
2011-10-04 23:45:09 -05:00
Tarek Soliman 71f3c54365 SCUMM: Apply modified patch from #3076698
This adds support for the Ultimate Talkie Edition fanpatch

This is authored by the original UTE author LogicDeLuxe and Fingolfin.

Modification:
Removed detection entries
2011-10-04 23:44:05 -05:00
Travis Howell 44a7c2d160 SCUMM: Correct HE version for Norwegian version of Freddi Fish 1. 2011-10-02 14:06:13 +11:00
Johannes Schickel 09708f7224 SCUMM: Stream sfx/voice sounds from mouster.sou.
This fixes sound corruption when using the new VOC streaming code. It also
reduces the runtime memory needed for compressed sound files slightly, since
it does not preload them into memory anymore. This comes at the expense of one
file descriptor needed per sfx being played though.

Thanks to Kirben for his review and feedback.
2011-11-06 13:33:55 +01:00
Willem Jan Palenstijn 9e4d3234c5 SCUMM: Revert "Removed a duplicate variable assignment"
This reverts commit 747ebffd17,
and adds a FIXME.
2011-11-04 10:04:42 +01:00
Filippos Karapetis 747ebffd17 SCUMM: Removed a duplicate variable assignment 2011-11-04 00:42:38 +02:00
Eugene Sandulenko 0f711c4a2e SCUMM: Fix warnings 2011-11-03 01:34:53 +00:00
Eugene Sandulenko 55b95e3f50 SCUMM: Fix copy/paste errors 2011-11-03 01:34:53 +00:00
Johannes Schickel f24f0f0582 SCUMM: Remove outdated comment. 2011-11-02 20:28:45 +01:00
Willem Jan Palenstijn 1d8960ccde SCUMM: Minor clean up 2011-11-02 01:34:52 +01:00
Willem Jan Palenstijn 0af011ba82 SCUMM: Further clean up loop 2011-11-01 23:56:51 +01:00
athrxx de5d3fc8e1 SCUMM: add comment to last commit 2011-11-01 17:38:49 +01:00
athrxx 8315d5d2c8 SCUMM: fix save file incompatibility between DS and other ports for non FM-TOWNS games 2011-11-01 17:04:31 +01:00
Johannes Schickel 5cc76e8d71 SCUMM: Run astyle over Player_V2A code. 2011-11-01 16:04:02 +01:00
Johannes Schickel a0da684bc5 SCUMM: Fix possible leak in Player_V2A code. 2011-11-01 16:04:02 +01:00
Willem Jan Palenstijn f191413b1c SCUMM: Clean up loop 2011-11-01 15:54:15 +01:00
Alyssa Milburn 63aa0ef6f3 SCUMM: Initialize Sprite fields in constructor.
This fixes a crash when HE games return from init() early due to the
required color mode not being available.
2011-10-25 10:51:31 +02:00
Tarek Soliman 636789441a SCUMM: Fix detection of talkie Monkey Island
Thanks md5 for the idea to fix the null pointer
Thanks clone2727 for feedback on this and other implementations
2011-10-24 16:28:36 -05:00
Strangerke cfa42fee80 LAUNCHER: Add GUIO_NOASPECT to SCUMM engine 2011-10-23 21:45:02 +02:00
Johannes Schickel a41d72a44a SCUMM: Fix compilation when HE is disabled.
This is a regression from 77c65648b1.
2011-10-23 19:42:30 +02:00
Eugene Sandulenko 77c65648b1 AD: Swtich GUI options to a char array.
This eliminates nasty limitation of caping number of flags to 31.
Current code has limitation of 255 flags, though.

Only SCUMM engine is converted, rest do not even compile.
Detection of fan talkie MI is broken as it has to be implemented
differently.
2011-10-23 17:53:13 +01:00
Chris Warren-Smith ed07b99b22 BADA: Misc changes merged from appstore release 2011-10-18 23:22:25 +10:00
Johannes Schickel 3e1405b939 AUDIO: Add default disposeAfterUse value to makeVOCStream again. 2011-10-09 21:24:06 +02:00
Johannes Schickel 221434a83f AUDIO: Remove unused makeVOCStream interface. 2011-10-09 21:23:29 +02:00
athrxx f8ee4f385f SCUMM FM-TOWNS: fix DS build 2011-09-17 22:16:41 +02:00
athrxx 149fdbfb60 SCUMM FM-TOWNS: fix another regression
(pcm sound effects broken in 69adb13c2f)
2011-09-17 21:15:46 +02:00
athrxx 0d1d974e14 SCUMM FM-TOWNS: fix regression and cleanup
(LOOM mouse cursor was broken in b1cb88ddc2)
2011-09-17 21:15:44 +02:00
athrxx 867f2887e8 SCUMM FM-TOWNS: fix invalid mem accesses
- handle some invalid sound resources that come up when starting LOOM
- fix typo in midi driver code (causing invalid mem reads)
2011-09-17 21:15:41 +02:00
Johannes Schickel 6fe7b020a8 SCUMM: Made some static data const. 2011-09-08 20:13:13 +02:00
Johannes Schickel f85fd9b4f1 SCUMM: Fix text color bug in Indy4 Amiga outro. 2011-09-03 13:48:06 +02:00