68 lines
2.3 KiB
C
68 lines
2.3 KiB
C
/*
|
|
* Copyright (c) 2024 lax1dude. All Rights Reserved.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
|
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
|
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
* POSSIBILITY OF SUCH DAMAGE.
|
|
*
|
|
*/
|
|
|
|
#ifndef _INCLUDED_IMPORTS_H
|
|
#define _INCLUDED_IMPORTS_H
|
|
|
|
#include "stdint.h"
|
|
|
|
struct epw_load_result_epk {
|
|
uint32_t epkData;
|
|
uint32_t epkName;
|
|
uint32_t epkPath;
|
|
};
|
|
|
|
struct epw_load_result {
|
|
uint32_t eagruntimeJSData;
|
|
uint32_t classesWASMData;
|
|
uint32_t classesDeobfTEADBGData;
|
|
uint32_t classesDeobfWASMData;
|
|
uint32_t pressAnyKeyImgData;
|
|
uint32_t pressAnyKeyImgMIME;
|
|
uint32_t crashImgData;
|
|
uint32_t crashImgMIME;
|
|
uint32_t faviconImgData;
|
|
uint32_t faviconImgMIME;
|
|
uint32_t numEPKs;
|
|
struct epw_load_result_epk epkData[];
|
|
};
|
|
|
|
struct jspi_unsupported_load_result {
|
|
uint32_t crashImgData;
|
|
uint32_t crashImgMIME;
|
|
uint32_t markup;
|
|
};
|
|
|
|
#define LOAD_RESULT_SIZE(numEPKs) (sizeof(struct epw_load_result) + sizeof(struct epw_load_result_epk) * (numEPKs))
|
|
|
|
extern uint8_t getJSPISupported();
|
|
|
|
extern uint32_t getEPWLength();
|
|
extern void memcpyFromEPW(void* dest, uint32_t off, uint32_t len);
|
|
extern uint32_t initResult(uint32_t bufLen);
|
|
extern void memcpyToResult(uint32_t bufId, const void* src, uint32_t off, uint32_t len);
|
|
extern void memcpyFromEPWToResult(uint32_t bufId, uint32_t dest, uint32_t off, uint32_t len);
|
|
extern uint32_t initEPWStringResult(uint32_t off, uint32_t len);
|
|
|
|
extern void resultFailed(const char* msg);
|
|
extern void resultSuccess(const struct epw_load_result* result);
|
|
extern void resultJSPIUnsupported(struct jspi_unsupported_load_result* result);
|
|
|
|
extern void dbgLog(const char* msg);
|
|
extern void dbgErr(const char* msg);
|
|
|
|
#endif
|