summaryrefslogtreecommitdiffhomepage
path: root/dev
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-09-07 19:30:50 +0200
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-09-07 19:30:50 +0200
commit82e5b65b604c0cc74e82a366ba53df8b68d3ed3d (patch)
tree1aa91b3823e1b3f892b9dce0c92660a7159ae1bf /dev
parent5f9761218b0ef9727574aed0dccb482a3d008e66 (diff)
[dev/HPFS] Include EBS header after EPM.
[dev/ZBA] Rename ZKA (A:) to FileSystem (A:) [dev/INST] Updated it. Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'dev')
-rw-r--r--dev/HPFS/EPM/EBS.i (renamed from dev/HPFS/X64/EBS.asm)0
-rw-r--r--dev/HPFS/EPM/EPM.asm35
-rw-r--r--dev/INST/ReadMe.txt5
-rw-r--r--dev/ZBA/Sources/HEL/AMD64/BootMain.cxx10
-rw-r--r--dev/ZKA/FirmwareKit/EPM.hxx8
5 files changed, 50 insertions, 8 deletions
diff --git a/dev/HPFS/X64/EBS.asm b/dev/HPFS/EPM/EBS.i
index 3c55825b..3c55825b 100644
--- a/dev/HPFS/X64/EBS.asm
+++ b/dev/HPFS/EPM/EBS.i
diff --git a/dev/HPFS/EPM/EPM.asm b/dev/HPFS/EPM/EPM.asm
new file mode 100644
index 00000000..fadb555c
--- /dev/null
+++ b/dev/HPFS/EPM/EPM.asm
@@ -0,0 +1,35 @@
+;; FILE: EBS.asm
+;; PURPOSE: EXPLICIT PARTITION MAP BOOT STRUCTURE (HPFS RELATED).
+;; AUTHOR: AMLAL EL MAHROUSS
+
+[bits 64]
+
+HPFS_EPM_HEADER:
+ db "EPMAM", 0
+ db "HPFS ", 0
+HPFS_EPM_UUID:
+ dd 0
+ dw 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ db 0
+ dd 0xAD ;; REVISON
+ dd 0 ;; NUM BLOCKS
+ dd 512 ;; SECTOR SZ
+ dd 0
+ dd 0
+ dw 0x1f ;; NewOS
+ dd 1
+ db "FileSystem (C:)", 0
+ times 401 db 0
+HPFS_EPM_HEADER_END:
+
+
+%include "EBS.i"
+
+times 512 db 0 \ No newline at end of file
diff --git a/dev/INST/ReadMe.txt b/dev/INST/ReadMe.txt
index d1a3953b..e7b71b4a 100644
--- a/dev/INST/ReadMe.txt
+++ b/dev/INST/ReadMe.txt
@@ -1 +1,4 @@
-This installs ZKA onto a EPM compliant drive. \ No newline at end of file
+ReadMe: INST
+
+This file installs ZKA OS into an HDD.
+It can do both EPM and GPT partitions. \ No newline at end of file
diff --git a/dev/ZBA/Sources/HEL/AMD64/BootMain.cxx b/dev/ZBA/Sources/HEL/AMD64/BootMain.cxx
index 3e78414c..1b09e63f 100644
--- a/dev/ZBA/Sources/HEL/AMD64/BootMain.cxx
+++ b/dev/ZBA/Sources/HEL/AMD64/BootMain.cxx
@@ -128,6 +128,10 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle,
handoverHdrPtr->f_GOP.f_PixelFormat = kGop->Mode->Info->PixelFormat;
handoverHdrPtr->f_GOP.f_Size = kGop->Mode->FrameBufferSize;
+ // ------------------------------------------- //
+ // Grab MP services, extended to runtime. //
+ // ------------------------------------------- //
+
auto guid_mp = EfiGUID(EFI_MP_SERVICES_PROTOCOL_GUID);
EfiMpServicesProtocol* mp = nullptr;
@@ -149,7 +153,7 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle,
mp->GetNumberOfProcessors(mp, &cnt_disabled, &cnt_enabled);
CGDrawString("NEWOSLDR (C) ZKA TECHNOLOGIES.", 10, 10, RGB(0xFF, 0xFF, 0xFF));
- CGDrawString((cnt_enabled > 1) ? "MULTIPROCESSOR SYSTEM." : "UNIPROCESSOR SYSTEM.", 20, 10, RGB(0xFF, 0xFF, 0xFF));
+ CGDrawString((cnt_enabled > 1) ? "MULTIPLE PROCESSORS DETECTED." : "SINGLE PROCESSOR DETECTED.", 20, 10, RGB(0xFF, 0xFF, 0xFF));
handoverHdrPtr->f_HardwareTables.f_MultiProcessingEnabled = cnt_enabled > 1;
// Fill handover header now.
@@ -170,7 +174,7 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle,
root.fKind = kNeFSCatalogKindDir;
- checkPart.Format("ZKA (A:)", &root, 1);
+ checkPart.Format("FileSystem (A:)", &root, 1);
rt_reset_hardware();
}
@@ -180,7 +184,7 @@ EFI_EXTERN_C EFI_API Int Main(EfiHandlePtr ImageHandle,
Descriptor = new EfiMemoryDescriptor[SzDesc];
BS->GetMemoryMap(&SizePtr, Descriptor, &MapKey, &SzDesc, &RevDesc);
- auto cDefaultMemoryMap = 0; // The sixth entry.
+ auto cDefaultMemoryMap = 0; // Grab any usable entries.
//-----------------------------------------------------------//
// A simple loop which finds a usable memory region for us.
diff --git a/dev/ZKA/FirmwareKit/EPM.hxx b/dev/ZKA/FirmwareKit/EPM.hxx
index 18f8558d..973d68ba 100644
--- a/dev/ZKA/FirmwareKit/EPM.hxx
+++ b/dev/ZKA/FirmwareKit/EPM.hxx
@@ -111,10 +111,10 @@ struct PACKED _BOOT_BLOCK_STRUCT
enum
{
- kEPMMpUx = 0xcf, // Bridge or other embedded OS
- kEPMLinux = 0x8f,
- kEPMBSD = 0x9f,
- kEPMNewOS = 0x1f, // This Kernel.
+ kEPMMpUx = 0xcf, // Embedded OS
+ kEPMLinux = 0x8f, // Linux on EPM
+ kEPMBSD = 0x9f, // Berkeley Soft. Distribution
+ kEPMNewOS = 0x1f, // This OS.
};
typedef struct _BOOT_BLOCK_STRUCT BOOT_BLOCK_STRUCT;