├── .github ├── FUNDING.yml └── workflows │ └── build.yml ├── .gitignore ├── CONTRIBUTING.md ├── COPYING.txt ├── ChangeLog ├── Makefile ├── README.md ├── SECURITY.md ├── TODO ├── autoupdater-readme.txt ├── code ├── AL │ ├── VERSION │ ├── al.h │ ├── alc.h │ ├── alext.h │ ├── efx-creative.h │ ├── efx-presets.h │ └── efx.h ├── SDL2 │ ├── include-2.0.22 │ │ ├── SDL.h │ │ ├── SDL_assert.h │ │ ├── SDL_atomic.h │ │ ├── SDL_audio.h │ │ ├── SDL_bits.h │ │ ├── SDL_blendmode.h │ │ ├── SDL_clipboard.h │ │ ├── SDL_config.h │ │ ├── SDL_config.h.cmake │ │ ├── SDL_config.h.in │ │ ├── SDL_config_android.h │ │ ├── SDL_config_emscripten.h │ │ ├── SDL_config_iphoneos.h │ │ ├── SDL_config_macosx.h │ │ ├── SDL_config_minimal.h │ │ ├── SDL_config_os2.h │ │ ├── SDL_config_pandora.h │ │ ├── SDL_config_windows.h │ │ ├── SDL_config_winrt.h │ │ ├── SDL_copying.h │ │ ├── SDL_cpuinfo.h │ │ ├── SDL_egl.h │ │ ├── SDL_endian.h │ │ ├── SDL_error.h │ │ ├── SDL_events.h │ │ ├── SDL_filesystem.h │ │ ├── SDL_gamecontroller.h │ │ ├── SDL_gesture.h │ │ ├── SDL_haptic.h │ │ ├── SDL_hidapi.h │ │ ├── SDL_hints.h │ │ ├── SDL_joystick.h │ │ ├── SDL_keyboard.h │ │ ├── SDL_keycode.h │ │ ├── SDL_loadso.h │ │ ├── SDL_locale.h │ │ ├── SDL_log.h │ │ ├── SDL_main.h │ │ ├── SDL_messagebox.h │ │ ├── SDL_metal.h │ │ ├── SDL_misc.h │ │ ├── SDL_mouse.h │ │ ├── SDL_mutex.h │ │ ├── SDL_name.h │ │ ├── SDL_opengl.h │ │ ├── SDL_opengl_glext.h │ │ ├── SDL_opengles.h │ │ ├── SDL_opengles2.h │ │ ├── SDL_opengles2_gl2.h │ │ ├── SDL_opengles2_gl2ext.h │ │ ├── SDL_opengles2_gl2platform.h │ │ ├── SDL_opengles2_khrplatform.h │ │ ├── SDL_pixels.h │ │ ├── SDL_platform.h │ │ ├── SDL_power.h │ │ ├── SDL_quit.h │ │ ├── SDL_rect.h │ │ ├── SDL_render.h │ │ ├── SDL_revision.h │ │ ├── SDL_revision.h.cmake │ │ ├── SDL_rwops.h │ │ ├── SDL_scancode.h │ │ ├── SDL_sensor.h │ │ ├── SDL_shape.h │ │ ├── SDL_stdinc.h │ │ ├── SDL_surface.h │ │ ├── SDL_system.h │ │ ├── SDL_syswm.h │ │ ├── SDL_test.h │ │ ├── SDL_test_assert.h │ │ ├── SDL_test_common.h │ │ ├── SDL_test_compare.h │ │ ├── SDL_test_crc32.h │ │ ├── SDL_test_font.h │ │ ├── SDL_test_fuzzer.h │ │ ├── SDL_test_harness.h │ │ ├── SDL_test_images.h │ │ ├── SDL_test_log.h │ │ ├── SDL_test_md5.h │ │ ├── SDL_test_memory.h │ │ ├── SDL_test_random.h │ │ ├── SDL_thread.h │ │ ├── SDL_timer.h │ │ ├── SDL_touch.h │ │ ├── SDL_types.h │ │ ├── SDL_version.h │ │ ├── SDL_video.h │ │ ├── SDL_vulkan.h │ │ ├── begin_code.h │ │ └── close_code.h │ ├── include-macppc │ │ ├── SDL.h │ │ ├── SDL_assert.h │ │ ├── SDL_atomic.h │ │ ├── SDL_audio.h │ │ ├── SDL_bits.h │ │ ├── SDL_blendmode.h │ │ ├── SDL_clipboard.h │ │ ├── SDL_config.h │ │ ├── SDL_config_android.h │ │ ├── SDL_config_iphoneos.h │ │ ├── SDL_config_macosx.h │ │ ├── SDL_config_minimal.h │ │ ├── SDL_config_pandora.h │ │ ├── SDL_config_psp.h │ │ ├── SDL_config_windows.h │ │ ├── SDL_config_wiz.h │ │ ├── SDL_copying.h │ │ ├── SDL_cpuinfo.h │ │ ├── SDL_endian.h │ │ ├── SDL_error.h │ │ ├── SDL_events.h │ │ ├── SDL_filesystem.h │ │ ├── SDL_gamecontroller.h │ │ ├── SDL_gesture.h │ │ ├── SDL_haptic.h │ │ ├── SDL_hints.h │ │ ├── SDL_joystick.h │ │ ├── SDL_keyboard.h │ │ ├── SDL_keycode.h │ │ ├── SDL_loadso.h │ │ ├── SDL_log.h │ │ ├── SDL_main.h │ │ ├── SDL_messagebox.h │ │ ├── SDL_mouse.h │ │ ├── SDL_mutex.h │ │ ├── SDL_name.h │ │ ├── SDL_opengl.h │ │ ├── SDL_opengles.h │ │ ├── SDL_opengles2.h │ │ ├── SDL_pixels.h │ │ ├── SDL_platform.h │ │ ├── SDL_power.h │ │ ├── SDL_quit.h │ │ ├── SDL_rect.h │ │ ├── SDL_render.h │ │ ├── SDL_revision.h │ │ ├── SDL_rwops.h │ │ ├── SDL_scancode.h │ │ ├── SDL_shape.h │ │ ├── SDL_stdinc.h │ │ ├── SDL_surface.h │ │ ├── SDL_system.h │ │ ├── SDL_syswm.h │ │ ├── SDL_test.h │ │ ├── SDL_test_assert.h │ │ ├── SDL_test_common.h │ │ ├── SDL_test_compare.h │ │ ├── SDL_test_crc32.h │ │ ├── SDL_test_font.h │ │ ├── SDL_test_fuzzer.h │ │ ├── SDL_test_harness.h │ │ ├── SDL_test_images.h │ │ ├── SDL_test_log.h │ │ ├── SDL_test_md5.h │ │ ├── SDL_test_random.h │ │ ├── SDL_thread.h │ │ ├── SDL_timer.h │ │ ├── SDL_touch.h │ │ ├── SDL_types.h │ │ ├── SDL_version.h │ │ ├── SDL_video.h │ │ ├── begin_code.h │ │ └── close_code.h │ └── include │ │ ├── SDL.h │ │ ├── SDL_assert.h │ │ ├── SDL_atomic.h │ │ ├── SDL_audio.h │ │ ├── SDL_bits.h │ │ ├── SDL_blendmode.h │ │ ├── SDL_clipboard.h │ │ ├── SDL_config.h │ │ ├── SDL_config.h.cmake │ │ ├── SDL_config.h.in │ │ ├── SDL_config_android.h │ │ ├── SDL_config_emscripten.h │ │ ├── SDL_config_iphoneos.h │ │ ├── SDL_config_macosx.h │ │ ├── SDL_config_minimal.h │ │ ├── SDL_config_ngage.h │ │ ├── SDL_config_os2.h │ │ ├── SDL_config_pandora.h │ │ ├── SDL_config_windows.h │ │ ├── SDL_config_wingdk.h │ │ ├── SDL_config_winrt.h │ │ ├── SDL_config_xbox.h │ │ ├── SDL_copying.h │ │ ├── SDL_cpuinfo.h │ │ ├── SDL_egl.h │ │ ├── SDL_endian.h │ │ ├── SDL_error.h │ │ ├── SDL_events.h │ │ ├── SDL_filesystem.h │ │ ├── SDL_gamecontroller.h │ │ ├── SDL_gesture.h │ │ ├── SDL_guid.h │ │ ├── SDL_haptic.h │ │ ├── SDL_hidapi.h │ │ ├── SDL_hints.h │ │ ├── SDL_joystick.h │ │ ├── SDL_keyboard.h │ │ ├── SDL_keycode.h │ │ ├── SDL_loadso.h │ │ ├── SDL_locale.h │ │ ├── SDL_log.h │ │ ├── SDL_main.h │ │ ├── SDL_messagebox.h │ │ ├── SDL_metal.h │ │ ├── SDL_misc.h │ │ ├── SDL_mouse.h │ │ ├── SDL_mutex.h │ │ ├── SDL_name.h │ │ ├── SDL_opengl.h │ │ ├── SDL_opengl_glext.h │ │ ├── SDL_opengles.h │ │ ├── SDL_opengles2.h │ │ ├── SDL_opengles2_gl2.h │ │ ├── SDL_opengles2_gl2ext.h │ │ ├── SDL_opengles2_gl2platform.h │ │ ├── SDL_opengles2_khrplatform.h │ │ ├── SDL_pixels.h │ │ ├── SDL_platform.h │ │ ├── SDL_power.h │ │ ├── SDL_quit.h │ │ ├── SDL_rect.h │ │ ├── SDL_render.h │ │ ├── SDL_revision.h │ │ ├── SDL_revision.h.cmake │ │ ├── SDL_rwops.h │ │ ├── SDL_scancode.h │ │ ├── SDL_sensor.h │ │ ├── SDL_shape.h │ │ ├── SDL_stdinc.h │ │ ├── SDL_surface.h │ │ ├── SDL_system.h │ │ ├── SDL_syswm.h │ │ ├── SDL_test.h │ │ ├── SDL_test_assert.h │ │ ├── SDL_test_common.h │ │ ├── SDL_test_compare.h │ │ ├── SDL_test_crc32.h │ │ ├── SDL_test_font.h │ │ ├── SDL_test_fuzzer.h │ │ ├── SDL_test_harness.h │ │ ├── SDL_test_images.h │ │ ├── SDL_test_log.h │ │ ├── SDL_test_md5.h │ │ ├── SDL_test_memory.h │ │ ├── SDL_test_random.h │ │ ├── SDL_thread.h │ │ ├── SDL_timer.h │ │ ├── SDL_touch.h │ │ ├── SDL_types.h │ │ ├── SDL_version.h │ │ ├── SDL_video.h │ │ ├── SDL_vulkan.h │ │ ├── begin_code.h │ │ └── close_code.h ├── asm │ ├── ftola.asm │ ├── ftola.c │ ├── matha.s │ ├── qasm-inline.h │ ├── qasm.h │ ├── snapvector.asm │ ├── snapvector.c │ ├── snd_mixa.s │ └── vm_x86_64.asm ├── autoupdater │ ├── autoupdater.c │ └── rsa_tools │ │ ├── .gitignore │ │ ├── build-libtom-unix.sh │ │ ├── build-rsa-tools.sh │ │ ├── rsa_common.c │ │ ├── rsa_common.h │ │ ├── rsa_make_keys.c │ │ ├── rsa_sign.c │ │ ├── rsa_verify.c │ │ └── test-rsa-tools.sh ├── botlib │ ├── aasfile.h │ ├── be_aas.h │ ├── be_aas_bsp.h │ ├── be_aas_bspq3.c │ ├── be_aas_cluster.c │ ├── be_aas_cluster.h │ ├── be_aas_debug.c │ ├── be_aas_debug.h │ ├── be_aas_def.h │ ├── be_aas_entity.c │ ├── be_aas_entity.h │ ├── be_aas_file.c │ ├── be_aas_file.h │ ├── be_aas_funcs.h │ ├── be_aas_main.c │ ├── be_aas_main.h │ ├── be_aas_move.c │ ├── be_aas_move.h │ ├── be_aas_optimize.c │ ├── be_aas_optimize.h │ ├── be_aas_reach.c │ ├── be_aas_reach.h │ ├── be_aas_route.c │ ├── be_aas_route.h │ ├── be_aas_routealt.c │ ├── be_aas_routealt.h │ ├── be_aas_sample.c │ ├── be_aas_sample.h │ ├── be_ai_char.c │ ├── be_ai_char.h │ ├── be_ai_chat.c │ ├── be_ai_chat.h │ ├── be_ai_gen.c │ ├── be_ai_gen.h │ ├── be_ai_goal.c │ ├── be_ai_goal.h │ ├── be_ai_move.c │ ├── be_ai_move.h │ ├── be_ai_weap.c │ ├── be_ai_weap.h │ ├── be_ai_weight.c │ ├── be_ai_weight.h │ ├── be_ea.c │ ├── be_ea.h │ ├── be_interface.c │ ├── be_interface.h │ ├── botlib.h │ ├── l_crc.c │ ├── l_crc.h │ ├── l_libvar.c │ ├── l_libvar.h │ ├── l_log.c │ ├── l_log.h │ ├── l_memory.c │ ├── l_memory.h │ ├── l_precomp.c │ ├── l_precomp.h │ ├── l_script.c │ ├── l_script.h │ ├── l_struct.c │ ├── l_struct.h │ └── l_utils.h ├── cgame │ ├── cg_consolecmds.c │ ├── cg_draw.c │ ├── cg_drawtools.c │ ├── cg_effects.c │ ├── cg_ents.c │ ├── cg_event.c │ ├── cg_info.c │ ├── cg_local.h │ ├── cg_localents.c │ ├── cg_main.c │ ├── cg_marks.c │ ├── cg_newdraw.c │ ├── cg_particles.c │ ├── cg_players.c │ ├── cg_playerstate.c │ ├── cg_predict.c │ ├── cg_public.h │ ├── cg_scoreboard.c │ ├── cg_servercmds.c │ ├── cg_snapshot.c │ ├── cg_syscalls.asm │ ├── cg_syscalls.c │ ├── cg_view.c │ └── cg_weapons.c ├── client │ ├── cl_avi.c │ ├── cl_cgame.c │ ├── cl_cin.c │ ├── cl_console.c │ ├── cl_curl.c │ ├── cl_curl.h │ ├── cl_input.c │ ├── cl_keys.c │ ├── cl_main.c │ ├── cl_net_chan.c │ ├── cl_parse.c │ ├── cl_scrn.c │ ├── cl_ui.c │ ├── client.h │ ├── keycodes.h │ ├── keys.h │ ├── libmumblelink.c │ ├── libmumblelink.h │ ├── qal.c │ ├── qal.h │ ├── snd_adpcm.c │ ├── snd_altivec.c │ ├── snd_codec.c │ ├── snd_codec.h │ ├── snd_codec_ogg.c │ ├── snd_codec_opus.c │ ├── snd_codec_wav.c │ ├── snd_dma.c │ ├── snd_local.h │ ├── snd_main.c │ ├── snd_mem.c │ ├── snd_mix.c │ ├── snd_openal.c │ ├── snd_public.h │ └── snd_wavelet.c ├── curl-7.54.0 │ └── include │ │ ├── README │ │ └── curl │ │ ├── curl.h │ │ ├── curlbuild.h │ │ ├── curlrules.h │ │ ├── curlver.h │ │ ├── easy.h │ │ ├── mprintf.h │ │ ├── multi.h │ │ ├── stdcheaders.h │ │ ├── system.h │ │ └── typecheck-gcc.h ├── game │ ├── ai_chat.c │ ├── ai_chat.h │ ├── ai_cmd.c │ ├── ai_cmd.h │ ├── ai_dmnet.c │ ├── ai_dmnet.h │ ├── ai_dmq3.c │ ├── ai_dmq3.h │ ├── ai_main.c │ ├── ai_main.h │ ├── ai_team.c │ ├── ai_team.h │ ├── ai_vcmd.c │ ├── ai_vcmd.h │ ├── bg_lib.c │ ├── bg_lib.h │ ├── bg_local.h │ ├── bg_misc.c │ ├── bg_pmove.c │ ├── bg_public.h │ ├── bg_slidemove.c │ ├── chars.h │ ├── g_active.c │ ├── g_arenas.c │ ├── g_bot.c │ ├── g_client.c │ ├── g_cmds.c │ ├── g_combat.c │ ├── g_items.c │ ├── g_local.h │ ├── g_main.c │ ├── g_mem.c │ ├── g_misc.c │ ├── g_missile.c │ ├── g_mover.c │ ├── g_public.h │ ├── g_rankings.c │ ├── g_rankings.h │ ├── g_session.c │ ├── g_spawn.c │ ├── g_svcmds.c │ ├── g_syscalls.asm │ ├── g_syscalls.c │ ├── g_target.c │ ├── g_team.c │ ├── g_team.h │ ├── g_trigger.c │ ├── g_utils.c │ ├── g_weapon.c │ ├── inv.h │ ├── match.h │ └── syn.h ├── jpeg-8c │ ├── README │ ├── ioquake3-changes.diff │ ├── jaricom.c │ ├── jcapimin.c │ ├── jcapistd.c │ ├── jcarith.c │ ├── jccoefct.c │ ├── jccolor.c │ ├── jcdctmgr.c │ ├── jchuff.c │ ├── jcinit.c │ ├── jcmainct.c │ ├── jcmarker.c │ ├── jcmaster.c │ ├── jcomapi.c │ ├── jconfig.h │ ├── jcparam.c │ ├── jcprepct.c │ ├── jcsample.c │ ├── jctrans.c │ ├── jdapimin.c │ ├── jdapistd.c │ ├── jdarith.c │ ├── jdatadst.c │ ├── jdatasrc.c │ ├── jdcoefct.c │ ├── jdcolor.c │ ├── jdct.h │ ├── jddctmgr.c │ ├── jdhuff.c │ ├── jdinput.c │ ├── jdmainct.c │ ├── jdmarker.c │ ├── jdmaster.c │ ├── jdmerge.c │ ├── jdpostct.c │ ├── jdsample.c │ ├── jdtrans.c │ ├── jerror.c │ ├── jerror.h │ ├── jfdctflt.c │ ├── jfdctfst.c │ ├── jfdctint.c │ ├── jidctflt.c │ ├── jidctfst.c │ ├── jidctint.c │ ├── jinclude.h │ ├── jmemmgr.c │ ├── jmemnobs.c │ ├── jmemsys.h │ ├── jmorecfg.h │ ├── jpegint.h │ ├── jpeglib.h │ ├── jquant1.c │ ├── jquant2.c │ ├── jutils.c │ └── jversion.h ├── libogg-1.3.3 │ ├── include │ │ └── ogg │ │ │ ├── config_types.h │ │ │ ├── ogg.h │ │ │ └── os_types.h │ └── src │ │ ├── bitwise.c │ │ └── framing.c ├── libs │ ├── macosx-ub │ │ ├── libSDL2-2.0.0.dylib │ │ └── libSDL2main.a │ ├── macosx-ub2 │ │ ├── libSDL2-2.0.0.dylib │ │ └── libSDL2main.a │ ├── win32 │ │ ├── SDL2.dll │ │ ├── SDL2.lib │ │ ├── SDL2main.lib │ │ ├── libSDL2.dll.a │ │ ├── libSDL2main.a │ │ └── libcurl.a │ └── win64 │ │ ├── SDL264.dll │ │ ├── SDL264.lib │ │ ├── SDL264main.lib │ │ ├── libSDL264.dll.a │ │ ├── libSDL264main.a │ │ └── libcurl.a ├── libvorbis-1.3.6 │ ├── include │ │ └── vorbis │ │ │ ├── codec.h │ │ │ ├── vorbisenc.h │ │ │ └── vorbisfile.h │ └── lib │ │ ├── analysis.c │ │ ├── backends.h │ │ ├── bitrate.c │ │ ├── bitrate.h │ │ ├── block.c │ │ ├── books │ │ ├── coupled │ │ │ ├── res_books_51.h │ │ │ └── res_books_stereo.h │ │ ├── floor │ │ │ └── floor_books.h │ │ └── uncoupled │ │ │ └── res_books_uncoupled.h │ │ ├── codebook.c │ │ ├── codebook.h │ │ ├── codec_internal.h │ │ ├── envelope.c │ │ ├── envelope.h │ │ ├── floor0.c │ │ ├── floor1.c │ │ ├── highlevel.h │ │ ├── info.c │ │ ├── lookup.c │ │ ├── lookup.h │ │ ├── lookup_data.h │ │ ├── lpc.c │ │ ├── lpc.h │ │ ├── lsp.c │ │ ├── lsp.h │ │ ├── mapping0.c │ │ ├── masking.h │ │ ├── mdct.c │ │ ├── mdct.h │ │ ├── misc.h │ │ ├── modes │ │ ├── floor_all.h │ │ ├── psych_11.h │ │ ├── psych_16.h │ │ ├── psych_44.h │ │ ├── psych_8.h │ │ ├── residue_16.h │ │ ├── residue_44.h │ │ ├── residue_44p51.h │ │ ├── residue_44u.h │ │ ├── residue_8.h │ │ ├── setup_11.h │ │ ├── setup_16.h │ │ ├── setup_22.h │ │ ├── setup_32.h │ │ ├── setup_44.h │ │ ├── setup_44p51.h │ │ ├── setup_44u.h │ │ ├── setup_8.h │ │ └── setup_X.h │ │ ├── os.h │ │ ├── psy.c │ │ ├── psy.h │ │ ├── registry.c │ │ ├── registry.h │ │ ├── res0.c │ │ ├── scales.h │ │ ├── sharedbook.c │ │ ├── smallft.c │ │ ├── smallft.h │ │ ├── synthesis.c │ │ ├── vorbisenc.c │ │ ├── vorbisfile.c │ │ ├── window.c │ │ └── window.h ├── null │ ├── mac_net.c │ ├── null_client.c │ ├── null_glimp.c │ ├── null_input.c │ ├── null_main.c │ ├── null_net.c │ └── null_snddma.c ├── opus-1.2.1 │ ├── celt │ │ ├── _kiss_fft_guts.h │ │ ├── arch.h │ │ ├── arm │ │ │ ├── arm2gnu.pl │ │ │ ├── arm_celt_map.c │ │ │ ├── armcpu.c │ │ │ ├── armcpu.h │ │ │ ├── armopts.s.in │ │ │ ├── celt_ne10_fft.c │ │ │ ├── celt_ne10_mdct.c │ │ │ ├── celt_neon_intr.c │ │ │ ├── celt_pitch_xcorr_arm-gnu.S │ │ │ ├── celt_pitch_xcorr_arm.s │ │ │ ├── fft_arm.h │ │ │ ├── fixed_arm64.h │ │ │ ├── fixed_armv4.h │ │ │ ├── fixed_armv5e.h │ │ │ ├── kiss_fft_armv4.h │ │ │ ├── kiss_fft_armv5e.h │ │ │ ├── mdct_arm.h │ │ │ ├── pitch_arm.h │ │ │ └── pitch_neon_intr.c │ │ ├── bands.c │ │ ├── bands.h │ │ ├── celt.c │ │ ├── celt.h │ │ ├── celt_decoder.c │ │ ├── celt_encoder.c │ │ ├── celt_lpc.c │ │ ├── celt_lpc.h │ │ ├── cpu_support.h │ │ ├── cwrs.c │ │ ├── cwrs.h │ │ ├── ecintrin.h │ │ ├── entcode.c │ │ ├── entcode.h │ │ ├── entdec.c │ │ ├── entdec.h │ │ ├── entenc.c │ │ ├── entenc.h │ │ ├── fixed_debug.h │ │ ├── fixed_generic.h │ │ ├── float_cast.h │ │ ├── kiss_fft.c │ │ ├── kiss_fft.h │ │ ├── laplace.c │ │ ├── laplace.h │ │ ├── mathops.c │ │ ├── mathops.h │ │ ├── mdct.c │ │ ├── mdct.h │ │ ├── mfrngcod.h │ │ ├── mips │ │ │ ├── celt_mipsr1.h │ │ │ ├── fixed_generic_mipsr1.h │ │ │ ├── kiss_fft_mipsr1.h │ │ │ ├── mdct_mipsr1.h │ │ │ ├── pitch_mipsr1.h │ │ │ └── vq_mipsr1.h │ │ ├── modes.c │ │ ├── modes.h │ │ ├── opus_custom_demo.c │ │ ├── os_support.h │ │ ├── pitch.c │ │ ├── pitch.h │ │ ├── quant_bands.c │ │ ├── quant_bands.h │ │ ├── rate.c │ │ ├── rate.h │ │ ├── stack_alloc.h │ │ ├── static_modes_fixed.h │ │ ├── static_modes_fixed_arm_ne10.h │ │ ├── static_modes_float.h │ │ ├── static_modes_float_arm_ne10.h │ │ ├── vq.c │ │ ├── vq.h │ │ └── x86 │ │ │ ├── celt_lpc_sse.c │ │ │ ├── celt_lpc_sse.h │ │ │ ├── pitch_sse.c │ │ │ ├── pitch_sse.h │ │ │ ├── pitch_sse2.c │ │ │ ├── pitch_sse4_1.c │ │ │ ├── vq_sse.h │ │ │ ├── vq_sse2.c │ │ │ ├── x86_celt_map.c │ │ │ ├── x86cpu.c │ │ │ └── x86cpu.h │ ├── include │ │ ├── opus.h │ │ ├── opus_custom.h │ │ ├── opus_defines.h │ │ ├── opus_multistream.h │ │ └── opus_types.h │ ├── silk │ │ ├── A2NLSF.c │ │ ├── API.h │ │ ├── CNG.c │ │ ├── HP_variable_cutoff.c │ │ ├── Inlines.h │ │ ├── LPC_analysis_filter.c │ │ ├── LPC_fit.c │ │ ├── LPC_inv_pred_gain.c │ │ ├── LP_variable_cutoff.c │ │ ├── MacroCount.h │ │ ├── MacroDebug.h │ │ ├── NLSF2A.c │ │ ├── NLSF_VQ.c │ │ ├── NLSF_VQ_weights_laroia.c │ │ ├── NLSF_decode.c │ │ ├── NLSF_del_dec_quant.c │ │ ├── NLSF_encode.c │ │ ├── NLSF_stabilize.c │ │ ├── NLSF_unpack.c │ │ ├── NSQ.c │ │ ├── NSQ.h │ │ ├── NSQ_del_dec.c │ │ ├── PLC.c │ │ ├── PLC.h │ │ ├── SigProc_FIX.h │ │ ├── VAD.c │ │ ├── VQ_WMat_EC.c │ │ ├── ana_filt_bank_1.c │ │ ├── arm │ │ │ ├── LPC_inv_pred_gain_arm.h │ │ │ ├── LPC_inv_pred_gain_neon_intr.c │ │ │ ├── NSQ_del_dec_arm.h │ │ │ ├── NSQ_del_dec_neon_intr.c │ │ │ ├── NSQ_neon.c │ │ │ ├── NSQ_neon.h │ │ │ ├── SigProc_FIX_armv4.h │ │ │ ├── SigProc_FIX_armv5e.h │ │ │ ├── arm_silk_map.c │ │ │ ├── biquad_alt_arm.h │ │ │ ├── biquad_alt_neon_intr.c │ │ │ ├── macros_arm64.h │ │ │ ├── macros_armv4.h │ │ │ └── macros_armv5e.h │ │ ├── biquad_alt.c │ │ ├── bwexpander.c │ │ ├── bwexpander_32.c │ │ ├── check_control_input.c │ │ ├── code_signs.c │ │ ├── control.h │ │ ├── control_SNR.c │ │ ├── control_audio_bandwidth.c │ │ ├── control_codec.c │ │ ├── debug.c │ │ ├── debug.h │ │ ├── dec_API.c │ │ ├── decode_core.c │ │ ├── decode_frame.c │ │ ├── decode_indices.c │ │ ├── decode_parameters.c │ │ ├── decode_pitch.c │ │ ├── decode_pulses.c │ │ ├── decoder_set_fs.c │ │ ├── define.h │ │ ├── enc_API.c │ │ ├── encode_indices.c │ │ ├── encode_pulses.c │ │ ├── errors.h │ │ ├── fixed │ │ │ ├── LTP_analysis_filter_FIX.c │ │ │ ├── LTP_scale_ctrl_FIX.c │ │ │ ├── apply_sine_window_FIX.c │ │ │ ├── autocorr_FIX.c │ │ │ ├── burg_modified_FIX.c │ │ │ ├── corrMatrix_FIX.c │ │ │ ├── encode_frame_FIX.c │ │ │ ├── find_LPC_FIX.c │ │ │ ├── find_LTP_FIX.c │ │ │ ├── find_pitch_lags_FIX.c │ │ │ ├── find_pred_coefs_FIX.c │ │ │ ├── k2a_FIX.c │ │ │ ├── k2a_Q16_FIX.c │ │ │ ├── main_FIX.h │ │ │ ├── noise_shape_analysis_FIX.c │ │ │ ├── pitch_analysis_core_FIX.c │ │ │ ├── process_gains_FIX.c │ │ │ ├── regularize_correlations_FIX.c │ │ │ ├── residual_energy16_FIX.c │ │ │ ├── residual_energy_FIX.c │ │ │ ├── schur64_FIX.c │ │ │ ├── schur_FIX.c │ │ │ ├── structs_FIX.h │ │ │ ├── vector_ops_FIX.c │ │ │ └── warped_autocorrelation_FIX.c │ │ ├── float │ │ │ ├── LPC_analysis_filter_FLP.c │ │ │ ├── LPC_inv_pred_gain_FLP.c │ │ │ ├── LTP_analysis_filter_FLP.c │ │ │ ├── LTP_scale_ctrl_FLP.c │ │ │ ├── SigProc_FLP.h │ │ │ ├── apply_sine_window_FLP.c │ │ │ ├── autocorrelation_FLP.c │ │ │ ├── burg_modified_FLP.c │ │ │ ├── bwexpander_FLP.c │ │ │ ├── corrMatrix_FLP.c │ │ │ ├── encode_frame_FLP.c │ │ │ ├── energy_FLP.c │ │ │ ├── find_LPC_FLP.c │ │ │ ├── find_LTP_FLP.c │ │ │ ├── find_pitch_lags_FLP.c │ │ │ ├── find_pred_coefs_FLP.c │ │ │ ├── inner_product_FLP.c │ │ │ ├── k2a_FLP.c │ │ │ ├── main_FLP.h │ │ │ ├── noise_shape_analysis_FLP.c │ │ │ ├── pitch_analysis_core_FLP.c │ │ │ ├── process_gains_FLP.c │ │ │ ├── regularize_correlations_FLP.c │ │ │ ├── residual_energy_FLP.c │ │ │ ├── scale_copy_vector_FLP.c │ │ │ ├── scale_vector_FLP.c │ │ │ ├── schur_FLP.c │ │ │ ├── sort_FLP.c │ │ │ ├── structs_FLP.h │ │ │ ├── warped_autocorrelation_FLP.c │ │ │ └── wrappers_FLP.c │ │ ├── gain_quant.c │ │ ├── init_decoder.c │ │ ├── init_encoder.c │ │ ├── inner_prod_aligned.c │ │ ├── interpolate.c │ │ ├── lin2log.c │ │ ├── log2lin.c │ │ ├── macros.h │ │ ├── main.h │ │ ├── mips │ │ │ ├── NSQ_del_dec_mipsr1.h │ │ │ ├── macros_mipsr1.h │ │ │ └── sigproc_fix_mipsr1.h │ │ ├── pitch_est_defines.h │ │ ├── pitch_est_tables.c │ │ ├── process_NLSFs.c │ │ ├── quant_LTP_gains.c │ │ ├── resampler.c │ │ ├── resampler_down2.c │ │ ├── resampler_down2_3.c │ │ ├── resampler_private.h │ │ ├── resampler_private_AR2.c │ │ ├── resampler_private_IIR_FIR.c │ │ ├── resampler_private_down_FIR.c │ │ ├── resampler_private_up2_HQ.c │ │ ├── resampler_rom.c │ │ ├── resampler_rom.h │ │ ├── resampler_structs.h │ │ ├── shell_coder.c │ │ ├── sigm_Q15.c │ │ ├── sort.c │ │ ├── stereo_LR_to_MS.c │ │ ├── stereo_MS_to_LR.c │ │ ├── stereo_decode_pred.c │ │ ├── stereo_encode_pred.c │ │ ├── stereo_find_predictor.c │ │ ├── stereo_quant_pred.c │ │ ├── structs.h │ │ ├── sum_sqr_shift.c │ │ ├── table_LSF_cos.c │ │ ├── tables.h │ │ ├── tables_LTP.c │ │ ├── tables_NLSF_CB_NB_MB.c │ │ ├── tables_NLSF_CB_WB.c │ │ ├── tables_gain.c │ │ ├── tables_other.c │ │ ├── tables_pitch_lag.c │ │ ├── tables_pulses_per_block.c │ │ ├── tuning_parameters.h │ │ ├── typedef.h │ │ └── x86 │ │ │ ├── NSQ_del_dec_sse.c │ │ │ ├── NSQ_sse.c │ │ │ ├── SigProc_FIX_sse.h │ │ │ ├── VAD_sse.c │ │ │ ├── VQ_WMat_EC_sse.c │ │ │ ├── main_sse.h │ │ │ └── x86_silk_map.c │ └── src │ │ ├── analysis.c │ │ ├── analysis.h │ │ ├── mlp.c │ │ ├── mlp.h │ │ ├── mlp_data.c │ │ ├── opus.c │ │ ├── opus_decoder.c │ │ ├── opus_encoder.c │ │ ├── opus_multistream.c │ │ ├── opus_multistream_decoder.c │ │ ├── opus_multistream_encoder.c │ │ ├── opus_private.h │ │ ├── repacketizer.c │ │ └── tansig_table.h ├── opusfile-0.9 │ ├── include │ │ └── opusfile.h │ └── src │ │ ├── http.c │ │ ├── info.c │ │ ├── internal.c │ │ ├── internal.h │ │ ├── opusfile.c │ │ ├── stream.c │ │ ├── wincerts.c │ │ └── winerrno.h ├── q3_ui │ ├── ui_addbots.c │ ├── ui_atoms.c │ ├── ui_cdkey.c │ ├── ui_cinematics.c │ ├── ui_confirm.c │ ├── ui_connect.c │ ├── ui_controls2.c │ ├── ui_credits.c │ ├── ui_demo2.c │ ├── ui_display.c │ ├── ui_gameinfo.c │ ├── ui_ingame.c │ ├── ui_loadconfig.c │ ├── ui_local.h │ ├── ui_login.c │ ├── ui_main.c │ ├── ui_menu.c │ ├── ui_mfield.c │ ├── ui_mods.c │ ├── ui_network.c │ ├── ui_options.c │ ├── ui_playermodel.c │ ├── ui_players.c │ ├── ui_playersettings.c │ ├── ui_preferences.c │ ├── ui_qmenu.c │ ├── ui_rankings.c │ ├── ui_rankstatus.c │ ├── ui_removebots.c │ ├── ui_saveconfig.c │ ├── ui_serverinfo.c │ ├── ui_servers2.c │ ├── ui_setup.c │ ├── ui_signup.c │ ├── ui_sound.c │ ├── ui_sparena.c │ ├── ui_specifyleague.c │ ├── ui_specifyserver.c │ ├── ui_splevel.c │ ├── ui_sppostgame.c │ ├── ui_spreset.c │ ├── ui_spskill.c │ ├── ui_startserver.c │ ├── ui_team.c │ ├── ui_teamorders.c │ └── ui_video.c ├── qcommon │ ├── cm_load.c │ ├── cm_local.h │ ├── cm_patch.c │ ├── cm_patch.h │ ├── cm_polylib.c │ ├── cm_polylib.h │ ├── cm_public.h │ ├── cm_test.c │ ├── cm_trace.c │ ├── cmd.c │ ├── common.c │ ├── cvar.c │ ├── files.c │ ├── huffman.c │ ├── ioapi.c │ ├── ioapi.h │ ├── json.h │ ├── md4.c │ ├── md5.c │ ├── msg.c │ ├── net_chan.c │ ├── net_ip.c │ ├── puff.c │ ├── puff.h │ ├── q_math.c │ ├── q_platform.h │ ├── q_shared.c │ ├── q_shared.h │ ├── qcommon.h │ ├── qfiles.h │ ├── surfaceflags.h │ ├── unzip.c │ ├── unzip.h │ ├── vm.c │ ├── vm_armv7l.c │ ├── vm_interpreted.c │ ├── vm_local.h │ ├── vm_none.c │ ├── vm_powerpc.c │ ├── vm_powerpc_asm.c │ ├── vm_powerpc_asm.h │ ├── vm_sparc.c │ ├── vm_sparc.h │ └── vm_x86.c ├── renderercommon │ ├── iqm.h │ ├── qgl.h │ ├── tr_common.h │ ├── tr_font.c │ ├── tr_image_bmp.c │ ├── tr_image_jpg.c │ ├── tr_image_pcx.c │ ├── tr_image_png.c │ ├── tr_image_tga.c │ ├── tr_noise.c │ ├── tr_public.h │ └── tr_types.h ├── renderergl1 │ ├── tr_altivec.c │ ├── tr_animation.c │ ├── tr_backend.c │ ├── tr_bsp.c │ ├── tr_cmds.c │ ├── tr_curve.c │ ├── tr_flares.c │ ├── tr_image.c │ ├── tr_init.c │ ├── tr_light.c │ ├── tr_local.h │ ├── tr_main.c │ ├── tr_marks.c │ ├── tr_mesh.c │ ├── tr_model.c │ ├── tr_model_iqm.c │ ├── tr_scene.c │ ├── tr_shade.c │ ├── tr_shade_calc.c │ ├── tr_shader.c │ ├── tr_shadows.c │ ├── tr_sky.c │ ├── tr_subs.c │ ├── tr_surface.c │ └── tr_world.c ├── renderergl2 │ ├── glsl │ │ ├── bokeh_fp.glsl │ │ ├── bokeh_vp.glsl │ │ ├── calclevels4x_fp.glsl │ │ ├── calclevels4x_vp.glsl │ │ ├── depthblur_fp.glsl │ │ ├── depthblur_vp.glsl │ │ ├── dlight_fp.glsl │ │ ├── dlight_vp.glsl │ │ ├── down4x_fp.glsl │ │ ├── down4x_vp.glsl │ │ ├── fogpass_fp.glsl │ │ ├── fogpass_vp.glsl │ │ ├── generic_fp.glsl │ │ ├── generic_vp.glsl │ │ ├── lightall_fp.glsl │ │ ├── lightall_vp.glsl │ │ ├── pshadow_fp.glsl │ │ ├── pshadow_vp.glsl │ │ ├── shadowfill_fp.glsl │ │ ├── shadowfill_vp.glsl │ │ ├── shadowmask_fp.glsl │ │ ├── shadowmask_vp.glsl │ │ ├── ssao_fp.glsl │ │ ├── ssao_vp.glsl │ │ ├── texturecolor_fp.glsl │ │ ├── texturecolor_vp.glsl │ │ ├── tonemap_fp.glsl │ │ └── tonemap_vp.glsl │ ├── tr_animation.c │ ├── tr_backend.c │ ├── tr_bsp.c │ ├── tr_cmds.c │ ├── tr_curve.c │ ├── tr_dsa.c │ ├── tr_dsa.h │ ├── tr_extensions.c │ ├── tr_extramath.c │ ├── tr_extramath.h │ ├── tr_extratypes.h │ ├── tr_fbo.c │ ├── tr_fbo.h │ ├── tr_flares.c │ ├── tr_glsl.c │ ├── tr_image.c │ ├── tr_image_dds.c │ ├── tr_init.c │ ├── tr_light.c │ ├── tr_local.h │ ├── tr_main.c │ ├── tr_marks.c │ ├── tr_mesh.c │ ├── tr_model.c │ ├── tr_model_iqm.c │ ├── tr_postprocess.c │ ├── tr_postprocess.h │ ├── tr_scene.c │ ├── tr_shade.c │ ├── tr_shade_calc.c │ ├── tr_shader.c │ ├── tr_shadows.c │ ├── tr_sky.c │ ├── tr_subs.c │ ├── tr_surface.c │ ├── tr_vbo.c │ └── tr_world.c ├── sdl │ ├── sdl_gamma.c │ ├── sdl_glimp.c │ ├── sdl_icon.h │ ├── sdl_input.c │ └── sdl_snd.c ├── server │ ├── server.h │ ├── sv_bot.c │ ├── sv_ccmds.c │ ├── sv_client.c │ ├── sv_game.c │ ├── sv_init.c │ ├── sv_main.c │ ├── sv_net_chan.c │ ├── sv_rankings.c │ ├── sv_snapshot.c │ └── sv_world.c ├── sys │ ├── con_log.c │ ├── con_passive.c │ ├── con_tty.c │ ├── con_win32.c │ ├── sys_autoupdater.c │ ├── sys_loadlib.h │ ├── sys_local.h │ ├── sys_main.c │ ├── sys_osx.m │ ├── sys_unix.c │ ├── sys_win32.c │ ├── win_manifest.xml │ ├── win_resource.h │ └── win_resource.rc ├── tools │ ├── asm │ │ ├── README.Id │ │ ├── cmdlib.c │ │ ├── cmdlib.h │ │ ├── lib.txt │ │ ├── mathlib.h │ │ ├── notes.txt │ │ ├── ops.txt │ │ ├── opstrings.h │ │ └── q3asm.c │ ├── lcc │ │ ├── COPYRIGHT │ │ ├── LOG │ │ ├── README │ │ ├── README.id │ │ ├── cpp │ │ │ ├── cpp.c │ │ │ ├── cpp.h │ │ │ ├── eval.c │ │ │ ├── getopt.c │ │ │ ├── hideset.c │ │ │ ├── include.c │ │ │ ├── lex.c │ │ │ ├── macro.c │ │ │ ├── nlist.c │ │ │ ├── tokens.c │ │ │ └── unix.c │ │ ├── doc │ │ │ ├── 4.html │ │ │ ├── bprint.1 │ │ │ ├── bprint.pdf │ │ │ ├── install.html │ │ │ ├── lcc.1 │ │ │ └── lcc.pdf │ │ ├── etc │ │ │ ├── bytecode.c │ │ │ └── lcc.c │ │ ├── lburg │ │ │ ├── gram.c │ │ │ ├── gram.y │ │ │ ├── lburg.1 │ │ │ ├── lburg.c │ │ │ └── lburg.h │ │ └── src │ │ │ ├── alloc.c │ │ │ ├── bind.c │ │ │ ├── bytecode.c │ │ │ ├── c.h │ │ │ ├── config.h │ │ │ ├── dag.c │ │ │ ├── dagcheck.md │ │ │ ├── decl.c │ │ │ ├── enode.c │ │ │ ├── error.c │ │ │ ├── event.c │ │ │ ├── expr.c │ │ │ ├── gen.c │ │ │ ├── init.c │ │ │ ├── inits.c │ │ │ ├── input.c │ │ │ ├── lex.c │ │ │ ├── list.c │ │ │ ├── main.c │ │ │ ├── null.c │ │ │ ├── output.c │ │ │ ├── prof.c │ │ │ ├── profio.c │ │ │ ├── simp.c │ │ │ ├── stmt.c │ │ │ ├── string.c │ │ │ ├── sym.c │ │ │ ├── symbolic.c │ │ │ ├── token.h │ │ │ ├── trace.c │ │ │ ├── tree.c │ │ │ └── types.c │ └── stringify.c ├── ui │ ├── ui_atoms.c │ ├── ui_gameinfo.c │ ├── ui_local.h │ ├── ui_main.c │ ├── ui_players.c │ ├── ui_public.h │ ├── ui_shared.c │ ├── ui_shared.h │ ├── ui_syscalls.asm │ └── ui_syscalls.c ├── web │ ├── client-config.json │ └── client.html └── zlib │ ├── adler32.c │ ├── crc32.c │ ├── crc32.h │ ├── inffast.c │ ├── inffast.h │ ├── inffixed.h │ ├── inflate.c │ ├── inflate.h │ ├── inftrees.c │ ├── inftrees.h │ ├── zconf.h │ ├── zlib.h │ ├── zutil.c │ └── zutil.h ├── id-readme.txt ├── make-macosx-app.sh ├── make-macosx-ub.sh ├── make-macosx-ub2.sh ├── make-macosx.sh ├── md4-readme.txt ├── misc ├── ReadMe-OSX.rtf ├── ioquake3-folder.icns ├── linux │ ├── q3a.service │ ├── server_compile.sh │ └── start_server.sh ├── msvc │ ├── .gitignore │ ├── cgame.def │ ├── cgame.vcproj │ ├── game.def │ ├── game.vcproj │ ├── glsl_stringify.vbs │ ├── ioq3.sln │ ├── opengl1.vcproj │ ├── opengl2.vcproj │ ├── q3_ui.def │ ├── q3_ui.vcproj │ ├── quake3.vcproj │ ├── ui.def │ └── ui.vcproj ├── msvc10 │ ├── .gitignore │ ├── cgame.vcxproj │ ├── cgame.vcxproj.filters │ ├── game.vcxproj │ ├── game.vcxproj.filters │ ├── ioq3.sln │ ├── q3_ui.vcxproj │ ├── q3_ui.vcxproj.filters │ ├── quake3.vcxproj │ ├── quake3.vcxproj.filters │ ├── ui.vcxproj │ └── ui.vcxproj.filters ├── msvc11 │ ├── .gitignore │ ├── cgame.vcxproj │ ├── cgame.vcxproj.filters │ ├── game.vcxproj │ ├── game.vcxproj.filters │ ├── ioq3.sln │ ├── q3_ui.vcxproj │ ├── q3_ui.vcxproj.filters │ ├── quake3.vcxproj │ ├── quake3.vcxproj.filters │ ├── ui.vcxproj │ └── ui.vcxproj.filters ├── msvc12 │ ├── .gitignore │ ├── cgame.def │ ├── cgame.vcxproj │ ├── game.def │ ├── game.vcxproj │ ├── glsl_stringify.vbs │ ├── ioq3.sln │ ├── opengl1.vcxproj │ ├── opengl1.vcxproj.filters │ ├── opengl2.vcxproj │ ├── opengl2.vcxproj.filters │ ├── q3_ui.def │ ├── q3_ui.vcxproj │ ├── quake3.vcxproj │ ├── quake3.vcxproj.filters │ ├── ui.def │ └── ui.vcxproj ├── msvc142 │ ├── .gitignore │ ├── cgame.def │ ├── cgame.vcxproj │ ├── game.def │ ├── game.vcxproj │ ├── glsl_stringify.vbs │ ├── ioq3.sln │ ├── opengl1.vcxproj │ ├── opengl1.vcxproj.filters │ ├── opengl2.vcxproj │ ├── opengl2.vcxproj.filters │ ├── q3_ui.def │ ├── q3_ui.vcxproj │ ├── quake3.vcxproj │ ├── quake3.vcxproj.filters │ ├── ui.def │ └── ui.vcxproj ├── nsis │ ├── Makefile │ ├── ioquake3-q3a.nsi │ ├── ioquake3-q3ctc.nsi │ └── ioquake3.nsi.in ├── osx │ └── start_server.sh ├── osxfe │ └── ioquake3fe │ │ ├── Controller.h │ │ ├── Controller.m │ │ ├── English.lproj │ │ ├── ErrorWindow.xib │ │ ├── InfoPlist.strings │ │ ├── Localizable.strings │ │ └── MainMenu.xib │ │ ├── ErrorWindow.h │ │ ├── ErrorWindow.m │ │ ├── ErrorWindowController.h │ │ ├── ErrorWindowController.m │ │ ├── Info.plist │ │ ├── ioquake3.icns │ │ ├── ioquake3fe.xcodeproj │ │ ├── TemplateIcon.icns │ │ ├── bw.mode1v3 │ │ ├── bw.pbxuser │ │ └── project.pbxproj │ │ ├── ioquake3fe_Prefix.pch │ │ └── main.m ├── quake3-tango.png ├── quake3-tango.xcf ├── quake3.icns ├── quake3.ico ├── quake3.png ├── quake3.svg ├── quake3_flat.icns ├── quake3_flat.iconset │ ├── icon_128x128.png │ ├── icon_128x128@2x.png │ ├── icon_16x16.png │ ├── icon_16x16@2x.png │ ├── icon_256x256.png │ ├── icon_256x256@2x.png │ ├── icon_32x32.png │ ├── icon_32x32@2x.png │ ├── icon_512x512.png │ └── icon_512x512@2x.png ├── setup │ ├── MacOSX │ │ └── SLA-dmg.sh │ ├── Makefile │ ├── Solaris_pkg.sh │ ├── doit │ ├── install-desktop-files.sh │ ├── ioq3demo.sh │ ├── ioquake3.SlackBuild │ ├── ioquake3.desktop │ ├── ioquake3.sh │ ├── org.ioquake3.ioquake3.metainfo.xml │ ├── pkg │ │ ├── ioq3ded.sh │ │ ├── ioquake3.sh │ │ ├── ioquake3 │ │ │ ├── depend │ │ │ ├── pkginfo.template │ │ │ ├── postinstall │ │ │ ├── postremove │ │ │ ├── preinstall │ │ │ ├── preremove │ │ │ ├── prototype.template │ │ │ └── space │ │ ├── ioquake3d │ │ │ ├── depend │ │ │ ├── pkginfo.template │ │ │ ├── postinstall │ │ │ ├── postremove │ │ │ ├── preinstall │ │ │ ├── preremove │ │ │ ├── prototype.template │ │ │ └── space │ │ └── ioquake3m │ │ │ ├── depend │ │ │ ├── pkginfo.template │ │ │ ├── postinstall │ │ │ ├── postremove │ │ │ ├── preinstall │ │ │ ├── preremove │ │ │ ├── prototype.template │ │ │ └── space │ ├── preuninstall.sh │ ├── setup.xml.in │ ├── setup.xml.mod │ ├── slack-desc │ └── splash.xpm └── xcode │ ├── botlib.xcodeproj │ └── project.pbxproj │ ├── cgame.xcodeproj │ └── project.pbxproj │ ├── game.xcodeproj │ └── project.pbxproj │ ├── ioquake3-Info.plist │ ├── ioquake3-Prefix.pch │ ├── ioquake3.xcodeproj │ └── project.pbxproj │ ├── ioquake3.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ ├── WorkspaceSettings.xcsettings │ │ └── xcschemes │ │ ├── all game.xcscheme │ │ └── all ioquake3.xcscheme │ ├── ioquake3 │ ├── Images.xcassets │ │ └── AppIcon.appiconset │ │ │ ├── Contents.json │ │ │ ├── icon_128x128.png │ │ │ ├── icon_128x128@2x.png │ │ │ ├── icon_16x16.png │ │ │ ├── icon_16x16@2x.png │ │ │ ├── icon_256x256.png │ │ │ ├── icon_256x256@2x.png │ │ │ ├── icon_32x32.png │ │ │ ├── icon_32x32@2x.png │ │ │ ├── icon_512x512.png │ │ │ └── icon_512x512@2x.png │ └── ioquake3.entitlements │ ├── jpeg8.xcodeproj │ └── project.pbxproj │ ├── opus.xcodeproj │ └── project.pbxproj │ ├── renderer_opengl1.xcodeproj │ └── project.pbxproj │ ├── renderer_opengl2.xcodeproj │ └── project.pbxproj │ ├── ui.xcodeproj │ └── project.pbxproj │ └── xcode-readme.txt ├── opengl2-readme.md ├── ui ├── hud.txt ├── hud2.txt ├── ingame.txt ├── menudef.h └── menus.txt └── voip-readme.txt /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | patreon: nuclearmonster 4 | open_collective: # Replace with a single Open Collective username 5 | ko_fi: mrnuclearmonster 6 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 7 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 8 | liberapay: # Replace with a single Liberapay username 9 | issuehunt: # Replace with a single IssueHunt username 10 | otechie: # Replace with a single Otechie username 11 | custom: ['https://www.patreon.com/icculus', 'https://www.patreon.com/SmileTheory', 'https://ko-fi.com/zturtleman'] 12 | 13 | 14 | #please add your links to this if you've been a long-time contributor! 15 | -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Build 2 | on: [push, pull_request] 3 | 4 | jobs: 5 | linux: 6 | name: Linux 7 | runs-on: ubuntu-22.04 8 | steps: 9 | - uses: actions/checkout@v4 10 | - name: Install Dependencies 11 | run: | 12 | sudo apt-get update 13 | sudo apt-get install libsdl2-dev 14 | - name: Compile 15 | run: make release -j$(nproc) 16 | env: 17 | ARCHIVE: 1 18 | - uses: actions/upload-artifact@v4 19 | with: 20 | name: Linux 21 | path: build/*.zip 22 | windows: 23 | name: Windows 24 | runs-on: windows-2019 25 | steps: 26 | - uses: actions/checkout@v4 27 | - name: Compile 28 | run: | 29 | choco install zip 30 | make release -j $env:NUMBER_OF_PROCESSORS 31 | env: 32 | ARCHIVE: 1 33 | - uses: actions/upload-artifact@v4 34 | with: 35 | name: Windows 36 | path: build/*.zip 37 | macos: 38 | name: macOS 39 | runs-on: macos-13 40 | steps: 41 | - uses: actions/checkout@v4 42 | - name: Compile 43 | run: make release -j$(sysctl -n hw.logicalcpu) 44 | env: 45 | ARCHIVE: 1 46 | - uses: actions/upload-artifact@v4 47 | with: 48 | name: macOS 49 | path: build/*.zip 50 | web: 51 | runs-on: ubuntu-latest 52 | steps: 53 | - uses: actions/checkout@v4 54 | - uses: actions/checkout@v4 55 | with: 56 | repository: emscripten-core/emsdk 57 | path: emsdk 58 | - name: Install Dependencies 59 | run: | 60 | cd emsdk 61 | ./emsdk install 3.1.58 62 | ./emsdk activate 3.1.58 63 | - name: Compile 64 | env: 65 | ARCHIVE: 1 66 | run: | 67 | source emsdk/emsdk_env.sh 68 | emmake make release -j$(nproc) 69 | - uses: actions/upload-artifact@v4 70 | with: 71 | name: Web 72 | path: build/*.zip 73 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build 2 | Makefile.local 3 | *.swp 4 | *tags 5 | *~ 6 | /.vscode/ 7 | /baseq3 8 | 9 | # OS X 10 | #################### 11 | .Spotlight-V100/ 12 | .Trashes/ 13 | ._* 14 | .AppleDouble 15 | .DS_Store 16 | .LSOverride 17 | Icon? 18 | make-macosx-values.local 19 | 20 | # Xcode 21 | #################### 22 | *.mode1v3 23 | *.mode2v3 24 | *.pbxuser 25 | *.perspectivev3 26 | *.user 27 | *.xcuserstate 28 | *.moved-aside 29 | *~.nib 30 | .idea/ 31 | DerivedData/ 32 | project.xcworkspace/ 33 | xcuserdata/ 34 | profile 35 | !default.pbxuser 36 | !default.mode1v3 37 | !default.mode2v3 38 | !default.perspectivev3 39 | 40 | # Microsoft Visual Studio 41 | #################### 42 | *.sdf 43 | *.opensdf 44 | *.suo 45 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | ## ioquake3 Security 2 | We take security very seriously at ioquake3. We welcome any peer review of our 100% free software source code to ensure nobody's ioquake3 clients or servers are ever compromised or hacked. 3 | 4 | ### Where should I report security issues? 5 | 6 | In order to give the community time to respond and upgrade we strongly urge you report all security issues privately. 7 | Please e-mail jack@ioquake.org directly to provide details and repro steps and we will respond as soon as possible, but please note: 8 | 9 | ### This is an entirely free software project without much in the way of external funding or sponsorships. 10 | ### We cannot guarantee quick responses but we very much appreciate your discretion when reporting security vulnerabilities. 11 | -------------------------------------------------------------------------------- /TODO: -------------------------------------------------------------------------------- 1 | http://wiki.ioquake3.org/Ioquake3_Road_Map 2 | -------------------------------------------------------------------------------- /code/AL/VERSION: -------------------------------------------------------------------------------- 1 | This file identifies the version of the AL headers in this directory. If you 2 | change or update the AL headers in any way, please make sure you also update 3 | this file. 4 | 5 | openal-soft-1.15.1 6 | -------------------------------------------------------------------------------- /code/AL/efx-creative.h: -------------------------------------------------------------------------------- 1 | /* The tokens that would be defined here are already defined in efx.h. This 2 | * empty file is here to provide compatibility with Windows-based projects 3 | * that would include it. */ 4 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_config.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | #ifndef SDL_config_h_ 23 | #define SDL_config_h_ 24 | 25 | #include "SDL_platform.h" 26 | 27 | /** 28 | * \file SDL_config.h 29 | */ 30 | 31 | /* Add any platform that doesn't build using the configure system. */ 32 | #if defined(__WIN32__) 33 | #include "SDL_config_windows.h" 34 | #elif defined(__WINRT__) 35 | #include "SDL_config_winrt.h" 36 | #elif defined(__MACOSX__) 37 | #include "SDL_config_macosx.h" 38 | #elif defined(__IPHONEOS__) 39 | #include "SDL_config_iphoneos.h" 40 | #elif defined(__ANDROID__) 41 | #include "SDL_config_android.h" 42 | #elif defined(__OS2__) 43 | #include "SDL_config_os2.h" 44 | #elif defined(__EMSCRIPTEN__) 45 | #include "SDL_config_emscripten.h" 46 | #else 47 | /* This is a minimal configuration just to get SDL running on new platforms. */ 48 | #include "SDL_config_minimal.h" 49 | #endif /* platform config */ 50 | 51 | #ifdef USING_GENERATED_CONFIG_H 52 | #error Wrong SDL_config.h, check your include path? 53 | #endif 54 | 55 | #endif /* SDL_config_h_ */ 56 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_copying.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_name.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | #ifndef SDLname_h_ 23 | #define SDLname_h_ 24 | 25 | #if defined(__STDC__) || defined(__cplusplus) 26 | #define NeedFunctionPrototypes 1 27 | #endif 28 | 29 | #define SDL_NAME(X) SDL_##X 30 | 31 | #endif /* SDLname_h_ */ 32 | 33 | /* vi: set ts=4 sw=4 expandtab: */ 34 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_opengles.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 1.X API headers. 26 | */ 27 | #include "SDL_config.h" 28 | 29 | #ifdef __IPHONEOS__ 30 | #include 31 | #include 32 | #else 33 | #include 34 | #include 35 | #endif 36 | 37 | #ifndef APIENTRY 38 | #define APIENTRY 39 | #endif 40 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_opengles2.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles2.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 2.0 API headers. 26 | */ 27 | #include "SDL_config.h" 28 | 29 | #if !defined(_MSC_VER) && !defined(SDL_USE_BUILTIN_OPENGL_DEFINITIONS) 30 | 31 | #ifdef __IPHONEOS__ 32 | #include 33 | #include 34 | #else 35 | #include 36 | #include 37 | #include 38 | #endif 39 | 40 | #else /* _MSC_VER */ 41 | 42 | /* OpenGL ES2 headers for Visual Studio */ 43 | #include "SDL_opengles2_khrplatform.h" 44 | #include "SDL_opengles2_gl2platform.h" 45 | #include "SDL_opengles2_gl2.h" 46 | #include "SDL_opengles2_gl2ext.h" 47 | 48 | #endif /* _MSC_VER */ 49 | 50 | #ifndef APIENTRY 51 | #define APIENTRY GL_APIENTRY 52 | #endif 53 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_opengles2_gl2platform.h: -------------------------------------------------------------------------------- 1 | #ifndef __gl2platform_h_ 2 | #define __gl2platform_h_ 3 | 4 | /* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */ 5 | 6 | /* 7 | * This document is licensed under the SGI Free Software B License Version 8 | * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . 9 | */ 10 | 11 | /* Platform-specific types and definitions for OpenGL ES 2.X gl2.h 12 | * 13 | * Adopters may modify khrplatform.h and this file to suit their platform. 14 | * You are encouraged to submit all modifications to the Khronos group so that 15 | * they can be included in future versions of this file. Please submit changes 16 | * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) 17 | * by filing a bug against product "OpenGL-ES" component "Registry". 18 | */ 19 | 20 | /*#include */ 21 | 22 | #ifndef GL_APICALL 23 | #define GL_APICALL KHRONOS_APICALL 24 | #endif 25 | 26 | #ifndef GL_APIENTRY 27 | #define GL_APIENTRY KHRONOS_APIENTRY 28 | #endif 29 | 30 | #endif /* __gl2platform_h_ */ 31 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_revision.h: -------------------------------------------------------------------------------- 1 | #define SDL_REVISION "" 2 | #define SDL_REVISION_NUMBER 0 3 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_revision.h.cmake: -------------------------------------------------------------------------------- 1 | #cmakedefine SDL_REVISION "@SDL_REVISION@" 2 | #define SDL_REVISION_NUMBER 0 3 | 4 | #ifndef SDL_REVISION 5 | #define SDL_REVISION "" 6 | #endif 7 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_test_memory.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_test_memory.h 24 | * 25 | * Include file for SDL test framework. 26 | * 27 | * This code is a part of the SDL2_test library, not the main SDL library. 28 | */ 29 | 30 | #ifndef SDL_test_memory_h_ 31 | #define SDL_test_memory_h_ 32 | 33 | #include "begin_code.h" 34 | /* Set up for C function definitions, even when using C++ */ 35 | #ifdef __cplusplus 36 | extern "C" { 37 | #endif 38 | 39 | 40 | /** 41 | * \brief Start tracking SDL memory allocations 42 | * 43 | * \note This should be called before any other SDL functions for complete tracking coverage 44 | */ 45 | int SDLTest_TrackAllocations(void); 46 | 47 | /** 48 | * \brief Print a log of any outstanding allocations 49 | * 50 | * \note This can be called after SDL_Quit() 51 | */ 52 | void SDLTest_LogAllocations(void); 53 | 54 | 55 | /* Ends C function definitions when using C++ */ 56 | #ifdef __cplusplus 57 | } 58 | #endif 59 | #include "close_code.h" 60 | 61 | #endif /* SDL_test_memory_h_ */ 62 | 63 | /* vi: set ts=4 sw=4 expandtab: */ 64 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/SDL_types.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_types.h 24 | * 25 | * \deprecated 26 | */ 27 | 28 | /* DEPRECATED */ 29 | #include "SDL_stdinc.h" 30 | -------------------------------------------------------------------------------- /code/SDL2/include-2.0.22/close_code.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file close_code.h 24 | * 25 | * This file reverses the effects of begin_code.h and should be included 26 | * after you finish any function and structure declarations in your headers 27 | */ 28 | 29 | #ifndef _begin_code_h 30 | #error close_code.h included without matching begin_code.h 31 | #endif 32 | #undef _begin_code_h 33 | 34 | /* Reset structure packing at previous byte alignment */ 35 | #if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) 36 | #ifdef __BORLANDC__ 37 | #pragma nopackwarning 38 | #endif 39 | #pragma pack(pop) 40 | #endif /* Compiler needs structure packing set */ 41 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_config.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2013 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | #ifndef _SDL_config_h 23 | #define _SDL_config_h 24 | 25 | #include "SDL_platform.h" 26 | 27 | /** 28 | * \file SDL_config.h 29 | */ 30 | 31 | /* Add any platform that doesn't build using the configure system. */ 32 | #if defined(__WIN32__) 33 | #include "SDL_config_windows.h" 34 | #elif defined(__MACOSX__) 35 | #include "SDL_config_macosx.h" 36 | #elif defined(__IPHONEOS__) 37 | #include "SDL_config_iphoneos.h" 38 | #elif defined(__ANDROID__) 39 | #include "SDL_config_android.h" 40 | #elif defined(__PSP__) 41 | #include "SDL_config_psp.h" 42 | #else 43 | /* This is a minimal configuration just to get SDL running on new platforms */ 44 | #include "SDL_config_minimal.h" 45 | #endif /* platform config */ 46 | 47 | #ifdef USING_GENERATED_CONFIG_H 48 | #error Wrong SDL_config.h, check your include path? 49 | #endif 50 | 51 | #endif /* _SDL_config_h */ 52 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_copying.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2013 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_name.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef _SDLname_h_ 3 | #define _SDLname_h_ 4 | 5 | #if defined(__STDC__) || defined(__cplusplus) 6 | #define NeedFunctionPrototypes 1 7 | #endif 8 | 9 | #define SDL_NAME(X) SDL_##X 10 | 11 | #endif /* _SDLname_h_ */ 12 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_opengles.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2013 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 1.X API headers. 26 | */ 27 | 28 | #ifdef __IPHONEOS__ 29 | #include 30 | #include 31 | #else 32 | #include 33 | #include 34 | #endif 35 | 36 | #ifndef APIENTRY 37 | #define APIENTRY 38 | #endif 39 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_opengles2.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2013 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 2.0 API headers. 26 | */ 27 | 28 | #ifdef __IPHONEOS__ 29 | #include 30 | #include 31 | #else 32 | #include 33 | #include 34 | #endif 35 | 36 | #ifndef APIENTRY 37 | #define APIENTRY 38 | #endif 39 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_revision.h: -------------------------------------------------------------------------------- 1 | #define SDL_REVISION "hg-7890:c031abe0b287" 2 | #define SDL_REVISION_NUMBER 7890 3 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/SDL_types.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2013 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_types.h 24 | * 25 | * \deprecated 26 | */ 27 | 28 | /* DEPRECATED */ 29 | #include "SDL_stdinc.h" 30 | -------------------------------------------------------------------------------- /code/SDL2/include-macppc/close_code.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2013 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file close_code.h 24 | * 25 | * This file reverses the effects of begin_code.h and should be included 26 | * after you finish any function and structure declarations in your headers 27 | */ 28 | 29 | #undef _begin_code_h 30 | 31 | /* Reset structure packing at previous byte alignment */ 32 | #if defined(_MSC_VER) || defined(__MWERKS__) || defined(__WATCOMC__) || defined(__BORLANDC__) 33 | #ifdef __BORLANDC__ 34 | #pragma nopackwarning 35 | #endif 36 | #pragma pack(pop) 37 | #endif /* Compiler needs structure packing set */ 38 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_copying.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_name.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | #ifndef SDLname_h_ 23 | #define SDLname_h_ 24 | 25 | #if defined(__STDC__) || defined(__cplusplus) 26 | #define NeedFunctionPrototypes 1 27 | #endif 28 | 29 | #define SDL_NAME(X) SDL_##X 30 | 31 | #endif /* SDLname_h_ */ 32 | 33 | /* vi: set ts=4 sw=4 expandtab: */ 34 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_opengles.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 1.X API headers. 26 | */ 27 | #include "SDL_config.h" 28 | 29 | #ifdef __IPHONEOS__ 30 | #include 31 | #include 32 | #else 33 | #include 34 | #include 35 | #endif 36 | 37 | #ifndef APIENTRY 38 | #define APIENTRY 39 | #endif 40 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_opengles2.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_opengles2.h 24 | * 25 | * This is a simple file to encapsulate the OpenGL ES 2.0 API headers. 26 | */ 27 | #include "SDL_config.h" 28 | 29 | #if !defined(_MSC_VER) && !defined(SDL_USE_BUILTIN_OPENGL_DEFINITIONS) 30 | 31 | #ifdef __IPHONEOS__ 32 | #include 33 | #include 34 | #else 35 | #include 36 | #include 37 | #include 38 | #endif 39 | 40 | #else /* _MSC_VER */ 41 | 42 | /* OpenGL ES2 headers for Visual Studio */ 43 | #include "SDL_opengles2_khrplatform.h" 44 | #include "SDL_opengles2_gl2platform.h" 45 | #include "SDL_opengles2_gl2.h" 46 | #include "SDL_opengles2_gl2ext.h" 47 | 48 | #endif /* _MSC_VER */ 49 | 50 | #ifndef APIENTRY 51 | #define APIENTRY GL_APIENTRY 52 | #endif 53 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_opengles2_gl2platform.h: -------------------------------------------------------------------------------- 1 | #ifndef __gl2platform_h_ 2 | #define __gl2platform_h_ 3 | 4 | /* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */ 5 | 6 | /* 7 | * This document is licensed under the SGI Free Software B License Version 8 | * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . 9 | */ 10 | 11 | /* Platform-specific types and definitions for OpenGL ES 2.X gl2.h 12 | * 13 | * Adopters may modify khrplatform.h and this file to suit their platform. 14 | * You are encouraged to submit all modifications to the Khronos group so that 15 | * they can be included in future versions of this file. Please submit changes 16 | * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) 17 | * by filing a bug against product "OpenGL-ES" component "Registry". 18 | */ 19 | 20 | /*#include */ 21 | 22 | #ifndef GL_APICALL 23 | #define GL_APICALL KHRONOS_APICALL 24 | #endif 25 | 26 | #ifndef GL_APIENTRY 27 | #define GL_APIENTRY KHRONOS_APIENTRY 28 | #endif 29 | 30 | #endif /* __gl2platform_h_ */ 31 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_revision.h: -------------------------------------------------------------------------------- 1 | #define SDL_REVISION "" 2 | #define SDL_REVISION_NUMBER 0 3 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_revision.h.cmake: -------------------------------------------------------------------------------- 1 | #cmakedefine SDL_REVISION "@SDL_REVISION@" 2 | #define SDL_REVISION_NUMBER 0 3 | 4 | #ifndef SDL_REVISION 5 | #define SDL_REVISION "" 6 | #endif 7 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_test_memory.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_test_memory.h 24 | * 25 | * Include file for SDL test framework. 26 | * 27 | * This code is a part of the SDL2_test library, not the main SDL library. 28 | */ 29 | 30 | #ifndef SDL_test_memory_h_ 31 | #define SDL_test_memory_h_ 32 | 33 | #include "begin_code.h" 34 | /* Set up for C function definitions, even when using C++ */ 35 | #ifdef __cplusplus 36 | extern "C" { 37 | #endif 38 | 39 | 40 | /** 41 | * \brief Start tracking SDL memory allocations 42 | * 43 | * \note This should be called before any other SDL functions for complete tracking coverage 44 | */ 45 | int SDLTest_TrackAllocations(void); 46 | 47 | /** 48 | * \brief Print a log of any outstanding allocations 49 | * 50 | * \note This can be called after SDL_Quit() 51 | */ 52 | void SDLTest_LogAllocations(void); 53 | 54 | 55 | /* Ends C function definitions when using C++ */ 56 | #ifdef __cplusplus 57 | } 58 | #endif 59 | #include "close_code.h" 60 | 61 | #endif /* SDL_test_memory_h_ */ 62 | 63 | /* vi: set ts=4 sw=4 expandtab: */ 64 | -------------------------------------------------------------------------------- /code/SDL2/include/SDL_types.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file SDL_types.h 24 | * 25 | * \deprecated 26 | */ 27 | 28 | /* DEPRECATED */ 29 | #include "SDL_stdinc.h" 30 | -------------------------------------------------------------------------------- /code/SDL2/include/close_code.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2022 Sam Lantinga 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | */ 21 | 22 | /** 23 | * \file close_code.h 24 | * 25 | * This file reverses the effects of begin_code.h and should be included 26 | * after you finish any function and structure declarations in your headers 27 | */ 28 | 29 | #ifndef _begin_code_h 30 | #error close_code.h included without matching begin_code.h 31 | #endif 32 | #undef _begin_code_h 33 | 34 | /* Reset structure packing at previous byte alignment */ 35 | #if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) 36 | #ifdef __BORLANDC__ 37 | #pragma nopackwarning 38 | #endif 39 | #pragma pack(pop) 40 | #endif /* Compiler needs structure packing set */ 41 | -------------------------------------------------------------------------------- /code/asm/matha.s: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | // math.s 24 | // x86 assembly-language math routines. 25 | 26 | #include "qasm.h" 27 | 28 | 29 | #if id386 30 | 31 | .text 32 | 33 | // TODO: rounding needed? 34 | // stack parameter offset 35 | #define val 4 36 | 37 | .globl C(Invert24To16) 38 | C(Invert24To16): 39 | 40 | movl val(%esp),%ecx 41 | movl $0x100,%edx // 0x10000000000 as dividend 42 | cmpl %edx,%ecx 43 | jle LOutOfRange 44 | 45 | subl %eax,%eax 46 | divl %ecx 47 | 48 | ret 49 | 50 | LOutOfRange: 51 | movl $0xFFFFFFFF,%eax 52 | ret 53 | 54 | #endif // id386 55 | -------------------------------------------------------------------------------- /code/asm/qasm-inline.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | #ifndef __ASM_INLINE_I386__ 23 | #define __ASM_INLINE_I386__ 24 | 25 | #include "../qcommon/q_platform.h" 26 | 27 | #if idx64 28 | #define EAX "%%rax" 29 | #define EBX "%%rbx" 30 | #define ESP "%%rsp" 31 | #define EDI "%%rdi" 32 | #else 33 | #define EAX "%%eax" 34 | #define EBX "%%ebx" 35 | #define ESP "%%esp" 36 | #define EDI "%%edi" 37 | #endif 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /code/asm/qasm.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | #ifndef __ASM_I386__ 23 | #define __ASM_I386__ 24 | 25 | #include "../qcommon/q_platform.h" 26 | 27 | #ifdef __ELF__ 28 | .section .note.GNU-stack,"",@progbits 29 | #endif 30 | 31 | #if defined(__ELF__) || defined(__WIN64__) 32 | #define C(label) label 33 | #else 34 | #define C(label) _##label 35 | #endif 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/.gitignore: -------------------------------------------------------------------------------- 1 | crypt-*.tar.bz2 2 | tfm-*.tar.xz 3 | libtomcrypt-* 4 | tomsfastmath-* 5 | rsa_make_keys 6 | rsa_sign 7 | rsa_verify 8 | *.exe 9 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/build-rsa-tools.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export TFMDIR="tomsfastmath-0.13.1" 4 | export LTCDIR="libtomcrypt-1.17" 5 | 6 | OSTYPE=`uname -s` 7 | if [ -z "$CC" ]; then 8 | if [ "`uname -o`" = "Cygwin" ]; then 9 | export CC=/usr/bin/i686-w64-mingw32-gcc 10 | else 11 | export CC=cc 12 | fi 13 | fi 14 | 15 | function build { 16 | if [ "$OSTYPE" = "Darwin" ]; then 17 | $CC -mmacosx-version-min=10.7 -DMAC_OS_X_VERSION_MIN_REQUIRED=1070 -I $TFMDIR/src/headers -I $LTCDIR/src/headers -o "$1" -Wall -O3 "$1.c" rsa_common.c $LTCDIR/libtomcrypt.a $TFMDIR/libtfm.a 18 | else 19 | $CC -I $TFMDIR/src/headers -I $LTCDIR/src/headers -o "$1" -Wall -O3 "$1.c" rsa_common.c $LTCDIR/libtomcrypt.a $TFMDIR/libtfm.a 20 | fi 21 | } 22 | 23 | set -e 24 | set -x 25 | 26 | ./build-libtom-unix.sh 27 | build rsa_make_keys 28 | build rsa_sign 29 | build rsa_verify 30 | 31 | set +x 32 | echo "rsa_tools are compiled!" 33 | 34 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/rsa_common.c: -------------------------------------------------------------------------------- 1 | #include "rsa_common.h" 2 | 3 | void fail(const char *fmt, ...) 4 | { 5 | va_list ap; 6 | va_start(ap, fmt); 7 | vfprintf(stderr, fmt, ap); 8 | va_end(ap); 9 | fputs("\n", stderr); 10 | fflush(stderr); 11 | exit(1); 12 | } 13 | 14 | void write_file(const char *fname, const void *buf, const unsigned long len) 15 | { 16 | FILE *io = fopen(fname, "wb"); 17 | if (!io) { 18 | fail("Can't open '%s' for writing: %s", fname, strerror(errno)); 19 | } 20 | 21 | if (fwrite(buf, len, 1, io) != 1) { 22 | fail("Couldn't write '%s': %s", fname, strerror(errno)); 23 | } 24 | 25 | if (fclose(io) != 0) { 26 | fail("Couldn't flush '%s' to disk: %s", fname, strerror(errno)); 27 | } 28 | } 29 | 30 | void read_file(const char *fname, void *buf, unsigned long *len) 31 | { 32 | ssize_t br; 33 | FILE *io = fopen(fname, "rb"); 34 | if (!io) { 35 | fail("Can't open '%s' for reading: %s", fname, strerror(errno)); 36 | } 37 | 38 | br = fread(buf, 1, *len, io); 39 | if (ferror(io)) { 40 | fail("Couldn't read '%s': %s", fname, strerror(errno)); 41 | } else if (!feof(io)) { 42 | fail("Buffer too small to read '%s'", fname); 43 | } 44 | fclose(io); 45 | 46 | *len = (unsigned long) br; 47 | } 48 | 49 | void read_rsakey(rsa_key *key, const char *fname) 50 | { 51 | unsigned char buf[4096]; 52 | unsigned long len = sizeof (buf); 53 | int rc; 54 | 55 | read_file(fname, buf, &len); 56 | 57 | if ((rc = rsa_import(buf, len, key)) != CRYPT_OK) { 58 | fail("rsa_import for '%s' failed: %s", fname, error_to_string(rc)); 59 | } 60 | } 61 | 62 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/rsa_common.h: -------------------------------------------------------------------------------- 1 | #ifndef _INCL_RSA_COMMON_H_ 2 | #define _INCL_RSA_COMMON_H_ 1 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | #define TFM_DESC 9 | #define LTC_NO_ROLC 10 | #include "tomcrypt.h" 11 | 12 | #define SALT_LEN 8 13 | 14 | #if defined(__GNUC__) || defined(__clang__) 15 | #define NEVER_RETURNS __attribute__((noreturn)) 16 | #define PRINTF_FUNC(fmtargnum, dotargnum) __attribute__ (( format( __printf__, fmtargnum, dotargnum ))) 17 | #else 18 | #define NEVER_RETURNS 19 | #define PRINTF_FUNC(fmtargnum, dotargnum) 20 | #endif 21 | 22 | void fail(const char *fmt, ...) NEVER_RETURNS PRINTF_FUNC(1, 2); 23 | void write_file(const char *fname, const void *buf, const unsigned long len); 24 | void read_file(const char *fname, void *buf, unsigned long *len); 25 | void read_rsakey(rsa_key *key, const char *fname); 26 | 27 | #endif 28 | 29 | /* end of rsa_common.h ... */ 30 | 31 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/rsa_make_keys.c: -------------------------------------------------------------------------------- 1 | #include "rsa_common.h" 2 | 3 | static void write_rsakey(rsa_key *key, const int type, const char *fname) 4 | { 5 | unsigned char buf[4096]; 6 | unsigned long len = sizeof (buf); 7 | int rc; 8 | 9 | if ((rc = rsa_export(buf, &len, type, key)) != CRYPT_OK) { 10 | fail("rsa_export for '%s' failed: %s", fname, error_to_string(rc)); 11 | } 12 | write_file(fname, buf, len); 13 | } 14 | 15 | int main(int argc, char **argv) 16 | { 17 | int rc = 0; 18 | prng_state prng; 19 | int prng_index; 20 | rsa_key key; 21 | 22 | ltc_mp = tfm_desc; 23 | prng_index = register_prng(&sprng_desc); /* (fortuna_desc is a good choice if your platform's PRNG sucks.) */ 24 | 25 | if (prng_index == -1) { 26 | fail("Failed to register a RNG"); 27 | } 28 | 29 | if ((rc = rng_make_prng(128, prng_index, &prng, NULL)) != CRYPT_OK) { 30 | fail("rng_make_prng failed: %s", error_to_string(rc)); 31 | } 32 | 33 | if ((rc = rsa_make_key(&prng, prng_index, 256, 65537, &key)) != CRYPT_OK) { 34 | fail("rng_make_key failed: %s", error_to_string(rc)); 35 | } 36 | 37 | write_rsakey(&key, PK_PRIVATE, "privatekey.bin"); 38 | write_rsakey(&key, PK_PUBLIC, "publickey.bin"); 39 | 40 | rsa_free(&key); 41 | 42 | return 0; 43 | } 44 | 45 | /* end of rsa_make_keys.c ... */ 46 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/rsa_verify.c: -------------------------------------------------------------------------------- 1 | #include "rsa_common.h" 2 | 3 | static void verify_file(const char *fname, rsa_key *key, const int hash_index) 4 | { 5 | const size_t sigfnamelen = strlen(fname) + 5; 6 | char *sigfname = (char *) malloc(sigfnamelen); 7 | unsigned char hash[256]; 8 | unsigned long hashlen = sizeof (hash); 9 | unsigned char sig[1024]; 10 | unsigned long siglen = sizeof (sig); 11 | int status = 0; 12 | int rc = 0; 13 | 14 | if (!sigfname) { 15 | fail("out of memory"); 16 | } 17 | 18 | snprintf(sigfname, sigfnamelen, "%s.sig", fname); 19 | read_file(sigfname, sig, &siglen); 20 | free(sigfname); 21 | 22 | if ((rc = hash_file(hash_index, fname, hash, &hashlen)) != CRYPT_OK) { 23 | fail("hash_file for '%s' failed: %s", fname, error_to_string(rc)); 24 | } 25 | 26 | if ((rc = rsa_verify_hash(sig, siglen, hash, hashlen, hash_index, SALT_LEN, &status, key)) != CRYPT_OK) { 27 | fail("rsa_verify_hash for '%s' failed: %s", fname, error_to_string(rc)); 28 | } 29 | 30 | if (!status) { 31 | fail("Invalid signature for '%s'! Don't trust this file!", fname); 32 | } 33 | } 34 | 35 | int main(int argc, char **argv) 36 | { 37 | int hash_index; 38 | rsa_key key; 39 | int i; 40 | 41 | ltc_mp = tfm_desc; 42 | 43 | hash_index = register_hash(&sha256_desc); 44 | if (hash_index == -1) { 45 | fail("Failed to register sha256 hasher"); 46 | } 47 | 48 | read_rsakey(&key, "publickey.bin"); 49 | 50 | for (i = 1; i < argc; i++) { 51 | verify_file(argv[i], &key, hash_index); 52 | } 53 | 54 | rsa_free(&key); 55 | 56 | return 0; 57 | } 58 | 59 | /* end of rsa_verify.c ... */ 60 | 61 | -------------------------------------------------------------------------------- /code/autoupdater/rsa_tools/test-rsa-tools.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [ -f privatekey.bin ]; then 4 | echo "move your existing keys out of the way." 5 | exit 1 6 | fi 7 | 8 | ( ./rsa_make_keys && echo "key making okay") || echo "key making NOT okay" 9 | echo "The quick brown fox jumped over the lazy dog." >testmsg.txt 10 | ( ./rsa_sign testmsg.txt && echo "signing okay" ) || echo "signing NOT okay" 11 | ( ./rsa_verify testmsg.txt && echo "basic verifying okay" ) || echo "basic verifying NOT okay" 12 | echo "The quick brown fox jumped over the lazy dog!" >testmsg.txt 13 | ( ./rsa_verify testmsg.txt 2>/dev/null && echo "tamper test NOT okay" ) || echo "tamper test okay" 14 | echo "The quick brown fox jumped over the lazy dog." >testmsg.txt 15 | ( ./rsa_verify testmsg.txt && echo "reverify okay" ) || echo "reverify NOT okay" 16 | rm -f testmsg.txt testmsg.txt.sig publickey.bin privatekey.bin 17 | 18 | -------------------------------------------------------------------------------- /code/botlib/be_aas_cluster.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: be_aas_cluster.h 25 | * 26 | * desc: AAS 27 | * 28 | * $Archive: /source/code/botlib/be_aas_cluster.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | #ifdef AASINTERN 33 | //initialize the AAS clustering 34 | void AAS_InitClustering(void); 35 | // 36 | void AAS_SetViewPortalsAsClusterPortals(void); 37 | #endif //AASINTERN 38 | 39 | -------------------------------------------------------------------------------- /code/botlib/be_aas_file.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: be_aas_file.h 25 | * 26 | * desc: AAS 27 | * 28 | * $Archive: /source/code/botlib/be_aas_file.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | #ifdef AASINTERN 33 | //loads the AAS file with the given name 34 | int AAS_LoadAASFile(char *filename); 35 | //writes an AAS file with the given name 36 | qboolean AAS_WriteAASFile(char *filename); 37 | //dumps the loaded AAS data 38 | void AAS_DumpAASData(void); 39 | //print AAS file information 40 | void AAS_FileInfo(void); 41 | #endif //AASINTERN 42 | 43 | -------------------------------------------------------------------------------- /code/botlib/be_aas_funcs.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: be_aas_funcs.h 25 | * 26 | * desc: AAS 27 | * 28 | * $Archive: /source/code/botlib/be_aas_funcs.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | #ifndef BSPCINCLUDE 33 | 34 | #include "be_aas_main.h" 35 | #include "be_aas_entity.h" 36 | #include "be_aas_sample.h" 37 | #include "be_aas_cluster.h" 38 | #include "be_aas_reach.h" 39 | #include "be_aas_route.h" 40 | #include "be_aas_routealt.h" 41 | #include "be_aas_debug.h" 42 | #include "be_aas_file.h" 43 | #include "be_aas_optimize.h" 44 | #include "be_aas_bsp.h" 45 | #include "be_aas_move.h" 46 | 47 | #endif //BSPCINCLUDE 48 | -------------------------------------------------------------------------------- /code/botlib/be_aas_optimize.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: be_aas_optimize.h 25 | * 26 | * desc: AAS 27 | * 28 | * $Archive: /source/code/botlib/be_aas_optimize.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | void AAS_Optimize(void); 33 | 34 | -------------------------------------------------------------------------------- /code/botlib/be_aas_routealt.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: be_aas_routealt.h 25 | * 26 | * desc: AAS 27 | * 28 | * $Archive: /source/code/botlib/be_aas_routealt.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | #ifdef AASINTERN 33 | void AAS_InitAlternativeRouting(void); 34 | void AAS_ShutdownAlternativeRouting(void); 35 | #endif //AASINTERN 36 | 37 | 38 | int AAS_AlternativeRouteGoals(vec3_t start, int startareanum, vec3_t goal, int goalareanum, int travelflags, 39 | aas_altroutegoal_t *altroutegoals, int maxaltroutegoals, 40 | int type); 41 | -------------------------------------------------------------------------------- /code/botlib/be_ai_gen.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | 24 | /***************************************************************************** 25 | * name: be_ai_gen.h 26 | * 27 | * desc: genetic selection 28 | * 29 | * $Archive: /source/code/botlib/be_ai_gen.h $ 30 | * 31 | *****************************************************************************/ 32 | 33 | int GeneticParentsAndChildSelection(int numranks, float *ranks, int *parent1, int *parent2, int *child); 34 | -------------------------------------------------------------------------------- /code/botlib/l_crc.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | typedef unsigned short crc_t; 24 | 25 | void CRC_Init(unsigned short *crcvalue); 26 | void CRC_ProcessByte(unsigned short *crcvalue, byte data); 27 | unsigned short CRC_Value(unsigned short crcvalue); 28 | unsigned short CRC_ProcessString(unsigned char *data, int length); 29 | void CRC_ContinueProcessString(unsigned short *crc, char *data, int length); 30 | -------------------------------------------------------------------------------- /code/botlib/l_log.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: l_log.h 25 | * 26 | * desc: log file 27 | * 28 | * $Archive: /source/code/botlib/l_log.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | //open a log file 33 | void Log_Open(char *filename); 34 | //close the current log file 35 | void Log_Close(void); 36 | //close log file if present 37 | void Log_Shutdown(void); 38 | //write to the current opened log file 39 | void QDECL Log_Write(char *fmt, ...) __attribute__ ((format (printf, 1, 2))); 40 | //write to the current opened log file with a time stamp 41 | void QDECL Log_WriteTimeStamped(char *fmt, ...) __attribute__ ((format (printf, 1, 2))); 42 | //returns a pointer to the log file 43 | FILE *Log_FilePointer(void); 44 | //flush log file 45 | void Log_Flush(void); 46 | 47 | -------------------------------------------------------------------------------- /code/botlib/l_utils.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | /***************************************************************************** 24 | * name: l_util.h 25 | * 26 | * desc: utils 27 | * 28 | * $Archive: /source/code/botlib/l_util.h $ 29 | * 30 | *****************************************************************************/ 31 | 32 | #define Vector2Angles(v,a) vectoangles(v,a) 33 | #define Maximum(x,y) (x > y ? x : y) 34 | #define Minimum(x,y) (x < y ? x : y) 35 | -------------------------------------------------------------------------------- /code/client/libmumblelink.h: -------------------------------------------------------------------------------- 1 | /* libmumblelink.h -- mumble link interface 2 | 3 | Copyright (C) 2008 Ludwig Nussel 4 | 5 | This software is provided 'as-is', without any express or implied 6 | warranty. In no event will the authors be held liable for any damages 7 | arising from the use of this software. 8 | 9 | Permission is granted to anyone to use this software for any purpose, 10 | including commercial applications, and to alter it and redistribute it 11 | freely, subject to the following restrictions: 12 | 13 | 1. The origin of this software must not be misrepresented; you must not 14 | claim that you wrote the original software. If you use this software 15 | in a product, an acknowledgment in the product documentation would be 16 | appreciated but is not required. 17 | 2. Altered source versions must be plainly marked as such, and must not be 18 | misrepresented as being the original software. 19 | 3. This notice may not be removed or altered from any source distribution. 20 | 21 | */ 22 | 23 | int mumble_link(const char* name); 24 | int mumble_islinked(void); 25 | void mumble_update_coordinates(float fPosition[3], float fFront[3], float fTop[3]); 26 | 27 | /* new for mumble 1.2: also set camera position */ 28 | void mumble_update_coordinates2(float fAvatarPosition[3], float fAvatarFront[3], float fAvatarTop[3], 29 | float fCameraPosition[3], float fCameraFront[3], float fCameraTop[3]); 30 | 31 | void mumble_set_description(const char* description); 32 | void mumble_set_context(const unsigned char* context, size_t len); 33 | void mumble_set_identity(const char* identity); 34 | 35 | void mumble_unlink(void); 36 | -------------------------------------------------------------------------------- /code/curl-7.54.0/include/curl/stdcheaders.h: -------------------------------------------------------------------------------- 1 | #ifndef __STDC_HEADERS_H 2 | #define __STDC_HEADERS_H 3 | /*************************************************************************** 4 | * _ _ ____ _ 5 | * Project ___| | | | _ \| | 6 | * / __| | | | |_) | | 7 | * | (__| |_| | _ <| |___ 8 | * \___|\___/|_| \_\_____| 9 | * 10 | * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. 11 | * 12 | * This software is licensed as described in the file COPYING, which 13 | * you should have received as part of this distribution. The terms 14 | * are also available at https://curl.haxx.se/docs/copyright.html. 15 | * 16 | * You may opt to use, copy, modify, merge, publish, distribute and/or sell 17 | * copies of the Software, and permit persons to whom the Software is 18 | * furnished to do so, under the terms of the COPYING file. 19 | * 20 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 21 | * KIND, either express or implied. 22 | * 23 | ***************************************************************************/ 24 | 25 | #include 26 | 27 | size_t fread(void *, size_t, size_t, FILE *); 28 | size_t fwrite(const void *, size_t, size_t, FILE *); 29 | 30 | int strcasecmp(const char *, const char *); 31 | int strncasecmp(const char *, const char *, size_t); 32 | 33 | #endif /* __STDC_HEADERS_H */ 34 | -------------------------------------------------------------------------------- /code/game/ai_cmd.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | 24 | /***************************************************************************** 25 | * name: ai_cmd.h 26 | * 27 | * desc: Quake3 bot AI 28 | * 29 | * $Archive: /source/code/botai/ai_chat.c $ 30 | * 31 | *****************************************************************************/ 32 | 33 | extern int notleader[MAX_CLIENTS]; 34 | 35 | int BotMatchMessage(bot_state_t *bs, char *message); 36 | void BotPrintTeamGoal(bot_state_t *bs); 37 | 38 | -------------------------------------------------------------------------------- /code/game/ai_team.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | 24 | /***************************************************************************** 25 | * name: ai_team.h 26 | * 27 | * desc: Quake3 bot AI 28 | * 29 | * $Archive: /source/code/botai/ai_chat.c $ 30 | * 31 | *****************************************************************************/ 32 | 33 | void BotTeamAI(bot_state_t *bs); 34 | int BotGetTeamMateTaskPreference(bot_state_t *bs, int teammate); 35 | void BotSetTeamMateTaskPreference(bot_state_t *bs, int teammate, int preference); 36 | void BotVoiceChat(bot_state_t *bs, int toclient, char *voicechat); 37 | void BotVoiceChatOnly(bot_state_t *bs, int toclient, char *voicechat); 38 | 39 | 40 | -------------------------------------------------------------------------------- /code/game/ai_vcmd.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | 24 | /***************************************************************************** 25 | * name: ai_vcmd.h 26 | * 27 | * desc: Quake3 bot AI 28 | * 29 | * $Archive: /source/code/botai/ai_vcmd.c $ 30 | * 31 | *****************************************************************************/ 32 | 33 | int BotVoiceChatCommand(bot_state_t *bs, int mode, char *voicechat); 34 | void BotVoiceChat_Defend(bot_state_t *bs, int client, int mode); 35 | 36 | 37 | -------------------------------------------------------------------------------- /code/game/g_mem.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | // 24 | // g_mem.c 25 | // 26 | 27 | 28 | #include "g_local.h" 29 | 30 | 31 | #define POOLSIZE (256 * 1024) 32 | 33 | static char memoryPool[POOLSIZE]; 34 | static int allocPoint; 35 | 36 | void *G_Alloc( int size ) { 37 | char *p; 38 | 39 | if ( g_debugAlloc.integer ) { 40 | G_Printf( "G_Alloc of %i bytes (%i left)\n", size, POOLSIZE - allocPoint - ( ( size + 31 ) & ~31 ) ); 41 | } 42 | 43 | if ( allocPoint + size > POOLSIZE ) { 44 | G_Error( "G_Alloc: failed on allocation of %i bytes", size ); 45 | return NULL; 46 | } 47 | 48 | p = &memoryPool[allocPoint]; 49 | 50 | allocPoint += ( size + 31 ) & ~31; 51 | 52 | return p; 53 | } 54 | 55 | void G_InitMemory( void ) { 56 | allocPoint = 0; 57 | } 58 | 59 | void Svcmd_GameMem_f( void ) { 60 | G_Printf( "Game memory status: %i out of %i bytes allocated\n", allocPoint, POOLSIZE ); 61 | } 62 | -------------------------------------------------------------------------------- /code/game/syn.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #define CONTEXT_ALL 0xFFFFFFFF 24 | #define CONTEXT_NORMAL 1 25 | #define CONTEXT_NEARBYITEM 2 26 | #define CONTEXT_CTFREDTEAM 4 27 | #define CONTEXT_CTFBLUETEAM 8 28 | #define CONTEXT_REPLY 16 29 | #define CONTEXT_OBELISKREDTEAM 32 30 | #define CONTEXT_OBELISKBLUETEAM 64 31 | #define CONTEXT_HARVESTERREDTEAM 128 32 | #define CONTEXT_HARVESTERBLUETEAM 256 33 | 34 | #define CONTEXT_NAMES 1024 35 | -------------------------------------------------------------------------------- /code/jpeg-8c/jconfig.h: -------------------------------------------------------------------------------- 1 | /* jconfig.h. Generated from jconfig.cfg by configure. */ 2 | /* jconfig.cfg --- source file edited by configure script */ 3 | /* see jconfig.txt for explanations */ 4 | 5 | /* Define this if you get warnings about undefined structures. */ 6 | /* #undef INCOMPLETE_TYPES_BROKEN */ 7 | 8 | #define HAVE_PROTOTYPES 1 9 | #define HAVE_UNSIGNED_CHAR 1 10 | #define HAVE_UNSIGNED_SHORT 1 11 | /* #undef void */ 12 | /* #undef const */ 13 | /* #undef CHAR_IS_UNSIGNED */ 14 | 15 | #ifdef JPEG_INTERNALS 16 | 17 | #define HAVE_STDDEF_H 1 18 | #define HAVE_STDLIB_H 1 19 | #define HAVE_LOCALE_H 1 20 | /* #undef NEED_BSD_STRINGS */ 21 | /* #undef NEED_SYS_TYPES_H */ 22 | /* #undef NEED_FAR_POINTERS */ 23 | /* #undef NEED_SHORT_EXTERNAL_NAMES */ 24 | 25 | /* Define "boolean" as unsigned char, not int, on Windows systems. */ 26 | #ifdef _WIN32 27 | #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ 28 | typedef unsigned char boolean; 29 | #endif 30 | #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ 31 | #endif 32 | 33 | /* #undef RIGHT_SHIFT_IS_UNSIGNED */ 34 | #ifdef _MSC_VER 35 | #define INLINE __inline 36 | #else 37 | #define INLINE __inline__ 38 | #endif 39 | /* These are for configuring the JPEG memory manager. */ 40 | /* #undef DEFAULT_MAX_MEM */ 41 | /* #undef NO_MKTEMP */ 42 | 43 | #endif /* JPEG_INTERNALS */ 44 | 45 | #ifdef JPEG_CJPEG_DJPEG 46 | 47 | #define BMP_SUPPORTED /* BMP image file format */ 48 | #define GIF_SUPPORTED /* GIF image file format */ 49 | #define PPM_SUPPORTED /* PBMPLUS PPM/PGM image file format */ 50 | /* #undef RLE_SUPPORTED */ 51 | #define TARGA_SUPPORTED /* Targa image file format */ 52 | 53 | /* #undef TWO_FILE_COMMANDLINE */ 54 | /* #undef NEED_SIGNAL_CATCHER */ 55 | /* #undef DONT_USE_B_MODE */ 56 | 57 | /* Define this if you want percent-done progress reports from cjpeg/djpeg. */ 58 | /* #undef PROGRESS_REPORT */ 59 | 60 | #endif /* JPEG_CJPEG_DJPEG */ 61 | -------------------------------------------------------------------------------- /code/jpeg-8c/jversion.h: -------------------------------------------------------------------------------- 1 | /* 2 | * jversion.h 3 | * 4 | * Copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding. 5 | * This file is part of the Independent JPEG Group's software. 6 | * For conditions of distribution and use, see the accompanying README file. 7 | * 8 | * This file contains software version identification. 9 | */ 10 | 11 | 12 | #define JVERSION "8c 16-Jan-2011" 13 | 14 | #define JCOPYRIGHT "Copyright (C) 2011, Thomas G. Lane, Guido Vollbeding" 15 | -------------------------------------------------------------------------------- /code/libogg-1.3.3/include/ogg/config_types.h: -------------------------------------------------------------------------------- 1 | #ifndef __CONFIG_TYPES_H__ 2 | #define __CONFIG_TYPES_H__ 3 | 4 | /* these are filled in by configure */ 5 | /* #define INCLUDE_INTTYPES_H 1 */ 6 | #define INCLUDE_STDINT_H 1 7 | /* #define INCLUDE_SYS_TYPES_H 1 */ 8 | 9 | #if INCLUDE_INTTYPES_H 10 | # include 11 | #endif 12 | #if INCLUDE_STDINT_H 13 | # include 14 | #endif 15 | #if INCLUDE_SYS_TYPES_H 16 | # include 17 | #endif 18 | 19 | typedef int16_t ogg_int16_t; 20 | typedef uint16_t ogg_uint16_t; 21 | typedef int32_t ogg_int32_t; 22 | typedef uint32_t ogg_uint32_t; 23 | typedef int64_t ogg_int64_t; 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /code/libs/macosx-ub/libSDL2-2.0.0.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/macosx-ub/libSDL2-2.0.0.dylib -------------------------------------------------------------------------------- /code/libs/macosx-ub/libSDL2main.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/macosx-ub/libSDL2main.a -------------------------------------------------------------------------------- /code/libs/macosx-ub2/libSDL2-2.0.0.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/macosx-ub2/libSDL2-2.0.0.dylib -------------------------------------------------------------------------------- /code/libs/macosx-ub2/libSDL2main.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/macosx-ub2/libSDL2main.a -------------------------------------------------------------------------------- /code/libs/win32/SDL2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win32/SDL2.dll -------------------------------------------------------------------------------- /code/libs/win32/SDL2.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win32/SDL2.lib -------------------------------------------------------------------------------- /code/libs/win32/SDL2main.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win32/SDL2main.lib -------------------------------------------------------------------------------- /code/libs/win32/libSDL2.dll.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win32/libSDL2.dll.a -------------------------------------------------------------------------------- /code/libs/win32/libSDL2main.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win32/libSDL2main.a -------------------------------------------------------------------------------- /code/libs/win32/libcurl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win32/libcurl.a -------------------------------------------------------------------------------- /code/libs/win64/SDL264.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win64/SDL264.dll -------------------------------------------------------------------------------- /code/libs/win64/SDL264.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win64/SDL264.lib -------------------------------------------------------------------------------- /code/libs/win64/SDL264main.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win64/SDL264main.lib -------------------------------------------------------------------------------- /code/libs/win64/libSDL264.dll.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win64/libSDL264.dll.a -------------------------------------------------------------------------------- /code/libs/win64/libSDL264main.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win64/libSDL264main.a -------------------------------------------------------------------------------- /code/libs/win64/libcurl.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/libs/win64/libcurl.a -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/highlevel.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: highlevel encoder setup struct separated out for vorbisenc clarity 14 | 15 | ********************************************************************/ 16 | 17 | typedef struct highlevel_byblocktype { 18 | double tone_mask_setting; 19 | double tone_peaklimit_setting; 20 | double noise_bias_setting; 21 | double noise_compand_setting; 22 | } highlevel_byblocktype; 23 | 24 | typedef struct highlevel_encode_setup { 25 | int set_in_stone; 26 | const void *setup; 27 | double base_setting; 28 | 29 | double impulse_noisetune; 30 | 31 | /* bitrate management below all settable */ 32 | float req; 33 | int managed; 34 | long bitrate_min; 35 | long bitrate_av; 36 | double bitrate_av_damp; 37 | long bitrate_max; 38 | long bitrate_reservoir; 39 | double bitrate_reservoir_bias; 40 | 41 | int impulse_block_p; 42 | int noise_normalize_p; 43 | int coupling_p; 44 | 45 | double stereo_point_setting; 46 | double lowpass_kHz; 47 | int lowpass_altered; 48 | 49 | double ath_floating_dB; 50 | double ath_absolute_dB; 51 | 52 | double amplitude_track_dBpersec; 53 | double trigger_setting; 54 | 55 | highlevel_byblocktype block[4]; /* padding, impulse, transition, long */ 56 | 57 | } highlevel_encode_setup; 58 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/lookup.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: lookup based functions 14 | 15 | ********************************************************************/ 16 | 17 | #ifndef _V_LOOKUP_H_ 18 | 19 | #ifdef FLOAT_LOOKUP 20 | extern float vorbis_coslook(float a); 21 | extern float vorbis_invsqlook(float a); 22 | extern float vorbis_invsq2explook(int a); 23 | extern float vorbis_fromdBlook(float a); 24 | #endif 25 | #ifdef INT_LOOKUP 26 | extern long vorbis_invsqlook_i(long a,long e); 27 | extern long vorbis_coslook_i(long a); 28 | extern float vorbis_fromdBlook_i(long a); 29 | #endif 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/lpc.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: LPC low level routines 14 | 15 | ********************************************************************/ 16 | 17 | #ifndef _V_LPC_H_ 18 | #define _V_LPC_H_ 19 | 20 | #include "vorbis/codec.h" 21 | 22 | /* simple linear scale LPC code */ 23 | extern float vorbis_lpc_from_data(float *data,float *lpc,int n,int m); 24 | 25 | extern void vorbis_lpc_predict(float *coeff,float *prime,int m, 26 | float *data,long n); 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/lsp.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: LSP (also called LSF) conversion routines 14 | 15 | ********************************************************************/ 16 | 17 | 18 | #ifndef _V_LSP_H_ 19 | #define _V_LSP_H_ 20 | 21 | extern int vorbis_lpc_to_lsp(float *lpc,float *lsp,int m); 22 | 23 | extern void vorbis_lsp_to_curve(float *curve,int *map,int n,int ln, 24 | float *lsp,int m, 25 | float amp,float ampoffset); 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/registry.c: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: registry for time, floor, res backends and channel mappings 14 | 15 | ********************************************************************/ 16 | 17 | #include "vorbis/codec.h" 18 | #include "codec_internal.h" 19 | #include "registry.h" 20 | #include "misc.h" 21 | /* seems like major overkill now; the backend numbers will grow into 22 | the infrastructure soon enough */ 23 | 24 | extern const vorbis_func_floor floor0_exportbundle; 25 | extern const vorbis_func_floor floor1_exportbundle; 26 | extern const vorbis_func_residue residue0_exportbundle; 27 | extern const vorbis_func_residue residue1_exportbundle; 28 | extern const vorbis_func_residue residue2_exportbundle; 29 | extern const vorbis_func_mapping mapping0_exportbundle; 30 | 31 | const vorbis_func_floor *const _floor_P[]={ 32 | &floor0_exportbundle, 33 | &floor1_exportbundle, 34 | }; 35 | 36 | const vorbis_func_residue *const _residue_P[]={ 37 | &residue0_exportbundle, 38 | &residue1_exportbundle, 39 | &residue2_exportbundle, 40 | }; 41 | 42 | const vorbis_func_mapping *const _mapping_P[]={ 43 | &mapping0_exportbundle, 44 | }; 45 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/registry.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: registry for time, floor, res backends and channel mappings 14 | 15 | ********************************************************************/ 16 | 17 | #ifndef _V_REG_H_ 18 | #define _V_REG_H_ 19 | 20 | #define VI_TRANSFORMB 1 21 | #define VI_WINDOWB 1 22 | #define VI_TIMEB 1 23 | #define VI_FLOORB 2 24 | #define VI_RESB 3 25 | #define VI_MAPB 1 26 | 27 | extern const vorbis_func_floor *const _floor_P[]; 28 | extern const vorbis_func_residue *const _residue_P[]; 29 | extern const vorbis_func_mapping *const _mapping_P[]; 30 | 31 | #endif 32 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/smallft.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: fft transform 14 | 15 | ********************************************************************/ 16 | 17 | #ifndef _V_SMFT_H_ 18 | #define _V_SMFT_H_ 19 | 20 | #include "vorbis/codec.h" 21 | 22 | typedef struct { 23 | int n; 24 | float *trigcache; 25 | int *splitcache; 26 | } drft_lookup; 27 | 28 | extern void drft_forward(drft_lookup *l,float *data); 29 | extern void drft_backward(drft_lookup *l,float *data); 30 | extern void drft_init(drft_lookup *l,int n); 31 | extern void drft_clear(drft_lookup *l); 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /code/libvorbis-1.3.6/lib/window.h: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * 9 | * by the Xiph.Org Foundation http://www.xiph.org/ * 10 | * * 11 | ******************************************************************** 12 | 13 | function: window functions 14 | 15 | ********************************************************************/ 16 | 17 | #ifndef _V_WINDOW_ 18 | #define _V_WINDOW_ 19 | 20 | extern const float *_vorbis_window_get(int n); 21 | extern void _vorbis_apply_window(float *d,int *winno,long *blocksizes, 22 | int lW,int W,int nW); 23 | 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /code/null/mac_net.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #include "../qcommon/q_shared.h" 24 | #include "../qcommon/qcommon.h" 25 | 26 | /* 27 | ============= 28 | NET_StringToAdr 29 | 30 | localhost 31 | idnewt 32 | idnewt:28000 33 | 192.246.40.70 34 | 192.246.40.70:28000 35 | ============= 36 | */ 37 | qboolean NET_StringToAdr (char *s, netadr_t *a) 38 | { 39 | if (!strcmp (s, "localhost")) { 40 | memset (a, 0, sizeof(*a)); 41 | a->type = NA_LOOPBACK; 42 | return true; 43 | } 44 | 45 | return false; 46 | } 47 | 48 | /* 49 | ================== 50 | Sys_SendPacket 51 | ================== 52 | */ 53 | void Sys_SendPacket( int length, void *data, netadr_t to ) { 54 | } 55 | -------------------------------------------------------------------------------- /code/null/null_glimp.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | #include "../renderercommon/tr_common.h" 23 | 24 | 25 | qboolean ( * qwglSwapIntervalEXT)( int interval ); 26 | void ( * qglMultiTexCoord2fARB )( GLenum texture, float s, float t ); 27 | void ( * qglActiveTextureARB )( GLenum texture ); 28 | void ( * qglClientActiveTextureARB )( GLenum texture ); 29 | 30 | 31 | void ( * qglLockArraysEXT)( int, int); 32 | void ( * qglUnlockArraysEXT) ( void ); 33 | 34 | 35 | void GLimp_EndFrame( void ) { 36 | } 37 | 38 | void GLimp_Init( void ) { 39 | } 40 | 41 | void GLimp_Shutdown( void ) { 42 | } 43 | 44 | void GLimp_EnableLogging( qboolean enable ) { 45 | } 46 | 47 | void GLimp_LogComment( char *comment ) { 48 | } 49 | 50 | qboolean QGL_Init( const char *dllname ) { 51 | return qtrue; 52 | } 53 | 54 | void QGL_Shutdown( void ) { 55 | } 56 | 57 | void GLimp_SetGamma( unsigned char red[256], unsigned char green[256], unsigned char blue[256] ) { 58 | } 59 | 60 | void GLimp_Minimize( void ) { 61 | } 62 | -------------------------------------------------------------------------------- /code/null/null_input.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | void IN_Init( void ) { 24 | } 25 | 26 | void IN_Frame (void) { 27 | } 28 | 29 | void IN_Shutdown( void ) { 30 | } 31 | 32 | void IN_Restart( void ) { 33 | } 34 | 35 | -------------------------------------------------------------------------------- /code/null/null_net.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #include "../qcommon/qcommon.h" 24 | 25 | /* 26 | ============= 27 | NET_StringToAdr 28 | 29 | localhost 30 | idnewt 31 | idnewt:28000 32 | 192.246.40.70 33 | 192.246.40.70:28000 34 | ============= 35 | */ 36 | qboolean NET_StringToAdr (char *s, netadr_t *a) 37 | { 38 | if (!strcmp (s, "localhost")) { 39 | memset (a, 0, sizeof(*a)); 40 | a->type = NA_LOOPBACK; 41 | return true; 42 | } 43 | 44 | return false; 45 | } 46 | 47 | /* 48 | ================== 49 | Sys_SendPacket 50 | ================== 51 | */ 52 | void Sys_SendPacket( int length, void *data, netadr_t to ) { 53 | } 54 | -------------------------------------------------------------------------------- /code/null/null_snddma.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | // snddma_null.c 24 | // all other sound mixing is portable 25 | 26 | #include "../qcommon/q_shared.h" 27 | #include "../qcommon/qcommon.h" 28 | 29 | qboolean SNDDMA_Init(void) 30 | { 31 | return qfalse; 32 | } 33 | 34 | int SNDDMA_GetDMAPos(void) 35 | { 36 | return 0; 37 | } 38 | 39 | void SNDDMA_Shutdown(void) 40 | { 41 | } 42 | 43 | void SNDDMA_BeginPainting (void) 44 | { 45 | } 46 | 47 | void SNDDMA_Submit(void) 48 | { 49 | } 50 | 51 | #ifdef USE_VOIP 52 | void SNDDMA_StartCapture(void) 53 | { 54 | } 55 | 56 | int SNDDMA_AvailableCaptureSamples(void) 57 | { 58 | return 0; 59 | } 60 | 61 | void SNDDMA_Capture(int samples, byte *data) 62 | { 63 | } 64 | 65 | void SNDDMA_StopCapture(void) 66 | { 67 | } 68 | 69 | void SNDDMA_MasterGain( float val ) 70 | { 71 | } 72 | #endif 73 | 74 | 75 | sfxHandle_t S_RegisterSound( const char *name, qboolean compressed ) 76 | { 77 | return 0; 78 | } 79 | 80 | void S_StartLocalSound( sfxHandle_t sfxHandle, int channelNum ) { 81 | } 82 | 83 | void S_ClearSoundBuffer( void ) { 84 | } 85 | -------------------------------------------------------------------------------- /code/opus-1.2.1/celt/arm/armopts.s.in: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2013 Mozilla Corporation */ 2 | /* 3 | Redistribution and use in source and binary forms, with or without 4 | modification, are permitted provided that the following conditions 5 | are met: 6 | 7 | - Redistributions of source code must retain the above copyright 8 | notice, this list of conditions and the following disclaimer. 9 | 10 | - Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER 18 | OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 19 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 20 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 21 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 22 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 23 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | ; Set the following to 1 if we have EDSP instructions 28 | ; (LDRD/STRD, etc., ARMv5E and later). 29 | OPUS_ARM_MAY_HAVE_EDSP * @OPUS_ARM_MAY_HAVE_EDSP@ 30 | 31 | ; Set the following to 1 if we have ARMv6 media instructions. 32 | OPUS_ARM_MAY_HAVE_MEDIA * @OPUS_ARM_MAY_HAVE_MEDIA@ 33 | 34 | ; Set the following to 1 if we have NEON (some ARMv7) 35 | OPUS_ARM_MAY_HAVE_NEON * @OPUS_ARM_MAY_HAVE_NEON@ 36 | 37 | END 38 | -------------------------------------------------------------------------------- /code/opus-1.2.1/celt/arm/fixed_arm64.h: -------------------------------------------------------------------------------- 1 | /* Copyright (C) 2015 Vidyo */ 2 | /* 3 | Redistribution and use in source and binary forms, with or without 4 | modification, are permitted provided that the following conditions 5 | are met: 6 | 7 | - Redistributions of source code must retain the above copyright 8 | notice, this list of conditions and the following disclaimer. 9 | 10 | - Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | 14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 15 | ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 16 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 17 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER 18 | OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 19 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 20 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 21 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 22 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 23 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 24 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | */ 26 | 27 | #ifndef FIXED_ARM64_H 28 | #define FIXED_ARM64_H 29 | 30 | #include 31 | 32 | #undef SIG2WORD16 33 | #define SIG2WORD16(x) (vqmovns_s32(PSHR32((x), SIG_SHIFT))) 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /code/opus-1.2.1/celt/cwrs.h: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2007-2008 CSIRO 2 | Copyright (c) 2007-2009 Xiph.Org Foundation 3 | Copyright (c) 2007-2009 Timothy B. Terriberry 4 | Written by Timothy B. Terriberry and Jean-Marc Valin */ 5 | /* 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions 8 | are met: 9 | 10 | - Redistributions of source code must retain the above copyright 11 | notice, this list of conditions and the following disclaimer. 12 | 13 | - Redistributions in binary form must reproduce the above copyright 14 | notice, this list of conditions and the following disclaimer in the 15 | documentation and/or other materials provided with the distribution. 16 | 17 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18 | ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER 21 | OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 22 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 23 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 24 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 25 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 26 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | */ 29 | 30 | #ifndef CWRS_H 31 | #define CWRS_H 32 | 33 | #include "arch.h" 34 | #include "stack_alloc.h" 35 | #include "entenc.h" 36 | #include "entdec.h" 37 | 38 | #ifdef CUSTOM_MODES 39 | int log2_frac(opus_uint32 val, int frac); 40 | #endif 41 | 42 | void get_required_bits(opus_int16 *bits, int N, int K, int frac); 43 | 44 | void encode_pulses(const int *_y, int N, int K, ec_enc *enc); 45 | 46 | opus_val32 decode_pulses(int *_y, int N, int K, ec_dec *dec); 47 | 48 | #endif /* CWRS_H */ 49 | -------------------------------------------------------------------------------- /code/opus-1.2.1/silk/arm/macros_arm64.h: -------------------------------------------------------------------------------- 1 | /*********************************************************************** 2 | Copyright (C) 2015 Vidyo 3 | Redistribution and use in source and binary forms, with or without 4 | modification, are permitted provided that the following conditions 5 | are met: 6 | - Redistributions of source code must retain the above copyright notice, 7 | this list of conditions and the following disclaimer. 8 | - Redistributions in binary form must reproduce the above copyright 9 | notice, this list of conditions and the following disclaimer in the 10 | documentation and/or other materials provided with the distribution. 11 | - Neither the name of Internet Society, IETF or IETF Trust, nor the 12 | names of specific contributors, may be used to endorse or promote 13 | products derived from this software without specific prior written 14 | permission. 15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 16 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 19 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 20 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25 | POSSIBILITY OF SUCH DAMAGE. 26 | ***********************************************************************/ 27 | 28 | #ifndef SILK_MACROS_ARM64_H 29 | #define SILK_MACROS_ARM64_H 30 | 31 | #include 32 | 33 | #undef silk_ADD_SAT32 34 | #define silk_ADD_SAT32(a, b) (vqadds_s32((a), (b))) 35 | 36 | #undef silk_SUB_SAT32 37 | #define silk_SUB_SAT32(a, b) (vqsubs_s32((a), (b))) 38 | 39 | #endif /* SILK_MACROS_ARM64_H */ 40 | -------------------------------------------------------------------------------- /code/opus-1.2.1/src/mlp.h: -------------------------------------------------------------------------------- 1 | /* Copyright (c) 2008-2011 Octasic Inc. 2 | Written by Jean-Marc Valin */ 3 | /* 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions 6 | are met: 7 | 8 | - Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | 11 | - Redistributions in binary form must reproduce the above copyright 12 | notice, this list of conditions and the following disclaimer in the 13 | documentation and/or other materials provided with the distribution. 14 | 15 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 16 | ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 17 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 18 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR 19 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 20 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 22 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 23 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 24 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 25 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 | */ 27 | 28 | #ifndef _MLP_H_ 29 | #define _MLP_H_ 30 | 31 | #include "arch.h" 32 | 33 | typedef struct { 34 | int layers; 35 | const int *topo; 36 | const float *weights; 37 | } MLP; 38 | 39 | extern const MLP net; 40 | 41 | void mlp_process(const MLP *m, const float *in, float *out); 42 | 43 | #endif /* _MLP_H_ */ 44 | -------------------------------------------------------------------------------- /code/opusfile-0.9/src/internal.c: -------------------------------------------------------------------------------- 1 | /******************************************************************** 2 | * * 3 | * THIS FILE IS PART OF THE libopusfile SOFTWARE CODEC SOURCE CODE. * 4 | * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * 5 | * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * 6 | * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * 7 | * * 8 | * THE libopusfile SOURCE CODE IS (C) COPYRIGHT 2012 * 9 | * by the Xiph.Org Foundation and contributors http://www.xiph.org/ * 10 | * * 11 | ********************************************************************/ 12 | #ifdef HAVE_CONFIG_H 13 | #include "config.h" 14 | #endif 15 | 16 | #include "internal.h" 17 | 18 | #if defined(OP_ENABLE_ASSERTIONS) 19 | void op_fatal_impl(const char *_str,const char *_file,int _line){ 20 | fprintf(stderr,"Fatal (internal) error in %s, line %i: %s\n", 21 | _file,_line,_str); 22 | abort(); 23 | } 24 | #endif 25 | 26 | /*A version of strncasecmp() that is guaranteed to only ignore the case of 27 | ASCII characters.*/ 28 | int op_strncasecmp(const char *_a,const char *_b,int _n){ 29 | int i; 30 | for(i=0;i<_n;i++){ 31 | int a; 32 | int b; 33 | int d; 34 | a=_a[i]; 35 | b=_b[i]; 36 | if(a>='a'&&a<='z')a-='a'-'A'; 37 | if(b>='a'&&b<='z')b-='a'-'A'; 38 | d=a-b; 39 | if(d)return d; 40 | } 41 | return 0; 42 | } 43 | -------------------------------------------------------------------------------- /code/q3_ui/ui_sparena.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // 23 | #include "ui_local.h" 24 | 25 | void UI_SPArena_Start( const char *arenaInfo ) { 26 | char *map; 27 | int level; 28 | int n; 29 | char *txt; 30 | 31 | n = (int)trap_Cvar_VariableValue( "sv_maxclients" ); 32 | if ( n < 8 ) { 33 | trap_Cvar_SetValue( "sv_maxclients", 8 ); 34 | } 35 | 36 | level = atoi( Info_ValueForKey( arenaInfo, "num" ) ); 37 | txt = Info_ValueForKey( arenaInfo, "special" ); 38 | if( txt[0] ) { 39 | if( Q_stricmp( txt, "training" ) == 0 ) { 40 | level = -4; 41 | } 42 | else if( Q_stricmp( txt, "final" ) == 0 ) { 43 | level = UI_GetNumSPTiers() * ARENAS_PER_TIER; 44 | } 45 | } 46 | trap_Cvar_SetValue( "ui_spSelection", level ); 47 | 48 | map = Info_ValueForKey( arenaInfo, "map" ); 49 | trap_Cmd_ExecuteText( EXEC_APPEND, va( "spmap %s\n", map ) ); 50 | } 51 | -------------------------------------------------------------------------------- /code/qcommon/puff.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This is a modified version of Mark Adlers work, 3 | * see below for the original copyright. 4 | * 2006 - Joerg Dietrich 5 | */ 6 | 7 | /* puff.h 8 | Copyright (C) 2002, 2003 Mark Adler, all rights reserved 9 | version 1.7, 3 Mar 2002 10 | 11 | This software is provided 'as-is', without any express or implied 12 | warranty. In no event will the author be held liable for any damages 13 | arising from the use of this software. 14 | 15 | Permission is granted to anyone to use this software for any purpose, 16 | including commercial applications, and to alter it and redistribute it 17 | freely, subject to the following restrictions: 18 | 19 | 1. The origin of this software must not be misrepresented; you must not 20 | claim that you wrote the original software. If you use this software 21 | in a product, an acknowledgment in the product documentation would be 22 | appreciated but is not required. 23 | 2. Altered source versions must be plainly marked as such, and must not be 24 | misrepresented as being the original software. 25 | 3. This notice may not be removed or altered from any source distribution. 26 | 27 | Mark Adler madler@alumni.caltech.edu 28 | */ 29 | 30 | #ifndef __PUFF_H 31 | #define __PUFF_H 32 | 33 | #include "q_shared.h" /* for definitions of the types */ 34 | 35 | /* 36 | * See puff.c for purpose and usage. 37 | */ 38 | int32_t puff(uint8_t *dest, /* pointer to destination pointer */ 39 | uint32_t *destlen, /* amount of output space */ 40 | uint8_t *source, /* pointer to source data pointer */ 41 | uint32_t *sourcelen); /* amount of input available */ 42 | 43 | #endif // __PUFF_H 44 | -------------------------------------------------------------------------------- /code/qcommon/vm_none.c: -------------------------------------------------------------------------------- 1 | #include "vm_local.h" 2 | 3 | int VM_CallCompiled( vm_t *vm, int *args ) { 4 | exit(99); 5 | return 0; 6 | } 7 | 8 | void VM_Compile( vm_t *vm, vmHeader_t *header ) { 9 | exit(99); 10 | } 11 | -------------------------------------------------------------------------------- /code/qcommon/vm_sparc.h: -------------------------------------------------------------------------------- 1 | #ifndef VM_SPARC_H 2 | #define VM_SPARC_H 3 | 4 | /* integer regs */ 5 | #define G0 0 6 | #define G1 1 7 | #define G2 2 8 | #define G3 3 9 | #define G4 4 10 | #define G5 5 11 | #define G6 6 12 | #define G7 7 13 | #define O0 8 14 | #define O1 9 15 | #define O2 10 16 | #define O3 11 17 | #define O4 12 18 | #define O5 13 19 | #define O6 14 20 | #define O7 15 21 | #define L0 16 22 | #define L1 17 23 | #define L2 18 24 | #define L3 19 25 | #define L4 20 26 | #define L5 21 27 | #define L6 22 28 | #define L7 23 29 | #define I0 24 30 | #define I1 25 31 | #define I2 26 32 | #define I3 27 33 | #define I4 28 34 | #define I5 29 35 | #define I6 30 36 | #define I7 31 37 | 38 | /* float regs */ 39 | #define F0 0 40 | #define F1 1 41 | #define F2 2 42 | #define F3 3 43 | #define F4 4 44 | #define F5 5 45 | #define F6 6 46 | #define F7 7 47 | #define F8 8 48 | #define F9 9 49 | #define F10 10 50 | #define F11 11 51 | #define F12 12 52 | #define F13 13 53 | #define F14 14 54 | #define F15 15 55 | #define F16 16 56 | #define F17 17 57 | #define F18 18 58 | #define F19 19 59 | #define F20 20 60 | #define F21 21 61 | #define F22 22 62 | #define F23 23 63 | #define F24 24 64 | #define F25 25 65 | #define F26 26 66 | #define F27 27 67 | #define F28 28 68 | #define F29 29 69 | #define F30 30 70 | #define F31 31 71 | 72 | /* state registers */ 73 | #define Y_REG 0 74 | #define CCR_REG 2 75 | #define ASI_REG 3 76 | #define FPRS_REG 6 77 | 78 | #endif 79 | -------------------------------------------------------------------------------- /code/renderergl1/tr_subs.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 2010 James Canete (use.less01@gmail.com) 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // tr_subs.c - common function replacements for modular renderer 23 | 24 | #include "tr_local.h" 25 | 26 | void QDECL Com_Printf( const char *msg, ... ) 27 | { 28 | va_list argptr; 29 | char text[1024]; 30 | 31 | va_start(argptr, msg); 32 | Q_vsnprintf(text, sizeof(text), msg, argptr); 33 | va_end(argptr); 34 | 35 | ri.Printf(PRINT_ALL, "%s", text); 36 | } 37 | 38 | void QDECL Com_Error( int level, const char *error, ... ) 39 | { 40 | va_list argptr; 41 | char text[1024]; 42 | 43 | va_start(argptr, error); 44 | Q_vsnprintf(text, sizeof(text), error, argptr); 45 | va_end(argptr); 46 | 47 | ri.Error(level, "%s", text); 48 | } 49 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/bokeh_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec3 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform mat4 u_ModelViewProjectionMatrix; 5 | 6 | varying vec2 var_TexCoords; 7 | 8 | 9 | void main() 10 | { 11 | gl_Position = u_ModelViewProjectionMatrix * vec4(attr_Position, 1.0); 12 | var_TexCoords = attr_TexCoord0.st; 13 | } 14 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/calclevels4x_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform sampler2D u_TextureMap; 2 | 3 | uniform vec4 u_Color; 4 | 5 | uniform vec2 u_InvTexRes; 6 | varying vec2 var_TexCoords; 7 | 8 | const vec3 LUMINANCE_VECTOR = vec3(0.2125, 0.7154, 0.0721); //vec3(0.299, 0.587, 0.114); 9 | 10 | vec3 GetValues(vec2 offset, vec3 current) 11 | { 12 | vec2 tc = var_TexCoords + u_InvTexRes * offset; 13 | vec3 minAvgMax = texture2D(u_TextureMap, tc).rgb; 14 | 15 | #ifdef FIRST_PASS 16 | 17 | #if defined(USE_PBR) 18 | minAvgMax *= minAvgMax; 19 | #endif 20 | 21 | float lumi = max(dot(LUMINANCE_VECTOR, minAvgMax), 0.000001); 22 | float loglumi = clamp(log2(lumi), -10.0, 10.0); 23 | minAvgMax = vec3(loglumi * 0.05 + 0.5); 24 | #endif 25 | 26 | return vec3(min(current.x, minAvgMax.x), current.y + minAvgMax.y, max(current.z, minAvgMax.z)); 27 | } 28 | 29 | void main() 30 | { 31 | vec3 current = vec3(1.0, 0.0, 0.0); 32 | 33 | #ifdef FIRST_PASS 34 | current = GetValues(vec2( 0.0, 0.0), current); 35 | #else 36 | current = GetValues(vec2(-1.5, -1.5), current); 37 | current = GetValues(vec2(-0.5, -1.5), current); 38 | current = GetValues(vec2( 0.5, -1.5), current); 39 | current = GetValues(vec2( 1.5, -1.5), current); 40 | 41 | current = GetValues(vec2(-1.5, -0.5), current); 42 | current = GetValues(vec2(-0.5, -0.5), current); 43 | current = GetValues(vec2( 0.5, -0.5), current); 44 | current = GetValues(vec2( 1.5, -0.5), current); 45 | 46 | current = GetValues(vec2(-1.5, 0.5), current); 47 | current = GetValues(vec2(-0.5, 0.5), current); 48 | current = GetValues(vec2( 0.5, 0.5), current); 49 | current = GetValues(vec2( 1.5, 0.5), current); 50 | 51 | current = GetValues(vec2(-1.5, 1.5), current); 52 | current = GetValues(vec2(-0.5, 1.5), current); 53 | current = GetValues(vec2( 0.5, 1.5), current); 54 | current = GetValues(vec2( 1.5, 1.5), current); 55 | 56 | current.y *= 0.0625; 57 | #endif 58 | 59 | gl_FragColor = vec4(current, 1.0); 60 | } 61 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/calclevels4x_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec3 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform mat4 u_ModelViewProjectionMatrix; 5 | 6 | varying vec2 var_TexCoords; 7 | 8 | 9 | void main() 10 | { 11 | gl_Position = u_ModelViewProjectionMatrix * vec4(attr_Position, 1.0); 12 | var_TexCoords = attr_TexCoord0.st; 13 | } 14 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/depthblur_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform vec4 u_ViewInfo; // zfar / znear, zfar, 1/width, 1/height 5 | 6 | varying vec2 var_ScreenTex; 7 | 8 | void main() 9 | { 10 | gl_Position = attr_Position; 11 | vec2 wh = vec2(1.0) / u_ViewInfo.zw - vec2(1.0); 12 | var_ScreenTex = (floor(attr_TexCoord0.xy * wh) + vec2(0.5)) * u_ViewInfo.zw; 13 | 14 | //vec2 screenCoords = gl_Position.xy / gl_Position.w; 15 | //var_ScreenTex = screenCoords * 0.5 + 0.5; 16 | } 17 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/dlight_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform sampler2D u_DiffuseMap; 2 | 3 | uniform int u_AlphaTest; 4 | 5 | varying vec2 var_Tex1; 6 | varying vec4 var_Color; 7 | 8 | 9 | void main() 10 | { 11 | vec4 color = texture2D(u_DiffuseMap, var_Tex1); 12 | 13 | float alpha = color.a * var_Color.a; 14 | if (u_AlphaTest == 1) 15 | { 16 | if (alpha == 0.0) 17 | discard; 18 | } 19 | else if (u_AlphaTest == 2) 20 | { 21 | if (alpha >= 0.5) 22 | discard; 23 | } 24 | else if (u_AlphaTest == 3) 25 | { 26 | if (alpha < 0.5) 27 | discard; 28 | } 29 | 30 | gl_FragColor.rgb = color.rgb * var_Color.rgb; 31 | gl_FragColor.a = alpha; 32 | } 33 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/down4x_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform sampler2D u_TextureMap; 2 | 3 | uniform vec2 u_InvTexRes; 4 | varying vec2 var_TexCoords; 5 | 6 | void main() 7 | { 8 | vec4 color; 9 | vec2 tc; 10 | 11 | tc = var_TexCoords + u_InvTexRes * vec2(-1.5, -1.5); color = texture2D(u_TextureMap, tc); 12 | tc = var_TexCoords + u_InvTexRes * vec2(-0.5, -1.5); color += texture2D(u_TextureMap, tc); 13 | tc = var_TexCoords + u_InvTexRes * vec2( 0.5, -1.5); color += texture2D(u_TextureMap, tc); 14 | tc = var_TexCoords + u_InvTexRes * vec2( 1.5, -1.5); color += texture2D(u_TextureMap, tc); 15 | 16 | tc = var_TexCoords + u_InvTexRes * vec2(-1.5, -0.5); color += texture2D(u_TextureMap, tc); 17 | tc = var_TexCoords + u_InvTexRes * vec2(-0.5, -0.5); color += texture2D(u_TextureMap, tc); 18 | tc = var_TexCoords + u_InvTexRes * vec2( 0.5, -0.5); color += texture2D(u_TextureMap, tc); 19 | tc = var_TexCoords + u_InvTexRes * vec2( 1.5, -0.5); color += texture2D(u_TextureMap, tc); 20 | 21 | tc = var_TexCoords + u_InvTexRes * vec2(-1.5, 0.5); color += texture2D(u_TextureMap, tc); 22 | tc = var_TexCoords + u_InvTexRes * vec2(-0.5, 0.5); color += texture2D(u_TextureMap, tc); 23 | tc = var_TexCoords + u_InvTexRes * vec2( 0.5, 0.5); color += texture2D(u_TextureMap, tc); 24 | tc = var_TexCoords + u_InvTexRes * vec2( 1.5, 0.5); color += texture2D(u_TextureMap, tc); 25 | 26 | tc = var_TexCoords + u_InvTexRes * vec2(-1.5, 1.5); color += texture2D(u_TextureMap, tc); 27 | tc = var_TexCoords + u_InvTexRes * vec2(-0.5, 1.5); color += texture2D(u_TextureMap, tc); 28 | tc = var_TexCoords + u_InvTexRes * vec2( 0.5, 1.5); color += texture2D(u_TextureMap, tc); 29 | tc = var_TexCoords + u_InvTexRes * vec2( 1.5, 1.5); color += texture2D(u_TextureMap, tc); 30 | 31 | color *= 0.0625; 32 | 33 | gl_FragColor = color; 34 | } 35 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/down4x_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec3 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform mat4 u_ModelViewProjectionMatrix; 5 | 6 | varying vec2 var_TexCoords; 7 | 8 | 9 | void main() 10 | { 11 | gl_Position = u_ModelViewProjectionMatrix * vec4(attr_Position, 1.0); 12 | var_TexCoords = attr_TexCoord0.st; 13 | } 14 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/fogpass_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform vec4 u_Color; 2 | 3 | varying float var_Scale; 4 | 5 | void main() 6 | { 7 | gl_FragColor = u_Color; 8 | gl_FragColor.a = sqrt(clamp(var_Scale, 0.0, 1.0)); 9 | } 10 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/generic_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform sampler2D u_DiffuseMap; 2 | 3 | uniform int u_AlphaTest; 4 | 5 | varying vec2 var_DiffuseTex; 6 | 7 | varying vec4 var_Color; 8 | 9 | 10 | void main() 11 | { 12 | vec4 color = texture2D(u_DiffuseMap, var_DiffuseTex); 13 | 14 | float alpha = color.a * var_Color.a; 15 | if (u_AlphaTest == 1) 16 | { 17 | if (alpha == 0.0) 18 | discard; 19 | } 20 | else if (u_AlphaTest == 2) 21 | { 22 | if (alpha >= 0.5) 23 | discard; 24 | } 25 | else if (u_AlphaTest == 3) 26 | { 27 | if (alpha < 0.5) 28 | discard; 29 | } 30 | 31 | gl_FragColor.rgb = color.rgb * var_Color.rgb; 32 | gl_FragColor.a = alpha; 33 | } 34 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/pshadow_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec3 attr_Position; 2 | attribute vec3 attr_Normal; 3 | 4 | uniform mat4 u_ModelViewProjectionMatrix; 5 | varying vec3 var_Position; 6 | varying vec3 var_Normal; 7 | 8 | 9 | void main() 10 | { 11 | gl_Position = u_ModelViewProjectionMatrix * vec4(attr_Position, 1.0); 12 | 13 | var_Position = attr_Position; 14 | var_Normal = attr_Normal; 15 | } 16 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/shadowfill_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform vec4 u_LightOrigin; 2 | uniform float u_LightRadius; 3 | 4 | varying vec3 var_Position; 5 | 6 | void main() 7 | { 8 | #if defined(USE_DEPTH) 9 | float depth = length(u_LightOrigin.xyz - var_Position) / u_LightRadius; 10 | #if 0 11 | // 32 bit precision 12 | const vec4 bitSh = vec4( 256 * 256 * 256, 256 * 256, 256, 1); 13 | const vec4 bitMsk = vec4( 0, 1.0 / 256.0, 1.0 / 256.0, 1.0 / 256.0); 14 | 15 | vec4 comp; 16 | comp = depth * bitSh; 17 | comp.xyz = fract(comp.xyz); 18 | comp -= comp.xxyz * bitMsk; 19 | gl_FragColor = comp; 20 | #endif 21 | 22 | #if 1 23 | // 24 bit precision 24 | const vec3 bitSh = vec3( 256 * 256, 256, 1); 25 | const vec3 bitMsk = vec3( 0, 1.0 / 256.0, 1.0 / 256.0); 26 | 27 | vec3 comp; 28 | comp = depth * bitSh; 29 | comp.xy = fract(comp.xy); 30 | comp -= comp.xxy * bitMsk; 31 | gl_FragColor = vec4(comp, 1.0); 32 | #endif 33 | 34 | #if 0 35 | // 8 bit precision 36 | gl_FragColor = vec4(depth, depth, depth, 1); 37 | #endif 38 | #else 39 | gl_FragColor = vec4(0, 0, 0, 1); 40 | #endif 41 | } 42 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/shadowmask_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform vec3 u_ViewForward; 5 | uniform vec3 u_ViewLeft; 6 | uniform vec3 u_ViewUp; 7 | uniform vec4 u_ViewInfo; // zfar / znear 8 | 9 | varying vec2 var_DepthTex; 10 | varying vec3 var_ViewDir; 11 | 12 | void main() 13 | { 14 | gl_Position = attr_Position; 15 | vec2 screenCoords = gl_Position.xy / gl_Position.w; 16 | var_DepthTex = attr_TexCoord0.xy; 17 | var_ViewDir = u_ViewForward + u_ViewLeft * -screenCoords.x + u_ViewUp * screenCoords.y; 18 | } 19 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/ssao_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec4 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | varying vec2 var_ScreenTex; 5 | 6 | void main() 7 | { 8 | gl_Position = attr_Position; 9 | var_ScreenTex = attr_TexCoord0.xy; 10 | //vec2 screenCoords = gl_Position.xy / gl_Position.w; 11 | //var_ScreenTex = screenCoords * 0.5 + 0.5; 12 | } 13 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/texturecolor_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform sampler2D u_DiffuseMap; 2 | uniform vec4 u_Color; 3 | 4 | varying vec2 var_Tex1; 5 | 6 | 7 | void main() 8 | { 9 | gl_FragColor = texture2D(u_DiffuseMap, var_Tex1) * u_Color; 10 | } 11 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/texturecolor_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec3 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform mat4 u_ModelViewProjectionMatrix; 5 | 6 | varying vec2 var_Tex1; 7 | 8 | 9 | void main() 10 | { 11 | gl_Position = u_ModelViewProjectionMatrix * vec4(attr_Position, 1.0); 12 | var_Tex1 = attr_TexCoord0.st; 13 | } 14 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/tonemap_fp.glsl: -------------------------------------------------------------------------------- 1 | uniform sampler2D u_TextureMap; 2 | uniform sampler2D u_LevelsMap; 3 | 4 | uniform vec4 u_Color; 5 | 6 | 7 | uniform vec2 u_AutoExposureMinMax; 8 | uniform vec3 u_ToneMinAvgMaxLinear; 9 | 10 | varying vec2 var_TexCoords; 11 | varying float var_InvWhite; 12 | 13 | const vec3 LUMINANCE_VECTOR = vec3(0.2125, 0.7154, 0.0721); //vec3(0.299, 0.587, 0.114); 14 | 15 | float FilmicTonemap(float x) 16 | { 17 | const float SS = 0.22; // Shoulder Strength 18 | const float LS = 0.30; // Linear Strength 19 | const float LA = 0.10; // Linear Angle 20 | const float TS = 0.20; // Toe Strength 21 | const float TAN = 0.01; // Toe Angle Numerator 22 | const float TAD = 0.30; // Toe Angle Denominator 23 | 24 | return ((x*(SS*x+LA*LS)+TS*TAN)/(x*(SS*x+LS)+TS*TAD)) - TAN/TAD; 25 | } 26 | 27 | void main() 28 | { 29 | vec4 color = texture2D(u_TextureMap, var_TexCoords) * u_Color; 30 | 31 | #if defined(USE_PBR) 32 | color.rgb *= color.rgb; 33 | #endif 34 | 35 | vec3 minAvgMax = texture2D(u_LevelsMap, var_TexCoords).rgb; 36 | vec3 logMinAvgMaxLum = clamp(minAvgMax * 20.0 - 10.0, -u_AutoExposureMinMax.y, -u_AutoExposureMinMax.x); 37 | 38 | float invAvgLum = u_ToneMinAvgMaxLinear.y * exp2(-logMinAvgMaxLum.y); 39 | 40 | color.rgb = color.rgb * invAvgLum - u_ToneMinAvgMaxLinear.xxx; 41 | color.rgb = max(vec3(0.0), color.rgb); 42 | 43 | color.r = FilmicTonemap(color.r); 44 | color.g = FilmicTonemap(color.g); 45 | color.b = FilmicTonemap(color.b); 46 | 47 | color.rgb = clamp(color.rgb * var_InvWhite, 0.0, 1.0); 48 | 49 | #if defined(USE_PBR) 50 | color.rgb = sqrt(color.rgb); 51 | #endif 52 | 53 | // add a bit of dither to reduce banding 54 | color.rgb += vec3(1.0/510.0 * mod(gl_FragCoord.x + gl_FragCoord.y, 2.0) - 1.0/1020.0); 55 | 56 | gl_FragColor = color; 57 | } 58 | -------------------------------------------------------------------------------- /code/renderergl2/glsl/tonemap_vp.glsl: -------------------------------------------------------------------------------- 1 | attribute vec3 attr_Position; 2 | attribute vec4 attr_TexCoord0; 3 | 4 | uniform mat4 u_ModelViewProjectionMatrix; 5 | uniform vec3 u_ToneMinAvgMaxLinear; 6 | 7 | varying vec2 var_TexCoords; 8 | varying float var_InvWhite; 9 | 10 | float FilmicTonemap(float x) 11 | { 12 | const float SS = 0.22; // Shoulder Strength 13 | const float LS = 0.30; // Linear Strength 14 | const float LA = 0.10; // Linear Angle 15 | const float TS = 0.20; // Toe Strength 16 | const float TAN = 0.01; // Toe Angle Numerator 17 | const float TAD = 0.30; // Toe Angle Denominator 18 | 19 | return ((x*(SS*x+LA*LS)+TS*TAN)/(x*(SS*x+LS)+TS*TAD)) - TAN/TAD; 20 | } 21 | 22 | void main() 23 | { 24 | gl_Position = u_ModelViewProjectionMatrix * vec4(attr_Position, 1.0); 25 | var_TexCoords = attr_TexCoord0.st; 26 | var_InvWhite = 1.0 / FilmicTonemap(u_ToneMinAvgMaxLinear.z - u_ToneMinAvgMaxLinear.x); 27 | } 28 | -------------------------------------------------------------------------------- /code/renderergl2/tr_extratypes.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 2009-2011 Andrei Drexler, Richard Allen, James Canete 4 | 5 | This file is part of Reaction source code. 6 | 7 | Reaction source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Reaction source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Reaction source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #ifndef __TR_EXTRATYPES_H__ 24 | #define __TR_EXTRATYPES_H__ 25 | 26 | // tr_extratypes.h, for mods that want to extend tr_types.h without losing compatibility with original VMs 27 | 28 | // extra refdef flags start at 0x0008 29 | #define RDF_NOFOG 0x0008 // don't apply fog to polys added using RE_AddPolyToScene 30 | #define RDF_EXTRA 0x0010 // Makro - refdefex_t to follow after refdef_t 31 | #define RDF_SUNLIGHT 0x0020 // SmileTheory - render sunlight and shadows 32 | 33 | typedef struct { 34 | float blurFactor; 35 | float sunDir[3]; 36 | float sunCol[3]; 37 | float sunAmbCol[3]; 38 | } refdefex_t; 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /code/renderergl2/tr_main.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/renderergl2/tr_main.c -------------------------------------------------------------------------------- /code/renderergl2/tr_postprocess.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 2011 Andrei Drexler, Richard Allen, James Canete 4 | 5 | This file is part of Reaction source code. 6 | 7 | Reaction source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Reaction source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Reaction source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #ifndef TR_POSTPROCESS_H 24 | #define TR_POSTPROCESS_H 25 | 26 | #include "tr_fbo.h" 27 | 28 | void RB_ToneMap(FBO_t *hdrFbo, ivec4_t hdrBox, FBO_t *ldrFbo, ivec4_t ldrBox, int autoExposure); 29 | void RB_BokehBlur(FBO_t *src, ivec4_t srcBox, FBO_t *dst, ivec4_t dstBox, float blur); 30 | void RB_SunRays(FBO_t *srcFbo, ivec4_t srcBox, FBO_t *dstFbo, ivec4_t dstBox); 31 | void RB_GaussianBlur(FBO_t *srcFbo, FBO_t *dstFbo, float blur); 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /code/renderergl2/tr_subs.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 2010 James Canete (use.less01@gmail.com) 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | // tr_subs.c - common function replacements for modular renderer 23 | 24 | #include "tr_local.h" 25 | 26 | void QDECL Com_Printf( const char *msg, ... ) 27 | { 28 | va_list argptr; 29 | char text[1024]; 30 | 31 | va_start(argptr, msg); 32 | Q_vsnprintf(text, sizeof(text), msg, argptr); 33 | va_end(argptr); 34 | 35 | ri.Printf(PRINT_ALL, "%s", text); 36 | } 37 | 38 | void QDECL Com_Error( int level, const char *error, ... ) 39 | { 40 | va_list argptr; 41 | char text[1024]; 42 | 43 | va_start(argptr, error); 44 | Q_vsnprintf(text, sizeof(text), error, argptr); 45 | va_end(argptr); 46 | 47 | ri.Error(level, "%s", text); 48 | } 49 | -------------------------------------------------------------------------------- /code/sys/con_passive.c: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #include "../qcommon/q_shared.h" 24 | #include "../qcommon/qcommon.h" 25 | #include "sys_local.h" 26 | 27 | #include 28 | 29 | /* 30 | ================== 31 | CON_Shutdown 32 | ================== 33 | */ 34 | void CON_Shutdown( void ) 35 | { 36 | } 37 | 38 | /* 39 | ================== 40 | CON_Init 41 | ================== 42 | */ 43 | void CON_Init( void ) 44 | { 45 | } 46 | 47 | /* 48 | ================== 49 | CON_Input 50 | ================== 51 | */ 52 | char *CON_Input( void ) 53 | { 54 | return NULL; 55 | } 56 | 57 | /* 58 | ================== 59 | CON_Print 60 | ================== 61 | */ 62 | void CON_Print( const char *msg ) 63 | { 64 | if( com_ansiColor && com_ansiColor->integer ) 65 | Sys_AnsiColorPrint( msg ); 66 | else 67 | fputs( msg, stderr ); 68 | } 69 | -------------------------------------------------------------------------------- /code/sys/sys_loadlib.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | 23 | #ifdef DEDICATED 24 | # ifdef _WIN32 25 | # include 26 | # define Sys_LoadLibrary(f) (void*)LoadLibrary(f) 27 | # define Sys_UnloadLibrary(h) FreeLibrary((HMODULE)h) 28 | # define Sys_LoadFunction(h,fn) (void*)GetProcAddress((HMODULE)h,fn) 29 | # define Sys_LibraryError() "unknown" 30 | # else 31 | # include 32 | # define Sys_LoadLibrary(f) dlopen(f,RTLD_NOW) 33 | # define Sys_UnloadLibrary(h) dlclose(h) 34 | # define Sys_LoadFunction(h,fn) dlsym(h,fn) 35 | # define Sys_LibraryError() dlerror() 36 | # endif 37 | #else 38 | # ifdef USE_LOCAL_HEADERS 39 | # include "SDL.h" 40 | # include "SDL_loadso.h" 41 | # else 42 | # include 43 | # include 44 | # endif 45 | # define Sys_LoadLibrary(f) SDL_LoadObject(f) 46 | # define Sys_UnloadLibrary(h) SDL_UnloadObject(h) 47 | # define Sys_LoadFunction(h,fn) SDL_LoadFunction(h,fn) 48 | # define Sys_LibraryError() SDL_GetError() 49 | #endif 50 | 51 | void * QDECL Sys_LoadDll(const char *name, qboolean useSystemLib); 52 | -------------------------------------------------------------------------------- /code/sys/win_manifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | True/PM 34 | PerMonitorV2, PerMonitor 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /code/sys/win_resource.h: -------------------------------------------------------------------------------- 1 | /* 2 | =========================================================================== 3 | Copyright (C) 1999-2005 Id Software, Inc. 4 | 5 | This file is part of Quake III Arena source code. 6 | 7 | Quake III Arena source code is free software; you can redistribute it 8 | and/or modify it under the terms of the GNU General Public License as 9 | published by the Free Software Foundation; either version 2 of the License, 10 | or (at your option) any later version. 11 | 12 | Quake III Arena source code is distributed in the hope that it will be 13 | useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with Quake III Arena source code; if not, write to the Free Software 19 | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 | =========================================================================== 21 | */ 22 | //{{NO_DEPENDENCIES}} 23 | // Microsoft Developer Studio generated include file. 24 | // Used by winquake.rc 25 | // 26 | #define IDS_STRING1 1 27 | #define IDI_ICON1 1 28 | #define IDB_BITMAP1 1 29 | #define IDB_BITMAP2 128 30 | #define IDC_CURSOR1 129 31 | #define IDC_CURSOR2 130 32 | #define IDC_CURSOR3 131 33 | 34 | // Next default values for new objects 35 | // 36 | #ifdef APSTUDIO_INVOKED 37 | #ifndef APSTUDIO_READONLY_SYMBOLS 38 | #define _APS_NO_MFC 1 39 | #define _APS_NEXT_RESOURCE_VALUE 132 40 | #define _APS_NEXT_COMMAND_VALUE 40001 41 | #define _APS_NEXT_CONTROL_VALUE 1005 42 | #define _APS_NEXT_SYMED_VALUE 101 43 | #endif 44 | #endif 45 | -------------------------------------------------------------------------------- /code/tools/asm/README.Id: -------------------------------------------------------------------------------- 1 | 2002-10-25 Timothee Besset 2 | If you are looking for a faster version of the q3asm tool, try: 3 | http://www.icculus.org/~phaethon/q3/q3asm-turbo/q3asm-turbo.html 4 | 5 | 2001-10-31 Timothee Besset 6 | updated from the $/source/q3asm code 7 | modified for portability and use with >= 1.31 mod source release 8 | 9 | the cmdlib.c cmdlib.h mathlib.h qfiles.h have been copied from 10 | $/source/common 11 | -------------------------------------------------------------------------------- /code/tools/asm/lib.txt: -------------------------------------------------------------------------------- 1 | 2 | strlen 3 | strcasecmp 4 | tolower 5 | strcat 6 | strncpy 7 | strcmp 8 | strcpy 9 | strchr 10 | 11 | vsprintf 12 | 13 | memcpy 14 | memset 15 | rand 16 | 17 | atoi 18 | atof 19 | 20 | abs 21 | 22 | floor 23 | fabs 24 | tan 25 | atan 26 | sqrt 27 | log 28 | cos 29 | sin 30 | atan2 31 | 32 | -------------------------------------------------------------------------------- /code/tools/asm/notes.txt: -------------------------------------------------------------------------------- 1 | 2 | don't do any parameter conversion (double to float, etc) 3 | 4 | 5 | 6 | Why? 7 | 8 | Security. 9 | Portability. 10 | 11 | It may be more aproachable. 12 | 13 | can still use regular dlls for development purposes 14 | 15 | lcc 16 | q3asm 17 | -------------------------------------------------------------------------------- /code/tools/asm/ops.txt: -------------------------------------------------------------------------------- 1 | CNSTF, 2 | CNSTI, 3 | CNSTP, 4 | CNSTU, 5 | 6 | ARGB, 7 | ARGF, 8 | ARGI, 9 | ARGP, 10 | ARGU, 11 | 12 | ASGNB, 13 | ASGNF, 14 | ASGNI, 15 | ASGNP, 16 | ASGNU, 17 | 18 | INDIRB, 19 | INDIRF, 20 | INDIRI, 21 | INDIRP, 22 | INDIRU, 23 | 24 | CVFF, 25 | CVFI, 26 | 27 | CVIF, 28 | CVII, 29 | CVIU, 30 | 31 | CVPU, 32 | 33 | CVUI, 34 | CVUP, 35 | CVUU, 36 | 37 | NEGF, 38 | NEGI, 39 | 40 | CALLB, 41 | CALLF, 42 | CALLI, 43 | CALLP, 44 | CALLU, 45 | CALLV, 46 | 47 | RETF, 48 | RETI, 49 | RETP, 50 | RETU, 51 | RETV, 52 | 53 | ADDRGP, 54 | 55 | ADDRFP, 56 | 57 | ADDRLP, 58 | 59 | ADDF, 60 | ADDI, 61 | ADDP, 62 | ADDU, 63 | 64 | SUBF, 65 | SUBI, 66 | SUBP, 67 | SUBU, 68 | 69 | LSHI, 70 | LSHU, 71 | 72 | MODI, 73 | MODU, 74 | 75 | RSHI, 76 | RSHU, 77 | 78 | BANDI, 79 | BANDU, 80 | 81 | BCOMI, 82 | BCOMU, 83 | 84 | BORI, 85 | BORU, 86 | 87 | BXORI, 88 | BXORU, 89 | 90 | DIVF, 91 | DIVI, 92 | DIVU, 93 | 94 | MULF, 95 | MULI, 96 | MULU, 97 | 98 | EQF, 99 | EQI, 100 | EQU, 101 | 102 | GEF, 103 | GEI, 104 | GEU, 105 | 106 | GTF, 107 | GTI, 108 | GTU, 109 | 110 | LEF, 111 | LEI, 112 | LEU, 113 | 114 | LTF, 115 | LTI, 116 | LTU, 117 | 118 | NEF, 119 | NEI, 120 | NEU, 121 | 122 | JUMPV, 123 | 124 | LABELV, 125 | 126 | LOADB, 127 | LOADF, 128 | LOADI, 129 | LOADP, 130 | LOADU, 131 | 132 | 133 | -------------------------------------------------------------------------------- /code/tools/lcc/README: -------------------------------------------------------------------------------- 1 | This hierarchy is the distribution for lcc version 4.1. 2 | 3 | lcc version 3.x is described in the book "A Retargetable C Compiler: 4 | Design and Implementation" (Addison-Wesley, 1995, ISBN 0-8053-1670-1). 5 | There are significant differences between 3.x and 4.x, most notably in 6 | the intermediate code. doc/4.html summarizes the differences. 7 | 8 | VERSION 4.1 IS INCOMPATIBLE WITH EARLIER VERSIONS OF LCC. DO NOT 9 | UNLOAD THIS DISTRIBUTION ON TOP OF A 3.X DISTRIBUTION. 10 | 11 | LOG describes the changes since the last release. 12 | 13 | CPYRIGHT describes the conditions under you can use, copy, modify, and 14 | distribute lcc or works derived from lcc. 15 | 16 | doc/install.html is an HTML file that gives a complete description of 17 | the distribution and installation instructions. 18 | 19 | Chris Fraser / cwfraser@microsoft.com 20 | David Hanson / drh@microsoft.com 21 | $Revision: 145 $ $Date: 2001-10-17 16:53:10 -0500 (Wed, 17 Oct 2001) $ 22 | -------------------------------------------------------------------------------- /code/tools/lcc/README.id: -------------------------------------------------------------------------------- 1 | 2001-10-31 Timothee Besset 2 | updated from the $/source/lcc code 3 | modified for portability and use with >= 1.31 mod source release 4 | -------------------------------------------------------------------------------- /code/tools/lcc/cpp/getopt.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #define EPR fprintf(stderr, 4 | #define ERR(str, chr) if(opterr){EPR "%s%c\n", str, chr);} 5 | int opterr = 1; 6 | int optind = 1; 7 | int optopt; 8 | char *optarg; 9 | 10 | int 11 | lcc_getopt (int argc, char *const argv[], const char *opts) 12 | { 13 | static int sp = 1; 14 | int c; 15 | char *cp; 16 | 17 | if (sp == 1) { 18 | if (optind >= argc || 19 | argv[optind][0] != '-' || argv[optind][1] == '\0') 20 | return -1; 21 | else if (strcmp(argv[optind], "--") == 0) { 22 | optind++; 23 | return -1; 24 | } 25 | } 26 | optopt = c = argv[optind][sp]; 27 | if (c == ':' || (cp=strchr(opts, c)) == 0) { 28 | ERR (": illegal option -- ", c); 29 | if (argv[optind][++sp] == '\0') { 30 | optind++; 31 | sp = 1; 32 | } 33 | return '?'; 34 | } 35 | if (*++cp == ':') { 36 | if (argv[optind][sp+1] != '\0') 37 | optarg = &argv[optind++][sp+1]; 38 | else if (++optind >= argc) { 39 | ERR (": option requires an argument -- ", c); 40 | sp = 1; 41 | return '?'; 42 | } else 43 | optarg = argv[optind++]; 44 | sp = 1; 45 | } else { 46 | if (argv[optind][++sp] == '\0') { 47 | sp = 1; 48 | optind++; 49 | } 50 | optarg = 0; 51 | } 52 | return c; 53 | } 54 | -------------------------------------------------------------------------------- /code/tools/lcc/doc/bprint.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/tools/lcc/doc/bprint.pdf -------------------------------------------------------------------------------- /code/tools/lcc/doc/lcc.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/code/tools/lcc/doc/lcc.pdf -------------------------------------------------------------------------------- /code/tools/lcc/src/bind.c: -------------------------------------------------------------------------------- 1 | #include "c.h" 2 | extern Interface nullIR; 3 | extern Interface bytecodeIR; 4 | Binding bindings[] = { 5 | { "null", &nullIR }, 6 | { "bytecode", &bytecodeIR }, 7 | { NULL, NULL }, 8 | }; 9 | -------------------------------------------------------------------------------- /code/tools/lcc/src/event.c: -------------------------------------------------------------------------------- 1 | #include "c.h" 2 | 3 | 4 | struct entry { 5 | Apply func; 6 | void *cl; 7 | }; 8 | 9 | Events events; 10 | void attach(Apply func, void *cl, List *list) { 11 | struct entry *p; 12 | 13 | NEW(p, PERM); 14 | p->func = func; 15 | p->cl = cl; 16 | *list = append(p, *list); 17 | } 18 | void apply(List event, void *arg1, void *arg2) { 19 | if (event) { 20 | List lp = event; 21 | do { 22 | struct entry *p = lp->x; 23 | (*p->func)(p->cl, arg1, arg2); 24 | lp = lp->link; 25 | } while (lp != event); 26 | } 27 | } 28 | 29 | -------------------------------------------------------------------------------- /code/tools/lcc/src/inits.c: -------------------------------------------------------------------------------- 1 | void init(int argc, char *argv[]) { 2 | {extern void input_init(int, char *[]); input_init(argc, argv);} 3 | {extern void main_init(int, char *[]); main_init(argc, argv);} 4 | {extern void prof_init(int, char *[]); prof_init(argc, argv);} 5 | {extern void trace_init(int, char *[]); trace_init(argc, argv);} 6 | {extern void type_init(int, char *[]); type_init(argc, argv);} 7 | } 8 | -------------------------------------------------------------------------------- /code/tools/lcc/src/list.c: -------------------------------------------------------------------------------- 1 | #include "c.h" 2 | 3 | 4 | static List freenodes; /* free list nodes */ 5 | 6 | /* append - append x to list, return new list */ 7 | List append(void *x, List list) { 8 | List new; 9 | 10 | if ((new = freenodes) != NULL) 11 | freenodes = freenodes->link; 12 | else 13 | NEW(new, PERM); 14 | if (list) { 15 | new->link = list->link; 16 | list->link = new; 17 | } else 18 | new->link = new; 19 | new->x = x; 20 | return new; 21 | } 22 | 23 | /* length - # elements in list */ 24 | int length(List list) { 25 | int n = 0; 26 | 27 | if (list) { 28 | List lp = list; 29 | do 30 | n++; 31 | while ((lp = lp->link) != list); 32 | } 33 | return n; 34 | } 35 | 36 | /* ltov - convert list to a NULL-terminated vector allocated in arena */ 37 | void *ltov(List *list, unsigned arena) { 38 | int i = 0; 39 | void **array = newarray(length(*list) + 1, sizeof array[0], arena); 40 | 41 | if (*list) { 42 | List lp = *list; 43 | do { 44 | lp = lp->link; 45 | array[i++] = lp->x; 46 | } while (lp != *list); 47 | #ifndef PURIFY 48 | lp = (*list)->link; 49 | (*list)->link = freenodes; 50 | freenodes = lp; 51 | #endif 52 | } 53 | *list = NULL; 54 | array[i] = NULL; 55 | return array; 56 | } 57 | -------------------------------------------------------------------------------- /code/tools/stringify.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | 6 | int main(int argc, char **argv) 7 | { 8 | FILE *ifp; 9 | FILE *ofp; 10 | char buffer[1024]; 11 | 12 | if(argc < 3) 13 | return 1; 14 | 15 | char *inFile = argv[1]; 16 | char *outFile = argv[2]; 17 | 18 | ifp = fopen(inFile, "r"); 19 | if(!ifp) 20 | return 2; 21 | 22 | ofp = fopen(outFile, "w"); 23 | if(!ofp) 24 | return 3; 25 | 26 | // Strip extension 27 | char *base = basename(inFile); 28 | *strrchr(base, '.') = '\0'; 29 | 30 | fprintf(ofp, "const char *fallbackShader_%s =\n", base); 31 | 32 | while(fgets(buffer, sizeof(buffer), ifp)) 33 | { 34 | // Strip trailing whitespace from line 35 | char *end = buffer + strlen(buffer) - 1; 36 | while(end >= buffer && isspace(*end)) 37 | end--; 38 | 39 | end[1] = '\0'; 40 | 41 | // Write line enquoted, with a newline 42 | fprintf(ofp, "\"%s\\n\"\n", buffer); 43 | } 44 | 45 | fprintf(ofp, ";\n"); 46 | 47 | fclose(ifp); 48 | fclose(ofp); 49 | 50 | return 0; 51 | } 52 | -------------------------------------------------------------------------------- /code/zlib/inffast.h: -------------------------------------------------------------------------------- 1 | /* inffast.h -- header to use inffast.c 2 | * Copyright (C) 1995-2003 Mark Adler 3 | * For conditions of distribution and use, see copyright notice in zlib.h 4 | */ 5 | 6 | /* WARNING: this file should *not* be used by applications. It is 7 | part of the implementation of the compression library and is 8 | subject to change. Applications should only use zlib.h. 9 | */ 10 | 11 | void inflate_fast OF((z_streamp strm, unsigned start)); 12 | -------------------------------------------------------------------------------- /misc/ReadMe-OSX.rtf: -------------------------------------------------------------------------------- 1 | {\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf430 2 | {\fonttbl\f0\fswiss\fcharset0 ArialMT;} 3 | {\colortbl;\red255\green255\blue255;} 4 | \paperw11905\paperh16837\margl1440\margr1440\vieww11380\viewh12260\viewkind0 5 | \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural 6 | 7 | \f0\b\fs24 \cf0 Welcome to ioquake3.\ 8 | \ 9 | You can find us on the web at:\ 10 | http://www.ioquake3.org/\ 11 | This is the 1.36 release for Mac OS X.\ 12 | If you run into any issues, please check out our website's discussion page for a place to talk about them and get help.\ 13 | http://ioquake3.org/discussion/\ 14 | \ 15 | To install, simply copy the ioquake3 folder to your applications directory, then copy the pak0.pk3 file\ 16 | from your legal Quake 3 Arena CDROM into the baseq3 sub-folder.\ 17 | You can also copy it over from a boot camp'd steam install or whatever. \ 18 | Just make sure to get your cd key as well.\ 19 | \ 20 | If you don't have Quake 3, check out some of the excellent games made with ioquake3:\ 21 | http://ioquake3.org/extras/derivative-games/\ 22 | \ 23 | On ioquake3.org you can also find links to the latest source for this release, packages for other platforms, and more.\ 24 | I hope to see you on server.ioquake3.org soon!\ 25 | -\ 26 | Thanks,\ 27 | Zachary Slater\ 28 | zachary@ioquake.org\ 29 | } -------------------------------------------------------------------------------- /misc/ioquake3-folder.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/ioquake3-folder.icns -------------------------------------------------------------------------------- /misc/linux/q3a.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=This service spawns an ioquake3 Internet server 3 | # A map will need to be loaded for players to be able to join. 4 | # For additional settings see http://wiki.ioquake3.org/Sys_Admin_Guide 5 | 6 | [Service] 7 | User=q3a 8 | ExecStart=/usr/local/games/quake3/ioq3ded.x86_64 +set dedicated 2 9 | Restart=on-abort 10 | 11 | [Install] 12 | WantedBy=multi-user.target 13 | -------------------------------------------------------------------------------- /misc/linux/start_server.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo "Edit this script to change the path to ioquake3's dedicated server executable and which binary if you aren't on x86_64." 3 | echo "Set the sv_dlURL setting to a url like http://yoursite.com/ioquake3_path for ioquake3 clients to download extra data." 4 | 5 | # sv_dlURL needs to have quotes escaped like \"http://yoursite.com/ioquake3_path\" or it will be set to "http:" in-game. 6 | 7 | ~/ioquake3/ioq3ded.x86_64 +set dedicated 2 +set sv_allowDownload 1 +set sv_dlURL \"\" +set com_hunkmegs 64 "$@" 8 | -------------------------------------------------------------------------------- /misc/msvc/cgame.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc/game.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | dllEntry 3 | vmMain -------------------------------------------------------------------------------- /misc/msvc/glsl_stringify.vbs: -------------------------------------------------------------------------------- 1 | Dim fso, infile, outfile, line 2 | Set fso = CreateObject("Scripting.FileSystemObject") 3 | Set infile = fso.OpenTextFile(WScript.Arguments(0)) 4 | Set outfile = fso.CreateTextFile(WScript.Arguments(1), True) 5 | 6 | outfile.WriteLine("const char *fallbackShader_" & fso.GetBaseName(WScript.Arguments(0)) & " =") 7 | While Not infile.AtEndOfStream 8 | line = infile.ReadLine 9 | line = Replace(line, "\", "\\") 10 | line = Replace(line, Chr(9), "\t") 11 | line = Replace(line, Chr(34), "\" & chr(34)) 12 | line = Chr(34) & line & "\n" & Chr(34) 13 | outfile.WriteLine(line) 14 | Wend 15 | outfile.WriteLine(";") 16 | 17 | infile.Close 18 | outfile.Close -------------------------------------------------------------------------------- /misc/msvc/q3_ui.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc/ui.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc12/cgame.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc12/game.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | dllEntry 3 | vmMain -------------------------------------------------------------------------------- /misc/msvc12/glsl_stringify.vbs: -------------------------------------------------------------------------------- 1 | Dim fso, infile, outfile, line 2 | Set fso = CreateObject("Scripting.FileSystemObject") 3 | Set infile = fso.OpenTextFile(WScript.Arguments(0)) 4 | Set outfile = fso.CreateTextFile(WScript.Arguments(1), True) 5 | 6 | outfile.WriteLine("const char *fallbackShader_" & fso.GetBaseName(WScript.Arguments(0)) & " =") 7 | While Not infile.AtEndOfStream 8 | line = infile.ReadLine 9 | line = Replace(line, "\", "\\") 10 | line = Replace(line, Chr(9), "\t") 11 | line = Replace(line, Chr(34), "\" & chr(34)) 12 | line = Chr(34) & line & "\n" & Chr(34) 13 | outfile.WriteLine(line) 14 | Wend 15 | outfile.WriteLine(";") 16 | 17 | infile.Close 18 | outfile.Close -------------------------------------------------------------------------------- /misc/msvc12/q3_ui.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc12/ui.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc142/cgame.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc142/game.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | dllEntry 3 | vmMain -------------------------------------------------------------------------------- /misc/msvc142/glsl_stringify.vbs: -------------------------------------------------------------------------------- 1 | Dim fso, infile, outfile, line 2 | Set fso = CreateObject("Scripting.FileSystemObject") 3 | Set infile = fso.OpenTextFile(WScript.Arguments(0)) 4 | Set outfile = fso.CreateTextFile(WScript.Arguments(1), True) 5 | 6 | outfile.WriteLine("const char *fallbackShader_" & fso.GetBaseName(WScript.Arguments(0)) & " =") 7 | While Not infile.AtEndOfStream 8 | line = infile.ReadLine 9 | line = Replace(line, "\", "\\") 10 | line = Replace(line, Chr(9), "\t") 11 | line = Replace(line, Chr(34), "\" & chr(34)) 12 | line = Chr(34) & line & "\n" & Chr(34) 13 | outfile.WriteLine(line) 14 | Wend 15 | outfile.WriteLine(";") 16 | 17 | infile.Close 18 | outfile.Close -------------------------------------------------------------------------------- /misc/msvc142/q3_ui.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/msvc142/ui.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | vmMain 3 | dllEntry -------------------------------------------------------------------------------- /misc/nsis/Makefile: -------------------------------------------------------------------------------- 1 | ifndef VERSION 2 | VERSION=1.36_SVN 3 | endif 4 | ifndef RELEASE 5 | RELEASE=0 6 | endif 7 | ifndef PLATFORM 8 | PLATFORM=mingw32 9 | endif 10 | ifndef ARCH 11 | ARCH=x86 12 | endif 13 | ifndef INSTALLDIR 14 | INSTALLDIR=. 15 | endif 16 | ifndef USE_RENDERER_DLOPEN 17 | USE_RENDERER_DLOPEN=1 18 | endif 19 | ifndef USE_OPENAL_DLOPEN 20 | USE_OPENAL_DLOPEN=1 21 | endif 22 | ifndef USE_CURL_DLOPEN 23 | USE_CURL_DLOPEN=0 24 | endif 25 | ifndef USE_INTERNAL_ZLIB 26 | USE_INTERNAL_ZLIB=1 27 | endif 28 | ifndef USE_INTERNAL_JPEG 29 | USE_INTERNAL_JPEG=1 30 | endif 31 | ifndef SDLDLL 32 | ifeq ($(ARCH),x86_64) 33 | SDLDLL=SDL264.dll 34 | else 35 | SDLDLL=SDL2.dll 36 | endif 37 | endif 38 | ifndef OPENALDLL 39 | ifeq ($(ARCH),x86_64) 40 | OPENALDLL=OpenAL64.dll 41 | else 42 | OPENALDLL=OpenAL32.dll 43 | endif 44 | endif 45 | 46 | DEFINES= 47 | ifeq ($(USE_RENDERER_DLOPEN),1) 48 | DEFINES+= -DUSE_RENDERER_DLOPEN 49 | endif 50 | ifeq ($(USE_OPENAL_DLOPEN),1) 51 | DEFINES+= -DUSE_OPENAL_DLOPEN 52 | endif 53 | ifeq ($(USE_CURL_DLOPEN),1) 54 | DEFINES+= -DUSE_CURL_DLOPEN 55 | endif 56 | ifeq ($(USE_INTERNAL_ZLIB),1) 57 | DEFINES+= -DUSE_INTERNAL_ZLIB 58 | endif 59 | ifeq ($(USE_INTERNAL_JPEG),1) 60 | DEFINES+= -DUSE_INTERNAL_JPEG 61 | endif 62 | 63 | 64 | all: ioquake3-$(VERSION)-$(RELEASE).$(ARCH).exe 65 | 66 | ioquake3.$(ARCH).nsi: ioquake3.nsi.in 67 | sed 's/XXXVERSIONXXX/$(VERSION)/;s/XXXRELEASEXXX/$(RELEASE)/;s/mingw32/$(PLATFORM)/g;s/x86/$(ARCH)/g;s/SDL2.dll/$(SDLDLL)/g;s/OpenAL32.dll/$(OPENALDLL)/g' < $< > $@ 68 | 69 | ioquake3-$(VERSION)-$(RELEASE).$(ARCH).exe: ioquake3.$(ARCH).nsi 70 | makensis $(DEFINES) ioquake3.$(ARCH).nsi 71 | 72 | clean: 73 | rm -rf *.exe ioquake3.$(ARCH).nsi 74 | 75 | install: 76 | mkdir -p $(INSTALLDIR) 77 | mv ioquake3-$(VERSION)-$(RELEASE).$(ARCH).exe $(INSTALLDIR) 78 | 79 | .PHONY: all clean 80 | 81 | -------------------------------------------------------------------------------- /misc/osx/start_server.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo "Edit this script to change the path to ioquake3's dedicated server executable." 3 | echo "Set the sv_dlURL setting to a url like http://yoursite.com/ioquake3_path for ioquake3 clients to download extra data." 4 | 5 | # sv_dlURL needs to have quotes escaped like \"http://yoursite.com/ioquake3_path\" or it will be set to "http:" in-game. 6 | 7 | /Applications/ioquake3/ioquake3.app/Contents/MacOS/ioq3ded +set dedicated 2 +set sv_allowDownload 1 +set sv_dlURL \"\" +set com_hunkmegs 64 "$@" 8 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/Controller.h: -------------------------------------------------------------------------------- 1 | // 2 | // Controller.h 3 | // ioquake3fe 4 | // 5 | // Created by Ben Wilber on 3/11/09. 6 | // Copyright 2009 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface Controller : NSObject { 12 | IBOutlet id argsTextField; 13 | NSTask *quakeTask; 14 | NSFileHandle *quakeOut; 15 | NSMutableData *quakeData; 16 | } 17 | 18 | - (IBAction)launch:(id)sender; 19 | - (void)readPipe:(NSNotification *)note; 20 | - (void)taskNote:(NSNotification *)note; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/osxfe/ioquake3fe/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/English.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/osxfe/ioquake3fe/English.lproj/Localizable.strings -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ErrorWindow.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | @interface ErrorWindow : NSObject { 4 | IBOutlet id errorWindow; 5 | IBOutlet id errorTextField; 6 | } 7 | 8 | - (void)bitch:(NSString *)errorlog; 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ErrorWindow.m: -------------------------------------------------------------------------------- 1 | #import "ErrorWindow.h" 2 | 3 | @implementation ErrorWindow 4 | 5 | - (void)bitch:(NSString *)errorlog { 6 | NSLog(errorlog); 7 | 8 | NSNib *nib = [[NSNib alloc] initWithNibNamed:@"ErrorWindow.nib" bundle:[NSBundle mainBundle]]; 9 | [nib instantiateNibWithOwner:self topLevelObjects:nil]; 10 | 11 | [errorWindow makeKeyWindow]; 12 | [errorTextField setFont:[NSFont userFixedPitchFontOfSize:12.0]]; 13 | [errorTextField setString:@""]; 14 | [[errorTextField textStorage] appendAttributedString:[[[NSAttributedString alloc] initWithString:errorlog] autorelease]]; 15 | [errorTextField scrollRangeToVisible:NSMakeRange([[errorTextField string] length], 0)]; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ErrorWindowController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ErrorWindowController.h 3 | // ioquake3fe 4 | // 5 | // Created by Ben Wilber on 3/11/09. 6 | // Copyright 2009 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | @interface ErrorWindowController : NSWindowController { 13 | 14 | } 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ErrorWindowController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ErrorWindowController.m 3 | // ioquake3fe 4 | // 5 | // Created by Ben Wilber on 3/11/09. 6 | // Copyright 2009 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "ErrorWindowController.h" 10 | 11 | @implementation ErrorWindowController 12 | 13 | // yes, a whole class just so the fucking app will quit 14 | 15 | - (BOOL)windowShouldClose:(id)sender { 16 | [NSApp terminate:self]; 17 | return YES; 18 | } 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | quake3_flat 11 | CFBundleIdentifier 12 | org.icculus.quake3 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | NSMainNibFile 26 | MainMenu 27 | NSPrincipalClass 28 | NSApplication 29 | 30 | 31 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ioquake3.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/osxfe/ioquake3fe/ioquake3.icns -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ioquake3fe.xcodeproj/TemplateIcon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/osxfe/ioquake3fe/ioquake3fe.xcodeproj/TemplateIcon.icns -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/ioquake3fe_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'ioquake3fe' target in the 'ioquake3fe' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /misc/osxfe/ioquake3fe/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ioquake3fe 4 | // 5 | // Created by Ben Wilber on 3/11/09. 6 | // Copyright __MyCompanyName__ 2009. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | return NSApplicationMain(argc, (const char **) argv); 14 | } 15 | -------------------------------------------------------------------------------- /misc/quake3-tango.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3-tango.png -------------------------------------------------------------------------------- /misc/quake3-tango.xcf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3-tango.xcf -------------------------------------------------------------------------------- /misc/quake3.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3.icns -------------------------------------------------------------------------------- /misc/quake3.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3.ico -------------------------------------------------------------------------------- /misc/quake3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3.png -------------------------------------------------------------------------------- /misc/quake3_flat.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.icns -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_128x128.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_128x128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_128x128@2x.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_16x16.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_16x16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_16x16@2x.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_256x256.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_256x256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_256x256@2x.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_32x32.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_32x32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_32x32@2x.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_512x512.png -------------------------------------------------------------------------------- /misc/quake3_flat.iconset/icon_512x512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/quake3_flat.iconset/icon_512x512@2x.png -------------------------------------------------------------------------------- /misc/setup/Makefile: -------------------------------------------------------------------------------- 1 | VERSION=1.36 2 | RELEASE=svn 3 | 4 | all: 5 | VERSION=$(VERSION) RELEASE=$(RELEASE) ./doit 6 | 7 | sign: 8 | for i in *.run; do \ 9 | gpg -bao $$i.asc $$i; \ 10 | done 11 | 12 | clean: 13 | rm -rf *.run image defines.m4 14 | 15 | .PHONY: all sign clean 16 | -------------------------------------------------------------------------------- /misc/setup/install-desktop-files.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | if ! test -e "$SETUP_INSTALLPATH"/ioquake3.desktop.in; then 4 | exit 0 5 | fi 6 | xdg_desktop_menu=`which xdg-desktop-menu 2>/dev/null` 7 | if test "x$xdg_desktop_menu" = x; then 8 | xdg_desktop_menu=./xdg-desktop-menu 9 | fi 10 | sed -e "s#^Exec=.*#Exec=$SETUP_INSTALLPATH/ioquake3#" \ 11 | -e "s#^Icon=.*#Icon=$SETUP_INSTALLPATH/quake3.png#" \ 12 | < $SETUP_INSTALLPATH/ioquake3.desktop.in \ 13 | > $SETUP_INSTALLPATH/ioquake3.desktop 14 | $xdg_desktop_menu install --novendor $SETUP_INSTALLPATH/ioquake3.desktop 15 | -------------------------------------------------------------------------------- /misc/setup/ioq3demo.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | readlink() { 4 | local path=$1 ll 5 | 6 | if [ -L "$path" ]; then 7 | ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" && 8 | echo "${ll/* -> }" 9 | else 10 | return 1 11 | fi 12 | } 13 | 14 | script=$0 15 | count=0 16 | while [ -L "$script" ] 17 | do 18 | script=$(readlink "$script") 19 | count=`expr $count + 1` 20 | if [ $count -gt 100 ] 21 | then 22 | echo "Too many symbolic links" 23 | exit 1 24 | fi 25 | done 26 | cd "`dirname $script`" 27 | 28 | 29 | lib=lib 30 | test -e lib64 && lib=lib64 31 | 32 | if test "x$LD_LIBRARY_PATH" = x; then 33 | LD_LIBRARY_PATH="`pwd`/$lib" 34 | else 35 | LD_LIBRARY_PATH="`pwd`/$lib:$LD_LIBRARY_PATH" 36 | fi 37 | export LD_LIBRARY_PATH 38 | 39 | archs=`uname -m` 40 | case "$archs" in 41 | i?86) archs=x86 ;; 42 | x86_64) archs="x86_64 x86" ;; 43 | ppc64) archs="ppc64 ppc" ;; 44 | esac 45 | 46 | for arch in $archs; do 47 | test -x ./ioquake3.$arch || continue 48 | exec ./ioquake3.$arch +set sv_pure 0 +set vm_cgame 0 +set vm_game 0 +set vm_ui 0 +set fs_game demoq3 "$@" 49 | done 50 | echo "could not execute ioquake3" >&2 51 | -------------------------------------------------------------------------------- /misc/setup/ioquake3.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | CWD=`pwd` 4 | BASE=$CWD/../.. 5 | if [ "$TMP" = "" ]; then 6 | TMP=/tmp 7 | fi 8 | 9 | # clean, update 10 | make -C $BASE clean || exit 1 11 | svn up $BASE || exit 1 12 | 13 | # extract version info 14 | VERSION=`grep "\#define *PRODUCT_VERSION" $BASE/code/qcommon/q_shared.h | \ 15 | sed -e 's/[^"]*"\(.*\)"/\1/'` 16 | 17 | SVN_REV=`LANG=C svnversion $BASE` 18 | if [ ! "$SVN_REV" = "" ]; then 19 | VERSION=${VERSION}_SVN${SVN_REV} 20 | fi 21 | 22 | PKG_VERSION=$VERSION 23 | 24 | ARCH=${ARCH:-i586} 25 | 26 | if [ "$ARCH" = "i?86" ]; then 27 | ARCHSUFFIX="x86" 28 | elif [ "$ARCH" = "x86_64" ]; then 29 | ARCHSUFFIX="x86_64" 30 | fi 31 | 32 | BUILD=${BUILD:-1_io} 33 | 34 | APP=ioquake3 35 | 36 | PKG=$TMP/package-$APP 37 | 38 | rm -rf $PKG 39 | mkdir -p $PKG 40 | 41 | # build 42 | make -C $BASE release copyfiles COPYDIR="$PKG"/usr/games/$APP|| exit 1 43 | 44 | # copy additional files 45 | cp $BASE/BUGS $BASE/COPYING.txt $BASE/ChangeLog $BASE/README $PKG/usr/games/$APP/ 46 | cat $CWD/$APP.SlackBuild > $PKG/usr/games/$APP/$APP.SlackBuild 47 | 48 | mkdir -p $PKG/usr/share/$APP/icons 49 | cp $BASE/misc/quake3.png $PKG/usr/share/$APP/icons/ioquake3.png 50 | 51 | mkdir -p $PKG/usr/bin 52 | cat >> $PKG/usr/bin/ioquake3 << EOF 53 | #!/bin/sh 54 | cd /usr/games/$APP/ 55 | ./ioquake3.${ARCHSUFFIX} \$* 56 | exit \$? 57 | EOF 58 | chmod 754 $PKG/usr/bin/ioquake3 59 | 60 | mkdir -p $PKG/usr/bin 61 | cat >> $PKG/usr/bin/ioq3ded << EOF 62 | #!/bin/sh 63 | cd /usr/games/$APP/ 64 | ./ioq3ded.${ARCHSUFFIX} \$* 65 | exit \$? 66 | EOF 67 | chmod 754 $PKG/usr/bin/ioq3ded 68 | 69 | mkdir -p $PKG/install 70 | cat $CWD/slack-desc > $PKG/install/slack-desc 71 | 72 | cat >> $PKG/install/doinst.sh << EOF 73 | chmod 754 /usr/games/$APP/*.${ARCHSUFFIX} 74 | chmod 754 /usr/bin/ioquake3 /usr/bin/ioq3ded 75 | EOF 76 | chmod +x $PKG/install/doinst.sh 77 | 78 | pushd $PKG 79 | chown -R root:root install/ || exit 1 80 | chown -R root:games usr/ || exit 1 81 | /sbin/makepkg -l y -c n $TMP/$APP-$VERSION-$ARCH-$BUILD.tgz 82 | popd 83 | 84 | -------------------------------------------------------------------------------- /misc/setup/ioquake3.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=ioquake3 3 | Exec=ioquake3 --uri %u 4 | Icon=quake3 5 | Type=Application 6 | Terminal=false 7 | Encoding=UTF-8 8 | Categories=Game;ActionGame; 9 | MimeType=x-scheme-handler/quake3; 10 | X-SuSE-translate=false 11 | -------------------------------------------------------------------------------- /misc/setup/ioquake3.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | readlink() { 4 | local path=$1 ll 5 | 6 | if [ -L "$path" ]; then 7 | ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" && 8 | echo "${ll##* -> }" 9 | else 10 | return 1 11 | fi 12 | } 13 | 14 | script=$0 15 | count=0 16 | while [ -L "$script" ] 17 | do 18 | script=$(readlink "$script") 19 | count=`expr $count + 1` 20 | if [ $count -gt 100 ] 21 | then 22 | echo "Too many symbolic links" 23 | exit 1 24 | fi 25 | done 26 | cd "`dirname $script`" 27 | 28 | 29 | lib=lib 30 | test -e lib64 && lib=lib64 31 | 32 | if test "x$LD_LIBRARY_PATH" = x; then 33 | LD_LIBRARY_PATH="`pwd`/$lib" 34 | else 35 | LD_LIBRARY_PATH="`pwd`/$lib:$LD_LIBRARY_PATH" 36 | fi 37 | export LD_LIBRARY_PATH 38 | 39 | archs=`uname -m` 40 | case "$archs" in 41 | i?86) archs=x86 ;; 42 | x86_64) archs="x86_64 x86" ;; 43 | ppc64) archs="ppc64 ppc" ;; 44 | esac 45 | 46 | for arch in $archs; do 47 | test -x ./ioquake3.$arch || continue 48 | exec ./ioquake3.$arch "$@" 49 | done 50 | echo "could not execute ioquake3" >&2 51 | -------------------------------------------------------------------------------- /misc/setup/org.ioquake3.ioquake3.metainfo.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.ioquake3.ioquake3 4 | ioquake3.desktop 5 | CC0-1.0 6 | GPL-2.0-or-later 7 | ioquake3 8 | Free and open-source Quake 3 based engine 9 | 10 |

