Other old work : 
Prince of Persia 
OS and GUI

OS and my GUI Framework

    Someone said that Dos programmers have always been writing operating systems. Maybe a spoof, but had some truth in it. We guys wanted to do an OS, a very small simplistic OS.

    A small OS that was the need: Things did get as far a single floppy boot-up. The thing was in real mode, text based. Had a rudimentary file system, a single line based editor (similar to edlin). Worked in a text-based windows setup, where editing brought up a window and commands could be entered in main window. The thing was curious... worked day and night for 4 days on it. Unfortunately I don't have a screen shot for you. Maybe a binary dump in the downloads section later.

    The real intention was to do a protected mode OS with an internal architecture similar to that of Windows in terms of memory layout. The project never got completed to reasons that were not entirely technical (and that is what gets me no end...). The kernel design was to modular with a standard call-routine which managed all system calls to all modules. This routine would be same that would be used for inter-process communication and file-system and memory-manger calls. The original system was meant to be single tasking... and then onto a multitasking system.  People have told me that similar to a micro-kernel architecture. I have never indulged myself in studying it and there are some issues I don't understand at all - like how the avoid a lot code replication in such water tight modules.

    Anyway, we did get as far as boot-up, switch into protected mode. I can send you that code if you contact me. A partly written memory manager (hand written largely in asm, cause I went nuts with the nuances of every 32bit C compiler I found, djgpp generated poor performance asm code... tcc32 was probably an exception, but a lot of manual patching was needed there) that is still in fragments. A dummy file system. The kernel and device manager modules never got started.

    What really did happen was some GUI code that I put together, that with some (major) refinements could have gone platform independant and interface-able to by a standardized protocol... as was the file manager.

Here is screen shot of that GUI system. I later used it write some simplistic GUI apps in Dos.