Commit Graph
137148 Commits
Author SHA1 Message Date
Cameron Cawley b594d04cd1 BLADERUNNER: Fix compilation on AmigaOS 4 2019-07-17 19:05:16 +01:00
Dries Harnie ea90258819 Merge pull request #1563 from raziel-/patch-4
CONFIGURE: Add AmigaOS4 GLESv2 implementation
2019-07-17 19:46:29 +02:00
Thanasis Antoniou caa4578add BLADERUNNER: Use unsigned 32bit diff for time durations 2019-07-17 19:09:15 +03:00
Thanasis Antoniou d1ff73cbb3 BLADERUNNER: Replace difficulty values with proper enum 2019-07-17 19:09:13 +03:00
athrxx 59f1e7aa48 SCI: (FB01 sound driver) - SCI0_LATE fix
Fix up SCI0_LATE variant of the driver so that it actually plays anything (and even correctly). SCI1 hasn't seen any testing from me so far. I don't know whether that version works. Same for SCI0_EARLY...
2019-07-17 17:38:26 +02:00
athrxx 77dbefb907 SCI: (CMS sound driver) - add support for SCI0
I haven't found an elegant and non-intrusive way to squeeze SCI0 support into LordHoto's existing code. The drivers are too different. So I made some rearrangements. The basic mechanisms of LordHoto's SCI1 code should remain the same as before, though. I only introduced some more classes, moved some code into these classes and renamed some things (mainly for myself, so as not to get confused).

I fixed two voice mapping bugs in the existing driver code. The first bug in bindVocies() effectively hindered the driver from playing anything at all when the CMS_DISABLE_VOICE_MAPPING #define wasn't set (_voice[i].channel == 0xFF instead of _voice[i].channel != 0xFF). The second bug in unbindVoices() was not a complete show stopper, but the function simply did not "unbind the voice". The line which does the actual removal of the channel assignment was missing.

The SCI0 driver portions have been tested with: PQ2, KQ4, LSL3, QFG1, ICE and COC.

SCI_0_EARLY versions apparently don't support the CMS. At least I haven't seen a driver file so far. And there seems to be no no instrument patch resource. Although the latter issue needn't necessarily be one, since the patch data array in the driver is actually preset with data (which gets overwritten as soon as a patch file is loaded). Maybe this would work for SCI_0_EARLY. However, I haven't tested this, since I really would have have a look at a driver file first if one actually exists. For now, I have limited the driver to SCI_0_LATE.

SCI1 has been tested with KQ5 and LSL5 (not extensively, just to see whether anything got broken and whether my voice mapping fixes work).
2019-07-17 17:38:26 +02:00
athrxx d988e40e25 SCI: (PC98 audio driver) - base tempo correction
(somewhat difficult to make out any difference, but it does affect the envelope processing)
2019-07-17 17:38:26 +02:00
athrxx ea9e7df0a8 CINE CP 2019-07-17 17:38:25 +02:00
athrxx 96dc86ca97 SCI CP
Conflicts:

	engines/sci/engine/script_patches.cpp
