Philipp Oppermann
|
29ee6b15dd
|
Merge branch 'z_post_06' into z_post_07
|
2019-01-27 14:28:55 +01:00 |
|
Philipp Oppermann
|
15b394f0eb
|
Merge branch 'z_post_05' into z_post_06
|
2019-01-27 14:28:51 +01:00 |
|
Philipp Oppermann
|
17f2699277
|
Update to x86_64 0.4.0
|
2019-01-27 14:12:10 +01:00 |
|
Philipp Oppermann
|
90ad333e90
|
Merge branch 'z_post_06' into z_post_07
|
2019-01-25 14:46:29 +01:00 |
|
Philipp Oppermann
|
cc3a868863
|
Merge branch 'z_post_05' into z_post_06
|
2019-01-25 14:46:17 +01:00 |
|
Philipp Oppermann
|
d1545e7fbf
|
Merge branch 'z_post_04' into z_post_05
|
2019-01-25 14:46:04 +01:00 |
|
Philipp Oppermann
|
be46130322
|
Merge branch 'z_post_03' into z_post_04
|
2019-01-25 14:45:46 +01:00 |
|
Philipp Oppermann
|
afe8dc3dcf
|
Add stack overflow integration test
|
2019-01-25 14:45:02 +01:00 |
|
Philipp Oppermann
|
8bb0187f35
|
Run rustfmt
|
2019-01-25 14:44:42 +01:00 |
|
Philipp Oppermann
|
b5c05193e1
|
Document vga buffer methods
|
2019-01-25 14:39:47 +01:00 |
|
Philipp Oppermann
|
e0ed423e52
|
Explain the LLVM bug on Windows in more detail
|
2019-01-25 14:37:46 +01:00 |
|
Philipp Oppermann
|
d8edfccca4
|
Set the stack_index for the double fault handler
|
2019-01-25 14:01:29 +01:00 |
|
Philipp Oppermann
|
ff25a7d86c
|
Reload code and TSS selector registers
|
2019-01-25 13:59:09 +01:00 |
|
Philipp Oppermann
|
b5202e26a1
|
Load the GDT
|
2019-01-25 13:57:40 +01:00 |
|
Philipp Oppermann
|
ea1b031fd3
|
Create a static GDT
|
2019-01-25 13:57:08 +01:00 |
|
Philipp Oppermann
|
db4e879c34
|
Create a new GDT module and a static TSS
|
2019-01-25 13:56:40 +01:00 |
|
Philipp Oppermann
|
7fd29c9cbe
|
Trigger a double fault through a stack overflow -> triple fault
|
2019-01-25 13:55:42 +01:00 |
|
Philipp Oppermann
|
218cb9399e
|
Add a double fault handler and test it
|
2019-01-25 13:54:44 +01:00 |
|
Philipp Oppermann
|
b96636984c
|
Workaround an LLVM bug
|
2019-01-25 13:53:17 +01:00 |
|
Philipp Oppermann
|
b9dd088dc1
|
Create test-exception-breakpoint integration test
|
2019-01-25 13:51:39 +01:00 |
|
Philipp Oppermann
|
c6bd48e812
|
Load and test our new IDT
|
2019-01-25 13:51:06 +01:00 |
|
Philipp Oppermann
|
9448b0e025
|
Create a new IDT
|
2019-01-25 13:49:09 +01:00 |
|
Philipp Oppermann
|
ade6c99885
|
Add an interrupts module
|
2019-01-25 13:47:28 +01:00 |
|
Philipp Oppermann
|
59579108a7
|
Add test-basic-boot and test-panic integration tests
|
2019-01-25 13:45:38 +01:00 |
|
Philipp Oppermann
|
bd39105793
|
Split crate into lib.rs and main.rs
|
2019-01-25 13:44:04 +01:00 |
|
Philipp Oppermann
|
d007aae993
|
Exit qemu
|
2019-01-25 13:38:26 +01:00 |
|
Philipp Oppermann
|
c21f051300
|
Add a serial module
|
2019-01-25 13:37:20 +01:00 |
|
Philipp Oppermann
|
76110c1dd8
|
Add a write_formatted test
|
2019-01-25 13:32:00 +01:00 |
|
Philipp Oppermann
|
92c4206e86
|
Add a write_byte test
|
2019-01-25 13:31:34 +01:00 |
|
Philipp Oppermann
|
a15e01f2eb
|
Construct a vga buffer for testing
|
2019-01-25 13:31:06 +01:00 |
|
Philipp Oppermann
|
76a65ca3ee
|
Include the standard library for unit tests
|
2019-01-25 13:29:02 +01:00 |
|
Philipp Oppermann
|
8e74084d52
|
Silence unused import warnings for cargo test
|
2019-01-25 13:25:24 +01:00 |
|
Philipp Oppermann
|
5366fe2ff8
|
Make cargo test work
|
2019-01-25 13:24:54 +01:00 |
|
Philipp Oppermann
|
6c427e7cee
|
Print the PanicInfo on panic
|
2019-01-25 13:23:04 +01:00 |
|
Philipp Oppermann
|
c43d6191c5
|
Implement print!/println! macros
|
2019-01-25 13:22:33 +01:00 |
|
Philipp Oppermann
|
c1e3fa57c6
|
Add a global interface
|
2019-01-25 13:21:39 +01:00 |
|
Philipp Oppermann
|
3574958d5f
|
Implement new_line method
|
2019-01-25 13:18:58 +01:00 |
|
Philipp Oppermann
|
cbfe6221bd
|
Implement support for Rust's formatting macros
|
2019-01-25 13:18:13 +01:00 |
|
Philipp Oppermann
|
d1897af515
|
Use volatile writes for accessing the VGA buffer
|
2019-01-25 13:16:44 +01:00 |
|
Philipp Oppermann
|
d71e6a7cb6
|
Test the vga buffer module through a print_something function
|
2019-01-25 12:26:05 +01:00 |
|
Philipp Oppermann
|
27f2c4c2ff
|
Add methods to write bytes and strings
|
2019-01-25 12:25:46 +01:00 |
|
Philipp Oppermann
|
19de9e560d
|
Add a VGA buffer module
|
2019-01-25 12:21:51 +01:00 |
|
Philipp Oppermann
|
59f9fe1e69
|
Update Cargo.lock
|
2019-01-25 12:44:36 +01:00 |
|
Philipp Oppermann
|
f4fd0e264a
|
Add default target for bootimage
|
2019-01-25 12:44:27 +01:00 |
|
Philipp Oppermann
|
bbc19e132c
|
Add bootloader dependency
|
2019-01-25 12:42:48 +01:00 |
|
Philipp Oppermann
|
f9ffee92c7
|
Print Hello World! to screen
|
2019-01-25 12:42:21 +01:00 |
|
Philipp Oppermann
|
fd08b1a123
|
Add target specification file
|
2019-01-25 12:40:20 +01:00 |
|
Philipp Oppermann
|
bb569d0794
|
Add Cargo.lock
This file fixes dependency versions and ensures reproducible builds
|
2019-01-25 12:39:35 +01:00 |
|
Philipp Oppermann
|
a80b09b1ae
|
Add #![no_main] attribute and Linux entry point
|
2019-01-25 12:37:02 +01:00 |
|
Philipp Oppermann
|
2f9cbab885
|
Disable unwinding
|
2019-01-25 12:35:11 +01:00 |
|