diff options
| author | Amlal <amlal@el-mahrouss-logic.com> | 2024-09-08 22:19:00 +0200 |
|---|---|---|
| committer | Amlal <amlal@el-mahrouss-logic.com> | 2024-09-08 22:19:00 +0200 |
| commit | ef71b80d3df1969a2be85eadf2d83cd85745469d (patch) | |
| tree | 218415d633ba1010f57f218a139c791e7a737e4f /dev/HPFS | |
| parent | 11219de11b35cb4f1e1a27408244243b11b41e05 (diff) | |
A lot:
- Changed task banks are being switched in the kernel.
- Changed user mode switch mode, improved it to push rflags.
- User proc will start the scheduler when it's being jumped on.
Signed-off-by: Amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'dev/HPFS')
| -rw-r--r-- | dev/HPFS/EPM/EBS.i | 17 | ||||
| -rw-r--r-- | dev/HPFS/EPM/EPM.asm | 14 | ||||
| -rw-r--r-- | dev/HPFS/EPM/blob.json | 6 | ||||
| -rw-r--r-- | dev/HPFS/Sources/IFSMain.cxx | 4 |
4 files changed, 26 insertions, 15 deletions
diff --git a/dev/HPFS/EPM/EBS.i b/dev/HPFS/EPM/EBS.i index 3c55825b..4fc529da 100644 --- a/dev/HPFS/EPM/EBS.i +++ b/dev/HPFS/EPM/EBS.i @@ -7,7 +7,8 @@ ;; DUMP THIS BLOB TO DISK, WHEN FORMATTING THE SSD. HPFS_EBS_HEADER: - db "HPFS ", 0 ;; MAGIC NUMBER OF FILESYSTEM + db " HPFS" ;; MAGIC NUMBER OF FILESYSTEM + dw 8 ;; MAGIC NUMBER LENGTH. dq 0 ;; RESERVED 4 dw 1 ;; VERSION dw 0 ;; PARTITION TYPE @@ -19,10 +20,10 @@ HPFS_EBS_HEADER: dq 0 ;; RESERVED 2 dq 512 ;; SECTOR SZ dq 0 ;; DISK SIZE - dq 0 ;; RESERVED 1 - dq 0 ;; LOCKER ON? - dq 0 ;; PARTITION MAP TYPE (GPT, MBR, EPM) - dq 0 ;; MASTER FILE TABLE - dq 0 ;; MASTER TRACE TABLE - dq 0 ;; MASTER DIRECTORY TABLE - dw 0xFFFF ;; END OF HEADER WORD
\ No newline at end of file + dq 0 ;; RESERVED 1 SLOT + dq 1 ;; LOCKER ON? + dq 1 ;; PARTITION MAP TYPE (GPT, MBR, EPM) + dq 16 ;; MASTER FILE TABLE + dq 80 ;; MASTER TRACE TABLE + dq 144 ;; MASTER DIRECTORY TABLE + dw 0xFFFF ;; END OF HEADER WORD diff --git a/dev/HPFS/EPM/EPM.asm b/dev/HPFS/EPM/EPM.asm index fadb555c..2197d2cd 100644 --- a/dev/HPFS/EPM/EPM.asm +++ b/dev/HPFS/EPM/EPM.asm @@ -18,18 +18,20 @@ HPFS_EPM_UUID: db 0 db 0 db 0 - dd 0xAD ;; REVISON - dd 0 ;; NUM BLOCKS - dd 512 ;; SECTOR SZ + dd 0xAD ;; EPM revision + dd 0 ;; Number of blocks, set to 0 by default. + dd 512 ;; Sector size, HPFS was made with drives in mind, so 512. dd 0 dd 0 - dw 0x1f ;; NewOS + dw 0x1f ;; NewOS (ZKA) present on partition. dd 1 - db "FileSystem (C:)", 0 + db "FileSystem (A:)", 0 times 401 db 0 HPFS_EPM_HEADER_END: %include "EBS.i" -times 512 db 0
\ No newline at end of file +times 16 db 0 + +;; Here the partition starts diff --git a/dev/HPFS/EPM/blob.json b/dev/HPFS/EPM/blob.json new file mode 100644 index 00000000..4ce4fc1c --- /dev/null +++ b/dev/HPFS/EPM/blob.json @@ -0,0 +1,6 @@ +{ + "compiler_path": "nasm", + "sources_path": ["EPM.asm"], + "output_name": "hpfs.bin", + "compiler_flags": ["-f bin"] +} diff --git a/dev/HPFS/Sources/IFSMain.cxx b/dev/HPFS/Sources/IFSMain.cxx index 229efb15..d107db2a 100644 --- a/dev/HPFS/Sources/IFSMain.cxx +++ b/dev/HPFS/Sources/IFSMain.cxx @@ -9,6 +9,8 @@ #include <HPFS/Defines.hxx> -HPFS_INT32 IFSStart(HPFS_VOID) { +/** @brief HPFS IFS main. */ +HPFS_INT32 IFSStart(HPFS_VOID) +{ return 0; } |
