diff options
| author | Aleksa Vučković <aleksav013@gmail.com> | 2021-10-24 18:47:28 +0200 |
|---|---|---|
| committer | Aleksa Vučković <aleksav013@gmail.com> | 2021-10-24 18:47:28 +0200 |
| commit | 0bca634f7e70b05239f46f3bd40bb37468d67957 (patch) | |
| tree | c4c121dea59ff4183ffb78da4eba75b61f8c8891 /src/vga.c | |
| parent | 1395dc42159d52ba36524fabe805897cd20bd01e (diff) | |
Fixing keyboard, changes to Makefile and string.h, trying to add heap...
Diffstat (limited to 'src/vga.c')
| -rw-r--r-- | src/vga.c | 24 |
1 files changed, 16 insertions, 8 deletions
@@ -1,12 +1,10 @@ -#include<stdbool.h> -#include<stddef.h> -#include<stdint.h> +#include"types.h" #include"string.h" +#include"asm.h" + static const size_t VGA_WIDTH = 80; static const size_t VGA_HEIGHT = 25; -extern char ioport_in(uint8_t port); -extern void ioport_out(uint8_t port, char data); enum vga_color { VGA_COLOR_BLACK = 0, @@ -92,16 +90,26 @@ void terminal_putchar(char c) if (terminal_row==VGA_HEIGHT) movescreen(); } -void terminal_writestring(const char* data) +void terminal_writestring(char* data) { for(int i=0;data[i]!='\0';i++) terminal_putchar(data[i]); } -void terminal_writeint(const uint32_t num) +void terminal_writeint(uint32_t num) +{ + char string[100]; + for(int i=0;i<100;i++) string[i]='\0'; + char *str=string; + itos(num,str); + terminal_writestring(str); +} + +void terminal_writefloat(double num) { char string[100]; + for(int i=0;i<100;i++) string[i]='\0'; char *str=string; - itos(str,num); + ftos(num,str); terminal_writestring(str); } |
