Commit Graph
172 Commits
Author SHA1 Message Date
Matthew Hoops 4c0af01d6a SCI: Disable the special QFG1 Mac icon bar
The original interpreter completely ignores it in favor of the regular one.

svn-id: r55748
2011-02-03 02:26:57 +00:00
Lars Skovlund 4818b2ae08 SCI: Add comment for GK1 workaround.
svn-id: r55391
2011-01-21 19:56:23 +00:00
Lars Skovlund 74f8462a7b SCI: Fix GK1 breaking into the debugger when watching the intro
svn-id: r55386
2011-01-21 19:33:36 +00:00
Lars Skovlund 0e33dd9164 SCI: Partial robot support, currently disabled since it does not run
asynchronously as it should.

svn-id: r55382
2011-01-21 18:53:35 +00:00
Filippos Karapetis 1796e7afdd SCI2.1: Kernel function changes (after looking through all of the SCI2.1 games)
- Replaced the stub kWinDLL (unused), as well as the not fully implemented kPrintDebug
functions with empty function calls
- Marked several unused or debug kernel functions as stub
- Added some games where the rest of the unimplemented SCI2.1 kernel functions are used

svn-id: r55138
2011-01-07 00:12:18 +00:00
Filippos Karapetis 32d7e687ee SCI: debugC calls no longer require a debug level of 2 to show output
svn-id: r55086
2011-01-01 12:48:12 +00:00
Filippos Karapetis 0b5f6d4c97 SCI: Fixed bug #3034471 - "SCI, Castlebrain/Amiga: Invisible text in word search"
Fixed some endianness issues in Amiga versions, thanks to wjp. Amiga
versions expect a BE VM, thus we adjust accordingly in the places
where memory is accessed directly (i.e. kStrAt, kMemory and all places
that set/get characters from memory)

svn-id: r54521
2010-11-28 14:57:56 +00:00
Filippos Karapetis b2ba35124c SCI: Fixed timer bug #3109139 - "SQ4: Crash after exiting Skate-o-Rama during chase"
svn-id: r54391
2010-11-20 00:52:05 +00:00
Willem Jan Palenstijn a24d5ba2f4 SCI: Only compile kGetConfig for SCI32
svn-id: r54382
2010-11-19 14:19:02 +00:00
Lars Persson 3c7f9aa34a SCI : data field is only supported if building for SCI32
svn-id: r54379
2010-11-19 13:56:11 +00:00
Lars Skovlund fbf5a453c7 SCI: Implement the GetConfig call for LSL7
svn-id: r54369
2010-11-19 12:46:36 +00:00
Max Horn ba3e826872 SCI: Remove any use of printf
svn-id: r54037
2010-11-02 09:49:47 +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
Filippos Karapetis dca3c8d8bf SCI: Play time related changes
- Added support for savegame play time
- Removed obsolete variables for calculating the play time (EngineState::gameStartTime and Console::_enterTime)
- Renamed some variables to camelCase

