├── Driver ├── Driver.c ├── Driver.h ├── Driver.inf ├── Driver.sln ├── Driver.vcxproj ├── Driver.vcxproj.filters ├── Driver.vcxproj.user └── IO_Operations.h ├── Nullpointer ├── Features │ ├── Aimbot │ │ ├── Aimbot.c │ │ └── Aimbot.h │ ├── AntiFlash │ │ ├── AntiFlash.c │ │ └── AntiFlash.h │ ├── Entity │ │ ├── Entity.c │ │ └── Entity.h │ ├── Features.c │ ├── Features.h │ ├── Glow │ │ ├── Glow.c │ │ └── Glow.h │ └── TriggerBot │ │ ├── TriggerBot.c │ │ └── TriggerBot.h ├── GUI │ ├── GUI.c │ ├── GUI.h │ ├── NuklearDefinition.h │ ├── OverlaySetup │ │ ├── Overlay.c │ │ └── Overlay.h │ ├── Tabs │ │ ├── AimBot │ │ │ ├── AimTab.c │ │ │ └── AimTab.h │ │ ├── ESP │ │ │ ├── ESP.c │ │ │ └── ESP.h │ │ ├── Glow │ │ │ ├── GlowTab.c │ │ │ └── GlowTab.h │ │ ├── Misc │ │ │ ├── MiscTab.c │ │ │ └── MiscTab.h │ │ ├── TriggerBot │ │ │ ├── TriggerTab.c │ │ │ └── TriggerTab.h │ │ └── WarningPopup │ │ │ ├── WarningPopup.c │ │ │ └── WarningPopup.h │ └── Themes │ │ ├── NuklearThemes.c │ │ └── NuklearThemes.h ├── Libraries │ ├── include │ │ ├── SDL2 │ │ │ ├── SDL.h │ │ │ ├── SDL2_gfxPrimitives.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_image.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_ttf.h │ │ │ ├── SDL_types.h │ │ │ ├── SDL_version.h │ │ │ ├── SDL_video.h │ │ │ ├── SDL_vulkan.h │ │ │ ├── begin_code.h │ │ │ └── close_code.h │ │ ├── main.c │ │ ├── nuklear.h │ │ └── nuklear_sdl_renderer.h │ └── lib │ │ ├── SDL2.lib │ │ ├── SDL2_gfx.lib │ │ ├── SDL2_image.dll │ │ ├── SDL2_image.lib │ │ ├── SDL2_ttf.lib │ │ ├── SDL2main.lib │ │ └── SDL2test.lib ├── Math │ ├── Math.c │ └── Math.h ├── Memory │ ├── DRIVER │ │ ├── driverFunctions.c │ │ └── driverFunctions.h │ ├── WINAPI │ │ ├── winapi.c │ │ └── winapi.h │ ├── memory.c │ ├── memory.h │ └── sharedSpace.h ├── NullPointer.c ├── NullPointer.h ├── NullPointer.sln ├── NullPointer.vcxproj ├── NullPointer.vcxproj.filters ├── NullPointer.vcxproj.user ├── NullPointer │ └── x64 │ │ ├── Debug │ │ ├── ESP.obj │ │ ├── Features.obj │ │ ├── GUI.obj │ │ ├── GlowTab.obj │ │ ├── Math.obj │ │ ├── MiscTab.obj │ │ ├── NuklearThemes.obj │ │ ├── NullPointer.exe.recipe │ │ ├── NullPointer.ilk │ │ ├── NullPointer.log │ │ ├── NullPointer.obj │ │ ├── NullPointer.tlog │ │ │ ├── CL.command.1.tlog │ │ │ ├── CL.read.1.tlog │ │ │ ├── CL.write.1.tlog │ │ │ ├── Cl.items.tlog │ │ │ ├── NullPointer.lastbuildstate │ │ │ ├── link.command.1.tlog │ │ │ ├── link.read.1.tlog │ │ │ ├── link.secondary.1.tlog │ │ │ └── link.write.1.tlog │ │ ├── Overlay.obj │ │ ├── TriggerTab.obj │ │ ├── WarningPopup.obj │ │ ├── dependencies.obj │ │ ├── memory.obj │ │ ├── vc143.idb │ │ └── vc143.pdb │ │ └── Release │ │ ├── AimTab.obj │ │ ├── Aimbot.obj │ │ ├── AntiFlash.obj │ │ ├── ESP.obj │ │ ├── Entity.obj │ │ ├── Features.obj │ │ ├── GUI.obj │ │ ├── Glow.obj │ │ ├── GlowTab.obj │ │ ├── Math.obj │ │ ├── MiscTab.obj │ │ ├── NuklearThemes.obj │ │ ├── NullPointer.Build.CppClean.log │ │ ├── NullPointer.exe.recipe │ │ ├── NullPointer.iobj │ │ ├── NullPointer.ipdb │ │ ├── NullPointer.log │ │ ├── NullPointer.obj │ │ ├── NullPointer.tlog │ │ ├── CL.command.1.tlog │ │ ├── CL.read.1.tlog │ │ ├── CL.write.1.tlog │ │ ├── Cl.items.tlog │ │ ├── NullPointer.lastbuildstate │ │ ├── link.command.1.tlog │ │ ├── link.read.1.tlog │ │ ├── link.secondary.1.tlog │ │ └── link.write.1.tlog │ │ ├── NullPointer.vcxproj.FileListAbsolute.txt │ │ ├── Overlay.obj │ │ ├── TriggerBot.obj │ │ ├── TriggerTab.obj │ │ ├── Utils.obj │ │ ├── WarningPopup.obj │ │ ├── dependencies.obj │ │ ├── driverFunctions.obj │ │ ├── memory.obj │ │ ├── vc143.pdb │ │ └── winapi.obj ├── Offsets.h ├── Request.h ├── Utils │ ├── Utils.c │ └── Utils.h ├── dependencies.h ├── font │ └── FiraCode.ttf └── icons │ ├── aimbot.png │ ├── esp.png │ ├── glow.png │ ├── logo.png │ ├── misc.png │ ├── trigger.png │ └── watching.png └── README.md /Driver/Driver.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | #include 4 | #include "../Nullpointer/Request.h" 5 | #include "IO_Operations.h" 6 | 7 | 8 | NTKERNELAPI NTSTATUS MmCopyVirtualMemory(PEPROCESS SourceProcess, PVOID SourceAdress, PEPROCESS TargetProcess, PVOID TargetAdress, SIZE_T BufferSize, KPROCESSOR_MODE PreviousMode, PSIZE_T ReturnSize); 9 | NTKERNELAPI NTSTATUS IoCreateDriver(PUNICODE_STRING DriverName, PDRIVER_INITIALIZE InitFunction); 10 | NTKERNELAPI PVOID PsGetProcessSectionBaseAddress(__in PEPROCESS Process); 11 | -------------------------------------------------------------------------------- /Driver/Driver.inf: -------------------------------------------------------------------------------- 1 | ; 2 | ; Driver.inf 3 | ; 4 | 5 | [Version] 6 | Signature="$WINDOWS NT$" 7 | Class=System 8 | ClassGuid={4d36e97d-e325-11ce-bfc1-08002be10318} 9 | Provider=%ManufacturerName% 10 | DriverVer= 11 | CatalogFile=Driver.cat 12 | PnpLockdown=1 13 | 14 | [DestinationDirs] 15 | DefaultDestDir = 13 16 | 17 | [SourceDisksNames] 18 | 1 = %DiskName%,,,"" 19 | 20 | [SourceDisksFiles] 21 | 22 | [Manufacturer] 23 | %ManufacturerName%=Standard,NT$ARCH$.10.0...16299 ; %13% support introduced in build 16299 24 | 25 | [Standard.NT$ARCH$.10.0...16299] 26 | 27 | [Strings] 28 | ManufacturerName="9ght" ;TODO: Replace with your manufacturer name 29 | DiskName="Driver Source Disk" 30 | -------------------------------------------------------------------------------- /Driver/Driver.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 17 4 | VisualStudioVersion = 17.9.34728.123 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Driver", "Driver.vcxproj", "{AD08483F-C1D4-4C8B-B3EA-27D510CFF239}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|ARM64 = Debug|ARM64 11 | Debug|x64 = Debug|x64 12 | Debug|x86 = Debug|x86 13 | Release|ARM64 = Release|ARM64 14 | Release|x64 = Release|x64 15 | Release|x86 = Release|x86 16 | EndGlobalSection 17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 18 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|ARM64.ActiveCfg = Debug|ARM64 19 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|ARM64.Build.0 = Debug|ARM64 20 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|ARM64.Deploy.0 = Debug|ARM64 21 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x64.ActiveCfg = Debug|x64 22 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x64.Build.0 = Debug|x64 23 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x64.Deploy.0 = Debug|x64 24 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x86.ActiveCfg = Debug|x64 25 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x86.Build.0 = Debug|x64 26 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x86.Deploy.0 = Debug|x64 27 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|ARM64.ActiveCfg = Release|ARM64 28 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|ARM64.Build.0 = Release|ARM64 29 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|ARM64.Deploy.0 = Release|ARM64 30 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x64.ActiveCfg = Release|x64 31 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x64.Build.0 = Release|x64 32 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x64.Deploy.0 = Release|x64 33 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x86.ActiveCfg = Release|x64 34 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x86.Build.0 = Release|x64 35 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x86.Deploy.0 = Release|x64 36 | EndGlobalSection 37 | GlobalSection(SolutionProperties) = preSolution 38 | HideSolutionNode = FALSE 39 | EndGlobalSection 40 | GlobalSection(ExtensibilityGlobals) = postSolution 41 | SolutionGuid = {DE4DB50E-DBBA-434C-8FA1-FB132812F7B8} 42 | EndGlobalSection 43 | EndGlobal 44 | -------------------------------------------------------------------------------- /Driver/Driver.vcxproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | Debug 14 | ARM64 15 | 16 | 17 | Release 18 | ARM64 19 | 20 | 21 | 22 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239} 23 | {dd38f7fc-d7bd-488b-9242-7d8754cde80d} 24 | v4.5 25 | 12.0 26 | Debug 27 | x64 28 | Driver 29 | $(LatestTargetPlatformVersion) 30 | 31 | 32 | 33 | Windows10 34 | true 35 | WindowsKernelModeDriver10.0 36 | Driver 37 | WDM 38 | Spectre 39 | 40 | 41 | Windows10 42 | false 43 | WindowsKernelModeDriver10.0 44 | Driver 45 | WDM 46 | Spectre 47 | 48 | 49 | Windows10 50 | true 51 | WindowsKernelModeDriver10.0 52 | Driver 53 | WDM 54 | 55 | 56 | Windows10 57 | false 58 | WindowsKernelModeDriver10.0 59 | Driver 60 | WDM 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | DbgengKernelDebugger 72 | 73 | 74 | DbgengKernelDebugger 75 | 76 | 77 | DbgengKernelDebugger 78 | 79 | 80 | DbgengKernelDebugger 81 | 82 | 83 | 84 | sha256 85 | 86 | 87 | stdcpp20 88 | false 89 | 90 | 91 | DriverEntry 92 | %(AdditionalDependencies) 93 | 94 | 95 | 96 | 97 | sha256 98 | 99 | 100 | %(AdditionalDependencies) 101 | DriverEntry 102 | 103 | 104 | false 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | -------------------------------------------------------------------------------- /Driver/Driver.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 6 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 7 | 8 | 9 | {8E41214B-6785-4CFE-B992-037D68949A14} 10 | inf;inv;inx;mof;mc; 11 | 12 | 13 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 14 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 15 | 16 | 17 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 18 | h;hpp;hxx;hm;inl;inc;xsd 19 | 20 | 21 | 22 | 23 | Source_Files 24 | 25 | 26 | 27 | 28 | Header_Files 29 | 30 | 31 | Header_Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /Driver/Driver.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | WindowsLocalDebugger 5 | 6 | 7 | true 8 | 9 | -------------------------------------------------------------------------------- /Driver/IO_Operations.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #define IO_ATTACH CTL_CODE(FILE_DEVICE_UNKNOWN, 0x696, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) 3 | #define IO_READ CTL_CODE(FILE_DEVICE_UNKNOWN, 0x697, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) 4 | #define IO_WRITE CTL_CODE(FILE_DEVICE_UNKNOWN, 0x698, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) 5 | #define IO_GET_REQUEST CTL_CODE(FILE_DEVICE_UNKNOWN, 0x699, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) 6 | #define IO_BASE CTL_CODE(FILE_DEVICE_UNKNOWN, 0x700, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) 7 | #define IO_UNLOAD CTL_CODE(FILE_DEVICE_UNKNOWN, 0x701, METHOD_BUFFERED, FILE_SPECIAL_ACCESS) -------------------------------------------------------------------------------- /Nullpointer/Features/Aimbot/Aimbot.c: -------------------------------------------------------------------------------- 1 | #define OFFSETS 2 | #define ENTITY_STRUCTURE 3 | #define UTILS 4 | #include "Aimbot.h" 5 | 6 | void AimAtTarget(PEntity player, float distance, PFeaturesStates featuresPointer, PConfig data) { 7 | if (player->health < 0 || !player->pawn) 8 | return; 9 | 10 | if (featuresPointer->FOV == TRUE && distance > data->fovSize) 11 | return; 12 | 13 | else if (featuresPointer->FOV == FALSE && distance > WINDOW_WIDTH / 4) 14 | return; 15 | 16 | POINT mouse; 17 | GetCursorPos(&mouse); 18 | 19 | float angleX = player->screenHead.x - mouse.x; 20 | float angleY = player->screenHead.y - mouse.y; 21 | 22 | MoveMouse(angleX, angleY); 23 | } -------------------------------------------------------------------------------- /Nullpointer/Features/Aimbot/Aimbot.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../dependencies.h" 3 | 4 | void AimAtTarget(PEntity player, float distance, PFeaturesStates featuresPointer, PConfig data); -------------------------------------------------------------------------------- /Nullpointer/Features/AntiFlash/AntiFlash.c: -------------------------------------------------------------------------------- 1 | #define OFFSETS 2 | #define ENTITY_STRUCTURE 3 | #define MEMORY 4 | #include "AntiFlash.h" 5 | 6 | void _AntiFlash(PHANDLE driver, uintptr_t localPlayer) { 7 | float flashDuration; 8 | ReadMemory(*driver, (uintptr_t)(localPlayer + m_flFlashBangTime), &flashDuration, sizeof(float)); 9 | 10 | if (flashDuration > 0) 11 | WriteMemory(*driver, (uintptr_t)(localPlayer + m_flFlashBangTime), 0, sizeof(int)); 12 | } -------------------------------------------------------------------------------- /Nullpointer/Features/AntiFlash/AntiFlash.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../dependencies.h" 3 | 4 | void _AntiFlash(PHANDLE driver, uintptr_t localPlayer); -------------------------------------------------------------------------------- /Nullpointer/Features/Entity/Entity.c: -------------------------------------------------------------------------------- 1 | #define OFFSETS 2 | #define ENTITY_STRUCTURE 3 | #define MATH 4 | #define MEMORY 5 | #include "Entity.h" 6 | 7 | Entity InitializeEnemy(PHANDLE driver, uintptr_t listEntry2, int pawnHandle, PViewMatrix4x4 matrix) { 8 | Entity currentEnemy = { 0 }; 9 | 10 | ReadMemory(*driver, (uintptr_t)(listEntry2 + (0x78 * (pawnHandle & 0x1FF))), ¤tEnemy.pawn, sizeof(int*)); 11 | ReadMemory(*driver, (uintptr_t)(currentEnemy.pawn + m_iHealth), ¤tEnemy.health, sizeof(UINT8)); 12 | ReadMemory(*driver, (uintptr_t)(currentEnemy.pawn + m_iTeamNum), ¤tEnemy.team, sizeof(UINT8)); 13 | 14 | ReadMemory(*driver, (uintptr_t)(currentEnemy.pawn + m_vOldOrigin), ¤tEnemy.absOrigin, sizeof(Vector3)); 15 | ReadMemory(*driver, (uintptr_t)(currentEnemy.pawn + m_pGameSceneNode), ¤tEnemy.sceneNode, sizeof(int*)); 16 | ReadMemory(*driver, (uintptr_t)(currentEnemy.sceneNode + m_modelState + dwBoneMatrx), ¤tEnemy.model, sizeof(int*)); 17 | 18 | ReadMemory(*driver, (uintptr_t)(currentEnemy.pawn + m_bIsScoped), ¤tEnemy.isScoped, sizeof(boolean)); 19 | ReadMemory(*driver, (uintptr_t)(currentEnemy.pawn + m_bIsDefusing), ¤tEnemy.isDefusing, sizeof(boolean)); 20 | 21 | if (WorldToScreen(¤tEnemy.absOrigin, ¤tEnemy.position, matrix, WINDOW_WIDTH, WINDOW_HEIGHT) == 1) { 22 | Vector3 head; 23 | ReadMemory(*driver, (uintptr_t)(currentEnemy.model + (HEAD * 32)), &head, sizeof(Vector3)); 24 | 25 | if (WorldToScreen(&head, ¤tEnemy.screenHead, matrix, WINDOW_WIDTH, WINDOW_HEIGHT) == 1) { 26 | 27 | currentEnemy.height = (currentEnemy.position.y - currentEnemy.screenHead.y); 28 | currentEnemy.width = currentEnemy.height / 2.4f; 29 | } 30 | } 31 | 32 | return currentEnemy; 33 | } 34 | 35 | Entity InitializePlayer(PHANDLE driver, uintptr_t client) { 36 | Entity player = { 0 }; 37 | 38 | uintptr_t localPlayer; 39 | ReadMemory(*driver, (uintptr_t)(client + dwLocalPlayerPawn), &localPlayer, sizeof(int*)); 40 | 41 | UINT8 iHealth; 42 | ReadMemory(*driver, (uintptr_t)(localPlayer + m_iHealth), &iHealth, sizeof(int)); 43 | 44 | UINT8 team; 45 | ReadMemory(*driver, (uintptr_t)(localPlayer + m_iTeamNum), &team, sizeof(int)); 46 | 47 | player.pawn = localPlayer; 48 | player.health = iHealth; 49 | player.team = team; 50 | 51 | return player; 52 | } 53 | 54 | -------------------------------------------------------------------------------- /Nullpointer/Features/Entity/Entity.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../dependencies.h" 3 | 4 | Entity InitializeEnemy(PHANDLE driver, uintptr_t listEntry2, int pawnHandle, PViewMatrix4x4 matrix); 5 | Entity InitializePlayer(PHANDLE driver, uintptr_t client); -------------------------------------------------------------------------------- /Nullpointer/Features/Features.c: -------------------------------------------------------------------------------- 1 | #define ENTITY_STRUCTURE 2 | #define OFFSETS 3 | #define UTILS 4 | #define MEMORY 5 | #define MATH 6 | #define GUI 7 | #include "Features.h" 8 | 9 | PFeaturesStates featuresPointer; 10 | PEntity entitiesList = { 0 }; 11 | PConfig data = { 0 }; 12 | 13 | void InitPointersFeatures(PFeaturesStates statesPointer, PEntity array, PConfig config) { 14 | featuresPointer = statesPointer; 15 | entitiesList = array; 16 | data = config; 17 | } 18 | 19 | boolean NeedToLoop() { 20 | return featuresPointer->Aimbot || featuresPointer->RadarHack || featuresPointer->Glow || featuresPointer->Health || 21 | featuresPointer->Box || featuresPointer->Line || featuresPointer->ESPTeamCheck || featuresPointer->TriggerBot; 22 | } 23 | 24 | 25 | void MultiHack(PHANDLE driver, uintptr_t client) { 26 | 27 | Entity localPlayer = InitializePlayer(driver, client); 28 | 29 | static uintptr_t entityList; 30 | ReadMemory(*driver, (uintptr_t)((client + dwEntityList)), &entityList, sizeof(int*)); 31 | 32 | static uintptr_t listEntry; 33 | ReadMemory(*driver, (uintptr_t)(entityList + 0x10), &listEntry, sizeof(int*)); 34 | 35 | static ViewMatrix4x4 matrix; 36 | ReadMemory(*driver, (uintptr_t)(client + dwViewMatrix), &matrix.matrix, sizeof(int[4][4])); 37 | 38 | Entity nearestPlayer = { 0 }; 39 | 40 | if (NeedToLoop() == TRUE) { 41 | 42 | float minDist = 100000000; 43 | 44 | for (int i = 0; i < 32; i++) { 45 | 46 | if (listEntry == 0) 47 | continue; 48 | 49 | uintptr_t pawn; 50 | ReadMemory(*driver, (uintptr_t)(listEntry + (i * 0x78)), &pawn, sizeof(int*)); 51 | 52 | int entityIndex; 53 | ReadMemory(*driver, (uintptr_t)(localPlayer.pawn + m_iIDEntIndex), &entityIndex, sizeof(int)); 54 | 55 | uintptr_t triggerBotPawn; 56 | ReadMemory(*driver, (uintptr_t)(listEntry + (0x78 * (entityIndex & 0x1FF))), &triggerBotPawn, sizeof(int*)); 57 | 58 | UINT8 triggerEntityHealth; 59 | ReadMemory(*driver, (uintptr_t)(triggerBotPawn + m_iHealth), &triggerEntityHealth, sizeof(uint8_t)); 60 | 61 | UINT8 triggerEntityTeam; 62 | ReadMemory(*driver, (uintptr_t)(triggerBotPawn + m_iTeamNum), &triggerEntityTeam, sizeof(uint8_t)); 63 | 64 | int flags; 65 | ReadMemory(*driver, (uintptr_t)(localPlayer.pawn + m_fFlags), &flags, sizeof(int)); 66 | 67 | if (pawn == 0) 68 | continue; 69 | 70 | int pawnHandle; 71 | ReadMemory(*driver, (uintptr_t)(pawn + m_hPlayerPawn), &pawnHandle, sizeof(int)); 72 | 73 | if (pawnHandle == 0) 74 | continue; 75 | 76 | uintptr_t listEntry2; 77 | ReadMemory(*driver, (uintptr_t)(entityList + (0x8 * ((pawnHandle & 0x7FFF) >> 9) + 0x10)), &listEntry2, sizeof(int*)); 78 | 79 | Entity currenEnemy = InitializeEnemy(driver, listEntry2, pawnHandle, &matrix); 80 | 81 | if (currenEnemy.health <= 0) { 82 | currenEnemy.draw = 1; 83 | entitiesList[i] = currenEnemy; 84 | 85 | continue; 86 | } 87 | 88 | if (!featuresPointer->ESPTeamCheck && currenEnemy.team == localPlayer.team) { 89 | currenEnemy.draw = 1; 90 | entitiesList[i] = currenEnemy; 91 | 92 | continue; 93 | } 94 | 95 | else if (featuresPointer->ESPTeamCheck && localPlayer.team == currenEnemy.team) 96 | currenEnemy.isAlly = 1; 97 | 98 | float currentDist = CalculateDistance2D(&((Vector2) { WINDOW_WIDTH / 2, WINDOW_HEIGHT / 2 }), ¤Enemy.screenHead); 99 | 100 | if (currentDist < minDist) { 101 | minDist = currentDist; 102 | nearestPlayer = currenEnemy; 103 | } 104 | entitiesList[i] = currenEnemy; 105 | 106 | // [<-----FUNCS----->] 107 | 108 | // don't even ask fam why i check for flash 3 times, this shit ain't working without that 109 | 110 | if (featuresPointer->Glow == TRUE) 111 | _Glow(driver, currenEnemy.pawn, GetGlowColor()); 112 | 113 | if (featuresPointer->TriggerBot == 1 && entityIndex > 0 && triggerEntityHealth > 0) { 114 | _TriggerBot(&localPlayer, &triggerEntityTeam, &flags, featuresPointer, data); 115 | } 116 | 117 | if (featuresPointer->AntiFlash == 1 && localPlayer.health > 0) 118 | _AntiFlash(driver, localPlayer.pawn); 119 | 120 | if (featuresPointer->RadarHack == 1) // RadarHack 121 | WriteMemory(*driver, (uintptr_t)(currenEnemy.pawn + m_entitySpottedState + m_bSpotted), 1, sizeof(boolean)); 122 | } 123 | 124 | featuresPointer->poolLoaded = TRUE; 125 | 126 | if (featuresPointer->AntiFlash == 1 && localPlayer.health > 0) 127 | _AntiFlash(driver, localPlayer.pawn); 128 | 129 | if (featuresPointer->Aimbot == TRUE) { 130 | 131 | if (data->aimbotMode == HOLD && GetKeyState(data->keyEntry.keys[data->keyEntry.selectedKeyAim].keyID) & 0x8000) 132 | AimAtTarget(&nearestPlayer, minDist, featuresPointer, data); 133 | 134 | else if (data->aimbotMode == PRESS && GetKeyState(data->keyEntry.keys[data->keyEntry.selectedKeyAim].keyID)) 135 | AimAtTarget(&nearestPlayer, minDist, featuresPointer, data); 136 | } 137 | } 138 | 139 | if (featuresPointer->AntiFlash == 1 && localPlayer.health > 0) 140 | _AntiFlash(driver, localPlayer.pawn); 141 | 142 | nearestPlayer.pawn = NULL; 143 | 144 | Sleep(data->sleepTime); 145 | } -------------------------------------------------------------------------------- /Nullpointer/Features/Features.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "Aimbot/Aimbot.h" 3 | #include "Entity/Entity.h" 4 | #include "AntiFlash/AntiFlash.h" 5 | #include "Glow/Glow.h" 6 | #include "TriggerBot/TriggerBot.h" 7 | 8 | void MultiHack(PHANDLE driver, uintptr_t client); 9 | void InitPointersFeatures(PFeaturesStates statesPointer, PEntity array, PConfig config); 10 | -------------------------------------------------------------------------------- /Nullpointer/Features/Glow/Glow.c: -------------------------------------------------------------------------------- 1 | #define OFFSETS 2 | #define ENTITY_STRUCTURE 3 | #define MEMORY 4 | #include "Glow.h" 5 | 6 | void _Glow(PHANDLE driver, uintptr_t currentPawn, int color) { 7 | WriteMemory(*driver, (uintptr_t)(currentPawn + m_Glow + m_glowColorOverride), color, sizeof(int)); 8 | WriteMemory(*driver, (uintptr_t)(currentPawn + m_Glow + m_bGlowing), 1, 1); 9 | } -------------------------------------------------------------------------------- /Nullpointer/Features/Glow/Glow.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../dependencies.h" 3 | 4 | void _Glow(PHANDLE driver, uintptr_t currentPawn, int color); -------------------------------------------------------------------------------- /Nullpointer/Features/TriggerBot/TriggerBot.c: -------------------------------------------------------------------------------- 1 | #define OFFSETS 2 | #define ENTITY_STRUCTURE 3 | #define UTILS 4 | #include "TriggerBot.h" 5 | 6 | void Shoot(PConfig data) { 7 | if (data->triggerMode == HOLD && GetKeyState(data->keyEntry.keys[data->keyEntry.selectedKeyTrigger].keyID) & 0x8000) 8 | ClickMouse(data->sleepTriggerTime); 9 | 10 | else if (data->triggerMode == PRESS && GetKeyState(data->keyEntry.keys[data->keyEntry.selectedKeyTrigger].keyID)) 11 | ClickMouse(data->sleepTriggerTime); 12 | } 13 | 14 | void _TriggerBot(PEntity localPlayer, UINT8* triggerEntityTeam, int* flags, PFeaturesStates featuresPointer, PConfig data) { 15 | boolean notInAir = *flags & (1 << 0); 16 | 17 | if (notInAir) { 18 | 19 | Sleep(data->preShotDelay); 20 | 21 | if (featuresPointer->TriggerTeamCheck == TRUE && *triggerEntityTeam != localPlayer->team) 22 | Shoot(data); 23 | 24 | else if (featuresPointer->TriggerTeamCheck == FALSE) 25 | Shoot(data); 26 | 27 | Sleep(data->postShotDelay); 28 | 29 | } 30 | } -------------------------------------------------------------------------------- /Nullpointer/Features/TriggerBot/TriggerBot.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../dependencies.h" 3 | #include "../Entity/Entity.h" 4 | 5 | void _TriggerBot(PEntity localPlayer, UINT8* triggerEntityTeam, int* flags, PFeaturesStates featuresPointer, PConfig data); -------------------------------------------------------------------------------- /Nullpointer/GUI/GUI.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | // [<-----DECLARATIONS----->] 4 | #include "NuklearDefinition.h" 5 | #include "Tabs/ESP/ESP.h" 6 | #include "Tabs/TriggerBot/TriggerTab.h" 7 | #include "Tabs/Misc/MiscTab.h" 8 | #include "Tabs/Glow/GlowTab.h" 9 | #include "Tabs/AimBot/AimTab.h" 10 | 11 | #include "OverlaySetup/Overlay.h" 12 | 13 | // [<-----FUNCS----->] 14 | void showWindow(PFeaturesStates Features); 15 | void InitPointersGUI(PEntity array, PConfig config); 16 | unsigned int GetGlowColor(); 17 | 18 | #ifdef INTERNAL_GUI 19 | 20 | enum State { DISABLED, ENABLED }; 21 | 22 | enum Tabs { 23 | TAB_TRIGGERBOT, 24 | TAB_AIMBOT, 25 | TAB_GLOW, 26 | TAB_ESP, 27 | TAB_MISC, 28 | TAB_EXIT, 29 | TAB_COUNT 30 | }; 31 | 32 | #endif -------------------------------------------------------------------------------- /Nullpointer/GUI/NuklearDefinition.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "../dependencies.h" 4 | #include "../Libraries/include/SDL2/SDL.h" 5 | #include "../Libraries/include/SDL2/SDL2_gfxPrimitives.h" 6 | #include "../Libraries/include/SDL2/SDL_syswm.h" 7 | #include "../Libraries/include/SDL2/SDL_image.h" 8 | #include "../Libraries/include/nuklear.h" 9 | #include "../Libraries/include/nuklear_sdl_renderer.h" 10 | 11 | typedef struct _GUIConfig { 12 | struct nk_colorf boxColor; 13 | struct nk_colorf teamBoxColor; 14 | 15 | struct nk_colorf glowColor; 16 | struct nk_colorf lineColor; 17 | 18 | struct nk_colorf fovColor; 19 | struct nk_colorf hpColor; 20 | 21 | struct nk_colorf zoomColor; 22 | struct nk_colorf defuseColor; 23 | 24 | }GUIConfig, * PGUIConfig; 25 | 26 | typedef struct _AppInfo { 27 | struct nk_context* ctx; 28 | SDL_Window* win; 29 | SDL_Renderer* render; 30 | }AppInfo, * PAppInfo; 31 | 32 | typedef struct _Image { 33 | SDL_Surface* surface; 34 | SDL_Texture* texture; 35 | struct nk_image img; 36 | }Image, * PImage; -------------------------------------------------------------------------------- /Nullpointer/GUI/OverlaySetup/Overlay.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../NuklearDefinition.h" 3 | #include "../../Memory/memory.h" 4 | #include "../Themes/NuklearThemes.h" 5 | 6 | PAppInfo InitGUI(); 7 | 8 | void ShowLogo(PMemoryPool pool); 9 | void SetWindowTransparency(SDL_Window* window, boolean state); -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/AimBot/AimTab.c: -------------------------------------------------------------------------------- 1 | #define UTILS 2 | #include "AimTab.h" 3 | 4 | 5 | void _DrawMode(struct nk_context* ctx, PConfig config) { 6 | static enum Mode currentMode = HOLD; 7 | 8 | nk_layout_row_dynamic(ctx, 30, 2); 9 | if (nk_option_label(ctx, "Hold mode", currentMode == HOLD)) { 10 | config->aimbotMode = HOLD; 11 | currentMode = HOLD; 12 | 13 | } 14 | if (nk_option_label(ctx, "Press mode", currentMode == PRESS)) { 15 | config->aimbotMode = PRESS; 16 | currentMode = PRESS; 17 | } 18 | 19 | } 20 | 21 | void _DrawKeyBind(struct nk_context* ctx, PConfig config) { 22 | 23 | if (nk_combo_begin_label(ctx, config->keyEntry.keys[config->keyEntry.selectedKeyAim].name, nk_vec2(200, 300))) { 24 | nk_layout_row_dynamic(ctx, 25, 1); 25 | 26 | for (int i = 0; i <= 6; i++) { 27 | if (nk_combo_item_label(ctx, config->keyEntry.keys[i].name, NK_TEXT_LEFT)) { 28 | config->keyEntry.selectedKeyAim = i; 29 | nk_combo_close(ctx); 30 | } 31 | } 32 | 33 | 34 | nk_combo_end(ctx); 35 | } 36 | } 37 | 38 | void _showFOV(struct nk_context* ctx, PConfig conf) { 39 | static char buffer[8]; 40 | 41 | nk_layout_row_dynamic(ctx, 30, 3); 42 | 43 | nk_label(ctx, "FOV Value", NK_TEXT_ALIGN_LEFT); 44 | nk_slider_int(ctx, 1, &conf->fovSize, 180, 1); 45 | 46 | snprintf(buffer, sizeof(buffer), "%i", conf->fovSize); 47 | nk_label(ctx, buffer, NK_TEXT_ALIGN_RIGHT); 48 | } 49 | 50 | void _FOVCheck(struct nk_context* ctx, int* fov, PConfig conf, PFeaturesStates Features) { 51 | if (nk_check_label(ctx, "FOV", *fov == 1)) 52 | { 53 | *fov = 1; 54 | Features->FOV = TRUE; 55 | _showFOV(ctx, conf); 56 | 57 | } 58 | 59 | else 60 | { 61 | *fov = 0; 62 | Features->FOV = FALSE; 63 | } 64 | } 65 | 66 | void _EnabledCheck(struct nk_context* ctx, int* aimbot, int* fov, PFeaturesStates Features, PConfig config) { 67 | 68 | if (nk_check_label(ctx, "Enabled", *aimbot == 1)) 69 | { 70 | *aimbot = 1; 71 | Features->Aimbot = TRUE; 72 | _DrawKeyBind(ctx, config); 73 | _DrawMode(ctx, config); 74 | _FOVCheck(ctx, fov, config, Features); 75 | 76 | } 77 | 78 | else 79 | { 80 | *aimbot = 0; 81 | Features->Aimbot = FALSE; 82 | } 83 | 84 | } 85 | 86 | void ShowAimTab(struct nk_context* ctx, int* aimbot, int* fov, PFeaturesStates Features, PConfig config, PGUIConfig gconf) { 87 | nk_layout_row_dynamic(ctx, 30, 1); 88 | 89 | _EnabledCheck(ctx, aimbot, fov, Features, config); 90 | } -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/AimBot/AimTab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../NuklearDefinition.h" 3 | #include "../WarningPopup/WarningPopup.h" 4 | 5 | void ShowAimTab(struct nk_context* ctx, int* aimbot, int* fov, PFeaturesStates Features, PConfig config, PGUIConfig gconf); 6 | -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/ESP/ESP.c: -------------------------------------------------------------------------------- 1 | #include "ESP.h" 2 | 3 | void _showTeamBoxTree(struct nk_context* ctx, PGUIConfig conf) { 4 | if (nk_tree_push(ctx, NK_TREE_TAB, "Team Box Color", NK_MINIMIZED)) { 5 | 6 | nk_label(ctx, "Color: ", NK_TEXT_ALIGN_LEFT); 7 | nk_layout_row_static(ctx, 250, 250, 1); 8 | conf->teamBoxColor = nk_color_picker(ctx, conf->teamBoxColor, NK_RGBA); 9 | 10 | nk_tree_pop(ctx); 11 | } 12 | } 13 | 14 | void _teamCheckESP(struct nk_context* ctx, int* espTeamCheckState, PFeaturesStates Features, PConfig conf) { 15 | 16 | if (nk_check_label(ctx, "Team Check", *espTeamCheckState == 1)) 17 | { 18 | *espTeamCheckState = 1; 19 | Features->ESPTeamCheck = TRUE; 20 | _showTeamBoxTree(ctx, conf); 21 | } 22 | 23 | else 24 | { 25 | *espTeamCheckState = 0; 26 | Features->ESPTeamCheck = FALSE; 27 | } 28 | } 29 | 30 | void _showLinesTree(struct nk_context* ctx, int* line, PFeaturesStates Features, PGUIConfig conf) { 31 | if (nk_tree_push(ctx, NK_TREE_TAB, "Lines", NK_MINIMIZED)) { 32 | 33 | nk_layout_row_dynamic(ctx, 30, 1); 34 | if (nk_check_label(ctx, "Enable Lines", *line == 1)) { 35 | *line = 1; 36 | Features->Line = TRUE; 37 | 38 | } 39 | else { 40 | *line = 0; 41 | Features->Line = FALSE; 42 | } 43 | 44 | nk_label(ctx, "Color: ", NK_TEXT_ALIGN_LEFT); 45 | nk_layout_row_static(ctx, 250, 250, 1); 46 | conf->lineColor = nk_color_picker(ctx, conf->lineColor, NK_RGBA); 47 | 48 | nk_tree_pop(ctx); 49 | } 50 | } 51 | 52 | void _showBoxTree(struct nk_context* ctx, int* box, PFeaturesStates Features, PGUIConfig conf) { 53 | if (nk_tree_push(ctx, NK_TREE_TAB, "Boxes", NK_MINIMIZED)) { 54 | 55 | nk_layout_row_dynamic(ctx, 30, 1); 56 | if (nk_check_label(ctx, "Enable Boxes", *box == 1)) { 57 | *box = 1; 58 | Features->Box = TRUE; 59 | 60 | } 61 | else { 62 | *box = 0; 63 | Features->Box = FALSE; 64 | } 65 | 66 | nk_label(ctx, "Color: ", NK_TEXT_ALIGN_LEFT); 67 | nk_layout_row_static(ctx, 250, 250, 1); 68 | conf->boxColor = nk_color_picker(ctx, conf->boxColor, NK_RGBA); 69 | 70 | nk_tree_pop(ctx); 71 | } 72 | } 73 | 74 | void _showHPTree(struct nk_context* ctx, int* health, PFeaturesStates Features, PGUIConfig conf) { 75 | if (nk_tree_push(ctx, NK_TREE_TAB, "HP", NK_MINIMIZED)) { 76 | 77 | nk_layout_row_dynamic(ctx, 30, 1); 78 | if (nk_check_label(ctx, "Show HP", *health == 1)) { 79 | *health = 1; 80 | Features->Health = TRUE; 81 | 82 | } 83 | else { 84 | *health = 0; 85 | Features->Health = FALSE; 86 | } 87 | 88 | nk_label(ctx, "Color: ", NK_TEXT_ALIGN_LEFT); 89 | nk_layout_row_static(ctx, 250, 250, 1); 90 | conf->hpColor = nk_color_picker(ctx, conf->hpColor, NK_RGBA); 91 | 92 | nk_tree_pop(ctx); 93 | } 94 | } 95 | 96 | void _showZoomColorTree(struct nk_context* ctx, PGUIConfig conf) { 97 | if (nk_tree_push(ctx, NK_TREE_TAB, "Change zoom color", NK_MINIMIZED)) { 98 | 99 | nk_label(ctx, "Zoom Color: ", NK_TEXT_ALIGN_LEFT); 100 | nk_layout_row_static(ctx, 250, 250, 1); 101 | conf->zoomColor = nk_color_picker(ctx, conf->zoomColor, NK_RGBA); 102 | 103 | nk_tree_pop(ctx); 104 | } 105 | } 106 | 107 | void _showDefuseColorTree(struct nk_context* ctx, PGUIConfig conf) { 108 | if (nk_tree_push(ctx, NK_TREE_TAB, "Change defuse color", NK_MINIMIZED)) { 109 | 110 | nk_label(ctx, "Defuse Color: ", NK_TEXT_ALIGN_LEFT); 111 | nk_layout_row_static(ctx, 250, 250, 1); 112 | conf->defuseColor = nk_color_picker(ctx, conf->defuseColor, NK_RGBA); 113 | 114 | nk_tree_pop(ctx); 115 | } 116 | } 117 | 118 | void ShowESPTab(struct nk_context* ctx, int* espTeamCheckState, int* line, int* box, int* health, PFeaturesStates Features, PGUIConfig conf) { 119 | 120 | nk_layout_row_dynamic(ctx, 30, 1); 121 | nk_label(ctx, "Visual Settings", NK_TEXT_CENTERED); 122 | 123 | _teamCheckESP(ctx, espTeamCheckState, Features, conf); 124 | _showLinesTree(ctx, line, Features, conf); 125 | _showBoxTree(ctx, box, Features, conf); 126 | _showHPTree(ctx, health, Features, conf); 127 | _showZoomColorTree(ctx, conf); 128 | _showDefuseColorTree(ctx, conf); 129 | } -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/ESP/ESP.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../NuklearDefinition.h" 3 | 4 | void ShowESPTab(struct nk_context* ctx, int* espTeamCheckState, int* line, int* box, int* health, PFeaturesStates Features, PGUIConfig conf); -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/Glow/GlowTab.c: -------------------------------------------------------------------------------- 1 | #include "GlowTab.h" 2 | 3 | void ShowGlowTab(struct nk_context* ctx, int* wallhack, PFeaturesStates Features, PGUIConfig conf) { 4 | 5 | static boolean showPopup = 1; 6 | 7 | nk_layout_row_dynamic(ctx, 30, 1); 8 | if (nk_check_label(ctx, "Enabled", *wallhack == 1)) { 9 | *wallhack = 1; 10 | 11 | if (showPopup) 12 | WarningPopup(ctx, wallhack, &Features->Glow, &showPopup); 13 | } 14 | 15 | else { 16 | showPopup = 1; 17 | *wallhack = 0; 18 | Features->Glow = 0; 19 | } 20 | 21 | nk_label(ctx, "Glow Color: ", NK_TEXT_ALIGN_LEFT); 22 | nk_layout_row_static(ctx, 250, 250, 1); 23 | conf->glowColor = nk_color_picker(ctx, conf->glowColor, NK_RGBA); 24 | } 25 | -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/Glow/GlowTab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../NuklearDefinition.h" 3 | #include "../WarningPopup/WarningPopup.h" 4 | 5 | void ShowGlowTab(struct nk_context* ctx, int* wallhack, PFeaturesStates Features, PGUIConfig conf); -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/Misc/MiscTab.c: -------------------------------------------------------------------------------- 1 | #include "MiscTab.h" 2 | 3 | void _AntiFlashCheck(struct nk_context* ctx, int* antiFlash, PFeaturesStates Features) { 4 | static boolean showPopupAnti = 1; 5 | 6 | if (nk_check_label(ctx, "AntiFlash", *antiFlash == 1)) { 7 | *antiFlash = 1; 8 | 9 | if (showPopupAnti) 10 | WarningPopup(ctx, antiFlash, &Features->AntiFlash, &showPopupAnti); 11 | } 12 | 13 | else { 14 | showPopupAnti = 1; 15 | *antiFlash = 0; 16 | Features->AntiFlash = 0; 17 | } 18 | } 19 | 20 | void _DelaySleep(struct nk_context* ctx, PConfig conf) { 21 | static char buffer[8]; 22 | 23 | nk_layout_row_dynamic(ctx, 30, 3); 24 | 25 | nk_label(ctx, "Sleep Value", NK_TEXT_ALIGN_LEFT); 26 | nk_slider_int(ctx, 1, &conf->sleepTime, 180, 1); 27 | 28 | snprintf(buffer, sizeof(buffer), "%i", conf->sleepTime); 29 | nk_label(ctx, buffer, NK_TEXT_ALIGN_RIGHT); 30 | } 31 | 32 | void _RadarHackCheck(struct nk_context* ctx, int* radar, PFeaturesStates Features) { 33 | static boolean showPopup = 1; 34 | 35 | nk_layout_row_dynamic(ctx, 30, 1); 36 | if (nk_check_label(ctx, "RadarHack", *radar == 1)) { 37 | *radar = 1; 38 | 39 | if (showPopup) 40 | WarningPopup(ctx, radar, &Features->RadarHack, &showPopup); 41 | } 42 | 43 | else { 44 | showPopup = 1; 45 | *radar = 0; 46 | Features->RadarHack = 0; 47 | } 48 | } 49 | 50 | void _SleepTime(struct nk_context* ctx, PConfig config) { 51 | static int sleep = 0; 52 | 53 | if (nk_check_label(ctx, "Sleep Time", sleep == 1)) { 54 | sleep = 1; 55 | _DelaySleep(ctx, config); 56 | } 57 | 58 | else { 59 | config->sleepTime = 0; 60 | sleep = 0; 61 | } 62 | } 63 | 64 | void ShowMiscTab(struct nk_context* ctx, int* antiFlash, int* radar, PFeaturesStates Features, PConfig config) { 65 | 66 | _SleepTime(ctx, config); 67 | _RadarHackCheck(ctx, radar, Features); 68 | _AntiFlashCheck(ctx, antiFlash, Features); 69 | } -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/Misc/MiscTab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../NuklearDefinition.h" 3 | #include "../WarningPopup/WarningPopup.h" 4 | 5 | void ShowMiscTab(struct nk_context* ctx, int* antiFlash, int* radar, PFeaturesStates Features, PConfig config); -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/TriggerBot/TriggerTab.c: -------------------------------------------------------------------------------- 1 | #include "TriggerTab.h" 2 | 3 | 4 | void _TeamCheckBox(struct nk_context* ctx, int* teamCheck, PFeaturesStates Features) { 5 | 6 | if (nk_check_label(ctx, "Team Check", *teamCheck == 1)) { 7 | *teamCheck = 1; 8 | Features->TriggerTeamCheck = TRUE; 9 | } 10 | 11 | else { 12 | *teamCheck = 0; 13 | Features->TriggerTeamCheck = FALSE; 14 | } 15 | } 16 | 17 | void _KeyComboBox(struct nk_context* ctx, PConfig config) { 18 | 19 | if (nk_combo_begin_label(ctx, config->keyEntry.keys[config->keyEntry.selectedKeyTrigger].name, nk_vec2(200, 300))) { 20 | nk_layout_row_dynamic(ctx, 25, 1); 21 | 22 | for (int i = 0; i <= 6; i++) { 23 | if (nk_combo_item_label(ctx, config->keyEntry.keys[i].name, NK_TEXT_LEFT)) { 24 | config->keyEntry.selectedKeyTrigger = i; 25 | nk_combo_close(ctx); 26 | } 27 | } 28 | 29 | 30 | nk_combo_end(ctx); 31 | } 32 | } 33 | 34 | void _DrawTriggerMode(struct nk_context* ctx, PConfig config) { 35 | static enum Mode currentMode = HOLD; 36 | 37 | nk_layout_row_dynamic(ctx, 30, 2); 38 | if (nk_option_label(ctx, "Hold mode", currentMode == HOLD)) { 39 | config->triggerMode = HOLD; 40 | currentMode = HOLD; 41 | 42 | } 43 | if (nk_option_label(ctx, "Press mode", currentMode == PRESS)) { 44 | config->triggerMode = PRESS; 45 | currentMode = PRESS; 46 | } 47 | 48 | } 49 | 50 | void _PreDelaySlider(struct nk_context* ctx, PConfig conf) { 51 | static char buffer[8]; 52 | 53 | nk_layout_row_dynamic(ctx, 30, 3); 54 | 55 | nk_label(ctx, "Pre Shot Value (ms)", NK_TEXT_ALIGN_LEFT); 56 | nk_slider_int(ctx, 1, &conf->preShotDelay, 500, 1); 57 | 58 | snprintf(buffer, sizeof(buffer), "%i", conf->preShotDelay); 59 | nk_label(ctx, buffer, NK_TEXT_ALIGN_RIGHT); 60 | } 61 | 62 | void _PostDelaySlider(struct nk_context* ctx, PConfig conf) { 63 | static char buffer[8]; 64 | 65 | nk_layout_row_dynamic(ctx, 30, 3); 66 | 67 | nk_label(ctx, "Post Shot Value (ms)", NK_TEXT_ALIGN_LEFT); 68 | nk_slider_int(ctx, 1, &conf->postShotDelay, 500, 1); 69 | 70 | snprintf(buffer, sizeof(buffer), "%i", conf->postShotDelay); 71 | nk_label(ctx, buffer, NK_TEXT_ALIGN_RIGHT); 72 | } 73 | 74 | 75 | void _DelaySlider(struct nk_context*ctx, PConfig conf) { 76 | static char buffer[8]; 77 | 78 | nk_layout_row_dynamic(ctx, 30, 3); 79 | 80 | nk_label(ctx, "Delay Value between clicking (ms)", NK_TEXT_ALIGN_LEFT); 81 | nk_slider_int(ctx, 1, &conf->sleepTriggerTime, 500, 1); 82 | 83 | snprintf(buffer, sizeof(buffer), "%i", conf->sleepTriggerTime); 84 | nk_label(ctx, buffer, NK_TEXT_ALIGN_RIGHT); 85 | } 86 | 87 | void _ShootInAirCheck(struct nk_context* ctx, PConfig config) { 88 | 89 | static int shoot = 0; 90 | 91 | if (nk_check_label(ctx, "Shoot In Air", shoot == 1)) { 92 | shoot = 1; 93 | config->shootInAir = TRUE; 94 | } 95 | 96 | else { 97 | shoot = 0; 98 | config->shootInAir = FALSE; 99 | } 100 | } 101 | 102 | void _EnabledCheckBox(struct nk_context* ctx, int* triggerBot, PFeaturesStates Features, PConfig config) { 103 | 104 | if (nk_check_label(ctx, "Enabled", *triggerBot == 1)) { 105 | *triggerBot = 1; 106 | Features->TriggerBot = 1; 107 | 108 | _DrawTriggerMode(ctx, config); 109 | _DelaySlider(ctx, config); 110 | _PreDelaySlider(ctx, config); 111 | _PostDelaySlider(ctx, config); 112 | _KeyComboBox(ctx, config); 113 | //_ShootInAirCheck(ctx, config); 114 | } 115 | 116 | else { 117 | *triggerBot = 0; 118 | Features->TriggerBot = 0; 119 | } 120 | } 121 | 122 | void ShowTriggerTab(struct nk_context* ctx, int* triggerBot, int* teamCheck, PFeaturesStates Features, PConfig config) { 123 | 124 | nk_layout_row_dynamic(ctx, 50, 1); 125 | 126 | _TeamCheckBox(ctx, teamCheck, Features); 127 | _EnabledCheckBox(ctx, triggerBot, Features, config); 128 | } -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/TriggerBot/TriggerTab.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../NuklearDefinition.h" 3 | 4 | void ShowTriggerTab(struct nk_context* ctx, int* triggerBot, int* teamCheck, PFeaturesStates Features, PConfig config); -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/WarningPopup/WarningPopup.c: -------------------------------------------------------------------------------- 1 | #include "WarningPopup.h" 2 | 3 | void WarningPopup(struct nk_context* ctx, int* func, boolean* featureState, boolean* popupState) { 4 | //popup warning window 5 | if (nk_popup_begin(ctx, NK_POPUP_STATIC, "WARNING", NK_WINDOW_CLOSABLE, (struct nk_rect) { 150, 150, 500, 150 })) { 6 | nk_layout_row_dynamic(ctx, 30, 1); 7 | nk_label(ctx, "This function WRITES into the memory, are you sure?", NK_TEXT_CENTERED); 8 | 9 | nk_layout_row_dynamic(ctx, 30, 2); 10 | if (nk_button_label(ctx, "Yes")) { 11 | *popupState = 0; 12 | *featureState = 1; 13 | nk_popup_close(ctx); 14 | } 15 | if (nk_button_label(ctx, "No")) { 16 | *func = 0; 17 | nk_popup_close(ctx); 18 | } 19 | } 20 | nk_popup_end(ctx); 21 | } -------------------------------------------------------------------------------- /Nullpointer/GUI/Tabs/WarningPopup/WarningPopup.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../../NuklearDefinition.h" 3 | 4 | void WarningPopup(struct nk_context* ctx, int* func, boolean* featureState, boolean* popupState); -------------------------------------------------------------------------------- /Nullpointer/GUI/Themes/NuklearThemes.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/GUI/Themes/NuklearThemes.c -------------------------------------------------------------------------------- /Nullpointer/GUI/Themes/NuklearThemes.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../NuklearDefinition.h" 3 | 4 | void apply_9ght_style(struct nk_context* ctx); -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_bits.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_bits.h 24 | * 25 | * Functions for fiddling with bits and bitmasks. 26 | */ 27 | 28 | #ifndef SDL_bits_h_ 29 | #define SDL_bits_h_ 30 | 31 | #include "SDL_stdinc.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 | * \file SDL_bits.h 41 | */ 42 | 43 | /** 44 | * Get the index of the most significant bit. Result is undefined when called 45 | * with 0. This operation can also be stated as "count leading zeroes" and 46 | * "log base 2". 47 | * 48 | * \return the index of the most significant bit, or -1 if the value is 0. 49 | */ 50 | #if defined(__WATCOMC__) && defined(__386__) 51 | extern __inline int _SDL_bsr_watcom(Uint32); 52 | #pragma aux _SDL_bsr_watcom = \ 53 | "bsr eax, eax" \ 54 | parm [eax] nomemory \ 55 | value [eax] \ 56 | modify exact [eax] nomemory; 57 | #endif 58 | 59 | SDL_FORCE_INLINE int 60 | SDL_MostSignificantBitIndex32(Uint32 x) 61 | { 62 | #if defined(__GNUC__) && (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) 63 | /* Count Leading Zeroes builtin in GCC. 64 | * http://gcc.gnu.org/onlinedocs/gcc-4.3.4/gcc/Other-Builtins.html 65 | */ 66 | if (x == 0) { 67 | return -1; 68 | } 69 | return 31 - __builtin_clz(x); 70 | #elif defined(__WATCOMC__) && defined(__386__) 71 | if (x == 0) { 72 | return -1; 73 | } 74 | return _SDL_bsr_watcom(x); 75 | #elif defined(_MSC_VER) 76 | unsigned long index; 77 | if (_BitScanReverse(&index, x)) { 78 | return index; 79 | } 80 | return -1; 81 | #else 82 | /* Based off of Bit Twiddling Hacks by Sean Eron Anderson 83 | * , released in the public domain. 84 | * http://graphics.stanford.edu/~seander/bithacks.html#IntegerLog 85 | */ 86 | const Uint32 b[] = {0x2, 0xC, 0xF0, 0xFF00, 0xFFFF0000}; 87 | const int S[] = {1, 2, 4, 8, 16}; 88 | 89 | int msbIndex = 0; 90 | int i; 91 | 92 | if (x == 0) { 93 | return -1; 94 | } 95 | 96 | for (i = 4; i >= 0; i--) 97 | { 98 | if (x & b[i]) 99 | { 100 | x >>= S[i]; 101 | msbIndex |= S[i]; 102 | } 103 | } 104 | 105 | return msbIndex; 106 | #endif 107 | } 108 | 109 | SDL_FORCE_INLINE SDL_bool 110 | SDL_HasExactlyOneBitSet32(Uint32 x) 111 | { 112 | if (x && !(x & (x - 1))) { 113 | return SDL_TRUE; 114 | } 115 | return SDL_FALSE; 116 | } 117 | 118 | /* Ends C function definitions when using C++ */ 119 | #ifdef __cplusplus 120 | } 121 | #endif 122 | #include "close_code.h" 123 | 124 | #endif /* SDL_bits_h_ */ 125 | 126 | /* vi: set ts=4 sw=4 expandtab: */ 127 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_clipboard.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_clipboard.h 24 | * 25 | * Include file for SDL clipboard handling 26 | */ 27 | 28 | #ifndef SDL_clipboard_h_ 29 | #define SDL_clipboard_h_ 30 | 31 | #include "SDL_stdinc.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 | /* Function prototypes */ 40 | 41 | /** 42 | * Put UTF-8 text into the clipboard. 43 | * 44 | * \param text the text to store in the clipboard 45 | * \returns 0 on success or a negative error code on failure; call 46 | * SDL_GetError() for more information. 47 | * 48 | * \since This function is available since SDL 2.0.0. 49 | * 50 | * \sa SDL_GetClipboardText 51 | * \sa SDL_HasClipboardText 52 | */ 53 | extern DECLSPEC int SDLCALL SDL_SetClipboardText(const char *text); 54 | 55 | /** 56 | * Get UTF-8 text from the clipboard, which must be freed with SDL_free(). 57 | * 58 | * This functions returns empty string if there was not enough memory left for 59 | * a copy of the clipboard's content. 60 | * 61 | * \returns the clipboard text on success or an empty string on failure; call 62 | * SDL_GetError() for more information. Caller must call SDL_free() 63 | * on the returned pointer when done with it (even if there was an 64 | * error). 65 | * 66 | * \since This function is available since SDL 2.0.0. 67 | * 68 | * \sa SDL_HasClipboardText 69 | * \sa SDL_SetClipboardText 70 | */ 71 | extern DECLSPEC char * SDLCALL SDL_GetClipboardText(void); 72 | 73 | /** 74 | * Query whether the clipboard exists and contains a non-empty text string. 75 | * 76 | * \returns SDL_TRUE if the clipboard has text, or SDL_FALSE if it does not. 77 | * 78 | * \since This function is available since SDL 2.0.0. 79 | * 80 | * \sa SDL_GetClipboardText 81 | * \sa SDL_SetClipboardText 82 | */ 83 | extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); 84 | 85 | /** 86 | * Put UTF-8 text into the primary selection. 87 | * 88 | * \param text the text to store in the primary selection 89 | * \returns 0 on success or a negative error code on failure; call 90 | * SDL_GetError() for more information. 91 | * 92 | * \since This function is available since SDL 2.26.0. 93 | * 94 | * \sa SDL_GetPrimarySelectionText 95 | * \sa SDL_HasPrimarySelectionText 96 | */ 97 | extern DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text); 98 | 99 | /** 100 | * Get UTF-8 text from the primary selection, which must be freed with 101 | * SDL_free(). 102 | * 103 | * This functions returns empty string if there was not enough memory left for 104 | * a copy of the primary selection's content. 105 | * 106 | * \returns the primary selection text on success or an empty string on 107 | * failure; call SDL_GetError() for more information. Caller must 108 | * call SDL_free() on the returned pointer when done with it (even if 109 | * there was an error). 110 | * 111 | * \since This function is available since SDL 2.26.0. 112 | * 113 | * \sa SDL_HasPrimarySelectionText 114 | * \sa SDL_SetPrimarySelectionText 115 | */ 116 | extern DECLSPEC char * SDLCALL SDL_GetPrimarySelectionText(void); 117 | 118 | /** 119 | * Query whether the primary selection exists and contains a non-empty text 120 | * string. 121 | * 122 | * \returns SDL_TRUE if the primary selection has text, or SDL_FALSE if it 123 | * does not. 124 | * 125 | * \since This function is available since SDL 2.26.0. 126 | * 127 | * \sa SDL_GetPrimarySelectionText 128 | * \sa SDL_SetPrimarySelectionText 129 | */ 130 | extern DECLSPEC SDL_bool SDLCALL SDL_HasPrimarySelectionText(void); 131 | 132 | 133 | /* Ends C function definitions when using C++ */ 134 | #ifdef __cplusplus 135 | } 136 | #endif 137 | #include "close_code.h" 138 | 139 | #endif /* SDL_clipboard_h_ */ 140 | 141 | /* vi: set ts=4 sw=4 expandtab: */ 142 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_config.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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(__WINGDK__) 37 | #include "SDL_config_wingdk.h" 38 | #elif defined(__XBOXONE__) || defined(__XBOXSERIES__) 39 | #include "SDL_config_xbox.h" 40 | #elif defined(__MACOSX__) 41 | #include "SDL_config_macosx.h" 42 | #elif defined(__IPHONEOS__) 43 | #include "SDL_config_iphoneos.h" 44 | #elif defined(__ANDROID__) 45 | #include "SDL_config_android.h" 46 | #elif defined(__OS2__) 47 | #include "SDL_config_os2.h" 48 | #elif defined(__EMSCRIPTEN__) 49 | #include "SDL_config_emscripten.h" 50 | #elif defined(__NGAGE__) 51 | #include "SDL_config_ngage.h" 52 | #else 53 | /* This is a minimal configuration just to get SDL running on new platforms. */ 54 | #include "SDL_config_minimal.h" 55 | #endif /* platform config */ 56 | 57 | #ifdef USING_GENERATED_CONFIG_H 58 | #error Wrong SDL_config.h, check your include path? 59 | #endif 60 | 61 | #endif /* SDL_config_h_ */ 62 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_config_android.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_android_h_ 23 | #define SDL_config_android_h_ 24 | #define SDL_config_h_ 25 | 26 | #include "SDL_platform.h" 27 | 28 | /** 29 | * \file SDL_config_android.h 30 | * 31 | * This is a configuration that can be used to build SDL for Android 32 | */ 33 | 34 | #include 35 | 36 | #define HAVE_GCC_ATOMICS 1 37 | 38 | #define STDC_HEADERS 1 39 | #define HAVE_ALLOCA_H 1 40 | #define HAVE_CTYPE_H 1 41 | #define HAVE_INTTYPES_H 1 42 | #define HAVE_LIMITS_H 1 43 | #define HAVE_MATH_H 1 44 | #define HAVE_SIGNAL_H 1 45 | #define HAVE_STDINT_H 1 46 | #define HAVE_STDIO_H 1 47 | #define HAVE_STRING_H 1 48 | #define HAVE_SYS_TYPES_H 1 49 | 50 | /* C library functions */ 51 | #define HAVE_DLOPEN 1 52 | #define HAVE_MALLOC 1 53 | #define HAVE_CALLOC 1 54 | #define HAVE_REALLOC 1 55 | #define HAVE_FREE 1 56 | #define HAVE_ALLOCA 1 57 | #define HAVE_GETENV 1 58 | #define HAVE_SETENV 1 59 | #define HAVE_PUTENV 1 60 | #define HAVE_SETENV 1 61 | #define HAVE_UNSETENV 1 62 | #define HAVE_QSORT 1 63 | #define HAVE_BSEARCH 1 64 | #define HAVE_ABS 1 65 | #define HAVE_BCOPY 1 66 | #define HAVE_MEMSET 1 67 | #define HAVE_MEMCPY 1 68 | #define HAVE_MEMMOVE 1 69 | #define HAVE_MEMCMP 1 70 | #define HAVE_STRLEN 1 71 | #define HAVE_STRLCPY 1 72 | #define HAVE_STRLCAT 1 73 | #define HAVE_STRCHR 1 74 | #define HAVE_STRRCHR 1 75 | #define HAVE_STRSTR 1 76 | #define HAVE_STRTOK_R 1 77 | #define HAVE_STRTOL 1 78 | #define HAVE_STRTOUL 1 79 | #define HAVE_STRTOLL 1 80 | #define HAVE_STRTOULL 1 81 | #define HAVE_STRTOD 1 82 | #define HAVE_ATOI 1 83 | #define HAVE_ATOF 1 84 | #define HAVE_STRCMP 1 85 | #define HAVE_STRNCMP 1 86 | #define HAVE_STRCASECMP 1 87 | #define HAVE_STRNCASECMP 1 88 | #define HAVE_STRCASESTR 1 89 | #define HAVE_VSSCANF 1 90 | #define HAVE_VSNPRINTF 1 91 | #define HAVE_ACOS 1 92 | #define HAVE_ACOSF 1 93 | #define HAVE_ASIN 1 94 | #define HAVE_ASINF 1 95 | #define HAVE_ATAN 1 96 | #define HAVE_ATANF 1 97 | #define HAVE_ATAN2 1 98 | #define HAVE_ATAN2F 1 99 | #define HAVE_CEIL 1 100 | #define HAVE_CEILF 1 101 | #define HAVE_COPYSIGN 1 102 | #define HAVE_COPYSIGNF 1 103 | #define HAVE_COS 1 104 | #define HAVE_COSF 1 105 | #define HAVE_EXP 1 106 | #define HAVE_EXPF 1 107 | #define HAVE_FABS 1 108 | #define HAVE_FABSF 1 109 | #define HAVE_FLOOR 1 110 | #define HAVE_FLOORF 1 111 | #define HAVE_FMOD 1 112 | #define HAVE_FMODF 1 113 | #define HAVE_LOG 1 114 | #define HAVE_LOGF 1 115 | #define HAVE_LOG10 1 116 | #define HAVE_LOG10F 1 117 | #define HAVE_LROUND 1 118 | #define HAVE_LROUNDF 1 119 | #define HAVE_POW 1 120 | #define HAVE_POWF 1 121 | #define HAVE_ROUND 1 122 | #define HAVE_ROUNDF 1 123 | #define HAVE_SCALBN 1 124 | #define HAVE_SCALBNF 1 125 | #define HAVE_SIN 1 126 | #define HAVE_SINF 1 127 | #define HAVE_SQRT 1 128 | #define HAVE_SQRTF 1 129 | #define HAVE_TAN 1 130 | #define HAVE_TANF 1 131 | #define HAVE_TRUNC 1 132 | #define HAVE_TRUNCF 1 133 | #define HAVE_SIGACTION 1 134 | #define HAVE_SETJMP 1 135 | #define HAVE_NANOSLEEP 1 136 | #define HAVE_SYSCONF 1 137 | #define HAVE_CLOCK_GETTIME 1 138 | 139 | #ifdef __LP64__ 140 | #define SIZEOF_VOIDP 8 141 | #else 142 | #define SIZEOF_VOIDP 4 143 | #endif 144 | 145 | /* Enable various audio drivers */ 146 | #define SDL_AUDIO_DRIVER_ANDROID 1 147 | #define SDL_AUDIO_DRIVER_OPENSLES 1 148 | #define SDL_AUDIO_DRIVER_AAUDIO 1 149 | #define SDL_AUDIO_DRIVER_DUMMY 1 150 | 151 | /* Enable various input drivers */ 152 | #define SDL_JOYSTICK_ANDROID 1 153 | #define SDL_JOYSTICK_HIDAPI 1 154 | #define SDL_JOYSTICK_VIRTUAL 1 155 | #define SDL_HAPTIC_ANDROID 1 156 | 157 | /* Enable sensor driver */ 158 | #define SDL_SENSOR_ANDROID 1 159 | 160 | /* Enable various shared object loading systems */ 161 | #define SDL_LOADSO_DLOPEN 1 162 | 163 | /* Enable various threading systems */ 164 | #define SDL_THREAD_PTHREAD 1 165 | #define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 166 | 167 | /* Enable various timer systems */ 168 | #define SDL_TIMER_UNIX 1 169 | 170 | /* Enable various video drivers */ 171 | #define SDL_VIDEO_DRIVER_ANDROID 1 172 | 173 | /* Enable OpenGL ES */ 174 | #define SDL_VIDEO_OPENGL_ES 1 175 | #define SDL_VIDEO_OPENGL_ES2 1 176 | #define SDL_VIDEO_OPENGL_EGL 1 177 | #define SDL_VIDEO_RENDER_OGL_ES 1 178 | #define SDL_VIDEO_RENDER_OGL_ES2 1 179 | 180 | /* Enable Vulkan support */ 181 | /* Android does not support Vulkan in native code using the "armeabi" ABI. */ 182 | #if defined(__ARM_ARCH) && __ARM_ARCH < 7 183 | #define SDL_VIDEO_VULKAN 0 184 | #else 185 | #define SDL_VIDEO_VULKAN 1 186 | #endif 187 | 188 | /* Enable system power support */ 189 | #define SDL_POWER_ANDROID 1 190 | 191 | /* Enable the filesystem driver */ 192 | #define SDL_FILESYSTEM_ANDROID 1 193 | 194 | #endif /* SDL_config_android_h_ */ 195 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_config_minimal.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_minimal_h_ 23 | #define SDL_config_minimal_h_ 24 | #define SDL_config_h_ 25 | 26 | #include "SDL_platform.h" 27 | 28 | /** 29 | * \file SDL_config_minimal.h 30 | * 31 | * This is the minimal configuration that can be used to build SDL. 32 | */ 33 | 34 | #define HAVE_STDARG_H 1 35 | #define HAVE_STDDEF_H 1 36 | 37 | #if !defined(HAVE_STDINT_H) && !defined(_STDINT_H_) 38 | /* Most everything except Visual Studio 2008 and earlier has stdint.h now */ 39 | #if defined(_MSC_VER) && (_MSC_VER < 1600) 40 | typedef signed __int8 int8_t; 41 | typedef unsigned __int8 uint8_t; 42 | typedef signed __int16 int16_t; 43 | typedef unsigned __int16 uint16_t; 44 | typedef signed __int32 int32_t; 45 | typedef unsigned __int32 uint32_t; 46 | typedef signed __int64 int64_t; 47 | typedef unsigned __int64 uint64_t; 48 | #ifndef _UINTPTR_T_DEFINED 49 | #ifdef _WIN64 50 | typedef unsigned __int64 uintptr_t; 51 | #else 52 | typedef unsigned int uintptr_t; 53 | #endif 54 | #define _UINTPTR_T_DEFINED 55 | #endif 56 | #else 57 | #define HAVE_STDINT_H 1 58 | #endif /* Visual Studio 2008 */ 59 | #endif /* !_STDINT_H_ && !HAVE_STDINT_H */ 60 | 61 | #ifdef __GNUC__ 62 | #define HAVE_GCC_SYNC_LOCK_TEST_AND_SET 1 63 | #endif 64 | 65 | /* Enable the dummy audio driver (src/audio/dummy/\*.c) */ 66 | #define SDL_AUDIO_DRIVER_DUMMY 1 67 | 68 | /* Enable the stub joystick driver (src/joystick/dummy/\*.c) */ 69 | #define SDL_JOYSTICK_DISABLED 1 70 | 71 | /* Enable the stub haptic driver (src/haptic/dummy/\*.c) */ 72 | #define SDL_HAPTIC_DISABLED 1 73 | 74 | /* Enable the stub HIDAPI */ 75 | #define SDL_HIDAPI_DISABLED 1 76 | 77 | /* Enable the stub sensor driver (src/sensor/dummy/\*.c) */ 78 | #define SDL_SENSOR_DISABLED 1 79 | 80 | /* Enable the stub shared object loader (src/loadso/dummy/\*.c) */ 81 | #define SDL_LOADSO_DISABLED 1 82 | 83 | /* Enable the stub thread support (src/thread/generic/\*.c) */ 84 | #define SDL_THREADS_DISABLED 1 85 | 86 | /* Enable the stub timer support (src/timer/dummy/\*.c) */ 87 | #define SDL_TIMERS_DISABLED 1 88 | 89 | /* Enable the dummy video driver (src/video/dummy/\*.c) */ 90 | #define SDL_VIDEO_DRIVER_DUMMY 1 91 | 92 | /* Enable the dummy filesystem driver (src/filesystem/dummy/\*.c) */ 93 | #define SDL_FILESYSTEM_DUMMY 1 94 | 95 | #endif /* SDL_config_minimal_h_ */ 96 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_config_ngage.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_ngage_h_ 23 | #define SDL_config_ngage_h_ 24 | #define SDL_config_h_ 25 | 26 | #include "SDL_platform.h" 27 | 28 | typedef signed char int8_t; 29 | typedef unsigned char uint8_t; 30 | typedef signed short int16_t; 31 | typedef unsigned short uint16_t; 32 | typedef signed int int32_t; 33 | typedef unsigned int uint32_t; 34 | typedef signed long long int64_t; 35 | typedef unsigned long long uint64_t; 36 | typedef unsigned long uintptr_t; 37 | 38 | #define HAVE_STDARG_H 1 39 | #define HAVE_STDDEF_H 1 40 | #define HAVE_STDIO_H 1 41 | #define HAVE_STDLIB_H 1 42 | #define HAVE_MATH_H 1 43 | #define HAVE_CEIL 1 44 | #define HAVE_COPYSIGN 1 45 | #define HAVE_COS 1 46 | #define HAVE_EXP 1 47 | #define HAVE_FABS 1 48 | #define HAVE_FLOOR 1 49 | #define HAVE_LOG 1 50 | #define HAVE_LOG10 1 51 | #define HAVE_SCALBN 1 52 | #define HAVE_SIN 1 53 | #define HAVE_SQRT 1 54 | #define HAVE_TAN 1 55 | #define HAVE_MALLOC 1 56 | #define SDL_MAIN_NEEDED 1 57 | #define LACKS_SYS_MMAN_H 1 58 | 59 | /* Enable the N-Gage thread support (src/thread/ngage/\*.c) */ 60 | #define SDL_THREAD_NGAGE 1 61 | 62 | /* Enable the N-Gage timer support (src/timer/ngage/\*.c) */ 63 | #define SDL_TIMER_NGAGE 1 64 | 65 | /* Enable the N-Gage video driver (src/video/ngage/\*.c) */ 66 | #define SDL_VIDEO_DRIVER_NGAGE 1 67 | 68 | /* Enable the dummy audio driver (src/audio/dummy/\*.c) */ 69 | #define SDL_AUDIO_DRIVER_DUMMY 1 70 | 71 | /* Enable the stub joystick driver (src/joystick/dummy/\*.c) */ 72 | #define SDL_JOYSTICK_DISABLED 1 73 | 74 | /* Enable the stub haptic driver (src/haptic/dummy/\*.c) */ 75 | #define SDL_HAPTIC_DISABLED 1 76 | 77 | /* Enable the stub HIDAPI */ 78 | #define SDL_HIDAPI_DISABLED 1 79 | 80 | /* Enable the stub sensor driver (src/sensor/dummy/\*.c) */ 81 | #define SDL_SENSOR_DISABLED 1 82 | 83 | /* Enable the stub shared object loader (src/loadso/dummy/\*.c) */ 84 | #define SDL_LOADSO_DISABLED 1 85 | 86 | /* Enable the dummy filesystem driver (src/filesystem/dummy/\*.c) */ 87 | #define SDL_FILESYSTEM_DUMMY 1 88 | 89 | #endif /* SDL_config_ngage_h_ */ 90 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_config_pandora.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_pandora_h_ 23 | #define SDL_config_pandora_h_ 24 | #define SDL_config_h_ 25 | 26 | /* This is a set of defines to configure the SDL features */ 27 | 28 | /* General platform specific identifiers */ 29 | #include "SDL_platform.h" 30 | 31 | #ifdef __LP64__ 32 | #define SIZEOF_VOIDP 8 33 | #else 34 | #define SIZEOF_VOIDP 4 35 | #endif 36 | 37 | #define SDL_BYTEORDER 1234 38 | 39 | #define STDC_HEADERS 1 40 | #define HAVE_ALLOCA_H 1 41 | #define HAVE_CTYPE_H 1 42 | #define HAVE_ICONV_H 1 43 | #define HAVE_INTTYPES_H 1 44 | #define HAVE_LIMITS_H 1 45 | #define HAVE_MALLOC_H 1 46 | #define HAVE_MATH_H 1 47 | #define HAVE_MEMORY_H 1 48 | #define HAVE_SIGNAL_H 1 49 | #define HAVE_STDARG_H 1 50 | #define HAVE_STDINT_H 1 51 | #define HAVE_STDIO_H 1 52 | #define HAVE_STDLIB_H 1 53 | #define HAVE_STRINGS_H 1 54 | #define HAVE_STRING_H 1 55 | #define HAVE_SYS_TYPES_H 1 56 | 57 | #define HAVE_DLOPEN 1 58 | #define HAVE_MALLOC 1 59 | #define HAVE_CALLOC 1 60 | #define HAVE_REALLOC 1 61 | #define HAVE_FREE 1 62 | #define HAVE_ALLOCA 1 63 | #define HAVE_GETENV 1 64 | #define HAVE_SETENV 1 65 | #define HAVE_PUTENV 1 66 | #define HAVE_UNSETENV 1 67 | #define HAVE_QSORT 1 68 | #define HAVE_BSEARCH 1 69 | #define HAVE_ABS 1 70 | #define HAVE_BCOPY 1 71 | #define HAVE_MEMSET 1 72 | #define HAVE_MEMCPY 1 73 | #define HAVE_MEMMOVE 1 74 | #define HAVE_STRLEN 1 75 | #define HAVE_STRCHR 1 76 | #define HAVE_STRRCHR 1 77 | #define HAVE_STRSTR 1 78 | #define HAVE_STRTOL 1 79 | #define HAVE_STRTOUL 1 80 | #define HAVE_STRTOLL 1 81 | #define HAVE_STRTOULL 1 82 | #define HAVE_ATOI 1 83 | #define HAVE_ATOF 1 84 | #define HAVE_STRCMP 1 85 | #define HAVE_STRNCMP 1 86 | #define HAVE_STRCASECMP 1 87 | #define HAVE_STRNCASECMP 1 88 | #define HAVE_VSSCANF 1 89 | #define HAVE_VSNPRINTF 1 90 | #define HAVE_M_PI 1 91 | #define HAVE_CEIL 1 92 | #define HAVE_COPYSIGN 1 93 | #define HAVE_COS 1 94 | #define HAVE_COSF 1 95 | #define HAVE_EXP 1 96 | #define HAVE_FABS 1 97 | #define HAVE_FLOOR 1 98 | #define HAVE_LOG 1 99 | #define HAVE_LOG10 1 100 | #define HAVE_LROUND 1 101 | #define HAVE_LROUNDF 1 102 | #define HAVE_ROUND 1 103 | #define HAVE_ROUNDF 1 104 | #define HAVE_SCALBN 1 105 | #define HAVE_SIN 1 106 | #define HAVE_SINF 1 107 | #define HAVE_SQRT 1 108 | #define HAVE_SQRTF 1 109 | #define HAVE_TAN 1 110 | #define HAVE_TANF 1 111 | #define HAVE_TRUNC 1 112 | #define HAVE_TRUNCF 1 113 | #define HAVE_SIGACTION 1 114 | #define HAVE_SETJMP 1 115 | #define HAVE_NANOSLEEP 1 116 | 117 | #define SDL_AUDIO_DRIVER_DUMMY 1 118 | #define SDL_AUDIO_DRIVER_OSS 1 119 | 120 | #define SDL_INPUT_LINUXEV 1 121 | #define SDL_JOYSTICK_LINUX 1 122 | #define SDL_JOYSTICK_VIRTUAL 1 123 | #define SDL_HAPTIC_LINUX 1 124 | 125 | #define SDL_SENSOR_DUMMY 1 126 | 127 | #define SDL_LOADSO_DLOPEN 1 128 | 129 | #define SDL_THREAD_PTHREAD 1 130 | #define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP 1 131 | 132 | #define SDL_TIMER_UNIX 1 133 | #define SDL_FILESYSTEM_UNIX 1 134 | 135 | #define SDL_VIDEO_DRIVER_DUMMY 1 136 | #define SDL_VIDEO_DRIVER_X11 1 137 | #define SDL_VIDEO_DRIVER_PANDORA 1 138 | #define SDL_VIDEO_RENDER_OGL_ES 1 139 | #define SDL_VIDEO_OPENGL_ES 1 140 | 141 | #endif /* SDL_config_pandora_h_ */ 142 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_copying.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_error.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_error.h 24 | * 25 | * Simple error message routines for SDL. 26 | */ 27 | 28 | #ifndef SDL_error_h_ 29 | #define SDL_error_h_ 30 | 31 | #include "SDL_stdinc.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 | /* Public functions */ 40 | 41 | 42 | /** 43 | * Set the SDL error message for the current thread. 44 | * 45 | * Calling this function will replace any previous error message that was set. 46 | * 47 | * This function always returns -1, since SDL frequently uses -1 to signify an 48 | * failing result, leading to this idiom: 49 | * 50 | * ```c 51 | * if (error_code) { 52 | * return SDL_SetError("This operation has failed: %d", error_code); 53 | * } 54 | * ``` 55 | * 56 | * \param fmt a printf()-style message format string 57 | * \param ... additional parameters matching % tokens in the `fmt` string, if 58 | * any 59 | * \returns always -1. 60 | * 61 | * \since This function is available since SDL 2.0.0. 62 | * 63 | * \sa SDL_ClearError 64 | * \sa SDL_GetError 65 | */ 66 | extern DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); 67 | 68 | /** 69 | * Retrieve a message about the last error that occurred on the current 70 | * thread. 71 | * 72 | * It is possible for multiple errors to occur before calling SDL_GetError(). 73 | * Only the last error is returned. 74 | * 75 | * The message is only applicable when an SDL function has signaled an error. 76 | * You must check the return values of SDL function calls to determine when to 77 | * appropriately call SDL_GetError(). You should *not* use the results of 78 | * SDL_GetError() to decide if an error has occurred! Sometimes SDL will set 79 | * an error string even when reporting success. 80 | * 81 | * SDL will *not* clear the error string for successful API calls. You *must* 82 | * check return values for failure cases before you can assume the error 83 | * string applies. 84 | * 85 | * Error strings are set per-thread, so an error set in a different thread 86 | * will not interfere with the current thread's operation. 87 | * 88 | * The returned string is internally allocated and must not be freed by the 89 | * application. 90 | * 91 | * \returns a message with information about the specific error that occurred, 92 | * or an empty string if there hasn't been an error message set since 93 | * the last call to SDL_ClearError(). The message is only applicable 94 | * when an SDL function has signaled an error. You must check the 95 | * return values of SDL function calls to determine when to 96 | * appropriately call SDL_GetError(). 97 | * 98 | * \since This function is available since SDL 2.0.0. 99 | * 100 | * \sa SDL_ClearError 101 | * \sa SDL_SetError 102 | */ 103 | extern DECLSPEC const char *SDLCALL SDL_GetError(void); 104 | 105 | /** 106 | * Get the last error message that was set for the current thread. 107 | * 108 | * This allows the caller to copy the error string into a provided buffer, but 109 | * otherwise operates exactly the same as SDL_GetError(). 110 | * 111 | * \param errstr A buffer to fill with the last error message that was set for 112 | * the current thread 113 | * \param maxlen The size of the buffer pointed to by the errstr parameter 114 | * \returns the pointer passed in as the `errstr` parameter. 115 | * 116 | * \since This function is available since SDL 2.0.14. 117 | * 118 | * \sa SDL_GetError 119 | */ 120 | extern DECLSPEC char * SDLCALL SDL_GetErrorMsg(char *errstr, int maxlen); 121 | 122 | /** 123 | * Clear any previous error message for this thread. 124 | * 125 | * \since This function is available since SDL 2.0.0. 126 | * 127 | * \sa SDL_GetError 128 | * \sa SDL_SetError 129 | */ 130 | extern DECLSPEC void SDLCALL SDL_ClearError(void); 131 | 132 | /** 133 | * \name Internal error functions 134 | * 135 | * \internal 136 | * Private error reporting function - used internally. 137 | */ 138 | /* @{ */ 139 | #define SDL_OutOfMemory() SDL_Error(SDL_ENOMEM) 140 | #define SDL_Unsupported() SDL_Error(SDL_UNSUPPORTED) 141 | #define SDL_InvalidParamError(param) SDL_SetError("Parameter '%s' is invalid", (param)) 142 | typedef enum 143 | { 144 | SDL_ENOMEM, 145 | SDL_EFREAD, 146 | SDL_EFWRITE, 147 | SDL_EFSEEK, 148 | SDL_UNSUPPORTED, 149 | SDL_LASTERROR 150 | } SDL_errorcode; 151 | /* SDL_Error() unconditionally returns -1. */ 152 | extern DECLSPEC int SDLCALL SDL_Error(SDL_errorcode code); 153 | /* @} *//* Internal error functions */ 154 | 155 | /* Ends C function definitions when using C++ */ 156 | #ifdef __cplusplus 157 | } 158 | #endif 159 | #include "close_code.h" 160 | 161 | #endif /* SDL_error_h_ */ 162 | 163 | /* vi: set ts=4 sw=4 expandtab: */ 164 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_gesture.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_gesture.h 24 | * 25 | * Include file for SDL gesture event handling. 26 | */ 27 | 28 | #ifndef SDL_gesture_h_ 29 | #define SDL_gesture_h_ 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | #include "SDL_video.h" 34 | 35 | #include "SDL_touch.h" 36 | 37 | 38 | #include "begin_code.h" 39 | /* Set up for C function definitions, even when using C++ */ 40 | #ifdef __cplusplus 41 | extern "C" { 42 | #endif 43 | 44 | typedef Sint64 SDL_GestureID; 45 | 46 | /* Function prototypes */ 47 | 48 | /** 49 | * Begin recording a gesture on a specified touch device or all touch devices. 50 | * 51 | * If the parameter `touchId` is -1 (i.e., all devices), this function will 52 | * always return 1, regardless of whether there actually are any devices. 53 | * 54 | * \param touchId the touch device id, or -1 for all touch devices 55 | * \returns 1 on success or 0 if the specified device could not be found. 56 | * 57 | * \since This function is available since SDL 2.0.0. 58 | * 59 | * \sa SDL_GetTouchDevice 60 | */ 61 | extern DECLSPEC int SDLCALL SDL_RecordGesture(SDL_TouchID touchId); 62 | 63 | 64 | /** 65 | * Save all currently loaded Dollar Gesture templates. 66 | * 67 | * \param dst a SDL_RWops to save to 68 | * \returns the number of saved templates on success or 0 on failure; call 69 | * SDL_GetError() for more information. 70 | * 71 | * \since This function is available since SDL 2.0.0. 72 | * 73 | * \sa SDL_LoadDollarTemplates 74 | * \sa SDL_SaveDollarTemplate 75 | */ 76 | extern DECLSPEC int SDLCALL SDL_SaveAllDollarTemplates(SDL_RWops *dst); 77 | 78 | /** 79 | * Save a currently loaded Dollar Gesture template. 80 | * 81 | * \param gestureId a gesture id 82 | * \param dst a SDL_RWops to save to 83 | * \returns 1 on success or 0 on failure; call SDL_GetError() for more 84 | * information. 85 | * 86 | * \since This function is available since SDL 2.0.0. 87 | * 88 | * \sa SDL_LoadDollarTemplates 89 | * \sa SDL_SaveAllDollarTemplates 90 | */ 91 | extern DECLSPEC int SDLCALL SDL_SaveDollarTemplate(SDL_GestureID gestureId,SDL_RWops *dst); 92 | 93 | 94 | /** 95 | * Load Dollar Gesture templates from a file. 96 | * 97 | * \param touchId a touch id 98 | * \param src a SDL_RWops to load from 99 | * \returns the number of loaded templates on success or a negative error code 100 | * (or 0) on failure; call SDL_GetError() for more information. 101 | * 102 | * \since This function is available since SDL 2.0.0. 103 | * 104 | * \sa SDL_SaveAllDollarTemplates 105 | * \sa SDL_SaveDollarTemplate 106 | */ 107 | extern DECLSPEC int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWops *src); 108 | 109 | /* Ends C function definitions when using C++ */ 110 | #ifdef __cplusplus 111 | } 112 | #endif 113 | #include "close_code.h" 114 | 115 | #endif /* SDL_gesture_h_ */ 116 | 117 | /* vi: set ts=4 sw=4 expandtab: */ 118 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_guid.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_guid.h 24 | * 25 | * Include file for handling ::SDL_GUID values. 26 | */ 27 | 28 | #ifndef SDL_guid_h_ 29 | #define SDL_guid_h_ 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | 34 | #include "begin_code.h" 35 | /* Set up for C function definitions, even when using C++ */ 36 | #ifdef __cplusplus 37 | extern "C" { 38 | #endif 39 | 40 | /** 41 | * An SDL_GUID is a 128-bit identifier for an input device that 42 | * identifies that device across runs of SDL programs on the same 43 | * platform. If the device is detached and then re-attached to a 44 | * different port, or if the base system is rebooted, the device 45 | * should still report the same GUID. 46 | * 47 | * GUIDs are as precise as possible but are not guaranteed to 48 | * distinguish physically distinct but equivalent devices. For 49 | * example, two game controllers from the same vendor with the same 50 | * product ID and revision may have the same GUID. 51 | * 52 | * GUIDs may be platform-dependent (i.e., the same device may report 53 | * different GUIDs on different operating systems). 54 | */ 55 | typedef struct { 56 | Uint8 data[16]; 57 | } SDL_GUID; 58 | 59 | /* Function prototypes */ 60 | 61 | /** 62 | * Get an ASCII string representation for a given ::SDL_GUID. 63 | * 64 | * You should supply at least 33 bytes for pszGUID. 65 | * 66 | * \param guid the ::SDL_GUID you wish to convert to string 67 | * \param pszGUID buffer in which to write the ASCII string 68 | * \param cbGUID the size of pszGUID 69 | * 70 | * \since This function is available since SDL 2.24.0. 71 | * 72 | * \sa SDL_GUIDFromString 73 | */ 74 | extern DECLSPEC void SDLCALL SDL_GUIDToString(SDL_GUID guid, char *pszGUID, int cbGUID); 75 | 76 | /** 77 | * Convert a GUID string into a ::SDL_GUID structure. 78 | * 79 | * Performs no error checking. If this function is given a string containing 80 | * an invalid GUID, the function will silently succeed, but the GUID generated 81 | * will not be useful. 82 | * 83 | * \param pchGUID string containing an ASCII representation of a GUID 84 | * \returns a ::SDL_GUID structure. 85 | * 86 | * \since This function is available since SDL 2.24.0. 87 | * 88 | * \sa SDL_GUIDToString 89 | */ 90 | extern DECLSPEC SDL_GUID SDLCALL SDL_GUIDFromString(const char *pchGUID); 91 | 92 | /* Ends C function definitions when using C++ */ 93 | #ifdef __cplusplus 94 | } 95 | #endif 96 | #include "close_code.h" 97 | 98 | #endif /* SDL_guid_h_ */ 99 | 100 | /* vi: set ts=4 sw=4 expandtab: */ 101 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_loadso.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_loadso.h 24 | * 25 | * System dependent library loading routines 26 | * 27 | * Some things to keep in mind: 28 | * \li These functions only work on C function names. Other languages may 29 | * have name mangling and intrinsic language support that varies from 30 | * compiler to compiler. 31 | * \li Make sure you declare your function pointers with the same calling 32 | * convention as the actual library function. Your code will crash 33 | * mysteriously if you do not do this. 34 | * \li Avoid namespace collisions. If you load a symbol from the library, 35 | * it is not defined whether or not it goes into the global symbol 36 | * namespace for the application. If it does and it conflicts with 37 | * symbols in your code or other shared libraries, you will not get 38 | * the results you expect. :) 39 | */ 40 | 41 | #ifndef SDL_loadso_h_ 42 | #define SDL_loadso_h_ 43 | 44 | #include "SDL_stdinc.h" 45 | #include "SDL_error.h" 46 | 47 | #include "begin_code.h" 48 | /* Set up for C function definitions, even when using C++ */ 49 | #ifdef __cplusplus 50 | extern "C" { 51 | #endif 52 | 53 | /** 54 | * Dynamically load a shared object. 55 | * 56 | * \param sofile a system-dependent name of the object file 57 | * \returns an opaque pointer to the object handle or NULL if there was an 58 | * error; call SDL_GetError() for more information. 59 | * 60 | * \since This function is available since SDL 2.0.0. 61 | * 62 | * \sa SDL_LoadFunction 63 | * \sa SDL_UnloadObject 64 | */ 65 | extern DECLSPEC void *SDLCALL SDL_LoadObject(const char *sofile); 66 | 67 | /** 68 | * Look up the address of the named function in a shared object. 69 | * 70 | * This function pointer is no longer valid after calling SDL_UnloadObject(). 71 | * 72 | * This function can only look up C function names. Other languages may have 73 | * name mangling and intrinsic language support that varies from compiler to 74 | * compiler. 75 | * 76 | * Make sure you declare your function pointers with the same calling 77 | * convention as the actual library function. Your code will crash 78 | * mysteriously if you do not do this. 79 | * 80 | * If the requested function doesn't exist, NULL is returned. 81 | * 82 | * \param handle a valid shared object handle returned by SDL_LoadObject() 83 | * \param name the name of the function to look up 84 | * \returns a pointer to the function or NULL if there was an error; call 85 | * SDL_GetError() for more information. 86 | * 87 | * \since This function is available since SDL 2.0.0. 88 | * 89 | * \sa SDL_LoadObject 90 | * \sa SDL_UnloadObject 91 | */ 92 | extern DECLSPEC void *SDLCALL SDL_LoadFunction(void *handle, 93 | const char *name); 94 | 95 | /** 96 | * Unload a shared object from memory. 97 | * 98 | * \param handle a valid shared object handle returned by SDL_LoadObject() 99 | * 100 | * \since This function is available since SDL 2.0.0. 101 | * 102 | * \sa SDL_LoadFunction 103 | * \sa SDL_LoadObject 104 | */ 105 | extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle); 106 | 107 | /* Ends C function definitions when using C++ */ 108 | #ifdef __cplusplus 109 | } 110 | #endif 111 | #include "close_code.h" 112 | 113 | #endif /* SDL_loadso_h_ */ 114 | 115 | /* vi: set ts=4 sw=4 expandtab: */ 116 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_locale.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_locale.h 24 | * 25 | * Include file for SDL locale services 26 | */ 27 | 28 | #ifndef _SDL_locale_h 29 | #define _SDL_locale_h 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | 34 | #include "begin_code.h" 35 | /* Set up for C function definitions, even when using C++ */ 36 | #ifdef __cplusplus 37 | /* *INDENT-OFF* */ 38 | extern "C" { 39 | /* *INDENT-ON* */ 40 | #endif 41 | 42 | 43 | typedef struct SDL_Locale 44 | { 45 | const char *language; /**< A language name, like "en" for English. */ 46 | const char *country; /**< A country, like "US" for America. Can be NULL. */ 47 | } SDL_Locale; 48 | 49 | /** 50 | * Report the user's preferred locale. 51 | * 52 | * This returns an array of SDL_Locale structs, the final item zeroed out. 53 | * When the caller is done with this array, it should call SDL_free() on the 54 | * returned value; all the memory involved is allocated in a single block, so 55 | * a single SDL_free() will suffice. 56 | * 57 | * Returned language strings are in the format xx, where 'xx' is an ISO-639 58 | * language specifier (such as "en" for English, "de" for German, etc). 59 | * Country strings are in the format YY, where "YY" is an ISO-3166 country 60 | * code (such as "US" for the United States, "CA" for Canada, etc). Country 61 | * might be NULL if there's no specific guidance on them (so you might get { 62 | * "en", "US" } for American English, but { "en", NULL } means "English 63 | * language, generically"). Language strings are never NULL, except to 64 | * terminate the array. 65 | * 66 | * Please note that not all of these strings are 2 characters; some are three 67 | * or more. 68 | * 69 | * The returned list of locales are in the order of the user's preference. For 70 | * example, a German citizen that is fluent in US English and knows enough 71 | * Japanese to navigate around Tokyo might have a list like: { "de", "en_US", 72 | * "jp", NULL }. Someone from England might prefer British English (where 73 | * "color" is spelled "colour", etc), but will settle for anything like it: { 74 | * "en_GB", "en", NULL }. 75 | * 76 | * This function returns NULL on error, including when the platform does not 77 | * supply this information at all. 78 | * 79 | * This might be a "slow" call that has to query the operating system. It's 80 | * best to ask for this once and save the results. However, this list can 81 | * change, usually because the user has changed a system preference outside of 82 | * your program; SDL will send an SDL_LOCALECHANGED event in this case, if 83 | * possible, and you can call this function again to get an updated copy of 84 | * preferred locales. 85 | * 86 | * \return array of locales, terminated with a locale with a NULL language 87 | * field. Will return NULL on error. 88 | * 89 | * \since This function is available since SDL 2.0.14. 90 | */ 91 | extern DECLSPEC SDL_Locale * SDLCALL SDL_GetPreferredLocales(void); 92 | 93 | /* Ends C function definitions when using C++ */ 94 | #ifdef __cplusplus 95 | /* *INDENT-OFF* */ 96 | } 97 | /* *INDENT-ON* */ 98 | #endif 99 | #include "close_code.h" 100 | 101 | #endif /* _SDL_locale_h */ 102 | 103 | /* vi: set ts=4 sw=4 expandtab: */ 104 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_metal.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_metal.h 24 | * 25 | * Header file for functions to creating Metal layers and views on SDL windows. 26 | */ 27 | 28 | #ifndef SDL_metal_h_ 29 | #define SDL_metal_h_ 30 | 31 | #include "SDL_video.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 | * \brief A handle to a CAMetalLayer-backed NSView (macOS) or UIView (iOS/tvOS). 41 | * 42 | * \note This can be cast directly to an NSView or UIView. 43 | */ 44 | typedef void *SDL_MetalView; 45 | 46 | /** 47 | * \name Metal support functions 48 | */ 49 | /* @{ */ 50 | 51 | /** 52 | * Create a CAMetalLayer-backed NSView/UIView and attach it to the specified 53 | * window. 54 | * 55 | * On macOS, this does *not* associate a MTLDevice with the CAMetalLayer on 56 | * its own. It is up to user code to do that. 57 | * 58 | * The returned handle can be casted directly to a NSView or UIView. To access 59 | * the backing CAMetalLayer, call SDL_Metal_GetLayer(). 60 | * 61 | * \since This function is available since SDL 2.0.12. 62 | * 63 | * \sa SDL_Metal_DestroyView 64 | * \sa SDL_Metal_GetLayer 65 | */ 66 | extern DECLSPEC SDL_MetalView SDLCALL SDL_Metal_CreateView(SDL_Window * window); 67 | 68 | /** 69 | * Destroy an existing SDL_MetalView object. 70 | * 71 | * This should be called before SDL_DestroyWindow, if SDL_Metal_CreateView was 72 | * called after SDL_CreateWindow. 73 | * 74 | * \since This function is available since SDL 2.0.12. 75 | * 76 | * \sa SDL_Metal_CreateView 77 | */ 78 | extern DECLSPEC void SDLCALL SDL_Metal_DestroyView(SDL_MetalView view); 79 | 80 | /** 81 | * Get a pointer to the backing CAMetalLayer for the given view. 82 | * 83 | * \since This function is available since SDL 2.0.14. 84 | * 85 | * \sa SDL_Metal_CreateView 86 | */ 87 | extern DECLSPEC void *SDLCALL SDL_Metal_GetLayer(SDL_MetalView view); 88 | 89 | /** 90 | * Get the size of a window's underlying drawable in pixels (for use with 91 | * setting viewport, scissor & etc). 92 | * 93 | * \param window SDL_Window from which the drawable size should be queried 94 | * \param w Pointer to variable for storing the width in pixels, may be NULL 95 | * \param h Pointer to variable for storing the height in pixels, may be NULL 96 | * 97 | * \since This function is available since SDL 2.0.14. 98 | * 99 | * \sa SDL_GetWindowSize 100 | * \sa SDL_CreateWindow 101 | */ 102 | extern DECLSPEC void SDLCALL SDL_Metal_GetDrawableSize(SDL_Window* window, int *w, 103 | int *h); 104 | 105 | /* @} *//* Metal support functions */ 106 | 107 | /* Ends C function definitions when using C++ */ 108 | #ifdef __cplusplus 109 | } 110 | #endif 111 | #include "close_code.h" 112 | 113 | #endif /* SDL_metal_h_ */ 114 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_misc.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_misc.h 24 | * 25 | * \brief Include file for SDL API functions that don't fit elsewhere. 26 | */ 27 | 28 | #ifndef SDL_misc_h_ 29 | #define SDL_misc_h_ 30 | 31 | #include "SDL_stdinc.h" 32 | 33 | #include "begin_code.h" 34 | 35 | /* Set up for C function definitions, even when using C++ */ 36 | #ifdef __cplusplus 37 | extern "C" { 38 | #endif 39 | 40 | /** 41 | * Open a URL/URI in the browser or other appropriate external application. 42 | * 43 | * Open a URL in a separate, system-provided application. How this works will 44 | * vary wildly depending on the platform. This will likely launch what makes 45 | * sense to handle a specific URL's protocol (a web browser for `http://`, 46 | * etc), but it might also be able to launch file managers for directories and 47 | * other things. 48 | * 49 | * What happens when you open a URL varies wildly as well: your game window 50 | * may lose focus (and may or may not lose focus if your game was fullscreen 51 | * or grabbing input at the time). On mobile devices, your app will likely 52 | * move to the background or your process might be paused. Any given platform 53 | * may or may not handle a given URL. 54 | * 55 | * If this is unimplemented (or simply unavailable) for a platform, this will 56 | * fail with an error. A successful result does not mean the URL loaded, just 57 | * that we launched _something_ to handle it (or at least believe we did). 58 | * 59 | * All this to say: this function can be useful, but you should definitely 60 | * test it on every platform you target. 61 | * 62 | * \param url A valid URL/URI to open. Use `file:///full/path/to/file` for 63 | * local files, if supported. 64 | * \returns 0 on success, or -1 on error; call SDL_GetError() for more 65 | * information. 66 | * 67 | * \since This function is available since SDL 2.0.14. 68 | */ 69 | extern DECLSPEC int SDLCALL SDL_OpenURL(const char *url); 70 | 71 | /* Ends C function definitions when using C++ */ 72 | #ifdef __cplusplus 73 | } 74 | #endif 75 | #include "close_code.h" 76 | 77 | #endif /* SDL_misc_h_ */ 78 | 79 | /* vi: set ts=4 sw=4 expandtab: */ 80 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_name.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_opengles.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_opengles2.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_opengles2_gl2platform.h: -------------------------------------------------------------------------------- 1 | #ifndef __gl2platform_h_ 2 | #define __gl2platform_h_ 3 | 4 | /* 5 | ** Copyright 2017-2020 The Khronos Group Inc. 6 | ** SPDX-License-Identifier: Apache-2.0 7 | */ 8 | 9 | /* Platform-specific types and definitions for OpenGL ES 2.X gl2.h 10 | * 11 | * Adopters may modify khrplatform.h and this file to suit their platform. 12 | * Please contribute modifications back to Khronos as pull requests on the 13 | * public github repository: 14 | * https://github.com/KhronosGroup/OpenGL-Registry 15 | */ 16 | 17 | /*#include */ 18 | 19 | #ifndef GL_APICALL 20 | #define GL_APICALL KHRONOS_APICALL 21 | #endif 22 | 23 | #ifndef GL_APIENTRY 24 | #define GL_APIENTRY KHRONOS_APIENTRY 25 | #endif 26 | 27 | #endif /* __gl2platform_h_ */ 28 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_power.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_power_h_ 23 | #define SDL_power_h_ 24 | 25 | /** 26 | * \file SDL_power.h 27 | * 28 | * Header for the SDL power management routines. 29 | */ 30 | 31 | #include "SDL_stdinc.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 | * The basic state for the system's power supply. 41 | */ 42 | typedef enum 43 | { 44 | SDL_POWERSTATE_UNKNOWN, /**< cannot determine power status */ 45 | SDL_POWERSTATE_ON_BATTERY, /**< Not plugged in, running on the battery */ 46 | SDL_POWERSTATE_NO_BATTERY, /**< Plugged in, no battery available */ 47 | SDL_POWERSTATE_CHARGING, /**< Plugged in, charging battery */ 48 | SDL_POWERSTATE_CHARGED /**< Plugged in, battery charged */ 49 | } SDL_PowerState; 50 | 51 | /** 52 | * Get the current power supply details. 53 | * 54 | * You should never take a battery status as absolute truth. Batteries 55 | * (especially failing batteries) are delicate hardware, and the values 56 | * reported here are best estimates based on what that hardware reports. It's 57 | * not uncommon for older batteries to lose stored power much faster than it 58 | * reports, or completely drain when reporting it has 20 percent left, etc. 59 | * 60 | * Battery status can change at any time; if you are concerned with power 61 | * state, you should call this function frequently, and perhaps ignore changes 62 | * until they seem to be stable for a few seconds. 63 | * 64 | * It's possible a platform can only report battery percentage or time left 65 | * but not both. 66 | * 67 | * \param seconds seconds of battery life left, you can pass a NULL here if 68 | * you don't care, will return -1 if we can't determine a 69 | * value, or we're not running on a battery 70 | * \param percent percentage of battery life left, between 0 and 100, you can 71 | * pass a NULL here if you don't care, will return -1 if we 72 | * can't determine a value, or we're not running on a battery 73 | * \returns an SDL_PowerState enum representing the current battery state. 74 | * 75 | * \since This function is available since SDL 2.0.0. 76 | */ 77 | extern DECLSPEC SDL_PowerState SDLCALL SDL_GetPowerInfo(int *seconds, int *percent); 78 | 79 | /* Ends C function definitions when using C++ */ 80 | #ifdef __cplusplus 81 | } 82 | #endif 83 | #include "close_code.h" 84 | 85 | #endif /* SDL_power_h_ */ 86 | 87 | /* vi: set ts=4 sw=4 expandtab: */ 88 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_quit.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_quit.h 24 | * 25 | * Include file for SDL quit event handling. 26 | */ 27 | 28 | #ifndef SDL_quit_h_ 29 | #define SDL_quit_h_ 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | 34 | /** 35 | * \file SDL_quit.h 36 | * 37 | * An ::SDL_QUIT event is generated when the user tries to close the application 38 | * window. If it is ignored or filtered out, the window will remain open. 39 | * If it is not ignored or filtered, it is queued normally and the window 40 | * is allowed to close. When the window is closed, screen updates will 41 | * complete, but have no effect. 42 | * 43 | * SDL_Init() installs signal handlers for SIGINT (keyboard interrupt) 44 | * and SIGTERM (system termination request), if handlers do not already 45 | * exist, that generate ::SDL_QUIT events as well. There is no way 46 | * to determine the cause of an ::SDL_QUIT event, but setting a signal 47 | * handler in your application will override the default generation of 48 | * quit events for that signal. 49 | * 50 | * \sa SDL_Quit() 51 | */ 52 | 53 | /* There are no functions directly affecting the quit event */ 54 | 55 | #define SDL_QuitRequested() \ 56 | (SDL_PumpEvents(), (SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUIT,SDL_QUIT) > 0)) 57 | 58 | #endif /* SDL_quit_h_ */ 59 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_revision.h: -------------------------------------------------------------------------------- 1 | /* Generated by updaterev.sh, do not edit */ 2 | #ifdef SDL_VENDOR_INFO 3 | #define SDL_REVISION "SDL-release-2.30.5-0-g2eef7ca47 (" SDL_VENDOR_INFO ")" 4 | #else 5 | #define SDL_REVISION "SDL-release-2.30.5-0-g2eef7ca47" 6 | #endif 7 | #define SDL_REVISION_NUMBER 0 8 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_revision.h.cmake: -------------------------------------------------------------------------------- 1 | #cmakedefine SDL_VENDOR_INFO "@SDL_VENDOR_INFO@" 2 | #define SDL_REVISION_NUMBER 0 3 | 4 | #ifdef SDL_VENDOR_INFO 5 | #define SDL_REVISION "@SDL_REVISION@ (" SDL_VENDOR_INFO ")" 6 | #else 7 | #define SDL_REVISION "@SDL_REVISION@" 8 | #endif 9 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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.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_h_ 31 | #define SDL_test_h_ 32 | 33 | #include "SDL.h" 34 | #include "SDL_test_assert.h" 35 | #include "SDL_test_common.h" 36 | #include "SDL_test_compare.h" 37 | #include "SDL_test_crc32.h" 38 | #include "SDL_test_font.h" 39 | #include "SDL_test_fuzzer.h" 40 | #include "SDL_test_harness.h" 41 | #include "SDL_test_images.h" 42 | #include "SDL_test_log.h" 43 | #include "SDL_test_md5.h" 44 | #include "SDL_test_memory.h" 45 | #include "SDL_test_random.h" 46 | 47 | #include "begin_code.h" 48 | /* Set up for C function definitions, even when using C++ */ 49 | #ifdef __cplusplus 50 | extern "C" { 51 | #endif 52 | 53 | /* Global definitions */ 54 | 55 | /* 56 | * Note: Maximum size of SDLTest log message is less than SDL's limit 57 | * to ensure we can fit additional information such as the timestamp. 58 | */ 59 | #define SDLTEST_MAX_LOGMESSAGE_LENGTH 3584 60 | 61 | /* Ends C function definitions when using C++ */ 62 | #ifdef __cplusplus 63 | } 64 | #endif 65 | #include "close_code.h" 66 | 67 | #endif /* SDL_test_h_ */ 68 | 69 | /* vi: set ts=4 sw=4 expandtab: */ 70 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_assert.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_assert.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 | /* 31 | * 32 | * Assert API for test code and test cases 33 | * 34 | */ 35 | 36 | #ifndef SDL_test_assert_h_ 37 | #define SDL_test_assert_h_ 38 | 39 | #include "begin_code.h" 40 | /* Set up for C function definitions, even when using C++ */ 41 | #ifdef __cplusplus 42 | extern "C" { 43 | #endif 44 | 45 | /** 46 | * \brief Fails the assert. 47 | */ 48 | #define ASSERT_FAIL 0 49 | 50 | /** 51 | * \brief Passes the assert. 52 | */ 53 | #define ASSERT_PASS 1 54 | 55 | /** 56 | * \brief Assert that logs and break execution flow on failures. 57 | * 58 | * \param assertCondition Evaluated condition or variable to assert; fail (==0) or pass (!=0). 59 | * \param assertDescription Message to log with the assert describing it. 60 | */ 61 | void SDLTest_Assert(int assertCondition, SDL_PRINTF_FORMAT_STRING const char *assertDescription, ...) SDL_PRINTF_VARARG_FUNC(2); 62 | 63 | /** 64 | * \brief Assert for test cases that logs but does not break execution flow on failures. Updates assertion counters. 65 | * 66 | * \param assertCondition Evaluated condition or variable to assert; fail (==0) or pass (!=0). 67 | * \param assertDescription Message to log with the assert describing it. 68 | * 69 | * \returns the assertCondition so it can be used to externally to break execution flow if desired. 70 | */ 71 | int SDLTest_AssertCheck(int assertCondition, SDL_PRINTF_FORMAT_STRING const char *assertDescription, ...) SDL_PRINTF_VARARG_FUNC(2); 72 | 73 | /** 74 | * \brief Explicitly pass without checking an assertion condition. Updates assertion counter. 75 | * 76 | * \param assertDescription Message to log with the assert describing it. 77 | */ 78 | void SDLTest_AssertPass(SDL_PRINTF_FORMAT_STRING const char *assertDescription, ...) SDL_PRINTF_VARARG_FUNC(1); 79 | 80 | /** 81 | * \brief Resets the assert summary counters to zero. 82 | */ 83 | void SDLTest_ResetAssertSummary(void); 84 | 85 | /** 86 | * \brief Logs summary of all assertions (total, pass, fail) since last reset as INFO or ERROR. 87 | */ 88 | void SDLTest_LogAssertSummary(void); 89 | 90 | 91 | /** 92 | * \brief Converts the current assert summary state to a test result. 93 | * 94 | * \returns TEST_RESULT_PASSED, TEST_RESULT_FAILED, or TEST_RESULT_NO_ASSERT 95 | */ 96 | int SDLTest_AssertSummaryToTestResult(void); 97 | 98 | #ifdef __cplusplus 99 | } 100 | #endif 101 | #include "close_code.h" 102 | 103 | #endif /* SDL_test_assert_h_ */ 104 | 105 | /* vi: set ts=4 sw=4 expandtab: */ 106 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_compare.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_compare.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 | /* 31 | 32 | Defines comparison functions (i.e. for surfaces). 33 | 34 | */ 35 | 36 | #ifndef SDL_test_compare_h_ 37 | #define SDL_test_compare_h_ 38 | 39 | #include "SDL.h" 40 | 41 | #include "SDL_test_images.h" 42 | 43 | #include "begin_code.h" 44 | /* Set up for C function definitions, even when using C++ */ 45 | #ifdef __cplusplus 46 | extern "C" { 47 | #endif 48 | 49 | /** 50 | * \brief Compares a surface and with reference image data for equality 51 | * 52 | * \param surface Surface used in comparison 53 | * \param referenceSurface Test Surface used in comparison 54 | * \param allowable_error Allowable difference (=sum of squared difference for each RGB component) in blending accuracy. 55 | * 56 | * \returns 0 if comparison succeeded, >0 (=number of pixels for which the comparison failed) if comparison failed, -1 if any of the surfaces were NULL, -2 if the surface sizes differ. 57 | */ 58 | int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface, int allowable_error); 59 | 60 | 61 | /* Ends C function definitions when using C++ */ 62 | #ifdef __cplusplus 63 | } 64 | #endif 65 | #include "close_code.h" 66 | 67 | #endif /* SDL_test_compare_h_ */ 68 | 69 | /* vi: set ts=4 sw=4 expandtab: */ 70 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_crc32.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_crc32.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 | /* 31 | 32 | Implements CRC32 calculations (default output is Perl String::CRC32 compatible). 33 | 34 | */ 35 | 36 | #ifndef SDL_test_crc32_h_ 37 | #define SDL_test_crc32_h_ 38 | 39 | #include "begin_code.h" 40 | /* Set up for C function definitions, even when using C++ */ 41 | #ifdef __cplusplus 42 | extern "C" { 43 | #endif 44 | 45 | 46 | /* ------------ Definitions --------- */ 47 | 48 | /* Definition shared by all CRC routines */ 49 | 50 | #ifndef CrcUint32 51 | #define CrcUint32 unsigned int 52 | #endif 53 | #ifndef CrcUint8 54 | #define CrcUint8 unsigned char 55 | #endif 56 | 57 | #ifdef ORIGINAL_METHOD 58 | #define CRC32_POLY 0x04c11db7 /* AUTODIN II, Ethernet, & FDDI */ 59 | #else 60 | #define CRC32_POLY 0xEDB88320 /* Perl String::CRC32 compatible */ 61 | #endif 62 | 63 | /** 64 | * Data structure for CRC32 (checksum) computation 65 | */ 66 | typedef struct { 67 | CrcUint32 crc32_table[256]; /* CRC table */ 68 | } SDLTest_Crc32Context; 69 | 70 | /* ---------- Function Prototypes ------------- */ 71 | 72 | /** 73 | * \brief Initialize the CRC context 74 | * 75 | * Note: The function initializes the crc table required for all crc calculations. 76 | * 77 | * \param crcContext pointer to context variable 78 | * 79 | * \returns 0 for OK, -1 on error 80 | * 81 | */ 82 | int SDLTest_Crc32Init(SDLTest_Crc32Context * crcContext); 83 | 84 | 85 | /** 86 | * \brief calculate a crc32 from a data block 87 | * 88 | * \param crcContext pointer to context variable 89 | * \param inBuf input buffer to checksum 90 | * \param inLen length of input buffer 91 | * \param crc32 pointer to Uint32 to store the final CRC into 92 | * 93 | * \returns 0 for OK, -1 on error 94 | * 95 | */ 96 | int SDLTest_Crc32Calc(SDLTest_Crc32Context * crcContext, CrcUint8 *inBuf, CrcUint32 inLen, CrcUint32 *crc32); 97 | 98 | /* Same routine broken down into three steps */ 99 | int SDLTest_Crc32CalcStart(SDLTest_Crc32Context * crcContext, CrcUint32 *crc32); 100 | int SDLTest_Crc32CalcEnd(SDLTest_Crc32Context * crcContext, CrcUint32 *crc32); 101 | int SDLTest_Crc32CalcBuffer(SDLTest_Crc32Context * crcContext, CrcUint8 *inBuf, CrcUint32 inLen, CrcUint32 *crc32); 102 | 103 | 104 | /** 105 | * \brief clean up CRC context 106 | * 107 | * \param crcContext pointer to context variable 108 | * 109 | * \returns 0 for OK, -1 on error 110 | * 111 | */ 112 | 113 | int SDLTest_Crc32Done(SDLTest_Crc32Context * crcContext); 114 | 115 | 116 | /* Ends C function definitions when using C++ */ 117 | #ifdef __cplusplus 118 | } 119 | #endif 120 | #include "close_code.h" 121 | 122 | #endif /* SDL_test_crc32_h_ */ 123 | 124 | /* vi: set ts=4 sw=4 expandtab: */ 125 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_harness.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_harness.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 | /* 31 | Defines types for test case definitions and the test execution harness API. 32 | 33 | Based on original GSOC code by Markus Kauppila 34 | */ 35 | 36 | #ifndef SDL_test_h_arness_h 37 | #define SDL_test_h_arness_h 38 | 39 | #include "begin_code.h" 40 | /* Set up for C function definitions, even when using C++ */ 41 | #ifdef __cplusplus 42 | extern "C" { 43 | #endif 44 | 45 | 46 | /* ! Definitions for test case structures */ 47 | #define TEST_ENABLED 1 48 | #define TEST_DISABLED 0 49 | 50 | /* ! Definition of all the possible test return values of the test case method */ 51 | #define TEST_ABORTED -1 52 | #define TEST_STARTED 0 53 | #define TEST_COMPLETED 1 54 | #define TEST_SKIPPED 2 55 | 56 | /* ! Definition of all the possible test results for the harness */ 57 | #define TEST_RESULT_PASSED 0 58 | #define TEST_RESULT_FAILED 1 59 | #define TEST_RESULT_NO_ASSERT 2 60 | #define TEST_RESULT_SKIPPED 3 61 | #define TEST_RESULT_SETUP_FAILURE 4 62 | 63 | /* !< Function pointer to a test case setup function (run before every test) */ 64 | typedef void (*SDLTest_TestCaseSetUpFp)(void *arg); 65 | 66 | /* !< Function pointer to a test case function */ 67 | typedef int (*SDLTest_TestCaseFp)(void *arg); 68 | 69 | /* !< Function pointer to a test case teardown function (run after every test) */ 70 | typedef void (*SDLTest_TestCaseTearDownFp)(void *arg); 71 | 72 | /** 73 | * Holds information about a single test case. 74 | */ 75 | typedef struct SDLTest_TestCaseReference { 76 | /* !< Func2Stress */ 77 | SDLTest_TestCaseFp testCase; 78 | /* !< Short name (or function name) "Func2Stress" */ 79 | const char *name; 80 | /* !< Long name or full description "This test pushes func2() to the limit." */ 81 | const char *description; 82 | /* !< Set to TEST_ENABLED or TEST_DISABLED (test won't be run) */ 83 | int enabled; 84 | } SDLTest_TestCaseReference; 85 | 86 | /** 87 | * Holds information about a test suite (multiple test cases). 88 | */ 89 | typedef struct SDLTest_TestSuiteReference { 90 | /* !< "PlatformSuite" */ 91 | const char *name; 92 | /* !< The function that is run before each test. NULL skips. */ 93 | SDLTest_TestCaseSetUpFp testSetUp; 94 | /* !< The test cases that are run as part of the suite. Last item should be NULL. */ 95 | const SDLTest_TestCaseReference **testCases; 96 | /* !< The function that is run after each test. NULL skips. */ 97 | SDLTest_TestCaseTearDownFp testTearDown; 98 | } SDLTest_TestSuiteReference; 99 | 100 | 101 | /** 102 | * \brief Generates a random run seed string for the harness. The generated seed will contain alphanumeric characters (0-9A-Z). 103 | * 104 | * Note: The returned string needs to be deallocated by the caller. 105 | * 106 | * \param length The length of the seed string to generate 107 | * 108 | * \returns the generated seed string 109 | */ 110 | char *SDLTest_GenerateRunSeed(const int length); 111 | 112 | /** 113 | * \brief Execute a test suite using the given run seed and execution key. 114 | * 115 | * \param testSuites Suites containing the test case. 116 | * \param userRunSeed Custom run seed provided by user, or NULL to autogenerate one. 117 | * \param userExecKey Custom execution key provided by user, or 0 to autogenerate one. 118 | * \param filter Filter specification. NULL disables. Case sensitive. 119 | * \param testIterations Number of iterations to run each test case. 120 | * 121 | * \returns the test run result: 0 when all tests passed, 1 if any tests failed. 122 | */ 123 | int SDLTest_RunSuites(SDLTest_TestSuiteReference *testSuites[], const char *userRunSeed, Uint64 userExecKey, const char *filter, int testIterations); 124 | 125 | 126 | /* Ends C function definitions when using C++ */ 127 | #ifdef __cplusplus 128 | } 129 | #endif 130 | #include "close_code.h" 131 | 132 | #endif /* SDL_test_h_arness_h */ 133 | 134 | /* vi: set ts=4 sw=4 expandtab: */ 135 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_images.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_images.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 | /* 31 | 32 | Defines some images for tests. 33 | 34 | */ 35 | 36 | #ifndef SDL_test_images_h_ 37 | #define SDL_test_images_h_ 38 | 39 | #include "SDL.h" 40 | 41 | #include "begin_code.h" 42 | /* Set up for C function definitions, even when using C++ */ 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | /** 48 | *Type for test images. 49 | */ 50 | typedef struct SDLTest_SurfaceImage_s { 51 | int width; 52 | int height; 53 | unsigned int bytes_per_pixel; /* 3:RGB, 4:RGBA */ 54 | const char *pixel_data; 55 | } SDLTest_SurfaceImage_t; 56 | 57 | /* Test images */ 58 | SDL_Surface *SDLTest_ImageBlit(void); 59 | SDL_Surface *SDLTest_ImageBlitColor(void); 60 | SDL_Surface *SDLTest_ImageBlitAlpha(void); 61 | SDL_Surface *SDLTest_ImageBlitBlendAdd(void); 62 | SDL_Surface *SDLTest_ImageBlitBlend(void); 63 | SDL_Surface *SDLTest_ImageBlitBlendMod(void); 64 | SDL_Surface *SDLTest_ImageBlitBlendNone(void); 65 | SDL_Surface *SDLTest_ImageBlitBlendAll(void); 66 | SDL_Surface *SDLTest_ImageFace(void); 67 | SDL_Surface *SDLTest_ImagePrimitives(void); 68 | SDL_Surface *SDLTest_ImagePrimitivesBlend(void); 69 | 70 | /* Ends C function definitions when using C++ */ 71 | #ifdef __cplusplus 72 | } 73 | #endif 74 | #include "close_code.h" 75 | 76 | #endif /* SDL_test_images_h_ */ 77 | 78 | /* vi: set ts=4 sw=4 expandtab: */ 79 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_log.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_log.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 | /* 31 | * 32 | * Wrapper to log in the TEST category 33 | * 34 | */ 35 | 36 | #ifndef SDL_test_log_h_ 37 | #define SDL_test_log_h_ 38 | 39 | #include "begin_code.h" 40 | /* Set up for C function definitions, even when using C++ */ 41 | #ifdef __cplusplus 42 | extern "C" { 43 | #endif 44 | 45 | /** 46 | * \brief Prints given message with a timestamp in the TEST category and INFO priority. 47 | * 48 | * \param fmt Message to be logged 49 | */ 50 | void SDLTest_Log(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); 51 | 52 | /** 53 | * \brief Prints given message with a timestamp in the TEST category and the ERROR priority. 54 | * 55 | * \param fmt Message to be logged 56 | */ 57 | void SDLTest_LogError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); 58 | 59 | /* Ends C function definitions when using C++ */ 60 | #ifdef __cplusplus 61 | } 62 | #endif 63 | #include "close_code.h" 64 | 65 | #endif /* SDL_test_log_h_ */ 66 | 67 | /* vi: set ts=4 sw=4 expandtab: */ 68 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_md5.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_md5.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 | /* 31 | *********************************************************************** 32 | ** Header file for implementation of MD5 ** 33 | ** RSA Data Security, Inc. MD5 Message-Digest Algorithm ** 34 | ** Created: 2/17/90 RLR ** 35 | ** Revised: 12/27/90 SRD,AJ,BSK,JT Reference C version ** 36 | ** Revised (for MD5): RLR 4/27/91 ** 37 | ** -- G modified to have y&~z instead of y&z ** 38 | ** -- FF, GG, HH modified to add in last register done ** 39 | ** -- Access pattern: round 2 works mod 5, round 3 works mod 3 ** 40 | ** -- distinct additive constant for each step ** 41 | ** -- round 4 added, working mod 7 ** 42 | *********************************************************************** 43 | */ 44 | 45 | /* 46 | *********************************************************************** 47 | ** Message-digest routines: ** 48 | ** To form the message digest for a message M ** 49 | ** (1) Initialize a context buffer mdContext using MD5Init ** 50 | ** (2) Call MD5Update on mdContext and M ** 51 | ** (3) Call MD5Final on mdContext ** 52 | ** The message digest is now in mdContext->digest[0...15] ** 53 | *********************************************************************** 54 | */ 55 | 56 | #ifndef SDL_test_md5_h_ 57 | #define SDL_test_md5_h_ 58 | 59 | #include "begin_code.h" 60 | /* Set up for C function definitions, even when using C++ */ 61 | #ifdef __cplusplus 62 | extern "C" { 63 | #endif 64 | 65 | /* ------------ Definitions --------- */ 66 | 67 | /* typedef a 32-bit type */ 68 | typedef unsigned long int MD5UINT4; 69 | 70 | /* Data structure for MD5 (Message-Digest) computation */ 71 | typedef struct { 72 | MD5UINT4 i[2]; /* number of _bits_ handled mod 2^64 */ 73 | MD5UINT4 buf[4]; /* scratch buffer */ 74 | unsigned char in[64]; /* input buffer */ 75 | unsigned char digest[16]; /* actual digest after Md5Final call */ 76 | } SDLTest_Md5Context; 77 | 78 | /* ---------- Function Prototypes ------------- */ 79 | 80 | /** 81 | * \brief initialize the context 82 | * 83 | * \param mdContext pointer to context variable 84 | * 85 | * Note: The function initializes the message-digest context 86 | * mdContext. Call before each new use of the context - 87 | * all fields are set to zero. 88 | */ 89 | void SDLTest_Md5Init(SDLTest_Md5Context * mdContext); 90 | 91 | 92 | /** 93 | * \brief update digest from variable length data 94 | * 95 | * \param mdContext pointer to context variable 96 | * \param inBuf pointer to data array/string 97 | * \param inLen length of data array/string 98 | * 99 | * Note: The function updates the message-digest context to account 100 | * for the presence of each of the characters inBuf[0..inLen-1] 101 | * in the message whose digest is being computed. 102 | */ 103 | 104 | void SDLTest_Md5Update(SDLTest_Md5Context * mdContext, unsigned char *inBuf, 105 | unsigned int inLen); 106 | 107 | 108 | /** 109 | * \brief complete digest computation 110 | * 111 | * \param mdContext pointer to context variable 112 | * 113 | * Note: The function terminates the message-digest computation and 114 | * ends with the desired message digest in mdContext.digest[0..15]. 115 | * Always call before using the digest[] variable. 116 | */ 117 | 118 | void SDLTest_Md5Final(SDLTest_Md5Context * mdContext); 119 | 120 | 121 | /* Ends C function definitions when using C++ */ 122 | #ifdef __cplusplus 123 | } 124 | #endif 125 | #include "close_code.h" 126 | 127 | #endif /* SDL_test_md5_h_ */ 128 | 129 | /* vi: set ts=4 sw=4 expandtab: */ 130 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_memory.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_test_random.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_random.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 | /* 31 | 32 | A "32-bit Multiply with carry random number generator. Very fast. 33 | Includes a list of recommended multipliers. 34 | 35 | multiply-with-carry generator: x(n) = a*x(n-1) + carry mod 2^32. 36 | period: (a*2^31)-1 37 | 38 | */ 39 | 40 | #ifndef SDL_test_random_h_ 41 | #define SDL_test_random_h_ 42 | 43 | #include "begin_code.h" 44 | /* Set up for C function definitions, even when using C++ */ 45 | #ifdef __cplusplus 46 | extern "C" { 47 | #endif 48 | 49 | /* --- Definitions */ 50 | 51 | /* 52 | * Macros that return a random number in a specific format. 53 | */ 54 | #define SDLTest_RandomInt(c) ((int)SDLTest_Random(c)) 55 | 56 | /* 57 | * Context structure for the random number generator state. 58 | */ 59 | typedef struct { 60 | unsigned int a; 61 | unsigned int x; 62 | unsigned int c; 63 | unsigned int ah; 64 | unsigned int al; 65 | } SDLTest_RandomContext; 66 | 67 | 68 | /* --- Function prototypes */ 69 | 70 | /** 71 | * \brief Initialize random number generator with two integers. 72 | * 73 | * Note: The random sequence of numbers returned by ...Random() is the 74 | * same for the same two integers and has a period of 2^31. 75 | * 76 | * \param rndContext pointer to context structure 77 | * \param xi integer that defines the random sequence 78 | * \param ci integer that defines the random sequence 79 | * 80 | */ 81 | void SDLTest_RandomInit(SDLTest_RandomContext * rndContext, unsigned int xi, 82 | unsigned int ci); 83 | 84 | /** 85 | * \brief Initialize random number generator based on current system time. 86 | * 87 | * \param rndContext pointer to context structure 88 | * 89 | */ 90 | void SDLTest_RandomInitTime(SDLTest_RandomContext *rndContext); 91 | 92 | 93 | /** 94 | * \brief Initialize random number generator based on current system time. 95 | * 96 | * Note: ...RandomInit() or ...RandomInitTime() must have been called 97 | * before using this function. 98 | * 99 | * \param rndContext pointer to context structure 100 | * 101 | * \returns a random number (32bit unsigned integer) 102 | * 103 | */ 104 | unsigned int SDLTest_Random(SDLTest_RandomContext *rndContext); 105 | 106 | 107 | /* Ends C function definitions when using C++ */ 108 | #ifdef __cplusplus 109 | } 110 | #endif 111 | #include "close_code.h" 112 | 113 | #endif /* SDL_test_random_h_ */ 114 | 115 | /* vi: set ts=4 sw=4 expandtab: */ 116 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_touch.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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_touch.h 24 | * 25 | * Include file for SDL touch event handling. 26 | */ 27 | 28 | #ifndef SDL_touch_h_ 29 | #define SDL_touch_h_ 30 | 31 | #include "SDL_stdinc.h" 32 | #include "SDL_error.h" 33 | #include "SDL_video.h" 34 | 35 | #include "begin_code.h" 36 | /* Set up for C function definitions, even when using C++ */ 37 | #ifdef __cplusplus 38 | extern "C" { 39 | #endif 40 | 41 | typedef Sint64 SDL_TouchID; 42 | typedef Sint64 SDL_FingerID; 43 | 44 | typedef enum 45 | { 46 | SDL_TOUCH_DEVICE_INVALID = -1, 47 | SDL_TOUCH_DEVICE_DIRECT, /* touch screen with window-relative coordinates */ 48 | SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE, /* trackpad with absolute device coordinates */ 49 | SDL_TOUCH_DEVICE_INDIRECT_RELATIVE /* trackpad with screen cursor-relative coordinates */ 50 | } SDL_TouchDeviceType; 51 | 52 | typedef struct SDL_Finger 53 | { 54 | SDL_FingerID id; 55 | float x; 56 | float y; 57 | float pressure; 58 | } SDL_Finger; 59 | 60 | /* Used as the device ID for mouse events simulated with touch input */ 61 | #define SDL_TOUCH_MOUSEID ((Uint32)-1) 62 | 63 | /* Used as the SDL_TouchID for touch events simulated with mouse input */ 64 | #define SDL_MOUSE_TOUCHID ((Sint64)-1) 65 | 66 | 67 | /** 68 | * Get the number of registered touch devices. 69 | * 70 | * On some platforms SDL first sees the touch device if it was actually used. 71 | * Therefore SDL_GetNumTouchDevices() may return 0 although devices are 72 | * available. After using all devices at least once the number will be 73 | * correct. 74 | * 75 | * This was fixed for Android in SDL 2.0.1. 76 | * 77 | * \returns the number of registered touch devices. 78 | * 79 | * \since This function is available since SDL 2.0.0. 80 | * 81 | * \sa SDL_GetTouchDevice 82 | */ 83 | extern DECLSPEC int SDLCALL SDL_GetNumTouchDevices(void); 84 | 85 | /** 86 | * Get the touch ID with the given index. 87 | * 88 | * \param index the touch device index 89 | * \returns the touch ID with the given index on success or 0 if the index is 90 | * invalid; call SDL_GetError() for more information. 91 | * 92 | * \since This function is available since SDL 2.0.0. 93 | * 94 | * \sa SDL_GetNumTouchDevices 95 | */ 96 | extern DECLSPEC SDL_TouchID SDLCALL SDL_GetTouchDevice(int index); 97 | 98 | /** 99 | * Get the touch device name as reported from the driver or NULL if the index 100 | * is invalid. 101 | * 102 | * \since This function is available since SDL 2.0.22. 103 | */ 104 | extern DECLSPEC const char* SDLCALL SDL_GetTouchName(int index); 105 | 106 | /** 107 | * Get the type of the given touch device. 108 | * 109 | * \since This function is available since SDL 2.0.10. 110 | */ 111 | extern DECLSPEC SDL_TouchDeviceType SDLCALL SDL_GetTouchDeviceType(SDL_TouchID touchID); 112 | 113 | /** 114 | * Get the number of active fingers for a given touch device. 115 | * 116 | * \param touchID the ID of a touch device 117 | * \returns the number of active fingers for a given touch device on success 118 | * or 0 on failure; call SDL_GetError() for more information. 119 | * 120 | * \since This function is available since SDL 2.0.0. 121 | * 122 | * \sa SDL_GetTouchFinger 123 | */ 124 | extern DECLSPEC int SDLCALL SDL_GetNumTouchFingers(SDL_TouchID touchID); 125 | 126 | /** 127 | * Get the finger object for specified touch device ID and finger index. 128 | * 129 | * The returned resource is owned by SDL and should not be deallocated. 130 | * 131 | * \param touchID the ID of the requested touch device 132 | * \param index the index of the requested finger 133 | * \returns a pointer to the SDL_Finger object or NULL if no object at the 134 | * given ID and index could be found. 135 | * 136 | * \since This function is available since SDL 2.0.0. 137 | * 138 | * \sa SDL_RecordGesture 139 | */ 140 | extern DECLSPEC SDL_Finger * SDLCALL SDL_GetTouchFinger(SDL_TouchID touchID, int index); 141 | 142 | /* Ends C function definitions when using C++ */ 143 | #ifdef __cplusplus 144 | } 145 | #endif 146 | #include "close_code.h" 147 | 148 | #endif /* SDL_touch_h_ */ 149 | 150 | /* vi: set ts=4 sw=4 expandtab: */ 151 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/SDL_types.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/include/SDL2/close_code.h: -------------------------------------------------------------------------------- 1 | /* 2 | Simple DirectMedia Layer 3 | Copyright (C) 1997-2024 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 SDL_begin_code_h 30 | #error close_code.h included without matching begin_code.h 31 | #endif 32 | #undef SDL_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 | -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2.lib -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2_gfx.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2_gfx.lib -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2_image.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2_image.dll -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2_image.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2_image.lib -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2_ttf.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2_ttf.lib -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2main.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2main.lib -------------------------------------------------------------------------------- /Nullpointer/Libraries/lib/SDL2test.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/Libraries/lib/SDL2test.lib -------------------------------------------------------------------------------- /Nullpointer/Math/Math.c: -------------------------------------------------------------------------------- 1 | #include "Math.h" 2 | 3 | int WorldToScreen(PVector3 object, PVector2 screen, PViewMatrix4x4 loadedMatrix, const int WINDOW_WIDTH, const int WINDOW_HEIGHT) { 4 | 5 | float x = loadedMatrix->matrix[0][0] * object->x + loadedMatrix->matrix[0][1] * object->y + loadedMatrix->matrix[0][2] * object->z + loadedMatrix->matrix[0][3]; 6 | float y = loadedMatrix->matrix[1][0] * object->x + loadedMatrix->matrix[1][1] * object->y + loadedMatrix->matrix[1][2] * object->z + loadedMatrix->matrix[1][3]; 7 | float w = loadedMatrix->matrix[3][0] * object->x + loadedMatrix->matrix[3][1] * object->y + loadedMatrix->matrix[3][2] * object->z + loadedMatrix->matrix[3][3]; 8 | 9 | if (w < 0.1) 10 | return 0; 11 | 12 | Vector2 ndc; 13 | 14 | ndc.x = x / w; 15 | ndc.y = y / w; 16 | 17 | screen->x = (WINDOW_WIDTH / 2 * ndc.x) + (ndc.x + WINDOW_WIDTH / 2); 18 | screen->y = -(WINDOW_HEIGHT / 2 * ndc.y) + (ndc.y + WINDOW_HEIGHT / 2); 19 | 20 | return 1; 21 | 22 | 23 | } 24 | 25 | 26 | float CalculateDistance3D(PVector3 entityPos1, PVector3 entityPos2) { 27 | if (!entityPos1 || !entityPos2) { 28 | printf("null vectors"); 29 | return 0; 30 | } 31 | 32 | return ( 33 | sqrt(pow(entityPos2->x - entityPos1->x, 2)) + 34 | sqrt(pow(entityPos2->y - entityPos1->y, 2)) + 35 | sqrt(pow(entityPos2->z - entityPos1->z, 2)) 36 | ); 37 | } 38 | 39 | 40 | 41 | float CalculateDistance2D(PVector2 entityPos1, PVector2 entityPos2) { 42 | if (!entityPos1 || !entityPos2) { 43 | printf("null vectors"); 44 | return 0; 45 | } 46 | 47 | return ( 48 | sqrt(pow(entityPos2->x - entityPos1->x, 2)) + 49 | sqrt(pow(entityPos2->y - entityPos1->y, 2)) 50 | ); 51 | } -------------------------------------------------------------------------------- /Nullpointer/Math/Math.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | 4 | typedef struct _Vector3 { 5 | float x, y, z; 6 | }Vector3, * PVector3; 7 | 8 | typedef struct _ViewMatrix4x4 { 9 | 10 | float matrix[4][4]; 11 | 12 | }ViewMatrix4x4, * PViewMatrix4x4; 13 | 14 | typedef struct _Vector4 { 15 | float x, y, z, w; 16 | }Vector4, * PVector4; 17 | 18 | typedef struct _Vector2 { 19 | float x, y; 20 | }Vector2, *PVector2; 21 | 22 | int WorldToScreen(PVector3 object, PVector2 screen, PViewMatrix4x4 loadedMatrix, const int windowWidth, const int windowHeight); 23 | float CalculateDistance3D(PVector3 entityPos1, PVector3 entityPos2); 24 | float CalculateDistance2D(PVector2 entityPos1, PVector2 entityPos2); -------------------------------------------------------------------------------- /Nullpointer/Memory/DRIVER/driverFunctions.c: -------------------------------------------------------------------------------- 1 | #include "driverFunctions.h" 2 | 3 | static HANDLE hDevice = NULL; 4 | 5 | boolean attach_to_process(const DWORD pid) { 6 | Request req; 7 | req.proccess_id = (HANDLE)pid; 8 | 9 | return DeviceIoControl(hDevice, IO_ATTACH, &req, sizeof(Request), &req, sizeof(Request), NULL, NULL); 10 | } 11 | 12 | void UnloadDriver() { 13 | DeviceIoControl(hDevice, IO_UNLOAD, NULL, NULL, NULL, NULL, NULL, NULL); 14 | } 15 | 16 | HANDLE loadDriver() { 17 | const HANDLE driver = CreateFile(L"\\\\.\\SecondMouse", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); 18 | 19 | if (driver == INVALID_HANDLE_VALUE) { 20 | puts("[-] Failed to load the driver [-]\n"); 21 | 22 | return 0; 23 | } 24 | 25 | puts("[+] Driver Loaded [+]\n"); 26 | 27 | hDevice = driver; 28 | 29 | return driver; 30 | } 31 | 32 | boolean ReadMemoryDriver(HANDLE driver, uintptr_t address, PVOID buffer, size_t size) { 33 | Request shared_request; 34 | BOOL status; 35 | 36 | shared_request.target = (PVOID)address; 37 | shared_request.buffer = buffer; 38 | shared_request.size = size; 39 | 40 | status = DeviceIoControl( 41 | hDevice, 42 | IO_READ, 43 | &shared_request, 44 | sizeof(shared_request), 45 | &shared_request, 46 | sizeof(shared_request), 47 | NULL, 48 | NULL 49 | ); 50 | 51 | if (!status) 52 | return FALSE; 53 | 54 | 55 | return TRUE; 56 | } 57 | 58 | boolean WriteMemoryDriver(HANDLE driver, uintptr_t address, void* value, SIZE_T size) { 59 | Request r; 60 | 61 | r.target = (PVOID)address; 62 | r.buffer = (PVOID)&value; 63 | r.size = size; 64 | 65 | BOOL status = DeviceIoControl(hDevice, IO_WRITE, &r, sizeof(r), &r, sizeof(r), NULL, NULL); 66 | 67 | if (!status) 68 | return FALSE; 69 | 70 | return TRUE; 71 | } 72 | 73 | 74 | HANDLE GetDriverHandle() { 75 | return hDevice; 76 | } -------------------------------------------------------------------------------- /Nullpointer/Memory/DRIVER/driverFunctions.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../sharedSpace.h" 3 | 4 | void UnloadDriver(); 5 | HANDLE loadDriver(); 6 | 7 | boolean ReadMemoryDriver(HANDLE driver, uintptr_t address, PVOID buffer, size_t size); 8 | boolean WriteMemoryDriver(HANDLE hDevice, uintptr_t address, void* value, SIZE_T size); 9 | 10 | boolean attach_to_process(const DWORD pid); 11 | HANDLE GetDriverHandle(); -------------------------------------------------------------------------------- /Nullpointer/Memory/WINAPI/winapi.c: -------------------------------------------------------------------------------- 1 | #include "winapi.h" 2 | 3 | static DWORD pid = 0; 4 | MemoryReadFunction WINAPIReadFunc = NULL; 5 | MemoryWriteFunction WINAPIWriteFunc = NULL; 6 | 7 | uintptr_t get_module_base(const wchar_t* module_name) { 8 | uintptr_t module_base = 0; 9 | MODULEENTRY32 pe; 10 | boolean hResult; 11 | 12 | HANDLE snap_shot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE | TH32CS_SNAPMODULE32, pid); 13 | if (snap_shot == INVALID_HANDLE_VALUE) 14 | return module_base; 15 | 16 | pe.dwSize = sizeof(MODULEENTRY32); 17 | hResult = Module32First(snap_shot, &pe); 18 | 19 | while (hResult) { 20 | if (wcsstr(module_name, pe.szModule) != NULL) { 21 | module_base = (uintptr_t)pe.modBaseAddr; 22 | break; 23 | } 24 | 25 | hResult = Module32Next(snap_shot, &pe); 26 | } 27 | 28 | CloseHandle(snap_shot); 29 | 30 | return module_base; 31 | } 32 | 33 | DWORD get_process_id(const wchar_t* process_name) { 34 | DWORD process_id = 0; 35 | PROCESSENTRY32 pe; 36 | boolean hResult; 37 | HANDLE snap_shot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); 38 | 39 | if (snap_shot == INVALID_HANDLE_VALUE) { 40 | puts("INVALID SNAPSHOT"); 41 | return process_id; 42 | } 43 | 44 | pe.dwSize = sizeof(PROCESSENTRY32); 45 | hResult = Process32First(snap_shot, &pe); 46 | 47 | while (hResult) { 48 | if (_wcsicmp(process_name, pe.szExeFile) == 0) { 49 | process_id = pe.th32ProcessID; 50 | 51 | break; 52 | } 53 | 54 | hResult = Process32Next(snap_shot, &pe); 55 | } 56 | 57 | CloseHandle(snap_shot); 58 | 59 | pid = process_id; 60 | 61 | return process_id; 62 | 63 | } 64 | 65 | boolean ReadMemoryWINAPI(HANDLE driver, uintptr_t address, PVOID buffer, size_t size) { 66 | HANDLE openedProcess = OpenProcess(PROCESS_VM_READ, FALSE, pid); 67 | 68 | if (!openedProcess) 69 | return FALSE; 70 | 71 | boolean result = ReadProcessMemory(openedProcess, address, buffer, size, NULL); 72 | CloseHandle(openedProcess); 73 | 74 | return result; 75 | } 76 | 77 | boolean WriteMemoryWINAPI(HANDLE driver, uintptr_t address, void* val, size_t size) { 78 | HANDLE openedProcess = OpenProcess(PROCESS_VM_WRITE | PROCESS_VM_OPERATION, FALSE, pid); 79 | 80 | if (!openedProcess) { 81 | printf("couldn't open da process \n"); 82 | return FALSE; 83 | } 84 | 85 | boolean result = WriteProcessMemory(openedProcess, address, &val, size, NULL); 86 | CloseHandle(openedProcess); 87 | 88 | return result; 89 | } 90 | 91 | 92 | DWORD GetPIDField() { 93 | return pid; 94 | } 95 | 96 | void SetPIDField(DWORD value) { 97 | pid = value; 98 | } 99 | -------------------------------------------------------------------------------- /Nullpointer/Memory/WINAPI/winapi.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../sharedSpace.h" 3 | 4 | boolean ReadMemoryWINAPI(HANDLE driver, uintptr_t address, PVOID buffer, size_t size); 5 | boolean WriteMemoryWINAPI(HANDLE driver, uintptr_t address, void* val, size_t size); 6 | 7 | DWORD GetPIDField(); 8 | void SetPIDField(DWORD value); 9 | 10 | uintptr_t get_module_base(const wchar_t* module_name); 11 | DWORD get_process_id(const wchar_t* process_name); 12 | 13 | MemoryReadFunction WinApiRead(); -------------------------------------------------------------------------------- /Nullpointer/Memory/memory.c: -------------------------------------------------------------------------------- 1 | #include "memory.h" 2 | 3 | MemoryReadFunction ReadMemory = NULL; 4 | MemoryWriteFunction WriteMemory = NULL; 5 | 6 | void InitializeMemoryReader() { 7 | 8 | if (GetDriverHandle() == NULL) { 9 | puts("[!] Using WINAPI [!]\n"); 10 | 11 | ReadMemory = ReadMemoryWINAPI; 12 | WriteMemory = WriteMemoryWINAPI; 13 | } 14 | 15 | else { 16 | puts("[!] Using the driver [!]\n"); 17 | ReadMemory = ReadMemoryDriver; 18 | WriteMemory = WriteMemoryDriver; 19 | } 20 | } 21 | 22 | uintptr_t initClient(PHANDLE driver) { 23 | 24 | puts("[!] Getting cs2 process... [!]\n"); 25 | 26 | while (GetPIDField() == 0) { 27 | SetPIDField(get_process_id(L"cs2.exe")); 28 | Sleep(1000); 29 | } 30 | 31 | puts("[!] Getting client.dll [!]\n"); 32 | 33 | uintptr_t client = 0; 34 | 35 | while (client == 0) { 36 | client = get_module_base(L"client.dll"); 37 | Sleep(1000); 38 | } 39 | 40 | printf("Module base: %p\n", client); 41 | 42 | if (driver != NULL) { 43 | if (attach_to_process(GetPIDField())) 44 | puts("[+] Attachment successful [+]\n"); 45 | } 46 | 47 | return client; 48 | } 49 | 50 | void _SetPageName(PMemoryPool region, const char* regionName) { 51 | region->name = regionName; 52 | } 53 | 54 | int GetFreeMemory(PMemoryPool pool, int offset) { 55 | 56 | if (pool->offset == 0) 57 | return 1024 - offset; 58 | 59 | return 1024 - pool->offset - offset; 60 | } 61 | 62 | void* AllocatePool(PMemoryPool pool, const size_t size, const char* regionName) { 63 | 64 | if (pool->offset + size > 1024) 65 | return NULL; 66 | 67 | void* ptr = &pool->memory[pool->offset]; 68 | _SetPageName((PMemoryPool)ptr, regionName); 69 | 70 | pool->offset += size; 71 | 72 | return ptr; 73 | } 74 | 75 | int GetItemsCount(PMemoryPool pool, const int offset) { 76 | return ((1024 - GetFreeMemory(pool, offset)) / offset) - 1; 77 | } 78 | 79 | void* FindByPageName(PMemoryPool pool, const char* regionName, const int offset) { 80 | int totalItems = (1024 - offset) / offset; 81 | 82 | 83 | for (int page = 0; page < totalItems; page++) { 84 | PMemoryPool currentPage = (PMemoryPool) ReadFromPool(pool, offset, page); 85 | 86 | if (page == 0) 87 | currentPage = (PMemoryPool)ReadFromPool(pool, 0, 0); 88 | 89 | if (strcmp(regionName, currentPage->name) == 0) 90 | return currentPage; 91 | 92 | } 93 | 94 | return NULL; 95 | } 96 | 97 | void* ReadFromPool(PMemoryPool pool, const int offset, const int itemPlacement) { 98 | return &pool->memory[offset * itemPlacement]; 99 | } 100 | 101 | void ResetPool(PMemoryPool pool) { 102 | pool->offset = 0; 103 | } 104 | -------------------------------------------------------------------------------- /Nullpointer/Memory/memory.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "DRIVER/driverFunctions.h" 3 | #include "WINAPI/winapi.h" 4 | 5 | typedef struct { 6 | char memory[1024]; 7 | char* name; 8 | size_t offset; 9 | } MemoryPool, * PMemoryPool; 10 | 11 | extern MemoryReadFunction ReadMemory; 12 | extern MemoryWriteFunction WriteMemory; 13 | 14 | void* AllocatePool(PMemoryPool pool, const size_t size, const char* RegionName); 15 | void* ReadFromPool(PMemoryPool pool, const int offset, const int itemPlacement); 16 | void* FindByPageName(PMemoryPool pool, const char* regionName, const int offset); 17 | 18 | int GetFreeMemory(PMemoryPool pool, int offset); 19 | int GetItemsCount(PMemoryPool pool, const int offset); 20 | uintptr_t initClient(PHANDLE driver); 21 | 22 | void InitializeMemoryReader(); 23 | void ResetPool(PMemoryPool pool); 24 | 25 | void MoveMouse(int dx, int dy); 26 | -------------------------------------------------------------------------------- /Nullpointer/Memory/sharedSpace.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../NullPointer.h" 3 | 4 | typedef boolean(*MemoryReadFunction)(HANDLE driver, void* address, void* buffer, size_t size); 5 | typedef boolean(*MemoryWriteFunction)(HANDLE driver, void* address, void* val, size_t size); -------------------------------------------------------------------------------- /Nullpointer/NullPointer.c: -------------------------------------------------------------------------------- 1 | #define MEMORY 2 | #define GUI 3 | #define FEATURES 4 | #define ENTITY_STRUCTURE 5 | #define CONFIG 6 | #define UTILS 7 | #include "NullPointer.h" 8 | 9 | static FeaturesStates Features = { 0 }; 10 | static Entity entities[64] = {0}; 11 | static Config dataNullPointer = { .sleepTime = 10, .sleepTriggerTime = 10, .shootInAir = 0, 12 | .keyEntry.keys[0].keyID = NULL, .keyEntry.keys[0].name = "None", 13 | .keyEntry.keys[1].keyID = VK_RBUTTON, .keyEntry.keys[1].name = "Right Mouse Button", 14 | .keyEntry.keys[2].keyID = VK_LBUTTON, .keyEntry.keys[2].name = "Left Mouse Button", 15 | .keyEntry.keys[3].keyID = 0x56, .keyEntry.keys[3].name = "V", 16 | .keyEntry.keys[4].keyID = 0x58, .keyEntry.keys[4].name = "X", 17 | .keyEntry.keys[5].keyID = VK_LMENU, .keyEntry.keys[5].name = "Left Alt", 18 | .keyEntry.keys[6].keyID = VK_LSHIFT, .keyEntry.keys[6].name = "Shift", 19 | .keyEntry.selectedKeyAim = 5 20 | 21 | }; 22 | 23 | 24 | DWORD WINAPI ThreadWindowFunc(LPVOID lpParam) { 25 | showWindow(&Features); 26 | return 0; 27 | } 28 | 29 | int main() { 30 | HANDLE driver = loadDriver(); 31 | uintptr_t client = initClient(&driver); 32 | 33 | InitializeMemoryReader(); 34 | 35 | if (client == 0) { 36 | puts("[-] INIT FAILURE [-]"); 37 | getchar(); 38 | 39 | return 2; 40 | } 41 | 42 | CreateThread(NULL, 0, ThreadWindowFunc, NULL, 0, NULL); 43 | 44 | InitPointersFeatures(&Features, &entities, &dataNullPointer); 45 | InitPointersGUI(&entities, &dataNullPointer); 46 | 47 | while (TRUE) { MultiHack(&driver, client); } 48 | 49 | return 0; 50 | } -------------------------------------------------------------------------------- /Nullpointer/NullPointer.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "Request.h" 3 | #include "dependencies.h" -------------------------------------------------------------------------------- /Nullpointer/NullPointer.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio Version 17 4 | VisualStudioVersion = 17.9.34728.123 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NullPointer", "NullPointer.vcxproj", "{DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}" 7 | EndProject 8 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Driver", "..\Driver\Driver.vcxproj", "{AD08483F-C1D4-4C8B-B3EA-27D510CFF239}" 9 | EndProject 10 | Global 11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 12 | Debug|ARM64 = Debug|ARM64 13 | Debug|x64 = Debug|x64 14 | Debug|x86 = Debug|x86 15 | Release|ARM64 = Release|ARM64 16 | Release|x64 = Release|x64 17 | Release|x86 = Release|x86 18 | EndGlobalSection 19 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 20 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Debug|ARM64.ActiveCfg = Debug|x64 21 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Debug|ARM64.Build.0 = Debug|x64 22 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Debug|x64.ActiveCfg = Debug|x64 23 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Debug|x64.Build.0 = Debug|x64 24 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Debug|x86.ActiveCfg = Debug|Win32 25 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Debug|x86.Build.0 = Debug|Win32 26 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Release|ARM64.ActiveCfg = Release|x64 27 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Release|ARM64.Build.0 = Release|x64 28 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Release|x64.ActiveCfg = Release|x64 29 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Release|x64.Build.0 = Release|x64 30 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Release|x86.ActiveCfg = Release|Win32 31 | {DD80FB74-90A1-4F59-B409-63D5D9D6D5A1}.Release|x86.Build.0 = Release|Win32 32 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|ARM64.ActiveCfg = Debug|ARM64 33 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|ARM64.Build.0 = Debug|ARM64 34 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|ARM64.Deploy.0 = Debug|ARM64 35 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x64.ActiveCfg = Debug|x64 36 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x64.Build.0 = Debug|x64 37 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x64.Deploy.0 = Debug|x64 38 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x86.ActiveCfg = Debug|x64 39 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x86.Build.0 = Debug|x64 40 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Debug|x86.Deploy.0 = Debug|x64 41 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|ARM64.ActiveCfg = Release|ARM64 42 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|ARM64.Build.0 = Release|ARM64 43 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|ARM64.Deploy.0 = Release|ARM64 44 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x64.ActiveCfg = Release|x64 45 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x64.Build.0 = Release|x64 46 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x64.Deploy.0 = Release|x64 47 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x86.ActiveCfg = Release|x64 48 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x86.Build.0 = Release|x64 49 | {AD08483F-C1D4-4C8B-B3EA-27D510CFF239}.Release|x86.Deploy.0 = Release|x64 50 | EndGlobalSection 51 | GlobalSection(SolutionProperties) = preSolution 52 | HideSolutionNode = FALSE 53 | EndGlobalSection 54 | GlobalSection(ExtensibilityGlobals) = postSolution 55 | SolutionGuid = {22EA6152-AF33-4F9C-8FCE-6D0F6D770A71} 56 | EndGlobalSection 57 | EndGlobal 58 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | true 5 | 6 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/ESP.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/ESP.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/Features.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/Features.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/GUI.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/GUI.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/GlowTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/GlowTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/Math.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/Math.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/MiscTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/MiscTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NuklearThemes.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NuklearThemes.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.exe.recipe: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | C:\Users\Night\Desktop\Source\Nullpointer\x64\Debug\NullPointer.exe 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.ilk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.ilk -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/CL.command.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/CL.command.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/CL.read.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/CL.read.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/CL.write.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/CL.write.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/Cl.items.tlog: -------------------------------------------------------------------------------- 1 | C:\Users\Night\Desktop\Source\Nullpointer\dependencies.h;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\dependencies.obj 2 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\Features.obj 3 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\GUI.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\GUI.obj 4 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\OverlaySetup\Overlay.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\Overlay.obj 5 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\ESP\ESP.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\ESP.obj 6 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\Glow\GlowTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\GlowTab.obj 7 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\Misc\MiscTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\MiscTab.obj 8 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\TriggerBot\TriggerTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\TriggerTab.obj 9 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\WarningPopup\WarningPopup.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\WarningPopup.obj 10 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Themes\NuklearThemes.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\NuklearThemes.obj 11 | C:\Users\Night\Desktop\Source\Nullpointer\Math\Math.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\Math.obj 12 | C:\Users\Night\Desktop\Source\Nullpointer\Memory\memory.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\memory.obj 13 | C:\Users\Night\Desktop\Source\Nullpointer\NullPointer.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\NullPointer.obj 14 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/NullPointer.lastbuildstate: -------------------------------------------------------------------------------- 1 | PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.42.34433:TargetPlatformVersion=10.0.22621.0: 2 | Debug|x64|C:\Users\Night\Desktop\Source\Nullpointer\| 3 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.command.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.command.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.read.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.read.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.secondary.1.tlog: -------------------------------------------------------------------------------- 1 | ^C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\DEPENDENCIES.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\ESP.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\FEATURES.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\GLOWTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\GUI.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\MATH.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\MEMORY.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\MISCTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\NUKLEARTHEMES.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\NULLPOINTER.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\OVERLAY.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\TRIGGERTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\DEBUG\WARNINGPOPUP.OBJ 2 | C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Debug\NullPointer.ilk 3 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.write.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/NullPointer.tlog/link.write.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/Overlay.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/Overlay.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/TriggerTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/TriggerTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/WarningPopup.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/WarningPopup.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/dependencies.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/dependencies.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/memory.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/memory.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/vc143.idb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/vc143.idb -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Debug/vc143.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Debug/vc143.pdb -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/AimTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/AimTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Aimbot.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Aimbot.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/AntiFlash.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/AntiFlash.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/ESP.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/ESP.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Entity.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Entity.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Features.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Features.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/GUI.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/GUI.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Glow.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Glow.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/GlowTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/GlowTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Math.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Math.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/MiscTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/MiscTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NuklearThemes.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NuklearThemes.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.Build.CppClean.log: -------------------------------------------------------------------------------- 1 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\vc143.pdb 2 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\utils.obj 3 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.obj 4 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\winapi.obj 5 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\memory.obj 6 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\driverfunctions.obj 7 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\math.obj 8 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nuklearthemes.obj 9 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\warningpopup.obj 10 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\triggertab.obj 11 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\misctab.obj 12 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\glowtab.obj 13 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\esp.obj 14 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\aimtab.obj 15 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\overlay.obj 16 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\gui.obj 17 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\features.obj 18 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\dependencies.obj 19 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\triggerbot.obj 20 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\glow.obj 21 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\entity.obj 22 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\antiflash.obj 23 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\aimbot.obj 24 | c:\users\night\desktop\source\nullpointer\x64\release\nullpointer.exe 25 | c:\users\night\desktop\source\nullpointer\x64\release\nullpointer.pdb 26 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.ipdb 27 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.iobj 28 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\cl.command.1.tlog 29 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\cl.items.tlog 30 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\cl.read.1.tlog 31 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\cl.write.1.tlog 32 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\link.command.1.tlog 33 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\link.read.1.tlog 34 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\link.secondary.1.tlog 35 | c:\users\night\desktop\source\nullpointer\nullpointer\x64\release\nullpointer.tlog\link.write.1.tlog 36 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.exe.recipe: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | C:\Users\Night\Desktop\Source\Nullpointer\x64\Release\NullPointer.exe 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.iobj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.iobj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.ipdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.ipdb -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.log: -------------------------------------------------------------------------------- 1 |  Features.c 2 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(30,42): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 3 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(33,45): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 4 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(36,41): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 5 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(50,46): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 6 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(53,53): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 7 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(56,46): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 8 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(59,51): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 9 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(62,51): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 10 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(65,53): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 11 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(71,41): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 12 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(77,47): warning C4022: 'ReadMemory': pointer mismatch for actual parameter 2 13 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(98,71): warning C4244: 'initializing': conversion from 'int' to 'float', possible loss of data 14 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(98,90): warning C4244: 'initializing': conversion from 'int' to 'float', possible loss of data 15 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(121,78): warning C4022: 'WriteMemory': pointer mismatch for actual parameter 2 16 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(121,93): warning C4022: 'WriteMemory': pointer mismatch for actual parameter 3 17 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c(142,21): warning C4047: '=': 'uintptr_t' differs in levels of indirection from 'void *' 18 | Generating code 19 | 2 of 483 functions ( 0.4%) were compiled, the rest were copied from previous compilation. 20 | 0 functions were new in current compilation 21 | 11 functions had inline decision re-evaluated but remain unchanged 22 | Finished generating code 23 | NullPointer.vcxproj -> C:\Users\Night\Desktop\Source\Nullpointer\x64\Release\NullPointer.exe 24 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/CL.command.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.tlog/CL.command.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/CL.read.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.tlog/CL.read.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/CL.write.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.tlog/CL.write.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/Cl.items.tlog: -------------------------------------------------------------------------------- 1 | C:\Users\Night\Desktop\Source\Nullpointer\dependencies.h;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\dependencies.obj 2 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Aimbot\Aimbot.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Aimbot.obj 3 | C:\Users\Night\Desktop\Source\Nullpointer\Features\AntiFlash\AntiFlash.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\AntiFlash.obj 4 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Entity\Entity.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Entity.obj 5 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Features.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Features.obj 6 | C:\Users\Night\Desktop\Source\Nullpointer\Features\Glow\Glow.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Glow.obj 7 | C:\Users\Night\Desktop\Source\Nullpointer\Features\TriggerBot\TriggerBot.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\TriggerBot.obj 8 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\GUI.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\GUI.obj 9 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\OverlaySetup\Overlay.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Overlay.obj 10 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\AimBot\AimTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\AimTab.obj 11 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\ESP\ESP.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\ESP.obj 12 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\Glow\GlowTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\GlowTab.obj 13 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\Misc\MiscTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\MiscTab.obj 14 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\TriggerBot\TriggerTab.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\TriggerTab.obj 15 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Tabs\WarningPopup\WarningPopup.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\WarningPopup.obj 16 | C:\Users\Night\Desktop\Source\Nullpointer\GUI\Themes\NuklearThemes.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\NuklearThemes.obj 17 | C:\Users\Night\Desktop\Source\Nullpointer\Math\Math.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Math.obj 18 | C:\Users\Night\Desktop\Source\Nullpointer\Memory\DRIVER\driverFunctions.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\driverFunctions.obj 19 | C:\Users\Night\Desktop\Source\Nullpointer\Memory\memory.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\memory.obj 20 | C:\Users\Night\Desktop\Source\Nullpointer\Memory\WINAPI\winapi.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\winapi.obj 21 | C:\Users\Night\Desktop\Source\Nullpointer\NullPointer.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\NullPointer.obj 22 | C:\Users\Night\Desktop\Source\Nullpointer\Utils\Utils.c;C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\Utils.obj 23 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/NullPointer.lastbuildstate: -------------------------------------------------------------------------------- 1 | PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.42.34433:TargetPlatformVersion=10.0.26100.0: 2 | Release|x64|C:\Users\Night\Desktop\Source\Nullpointer\| 3 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.command.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.command.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.read.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.read.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.secondary.1.tlog: -------------------------------------------------------------------------------- 1 | ^C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\AIMBOT.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\AIMTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\ANTIFLASH.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\DEPENDENCIES.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\DRIVERFUNCTIONS.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\ENTITY.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\ESP.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\FEATURES.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\GLOW.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\GLOWTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\GUI.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\MATH.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\MEMORY.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\MISCTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\NUKLEARTHEMES.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\NULLPOINTER.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\OVERLAY.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\TRIGGERBOT.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\TRIGGERTAB.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\UTILS.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\WARNINGPOPUP.OBJ|C:\USERS\NIGHT\DESKTOP\SOURCE\NULLPOINTER\NULLPOINTER\X64\RELEASE\WINAPI.OBJ 2 | C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\NullPointer.IPDB 3 | C:\Users\Night\Desktop\Source\Nullpointer\NullPointer\x64\Release\NullPointer.iobj 4 | -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.write.1.tlog: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.tlog/link.write.1.tlog -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/NullPointer.vcxproj.FileListAbsolute.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/NullPointer.vcxproj.FileListAbsolute.txt -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Overlay.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Overlay.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/TriggerBot.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/TriggerBot.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/TriggerTab.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/TriggerTab.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/Utils.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/Utils.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/WarningPopup.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/WarningPopup.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/dependencies.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/dependencies.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/driverFunctions.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/driverFunctions.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/memory.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/memory.obj -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/vc143.pdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/vc143.pdb -------------------------------------------------------------------------------- /Nullpointer/NullPointer/x64/Release/winapi.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/NullPointer/x64/Release/winapi.obj -------------------------------------------------------------------------------- /Nullpointer/Offsets.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | typedef __int64 ptrdiff_t; 3 | 4 | // [<-----OFFSETS----->] 5 | static ptrdiff_t dwEntityList = 0x1A197E8; 6 | static ptrdiff_t dwLocalPlayerPawn = 0x186DE00; 7 | static ptrdiff_t dwViewMatrix = 0x1A84890; 8 | static ptrdiff_t dwBoneMatrx = 0x80; 9 | 10 | // [<-----CLIENT.DLL----->] 11 | static ptrdiff_t m_hPlayerPawn = 0x80C; 12 | static ptrdiff_t m_flFlashBangTime = 0x13F8; 13 | static ptrdiff_t m_iIDEntIndex = 0x1458; 14 | static ptrdiff_t m_iTeamNum = 0x3E3; 15 | static ptrdiff_t m_iHealth = 0x344; 16 | static ptrdiff_t m_Glow = 0xC00; 17 | static ptrdiff_t m_glowColorOverride = 0x40; 18 | static ptrdiff_t m_bGlowing = 0x51; 19 | static ptrdiff_t m_fFlags = 0x3EC; 20 | static ptrdiff_t jump = 0x181C670; 21 | static ptrdiff_t m_entitySpottedState = 0x23D0; 22 | static ptrdiff_t m_bSpotted = 0x8; 23 | static ptrdiff_t m_vOldOrigin = 0x1324; 24 | static ptrdiff_t m_vecViewOffset = 0xCB0; 25 | static ptrdiff_t m_bIsScoped = 0x23E8; // bool 26 | static ptrdiff_t m_bResumeZoom = 0x23E9; // bool 27 | static ptrdiff_t m_bIsDefusing = 0x23EA; // bool 28 | static ptrdiff_t m_modelState = 0x170; // int* 29 | static ptrdiff_t m_pGameSceneNode = 0x328; //int* 30 | static ptrdiff_t m_lifeState = 0x348; //uint8 31 | static ptrdiff_t m_bPawnIsAlive = 0x814; 32 | 33 | enum BoneID{ 34 | 35 | HEAD = 6, 36 | NECK = 5, 37 | CHEST = 4, 38 | STOMACH = 2, 39 | PENIS = 0, 40 | LEFT_SHOULDER = 8, 41 | LEFT_ARM = 9, 42 | LEFT_HAND = 10, 43 | RIGHT_SHOULDER = 13, 44 | RIGHT_ARM = 14, 45 | RIGHT_HAND = 15, 46 | LEFT_THIGH = 22, 47 | LEFT_CALF = 23, 48 | LEFT_FOOT = 24, 49 | RIGHT_THIGH = 25, 50 | R_CALF = 26, 51 | RIGHT_FOOT = 27 52 | 53 | }; -------------------------------------------------------------------------------- /Nullpointer/Request.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | typedef void* PVOID; 3 | typedef void* HANDLE; 4 | typedef unsigned __int64 SIZE_T; 5 | 6 | typedef struct _Request { 7 | PVOID BaseAdress; 8 | HANDLE proccess_id; 9 | 10 | PVOID target; 11 | PVOID buffer; 12 | 13 | SIZE_T size; 14 | SIZE_T return_size; 15 | 16 | } Request, * PRequest; -------------------------------------------------------------------------------- /Nullpointer/Utils/Utils.c: -------------------------------------------------------------------------------- 1 | #include "Utils.h" 2 | 3 | void MoveMouse(int dx, int dy) { 4 | INPUT input = { 0 }; 5 | 6 | input.type = INPUT_MOUSE; 7 | input.mi.dx = dx; 8 | input.mi.dy = dy; 9 | input.mi.dwFlags = MOUSEEVENTF_MOVE; 10 | 11 | SendInput(1, &input, sizeof(INPUT)); 12 | } 13 | 14 | const char* GetKeyName(int key) { 15 | static char keyName[32]; 16 | 17 | if (key == 0) return "None"; 18 | GetKeyNameTextA(MapVirtualKeyA(key, MAPVK_VK_TO_VSC) << 16, keyName, sizeof(keyName)); 19 | return keyName; 20 | } 21 | 22 | void ClickMouse(int delay) { 23 | mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0); 24 | Sleep(delay); 25 | mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); 26 | Sleep(delay); 27 | } -------------------------------------------------------------------------------- /Nullpointer/Utils/Utils.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "../dependencies.h" 3 | 4 | void MoveMouse(int dx, int dy); 5 | void ClickMouse(int delay); 6 | 7 | void FillKeys(PKeyEntry entry); 8 | const char* GetKeyName(int key); -------------------------------------------------------------------------------- /Nullpointer/dependencies.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | #include "../Driver/IO_Operations.h" 7 | 8 | #define WINDOW_WIDTH GetSystemMetrics(SM_CXSCREEN) 9 | #define WINDOW_HEIGHT GetSystemMetrics(SM_CYSCREEN) 10 | 11 | typedef struct _Feature { 12 | boolean Aimbot; 13 | boolean TriggerBot; 14 | boolean Glow; 15 | 16 | boolean Line; 17 | boolean Box; 18 | boolean Health; 19 | 20 | boolean AntiFlash; 21 | boolean Bhop; 22 | boolean RadarHack; 23 | 24 | boolean ESPTeamCheck; 25 | boolean TriggerTeamCheck; 26 | 27 | boolean FOV; 28 | boolean poolLoaded; 29 | 30 | boolean Ghost; 31 | boolean UNLOAD; 32 | 33 | } FeaturesStates, * PFeaturesStates; 34 | 35 | 36 | enum Mode { 37 | 38 | HOLD = 0, 39 | PRESS = 1 40 | 41 | }; 42 | 43 | typedef struct _KeyBind { 44 | int keyID; 45 | char* name; 46 | }KeyBind, * PKeyBind; 47 | 48 | 49 | typedef struct _KeyEntry { 50 | KeyBind keys[7]; 51 | int selectedKeyAim; 52 | int selectedKeyTrigger; 53 | 54 | }KeyEntry, * PKeyEntry; 55 | 56 | 57 | typedef struct _Config { 58 | int sleepTime; 59 | const SYSTEM_INFO sysinf; 60 | 61 | int preShotDelay; 62 | int postShotDelay; 63 | 64 | DWORD sleepTriggerTime; 65 | boolean shootInAir; 66 | 67 | int fovSize; 68 | KeyEntry keyEntry; 69 | 70 | enum Mode aimbotMode; 71 | enum Mode triggerMode; 72 | 73 | 74 | }Config, * PConfig; 75 | 76 | #ifdef ENTITY_STRUCTURE 77 | 78 | #include "Math/Math.h" 79 | typedef struct _Entity { 80 | boolean draw; 81 | boolean isScoped; 82 | boolean isDefusing; 83 | boolean isAlly; 84 | 85 | UINT8 team; 86 | UINT8 health; 87 | 88 | Vector3 absOrigin; 89 | Vector2 position; 90 | Vector2 screenHead; 91 | Vector2 screenBody; 92 | 93 | float width; 94 | float height; 95 | 96 | uintptr_t pawn; 97 | uintptr_t sceneNode; 98 | uintptr_t model; 99 | 100 | }Entity, * PEntity; 101 | 102 | #endif 103 | 104 | #ifdef CONFIG 105 | 106 | #endif // CONFIG 107 | 108 | #ifdef MEMORY 109 | #include "Memory/memory.h" 110 | #endif // MEMORY 111 | 112 | #ifdef GUI 113 | #include "GUI/GUI.h" 114 | #endif // GUI 115 | 116 | #ifdef OFFSETS 117 | #include "Offsets.h" 118 | #endif // OFFSETS 119 | 120 | #ifdef FEATURES 121 | #include "Features/Features.h" 122 | #endif // FEATURES 123 | 124 | #ifdef MATH 125 | #include "Math/Math.h" 126 | #endif 127 | 128 | #ifdef UTILS 129 | #include "Utils/Utils.h" 130 | #endif // UTILS 131 | 132 | 133 | #ifdef FULL_STACK 134 | #include "Offsets.h" 135 | #include "Memory/memory.h" 136 | #include "GUI/GUI.h" 137 | #include "Features/Features.h" 138 | #include "Math/Matils.h" 139 | #include "Utils/Utils.h" 140 | #endif // FULL_STACK 141 | 142 | 143 | 144 | 145 | -------------------------------------------------------------------------------- /Nullpointer/font/FiraCode.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/font/FiraCode.ttf -------------------------------------------------------------------------------- /Nullpointer/icons/aimbot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/aimbot.png -------------------------------------------------------------------------------- /Nullpointer/icons/esp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/esp.png -------------------------------------------------------------------------------- /Nullpointer/icons/glow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/glow.png -------------------------------------------------------------------------------- /Nullpointer/icons/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/logo.png -------------------------------------------------------------------------------- /Nullpointer/icons/misc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/misc.png -------------------------------------------------------------------------------- /Nullpointer/icons/trigger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/trigger.png -------------------------------------------------------------------------------- /Nullpointer/icons/watching.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/9ght-code/NullPointer/010f75bd75b22b873b4c82b637576afd64515221/Nullpointer/icons/watching.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # NullPointer ![](https://img.shields.io/badge/C-blue) ![Downloads](https://img.shields.io/github/downloads/9ght-code/NullPointer/total) OUTDATED/NO UPDATES 3 | 4 | *** 5 | 6 |

