Age | Commit message (Collapse) | Author |
|
Thanks to salty-horse for the reports.
|
|
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
|
|
This matches the order in which workarounds are stored in workarounds.cpp
|
|
This fix for bug #3303802 is a potential cause of unreproducible bugs
in all SCI games that taint savegames.
This reverts commit 48140a012d69d76de5ae80de7ca926e71c39cd03.
|
|
These cases occur usually because of script bugs. Fixes script bug
#3303802 - "SCI: PQ1VGA - Crash at the jail"
|
|
|
|
|
|
Some backends may break as I only compiled SDL
|
|
|
|
|
|
|
|
|
|
- Removed the CallsStruct intermediate stack. Calls are inserted directly
in the execution stack
- Added a constructor for the ExecStack struct and removed
add_exec_stack_varselector() and add_exec_stack_entry()
|
|
|
|
|
|
- Placed all of the associated debug code in a separate function
- Unified debug output
|
|
|
|
|
|
When the ABORT_ON_INFINITE_LOOP define is defined in vm.cpp, the VM will now
abort in cases where a conditional statement is followed by an unconditional
jump (which will most likely lead to an infinite loop). Aids in detecting
infinite loop bugs such as #3040722.
|
|
|
|
This version only handles signed integers. The modulo operator was changed in
SCI0 late (Iceman, and perhaps all SCI0 0.000.685 and later) so that it handles
negative numbers as well. We need to see if there really is a need to keep two
different modulo operators (which will only be necessary if any SCI0 game asks
for the modulo of a negative number by mistake, or a number larger than 32767).
Thus, error out in such a case for SCI0, so that this can be investigated
properly
|
|
only place where it's used
|
|
This refactoring reduces a lot of code duplication, allows for better control,
makes the code more readable and allows us to remove a lot of now unneeded
workarounds
|
|
Removed validate_arithmetic(), signed_validate_arithmetic(), validate_unsignedInteger() and validate_signedInteger()
|
|
svn-id: r55250
|
|
readPMachineInstruction()
The handling has been moved inside readPMachineInstruction(), instead of run_vm(), as a
lot of parts of the code depend on this function handling all opcodes correctly (e.g. the
script dissassembler, the features class, find_callk etc)
svn-id: r55154
|
|
svn-id: r55086
|
|
- Obtain speech/subtitle options from the ScummVM GUI and set them in CD games.
- Also, set simultaneous speech and subtitles in games that support them
(currently SQ4 CD and Freddy Pharkas CD). There is no GUI option for setting
simultaneous speech and subtitles in Freddy Pharkas CD, so this is the only
current way of achieving this (unless the text speed slider inside the Freddy
Pharkas options window is repurposed - but that will require extensive changes)
svn-id: r55005
|
|
There was never pointer arithmetic support in SCI2 and newer games
svn-id: r54400
|
|
svn-id: r54376
|
|
svn-id: r54370
|
|
svn-id: r54365
|
|
svn-id: r54361
|
|
svn-id: r54347
|
|
svn-id: r54341
|
|
svn-id: r54327
|
|
svn-id: r54305
|
|
svn-id: r54303
|
|
svn-id: r54301
|
|
svn-id: r54296
|
|
- Updated detectLofsType() for SCI3
- Cleaned up op_lofsa and op_lofss and updated them for SCI3
svn-id: r54293
|
|
- Added a TODO for the usage of the -info- selector in kClone and kDisposeClone in
SCI3 scripts, as it's no longer used in SCI3
- Added information about which of the selectors are missing in SCI3. There are
some more which are missing, but aren't used in SCI2-SCI3 anyway
- Some styling
svn-id: r54291
|
|
svn-id: r54153
|
|
currently). Fixes bug #3038686.
(SCI Fanmade - Circus Quest: Crash when starting).
svn-id: r54150
|
|
svn-id: r54037
|
|
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
|
|
svn-id: r53047
|
|
we will fake 0 instead of error()ing out in official releases, when an uninitialized temp is read
is supposed to get backported
svn-id: r53046
|
|
export
svn-id: r52653
|
|
svn-id: r52498
|