diff options
| author | Amlal <amlal@el-mahrouss-logic.com> | 2024-09-10 10:33:39 +0200 |
|---|---|---|
| committer | Amlal <amlal@el-mahrouss-logic.com> | 2024-09-10 10:34:53 +0200 |
| commit | 5aef44da0ce752e7ac6bd9c95489942b1a0319ae (patch) | |
| tree | f3c6f613048ab091def7afc726f0227f552df519 /dev/ZBA/Sources/HEL/AMD64/BootAPI.S | |
| parent | b11bf31c59d447e62e6ba9b3d8455f9b2828703f (diff) | |
Fix: See below.
- Fixing PML4 mapping and getting it to work.
- Don't update cr4, instead do lidt to triple fault.
Signed-off-by: Amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'dev/ZBA/Sources/HEL/AMD64/BootAPI.S')
| -rw-r--r-- | dev/ZBA/Sources/HEL/AMD64/BootAPI.S | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/dev/ZBA/Sources/HEL/AMD64/BootAPI.S b/dev/ZBA/Sources/HEL/AMD64/BootAPI.S index 380aeb94..9db0961a 100644 --- a/dev/ZBA/Sources/HEL/AMD64/BootAPI.S +++ b/dev/ZBA/Sources/HEL/AMD64/BootAPI.S @@ -18,15 +18,14 @@ rt_jump_to_address: rt_reset_hardware: /* dont raise any interrupts. (except ofc NMIs.) */ cli + /* remap PIC */ wait_gate1: - /* wait for gate 1 to be ready? */ in al,0x64 and al,2 jnz wait_gate1 mov al,0x0D1 out 0x64,al wait_gate2: - /* wait for gate 2 to be ready? */ in al,0x64 and al,2 jnz wait_gate2 @@ -35,8 +34,9 @@ wait_gate2: /* trigger triple fault, by writing to cr4 */ - xor rax,rax - mov cr4,rax + mov rax, 0 + lidt [rax] + reset_wait: jmp reset_wait |
