diff options
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.asm | 35 | ||||
| -rw-r--r-- | dev/INST/ReadMe.txt | 5 | ||||
| -rw-r--r-- | dev/ZBA/Sources/HEL/AMD64/BootMain.cxx | 10 | ||||
| -rw-r--r-- | dev/ZKA/FirmwareKit/EPM.hxx | 8 |
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; |
