REDIVIVUS

Proposals / #940

Mac LIGHTMAP_InterpolateCell: __fastcc void (int nBufferX, int nBufferY); Windows twin 0x00474c00

applied · by KierTaylor · submitted 2026-11-02, applied 2026-11-02

Ghidra vmac 111 · 3c6740e

Mac body: ECX is saved and added to the stored column base (cell X), EDX is shifted left by 8 to select the 256-wide row of the light grid (cell Y); a jump table on the stored step mode then copies or blends neighbour cells; no stack arguments, plain RET. Windows LIGHTMAP_InterpolateCell 0x00474c00 is void (int nBufferX, int nBufferY), the same pair; the Mac plate's 'no Windows twin' note is wrong.

Changes 1, applied together

  1. Set prototype mac 0x0006278b

    signatureundefined LIGHTMAP_InterpolateCell(void)→void LIGHTMAP_InterpolateCell(int nBufferX, int nBufferY)
    conventionunknown→__fastcc