Changeset 573
- Timestamp:
- Mar 9, 2006, 4:35:00 PM (17 years ago)
- Location:
- libcaca/trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
libcaca/trunk/build-kernel
r569 r573 2 2 3 3 ## Kernel-mode libcaca compilation script -- Sam Hocevar <sam@zoy.org> 4 ## $Id : build-dos 333 2006-03-07 12:39:34Z sam$4 ## $Id$ 5 5 6 6 set -x … … 16 16 --host i386 17 17 18 (cd cucul && make) 19 (cd caca && make) 18 # We need this. 19 make clean 20 20 21 (cd src && make cacafire-aafire.o) 21 cd cucul && make && cd .. 22 cd caca && make && cd .. 22 23 23 (cd kernel && 24 gcc $CFLAGS -c multiboot.S -o multiboot.o 25 gcc $CFLAGS $CPPFLAGS -c kernel.c -o kernel.o) 24 cd src && make cacafire-aafire.o && cd .. 25 26 cd kernel && 27 gcc $CFLAGS -c multiboot.S -o multiboot.o && 28 gcc $CFLAGS $CPPFLAGS -c kernel.c -o kernel.o && 29 cd .. 26 30 27 31 gcc $LDFLAGS -o src/cacafire kernel/multiboot.o kernel/kernel.o src/cacafire-aafire.o caca/.libs/libcaca.a cucul/.libs/libcucul.a … … 29 33 objcopy -O binary src/cacafire cacafire.boot 30 34 35 # For further development: create floppy images using the kernel 36 #gcc -traditional -c -o bootsect.o bootsect.S 37 #ld -Ttext 0x0 -s --oformat binary bootsect.o -o cacafire.img 38 -
libcaca/trunk/caca/caca_internals.h
r565 r573 27 27 typedef unsigned char uint8_t; 28 28 typedef unsigned short uint16_t; 29 typedef unsigned int uint32_t; 29 typedef unsigned long int uint32_t; 30 typedef long int intptr_t; 31 typedef long unsigned int uintptr_t; 30 32 #endif 31 33 -
libcaca/trunk/cucul/cucul_internals.h
r571 r573 27 27 typedef unsigned char uint8_t; 28 28 typedef unsigned short uint16_t; 29 typedef unsigned int uint32_t; 29 typedef unsigned long int uint32_t; 30 typedef long int intptr_t; 31 typedef long unsigned int uintptr_t; 30 32 #endif 31 33 -
libcaca/trunk/kernel/kernel.c
r568 r573 30 30 void cmain(unsigned long int magic, unsigned long int addr) 31 31 { 32 static char const text[] = "Booting libcaca kernel..."; 33 char const *ptr = text; 34 char *video = (char*)0xB8000; 35 32 36 char *argv[] = { NULL }; 33 37 int argc = 0; 38 39 /* Print a text message to say hello */ 40 while(*ptr) 41 *video = *ptr++; video += 2; 42 43 /* Launch the main program */ 34 44 main(argc, argv); 35 45 } -
libcaca/trunk/kernel/kernel.h
r568 r573 28 28 #define __BIG_ENDIAN 2 29 29 30 /* Assembly code for outb and inb */ 31 extern inline void outb(unsigned char val, unsigned short port); 32 extern inline unsigned char inb(unsigned short port); 33 34 extern inline void outb(unsigned char val, unsigned short port) 35 { 36 __asm__ __volatile__ ("outb %b0,%w1" : : "a" (val), "Nd" (port)); 37 } 38 39 extern inline unsigned char inb(unsigned short port) 40 { 41 unsigned char tmp; 42 __asm__ __volatile__ ("inb %w1,%0" : "=a" (tmp) : "Nd" (port)); 43 return tmp; 44 } 45 30 46 /* Various typedefs -- some are x86-specific */ 31 47 #define CUSTOM_INTTYPES 32 48 typedef unsigned char uint8_t; 33 49 typedef unsigned short uint16_t; 34 typedef unsigned int uint32_t; 35 typedef unsigned int uintptr_t; 50 typedef unsigned long int uint32_t; 51 typedef long int intptr_t; 52 typedef long unsigned int uintptr_t; 36 53 37 54 typedef unsigned int size_t;
Note: See TracChangeset
for help on using the changeset viewer.