summaryrefslogtreecommitdiff
path: root/ioq3-r437/src/qcommon/vm_local.h
diff options
context:
space:
mode:
Diffstat (limited to 'ioq3-r437/src/qcommon/vm_local.h')
-rw-r--r--ioq3-r437/src/qcommon/vm_local.h183
1 files changed, 0 insertions, 183 deletions
diff --git a/ioq3-r437/src/qcommon/vm_local.h b/ioq3-r437/src/qcommon/vm_local.h
deleted file mode 100644
index a3d5caa3..00000000
--- a/ioq3-r437/src/qcommon/vm_local.h
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
-===========================================================================
-Copyright (C) 1999-2005 Id Software, Inc.
-
-This file is part of Quake III Arena source code.
-
-Quake III Arena source code 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.
-
-Quake III Arena source code 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 Quake III Arena source code; if not, write to the Free Software
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-===========================================================================
-*/
-#include "q_shared.h"
-#include "qcommon.h"
-
-typedef enum {
- OP_UNDEF,
-
- OP_IGNORE,
-
- OP_BREAK,
-
- OP_ENTER,
- OP_LEAVE,
- OP_CALL,
- OP_PUSH,
- OP_POP,
-
- OP_CONST,
- OP_LOCAL,
-
- OP_JUMP,
-
- //-------------------
-
- OP_EQ,
- OP_NE,
-
- OP_LTI,
- OP_LEI,
- OP_GTI,
- OP_GEI,
-
- OP_LTU,
- OP_LEU,
- OP_GTU,
- OP_GEU,
-
- OP_EQF,
- OP_NEF,
-
- OP_LTF,
- OP_LEF,
- OP_GTF,
- OP_GEF,
-
- //-------------------
-
- OP_LOAD1,
- OP_LOAD2,
- OP_LOAD4,
- OP_STORE1,
- OP_STORE2,
- OP_STORE4, // *(stack[top-1]) = stack[top]
- OP_ARG,
-
- OP_BLOCK_COPY,
-
- //-------------------
-
- OP_SEX8,
- OP_SEX16,
-
- OP_NEGI,
- OP_ADD,
- OP_SUB,
- OP_DIVI,
- OP_DIVU,
- OP_MODI,
- OP_MODU,
- OP_MULI,
- OP_MULU,
-
- OP_BAND,
- OP_BOR,
- OP_BXOR,
- OP_BCOM,
-
- OP_LSH,
- OP_RSHI,
- OP_RSHU,
-
- OP_NEGF,
- OP_ADDF,
- OP_SUBF,
- OP_DIVF,
- OP_MULF,
-
- OP_CVIF,
- OP_CVFI
-} opcode_t;
-
-
-
-typedef int vmptr_t;
-
-typedef struct vmSymbol_s {
- struct vmSymbol_s *next;
- int symValue;
- int profileCount;
- char symName[1]; // variable sized
-} vmSymbol_t;
-
-#define VM_OFFSET_PROGRAM_STACK 0
-#define VM_OFFSET_SYSTEM_CALL 4
-
-struct vm_s {
- // DO NOT MOVE OR CHANGE THESE WITHOUT CHANGING THE VM_OFFSET_* DEFINES
- // USED BY THE ASM CODE
- int programStack; // the vm may be recursively entered
- long (*systemCall)( long *parms );
-
- //------------------------------------
-
- char name[MAX_QPATH];
-
- // for dynamic linked modules
- void *dllHandle;
- long (QDECL *entryPoint)( long callNum, ... );
-
- // for interpreted modules
- qboolean currentlyInterpreting;
-
- qboolean compiled;
- byte *codeBase;
- int codeLength;
-
- int *instructionPointers;
- int instructionPointersLength;
-
- byte *dataBase;
- int dataMask;
-
- int stackBottom; // if programStack < stackBottom, error
-
- int numSymbols;
- struct vmSymbol_s *symbols;
-
- int callLevel; // for debug indenting
- int breakFunction; // increment breakCount on function entry to this
- int breakCount;
-
-// fqpath member added 7/20/02 by T.Ray
- char fqpath[MAX_QPATH+1] ;
-
- byte *jumpTableTargets;
- int numJumpTableTargets;
-};
-
-
-extern vm_t *currentVM;
-extern int vm_debugLevel;
-
-void VM_Compile( vm_t *vm, vmHeader_t *header );
-int VM_CallCompiled( vm_t *vm, int *args );
-
-void VM_PrepareInterpreter( vm_t *vm, vmHeader_t *header );
-int VM_CallInterpreted( vm_t *vm, int *args );
-
-vmSymbol_t *VM_ValueToFunctionSymbol( vm_t *vm, int value );
-int VM_SymbolToValue( vm_t *vm, const char *symbol );
-const char *VM_ValueToSymbol( vm_t *vm, int value );
-void VM_LogSyscalls( int *args );
-