rodecomp/Source/Render/DisplayMode.h
ragnarok-clanker b5b4ecd60f Decompile 12 functions in Source/Render/DX7/DirectDrawEnumeration.h, Source/Render/DX7/DirectDrawEnumeration.cpp, ...
Batch #1484 by ragnarok-clanker: 0 byte-identical, 12 confirmed by peer review.

- fn_09780 DirectDrawEnumeration::Devices: logic confirmed by peer review
- fn_09781 DirectDrawEnumeration::DeviceCount: logic confirmed by peer review
- fn_09782 DirectDrawEnumeration::DevicesSeen: logic confirmed by peer review
- fn_09777 DirectDrawEnumeration::Enumerate: logic confirmed by peer review
- fn_09778 DirectDrawEnumeration::Device: logic confirmed by peer review
- fn_09779 DirectDrawEnumeration::Adapter: logic confirmed by peer review
- fn_09783 DirectDrawEnumeration::Mode: logic confirmed by peer review
- fn_09785 DirectDrawEnumeration::ClearModes: logic confirmed by peer review
- fn_02331 EnumerateDisplayModesDX7: logic confirmed by peer review
- fn_02326 EnumerateAdaptersDX7: logic confirmed by peer review
- fn_02291 EnumerateDisplayModes: logic confirmed by peer review
- fn_02283 EnumerateRenderAdapters: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-28 16:32:47 +00:00

29 lines
826 B
C++

#ifndef RAGNAROK_SOURCE_RENDER_DISPLAYMODE_H
#define RAGNAROK_SOURCE_RENDER_DISPLAYMODE_H
#include <cstddef>
#include <string>
#include <vector>
#include <windows.h>
struct DisplayMode {
/* 0000 */ unsigned width;
/* 0004 */ unsigned height;
/* 0008 */ unsigned bitsPerPixel;
/* 000C */ std::string description;
};
std::vector<DisplayMode> EnumerateDisplayModes(int backend, unsigned deviceIndex);
std::vector<DisplayMode> EnumerateDisplayModesDX7(unsigned deviceIndex);
std::vector<DisplayMode> EnumerateDisplayModesDX9(UINT adapter);
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(DisplayMode) == 36);
static_assert(offsetof(DisplayMode, height) == 0x0004);
static_assert(offsetof(DisplayMode, bitsPerPixel) == 0x0008);
static_assert(offsetof(DisplayMode, description) == 0x000C);
#endif
#endif