From 8d9e22df8afa4c3339e52c7b3b77388ca0e69fac Mon Sep 17 00:00:00 2001 From: Alex AUVOLAT Date: Fri, 28 Mar 2014 13:53:30 +0100 Subject: Make article 6 compile ; modifications to article 1 && 2 for the course. --- sos-code-article2/cdrom/sos.elf | Bin 22391 -> 22499 bytes sos-code-article2/sos.map | 24 ++++++++++++------------ sos-code-article2/sos/main.c | 6 +++--- 3 files changed, 15 insertions(+), 15 deletions(-) (limited to 'sos-code-article2') diff --git a/sos-code-article2/cdrom/sos.elf b/sos-code-article2/cdrom/sos.elf index 0898db5..b9e16da 100755 Binary files a/sos-code-article2/cdrom/sos.elf and b/sos-code-article2/cdrom/sos.elf differ diff --git a/sos-code-article2/sos.map b/sos-code-article2/sos.map index ea0519f..721a8af 100644 --- a/sos-code-article2/sos.map +++ b/sos-code-article2/sos.map @@ -1,14 +1,14 @@ 00201000 __b_kernel 00200000 __b_load 00202d6b clk_it -00203940 clock_count.1103 +002039a0 clock_count.1103 00202ce0 display_bits -00203944 div_count.1107 +002039a4 div_count.1107 00202da3 divide_ex -00207950 __e_kernel -00203066 __e_load -00202f00 gdt -00203080 idt +002079b0 __e_kernel +002030d0 __e_load +00202f58 gdt +002030e0 idt 00201011 loop 0020278b memcmp 00202734 memcpy @@ -22,7 +22,7 @@ 00202426 sos_bochs_putstring 0020241c sos_bochs_setup 002012d0 sos_exception_get_routine -00203880 sos_exception_handler_array +002038e0 sos_exception_handler_array 0020123d sos_exception_set_routine 00201218 sos_exceptions_setup 00201300 sos_exception_wrapper_0 @@ -57,7 +57,7 @@ 002014dc sos_exception_wrapper_7 00201b24 sos_exception_wrapper_8 00201520 sos_exception_wrapper_9 -00202f20 sos_exception_wrapper_array +00202f80 sos_exception_wrapper_array 002011e4 sos_gdt_setup 002021a8 sos_i8254_set_frequency 0020214e sos_i8259_disable_irq_line @@ -67,7 +67,7 @@ 002010b9 sos_idt_set_handler 00201014 sos_idt_setup 00201bfe sos_irq_get_routine -00203900 sos_irq_handler_array +00203960 sos_irq_handler_array 00201b35 sos_irq_set_routine 00201b28 sos_irq_setup 00201c20 sos_irq_wrapper_0 @@ -86,14 +86,14 @@ 00201e18 sos_irq_wrapper_7 00201e60 sos_irq_wrapper_8 00201ea8 sos_irq_wrapper_9 -00202fa0 sos_irq_wrapper_array +00203000 sos_irq_wrapper_array 00202ddb sos_main 00202240 sos_x86_videomem_cls 0020238a sos_x86_videomem_printf 00202313 sos_x86_videomem_putchar 00202283 sos_x86_videomem_putstring 00202220 sos_x86_videomem_setup -00203950 stack +002039b0 stack 00201000 start 00201000 _start 002028d9 strcmp @@ -102,5 +102,5 @@ 0020280a strnlen 0020288e strzcat 0020283d strzcpy -00202f18 video +00202f70 video 0020297c vsnprintf diff --git a/sos-code-article2/sos/main.c b/sos-code-article2/sos/main.c index 9d897b0..1f91c22 100644 --- a/sos-code-article2/sos/main.c +++ b/sos-code-article2/sos/main.c @@ -133,12 +133,12 @@ void sos_main(unsigned long magic, unsigned long addr) compiling with -O3: "i=1/0;" is considered dead code with gcc -O3. */ i = 10; - while (1) - { /* Stupid function call to fool gcc optimizations */ sos_bochs_printf("i = 1 / %d...\n", i); i = 1 / i; - } + sos_bochs_printf("i = 1 / %d...\n", i); + i = 1 / i; + sos_bochs_printf("i = 1 / %d...\n", i); /* Will never print this since the "divide by zero" exception always returns to the faulting instruction (see Intel x86 doc vol 3, -- cgit v1.2.3