diff --git a/.cproject b/.cproject index 3d93074..8dc6d4d 100644 --- a/.cproject +++ b/.cproject @@ -20,11 +20,22 @@ - - + + + + + + - - + + + + + + + + + @@ -39,4 +50,6 @@ + + diff --git a/.project b/.project index 90e1471..daa9fb7 100644 --- a/.project +++ b/.project @@ -3,6 +3,7 @@ UbixOS + UbixOS Libc diff --git a/src/lib/libc_old/.cproject b/src/lib/libc_old/.cproject new file mode 100644 index 0000000..de8d1f5 --- /dev/null +++ b/src/lib/libc_old/.cproject @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/lib/libc_old/.project b/src/lib/libc_old/.project new file mode 100644 index 0000000..8e98bd1 --- /dev/null +++ b/src/lib/libc_old/.project @@ -0,0 +1,27 @@ + + + UbixOS Libc + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/src/sys/fs/ufs/ufs.c b/src/sys/fs/ufs/ufs.c index 4a272e6..4bb26ab 100644 --- a/src/sys/fs/ufs/ufs.c +++ b/src/sys/fs/ufs/ufs.c @@ -327,4 +327,3 @@ /*** END ***/ - diff --git a/src/sys/pci/hd.c b/src/sys/pci/hd.c index b3ab86e..5d2ce27 100644 --- a/src/sys/pci/hd.c +++ b/src/sys/pci/hd.c @@ -158,6 +158,7 @@ memcpy(devInfo2, devInfo, sizeof(struct device_interface)); memcpy(hdd2, hdd, sizeof(struct driveInfo)); //hdd2->parOffset = d[i].dp_start + bsdd->d_partitions[x].p_offset; + hdd2->lba_start = d[i].dp_start; hdd2->parOffset = bsdd->d_partitions[x].p_offset; devInfo2->info = hdd2; minor++; @@ -207,9 +208,9 @@ } int hdInit(struct device_node *dev) { - uInt8 retVal = 0x0; + u_int8_t retVal = 0x0; int counter = 0x0; - uInt16 *tmp = 0x0; + u_int16_t *tmp = 0x0; struct driveInfo *hdd = dev->devInfo->info; for (counter = 1000000; counter >= 0; counter--) { @@ -244,7 +245,7 @@ go: - tmp = (uInt16 *) hdd->ata_identify; + tmp = (u_int16_t *) hdd->ata_identify; for (counter = 0; counter < 256; counter++) { tmp[counter] = inportWord(hdd->hdPort + ATA_DATA); @@ -407,15 +408,9 @@ long retVal = 0x0; short transactionCount = 0x0; short *tmp = (short *) baseAddr; - if (hdd->lba_start == 0) { - startSector += 0x3F + hdd->parOffset; - //kprintf("SS1: [0x%i][%i]", startSector, hdd->parOffset); - //MrOlsen OK I NEED TO GET lba_start configured to the correct offsets - } - else { - startSector += hdd->lba_start; - kprintf("SS2: [0x%i][%i]", startSector, hdd->lba_start); - } + startSector += hdd->parOffset; + startSector += hdd->lba_start; + if (hdd->hdEnable == 0x0) {