2019-07-17 17:38:25 +02:00
athrxx 97ea9fd704 KYRA: (EOB/Amiga) - t 2019-07-17 17:38:24 +02:00
athrxx 4c45f9f39f SCUMM: (iMUSE/Amiga) - fix INDY4 instruments handling
FOA Amiga uses 'ROL ' resources (unlike MI2 which has 'AMI ' resources). So our imuse player treated those as MT32 tracks playing on a non-MT32 device and applied GM mapping. Which of course messed up the instruments.
2019-07-17 17:26:52 +02:00
athrxx 4c6ff7843f SCUMM: remove unused declarations
(several function declarations in imuse_internal.h)
2019-07-17 17:26:52 +02:00
athrxx 7478cffd88 SCUMM: (iMUSE/Amiga) - cleanup 2019-07-17 17:26:51 +02:00
Walter van Niftrik e937838b91 ADL: Add support for Serenia data blocks 2019-07-17 11:42:23 +02:00
Hubert Maier 657c09c976 CONFIGURE: Add AmigaOS4 GLESv2 implementation 2019-07-17 10:43:58 +02:00
Walter van Niftrik 14bfe02b81 ADL: Add support for 40/8/512 PC raw disk images 2019-07-17 09:54:14 +02:00
Walter van Niftrik f4f4d6119f ADL: Remove opcode counts from script interface 2019-07-17 08:41:34 +02:00
Peter Kohaut 39e4fdb98c BLADERUNNER: Use ScummVM word wrapping algorithm 2019-07-16 21:56:33 +02:00
Peter Kohaut a767a6800d BLADERUNNER: Added TTF & UTF8 support for subtitles 2019-07-16 21:32:34 +02:00
Peter Kohaut ffbfe90afa BLADERUNNER: Ajdust font interface to ScummVM's one 2019-07-16 21:32:34 +02:00
lolbot-iichan 0781584dfc WINTERMUTE: Suppress warning on Directory.Create() for Hamlet 2019-07-16 20:24:42 +03:00
lolbot-iichan ed635a5b01 WINTERMUTE: Fix File.WriteText method
Removed unnecessary '\0' byte written after a string. Reasons to remove:

1. Hamlet game does not write 0 after string when running this code:
var SomeFile = new File((Game.SaveDirectory + "\gamelet.save"));
SomeFile.OpenAsText(2);
SomeFile.WriteText(LVL_N);
SomeFile.Close();

2. Original WME does not have this:

https://github.com/retrowork/Wintermute-Engine/blob/master/src/engine_core/wme_base/SXFile.cpp#L303
2019-07-16 20:24:42 +03:00
lolbot-iichan 614dfdfbe3 WINTERMUTE: Implement loading files using SavefileManager 2019-07-16 20:24:42 +03:00
lolbot-iichan 9eca2b4c54 WINTERMUTE: Implement saving files using SavefileManager 2019-07-16 20:24:42 +03:00
lolbot-iichan a96d127b1f WINTERMUTE: Fix assertion in Hamlet game
Assertion was caused by providing "saves/" prefixed string to
WindowsFilesystemNode::getChild() function, that asserts on '/'
characters.

Wintermute game code:
if(!(Game.FileExists((Game.SaveDirectory + "\gamelet.save")))) {
Directory.Create(Game.SaveDirectory);
}
...

