TempleOSTS_130707.ISO

This commit is contained in:
Terry A. Davis authored and minexew committed 2018-09-08 21:45:45 +02:00
1 parent 17b71f1a2d
commit 1343005a29
617 files changed
+14399 -25130

No files matched your search

+140 -153
View File
@@ -1,17 +1,17 @@
//Intermediate compiler codes
#define IC_END 0x00
#define IC_START 0x01
#define IC_NOP 0x02
#define IC_NOP1 0x02
#define IC_END_EXP 0x03
#define IC_NOP1 0x04
#define IC_NOP2 0x04
#define IC_LABEL 0x05
#define IC_CALL_START 0x06
#define IC_CALL_END 0x07
#define IC_CALL_END2 0x08
#define IC_RETURN_VAL 0x09
#define IC_RETURN_VAL2 0x0A
#define IC_IMM 0x0B
#define IC_F64 0x0C
#define IC_IMM_U64 0x0B
#define IC_IMM_F64 0x0C
#define IC_STR_CONST 0x0D
#define IC_ABS_ADDR 0x0E
#define IC_ADDR_IMPORT 0x0F
@@ -33,7 +33,7 @@
#define IC_TO_F64 0x1D
#define IC_TO_BOOL 0x1E
#define IC_TOUPPER 0x1F
#define IC_NATIVE_TYPECAST 0x20
#define IC_HOLYC_TYPECAST 0x20
#define IC_ADDR 0x21
#define IC_COM 0x22
@@ -81,168 +81,155 @@
#define IC_OR_OR 0x43
#define IC_XOR_XOR 0x44
#define IC_COLON 0x45
#define IC_QUESTION 0x46
#define IC_ASSIGN 0x45
#define IC_ASSIGN_PP 0x46
#define IC_ASSIGN_MM 0x47
#define IC_ASSIGN 0x47
#define IC_ASSIGN_PP 0x48
#define IC_ASSIGN_MM 0x49
#define IC_SHL_EQUAL 0x48
#define IC_SHR_EQUAL 0x49
#define IC_MUL_EQUAL 0x4A
#define IC_DIV_EQUAL 0x4B
#define IC_MOD_EQUAL 0x4C
#define IC_AND_EQUAL 0x4D
#define IC_OR_EQUAL 0x4E
#define IC_XOR_EQUAL 0x4F
#define IC_ADD_EQUAL 0x50
#define IC_SUB_EQUAL 0x51
#define IC_SHL_EQUAL 0x4A
#define IC_SHR_EQUAL 0x4B
#define IC_MUL_EQUAL 0x4C
#define IC_DIV_EQUAL 0x4D
#define IC_MOD_EQUAL 0x4E
#define IC_AND_EQUAL 0x4F
#define IC_OR_EQUAL 0x50
#define IC_XOR_EQUAL 0x51
#define IC_ADD_EQUAL 0x52
#define IC_SUB_EQUAL 0x53
#define IC_JMP 0x52
#define IC_SWITCH 0x53
#define IC_NOBOUND_SWITCH 0x54
#define IC_JMP 0x54
#define IC_SWITCH 0x55
#define IC_NOBOUND_SWITCH 0x56
#define IC_ADD_RSP 0x55
#define IC_ADD_RSP1 0x56
#define IC_ENTER 0x57
#define IC_PUSH_REGS 0x58
#define IC_POP_REGS 0x59
#define IC_LEAVE 0x5A
#define IC_RET 0x5B
#define IC_ADD_RSP 0x57
#define IC_ADD_RSP1 0x58
#define IC_ENTER 0x59
#define IC_PUSH_REGS 0x5A
#define IC_POP_REGS 0x5B
#define IC_LEAVE 0x5C
#define IC_RET 0x5D
#define IC_CALL 0x5C
#define IC_CALL_INDIRECT 0x5D
#define IC_CALL_INDIRECT2 0x5E
#define IC_CALL_IMPORT 0x5F
#define IC_CALL_EXTERN 0x60
#define IC_IRQ 0x61
#define IC_CALL 0x5E
#define IC_CALL_INDIRECT 0x5F
#define IC_CALL_INDIRECT2 0x60
#define IC_CALL_IMPORT 0x61
#define IC_CALL_EXTERN 0x62
#define IC_IRQ 0x63
#define IC_ASM 0x62
#define IC_CLI 0x63
#define IC_STI 0x64
#define IC_PREEMPT 0x65
#define IC_CLD 0x66
#define IC_STD 0x67
#define IC_HLT 0x68
#define IC_PUSH 0x69
#define IC_POP 0x6A
#define IC_PUSHFD 0x6B
#define IC_POPFD 0x6C
#define IC_PAUSE 0x6D
#define IC_ASM 0x64
#define IC_CLI 0x65
#define IC_STI 0x66
#define IC_PREEMPT 0x67
#define IC_CLD 0x68
#define IC_STD 0x69
#define IC_HLT 0x6A
#define IC_PUSH 0x6B
#define IC_POP 0x6C
#define IC_PUSHFD 0x6D
#define IC_POPFD 0x6E
#define IC_PAUSE 0x6F
#define IC_CLFLUSH 0x6E
#define IC_INVLPG 0x6F
#define IC_CLFLUSH 0x70
#define IC_INVLPG 0x71
#define IC_IN_U8 0x70
#define IC_IN_U16 0x71
#define IC_IN_U32 0x72
#define IC_OUT_U8 0x73
#define IC_OUT_U16 0x74
#define IC_OUT_U32 0x75
#define IC_INU8 0x72
#define IC_INU16 0x73
#define IC_INU32 0x74
#define IC_OUTU8 0x75
#define IC_OUTU16 0x76
#define IC_OUTU32 0x77
#define IC_GET_FLAGS 0x76
#define IC_CARRY 0x77
#define IC_SET_FLAGS 0x78
#define IC_GET_RAX 0x79
#define IC_SET_RAX 0x7A
#define IC_GET_BASE_PTR 0x7B
#define IC_SET_BASE_PTR 0x7C
#define IC_GET_STK_PTR 0x7D
#define IC_SET_STK_PTR 0x7E
#define IC_RIP 0x7F
#define IC_GET_FLAGS 0x78
#define IC_CARRY 0x79
#define IC_SET_FLAGS 0x7A
#define IC_GET_RAX 0x7B
#define IC_SET_RAX 0x7C
#define IC_GET_BASE_PTR 0x7D
#define IC_SET_BASE_PTR 0x7E
#define IC_GET_STK_PTR 0x7F
#define IC_SET_STK_PTR 0x80
#define IC_RIP 0x81
#define IC_RDTSC 0x80
#define IC_HPET 0x81
#define IC_RDTSC 0x82
#define IC_HPET 0x83
#define IC_BT 0x82
#define IC_BTS 0x83
#define IC_BTR 0x84
#define IC_BTC 0x85
#define IC_LBTS 0x86
#define IC_LBTR 0x87
#define IC_LBTC 0x88
#define IC_BSF 0x89
#define IC_BSR 0x8A
#define IC_BT 0x84
#define IC_BTS 0x85
#define IC_BTR 0x86
#define IC_BTC 0x87
#define IC_BEQU 0x88
#define IC_LBTS 0x89
#define IC_LBTR 0x8A
#define IC_LBTC 0x8B
#define IC_LBEQU 0x8C
#define IC_BSF 0x8D
#define IC_BSR 0x8E
#define IC_QUE_INIT 0x8B
#define IC_QUE_INS 0x8C
#define IC_QUE_INS_REV 0x8D
#define IC_QUE_REM 0x8E
#define IC_QUE_INIT 0x8F
#define IC_QUE_INS 0x90
#define IC_QUE_INS_REV 0x91
#define IC_QUE_REM 0x92
#define IC_STRLEN 0x8F
#define IC_STRLEN 0x93
#define IC_MEMCPY 0x94
#define IC_BR_ZERO 0x90
#define IC_BR_NOT_ZERO 0x91
#define IC_MEMSET 0x95
#define IC_MEMSET_U16 0x96
#define IC_MEMSET_U32 0x97
#define IC_MEMSET_U64 0x98
#define IC_BR_NOT_EQUAL 0x92
#define IC_BR_EQUAL_EQUAL 0x93
#define IC_BR_GREATER_EQUAL 0x94
#define IC_BR_LESS_EQUAL 0x95
#define IC_BR_GREATER 0x96
#define IC_BR_LESS 0x97
#define IC_BR_NOT_EQUAL2 0x98
#define IC_BR_EQUAL_EQUAL2 0x99
#define IC_BR_GREATER_EQUAL2 0x9A
#define IC_BR_LESS_EQUAL2 0x9B
#define IC_BR_GREATER2 0x9C
#define IC_BR_LESS2 0x9D
#define IC_BR_AND_ZERO 0x9E
#define IC_BR_AND_NOT_ZERO 0x9F
#define IC_BR_MM_ZERO 0xA0
#define IC_BR_MM_NOT_ZERO 0xA1
#define IC_BR_AND_AND_ZERO 0xA2
#define IC_BR_AND_AND_NOT_ZERO 0xA3
#define IC_BR_OR_OR_ZERO 0xA4
#define IC_BR_OR_OR_NOT_ZERO 0xA5
#define IC_BR_ZERO 0x99
#define IC_BR_NOT_ZERO 0x9A
#define IC_BR_BT 0xA6
#define IC_BR_BTS 0xA7
#define IC_BR_BTR 0xA8
#define IC_BR_BTC 0xA9
#define IC_BR_LBTS 0xAA
#define IC_BR_LBTR 0xAB
#define IC_BR_LBTC 0xAC
#define IC_BR_NOT_BT 0xAD
#define IC_BR_NOT_BTS 0xAE
#define IC_BR_NOT_BTR 0xAF
#define IC_BR_NOT_BTC 0xB0
#define IC_BR_NOT_LBTS 0xB1
#define IC_BR_NOT_LBTR 0xB2
#define IC_BR_NOT_LBTC 0xB3
#define IC_BR_NOT_EQUAL 0x9B
#define IC_BR_EQUAL_EQUAL 0x9C
#define IC_BR_GREATER_EQUAL 0x9D
#define IC_BR_LESS_EQUAL 0x9E
#define IC_BR_GREATER 0x9F
#define IC_BR_LESS 0xA0
#define IC_BR_NOT_EQUAL2 0xA1
#define IC_BR_EQUAL_EQUAL2 0xA2
#define IC_BR_GREATER_EQUAL2 0xA3
#define IC_BR_LESS_EQUAL2 0xA4
#define IC_BR_GREATER2 0xA5
#define IC_BR_LESS2 0xA6
#define IC_BR_AND_ZERO 0xA7
#define IC_BR_AND_NOT_ZERO 0xA8
#define IC_BR_MM_ZERO 0xA9
#define IC_BR_MM_NOT_ZERO 0xAA
#define IC_BR_AND_AND_ZERO 0xAB
#define IC_BR_AND_AND_NOT_ZERO 0xAC
#define IC_BR_OR_OR_ZERO 0xAD
#define IC_BR_OR_OR_NOT_ZERO 0xAE
#define IC_SWAP_U8 0xB4
#define IC_SWAP_U16 0xB5
#define IC_SWAP_U32 0xB6
#define IC_SWAP_U64 0xB7
#define IC_BR_BT 0xAF
#define IC_BR_BTS 0xB0
#define IC_BR_BTR 0xB1
#define IC_BR_BTC 0xB2
#define IC_BR_LBTS 0xB3
#define IC_BR_LBTR 0xB4
#define IC_BR_LBTC 0xB5
#define IC_BR_NOT_BT 0xB6
#define IC_BR_NOT_BTS 0xB7
#define IC_BR_NOT_BTR 0xB8
#define IC_BR_NOT_BTC 0xB9
#define IC_BR_NOT_LBTS 0xBA
#define IC_BR_NOT_LBTR 0xBB
#define IC_BR_NOT_LBTC 0xBC
#define IC_SWAP_U8 0xBD
#define IC_SWAP_U16 0xBE
#define IC_SWAP_U32 0xBF
#define IC_SWAP_U64 0xC0
#define IC_ABS_I64 0xC1
#define IC_SIGN_I64 0xC2
#define IC_MIN_I64 0xC3
#define IC_MIN_U64 0xC4
#define IC_MAX_I64 0xC5
#define IC_MAX_U64 0xC6
#define IC_LIMIT_I64 0xC7
#define IC_LIMIT_U64 0xC8
#define IC_MOD_U64 0xC9
#define IC_SQR_I64 0xCA
#define IC_SQR_U64 0xCB
#define IC_SQR 0xCC
#define IC_ABS 0xCD
#define IC_SQRT 0xCE
#define IC_SIN 0xCF
#define IC_COS 0xD0
#define IC_TAN 0xD1
#define IC_ATAN 0xD2
#define IC_NUM_ENTRIES 0xD3
#define IC_ABS_I64 0xB8
#define IC_SIGN_I64 0xB9
#define IC_MIN_I64 0xBA
#define IC_MIN_U64 0xBB
#define IC_MAX_I64 0xBC
#define IC_MAX_U64 0xBD
#define IC_MOD_U64 0xBE
#define IC_SQR_I64 0xBF
#define IC_SQR_U64 0xC0
#define IC_SQR 0xC1
#define IC_ABS 0xC2
#define IC_SQRT 0xC3
#define IC_SIN 0xC4
#define IC_COS 0xC5
#define IC_TAN 0xC6
#define IC_ATAN 0xC7
#define IC_NUM_ENTRIES 0xC8
//Don't forget $LK,"IC_INIT_TABLE","FA:::/TempleOS/Compiler/CmpInit.CPP,IC_INIT_TABLE"$
#define KW_INCLUDE 0
@@ -357,10 +344,9 @@
#define PREC_AND_AND 0x30
#define PREC_XOR_XOR 0x34
#define PREC_OR_OR 0x38
#define PREC_QUEST 0x3C
#define PREC_ASSIGN 0x40
#define PREC_ASSIGN 0x3C
#define PREC_MAX 0x44
#define PREC_MAX 0x40
#define CPS_IS_PUBLIC 1
#define CPS_IS_INTERRUPT 2
@@ -399,3 +385,4 @@ class COptReg
I64 offset;
CMemberLst *m;
};