SIO Command $C9 Base64 Decode Output - FujiNetWIFI/fujinet-firmware GitHub Wiki
This is a command for Device $70 - The FujiNet Device itself (see SIO-Commands-for-Device-ID-$70).
Base64 Decode Output ($C9)
Description
This function retrieves the output buffer containing the decoded data. You can fetch as many bytes up to the length reported by Base64 Decode Length. Any attempt to get more bytes than are in the buffer will result in an error.
DBYT and DAUX must be set to the same value, so that the FujiNet knows the number of bytes to return.
Firmware version required: 1.1 (2023.08.22) +
Parameters
DCB | Value |
---|---|
DDEVIC | $70 |
DUNIT | $01 |
DCOMND | $C9 |
DSTATS | $40 |
DBUF | a buffer as big as set by DBYT and DAUX |
DTIMLO | $03 |
DBYT | the number of bytes to send back |
DAUX1 | the number of bytes to send back (LO) |
DAUX2 | the number of bytes to send back (HI) |
Examples
CC65
unsigned char base64_decode_output(char *s, unsigned short len)
{
OS.dcb.ddevic = BASE64_DEVICE;
OS.dcb.dunit = 1;
OS.dcb.dcomnd = 0xC9;
OS.dcb.dstats = 0x40;
OS.dcb.dbuf = s;
OS.dcb.dtimlo = BASE64_TIMEOUT;
OS.dcb.dbyt = len;
OS.dcb.daux = len;
siov();
return OS.dcb.dstats; // Return SIO error or success.
}