/* Web64 SDK header printout: web64/cartridge.h * Generated by scripts/copy-web64-ide-source.mjs. * The IDE resolves this header as a read-only virtual SDK document. */ #ifndef WEB64_CARTRIDGE_H #define WEB64_CARTRIDGE_H #include #define WEB64_CART_PROFILE_STANDARD_8K 0 #define WEB64_CART_PROFILE_STANDARD_16K 1 #define WEB64_CART_PROFILE_MAGIC_DESK 2 #define WEB64_CART_PROFILE_EASYFLASH 3 #define WEB64_CART_ROML 0 #define WEB64_CART_ROMH 1 #define WEB64_CART_OK 0 #define WEB64_CART_PROFILE 1 #define WEB64_CART_BANK 2 #define WEB64_CART_MODE 3 #define WEB64_CART_RANGE 4 #define WEB64_CART_DESTINATION 5 #define WEB64_CART_BUSY 6 #define WEB64_CART_NOT_INITIALIZED 7 #define WEB64_CART_RESOURCE 8 #define WEB64_CART_DIRECTORY 9 #define WEB64_CART_UNSAFE 10 #define WEB64_CART_MAX_TRANSFER 256 #define WEB64_CART_MODE_BOOT 0 #define WEB64_CART_MODE_OFF 4 #define WEB64_CART_MODE_ULTIMAX 5 #define WEB64_CART_MODE_8K 6 #define WEB64_CART_MODE_16K 7 typedef struct { uint8_t profile; uint8_t bank; uint8_t window; uint16_t offset; uint8_t *destination; uint16_t length; } web64_cart_transfer; typedef struct { uint8_t resource; uint32_t offset; uint8_t *destination; uint16_t length; } web64_cart_resource_request; typedef struct { uint16_t completed; } web64_cart_resource_result; _web64_rt uint8_t web64_cart_select_bank(uint8_t profile, uint8_t bank); _web64_rt uint8_t web64_cart_set_mode(uint8_t profile, uint8_t mode); _web64_rt uint8_t web64_cart_copy(const web64_cart_transfer *request); _web64_rt uint8_t web64_cart_read(const web64_cart_transfer *request); _web64_rt uint8_t web64_cart_resources_init(void); _web64_rt uint8_t web64_cart_resource_read(const web64_cart_resource_request *request, web64_cart_resource_result *result); _web64_rt uint8_t web64_cart_resource_copy(const web64_cart_resource_request *request, web64_cart_resource_result *result); #endif