Valhalla Logo

2009-01-30

i'm adding font support and some basic ui controls.

2008-06-25

after fixing another 10'000 bugs i started work on the gui server. i added a screenshot of it.

i couldn't get gcc and newlib to compile. all the config-files and linker-scripts confused me.

2008-06-05

mouse driver is up and running. i fixed a couple of bugs in valhalla's rtl. the kernel and drivers now handle interrupts differently in order to support shared level-triggered irq's.

i'm thinking about porting a java vm to valhalla. that would require newlib and gcc. just because i like java's collections so much.

2008-04-25

i managed to get freepascal to compile multi-threaded programs for valhalla. but the freepascal rtl for valhalla is not yet mt-safe. while doing this i fixed tons of bugs. i wonder how it worked in the first place.

the next step is to code a ps2 mouse driver.

2008-04-17

i found a useful link which shows how to access the emulated video card of bochs. by now i have two graphics drivers, one for the bochs video card and a generic one for vga compatible cards. the latter uses antialiasing and error diffusion dithering to show 640x400x32 graphics on a 320x200x8 screen at 60+ fps on my machine.

while implementing something similar to beos' app_server i thought about notifications and asynchronou sevents. and communication channels instead of connection-less ipc-messaging. i wonder which way's the best...

2008-04-07

i'm working on valhalla again. it's impressive what valhalla has become - and i only realize it now. it's fun to work on a long forgotten project and come to realize that everything's (excuse my enthusiasm) perfectly designed.

with the newest additions i now have a display driver working. it tries to show 32bit graphics on a 320x200 screen with 8bit color.

interrupt handling works as well. that's the reason why valhalla has a keyboard driver. but it doesn't yet support "fancy" buttons... like return or space...

2006-12-15

the kernel supports now a virtually unlimited number of processes and threads (thanks to dynamic growing of in-kernel data structures). only the size of all memory related structures is fixed.

each thread belongs to a priority class (irq, high, normal, low, idle) and has an additional "nice" value.

at the moment i'm thinking about a universal way to add capability-support to valhalla.

2006-12-07

ipc works like a charm. right now the kernel uses only static arrays as data structures. i'd like to change this, but right now my own rtl does not support allocating dynamic memory.

2006-11-28

did some refactoring. the code looks even better now. valhalla supports auto-growing of stack and heap memory.

time to add ipc.

2006-11-15

yippie, the first two concurrent processes run. now it's time to add some basic api calls and test the kernel.

the kernel is able to catch all exceptions.

2006-11-02

the scheduler should be able to give control to the first created process. but something with the tss is not right...

right now a bug in the free pascal compiler prevents me from doing further work.

expect more screenshots and progress soon.

older news

2006-10-08 > scheduler design finished
2006-10-02 > exception handlers
2006-09-12 > basic interrupt handling
2006-09-08 > kernel runs in pmode
2006-09-05 > vds-tool and bootloader updated
2006-09-03 > another revision of vds done
2006-08-03 > ssb identifies hardware and memory
2006-07-31 > second stage can read fs
2006-07-12 > bootsector rewritten
2006-07-05 > fs redesigned & tool finished
2005-12-20 > design of new fs finished
2005-10-19 > major rewrite planned
2005-05-17 > new ipc subsystem is in the works
2005-03-02 > all old servers work with the new ipc
2005-02-22 > ipc redesign finished
2005-02-14 > registrar finished
2005-01-24 > message-subsystem revised
2005-01-23 > simple registrar created
2005-01-03 > improved build-process, now 5x faster
2005-01-03 > tested & fixed several bugs in the vdstool
2004-12-23 > valhalla disk system-tool finished
2004-12-20 > 1.5mb source code (pascal + asm)
2004-12-16 > webpage
2004-12-14 > mini ide-driver
2004-12-06 > 80% api
2004-11-22 > pci scanner
2004-11-11 > api design
2004-11-06 > memory manager
2004-11-04 > multitasking
2004-10-25 > kernel-stacktrace
2004-10-19 > elf-loader
2004-10-17 > pascal kernel
2004-09-27 > asm second stage bootloader
2004-09-19 > asm mbr/bootsector
2004-08-05 > planning

info

valhalla is just for me. i don't want to take over the world, pinky. every single codeline of valhalla is produced exclusively by me. valhalla is just a playfield for new designs and unordinary ideas.

screenshots

> second try <
screenshotscreenshotscreenshot
> first try <
screenshotscreenshotscreenshot