Commit Graph
319 Commits
Author SHA1 Message Date
Julien Templier 8664535029 LASTEXPRESS: Protect sound queue accesses with mutex
Sound entries were being streamed before the data was fully loaded
and queue addition/removal could happen while the sound timer was
going through the queue (reported by digitall).

svn-id: r54241
2010-11-15 12:48:54 +00:00
Max Horn bc09acfef1 LASTEXPRESS: Silence potential warnings about extra semicolons
svn-id: r54207
2010-11-11 18:22:55 +00:00
Johannes Schickel cc84c2dcfb LASTEXPRESS: Remove superflous if check in SAFE_DELETE.
svn-id: r54203
2010-11-11 16:44:28 +00:00
Julien Templier 521f228ced LASTEXPRESS: Use SAFE_DELETE for class variables
svn-id: r54201
2010-11-11 14:19:44 +00:00
Julien Templier 6711c5a8cf LASTEXPRESS: Fix more memory leaks
- Missing deallocation of queued frames in SceneManager
 - Leaking functor on each call to entity setup functions
 - Add SoundEntry destructor & better Entity cleanup

as reported by digitall

svn-id: r54196
2010-11-11 06:18:23 +00:00
Julien Templier 3b66e53bbe LASTEXPRESS: Fix some memory leaks
- Reading past the end of file in SaveLoad::init
 - Missing deallocation of cache in SoundManager
 - Missing deallocation of coords in SceneHotspot
 - Missing deallocation of event handlers in LastExpressEngine::setEventHandlers
 - Missing deallocation of InSaveFile in SaveLoad::isSavegameValid
 - Missing deallocation of frames in Menu

as reported by digitall

svn-id: r54193
2010-11-11 03:25:35 +00:00
Max Horn 4d3a07b494 COMMON: Rename and tweak MD5 functions
* names now comply to our naming conventions
* the function computeStreamMD5AsString which computes the MD5
  as a hex string now returns it as a Common::String
* add doxygen comments

svn-id: r54121
2010-11-07 17:16:59 +00:00
Max Horn a984fb17c2 GUI: Add GCC_PRINTF to GUI::Debugger::DebugPrintf & fix resulting warnings
svn-id: r54007
2010-11-01 16:03:35 +00:00
Max Horn e27b05ef35 COMMON: Rename String::printf() to String::format()
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.

The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.

svn-id: r54004
2010-11-01 16:02:28 +00:00
Max Horn 064bdebd55 LASTEXPRESS: Use const_iterator to iterate over a const array
svn-id: r53967
2010-10-30 22:44:57 +00:00
Torbjörn Andersson 4089b9fe2c JANITORIAL: Remove unnecessary semicolons
svn-id: r53889
2010-10-27 19:48:54 +00:00
Torbjörn Andersson 8dbe052ca2 LASTEXPRESS: Rename variable to silence GCC warning
svn-id: r53888
2010-10-27 19:43:35 +00:00
Julien Templier 5a336830a0 LASTEXPRESS: Use Common::Rational when adjusting menu clock
Also fix the wrong check that set the time directly to the target time

svn-id: r53885
2010-10-27 19:22:05 +00:00
Julien Templier 44ba44297d LASTEXPRESS: Hide menu elements after a game has been loaded
svn-id: r53884
2010-10-27 19:21:52 +00:00
Julien Templier cdfcaa4d48 LASTEXPRESS: Implement game loading (last save entry only)
svn-id: r53883
2010-10-27 19:20:20 +00:00
Julien Templier 5688a393b4 LASTEXPRESS: Do not try to show intro when loading a game
svn-id: r53882
2010-10-27 19:19:57 +00:00
Julien Templier d5e4ab6b20 LASTEXPRESS: Cleanup game saving
- Move loading of game stream to separate function
 - Add checks for NULL in functions using _savegame
 - Add expected saved size for sound & savepoints

svn-id: r53881
2010-10-27 19:19:38 +00:00
Julien Templier dba75791d9 LASTEXPRESS: Add some missing casts and const qualifiers
svn-id: r53880
2010-10-27 19:19:22 +00:00
Willem Jan Palenstijn d3523a6040 LASTEXPRESS: Read savegame in blocks instead of bytes
svn-id: r53854
2010-10-26 20:14:17 +00:00
Julien Templier 5323be5f84 LASTEXPRESS: Fix GCC warnings
svn-id: r53850
2010-10-26 12:49:32 +00:00
Julien Templier 8622ee1ef1 LASTEXPRESS: Turn dummy action error into a warning
svn-id: r53849
2010-10-26 12:11:06 +00:00
Julien Templier 0b5cc5b9ff LASTEXPRESS: Fix forward/backward in the menu
svn-id: r53848
2010-10-26 12:10:49 +00:00
Julien Templier 6bc59c0bb0 LASTEXPRESS: Implement loading of savegame entry headers
svn-id: r53847
2010-10-26 12:10:38 +00:00
Julien Templier bdbd0c1417 LASTEXPRESS: Do not delete Clock & TrainLine frames in clear() functions
svn-id: r53846
2010-10-26 12:09:38 +00:00
Julien Templier dc4a22ed7d LASTEXPRESS: More savegame work
- Implement SaveLoad::writeEntry
 - Implement missing saveLoadWithSerializer functions for all serialized classes & structs
 - Add stub for SaveLoad::computePadding