Assertion stack:
from C:\WINDOWS\System32\KernelBase.dll
from C:\WINDOWS\System32\msvcrt.dll
(this=0xcfdf710,
n=...) at backends/fs/windows/windows-fs.cpp:158
n=...)
at common/fs.cpp:68
(filename=...)
at engines/wintermute/base/file/base_disk_file.cpp:76
at engines/wintermute/base/file/base_disk_file.cpp:105
this=0x50795e0, filename=...)
at engines/wintermute/base/base_file_manager.cpp:326
(this=0xcea72f0,
script=0xcf657d0, stack=0xcf6a2e0, thisStack=0xcf69ee0,
name=0xcfd8870 "FileExists") at
engines/wintermute/base/base_game.cpp:1523
...
2019-07-16 20:24:42 +03:00
lolbot-iichan 4bb82a8dae WINTERMUTE: Add dummy implementation of Directory global object
Source:
http://docs.dead-code.org/wme/generated/scripting_ref_directory.html
2019-07-16 20:24:42 +03:00
lolbot-iichan 64406b09a8 WINTERMUTE: Add detection tables for all non-English versions of Hamlet
Source: https://steamdb.info/app/222160/depots/
2019-07-16 20:24:42 +03:00
lolbot-iichan 1dfc637b06 COMMON: Add Turkish language 2019-07-16 20:24:42 +03:00
Walter van Niftrik ea777fc79d ADL: Replace 'using' with 'this->'
Hopefully fixes the build
2019-07-16 18:27:03 +02:00
jepael fa06dd972b MADE: Remove unused variable 2019-07-16 18:51:45 +03:00
Walter van Niftrik 9c7ed5c0da ADL: Silence MSVC warnings 2019-07-16 16:24:20 +02:00
Walter van Niftrik 338baf827c ADL: Fix debug mode hang in hires5 animation 2019-07-16 16:24:20 +02:00
Walter van Niftrik 39acda0c9f ADL: Clean up usage of override specifier 2019-07-16 16:24:20 +02:00
Walter van Niftrik ce8a840933 ADL: Remove APPLECHAR macro 2019-07-16 16:24:19 +02:00
Walter van Niftrik 0cd761086a ADL: Refactor graphics code 2019-07-16 16:24:19 +02:00
Thanasis Antoniou bfa52c7b9e BLADERUNNER: Don't show VK option for Runciter in vanilla 2019-07-16 00:58:21 +03:00
Lothar Serra Mari 58085d4f4d NEWS: Update German NEWS.md translation 2019-07-15 19:58:11 +02:00
jepael ac38709420 I18N: Update translation (Finnish)
Currently translated at 100.0% (1089 of 1089 strings)
2019-07-15 19:29:29 +02:00
Lothar Serra Mari 77e3650ceb I18N: Update translation (German)
Currently translated at 100.0% (1089 of 1089 strings)
2019-07-15 19:29:20 +02:00
Thierry Crozat 76181378be I18N: Update translations templates 2019-07-15 14:01:33 +02:00
Thierry Crozat bfa1f392f7 POSIX: Fix missing expansion of "~" to home when it has no suffix
This fixes bug #10941: Tilde in save path creates "~" folder
2019-07-14 22:11:20 +01:00
athrxx 6694cdcd73 SCUMM: update news (Amiga iMuse support) 2019-07-14 21:45:56 +02:00
athrxx 19643175a8 SCUMM: limit 'Unrecognized base tag' warning to valid cases
This warning will not only show up if a tag is actually unrecognized but also in cases where the tag is recognized, but the resource size is 0. This happens quite a lot in the Amiga version of MI2 with 'SOU ' tags.
2019-07-14 21:45:52 +02:00
athrxx 4ee4d2d9af SCUMM: (FM-Towns Audio) remove TODO
The audio track is not broken. LEC simply didn't make good  euphony music tracks for the FM-Towns. There is nothing we can do about that.

The TODO implies that someone should mess around with the audio data (change the composition?).
2019-07-14 21:45:48 +02:00
athrxx 01f99f1a0a SCUMM: imuse driver directory cleanup
- move mac, pc speaker and fm-towns ims sound drivers into separate directory

(AdLib and MT32/GM drivers are still too entangled with common code to be moved so easily, especially MT32/GM. It would require lots of changes to the common code and possibly to all engines using the MidiDriver class. So I leave that for now.)
2019-07-14 21:45:43 +02:00
athrxx d1b64aab0c SCUMM: (iMuse/Amiga) - improve accuracy
This fixes the issue that some rhythm instruments didn't receive correct notes. The changes have been limited to the Amiga versions.
2019-07-14 21:45:29 +02:00
athrxx 0899ecc987 SCUMM: hook up Amiga MI2 + INDY4 to new sound driver 2019-07-14 20:56:27 +02:00
athrxx 9afdde2601 SCUMM: add Amiga iMuse sound driver
(applies to MI2 and INDY4)
2019-07-14 20:56:27 +02:00
Paul Gilbert b1ae4319e5 GLK: TADS2: Fix duplicate detection 2019-07-14 10:47:52 -07:00
Paul Gilbert 649dadaedc GLK: ALAN3: Change detections list to use common GlkDetectionEntry 2019-07-14 10:47:52 -07:00