Commit Graph
769 Commits
Author SHA1 Message Date
athrxx 84a0bff281 SCUMM: fix Coverity warnings 2024-05-20 15:32:19 +02:00
Little Cat 4d3f6b7064 SCUMM HE: Fix compiling with HE v71+ disabled. 2024-05-12 15:08:27 +02:00
Little Cat 289e181de0 SCUMM HE: Use new map generator dialog. 2024-05-12 15:08:27 +02:00
Little Cat 31dc92fc4a SCUMM HE: Start working on random maps for Moonbase. 2024-05-12 15:08:27 +02:00
athrxx 158614fce6 SCUMM: some Coverity fixes 2024-05-07 19:26:06 +02:00
athrxx 55f1bbd47d SCUMM: (FM-Towns) - add menu option to force 640 x 480 mode
English versions usually run in a 320 x 240 resolution in ScummVM.
The original interpreter uses 640 x 480. It has a unique pause/restart
banner that we cannot display in 320 x 240. So that is really the only
reason for adding this option.
2024-05-01 16:06:11 +02:00
AndywinXp 8fe0f93630 SCUMM: Rename CHARSET_1() to displayDialog()
We are now using a name which respects the coding
guidelines and also reflects how the actual function was
named.
2024-04-28 19:59:30 +02:00
AndywinXp 1f493dec1a SCUMM: HE: Add new HE variant (99.5) as game feature flag 2024-04-26 23:21:29 +02:00
AndywinXp 5ac8ea75a0 SCUMM: HE: Fix sub HE95 games not starting 2024-04-26 23:21:29 +02:00
AndywinXp 9d1ebb0cba SCUMM: HE: Fix TRLE AKOS cels not being erased 2024-04-26 23:21:29 +02:00
AndywinXp 9dd2ea4e43 SCUMM: HE: Re-implement WIZ text and Aux images 2024-04-26 23:21:29 +02:00
AndywinXp b19c4b772d SCUMM: HE: Overhaul more of the GFX system
* Overhaul sprites system
* Fix compression routines for 8-bit graphics
* More fixes and clean-up
2024-04-26 23:21:29 +02:00
AndywinXp a64d977fdb SCUMM: HE: Add some basic WIZ primitives 2024-04-26 23:21:29 +02:00
AndywinXp f17fe7413c SCUMM: HE: Begin WIZ and graphics rewrite 2024-04-26 23:21:29 +02:00
athrxx ac23a92e30 SCUMM: (MI1/Amiga/Hercules/CGA) - fix bug 4535 (Voodoo lady palette glitches)
MI1 Amiga does set up the shadow palette at the beginning
and also updates it from o5_roomOps()[SO_ROOM_PALETTE].
But it never actually applies any use of the shadow palette when
doing screen palette adjustments. I've also confirmed that the
shadow is ignored in DOS CGA and Hercules mode.
2024-04-14 23:21:42 +02:00
athrxx 28d8e43675 SCUMM: (IMS/MI2/FOA) - implement old style channel management
(fix bug #14618: Inaccurate fades in INDY4,  "Test 1")

This part of the bug ticket is not about fades. The reason
for the glitch is that the driver has no unused channels left
and the newer allocation mechanism is not able to free up
some of the used channels here.
2024-03-22 22:55:48 +01:00
athrxx 9c90080474 SCUMM: (v3/v5/Mac) - minor cleanup 2024-03-16 15:51:20 +01:00
athrxx e5bc749858 SCUMM: (v3/5/Mac) - remove old music player code 2024-03-16 15:01:19 +01:00
athrxx 41f11b8da9 SCUMM: fix/silence various coverity warnings 2024-03-11 20:44:18 +01:00
Torbjörn Andersson d46e4e1aa0 SCUMM: Don't update the Mac GUI during graphical transitions
Perhaps this will finally fix the screen corruption bug I've been seeing
occasionally in Mac Indy 3? That seemed to happen because the screen was
changing while the game was paused, after the Window manager had made a
copy of the current screen.
2024-03-10 23:12:25 +01:00
athrxx bc9e394911 SCUMM: (MI1/Mac) - re-enable new player
(forgot to remove some lines in last commit)
2024-03-07 22:37:03 +01:00
athrxx 78433d5085 SCUMM: (MI1/Mac) - extend new sound player to support MI1 2024-03-07 22:30:18 +01:00
Torbjörn Andersson 3a167d5926 SCUMM: Remove leftover MacFontManager
All access to the Mac font manager is now done through _macGui, and even
that doesn't have its own instance of it since it's part of the Mac
window manager.
2024-03-03 16:25:15 +01:00
athrxx c52bfe4f27 SCUMM: (Loom/Mac) - add music quality slider widget 2024-02-28 21:31:50 +01:00
athrxx aee2bf53bb SCUMM: (Loom/Mac) - add new sound player
This  should provide more accurate and feature complete
sound than the existing player (which is still there, just
disabled). I haven't implemented a proper quality selection
method yet.
2024-02-28 21:01:41 +01:00
athrxx c774054a4a SCUMM: (V3/Mac) - restructure sound code
(preliminary reorganization to make support for other new players easier,
e. g. Loom or MI1)
2024-02-28 21:01:00 +01:00
athrxx 7d48995d44 SCUMM: (INDY3/MAC) - add launcher option for lq music
(just attaching the alread existing option)
2024-02-09 20:54:52 +01:00
Torbjörn Andersson 24863f1496 SCUMM: Simplify startManiac() a little
Instead of using matchString(), simply check the baseName() of the game.
This is a bit more strict than before, but matches the documentation so
that should be ok.
2024-02-03 17:33:43 +01:00
athrxx 439b8dcbd2 SCUMM: (INDY3/MAC): save/load sound state 2024-01-31 19:34:43 +01:00
athrxx bb75c87df4 SCUMM: (INDY3/MAC) - add dedicated sound player
(no support for low quality music yet)
2024-01-28 16:59:26 +01:00
Le Philousophe 17f09bb48c SCUMM: Migrate engine to Path 2023-12-24 13:19:25 +01:00
Torbjörn Andersson c7ab59293f SCUMM: Split MacGui into MacGui and MacGuiImpl
The idea here is to expose a much smaller part of the MacGui headers to
the SCUMM engine, but introducing a new class that simply relays calls
to the actual Mac GUI. I hope this will allow me to further untangle
things.
2023-12-22 15:09:06 +01:00
Torbjörn Andersson fb2bd1166d SCUMM: Split up gfx_mac.cpp into new macgui directory
The Mac GUI code is getting unwieldy, and this is an attempt at breaking
it up into more manageable chunks.
2023-12-22 15:09:06 +01:00
Torbjörn Andersson 57ebb11619 SCUMM: Test that the Mac Indy 3 / Loom executable has a resource fork
This was prompted by bug #14753, but is not a fix for it.
2023-12-20 18:52:29 +01:00
AndywinXp 152ebfab72 SCUMM: INDY3: Fix Steam Mac version being detected as an actual Mac version 2023-12-10 12:55:12 +01:00
AndywinXp bd22763cdc SCUMM: MACGUI: Implement correct video size for Mac v3 games
This commit brings games to 640x480 (from 640x400).
All old savegames are compatible and are brought up to date in
real time.
2023-12-03 21:03:59 +01:00
Torbjörn Andersson 956f24294b SCUMM: Remove redundant checks, pointed out by sluicebox 2023-11-23 08:44:45 +01:00
Torbjörn Andersson 2935f247c3 SCUMM: Add Mac GUI slider widget
This is the first, and so far only, widget that doesn't correspond
directly to a single dialog item. Instead, it combines two picture
widgets (which are made invisible to keep them out of the way), neatly
solving my problem with keeping track of the background under the slider
handle.

Also rewrote the Mac dialog event loop for better accuracy (it is now
possible to click and hold down the mouse over a widget, move the mouse
out of it, and then move it back it again), and - hopefully - improved
flexibility.

Plus some other minor cleanups along the way.
2023-11-18 18:47:39 +01:00
Torbjörn Andersson 38942ff719 SCUMM: Move Mac Loom's practice box drawing into MacLoomGui
Also, make the box draggable like in the original. As an enhancement,
allow the box to be dragged to any X coordinate, not just ones on
16-pixel boundaries. The original allowed you to drag it all the way to
the top of the game area, but this interfers with the auto-appearing
menu so don't allow that.
2023-11-18 18:47:39 +01:00
Torbjörn Andersson 5f51200454 SCUMM: Move Indy 3 Mac text box drawing into MacIndy3Gui 2023-11-18 18:47:39 +01:00
Torbjörn Andersson 89bd9e7a22 SCUMM: More Mac GUI cleanups and experimenting 2023-11-18 18:47:39 +01:00
Torbjörn Andersson 3a7593a8c7 SCUMM: Mac GUI restructuring
My goal right now is to move all font drawing that isn't explicitly
handled by scripts into the Mac GUI. The Indy 3 speech boxes will
probably be moved into the Mac GUI as well, since they're a bit special.
This means the charset class will only have to keep track of the game
font, which will remove some odd special cases.
2023-11-18 18:47:39 +01:00
Torbjörn Andersson ec1ab82283 SCUMM: Initial work on a common MacGui class that handles Mac menus etc.
This will be used for Last Crusade and Loom. Loom is currently the more
broken of the two, though.
2023-11-18 18:47:39 +01:00
AndywinXp 003be954ea SCUMM: INDY4 (DOS/Mac Jap): Fix verb text height, kerning and banner text positioning 2023-11-12 14:39:46 +01:00
Eugene Sandulenko 319dcd9a89 SCUMM: Fix crash on engine startup
If we show the "Audio files compressed with ScummVM Tools were detected"
message, we are in the middle of initialization. If a user tries to
launch the GMM while the message is still on, it will lead to a crash.
2023-11-12 01:33:39 +01:00
AndywinXp 73988683f2 SCUMM: INDY4 (DOS/Mac Jap): Implement accurate character shading
This is taken from disasm.
2023-11-10 16:34:33 +01:00
AndywinXp 8461f25218 SCUMM: Rename enhancementClassActive to enhancementEnabled 2023-11-08 11:46:06 +01:00
AndywinXp c6872cdbbf SCUMM: Clean-up for enhancement groupings 2023-11-08 11:46:06 +01:00
AndywinXp 13fb771bf3 SCUMM: Convert enable_enhancements to new flags 2023-11-08 11:46:06 +01:00
AndywinXp d5fa7aeb90 SCUMM: Mark all enhancements with their respective classes 2023-11-08 11:46:06 +01:00