svn-id: r53845
2010-10-26 06:55:34 +00:00
Julien Templier fd8af7ba6e LASTEXPRESS: Make GameState::time of type TimeValue
svn-id: r53844
2010-10-26 06:55:17 +00:00
Torbjörn Andersson f663a736dd LASTEXPRESS: Silence GCC warning
svn-id: r53843
2010-10-26 05:19:24 +00:00
Julien Templier ae2c4b7cd2 LASTEXPRESS: Savegame support update
- Implement Menu::startGame() properly
 - Add stubs functions for game restart
 - Made savegame headers serializable and moved validity checks inside struct definition
 - Implement create/init savegame functions
 - Add SavegameStream to be able to read/write to the same memory stream
 - Add stubs for setup, writeEntry & loadEntry functions

svn-id: r53841
2010-10-26 00:41:42 +00:00
Julien Templier f370ba174a LASTEXPRESS: Add Date-time comments for US & FR Broderbund releases
svn-id: r53833
2010-10-25 22:14:53 +00:00
David Turner 816ef5708f LASTEXPRESS: Adding Date-Time Comments To UK Broderbund Detection Entry
As per Littleboy's request.

svn-id: r53784
2010-10-25 00:50:51 +00:00
Matthew Hoops 4f37c92602 LASTEXPRESS: Don't use NULL in arithmetic
svn-id: r53783
2010-10-25 00:16:38 +00:00
Julien Templier 859c1c2c08 LASTEXPRESS: Fix issues when copying debugger commands
- Properly free allocated memory in resetCommand()
 - Make sure _commandParams strings are null-terminated

svn-id: r53778
2010-10-24 22:15:36 +00:00
Julien Templier e4dc5336db LASTEXPRESS: Fix crash in subtitle handling
svn-id: r53777
2010-10-24 22:15:25 +00:00
Julien Templier f37252e6cf LASTEXPRESS: Change detection entries platform to kPlatformUnknown
All full versions of the game are multiplatform Dos/Win/Mac
and the demo is Dos/Win

svn-id: r53770
2010-10-24 19:10:13 +00:00
Julien Templier f812f88c10 LASTEXPRESS: Add new dump command to dump the list of files in the archives (with size & md5)
svn-id: r53749
2010-10-23 22:02:52 +00:00
Julien Templier 4e9cae8ca8 LASTEXPRESS: Output human readable time in the show game state debug command
svn-id: r53745
2010-10-23 20:07:06 +00:00
Max Horn 3534cff8ef ALL: Fix indention (whitespaces -> tabs)
svn-id: r53738
2010-10-23 15:46:50 +00:00
David Turner 3e657c1bf9 LASTEXPRESS: Add md5sums of UK Broderbund TLE.
svn-id: r53733
2010-10-23 14:37:26 +00:00
Julien Templier 3a90af96f5 LASTEXPRESS: Update namespace comment with latest engine status
svn-id: r53716
2010-10-22 22:06:59 +00:00
Julien Templier 90974937a3 LASTEXPRESS: Reorganize and enhance some debug commands
Add "time" command to convert between in-game and human-readable forms
Rename "dump" command to "show" and use named parameters instead of index
Add progress and flags options to show command

svn-id: r53715
2010-10-22 22:00:27 +00:00
Torbjörn Andersson 04cd1c1c11 LASTEXPRESS: Add some documentation for the kTime constants
svn-id: r53703
2010-10-22 18:09:49 +00:00
Julien Templier fed894aeee LASTEXPRESS: Add missing casts, fix warnings and correct typos
svn-id: r53694
2010-10-22 01:30:18 +00:00
Julien Templier 06d9de0a9b LASTEXPRESS: Fix GCC errors & warnings (missing stricmp & parentheses)
svn-id: r53693
2010-10-22 00:35:37 +00:00
Julien Templier a54783c414 LASTEXPRESS: Merge several TIME_CHECK* macros together
svn-id: r53692
2010-10-21 23:46:00 +00:00
Julien Templier 002557fbd2 LASTEXPRESS: Rename CURRENT_PARAMS to CURRENT_PARAM
svn-id: r53691
2010-10-21 23:44:59 +00:00
Julien Templier 4466e2a20d LASTEXPRESS: Simplify some entity callback code
svn-id: r53690
2010-10-21 23:44:27 +00:00
Julien Templier af36047c71 LASTEXPRESS: Rename LOBYTE macro
svn-id: r53689
2010-10-21 23:43:57 +00:00
Julien Templier 3abbcfd780 LASTEXPRESS: Implement remaining AI logic functions for MmeBoutarel
svn-id: r53688
2010-10-21 23:43:36 +00:00
Julien Templier a3d4181e00 LASTEXPRESS: Implement remaining AI logic functions for Coudert
svn-id: r53687
2010-10-21 23:43:04 +00:00
Julien Templier f22c915a91 LASTEXPRESS: Implement remaining AI logic functions for Anna
svn-id: r53686
2010-10-21 23:42:31 +00:00