Reverse-engineered reimplementation of 3D Pinball for Windows - Space Cadet from k4zmu2a/SpaceCadetPinball (MIT), upstream cb9b7b8, vendored rather than submoduled so local patches are just edits. - CMakeLists: stop hard-setting CMAKE_OSX_ARCHITECTURES so the documented -D override works; brew's SDL2 is arm64-only and universal linking failed. - gitignore original .DAT/.MID assets, which are not ours to redistribute. - CLAUDE.md: build line, upstream deviation, and where game data goes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
31 lines
1.1 KiB
C++
31 lines
1.1 KiB
C++
#pragma once
|
|
#include "gdrv.h"
|
|
|
|
struct zmap_header_type
|
|
{
|
|
zmap_header_type(int width, int height, int stride);
|
|
~zmap_header_type();
|
|
int Width;
|
|
int Height;
|
|
int Stride;
|
|
unsigned Resolution;
|
|
uint16_t* ZPtr1;
|
|
SDL_Texture* Texture;
|
|
private:
|
|
static int pad(int width);
|
|
};
|
|
|
|
class zdrv
|
|
{
|
|
public:
|
|
static void fill(zmap_header_type* zmap, int width, int height, int xOff, int yOff, uint16_t fillWord);
|
|
static void paint(int width, int height, gdrv_bitmap8* dstBmp, int dstBmpXOff, int dstBmpYOff,
|
|
zmap_header_type* dstZMap, int dstZMapXOff, int dstZMapYOff, gdrv_bitmap8* srcBmp, int srcBmpXOff,
|
|
int srcBmpYOff, zmap_header_type* srcZMap, int srcZMapXOff, int srcZMapYOff);
|
|
static void paint_flat(int width, int height, gdrv_bitmap8* dstBmp, int dstBmpXOff, int dstBmpYOff,
|
|
zmap_header_type* zMap, int dstZMapXOff, int dstZMapYOff, gdrv_bitmap8* srcBmp,
|
|
int srcBmpXOff, int srcBmpYOff, uint16_t depth);
|
|
static void CreatePreview(zmap_header_type& zMap);
|
|
static void FlipZMapHorizontally(const zmap_header_type& zMap);
|
|
};
|