Slide 8
Slide 8 text
LinuxのAtariパーティションテーブル認識ロジック
8
…
rs = read_part_sector(state, 0, §); ☆ rsにはディスクの先頭領域のデータが入る
if (!rs)
return -1;
/* Verify this is an Atari rootsector: */
hd_size = get_capacity(state->disk); ☆ 4つの領域のどれかが
Atariパーティションと判定されればよし
if (!VALID_PARTITION(&rs->part[0], hd_size) &&
!VALID_PARTITION(&rs->part[1], hd_size) &&
!VALID_PARTITION(&rs->part[2], hd_size) &&
!VALID_PARTITION(&rs->part[3], hd_size)) {
/*
* if there's no valid primary partition, assume that no Atari
* format partition table (there's no reliable magic or the like
* :-()
*/
…
https://github.com/torvalds/linux/blob/v6.9/block/partitions/atari.c