diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/internal/mem.txt | 7 | ||||
-rw-r--r-- | doc/ints.txt | 1 | ||||
-rw-r--r-- | doc/keys.txt | 8 |
3 files changed, 5 insertions, 11 deletions
diff --git a/doc/internal/mem.txt b/doc/internal/mem.txt index 72b72ec..252a5ad 100644 --- a/doc/internal/mem.txt +++ b/doc/internal/mem.txt @@ -17,9 +17,10 @@ 0x0000.5000 - 0x0000.5fff (4k): kernel page directory 0x0001.0000 - 0x0001.ffff (64k): BIOS memory map - -0x0003.0000 - 0x0003.7fff (32k): kernel text, data, rodata -0x0003.8000 - 0x0003.ffff (32k): kernel stack +0x0002.0000 - 0x0002.0fff (4k): kernel stack guard +0x0002.1000 - 0x0002.efff (56k): kernel stack +0x0002.f000 - 0x0002.ffff (4k): kernel stack guard +0x0003.0000 - 0x0003.ffff (64k): kernel text, data, rodata 0x0004.0000 - 0x0005.ffff (128k): pagemap 0x0006.0000 - 0x0007.ffff (128k): shared kernel page tables diff --git a/doc/ints.txt b/doc/ints.txt index 095298f..a2625ae 100644 --- a/doc/ints.txt +++ b/doc/ints.txt @@ -15,7 +15,6 @@ see table 1 file system calls have units of bytes unless otherwise specified. functions returning handles or pointers use 0 to indicate error. -see keys.txt for the return type of the "get key" system call. the edx register of "start task" is a pointer to a null-terminated string. a pointer to a readonly copy of this string is put into the new task's edx. the esi register is passed through directly, and is meant to be a task handle. diff --git a/doc/keys.txt b/doc/keys.txt index bccd47a..1ea8d9b 100644 --- a/doc/keys.txt +++ b/doc/keys.txt @@ -8,12 +8,6 @@ the top 24 bits indicate several flags. these are seen in table 2, where bit 0 is the lowest bit of the second lowest byte of the keycode, and bit 23 is the highest bit of the highest byte of the keycode. -the "get key" system call returns 0 if there is not a key available. it is -recommended to make the system call and, if it returns 0, yield to the scheduler -and then loop back to making the system call. this way your task does not block -the cpu while waiting for keyboard input. see the "get_key_char" function in -user.c of the "knob" library for an example of this. - table 1: @@ -50,7 +44,7 @@ table 1: 0xaa | F11 0xab | F12 0xac | unassigned - .... | unassigned + ... | unassigned 0xaf | unassigned 0xb0 | numpad 0 0xb1 | numpad 1 |