Commit Graph
274 Commits
Author SHA1 Message Date
sluicebox 2e5c4da1dc AGI: Cleanup mouse config 2024-10-26 13:37:20 -07:00
antoniou79 5f525b1441 AGI: Make predictive dialog option disabled by default
Also make the predictive dialog option independent from the mouse support option.
2024-10-25 23:10:54 +03:00
antoniou79 cbd2d79430 AGI: Make predictive input dialogue on mouse click optional
This affects only showing the predictive input dialogue on mouse left click into an input field or prompt line
2024-10-25 23:10:54 +03:00
sluicebox 22a4111c57 AGI: Add Apple II speed controls, implement set.speed 2024-09-16 20:27:39 -07:00
sluicebox 919bc46dcb AGI: Add Apple II and CoCo3 sound generators 2024-08-31 17:36:08 +03:00
sluicebox 16d564d826 AGI: Map engine error codes to Common codes 2024-08-25 14:57:06 +03:00
sluicebox 1faf8628d0 AGI: Fix init error handling
Initialization errors were ignored, causing the launcher to behave as
if the engine ended normally.
2024-08-24 13:41:28 -07:00
sluicebox fe12daf665 AGI: Add Apple II loader and detection 2024-08-19 07:39:54 +03:00
sluicebox 4bba0c332e AGI: Cleanup AgiLoader initialization 2024-08-17 17:56:39 -07:00
sluicebox 22dc206476 AGI: Remove AgiLoader::loadResource implementations
All three implementations were the same
2024-08-17 17:56:39 -07:00
sluicebox fb35bc6aa9 AGI: Cleanup AgiLoader 2024-08-17 17:56:29 -07:00
sluicebox 6b50eadebf AGI: Remove "agi" prefix from AgiEngine method names 2024-08-17 17:56:29 -07:00
sluicebox 5761f2d768 AGI: Remove AgiLoader::unloadResource implementations
All three implementations were the same
2024-08-17 17:56:29 -07:00
sluicebox ada17669dc AGI: Misc init cleanup 2024-04-15 18:23:47 -07:00
sluicebox b04f59b464 AGI: Add Flag Quest version check workaround
Fixes bug #15060
2024-04-15 18:23:47 -07:00
sluicebox 2a66a9d8a7 AGI: Add bounds checking to strings
Fan games are known to use out of bounds string numbers
2024-04-15 18:23:47 -07:00
sluicebox c5995d64e7 AGI: Refactor away agiDetectGame 2024-03-21 07:37:27 -07:00
sluicebox f4201eeda8 AGI: More misc cleanup 2024-03-10 17:20:54 -06:00
sluicebox d6c220896e AGI: Misc cleaup 2024-03-09 09:07:59 -07:00
sluicebox c1248bb971 AGI: Remove unused StringData 2024-03-06 09:30:57 -07:00
Filippos Karapetis 8dcd4e27f4 AGI: Get rid of the older game flags
These are leftovers from Sarien, and are no longer needed
2024-01-27 03:27:27 +02:00
sluicebox c0433ab956 AGI: Remove unused unload code 2024-01-22 17:32:45 -07:00
Eugene Sandulenko edc170c63d AGI: Reduce header dependency 2023-02-23 14:39:10 +01:00
Daniel Abramowitz 65aba03517 AGI: Write log() Function to File
Now the log() function writes to a file, as
the AGI engine did.

It appears that ScummVM doesn't have any "append" functionality.
As a result, I made this implementation create a new file each time
a message is logged. Note that the file is only created if the
log() function is called. The file name includes the game name
and the current time, ensuring that logs won't be overwritten.

The format is: agi.<gameid>.<currentime>.log and will be logged to
the working directory.

Last week I first implemented the log() function. In that commit
I just had it log to the console. In this commit we start
writing to a file.
2022-10-16 21:52:21 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh f1f4657b10 AGI: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Eugene Sandulenko 070a9a53b1 AGI: Remove stray debug output 2021-08-17 19:29:17 +02:00
D G Turner a0326ecd1c AGI: Modify Volume to use ScummVM GUI as maximum range for Script Volume
This change simplifies the AGI engine volume handling by using the music
and sound fx volumes set in the ScummVM GUI as the maximum levels which
can be set by the scripts. This avoids the complexity of synchronising
changes between these and the scripts (which only had a single 16 step
volume range which is inverted in meaning by quite a large number of
fangames).

This still allows the game scripts to adjust the volumes, but only within
the maximum range set in the Launcher / GMM.

