Files
MBMNET-APP/ftpmodul/source/ftpstatus.h
T
2026-10-18 17:05:44 +02:00

29 lines
1.2 KiB
C

#pragma once
// Statusblock des FTP-Moduls. Die App liest ihn per Debug-Zugriff direkt aus dem Speicher des Moduls
// (die Adresse steht beim Bauen fest) - so klappt die Anzeige auch, wenn das Modul nicht an die SD kommt.
// Über "stop" kann die App das Modul ebenfalls ohne SD zum Beenden auffordern.
// Wird von ftpmodul/source/main.c und source/ftpctl.c (App) benutzt.
#include <3ds/types.h>
#define FTP_STATUS_MAGIC 0x5446424D // "MBFT"
enum {
FTP_STAGE_START = 0, // vor __appInit / srvInit
FTP_STAGE_INIT, // srv, fs, SD erledigt (Ergebnisse in srv/fs/sdmc)
FTP_STAGE_SOC, // wartet auf den Netzwerk-Dienst (socInit, Ergebnis in soc)
FTP_STAGE_WIFI, // wartet auf WLAN (keine IP)
FTP_STAGE_PORT, // Port 5000 lässt sich nicht öffnen (errno in bindErrno)
FTP_STAGE_READY, // bereit, IP in ip
FTP_STAGE_EXIT, // beendet sich
};
typedef struct {
u32 magic;
u32 stage;
s32 srv, fs, sdmc, soc;
u32 ip;
u32 heartbeat; // zählt hoch, solange das Modul lebt
u32 stop; // die App setzt 1: Modul beendet sich sauber
s32 bindErrno;
} FtpStatus;