7 | 8 |

9 | 10 | + NullPointer is a simple cheat for CS2 11 | + external it doesn't inject into the proccess 12 | + open source you can use it freely 13 | + read/write modes the application **DOESN'T** read only! 14 | + kernel uses the driver to communicate with the process memory 15 | + WINAPI supports WINAPI in case you can't load the driver 16 | + FULL C-BASED it's the perfect reason for educational purposes, isn't it? 17 | + ~~NO GUI it's the console based application~~ 18 | + Simple GUI now it has the simple GUI menu! 19 | 20 | *** 21 | 22 | # Features 23 | - [X] BHOP WRITES 24 | - [x] Glow WallHack WRITES 25 | - [X] Anti-Flash WRITES 26 | - [X] TriggerBot READ 27 | 28 | *** 29 | # TODO 30 | - [X] GUI Wallhack READ 31 | - 2D Box 32 | - Line 33 | - Changes the color when player is zooming 34 | - Changes the color when player is defusing 35 | - HP bar 36 | 37 | - [X] Any GUI menu 38 | - [X] AimBot 39 | - [ ] No Recoil (Direct, Mouse simulating) 40 | - [ ] Config system 41 | - [ ] MultiThreading 42 | - [ ] ESP names, distance 43 | - [X] Radar Hack WRITES 44 | 45 | *** 46 | # Usage 47 | 1. Download the release archive 48 | 2. Drop the driver file on KDmapper.exe 49 | 3. Run CS2 50 | 4. Run NullPointer.exe (as Administrator) 51 | 5. Press F9 to open the menu 52 | 6. Enjoy! 53 | 54 | 55 | *** 56 | 57 | # WARNING! 58 | 59 | WRITE FEATURES DETECTED BY VAC! IT MEANS THAT YOU MAY BE BANNED IN 9/10 SITUATIONS! SO LAUNCH THE GAME IN THE SAFE MODE! 60 | 61 | *** 62 | 63 | # ScreenShots 64 | ![](https://github.com/user-attachments/assets/bb23dfd4-7b6a-4705-9b89-b4faa8f96634) 65 | 66 | ![](https://github.com/user-attachments/assets/514ef043-3497-4de0-bb24-751532241d09) 67 | 68 | ![](https://github.com/user-attachments/assets/8d2ab91c-87a1-4ba3-bcf9-b2ba16f7fb9e) 69 | 70 | 71 | - Sometimes the aimbot may be laggy! 72 | - You need to set the color for each ESP feature manually! 73 | *** 74 | 75 | # TroubleShooting 76 | - I can't load the driver, what should i do? 77 | - [X] so, first of all, disable your vulnerable driver list 78 | - How can i disable the vulnurable driver list? 79 | - [X] open regedit -> **HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CI\Config** -> set VulnerableDriverBlocklistEnable (**DWORD** type) to 0. If there's no path like this, create it 80 | - How can i launch the game in the safe mode? 81 | - [X] Steam -> CS2 -> Properties -> enter -insecure into the launch options field 82 | - I did everything but it still doesn't work 83 | - [X] Set to Windowed Fullscreen 84 | 85 | *** 86 | # Other Links 87 | + KDmapper - **https://github.com/TheCruZ/kdmapper** 88 | + Nuklear - **https://github.com/Immediate-Mode-UI/Nuklear** 89 | --------------------------------------------------------------------------------