linksos-commit Mailing List for Links OS: Swift, Secure, Straightforward (Page 5)
Status: Inactive
Brought to you by:
terencevs
You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(57) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(135) |
Feb
(3) |
Mar
(86) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <ke...@to...> - 2003-01-17 20:13:54
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory rix.tossell.net:/tmp/cvs-serv29860 Modified Files: mouse.cpp Log Message: Title: ASM Syntax and Scope Changes: Moved const int MAX_X and MAX_Y to global scope for the translation unit. Added $ to operands in int asm-calls. Effects: Code compiles and looks like it's ready to link in. a=kennyt Index: mouse.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hw/mouse/mouse.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** mouse.cpp 17 Jan 2003 02:58:01 -0000 1.5 --- mouse.cpp 17 Jan 2003 20:13:40 -0000 1.6 *************** *** 1,10 **** void show_mouse(void); // replace (void) with bipmap ! int main() ! { ! const int MAX_Y = 480; ! const int MAX_X = 640; asm volatile ( "mov %ax, 1\n" // Set ax to show the mouse ! "int 0x33\n" // Call the mouse interrupt // Constrain mouse horizontal movement --- 1,11 ---- void show_mouse(void); // replace (void) with bipmap ! ! const int MAX_Y = 480; ! const int MAX_X = 640; ! ! int main() { asm volatile ( "mov %ax, 1\n" // Set ax to show the mouse ! "int $0x33\n" // Call the mouse interrupt // Constrain mouse horizontal movement *************** *** 13,17 **** "mov %dx, MAX_X-2\n" // Max range ! "int 0x33\n" // Call the mouse interrupt // Constrain mouse vertical movement --- 14,18 ---- "mov %dx, MAX_X-2\n" // Max range ! "int $0x33\n" // Call the mouse interrupt // Constrain mouse vertical movement *************** *** 20,24 **** "mov %dx, MAX_Y-2\n" // Max range ! "int 0x33\n" // Call the mouse interrupt ); } --- 21,25 ---- "mov %dx, MAX_Y-2\n" // Max range ! "int $0x33\n" // Call the mouse interrupt ); } |
|
From: <ke...@to...> - 2003-01-17 02:58:10
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory router-internal.tossell.net:/tmp/cvs-serv22057 Modified Files: mouse.cpp Log Message: Title: bad include Changes: removed include to stdio.h Effects: we are NOT using libc functions! a=kennyt Index: mouse.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hw/mouse/mouse.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** mouse.cpp 17 Jan 2003 02:51:16 -0000 1.4 --- mouse.cpp 17 Jan 2003 02:58:01 -0000 1.5 *************** *** 1,3 **** - #include <stdio.h> void show_mouse(void); // replace (void) with bipmap int main() --- 1,2 ---- |
|
From: <ke...@to...> - 2003-01-17 02:51:27
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory router-internal.tossell.net:/tmp/cvs-serv21885 Modified Files: mouse.cpp Log Message: Title: ASM Use Changes: fixed asm calling syntax, so it's actually used Effects: reason: asm was being ignored, treated as a long string. a=kennyt Index: mouse.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hw/mouse/mouse.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** mouse.cpp 17 Jan 2003 02:38:18 -0000 1.3 --- mouse.cpp 17 Jan 2003 02:51:16 -0000 1.4 *************** *** 4,25 **** { const int MAX_Y = 480; ! const int MAX_X = 640; ! { ! "asm mov ax, 1\n" // Set ax to show the mouse ! "asm int 0x33\n" // Call the mouse interrupt ! ! // Constrain mouse horizontal movement ! "asm mov ax, 7\n" ! "asm mov cx, 0\n" // Min range ! "asm mov dx, MAX_X-2\n" // Max range ! ! "asm int 0x33\n" // Call the mouse interrupt ! ! // Constrain mouse vertical movement ! "asm mov ax, 8\n" ! "asm mov cx, 0\n" // Min range ! "asm mov dx, MAX_Y-2\n" // Max range ! ! "asm int 0x33\n"; // Call the mouse interrupt ! } } --- 4,25 ---- { const int MAX_Y = 480; ! const int MAX_X = 640; ! asm volatile ( ! "mov %ax, 1\n" // Set ax to show the mouse ! "int 0x33\n" // Call the mouse interrupt ! ! // Constrain mouse horizontal movement ! "mov %ax, 7\n" ! "mov %cx, 0\n" // Min range ! "mov %dx, MAX_X-2\n" // Max range ! ! "int 0x33\n" // Call the mouse interrupt ! ! // Constrain mouse vertical movement ! "mov %ax, 8\n" ! "mov %cx, 0\n" // Min range ! "mov %dx, MAX_Y-2\n" // Max range ! ! "int 0x33\n" // Call the mouse interrupt ! ); } |
|
From: <bl...@to...> - 2003-01-17 02:38:27
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory router-internal.tossell.net:/tmp/cvs-serv21601 Modified Files: mouse.cpp Log Message: Title: mouse.cpp compiles Changes: added int main and stdio.h Effects: mouse compiles. Still needs kernel implementation a= blokkie (tfe...@wa...) b= Index: mouse.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hw/mouse/mouse.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** mouse.cpp 17 Jan 2003 02:10:25 -0000 1.2 --- mouse.cpp 17 Jan 2003 02:38:18 -0000 1.3 *************** *** 1,5 **** ! ! void show_mouse(void) ! { const int MAX_Y = 480; const int MAX_X = 640; --- 1,6 ---- ! #include <stdio.h> ! void show_mouse(void); // replace (void) with bipmap ! int main() ! { const int MAX_Y = 480; const int MAX_X = 640; *************** *** 7,11 **** "asm mov ax, 1\n" // Set ax to show the mouse "asm int 0x33\n" // Call the mouse interrupt ! // Constrain mouse horizontal movement "asm mov ax, 7\n" --- 8,12 ---- "asm mov ax, 1\n" // Set ax to show the mouse "asm int 0x33\n" // Call the mouse interrupt ! // Constrain mouse horizontal movement "asm mov ax, 7\n" *************** *** 21,24 **** "asm int 0x33\n"; // Call the mouse interrupt ! } } --- 22,25 ---- "asm int 0x33\n"; // Call the mouse interrupt ! } } |
|
From: <bl...@to...> - 2003-01-17 02:10:36
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory router-internal.tossell.net:/tmp/cvs-serv21282 Modified Files: mouse.cpp Log Message: Title: asm fix Changes: fixed asm Effects: asm error done ... next _start a= blokkie (tfe...@wa...) b= Index: mouse.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hw/mouse/mouse.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** mouse.cpp 14 Jan 2003 23:33:39 -0000 1.1 --- mouse.cpp 17 Jan 2003 02:10:25 -0000 1.2 *************** *** 1,23 **** - void show_mouse(void) { const int MAX_Y = 480; const int MAX_X = 640; ! asm { ! "mov ax, 1\n" // Set ax to show the mouse ! "int 0x33\n" // Call the mouse interrupt ! // Constrain mouse horizontal movement ! "mov ax, 7\n" ! "mov cx, 0\n" // Min range ! "mov dx, MAX_X-2\n" // Max range ! ! "int 0x33\n" // Call the mouse interrupt // Constrain mouse vertical movement ! "mov ax, 8\n" ! "mov cx, 0\n" // Min range ! "mov dx, MAX_Y-2\n" // Max range ! "int 0x33\n" // Call the mouse interrupt } } --- 1,24 ---- + void show_mouse(void) + { const int MAX_Y = 480; const int MAX_X = 640; ! { ! "asm mov ax, 1\n" // Set ax to show the mouse ! "asm int 0x33\n" // Call the mouse interrupt ! // Constrain mouse horizontal movement ! "asm mov ax, 7\n" ! "asm mov cx, 0\n" // Min range ! "asm mov dx, MAX_X-2\n" // Max range ! ! "asm int 0x33\n" // Call the mouse interrupt // Constrain mouse vertical movement ! "asm mov ax, 8\n" ! "asm mov cx, 0\n" // Min range ! "asm mov dx, MAX_Y-2\n" // Max range ! "asm int 0x33\n"; // Call the mouse interrupt } } |
|
From: <bl...@to...> - 2003-01-14 23:55:05
|
Update of /cvsroot/linksos/kernel/hw/video In directory router-internal.tossell.net:/tmp/cvs-serv31812 Added Files: README Log Message: Title: README Changes: First Effects: Explenation a= blokkie (tfe...@wa...) b= --- NEW FILE: README --- ARCH-independed HW |
|
From: <bl...@to...> - 2003-01-14 23:51:41
|
Update of /cvsroot/linksos/kernel/hw/video In directory router-internal.tossell.net:/tmp/cvs-serv31768 Added Files: vga.h Log Message: Title: vga.h -basic start for the vga-lib Changes: First Effects: None a= blokkie (tfe...@wa... b= --- NEW FILE: vga.h --- //vga.h lame header that uses CONST :-) instead of #define #ifndef VGA_H const int VGA_H { #endif const int TEXT = 0 /* Compatible with VGAlib 1.2 */ const int G320x200x16 = 1 const int G640x200x16 = 2 const int G640x350x16 = 3 const int G640x480x16 = 4 const int G320x200x256 = 5 const int G320x240x256 = 6 const int G320x400x256 = 7 const int G360x480x256 = 8 const int G640x480x2 = 9 const int G640x480x256 = 10 const int G800x600x256 = 11 const int G1024x768x256 = 12 const int G1280x1024x256 = 13 /* Additional modes. */ const int G320x200x32K = 14 const int G320x200x64K = 15 const int G320x200x16M = 16 const int G640x480x32K = 17 const int G640x480x64K = 18 const int G640x480x16M = 19 const int G800x600x32K = 20 const int G800x600x64K = 21 const int G800x600x16M = 22 const int G1024x768x32K = 23 const int G1024x768x64K = 24 const int G1024x768x16M = 25 const int G1280x1024x32K = 26 const int G1280x1024x64K = 27 const int G1280x1024x16M = 28 const int G800x600x16 = 29 const int G1024x768x16 = 30 const int G1280x1024x16 = 31 const int G720x348x2 = 32 /* Hercules emulation mode */ const int G320x200x16M32 = 33 /* 32-bit per pixel modes. */ const int G640x480x16M32 = 34 const int G800x600x16M32 = 35 const int G1024x768x16M32 = 36 const int G1280x1024x16M32 = 37 /* additional resolutions */ const int G1152x864x16 = 38 const int G1152x864x256 = 39 const int G1152x864x32K = 40 const int G1152x864x64K = 41 const int G1152x864x16M = 42 const int G1152x864x16M32 = 43 const int G1600x1200x16 = 44 const int G1600x1200x256 = 45 const int G1600x1200x32K = 46 const int G1600x1200x64K = 47 const int G1600x1200x16M = 48 const int G1600x1200x16M32 = 49 const int G320x240x256V = 50 const int G320x240x32K = 51 const int G320x240x64K = 52 const int G320x240x16M = 53 const int G320x240x16M32 = 54 const int G400x300x256 = 55 const int G400x300x32K = 56 const int G400x300x64K = 57 const int G400x300x16M = 58 const int G400x300x16M32 = 59 const int G512x384x256 = 60 const int G512x384x32K = 61 const int G512x384x64K = 62 const int G512x384x16M = 63 const int G512x384x16M32 = 64 const int G960x720x256 = 65 const int G960x720x32K = 66 const int G960x720x64K = 67 const int G960x720x16M = 68 const int G960x720x16M32 = 69 const int G1920x1440x256 = 70 const int G1920x1440x32K = 71 const int G1920x1440x64K = 72 const int G1920x1440x16M = 73 const int G1920x1440x16M32 = 74 #endif /* VGA_H */ |
|
From: <ke...@to...> - 2003-01-14 23:33:45
|
Update of /cvsroot/linksos/kernel/hw/x86/native In directory router-internal.tossell.net:/tmp/cvs-serv31423/x86/native Removed Files: mouse.cpp mouse.h Log Message: Title: Moved Changes: Moved mouse code to the mouse dir! Effects: Organization man! a=kennyt --- mouse.cpp DELETED --- --- mouse.h DELETED --- |
|
From: <ke...@to...> - 2003-01-14 23:33:44
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory router-internal.tossell.net:/tmp/cvs-serv31423/mouse Added Files: mouse.cpp mouse.h Log Message: Title: Moved Changes: Moved mouse code to the mouse dir! Effects: Organization man! a=kennyt --- NEW FILE: mouse.cpp --- void show_mouse(void) { const int MAX_Y = 480; const int MAX_X = 640; asm { "mov ax, 1\n" // Set ax to show the mouse "int 0x33\n" // Call the mouse interrupt // Constrain mouse horizontal movement "mov ax, 7\n" "mov cx, 0\n" // Min range "mov dx, MAX_X-2\n" // Max range "int 0x33\n" // Call the mouse interrupt // Constrain mouse vertical movement "mov ax, 8\n" "mov cx, 0\n" // Min range "mov dx, MAX_Y-2\n" // Max range "int 0x33\n" // Call the mouse interrupt } } --- NEW FILE: mouse.h --- #ifndef _MOUSE_H #define _MOUSE_H class MOUSE { public: MOUSE(); // Constructor MOUSE(); // Destructor // Accessors void reset_cursor(void); void show_cursor(void); void hide_cursor(void); void constrain_cursor(void); devices::mouse::info info(void); } #endif /* ! _MOUSE_H */ |
|
From: <ke...@to...> - 2003-01-14 23:29:52
|
Update of /cvsroot/linksos/kernel/hw/mouse In directory router-internal.tossell.net:/tmp/cvs-serv31238/mouse Log Message: Directory /cvsroot/linksos/kernel/hw/mouse added to the repository |
|
From: <ke...@to...> - 2003-01-14 23:29:51
|
Update of /cvsroot/linksos/kernel/hw/video In directory router-internal.tossell.net:/tmp/cvs-serv31238/video Log Message: Directory /cvsroot/linksos/kernel/hw/video added to the repository |
|
From: <ke...@to...> - 2003-01-14 23:29:51
|
Update of /cvsroot/linksos/kernel/hw/network In directory router-internal.tossell.net:/tmp/cvs-serv31238/network Log Message: Directory /cvsroot/linksos/kernel/hw/network added to the repository |
|
From: <ke...@to...> - 2003-01-14 23:29:17
|
Update of /cvsroot/linksos/kernel/hw/x86/native In directory router-internal.tossell.net:/tmp/cvs-serv31175 Modified Files: mouse.h Log Message: Title: Function Names and returns Changes: Removed 'mouse' from member names - we don't need to repeat what it is... Changed info function's return type to an info struct. Effects: Clearer usage a=kennyt Index: mouse.h =================================================================== RCS file: /cvsroot/linksos/kernel/hw/x86/native/mouse.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** mouse.h 14 Jan 2003 23:04:38 -0000 1.1 --- mouse.h 14 Jan 2003 23:29:11 -0000 1.2 *************** *** 2,29 **** #define _MOUSE_H ! class MOUSE ! { public: ! MOUSE(); //Constructor ! ! MOUSE(); //Destructor ! ! //Accessors ! void reset_mouse_cursor(void); ! void show_mouse_cursor(void); ! void hide_mouse_cursor(void); ! void constrain_mouse_cursor(void); ! void get_mouse_info(int & mouse_x, int & mouse_y, int & mouse_button); } ! #endif ! --- 2,25 ---- #define _MOUSE_H ! class MOUSE { public: ! MOUSE(); // Constructor ! MOUSE(); // Destructor ! // Accessors ! void reset_cursor(void); ! void show_cursor(void); ! void hide_cursor(void); + void constrain_cursor(void); + devices::mouse::info info(void); } ! #endif /* ! _MOUSE_H */ |
|
From: <ke...@to...> - 2003-01-14 23:27:49
|
Update of /cvsroot/linksos/kernel/hw/x86/native In directory router-internal.tossell.net:/tmp/cvs-serv31116 Modified Files: mouse.cpp Log Message: Title: ASM Calling... Changes: Added quotes and \n's to asm lines. Effects: Building. a=kennyt Index: mouse.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hw/x86/native/mouse.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** mouse.cpp 14 Jan 2003 23:02:32 -0000 1.1 --- mouse.cpp 14 Jan 2003 23:27:45 -0000 1.2 *************** *** 1,24 **** ! //void show_mouse(void) ! ! { ! const int MAX_Y = 480; ! const int MAX_X = 640; ! asm { ! mov ax, 1 // Set ax to show the mouse ! int 0x33 // Call the mouse interrupt ! ! //Constrain mouse horizontal movement ! mov ax, 7 ! mov cx, 0 //Min range ! mov dx, MAX_X-2 //Max range ! ! int 0x33 // Call the mouse interrupt ! ! //Constrain mouse vertical movement ! mov ax, 8 ! mov cx, 0 //Min range ! mov dx, MAX_Y-2 //Max range ! int 0x33 // Call the mouse interrupt ! } } --- 1,23 ---- ! void show_mouse(void) { ! const int MAX_Y = 480; ! const int MAX_X = 640; ! asm { ! "mov ax, 1\n" // Set ax to show the mouse ! "int 0x33\n" // Call the mouse interrupt ! ! // Constrain mouse horizontal movement ! "mov ax, 7\n" ! "mov cx, 0\n" // Min range ! "mov dx, MAX_X-2\n" // Max range ! ! "int 0x33\n" // Call the mouse interrupt ! ! // Constrain mouse vertical movement ! "mov ax, 8\n" ! "mov cx, 0\n" // Min range ! "mov dx, MAX_Y-2\n" // Max range ! ! "int 0x33\n" // Call the mouse interrupt ! } } |
|
From: <bl...@to...> - 2003-01-14 23:04:42
|
Update of /cvsroot/linksos/kernel/hw/x86/native In directory router-internal.tossell.net:/tmp/cvs-serv30568 Added Files: mouse.h Log Message: Title: mouse.h Changes: First Effects: header for mouse.cpp a= blokkie (tfe...@wa... b= --- NEW FILE: mouse.h --- #ifndef _MOUSE_H #define _MOUSE_H class MOUSE { public: MOUSE(); //Constructor MOUSE(); //Destructor //Accessors void reset_mouse_cursor(void); void show_mouse_cursor(void); void hide_mouse_cursor(void); void constrain_mouse_cursor(void); void get_mouse_info(int & mouse_x, int & mouse_y, int & mouse_button); } #endif |
|
From: <bl...@to...> - 2003-01-14 23:02:36
|
Update of /cvsroot/linksos/kernel/hw/x86/native In directory router-internal.tossell.net:/tmp/cvs-serv30416 Added Files: mouse.cpp Log Message: Title: Mouse Changes: First Effects: Mouse support a= blokkie (tfe...@wa...) b= --- NEW FILE: mouse.cpp --- //void show_mouse(void) { const int MAX_Y = 480; const int MAX_X = 640; asm { mov ax, 1 // Set ax to show the mouse int 0x33 // Call the mouse interrupt //Constrain mouse horizontal movement mov ax, 7 mov cx, 0 //Min range mov dx, MAX_X-2 //Max range int 0x33 // Call the mouse interrupt //Constrain mouse vertical movement mov ax, 8 mov cx, 0 //Min range mov dx, MAX_Y-2 //Max range int 0x33 // Call the mouse interrupt } } |
|
From: <ke...@to...> - 2003-01-14 22:57:21
|
Update of /cvsroot/linksos/kernel/main In directory router-internal.tossell.net:/tmp/cvs-serv30346/main Modified Files: start.cpp Log Message: Title: Boot display Changes: Added some new messages and a REAL LOOP! Yeah! Effects: People can have some more entertaining boots :) a=kennyt Index: start.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/main/start.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** start.cpp 13 Jan 2003 04:47:11 -0000 1.5 --- start.cpp 14 Jan 2003 22:57:15 -0000 1.6 *************** *** 19,30 **** desc_table(GDT, 3) { ! {dummy:0}, ! stnd_desc(0, 0xFFFFF, (D_CODE + D_READ + D_BIG + D_BIG_LIM)), ! stnd_desc(0, 0xFFFFF, (D_DATA + D_WRITE + D_BIG + D_BIG_LIM)), }; struct { ! unsigned short limit __attribute__ ((packed)); ! union DT_entry *gdt __attribute__ ((packed)); } loadgdt = { (4096 * sizeof(union DT_entry) - 1), GDT }; --- 19,31 ---- desc_table(GDT, 3) { ! {dummy:0}, ! stnd_desc(0, 0xFFFFF, (D_CODE + D_READ + D_BIG + D_BIG_LIM)), ! stnd_desc(0, 0xFFFFF, (D_DATA + D_WRITE + D_BIG + D_BIG_LIM)), }; + struct { ! unsigned short limit __attribute__ ((packed)); ! union DT_entry *gdt __attribute__ ((packed)); } loadgdt = { (4096 * sizeof(union DT_entry) - 1), GDT }; *************** *** 36,65 **** return; } ! /*Load GDT*/ ! asm ("pushl $2; popf"); /* Zero the flags */ ! asm volatile /* Load the GDT and the kernel stack */ ! ( /* Loader has cleared ints */ ! "lgdtl (loadgdt) \n" /* Load our own GDT */ ! "movw $0x10,%%ax \n" /* Init data registers t_data */ ! "movw %%ax,%%ds \n" ! "movw %%ax,%%es \n" ! "movw %%ax,%%fs \n" ! "movw %%ax,%%gs \n" ! "ljmp $0x08,$next \n" /* Flush prefetch queue */ ! "nop\n" ! "nop\n" ! "next: \n" /* Continue here */ ! : ! : "r" (GDT) ! : "%eax" ! ); ! ! ! hal::kio::console << "LinksOS v0.0.1a kernel booted.\nI'll loop forever now.\n"; /* Do that kool kernel stuff */ ! /* Halt */ ! hal::kio::console << "Halted."; return; } --- 37,73 ---- return; } + + /* Load GDT */ + asm ("pushl $2; popf"); /* Zero the flags */ + asm volatile /* Load the GDT and the kernel stack */ + ( /* Loader has cleared ints */ + "lgdtl (loadgdt) \n" /* Load our own GDT */ + "movw $0x10,%%ax \n" /* Init data registers t_data */ + "movw %%ax,%%ds \n" + "movw %%ax,%%es \n" + "movw %%ax,%%fs \n" + "movw %%ax,%%gs \n" + "ljmp $0x08,$next \n" /* Flush prefetch queue */ + "nop\n" + "nop\n" + "next: \n" /* Continue here */ + : + : "r" (GDT) + : "%eax" + ); + + using hal::kio::console; ! /* Talk to the people */ ! console << "LinksOS v0.0.1a kernel booted.\nI'll loop forever now.\n"; ! /* Do that kool kernel stuff */ ! for ( unsigned short int i = 0; i < 500; i++ ) { ! console << "."; ! } ! console << "\nWell won't ya look at that? I'm bored after only 500 loops. G'night :)\n"; ! /* Halt */ ! console << "Halted."; return; } |
|
From: <ke...@to...> - 2003-01-13 04:47:18
|
Update of /cvsroot/linksos/kernel/main In directory router-internal.tossell.net:/tmp/cvs-serv10427/main Modified Files: start.cpp Log Message: Title: Kernel IO Changes: Replaced old kprintf() global with consolestream hal::kio::console. Effects: hal::kio::console << "Hello World!\n"; We can, like, call an object dude. a=kennyt b=19 Index: start.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/main/start.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** start.cpp 13 Jan 2003 02:35:13 -0000 1.4 --- start.cpp 13 Jan 2003 04:47:11 -0000 1.5 *************** *** 15,18 **** --- 15,19 ---- #include "gdt.h" #include "hal.h" + #include "kio.h" desc_table(GDT, 3) *************** *** 32,36 **** { if(magic != MULTIBOOT_BOOTLOADER_MAGIC){ ! hal::kio::printf("Invalid bootloader magic number\n"); return; } --- 33,37 ---- { if(magic != MULTIBOOT_BOOTLOADER_MAGIC){ ! hal::kio::console << "Invalid bootloader magic number\n"; return; } *************** *** 56,64 **** ! hal::kio::printf("LinksOS v0.0.1a kernel booted.\nI'll loop forever now.\n"); /* Do that kool kernel stuff */ /* Halt */ ! hal::kio::printf("Halted."); return; } --- 57,65 ---- ! hal::kio::console << "LinksOS v0.0.1a kernel booted.\nI'll loop forever now.\n"; /* Do that kool kernel stuff */ /* Halt */ ! hal::kio::console << "Halted."; return; } |
|
From: <ke...@to...> - 2003-01-13 04:47:18
|
Update of /cvsroot/linksos/kernel/hal/x86 In directory router-internal.tossell.net:/tmp/cvs-serv10427/hal/x86 Modified Files: kstdio.cpp Log Message: Title: Kernel IO Changes: Replaced old kprintf() global with consolestream hal::kio::console. Effects: hal::kio::console << "Hello World!\n"; We can, like, call an object dude. a=kennyt b=19 Index: kstdio.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hal/x86/kstdio.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** kstdio.cpp 13 Jan 2003 02:35:13 -0000 1.5 --- kstdio.cpp 13 Jan 2003 04:47:10 -0000 1.6 *************** *** 12,17 **** #include "types.h" #include "hal.h" ! void hal::kio::printf(char* text, ...) /* kernel-mode printf: to be used ONLY within the kernel and ONLY in text-mode. any other mode can be disastrous, as this code does not --- 12,18 ---- #include "types.h" #include "hal.h" + #include "kio.h" ! void consolestream::operator<< (char* text) /* kernel-mode printf: to be used ONLY within the kernel and ONLY in text-mode. any other mode can be disastrous, as this code does not |
|
From: <ke...@to...> - 2003-01-13 04:47:17
|
Update of /cvsroot/linksos/kernel/hal/prototypes In directory router-internal.tossell.net:/tmp/cvs-serv10427/hal/prototypes Modified Files: hal.h Added Files: kio.h Log Message: Title: Kernel IO Changes: Replaced old kprintf() global with consolestream hal::kio::console. Effects: hal::kio::console << "Hello World!\n"; We can, like, call an object dude. a=kennyt b=19 --- NEW FILE: kio.h --- #ifndef _KIO_H #define _KIO_H #include "types.h" class consolestream { /* kernel-mode console stream */ public: void operator<< (char*); }; namespace hal { namespace kio { /* Basic Kernel IO */ // void printf(char*, ...); static consolestream console; } /* kio */ } #endif /* ! _KIO_H */ Index: hal.h =================================================================== RCS file: /cvsroot/linksos/kernel/hal/prototypes/hal.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** hal.h 13 Jan 2003 02:35:12 -0000 1.1 --- hal.h 13 Jan 2003 04:47:09 -0000 1.2 *************** *** 4,8 **** namespace hal { /* Hardware Abstraction Layer Root */ ! namespace raw { /* Raw Port IO */ --- 4,8 ---- namespace hal { /* Hardware Abstraction Layer Root */ ! namespace raw { /* Raw Port IO */ *************** *** 17,28 **** /* Output a byte to a port */ asm volatile ("outb %%al,%%dx": :"d" (port), "a" (value)); ! } } /* raw */ ! ! namespace kio { ! /* Basic Kernel IO */ ! void printf(char*, ...); ! } /* kio */ ! } /* hal */ --- 17,23 ---- /* Output a byte to a port */ asm volatile ("outb %%al,%%dx": :"d" (port), "a" (value)); ! } } /* raw */ ! } /* hal */ |
|
From: <ke...@to...> - 2003-01-13 02:35:19
|
Update of /cvsroot/linksos/kernel/main In directory router-internal.tossell.net:/tmp/cvs-serv7935/main Modified Files: start.cpp Log Message: Title: Namespaced. Changes: Broken inportb, outportb, and kstdio into namespace hal. Effects: hal::raw::inportb hal::raw::outportb hal::kio::printf a=kennyt b=19 Index: start.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/main/start.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** start.cpp 12 Jan 2003 21:09:49 -0000 1.3 --- start.cpp 13 Jan 2003 02:35:13 -0000 1.4 *************** *** 12,19 **** \****************************************************************************/ - #include "kstdio.h" #include "multiboot.h" #include "gdt.h" ! desc_table(GDT, 3) --- 12,18 ---- \****************************************************************************/ #include "multiboot.h" #include "gdt.h" ! #include "hal.h" desc_table(GDT, 3) *************** *** 33,37 **** { if(magic != MULTIBOOT_BOOTLOADER_MAGIC){ ! kprintf("Invalid bootloader magic number\n"); return; } --- 32,36 ---- { if(magic != MULTIBOOT_BOOTLOADER_MAGIC){ ! hal::kio::printf("Invalid bootloader magic number\n"); return; } *************** *** 57,65 **** ! kprintf("LinksOS v0.0.1a kernel booted.\nI'll loop forever now.\n"); /* Do that kool kernel stuff */ /* Halt */ ! kprintf("Halted."); return; } --- 56,64 ---- ! hal::kio::printf("LinksOS v0.0.1a kernel booted.\nI'll loop forever now.\n"); /* Do that kool kernel stuff */ /* Halt */ ! hal::kio::printf("Halted."); return; } |
|
From: <ke...@to...> - 2003-01-13 02:35:19
|
Update of /cvsroot/linksos/kernel/hal/prototypes In directory router-internal.tossell.net:/tmp/cvs-serv7935/hal/prototypes Added Files: hal.h Removed Files: io.h kstdio.h Log Message: Title: Namespaced. Changes: Broken inportb, outportb, and kstdio into namespace hal. Effects: hal::raw::inportb hal::raw::outportb hal::kio::printf a=kennyt b=19 --- NEW FILE: hal.h --- #ifndef _HAL_H #define _HAL_H namespace hal { /* Hardware Abstraction Layer Root */ namespace raw { /* Raw Port IO */ inline unsigned char inportb(unsigned int port) { /* Input a byte from a port */ unsigned char ret; asm volatile ("inb %%dx,%%al":"=a" (ret):"d" (port)); return ret; } inline void outportb(unsigned int port,unsigned char value) { /* Output a byte to a port */ asm volatile ("outb %%al,%%dx": :"d" (port), "a" (value)); } } /* raw */ namespace kio { /* Basic Kernel IO */ void printf(char*, ...); } /* kio */ } /* hal */ #endif /* ! _HAL_H */ --- io.h DELETED --- --- kstdio.h DELETED --- |
|
From: <ke...@to...> - 2003-01-13 02:35:19
|
Update of /cvsroot/linksos/kernel/hal/x86 In directory router-internal.tossell.net:/tmp/cvs-serv7935/hal/x86 Modified Files: kstdio.cpp Log Message: Title: Namespaced. Changes: Broken inportb, outportb, and kstdio into namespace hal. Effects: hal::raw::inportb hal::raw::outportb hal::kio::printf a=kennyt b=19 Index: kstdio.cpp =================================================================== RCS file: /cvsroot/linksos/kernel/hal/x86/kstdio.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** kstdio.cpp 4 Jan 2003 08:36:07 -0000 1.4 --- kstdio.cpp 13 Jan 2003 02:35:13 -0000 1.5 *************** *** 11,18 **** #include "types.h" ! #include "kstdio.h" ! #include "io.h" ! void kprintf(char* text) /* kernel-mode printf: to be used ONLY within the kernel and ONLY in text-mode. any other mode can be disastrous, as this code does not --- 11,17 ---- #include "types.h" ! #include "hal.h" ! void hal::kio::printf(char* text, ...) /* kernel-mode printf: to be used ONLY within the kernel and ONLY in text-mode. any other mode can be disastrous, as this code does not *************** *** 27,35 **** /*First get the cursor's current position on screen*/ ! outportb(0x3d4, 0x0e); /* Get cursor Y position */ ! off = inportb(0x3d5); off <<= 8; ! outportb(0x3d4, 0x0f); /* And add cursor X position */ ! off += inportb(0x3d5); off <<= 1; --- 26,34 ---- /*First get the cursor's current position on screen*/ ! hal::raw::outportb(0x3d4, 0x0e); /* Get cursor Y position */ ! off = hal::raw::inportb(0x3d5); off <<= 8; ! hal::raw::outportb(0x3d4, 0x0f); /* And add cursor X position */ ! off += hal::raw::inportb(0x3d5); off <<= 1; *************** *** 49,56 **** /*Move cursor to new screen position*/ off >>= 1; ! outportb(0x3d4,0x0f); ! outportb(0x3d5,off & 0x0ff); ! outportb(0x3d4,0x0e); ! outportb(0x3d5,off >> 8); } --- 48,55 ---- /*Move cursor to new screen position*/ off >>= 1; ! hal::raw::outportb(0x3d4,0x0f); ! hal::raw::outportb(0x3d5,off & 0x0ff); ! hal::raw::outportb(0x3d4,0x0e); ! hal::raw::outportb(0x3d5,off >> 8); } |
|
From: <ke...@to...> - 2003-01-13 02:18:50
|
Update of /cvsroot/linksos/kernel In directory router-internal.tossell.net:/tmp/cvs-serv7395 Modified Files: Makefile Log Message: Title: Target Dependency Changes: Removed the clean target as a dependency of 'all'. Effects: Builds by the default target can be run w/o making clean. a=kennyt Index: Makefile =================================================================== RCS file: /cvsroot/linksos/kernel/Makefile,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** Makefile 12 Jan 2003 21:02:13 -0000 1.9 --- Makefile 13 Jan 2003 02:18:41 -0000 1.10 *************** *** 1,6 **** include machine.mk ! all: clean kernel ! @echo -e "Your build has succeeded! You will find the kernel, complete \n \ with multiboot instructions, in ./kernel.bin - Have Fun!" --- 1,6 ---- include machine.mk ! all: kernel ! @echo -e "Your build has succeeded! You will find the kernel, complete \n\ with multiboot instructions, in ./kernel.bin - Have Fun!" |
|
From: <ke...@to...> - 2003-01-12 23:51:35
|
Update of /cvsroot/linksos/website/content In directory router-internal.tossell.net:/tmp/cvs-serv5969/content Modified Files: time.php Log Message: Title: Negative Hours Changes: Added case where hour is negative. Effects: Negative hour $t will be changed to 24+$t. a=kennyt Index: time.php =================================================================== RCS file: /cvsroot/linksos/website/content/time.php,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** time.php 2 Jan 2003 01:40:56 -0000 1.3 --- time.php 12 Jan 2003 23:51:31 -0000 1.4 *************** *** 24,28 **** for ( $t = -12; $t < 13; $t++ ) { $tzd_people = mysql_query('SELECT unixname,fullname FROM linksos_people WHERE gmt = ' . $t); ! echo '<td valign="top"' . (is_integer($t/2) ? 'bgcolor="#cccccc"' : '' ) . '><b>' . ( ($gmt + $t) < 24 ? ($gmt+$t) : ( ($gmt+$t)-24 ) ) . '</b><p />'; while ( $tz_person = mysql_fetch_row($tzd_people) ) { echo $tz_person[0] . '<br>'; --- 24,28 ---- for ( $t = -12; $t < 13; $t++ ) { $tzd_people = mysql_query('SELECT unixname,fullname FROM linksos_people WHERE gmt = ' . $t); ! echo '<td valign="top"' . (is_integer($t/2) ? 'bgcolor="#cccccc"' : '' ) . '><b>' . ( ($gmt + $t) < 24 ? ((($gmt+$t) < 0 ? 24+($gmt+$t) : ($gmt+$t)) ) : ( ($gmt+$t)-24 ) ) . '</b><p />'; while ( $tz_person = mysql_fetch_row($tzd_people) ) { echo $tz_person[0] . '<br>'; |