SIO Command $C8 Hash Input - FujiNetWIFI/fujinet-firmware GitHub Wiki
This is a command for Device $70 - The FujiNet Device itself (see SIO-Commands-for-Device-ID-$70).
Hash Input ($C8)
Description
Puts data in the FujiNet's input buffer for hashing by Hash Compute, which should be the function called after this command has input all the data to hash. This command can be called as many times as needed to input data at up to 65535 bytes at a time.
Because DAUX is used to tell the FujiNet how many bytes to expect, both DBUF and DAUX must be set to the same value.
Firmware version required: 1.1 (2023.08.22) +
Parameters
DCB | Value |
---|---|
DDEVIC | $70 |
DUNIT | $01 |
DCOMND | $C8 |
DSTATS | $80 |
DBUF | A buffer as big as specified by DBYT/DAUX |
DTIMLO | $03 |
DBYT | number of bytes to input |
DAUX1 | number of bytes to input (LO) |
DAUX2 | number of bytes to input (HI) |
Examples
CC65
unsigned char hash_input(char* buf, unsigned short len)
{
OS.dcb.ddevic = 0x70;
OS.dcb.dunit = 1;
OS.dcb.dcomnd = 0xC8;
OS.dcb.dstats = 0x80;
OS.dcb.dbuf = buf;
OS.dcb.dtimlo = 0x03;
OS.dcb.dbyt = len;
OS.dcb.daux = len;
siov();
return OS.dcb.dstats; // Return SIO error or success.
}