diff options
Diffstat (limited to 'src/kernel/gpt.c')
-rw-r--r-- | src/kernel/gpt.c | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/src/kernel/gpt.c b/src/kernel/gpt.c deleted file mode 100644 index 39add3a..0000000 --- a/src/kernel/gpt.c +++ /dev/null @@ -1,40 +0,0 @@ -/* -Copyright 2019 Benji Dial - -Permission to use, copy, modify, and/or distribute this -software for any purpose with or without fee is hereby -granted, provided that the above copyright notice and this -permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS -ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO -EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER -RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, -ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE -OF THIS SOFTWARE. -*/ - -#include "gpt.h" -#include "files.h" -#include "diskio.h" - -bool gpt_parse_pt(uint8_t dn, uint8_t *buffer) { - struct gpt_header *head = (struct gpt_header *)&buffer[0x200]; - struct drive_parts *pi = part_info + dn; - pi->format = GPT; - pi->n_partitions = (head->n_parts & 0xffffff00 ? 0x000000ff : head->n_parts); - uint32_t part_entry_size = head->part_size; - struct gpt_entry *as_entries = (struct gpt_entry *)buffer; - for (uint8_t i = 0; i < pi->n_partitions; ++i) { - if (!(i % 16)) - read_sectors(dn, 2 + i / 4, 4, buffer); - pi->partition_sizes[i] = ((as_entries[i % 16].last_sector + 1) >> 1) - (pi->partition_offsets[i] = ((as_entries[i % 16].sector) >> 1)); - switch (as_entries[i % 16].id.le) { - //TODO - } - } - return true; -}
\ No newline at end of file |