650 lines
20 KiB
PHP
650 lines
20 KiB
PHP
|
|
||
|
OPERATOR_PRECEDENCE_MASK = 3Fh
|
||
|
OPERATOR_UNARY = 40h
|
||
|
OPERATOR_RIGHT_ASSOCIATIVE = 80h
|
||
|
|
||
|
SIZE_BYTE = 1
|
||
|
SIZE_WORD = 2
|
||
|
SIZE_DWORD = 4
|
||
|
SIZE_PWORD = 6
|
||
|
SIZE_QWORD = 8
|
||
|
SIZE_TWORD = 10
|
||
|
SIZE_DQWORD = 16
|
||
|
SIZE_QQWORD = 32
|
||
|
SIZE_DQQWORD = 64
|
||
|
|
||
|
PREPOSITION_AT = 0
|
||
|
PREPOSITION_FROM = 1
|
||
|
PREPOSITION_AS = 2
|
||
|
PREPOSITION_DUP = 3
|
||
|
|
||
|
control_characters db 0,9,0Ah,0Dh,1Ah,20h
|
||
|
.count = $-control_characters
|
||
|
|
||
|
syntactical_characters db '+-/*=<>()[]{}:?!,.|&~#`\;'
|
||
|
.count = $-syntactical_characters
|
||
|
|
||
|
include_variable db 'INCLUDE',0
|
||
|
|
||
|
separating_operators:
|
||
|
|
||
|
db '+',VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,1 + OPERATOR_UNARY
|
||
|
dd calculate_to_number
|
||
|
|
||
|
db '-',VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,1 + OPERATOR_UNARY
|
||
|
dd calculate_neg
|
||
|
|
||
|
db '+',VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,1
|
||
|
dd calculate_add
|
||
|
|
||
|
db '-',VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,1
|
||
|
dd calculate_sub
|
||
|
|
||
|
db '*',VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,2
|
||
|
dd calculate_mul
|
||
|
|
||
|
db '/',VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,2
|
||
|
dd calculate_div
|
||
|
|
||
|
db 0
|
||
|
|
||
|
symbols:
|
||
|
|
||
|
db 3,'not',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,6 + OPERATOR_UNARY
|
||
|
dd calculate_not
|
||
|
|
||
|
db 3,'mod',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,3
|
||
|
dd calculate_mod
|
||
|
|
||
|
db 3,'xor',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,4
|
||
|
dd calculate_xor
|
||
|
|
||
|
db 3,'and',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,4
|
||
|
dd calculate_and
|
||
|
|
||
|
db 2,'or',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,4
|
||
|
dd calculate_or
|
||
|
|
||
|
db 3,'shl',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,5
|
||
|
dd calculate_shl
|
||
|
|
||
|
db 3,'shr',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,5
|
||
|
dd calculate_shr
|
||
|
|
||
|
db 3,'bsf',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,6 + OPERATOR_UNARY
|
||
|
dd calculate_bsf
|
||
|
|
||
|
db 3,'bsr',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,6 + OPERATOR_UNARY
|
||
|
dd calculate_bsr
|
||
|
|
||
|
db 5,'bswap',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,5
|
||
|
dd calculate_bswap
|
||
|
|
||
|
db 7,'bappend',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,4
|
||
|
dd calculate_bappend
|
||
|
|
||
|
db 6,'string',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0 + OPERATOR_UNARY
|
||
|
dd calculate_to_string
|
||
|
|
||
|
db 5,'float',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,10 + OPERATOR_UNARY
|
||
|
dd calculate_to_float
|
||
|
|
||
|
db 5,'trunc',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,10 + OPERATOR_UNARY
|
||
|
dd extract_integer_part
|
||
|
|
||
|
db 6,'sizeof',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,10 + OPERATOR_UNARY
|
||
|
dd extract_size
|
||
|
|
||
|
db 8,'lengthof',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,10 + OPERATOR_UNARY
|
||
|
dd count_bytes
|
||
|
|
||
|
db 10,'elementsof',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,10 + OPERATOR_UNARY
|
||
|
dd count_elements
|
||
|
|
||
|
db 7,'element',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,7
|
||
|
dd extract_element
|
||
|
|
||
|
db 5,'scale',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,7
|
||
|
dd extract_scale
|
||
|
|
||
|
db 8,'metadata',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,7
|
||
|
dd extract_metadata
|
||
|
|
||
|
db 9,'elementof',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,8 + OPERATOR_RIGHT_ASSOCIATIVE
|
||
|
dd extract_element_reverse
|
||
|
|
||
|
db 7,'scaleof',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,8 + OPERATOR_RIGHT_ASSOCIATIVE
|
||
|
dd extract_scale_reverse
|
||
|
|
||
|
db 10,'metadataof',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,8 + OPERATOR_RIGHT_ASSOCIATIVE
|
||
|
dd extract_metadata_reverse
|
||
|
|
||
|
db 7,'element',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_element
|
||
|
|
||
|
db 3,'equ',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_symbolic_variable
|
||
|
|
||
|
db 5,'reequ',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd redefine_symbolic_variable
|
||
|
|
||
|
db 6,'define',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_raw_symbolic_variable
|
||
|
|
||
|
db 8,'redefine',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd redefine_raw_symbolic_variable
|
||
|
|
||
|
db 7,'restore',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SYMCLASS_EXPRESSION
|
||
|
dd restore_variables
|
||
|
|
||
|
db 9,'namespace',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd set_namespace
|
||
|
|
||
|
db 7,'display',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd display_data
|
||
|
|
||
|
db 3,'err',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd custom_error
|
||
|
|
||
|
db 7,'include',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd include_source
|
||
|
|
||
|
db 4,'eval',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd evaluate_string
|
||
|
|
||
|
db 6,'assert',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd assert_condition
|
||
|
|
||
|
db 7,'defined',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMPARATOR,VAL_INTERNAL,0
|
||
|
dd check_if_defined
|
||
|
|
||
|
db 4,'used',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMPARATOR,VAL_INTERNAL,0
|
||
|
dd check_if_used
|
||
|
|
||
|
db 8,'definite',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMPARATOR,VAL_INTERNAL,0
|
||
|
dd check_if_defined_earlier
|
||
|
|
||
|
db 6,'eqtype',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMPARATOR,VAL_INTERNAL,0
|
||
|
dd check_if_type_equal
|
||
|
|
||
|
db 2,'eq',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMPARATOR,VAL_INTERNAL,0
|
||
|
dd check_if_value_equal
|
||
|
|
||
|
db 10,'relativeto',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_COMPARATOR,VAL_INTERNAL,0
|
||
|
dd check_if_relative
|
||
|
|
||
|
db 2,'if',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd conditional_block
|
||
|
|
||
|
db 5,'match',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd match_block
|
||
|
|
||
|
db 6,'rmatch',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd raw_match_block
|
||
|
|
||
|
db 8,'rawmatch',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd raw_match_block
|
||
|
|
||
|
db 5,'while',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd conditionally_repeated_block
|
||
|
|
||
|
db 6,'repeat',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd repeated_block
|
||
|
|
||
|
db 7,'iterate',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd iterator_block
|
||
|
|
||
|
db 4,'rept',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd repeated_block
|
||
|
|
||
|
db 3,'irp',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd iterator_block
|
||
|
|
||
|
db 4,'irpv',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd variable_iterator_block
|
||
|
|
||
|
db 4,'indx',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd set_iterator_index
|
||
|
|
||
|
db 5,'break',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd break_directive
|
||
|
|
||
|
db 4,'else',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd else_directive
|
||
|
|
||
|
db 3,'end',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_directive
|
||
|
|
||
|
db 8,'postpone',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd postponed_block
|
||
|
|
||
|
db 5,'macro',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd define_macro
|
||
|
|
||
|
db 5,'struc',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd define_struc
|
||
|
|
||
|
db 3,'esc',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd escape_directive
|
||
|
|
||
|
db 5,'local',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd local_directive
|
||
|
|
||
|
db 8,'outscope',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd outscope_directive
|
||
|
|
||
|
db 5,'purge',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SYMCLASS_INSTRUCTION
|
||
|
dd restore_variables
|
||
|
|
||
|
db 7,'restruc',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SYMCLASS_STRUCTURE
|
||
|
dd restore_variables
|
||
|
|
||
|
db 7,'mvmacro',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SYMCLASS_INSTRUCTION
|
||
|
dd move_variable_values
|
||
|
|
||
|
db 7,'mvstruc',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SYMCLASS_STRUCTURE
|
||
|
dd move_variable_values
|
||
|
|
||
|
db 15,'calminstruction',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd define_calm_instruction
|
||
|
|
||
|
db 14,'removecomments',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd choose_to_remove_comments
|
||
|
|
||
|
db 14,'retaincomments',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd choose_to_retain_comments
|
||
|
|
||
|
db 12,'combinelines',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd choose_to_combine_lines
|
||
|
|
||
|
db 12,'isolatelines',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd choose_to_isolate_lines
|
||
|
|
||
|
db 3,'org',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd set_base_address
|
||
|
|
||
|
db 7,'section',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd begin_new_section
|
||
|
|
||
|
db 10,'restartout',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd restart_output
|
||
|
|
||
|
db 6,'format',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd format_directive
|
||
|
|
||
|
db 4,'emit',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_data
|
||
|
|
||
|
db 4,'emit',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 3,'dbx',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_data
|
||
|
|
||
|
db 3,'dbx',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'db',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_BYTE
|
||
|
dd define_data
|
||
|
|
||
|
db 2,'db',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_BYTE
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'dw',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_WORD
|
||
|
dd define_data
|
||
|
|
||
|
db 2,'dw',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_WORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'dd',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 2,'dd',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'dp',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_PWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 2,'dp',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_PWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'dq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 2,'dq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'dt',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_TWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 2,'dt',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_TWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 3,'ddq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 3,'ddq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 3,'dqq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QQWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 3,'dqq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QQWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 4,'ddqq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQQWORD
|
||
|
dd define_data
|
||
|
|
||
|
db 4,'ddqq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQQWORD
|
||
|
dd define_labeled_data
|
||
|
|
||
|
db 2,'rb',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_BYTE
|
||
|
dd reserve_data
|
||
|
|
||
|
db 2,'rb',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_BYTE
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 2,'rw',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_WORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 2,'rw',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_WORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 2,'rd',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 2,'rd',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 2,'rp',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_PWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 2,'rp',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_PWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 2,'rq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 2,'rq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 2,'rt',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_TWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 2,'rt',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_TWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 3,'rdq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 3,'rdq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 3,'rqq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QQWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 3,'rqq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_QQWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 4,'rdqq',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQQWORD
|
||
|
dd reserve_data
|
||
|
|
||
|
db 4,'rdqq',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,SIZE_DQQWORD
|
||
|
dd reserve_labeled_data
|
||
|
|
||
|
db 4,'file',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd include_data
|
||
|
|
||
|
db 4,'file',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd include_labeled_data
|
||
|
|
||
|
db 1,'$',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd current_address_value
|
||
|
|
||
|
db 2,'$$',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd base_address_value
|
||
|
|
||
|
db 2,'$@',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd truncated_address_value
|
||
|
|
||
|
db 2,'$%',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd current_position_value
|
||
|
|
||
|
db 3,'$%%',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd truncated_position_value
|
||
|
|
||
|
db 2,'%t',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd current_time_value
|
||
|
|
||
|
db 8,'__time__',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd current_time_value
|
||
|
|
||
|
db 10,'__source__',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd main_file_name_value
|
||
|
|
||
|
db 8,'__file__',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd current_file_name_value
|
||
|
|
||
|
db 8,'__line__',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_FUNCTION,VAL_INTERNAL,0
|
||
|
dd current_line_number_value
|
||
|
|
||
|
db 4,'byte',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_BYTE
|
||
|
|
||
|
db 4,'word',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_WORD
|
||
|
|
||
|
db 5,'dword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_DWORD
|
||
|
|
||
|
db 5,'pword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_PWORD
|
||
|
|
||
|
db 5,'fword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_PWORD
|
||
|
|
||
|
db 5,'qword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_QWORD
|
||
|
|
||
|
db 5,'tword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_TWORD
|
||
|
|
||
|
db 5,'tbyte',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_TWORD
|
||
|
|
||
|
db 6,'dqword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_DQWORD
|
||
|
|
||
|
db 5,'xword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_DQWORD
|
||
|
|
||
|
db 6,'qqword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_QQWORD
|
||
|
|
||
|
db 5,'yword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_QQWORD
|
||
|
|
||
|
db 7,'dqqword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_DQQWORD
|
||
|
|
||
|
db 5,'zword',SYMCLASS_EXPRESSION,VALTYPE_PLAIN,VAL_INTERNAL,0
|
||
|
dd SIZE_DQQWORD
|
||
|
|
||
|
db 5,'label',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd label_directive
|
||
|
|
||
|
db 7,'virtual',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd virtual_block
|
||
|
|
||
|
db 4,'load',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd load_value
|
||
|
|
||
|
db 5,'store',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd store_value
|
||
|
|
||
|
db 2,'at',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_PREPOSITION,VAL_INTERNAL,0
|
||
|
dd PREPOSITION_AT
|
||
|
|
||
|
db 4,'from',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_PREPOSITION,VAL_INTERNAL,0
|
||
|
dd PREPOSITION_FROM
|
||
|
|
||
|
db 2,'as',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_PREPOSITION,VAL_INTERNAL,0
|
||
|
dd PREPOSITION_AS
|
||
|
|
||
|
db 3,'dup',SYMCLASS_EXPRESSION,VALTYPE_NATIVE_PREPOSITION,VAL_INTERNAL,0
|
||
|
dd PREPOSITION_DUP
|
||
|
|
||
|
db 0
|
||
|
|
||
|
db 3,'end'
|
||
|
|
||
|
db 9,'namespace',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd end_namespace
|
||
|
|
||
|
db 2,'if',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_conditional_block
|
||
|
|
||
|
db 5,'match',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_match_block
|
||
|
|
||
|
db 6,'rmatch',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_raw_match_block
|
||
|
|
||
|
db 8,'rawmatch',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_raw_match_block
|
||
|
|
||
|
db 5,'while',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_conditionally_repeated_block
|
||
|
|
||
|
db 6,'repeat',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_repeated_block
|
||
|
|
||
|
db 7,'iterate',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_iterator_block
|
||
|
|
||
|
db 4,'rept',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_repeated_block
|
||
|
|
||
|
db 3,'irp',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_iterator_block
|
||
|
|
||
|
db 4,'irpv',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_variable_iterator_block
|
||
|
|
||
|
db 8,'postpone',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_postponed_block
|
||
|
|
||
|
db 5,'macro',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_macro
|
||
|
|
||
|
db 5,'struc',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd end_struc
|
||
|
|
||
|
db 7,'virtual',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd end_virtual_block
|
||
|
|
||
|
db 0
|
||
|
|
||
|
db 4,'else'
|
||
|
|
||
|
db 2,'if',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd else_conditional_block
|
||
|
|
||
|
db 5,'match',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd else_match_block
|
||
|
|
||
|
db 6,'rmatch',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd else_raw_match_block
|
||
|
|
||
|
db 8,'rawmatch',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd else_raw_match_block
|
||
|
|
||
|
db 0
|
||
|
|
||
|
db 6,'format'
|
||
|
|
||
|
db 6,'binary',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd format_binary
|
||
|
|
||
|
db 0
|
||
|
|
||
|
db 15,'calminstruction'
|
||
|
|
||
|
db 5,'local',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_local
|
||
|
|
||
|
db 7,'arrange',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_arrange
|
||
|
|
||
|
db 5,'match',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_match
|
||
|
|
||
|
db 8,'assemble',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_assemble
|
||
|
|
||
|
db 9,'transform',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_transform
|
||
|
|
||
|
db 9,'stringify',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_stringify
|
||
|
|
||
|
db 7,'publish',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_publish
|
||
|
|
||
|
db 4,'take',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_take
|
||
|
|
||
|
db 7,'compute',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_compute
|
||
|
|
||
|
db 5,'check',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_check
|
||
|
|
||
|
db 4,'emit',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_emit
|
||
|
|
||
|
db 4,'load',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_load
|
||
|
|
||
|
db 5,'store',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_store
|
||
|
|
||
|
db 7,'display',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_display
|
||
|
|
||
|
db 3,'err',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_err
|
||
|
|
||
|
db 4,'jyes',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_jyes
|
||
|
|
||
|
db 3,'jno',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_jno
|
||
|
|
||
|
db 4,'jump',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_jump
|
||
|
|
||
|
db 4,'call',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_call
|
||
|
|
||
|
db 4,'exit',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_exit
|
||
|
|
||
|
db 3,'end',SYMCLASS_INSTRUCTION,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL + VAL_UNCONDITIONAL,0
|
||
|
dd alm_end
|
||
|
|
||
|
db 15,'calminstruction',SYMCLASS_STRUCTURE,VALTYPE_NATIVE_COMMAND,VAL_INTERNAL,0
|
||
|
dd alm_end
|
||
|
|
||
|
db 0
|
||
|
|
||
|
zero_value dd 0
|
||
|
dd 0
|
||
|
|
||
|
singular_value dd 1
|
||
|
db 1
|
||
|
dd 0
|
||
|
|
||
|
subtraction_operator dd EXPR_OPERATOR,calculate_sub
|
||
|
dd 0
|