Files
reactos/reactos
Hermès Bélusca-Maïto 7c2b066810 [CONSOLE.CPL-KERNEL32]
Fix some compilation warnings with MSVC.

[KERNEL32-CONSRV]
- Implement console graphics screen buffers, as described in http://blog.airesoft.co.uk/2012/10/things-ms-can-do-that-they-dont-tell-you-about-console-graphics/ .
  The idea is that the console server creates a memory shared section to be shared with the client console application (it increases performance). A mutex is used to "say" to the console server that he can repaint the screen. The function InvalidateConsoleDIBits is implemented too. The definition of the structure CONSOLE_GRAPHICS_BUFFER_INFO comes directly from the site.
- CreateConsoleScreenBuffer was modified to be able to create such buffers.
This is needed for a working NTVDM-like application.

[CONSRV]
- Rework the console buffer structures so that text-mode buffers and graphics-mode buffers can "inherit" from an "abstract" structure, CONSOLE_SCREEN_BUFFER. Add few helper functions for manipulating them.
- Reorganize the output code in "graphics.c" and "text.c" files to separate text-mode only code from graphics-mode only code, both in the console server and in the GUI front-end.

Other fixes:
- Fix mouse handling (left and right clicks when one goes away from the "Selection" mode); do not handle mouse signal when we reactivate the GUI front-end window by a click.
- Fix GetLargestConsoleWindowSize API in console server side. Now pressing Alt+F9 in Far Manager to "change" the "video" mode works correctly.

Finally:
- Start to implement a (fake, i.e. not using directly a VGA driver) console fullscreen mode. Currently Alt-Enter key presses call a stub which just alternates DPRINTing between "switch to fullscreen mode" and "switch to windowed mode".

Images here:
- Example of an application (a 16-bit emulator by Mysoft) which uses the console graphics screen-buffer functionality: http://img577.imageshack.us/img577/1693/mysoftemulatorargon.png
- A potpourri of console applications which use graphics screen-buffers: http://img571.imageshack.us/img571/6526/consoledelirium.png

Enjoy :)

svn path=/trunk/; revision=59099
2013-05-29 00:29:07 +00:00
..
2013-05-20 18:10:30 +00:00
2013-05-24 12:24:27 +00:00
2013-05-20 18:27:07 +00:00
2013-05-29 00:29:07 +00:00
2013-05-27 18:39:32 +00:00
2013-05-19 13:43:47 +00:00
2013-05-29 00:29:07 +00:00
2013-05-27 20:20:33 +00:00
2013-05-23 17:23:00 +00:00
2013-05-24 09:07:46 +00:00
2013-05-04 14:29:51 +00:00
2013-05-27 20:27:28 +00:00
2013-05-29 00:29:07 +00:00
2013-05-20 18:27:07 +00:00
2013-05-20 18:27:07 +00:00

========================
ReactOS Version 0.3.x
Updated Dec 16, 2006
========================

1. What is ReactOS?

   ReactOS is an Open Source effort to develop a quality operating system
that is compatible with Windows NT applications and drivers.

   The ReactOS project, although currently focused on Windows XP/2003
drivers compatibility, is always keeping an eye toward compatibility with
older version of Windows NT family ( NT 4.0, 2000 (NT 5.0)) and new
Windows NT releases (Vista, etc). Applications (Win32 API) compatibility
focus is Windows XP.

More information is available at http://www.reactos.org/.

2. Building ReactOS

See the INSTALL file for more details.

3. More information

See the media\doc subdirectory for some sparse notes.

4. Who is responsible

See the CREDITS file.