Added support for building on Windows

This commit is contained in:
jaburns
2020-10-25 01:36:47 -06:00
parent 80d96f0241
commit 5f59e1a178
6 changed files with 55 additions and 35 deletions
+19 -9
View File
@@ -5,6 +5,16 @@
#include <stdint.h>
#include <stdbool.h>
#ifdef _WIN32
#ifdef BUILDING_SM64_DLL
#define SM64_LIB_FN __declspec(dllexport)
#else
#define SM64_LIB_FN __declspec(dllimport)
#endif
#else
#define SM64_LIB_FN
#endif
struct SM64Surface
{
int16_t type;
@@ -58,16 +68,16 @@ enum
SM64_GEO_MAX_TRIANGLES = 1024,
};
extern void sm64_global_init( uint8_t *rom, uint8_t *outTexture, SM64DebugPrintFunctionPtr debugPrintFunction );
extern void sm64_load_surfaces( uint16_t terrainType, const struct SM64Surface *surfaceArray, uint32_t numSurfaces );
extern SM64_LIB_FN void sm64_global_init( uint8_t *rom, uint8_t *outTexture, SM64DebugPrintFunctionPtr debugPrintFunction );
extern SM64_LIB_FN void sm64_load_surfaces( uint16_t terrainType, const struct SM64Surface *surfaceArray, uint32_t numSurfaces );
extern void sm64_mario_reset( int16_t marioX, int16_t marioY, int16_t marioZ );
extern void sm64_mario_tick( const struct SM64MarioInputs *inputs, struct SM64MarioState *outState, struct SM64MarioGeometryBuffers *outBuffers );
extern void sm64_global_terminate( void );
extern SM64_LIB_FN void sm64_mario_reset( int16_t marioX, int16_t marioY, int16_t marioZ );
extern SM64_LIB_FN void sm64_mario_tick( const struct SM64MarioInputs *inputs, struct SM64MarioState *outState, struct SM64MarioGeometryBuffers *outBuffers );
extern SM64_LIB_FN void sm64_global_terminate( void );
extern uint32_t sm64_load_surface_object( const struct SM64SurfaceObject *surfaceObject );
extern void sm64_move_object( uint32_t id, const struct SM64ObjectTransform *transform );
extern void sm64_unload_object( uint32_t id );
extern SM64_LIB_FN uint32_t sm64_load_surface_object( const struct SM64SurfaceObject *surfaceObject );
extern SM64_LIB_FN void sm64_move_object( uint32_t id, const struct SM64ObjectTransform *transform );
extern SM64_LIB_FN void sm64_unload_object( uint32_t id );
/*
@@ -88,4 +98,4 @@ extern void sm64_delete_mario( uint32_t marioId );
*/
#endif//__LIB_SM64_H
#endif//__LIB_SM64_H