This avoids issues such as https://bugs.scummvm.org/ticket/10732 where
users complained about extremely loud output in some cases.
2021-07-15 14:43:30 +02:00
ysj1173886760 ff8d7f442a AGI: move debug channels to metaEngineDetection 2021-05-22 01:34:57 +02:00
sluicebox 93eeffc84d JANITORIAL: Update old bug tracker numbers 2021-03-03 02:15:05 +02:00
Cameron Cawley 438c2d8714 DS: Rewrite event handling 2021-02-04 01:59:14 +01:00
Zvika Haramaty 1c36be4d8a AGI: Apple2GS: Add Speed menu and commands 2020-07-25 00:36:43 +02:00
Paul Gilbert 128bd50051 AGI: Remove autosave code 2020-02-16 15:44:28 -08:00
Paul Gilbert f603a695af AGI: Refactor to use Engine debugger 2020-02-16 13:07:19 +02:00
Filippos Karapetis 5b7f11ded7 AGI: Cleanup game flags 2020-01-12 23:12:15 +02:00
D G Turner 95c0afa2c3 AGI: Fix Missing Default Switch Cases
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-14 03:54:10 +01:00
D G Turner 50c5177eb0 AGI: Fix Remaining GCC Compiler Warnings
These were the remaining memset on non-trivial structure warnings.
2019-08-25 07:27:21 +01:00
D G Turner 482f835ad6 AGI: Fix GCC Compiler Warnings from memset of Game State Structures
This fixes these, but adding constructors causes further memset usage
warnings on the structures which are now "non-trivial" due to the addition
of constructors. Should be able to fix by repeating this process to remove
further memset usage.
2019-08-25 05:55:54 +01:00
D G Turner 1a9fa34dc1 AGI: Fix some GCC Compilation Warnings
These were associated with memset() of Mouse structure which now has
a constructor method to do this instead.
2019-08-24 10:25:20 +01:00
D G Turner b3968ca39d AGI: Fix Several GCC Compiler Warnings 2019-05-08 00:42:03 +01:00
Colin Snover 0851a30769 AGI: Replace use of strdup with Common::String
It was also necessary to make sure that the Common::String objects
were initialised correctly by switching to use a C++ container
for engine objects instead of calloc, since they were no longer
C-compatible PODs.
2018-08-18 16:30:05 +02:00
Martin Kiewitz 9dd0cd51d5 AGI: Clean up VM opcode handling
so that invalid opcodes won't crash ScummVM anymore
2017-02-23 23:54:45 +01:00
Martin Kiewitz e64e388816 AGI: Hold-key-mode fix
Original AGI only created a stationary event, when the last
pressed direction key was released. We do that now as well.
Makes cursor in MH1 behave properly.
Thanks to waltervn for pointing this out.
2017-02-11 10:35:10 +01:00
Eugene Sandulenko afdbfe4d2f AGI: Reset all timers on startup 2016-05-07 10:25:09 +02:00
Ori Avtalion 3564032330 JANITORIAL: Reduce audio header dependencies 2016-04-14 16:10:21 +03:00
Martin Kiewitz 7a169c90f6 AGI: Hercules rendering for game screen 2016-02-28 11:23:31 +01:00
Martin Kiewitz e1c36a52b5 AGI: Add support for upscaling and Hercules hires font
- User option to force Hercules hires font for any rendering mode
- Also change mouse cursor hotspots from 1,1 to 0,0
- Fix inaccuracy in mouse controlled game menu
- Change render_Block(), drawBox(), drawDisplayRect() to use
  upper Y instead of lower Y. Original AGI uses lower Y, but
  upper Y makes upscaling way easier.
2016-02-27 21:44:21 +01:00
Martin Kiewitz 4ad1bbf108 AGI: Add detection for fan games with broken volume bug #7035
Plenty of fan games set volume to mute, because they thought 15
would be loudest. It's in fact "mute" in AGI. Those games were
made primarily for PC AGI, which did not use the volume setting.
We do, so such games would get muted audio. We try to detect
such games. Hopefully fully fixes bug #7035.
Too many games to try them all out.
2016-02-20 14:53:17 +01:00
Martin Kiewitz 327ba19d4a AGI: Comment about another artificial delay situation
Gold Rush, Stagecoach path, after solving steep hill
2016-02-19 16:24:58 +01:00
Martin Kiewitz 453a8ac11d AGI: Add artificial delay for GR stagecoach path 2016-02-19 15:28:34 +01:00