X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fkmain.c;h=8af7cc37fa4a090d90b9a4d74f0db3d98a78eea3;hb=3cb6f9dad7e37db865bd3cbccf0b5d6471fdd73f;hp=af7bc6500fb11598d468ffddd0d78013f96e2588;hpb=97356e29f73e12f0856fde92a48e86c73bef387c;p=bootcensus diff --git a/src/kmain.c b/src/kmain.c index af7bc65..8af7cc3 100644 --- a/src/kmain.c +++ b/src/kmain.c @@ -16,26 +16,41 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include +#include #include #include "segm.h" #include "intr.h" +#include "mem.h" #include "keyb.h" +#include "psaux.h" #include "timer.h" #include "contty.h" +#include "video.h" +#include "audio.h" +#include "pci.h" +#include "vbetest.h" + -void set_mode13h(void); void logohack(void); void pcboot_main(void) { init_segm(); init_intr(); - kb_init(); + con_init(); + kb_init(); + init_psaux(); + + init_mem(); + + init_pci(); /* initialize the timer */ init_timer(); + audio_init(); + enable_intr(); printf("PCBoot kernel initialized\n"); @@ -45,18 +60,25 @@ void pcboot_main(void) halt_cpu(); while((c = kb_getkey()) >= 0) { - if(c >= KB_F1 && c <= KB_F12) { - set_mode13h(); + switch(c) { + case KB_F1: + set_vga_mode(0x13); logohack(); + set_vga_mode(3); + break; + + case KB_F2: + vbetest(); + break; } if(isprint(c)) { - printf("key: %d '%c' \n", c, (char)c); + printf("key: %d '%c'\n", c, (char)c); } else { - printf("key: %d \n", c); + printf("key: %d\n", c); } } if((nticks % 250) == 0) { - printf("ticks: %ld\r", nticks); + con_printf(71, 0, "[%ld]", nticks); } } }