diff options
| -rw-r--r-- | saga/sdebug.cpp | 475 | ||||
| -rw-r--r-- | saga/transitions.cpp | 73 | 
2 files changed, 0 insertions, 548 deletions
| diff --git a/saga/sdebug.cpp b/saga/sdebug.cpp deleted file mode 100644 index 83042ab953..0000000000 --- a/saga/sdebug.cpp +++ /dev/null @@ -1,475 +0,0 @@ -/* ScummVM - Scumm Interpreter - * Copyright (C) 2004-2005 The ScummVM project - * - * The ReInherit Engine is (C)2000-2003 by Daniel Balsom. - * - * 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., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. - * - * $Header$ - * - */ - -// Scripting module simple thread debugging support -#include "saga/saga.h" - -#include "saga/gfx.h" -#include "saga/text.h" -#include "saga/scene.h" -#include "saga/font.h" - -#include "saga/script.h" -#include "saga/stream.h" - -namespace Saga { - -#define SD_DISPLAY_LEN 128 -#define SD_ADDTXT(x) strncat(disp_buf, x, SD_DISPLAY_LEN); - -int Script::SDebugPrintInstr(ScriptThread *thread) { -	TEXTLIST_ENTRY tl_e; -	char tmp_buf[80] = { 0 }; -	static char disp_buf[SD_DISPLAY_LEN] = { 0 }; -	int in_char; -//	int op_offset; -	int n_switch; -	int i; - -	disp_buf[0] = 0; - -	if (_dbg_txtentry != NULL) { -		_vm->textDeleteEntry(_vm->_scene->_textList, _dbg_txtentry); -		_dbg_txtentry = NULL; -	} - -	tl_e.color = 1; -	tl_e.effect_color = 0; -	tl_e.text_x = 2; -	tl_e.text_y = 20; -	tl_e.font_id = SMALL_FONT_ID; -	tl_e.flags = FONT_OUTLINE; -	tl_e.string = disp_buf; -	tl_e.display = 1; - -	MemoryReadStream readS(thread->_moduleBase  -							 + thread->_instructionOffset,  -							 thread->_moduleBaseSize  -							 - thread->_instructionOffset); -	in_char = readS.readByte(); -	sprintf(tmp_buf, "%04X | %02X | ", thread->_instructionOffset, in_char); -	strncat(disp_buf, tmp_buf, SD_DISPLAY_LEN); - -	switch (in_char) { -		// Align -	case 0x01: -		SD_ADDTXT("ALGN |"); -		break; -		// Push nothing -	case 0x02: -		SD_ADDTXT("PSHN |"); -		break; -		// Pop nothing -	case 0x03: -		SD_ADDTXT("POPN |"); -		break; -		// Push false (0) -	case 0x04: -		SD_ADDTXT("PSHF |"); -		break; -		// Push true (1) -	case 0x05: -		SD_ADDTXT("PSHT |"); -		break; -		// Push word (dialogue string index) -	case 0x08: -		{ -			int param; - -			SD_ADDTXT("PSHD | "); -			param = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X", param); -			SD_ADDTXT(tmp_buf); -/* -			if ((param >= 0) && (param < diag_list->n_dialogue)) { -				debug(2, " ; \"%.*s\"", SCRIPT_STRINGLIMIT, diag_list->str[param]); -			} -			else { -				debug(2, " ; Invalid dialogue string.\n"); -			} -*/ -		} -		break; -		// Push word -	case 0x06: -		{ -			int param; - -			SD_ADDTXT("PUSH | "); -			param = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", param); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Test flag -	case 0x0B: -		{ -			int param1; -			int param2; - -			SD_ADDTXT("TSTF | "); -			param1 = readS.readByte(); -			param2 = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X %04X", param1, param2); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Get word -	case 0x0C: -		{ -			int param1; -			int param2; - -			SD_ADDTXT("GETW | "); -			param1 = readS.readByte(); -			param2 = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X %04X", param1, param2); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Modify flag -	case 0x0F: -		{ -			int param1; -			int param2; - -			SD_ADDTXT("MODF | "); -			param1 = readS.readByte(); -			param2 = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X %04X", param1, param2); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Put word -	case 0x10: -		{ -			int param1; -			int param2; - -			SD_ADDTXT("PUTW | "); -			param1 = readS.readByte(); -			param2 = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X %04X", param1, param2); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Modify flag and pop -	case 0x13: -		{ -			int param1; -			int param2; - -			SD_ADDTXT("MDFP | "); -			param1 = readS.readByte(); -			param2 = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X %04X", param1, param2); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Put word and pop -	case 0x14: -		{ -			int param1; -			int param2; - -			SD_ADDTXT("PTWP | "); -			param1 = readS.readByte(); -			param2 = readS.readUint16LE(); - -			sprintf(tmp_buf, "%02X %04X", param1, param2); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Call subscript ? -	case 0x17: -		{ -			int param1; -			int param2; -			int param3; - -			SD_ADDTXT("GOSB | "); -			param1 = readS.readByte(); -			param2 = readS.readByte(); -			param3 = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X %02X %04X", param1, param2, param3); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Call function -	case opCcall: -		SD_ADDTXT("opCall"); -		break; -	case opCcallV: -		SD_ADDTXT("opCallV"); -		break; -	case opEnter: -		SD_ADDTXT("opEnter"); -		break; -	case opReturn: -		SD_ADDTXT("opReturn"); -		break; -	case opReturnV: -		SD_ADDTXT("opReturnV"); -		break; -		// Unconditional jump -	case 0x1D: -		{ -			int param1; - -			SD_ADDTXT("JMP  | "); -			param1 = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", param1); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Jump if nonzero + POP -	case 0x1E: -		{ -			int param1; - -			SD_ADDTXT("JNZP | "); -			param1 = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", param1); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Jump if zero + POP -	case 0x1F: -		{ -			int param1; - -			SD_ADDTXT("JZP  | "); -			param1 = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", param1); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Jump if nonzero -	case 0x20: -		{ -			int param1; -			SD_ADDTXT("JNZ  | "); -			param1 = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", param1); -			SD_ADDTXT(tmp_buf); -		} -		break; - -		// Jump if zero -	case 0x21: -		{ -			int param1; - -			SD_ADDTXT("JZ   | "); -			param1 = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", param1); -			SD_ADDTXT(tmp_buf); -		} -		break; -		// Switch -	case 0x22: -		{ -			int switch_num; -			int switch_jmp; -			int default_jmp; - -			SD_ADDTXT("SWCH | "); -			n_switch = readS.readUint16LE(); -			sprintf(tmp_buf, "%02X\n", n_switch); -			SD_ADDTXT(tmp_buf); -			for (i = 0; i < n_switch; i++) { -				switch_num = readS.readUint16LE(); -				switch_jmp = readS.readUint16LE(); -				// printf(TAB "CASE %04X, %04X\n", switch_num, switch_jmp); -			} -			default_jmp = readS.readUint16LE(); -			//printf(TAB "DEF %04X", default_jmp); -		} -		break; -		// Random branch -	case 0x24: -		{ -			int n_switch2; -			int switch_num; -			int switch_jmp; - -			SD_ADDTXT("RJMP | "); -			// Ignored? -			readS.readUint16LE(); -			n_switch2 = readS.readUint16LE(); -			sprintf(tmp_buf, "%04X", n_switch2); -			SD_ADDTXT(tmp_buf); -			for (i = 0; i < n_switch2; i++) { -				switch_num = readS.readUint16LE(); -				switch_jmp = readS.readUint16LE(); -				//debug(2, "WEIGHT %04X, %04X", switch_num, switch_jmp); -			} -		} -		break; -	case 0x25: -		SD_ADDTXT("NEG  |"); -		break; -	case 0x26: -		SD_ADDTXT("TSTZ |"); -		break; -	case 0x27: -		SD_ADDTXT("NOT  |"); -		break; -	case 0x28: -		SD_ADDTXT("??? "); -		readS.readByte(); -		readS.readUint16LE(); -		break; -	case 0x29: -		SD_ADDTXT("??? "); -		readS.readByte(); -		readS.readUint16LE(); -		break; -	case 0x2A: -		SD_ADDTXT("??? "); -		readS.readByte(); -		readS.readUint16LE(); -		break; -	case 0x2B: -		SD_ADDTXT("??? "); -		readS.readByte(); -		readS.readUint16LE(); -		break; -		// Addition -	case 0x2C: -		SD_ADDTXT("ADD  |"); -		break; -		// Subtraction -	case 0x2D: -		SD_ADDTXT("SUB  |"); -		break; -		// Integer multiplication -	case 0x2E: -		SD_ADDTXT("MULT |"); -		break; -		// Integer division -	case 0x2F: -		SD_ADDTXT("DIV |"); -		break; -		// Modulus -	case 0x30: -		SD_ADDTXT("MOD  |"); -		break; -		// Test equality -	case 0x33: -		SD_ADDTXT("EQU  |"); -		break; -		// Test inequality -	case 0x34: -		SD_ADDTXT("NEQU |"); -		break; -		// Test Greater-than -	case 0x35: -		SD_ADDTXT("GRT  |"); -		break; -		// Test Less-than -	case 0x36: -		SD_ADDTXT("LST  |"); -		break; -		// Test Greater-than or Equal to -	case 0x37: -		SD_ADDTXT("GRTE |"); -		break; -		// Test Less-than or Equal to -	case 0x38: -		SD_ADDTXT("LSTE |"); -		break; -	case 0x3F: -		SD_ADDTXT("SHR  |"); -		break; -	case 0x40: -		SD_ADDTXT("SHL  |"); -		break; -	case 0x41: -		SD_ADDTXT("AND  |"); -		break; -	case 0x42: -		SD_ADDTXT("OR   |"); -		break; -	case 0x43: -		SD_ADDTXT("XOR  |"); -		break; -	case 0x44: -		SD_ADDTXT("LAND |"); -		break; -	case 0x45: -		SD_ADDTXT("LOR  |"); -		break; -	case 0x46: -		SD_ADDTXT("LXOR |"); -		break; -	case opSpeak: -		SD_ADDTXT("opSpeak"); -		break; -	case 0x54: -		SD_ADDTXT("DLGS |"); -		break; -	case 0x55: -		SD_ADDTXT("DLGX |"); -		break; -	case 0x56: -		{ -			int param1; -			int param2; -			int param3; - -			SD_ADDTXT("DLGO | "); -			param1 = readS.readByte(); -			param2 = readS.readByte(); -			sprintf(tmp_buf, "%02X %02X ", param1, param2); -			SD_ADDTXT(tmp_buf); -			if (param2 > 0) { -				param3 = readS.readUint16LE(); -				sprintf(tmp_buf, "%04X", param3); -				SD_ADDTXT(tmp_buf); -			} -		} -		break; -	case 0x57: -		{ -			int param1; -			int param2; -			int param3; - -			SD_ADDTXT("JMPS | "); -			param1 = readS.readUint16LE(); -			param2 = readS.readUint16LE(); -			param3 = readS.readByte(); -			sprintf(tmp_buf, "%04X %04X %02X", param1, param2, param3); -			SD_ADDTXT(tmp_buf); -		} -		break; -	} - -	_dbg_txtentry = _vm->textAddEntry(_vm->_scene->_textList, &tl_e); -	_vm->textSetDisplay(_dbg_txtentry, 1); - -	return SUCCESS; -} - -} // End of namespace Saga diff --git a/saga/transitions.cpp b/saga/transitions.cpp deleted file mode 100644 index 6f51c433be..0000000000 --- a/saga/transitions.cpp +++ /dev/null @@ -1,73 +0,0 @@ -/* ScummVM - Scumm Interpreter - * Copyright (C) 2004-2005 The ScummVM project - * - * The ReInherit Engine is (C)2000-2003 by Daniel Balsom. - * - * 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., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. - * - * $Header$ - * - */ - -//Background transition routines -#include "saga/saga.h" - -namespace Saga { - -/** - * Dissolve one image with another. - * If flags if set to 1, do zero masking. - */ -int SagaEngine::transitionDissolve(byte *dst_img, int dst_w, int dst_h, const byte *src_img, -						int src_w, int src_h, int flags, int x, int y,  -						double percent) { -#define XOR_MASK 0xB400; -	int pixelcount = dst_w * dst_h; -	int seqlimit = (int)(65535 * percent); -	int seq = 1; -	int i, x1, y1; -	Common::Rect clip(x, y, x+src_w, y+src_h); -	byte color; - -	for (i = 0; i < seqlimit; i++) { -		if (seq & 1) { -			seq = (seq >> 1) ^ XOR_MASK; -		} else { -			seq = seq >> 1; -		} - -		if (seq == 1) { -			return 0; -		} - -		if (seq >= pixelcount) { -			continue; -		} else { -			x1 = seq % dst_w; -			y1 = seq / dst_w; -			 -			if (clip.contains(x1, y1)) { -				color = src_img[(x1-x)+src_w*(y1-y)]; -				if (flags == 0 || color) -					dst_img[seq] = color; -			} -		} -	} - -	return 1; -} - -} // End of namespace Saga - | 
