Windows 98 Source Code

Overview from Me

Yes, it's really all here. I stumbled across the authentic source code to Windows 98 floating around the Web. Clearly, it's written in C, but even the novice should be able to follow this. With XP being current, I'm sure Microsoft won't mind.

Oh yeah, keep an eye out for the comments (i.e. /* ... */). They're a nice touch!


Geek rating: *** (much Geekiness)

Windows 98 Source Code

/*
TOP SECRET Microsoft Code
Project: Chicago(tm)
Projected release-date: Summer 1998
*/

#include "win31.h"
#include "win95.h"
#include "evenmore.h"
#include "oldstuff.h"
#include "billrulz.h"
#define INSTALL = HARD

char make_prog_look_big[1600000];

void main()
{
    while (!CRASHED) {
        display_copyright_message();
        display_bill_rules_message();
        do_nothing_loop();

        if (first_time_installation) {
            make_50_megabyte_swapfile();
            do_nothing_loop();
            totally_screw_up_HPFS_file_system();
            search_and_destroy_the_rest_of_OS/2();
            hang_system();
        }

        write_something(anything);
        display_copyright_message();
        do_nothing_loop();
        do_some_stuff();

        if (still_not_crashed) {
            display_copyright_message();
            do_nothing_loop();
            basically_run_windows_3.1();
            do_nothing_loop();
            do_nothing_loop();
        }
    }

    if (detect_cache())
        disable_cache();

    if (fast_cpu()) {
        set_wait_states(lots);
        set_mouse(speed, very_slow);
        set_mouse(action, jumpy);
        set_mouse(reaction, sometimes);
    }

    /* printf("Welcome to Windows 3.11"); */
    /* printf("Welcome to Windows 95"); */
    printf("Welcome to Windows 98");

    if (system_ok())
        crash(to_dos_prompt);
    else
        system_memory = open("a:\swp0001.swp", O_CREATE);

    while (something) {
        sleep(5);
        get_user_input();
        sleep(5);
        act_on_user_input();
        sleep(5);
    }

    create_general_protection_fault();
}