Commit Graph

2372 Commits

Author SHA1 Message Date
clone2727
6370984b22 Merge pull request #50 from clone2727/bink
Add support for Bink video to SCUMM HE
2011-07-18 16:04:39 -07:00
Johannes Schickel
69adb13c2f SCUMM: Fix strange noise in Indy4 outro with AdLib/FM-Towns output.
Formerly we tried to play back a ROL resource on AdLib in this case, since the
game does not contain a ADL resource for the sound the game tries to play here.
The original does not exhibit this behavior, thus I changed it to behave the
same now.

Big thanks to eriktorbjorn for noticing and finding the cause of this problem.
Also thanks to Kirben for checking how the original behaved and _athrxx for
checking the FM-Towns version of Indy4.
2011-07-17 02:27:33 +02:00
Johannes Schickel
8800794f4d SCUMM: Clarify PC Speaker style sound resource handling with a comment. 2011-07-17 00:08:52 +02:00
Johannes Schickel
482fcea8f3 SCUMM: Add debug output in case the code tries to set up a non-existant iMuse instrument. 2011-07-14 01:09:47 +02:00
athrxx
ed3fe4372a SCUMM: fix regression caused by recent sjis code changes 2011-07-14 00:53:03 +02:00
Johannes Schickel
f814dc971c SCUMM: Handle default instrument set up in iMuse like the original. 2011-07-14 00:49:32 +02:00
Johannes Schickel
9565af1ae4 SCUMM: Implement iMuse alloc part command closer to the original. 2011-07-14 00:49:32 +02:00
Matthew Hoops
a50abde1b1 BUILD: Allow for disabling Bink support 2011-07-13 12:08:26 -04:00
Eugene Sandulenko
10536e285c SCUMM: Fix bug #3306145: INDY3: EGA version script bugs
Based on a patch presented in the bugreport. Fixes several bugs
connected with calcualting IQ points in Amiga versions of Indy3.
2011-07-13 12:33:51 +01:00
Johannes Schickel
25c0f0a772 SCUMM: Adapt iMuse code formatting to our standards. 2011-07-11 22:53:41 +02:00
Johannes Schickel
a8846d37d5 Merge pull request #54 "SCUMM v5 PC Speaker driver".
Discussion can be found here: https://github.com/scummvm/scummvm/pull/54
2011-07-11 21:51:40 +02:00
Johannes Schickel
4ee228bb16 SCUMM: Fix some envelope bugs in PC Speaker output. 2011-07-10 19:23:59 +02:00
Johannes Schickel
5f5daadedb SCUMM: Let PC Speaker output be controlable via music volume. 2011-07-10 18:14:42 +02:00
Johannes Schickel
adb2bbbb59 SCUMM: Properly implement volume controler for PC Speaker output. 2011-07-10 18:06:33 +02:00
Johannes Schickel
5edb6f9e4a SCUMM: Fix priority settings in iMuse allocate part sysEx command.
Formerly we ever only used the lower 4 bit of the priority setting for a new
part. The original used a full 8 bit setting though (based on the Indy4 PC
Speaker output driver). This fixes missing notes in the Indy4 intro with PC
Speaker output.

