1
2Here, I want to give you some details about the history of cingb.
3
4----------------------------------------------------------------------
5
61) cingb is older than you think!
7
8I got interested in hardware emulation (it was years ago),
9because running a virtual machine is like creating
10an own computer.
11So the project developed so far only for educational purposes.
12I simply wanted to learn to emulate CPU and some peripherials.
13
14The development began on DOS with Pascal (mid-90s I think).
15It had lots of assembly code and was full of bugs.
16After I got Linux I was amazed how easy the development
17with gcc there was and began to port it.
18Well, "port" is the wrong term, I completely rewrote it.
19
20Please keep in mind:
21With this project I learned how to program in C.
22If I would start today, many things would look different,
23of course.
24So please don't laugh about some weird constructs.
25The most important thing is the functionality.
26
27While writing the code I learned how to use gnu-make, too.
28So I reorganized the code a few times and created
29separate modules.
30
31Today, there are still some strange-looking pieces of code.
32Of course, you people should try to correct and to improve
33the code. Any help is welcome.
34
352) Why Gameboy(tm) as virtual machine?
36
37I decided to emulate Gameboy because it is EASY to
38analyse this little machine. Further, I had a gameboy
39and many games for it, so I've had an idea how it
40should look/sound like.
41But be sure, I've thought about many possibilities,
42like e.g. C 64. The CPU is easy to emulate, too, but
43the peripherials are more complicated.
44
45You really cannot imagine, how happy I was seeing
46the CPU running and working properly in debug-mode
47the first time (with Tetris(tm))!
48I had no display, but the CPU was moving!
49It was great.
50
513) SOME RULES ABOUT INTERACTING WITH ME
52
531st: NEVER NEVER NEVER! NEVER EVER ask me for ROMs
54     for cingb !!!
55     THIS IS MEANT SERIOUS.
56
572nd: If you write something, write something useful.
58     I don't want to know about new games which
59     aren't working, because I DON'T HAVE the right
60     to download them and to use them with cingb.
61     Perhaps, in future, someone can solve problems
62     in this way.
63
64----------------------------------------------------------------------
65
66Have fun with cingb
67nakal
68