11 | ioquake3 is a free and open-source software first person shooter engine based on the Quake 3: Arena and Quake 3: Team Arena source code. 12 |

13 |

14 | The source code is licensed under the GPL version 2, and was first released under that license by id software on August 20th, 2005. Since then, 15 | our dedicated team has been working hard to improve it, fixing bugs, and adding just the right new features to make the engine even better than before. 16 |

17 |
18 | https://ioquake3.org 19 | https://github.com/ioquake/ioq3/issues 20 | https://github.com/ioquake/ioq3 21 | The ioquake Group 22 | 23 | intense 24 | intense 25 | intense 26 | intense 27 | 28 |
29 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioq3ded.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Rev: $Id: ioq3ded.sh,v 1.9 2006/01/18 13:47:42 raistlin Exp raistlin $ 3 | # Needed to make symlinks/shortcuts work. 4 | # the binaries must run with correct working directory 5 | 6 | IOQ3_DIR=/usr/local/share/games/quake3 7 | 8 | if [ "x${LD_LIBRARY_PATH}" = "x" ]; then 9 | LD_LIBRARY_PATH="${IOQ3_DIR}/lib" 10 | else 11 | LD_LIBRARY_PATH="${IOQ3_DIR}/lib:${LD_LIBRARY_PATH}" 12 | fi 13 | export LD_LIBRARY_PATH 14 | 15 | COMPILE_PLATFORM=`uname|sed -e 's/_.*//'|tr '[:upper:]' '[:lower:]'` 16 | COMPILE_ARCH=`uname -p | sed -e 's/i.86/x86/'` 17 | 18 | EXEC_REL=release 19 | 20 | # EXEC_BIN=ioquake3.${COMPILE_ARCH} 21 | # EXEC_BIN=ioquake3-smp.${COMPILE_ARCH} 22 | EXEC_BIN=ioq3ded.${COMPILE_ARCH} 23 | 24 | EXEC_FLAGS="+set fs_basepath ${IOQ3_DIR} +set vm_game 1 +set vm_cgame 1 +set vm_ui 1 +set sv_pure 1 +set ttycon 0 +set com_ansiColor 0" 25 | 26 | EXEC_DIR_LIST="${IOQ3_DIR}" 27 | 28 | for d in ${EXEC_DIR_LIST} 29 | do 30 | if [ -d $d ]; then 31 | EXEC_DIR=${d} 32 | break 33 | fi 34 | done 35 | 36 | if [ "X${EXEC_DIR}" != "X" ]; then 37 | if [ ! -x ${EXEC_DIR}/${EXEC_BIN} ]; then 38 | echo "Executable ${EXEC_DIR}/${EXEC_BIN} not found!" ; exit 1 39 | fi 40 | cd ${IOQ3_DIR} && \ 41 | ${EXEC_DIR}/${EXEC_BIN} ${EXEC_FLAGS} $* 42 | exit $? 43 | else 44 | echo "No ioq3 binaries found!" 45 | exit 1 46 | fi 47 | 48 | 49 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Rev: $Id: ioquake3.sh,v 1.11 2006/01/18 13:47:42 raistlin Exp raistlin $ 3 | # Needed to make symlinks/shortcuts work. 4 | # the binaries must run with correct working directory 5 | 6 | IOQ3_DIR=/usr/local/share/games/quake3 7 | 8 | if [ "x${LD_LIBRARY_PATH}" = "x" ]; then 9 | LD_LIBRARY_PATH="${IOQ3_DIR}/lib" 10 | else 11 | LD_LIBRARY_PATH="${IOQ3_DIR}/lib:${LD_LIBRARY_PATH}" 12 | fi 13 | export LD_LIBRARY_PATH 14 | 15 | COMPILE_PLATFORM=`uname|sed -e 's/_.*//'|tr '[:upper:]' '[:lower:]'` 16 | COMPILE_ARCH=`uname -p | sed -e 's/i.86/x86/'` 17 | 18 | EXEC_REL=release 19 | 20 | EXEC_BIN=ioquake3.${COMPILE_ARCH} 21 | # EXEC_BIN=ioquake3-smp.${COMPILE_ARCH} 22 | # EXEC_BIN=ioq3ded.${COMPILE_ARCH} 23 | 24 | EXEC_FLAGS="+set fs_basepath ${IOQ3_DIR} +set vm_game 1 +set vm_cgame 1 +set vm_ui 1 +set sv_pure 1 +set ttycon 0 +set com_ansiColor 0" 25 | 26 | EXEC_DIR_LIST="${IOQ3_DIR}" 27 | 28 | for d in ${EXEC_DIR_LIST} 29 | do 30 | if [ -d $d ]; then 31 | EXEC_DIR=${d} 32 | break 33 | fi 34 | done 35 | 36 | if [ "X${EXEC_DIR}" != "X" ]; then 37 | if [ ! -x ${EXEC_DIR}/${EXEC_BIN} ]; then 38 | echo "Executable ${EXEC_DIR}/${EXEC_BIN} not found!" ; exit 1 39 | fi 40 | cd ${IOQ3_DIR} && \ 41 | ${EXEC_DIR}/${EXEC_BIN} ${EXEC_FLAGS} $* 42 | exit $? 43 | else 44 | echo "No ioq3 binaries found!" 45 | exit 1 46 | fi 47 | 48 | 49 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/depend: -------------------------------------------------------------------------------- 1 | P SUNWxwplt X Window System platform software 2 | P ioquake3d Icculus.Org Quake3 patch data files for Solaris 10 (X11,GLX,SDL) 3 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/pkginfo.template: -------------------------------------------------------------------------------- 1 | CLASSES=none 2 | BASEDIR=/usr/local/share/games 3 | TZ=PST 4 | PATH=/sbin:/usr/sbin:/usr/bin:/usr/sadm/install/bin 5 | PKG=ioquake3 6 | NAME=ioquake3 for Solaris 10 (X11,GLX,SDL) 7 | VERSION= 8 | CATEGORY=application,graphics,opengl 9 | DESC=Icculus.Org Quake3 for Solaris 10 (http://www.ioquake3.org/) 10 | VENDOR=http://www.ioquake3.org/ 11 | EMAIL=quake@cojot.name 12 | PKGSAV=/var/sadm/pkg/ioquake3/save 13 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/postinstall: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: postinstall,v 1.3 2006/01/21 12:54:52 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR/quake3 8 | dest_dir=${PKG_INSTALL_ROOT}/usr/local/bin 9 | 10 | if [ -d ${dest_dir} ]; then 11 | for inst_script in ioq3ded.sh ioquake3.sh 12 | do 13 | dest_script=${dest_dir}/${inst_script} 14 | if [ ! -h ${dest_script} ]; then 15 | ln -s ${quake3_dir}/${inst_script} ${dest_script} 16 | fi 17 | done 18 | fi 19 | 20 | exit 0 21 | 22 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/postremove: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postremove $Id: postremove,v 1.3 2006/01/21 12:54:52 coyote Exp $ 4 | # 5 | # postremove script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | dest_dir=${PKG_INSTALL_ROOT}/usr/local/bin 9 | 10 | if [ -d ${dest_dir} ]; then 11 | for inst_script in ioq3ded.sh ioquake3.sh 12 | do 13 | dest_script=${dest_dir}/${inst_script} 14 | if [ -h ${dest_script} ]; then 15 | rm -f ${dest_script} 16 | fi 17 | done 18 | fi 19 | 20 | exit 0 21 | 22 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/preinstall: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: preinstall,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/preremove: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: preremove,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/prototype.template: -------------------------------------------------------------------------------- 1 | !default 0755 root bin 2 | i pkginfo 3 | i copyright 4 | i depend 5 | i postinstall 6 | i postremove 7 | i preinstall 8 | i preremove 9 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3/space: -------------------------------------------------------------------------------- 1 | /usr/local/share 20000 15 2 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/depend: -------------------------------------------------------------------------------- 1 | P SUNWxwplt X Window System platform software 2 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/pkginfo.template: -------------------------------------------------------------------------------- 1 | CLASSES=none 2 | BASEDIR=/usr/local/share/games 3 | TZ=PST 4 | PATH=/sbin:/usr/sbin:/usr/bin:/usr/sadm/install/bin 5 | PKG=ioquake3d 6 | NAME=ioquake3 patch data files for Solaris 10 (X11,GLX,SDL) 7 | VERSION= 8 | CATEGORY=application,graphics,opengl 9 | DESC=ioquake3 patch data files for Solaris 10 (http://www.ioquake3.org/) 10 | VENDOR=http://www.ioquake3.org/ 11 | EMAIL=quake@cojot.name 12 | PKGSAV=/var/sadm/pkg/ioquake3d/save 13 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/postinstall: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: postinstall,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/postremove: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: postremove,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/preinstall: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: preinstall,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/preremove: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: preremove,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/prototype.template: -------------------------------------------------------------------------------- 1 | !default 0755 root bin 2 | i pkginfo 3 | i depend 4 | i postinstall 5 | i postremove 6 | i preinstall 7 | i preremove 8 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3d/space: -------------------------------------------------------------------------------- 1 | /usr/local/share 50000 100 2 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/depend: -------------------------------------------------------------------------------- 1 | P SUNWxwplt X Window System platform software 2 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/pkginfo.template: -------------------------------------------------------------------------------- 1 | CLASSES=none 2 | BASEDIR=/usr/local/share/games 3 | TZ=PST 4 | PATH=/sbin:/usr/sbin:/usr/bin:/usr/sadm/install/bin 5 | PKG=ioquake3m 6 | NAME=ioquake3 demo data files for Solaris 10 (X11,GLX,SDL) 7 | VERSION= 8 | CATEGORY=application,graphics,opengl 9 | DESC=ioquake3 demo data files for Solaris 10 (http://www.ioquake3.org/) 10 | VENDOR=http://www.ioquake3.org/ 11 | EMAIL=quake@cojot.name 12 | PKGSAV=/var/sadm/pkg/ioquake3m/save 13 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/postinstall: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: postinstall,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/postremove: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: postremove,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/preinstall: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: preinstall,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/preremove: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # @(#)postinstall $Id: preremove,v 1.2 2006/01/25 13:22:56 coyote Exp $ 4 | # 5 | # postinstall script for quake3 6 | 7 | quake3_dir=$BASEDIR 8 | 9 | exit 0 10 | 11 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/prototype.template: -------------------------------------------------------------------------------- 1 | !default 0755 root bin 2 | i pkginfo 3 | i depend 4 | i postinstall 5 | i postremove 6 | i preinstall 7 | i preremove 8 | -------------------------------------------------------------------------------- /misc/setup/pkg/ioquake3m/space: -------------------------------------------------------------------------------- 1 | /usr/local/share 50000 100 2 | -------------------------------------------------------------------------------- /misc/setup/preuninstall.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | rmdir --ignore-fail-on-non-empty demoq3 missionpack >/dev/null 2>&1 3 | if test -e "$SETUP_INSTALLPATH"/ioquake3.desktop.in; then 4 | xdg_desktop_menu=`which xdg-desktop-menu 2>/dev/null` 5 | if test "x$xdg_desktop_menu" = x; then 6 | xdg_desktop_menu=./xdg-desktop-menu 7 | fi 8 | $xdg_desktop_menu uninstall --novendor ioquake3.desktop 9 | rm ioquake3.desktop 10 | fi 11 | -------------------------------------------------------------------------------- /misc/setup/setup.xml.mod: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 33 | 34 | -------------------------------------------------------------------------------- /misc/setup/slack-desc: -------------------------------------------------------------------------------- 1 | |-----handy-ruler------------------------------------------------------| 2 | ioquake3: ioquake 3 - An open source Quake 3 distribution 3 | ioquake3: 4 | ioquake3: ioquake3 aims to build upon id Software's Quake 3 source code release. 5 | ioquake3: The source code was released on August 20, 2005 under the GPL. Since 6 | ioquake3: then code has been cleaned up, bugs have been fixed and features been 7 | ioquake3: added. 8 | ioquake3: The permanent goal is to create THE open source Quake 3 distribution 9 | ioquake3: upon which people base their games and projects. 10 | ioquake3: 11 | ioquake3: http://ioquake3.org/ 12 | ioquake3: 13 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.36 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 451f21cb-2020-12-19 23 | CGDisableCoalescedUpdates 24 | 25 | LSMinimumSystemVersion 26 | ${MACOSX_DEPLOYMENT_TARGET} 27 | NSHighResolutionCapable 28 | 29 | NSHumanReadableCopyright 30 | QUAKE III ARENA Copyright © 1999-2000 id Software, Inc. All rights reserved. 31 | NSPrincipalClass 32 | NSApplication 33 | 34 | 35 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'quake3' target in the 'quake3' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 10 | 12 | 13 | 15 | 16 | 18 | 19 | 21 | 22 | 23 | 26 | 28 | 29 | 31 | 32 | 33 | 36 | 38 | 39 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreviewsEnabled 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "filename" : "icon_16x16.png", 5 | "idiom" : "mac", 6 | "scale" : "1x", 7 | "size" : "16x16" 8 | }, 9 | { 10 | "filename" : "icon_16x16@2x.png", 11 | "idiom" : "mac", 12 | "scale" : "2x", 13 | "size" : "16x16" 14 | }, 15 | { 16 | "filename" : "icon_32x32.png", 17 | "idiom" : "mac", 18 | "scale" : "1x", 19 | "size" : "32x32" 20 | }, 21 | { 22 | "filename" : "icon_32x32@2x.png", 23 | "idiom" : "mac", 24 | "scale" : "2x", 25 | "size" : "32x32" 26 | }, 27 | { 28 | "filename" : "icon_128x128.png", 29 | "idiom" : "mac", 30 | "scale" : "1x", 31 | "size" : "128x128" 32 | }, 33 | { 34 | "filename" : "icon_128x128@2x.png", 35 | "idiom" : "mac", 36 | "scale" : "2x", 37 | "size" : "128x128" 38 | }, 39 | { 40 | "filename" : "icon_256x256.png", 41 | "idiom" : "mac", 42 | "scale" : "1x", 43 | "size" : "256x256" 44 | }, 45 | { 46 | "filename" : "icon_256x256@2x.png", 47 | "idiom" : "mac", 48 | "scale" : "2x", 49 | "size" : "256x256" 50 | }, 51 | { 52 | "filename" : "icon_512x512.png", 53 | "idiom" : "mac", 54 | "scale" : "1x", 55 | "size" : "512x512" 56 | }, 57 | { 58 | "filename" : "icon_512x512@2x.png", 59 | "idiom" : "mac", 60 | "scale" : "2x", 61 | "size" : "512x512" 62 | } 63 | ], 64 | "info" : { 65 | "author" : "xcode", 66 | "version" : 1 67 | } 68 | } 69 | -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_128x128.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_16x16.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_256x256.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_32x32.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_32x32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_32x32@2x.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_512x512.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_512x512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ioquake/ioq3/8d2c2b42a55598d99873203194d13161ec2789c6/misc/xcode/ioquake3/Images.xcassets/AppIcon.appiconset/icon_512x512@2x.png -------------------------------------------------------------------------------- /misc/xcode/ioquake3/ioquake3.entitlements: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | com.apple.security.cs.allow-unsigned-executable-memory 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/hud.txt: -------------------------------------------------------------------------------- 1 | // hud menu defs 2 | // 3 | { 4 | loadMenu { "ui/hud.menu" } 5 | loadMenu { "ui/score.menu" } 6 | loadMenu { "ui/teamscore.menu" } 7 | } 8 | -------------------------------------------------------------------------------- /ui/hud2.txt: -------------------------------------------------------------------------------- 1 | // hud menu defs 2 | // 3 | { 4 | loadMenu { "ui/min_hud.menu" } 5 | loadMenu { "ui/score.menu" } 6 | loadMenu { "ui/teamscore.menu" } 7 | } 8 | -------------------------------------------------------------------------------- /ui/ingame.txt: -------------------------------------------------------------------------------- 1 | // menu defs 2 | // 3 | { 4 | loadMenu { "ui/ingame.menu" } 5 | loadMenu { "ui/ingame_vote.menu" } 6 | loadMenu { "ui/ingame_about.menu" } 7 | loadMenu { "ui/ingame_controls.menu" } 8 | loadMenu { "ui/ingame_join.menu" } 9 | loadMenu { "ui/ingame_options.menu" } 10 | loadMenu { "ui/ingame_system.menu" } 11 | loadMenu { "ui/ingame_leave.menu" } 12 | loadMenu { "ui/ingame_player.menu" } 13 | loadMenu { "ui/ingame_addbot.menu" } 14 | loadMenu { "ui/ingame_callvote.menu" } 15 | loadMenu { "ui/ingame_orders.menu" } 16 | } 17 | -------------------------------------------------------------------------------- /ui/menus.txt: -------------------------------------------------------------------------------- 1 | // menu defs 2 | // 3 | { 4 | loadMenu { "ui/main.menu" } 5 | loadMenu { "ui/joinserver.menu" } 6 | loadMenu { "ui/filter.menu" } 7 | loadMenu { "ui/punkbuster.menu" } 8 | loadMenu { "ui/player.menu" } 9 | loadMenu { "ui/setup.menu" } 10 | loadMenu { "ui/fight.menu" } 11 | loadMenu { "ui/skirmish.menu" } 12 | loadMenu { "ui/createserver.menu" } 13 | loadMenu { "ui/controls.menu" } 14 | loadMenu { "ui/cdkey.menu" } 15 | loadMenu { "ui/system.menu" } 16 | loadMenu { "ui/options.menu" } 17 | loadMenu { "ui/help.menu" } 18 | loadMenu { "ui/ordershelp.menu" } 19 | loadMenu { "ui/mod.menu" } 20 | loadMenu { "ui/demo.menu" } 21 | loadMenu { "ui/cinematicmenu.menu" } 22 | loadMenu { "ui/credit.menu" } 23 | loadMenu { "ui/demo_quit.menu" } 24 | loadMenu { "ui/connect.menu" } 25 | loadMenu { "ui/powerup.menu" } 26 | loadMenu { "ui/password.menu" } 27 | loadMenu { "ui/quake3.menu" } 28 | loadMenu { "ui/quit.menu" } 29 | loadMenu { "ui/vid_restart.menu" } 30 | loadMenu { "ui/default.menu" } 31 | loadMenu { "ui/addfilter.menu" } 32 | loadMenu { "ui/error.menu" } 33 | loadMenu { "ui/serverinfo.menu" } 34 | loadMenu { "ui/findplayer.menu" } 35 | loadMenu { "ui/endofgame.menu" } 36 | loadMenu { "ui/quitcredit.menu" } 37 | loadMenu { "ui/resetscore.menu" } 38 | loadMenu { "ui/createfavorite.menu" } 39 | } 40 | --------------------------------------------------------------------------------