diff options
| -rw-r--r-- | include/06.keyboard/keyboard.c | 7 | ||||
| -rw-r--r-- | include/06.keyboard/keyboard17.c | 7 | ||||
| -rw-r--r-- | include/09.paging/paging.c | 4 | ||||
| -rw-r--r-- | include/09.paging/paging7.c | 4 | ||||
| -rw-r--r-- | kernel.pdf | bin | 437581 -> 437313 bytes | |||
| -rw-r--r-- | kernel.tex | 3 |
6 files changed, 16 insertions, 9 deletions
diff --git a/include/06.keyboard/keyboard.c b/include/06.keyboard/keyboard.c index a95d399..ab31315 100644 --- a/include/06.keyboard/keyboard.c +++ b/include/06.keyboard/keyboard.c @@ -150,8 +150,11 @@ void keyboard_handler() { c=shift_charcode[keycode]; } - buffer[buffer_current][buffer_index++]=c; - printf("%c",c); + if(buffer_index<BUFFER_SIZE) + { + buffer[buffer_current][buffer_index++]=c; + printf("%c",c); + } } break; } diff --git a/include/06.keyboard/keyboard17.c b/include/06.keyboard/keyboard17.c index 359ba30..171088f 100644 --- a/include/06.keyboard/keyboard17.c +++ b/include/06.keyboard/keyboard17.c @@ -15,8 +15,11 @@ { c=shift_charcode[keycode]; } - buffer[buffer_current][buffer_index++]=c; - printf("%c",c); + if(buffer_index<BUFFER_SIZE) + { + buffer[buffer_current][buffer_index++]=c; + printf("%c",c); + } } break; } diff --git a/include/09.paging/paging.c b/include/09.paging/paging.c index 9c4875a..4aba4af 100644 --- a/include/09.paging/paging.c +++ b/include/09.paging/paging.c @@ -33,8 +33,8 @@ void set_pt(size_t num,uint32_t address) { // As the address is page aligned, it will always leave 12 bits zeroed. // Those bits are used by the attributes ;) - page_table[num][i] = (address + i * 0x1000) | 3; // attributes: - supervisor level, read/write, present. + page_table[num][i] = (address + i * 0x1000) | 3; + // attributes: supervisor level, read/write, present. } page_directory[num] = ((uint32_t)page_table[num]) | 3; diff --git a/include/09.paging/paging7.c b/include/09.paging/paging7.c index 1b9c590..ff39df2 100644 --- a/include/09.paging/paging7.c +++ b/include/09.paging/paging7.c @@ -3,6 +3,6 @@ { // As the address is page aligned, it will always leave 12 bits zeroed. // Those bits are used by the attributes ;) - page_table[num][i] = (address + i * 0x1000) | 3; // attributes: - supervisor level, read/write, present. + page_table[num][i] = (address + i * 0x1000) | 3; + // attributes: supervisor level, read/write, present. } Binary files differ@@ -1,4 +1,5 @@ \documentclass[a4paper,fleqn,12pt]{JMThesis}
+\renewcommand{\footnotesize}{\fontsize{9pt}{11pt}\selectfont}
\usepackage{listings}
\lstset{
basicstyle=\footnotesize,
@@ -810,7 +811,7 @@ videti u pochetnom fajlu. \begin{minipage}{\textwidth}\eng\lstinputlisting[language=C]{include/05.irq/idt4.c}\srb\end{minipage}
\begin{minipage}{\textwidth}\eng\lstinputlisting[language=C]{include/05.irq/idt5.c}\srb\end{minipage}
\begin{minipage}{\textwidth}\eng\lstinputlisting[language=C]{include/05.irq/idt6.c}\srb\end{minipage}
-\begin{minipage}{\textwidth}\eng\lstinputlisting[language=C]{include/05.irq/idt7.c}\srb\end{minipage}
+\begin{minipage}{\textwidth}\eng\lstinputlisting[language=C,linerange={1-6,34-37}]{include/05.irq/idt7.c}\srb\end{minipage}
\begin{minipage}{\textwidth}\eng\lstinputlisting[language=C]{include/05.irq/idt8.c}\srb\end{minipage}
\begin{minipage}{\textwidth}\eng\lstinputlisting[language=C]{include/05.irq/idt9.c}\srb\end{minipage}
|
