Commit Graph
1177 Commits
Author SHA1 Message Date
Eugene Sandulenko 370c695308 SAGA: Always detect subengine games 2020-11-28 20:57:02 +01:00
Eugene Sandulenko 7d9b2c7d4e SAGA: Give clarification to the user why certain versions of ITE are not supported 2020-11-28 17:41:24 +01:00
athrxx 181368f1c5 SAGA: (ITE/PC98) - fix intro text frame width 2020-11-22 19:02:47 +01:00
athrxx c9f41699aa SAGA: (ITE/PC98) - fine tune intro line breaks
I whish I knew whether I am implementing an original bug here or if this is intended behavior. But it does achieve text output faithful to the original. And it even does actually look better...
2020-11-22 19:02:47 +01:00
athrxx 3aded1d5ba SAGA: (ITE/PC98) - fix intro credits text positioning
This commit aims at getting the text almost pixel-exact like the original (from disasm and from comparison with an emulator).

It seems that the original messed up the upscaling (from 320x200 to 640x400). The whole method how they do it is weird. The text is rendered on a 320x200 pixel surface and this surface gets blitted in the center of a 640x400 pixel screen. Sometimes they
 seem to assume to draw onto 320x200, sometimes onto 640x400 (e. g. the line height for the paragraph headlines is assumed to be 11, although the font height is 18; and it will use height 18 for all the other text lines). Also, the orginal will use different printing methods for the headlines and for the text blocks below, which also doesn't help to get this right...

Now, some credits text lines are still off by 1 pixel vertically due to my method of upscaling (at the very last moment in drawDirtyRects()). I find this a much cleaner approach than the original method which is just hacking up the whole graphics code to use 640x400 coords (except for the places they forgot, see above). But this also means I can't hit the odd lines for text positioning, thus the one pixel off sometimes...
2020-11-22 19:02:46 +01:00
athrxx eaeadbb622 SAGA: (ITE/PC98) - fix override warning 2020-11-22 19:02:46 +01:00
athrxx 4a6b2b1897 SAGA: minor fix to horizontal actor text positioning
(seems to be like a typo; fixed from disasm and screen comparison)
2020-11-22 19:02:45 +01:00
athrxx 5c8f6507ef SAGA: (ITE/PC98) - adapt actor speech positioning 2020-11-22 19:02:44 +01:00
athrxx c22768e4fb SAGA: (ITE/PC98) - implement sjis font drawing 2020-11-22 19:02:44 +01:00
athrxx c16f00f0f6 SAGA: (ITE/PC98) - make version specific interface changes
The font style is diiferent for various strings (e.g. verbs are drawn outlined instead of shaded, converse line are drawn normally instead of shaded).
Also implement sjis version of "bullet" for the converse strings.
2020-11-22 19:02:44 +01:00
athrxx ffdd648c88 SAGA: (ITE/PC98) - fix option panel string 2020-11-22 19:02:44 +01:00
athrxx 8306fee7e3 SAGA: (ITE/PC98) - set GF_ITE_FLOPPY flag
This version behaves like a DOS floppy version in all the locations where we check for the  GF_ITE_FLOPPY flag
2020-11-22 19:02:44 +01:00
athrxx 7d75487d93 SAGA: (ITE/PC98) - implement original mouse cursor
Like the DOS version the PC-98 version has a hard-coded cursor. It has a size of 16x16 though, so it is suitable for a higher resolution.
2020-11-22 19:02:43 +01:00
athrxx 30704a98dd SAGA: (ITE/PC98) -adjustments to hardcoded intro data
(text colors and layout for the Japanese version)
2020-11-22 19:02:43 +01:00
athrxx 2db289f419 SAGA: (ITE/PC98) - implement dual layer rendering
- The Japanese font is drawn in double resolution on the top layer. The rest of the graphics gets drawn in standard VGA resolution on the bottom layer, then scaled 2x and merged with the top layer.
- Adjust mouse handling. In dual layer mode the event manager reports mouse coordinates in double resolution, so these have to be scaled down.
2020-11-22 19:02:43 +01:00
athrxx fa671a2c40 SAGA: (ITE/PC98) - prepare font class for Japanese rendering
Reorganize font code into sub classes to allow independent rendering of the Japanese ROM font. No actual implementation for the Japanese rendering yet.
2020-11-22 19:02:43 +01:00
Eugene Sandulenko 7ff34bc9ec PLUGINS: MetaEngineStatic -> MetaEngineDetection 2020-10-11 23:14:39 +02:00
Eugene Sandulenko 7ea6781043 PLUGINS: PLUGIN_TYPE_METAENGINE -> PLUGIN_TYPE_ENGINE_DETECTION 2020-10-11 23:12:32 +02:00
aryanrawlani28 d26bbe521c ENGINES: ALL: Finish renaming ME & AME classes
- ME -> MetaEngineStatic (static parts)
- MEC -> MetaEngine (dynamic parts)
2020-10-03 14:56:36 +02:00
aryanrawlani28 a56dc094b9 ENGINES: ALL: Move detection_enums -> detection.h
- Cleans up headers quite a bit.
2020-10-03 14:56:36 +02:00
aryanrawlani28 29ceb07959 ENGINES: ALL: Revert detection submodule to be directly present in the engine directory
- DETECT_OBJS are present and added inside an engine's modules.mk file.
2020-10-03 14:56:36 +02:00
aryanrawlani28 f3b9477893 ENGINES: ALL: Add header guards for the new detection-header files. 2020-10-03 14:56:36 +02:00
aryanrawlani28 8189a05316 ENGINES: ALL: Adapt to changes for new plugins by defining a new detection module
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
2020-10-03 14:56:36 +02:00
aryanrawlani28 d8c82faf27 SAGA: Split detection features & adapt to new plugins. 2020-10-03 14:56:36 +02:00
aryanrawlani28 95bc4c0994 SAGA: Move common engine/game-detection related enums into a new header. 2020-10-03 14:56:36 +02:00
aryanrawlani28 a4739197da SAGA: Move some shared defines between engine/game detection to a new header 2020-10-03 14:56:36 +02:00
Eugene Sandulenko d33683558e SAGA: Added support for ITE GOG Mac CD v1.1 2020-09-17 22:08:25 +02:00
aryanrawlani28 7a19c7ffee I18N: Update POTFILES
In the previous commit, some new places where translations could be used were found. This commit adds the relevant files to POTFILES.
2020-08-30 14:43:41 +02:00
aryanrawlani28 4b6976c558 GUI: U32: Reduce number of files changed and fixes
Up until last commit, everything was working fine but the amount of files changed was too large. This commit tries to reduce the changes.

