====== diskinfo ======
Gibt eine Übersicht aller erkannten ATA-Laufwerke aus.
→ [[lyxos:shell|Shell-Übersicht]] · [[lyxos:cmd:partinfo|partinfo]] · [[lyxos:cmd:part|part]]
----
===== Syntax =====
diskinfo
Keine Argumente.
----
===== Beschreibung =====
''diskinfo'' ruft den Kernel-Syscall nr=82 auf, der ''VfsDiskPrintInfoR3()'' ausführt. Diese Funktion liest die ATA-Gerätetabelle (''DiskInit'' hat sie beim Boot gefüllt) und gibt für jede gefundene Disk eine Zeile aus.
Die Ausgabe läuft über ''vmm_op41'' (Framebuffer + COM1) und ist damit während der Ring-3-Ausführung sichtbar — anders als ein normaler ''PrintStr'', der in Ring-3 nur nach COM1 schreibt.
**Ausgabe-Format:**
[] MB ( sectors)
**Beispiel:**
lyx> diskinfo
[0] Primary Master 128 MB (262144 sectors)
[1] Primary Slave 256 MB (524288 sectors)
Disk-IDs beginnen bei 0. Die Reihenfolge entspricht der Erkennungsreihenfolge beim ATA-Probe (''AtaProbe()'').
----
===== Syscall-Details =====
^ Feld ^ Wert ^
| Syscall nr | 82 |
| Kernel-Funktion | ''VfsDiskPrintInfoR3()'' |
| Argumente | keine (a0, a1, a2 werden ignoriert) |
| Rückgabe | immer 0 |
| Ausgabe-Kanal | vmm_op41 (Framebuffer + COM1) |
**Shell-Implementierung** (''shell/shell.lyx''):
fn lyx_diskinfo(): int64 {
poke64(g_r3sc + R3_OFF_NR, 82);
return lyx_trigger();
}
fn cmd_diskinfo(): void {
lyx_diskinfo();
}
----
===== Fehlerverhalten =====
Wenn keine ATA-Laufwerke erkannt wurden (z.B. im Emulator ohne Disk-Image), gibt ''diskinfo'' keine Zeilen aus — nur einen leeren Prompt danach. Es gibt keine Fehlermeldung.
----
===== Verwandte Befehle =====
| [[lyxos:cmd:partinfo|partinfo]] | Partitionstabelle eines Laufwerks anzeigen |
| [[lyxos:cmd:part|part]] | MBR-Partition anlegen |
| [[lyxos:cmd:mkfat32|mkfat32]] | Partition als FAT32 formatieren |
| [[lyxos:cmd:gpt|gpt]] | GPT-Disk scannen und mounten |