Create your own awesome maps

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account?
Log In

SimpleOS by Mind Map: SimpleOS
5.0 stars - 2 reviews range from 0 to 5

SimpleOS

Key: Tick = Done Cross = Not started Excamation = Broken/incomplete   Star = Type Info = Define Orange Flag = Global Blue Flag = External

scrn.c

main.c

Defines

VERSION_MAJOR, 0

VERSION_MINOR, 1

VERSION_BUILD, "Build 1"

VERSION_TYPE, "Alpha Release"

COMPILE_DATE, 2009-12-25 11:30

Functions

int main(struct multiboot *mboot_ptr), Main routine, should never return

string.c

Functions

int strcmp(char *str1, char *str2)

char *strcpy(char *dest, const char *src)

char *strcat(char *dest, const char *src)

int strlen(char *src)

int isspace(char c)

int isupper(char c)

int islower(char c)

int isdigit(char c)

int isalpha(char c)

common.c

Defines

Colors, COLOR_BLACK, COLOR_BLUE, COLOR_GREEN, COLOR_CYAN, COLOR_RED, COLOR_MAGENTA, COLOR_BROWN, COLOR_LTGRAY, COLOR_GRAY, COLOR_LTBLUE, COLOR_LTGREEN, COLOR_LTCYAN, COLOR_LTRED, COLOR_LTMAGENTA, COLOR_YELLOW, COLOR_WHITE

Special, TRUE, 1, FALSE, 0, NULL, 0, EMPTY

Types

uint, unsigned int

ushort, unsigned short

ulong, unsigned long

uchar, unsigned char

size_t, unsigned long, http://www.embedded.com/columns/programmingpointers/200900195

Functions

void outportb(ushort port, uchar value)

void outportw(ushort port, ushort value)

uchar inportb(ushort port)

ushort inportw(ushort port)

void *memcpy(void *dest, const void *src, size_t count)

void *memset(void *dest, char value, size_t count)

ushort *memsetw(ushort *dest, ushort value, size_t count)

void freeze()

extern void panic(const char *message, const char *file, uint line)

extern void panic_assert(const char *file, uint line, const char *desc)

Linker script

Entry point

start

Sections

text

data, rodata

bss

end

dt.c

isr.c

Globals

isr_t interrupt_handlers[256]

Functions

void register_interrupt_handler(uchar n, isr_t handler)

void isr_handler(registers_t regs)

void irq_handler(registers_t regs)

Headers

multiboot.h

Defines the Multiboot header used with GRUB

stdarg.h

Sets macros for variable arguments used with printf

Taken from GCC, Licenced under the GNU GPL 2

gdt.s

Globals

gtd_flush

idt_flush

interupt.s

Globals

isr[0-31]

irq[0-15]

Externals

isr_handler

irq_handler

boot.s

Globals

mboot

start

Externals

code

bss

end

main, Kernel entry point