- Add a fake constructor to Keymap, text-to-speech, setDescription (save-state)
- Redirecting functions for PopUpWidget::appendEntry, ButtonWidget::setLabel, GUIErrorMessage
- Use the above functions and constructors to reduce changes in Engines
- Fix warnings being in unicode. Only output english text in - Warnings, Errors, etc.
- Mark some strings as "translation" strings. (Not yet added to POTFILES)
- Remove some CP related things from po/modules.mk
- Previously used some Common::convertToU32 where it was not necessary, replace this with u32constructor
2020-08-30 14:43:41 +02:00
aryanrawlani28 e22b32abfe GUI: U32: Use Common::U32String::format where necessary and GUIError to u32
- Where necessary as in, where translated messages are used.
- GUIErrorMessage now takes in U32String
- error messages across some engines use U32Strings. they are changed because they show a message dialog.
2020-08-30 14:43:41 +02:00
Eugene Sandulenko 1aea38cc63 COMMON: Makw SeekableSubReadStreamEndian subclass of SeekableReadStreamEndian 2020-07-21 18:20:00 +02:00
athrxx 87ca13c331 SAGA: (ITE/PC98) - add missing comma 2020-05-19 16:18:42 +02:00
athrxx d2aa06eef5 SAGA: (ITE/PC98) - fix opening credits style/color 2020-05-19 16:18:38 +02:00
athrxx 386aad2196 SAGA: (ITE/PC98) - fix opening credits 2020-05-19 16:18:34 +02:00
athrxx 9148e8822d SAGA: (ITE/PC98) - fix voices in second intro part 2020-05-19 16:18:30 +02:00
athrxx a933b0a83e SAGA: (ITE/PC98) - fix music fading 2020-05-19 16:18:26 +02:00
Misty De Meo 9a131c6cb1 SAGA: store Japanese strings as escaped Shift JIS 2020-05-19 12:35:54 +02:00
Misty De Meo 8fc6187c5e SAGA: add menu Japanese menu strings 2020-05-19 12:35:54 +02:00
Misty De Meo 6327fbd129 SAGA: add Japanese puzzle strings 2020-05-19 12:35:54 +02:00
Misty De Meo 4189c2acfa SAGA: add introduction text for Japanese versions
Contains the intro text and opening credits.

This is currently in Unicode; may need to make it Shift JIS later,
depending on how multibyte handling goes.
2020-05-19 12:35:54 +02:00
athrxx c22d9ea086 SAGA: (ITE/PC98) - add music support
We had an existing driver for that, so that could be hooked up rather quickly.

I haven't targeted the non-digital sfx for now, since I haven't fully analyzed whether they are even used. And it would require the reading of static data from the executable which we'd rather avoid.
2020-05-19 12:35:54 +02:00
athrxx 925e9e6fbc SAGA: (ITE/PC98) - digital sfx fine tuning
The experimental/guessed approach works fair enough, but there is a bit more to it.

I also removed the GF_ITE_PC98, since the platform is not exactly a game feature and can just as well be queried via _vm->getPlatform().

This commit doesn't fix the missing speech during the chess game sequence. Might be a resource issue. I haven't looked into it...
2020-05-19 12:35:54 +02:00
Misty De Meo 90e6bd8e3d SAGA: add support for PC-98 ITE voices 2020-05-19 12:35:54 +02:00
Misty De Meo a87d8ca778 SAGA: skip music for PC-98 version of ITE
The PC-98 version of ITE has music in a different format I haven't
identified yet, so normal music handling code chokes on it. For now,
simply skipping all music allows the game to run.
2020-05-19 12:35:54 +02:00
Misty De Meo 4ebfe85f3d SAGA: add PC-98 CD version of Inherit the Earth 2020-05-19 12:35:54 +02:00
mataniko 581a6ec7d6 JANITORIAL: Rename kSupportsRTL to kSupportsReturnToLauncher 2020-05-12 10:36:38 +02:00
mataniko 06242a712b JANITORIAL: Rename EVENT_RTL
Now that ScummVM is adding RTL support, the EVENT_RTL should be disambigious that it is for returning to launcher
2020-05-12 10:36:38 +02:00
Paul Gilbert 9f175c4053 ENGINES: Cleanup of savegame filenames generation
This removes filename methods when it matched the Engine method.
Secondly, ensuring there was an overriden getSaveStateName method
for engines that didn't do the standard target.00x save filenames
2020-02-16 15:44:28 -08:00
Paul Gilbert a00e44ba6c ENGINES: Merge saveGameState virtual methods into a single one 2020-02-16 15:44:28 -08:00
Paul Gilbert 00848cff4c SAGA: Refactor to use Engine debugger 2020-02-16 13:07:19 +02:00