-
Notifications
You must be signed in to change notification settings - Fork 68
SIO Command $C5 Hash Output
europlus edited this page Sep 20, 2024
·
10 revisions
This is a command for Device $70 - The FujiNet Device itself (see SIO-Commands-for-Device-ID-$70).
This function retrieves the output buffer containing the hash data previously input and computed. You can fetch as many bytes up to the pre-set lengths of the given hash algorithms. Any attempt to get more bytes than are in the buffer will result in an error.
Supported hash output string sizes (bytes):
Hash | Binary | Hexadecimal |
---|---|---|
MD5 | 16 | 32 |
SHA1 | 20 | 40 |
SHA256 | 32 | 64 |
SHA512 | 64 | 128 |
Important
You must select size based on desired output type and the last call to Hash Compute.
Note
Firmware version required: 1.1 (2023.08.22) +
DCB | Value |
---|---|
DDEVIC | $70 |
DUNIT | $01 |
DCOMND | $C5 |
DSTATS | $40 |
DBUF | a buffer as big as set by DBYT |
DTIMLO | $03 |
DBYT | the number of bytes to send back |
DAUX1 | the type of output to retreive (0=binary, 1=hexadecimal) |
unsigned char hash_output(char *s, unsigned short len)
{
OS.dcb.ddevic = 0x70;
OS.dcb.dunit = 1;
OS.dcb.dcomnd = 0xC5;
OS.dcb.dstats = 0x40;
OS.dcb.dbuf = s;
OS.dcb.dtimlo = 0x03;
OS.dcb.dbyt = len;
OS.dcb.daux1 = 1;
siov();
return OS.dcb.dstats; // Return SIO error or success.
}
Copyright 2024 Contributors to the FujiNetWIFI project.
Join us on Discord: https://discord.gg/7MfFTvD
- Home
- What is FujiNet?
- The Definition of Done
- Board bring up for FujiNet Platform.IO code
- The Complete Linux CLI Guide
- The Complete macOS CLI Guide
- Development Env for Apps
- FujiNet-Development-Guidelines
- System Quickstarts
- FujiNet Flasher
- Setting up a TNFS Server
- FujiNet Configuration File: fnconfig.ini
- AppKey Registry - SIO Command $DC Open App Key
- CP-M Support
- BBS
- Official Hardware Versions
- Prototype Board Revisions
- FujiNet Development Guidelines
- Atari Programming
- Apple Programming
- C64 Programming
- ADAM Programming
- Testing Plan
- Hacker List
- FujiNet VirtualMachine