App LINK TransmitInit

From WikiPrizm
Jump to: navigation, search


Synopsis

Header: fxcg/serial.h
Syscall index: 0x13A6
Function signature: int App_LINK_TransmitInit(struct TransmitBuffer* txb)

Sends the transmit start packet for a file transfer using Protocol 7.00, and handles the file overwrite dialog in case the file already exists in the connected device. Before calling this syscall, preparation is necessary.

Parameters

  • txb - pointer to a struct like this (comments relative to the transfer of a file in storage memory):
struct TTransmitBuffer {
    char device[0x008]; // fls0
    char directoryname[0x10A]; // can be an empty string, possibly controls in which folder the file goes on the destination device.
// 0x112
    char fname1[0x10A]; // file name for the file on the destination device.
    char dummy[0x28];
    char fname2[0x00E];
// 0x252
    unsigned short filename[0x10A]; // 16-bit string containing the full file name in the origin calculator, like this: \\fls0\ABC.G1A
// 0x466
    char dummy2[0x1A];
// 0x480
    int filesize; // the size, in bytes, of the file to send.
// 0x484
    short dummy3;
// 0x486
    char command; // set to 0x45
    char subcommand;
// 0x488
    char datatype; // set to 0x80
    char dummy4_3;
    char dummy4_4;
    char dummy4_5;
// 0x48C
    int handle; // initialize to -1
// 0x490
    char dummy5[8];
// 0x498
    char source; // set to 1
    char dummy6_1;
    char dummy6_2;
    char dummy6_3;
// 0x49C
    int zero; // set to zero
}

Returns

0 on success, other values on error.

Comments

After calling this syscall, App_LINK_Transmit can be used to proceed with the file transfer.

For more information on Protocol 7.00, see fxReverse.pdf.