- Allow more than one script work at once
- Proper implementation of address methods
some opcodes may be broken - cause work in progress
todo: rewrite opcodes with new address functionality
svn-id: r16604
- all display information of current game goes to SagaEngine
- remove GameFontIds
- hide SagaEngine _gameId,_gameType & etc with methods getGameId(), getGameType()
svn-id: r16545
- added some script functions (swapactors...)
- many things were renamed according scummvm covention
- resource id definintions should begin with "RID_" prefix
- intro temporary broken - work in progress
todo:
- walking hanling also should be rewriten
- timings for speech and actor cycling should be more accurate
svn-id: r16263
o Normalize GIDs and GTypes
o Introduce MD5-based game detection. Now only 2 games should be ordered.
Linux demo should go before Win32 newer demo
o Fix sound in Mac versions
svn-id: r16262
1) there are three types of speech: one acor, multiple actor, non actor
2) slow speech implemented
3) uses native engine flags (async,noanimate...) instead of semaphores
- proper timings implemented
svn-id: r16237
o Endianness-aware resource loading
o Removed ys_dl_list in favor of our object implementation
o Cleanup in actor code
o Partial support for ITE Mac rereleased demo
svn-id: r16051
console.
Some things are likely to have broken. For instance, I believe the old
console was could be visible during gameplay, while ScummVM's is modal. So
any place where we output something to the console during gameplay should
probably be removed.
Some things I've stubbed out. Basically any code that registers a variable.
Most of the debugging commands are untested.
Syntax may have changed because of different command-line parsing. (I never
actually used the old console, so I don't know for sure. :-)
Actually, I'm not that interested in reproducing the old console commands
faithfully. What we should do now is to make the immediately useful console
stuff work. Anything that remains unimplemented should probably be removed.
svn-id: r15976
* The length of a script data buffer is measured in words, not bytes.
* In the long run, I'm sure it'll work better if the data buffers do not
point to recently freed data.
svn-id: r15640
numerous animation glitches, it's looking almost like the real thing now.
It's no longer possible to walk away during the intro. This should provide
a great incentive to implement the "Escape" feature. ;-)
svn-id: r15626
to fix the script "static" area, though.
In addition, initialise a few variables, and test for NULL-ness of a few
pointers. This fixes a few crashes I saw with yesterday's CVS snapshot.
There's still an unexpected scene change in the intro (I think it triggers
on Rhene walking too close to the exit), but at least it no longer crashes.
svn-id: r15484
* The frame pointer is updated. This won't make any difference since we
don't actually *use* the frame pointer yet.
* Return values from script functions are handled like in the original now,
i.e. the function sets thread->retVal and lets the call instruction push
it onto the stack. (There are two call instructions, one that handles
return values and one that doesn't, so the script function doesn't know
if it should push or not.)
* Script return values are handled.
None of this makes any noticeable difference to the ITE intro.
svn-id: r15393
it appears that scripts are allowed to access the stack like any other
memory area, so it's probably important that our stacks behave as closely
to the original as possible.
I don't know if this implementation does that yet, but it's a start.
svn-id: r15240
as exciting as it first sounds, because even before this patch the script
would run in its entirety - it just didn't know when to stop.
I guess the exciting things don't happen until the next script is triggered
(TorneyScene?). I think it will be easier to start fixing the numerous
deficiencies (stack handling, SData, missing script functions, etc.) when
we have something more concrete to work with.
svn-id: r15215