33 lines
735 B
C
33 lines
735 B
C
|
|
#ifndef KISO_H
|
||
|
|
#define KISO_H
|
||
|
|
|
||
|
|
#include "drivers/ide/ide.h"
|
||
|
|
|
||
|
|
typedef struct __attribute__((packed)) {
|
||
|
|
uint8_t type;
|
||
|
|
char identifier[5];
|
||
|
|
uint8_t version;
|
||
|
|
} vd_header_t;
|
||
|
|
|
||
|
|
typedef struct __attribute__((packed)) {
|
||
|
|
vd_header_t header;
|
||
|
|
uint8_t unused;
|
||
|
|
uint8_t sys_ident[32];
|
||
|
|
uint8_t volume_ident[32];
|
||
|
|
uint8_t unused_1[8];
|
||
|
|
uint32_t volume_space_sz_le;
|
||
|
|
uint32_t volume_space_sz_be;
|
||
|
|
uint8_t unused_2[32];
|
||
|
|
uint16_t vol_set_sz_le;
|
||
|
|
uint16_t vol_set_sz_be;
|
||
|
|
uint16_t vol_seq_num_le;
|
||
|
|
uint16_t vol_seq_num_be;
|
||
|
|
uint16_t logical_blk_sz_le;
|
||
|
|
uint16_t logical_blk_sz_be;
|
||
|
|
uint32_t path_table_sz_le;
|
||
|
|
uint32_t path_table_sz_be;
|
||
|
|
} iso_pvd_t;
|
||
|
|
|
||
|
|
void read_iso(ide_device_t* dev);
|
||
|
|
|
||
|
|
#endif
|