├── .gitattributes ├── .gitignore ├── README.md ├── SR-games ├── Albion │ └── SR │ │ ├── SR.cfg │ │ ├── arm │ │ ├── displaced_labels.sci │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ ├── instruction_replacements_FPU.sci │ │ ├── noret_procedures.sci │ │ └── unaligned_ebp_areas.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ ├── displaced_labels.sci │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ ├── instruction_replacements_FPU.sci │ │ ├── noret_procedures.sci │ │ └── unaligned_ebp_areas.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ ├── asm_inout.inc │ │ ├── asm_int.inc │ │ ├── asm_xti.inc │ │ ├── code_dos.inc │ │ ├── code_linux.inc │ │ ├── code_win32.inc │ │ ├── data_all.inc │ │ ├── displaced_labels.sci │ │ ├── extern.inc │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ ├── instruction_replacements_FPU.sci │ │ ├── macros.inc │ │ ├── misc.inc │ │ ├── noret_procedures.sci │ │ └── x86inc.inc ├── README.md ├── Warcraft │ ├── SR-cd-gog │ │ ├── SR.cfg │ │ ├── arm │ │ │ ├── code16_areas.sci │ │ │ ├── displaced_labels.sci │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ └── unaligned_ebp_areas.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── code16_areas.sci │ │ │ ├── displaced_labels.sci │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ └── unaligned_ebp_areas.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code16_areas.sci │ │ │ ├── code_dos.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── displaced_labels.sci │ │ │ ├── extern.inc │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ └── x86inc.inc │ ├── SR-cd │ │ ├── SR.cfg │ │ ├── arm │ │ │ ├── code16_areas.sci │ │ │ ├── displaced_labels.sci │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ └── unaligned_ebp_areas.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── code16_areas.sci │ │ │ ├── displaced_labels.sci │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ └── unaligned_ebp_areas.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code16_areas.sci │ │ │ ├── code_dos.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── displaced_labels.sci │ │ │ ├── extern.inc │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ └── x86inc.inc │ └── SR │ │ ├── SR.cfg │ │ ├── arm │ │ ├── code16_areas.sci │ │ ├── displaced_labels.sci │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ └── unaligned_ebp_areas.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ ├── code16_areas.sci │ │ ├── displaced_labels.sci │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ └── unaligned_ebp_areas.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ ├── asm_inout.inc │ │ ├── asm_int.inc │ │ ├── asm_xti.inc │ │ ├── code16_areas.sci │ │ ├── code_dos.inc │ │ ├── code_linux.inc │ │ ├── code_win32.inc │ │ ├── data_all.inc │ │ ├── displaced_labels.sci │ │ ├── extern.inc │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_replacements.sci │ │ ├── macros.inc │ │ ├── misc.inc │ │ └── x86inc.inc ├── X-Com - Terror from the Deep │ ├── SR1-gog │ │ ├── SR.cfg │ │ ├── arm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── instruction_replacements_FPU.sci │ │ │ └── noret_procedures.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── instruction_replacements_FPU.sci │ │ │ └── noret_procedures.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── instruction_replacements_FPU.sci │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ ├── noret_procedures.sci │ │ │ └── x86inc.inc │ ├── SR1 │ │ ├── SR.cfg │ │ ├── arm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── instruction_replacements_FPU.sci │ │ │ └── noret_procedures.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── instruction_replacements_FPU.sci │ │ │ └── noret_procedures.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_do_not_interpret_as_code.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── instruction_replacements_FPU.sci │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ ├── noret_procedures.sci │ │ │ └── x86inc.inc │ ├── SR2-gog │ │ ├── SR.cfg │ │ ├── arm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ └── instruction_replacements.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_flags.sci │ │ │ └── instruction_replacements.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code_dos.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── instruction_replacements.sci │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ └── x86inc.inc │ └── SR2 │ │ ├── SR.cfg │ │ ├── arm │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ └── instruction_replacements.sci │ │ ├── bssborder.csv │ │ ├── build-arm.sh │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_arm.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ └── instruction_replacements.sci │ │ ├── repair_short_jumps.py │ │ └── x86 │ │ ├── asm_inout.inc │ │ ├── asm_int.inc │ │ ├── asm_xti.inc │ │ ├── code_dos.inc │ │ ├── code_linux.inc │ │ ├── code_win32.inc │ │ ├── data_all.inc │ │ ├── extern.inc │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_replacements.sci │ │ ├── macros.inc │ │ ├── misc.inc │ │ └── x86inc.inc └── X-Com - Ufo Defense │ ├── SR1 │ ├── SR.cfg │ ├── arm │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ ├── instruction_replacements_FPU.sci │ │ └── noret_procedures.sci │ ├── bssborder.csv │ ├── build-arm.sh │ ├── build-llasm.sh │ ├── build-x86.sh │ ├── compact_source.py │ ├── compact_source_arm.py │ ├── compact_source_llasm.py │ ├── llasm │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ ├── instruction_replacements_FPU.sci │ │ └── noret_procedures.sci │ ├── repair_short_jumps.py │ └── x86 │ │ ├── asm_inout.inc │ │ ├── asm_int.inc │ │ ├── asm_xti.inc │ │ ├── code_linux.inc │ │ ├── code_win32.inc │ │ ├── data_all.inc │ │ ├── extern.inc │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_replacements.sci │ │ ├── instruction_replacements_FPU.sci │ │ ├── macros.inc │ │ ├── misc.inc │ │ ├── noret_procedures.sci │ │ └── x86inc.inc │ ├── SR2 │ ├── SR.cfg │ ├── arm │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ └── instruction_replacements.sci │ ├── bssborder.csv │ ├── build-arm.sh │ ├── build-llasm.sh │ ├── build-x86.sh │ ├── compact_source.py │ ├── compact_source_arm.py │ ├── compact_source_llasm.py │ ├── llasm │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_flags.sci │ │ └── instruction_replacements.sci │ ├── repair_short_jumps.py │ └── x86 │ │ ├── asm_inout.inc │ │ ├── asm_int.inc │ │ ├── asm_xti.inc │ │ ├── code_dos.inc │ │ ├── code_linux.inc │ │ ├── code_win32.inc │ │ ├── data_all.inc │ │ ├── extern.inc │ │ ├── external_procedures.sci │ │ ├── fixup_do_not_interpret_as_code.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── global_aliases.sci │ │ ├── instruction_replacements.sci │ │ ├── macros.inc │ │ ├── misc.inc │ │ └── x86inc.inc │ └── SR3 │ ├── SR.cfg │ ├── arm │ ├── external_procedures.sci │ ├── fixup_interpret_as_code.sci │ ├── global_aliases.sci │ ├── instruction_flags.sci │ └── instruction_replacements.sci │ ├── bssborder.csv │ ├── build-arm.sh │ ├── build-llasm.sh │ ├── build-x86.sh │ ├── compact_source.py │ ├── compact_source_arm.py │ ├── compact_source_llasm.py │ ├── llasm │ ├── external_procedures.sci │ ├── fixup_interpret_as_code.sci │ ├── global_aliases.sci │ └── instruction_replacements.sci │ ├── repair_short_jumps.py │ └── x86 │ ├── asm_inout.inc │ ├── asm_int.inc │ ├── asm_xti.inc │ ├── code_linux.inc │ ├── code_win32.inc │ ├── data_all.inc │ ├── extern.inc │ ├── external_procedures.sci │ ├── fixup_interpret_as_code.sci │ ├── global_aliases.sci │ ├── instruction_replacements.sci │ ├── macros.inc │ ├── misc.inc │ └── x86inc.inc ├── SR ├── README.md ├── SConstruct ├── SR_basic.c ├── SR_defs.h ├── SR_full.c ├── SR_full_arm.c ├── SR_full_arm_instr.c ├── SR_full_arm_instr_helper.h ├── SR_full_dos.c ├── SR_full_llasm.c ├── SR_full_llasm_instr.c ├── SR_full_llasm_instr_helper.h ├── SR_full_win32.c ├── SR_loader.c ├── SR_main.c ├── SR_output.c ├── SR_source_code_information.c ├── SR_vars.h ├── arm-support │ ├── SR-proc-divide.c │ ├── SR-proc-divide.h │ ├── SR-proc-float.c │ ├── SR-proc-float.h │ ├── arm.inc │ ├── armconf.inc │ ├── arminc.inc │ ├── asm_divide.inc │ ├── asm_divide.s │ ├── asm_float.inc │ ├── asm_float.s │ ├── asm_float_macros.inc │ ├── asm_inout.inc │ ├── asm_inout.s │ ├── asm_int.inc │ ├── asm_int.s │ ├── asm_mem_access.inc │ ├── asm_mem_access.s │ ├── asm_movmem.inc │ ├── asm_movmem.s │ ├── asm_movs.inc │ ├── asm_movs.s │ ├── asm_pushx.inc │ ├── asm_pushx.s │ ├── asm_stos.inc │ ├── asm_stos.s │ └── asm_xti.inc ├── judy_helpers.c ├── judy_helpers.h ├── llasm-support │ ├── llasm.llinc │ ├── llasm_cmps.c │ ├── llasm_cmps.llinc │ ├── llasm_cpu.h │ ├── llasm_divide.c │ ├── llasm_divide.llinc │ ├── llasm_float.c │ ├── llasm_float.llinc │ ├── llasm_fs_mem.c │ ├── llasm_fs_mem.llinc │ ├── llasm_inout.c │ ├── llasm_inout.llinc │ ├── llasm_int.c │ ├── llasm_int.llinc │ ├── llasm_movmem.c │ ├── llasm_movmem.llinc │ ├── llasm_movs.c │ ├── llasm_movs.llinc │ ├── llasm_pushx.c │ ├── llasm_pushx.llinc │ ├── llasm_scas.c │ ├── llasm_scas.llinc │ ├── llasm_stos.c │ ├── llasm_stos.llinc │ └── llasm_xti.llinc ├── udis86-1.6 │ ├── CHANGES │ ├── COPYING │ ├── LICENSE │ ├── Makefile.in │ ├── Makefile.win32 │ ├── README │ ├── config.h.in │ ├── configure │ ├── configure.in │ ├── docs │ │ ├── doc.html │ │ ├── index.html │ │ ├── ss.jpg │ │ └── style.css │ ├── install-sh │ ├── libudis86 │ │ ├── Makefile.in │ │ ├── Makefile.standalone │ │ ├── Makefile.win32 │ │ ├── decode.c │ │ ├── extern.h │ │ ├── input.c │ │ ├── input.h │ │ ├── mnemonics.c │ │ ├── mnemonics.dat │ │ ├── mnemonics.h │ │ ├── mnemonics.pl │ │ ├── opcmap.c │ │ ├── opcmap.h │ │ ├── syn-att.c │ │ ├── syn-intel.c │ │ ├── syn.c │ │ ├── syn.h │ │ ├── types.h │ │ └── udis86.c │ ├── mkinstalldirs │ ├── tests │ │ ├── Makefile │ │ ├── Makefile.win32 │ │ ├── bufovrrun.c │ │ ├── gen.c │ │ ├── randtest.raw │ │ ├── randtest16.ref │ │ ├── randtest32.ref │ │ ├── randtest64.ref │ │ ├── test16.asm │ │ ├── test32.asm │ │ ├── test64.asm │ │ ├── testjmp.asm │ │ └── testjmp.ref │ ├── udcli │ │ ├── Makefile.in │ │ ├── Makefile.win32 │ │ └── udcli.c │ └── udis86.h ├── udis86_dep.c ├── udis86_dep.h └── x86-support │ ├── asm_inout.asm │ ├── asm_inout.inc │ ├── asm_int.asm │ ├── asm_int.inc │ ├── asm_movmem.asm │ ├── asm_movmem.inc │ ├── asm_xti.inc │ └── x86inc.inc ├── SR64-loader ├── SR64-loader.c ├── komp-arm64.sh ├── komp-x64.sh ├── start-arm64.S ├── start-x64.S ├── syscall-arm64.c ├── syscall-x64.c └── syscall64.h ├── SRW-games ├── Battle Isle 3 │ ├── SRW-ms_figtr │ │ ├── SR.cfg │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── ignored_areas.sci │ │ │ └── instruction_replacements.sci │ │ └── x86 │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── ignored_areas.sci │ │ │ └── instruction_replacements.sci │ ├── SRW-sdi_1r │ │ ├── SR.cfg │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ │ ├── displaced_labels.sci │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── ignored_areas.sci │ │ │ └── instruction_replacements.sci │ │ └── x86 │ │ │ ├── displaced_labels.sci │ │ │ ├── external_procedures.sci │ │ │ ├── fixup_interpret_as_code.sci │ │ │ ├── global_aliases.sci │ │ │ ├── ignored_areas.sci │ │ │ └── instruction_replacements.sci │ └── SRW-wc_figtr │ │ ├── SR.cfg │ │ ├── build-llasm.sh │ │ ├── build-x86.sh │ │ ├── compact_source.py │ │ ├── compact_source_llasm.py │ │ ├── llasm │ │ ├── displaced_labels.sci │ │ ├── external_procedures.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── ignored_areas.sci │ │ ├── instruction_flags.sci │ │ ├── instruction_replacements.sci │ │ └── unaligned_ebp_areas.sci │ │ └── x86 │ │ ├── displaced_labels.sci │ │ ├── extern.inc │ │ ├── external_procedures.sci │ │ ├── fixup_interpret_as_code.sci │ │ ├── ignored_areas.sci │ │ ├── instruction_replacements.sci │ │ ├── misc.inc │ │ └── x86inc.inc ├── README.md └── Septerra Core │ └── SRW │ ├── SR.cfg │ ├── bssborder.csv │ ├── build-llasm.sh │ ├── build-x86.sh │ ├── compact_source.py │ ├── compact_source_llasm.py │ ├── llasm │ ├── displaced_labels.sci │ ├── external_procedures.sci │ ├── fixup_interpret_as_code.sci │ ├── global_aliases.sci │ ├── ignored_areas.sci │ ├── instruction_flags.sci │ ├── instruction_replacements.sci │ ├── instruction_replacements_FPU.sci │ └── noret_procedures.sci │ ├── relocations.csv │ ├── repair_short_jumps.py │ └── x86 │ ├── displaced_labels.sci │ ├── extern.inc │ ├── external_procedures.sci │ ├── fixup_interpret_as_code.sci │ ├── global_aliases.sci │ ├── ignored_areas.sci │ ├── instruction_replacements.sci │ ├── misc.inc │ ├── noret_procedures.sci │ └── x86inc.inc ├── SRW ├── README.md ├── SConstruct ├── SRW_loader.c ├── SR_basic.c ├── SR_defs.h ├── SR_full.c ├── SR_full_dos.c ├── SR_full_llasm.c ├── SR_full_llasm_instr.c ├── SR_full_llasm_instr_helper.h ├── SR_full_win32.c ├── SR_main.c ├── SR_output.c ├── SR_source_code_information.c ├── SR_vars.h ├── judy_helpers.c ├── judy_helpers.h ├── udis86-1.7.2 │ ├── ._INSTALL │ ├── INSTALL │ ├── Makefile.am │ ├── Makefile.in │ ├── README │ ├── aclocal.m4 │ ├── build │ │ ├── compile │ │ ├── config.guess │ │ ├── config.sub │ │ ├── depcomp │ │ ├── install-sh │ │ ├── ltmain.sh │ │ ├── m4 │ │ │ ├── libtool.m4 │ │ │ ├── ltoptions.m4 │ │ │ ├── ltsugar.m4 │ │ │ ├── ltversion.m4 │ │ │ └── lt~obsolete.m4 │ │ └── missing │ ├── config.h.in │ ├── configure │ ├── configure.ac │ ├── docs │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── manual │ │ │ ├── Makefile.am │ │ │ ├── Makefile.in │ │ │ ├── conf.py │ │ │ ├── getstarted.rst │ │ │ ├── index.rst │ │ │ ├── libudis86.rst │ │ │ ├── static │ │ │ │ └── udis86.css │ │ │ └── udis86.info │ │ └── x86 │ │ │ ├── Makefile.am │ │ │ ├── Makefile.in │ │ │ ├── README │ │ │ ├── optable.xml │ │ │ └── optable.xsl │ ├── libudis86 │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── decode.c │ │ ├── decode.h │ │ ├── extern.h │ │ ├── itab.c │ │ ├── itab.h │ │ ├── syn-att.c │ │ ├── syn-intel.c │ │ ├── syn.c │ │ ├── syn.h │ │ ├── types.h │ │ ├── udint.h │ │ └── udis86.c │ ├── m4 │ │ ├── ax_compare_version.m4 │ │ ├── ax_prog_sphinx_version.m4 │ │ ├── ax_prog_yasm_version.m4 │ │ ├── ax_with_prog.m4 │ │ └── ax_with_python.m4 │ ├── scripts │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── ud_itab.py │ │ ├── ud_opcode.py │ │ └── ud_optable.py │ ├── tests │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── asm │ │ │ ├── 16 │ │ │ │ ├── disp.asm │ │ │ │ └── test16.asm │ │ │ ├── 32 │ │ │ │ ├── att.asm │ │ │ │ ├── att.asm.Sref │ │ │ │ ├── att.asm.ref │ │ │ │ ├── corner.asm │ │ │ │ ├── corner.asm.ref │ │ │ │ ├── disp.asm │ │ │ │ ├── disp.asm.Sref │ │ │ │ ├── invalid_seg.asm │ │ │ │ ├── invalid_seg.asm.ref │ │ │ │ ├── obscure.asm │ │ │ │ ├── obscure.asm.ref │ │ │ │ ├── reljmp.asm │ │ │ │ ├── reljmp.asm.ref │ │ │ │ ├── sext.asm │ │ │ │ ├── sext.asm.ref │ │ │ │ └── test32.asm │ │ │ └── 64 │ │ │ │ ├── amd │ │ │ │ ├── invalid.asm │ │ │ │ └── invalid.asm.ref │ │ │ │ ├── branch.asm │ │ │ │ ├── branch.asm.ref │ │ │ │ ├── disp.asm │ │ │ │ ├── disp.asm.Sref │ │ │ │ ├── disp.asm.ref │ │ │ │ ├── intel │ │ │ │ ├── invalid.asm │ │ │ │ └── invalid.asm.ref │ │ │ │ ├── reljmp.asm │ │ │ │ ├── reljmp.asm.ref │ │ │ │ ├── sext.asm │ │ │ │ ├── sext.asm.ref │ │ │ │ └── test64.asm │ │ ├── bufoverrun.c │ │ ├── difftest.sh.in │ │ ├── installcheck.c │ │ ├── libcheck.c │ │ ├── oprgen.py │ │ ├── symresolve.c │ │ └── symresolve.ref │ ├── udcli │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ └── udcli.c │ └── udis86.h ├── udis86_dep.c ├── udis86_dep.h └── x86-support │ ├── asm_fs_mem.asm │ └── x86inc.inc ├── games ├── Albion │ ├── SR-Main │ │ ├── Albion-3dengine.c │ │ ├── Albion-AIL.c │ │ ├── Albion-AIL.h │ │ ├── Albion-BBBASMEM.c │ │ ├── Albion-BBBASMEM.h │ │ ├── Albion-BBDOS.c │ │ ├── Albion-BBDOS.h │ │ ├── Albion-BBERROR.c │ │ ├── Albion-BBERROR.h │ │ ├── Albion-BBOPM.c │ │ ├── Albion-BBOPM.h │ │ ├── Albion-inout.c │ │ ├── Albion-inout.h │ │ ├── Albion-int.c │ │ ├── Albion-int.h │ │ ├── Albion-int2.c │ │ ├── Albion-int2.h │ │ ├── Albion-int3.c │ │ ├── Albion-int3.h │ │ ├── Albion-music-midiplugin.c │ │ ├── Albion-music-midiplugin.h │ │ ├── Albion-music-midiplugin2.c │ │ ├── Albion-music-midiplugin2.h │ │ ├── Albion-music-xmiplayer.c │ │ ├── Albion-music-xmiplayer.h │ │ ├── Albion-music.c │ │ ├── Albion-music.h │ │ ├── Albion-out2.c │ │ ├── Albion-out2.h │ │ ├── Albion-proc-events.c │ │ ├── Albion-proc-events.h │ │ ├── Albion-proc-float.c │ │ ├── Albion-proc-float.h │ │ ├── Albion-proc-vfs.c │ │ ├── Albion-proc-vfs.h │ │ ├── Albion-proc.c │ │ ├── Albion-proc.h │ │ ├── Albion-screenshot.c │ │ ├── Albion-smk.c │ │ ├── Albion-smk.h │ │ ├── Albion-sound.c │ │ ├── Albion-sound.h │ │ ├── Albion-timer.c │ │ ├── Albion-timer.h │ │ ├── Game-int.h │ │ ├── Game-int2.h │ │ ├── Game-int3.h │ │ ├── Game_config.c │ │ ├── Game_config.h │ │ ├── Game_defs.h │ │ ├── Game_misc.c │ │ ├── Game_misc.h │ │ ├── Game_scalerplugin.c │ │ ├── Game_scalerplugin.h │ │ ├── Game_thread.c │ │ ├── Game_thread.h │ │ ├── Game_vars.h │ │ ├── Game_virtualkeyboard.c │ │ ├── Game_virtualkeyboard.h │ │ ├── SConstruct │ │ ├── VKfont1.h │ │ ├── VKfont2.h │ │ ├── arm │ │ │ ├── Albion-3dengineprocs.s │ │ │ ├── Game-asm.s │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.inc │ │ │ ├── SR-asm-calls.s │ │ │ ├── SR-asm.s │ │ │ ├── SR-proc-divide.c │ │ │ ├── SR-proc-divide.h │ │ │ ├── arm.inc │ │ │ ├── armconf.inc │ │ │ ├── arminc.inc │ │ │ ├── asm_divide.inc │ │ │ ├── asm_divide.s │ │ │ ├── asm_inout.inc │ │ │ ├── asm_inout.s │ │ │ ├── asm_int.inc │ │ │ ├── asm_int.s │ │ │ ├── asm_mem_access.inc │ │ │ ├── asm_mem_access.s │ │ │ ├── asm_movs.inc │ │ │ ├── asm_movs.s │ │ │ ├── asm_pushx.inc │ │ │ ├── asm_pushx.s │ │ │ ├── asm_stos.inc │ │ │ ├── asm_stos.s │ │ │ ├── asm_xti.inc │ │ │ ├── code_armlinux.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── macros.inc │ │ │ └── misc.inc │ │ ├── audio.h │ │ ├── audio │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── pandora.c │ │ │ └── pc.c │ │ ├── display.h │ │ ├── display │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── overlay.h │ │ │ ├── palette16bgra.h │ │ │ ├── palette32bgra.h │ │ │ ├── palettecommon.h │ │ │ ├── pandora.c │ │ │ └── pc.c │ │ ├── input.h │ │ ├── input │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── pandora.c │ │ │ ├── pc.c │ │ │ └── pyra.c │ │ ├── llasm │ │ │ ├── CLIB-proc-llasm.c │ │ │ ├── CLIB-proc-llasm.h │ │ │ ├── Game-asm.c │ │ │ ├── Game-llasm.llasm │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.llasm │ │ │ ├── SR-asm-calls.llinc │ │ │ ├── SR-asm.c │ │ │ ├── asm-cpu.c │ │ │ ├── extern.llinc │ │ │ ├── llasm.llinc │ │ │ ├── llasm_cpu.h │ │ │ ├── llasm_divide.c │ │ │ ├── llasm_divide.llinc │ │ │ ├── llasm_inout.c │ │ │ ├── llasm_inout.llinc │ │ │ ├── llasm_int.c │ │ │ ├── llasm_int.llinc │ │ │ ├── llasm_movs.c │ │ │ ├── llasm_movs.llinc │ │ │ ├── llasm_pushx.c │ │ │ ├── llasm_pushx.llinc │ │ │ ├── llasm_stos.c │ │ │ ├── llasm_stos.llinc │ │ │ ├── llasm_xti.llinc │ │ │ ├── macros.llinc │ │ │ ├── printf_x86.c │ │ │ └── printf_x86.h │ │ ├── main.c │ │ ├── main.h │ │ ├── midi-plugins.h │ │ ├── midi-plugins2.h │ │ ├── ptr32.h │ │ ├── scaler-plugins.h │ │ ├── smack.c │ │ ├── smack.h │ │ ├── virtualfs.c │ │ ├── virtualfs.h │ │ ├── x86 │ │ │ ├── Albion-3dengineprocs.asm │ │ │ ├── Game-asm.asm │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.asm │ │ │ ├── SR-asm-calls.inc │ │ │ ├── SR-asm.asm │ │ │ ├── asm_inout.asm │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.asm │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ └── x86inc.inc │ │ ├── xmi2mid.c │ │ └── xmi2mid.h │ ├── release │ │ ├── linux │ │ │ ├── Albion-setup.sh │ │ │ ├── Albion.cfg │ │ │ ├── Albion.sh │ │ │ ├── arm-aarch64 │ │ │ │ └── readme-Linux.txt │ │ │ ├── armv7-gnueabihf │ │ │ │ └── readme-Linux.txt │ │ │ ├── readme-Linux.txt │ │ │ └── x64 │ │ │ │ └── readme-Linux.txt │ │ └── windows │ │ │ ├── Albion.cfg │ │ │ ├── Albion.cmd │ │ │ └── readme-Windows.txt │ └── smk_play │ │ ├── SConstruct │ │ ├── main1.c │ │ ├── smack.c │ │ ├── smack.h │ │ └── smk_defs.h ├── Battle Isle 3 │ ├── SR-BI3 │ │ ├── BBAVI.c │ │ ├── BBAVI.h │ │ ├── BBBLEV.c │ │ ├── BBBLEV.h │ │ ├── BBDBG.c │ │ ├── BBDBG.h │ │ ├── BBDEPACK.c │ │ ├── BBDEPACK.h │ │ ├── BBDOS.c │ │ ├── BBDOS.h │ │ ├── BBDSA.c │ │ ├── BBDSA.h │ │ ├── BBFX.c │ │ ├── BBFX.h │ │ ├── BBLBL.c │ │ ├── BBLBL.h │ │ ├── BBLBM.c │ │ ├── BBLBM.h │ │ ├── BBLL.c │ │ ├── BBLL.h │ │ ├── BBMEM.c │ │ ├── BBMEM.h │ │ ├── BBOPM.c │ │ ├── BBOPM.h │ │ ├── BBRNG.c │ │ ├── BBRNG.h │ │ ├── BBSYSTEM.c │ │ ├── BBSYSTEM.h │ │ ├── BBTOOL.c │ │ ├── BBTOOL.h │ │ ├── BBTXT.c │ │ ├── BBTXT.h │ │ ├── CLIB.c │ │ ├── CLIB.h │ │ ├── FGT.c │ │ ├── FGT.h │ │ ├── Game-Config.c │ │ ├── Game-Config.h │ │ ├── Game-Display.c │ │ ├── Game-Display.h │ │ ├── SConstruct │ │ ├── SDI.c │ │ ├── SDI.h │ │ ├── SDIcmdline.c │ │ ├── SDIcmdline.h │ │ ├── SDImidi.c │ │ ├── SDImidi.h │ │ ├── SDIresource.c │ │ ├── SDIresource.h │ │ ├── SDIvideo.c │ │ ├── SDIvideo.h │ │ ├── WinApi-gdi32.c │ │ ├── WinApi-gdi32.h │ │ ├── WinApi-kernel32.c │ │ ├── WinApi-kernel32.h │ │ ├── WinApi-user32.c │ │ ├── WinApi-user32.h │ │ ├── WinApi-wing32.c │ │ ├── WinApi-wing32.h │ │ ├── WinApi-winmm.c │ │ ├── WinApi-winmm.h │ │ ├── llasm │ │ │ ├── BASELIBR.llasm │ │ │ ├── BBAVI-asm.llasm │ │ │ ├── BBBLEV-asm.llasm │ │ │ ├── BBDBG-asm.llasm │ │ │ ├── BBDEPACK-asm.llasm │ │ │ ├── BBDOS-asm.llasm │ │ │ ├── BBDSA-asm.llasm │ │ │ ├── BBFX-asm.llasm │ │ │ ├── BBLBL-asm.llasm │ │ │ ├── BBLBM-asm.llasm │ │ │ ├── BBLL-asm.llasm │ │ │ ├── BBMEM-asm.llasm │ │ │ ├── BBOPM-asm.llasm │ │ │ ├── BBRNG-asm.llasm │ │ │ ├── BBSYSTEM-asm.llasm │ │ │ ├── BBTOOL-asm.llasm │ │ │ ├── BBTXT-asm.llasm │ │ │ ├── CLIB-asm-llasm.c │ │ │ ├── CLIB-asm-llasm.h │ │ │ ├── CLIB-asm.llasm │ │ │ ├── FGT-asm.llasm │ │ │ ├── SConscript │ │ │ ├── SDI-asm.llasm │ │ │ ├── SDIcmdline-asm.llasm │ │ │ ├── SDImidi-asm.llasm │ │ │ ├── SDIvideo-asm.llasm │ │ │ ├── WinApi-gdi32-asm.llasm │ │ │ ├── WinApi-kernel32-asm.llasm │ │ │ ├── WinApi-user32-asm-llasm.c │ │ │ ├── WinApi-user32-asm-llasm.h │ │ │ ├── WinApi-user32-asm.llasm │ │ │ ├── WinApi-winmm-asm.llasm │ │ │ ├── X86_FS_mem.c │ │ │ ├── asm-calls.llinc │ │ │ ├── asm-cpu.c │ │ │ ├── llasm.llinc │ │ │ ├── llasm_cpu.h │ │ │ ├── llasm_divide.c │ │ │ ├── llasm_divide.llinc │ │ │ ├── llasm_float.c │ │ │ ├── llasm_float.llinc │ │ │ ├── llasm_fs_mem.c │ │ │ ├── llasm_fs_mem.llinc │ │ │ ├── llasm_movs.c │ │ │ ├── llasm_movs.llinc │ │ │ ├── llasm_pushx.c │ │ │ ├── llasm_pushx.llinc │ │ │ ├── llasm_stos.c │ │ │ ├── llasm_stos.llinc │ │ │ ├── macros.llinc │ │ │ ├── main-asm.c │ │ │ ├── ms_figtr │ │ │ │ └── extern.llinc │ │ │ ├── printf_x86.c │ │ │ ├── printf_x86.h │ │ │ ├── sdi_1r │ │ │ │ └── extern.llinc │ │ │ └── wc_figtr │ │ │ │ └── extern.llinc │ │ ├── main.c │ │ ├── midi-plugins.h │ │ ├── midi-plugins2.h │ │ └── x86 │ │ │ ├── BASELIBR.asm │ │ │ ├── BBAVI-asm.asm │ │ │ ├── BBBLEV-asm.asm │ │ │ ├── BBDBG-asm.asm │ │ │ ├── BBDEPACK-asm.asm │ │ │ ├── BBDOS-asm.asm │ │ │ ├── BBDSA-asm.asm │ │ │ ├── BBFX-asm.asm │ │ │ ├── BBLBL-asm.asm │ │ │ ├── BBLBM-asm.asm │ │ │ ├── BBLL-asm.asm │ │ │ ├── BBMEM-asm.asm │ │ │ ├── BBOPM-asm.asm │ │ │ ├── BBRNG-asm.asm │ │ │ ├── BBSYSTEM-asm.asm │ │ │ ├── BBTOOL-asm.asm │ │ │ ├── BBTXT-asm.asm │ │ │ ├── CLIB-asm-x86.c │ │ │ ├── CLIB-asm-x86.h │ │ │ ├── CLIB-asm.asm │ │ │ ├── FGT-asm.asm │ │ │ ├── SConscript │ │ │ ├── SDI-asm.asm │ │ │ ├── SDIcmdline-asm.asm │ │ │ ├── SDImidi-asm.asm │ │ │ ├── SDIvideo-asm.asm │ │ │ ├── WinApi-gdi32-asm.asm │ │ │ ├── WinApi-kernel32-asm.asm │ │ │ ├── WinApi-user32-asm-x86.c │ │ │ ├── WinApi-user32-asm-x86.h │ │ │ ├── WinApi-user32-asm.asm │ │ │ ├── WinApi-winmm-asm.asm │ │ │ ├── X86_FS_mem.c │ │ │ ├── asm-calls.inc │ │ │ ├── asm_fs_mem.asm │ │ │ ├── main-asm.asm │ │ │ ├── misc.inc │ │ │ ├── ms_figtr │ │ │ ├── SConscript │ │ │ └── extern.inc │ │ │ ├── sdi_1r │ │ │ ├── SConscript │ │ │ └── extern.inc │ │ │ ├── wc_figtr │ │ │ ├── SConscript │ │ │ └── extern.inc │ │ │ └── x86inc.inc │ └── release │ │ ├── SDI.INI │ │ ├── linux │ │ ├── BI3.cfg │ │ ├── BattleIsle3.sh │ │ └── readme-Linux.txt │ │ └── windows │ │ ├── BI3.cfg │ │ ├── BattleIsle3.cmd │ │ └── readme-Windows.txt ├── README.md ├── Septerra Core │ ├── SR-Septerra │ │ ├── CLIB.c │ │ ├── CLIB.h │ │ ├── Game-Config.c │ │ ├── Game-Config.h │ │ ├── Game-DataFiles.c │ │ ├── Game-DataFiles.h │ │ ├── Game-Main.c │ │ ├── Game-Patch.c │ │ ├── Game-Patch.h │ │ ├── Game-Registry.c │ │ ├── Game-Registry.h │ │ ├── Game-SoundEngine.c │ │ ├── Game-SoundEngine.h │ │ ├── MSS.c │ │ ├── MSS.h │ │ ├── QTML.c │ │ ├── QTML.h │ │ ├── SConstruct │ │ ├── VKfont.h │ │ ├── WinApi-ddraw.c │ │ ├── WinApi-ddraw.h │ │ ├── WinApi-dsound-conv.h │ │ ├── WinApi-dsound.c │ │ ├── WinApi-dsound.h │ │ ├── WinApi-gdi32.c │ │ ├── WinApi-gdi32.h │ │ ├── WinApi-kernel32.c │ │ ├── WinApi-kernel32.h │ │ ├── WinApi-user32.c │ │ ├── WinApi-user32.h │ │ ├── WinApi-winmm.c │ │ ├── WinApi-winmm.h │ │ ├── WinApi.c │ │ ├── WinApi.h │ │ ├── X86_FS_mem.c │ │ ├── llasm │ │ │ ├── CLIB-asm-llasm.c │ │ │ ├── CLIB-asm-llasm.h │ │ │ ├── CLIB-asm.llasm │ │ │ ├── Game-DataFiles-asm.llasm │ │ │ ├── Game-Patch-asm.llasm │ │ │ ├── Game-Registry-asm.llasm │ │ │ ├── Game-SoundEngine-asm.llasm │ │ │ ├── MSS-asm.llasm │ │ │ ├── QTML-asm.llasm │ │ │ ├── SConscript │ │ │ ├── WinApi-ddraw-asm.llasm │ │ │ ├── WinApi-dsound-asm.llasm │ │ │ ├── WinApi-gdi32-asm.llasm │ │ │ ├── WinApi-kernel32-asm.llasm │ │ │ ├── WinApi-user32-asm.llasm │ │ │ ├── WinApi-winmm-asm.llasm │ │ │ ├── asm-calls.llinc │ │ │ ├── asm-cpu.c │ │ │ ├── asm-llasm.c │ │ │ ├── extern.llinc │ │ │ ├── llasm.llinc │ │ │ ├── llasm_cpu.h │ │ │ ├── llasm_divide.c │ │ │ ├── llasm_divide.llinc │ │ │ ├── llasm_float.c │ │ │ ├── llasm_float.llinc │ │ │ ├── llasm_fs_mem.c │ │ │ ├── llasm_fs_mem.llinc │ │ │ ├── llasm_movs.c │ │ │ ├── llasm_movs.llinc │ │ │ ├── llasm_pushx.c │ │ │ ├── llasm_pushx.llinc │ │ │ ├── llasm_scas.c │ │ │ ├── llasm_scas.llinc │ │ │ ├── llasm_stos.c │ │ │ ├── llasm_stos.llinc │ │ │ ├── macros.llinc │ │ │ ├── printf_x86.c │ │ │ └── printf_x86.h │ │ ├── ptr32.h │ │ └── x86 │ │ │ ├── CLIB-asm-x86.c │ │ │ ├── CLIB-asm-x86.h │ │ │ ├── CLIB-asm.asm │ │ │ ├── Game-DataFiles-asm.asm │ │ │ ├── Game-Main-asm.asm │ │ │ ├── Game-Patch-asm.asm │ │ │ ├── Game-Registry-asm.asm │ │ │ ├── Game-SoundEngine-asm.asm │ │ │ ├── MSS-asm.asm │ │ │ ├── QTML-asm.asm │ │ │ ├── SConscript │ │ │ ├── WinApi-ddraw-asm.asm │ │ │ ├── WinApi-dsound-asm.asm │ │ │ ├── WinApi-gdi32-asm.asm │ │ │ ├── WinApi-kernel32-asm.asm │ │ │ ├── WinApi-user32-asm.asm │ │ │ ├── WinApi-winmm-asm.asm │ │ │ ├── asm-calls.inc │ │ │ ├── asm_fs_mem.asm │ │ │ ├── extern.inc │ │ │ ├── misc.inc │ │ │ └── x86inc.inc │ └── release │ │ ├── linux │ │ ├── Septerra.cfg │ │ ├── Septerra.sh │ │ ├── arm-aarch64 │ │ │ └── readme-Linux.txt │ │ ├── armv7-gnueabihf │ │ │ └── readme-Linux.txt │ │ ├── readme-Linux.txt │ │ └── x64 │ │ │ └── readme-Linux.txt │ │ └── windows │ │ ├── Septerra.cfg │ │ └── readme-Windows.txt ├── Warcraft │ ├── SR-War │ │ ├── Game-int.h │ │ ├── Game-int2.h │ │ ├── Game_config.c │ │ ├── Game_config.h │ │ ├── Game_defs.h │ │ ├── Game_scalerplugin.c │ │ ├── Game_scalerplugin.h │ │ ├── Game_thread.c │ │ ├── Game_thread.h │ │ ├── Game_vars.h │ │ ├── Game_virtualkeyboard.c │ │ ├── Game_virtualkeyboard.h │ │ ├── SConstruct │ │ ├── VKfont1.h │ │ ├── VKfont2.h │ │ ├── Warcraft-in2.c │ │ ├── Warcraft-in2.h │ │ ├── Warcraft-inout.c │ │ ├── Warcraft-inout.h │ │ ├── Warcraft-int.c │ │ ├── Warcraft-int.h │ │ ├── Warcraft-int2.c │ │ ├── Warcraft-int2.h │ │ ├── Warcraft-music-midiplugin.c │ │ ├── Warcraft-music-midiplugin.h │ │ ├── Warcraft-music-midiplugin2.c │ │ ├── Warcraft-music-midiplugin2.h │ │ ├── Warcraft-music.c │ │ ├── Warcraft-music.h │ │ ├── Warcraft-out2.c │ │ ├── Warcraft-out2.h │ │ ├── Warcraft-proc-events.c │ │ ├── Warcraft-proc-events.h │ │ ├── Warcraft-proc-vfs.c │ │ ├── Warcraft-proc-vfs.h │ │ ├── Warcraft-proc.c │ │ ├── Warcraft-proc.h │ │ ├── Warcraft-sound.c │ │ ├── Warcraft-sound.h │ │ ├── Warcraft-timer.c │ │ ├── Warcraft-timer.h │ │ ├── arm │ │ │ ├── Game-asm.s │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.inc │ │ │ ├── SR-asm-calls.s │ │ │ ├── SR-asm.s │ │ │ ├── SR-proc-divide.c │ │ │ ├── SR-proc-divide.h │ │ │ ├── arm.inc │ │ │ ├── armconf.inc │ │ │ ├── arminc.inc │ │ │ ├── asm_divide.inc │ │ │ ├── asm_divide.s │ │ │ ├── asm_inout.inc │ │ │ ├── asm_inout.s │ │ │ ├── asm_int.inc │ │ │ ├── asm_int.s │ │ │ ├── asm_mem_access.inc │ │ │ ├── asm_mem_access.s │ │ │ ├── asm_movs.inc │ │ │ ├── asm_movs.s │ │ │ ├── asm_pushx.inc │ │ │ ├── asm_pushx.s │ │ │ ├── asm_stos.inc │ │ │ ├── asm_stos.s │ │ │ ├── asm_xti.inc │ │ │ ├── cdgogver │ │ │ │ └── .cdgogver │ │ │ ├── cdver │ │ │ │ └── .cdver │ │ │ ├── code_armlinux.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ ├── war-asm-cd.s │ │ │ └── war-asm-cdgog.s │ │ ├── audio.h │ │ ├── audio │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── pandora.c │ │ │ └── pc.c │ │ ├── display.h │ │ ├── display │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── palette16bgra.h │ │ │ ├── palette32bgra.h │ │ │ ├── palettecommon.h │ │ │ ├── pandora.c │ │ │ └── pc.c │ │ ├── input.h │ │ ├── input │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── pandora.c │ │ │ ├── pc.c │ │ │ └── pyra.c │ │ ├── llasm │ │ │ ├── CLIB-proc-llasm.c │ │ │ ├── CLIB-proc-llasm.h │ │ │ ├── Game-asm.c │ │ │ ├── Game-llasm.llasm │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.llasm │ │ │ ├── SR-asm-calls.llinc │ │ │ ├── SR-asm.c │ │ │ ├── asm-cpu.c │ │ │ ├── cdgogver │ │ │ │ └── .cdgogver │ │ │ ├── cdver │ │ │ │ └── .cdver │ │ │ ├── extern.llinc │ │ │ ├── llasm.llinc │ │ │ ├── llasm_cpu.h │ │ │ ├── llasm_divide.c │ │ │ ├── llasm_divide.llinc │ │ │ ├── llasm_inout.c │ │ │ ├── llasm_inout.llinc │ │ │ ├── llasm_int.c │ │ │ ├── llasm_int.llinc │ │ │ ├── llasm_movs.c │ │ │ ├── llasm_movs.llinc │ │ │ ├── llasm_pushx.c │ │ │ ├── llasm_pushx.llinc │ │ │ ├── llasm_scas.c │ │ │ ├── llasm_scas.llinc │ │ │ ├── llasm_stos.c │ │ │ ├── llasm_stos.llinc │ │ │ ├── llasm_xti.llinc │ │ │ ├── macros.llinc │ │ │ ├── printf_x86.c │ │ │ ├── printf_x86.h │ │ │ ├── war-asm-cd.llasm │ │ │ └── war-asm-cdgog.llasm │ │ ├── main.c │ │ ├── main.h │ │ ├── midi-plugins.h │ │ ├── midi-plugins2.h │ │ ├── ptr32.h │ │ ├── scaler-plugins.h │ │ ├── virtualfs.c │ │ ├── virtualfs.h │ │ ├── x86 │ │ │ ├── Game-asm.asm │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.asm │ │ │ ├── SR-asm-calls.inc │ │ │ ├── SR-asm.asm │ │ │ ├── asm_inout.asm │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.asm │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── cdgogver │ │ │ │ └── .cdgogver │ │ │ ├── cdver │ │ │ │ └── .cdver │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ ├── war-asm-cd.asm │ │ │ ├── war-asm-cdgog.asm │ │ │ └── x86inc.inc │ │ ├── xmi2mid.c │ │ └── xmi2mid.h │ └── release │ │ ├── linux │ │ ├── Warcraft-setup.sh │ │ ├── Warcraft.cfg │ │ ├── Warcraft.sh │ │ ├── arm-aarch64 │ │ │ └── readme-Linux.txt │ │ ├── armv7-gnueabihf │ │ │ └── readme-Linux.txt │ │ ├── readme-Linux.txt │ │ └── x64 │ │ │ └── readme-Linux.txt │ │ └── windows │ │ ├── Warcraft.cfg │ │ ├── Warcraft.cmd │ │ └── readme-Windows.txt ├── X-Com - Terror from the Deep │ ├── SR-Xcom2 │ │ ├── Game-int.h │ │ ├── Game-int2.h │ │ ├── Game-int3.h │ │ ├── Game_config.c │ │ ├── Game_config.h │ │ ├── Game_defs.h │ │ ├── Game_misc.c │ │ ├── Game_misc.h │ │ ├── Game_scalerplugin.c │ │ ├── Game_scalerplugin.h │ │ ├── Game_thread.c │ │ ├── Game_thread.h │ │ ├── Game_vars.h │ │ ├── Game_virtualkeyboard.c │ │ ├── Game_virtualkeyboard.h │ │ ├── SConstruct │ │ ├── VKfont1.h │ │ ├── VKfont2.h │ │ ├── Xcom-inout.c │ │ ├── Xcom-inout.h │ │ ├── Xcom-inout2.c │ │ ├── Xcom-inout2.h │ │ ├── Xcom-int.c │ │ ├── Xcom-int.h │ │ ├── Xcom-int2.c │ │ ├── Xcom-int2.h │ │ ├── Xcom-int3.c │ │ ├── Xcom-int3.h │ │ ├── Xcom-music-midifiles.c │ │ ├── Xcom-music-midiplugin.c │ │ ├── Xcom-music-midiplugin.h │ │ ├── Xcom-music-midiplugin2.c │ │ ├── Xcom-music-midiplugin2.h │ │ ├── Xcom-music.c │ │ ├── Xcom-music.h │ │ ├── Xcom-proc-events.c │ │ ├── Xcom-proc-events.h │ │ ├── Xcom-proc-vfs.c │ │ ├── Xcom-proc-vfs.h │ │ ├── Xcom-proc.c │ │ ├── Xcom-proc.h │ │ ├── Xcom-sound.c │ │ ├── Xcom-sound.h │ │ ├── Xcom-timer.c │ │ ├── Xcom-timer.h │ │ ├── arm │ │ │ ├── Game-asm.s │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.inc │ │ │ ├── SR-asm-calls.s │ │ │ ├── SR-asm.s │ │ │ ├── SR-proc-divide.c │ │ │ ├── SR-proc-divide.h │ │ │ ├── SR-proc-float.c │ │ │ ├── SR-proc-float.h │ │ │ ├── arm.inc │ │ │ ├── armconf.inc │ │ │ ├── arminc.inc │ │ │ ├── asm_divide.inc │ │ │ ├── asm_divide.s │ │ │ ├── asm_float.inc │ │ │ ├── asm_float.s │ │ │ ├── asm_float_macros.inc │ │ │ ├── asm_inout.inc │ │ │ ├── asm_inout.s │ │ │ ├── asm_int.inc │ │ │ ├── asm_int.s │ │ │ ├── asm_mem_access.inc │ │ │ ├── asm_mem_access.s │ │ │ ├── asm_movs.inc │ │ │ ├── asm_movs.s │ │ │ ├── asm_pushx.inc │ │ │ ├── asm_pushx.s │ │ │ ├── asm_stos.inc │ │ │ ├── asm_stos.s │ │ │ ├── asm_xti.inc │ │ │ ├── code_armlinux.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── geoscape │ │ │ │ ├── SConscript │ │ │ │ ├── geoscape-asm-gog.s │ │ │ │ └── gogver │ │ │ │ │ └── .gogver │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ └── tactical │ │ │ │ ├── SConscript │ │ │ │ ├── gogver │ │ │ │ └── .gogver │ │ │ │ └── tactical-asm-gog.s │ │ ├── audio.h │ │ ├── audio │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── pandora.c │ │ │ └── pc.c │ │ ├── display.h │ │ ├── display │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── palette16bgra.h │ │ │ ├── palette32bgra.h │ │ │ ├── palettecommon.h │ │ │ ├── pandora.c │ │ │ └── pc.c │ │ ├── gmcat2mid.c │ │ ├── gmcat2mid.h │ │ ├── input.h │ │ ├── input │ │ │ ├── SConscript │ │ │ ├── gp2x.c │ │ │ ├── pandora.c │ │ │ ├── pc.c │ │ │ └── pyra.c │ │ ├── llasm │ │ │ ├── CLIB-proc-llasm.c │ │ │ ├── CLIB-proc-llasm.h │ │ │ ├── Game-asm.c │ │ │ ├── Game-llasm.llasm │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.llasm │ │ │ ├── SR-asm-calls.llinc │ │ │ ├── SR-asm.c │ │ │ ├── asm-cpu.c │ │ │ ├── extern.llinc │ │ │ ├── geoscape │ │ │ │ ├── SConscript │ │ │ │ ├── geoscape-asm-gog.llasm │ │ │ │ └── gogver │ │ │ │ │ └── .gogver │ │ │ ├── llasm.llinc │ │ │ ├── llasm_cpu.h │ │ │ ├── llasm_divide.c │ │ │ ├── llasm_divide.llinc │ │ │ ├── llasm_float.c │ │ │ ├── llasm_float.llinc │ │ │ ├── llasm_inout.c │ │ │ ├── llasm_inout.llinc │ │ │ ├── llasm_int.c │ │ │ ├── llasm_int.llinc │ │ │ ├── llasm_movs.c │ │ │ ├── llasm_movs.llinc │ │ │ ├── llasm_pushx.c │ │ │ ├── llasm_pushx.llinc │ │ │ ├── llasm_scas.c │ │ │ ├── llasm_scas.llinc │ │ │ ├── llasm_stos.c │ │ │ ├── llasm_stos.llinc │ │ │ ├── llasm_xti.llinc │ │ │ ├── macros.llinc │ │ │ ├── printf_x86.c │ │ │ ├── printf_x86.h │ │ │ └── tactical │ │ │ │ ├── SConscript │ │ │ │ ├── gogver │ │ │ │ └── .gogver │ │ │ │ └── tactical-asm-gog.llasm │ │ ├── main.c │ │ ├── main.h │ │ ├── midi-plugins.h │ │ ├── midi-plugins2.h │ │ ├── ptr32.h │ │ ├── scaler-plugins.h │ │ ├── virtualfs.c │ │ ├── virtualfs.h │ │ └── x86 │ │ │ ├── Game-asm.asm │ │ │ ├── SConscript │ │ │ ├── SR-asm-calls.asm │ │ │ ├── SR-asm-calls.inc │ │ │ ├── SR-asm-float2.asm │ │ │ ├── SR-asm.asm │ │ │ ├── SR-proc-float2.c │ │ │ ├── SR-proc-float2.h │ │ │ ├── asm_inout.asm │ │ │ ├── asm_inout.inc │ │ │ ├── asm_int.asm │ │ │ ├── asm_int.inc │ │ │ ├── asm_xti.inc │ │ │ ├── code_linux.inc │ │ │ ├── code_win32.inc │ │ │ ├── data_all.inc │ │ │ ├── extern.inc │ │ │ ├── geoscape │ │ │ ├── SConscript │ │ │ ├── geoscape-asm-gog.asm │ │ │ └── gogver │ │ │ │ └── .gogver │ │ │ ├── macros.inc │ │ │ ├── misc.inc │ │ │ ├── tactical │ │ │ ├── SConscript │ │ │ ├── gogver │ │ │ │ └── .gogver │ │ │ └── tactical-asm-gog.asm │ │ │ └── x86inc.inc │ └── release │ │ ├── linux │ │ ├── Ufo.cfg │ │ ├── arm-aarch64 │ │ │ └── readme-Linux.txt │ │ ├── armv7-gnueabihf │ │ │ └── readme-Linux.txt │ │ ├── readme-Linux.txt │ │ ├── x64 │ │ │ └── readme-Linux.txt │ │ ├── xcom2-setup.sh │ │ └── xcom2.sh │ │ └── windows │ │ ├── Ufo.cfg │ │ ├── readme-Windows.txt │ │ └── xcom2.cmd └── X-Com - Ufo Defense │ ├── SR-Xcom1 │ ├── Game-int.h │ ├── Game-int2.h │ ├── Game-int3.h │ ├── Game_config.c │ ├── Game_config.h │ ├── Game_defs.h │ ├── Game_misc.c │ ├── Game_misc.h │ ├── Game_scalerplugin.c │ ├── Game_scalerplugin.h │ ├── Game_thread.c │ ├── Game_thread.h │ ├── Game_vars.h │ ├── Game_virtualkeyboard.c │ ├── Game_virtualkeyboard.h │ ├── SConstruct │ ├── VKfont1.h │ ├── VKfont2.h │ ├── Xcom-inout.c │ ├── Xcom-inout.h │ ├── Xcom-inout2.c │ ├── Xcom-inout2.h │ ├── Xcom-int.c │ ├── Xcom-int.h │ ├── Xcom-int2.c │ ├── Xcom-int2.h │ ├── Xcom-int3.c │ ├── Xcom-int3.h │ ├── Xcom-music-midifiles.c │ ├── Xcom-music-midiplugin.c │ ├── Xcom-music-midiplugin.h │ ├── Xcom-music-midiplugin2.c │ ├── Xcom-music-midiplugin2.h │ ├── Xcom-music.c │ ├── Xcom-music.h │ ├── Xcom-proc-events.c │ ├── Xcom-proc-events.h │ ├── Xcom-proc-vfs.c │ ├── Xcom-proc-vfs.h │ ├── Xcom-proc.c │ ├── Xcom-proc.h │ ├── Xcom-sound.c │ ├── Xcom-sound.h │ ├── Xcom-timer.c │ ├── Xcom-timer.h │ ├── arm │ │ ├── Game-asm.s │ │ ├── SConscript │ │ ├── SR-asm-calls.inc │ │ ├── SR-asm-calls.s │ │ ├── SR-asm.s │ │ ├── SR-proc-divide.c │ │ ├── SR-proc-divide.h │ │ ├── SR-proc-float.c │ │ ├── SR-proc-float.h │ │ ├── arm.inc │ │ ├── armconf.inc │ │ ├── arminc.inc │ │ ├── asm_divide.inc │ │ ├── asm_divide.s │ │ ├── asm_float.inc │ │ ├── asm_float.s │ │ ├── asm_float_macros.inc │ │ ├── asm_inout.inc │ │ ├── asm_inout.s │ │ ├── asm_int.inc │ │ ├── asm_int.s │ │ ├── asm_mem_access.inc │ │ ├── asm_mem_access.s │ │ ├── asm_movs.inc │ │ ├── asm_movs.s │ │ ├── asm_pushx.inc │ │ ├── asm_pushx.s │ │ ├── asm_stos.inc │ │ ├── asm_stos.s │ │ ├── asm_xti.inc │ │ ├── code_armlinux.inc │ │ ├── data_all.inc │ │ ├── extern.inc │ │ ├── geoscape │ │ │ └── SConscript │ │ ├── intro │ │ │ └── SConscript │ │ ├── macros.inc │ │ ├── misc.inc │ │ └── tactical │ │ │ └── SConscript │ ├── audio.h │ ├── audio │ │ ├── SConscript │ │ ├── gp2x.c │ │ ├── pandora.c │ │ └── pc.c │ ├── display.h │ ├── display │ │ ├── SConscript │ │ ├── gp2x.c │ │ ├── palette16bgra.h │ │ ├── palette32bgra.h │ │ ├── palettecommon.h │ │ ├── pandora.c │ │ └── pc.c │ ├── gmcat2mid.c │ ├── gmcat2mid.h │ ├── input.h │ ├── input │ │ ├── SConscript │ │ ├── gp2x.c │ │ ├── pandora.c │ │ ├── pc.c │ │ └── pyra.c │ ├── llasm │ │ ├── CLIB-proc-llasm.c │ │ ├── CLIB-proc-llasm.h │ │ ├── Game-asm.c │ │ ├── Game-llasm.llasm │ │ ├── SConscript │ │ ├── SR-asm-calls.llasm │ │ ├── SR-asm-calls.llinc │ │ ├── SR-asm.c │ │ ├── asm-cpu.c │ │ ├── extern.llinc │ │ ├── geoscape │ │ │ └── SConscript │ │ ├── intro │ │ │ └── SConscript │ │ ├── llasm.llinc │ │ ├── llasm_cpu.h │ │ ├── llasm_divide.c │ │ ├── llasm_divide.llinc │ │ ├── llasm_float.c │ │ ├── llasm_float.llinc │ │ ├── llasm_inout.c │ │ ├── llasm_inout.llinc │ │ ├── llasm_int.c │ │ ├── llasm_int.llinc │ │ ├── llasm_movs.c │ │ ├── llasm_movs.llinc │ │ ├── llasm_pushx.c │ │ ├── llasm_pushx.llinc │ │ ├── llasm_scas.c │ │ ├── llasm_scas.llinc │ │ ├── llasm_stos.c │ │ ├── llasm_stos.llinc │ │ ├── llasm_xti.llinc │ │ ├── macros.llinc │ │ ├── printf_x86.c │ │ ├── printf_x86.h │ │ └── tactical │ │ │ └── SConscript │ ├── main.c │ ├── main.h │ ├── midi-plugins.h │ ├── midi-plugins2.h │ ├── ptr32.h │ ├── scaler-plugins.h │ ├── virtualfs.c │ ├── virtualfs.h │ └── x86 │ │ ├── Game-asm.asm │ │ ├── SConscript │ │ ├── SR-asm-calls.asm │ │ ├── SR-asm-calls.inc │ │ ├── SR-asm-float2.asm │ │ ├── SR-asm.asm │ │ ├── SR-proc-float2.c │ │ ├── SR-proc-float2.h │ │ ├── asm_inout.asm │ │ ├── asm_inout.inc │ │ ├── asm_int.asm │ │ ├── asm_int.inc │ │ ├── asm_xti.inc │ │ ├── code_linux.inc │ │ ├── code_win32.inc │ │ ├── data_all.inc │ │ ├── extern.inc │ │ ├── geoscape │ │ └── SConscript │ │ ├── intro │ │ └── SConscript │ │ ├── macros.inc │ │ ├── misc.inc │ │ ├── tactical │ │ └── SConscript │ │ └── x86inc.inc │ └── release │ ├── linux │ ├── Ufo.cfg │ ├── arm-aarch64 │ │ └── readme-Linux.txt │ ├── armv7-gnueabihf │ │ └── readme-Linux.txt │ ├── readme-Linux.txt │ ├── x64 │ │ └── readme-Linux.txt │ ├── xcom1-setup.sh │ └── xcom1.sh │ └── windows │ ├── Ufo.cfg │ ├── readme-Windows.txt │ └── xcom1.cmd ├── llasm ├── README.md ├── komp.sh └── llasm.d ├── midi-plugins ├── README.md ├── komp-arm.sh ├── komp-gp2x.sh ├── komp-pandora.sh ├── komp-x64.sh ├── komp-x86-windows.cmd ├── komp-x86.sh ├── midi-adlmidi.c ├── midi-bassmidi.c ├── midi-plugins.h ├── midi-plugins2.h ├── midi-wildmidi.c ├── midi.def ├── midi2-alsa.c ├── midi2-common.h ├── midi2-gm_on_mt32.h ├── midi2-windows.c ├── midi2.def └── xcom12 │ ├── include │ └── emu_x86.h │ ├── mpsmusic-driver.c │ └── src │ ├── dosbox_opl │ ├── COPYING.LESSER.txt │ ├── opl.cpp │ └── opl.h │ ├── emu_awe32.c │ ├── emu_awe32.h │ ├── emu_mt32.cpp │ ├── emu_mt32.h │ ├── emu_opl2.cpp │ ├── emu_opl2.h │ ├── emu_x86.c │ ├── munt-2.7.0 │ └── mt32emu │ │ ├── Analog.cpp │ │ ├── Analog.h │ │ ├── BReverbModel.cpp │ │ ├── BReverbModel.h │ │ ├── COPYING.LESSER.txt │ │ ├── Display.cpp │ │ ├── Display.h │ │ ├── Enumerations.h │ │ ├── File.cpp │ │ ├── File.h │ │ ├── FileStream.cpp │ │ ├── FileStream.h │ │ ├── LA32FloatWaveGenerator.cpp │ │ ├── LA32FloatWaveGenerator.h │ │ ├── LA32Ramp.cpp │ │ ├── LA32Ramp.h │ │ ├── LA32WaveGenerator.cpp │ │ ├── LA32WaveGenerator.h │ │ ├── MemoryRegion.h │ │ ├── MidiEventQueue.h │ │ ├── MidiStreamParser.cpp │ │ ├── MidiStreamParser.h │ │ ├── Part.cpp │ │ ├── Part.h │ │ ├── Partial.cpp │ │ ├── Partial.h │ │ ├── PartialManager.cpp │ │ ├── PartialManager.h │ │ ├── Poly.cpp │ │ ├── Poly.h │ │ ├── ROMInfo.cpp │ │ ├── ROMInfo.h │ │ ├── SampleRateConverter.cpp │ │ ├── SampleRateConverter.h │ │ ├── Structures.h │ │ ├── Synth.cpp │ │ ├── Synth.h │ │ ├── TVA.cpp │ │ ├── TVA.h │ │ ├── TVF.cpp │ │ ├── TVF.h │ │ ├── TVP.cpp │ │ ├── TVP.h │ │ ├── Tables.cpp │ │ ├── Tables.h │ │ ├── Types.h │ │ ├── VersionTagging.cpp │ │ ├── VersionTagging.h │ │ ├── config.h │ │ ├── globals.h │ │ ├── internals.h │ │ ├── mmath.h │ │ ├── mt32emu.h │ │ └── sha1 │ │ ├── sha1.cpp │ │ └── sha1.h │ ├── nuked_opl3 │ ├── LICENSE │ ├── opl3.c │ └── opl3.h │ └── pcem_emu8k │ ├── common.h │ ├── internal.h │ ├── sound_emu8k.c │ └── sound_emu8k.h ├── pycfg ├── README.md └── pycfg.py └── scaler-plugins ├── README.md ├── hqx ├── hq2x.c ├── hq3x.c ├── hq4x.c ├── hqx-common-asm.S ├── hqx-common.c ├── hqx-common.h ├── hqx-interp-alt.h ├── hqx-interp.h ├── hqx-platform.h └── hqx.h ├── komp-arm.sh ├── komp-x64.sh ├── komp-x86-windows.cmd ├── komp-x86.sh ├── scaler-hqx.c ├── scaler-plugins.h ├── scaler-xbrz.cpp ├── scaler.def └── xbrz ├── Changelog.txt ├── License.txt ├── xbrz.cpp ├── xbrz.h ├── xbrz_config.h └── xbrz_tools.h /.gitattributes: -------------------------------------------------------------------------------- 1 | *.sci linguist-language=Text 2 | *.llasm linguist-language=Text 3 | *.llinc linguist-language=Text 4 | **/arm/*.inc linguist-language=Unix-Assembly 5 | **/x86/*.inc linguist-language=Assembly 6 | **/arm-support/*.inc linguist-language=Unix-Assembly 7 | **/x86-support/*.inc linguist-language=Assembly 8 | midi-plugins/xcom12/src/dosbox_opl/** linguist-vendored 9 | midi-plugins/xcom12/src/munt-2.7.0/** linguist-vendored 10 | midi-plugins/xcom12/src/nuked_opl3/** linguist-vendored 11 | scaler-plugins/xbrz/** linguist-vendored 12 | SR/udis86-1.6/** linguist-vendored 13 | SRW/udis86-1.7.2/** linguist-vendored 14 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/arm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_116A1,2 2 | loc_48CA5,2 3 | loc_4A945,2 4 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_83706 2 | loc_851FE 3 | loc_89000 4 | loc_8905C 5 | loc_AC33A 6 | loc_C1306 7 | loc_CBE38 8 | loc_94EE6 9 | loc_94EEB 10 | loc_C15C1 11 | loc_C157D 12 | loc_C1582 13 | loc_ABD1C 14 | loc_CBF5D 15 | loc_CC2E4 16 | loc_CC354 17 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/arm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_D0668 2 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/arm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_AD75B,26 2 | 3 | loc_B0A83,90 4 | 5 | loc_B1F10,105 6 | 7 | loc_B2C50,905 8 | 9 | loc_B4C21,6383 10 | 11 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x146FD8,0 2 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe MAIN.EXE Albion-main.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe MAIN.EXE Albion-main.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe MAIN.EXE Albion-main.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ Albion-main.asm 2>a.a 8 | ./repair_short_jumps.py 9 | rm *.a 10 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_116A1,2 2 | loc_48CA5,2 3 | loc_4A945,2 4 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_83706 2 | loc_851FE 3 | loc_89000 4 | loc_8905C 5 | loc_AC33A 6 | loc_C1306 7 | loc_CBE38 8 | loc_94EE6 9 | loc_94EEB 10 | loc_C15C1 11 | loc_C157D 12 | loc_C1582 13 | loc_ABD1C 14 | loc_CBF5D 15 | loc_CC2E4 16 | loc_CC354 17 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/llasm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_D0668 2 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/llasm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_AD75B,26 2 | 3 | loc_B0A83,90 4 | 5 | loc_B1F10,105 6 | 7 | loc_B2C50,905 8 | 9 | loc_B4C21,6383 10 | 11 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/x86/asm_int.inc: -------------------------------------------------------------------------------- 1 | ;part of static recompiler -- do not edit 2 | 3 | ;; 4 | ;; Copyright (C) 2016 Roman Pauer 5 | ;; 6 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ;; this software and associated documentation files (the "Software"), to deal in 8 | ;; the Software without restriction, including without limitation the rights to 9 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ;; of the Software, and to permit persons to whom the Software is furnished to do 11 | ;; so, subject to the following conditions: 12 | ;; 13 | ;; The above copyright notice and this permission notice shall be included in all 14 | ;; copies or substantial portions of the Software. 15 | ;; 16 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ;; SOFTWARE. 23 | ;; 24 | 25 | extern x86_int 26 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_116A1,2 2 | loc_48CA5,2 3 | loc_4A945,2 4 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_83706 2 | loc_851FE 3 | loc_89000 4 | loc_8905C 5 | loc_AC33A 6 | loc_C1306 7 | loc_CBE38 8 | loc_94EE6 9 | loc_94EEB 10 | loc_C15C1 11 | loc_C157D 12 | loc_C1582 13 | loc_ABD1C 14 | loc_CBF5D 15 | loc_CC2E4 16 | loc_CC354 17 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/Albion/SR/x86/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_D0668 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/arm/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_387D8,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/arm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_202C0 2 | loc_20448 3 | 4 | loc_336FC 5 | loc_3CF9A 6 | 7 | loc_3D938 8 | loc_3D9CB 9 | 10 | loc_4144E 11 | 12 | loc_41B05 13 | 14 | loc_41B77 15 | loc_41B84 16 | 17 | loc_4207E 18 | loc_42083 19 | 20 | loc_420C2 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1E158,main_ 2 | loc_3846E,update_timer 3 | loc_31104,keyboard_interrupt 4 | 5 | loc_5AA84,errno_val 6 | loc_557E4,argv_val 7 | loc_62ACC,default_sample_volume 8 | loc_62AE8,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/arm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_257FE,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 2 | loc_25807,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 3 | 4 | loc_25A53,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 5 | loc_25A68,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 6 | 7 | loc_25A78,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 8 | loc_25A8D,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 9 | 10 | loc_303BD,0 ,0x10001 ; jnb - FL_CARRY | FL_CARRY_SUB_ORIGINAL 11 | 12 | loc_30426,0 ,0x10001 ; jnb - FL_CARRY | FL_CARRY_SUB_ORIGINAL 13 | 14 | loc_30EE3,0x2003f, 0 ; pushf - FL_CARRY | FL_PARITY | FL_ADJUST | FL_ZERO | FL_SIGN | FL_OVERFLOW | FL_CARRY_SUB_INVERTED 15 | loc_30EF3,0 ,0x2003f ; pushf - FL_CARRY | FL_PARITY | FL_ADJUST | FL_ZERO | FL_SIGN | FL_OVERFLOW | FL_CARRY_SUB_INVERTED 16 | 17 | loc_41595,0 ,0x08 ; jnz - FL_ZERO 18 | 19 | loc_415F3,0 ,0x08 ; jnz - FL_ZERO 20 | 21 | loc_4168C,0 ,0x08 ; jnz - FL_ZERO 22 | 23 | loc_416D4,0 ,0x08 ; jnz - FL_ZERO 24 | 25 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/arm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_10908,532 2 | loc_10B1C,451 3 | loc_120C8,373 4 | loc_14AD8,410 5 | loc_163C8,296 6 | loc_16EB0,146 7 | loc_17588,1732 8 | loc_17E54,491 9 | loc_1F424,320 10 | loc_2BF64,343 11 | loc_2D5C8,132 12 | loc_2E464,354 13 | loc_36C90,1682 14 | loc_37E70,137 15 | loc_39400,1149 16 | loc_3A983,288 17 | loc_40948,76 18 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x58540,0 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm-cdgog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm-cdgog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm-cdgog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ war-asm-cdgog.asm 2>a.a 8 | ./repair_short_jumps.py 9 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ war-asm-cdgog.asm 2>a.a 10 | ./repair_short_jumps.py 11 | rm *.a 12 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/llasm/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_387D8,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_202C0 2 | loc_20448 3 | 4 | loc_336FC 5 | loc_3CF9A 6 | 7 | loc_3D938 8 | loc_3D9CB 9 | 10 | loc_4144E 11 | 12 | loc_41B05 13 | 14 | loc_41B77 15 | loc_41B84 16 | 17 | loc_4207E 18 | loc_42083 19 | 20 | loc_420C2 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1E158,main_ 2 | loc_3846E,update_timer 3 | loc_31104,keyboard_interrupt 4 | 5 | loc_5AA84,errno_val 6 | loc_557E4,argv_val 7 | loc_62ACC,default_sample_volume 8 | loc_62AE8,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/llasm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_25801,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 2 | loc_25807,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 3 | 4 | loc_25A56,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 5 | loc_25A68,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 6 | 7 | loc_25A7B,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 8 | loc_25A8D,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 9 | 10 | loc_303B5,0x01,0 ; jnb - FL_CARRY 11 | loc_303B7,0 ,0x01 ; jnb - FL_CARRY 12 | loc_303B9,0x01,0 ; jnb - FL_CARRY 13 | loc_303BB,0x01,0x01 ; jnb - FL_CARRY 14 | loc_303BD,0 ,0x01 ; jnb - FL_CARRY 15 | 16 | loc_3041E,0x01,0 ; jnb - FL_CARRY 17 | loc_30420,0 ,0x01 ; jnb - FL_CARRY 18 | loc_30422,0x01,0 ; jnb - FL_CARRY 19 | loc_30424,0x01,0x01 ; jnb - FL_CARRY 20 | loc_30426,0 ,0x01 ; jnb - FL_CARRY 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/llasm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_10908,532 2 | loc_10B1C,451 3 | loc_120C8,373 4 | loc_14AD8,410 5 | loc_163C8,296 6 | loc_16EB0,146 7 | loc_17588,1732 8 | loc_17E54,491 9 | loc_1F424,320 10 | loc_2BF64,343 11 | loc_2D5C8,132 12 | loc_2E464,354 13 | loc_36C90,1682 14 | loc_37E70,137 15 | loc_39400,1149 16 | loc_3A983,288 17 | loc_40948,76 18 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/x86/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_387D8,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_202C0 2 | loc_20448 3 | 4 | loc_336FC 5 | loc_3CF9A 6 | 7 | loc_3D938 8 | loc_3D9CB 9 | 10 | loc_4144E 11 | 12 | loc_41B05 13 | 14 | loc_41B77 15 | loc_41B84 16 | 17 | loc_4207E 18 | loc_42083 19 | 20 | loc_420C2 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1E158,main_ 2 | loc_3846E,update_timer 3 | loc_31104,keyboard_interrupt 4 | 5 | loc_5AA84,errno_val 6 | loc_557E4,argv_val 7 | loc_62ACC,default_sample_volume 8 | loc_62AE8,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd-gog/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/arm/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_388C8,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/arm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_203F0 2 | loc_20578 3 | 4 | loc_336EC 5 | loc_3D014 6 | 7 | loc_3D9A8 8 | loc_3DA3B 9 | 10 | loc_414B6 11 | 12 | loc_41B71 13 | 14 | loc_41BE3 15 | loc_41BF0 16 | 17 | loc_420EA 18 | loc_420EF 19 | 20 | loc_4212E 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1E288,main_ 2 | loc_3855E,update_timer 3 | loc_31234,keyboard_interrupt 4 | 5 | loc_5ABC4,errno_val 6 | loc_557F0,argv_val 7 | loc_62C0C,default_sample_volume 8 | loc_62C28,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/arm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_2592E,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 2 | loc_25937,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 3 | 4 | loc_25B83,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 5 | loc_25B98,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 6 | 7 | loc_25BA8,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 8 | loc_25BBD,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 9 | 10 | loc_304ED,0 ,0x10001 ; jnb - FL_CARRY | FL_CARRY_SUB_ORIGINAL 11 | 12 | loc_30556,0 ,0x10001 ; jnb - FL_CARRY | FL_CARRY_SUB_ORIGINAL 13 | 14 | loc_31013,0x2003f, 0 ; pushf - FL_CARRY | FL_PARITY | FL_ADJUST | FL_ZERO | FL_SIGN | FL_OVERFLOW | FL_CARRY_SUB_INVERTED 15 | loc_31023,0 ,0x2003f ; pushf - FL_CARRY | FL_PARITY | FL_ADJUST | FL_ZERO | FL_SIGN | FL_OVERFLOW | FL_CARRY_SUB_INVERTED 16 | 17 | loc_415FD,0 ,0x08 ; jnz - FL_ZERO 18 | 19 | loc_41668,0 ,0x08 ; jnz - FL_ZERO 20 | 21 | loc_416FB,0 ,0x08 ; jnz - FL_ZERO 22 | 23 | loc_4174B,0 ,0x08 ; jnz - FL_ZERO 24 | 25 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/arm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_10908,532 2 | loc_10B1C,451 3 | loc_120C8,373 4 | loc_14AD8,410 5 | loc_163C8,296 6 | loc_16EB0,146 7 | loc_17588,1732 8 | loc_17E54,491 9 | loc_1F554,320 10 | loc_2C094,343 11 | loc_2D6F8,132 12 | loc_2E594,354 13 | loc_324E0,212 14 | loc_326A0,212 15 | loc_36D80,1682 16 | loc_37F60,137 17 | loc_394F0,1149 18 | loc_3AA73,288 19 | loc_409B8,76 20 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x58680,0 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm-cd.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm-cd.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm-cd.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ war-asm-cd.asm 2>a.a 8 | ./repair_short_jumps.py 9 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ war-asm-cd.asm 2>a.a 10 | ./repair_short_jumps.py 11 | rm *.a 12 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/llasm/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_388C8,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_203F0 2 | loc_20578 3 | 4 | loc_336EC 5 | loc_3D014 6 | 7 | loc_3D9A8 8 | loc_3DA3B 9 | 10 | loc_414B6 11 | 12 | loc_41B71 13 | 14 | loc_41BE3 15 | loc_41BF0 16 | 17 | loc_420EA 18 | loc_420EF 19 | 20 | loc_4212E 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1E288,main_ 2 | loc_3855E,update_timer 3 | loc_31234,keyboard_interrupt 4 | 5 | loc_5ABC4,errno_val 6 | loc_557F0,argv_val 7 | loc_62C0C,default_sample_volume 8 | loc_62C28,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/llasm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_25931,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 2 | loc_25937,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 3 | 4 | loc_25B86,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 5 | loc_25B98,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 6 | 7 | loc_25BAB,0x38,0 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 8 | loc_25BBD,0 ,0x38 ; jle - FL_ZERO | FL_SIGN | FL_OVERFLOW 9 | 10 | loc_304E5,0x01,0 ; jnb - FL_CARRY 11 | loc_304E7,0 ,0x01 ; jnb - FL_CARRY 12 | loc_304E9,0x01,0 ; jnb - FL_CARRY 13 | loc_304EB,0x01,0x01 ; jnb - FL_CARRY 14 | loc_304ED,0 ,0x01 ; jnb - FL_CARRY 15 | 16 | loc_3054E,0x01,0 ; jnb - FL_CARRY 17 | loc_30550,0 ,0x01 ; jnb - FL_CARRY 18 | loc_30552,0x01,0 ; jnb - FL_CARRY 19 | loc_30554,0x01,0x01 ; jnb - FL_CARRY 20 | loc_30556,0 ,0x01 ; jnb - FL_CARRY 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/llasm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_10908,532 2 | loc_10B1C,451 3 | loc_120C8,373 4 | loc_14AD8,410 5 | loc_163C8,296 6 | loc_16EB0,146 7 | loc_17588,1732 8 | loc_17E54,491 9 | loc_1F554,320 10 | loc_2C094,343 11 | loc_2D6F8,132 12 | loc_2E594,354 13 | loc_324E0,212 14 | loc_326A0,212 15 | loc_36D80,1682 16 | loc_37F60,137 17 | loc_394F0,1149 18 | loc_3AA73,288 19 | loc_409B8,76 20 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/x86/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_388C8,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_203F0 2 | loc_20578 3 | 4 | loc_336EC 5 | loc_3D014 6 | 7 | loc_3D9A8 8 | loc_3DA3B 9 | 10 | loc_414B6 11 | 12 | loc_41B71 13 | 14 | loc_41BE3 15 | loc_41BF0 16 | 17 | loc_420EA 18 | loc_420EF 19 | 20 | loc_4212E 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1E288,main_ 2 | loc_3855E,update_timer 3 | loc_31234,keyboard_interrupt 4 | 5 | loc_5ABC4,errno_val 6 | loc_557F0,argv_val 7 | loc_62C0C,default_sample_volume 8 | loc_62C28,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR-cd/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/arm/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_44388,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/arm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_260A4 2 | loc_262AD 3 | 4 | loc_3F28C 5 | loc_48B8A 6 | 7 | loc_49528 8 | loc_495BB 9 | 10 | loc_4D03E 11 | 12 | loc_4D6F5 13 | 14 | loc_4D767 15 | loc_4D774 16 | 17 | loc_4DC6E 18 | loc_4DC73 19 | 20 | loc_4DCB2 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_2323C,main_ 2 | loc_4401E,update_timer 3 | loc_3CC94,keyboard_interrupt 4 | 5 | loc_5A8AC,errno_val 6 | loc_5572C,argv_val 7 | loc_628F4,default_sample_volume 8 | loc_62910,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/arm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_3BF46,0 ,0x10001 ; jnb - FL_CARRY | FL_CARRY_SUB_ORIGINAL 2 | 3 | loc_3BFAF,0 ,0x10001 ; jnb - FL_CARRY | FL_CARRY_SUB_ORIGINAL 4 | 5 | loc_3CA73,0x2003f, 0 ; pushf - FL_CARRY | FL_PARITY | FL_ADJUST | FL_ZERO | FL_SIGN | FL_OVERFLOW | FL_CARRY_SUB_INVERTED 6 | loc_3CA83,0 ,0x2003f ; pushf - FL_CARRY | FL_PARITY | FL_ADJUST | FL_ZERO | FL_SIGN | FL_OVERFLOW | FL_CARRY_SUB_INVERTED 7 | 8 | loc_4D185,0 ,0x08 ; jnz - FL_ZERO 9 | 10 | loc_4D1E3,0 ,0x08 ; jnz - FL_ZERO 11 | 12 | loc_4D27C,0 ,0x08 ; jnz - FL_ZERO 13 | 14 | loc_4D2C4,0 ,0x08 ; jnz - FL_ZERO 15 | 16 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/arm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_434A1,141 2 | 3 | loc_43A40,102 4 | 5 | loc_4529B,26 6 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x58498,0 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe WAR.EXE war-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ war-asm.asm 2>a.a 8 | ./repair_short_jumps.py 9 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ war-asm.asm 2>a.a 10 | ./repair_short_jumps.py 11 | rm *.a 12 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/llasm/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_44388,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_260A4 2 | loc_262AD 3 | 4 | loc_3F28C 5 | loc_48B8A 6 | 7 | loc_49528 8 | loc_495BB 9 | 10 | loc_4D03E 11 | 12 | loc_4D6F5 13 | 14 | loc_4D767 15 | loc_4D774 16 | 17 | loc_4DC6E 18 | loc_4DC73 19 | 20 | loc_4DCB2 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_2323C,main_ 2 | loc_4401E,update_timer 3 | loc_3CC94,keyboard_interrupt 4 | 5 | loc_5A8AC,errno_val 6 | loc_5572C,argv_val 7 | loc_628F4,default_sample_volume 8 | loc_62910,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/llasm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_3BF3E,0x01,0 ; jnb - FL_CARRY 2 | loc_3BF40,0 ,0x01 ; jnb - FL_CARRY 3 | loc_3BF42,0x01,0 ; jnb - FL_CARRY 4 | loc_3BF44,0x01,0x01 ; jnb - FL_CARRY 5 | loc_3BF46,0 ,0x01 ; jnb - FL_CARRY 6 | 7 | loc_3BFA7,0x01,0 ; jnb - FL_CARRY 8 | loc_3BFA9,0 ,0x01 ; jnb - FL_CARRY 9 | loc_3BFAB,0x01,0 ; jnb - FL_CARRY 10 | loc_3BFAD,0x01,0x01 ; jnb - FL_CARRY 11 | loc_3BFAF,0 ,0x01 ; jnb - FL_CARRY 12 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/llasm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_434A1,141 2 | 3 | loc_43A40,102 4 | 5 | loc_4529B,26 6 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/x86/asm_int.inc: -------------------------------------------------------------------------------- 1 | ;part of static recompiler -- do not edit 2 | 3 | ;; 4 | ;; Copyright (C) 2016 Roman Pauer 5 | ;; 6 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ;; this software and associated documentation files (the "Software"), to deal in 8 | ;; the Software without restriction, including without limitation the rights to 9 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ;; of the Software, and to permit persons to whom the Software is furnished to do 11 | ;; so, subject to the following conditions: 12 | ;; 13 | ;; The above copyright notice and this permission notice shall be included in all 14 | ;; copies or substantial portions of the Software. 15 | ;; 16 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ;; SOFTWARE. 23 | ;; 24 | 25 | extern x86_int 26 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/x86/code16_areas.sci: -------------------------------------------------------------------------------- 1 | loc_44388,85 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4FFFA,6 2 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_260A4 2 | loc_262AD 3 | 4 | loc_3F28C 5 | loc_48B8A 6 | 7 | loc_49528 8 | loc_495BB 9 | 10 | loc_4D03E 11 | 12 | loc_4D6F5 13 | 14 | loc_4D767 15 | loc_4D774 16 | 17 | loc_4DC6E 18 | loc_4DC73 19 | 20 | loc_4DCB2 21 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_2323C,main_ 2 | loc_4401E,update_timer 3 | loc_3CC94,keyboard_interrupt 4 | 5 | loc_5A8AC,errno_val 6 | loc_5572C,argv_val 7 | loc_628F4,default_sample_volume 8 | loc_62910,default_sequence_volume 9 | -------------------------------------------------------------------------------- /SR-games/Warcraft/SR/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51ED2,SR___CHK 2 | loc_5197C,SR___GETDS 3 | 4 | loc_51B3E,SR_cprintf 5 | loc_51511,SR_printf 6 | 7 | loc_4D677,SR_dlseek 8 | loc_4D6A2,SR_dopen 9 | loc_4D6D0,SR_dread 10 | loc_4D6C1,SR_dclose 11 | 12 | loc_4EDFB,SR_DigPlay 13 | loc_4EE89,SR_AudioCapabilities 14 | loc_4EECA,SR_StopSound 15 | loc_4EEE7,SR_PostAudioPending 16 | loc_4EF16,SR_AudioPendingStatus 17 | loc_4EF44,SR_SetPlayMode 18 | loc_4EF5A,SR_PendingAddress 19 | loc_4EF6F,SR_ReportSemaphoreAddress 20 | loc_4EF9F,SR_SetBackFillMode 21 | loc_4EFD6,SR_VerifyDMA 22 | loc_4EE28,SR_SetDPMIMode 23 | loc_4D8C5,SR_RealPtr 24 | 25 | loc_50CA0,SR_checkch 26 | loc_51654,SR_getch 27 | loc_515FD,SR_fcloseall 28 | 29 | loc_51B65,SR_exit 30 | loc_51243,SR_fclose 31 | loc_51E57,SR_fflush 32 | loc_51385,SR_fgetc 33 | loc_51B93,SR__nfree 34 | loc_5208E,SR_inp 35 | loc_51A31,SR__nmalloc 36 | loc_5158A,SR_time 37 | loc_10AA0,SR_WaitVerticalRetraceTicks2 38 | 39 | loc_50FE3,SR_fopen 40 | loc_5981C,SR_fputs 41 | loc_52080,SR_outp 42 | loc_51C10,SR_strcat 43 | loc_51990,SR_strcmp 44 | loc_51BF1,SR_strcpy 45 | 46 | loc_52096,SR_memcpy 47 | loc_54640,SR_memset 48 | loc_514E8,SR_strncmp 49 | 50 | loc_51079,SR_fread 51 | loc_51C70,SR_fwrite 52 | 53 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12538 2 | loc_1B010 3 | loc_1B510 4 | loc_1BC00 5 | loc_1C920 6 | loc_1D100 7 | loc_1EB70 8 | loc_20000 9 | loc_217C0 10 | loc_21EB0 11 | loc_234F0 12 | loc_26A70 13 | loc_29950 14 | loc_30BB0 15 | loc_34EE0 16 | loc_35AB0 17 | loc_3F5D0 18 | loc_433F0 19 | loc_44620 20 | loc_44E70 21 | loc_45550 22 | loc_45CA0 23 | loc_4A8B0 24 | loc_51B14 25 | loc_52817 26 | loc_5410F 27 | loc_54114 28 | loc_5525E 29 | loc_55383 30 | loc_5570C 31 | loc_5577C 32 | loc_557A0 33 | loc_558D4 34 | loc_55910 35 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13A00,geoscape_main_ 2 | loc_7D5BC,geoscape_errno_val 3 | loc_12538,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_752D4,geoscape_data_end 7 | loc_75394,geoscape_bss_begin 8 | loc_7D5C0,geoscape_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/arm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_473C5,5,@call IF@ACOS|bl x87_facos_void @ acos(st0) 2 | 3 | loc_47440,5,@call IF@ASIN|bl x87_fasin_void @ asin(st0) 4 | loc_4748F,5,@call IF@ASIN|bl x87_fasin_void @ asin(st0) 5 | 6 | loc_51C48,28, @ skip procedure __CHP 7 | 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/arm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_59786 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x75394,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm-gog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm-gog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm-gog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ geoscape-asm-gog.asm 2>a.a 8 | ./repair_short_jumps.py 9 | rm *.a 10 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51ED2,SR___CHK 2 | loc_5197C,SR___GETDS 3 | 4 | loc_51B3E,SR_cprintf 5 | loc_51511,SR_printf 6 | 7 | loc_4D677,SR_dlseek 8 | loc_4D6A2,SR_dopen 9 | loc_4D6D0,SR_dread 10 | loc_4D6C1,SR_dclose 11 | 12 | loc_4EDFB,SR_DigPlay 13 | loc_4EE89,SR_AudioCapabilities 14 | loc_4EECA,SR_StopSound 15 | loc_4EEE7,SR_PostAudioPending 16 | loc_4EF16,SR_AudioPendingStatus 17 | loc_4EF44,SR_SetPlayMode 18 | loc_4EF5A,SR_PendingAddress 19 | loc_4EF6F,SR_ReportSemaphoreAddress 20 | loc_4EF9F,SR_SetBackFillMode 21 | loc_4EFD6,SR_VerifyDMA 22 | loc_4EE28,SR_SetDPMIMode 23 | loc_4D8C5,SR_RealPtr 24 | 25 | loc_50CA0,SR_checkch 26 | loc_51654,SR_getch 27 | loc_515FD,SR_fcloseall 28 | 29 | loc_51B65,SR_exit 30 | loc_51243,SR_fclose 31 | loc_51E57,SR_fflush 32 | loc_51385,SR_fgetc 33 | loc_51B93,SR__nfree 34 | loc_5208E,SR_inp 35 | loc_51A31,SR__nmalloc 36 | loc_5158A,SR_time 37 | loc_10AA0,SR_WaitVerticalRetraceTicks2 38 | 39 | loc_50FE3,SR_fopen 40 | loc_5981C,SR_fputs 41 | loc_52080,SR_outp 42 | loc_51C10,SR_strcat 43 | loc_51990,SR_strcmp 44 | loc_51BF1,SR_strcpy 45 | 46 | loc_52096,SR_memcpy 47 | loc_54640,SR_memset 48 | loc_514E8,SR_strncmp 49 | 50 | loc_51079,SR_fread 51 | loc_51C70,SR_fwrite 52 | 53 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12538 2 | loc_1B010 3 | loc_1B510 4 | loc_1BC00 5 | loc_1C920 6 | loc_1D100 7 | loc_1EB70 8 | loc_20000 9 | loc_217C0 10 | loc_21EB0 11 | loc_234F0 12 | loc_26A70 13 | loc_29950 14 | loc_30BB0 15 | loc_34EE0 16 | loc_35AB0 17 | loc_3F5D0 18 | loc_433F0 19 | loc_44620 20 | loc_44E70 21 | loc_45550 22 | loc_45CA0 23 | loc_4A8B0 24 | loc_51B14 25 | loc_52817 26 | loc_5410F 27 | loc_54114 28 | loc_5525E 29 | loc_55383 30 | loc_5570C 31 | loc_5577C 32 | loc_557A0 33 | loc_558D4 34 | loc_55910 35 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13A00,geoscape_main_ 2 | loc_7D5BC,geoscape_errno_val 3 | loc_12538,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_752D4,geoscape_data_end 7 | loc_75394,geoscape_bss_begin 8 | loc_7D5C0,geoscape_bss_end 9 | 10 | loc_7E670,geoscape_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/llasm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_473C5,5,;call IF@ACOS|FACOS_VOID ; acos(st0) 2 | 3 | loc_47440,5,;call IF@ASIN|FASIN_VOID ; asin(st0) 4 | loc_4748F,5,;call IF@ASIN|FASIN_VOID ; asin(st0) 5 | 6 | loc_51C48,28, ; skip procedure __CHP 7 | 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/llasm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_59786 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51ED2,SR___CHK 2 | loc_5197C,SR___GETDS 3 | 4 | loc_51B3E,SR_cprintf 5 | loc_51511,SR_printf 6 | 7 | loc_4D677,SR_dlseek 8 | loc_4D6A2,SR_dopen 9 | loc_4D6D0,SR_dread 10 | loc_4D6C1,SR_dclose 11 | 12 | loc_4EDFB,SR_DigPlay 13 | loc_4EE89,SR_AudioCapabilities 14 | loc_4EECA,SR_StopSound 15 | loc_4EEE7,SR_PostAudioPending 16 | loc_4EF16,SR_AudioPendingStatus 17 | loc_4EF44,SR_SetPlayMode 18 | loc_4EF5A,SR_PendingAddress 19 | loc_4EF6F,SR_ReportSemaphoreAddress 20 | loc_4EF9F,SR_SetBackFillMode 21 | loc_4EFD6,SR_VerifyDMA 22 | loc_4EE28,SR_SetDPMIMode 23 | loc_4D8C5,SR_RealPtr 24 | 25 | loc_50CA0,SR_checkch 26 | loc_51654,SR_getch 27 | loc_515FD,SR_fcloseall 28 | 29 | loc_51B65,SR_exit 30 | loc_51243,SR_fclose 31 | loc_51E57,SR_fflush 32 | loc_51385,SR_fgetc 33 | loc_51B93,SR__nfree 34 | loc_5208E,SR_inp 35 | loc_51A31,SR__nmalloc 36 | loc_5158A,SR_time 37 | loc_10AA0,SR_WaitVerticalRetraceTicks2 38 | 39 | loc_50FE3,SR_fopen 40 | loc_5981C,SR_fputs 41 | loc_52080,SR_outp 42 | loc_51C10,SR_strcat 43 | loc_51990,SR_strcmp 44 | loc_51BF1,SR_strcpy 45 | 46 | loc_52096,SR_memcpy 47 | loc_54640,SR_memset 48 | loc_514E8,SR_strncmp 49 | 50 | loc_51079,SR_fread 51 | loc_51C70,SR_fwrite 52 | 53 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12538 2 | loc_1B010 3 | loc_1B510 4 | loc_1BC00 5 | loc_1C920 6 | loc_1D100 7 | loc_1EB70 8 | loc_20000 9 | loc_217C0 10 | loc_21EB0 11 | loc_234F0 12 | loc_26A70 13 | loc_29950 14 | loc_30BB0 15 | loc_34EE0 16 | loc_35AB0 17 | loc_3F5D0 18 | loc_433F0 19 | loc_44620 20 | loc_44E70 21 | loc_45550 22 | loc_45CA0 23 | loc_4A8B0 24 | loc_51B14 25 | loc_52817 26 | loc_5410F 27 | loc_54114 28 | loc_5525E 29 | loc_55383 30 | loc_5570C 31 | loc_5577C 32 | loc_557A0 33 | loc_558D4 34 | loc_55910 35 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13A00,geoscape_main_ 2 | loc_7D5BC,geoscape_errno_val 3 | loc_12538,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_752D4,geoscape_data_end 7 | loc_75394,geoscape_bss_begin 8 | loc_7D5C0,geoscape_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/x86/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_473C5,5,call SR_acos2 ; acos(st0) 2 | 3 | loc_47440,5,call SR_asin2_2 ; asin(st0) 4 | loc_4748F,5,call SR_asin2 ; asin(st0) 5 | 6 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1-gog/x86/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_59786 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_53062,SR___CHK 2 | loc_52B14,SR___GETDS 3 | 4 | loc_52CCE,SR_cprintf 5 | loc_526AA,SR_printf 6 | 7 | loc_4E7C7,SR_dlseek 8 | loc_4E7F2,SR_dopen 9 | loc_4E820,SR_dread 10 | loc_4E811,SR_dclose 11 | 12 | loc_4FF53,SR_DigPlay 13 | loc_4FFE1,SR_AudioCapabilities 14 | loc_50022,SR_StopSound 15 | loc_5003F,SR_PostAudioPending 16 | loc_5006E,SR_AudioPendingStatus 17 | loc_5009C,SR_SetPlayMode 18 | loc_500B2,SR_PendingAddress 19 | loc_500C7,SR_ReportSemaphoreAddress 20 | loc_500F7,SR_SetBackFillMode 21 | loc_5012E,SR_VerifyDMA 22 | loc_4FF80,SR_SetDPMIMode 23 | loc_4EA15,SR_RealPtr 24 | 25 | loc_51E39,SR_checkch 26 | loc_527ED,SR_getch 27 | loc_52796,SR_fcloseall 28 | 29 | loc_52CF5,SR_exit 30 | loc_523DC,SR_fclose 31 | loc_52FE7,SR_fflush 32 | loc_5251E,SR_fgetc 33 | loc_52D23,SR__nfree 34 | loc_5321E,SR_inp 35 | loc_52BC1,SR__nmalloc 36 | loc_52723,SR_time 37 | loc_10AB0,SR_WaitVerticalRetraceTicks2 38 | 39 | loc_5217C,SR_fopen 40 | loc_5A9CC,SR_fputs 41 | loc_53210,SR_outp 42 | loc_52DA0,SR_strcat 43 | loc_52B20,SR_strcmp 44 | loc_52D81,SR_strcpy 45 | 46 | loc_53226,SR_memcpy 47 | loc_557E0,SR_memset 48 | loc_52681,SR_strncmp 49 | 50 | loc_52212,SR_fread 51 | loc_52E00,SR_fwrite 52 | 53 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_4E2E1 2 | 3 | loc_52DF6 4 | loc_52DFB 5 | loc_552B9 6 | loc_552BE 7 | loc_552FD 8 | loc_568B8 9 | loc_56928 10 | 11 | loc_5640D 12 | loc_56532 13 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12548 2 | loc_1B150 3 | loc_1B640 4 | loc_1BD20 5 | loc_1CAA0 6 | loc_1D270 7 | loc_1ECC0 8 | loc_201F0 9 | loc_219E0 10 | loc_220B0 11 | loc_237A0 12 | loc_26EE0 13 | loc_29C50 14 | loc_31060 15 | loc_35620 16 | loc_36160 17 | loc_40370 18 | loc_442E0 19 | loc_45590 20 | loc_45DE0 21 | loc_464B0 22 | loc_46C00 23 | loc_4B9D0 24 | loc_4E2E1 25 | loc_52CA4 26 | loc_539A7 27 | loc_552B9 28 | loc_552BE 29 | loc_5640D 30 | loc_56532 31 | loc_568B8 32 | loc_56928 33 | loc_5694C 34 | loc_56A80 35 | loc_56ABC 36 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13A10,geoscape_main_ 2 | loc_7D5EC,geoscape_errno_val 3 | loc_12548,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_75304,geoscape_data_end 7 | loc_753C4,geoscape_bss_begin 8 | loc_7D5F0,geoscape_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/arm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_48391,5,@call IF@ACOS|bl x87_facos_void @ acos(st0) 2 | 3 | loc_4840C,5,@call IF@ASIN|bl x87_fasin_void @ asin(st0) 4 | loc_4845B,5,@call IF@ASIN|bl x87_fasin_void @ asin(st0) 5 | 6 | loc_52DD8,28, @ skip procedure __CHP 7 | 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/arm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_5A936 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x753C4,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ geoscape-asm.asm 2>a.a 8 | ./repair_short_jumps.py 9 | rm *.a 10 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_53062,SR___CHK 2 | loc_52B14,SR___GETDS 3 | 4 | loc_52CCE,SR_cprintf 5 | loc_526AA,SR_printf 6 | 7 | loc_4E7C7,SR_dlseek 8 | loc_4E7F2,SR_dopen 9 | loc_4E820,SR_dread 10 | loc_4E811,SR_dclose 11 | 12 | loc_4FF53,SR_DigPlay 13 | loc_4FFE1,SR_AudioCapabilities 14 | loc_50022,SR_StopSound 15 | loc_5003F,SR_PostAudioPending 16 | loc_5006E,SR_AudioPendingStatus 17 | loc_5009C,SR_SetPlayMode 18 | loc_500B2,SR_PendingAddress 19 | loc_500C7,SR_ReportSemaphoreAddress 20 | loc_500F7,SR_SetBackFillMode 21 | loc_5012E,SR_VerifyDMA 22 | loc_4FF80,SR_SetDPMIMode 23 | loc_4EA15,SR_RealPtr 24 | 25 | loc_51E39,SR_checkch 26 | loc_527ED,SR_getch 27 | loc_52796,SR_fcloseall 28 | 29 | loc_52CF5,SR_exit 30 | loc_523DC,SR_fclose 31 | loc_52FE7,SR_fflush 32 | loc_5251E,SR_fgetc 33 | loc_52D23,SR__nfree 34 | loc_5321E,SR_inp 35 | loc_52BC1,SR__nmalloc 36 | loc_52723,SR_time 37 | loc_10AB0,SR_WaitVerticalRetraceTicks2 38 | 39 | loc_5217C,SR_fopen 40 | loc_5A9CC,SR_fputs 41 | loc_53210,SR_outp 42 | loc_52DA0,SR_strcat 43 | loc_52B20,SR_strcmp 44 | loc_52D81,SR_strcpy 45 | 46 | loc_53226,SR_memcpy 47 | loc_557E0,SR_memset 48 | loc_52681,SR_strncmp 49 | 50 | loc_52212,SR_fread 51 | loc_52E00,SR_fwrite 52 | 53 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_4E2E1 2 | 3 | loc_52DF6 4 | loc_52DFB 5 | loc_552B9 6 | loc_552BE 7 | loc_552FD 8 | loc_568B8 9 | loc_56928 10 | 11 | loc_5640D 12 | loc_56532 13 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12548 2 | loc_1B150 3 | loc_1B640 4 | loc_1BD20 5 | loc_1CAA0 6 | loc_1D270 7 | loc_1ECC0 8 | loc_201F0 9 | loc_219E0 10 | loc_220B0 11 | loc_237A0 12 | loc_26EE0 13 | loc_29C50 14 | loc_31060 15 | loc_35620 16 | loc_36160 17 | loc_40370 18 | loc_442E0 19 | loc_45590 20 | loc_45DE0 21 | loc_464B0 22 | loc_46C00 23 | loc_4B9D0 24 | loc_4E2E1 25 | loc_52CA4 26 | loc_539A7 27 | loc_552B9 28 | loc_552BE 29 | loc_5640D 30 | loc_56532 31 | loc_568B8 32 | loc_56928 33 | loc_5694C 34 | loc_56A80 35 | loc_56ABC 36 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13A10,geoscape_main_ 2 | loc_7D5EC,geoscape_errno_val 3 | loc_12548,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_75304,geoscape_data_end 7 | loc_753C4,geoscape_bss_begin 8 | loc_7D5F0,geoscape_bss_end 9 | 10 | loc_7E6A0,geoscape_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/llasm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_48391,5,;call IF@ACOS|FACOS_VOID ; acos(st0) 2 | 3 | loc_4840C,5,;call IF@ASIN|FASIN_VOID ; asin(st0) 4 | loc_4845B,5,;call IF@ASIN|FASIN_VOID ; asin(st0) 5 | 6 | loc_52DD8,28, ; skip procedure __CHP 7 | 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/llasm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_5A936 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_53062,SR___CHK 2 | loc_52B14,SR___GETDS 3 | 4 | loc_52CCE,SR_cprintf 5 | loc_526AA,SR_printf 6 | 7 | loc_4E7C7,SR_dlseek 8 | loc_4E7F2,SR_dopen 9 | loc_4E820,SR_dread 10 | loc_4E811,SR_dclose 11 | 12 | loc_4FF53,SR_DigPlay 13 | loc_4FFE1,SR_AudioCapabilities 14 | loc_50022,SR_StopSound 15 | loc_5003F,SR_PostAudioPending 16 | loc_5006E,SR_AudioPendingStatus 17 | loc_5009C,SR_SetPlayMode 18 | loc_500B2,SR_PendingAddress 19 | loc_500C7,SR_ReportSemaphoreAddress 20 | loc_500F7,SR_SetBackFillMode 21 | loc_5012E,SR_VerifyDMA 22 | loc_4FF80,SR_SetDPMIMode 23 | loc_4EA15,SR_RealPtr 24 | 25 | loc_51E39,SR_checkch 26 | loc_527ED,SR_getch 27 | loc_52796,SR_fcloseall 28 | 29 | loc_52CF5,SR_exit 30 | loc_523DC,SR_fclose 31 | loc_52FE7,SR_fflush 32 | loc_5251E,SR_fgetc 33 | loc_52D23,SR__nfree 34 | loc_5321E,SR_inp 35 | loc_52BC1,SR__nmalloc 36 | loc_52723,SR_time 37 | loc_10AB0,SR_WaitVerticalRetraceTicks2 38 | 39 | loc_5217C,SR_fopen 40 | loc_5A9CC,SR_fputs 41 | loc_53210,SR_outp 42 | loc_52DA0,SR_strcat 43 | loc_52B20,SR_strcmp 44 | loc_52D81,SR_strcpy 45 | 46 | loc_53226,SR_memcpy 47 | loc_557E0,SR_memset 48 | loc_52681,SR_strncmp 49 | 50 | loc_52212,SR_fread 51 | loc_52E00,SR_fwrite 52 | 53 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_4E2E1 2 | 3 | loc_52DF6 4 | loc_52DFB 5 | loc_552B9 6 | loc_552BE 7 | loc_552FD 8 | loc_568B8 9 | loc_56928 10 | 11 | loc_5640D 12 | loc_56532 13 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12548 2 | loc_1B150 3 | loc_1B640 4 | loc_1BD20 5 | loc_1CAA0 6 | loc_1D270 7 | loc_1ECC0 8 | loc_201F0 9 | loc_219E0 10 | loc_220B0 11 | loc_237A0 12 | loc_26EE0 13 | loc_29C50 14 | loc_31060 15 | loc_35620 16 | loc_36160 17 | loc_40370 18 | loc_442E0 19 | loc_45590 20 | loc_45DE0 21 | loc_464B0 22 | loc_46C00 23 | loc_4B9D0 24 | loc_4E2E1 25 | loc_52CA4 26 | loc_539A7 27 | loc_552B9 28 | loc_552BE 29 | loc_5640D 30 | loc_56532 31 | loc_568B8 32 | loc_56928 33 | loc_5694C 34 | loc_56A80 35 | loc_56ABC 36 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13A10,geoscape_main_ 2 | loc_7D5EC,geoscape_errno_val 3 | loc_12548,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_75304,geoscape_data_end 7 | loc_753C4,geoscape_bss_begin 8 | loc_7D5F0,geoscape_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_48391,5,call SR_acos2 ; acos(st0) 2 | 3 | loc_4840C,5,call SR_asin2_2 ; asin(st0) 4 | loc_4845B,5,call SR_asin2 ; asin(st0) 5 | 6 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR1/x86/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_5A936 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_507D6,SR___CHK 2 | 3 | loc_503B3,SR_cprintf 4 | loc_4FFCA,SR_printf 5 | 6 | loc_4D832,SR_dlseek 7 | loc_4D85D,SR_dopen 8 | loc_4D88B,SR_dread 9 | loc_4D87C,SR_dclose 10 | 11 | loc_4D5EB,SR_DigPlay 12 | loc_4D679,SR_AudioCapabilities 13 | loc_4D6BA,SR_StopSound 14 | loc_4D6D7,SR_PostAudioPending 15 | loc_4D734,SR_SetPlayMode 16 | loc_4D74A,SR_PendingAddress 17 | loc_4D75F,SR_ReportSemaphoreAddress 18 | loc_4D78F,SR_SetBackFillMode 19 | loc_4D7C6,SR_VerifyDMA 20 | loc_4D618,SR_SetDPMIMode 21 | loc_4D3E5,SR_RealPtr 22 | 23 | loc_4F759,SR_checkch 24 | loc_4FFEC,SR_getch 25 | 26 | loc_5000A,SR_exit 27 | loc_4FCFC,SR_fclose 28 | loc_4FE3E,SR_fgetc 29 | loc_503D9,SR__nfree 30 | loc_50075,SR__nmalloc 31 | loc_504C8,SR_time 32 | loc_10AA0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_4FA9C,SR_fopen 35 | loc_51A3A,SR_fputc 36 | loc_51996,SR_fputs 37 | loc_50984,SR_strcat 38 | 39 | loc_52CF0,SR_memset 40 | loc_4FFA1,SR_strncmp 41 | 42 | loc_4FB32,SR_fread 43 | loc_501A2,SR_fwrite 44 | 45 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12538 2 | loc_50389 3 | loc_511C3 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_30BD0,tactical_main_ 2 | loc_A4A48,tactical_errno_val 3 | loc_12538,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_759D4,tactical_data_end 7 | loc_75B24,tactical_bss_begin 8 | loc_A4A4C,tactical_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x75B24,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm-gog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm-gog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm-gog.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ tactical-asm-gog.asm 2>a.a 8 | ./repair_short_jumps.py 9 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ tactical-asm-gog.asm 2>a.a 10 | ./repair_short_jumps.py 11 | rm *.a 12 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_507D6,SR___CHK 2 | 3 | loc_503B3,SR_cprintf 4 | loc_4FFCA,SR_printf 5 | 6 | loc_4D832,SR_dlseek 7 | loc_4D85D,SR_dopen 8 | loc_4D88B,SR_dread 9 | loc_4D87C,SR_dclose 10 | 11 | loc_4D5EB,SR_DigPlay 12 | loc_4D679,SR_AudioCapabilities 13 | loc_4D6BA,SR_StopSound 14 | loc_4D6D7,SR_PostAudioPending 15 | loc_4D734,SR_SetPlayMode 16 | loc_4D74A,SR_PendingAddress 17 | loc_4D75F,SR_ReportSemaphoreAddress 18 | loc_4D78F,SR_SetBackFillMode 19 | loc_4D7C6,SR_VerifyDMA 20 | loc_4D618,SR_SetDPMIMode 21 | loc_4D3E5,SR_RealPtr 22 | 23 | loc_4F759,SR_checkch 24 | loc_4FFEC,SR_getch 25 | 26 | loc_5000A,SR_exit 27 | loc_4FCFC,SR_fclose 28 | loc_4FE3E,SR_fgetc 29 | loc_503D9,SR__nfree 30 | loc_50075,SR__nmalloc 31 | loc_504C8,SR_time 32 | loc_10AA0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_4FA9C,SR_fopen 35 | loc_51A3A,SR_fputc 36 | loc_51996,SR_fputs 37 | loc_50984,SR_strcat 38 | 39 | loc_52CF0,SR_memset 40 | loc_4FFA1,SR_strncmp 41 | 42 | loc_4FB32,SR_fread 43 | loc_501A2,SR_fwrite 44 | 45 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12538 2 | loc_50389 3 | loc_511C3 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_30BD0,tactical_main_ 2 | loc_A4A48,tactical_errno_val 3 | loc_12538,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_759D4,tactical_data_end 7 | loc_75B24,tactical_bss_begin 8 | loc_A4A4C,tactical_bss_end 9 | 10 | loc_A5A80,tactical_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_507D6,SR___CHK 2 | 3 | loc_503B3,SR_cprintf 4 | loc_4FFCA,SR_printf 5 | 6 | loc_4D832,SR_dlseek 7 | loc_4D85D,SR_dopen 8 | loc_4D88B,SR_dread 9 | loc_4D87C,SR_dclose 10 | 11 | loc_4D5EB,SR_DigPlay 12 | loc_4D679,SR_AudioCapabilities 13 | loc_4D6BA,SR_StopSound 14 | loc_4D6D7,SR_PostAudioPending 15 | loc_4D734,SR_SetPlayMode 16 | loc_4D74A,SR_PendingAddress 17 | loc_4D75F,SR_ReportSemaphoreAddress 18 | loc_4D78F,SR_SetBackFillMode 19 | loc_4D7C6,SR_VerifyDMA 20 | loc_4D618,SR_SetDPMIMode 21 | loc_4D3E5,SR_RealPtr 22 | 23 | loc_4F759,SR_checkch 24 | loc_4FFEC,SR_getch 25 | 26 | loc_5000A,SR_exit 27 | loc_4FCFC,SR_fclose 28 | loc_4FE3E,SR_fgetc 29 | loc_503D9,SR__nfree 30 | loc_50075,SR__nmalloc 31 | loc_504C8,SR_time 32 | loc_10AA0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_4FA9C,SR_fopen 35 | loc_51A3A,SR_fputc 36 | loc_51996,SR_fputs 37 | loc_50984,SR_strcat 38 | 39 | loc_52CF0,SR_memset 40 | loc_4FFA1,SR_strncmp 41 | 42 | loc_4FB32,SR_fread 43 | loc_501A2,SR_fwrite 44 | 45 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12538 2 | loc_50389 3 | loc_511C3 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_30BD0,tactical_main_ 2 | loc_A4A48,tactical_errno_val 3 | loc_12538,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_759D4,tactical_data_end 7 | loc_75B24,tactical_bss_begin 8 | loc_A4A4C,tactical_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2-gog/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51C70,SR___CHK 2 | 3 | loc_516E6,SR_cprintf 4 | loc_5140F,SR_printf 5 | 6 | loc_4EC36,SR_dlseek 7 | loc_4EC61,SR_dopen 8 | loc_4EC8F,SR_dread 9 | loc_4EC80,SR_dclose 10 | 11 | loc_4E9EF,SR_DigPlay 12 | loc_4EA7D,SR_AudioCapabilities 13 | loc_4EABE,SR_StopSound 14 | loc_4EADB,SR_PostAudioPending 15 | loc_4EB38,SR_SetPlayMode 16 | loc_4EB4E,SR_PendingAddress 17 | loc_4EB63,SR_ReportSemaphoreAddress 18 | loc_4EB93,SR_SetBackFillMode 19 | loc_4EBCA,SR_VerifyDMA 20 | loc_4EA1C,SR_SetDPMIMode 21 | loc_4E7E9,SR_RealPtr 22 | 23 | loc_50B9E,SR_checkch 24 | loc_51431,SR_getch 25 | 26 | loc_5187D,SR_exit 27 | loc_51141,SR_fclose 28 | loc_51283,SR_fgetc 29 | loc_5170C,SR__nfree 30 | loc_518AB,SR__nmalloc 31 | loc_517FB,SR_time 32 | loc_10AB0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_50EE1,SR_fopen 35 | loc_5278D,SR_fputc 36 | loc_526E9,SR_fputs 37 | loc_51E1E,SR_strcat 38 | 39 | loc_51830,SR_memset 40 | loc_513E6,SR_strncmp 41 | 42 | loc_50F77,SR_fread 43 | loc_514D5,SR_fwrite 44 | loc_51848,SR_int386x 45 | 46 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_546C4 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12548 2 | loc_516BC 3 | loc_52653 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_31530,tactical_main_ 2 | loc_A34F4,tactical_errno_val 3 | loc_12548,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_75B54,tactical_data_end 7 | loc_75CA4,tactical_bss_begin 8 | loc_A34F8,tactical_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x75CA4,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ tactical-asm.asm 2>a.a 8 | ./repair_short_jumps.py 9 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ tactical-asm.asm 2>a.a 10 | ./repair_short_jumps.py 11 | rm *.a 12 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51C70,SR___CHK 2 | 3 | loc_516E6,SR_cprintf 4 | loc_5140F,SR_printf 5 | 6 | loc_4EC36,SR_dlseek 7 | loc_4EC61,SR_dopen 8 | loc_4EC8F,SR_dread 9 | loc_4EC80,SR_dclose 10 | 11 | loc_4E9EF,SR_DigPlay 12 | loc_4EA7D,SR_AudioCapabilities 13 | loc_4EABE,SR_StopSound 14 | loc_4EADB,SR_PostAudioPending 15 | loc_4EB38,SR_SetPlayMode 16 | loc_4EB4E,SR_PendingAddress 17 | loc_4EB63,SR_ReportSemaphoreAddress 18 | loc_4EB93,SR_SetBackFillMode 19 | loc_4EBCA,SR_VerifyDMA 20 | loc_4EA1C,SR_SetDPMIMode 21 | loc_4E7E9,SR_RealPtr 22 | 23 | loc_50B9E,SR_checkch 24 | loc_51431,SR_getch 25 | 26 | loc_5187D,SR_exit 27 | loc_51141,SR_fclose 28 | loc_51283,SR_fgetc 29 | loc_5170C,SR__nfree 30 | loc_518AB,SR__nmalloc 31 | loc_517FB,SR_time 32 | loc_10AB0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_50EE1,SR_fopen 35 | loc_5278D,SR_fputc 36 | loc_526E9,SR_fputs 37 | loc_51E1E,SR_strcat 38 | 39 | loc_51830,SR_memset 40 | loc_513E6,SR_strncmp 41 | 42 | loc_50F77,SR_fread 43 | loc_514D5,SR_fwrite 44 | loc_51848,SR_int386x 45 | 46 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_546C4 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12548 2 | loc_516BC 3 | loc_52653 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_31530,tactical_main_ 2 | loc_A34F4,tactical_errno_val 3 | loc_12548,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_75B54,tactical_data_end 7 | loc_75CA4,tactical_bss_begin 8 | loc_A34F8,tactical_bss_end 9 | 10 | loc_A4530,tactical_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51C70,SR___CHK 2 | 3 | loc_516E6,SR_cprintf 4 | loc_5140F,SR_printf 5 | 6 | loc_4EC36,SR_dlseek 7 | loc_4EC61,SR_dopen 8 | loc_4EC8F,SR_dread 9 | loc_4EC80,SR_dclose 10 | 11 | loc_4E9EF,SR_DigPlay 12 | loc_4EA7D,SR_AudioCapabilities 13 | loc_4EABE,SR_StopSound 14 | loc_4EADB,SR_PostAudioPending 15 | loc_4EB38,SR_SetPlayMode 16 | loc_4EB4E,SR_PendingAddress 17 | loc_4EB63,SR_ReportSemaphoreAddress 18 | loc_4EB93,SR_SetBackFillMode 19 | loc_4EBCA,SR_VerifyDMA 20 | loc_4EA1C,SR_SetDPMIMode 21 | loc_4E7E9,SR_RealPtr 22 | 23 | loc_50B9E,SR_checkch 24 | loc_51431,SR_getch 25 | 26 | loc_5187D,SR_exit 27 | loc_51141,SR_fclose 28 | loc_51283,SR_fgetc 29 | loc_5170C,SR__nfree 30 | loc_518AB,SR__nmalloc 31 | loc_517FB,SR_time 32 | loc_10AB0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_50EE1,SR_fopen 35 | loc_5278D,SR_fputc 36 | loc_526E9,SR_fputs 37 | loc_51E1E,SR_strcat 38 | 39 | loc_51830,SR_memset 40 | loc_513E6,SR_strncmp 41 | 42 | loc_50F77,SR_fread 43 | loc_514D5,SR_fwrite 44 | loc_51848,SR_int386x 45 | 46 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_546C4 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12548 2 | loc_516BC 3 | loc_52653 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_31530,tactical_main_ 2 | loc_A34F4,tactical_errno_val 3 | loc_12548,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_75B54,tactical_data_end 7 | loc_75CA4,tactical_bss_begin 8 | loc_A34F8,tactical_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Terror from the Deep/SR2/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4A93A,SR___CHK 2 | loc_49A30,SR___GETDS 3 | 4 | loc_49BEE,SR_cprintf 5 | loc_47F2B,SR_printf 6 | 7 | loc_4ACF6,SR_dlseek 8 | loc_4AD21,SR_dopen 9 | loc_4AD4F,SR_dread 10 | loc_4AD40,SR_dclose 11 | 12 | loc_4A987,SR_DigPlay 13 | loc_4AA15,SR_AudioCapabilities 14 | loc_4AA56,SR_StopSound 15 | loc_4AA73,SR_PostAudioPending 16 | loc_4AAD0,SR_SetPlayMode 17 | loc_4AAE6,SR_PendingAddress 18 | loc_4AAFB,SR_ReportSemaphoreAddress 19 | loc_4AB2B,SR_SetBackFillMode 20 | loc_4AB62,SR_VerifyDMA 21 | loc_4A9B4,SR_SetDPMIMode 22 | loc_4ABE5,SR_RealPtr 23 | 24 | loc_476BA,SR_checkch 25 | loc_49C14,SR_getch 26 | loc_4970A,SR_fcloseall 27 | 28 | loc_49C32,SR_exit 29 | loc_47C5D,SR_fclose 30 | loc_49F60,SR_fflush 31 | loc_47D9F,SR_fgetc 32 | loc_49C60,SR__nfree 33 | loc_49AE1,SR__nmalloc 34 | loc_49697,SR_time 35 | loc_10AC0,SR_WaitVerticalRetraceTicks2 36 | 37 | loc_479FD,SR_fopen 38 | loc_51E62,SR_fputs 39 | loc_49D1A,SR_strcat 40 | loc_49A40,SR_strcmp 41 | loc_49CFB,SR_strcpy 42 | 43 | loc_47F02,SR_strncmp 44 | 45 | loc_47A93,SR_fread 46 | loc_49D51,SR_fwrite 47 | 48 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_49F56 2 | loc_4D8B1 3 | loc_4D9D6 4 | loc_4DD5C 5 | loc_4DDCC 6 | 7 | loc_4A89B 8 | loc_496FE 9 | loc_49F55 10 | loc_4C9E1 11 | loc_4C9E6 12 | loc_49F5B 13 | loc_4CA25 14 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12638 2 | loc_19840 3 | loc_19CE0 4 | loc_1A2D0 5 | loc_1AF70 6 | loc_1B780 7 | loc_1D060 8 | loc_1E5C0 9 | loc_1FE60 10 | loc_20540 11 | loc_21C10 12 | loc_25190 13 | loc_28240 14 | loc_2F570 15 | loc_33A40 16 | loc_34590 17 | loc_3AB40 18 | loc_3E7C0 19 | loc_3F9A0 20 | loc_401E0 21 | loc_40810 22 | loc_40F40 23 | loc_452F0 24 | loc_49BC4 25 | loc_4A89B 26 | loc_4C9E1 27 | loc_4C9E6 28 | loc_4D8B1 29 | loc_4D9D6 30 | loc_4DD5C 31 | loc_4DDCC 32 | loc_4DDF0 33 | loc_4DF24 34 | loc_4DF60 35 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13AB0,geoscape_main_ 2 | loc_6CA0C,geoscape_errno_val 3 | loc_12638,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_69538,geoscape_data_end 7 | loc_695F8,geoscape_bss_begin 8 | loc_6CA10,geoscape_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/arm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_425ED,5,@call IF@ACOS|bl x87_facos_void @ acos(st0) 2 | 3 | loc_42668,5,@call IF@ASIN|bl x87_fasin_void @ asin(st0) 4 | loc_426B7,5,@call IF@ASIN|bl x87_fasin_void @ asin(st0) 5 | 6 | loc_49F38,28, @ skip procedure __CHP 7 | 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/arm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51DCC 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x695F8,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe GEOSCAPE.EXE geoscape-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ geoscape-asm.asm 2>a.a 8 | ./repair_short_jumps.py 9 | rm *.a 10 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4A93A,SR___CHK 2 | loc_49A30,SR___GETDS 3 | 4 | loc_49BEE,SR_cprintf 5 | loc_47F2B,SR_printf 6 | 7 | loc_4ACF6,SR_dlseek 8 | loc_4AD21,SR_dopen 9 | loc_4AD4F,SR_dread 10 | loc_4AD40,SR_dclose 11 | 12 | loc_4A987,SR_DigPlay 13 | loc_4AA15,SR_AudioCapabilities 14 | loc_4AA56,SR_StopSound 15 | loc_4AA73,SR_PostAudioPending 16 | loc_4AAD0,SR_SetPlayMode 17 | loc_4AAE6,SR_PendingAddress 18 | loc_4AAFB,SR_ReportSemaphoreAddress 19 | loc_4AB2B,SR_SetBackFillMode 20 | loc_4AB62,SR_VerifyDMA 21 | loc_4A9B4,SR_SetDPMIMode 22 | loc_4ABE5,SR_RealPtr 23 | 24 | loc_476BA,SR_checkch 25 | loc_49C14,SR_getch 26 | loc_4970A,SR_fcloseall 27 | 28 | loc_49C32,SR_exit 29 | loc_47C5D,SR_fclose 30 | loc_49F60,SR_fflush 31 | loc_47D9F,SR_fgetc 32 | loc_49C60,SR__nfree 33 | loc_49AE1,SR__nmalloc 34 | loc_49697,SR_time 35 | loc_10AC0,SR_WaitVerticalRetraceTicks2 36 | 37 | loc_479FD,SR_fopen 38 | loc_51E62,SR_fputs 39 | loc_49D1A,SR_strcat 40 | loc_49A40,SR_strcmp 41 | loc_49CFB,SR_strcpy 42 | 43 | loc_47F02,SR_strncmp 44 | 45 | loc_47A93,SR_fread 46 | loc_49D51,SR_fwrite 47 | 48 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_49F56 2 | loc_4D8B1 3 | loc_4D9D6 4 | loc_4DD5C 5 | loc_4DDCC 6 | 7 | loc_4A89B 8 | loc_496FE 9 | loc_49F55 10 | loc_4C9E1 11 | loc_4C9E6 12 | loc_49F5B 13 | loc_4CA25 14 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12638 2 | loc_19840 3 | loc_19CE0 4 | loc_1A2D0 5 | loc_1AF70 6 | loc_1B780 7 | loc_1D060 8 | loc_1E5C0 9 | loc_1FE60 10 | loc_20540 11 | loc_21C10 12 | loc_25190 13 | loc_28240 14 | loc_2F570 15 | loc_33A40 16 | loc_34590 17 | loc_3AB40 18 | loc_3E7C0 19 | loc_3F9A0 20 | loc_401E0 21 | loc_40810 22 | loc_40F40 23 | loc_452F0 24 | loc_49BC4 25 | loc_4A89B 26 | loc_4C9E1 27 | loc_4C9E6 28 | loc_4D8B1 29 | loc_4D9D6 30 | loc_4DD5C 31 | loc_4DDCC 32 | loc_4DDF0 33 | loc_4DF24 34 | loc_4DF60 35 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13AB0,geoscape_main_ 2 | loc_6CA0C,geoscape_errno_val 3 | loc_12638,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_69538,geoscape_data_end 7 | loc_695F8,geoscape_bss_begin 8 | loc_6CA10,geoscape_bss_end 9 | 10 | loc_6DAC0,geoscape_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/llasm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_425ED,5,;call IF@ACOS|FACOS_VOID ; acos(st0) 2 | 3 | loc_42668,5,;call IF@ASIN|FASIN_VOID ; asin(st0) 4 | loc_426B7,5,;call IF@ASIN|FASIN_VOID ; asin(st0) 5 | 6 | loc_49F38,28, ; skip procedure __CHP 7 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/llasm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51DCC 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4A93A,SR___CHK 2 | loc_49A30,SR___GETDS 3 | 4 | loc_49BEE,SR_cprintf 5 | loc_47F2B,SR_printf 6 | 7 | loc_4ACF6,SR_dlseek 8 | loc_4AD21,SR_dopen 9 | loc_4AD4F,SR_dread 10 | loc_4AD40,SR_dclose 11 | 12 | loc_4A987,SR_DigPlay 13 | loc_4AA15,SR_AudioCapabilities 14 | loc_4AA56,SR_StopSound 15 | loc_4AA73,SR_PostAudioPending 16 | loc_4AAD0,SR_SetPlayMode 17 | loc_4AAE6,SR_PendingAddress 18 | loc_4AAFB,SR_ReportSemaphoreAddress 19 | loc_4AB2B,SR_SetBackFillMode 20 | loc_4AB62,SR_VerifyDMA 21 | loc_4A9B4,SR_SetDPMIMode 22 | loc_4ABE5,SR_RealPtr 23 | 24 | loc_476BA,SR_checkch 25 | loc_49C14,SR_getch 26 | loc_4970A,SR_fcloseall 27 | 28 | loc_49C32,SR_exit 29 | loc_47C5D,SR_fclose 30 | loc_49F60,SR_fflush 31 | loc_47D9F,SR_fgetc 32 | loc_49C60,SR__nfree 33 | loc_49AE1,SR__nmalloc 34 | loc_49697,SR_time 35 | loc_10AC0,SR_WaitVerticalRetraceTicks2 36 | 37 | loc_479FD,SR_fopen 38 | loc_51E62,SR_fputs 39 | loc_49D1A,SR_strcat 40 | loc_49A40,SR_strcmp 41 | loc_49CFB,SR_strcpy 42 | 43 | loc_47F02,SR_strncmp 44 | 45 | loc_47A93,SR_fread 46 | loc_49D51,SR_fwrite 47 | 48 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_49F56 2 | loc_4D8B1 3 | loc_4D9D6 4 | loc_4DD5C 5 | loc_4DDCC 6 | 7 | loc_4A89B 8 | loc_496FE 9 | loc_49F55 10 | loc_4C9E1 11 | loc_4C9E6 12 | loc_49F5B 13 | loc_4CA25 14 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12638 2 | loc_19840 3 | loc_19CE0 4 | loc_1A2D0 5 | loc_1AF70 6 | loc_1B780 7 | loc_1D060 8 | loc_1E5C0 9 | loc_1FE60 10 | loc_20540 11 | loc_21C10 12 | loc_25190 13 | loc_28240 14 | loc_2F570 15 | loc_33A40 16 | loc_34590 17 | loc_3AB40 18 | loc_3E7C0 19 | loc_3F9A0 20 | loc_401E0 21 | loc_40810 22 | loc_40F40 23 | loc_452F0 24 | loc_49BC4 25 | loc_4A89B 26 | loc_4C9E1 27 | loc_4C9E6 28 | loc_4D8B1 29 | loc_4D9D6 30 | loc_4DD5C 31 | loc_4DDCC 32 | loc_4DDF0 33 | loc_4DF24 34 | loc_4DF60 35 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_13AB0,geoscape_main_ 2 | loc_6CA0C,geoscape_errno_val 3 | loc_12638,geoscape_update_timer 4 | 5 | loc_60000,geoscape_data_begin 6 | loc_69538,geoscape_data_end 7 | loc_695F8,geoscape_bss_begin 8 | loc_6CA10,geoscape_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_425ED,5,call SR_acos2 ; acos(st0) 2 | 3 | loc_42668,5,call SR_asin2_2 ; asin(st0) 4 | loc_426B7,5,call SR_asin2 ; asin(st0) 5 | 6 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR1/x86/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_51DCC 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4E0C0,SR___CHK 2 | 3 | loc_4D29D,SR_cprintf 4 | loc_4B6CF,SR_printf 5 | 6 | loc_4E47A,SR_dlseek 7 | loc_4E4A5,SR_dopen 8 | loc_4E4D3,SR_dread 9 | loc_4E4C4,SR_dclose 10 | 11 | loc_4E10B,SR_DigPlay 12 | loc_4E199,SR_AudioCapabilities 13 | loc_4E1DA,SR_StopSound 14 | loc_4E1F7,SR_PostAudioPending 15 | loc_4E254,SR_SetPlayMode 16 | loc_4E26A,SR_PendingAddress 17 | loc_4E27F,SR_ReportSemaphoreAddress 18 | loc_4E2AF,SR_SetBackFillMode 19 | loc_4E2E6,SR_VerifyDMA 20 | loc_4E138,SR_SetDPMIMode 21 | loc_4E369,SR_RealPtr 22 | 23 | loc_4AE5E,SR_checkch 24 | loc_4CED6,SR_getch 25 | 26 | loc_4CEF4,SR_exit 27 | loc_4B401,SR_fclose 28 | loc_4B543,SR_fgetc 29 | loc_4D2C3,SR__nfree 30 | loc_4CF5F,SR__nmalloc 31 | loc_4D3B2,SR_time 32 | loc_10AC0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_4B1A1,SR_fopen 35 | loc_4EEA6,SR_fputc 36 | loc_4EE02,SR_fputs 37 | loc_4E68E,SR_strcat 38 | 39 | loc_4B6A6,SR_strncmp 40 | 41 | loc_4B237,SR_fread 42 | loc_4D08C,SR_fwrite 43 | 44 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/arm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_501D1 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12638 2 | loc_4D273 3 | loc_4E021 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_2F7F0,tactical_main_ 2 | loc_937D4,tactical_errno_val 3 | loc_12638,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_75294,tactical_data_end 7 | loc_753E4,tactical_bss_begin 8 | loc_937D8,tactical_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x753E4,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe TACTICAL.EXE tactical-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ tactical-asm.asm 2>a.a 8 | ./repair_short_jumps.py 9 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ tactical-asm.asm 2>a.a 10 | ./repair_short_jumps.py 11 | rm *.a 12 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4E0C0,SR___CHK 2 | 3 | loc_4D29D,SR_cprintf 4 | loc_4B6CF,SR_printf 5 | 6 | loc_4E47A,SR_dlseek 7 | loc_4E4A5,SR_dopen 8 | loc_4E4D3,SR_dread 9 | loc_4E4C4,SR_dclose 10 | 11 | loc_4E10B,SR_DigPlay 12 | loc_4E199,SR_AudioCapabilities 13 | loc_4E1DA,SR_StopSound 14 | loc_4E1F7,SR_PostAudioPending 15 | loc_4E254,SR_SetPlayMode 16 | loc_4E26A,SR_PendingAddress 17 | loc_4E27F,SR_ReportSemaphoreAddress 18 | loc_4E2AF,SR_SetBackFillMode 19 | loc_4E2E6,SR_VerifyDMA 20 | loc_4E138,SR_SetDPMIMode 21 | loc_4E369,SR_RealPtr 22 | 23 | loc_4AE5E,SR_checkch 24 | loc_4CED6,SR_getch 25 | 26 | loc_4CEF4,SR_exit 27 | loc_4B401,SR_fclose 28 | loc_4B543,SR_fgetc 29 | loc_4D2C3,SR__nfree 30 | loc_4CF5F,SR__nmalloc 31 | loc_4D3B2,SR_time 32 | loc_10AC0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_4B1A1,SR_fopen 35 | loc_4EEA6,SR_fputc 36 | loc_4EE02,SR_fputs 37 | loc_4E68E,SR_strcat 38 | 39 | loc_4B6A6,SR_strncmp 40 | 41 | loc_4B237,SR_fread 42 | loc_4D08C,SR_fwrite 43 | 44 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/llasm/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_501D1 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12638 2 | loc_4D273 3 | loc_4E021 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_2F7F0,tactical_main_ 2 | loc_937D4,tactical_errno_val 3 | loc_12638,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_75294,tactical_data_end 7 | loc_753E4,tactical_bss_begin 8 | loc_937D8,tactical_bss_end 9 | 10 | loc_94810,tactical_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4E0C0,SR___CHK 2 | 3 | loc_4D29D,SR_cprintf 4 | loc_4B6CF,SR_printf 5 | 6 | loc_4E47A,SR_dlseek 7 | loc_4E4A5,SR_dopen 8 | loc_4E4D3,SR_dread 9 | loc_4E4C4,SR_dclose 10 | 11 | loc_4E10B,SR_DigPlay 12 | loc_4E199,SR_AudioCapabilities 13 | loc_4E1DA,SR_StopSound 14 | loc_4E1F7,SR_PostAudioPending 15 | loc_4E254,SR_SetPlayMode 16 | loc_4E26A,SR_PendingAddress 17 | loc_4E27F,SR_ReportSemaphoreAddress 18 | loc_4E2AF,SR_SetBackFillMode 19 | loc_4E2E6,SR_VerifyDMA 20 | loc_4E138,SR_SetDPMIMode 21 | loc_4E369,SR_RealPtr 22 | 23 | loc_4AE5E,SR_checkch 24 | loc_4CED6,SR_getch 25 | 26 | loc_4CEF4,SR_exit 27 | loc_4B401,SR_fclose 28 | loc_4B543,SR_fgetc 29 | loc_4D2C3,SR__nfree 30 | loc_4CF5F,SR__nmalloc 31 | loc_4D3B2,SR_time 32 | loc_10AC0,SR_WaitVerticalRetraceTicks2 33 | 34 | loc_4B1A1,SR_fopen 35 | loc_4EEA6,SR_fputc 36 | loc_4EE02,SR_fputs 37 | loc_4E68E,SR_strcat 38 | 39 | loc_4B6A6,SR_strncmp 40 | 41 | loc_4B237,SR_fread 42 | loc_4D08C,SR_fwrite 43 | 44 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/x86/fixup_do_not_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_501D1 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_12638 2 | loc_4D273 3 | loc_4E021 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_2F7F0,tactical_main_ 2 | loc_937D4,tactical_errno_val 3 | loc_12638,tactical_update_timer 4 | 5 | loc_70000,tactical_data_begin 6 | loc_75294,tactical_data_end 7 | loc_753E4,tactical_bss_begin 8 | loc_937D8,tactical_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR2/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/arm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_111F0,SR___CHK 2 | 3 | loc_13C22,SR_printf 4 | 5 | loc_135AA,SR_dlseek 6 | loc_135D5,SR_dopen 7 | loc_13603,SR_dread 8 | loc_135F4,SR_dclose 9 | 10 | loc_138D7,SR_DigPlay 11 | loc_13965,SR_AudioCapabilities 12 | loc_139A6,SR_StopSound 13 | loc_139C3,SR_PostAudioPending 14 | loc_13A20,SR_SetPlayMode 15 | loc_13A36,SR_PendingAddress 16 | loc_13A4B,SR_ReportSemaphoreAddress 17 | loc_13A7B,SR_SetBackFillMode 18 | loc_13AB2,SR_VerifyDMA 19 | loc_13904,SR_SetDPMIMode 20 | loc_13B35,SR_RealPtr 21 | 22 | loc_130FD,SR_checkch 23 | loc_13114,SR_getch 24 | 25 | loc_13139,SR_fclose 26 | loc_12C71,SR__nfree 27 | loc_13131,SR_inp 28 | loc_12B21,SR__nmalloc 29 | loc_12C58,SR_strlen 30 | 31 | loc_12E9D,SR_fopen 32 | loc_1327B,SR_outp 33 | loc_12CCF,SR_strcat 34 | loc_12B02,SR_strcpy 35 | loc_12C1F,SR_stricmp 36 | 37 | 38 | loc_12F33,SR_fread 39 | loc_143E2,SR_int386x 40 | 41 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/arm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_10010 2 | loc_111A5 3 | loc_14F1C 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/arm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1004A,intro_main_ 2 | loc_218D0,intro_errno_val 3 | loc_111A5,intro_update_timer 4 | 5 | loc_20000,intro_data_begin 6 | loc_20C3C,intro_data_end 7 | loc_20F04,intro_bss_begin 8 | loc_218D4,intro_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/arm/instruction_flags.sci: -------------------------------------------------------------------------------- 1 | loc_10488,0 ,0x30 ; jl - FL_SIGN | FL_OVERFLOW 2 | 3 | loc_10522,0 ,0x30 ; jl - FL_SIGN | FL_OVERFLOW 4 | 5 | loc_10802,0 ,0x30 ; jl - FL_SIGN | FL_OVERFLOW 6 | 7 | loc_10926,0 ,0x30 ; jl - FL_SIGN | FL_OVERFLOW 8 | 9 | loc_10B33,0 ,0x30 ; jl - FL_SIGN | FL_OVERFLOW 10 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x20F04,0 2 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/build-arm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp arm/*.sci ./ 4 | ./SR.exe INTRO.EXE intro-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_arm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SR.exe INTRO.EXE intro-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SR.exe INTRO.EXE intro-asm.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ intro-asm.asm 2>a.a 8 | ./repair_short_jumps.py 9 | rm *.a 10 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_111F0,SR___CHK 2 | 3 | loc_13C22,SR_printf 4 | 5 | loc_135AA,SR_dlseek 6 | loc_135D5,SR_dopen 7 | loc_13603,SR_dread 8 | loc_135F4,SR_dclose 9 | 10 | loc_138D7,SR_DigPlay 11 | loc_13965,SR_AudioCapabilities 12 | loc_139A6,SR_StopSound 13 | loc_139C3,SR_PostAudioPending 14 | loc_13A20,SR_SetPlayMode 15 | loc_13A36,SR_PendingAddress 16 | loc_13A4B,SR_ReportSemaphoreAddress 17 | loc_13A7B,SR_SetBackFillMode 18 | loc_13AB2,SR_VerifyDMA 19 | loc_13904,SR_SetDPMIMode 20 | loc_13B35,SR_RealPtr 21 | 22 | loc_130FD,SR_checkch 23 | loc_13114,SR_getch 24 | 25 | loc_13139,SR_fclose 26 | loc_12C71,SR__nfree 27 | loc_13131,SR_inp 28 | loc_12B21,SR__nmalloc 29 | loc_12C58,SR_strlen 30 | 31 | loc_12E9D,SR_fopen 32 | loc_1327B,SR_outp 33 | loc_12CCF,SR_strcat 34 | loc_12B02,SR_strcpy 35 | loc_12C1F,SR_stricmp 36 | 37 | 38 | loc_12F33,SR_fread 39 | loc_143E2,SR_int386x 40 | 41 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_10010 2 | loc_111A5 3 | loc_14F1C 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1004A,intro_main_ 2 | loc_218D0,intro_errno_val 3 | loc_111A5,intro_update_timer 4 | 5 | loc_20000,intro_data_begin 6 | loc_20C3C,intro_data_end 7 | loc_20F04,intro_bss_begin 8 | loc_218D4,intro_bss_end 9 | 10 | loc_228E0,intro_stack_start 11 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_111F0,SR___CHK 2 | 3 | loc_13C22,SR_printf 4 | 5 | loc_135AA,SR_dlseek 6 | loc_135D5,SR_dopen 7 | loc_13603,SR_dread 8 | loc_135F4,SR_dclose 9 | 10 | loc_138D7,SR_DigPlay 11 | loc_13965,SR_AudioCapabilities 12 | loc_139A6,SR_StopSound 13 | loc_139C3,SR_PostAudioPending 14 | loc_13A20,SR_SetPlayMode 15 | loc_13A36,SR_PendingAddress 16 | loc_13A4B,SR_ReportSemaphoreAddress 17 | loc_13A7B,SR_SetBackFillMode 18 | loc_13AB2,SR_VerifyDMA 19 | loc_13904,SR_SetDPMIMode 20 | loc_13B35,SR_RealPtr 21 | 22 | loc_130FD,SR_checkch 23 | loc_13114,SR_getch 24 | 25 | loc_13139,SR_fclose 26 | loc_12C71,SR__nfree 27 | loc_13131,SR_inp 28 | loc_12B21,SR__nmalloc 29 | loc_12C58,SR_strlen 30 | 31 | loc_12E9D,SR_fopen 32 | loc_1327B,SR_outp 33 | loc_12CCF,SR_strcat 34 | loc_12B02,SR_strcpy 35 | loc_12C1F,SR_stricmp 36 | 37 | 38 | loc_12F33,SR_fread 39 | loc_143E2,SR_int386x 40 | 41 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_10010 2 | loc_111A5 3 | loc_14F1C 4 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_1004A,intro_main_ 2 | loc_218D0,intro_errno_val 3 | loc_111A5,intro_update_timer 4 | 5 | loc_20000,intro_data_begin 6 | loc_20C3C,intro_data_end 7 | loc_20F04,intro_bss_begin 8 | loc_218D4,intro_bss_end 9 | -------------------------------------------------------------------------------- /SR-games/X-Com - Ufo Defense/SR3/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SR/arm-support/asm_int.inc: -------------------------------------------------------------------------------- 1 | @part of static recompiler -- do not edit 2 | 3 | @@ 4 | @@ Copyright (C) 2016 Roman Pauer 5 | @@ 6 | @@ Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | @@ this software and associated documentation files (the "Software"), to deal in 8 | @@ the Software without restriction, including without limitation the rights to 9 | @@ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | @@ of the Software, and to permit persons to whom the Software is furnished to do 11 | @@ so, subject to the following conditions: 12 | @@ 13 | @@ The above copyright notice and this permission notice shall be included in all 14 | @@ copies or substantial portions of the Software. 15 | @@ 16 | @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | @@ SOFTWARE. 23 | @@ 24 | 25 | .extern x86_int 26 | -------------------------------------------------------------------------------- /SR/udis86-1.6/Makefile.in: -------------------------------------------------------------------------------- 1 | # Makefile 2 | # udis86 - udis86 disassembler for x86(x86-64) 3 | # 4 | 5 | .PHONY: tests 6 | 7 | all: 8 | $(MAKE) -C libudis86 9 | $(MAKE) -C udcli 10 | 11 | install: all 12 | $(MAKE) -C libudis86 install 13 | $(MAKE) -C udcli install 14 | 15 | uninstall: 16 | $(MAKE) -C libudis86 uninstall 17 | $(MAKE) -C udcli uninstall 18 | 19 | standalone: 20 | $(MAKE) -C libudis86 -f Makefile.standalone 21 | 22 | clean: 23 | $(MAKE) -C libudis86 clean 24 | $(MAKE) -C udcli clean 25 | 26 | tests: all 27 | $(MAKE) -C tests tests 28 | 29 | distclean: clean 30 | $(MAKE) -C libudis86 distclean 31 | $(MAKE) -C udcli distclean 32 | $(MAKE) -C tests clean 33 | $(RM) -f config.h test.bin Makefile *.log *~ docs/*~ 34 | $(RM) -rf autom4te*.cache 35 | -------------------------------------------------------------------------------- /SR/udis86-1.6/Makefile.win32: -------------------------------------------------------------------------------- 1 | # Makefile 2 | # udis86 - udis86 disassembler for x86(x86-64) 3 | # 4 | 5 | all: 6 | cd libudis86 && $(MAKE) -f Makefile.win32 7 | cd udcli && $(MAKE) -f Makefile.win32 8 | cd tests && $(MAKE) -f Makefile.win32 9 | clean: 10 | cd libudis86 && $(MAKE) clean -f Makefile.win32 11 | cd udcli && $(MAKE) clean -f Makefile.win32 12 | cd tests && $(MAKE) clean -f Makefile.win32 13 | test: 14 | cd tests && $(MAKE) test16 -f Makefile.win32 && $(MAKE) test32 -f Makefile.win32 && $(MAKE) test64 -f Makefile.win32 15 | 16 | -------------------------------------------------------------------------------- /SR/udis86-1.6/configure.in: -------------------------------------------------------------------------------- 1 | AC_INIT(udis86, 1.6, vivek@sig9.com) 2 | AC_PROG_CC 3 | AC_PROG_INSTALL 4 | AC_CONFIG_HEADER(config.h) 5 | AC_CONFIG_FILES([Makefile 6 | libudis86/Makefile 7 | udcli/Makefile]) 8 | AC_OUTPUT 9 | -------------------------------------------------------------------------------- /SR/udis86-1.6/docs/ss.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/SR/udis86-1.6/docs/ss.jpg -------------------------------------------------------------------------------- /SR/udis86-1.6/docs/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | font: 76%, sans-serif; 3 | background-color: #fff; 4 | margin: 0; 5 | padding: 0; 6 | } 7 | 8 | #topbar { 9 | margin-top: 0px; 10 | padding: 1em; 11 | background-color: skyblue; 12 | color: navy; 13 | } 14 | #topbar h1 { 15 | padding: 0; 16 | margin: 0; 17 | font: 2em, sans-serif; 18 | font-weight: bold; 19 | } 20 | 21 | #wrapper { 22 | width: 750px; 23 | } 24 | 25 | #menu { 26 | } 27 | #content a { 28 | text-decoration: none; 29 | color: navy; 30 | border-bottom: 1px solid; 31 | } 32 | 33 | #content { 34 | margin-left: 10px; 35 | font-size: 1.1em; 36 | padding: 1em; 37 | vertical-align: top; 38 | border-left: 1px solid skyblue; 39 | border-right: 1px solid skyblue; 40 | } 41 | 42 | .box { 43 | background-color: #efefef; 44 | border: 1px dotted #aaa; 45 | padding: .5em; 46 | } 47 | 48 | li { 49 | margin-bottom: .5em; 50 | } 51 | 52 | pre { 53 | padding: .5em; 54 | background-color: #f5f5f5; 55 | font-size: 1.1em; 56 | border: 1px solid #999; 57 | } 58 | 59 | code { 60 | font-size: 1.2em; 61 | } 62 | 63 | ul { 64 | margin: 1em; 65 | } 66 | -------------------------------------------------------------------------------- /SR/udis86-1.6/libudis86/Makefile.standalone: -------------------------------------------------------------------------------- 1 | # Udis86 Standalone 2 | # 3 | # 4 | 5 | LDFLAGS += -r 6 | CFLAGS += -Wall -O2 7 | UD_STANDALONE ?= ud_standalone.o 8 | 9 | .PHONY: clean 10 | .SUFFIXES: .c .o 11 | .c.o: 12 | $(CC) -c $(CFLAGS) -D__UD_STANDALONE__ -o $@ $< 13 | 14 | OBJS = mnemonics.o \ 15 | opcmap.o \ 16 | input.o \ 17 | decode.o \ 18 | syn.o \ 19 | syn-intel.o \ 20 | syn-att.o \ 21 | udis86.o 22 | 23 | $(UD_STANDALONE): clean $(OBJS) 24 | $(LD) $(LDFLAGS) $(OBJS) -o $@ 25 | clean: 26 | $(RM) -f $(OBJS) $(UD_STANDALONE) 27 | -------------------------------------------------------------------------------- /SR/udis86-1.6/libudis86/Makefile.win32: -------------------------------------------------------------------------------- 1 | # Makefile - libudis86 2 | # 3 | # 4 | 5 | SHELL = @SHELL@ 6 | top_srcdir = @top_srcdir@ 7 | srcdir = @srcdir@ 8 | CC = cl 9 | CFLAGS = /O2 10 | AR = lib 11 | RM = del 12 | PERL = perl 13 | 14 | .SUFFIXES: .c .obj 15 | .c.obj: 16 | $(CC) -c $(CFLAGS) -o $@ $< 17 | 18 | OBJS = mnemonics.obj \ 19 | opcmap.obj \ 20 | input.obj \ 21 | decode.obj \ 22 | syn.obj \ 23 | syn-intel.obj \ 24 | syn-att.obj \ 25 | udis86.obj 26 | 27 | libudis86.a: $(OBJS) 28 | $(AR) /out:udis86.lib $(OBJS) 29 | 30 | mnemonics.c: mnemonics.dat 31 | $(PERL) mnemonics.pl < mnemonics.dat 32 | mnemonics.h: mnemonics.dat 33 | $(PERL) mnemonics.pl < mnemonics.dat 34 | input.c: input.h types.h 35 | opcmap.c: opcmap.h input.h types.h 36 | decode.c: opcmap.h input.h types.h extern.h 37 | syn-intel.c: syn.h input.h types.h opcmap.h 38 | syn-att.c: syn.h input.h types.h opcmap.h 39 | syn.c: syn.h types.h opcmap.h 40 | udis86.c: input.h syn.h types.h extern.h 41 | 42 | clean: 43 | $(RM) *.obj *.lib 44 | 45 | -------------------------------------------------------------------------------- /SR/udis86-1.6/libudis86/mnemonics.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # 3 | # mnemonics.pl - generates mnemonic{.h,.c} from mnemonics.dat 4 | # 5 | # Copyright (c) 2002, 2003, 2004 Vivek Mohan 6 | # All rights reserved. 7 | # See (LICENSE) 8 | # 9 | # 10 | 11 | 12 | open(mnm_c,">mnemonics.c") || die "Couldn't create mnemonics.c."; 13 | open(mnm_h,">mnemonics.h") || die "Couldn't create mnemonics.h."; 14 | 15 | print mnm_c "/* Do not edit, generated by mnemonics.pl */ \n"; 16 | print mnm_c "const char* ud_mnemonics[] = \n{\n"; 17 | 18 | print mnm_h "/* Do not edit, Generated by mnemonics.pl */ \n\n"; 19 | print mnm_h "#ifndef UD_MNEMONICS_H\n"; 20 | print mnm_h "#define UD_MNEMONICS_H\n\n"; 21 | print mnm_h "extern const char* ud_mnemonics[];\n\n"; 22 | print mnm_h "enum ud_mnemonic_code \n{ \n"; 23 | 24 | while($mnm = ) { 25 | chop($mnm); 26 | print mnm_c " \"$mnm\",\n"; 27 | print mnm_h " UD_I$mnm,\n"; 28 | } 29 | 30 | print mnm_c " \"I3vil\",\n"; 31 | print mnm_h " UD_I3vil\n"; 32 | 33 | print mnm_c "};\n"; 34 | print mnm_h "};\n"; 35 | print mnm_h "#endif\n"; 36 | 37 | close(mnm_c); 38 | close(mnm_h); 39 | -------------------------------------------------------------------------------- /SR/udis86-1.6/libudis86/syn.h: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | * syn.h 3 | * 4 | * Copyright (c) 2006, Vivek Mohan 5 | * All rights reserved. See LICENSE 6 | * ----------------------------------------------------------------------------- 7 | */ 8 | #ifndef UD_SYN_H 9 | #define UD_SYN_H 10 | 11 | #include 12 | #include 13 | #include "types.h" 14 | 15 | extern const char* ud_reg_tab[]; 16 | 17 | static void mkasm(struct ud* u, const char* fmt, ...) 18 | { 19 | va_list ap; 20 | va_start(ap, fmt); 21 | u->insn_fill += vsprintf((char*) u->insn_buffer + u->insn_fill, fmt, ap); 22 | va_end(ap); 23 | } 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /SR/udis86-1.6/mkinstalldirs: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # mkinstalldirs --- make directory hierarchy 3 | # Author: Noah Friedman 4 | # Created: 1993-05-16 5 | # Public domain 6 | 7 | # $Id: mkinstalldirs,v 1.1.1.1 2006/02/04 09:13:58 vivek5797 Exp $ 8 | 9 | errstatus=0 10 | 11 | for file 12 | do 13 | set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` 14 | shift 15 | 16 | pathcomp= 17 | for d 18 | do 19 | pathcomp="$pathcomp$d" 20 | case "$pathcomp" in 21 | -* ) pathcomp=./$pathcomp ;; 22 | esac 23 | 24 | if test ! -d "$pathcomp"; then 25 | echo "mkdir $pathcomp" 26 | 27 | mkdir "$pathcomp" || lasterr=$? 28 | 29 | if test ! -d "$pathcomp"; then 30 | errstatus=$lasterr 31 | fi 32 | fi 33 | 34 | pathcomp="$pathcomp/" 35 | done 36 | done 37 | 38 | exit $errstatus 39 | 40 | # mkinstalldirs ends here 41 | -------------------------------------------------------------------------------- /SR/udis86-1.6/tests/Makefile.win32: -------------------------------------------------------------------------------- 1 | # Makefile 2 | 3 | CC = cl 4 | RM = del 5 | 6 | 7 | .SUFFIXES: .c .obj 8 | .c.obj: 9 | $(CC) -I.. -c $(CFLAGS) -o $@ $< 10 | 11 | OBJS = gen.obj 12 | 13 | gen.exe: $(OBJS) 14 | $(CC) $(OBJS) ../libudis86/udis86.lib -o gen.exe 15 | test16: gen.exe 16 | yasm -f bin -o test16.bin test16.asm 17 | echo [bits 16]> test16.out 18 | gen -16 < test16.bin >> test16.out 19 | diff test16.asm test16.out | more 20 | test32: gen.exe 21 | yasm -f bin -o test32.bin test32.asm 22 | echo [bits 32]> test32.out 23 | gen -32 < test32.bin >> test32.out 24 | diff test32.asm test32.out | more 25 | test64: gen.exe 26 | yasm -f bin -o test64.bin test64.asm 27 | echo [bits 64]> test64.out 28 | gen -64 < test64.bin >> test64.out 29 | diff test64.asm test64.out | more 30 | testjmp: gen.exe 31 | yasm -f bin -o testjmp.bin testjmp.asm 32 | ..\udcli\udcli -64 < testjmp.bin > testjmp.out 33 | type testjmp.out | more 34 | clean: 35 | $(RM) *.obj gen.exe *.bin *.out 36 | -------------------------------------------------------------------------------- /SR/udis86-1.6/tests/bufovrrun.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include "../udis86.h" 3 | 4 | int 5 | main() { 6 | uint8_t raw[] = { 0xf0, 0x66, 0x36, 0x67, 0x65, 0x66, 0xf3, 0x67, 0xda }; 7 | uint8_t len = 9; 8 | ud_t ud_obj; 9 | ud_init(&ud_obj); 10 | ud_set_mode(&ud_obj, 16); 11 | ud_set_input_buffer(&ud_obj, raw, len); 12 | ud_set_syntax(&ud_obj, UD_SYN_INTEL); 13 | if (ud_disassemble(&ud_obj) != 0) { 14 | return 0; 15 | } 16 | return 1; 17 | } 18 | -------------------------------------------------------------------------------- /SR/udis86-1.6/tests/randtest.raw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/SR/udis86-1.6/tests/randtest.raw -------------------------------------------------------------------------------- /SR/udis86-1.6/tests/test16.asm: -------------------------------------------------------------------------------- 1 | [bits 16] 2 | movzx eax, word [bx] 3 | -------------------------------------------------------------------------------- /SR/udis86-1.6/tests/testjmp.asm: -------------------------------------------------------------------------------- 1 | [bits 64] 2 | 3 | jnz near x 4 | jo near x 5 | jno word x 6 | jc near x 7 | jnc word x 8 | jae dword x 9 | jcxz x 10 | jecxz x 11 | jrcxz x 12 | jmp near x 13 | call x 14 | jmp word x 15 | jmp dword x 16 | jmp word [eax] 17 | x: jmp qword [rax] 18 | -------------------------------------------------------------------------------- /SR/udis86-1.6/tests/testjmp.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 0f853b000000 jnz dword 0x41 2 | 0000000000000006 0f8035000000 jo dword 0x41 3 | 000000000000000c 660f813000 jno word 0x41 4 | 0000000000000011 0f822a000000 jb dword 0x41 5 | 0000000000000017 660f832500 jae word 0x41 6 | 000000000000001c 0f831f000000 jae dword 0x41 7 | 0000000000000022 67e31c jecxz 0x41 8 | 0000000000000025 67e319 jecxz 0x41 9 | 0000000000000028 e317 jrcxz 0x41 10 | 000000000000002a e912000000 jmp 0x41 11 | 000000000000002f e80d000000 call 0x41 12 | 0000000000000034 66e90900 jmp 0x41 13 | 0000000000000038 e904000000 jmp 0x41 14 | 000000000000003d 6667ff20 jmp word near [eax] 15 | 0000000000000041 ff20 jmp qword near [rax] 16 | -------------------------------------------------------------------------------- /SR/udis86-1.6/udcli/Makefile.in: -------------------------------------------------------------------------------- 1 | # Makefile 2 | # udis86 - Cmd line interface. 3 | # 4 | 5 | SHELL = @SHELL@ 6 | top_srcdir = @top_srcdir@ 7 | srcdir = @srcdir@ 8 | CC = @CC@ 9 | CFLAGS = @CFLAGS@ -Wall -O2 10 | LIBS = @LIBS@ 11 | INSTALL = @INSTALL@ 12 | INSTALL_PROGRAM = @INSTALL_PROGRAM@ 13 | INSTALL_DATA = @INSTALL_DATA@ 14 | prefix = @prefix@ 15 | exec_prefix = ${prefix} 16 | bindir = $(exec_prefix)/bin 17 | libdir = $(prefix)/lib 18 | mandir = @mandir@ 19 | includedir = @includedir@ 20 | RM = rm 21 | 22 | 23 | .SUFFIXES: .c .o 24 | .c.o: 25 | $(CC) -c $(CFLAGS) -o $@ $< 26 | 27 | OBJS = udcli.o ../libudis86/libudis86.a 28 | 29 | udcli: $(OBJS) 30 | $(CC) $(CFLAGS) $(OBJS) -o udcli 31 | install: udcli 32 | $(INSTALL_PROGRAM) $(srcdir)/udcli $(INSTALLROOT)$(bindir)/udcli 33 | uninstall: 34 | $(RM) -f $(INSTALLROOT)$(bindir)/udcli 35 | clean: 36 | $(RM) -f core $(srcdir)/*.o $(srcdir)/udcli 37 | distclean: clean 38 | $(RM) -f udcli config.h Makefile *~ 39 | -------------------------------------------------------------------------------- /SR/udis86-1.6/udcli/Makefile.win32: -------------------------------------------------------------------------------- 1 | # Makefile 2 | # udis86 - Cmd line interface. 3 | # 4 | 5 | CC = cl 6 | CFLAGS = -O2 7 | RM = del 8 | 9 | 10 | .SUFFIXES: .c .obj 11 | .c.obj: 12 | $(CC) -c $(CFLAGS) -o $@ $< 13 | 14 | OBJS = udcli.obj ../libudis86/udis86.lib 15 | 16 | udcli: $(OBJS) 17 | $(CC) $(OBJS) -o udcli.exe 18 | 19 | clean: 20 | $(RM) *.obj udcli.exe 21 | -------------------------------------------------------------------------------- /SR/udis86-1.6/udis86.h: -------------------------------------------------------------------------------- 1 | /* ----------------------------------------------------------------------------- 2 | * udis86.h 3 | * 4 | * Copyright (c) 2002, 2003, 2004 Vivek Mohan 5 | * All rights reserved. See (LICENSE) 6 | * ----------------------------------------------------------------------------- 7 | */ 8 | 9 | #ifndef UDIS86_H 10 | #define UDIS86_H 11 | 12 | #include "libudis86/types.h" 13 | #include "libudis86/extern.h" 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /SR/x86-support/asm_int.inc: -------------------------------------------------------------------------------- 1 | ;part of static recompiler -- do not edit 2 | 3 | ;; 4 | ;; Copyright (C) 2016 Roman Pauer 5 | ;; 6 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ;; this software and associated documentation files (the "Software"), to deal in 8 | ;; the Software without restriction, including without limitation the rights to 9 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ;; of the Software, and to permit persons to whom the Software is furnished to do 11 | ;; so, subject to the following conditions: 12 | ;; 13 | ;; The above copyright notice and this permission notice shall be included in all 14 | ;; copies or substantial portions of the Software. 15 | ;; 16 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ;; SOFTWARE. 23 | ;; 24 | 25 | extern x86_int 26 | -------------------------------------------------------------------------------- /SR64-loader/komp-arm64.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | gcc -s -O2 -Wall -fPIE -pie -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-builtin -fno-stack-protector -Wl,-z,noexecstack SR64-loader.c start-arm64.S syscall-arm64.c -o SR64-loader -nostdlib 3 | -------------------------------------------------------------------------------- /SR64-loader/komp-x64.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | gcc -s -m64 -O2 -Wall -fPIE -pie -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-builtin -fno-stack-protector -Wl,-z,noexecstack SR64-loader.c start-x64.S syscall-x64.c -o SR64-loader -nostdlib 3 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SRW.exe MS_FIGTR.DLL MS_FIGTR.llasm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SRW.exe MS_FIGTR.DLL MS_FIGTR.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | rm *.a 8 | rm MS_FIGTR.def 9 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_10004600,ms_strcpy_asm2c 2 | loc_10004690,ms_strlen_asm2c 3 | loc_100046e0,ms_memcpy_asm2c 4 | loc_10004830,ms_memset_asm2c 5 | loc_10004874,ms__ftol_asm2c 6 | loc_10007C36,ms__ltoa_asm2c 7 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_10004EB8 2 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/llasm/ignored_areas.sci: -------------------------------------------------------------------------------- 1 | loc_100013D7,11 2 | 3 | loc_10004507,46 4 | 5 | loc_100045EE,14 6 | loc_100045FC,14468 7 | 8 | loc_10009554,12 9 | 10 | loc_100095DC,788 11 | 12 | loc_1000B2D8,3452 13 | loc_1000C054,4012 14 | 15 | loc_10008D20,28 16 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_10004600,ms_strcpy_asm2c 2 | loc_10004690,ms_strlen_asm2c 3 | loc_100046e0,ms_memcpy_asm2c 4 | loc_10004830,ms_memset_asm2c 5 | loc_10004874,ms__ftol_asm2c 6 | loc_10007C36,ms__ltoa_asm2c 7 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_10004EB8 2 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-ms_figtr/x86/ignored_areas.sci: -------------------------------------------------------------------------------- 1 | loc_100013D7,11 2 | 3 | loc_10004507,46 4 | 5 | loc_100045EE,14 6 | loc_100045FC,14468 7 | 8 | loc_10009554,12 9 | 10 | loc_100095DC,788 11 | 12 | loc_1000B2D8,3452 13 | loc_1000C054,4012 14 | 15 | loc_10008D20,28 16 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SRW.exe SDI_1R.EXE SDI_1R.llasm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | rm SDI_1R.resdump 9 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SRW.exe SDI_1R.EXE SDI_1R.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | rm *.a 8 | rm SDI_1R.resdump SDI_1R.def 9 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4B6FA8,32 2 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_486268,ms_strlen_asm2c 2 | loc_4862C8,ms_strcat_asm2c 3 | loc_4862CC,ms_strcpy_asm2c 4 | loc_48637D,ms_atol_asm2c 5 | loc_486437,ms_atoi_asm2c 6 | loc_486447,ms_printf_asm2c 7 | loc_486494,ms_strncpy_asm2c 8 | loc_4864C4,ms_strcmp_asm2c 9 | loc_48656C,ms_memcpy_asm2c 10 | loc_486710,ms__ftol_asm2c 11 | loc_4867A8,ms_memset_asm2c 12 | loc_4867FC,ms_memcmp_asm2c 13 | loc_486822,ms_srand_asm2c 14 | loc_48682E,ms_rand_asm2c 15 | loc_486854,ms__alloca_probe_asm2c 16 | loc_48688C,ms_strstr_asm2c 17 | loc_48CC74,ms__strnicmp_asm2c 18 | loc_48CD8A,ms__ltoa_asm2c 19 | 20 | loc_486168,ms__except_handler3_asm2c 21 | 22 | loc_401E06,cmdline_ContainsOption_asm2c 23 | 24 | loc_48605E,mciGetErrorStringA_asm2c 25 | loc_48606A,mciSendCommandA_asm2c 26 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_48CA30,WinMain_ 2 | loc_4B4C3E,SYSTEM_QuitProgramFlag_SDI_1R 3 | 4 | loc_4A2B58,video_PRE_avi 5 | loc_4A2B7A,video_PRE_mciId 6 | loc_4CF328,video_PRE_dword_4CF328 7 | loc_4CF32C,video_PRE_dword_4CF32C 8 | loc_4CF330,video_PRE_stru_4CF330 9 | loc_4CF540,video_PRE_dword_4CF540 10 | loc_4CF544,video_PRE_byte_4CF544 11 | loc_4CF548,video_PRE_byte_4CF548 12 | loc_4CF54C,video_PRE_dword_4CF54C 13 | loc_4CF550,video_PRE_byte_4CF550 14 | 15 | loc_4A3540,video_POST_avi 16 | loc_4A3562,video_POST_mciId 17 | loc_4CFA40,video_POST_stru_4CFA40 18 | loc_4CFA70,video_POST_dword_4CFA70 19 | loc_4CFA74,video_POST_byte_4CFA74 20 | loc_4CFA78,video_POST_byte_4CFA78 21 | loc_4CFA7C,video_POST_dword_4CFA7C 22 | loc_4CFA80,video_POST_byte_4CFA80 23 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_4B6FA8,32 2 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_486268,ms_strlen_asm2c 2 | loc_4862C8,ms_strcat_asm2c 3 | loc_4862CC,ms_strcpy_asm2c 4 | loc_48637D,ms_atol_asm2c 5 | loc_486437,ms_atoi_asm2c 6 | loc_486447,ms_printf_asm2c 7 | loc_486494,ms_strncpy_asm2c 8 | loc_4864C4,ms_strcmp_asm2c 9 | loc_48656C,ms_memcpy_asm2c 10 | loc_486710,ms__ftol_asm2c 11 | loc_4867A8,ms_memset_asm2c 12 | loc_4867FC,ms_memcmp_asm2c 13 | loc_486822,ms_srand_asm2c 14 | loc_48682E,ms_rand_asm2c 15 | loc_486854,ms__alloca_probe_asm2c 16 | loc_48688C,ms_strstr_asm2c 17 | loc_48CC74,ms__strnicmp_asm2c 18 | loc_48CD8A,ms__ltoa_asm2c 19 | 20 | loc_486168,ms__except_handler3_asm2c 21 | 22 | loc_401E06,cmdline_ContainsOption_asm2c 23 | 24 | loc_48605E,mciGetErrorStringA_asm2c 25 | loc_48606A,mciSendCommandA_asm2c 26 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-sdi_1r/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_48CA30,WinMain_ 2 | loc_4B4C3E,SYSTEM_QuitProgramFlag_SDI_1R 3 | 4 | loc_4A2B58,video_PRE_avi 5 | loc_4A2B7A,video_PRE_mciId 6 | loc_4CF328,video_PRE_dword_4CF328 7 | loc_4CF32C,video_PRE_dword_4CF32C 8 | loc_4CF330,video_PRE_stru_4CF330 9 | loc_4CF540,video_PRE_dword_4CF540 10 | loc_4CF544,video_PRE_byte_4CF544 11 | loc_4CF548,video_PRE_byte_4CF548 12 | loc_4CF54C,video_PRE_dword_4CF54C 13 | loc_4CF550,video_PRE_byte_4CF550 14 | 15 | loc_4A3540,video_POST_avi 16 | loc_4A3562,video_POST_mciId 17 | loc_4CFA40,video_POST_stru_4CFA40 18 | loc_4CFA70,video_POST_dword_4CFA70 19 | loc_4CFA74,video_POST_byte_4CFA74 20 | loc_4CFA78,video_POST_byte_4CFA78 21 | loc_4CFA7C,video_POST_dword_4CFA7C 22 | loc_4CFA80,video_POST_byte_4CFA80 23 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=yes 3 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SRW.exe WC_FIGTR.DLL WC_FIGTR.llasm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SRW.exe WC_FIGTR.DLL WC_FIGTR.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | rm *.a 8 | rm WC_FIGTR.def 9 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_49FFFC,4 2 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/llasm/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4231B0,wc_memset_asm2c 2 | loc_4231E0,wc_strcmp_asm2c 3 | loc_42328C,wc_strcpy_asm2c 4 | loc_4232C8,wc_sprintf_asm2c 5 | loc_423305,wc_rand_asm2c 6 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_4232B1 2 | loc_42415E 3 | loc_424185 4 | loc_4241E0 5 | loc_424205 6 | loc_424213 7 | loc_424221 8 | loc_42423A 9 | loc_424253 10 | loc_424261 11 | loc_42428E 12 | loc_424298 13 | loc_4242A2 14 | loc_4242AC 15 | loc_4242B6 16 | loc_4242C0 17 | loc_4242CA 18 | loc_4242D4 19 | loc_4242DE 20 | loc_4243D3 21 | loc_4247E4 22 | loc_424984 23 | loc_425253 24 | loc_42525C 25 | loc_425D23 26 | loc_430000 27 | loc_4302C4 28 | loc_440C71 29 | loc_440CE4 30 | loc_440CF9 31 | loc_440D0E 32 | loc_440D65 33 | loc_440D7A 34 | loc_440D8F 35 | loc_440E35 36 | loc_44148F 37 | loc_441B06 38 | loc_441C37 39 | loc_441DFD 40 | loc_441FDE 41 | loc_44200C 42 | loc_4422B2 43 | loc_442739 44 | loc_442796 45 | loc_443E96 46 | loc_44432C 47 | loc_44434B 48 | loc_44435F 49 | loc_444388 50 | loc_45003F 51 | loc_450071 52 | loc_45088A 53 | loc_454DEB 54 | loc_46004B 55 | loc_470089 56 | loc_480000 57 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/llasm/ignored_areas.sci: -------------------------------------------------------------------------------- 1 | loc_410000,16 2 | 3 | loc_4106B0,3 4 | 5 | loc_41BCA9,87 6 | 7 | loc_41BE28,56 8 | 9 | loc_422C4E,434 10 | 11 | loc_4230DF,85 12 | loc_423134,52940 13 | 14 | loc_424DF2,167 15 | 16 | loc_4302FC,64772 17 | 18 | loc_4431A6,3238 19 | 20 | loc_440000,1552 21 | 22 | loc_4443AC,48212 23 | 24 | loc_450000,63 25 | 26 | loc_454D64,135 27 | 28 | loc_4556FC,43268 29 | 30 | loc_460000,75 31 | 32 | loc_460C2D,2076 33 | 34 | loc_462183,56957 35 | 36 | loc_470000,137 37 | 38 | loc_47F11C,3812 39 | 40 | loc_484EE8,192 41 | 42 | loc_48505C,44964 43 | 44 | loc_49C058,1064 45 | loc_49C480,15232 46 | 47 | loc_4A6AD0,304 48 | 49 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/llasm/unaligned_ebp_areas.sci: -------------------------------------------------------------------------------- 1 | loc_4425D4,670 2 | loc_442ECB,203 3 | loc_443FDB,25 4 | loc_4556B9,66 5 | loc_460C5B,93 6 | loc_461FEE,260 7 | loc_4716B8,53 8 | loc_480000,516 9 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_49FFFC,4 2 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/x86/external_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4231B0,wc_memset_asm2c 2 | loc_4231E0,wc_strcmp_asm2c 3 | loc_42328C,wc_strcpy_asm2c 4 | loc_4232C8,wc_sprintf_asm2c 5 | loc_423305,wc_rand_asm2c 6 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_4232B1 2 | loc_42415E 3 | loc_424185 4 | loc_4241E0 5 | loc_424205 6 | loc_424213 7 | loc_424221 8 | loc_42423A 9 | loc_424253 10 | loc_424261 11 | loc_42428E 12 | loc_424298 13 | loc_4242A2 14 | loc_4242AC 15 | loc_4242B6 16 | loc_4242C0 17 | loc_4242CA 18 | loc_4242D4 19 | loc_4242DE 20 | loc_4243D3 21 | loc_4247E4 22 | loc_424984 23 | loc_425253 24 | loc_42525C 25 | loc_425D23 26 | loc_430000 27 | loc_4302C4 28 | loc_440C71 29 | loc_440CE4 30 | loc_440CF9 31 | loc_440D0E 32 | loc_440D65 33 | loc_440D7A 34 | loc_440D8F 35 | loc_440E35 36 | loc_44148F 37 | loc_441B06 38 | loc_441C37 39 | loc_441DFD 40 | loc_441FDE 41 | loc_44200C 42 | loc_4422B2 43 | loc_442739 44 | loc_442796 45 | loc_443E96 46 | loc_44432C 47 | loc_44434B 48 | loc_44435F 49 | loc_444388 50 | loc_45003F 51 | loc_450071 52 | loc_45088A 53 | loc_454DEB 54 | loc_46004B 55 | loc_470089 56 | loc_480000 57 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/x86/ignored_areas.sci: -------------------------------------------------------------------------------- 1 | loc_410000,16 2 | 3 | loc_4106B0,3 4 | 5 | loc_41BCA9,87 6 | 7 | loc_41BE28,56 8 | 9 | loc_422C4E,434 10 | 11 | loc_4230DF,85 12 | loc_423134,52940 13 | 14 | loc_424DF2,167 15 | 16 | loc_4302FC,64772 17 | 18 | loc_4431A6,3238 19 | 20 | loc_440000,1552 21 | 22 | loc_4443AC,48212 23 | 24 | loc_450000,63 25 | 26 | loc_454D64,135 27 | 28 | loc_4556FC,43268 29 | 30 | loc_460000,75 31 | 32 | loc_460C2D,2076 33 | 34 | loc_462183,56957 35 | 36 | loc_470000,137 37 | 38 | loc_47F11C,3812 39 | 40 | loc_484EE8,192 41 | 42 | loc_48505C,44964 43 | 44 | loc_49C058,1064 45 | loc_49C480,15232 46 | 47 | loc_4A6AD0,304 48 | 49 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/x86/instruction_replacements.sci: -------------------------------------------------------------------------------- 1 | loc_410665,80, ; replace thunk function __Fight with function _Fight 2 | 3 | loc_4129B1,5,push dword 1|call FGT_CheckTicksDelay_asm2c|call SYSTEM_GetTicks ; insert delays into active waiting 4 | loc_41B9D2,5,push dword 2|call FGT_CheckTicksDelay_asm2c|call SYSTEM_GetTicks ; insert delays into active waiting 5 | -------------------------------------------------------------------------------- /SRW-games/Battle Isle 3/SRW-wc_figtr/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/SR.cfg: -------------------------------------------------------------------------------- 1 | esp_dword_aligned=yes 2 | ebp_dword_aligned=no 3 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/bssborder.csv: -------------------------------------------------------------------------------- 1 | 0x4AE800,-24 2 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/build-llasm.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp llasm/*.sci ./ 4 | ./SRW.exe Septerra104.exe Septerra.llasm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source_llasm.py 7 | rm *.a 8 | rm Septerra.resdump 9 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/build-x86.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | cp x86/*.sci ./ 4 | ./SRW.exe Septerra104.exe Septerra.asm >a.a 2>b.a 5 | rm *.sci 6 | ./compact_source.py 7 | nasm -felf32 -O1 -w+orphan-labels -w-number-overflow -ix86/ Septerra.asm 2>a.a 8 | ./repair_short_jumps.py 9 | rm *.a 10 | rm Septerra.resdump 11 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/llasm/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_46A6E8,4 2 | loc_46A874,4 3 | loc_481148,4 4 | loc_4812D4,4 5 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/llasm/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_411730 2 | loc_413C20 3 | loc_427460 4 | loc_427490 5 | loc_444B60 6 | loc_4462C0 7 | loc_44E190 8 | loc_4642A0 9 | loc_4661F0 10 | loc_468190 11 | loc_468BB0 12 | loc_46A480 13 | loc_46A7E4 14 | loc_46BD80 15 | loc_46BD88 16 | loc_46BEA8 17 | loc_46C370 18 | loc_46C4A4 19 | loc_46DEDE 20 | loc_4703F5 21 | loc_4726F2 22 | loc_473D2C 23 | loc_474A2D 24 | loc_4757E8 25 | loc_47588F 26 | loc_4785A5 27 | loc_47A0FC 28 | loc_47A1A9 29 | loc_47A900 30 | loc_47BBA7 31 | loc_47CBD4 32 | loc_481244 33 | loc_4812E4 34 | loc_48157B 35 | loc_481683 36 | loc_481853 37 | loc_48C2C4 38 | loc_491B10 39 | loc_4923E0 40 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/llasm/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_412B80,WinMain_ 2 | loc_4A4BC0,security_cookie_ 3 | loc_4106E0,GetRecordName_ 4 | loc_4F11E0,hWritePipe 5 | loc_4AF27C,bShowEnemyStatus 6 | loc_4AF180,bShowEnemyLOS 7 | loc_4B0930,bHideText 8 | loc_4AE868,bShowFPS 9 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/llasm/ignored_areas.sci: -------------------------------------------------------------------------------- 1 | loc_495300,28 2 | loc_4A0070,72 3 | 4 | loc_48DD70,26192 5 | loc_49FE14,604 6 | loc_4A63F0,33808 7 | loc_4B7318,28088 8 | 9 | loc_447090,119312 10 | loc_4A4994,112 11 | loc_4B6700,8 12 | 13 | loc_469204,150380 14 | loc_4952C0,64 15 | loc_497318,35580 16 | loc_4A00B8,16 17 | loc_4A00E8,2068 18 | loc_4A4BC4,6188 19 | loc_4B6760,3000 20 | loc_4F11E8,4484 21 | 22 | loc_468FD0,564 23 | loc_4943C0,450 24 | 25 | loc_401F70,240 26 | loc_4020B0,336 27 | 28 | loc_445460,5568 29 | loc_497278,96 30 | loc_4A45B0,628 31 | loc_4B2544,16420 32 | loc_4DFF40,70248 33 | 34 | loc_431C00,464 35 | loc_4A35E8,40 36 | 37 | loc_468130,432 38 | loc_468BB0,432 39 | 40 | loc_4642A0,48 41 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/llasm/instruction_replacements_FPU.sci: -------------------------------------------------------------------------------- 1 | loc_402060,76,mov eax, 0 ; skip MMX detection 2 | 3 | loc_41DE87,149, ; MMX code 4 | loc_41DFAC,15, ; MMX code 5 | loc_41E002,149, ; MMX code 6 | loc_41E11D,15, ; MMX code 7 | loc_41E133,106, ; MMX code 8 | loc_41E23D,15, ; MMX code 9 | loc_41E253,116, ; MMX code 10 | loc_41E360,11,tcall loc_41E36B|endp ; MMX code 11 | 12 | loc_420DEE,128, ; MMX code 13 | loc_42129B,125, ; MMX code 14 | 15 | loc_421784,149, ; MMX code 16 | loc_42194C,153, ; MMX code 17 | loc_421ACC,196, ; MMX code 18 | loc_421CD4,109, ; MMX code 19 | loc_421E76,150, ; MMX code 20 | loc_42202F,128, ; MMX code 21 | loc_4221F5,4, ; MMX code 22 | 23 | loc_42254A,149, ; MMX code 24 | loc_422704,153, ; MMX code 25 | loc_422881,174, ; MMX code 26 | loc_422A68,108, ; MMX code 27 | loc_422BEB,146, ; MMX code 28 | loc_422D93,121, ; MMX code 29 | loc_422F4E,4, ; MMX code 30 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/llasm/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4105F0 2 | loc_4129D0 3 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/x86/displaced_labels.sci: -------------------------------------------------------------------------------- 1 | loc_46A6E8,4 2 | loc_46A874,4 3 | loc_481148,4 4 | loc_4812D4,4 5 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/x86/fixup_interpret_as_code.sci: -------------------------------------------------------------------------------- 1 | loc_411730 2 | loc_413C20 3 | loc_427460 4 | loc_427490 5 | loc_444B60 6 | loc_4462C0 7 | loc_44E190 8 | loc_4642A0 9 | loc_4661F0 10 | loc_468190 11 | loc_468BB0 12 | loc_46A480 13 | loc_46A7E4 14 | loc_46BD80 15 | loc_46BD88 16 | loc_46BEA8 17 | loc_46C370 18 | loc_46C4A4 19 | loc_46DEDE 20 | loc_4703F5 21 | loc_4726F2 22 | loc_473D2C 23 | loc_474A2D 24 | loc_4757E8 25 | loc_47588F 26 | loc_4785A5 27 | loc_47A0FC 28 | loc_47A1A9 29 | loc_47A900 30 | loc_47BBA7 31 | loc_47CBD4 32 | loc_481244 33 | loc_4812E4 34 | loc_48157B 35 | loc_481683 36 | loc_481853 37 | loc_48C2C4 38 | loc_491B10 39 | loc_4923E0 40 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/x86/global_aliases.sci: -------------------------------------------------------------------------------- 1 | loc_412B80,WinMain_ 2 | loc_4A4BC0,security_cookie_ 3 | loc_4106E0,GetRecordName_ 4 | loc_4F11E0,hWritePipe 5 | loc_4AF27C,bShowEnemyStatus 6 | loc_4AF180,bShowEnemyLOS 7 | loc_4B0930,bHideText 8 | loc_4AE868,bShowFPS 9 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/x86/ignored_areas.sci: -------------------------------------------------------------------------------- 1 | loc_495300,28 2 | loc_4A0070,72 3 | 4 | loc_48DD70,26192 5 | loc_49FE14,604 6 | loc_4A63F0,33808 7 | loc_4B7318,28088 8 | 9 | loc_447090,119312 10 | loc_4A4994,112 11 | loc_4B6700,8 12 | 13 | loc_469204,150380 14 | loc_4952C0,64 15 | loc_497318,35580 16 | loc_4A00B8,16 17 | loc_4A00E8,2068 18 | loc_4A4BC4,6188 19 | loc_4B6760,3000 20 | loc_4F11E8,4484 21 | 22 | loc_468FD0,564 23 | loc_4943C0,450 24 | 25 | loc_401F70,240 26 | loc_4020B0,336 27 | 28 | loc_445460,5568 29 | loc_497278,96 30 | loc_4A45B0,628 31 | loc_4B2544,16420 32 | loc_4DFF40,70248 33 | 34 | loc_431C00,464 35 | loc_4A35E8,40 36 | 37 | loc_468130,432 38 | loc_468BB0,432 39 | 40 | loc_4642A0,48 41 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /SRW-games/Septerra Core/SRW/x86/noret_procedures.sci: -------------------------------------------------------------------------------- 1 | loc_4105F0 2 | loc_4129D0 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/._INSTALL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/SRW/udis86-1.7.2/._INSTALL -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/Makefile.am: -------------------------------------------------------------------------------- 1 | ACLOCAL_AMFLAGS = -I build/m4 2 | 3 | SUBDIRS = scripts libudis86 udcli docs tests 4 | 5 | MAINTAINERCLEANFILES = \ 6 | Makefile.in \ 7 | configure \ 8 | config.h.in \ 9 | config.h.in~ \ 10 | missing \ 11 | aclocal.m4 \ 12 | build/config.guess \ 13 | build/config.sub \ 14 | build/compile \ 15 | build/config.guess \ 16 | build/config.sub \ 17 | build/depcomp \ 18 | build/install-sh \ 19 | build/ltmain.sh \ 20 | build/missing 21 | 22 | include_ladir = ${includedir} 23 | include_la_HEADERS = udis86.h 24 | 25 | .PHONY: libudis86 udcli tests docs 26 | 27 | libudis86: 28 | $(MAKE) -C $@ 29 | 30 | udcli: libudis86 31 | $(MAKE) -C $@ 32 | 33 | tests: check 34 | 35 | maintainer-clean-local: 36 | -rm -rf build/m4 37 | -rm -rf build 38 | -rm -rf autom4te.cache 39 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/build/m4/ltversion.m4: -------------------------------------------------------------------------------- 1 | # ltversion.m4 -- version numbers -*- Autoconf -*- 2 | # 3 | # Copyright (C) 2004 Free Software Foundation, Inc. 4 | # Written by Scott James Remnant, 2004 5 | # 6 | # This file is free software; the Free Software Foundation gives 7 | # unlimited permission to copy and/or distribute it, with or without 8 | # modifications, as long as this notice is preserved. 9 | 10 | # @configure_input@ 11 | 12 | # serial 3337 ltversion.m4 13 | # This file is part of GNU Libtool 14 | 15 | m4_define([LT_PACKAGE_VERSION], [2.4.2]) 16 | m4_define([LT_PACKAGE_REVISION], [1.3337]) 17 | 18 | AC_DEFUN([LTVERSION_VERSION], 19 | [macro_version='2.4.2' 20 | macro_revision='1.3337' 21 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) 22 | _LT_DECL(, macro_revision, 0) 23 | ]) 24 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/docs/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = x86 manual 2 | MAINTAINERCLEANFILES = Makefile.in 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/docs/manual/conf.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | import sys, os 3 | 4 | source_suffix = '.rst' 5 | master_doc = 'index' 6 | project = u'udis86' 7 | copyright = u'2013, Vivek Thampi' 8 | version = '1.7' 9 | release = '1.7.1' 10 | 11 | # List of patterns, relative to source directory, that match files and 12 | # directories to ignore when looking for source files. 13 | exclude_patterns = ['_build'] 14 | 15 | pygments_style = 'sphinx' 16 | html_theme = 'pyramid' 17 | html_theme_options = { "nosidebar" : True } 18 | html_static_path = ['static'] 19 | html_style = "udis86.css" 20 | htmlhelp_basename = 'udis86doc' 21 | 22 | latex_documents = [ 23 | ('index', 'udis86.tex', u'udis86 Documentation', 24 | u'Vivek Thampi', 'manual'), 25 | ] 26 | 27 | man_pages = [ 28 | ('index', 'udis86', u'udis86 Documentation', 29 | [u'Vivek Thampi'], 1) 30 | ] 31 | 32 | texinfo_documents = [ 33 | ('index', 'udis86', u'udis86 Documentation', 34 | u'Vivek Thampi', 'udis86', 'Disassembler library for x86.', 35 | 'Miscellaneous', True), 36 | ] 37 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/docs/manual/index.rst: -------------------------------------------------------------------------------- 1 | .. udis86 documentation master file 2 | 3 | Welcome to udis86's documentation! 4 | ================================== 5 | 6 | Udis86 is a disassembler engine that decodes a stream of binary 7 | machine code bytes as opcodes defined in the x86 and x86-64 class 8 | of Instruction Set Archictures. The core component of this project 9 | is libudis86 which provides a clean and simple interface to 10 | disassemble binary code, and to inspect the disassembly to various 11 | degrees of detail. The library is designed to aid software 12 | projects that entail analysis and manipulation of all flavors of 13 | x86 binary code. 14 | 15 | 16 | .. toctree:: 17 | :maxdepth: 3 18 | 19 | getstarted 20 | libudis86 21 | 22 | Indices and tables 23 | ================== 24 | 25 | * :ref:`genindex` 26 | * :ref:`search` 27 | 28 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/docs/x86/Makefile.am: -------------------------------------------------------------------------------- 1 | docdir = ${datadir}/docs/udis86/x86 2 | dist_doc_DATA = optable.xml optable.xsl 3 | 4 | MAINTAINERCLEANFILES = Makefile.in 5 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/docs/x86/README: -------------------------------------------------------------------------------- 1 | x86 optable reference 2 | --------------------- 3 | (incomplete) 4 | 5 | P - modrm (reg mmx) 6 | PR - modrm (rm mmx, mod must be 11b) 7 | Q - modrm (rm mmx if mod=11b else mem) 8 | 9 | V - modrm (reg - xmm) 10 | VR - modrm (rm xmm, mod must be 11b) 11 | W - modrm (rm xmm if mod=11b else mem) 12 | 13 | G - modrm (reg - gpr) 14 | S - modrm (reg - seg) 15 | VR - modrm (rm gpr, mod must be 11b) 16 | E - modrm (rm gpr if mod=11b else mem) 17 | M - modrm (mem), mod!=11b 18 | 19 | I - immediate 20 | J - relative immediate 21 | O - memory offset 22 | 23 | C - control reg 24 | D - debug reg 25 | 26 | 27 | opc <> 28 | 29 | /n - modrm reg field extends opcode 30 | /Mnn - disassembly mode extends opcode 31 | /Onn - operand mode extends opcode 32 | /mod=!11 - modrm mod field extends opcode 33 | 34 | 35 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/libudis86/Makefile.am: -------------------------------------------------------------------------------- 1 | # 2 | # -- udis86/libudis86 3 | # 4 | 5 | PYTHON = @PYTHON@ 6 | OPTABLE = @top_srcdir@/docs/x86/optable.xml 7 | 8 | MAINTAINERCLEANFILES = Makefile.in 9 | 10 | lib_LTLIBRARIES = libudis86.la 11 | 12 | libudis86_la_SOURCES = \ 13 | itab.c \ 14 | decode.c \ 15 | syn.c \ 16 | syn-intel.c \ 17 | syn-att.c \ 18 | udis86.c \ 19 | udint.h \ 20 | syn.h \ 21 | decode.h 22 | 23 | include_ladir = ${includedir}/libudis86 24 | include_la_HEADERS = \ 25 | types.h \ 26 | extern.h \ 27 | itab.h 28 | 29 | 30 | BUILT_SOURCES = \ 31 | itab.c \ 32 | itab.h 33 | 34 | # 35 | # DLLs may not contain undefined symbol references. 36 | # We have the linker check this explicitly. 37 | # 38 | if TARGET_WINDOWS 39 | libudis86_la_LDFLAGS = -no-undefined -version-info 0:0:0 40 | endif 41 | 42 | itab.c itab.h: $(OPTABLE) \ 43 | $(top_srcdir)/scripts/ud_itab.py \ 44 | $(top_srcdir)/scripts/ud_opcode.py \ 45 | $(top_srcdir)/scripts/ud_optable.py 46 | $(PYTHON) $(top_srcdir)/scripts/ud_itab.py $(OPTABLE) $(srcdir) 47 | 48 | 49 | clean-local: 50 | rm -rf $(BUILT_SOURCES) 51 | 52 | maintainer-clean-local: 53 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/m4/ax_with_python.m4: -------------------------------------------------------------------------------- 1 | # =========================================================================== 2 | # http://www.nongnu.org/autoconf-archive/ax_with_python.html 3 | # =========================================================================== 4 | # 5 | # SYNOPSIS 6 | # 7 | # AX_WITH_PYTHON([VALUE-IF-NOT-FOUND],[PATH]) 8 | # 9 | # DESCRIPTION 10 | # 11 | # Locates an installed Python binary, placing the result in the precious 12 | # variable $PYTHON. Accepts a present $PYTHON, then --with-python, and 13 | # failing that searches for python in the given path (which defaults to 14 | # the system path). If python is found, $PYTHON is set to the full path of 15 | # the binary; if it is not found $PYTHON is set to VALUE-IF-NOT-FOUND if 16 | # provided, unchanged otherwise. 17 | # 18 | # A typical use could be the following one: 19 | # 20 | # AX_WITH_PYTHON 21 | # 22 | # LICENSE 23 | # 24 | # Copyright (c) 2008 Francesco Salvestrini 25 | # 26 | # Copying and distribution of this file, with or without modification, are 27 | # permitted in any medium without royalty provided the copyright notice 28 | # and this notice are preserved. 29 | 30 | AC_DEFUN([AX_WITH_PYTHON],[ 31 | AX_WITH_PROG(PYTHON,python,$1,$2) 32 | ]) 33 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/scripts/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | ud_opcode.py \ 3 | ud_optable.py \ 4 | ud_itab.py 5 | 6 | MAINTAINERCLEANFILES = Makefile.in 7 | 8 | clean-local: 9 | -rm -f *.pyc 10 | -rm -f ud_asmtest* 11 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/16/disp.asm: -------------------------------------------------------------------------------- 1 | [bits 16] 2 | mov ax, [eax-0x10] 3 | add bx, [esi+0x10] 4 | add ax, [0xffff] 5 | add ax, [esi+edi*4-0x10] 6 | add ax, [bx+si-0x4877] 7 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/16/test16.asm: -------------------------------------------------------------------------------- 1 | [bits 16] 2 | movzx eax, word [bx] 3 | iretd 4 | dpps xmm2, xmm1, 0x10 5 | blendvpd xmm1, xmm2 6 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/att.asm: -------------------------------------------------------------------------------- 1 | [bits 32] 2 | mov eax, 0x1234 3 | mov eax, [0x1234] 4 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/att.asm.Sref: -------------------------------------------------------------------------------- 1 | 0000000000000000 b834120000 mov $0x1234, %eax 2 | 0000000000000005 a134120000 mov 0x1234, %eax 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/att.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 b834120000 mov eax, 0x1234 2 | 0000000000000005 a134120000 mov eax, [0x1234] 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/corner.asm: -------------------------------------------------------------------------------- 1 | [bits 32] 2 | 3 | lar eax, [bx+si] 4 | nop 5 | pause 6 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/corner.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 670f0200 lar eax, word [bx+si] 2 | 0000000000000004 90 nop 3 | 0000000000000005 f390 pause 4 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/disp.asm: -------------------------------------------------------------------------------- 1 | [bits 32] 2 | mov eax, [eax-0x10] 3 | add eax, [esi+0x10] 4 | add eax, [0x10] 5 | add eax, [esi+edi*4+0x10] 6 | add eax, [bx+si-0x4877] 7 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/disp.asm.Sref: -------------------------------------------------------------------------------- 1 | 0000000000000000 8b40f0 mov -0x10(%eax), %eax 2 | 0000000000000003 034610 add 0x10(%esi), %eax 3 | 0000000000000006 030510000000 add 0x10, %eax 4 | 000000000000000c 0344be10 add 0x10(%esi,%edi,4), %eax 5 | 0000000000000010 67038089b7 add -0x4877(%bx,%si), %eax 6 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/invalid_seg.asm: -------------------------------------------------------------------------------- 1 | [bits 32] 2 | db 0x8C, 0x38 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/invalid_seg.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 8c38 invalid 2 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/obscure.asm: -------------------------------------------------------------------------------- 1 | 2 | db 0xd1, 0xf6 ; shl Ev, 0x1 3 | db 0xd0, 0xf6 ; shl Eb, 0x1 4 | db 0xd9, 0xd9 ; fstp1 st1 5 | db 0xdc, 0xd0 ; fcom2 6 | db 0xdc, 0xd8 ; fcomp3 7 | db 0xdd, 0xc8 ; fxch4 8 | db 0xde, 0xd1 ; fcomp5 9 | db 0xdf, 0xc3 ; fxch7 10 | db 0xdf, 0xd0 ; fstp8 11 | db 0xdf, 0xd8 ; fstp9 12 | db 0x83, 0xe2, 0xdf ; and edx, 0xffffffdf (sign-extension) 13 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/obscure.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 d1f6 shl esi, 1 2 | 0000000000000002 d0f6 shl dh, 1 3 | 0000000000000004 d9d9 fstp1 st1 4 | 0000000000000006 dcd0 fcom2 st0 5 | 0000000000000008 dcd8 fcomp3 st0 6 | 000000000000000a ddc8 fxch4 st0 7 | 000000000000000c ded1 fcomp5 st1 8 | 000000000000000e dfc3 ffreep st3 9 | 0000000000000010 dfd0 fstp8 st0 10 | 0000000000000012 dfd8 fstp9 st0 11 | 0000000000000014 83e2df and edx, 0xffffffdf 12 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/reljmp.asm: -------------------------------------------------------------------------------- 1 | [bits 32] 2 | [org 0x80000000] 3 | 4 | l1: 5 | nop 6 | nop 7 | nop 8 | nop 9 | nop 10 | 11 | jmp l1 12 | nop 13 | jmp word l2 14 | 15 | nop 16 | nop 17 | jmp dword l2 18 | nop 19 | nop 20 | nop 21 | l2: 22 | nop 23 | nop 24 | jmp l1 25 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/reljmp.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000080000000 90 nop 2 | 0000000080000001 90 nop 3 | 0000000080000002 90 nop 4 | 0000000080000003 90 nop 5 | 0000000080000004 90 nop 6 | 0000000080000005 ebf9 jmp 0x80000000 7 | 0000000080000007 90 nop 8 | 0000000080000008 66e90a00 jmp 0x16 9 | 000000008000000c 90 nop 10 | 000000008000000d 90 nop 11 | 000000008000000e e903000000 jmp 0x80000016 12 | 0000000080000013 90 nop 13 | 0000000080000014 90 nop 14 | 0000000080000015 90 nop 15 | 0000000080000016 90 nop 16 | 0000000080000017 90 nop 17 | 0000000080000018 ebe6 jmp 0x80000000 18 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/sext.asm: -------------------------------------------------------------------------------- 1 | [bits 32] 2 | 3 | ;; test sign extension 4 | 5 | adc ax, -100 6 | and edx, -3 7 | or dx, -1000 8 | or dx, -1 9 | add edx, -1000 10 | imul dx, bx, -100 11 | imul edx, ebx, -1 12 | imul edx, ebx, -128 13 | imul edx, ebx, -129 14 | imul ax, bx, -129 15 | sub dword [eax], -1 16 | sub word [eax], -2000 17 | test eax, 1 18 | test eax, -1 19 | push byte -1 20 | push word -1 21 | push dword -1000 22 | push word -1000 23 | 24 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/32/sext.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 6683d09c adc ax, 0xff9c 2 | 0000000000000004 83e2fd and edx, 0xfffffffd 3 | 0000000000000007 6681ca18fc or dx, 0xfc18 4 | 000000000000000c 6683caff or dx, 0xffff 5 | 0000000000000010 81c218fcffff add edx, 0xfffffc18 6 | 0000000000000016 666bd39c imul dx, bx, 0xff9c 7 | 000000000000001a 6bd3ff imul edx, ebx, 0xffffffff 8 | 000000000000001d 6bd380 imul edx, ebx, 0xffffff80 9 | 0000000000000020 69d37fffffff imul edx, ebx, 0xffffff7f 10 | 0000000000000026 6669c37fff imul ax, bx, 0xff7f 11 | 000000000000002b 8328ff sub dword [eax], 0xffffffff 12 | 000000000000002e 66812830f8 sub word [eax], 0xf830 13 | 0000000000000033 a901000000 test eax, 0x1 14 | 0000000000000038 a9ffffffff test eax, 0xffffffff 15 | 000000000000003d 6aff push 0xffffffff 16 | 000000000000003f 666aff push 0xffff 17 | 0000000000000042 6818fcffff push 0xfffffc18 18 | 0000000000000047 666818fc push 0xfc18 19 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/amd/invalid.asm: -------------------------------------------------------------------------------- 1 | ;; Test amd specific 64bit instructions 2 | 3 | [bits 64] 4 | 5 | ;; Invalid instructions in amd 64bit mode 6 | db 0x0f, 0x34 ; sysenter (invalid) 7 | db 0x0f, 0x35 ; sysexit (invalid) 8 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/amd/invalid.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 0f34 invalid 2 | 0000000000000002 0f35 invalid 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/branch.asm: -------------------------------------------------------------------------------- 1 | ;; Test branching instructions 2 | ;; 3 | [bits 64] 4 | 5 | jnz near x 6 | jo near x 7 | jno word x 8 | jc near x 9 | jnc word x 10 | jae dword x 11 | jcxz x 12 | jecxz x 13 | jrcxz x 14 | jmp dword near x 15 | call dword near x 16 | jmp word x 17 | jmp dword x 18 | jmp word [eax] 19 | x: jmp qword [rax] 20 | jmp word x 21 | jmp dword x 22 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/branch.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 0f853b000000 jnz 0x41 2 | 0000000000000006 0f8035000000 jo 0x41 3 | 000000000000000c 660f813000 jno 0x41 4 | 0000000000000011 0f822a000000 jb 0x41 5 | 0000000000000017 660f832500 jae 0x41 6 | 000000000000001c 0f831f000000 jae 0x41 7 | 0000000000000022 67e31c jecxz 0x41 8 | 0000000000000025 67e319 jecxz 0x41 9 | 0000000000000028 e317 jrcxz 0x41 10 | 000000000000002a e912000000 jmp 0x41 11 | 000000000000002f e80d000000 call 0x41 12 | 0000000000000034 66e90900 jmp 0x41 13 | 0000000000000038 e904000000 jmp 0x41 14 | 000000000000003d 6766ff20 jmp word [eax] 15 | 0000000000000041 ff20 jmp qword [rax] 16 | 0000000000000043 66e9faff jmp 0x41 17 | 0000000000000047 e9f5ffffff jmp 0x41 18 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/disp.asm: -------------------------------------------------------------------------------- 1 | [bits 64] 2 | mov ax, [eax-0x10] 3 | add bx, [esi+0x10] 4 | add rax, [0xffff] 5 | add ax, [esi+edi*4-0x10] 6 | add r8, [rax+rbx*4-0x80000000] 7 | mov rax, [qword 0x800000000000] 8 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/disp.asm.Sref: -------------------------------------------------------------------------------- 1 | 0000000000000000 67668b40f0 mov -0x10(%eax), %ax 2 | 0000000000000005 6766035e10 add 0x10(%esi), %bx 3 | 000000000000000a 48030425ffff0000 add 0xffff, %rax 4 | 0000000000000012 67660344bef0 add -0x10(%esi,%edi,4), %ax 5 | 0000000000000018 4c03849800000080 add -0x80000000(%rax,%rbx,4), %r8 6 | 0000000000000020 48a1000000000080 mov 0x800000000000, %rax 7 | -0000 8 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/disp.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 67668b40f0 mov ax, [eax-0x10] 2 | 0000000000000005 6766035e10 add bx, [esi+0x10] 3 | 000000000000000a 48030425ffff0000 add rax, [0xffff] 4 | 0000000000000012 67660344bef0 add ax, [esi+edi*4-0x10] 5 | 0000000000000018 4c03849800000080 add r8, [rax+rbx*4-0x80000000] 6 | 0000000000000020 48a1000000000080 mov rax, [0x800000000000] 7 | -0000 8 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/intel/invalid.asm: -------------------------------------------------------------------------------- 1 | ;; Test intel specific instructions in 64bit mode 2 | 3 | [bits 64] 4 | 5 | ;; yasm doesn't seem to support a mode for intel 6 | ;; specific instructions 7 | db 0x0f, 0x34 ; sysenter 8 | db 0x0f, 0x35 ; sysexit 9 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/intel/invalid.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 0f34 sysenter 2 | 0000000000000002 0f35 sysexit 3 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/reljmp.asm: -------------------------------------------------------------------------------- 1 | [bits 64] 2 | [org 0x8000000000000000] 3 | 4 | l1: 5 | nop 6 | nop 7 | nop 8 | nop 9 | nop 10 | 11 | jmp l1 12 | nop 13 | jmp word l2 14 | 15 | nop 16 | nop 17 | jmp dword l2 18 | nop 19 | nop 20 | nop 21 | l2: 22 | nop 23 | nop 24 | jmp l1 25 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/reljmp.asm.ref: -------------------------------------------------------------------------------- 1 | 8000000000000000 90 nop 2 | 8000000000000001 90 nop 3 | 8000000000000002 90 nop 4 | 8000000000000003 90 nop 5 | 8000000000000004 90 nop 6 | 8000000000000005 ebf9 jmp 0x8000000000000000 7 | 8000000000000007 90 nop 8 | 8000000000000008 66e90a00 jmp 0x16 9 | 800000000000000c 90 nop 10 | 800000000000000d 90 nop 11 | 800000000000000e e903000000 jmp 0x8000000000000016 12 | 8000000000000013 90 nop 13 | 8000000000000014 90 nop 14 | 8000000000000015 90 nop 15 | 8000000000000016 90 nop 16 | 8000000000000017 90 nop 17 | 8000000000000018 ebe6 jmp 0x8000000000000000 18 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/sext.asm: -------------------------------------------------------------------------------- 1 | [bits 64] 2 | 3 | ;; test sign extension 4 | 5 | adc al, -100 6 | adc ax, -100 7 | adc eax, -100 8 | adc rax, -100 9 | imul dx, bx, -100 10 | imul edx, ebx, -100 11 | imul rdx, r11, -100 12 | push byte -1 13 | push word -1 14 | push dword -1000 15 | push word -1000 16 | push -1 17 | push byte -1 18 | push dword -1 19 | push word -1 20 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/asm/64/sext.asm.ref: -------------------------------------------------------------------------------- 1 | 0000000000000000 149c adc al, 0x9c 2 | 0000000000000002 6683d09c adc ax, 0xff9c 3 | 0000000000000006 83d09c adc eax, 0xffffff9c 4 | 0000000000000009 4883d09c adc rax, 0xffffffffffffff9c 5 | 000000000000000d 666bd39c imul dx, bx, 0xff9c 6 | 0000000000000011 6bd39c imul edx, ebx, 0xffffff9c 7 | 0000000000000014 496bd39c imul rdx, r11, 0xffffffffffffff9c 8 | 0000000000000018 6aff push 0xffffffffffffffff 9 | 000000000000001a 666aff push 0xffff 10 | 000000000000001d 6818fcffff push 0xfffffffffffffc18 11 | 0000000000000022 666818fc push 0xfc18 12 | 0000000000000026 6aff push 0xffffffffffffffff 13 | 0000000000000028 6aff push 0xffffffffffffffff 14 | 000000000000002a 6aff push 0xffffffffffffffff 15 | 000000000000002c 666aff push 0xffff 16 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/bufoverrun.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int 5 | main() { 6 | uint8_t raw[] = { 0xf0, 0x66, 0x36, 0x67, 0x65, 0x66, 0xf3, 0x67, 0xda }; 7 | uint8_t len = 9; 8 | ud_t ud_obj; 9 | ud_init(&ud_obj); 10 | ud_set_mode(&ud_obj, 16); 11 | ud_set_input_buffer(&ud_obj, raw, len); 12 | ud_set_syntax(&ud_obj, UD_SYN_INTEL); 13 | if (ud_disassemble(&ud_obj) != 0) { 14 | return 0; 15 | } 16 | return 1; 17 | } 18 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/tests/installcheck.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int main(void) 5 | { 6 | ud_t ud_obj; 7 | 8 | ud_init(&ud_obj); 9 | ud_set_input_file(&ud_obj, stdin); 10 | ud_set_mode(&ud_obj, 64); 11 | ud_set_syntax(&ud_obj, UD_SYN_INTEL); 12 | 13 | while (ud_disassemble(&ud_obj)) { 14 | printf("\t%s\n", ud_insn_asm(&ud_obj)); 15 | } 16 | 17 | return 0; 18 | } 19 | -------------------------------------------------------------------------------- /SRW/udis86-1.7.2/udcli/Makefile.am: -------------------------------------------------------------------------------- 1 | bin_PROGRAMS = udcli 2 | udcli_SOURCES = udcli.c 3 | udcli_CFLAGS = -I$(top_srcdir)/libudis86 -I$(top_srcdir) 4 | udcli_LDADD = $(top_builddir)/libudis86/libudis86.la 5 | MAINTAINERCLEANFILES = Makefile.in 6 | -------------------------------------------------------------------------------- /games/Albion/SR-Main/arm/asm_int.inc: -------------------------------------------------------------------------------- 1 | @part of static recompiler -- do not edit 2 | 3 | @@ 4 | @@ Copyright (C) 2016 Roman Pauer 5 | @@ 6 | @@ Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | @@ this software and associated documentation files (the "Software"), to deal in 8 | @@ the Software without restriction, including without limitation the rights to 9 | @@ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | @@ of the Software, and to permit persons to whom the Software is furnished to do 11 | @@ so, subject to the following conditions: 12 | @@ 13 | @@ The above copyright notice and this permission notice shall be included in all 14 | @@ copies or substantial portions of the Software. 15 | @@ 16 | @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | @@ SOFTWARE. 23 | @@ 24 | 25 | .extern x86_int 26 | -------------------------------------------------------------------------------- /games/Albion/SR-Main/arm/misc.inc: -------------------------------------------------------------------------------- 1 | @@ 2 | @@ Copyright (C) 2016 Roman Pauer 3 | @@ 4 | @@ Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | @@ this software and associated documentation files (the "Software"), to deal in 6 | @@ the Software without restriction, including without limitation the rights to 7 | @@ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | @@ of the Software, and to permit persons to whom the Software is furnished to do 9 | @@ so, subject to the following conditions: 10 | @@ 11 | @@ The above copyright notice and this permission notice shall be included in all 12 | @@ copies or substantial portions of the Software. 13 | @@ 14 | @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | @@ SOFTWARE. 21 | @@ 22 | 23 | .set NDEBUG, 1 24 | -------------------------------------------------------------------------------- /games/Albion/SR-Main/x86/asm_int.inc: -------------------------------------------------------------------------------- 1 | ;part of static recompiler -- do not edit 2 | 3 | ;; 4 | ;; Copyright (C) 2016 Roman Pauer 5 | ;; 6 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ;; this software and associated documentation files (the "Software"), to deal in 8 | ;; the Software without restriction, including without limitation the rights to 9 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ;; of the Software, and to permit persons to whom the Software is furnished to do 11 | ;; so, subject to the following conditions: 12 | ;; 13 | ;; The above copyright notice and this permission notice shall be included in all 14 | ;; copies or substantial portions of the Software. 15 | ;; 16 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ;; SOFTWARE. 23 | ;; 24 | 25 | extern x86_int 26 | -------------------------------------------------------------------------------- /games/Albion/SR-Main/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /games/Albion/release/linux/Albion-setup.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | ./pycfg.py albion pc Albion.cfg 4 | -------------------------------------------------------------------------------- /games/Albion/release/windows/Albion.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cd /D "%~dp0" 3 | set SDL_STDIO_REDIRECT=0 4 | start SR-Main.exe 5 | -------------------------------------------------------------------------------- /games/Battle Isle 3/SR-BI3/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /games/Battle Isle 3/release/SDI.INI: -------------------------------------------------------------------------------- 1 | [FILES] 2 | PATH0= 3 | PATH1= 4 | PATH2= 5 | PATH3= 6 | PATH4= 7 | PATH5= 8 | PATH6= 9 | PATH7= 10 | PATH8= 11 | PATH9= 12 | SDIPATH= 13 | COUNTRY=/1 14 | [ADVANCED] 15 | REMOTEPATH= 16 | FIRSTTIME=NO 17 | [STARTUP] 18 | VFW_SETUP_PATH=+ 19 | PLAYVIDEO=YES 20 | PLAY_320_200=NO 21 | PLAY_ZOOM=NO 22 | PLAY_BIG=YES 23 | ERROR_311=0 24 | FIRSTTIME=NO 25 | VIDEOCOMPLETE=YES 26 | USEFX=YES 27 | USEFM=YES 28 | SOUNDCOMPLETE=YES 29 | VIDEOCRASH=No 30 | [WIN32] 31 | WIN32=YES 32 | -------------------------------------------------------------------------------- /games/Battle Isle 3/release/linux/BattleIsle3.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | export LD_LIBRARY_PATH="`pwd`" 4 | export LIBQUICKTIME_PLUGIN_DIR="`pwd`" 5 | export WINEPREFIX="`pwd`/wine" 6 | 7 | if [ -z "$WINEPREFIX" ] 8 | then 9 | mkdir "$WINEPREFIX" 10 | fi 11 | 12 | # Uncomment and set SDI_INSTALL_PATH to contain path to the directory where the game is installed (in case this file is not inside the directory) 13 | # export SDI_INSTALL_PATH="/path/to/game/install/directory" 14 | 15 | # Uncomment and set SDI_CD_PATH to contain path to the directory where the game CDs are copied (in case it's not in the DATA subdirectory of the directory where the game is installed) 16 | # export SDI_CD_PATH="/path/to/game/cd/directory" 17 | 18 | # Set SDI_LANG to change the language in game (text only) 19 | # 0 = german (deutsch) 20 | # 1 = english 21 | # 2 = french (français) - use only when your CD contains french resources (i.e. FRA directory) 22 | SDI_LANG=1 23 | 24 | wine SR-BI3.exe.so -$SDI_LANG 25 | sync 26 | -------------------------------------------------------------------------------- /games/Battle Isle 3/release/windows/BattleIsle3.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cd /D "%~dp0" 3 | 4 | rem Uncomment and set SDI_INSTALL_PATH to contain path to the directory where the game is installed (in case this file is not inside the directory) 5 | rem set SDI_INSTALL_PATH=?:\path\to\game\install\directory 6 | 7 | rem Uncomment and set SDI_CD_PATH to contain path to the directory where the game CDs are copied (in case it's not in the DATA subdirectory of the directory where the game is installed) 8 | rem set SDI_CD_PATH=?:\path\to\game\cd\directory 9 | 10 | rem Set SDI_LANG to change the language in game (text only) 11 | rem 0 = german (deutsch) 12 | rem 1 = english 13 | rem 2 = french (français) - use only when your CD contains french resources (i.e. FRA directory) 14 | set SDI_LANG=1 15 | 16 | start SR-BI3.exe -%SDI_LANG% 17 | -------------------------------------------------------------------------------- /games/README.md: -------------------------------------------------------------------------------- 1 | # games 2 | 3 | Game specific source code. 4 | 5 | Together with the generated assembler files from the *SR-games* / *SRW-games* subproject, these files can be used to build Windows or Linux (x86 or arm) versions of the games. 6 | 7 | The games use [SDL](https://libsdl.org/ "Simple DirectMedia Layer"), [SDL_mixer](https://www.libsdl.org/projects/SDL_mixer/ "sample multi-channel audio mixer library") and OpenGL libraries. 8 | 9 | The games can be built using [scons](http://scons.org/ "SCons: A software construction tool"). To control which version of the game should be built, use SCons Build Variables. Use `scons -h` to list available variables. 10 | 11 | To play (or play better) music, use also midi plugins (and libraries) from *midi-plugins* subproject (and *midi-libs* subproject or external closed source libraries). 12 | 13 | The *release* subdirectories contain startup scripts and example configuration files. 14 | -------------------------------------------------------------------------------- /games/Septerra Core/SR-Septerra/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /games/Septerra Core/release/linux/Septerra.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | FILE_RESULT= 4 | 5 | find_file () { 6 | if [ -e "$1/$2" ] 7 | then 8 | FILE_RESULT="$2" 9 | return 10 | fi 11 | 12 | TEMP_FILE_UPPER=`echo "$2" | tr '[:lower:]' '[:upper:]'` 13 | 14 | if [ -e "$1/$TEMP_FILE_UPPER" ] 15 | then 16 | FILE_RESULT="$TEMP_FILE_UPPER" 17 | return 18 | fi 19 | 20 | TEMP_FILE_LOWER=`echo "$2" | tr '[:upper:]' '[:lower:]'` 21 | 22 | if [ -e "$1/$TEMP_FILE_LOWER" ] 23 | then 24 | FILE_RESULT="$TEMP_FILE_LOWER" 25 | return 26 | fi 27 | 28 | TEMP_FILE_CAMEL="${TEMP_FILE_UPPER#?}" 29 | TEMP_FILE_CAMEL="${TEMP_FILE_UPPER%%$TEMP_FILE_CAMEL}${TEMP_FILE_LOWER#?}" 30 | 31 | if [ -e "$1/$TEMP_FILE_CAMEL" ] 32 | then 33 | FILE_RESULT="$TEMP_FILE_CAMEL" 34 | return 35 | fi 36 | 37 | FILE_RESULT= 38 | } 39 | 40 | 41 | find_file "." "septerra.mft" 42 | 43 | if [ -z "$FILE_RESULT" ] 44 | then 45 | echo Septerra Core game not found 46 | zenity --error --text="Septerra Core game not found" --timeout=10 47 | 48 | exit 1 49 | fi 50 | 51 | export LD_LIBRARY_PATH="`pwd`" 52 | export LIBQUICKTIME_PLUGIN_DIR="`pwd`" 53 | 54 | ./SR-Septerra 55 | sync 56 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/arm/cdgogver/.cdgogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/Warcraft/SR-War/arm/cdgogver/.cdgogver -------------------------------------------------------------------------------- /games/Warcraft/SR-War/arm/cdver/.cdver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/Warcraft/SR-War/arm/cdver/.cdver -------------------------------------------------------------------------------- /games/Warcraft/SR-War/arm/misc.inc: -------------------------------------------------------------------------------- 1 | @@ 2 | @@ Copyright (C) 2016 Roman Pauer 3 | @@ 4 | @@ Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | @@ this software and associated documentation files (the "Software"), to deal in 6 | @@ the Software without restriction, including without limitation the rights to 7 | @@ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | @@ of the Software, and to permit persons to whom the Software is furnished to do 9 | @@ so, subject to the following conditions: 10 | @@ 11 | @@ The above copyright notice and this permission notice shall be included in all 12 | @@ copies or substantial portions of the Software. 13 | @@ 14 | @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | @@ SOFTWARE. 21 | @@ 22 | 23 | .set NDEBUG, 1 24 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/arm/war-asm-cd.s: -------------------------------------------------------------------------------- 1 | .include "armconf.inc" 2 | .include "arm.inc" 3 | .include "arminc.inc" 4 | .include "misc.inc" 5 | .include "extern.inc" 6 | .include "macros.inc" 7 | .global main_ 8 | .global _main_ 9 | .global keyboard_interrupt 10 | .global _keyboard_interrupt 11 | .global update_timer 12 | .global _update_timer 13 | .global argv_val 14 | .global _argv_val 15 | .global errno_val 16 | .global _errno_val 17 | .global default_sample_volume 18 | .global _default_sample_volume 19 | .global default_sequence_volume 20 | .global _default_sequence_volume 21 | .global stack_start 22 | .global _stack_start 23 | 24 | .section .note.GNU-stack,"",%progbits 25 | 26 | .section .text 27 | .include "cdver/seg01.inc" 28 | .ifdef DEBUG 29 | .include "code_armlinux.inc" 30 | .endif 31 | 32 | .section .data 33 | .include "cdver/seg02.inc" 34 | .ifdef DEBUG 35 | .include "data_all.inc" 36 | .endif 37 | 38 | .section .bss 39 | .include "cdver/seg03.inc" 40 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/arm/war-asm-cdgog.s: -------------------------------------------------------------------------------- 1 | .include "armconf.inc" 2 | .include "arm.inc" 3 | .include "arminc.inc" 4 | .include "misc.inc" 5 | .include "extern.inc" 6 | .include "macros.inc" 7 | .global main_ 8 | .global _main_ 9 | .global keyboard_interrupt 10 | .global _keyboard_interrupt 11 | .global update_timer 12 | .global _update_timer 13 | .global argv_val 14 | .global _argv_val 15 | .global errno_val 16 | .global _errno_val 17 | .global default_sample_volume 18 | .global _default_sample_volume 19 | .global default_sequence_volume 20 | .global _default_sequence_volume 21 | .global stack_start 22 | .global _stack_start 23 | 24 | .section .note.GNU-stack,"",%progbits 25 | 26 | .section .text 27 | .include "cdgogver/seg01.inc" 28 | .ifdef DEBUG 29 | .include "code_armlinux.inc" 30 | .endif 31 | 32 | .section .data 33 | .include "cdgogver/seg02.inc" 34 | .ifdef DEBUG 35 | .include "data_all.inc" 36 | .endif 37 | 38 | .section .bss 39 | .include "cdgogver/seg03.inc" 40 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/llasm/cdgogver/.cdgogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/Warcraft/SR-War/llasm/cdgogver/.cdgogver -------------------------------------------------------------------------------- /games/Warcraft/SR-War/llasm/cdver/.cdver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/Warcraft/SR-War/llasm/cdver/.cdver -------------------------------------------------------------------------------- /games/Warcraft/SR-War/llasm/war-asm-cd.llasm: -------------------------------------------------------------------------------- 1 | include llasm.llinc 2 | include extern.llinc 3 | include macros.llinc 4 | 5 | datasegment cseg01 constant 6 | include cdver/seg01_data.llinc 7 | endd 8 | 9 | datasegment dseg02 10 | include cdver/seg02_data.llinc 11 | endd 12 | 13 | datasegment useg03 uninitialized 14 | include cdver/seg03_data.llinc 15 | endd 16 | 17 | define loc_1E288 main_ 18 | define loc_31234 keyboard_interrupt 19 | define loc_3855E update_timer 20 | 21 | include cdver/seg01_code.llinc 22 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/llasm/war-asm-cdgog.llasm: -------------------------------------------------------------------------------- 1 | include llasm.llinc 2 | include extern.llinc 3 | include macros.llinc 4 | 5 | datasegment cseg01 constant 6 | include cdgogver/seg01_data.llinc 7 | endd 8 | 9 | datasegment dseg02 10 | include cdgogver/seg02_data.llinc 11 | endd 12 | 13 | datasegment useg03 uninitialized 14 | include cdgogver/seg03_data.llinc 15 | endd 16 | 17 | define loc_1E158 main_ 18 | define loc_31104 keyboard_interrupt 19 | define loc_3846E update_timer 20 | 21 | include cdgogver/seg01_code.llinc 22 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/x86/asm_int.inc: -------------------------------------------------------------------------------- 1 | ;part of static recompiler -- do not edit 2 | 3 | ;; 4 | ;; Copyright (C) 2016 Roman Pauer 5 | ;; 6 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ;; this software and associated documentation files (the "Software"), to deal in 8 | ;; the Software without restriction, including without limitation the rights to 9 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ;; of the Software, and to permit persons to whom the Software is furnished to do 11 | ;; so, subject to the following conditions: 12 | ;; 13 | ;; The above copyright notice and this permission notice shall be included in all 14 | ;; copies or substantial portions of the Software. 15 | ;; 16 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ;; SOFTWARE. 23 | ;; 24 | 25 | extern x86_int 26 | -------------------------------------------------------------------------------- /games/Warcraft/SR-War/x86/cdgogver/.cdgogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/Warcraft/SR-War/x86/cdgogver/.cdgogver -------------------------------------------------------------------------------- /games/Warcraft/SR-War/x86/cdver/.cdver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/Warcraft/SR-War/x86/cdver/.cdver -------------------------------------------------------------------------------- /games/Warcraft/SR-War/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /games/Warcraft/release/linux/Warcraft-setup.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | ./pycfg.py warcraft pc Warcraft.cfg 4 | -------------------------------------------------------------------------------- /games/Warcraft/release/linux/Warcraft.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 4 | 5 | export LD_LIBRARY_PATH=`pwd` 6 | 7 | ./SR-War 8 | sync 9 | -------------------------------------------------------------------------------- /games/Warcraft/release/windows/Warcraft.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cd /D "%~dp0" 3 | set SDL_STDIO_REDIRECT=0 4 | start SR-War.exe 5 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/arm/geoscape/geoscape-asm-gog.s: -------------------------------------------------------------------------------- 1 | .include "armconf.inc" 2 | .include "arm.inc" 3 | .include "arminc.inc" 4 | .include "misc.inc" 5 | .include "extern.inc" 6 | .include "macros.inc" 7 | .global geoscape_update_timer 8 | .global _geoscape_update_timer 9 | .global geoscape_main_ 10 | .global _geoscape_main_ 11 | .global geoscape_data_begin 12 | .global _geoscape_data_begin 13 | .global geoscape_data_end 14 | .global _geoscape_data_end 15 | .global geoscape_bss_begin 16 | .global _geoscape_bss_begin 17 | .global geoscape_errno_val 18 | .global _geoscape_errno_val 19 | .global geoscape_bss_end 20 | .global _geoscape_bss_end 21 | 22 | .section .note.GNU-stack,"",%progbits 23 | 24 | .section .text 25 | .include "gogver/seg01.inc" 26 | .ifdef DEBUG 27 | .include "code_armlinux.inc" 28 | .endif 29 | 30 | .section .data 31 | .include "gogver/seg02.inc" 32 | .ifdef DEBUG 33 | .include "data_all.inc" 34 | .endif 35 | 36 | .section .bss 37 | .include "gogver/seg03.inc" 38 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/arm/geoscape/gogver/.gogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/X-Com - Terror from the Deep/SR-Xcom2/arm/geoscape/gogver/.gogver -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/arm/misc.inc: -------------------------------------------------------------------------------- 1 | @@ 2 | @@ Copyright (C) 2016 Roman Pauer 3 | @@ 4 | @@ Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | @@ this software and associated documentation files (the "Software"), to deal in 6 | @@ the Software without restriction, including without limitation the rights to 7 | @@ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | @@ of the Software, and to permit persons to whom the Software is furnished to do 9 | @@ so, subject to the following conditions: 10 | @@ 11 | @@ The above copyright notice and this permission notice shall be included in all 12 | @@ copies or substantial portions of the Software. 13 | @@ 14 | @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | @@ SOFTWARE. 21 | @@ 22 | 23 | .set NDEBUG, 1 24 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/arm/tactical/gogver/.gogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/X-Com - Terror from the Deep/SR-Xcom2/arm/tactical/gogver/.gogver -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/arm/tactical/tactical-asm-gog.s: -------------------------------------------------------------------------------- 1 | .include "armconf.inc" 2 | .include "arm.inc" 3 | .include "arminc.inc" 4 | .include "misc.inc" 5 | .include "extern.inc" 6 | .include "macros.inc" 7 | .global tactical_update_timer 8 | .global _tactical_update_timer 9 | .global tactical_main_ 10 | .global _tactical_main_ 11 | .global tactical_data_begin 12 | .global _tactical_data_begin 13 | .global tactical_data_end 14 | .global _tactical_data_end 15 | .global tactical_bss_begin 16 | .global _tactical_bss_begin 17 | .global tactical_errno_val 18 | .global _tactical_errno_val 19 | .global tactical_bss_end 20 | .global _tactical_bss_end 21 | 22 | .section .note.GNU-stack,"",%progbits 23 | 24 | .section .text 25 | .include "gogver/seg01.inc" 26 | .ifdef DEBUG 27 | .include "code_armlinux.inc" 28 | .endif 29 | 30 | .section .data 31 | .include "gogver/seg02.inc" 32 | .ifdef DEBUG 33 | .include "data_all.inc" 34 | .endif 35 | 36 | .section .data 37 | .include "gogver/seg03.inc" 38 | 39 | .section .bss 40 | .include "gogver/seg04.inc" 41 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/llasm/geoscape/geoscape-asm-gog.llasm: -------------------------------------------------------------------------------- 1 | include llasm.llinc 2 | include extern.llinc 3 | include macros.llinc 4 | 5 | datasegment cseg01 constant 6 | include gogver/seg01_data.llinc 7 | endd 8 | 9 | datasegment dseg02 10 | include gogver/seg02_data.llinc 11 | endd 12 | 13 | datasegment useg03 uninitialized 14 | include gogver/seg03_data.llinc 15 | endd 16 | 17 | define loc_12538 geoscape_update_timer 18 | define loc_13A00 geoscape_main_ 19 | 20 | include gogver/seg01_code.llinc 21 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/llasm/geoscape/gogver/.gogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/X-Com - Terror from the Deep/SR-Xcom2/llasm/geoscape/gogver/.gogver -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/llasm/tactical/gogver/.gogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/X-Com - Terror from the Deep/SR-Xcom2/llasm/tactical/gogver/.gogver -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/llasm/tactical/tactical-asm-gog.llasm: -------------------------------------------------------------------------------- 1 | include llasm.llinc 2 | include extern.llinc 3 | include macros.llinc 4 | 5 | datasegment cseg01 constant 6 | include gogver/seg01_data.llinc 7 | endd 8 | 9 | datasegment dseg02 10 | include gogver/seg02_data.llinc 11 | endd 12 | 13 | datasegment dseg03 14 | include gogver/seg03_data.llinc 15 | endd 16 | 17 | datasegment useg04 uninitialized 18 | include gogver/seg04_data.llinc 19 | endd 20 | 21 | define loc_12538 tactical_update_timer 22 | define loc_30BD0 tactical_main_ 23 | 24 | include gogver/seg01_code.llinc 25 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/x86/geoscape/gogver/.gogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/X-Com - Terror from the Deep/SR-Xcom2/x86/geoscape/gogver/.gogver -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/SR-Xcom2/x86/tactical/gogver/.gogver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/games/X-Com - Terror from the Deep/SR-Xcom2/x86/tactical/gogver/.gogver -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/release/linux/xcom2-setup.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | ./pycfg.py xcom2 pc Ufo.cfg 4 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/release/linux/xcom2.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | export LD_LIBRARY_PATH=`pwd` 4 | ./SR-Xcom2 5 | sync 6 | -------------------------------------------------------------------------------- /games/X-Com - Terror from the Deep/release/windows/xcom2.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cd /D "%~dp0" 3 | set SDL_STDIO_REDIRECT=0 4 | start SR-Xcom2.exe 5 | -------------------------------------------------------------------------------- /games/X-Com - Ufo Defense/SR-Xcom1/arm/misc.inc: -------------------------------------------------------------------------------- 1 | @@ 2 | @@ Copyright (C) 2016 Roman Pauer 3 | @@ 4 | @@ Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | @@ this software and associated documentation files (the "Software"), to deal in 6 | @@ the Software without restriction, including without limitation the rights to 7 | @@ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | @@ of the Software, and to permit persons to whom the Software is furnished to do 9 | @@ so, subject to the following conditions: 10 | @@ 11 | @@ The above copyright notice and this permission notice shall be included in all 12 | @@ copies or substantial portions of the Software. 13 | @@ 14 | @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | @@ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | @@ SOFTWARE. 21 | @@ 22 | 23 | .set NDEBUG, 1 24 | -------------------------------------------------------------------------------- /games/X-Com - Ufo Defense/SR-Xcom1/x86/misc.inc: -------------------------------------------------------------------------------- 1 | ;; 2 | ;; Copyright (C) 2016 Roman Pauer 3 | ;; 4 | ;; Permission is hereby granted, free of charge, to any person obtaining a copy of 5 | ;; this software and associated documentation files (the "Software"), to deal in 6 | ;; the Software without restriction, including without limitation the rights to 7 | ;; use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 8 | ;; of the Software, and to permit persons to whom the Software is furnished to do 9 | ;; so, subject to the following conditions: 10 | ;; 11 | ;; The above copyright notice and this permission notice shall be included in all 12 | ;; copies or substantial portions of the Software. 13 | ;; 14 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 | ;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 | ;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 | ;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 | ;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 | ;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 | ;; SOFTWARE. 21 | ;; 22 | 23 | %define tbyte tword 24 | 25 | %define NDEBUG 26 | -------------------------------------------------------------------------------- /games/X-Com - Ufo Defense/release/linux/xcom1-setup.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | ./pycfg.py xcom1 pc Ufo.cfg 4 | -------------------------------------------------------------------------------- /games/X-Com - Ufo Defense/release/linux/xcom1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | cd "`echo $0 | sed 's/\/[^\/]*$//'`" 3 | export LD_LIBRARY_PATH=`pwd` 4 | ./SR-Xcom1 5 | sync 6 | -------------------------------------------------------------------------------- /games/X-Com - Ufo Defense/release/windows/xcom1.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | cd /D "%~dp0" 3 | set SDL_STDIO_REDIRECT=0 4 | start SR-Xcom1.exe 5 | -------------------------------------------------------------------------------- /llasm/README.md: -------------------------------------------------------------------------------- 1 | # llasm 2 | 3 | Program which converts *.llasm* file to [LLVM](https://llvm.org/ "LLVM") language-independent intermediate representation, which can be compiled to native code. 4 | 5 | -------------------------------------------------------------------------------- /llasm/komp.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | gdc -O2 -Wall llasm.d -o llasm 3 | -------------------------------------------------------------------------------- /midi-plugins/komp-gp2x.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | /opt/open2x/gcc-4.1.1-glibc-2.3.6/bin/arm-open2x-linux-gcc -shared -Wl,-soname,midi-wildmidi.so -o midi-wildmidi.so -fpic -fvisibility=hidden -O2 -Wall -march=armv4t -mtune=arm920t midi-wildmidi.c -I`pwd`/include -lWildMidi -L`pwd`/lib/armv4 3 | /opt/open2x/gcc-4.1.1-glibc-2.3.6/bin/arm-open2x-linux-gcc -shared -Wl,-soname,midi-adlmidi.so -o midi-adlmidi.so -fpic -fvisibility=hidden -O2 -Wall -march=armv4t -mtune=arm920t midi-adlmidi.c -I`pwd`/include -lADLMIDI -lstdc++ -L`pwd`/lib/armv4 4 | -------------------------------------------------------------------------------- /midi-plugins/midi.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | initialize_midi_plugin 3 | -------------------------------------------------------------------------------- /midi-plugins/midi2.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | initialize_midi_plugin2 3 | -------------------------------------------------------------------------------- /midi-plugins/xcom12/src/munt-2.7.0/mt32emu/Types.h: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009 Dean Beeler, Jerome Fisher 2 | * Copyright (C) 2011-2022 Dean Beeler, Jerome Fisher, Sergey V. Mikayev 3 | * 4 | * This program is free software: you can redistribute it and/or modify 5 | * it under the terms of the GNU Lesser General Public License as published by 6 | * the Free Software Foundation, either version 2.1 of the License, or 7 | * (at your option) any later version. 8 | * 9 | * This program is distributed in the hope that it will be useful, 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 | * GNU Lesser General Public License for more details. 13 | * 14 | * You should have received a copy of the GNU Lesser General Public License 15 | * along with this program. If not, see . 16 | */ 17 | 18 | #ifndef MT32EMU_TYPES_H 19 | #define MT32EMU_TYPES_H 20 | 21 | namespace MT32Emu { 22 | 23 | typedef unsigned int Bit32u; 24 | typedef signed int Bit32s; 25 | typedef unsigned short int Bit16u; 26 | typedef signed short int Bit16s; 27 | typedef unsigned char Bit8u; 28 | typedef signed char Bit8s; 29 | 30 | } 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /pycfg/README.md: -------------------------------------------------------------------------------- 1 | # pycfg 2 | 3 | A configuration utility that can be used on Linux (sorry Windows users) to change settings in the configuration files (without editing the files). 4 | 5 | The utility has some limitations -- edit the configuration files to overcome these. 6 | 7 | * On PC, the resolution can be selected only from predefined values -- when editing, any resolution can be used (mainly usable in window mode). 8 | 9 | * On Pandora, the button mappings can't be modified (or shown). 10 | -------------------------------------------------------------------------------- /scaler-plugins/README.md: -------------------------------------------------------------------------------- 1 | # scaler-plugins 2 | 3 | Plugins used by the DOS games to enlarge/enhance the displayed image. 4 | 5 | To compile the plugins, run the compilation script for your platform. 6 | 7 | If you do not want (or you are not able to) compile it by yourself, you can try to use the DLLs, or SO files from the Albion release which has these precompiled. 8 | 9 | ## General plugins 10 | 11 | **scaler-hqx** uses [hqx](https://web.archive.org/web/20131205091805/http://www.hiend3d.com/hq2x.html "hqx") algorithm by Maxim Stepin. 12 | 13 | **scaler-xbrz** uses [xBRZ](https://sourceforge.net/projects/xbrz/ "xBRZ") algorithm by Zenju. 14 | 15 | -------------------------------------------------------------------------------- /scaler-plugins/komp-arm.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | gcc -c -fpic -fvisibility=hidden -O2 -Wall scaler-hqx.c 3 | cd hqx 4 | gcc -c -fpic -fvisibility=hidden -O3 -Wall *.c *.S 5 | cd .. 6 | gcc -shared -Wl,-soname,scaler-hqx.so -o scaler-hqx.so -fpic scaler-hqx.o hqx/*.o 7 | 8 | # find maximum supported C++ standard in GCC 9 | CPPSTD= 10 | g++ -c -fpic -O2 -Wall -std=c++20 scaler-xbrz.cpp 2>/dev/null 11 | if [ $? -eq 0 ]; then 12 | CPPSTD=c++20 13 | else 14 | g++ -c -fpic -O2 -Wall -std=c++17 scaler-xbrz.cpp 2>/dev/null 15 | if [ $? -eq 0 ]; then 16 | CPPSTD=c++17 17 | else 18 | g++ -c -fpic -O2 -Wall -std=c++14 scaler-xbrz.cpp 2>/dev/null 19 | if [ $? -eq 0 ]; then 20 | CPPSTD=c++14 21 | else 22 | CPPSTD=c++11 23 | fi 24 | fi 25 | fi 26 | 27 | g++ -c -fpic -fvisibility=hidden -O2 -Wall -std=${CPPSTD} scaler-xbrz.cpp 28 | cd xbrz 29 | g++ -c -fpic -fvisibility=hidden -ffast-math -O3 -Wall -Wno-strict-aliasing -Wno-attributes -Wno-uninitialized -std=${CPPSTD} -fno-threadsafe-statics -DNO_BUFFER_HEAP_ALLOCATION -DNO_EXTRA_SCALERS -DNO_ALPHA_SUPPORT xbrz.cpp 30 | cd .. 31 | gcc -shared -Wl,-soname,scaler-xbrz.so -o scaler-xbrz.so -fpic scaler-xbrz.o xbrz/*.o 32 | 33 | rm *.o 34 | rm hqx/*.o 35 | rm xbrz/*.o 36 | -------------------------------------------------------------------------------- /scaler-plugins/komp-x86-windows.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | gcc -c -m32 -O2 -Wall scaler-hqx.c 3 | cd hqx 4 | gcc -c -m32 -march=x86-64 -O3 -Wall *.c *.S 5 | cd .. 6 | gcc -s -shared -o scaler-hqx.dll -m32 scaler-hqx.o hqx/*.o scaler.def 7 | 8 | g++ -c -m32 -O2 -Wall -std=c++11 scaler-xbrz.cpp 9 | cd xbrz 10 | g++ -c -ffast-math -m32 -march=x86-64 -O3 -Wall -Wno-strict-aliasing -Wno-attributes -Wno-uninitialized -std=c++11 -fno-threadsafe-statics -DNO_BUFFER_HEAP_ALLOCATION -DNO_EXTRA_SCALERS -DNO_ALPHA_SUPPORT xbrz.cpp 11 | cd .. 12 | gcc -s -shared -o scaler-xbrz.dll -m32 scaler-xbrz.o xbrz/*.o scaler.def 13 | 14 | del *.o 15 | del hqx\*.o 16 | del xbrz\*.o 17 | -------------------------------------------------------------------------------- /scaler-plugins/scaler.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | initialize_scaler_plugin 3 | -------------------------------------------------------------------------------- /scaler-plugins/xbrz/xbrz.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/M-HT/SR/dca33833b9928db98e7f4894ca9f87612db813ad/scaler-plugins/xbrz/xbrz.cpp --------------------------------------------------------------------------------