CD-Rom auslesen mit libronin

Aus SEGA-DC.DE

In diesem Beispiel initialisieren wir das CD-ROM-Laufwerk und lesen den Inhalt des Root-Verzeichnisses.

#include "ronin/ronin.h"

/* This is the default entry point for your program */
int main(int argc, char **argv)
{
	serial_init(57600);
	usleep(200000);
	cdfs_init();

	DIR *dir = opendir("/");
	if(dir != null)
	{
		struct dirent *ent;
		ent = readdir(dir);
		while(ent != null)
		{
		reportf("File is: %s [%u]\r\n", ent->d_name,ent->d_size);
		ent = readdir(dir);
		}
		closedir(dir);
	}
	return 0;
}

Der Aufruf "cdfs_init();" initialisiert die CDROM-Funktionen von libronin. Die Aufrufe "opendir(<path>)", "readdir(<DIR>)", "closedir(<DIR>)" sind identisch mit denen jedes Linux/POSIX Systems. Der Pfad, der "opendir(<path>)" übergeben wird startet im Root-Verzeichnis der CDROM. Die Rückgabewerte von "opendir(<path>)" und "readir(<DIR>)" sollten überprüft werden, da Ausnahmen mit ungültigen Pointer-Aufrufen vorkommen können.