Commit Graph
3264 Commits
Author SHA1 Message Date
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
Max Horn 593b929047 DETECTOR: Separate code for handling obsolete gameids from advanced detector
This includes a renaming of ADObsoleteGameID to Engine::ObsoleteGameID,
and AdvancedDetector::findGameID now is Engines::findGameID.

Doxygen comments were added or improved
2011-06-14 18:52:07 +02:00
Thierry Crozat c01141a144 SCUMM: Change MessageDialog button label for consistency
Everywhere else the 'OK' button label is all upper case and here was
the only place where it was not (it was 'Ok').
2011-06-13 22:21:43 +01:00
Thierry Crozat 06bbb57ad7 I18N: Make many more GUI MessageDialog strings translatable 2011-06-13 22:19:18 +01:00
athrxx 724b22e5c7 SCUMM FM-TOWNS: add number of color check in TownsScreen::updateOutputBuffer()
Although the 16 color surface is normally not on bottom, there could (theoretically?) be cases in 8bit fallback mode where this becomes relevant.
2011-06-13 22:35:01 +02:00
athrxx 3e6f031fc5 SCUMM: some cleanup in gfx_towns.cpp 2011-06-13 12:39:15 +02:00
athrxx afb1b3d8d3 SCUMM: fix engine destructor
(This is relevant for cases where the engine errors out early, before certain arrays get initialized).
2011-06-13 03:02:59 +02:00
Max Horn 91b889e2d3 COMMON: Rename kFeatureCursorHasPalette -> kFeatureCursorPalette 2011-06-04 11:55:56 +02:00
athrxx 4a8b501a22 SCUMM: fix typo (reported by Littleboy) 2011-06-03 22:09:25 +02:00