Espresso 0.0.2a
This commit is contained in:
@ -63,10 +63,16 @@ int32_t ide_identify(uint8_t drive, uint16_t* buffer)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ide_initialize(void) {
|
||||
void ide_initialize(void)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
printf("[ IDE ] Initializing IDE system...\n");
|
||||
#endif
|
||||
|
||||
outb(ATA_PRIMARY_CTRL, 0x02); /* Disable IRQs from IDE disk controllers TODO: should probably use IRQs soon */
|
||||
|
||||
uint16_t identify_buf[256];
|
||||
volatile uint16_t identify_buf[256];
|
||||
|
||||
if (ide_identify(0, identify_buf) == 0)
|
||||
{
|
||||
char model[41];
|
||||
@ -78,9 +84,18 @@ void ide_initialize(void) {
|
||||
model[40] = 0;
|
||||
printf("Disk model: %s\n", model);
|
||||
}
|
||||
else
|
||||
{
|
||||
printf("ide_initialize(): ide_identify(0, identify_buf) did NOT return 0!\n");
|
||||
}
|
||||
|
||||
#ifdef _DEBUG
|
||||
printf("[ IDE ] IDE initialized\n");
|
||||
#endif
|
||||
}
|
||||
|
||||
int32_t ide_read48(uint8_t drive, uint64_t lba, uint8_t sector_count, void* buffer) {
|
||||
int32_t ide_read48(uint8_t drive, uint64_t lba, uint8_t sector_count, void* buffer)
|
||||
{
|
||||
if (sector_count == 0)
|
||||
{
|
||||
return -1;
|
||||
|
||||
Reference in New Issue
Block a user