summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-05-14 12:47:30 +0200
committerAmlal El Mahrouss <amlal@nekernel.org>2025-05-14 12:48:58 +0200
commit2254f391e710d9c357d1b806b47786270d77d2b7 (patch)
tree6b16efa8035ab56dc10eb912806dbde4427a3470
parentae3cd5cde93702305fe68b38e052d1f936ee5c93 (diff)
feat(kernel): Improved DiskImage.fwrk's Format functions, don't assume
that 512B is always what we want when formating a disk. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
-rw-r--r--dev/ddk/DDKKit/ifs.h17
-rw-r--r--public/frameworks/DiskImage.fwrk/headers/DiskImage.h5
-rw-r--r--public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc4
-rw-r--r--public/frameworks/DiskImage.fwrk/src/DiskImage+NeFS.cc2
4 files changed, 8 insertions, 20 deletions
diff --git a/dev/ddk/DDKKit/ifs.h b/dev/ddk/DDKKit/ifs.h
deleted file mode 100644
index f03ed53c..00000000
--- a/dev/ddk/DDKKit/ifs.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/* -------------------------------------------
-
- Copyright 2025 Amlal El Mahrouss, all right reserved.
-
- FILE: ifs.h
- PURPOSE: IFS model base header.
-
-------------------------------------------- */
-
-#pragma once
-
-#include <DDKKit/macros.h>
-
-struct DDK_IFS_MANIFEST;
-
-/// @brief IFS hooks to plug into the FileMgr.
-/// why? because we don't need to implement filesystem on the kernel directly.
diff --git a/public/frameworks/DiskImage.fwrk/headers/DiskImage.h b/public/frameworks/DiskImage.fwrk/headers/DiskImage.h
index 04b460b2..fc37ab59 100644
--- a/public/frameworks/DiskImage.fwrk/headers/DiskImage.h
+++ b/public/frameworks/DiskImage.fwrk/headers/DiskImage.h
@@ -11,7 +11,12 @@
#include <user/SystemCalls.h>
+#ifndef __DISK_IMAGE_CDROM__
#define kDISectorSz (512)
+#else
+#define kDISectorSz (2048)
+#endif // __DISK_IMAGE_CDROM__
+
#define kDIMinDiskSz mib_cast(1)
#define kDIDefaultOutputName "disk.eimg"
#define kDIDefaultDiskName "Disk"
diff --git a/public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc b/public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc
index c14c2ed0..7f917052 100644
--- a/public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc
+++ b/public/frameworks/DiskImage.fwrk/src/DiskImage+HeFS.cc
@@ -2,7 +2,7 @@
Copyright (C) 2025, Amlal El Mahrouss, all rights reserved.
- FILE: DiskImage+NeFS.cc
+ FILE: DiskImage+HeFS.cc
PURPOSE: Disk Imaging framework.
------------------------------------------- */
@@ -16,7 +16,7 @@
/// @param img disk image structure.
/// @return Status code upon completion.
SInt32 DI::DIFormatFilesystemHeFS(struct DI_DISK_IMAGE& img) noexcept {
- if (!img.sector_sz || (img.sector_sz % 512 != 0)) return kDIFailureStatus;
+ if (!img.sector_sz || (img.sector_sz % kDISectorSz != 0)) return kDIFailureStatus;
if (*img.out_name == 0 || *img.disk_name == 0) return kDIFailureStatus;
diff --git a/public/frameworks/DiskImage.fwrk/src/DiskImage+NeFS.cc b/public/frameworks/DiskImage.fwrk/src/DiskImage+NeFS.cc
index 9f5aa12b..c4f32c95 100644
--- a/public/frameworks/DiskImage.fwrk/src/DiskImage+NeFS.cc
+++ b/public/frameworks/DiskImage.fwrk/src/DiskImage+NeFS.cc
@@ -16,7 +16,7 @@
/// @param img disk image structure.
/// @return Status code upon completion.
SInt32 DI::DIFormatFilesystemNeFS(struct DI_DISK_IMAGE& img) noexcept {
- if (!img.sector_sz || (img.sector_sz % 512 != 0)) return kDIFailureStatus;
+ if (!img.sector_sz || (img.sector_sz % kDISectorSz != 0)) return kDIFailureStatus;
if (*img.out_name == 0 || *img.disk_name == 0) return kDIFailureStatus;