|
|
1.1 root 1:
2: raw_switch:
3:
4: Provides the code to switch between real and protected mode.
5: Switches between the environments "completely":
6: e.g. when switching to protected mode,
7: all the normal protected-mode state for that environment is set up.
8:
9: raw_pmode:
10:
11: i16_raw_enter_pmode()
12: Enters protoected mode from real mode.
13: Does not initialize IDT or TSS or anything else;
14: just gets the system into protected mode
15: with a simple temporary GDT.
16: Returns with interrupts turned off
17: (and they'd better stay off until there's a valid pmode IDT!)
18:
19: i16_raw_leave_pmode()
20: Assumes paging is turned off.
21: Returns with interrupts turned off;
22: they can probably be turned back on at any time.
23:
24: Depends on:
25: i16_die()
26: A20 enable/disable code (e.g. raw_a20).
27: gdt.h: KERNEL_16_CS, KERNEL_16_DS
28:
29:
30:
31: vm_param.h:
32:
33: Must export kvtolin(), lintokv()
34:
35:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.