This might affect other outputs too! And could cause regressions in case other
outputs implemented priority settings differently.
2011-07-10 17:58:41 +02:00
Johannes Schickel
781b7215c4 SCUMM: Fix PC Speaker sound.
Now we only output a new frequency if a new channel was selected or a new
output frequency has to be send. This makes the sound much more like in
DOSBox. This is not present in the original, but since our timings are
different this should make up for that.
2011-07-10 17:42:02 +02:00
Johannes Schickel
dab9c05783 SCUMM: Do not allow multi midi mode for PC Speaker output.
Thanks to eriktorbjorn for catching this.
2011-07-10 16:21:30 +02:00
Johannes Schickel
fb4ed2224f SCUMM: Minor clean up in iMuse instrument handling code. 2011-07-10 05:28:20 +02:00
Johannes Schickel
abbd29b16a SCUMM: Limit iMuse default instrument load to PC Speaker output.
Albeit the code is marked as a hack inside the source, the original behaved
exaclty the same. If the code is removed the PC Speaker output will miss notes,
since unlike the original we only output to parts, which have an instrument set
up.
2011-07-10 05:21:25 +02:00
Johannes Schickel
0a94fc5b7b SCUMM: Only try to load MT-32 instruments when we have a MIDI output in iMuse.
This fixes the melody in Indy4's intro with the PC Speaker output.
2011-07-10 05:13:03 +02:00
Johannes Schickel
bf4091931d SCUMM: Implement effect envelope for PC Speaker output in SCUMM v5. 2011-07-10 04:54:07 +02:00
athrxx
c06c05a769 GRAPHICS: remove char/line spacing handling from sjis code
(as discussed with LordHoto this should rather be handled in the engine)
2011-07-10 00:45:00 +02:00
athrxx
f24bac2d0f SCUMM: fix DS compilation 2011-07-09 23:57:51 +02:00
athrxx
e3dbae886d SCUMM: Make use of graphics/sjis code for LOOM PCE sjis drawing
Also move font rom loader to graphics/sjis and make the necessary changes there.
2011-07-09 20:07:58 +02:00
athrxx
b1cb88ddc2 SCUMM: cleanup sjis font rendering code 2011-07-09 20:07:55 +02:00
Johannes Schickel
ed993e6350 SCUMM: Initial PC Speaker output implementation for SCUMM v5.
This is *not* complete yet.
2011-07-08 04:45:01 +02:00
Johannes Schickel
3f04ad72a9 SCUMM: Remove unused operator int. 2011-07-03 22:22:04 +02:00
athrxx
636a28c0dd SCUMM: fix crash in digital iMuse games when using RTL and restarting
(static array were not reset to NULL after being freed and therefore didn't get reallocated on restart)
2011-07-03 14:40:57 +02:00
Matthew Hoops
9374215789 SCUMM: Add support for Bink video 2011-07-02 16:37:41 -04:00
Matthew Hoops
666d3815ec SCUMM: Don't have MoviePlayer inherit from SmackerDecoder 2011-07-02 14:55:36 -04:00
Matthew Hoops
f7efd3fe2a SCUMM: Remove backslashes from Mac file names too
Fixes Smacker videos in Blue's Birthday
2011-07-02 14:55:05 -04:00
Matthew Hoops
58356843ee SCUMM: Fix Blue's Birthday Macintosh 2011-07-02 14:54:45 -04:00
Johannes Schickel
933ee5b156 GRAPHICS: Remove default values from FontSJIS::drawChar.
drawChar is overloaded in FontSJIS. One takes a "Surface &" as first
parameter another one "void *", they furthermore have the exact same
number of required parameters. The one "void *" just had a few extra
parameters with default values. This resulted in a bug in SCUMM, where
"VirtScreen *" (a subclass of Surface) was passed instead of "VirtScreen &"
and thus the method taking "void *" was incorrectly used.

To make it easier to spot such bugs in the future I just removed the default
values and thus disallow such calls.
2011-07-01 05:42:54 +02:00
Littleboy
b694a78f62 ANALYSIS: Add static casts to is* functions
This fixes a potential problem with passing char values that would be sign-extended and yield unexpected results.
See http://msdn.microsoft.com/en-us/library/ms245348.aspx
2011-06-23 08:52:52 -04:00
Johannes Schickel
3b7c91f2a7 COMMON: Move HerculesDimensions enum to SCUMM.
The enum is only used inside the SCUMM engine so it is rather pointless to
keep it in common/util.h right now. Also if we really want it in some common
place it should probably be better in graphics/ too.
2011-06-21 16:59:50 +02:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
athrxx
984407de84 SCUMM: fix SCUMM3 FM-TOWNS font rendering glitch in Japanese mode
(Wrong character height for non-SJIS chars which messed up the inventory scrolling arrows)
2011-06-19 14:47:11 +02:00
athrxx
81e0dd1444 SCUMM: regenerate 16bit palette after loading a savegame in LOOM PCE
(this avoids isssues when using savegames from different ports with different 16bit color modes)
2011-06-18 19:45:39 +02:00
athrxx
03ba1871f7 SCUMM: fixed messed up colors in 16bit HE games
(regression from 068b4a5351)
2011-06-18 19:45:36 +02:00
athrxx
cc77de35c2 SCUMM: make sure asmDrawStripToScreen is not called in 16bit mode
(fixes possible issue in LOOM PCE)
2011-06-18 13:12:13 +02:00
athrxx
0881f54a06 SCUMM: fix FM-TOWNS graphics output for ARM devices
(changed behavior of USE_ARM_GFX_ASM define)
2011-06-17 23:38:22 +02:00
athrxx
1a58262ca7 SCUMM: fix bug in cb661d63d0cd45d1231435a593b74dfc51872a0f 2011-06-16 21:32:33 +02:00
athrxx
283872018b SCUMM: slightly changed behavior of 16bit mode detection
(another attempt to fix SCUMM FM-TOWNS for ANDROID)
2011-06-16 20:52:07 +02:00
athrxx
89f14d38dd SCUMM: change comment in last commit 2011-06-15 22:56:39 +02:00
athrxx
0a42a7d625 SCUMM: hopefully fix 16bit mode support for SCUMM FM-TOWNS games and LOOM PCE on Android
This mostly reverts 5b7754e3f0. Instead, we try to use other 16bit modes  after 555 fails.
2011-06-15 22:30:04 +02:00
athrxx
5b7754e3f0 SCUMM: fix bug #3316738
This provides fallback to 8bit color mode for SCUMM3 FM-TOWNS games on platforms which set the USE_RGB_COLOR define even though that color mode is not being fully implemented for that platform.
2011-06-15 17:12:17 +02:00
athrxx
1ca44c076c SCUMM: fix possible portability issue 2011-06-15 00:10:55 +02:00
eriktorbjorn
b6dd530724 SCUMM: Fix noisy Valgrind warning. 2011-06-14 23:55:57 +02:00
Max Horn
879c3c7817 DETECTOR: Pass allFiles to AdvancedMetaEngine::fallbackDetect()
Also reorder the parameters of composeFileHashMap, placing the "return value"
first.
2011-06-14 18:52:11 +02:00
Max Horn
ee9276b816 SCUMM: Fix doxygen comments 2011-06-14 18:52:09 +02:00