I've implemented GUI consoles in CSRSS, see attached screenshot. If you
do nothing special, you're still launched into a text-mode console, the
blue screen we all know and love. If you rename
/ReactOS/system32/drivers/blue.sys to blue.sys.save you will be launched
into a graphical console.
There are still loads of problems. The biggest is that keyboard focus is
not restored when a program exits. So, from the GUI console you can
start e.g. winhello, but when you close winhello you won't be able to
type anything else in the console window. Activating windows by clicking
on them is also not implemented yet. You can't close a graphical console
by clicking on the "X", it doesn't know how to terminate the processes
running inside it yet.
The console code is a bit of a mess and needs to be cleaned up, it's
also one of the worst offenders with respect to indenting.
Gé van Geldorp.