mirror of
https://github.com/scummvm/scummvm.git
synced 2026-06-20 05:45:29 +00:00
This was introduced as an extra mechanism of patching game scripts. However, it's completely hardcoded with offsets for specific game versions, with no endianess handling. Furthermore, the only patch it's used for at the moment (input prompt for SQ3) has no visible changes. The SCI engine's script patcher has pattern matching functionality, which allows it to be used in a variety of game versions. Furthermore, it supports endianess handling for BE versions. Thus, it makes no sense to keep a separate and complex script patching functionality for a single patch that is hardcoded for a single game version with no actual change in functionality. Since this is a fan patch, all of these script changes can be added as part of the patch without any changes to the engine code. We've discussed this with @sluicebox and decided to remove all of this code, which should not have been part of the engine's codebase because it clashes with the existing script patcher
49 lines
1.8 KiB
C++
49 lines
1.8 KiB
C++
/* ScummVM - Graphic Adventure Engine
|
|
*
|
|
* ScummVM is the legal property of its developers, whose names
|
|
* are too numerous to list here. Please refer to the COPYRIGHT
|
|
* file distributed with this source distribution.
|
|
*
|
|
* This program is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU General Public License
|
|
* as published by the Free Software Foundation; either version 2
|
|
* of the License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*
|
|
*/
|
|
|
|
#ifndef SCI_ENGINE_SCRIPTDEBUG_H
|
|
#define SCI_ENGINE_SCRIPTDEBUG_H
|
|
|
|
namespace Sci {
|
|
|
|
#ifndef REDUCE_MEMORY_USAGE
|
|
extern const char *opcodeNames[];
|
|
#endif
|
|
|
|
void debugSelectorCall(reg_t send_obj, Selector selector, int argc, StackPtr argp, ObjVarRef &varp, reg_t funcp, SegManager *segMan, SelectorType selectorType);
|
|
|
|
void debugPropertyAccess(Object *obj, reg_t objp, unsigned int index, Selector selector, reg_t curValue, reg_t newValue, SegManager *segMan, BreakpointType breakpointType);
|
|
|
|
void logKernelCall(const KernelFunction *kernelCall, const KernelSubFunction *kernelSubCall, EngineState *s, int argc, reg_t *argv, reg_t result);
|
|
|
|
void logExportCall(uint16 script, uint16 pubfunct, EngineState *s, int argc, reg_t *argv);
|
|
|
|
void logBacktrace();
|
|
|
|
bool printObject(reg_t obj);
|
|
|
|
bool matchKernelBreakpointPattern(const Common::String &pattern, const Common::String &name);
|
|
|
|
}
|
|
|
|
#endif
|