Matthew Hoops
d883b6215f
Detect whether to use the modified SCI2 or SCI2.1 kernel table based on the kDoSound call used in Sound::play(), which fixes at least my version of KQ7 - probably others. The kernel table initialization now occurs after the script signatures are adjusted as we need it adjusted before checking through Sound::play for the kDoSound call.
...
svn-id: r47645
2010-01-28 18:57:31 +00:00
Filippos Karapetis
0f76902068
Mention that the signature of kUnload has been set like this because of the SQ1 bug
...
svn-id: r47569
2010-01-26 15:39:23 +00:00
Johannes Schickel
aed02365ec
Strip trailing spaces/tabs.
...
svn-id: r47541
2010-01-25 01:39:44 +00:00
Filippos Karapetis
dcbcb41855
kSetSynonyms is really parser related, but it's an empty function in games without a parser
...
svn-id: r47484
2010-01-23 20:27:14 +00:00
Filippos Karapetis
c4d02f5784
Updated kernel function check for kGetEvent in Mac versions and adjusted the comments for kGetSaveDir
...
svn-id: r47307
2010-01-15 15:30:40 +00:00
Martin Kiewitz
7db58ae29e
SCI: fix kernel signature for kDrawCel (fixes island of dr. brain), added debugging output for kernel_matches_signature
...
svn-id: r47288
2010-01-13 11:14:04 +00:00
Johannes Schickel
3578f8d091
Fix some memory leaks caused by never freeing the allocated memory, which is pointed at by KernelFuncWithSignature::signature.
...
svn-id: r47275
2010-01-12 20:19:45 +00:00
Filippos Karapetis
61e792319d
Don't update the screen twice while waiting
...
svn-id: r47254
2010-01-11 16:33:00 +00:00
Martin Kiewitz
7f358e3bbd
SCI: changed kernel signature for kDrawCel, enabled upscaled hires savebox code ("crashed" before because afterwards kDrawCel will get the handle from the savebox call)
...
svn-id: r47121
2010-01-07 15:25:03 +00:00
Filippos Karapetis
d99aa0f126
More renaming
...
svn-id: r47009
2010-01-05 01:37:57 +00:00
Matthew Hoops
986a75b7ee
Implement kInPolygon for SCI32. GK1 now responds when you click on things.
...
svn-id: r46918
2010-01-03 05:29:30 +00:00
Matthew Hoops
92a8d1360a
kLocalToGlobal has a 'Plane' variant in SCI32 like its kGlobalToLocal sibling. The restore menu is now slightly navigatable.
...
svn-id: r46790
2009-12-31 05:30:25 +00:00
Matthew Hoops
5382aa1ab0
SCI32:
...
- Set signature for Array/String
- Add the kernel table differences for the GK2 demo
- Implement kMessage changes in SCI32
- Use an empty string as the default path for all games now (and modify kValidPath to accept that only as valid)
- Add dereferencing for Arrays
svn-id: r46756
2009-12-30 16:00:56 +00:00
Filippos Karapetis
17454ee80f
Initial implementation of the SCI21 kList kernel function (which calls all the other list-related functions), thanks to the help of waltervn
...
svn-id: r46744
2009-12-30 14:31:00 +00:00
Filippos Karapetis
d8b67ed7c6
SCI32: Moved all the list related kernel functions inside klists.cpp, and implemented kListAllTrue with the help of waltervn
...
svn-id: r46742
2009-12-30 14:00:30 +00:00
Filippos Karapetis
bbc52c13ab
Implemented ListFirstTrue(), thanks to the help of waltervn. Now, buttons can be highlighted and clicked when the control panel is shown in GK1, and the options dialog pops up when the options button is selected
...
svn-id: r46741
2009-12-30 13:43:17 +00:00
Filippos Karapetis
0e63912970
SCI32: added some of clone2727's changes to kArray and kString, and implemented kListIndexOf
...
svn-id: r46739
2009-12-30 12:55:24 +00:00
Filippos Karapetis
fabe51c129
Renamed gameName -> gameId, to keep the same vocabulary everywhere
...
svn-id: r46635
2009-12-27 12:54:03 +00:00
Filippos Karapetis
8851663363
Turned some unimplemented debug related kernel functions into dummy functions
...
svn-id: r46613
2009-12-27 02:57:03 +00:00
Filippos Karapetis
b2c170168e
SCI2: Implemented kListEachElementDo (a more advanced version of SciGuiAnimate:invoke()) and kListAt. Now, the Sierra logo music can be heard, and game logic is running on objects of the animated views list
...
svn-id: r46591
2009-12-26 15:47:57 +00:00
Filippos Karapetis
4f02900890
Kernel function 0x26 is empty in SCI1.1 games, and it has been set to kPortrait in KQ6CD only
...
svn-id: r46585
2009-12-26 13:53:59 +00:00
Matthew Hoops
996da19fc9
Stub SCI32's kOnMe to give better debugging info (used when clicking in the GK1 menu).
...
svn-id: r46533
2009-12-24 18:37:35 +00:00
Filippos Karapetis
9072b0c26e
SCI32: Added some more stubs for picture manipulation, screen update and animation functions
...
svn-id: r46529
2009-12-24 15:02:06 +00:00
Filippos Karapetis
69fa167902
SCI32: The view related functions pass a view object as parameter, and the engine should deduce the parameters it needs from that object. Added stub view functions based on that fact. Also, added a sanity check in kCelHigh and kCelWide
...
svn-id: r46527
2009-12-24 13:50:50 +00:00
Matthew Hoops
65dcc0b2a3
SCI32:
...
- Fix dup for kArray/kString
- Implement kFileIO::rename (SCI1.1)
- Implement part of the SCI32 additions to kFileIO
- Implement the GetSaveDir part of kSave (SCI2.1)
- Torin (SCI2.1!) now shows signs of life -- it will create the torin.prf file with correct data!
svn-id: r46521
2009-12-24 02:43:07 +00:00
Matthew Hoops
ef79d7f017
SCI32:
...
- Fully implement kArray and kIsHiRes and mostly implement kString (printf and atoi subfunctions still missing).
- Add a dummy SciGui class for SCI32 to bypass the views. Gabriel Knight 1 will now play the Sierra logo music and the main menu music.
- Some other minor SCI32 changes.
svn-id: r46462
2009-12-21 14:32:54 +00:00
Martin Kiewitz
d982d10505
SCI: Make event constants more verbose
...
svn-id: r46255
2009-12-04 17:58:26 +00:00
Martin Kiewitz
a5f1808c83
SCI: SciEvent created, kernel_sleep() created
...
svn-id: r46252
2009-12-04 17:38:24 +00:00
Filippos Karapetis
86cafd561f
Some work on the kPortrait kernel function, used to show hires character portraits in the Windows CD version of KQ6
...
svn-id: r45552
2009-10-30 22:55:35 +00:00
Filippos Karapetis
394fc76719
Rewrote kBaseSetter() to use new graphics functions and behave like the original, and fixed a bug in the process (the previous code ignored z when calculating the height)
...
svn-id: r45463
2009-10-28 14:23:23 +00:00
Filippos Karapetis
04ab6bc9fc
Enclose all of the old graphics code within the INCLUDE_OLDGFX safeguard (defined in sci.h)
...
svn-id: r45459
2009-10-28 13:20:30 +00:00
Filippos Karapetis
b105d690e3
- Removed kShow() and the related code it uses - it's a debugging function, and we have the same functionality in the debug console
...
- Merged the view signal flags from kernel.h and gui_animate.h, and named them appropriately. Also, updated the notes next to them, cause some were incorrectly marked as not used in our engine
- Added a note about a hack used in the old GUI in the view signal flags
- Moved the control state flags inside gui_helpers.h
svn-id: r45310
2009-10-21 19:19:03 +00:00
Martin Kiewitz
361977e7ed
SCI/newgui: kPalette cleanup, preparing for sq5 paletteAnimate support
...
svn-id: r45273
2009-10-20 16:11:31 +00:00
Filippos Karapetis
f5b7f85593
Removed unused references to operations.h
...
svn-id: r45217
2009-10-18 10:50:07 +00:00
Martin Kiewitz
942dc2ce84
SCI: included stub for kPalVary to make Pharkas work a little bit more (currently crashes in kMessage)
...
svn-id: r45102
2009-10-15 06:37:05 +00:00
Martin Kiewitz
3599ac0b9b
SCI: now allowing calling celWide and celHigh with only 2 parameters (done by eco quest 1 when entering menu)
...
svn-id: r44986
2009-10-12 13:10:25 +00:00
Filippos Karapetis
bb7cac5b87
Show a warning when a selector vocabulary can't be found and a static vocabulary is used
...
svn-id: r44950
2009-10-11 21:28:52 +00:00
Walter van Niftrik
6f553a630a
SCI: Relax GetAngle() signature for KQ6.
...
svn-id: r44928
2009-10-11 15:32:22 +00:00
Walter van Niftrik
4a157d43b3
SCI: Implement CoordPri() with two args.
...
svn-id: r44927
2009-10-11 14:58:58 +00:00
Walter van Niftrik
6c1cac3956
SCI: kMessage() rewrite
...
svn-id: r44860
2009-10-10 02:16:23 +00:00
Filippos Karapetis
bcade54247
Started rewriting the check for the graphics functions type (still not finished)
...
svn-id: r44787
2009-10-08 14:37:55 +00:00
Willem Jan Palenstijn
b9cdb1abb7
SCI: Merge new GUI code written by m_kiewitz.
...
This is a major rewrite of the graphics code. A slightly adapted
version of the old code is still available and currently the default.
The new code is selectable in sci.cpp, but is not yet finished.
svn-id: r44565
2009-10-03 20:49:18 +00:00
Max Horn
523f0b34fb
SCI: Remove dead code
...
svn-id: r44530
2009-10-02 07:44:55 +00:00
Filippos Karapetis
7d40dde96f
- Removed the toggle for "weak" validations, as there are cases where they fail (e.g. in Longbow), so there is no point in having strict validations
...
- Removed the invalid toggle from kernel signatures - we now never error out on invalid object references, but throw a warning instead
- Simplified determine_reg_type()
svn-id: r44511
2009-10-01 10:57:59 +00:00
Filippos Karapetis
2c2cf614c8
Oops - don't attempt to print the sought kernel function name when its empty
...
svn-id: r44462
2009-09-29 14:28:37 +00:00
Filippos Karapetis
f9296a6445
- Changed the unimplemented debug SCI kernel functions (InspectObj, ShowSends, ShowObjs, ShowFree, StackUsage and Profiler) to be dummy functions - we have our own debugger, and don't use these functions for debugging
...
- Removed the function number parameter from all kernel functions, as it's no longer needed, and removed the FAKE_FUNCT_NR hack
- Removed kUnknown() and kStub()
- Dummy/unknown kernel functions are no longer invoked, and a warning is shown instead, with the paremeters passed to them
Note: there is an evil hack used for debugging scripts in invoke_selector(), which probably no longer works now
svn-id: r44461
2009-09-29 14:24:07 +00:00
Filippos Karapetis
13ad217cdd
- Moved the SCI version in a global variable
...
- Changed all the SCI version checks to use getSciVersion()
- Also made getSciVersionDesc a global function (removes some ugly accessing of the SCI engine)
The fallback detector should work correctly now
svn-id: r44269
2009-09-23 10:55:35 +00:00
Max Horn
d2a6713a8e
SCI: Replace IntMapper Script::_objIndices and Common::Array Script::_objects by a HashMap -- goodbye, class IntMapper
...
svn-id: r44240
2009-09-21 21:38:43 +00:00
Max Horn
7f728af76e
SCI: Workaround for crash in debugger's backtrace
...
svn-id: r44239
2009-09-21 21:38:07 +00:00
Max Horn
eb77efda78
SCI: Add a global getSciVersion() function and make use of it
...
svn-id: r44170
2009-09-17 16:50:53 +00:00