svn-id: r53974
2010-10-31 01:45:24 +00:00
Martin Kiewitz ae6aa8a6b3 SCI: always allocate +1 byte in kMemory now
fixes multilingual lsl5 room 280 - names of airport ladies not shown correctly (bug #3093818)

svn-id: r53746
2010-10-23 20:22:24 +00:00
Willem Jan Palenstijn 28ade1826a SCI: Support kGetTime modes 2 and 3 in SCI 0_LATE
This fixes bug #3083879 in Iceman.

svn-id: r53077
2010-10-08 18:33:54 +00:00
Filippos Karapetis 746a1c5614 SCI: Kernel table changes
- Added the kernel names for all unimplemented kernel debug functions, and mapped
them all to kDummy, so that the kernel tables are correct and all kernel
functions are mapped (useful for debugging)
- Added a stub for kWinHelp (normally opens an external Windows help file), with
an appropriate dialog
- Added a stub for kWinDLL, which currently errors out on purpose (this needs to
be investigated, as it loads and uses external Windows DLLs)
- Readded kListIndexOf in kList (the signature was wrong when the previous commit
was made)

svn-id: r52660
2010-09-09 15:09:26 +00:00
Martin Kiewitz 14e7ba5d91 SCI: kMemory issue in pq3 only for multilingual
adjusted comment accordingly

svn-id: r51702
2010-08-03 16:03:22 +00:00
Martin Kiewitz 4c7a6ac2d5 SCI: adding workaround for pq3 inside kMemory
fixing plot crimes warnings and bad text on screen

svn-id: r51693
2010-08-03 13:17:30 +00:00
Filippos Karapetis 9699f8291d SCI: Ignoring non-critical script bug in QFG1VGA, when closing any conversation dialog with esc (doesn't affect gameplay in any manner)
svn-id: r51572
2010-08-01 11:10:14 +00:00
Martin Kiewitz 7f3ce51031 SCI: little cleanup
svn-id: r51539
2010-07-31 14:29:22 +00:00
Martin Kiewitz 2d76fe0092 SCI: kGameIsRestarting returns 2 when we restored
fixes castle of dr. brain save issue in puzzle room, fixes island of dr. brain save issue when saving in first room

svn-id: r51538
2010-07-31 14:09:42 +00:00
Martin Kiewitz 685c124a8e SCI: speed throttler cleanup and iceman comment
svn-id: r51518
2010-07-30 21:29:45 +00:00
Filippos Karapetis 2ed45d3719 SCI: Moved all the static kernel-related tables in a separate file. Also, moved kStub, kStubNull and kDummy inside kmisc.cpp, together with the other misc kernel calls
svn-id: r51089
2010-07-21 14:50:31 +00:00
Max Horn 1d3a0f6dec SCI: Turn global object g_debugState into SciEngine member var
svn-id: r50836
2010-07-12 23:20:33 +00:00
Martin Kiewitz df6ead5f93 SCI: calling speed throttler as well from kPalette(setIntensity) if needed - fixes kq6 intro
svn-id: r50794
2010-07-10 22:27:28 +00:00
Max Horn 8ae9774a00 SCI: Turn more warnings into errors.
If one of these is triggered for you, you can add an exception to
the error, together with a comment explaining why this exception
is necessary. Ideally after verifying that the cause is a script
bug and not a bug in our code...

svn-id: r50442
2010-06-28 12:29:06 +00:00
Max Horn 6ee82a2027 SCI: Introduce SciGameId enum
svn-id: r50273
2010-06-25 16:16:29 +00:00
Filippos Karapetis 6d1f2d1d26 Fixed memory fragmentation warnings in Crazy Nick's games
svn-id: r50188
2010-06-23 17:30:18 +00:00
Max Horn bb528d894c SCI: Rewrap some overlong comments
svn-id: r50012
2010-06-18 09:37:06 +00:00
Max Horn 359be0c066 SCI: Change SciEngine's 'char *getGameID()' to 'Common::String getGameId()'
svn-id: r49968
2010-06-17 23:14:34 +00:00
Max Horn 8e07a1e167 SCI: Moved the event code a little bit around.
* Move sleep() from EventManager to SciEngine
* Rename EventManager methods: get -> getSciEvent, and
  getFromScummVM -> getScummVMEvent
* Make scancode_rows static const
* Turn altify & numlockify from EventManager methods into static
  functions (and comment out the currently unused numlockify)

svn-id: r49959
2010-06-17 23:10:37 +00:00
Martin Kiewitz b25aba1d1e SCI: SciGui/SciGui32 gone for good...
svn-id: r49860
2010-06-15 15:44:24 +00:00
Filippos Karapetis 377cfe6fef Added a new kernel function, kEmpty, for really empty (not dummy, i.e. unimplemented) functions
svn-id: r49591
2010-06-11 07:47:57 +00:00
Filippos Karapetis 711f679b7f camelCase changes
svn-id: r49570
2010-06-10 11:43:20 +00:00
Willem Jan Palenstijn 95b080f60b Fix compile errors
svn-id: r49535
2010-06-09 08:49:37 +00:00
Filippos Karapetis 9304b5fbeb Merged the restarting_flags, script_abort_flag, and restoring members of the EngineState class into one variable, abortScriptProcessing. The flag kept to signify a game restart has been placed in a boolean, gameWasRestarted
svn-id: r49518
2010-06-08 21:05:46 +00:00
Filippos Karapetis 3c82b6578f Now that EngineState is not deleted when loading games, we can move some more state-related variables to it, and remove several FIXME's about non-const global variables. Also, the entries in the data stack are now deleted when loading (fixes a memory leak - thanks to digitall for this).
svn-id: r49465
2010-06-06 23:00:33 +00:00
Filippos Karapetis 5d21ff280a Silenced some superfluous warnings in KQ5CD
svn-id: r49294
2010-05-28 16:47:30 +00:00
Martin Kiewitz 830d17ed31 SCI: renaming MacIconBar to GfxMacIconBar
svn-id: r49202
2010-05-24 21:47:06 +00:00
Matthew Hoops d49fb8f42d Add support for showing the icon bar in SCI1.1 Mac.
svn-id: r49196
2010-05-24 17:21:11 +00:00
Filippos Karapetis 7cd9a23c0d Remove the unused SCI_GAME_WAS_RESTARTED_AT_LEAST_ONCE flag
svn-id: r49161
2010-05-23 17:03:16 +00:00
Filippos Karapetis 9be4f6250c Made shrink_execution_stack() a member of EngineState
svn-id: r49159
2010-05-23 16:44:36 +00:00
Filippos Karapetis c874ff15a8 Cleaned up the game ID code:
- The game ID is now obtained from ScummVM ID directly, not by converting Sierra's internal ID
- Moved the code which reads the internal Sierra ID inside the resource manager
- Moved the code which converts the internal Sierra ID to ScummVM's IDs together with the rest of the detection code

svn-id: r49152
2010-05-23 10:28:03 +00:00
Matthew Hoops 3dda73d9a2 Add initial support for KQ6 Mac. Wrapper functions for read/writing to pointers are now used (found in util.*) for code that has different endianness in SCI1.1+ Mac games. Add support for Mac 'snd ' and 'CURS' resources. QFG1 Mac is not yet playable due to script compression.
svn-id: r49070
2010-05-18 04:17:58 +00:00
Martin Kiewitz 4119fdb9a9 SCI: adding speed throttler special case for iceman / submarine control room
svn-id: r49056
2010-05-17 09:32:16 +00:00
Max Horn 2e68de1e5a SCI: Turn kernel_sleep() into SciEvent::sleep()
svn-id: r48119
2010-02-23 22:47:53 +00:00
Max Horn ac4d325e0d SCI: Add global g_sci pointer to the active SciEngine instance
svn-id: r48046
2010-02-13 17:42:49 +00:00
Walter van Niftrik 1e67b56eee SCI: Revert r47925 and put fix inside GC instead.
svn-id: r47940
2010-02-06 19:41:55 +00:00
Walter van Niftrik 38b0a148e6 SCI: Don't call garbage collector directly from kFlushResources() as this is no longer safe.
svn-id: r47925
2010-02-06 04:13:00 +00:00