Commit Graph

310 Commits

Author SHA1 Message Date
Patrik Stridvall 0b52adaac4 Fixed typo. 1999-04-19 16:30:51 +00:00
Patrik Stridvall b4b9fae671 New debug scheme with explicit debug channels declaration. 1999-04-19 14:56:29 +00:00
Eric Pouech dc7c1b87d4 Fixed a few bugs (typos from cut & paste & invalid heap block
freeing).
1999-04-18 13:12:02 +00:00
Huw D M Davies 608629bc13 Fixes for upside-down DIBs. 1999-04-18 12:07:00 +00:00
Lionel Ulmer 251ed43b98 Changed 'GetDisplayMode' to return the mode previously set by
'SetDisplayMode' (and not the current monitor mode).
1999-04-18 12:03:02 +00:00
Brian Gerst 8d4f85071d - Removed all floating point math.
- Implemented stretching in X and Y directions for 8, 16, and 32 bit color.
- Implemented source and dest color-keying for 8, 16, and 32 bit color.
- Implemented some trivial raster operations.
- Minimized inner loops for maximum speed.
- Use memcpy whenever possible.
1999-04-18 09:31:50 +00:00
Robert Pouliot 0a9975242a A few patches to help Wine to compile on OS/2. 1999-04-16 06:55:26 +00:00
Huw D M Davies b94e43303a Change (32 bit) HMETAFILEs to GDI objects (HMETAFILE16s remain as
global memory handles).  Fixed disk-based MetaFiles.  Better
separation between MetaFile playback and the metafiledrv.
1999-04-15 16:46:51 +00:00
Pavel Roskin 6f01462b8b Fixed ugly disabled controls and black background in Write and Lotus
Notes.
1999-04-15 15:52:59 +00:00
Huw D M Davies 0d211d1cf5 Limit lastChar to 0xff in PSDRV_GetCharWidth. 1999-04-15 15:13:54 +00:00
Karl Lessard 183f8841db Optimized code for SetImageBits_X, making bitmap creation faster. 1999-04-11 17:04:16 +00:00
Richard Mortimer bce5f88f3d Added missing *IsDark entries into PALETTE_Driver instance
initialisation.
1999-04-10 16:37:43 +00:00
Lionel Ulmer 81c7544184 - clean-up of texture 'loading'
- added SetColorKey callback for already loaded textures
1999-04-06 07:10:48 +00:00
Lionel Ulmer 4ddedb8131 Added DllClassFactory to DirectDraw. 1999-04-02 10:26:32 +00:00
Alex Korobka 44a1b59cec Fixes for ignored WVR_[VH]REDRAW flags, made minimization in managed
mode go through window manager, small bugfixes for menu and window
code, extended clipboard driver model to handle formats other than
text.
1999-04-01 12:03:52 +00:00
Lionel Ulmer 31ce102fe6 Implement the EnumAttachedSurface method. 1999-04-01 11:49:29 +00:00
Lionel Ulmer e59f20d76d Fixed OpenGL devices implementation. 1999-04-01 10:00:38 +00:00
Patrik Stridvall b87fe2e9bf More code moved to the X11 driver (bitmap and palette and misc). 1999-04-01 08:16:08 +00:00
Lionel Ulmer e8ceac986b Fixed QueryInterface functions for IDirect3D 1 and 2. 1999-03-28 15:15:45 +00:00
Dimitrie O. Paun 05c0c8ef13 Changed some debug messages from one channel to another, to clean up a
bit the debug channel usage.
1999-03-28 15:07:41 +00:00
Lionel Ulmer 2e23da4ad5 Added initialisation of the pixmap_depth field in
Xlib_DirectDrawCreate.
1999-03-28 09:18:22 +00:00
Huw D M Davies 610b001de5 More Escapes for the PostScript driver. 1999-03-28 09:13:26 +00:00
Francois Gouget 022d372709 Adapted to the interface/implementation separation.
Now uses ICOM_THIS to access the implementation structures.
Replaced 'this' with 'This' for ICOM_THIS.
Direct access to the virtual table has been eliminated too.
1999-03-27 16:56:13 +00:00
Francois Gouget 9e2f4af9b0 Updated to include all the implementation aspects that were previously
in the public includes.
1999-03-27 16:53:09 +00:00
Francois Gouget f44e3e90d4 Removed direct access to the virtual table 1999-03-27 16:49:55 +00:00
Huw D M Davies e42ee26d9a Fixed {S|G}etBitmapBits in x11drv. Removed BITMAP_GetPadding. 1999-03-27 15:59:12 +00:00
David Luyer be02d4044e Changed stdlib.h to string.h. 1999-03-25 15:58:20 +00:00
Randy Weems 0bc73c7818 Fixed off-by-one error if bitblt width or height is negative. 1999-03-25 15:49:11 +00:00
Huw D M Davies 44a79c4925 Added StretchDIBits for the PostScript driver. 1999-03-23 13:46:04 +00:00
Veksler Michael e94e35431e Removed winuser16.h from x11drv.h. 1999-03-22 12:41:26 +00:00
Marcus Meissner 6b9dd2e098 Lots of warning fixed, one missing WINAPI in ddraw.c added. 1999-03-18 17:39:57 +00:00
Marcus Meissner ac593bbd41 Fixed some warnings. removed some unneccessary includes, removed one
direct WND* access in controls/menu.c.
1999-03-17 15:18:28 +00:00
Lionel Ulmer 88ca57d219 Corrected bug in enumeration function. 1999-03-16 09:53:48 +00:00
Francois Boisvert 6b1b41cf85 Made access to the wnd struct thread-safe. 1999-03-14 17:25:32 +00:00
Jim Aston 2e1cafa288 Renamed wintypes.h to windef.h. 1999-03-14 16:35:05 +00:00
Patrik Stridvall 76535cd912 Added functions DirectDrawEnumerateW and DirectDrawEnumerateExW. 1999-03-14 15:20:11 +00:00
Ove Kaaven e1848e5cdb Fixed a silly VGA-emulation palette bug. 1999-03-14 12:23:17 +00:00
Pavel Roskin cb327212c4 File open dialog now uses icons instead of bitmaps. 1999-03-13 18:10:43 +00:00
Patrik Stridvall 8085b6ccfd Reimplemented DrawFocusRect without using X11. 1999-03-13 18:01:45 +00:00
Andreas Mohr 7d0e449f1f Improved "error" message readability. 1999-03-13 12:43:11 +00:00
Lionel Ulmer 19cf14f5e8 - some clean up in handling of depth
- more depth conversion routines for X11 (15, 16 and 32 -> 8)
1999-03-10 16:22:35 +00:00
Pavel Roskin 82c70ad91e Fixed folder bitmap colors for 8bpp. 1999-03-10 13:59:13 +00:00
Caolan McNamara f0370548c7 Windows doesnt allow dashed and dotted lines > 1. 1999-03-10 13:58:35 +00:00
Ulrich Weigand 9cfeb5b88c Avoid unnecessary GraphicsExpose events. 1999-03-10 13:26:09 +00:00
Huw D M Davies 2fe5a273fd Accept "Normal" as a valid AFM weight. 1999-03-09 17:42:33 +00:00
Lionel Ulmer 4d4b5a9a2f - added function DirectDrawEnumerateEx
- added (or corrected) check for the return value of the enumeration functions
1999-02-28 19:49:42 +00:00
David Luyer ee517e863e - fixed missing stdlib.h and string.h includes everywhere
- removed a couple of unneeded stdlib.h and stdio.h includes
1999-02-28 12:27:56 +00:00
Lionel Ulmer 718bba93ec - no more 3D capabilities if Direct3D support is not compiled in
- some debug messages clean-up (replaced fprintfs by DUMPs)
1999-02-28 11:04:54 +00:00
Alexandre Julliard a396029270 Large-scale renaming of all Win32 functions and types to use the
standard Windows names.
1999-02-26 11:11:13 +00:00
Marcus Meissner 219cfd8387 Optimized away more includes, readded some #includes for necessary
prototypes.
1999-02-24 13:05:13 +00:00
Alexandre Julliard fb02ee91b5 Fixed end-of-line bug in X11DRV_DIB_SetImageBits_RLE4. 1999-02-20 16:10:38 +00:00
Jeff Garzik c3e1f72bac Added missing string.h include. 1999-02-19 15:42:11 +00:00
Marcus Meissner 04c3e1d456 Removed a lot of occurences of windows.h (and added necessary other
includes).
1999-02-19 10:37:02 +00:00
Francois Boisvert 308c6afe62 Implementation of the pushed close button. 1999-02-18 10:37:17 +00:00
Francois Gouget 289211cc3b Fixed a number of warnings concerning the matching of the printf
format string and the associated parameters (actually it's mostly
TRACE and FIXMEs).
1999-02-17 16:15:11 +00:00
Marcus Meissner 317af320cf Optimized include/*.h: (recursively) include all headers needed by
this .h file, but only those. Necessary fixes to a lot of .c files,
started optimizing "windows.h" away from some of them. Moved
GetCurrentTask prototype to wine/winbase16.h.
1999-02-17 13:51:06 +00:00
Eric Pouech b9544f159d Changed some functions prototypes (were returning void). 1999-02-14 14:09:42 +00:00
Marcus Meissner fb0192236b Some ddraw/d3d bugfixes, updated Diablo/WC4 ddraw status. 1999-02-14 09:25:37 +00:00
Marcus Meissner 9faa7d735a Moved the if1632/signal.c stuff into loader/signal.c, adapted function
pointers for wine_debug and INSTR_EmulateInstruction.
1999-02-13 17:55:17 +00:00
Francis Beaudet 3f7ad7aa98 Implemented the OLE Drag and Drop target registration mechanism and
the DoDragDrop loop to perform the DnD operation.
1999-02-13 09:13:49 +00:00
Lionel Ulmer b501c8f9fa Added 'objbase.h' to prevent compiler warnings. 1999-02-11 14:01:36 +00:00
Lionel Ulmer 98db0be819 Better detection of XShm errors (should now run on remote displays). 1999-02-11 13:24:52 +00:00
Alexandre Julliard 5954560598 Authors: Paul Quinn <paulq@corel.ca>, Albert Den Haan <albertd@corel.ca>
Moves files from print.h to winspool.h for better SDK header compliance
for Winelib programs.
1999-02-10 06:52:57 +00:00
Lionel Ulmer 01fb67de87 Fixed debug output to follow '-debugmsg' flags. 1999-02-10 06:39:01 +00:00
Brad Pepers 0bdff36d38 WinG fixes. 1999-02-09 15:37:16 +00:00
Huw D M Davies e5a6049bee Fixes several problems with SetDIBitsToDevice if xSrc != 0.
Thanks to Ian Schmidt for the logs.
1999-02-09 14:11:59 +00:00
Lionel Ulmer 4ef9251911 - added a dump of the palette creation flags
- changed palette creation code in vga.c to prevent useless error
  message
1999-02-05 10:23:37 +00:00
Patrik Stridvall 8d8703cb48 Moved some more code to the X11 driver. 1999-02-04 14:05:38 +00:00
Patrik Stridvall ab121e7838 X11 driver changes. 1999-02-04 11:11:01 +00:00
Patrik Stridvall 36bbd62158 New TTY driver for GDI. 1999-02-04 10:10:59 +00:00
Francois Gouget a94d649f76 Replaced references to interfaces.h by wine/obj_xxx.h headers instead
since these headers already provide the necessary definitions.
1999-02-02 16:14:23 +00:00
Lionel Ulmer 1b95d7369f Added stubs for new DirectDraw4 and DirectDrawSurface4 methods. 1999-02-02 13:27:38 +00:00
Huw D M Davies 9be2f2a89a Clear up args to PSDRV_AdvancedSetupDialog. 1999-02-02 10:21:52 +00:00
Huw D M Davies 4a0d405f52 Reduce MAX_FONT_SIZE to 1000. 1999-02-02 10:13:14 +00:00
Alexandre Julliard 1c24d79b18 Authors: Lionel Ulmer <ulmer@directprovider.net>, Babrian Viktor <v@ulysses.sch.bme.hu>
- added support for ColorKeying during blits
- miscellaneous fixes
1999-01-31 09:25:35 +00:00
Lionel Ulmer a1d6d247d4 Added check for the presence of Mesa's header files. 1999-01-30 15:54:43 +00:00
Ove Kaaven b77de0298d Defined RESTORE_SIGNALS by default and call SIGNAL_EmulatorInit
through a function pointer instead. Added a few traces. Fixed the
"Memory corruption !" message in DGA mode. Commented out an
unnecessary TSXF86VidModeSetViewPort that caused my X server to
act up, relying on TSXF86DGASetViewPort instead.
1999-01-30 13:17:54 +00:00
Marcus Meissner 6b5a811175 Some more warnings and bugs fixed. 1999-01-30 13:06:00 +00:00
James Juran c2a1063940 Commented out unused variables to prevent needless compiler warnings. 1999-01-28 16:33:44 +00:00
Marcus Meissner 03479f8adb Fixed a lot of warnings for possible problems. 1999-01-28 10:06:38 +00:00
Ove Kaaven c70ac184ae Added (dummy) Death/Resurrection calls to DisplayDib. 1999-01-26 16:57:56 +00:00
Lionel Ulmer 6e95399049 - added depth conversion routines (only 8bpp -> 16 bpp for now)
- added support of DEPTH_FILL for Blits
- added some flags in GetCaps to get some games working
1999-01-26 15:16:41 +00:00
Nick Holloway 36a806cfae Internal PostScript printer driver improvements. 1999-01-24 18:59:58 +00:00
Andreas Mohr 94e4485bff Implemented WIN16_CallMsgFilter32, WIN16_DispatchMessage32,
DrawAnimatedRects16 (stub), FormatMessage16, WIN16_GetMessage32,
WIN16_PeekMessage32 and WIN16_TranslateMessage32.
1999-01-23 14:15:17 +00:00
Lionel Ulmer b0485d5b2d - various warning and bug fixes 1999-01-23 12:33:16 +00:00
Lionel Ulmer 1d3e501e73 - added more texture formats using OpenGL's packed pixel formats 1999-01-23 12:32:46 +00:00
Lionel Ulmer 0155445059 - better support for ExecuteBuffers 1999-01-23 12:29:44 +00:00
Lionel Ulmer c53125969e - corrected bug in Z Buffer allocation
- put VIDEOMEMORY flag for all primary surfaces
- put something in a surface after a ReleaseDC
1999-01-23 12:25:51 +00:00
Pablo Saratxaga e4141dc574 Small patch. 1999-01-20 14:54:01 +00:00
Marcus Meissner 68f458ddde Unified palette create, do allocate colorcells on init for DGA. 1999-01-20 12:25:56 +00:00
Alexandre Julliard 8da12c43a9 Group commit for recovery after disk crash.
See Changelog for changes WRT release 990110.
1999-01-17 16:55:11 +00:00
Alexandre Julliard 638f169b1e Recovery of release 990110 after disk crash.
See Changelog for changes between 990103 and 990110.
1999-01-17 16:32:32 +00:00
Lionel Ulmer 5ff007747f - beginning of implementation of Direct3D2 (DX 5.0) and associated classes
- some basic code for Direct3D and Direct3DExecuteBuffer (DX 3.0)
- added stretching to Blt function
1999-01-03 17:00:19 +00:00
Michael Veksler ca1bc866cf Moves more stuff from windows.h.
- include/winuser.h - interface relevant to user32.spec
- include/wine/winuser16.h - the old 16 bit interface (internal use)
- include/winbase.h - some minor updates to keep things coherent.
- Lot of other files made to include wine/winuser16.h, which is no
  longer included from windows.h
1999-01-01 18:57:33 +00:00
Alex Korobka 01d1a6a03c Cleaned up font encoding handling. Added 'Ignore#' option to the
[fonts] section. Also, file with cached metrics now has the value of
$DISPLAY appended to the filename.
1998-12-26 19:42:02 +00:00
Marcus Meissner 73458b03cd Changed // comments to /* */ so WINE compiles with non-gcc compilers
again.
1998-12-26 12:54:29 +00:00
Patrik Stridvall 151170c437 Moved more things to the X11 driver. 1998-12-26 12:00:43 +00:00
Peter Hunnisett 2d37e9b8cf Added all clipper&3d stubs.
Starting ColorKey support.
Fixed trace statement in DirectDrawCreate as formatting wasn't correct.
Changed "return 0;" to "return DD_OK" or "return S_OK" as appropriate.
Added SurfaceEnum dwFlags.
1998-12-24 16:28:57 +00:00
Marcus Meissner 7a8431ed69 Stubs for IDirect3D(2)::CreateLight and CreateDevice to avoid crashes. 1998-12-24 14:36:26 +00:00
Huw D M Davies 7c77354f83 Implemented PolylineTo. 1998-12-18 15:55:15 +00:00
Paul Quinn 1beaae5f9e Lots of new defines and stubs. 1998-12-15 15:38:36 +00:00
Todd Vierling 5696a09dcc graphics/psdrv forgets to pull in @DLLFLAGS@, and so is compiled non-PIC if
using --enable-dll.
1998-12-15 12:58:18 +00:00
Ian Pilcher cc4e9cb43c Added ability to specify X fonts used for Helv and Tms Rmn typefaces
with DefaultSerif and DefaultSansSerif INI keys.
1998-12-14 16:39:29 +00:00
Stephen Crowley 66267bd87b Save the original video mode before going fullscreen and restore it
when the last DirectDraw_Release is called. Also fix a problem where
the viewport wasn't set to 0,0.
1998-12-14 14:39:56 +00:00
Huw D M Davies 7a31ef2dc7 XLFDs should be well-formed (14 hyphens) to match scalable fonts.
Stop slant field becoming wildcarded too early.
1998-12-14 12:58:10 +00:00
Huw D M Davies 5a50273f5b Implement AbortDoc16, move AbortDoc32 and StartDoc32W to
misc/printdrv.c and fix a few compile warnings.
1998-12-11 10:17:31 +00:00
Alexandre Julliard 0c0e3bebb8 Authors: Francis Beaudet <francis@macadamian.com>, Sylvain St-Germain <sylvain@macadamian.com>, Thuy Nguyen <thuy@macadamian.com>
Lots of new stubs.
1998-12-10 15:49:22 +00:00
Ulrich Weigand 7b57b24fda Adapted to CreateSystemTimer interface change. 1998-12-10 10:47:26 +00:00
Stephen Crowley 330612ea5c Fixed a potential crash if a usable video mode is not detected. 1998-12-10 09:50:35 +00:00
Robert Riggs d22d0718f4 Set window focus in _common_IDirectDraw_SetDisplayMode(). 1998-12-10 09:05:09 +00:00
Huw D M Davies e82199121f Sanity check on font size. 1998-12-10 08:26:23 +00:00
Pablo Saratxaga b13f23e4fc Improved the handling of font encodings. 1998-12-09 14:51:48 +00:00
Alexandre Julliard e9bc26ad27 Tried another kludge for the Xmd.h problem. 1998-12-08 15:06:38 +00:00
Stephen Crowley 399931a293 Added fullscreen DGA support. 1998-12-08 13:10:56 +00:00
Marcus Meissner 4a2e102827 Create X11 palette on DirectDrawSurface::SetPalette, not before (we
might not have an X11 window yet).
1998-12-08 10:00:38 +00:00
Huw D M Davies 7d5fd8dc3a Fix for SetAbortProc16, stub for SetAbortProc32 and tidy up some other
printing functions.
1998-12-08 09:44:30 +00:00
Huw D M Davies fc03455570 Fix X11DRV_ExtTextOut for rotated text if either of lpDx, breakExtra
or charExtra are non-zero.
1998-12-08 09:37:49 +00:00
Huw D M Davies 2d617be099 Replace GRAPH_ functions with Win SDK equivalents. 1998-12-08 09:14:09 +00:00
Ulrich Weigand 94632fcd68 Bugfix: -microsoft-symbol encoding was not recognized. 1998-12-07 10:36:56 +00:00
Huw D M Davies d6a91b7a74 Move OEM resources to the x11drv. 1998-12-02 10:29:04 +00:00
Lionel Ulmer 581a8edd74 - added definition of DirectDrawCreateClipper.
- more versatile support of surfaces / better surface description support.
1998-12-01 09:30:22 +00:00
Stephen Crowley 8e06d90e4d Added a new cmdline switch to disable XF86 DGA Extensions, -nodga. 1998-11-27 15:12:33 +00:00
Uwe Bonnes 2d65536bc4 Added stubs for Startpage and EndPage. 1998-11-26 15:20:55 +00:00
Huw D M Davies 9c68faadab Remove X_DC_INFO from DC and make it behave like any other PDEVICE. 1998-11-25 12:36:03 +00:00
Eric Warnke 3036c985bd Don't match against Symbol or Nil fonts. 1998-11-24 20:43:06 +00:00
Huw D M Davies 2bd3acf7c8 Moved DC_SetupGC functions to graphics/x11drv/graphics.c. 1998-11-22 17:45:06 +00:00
Andreas Mohr 1e360ebbf9 Added Win16 implementation for GetRegionData(). 1998-11-22 16:54:26 +00:00
Marcus Meissner fa434ffaf2 BltFast: Honor lPitch, Lock/Unlock surfaces (xlib needs unlock to draw). 1998-11-22 13:28:48 +00:00
Huw D M Davies 9650864743 Takes print spooler functions out of win16drv.
Allows the PostScript driver to go into libwine.
1998-11-22 12:55:24 +00:00
Stephen Crowley 8320d678cc Fixed the DGA detection code in ddraw. You don't need root access,
having r+w access to /dev/mem is enough.
1998-11-22 12:53:54 +00:00
Marcus Meissner 1cd7056636 DirectDraw status updated.
Use cooperative window for drawing in xlib implementation if possible.
Slightly restructured IDirectDrawSurface::Blt so it doesn't crash.
1998-11-22 12:33:29 +00:00
Lionel Ulmer 16704da018 Some corrections to the handling of off-screen buffers.
Correction to the EnumDisplayModes function.
Added XShm support to Xlib driver.
Open a DirectX window even when using the DGA driver.
1998-11-15 16:43:32 +00:00
Huw D M Davies 980992a3ca Should get win16drv AbortProc working. Hopefully. 1998-11-14 18:28:50 +00:00
Marcus Meissner 41d1529bd5 Do not enumerate D3D devices we can't handle anyway.
Return bitmasks for hi/truecolor depths in EnumDisplayModes.
1998-11-14 17:10:13 +00:00
Lionel Ulmer 7d70fe5acf Corrected bug in DirectDrawSurface creation and handling for driver
based upon Xlilb.
1998-11-14 11:26:08 +00:00
Uwe Bonnes e2ed0c92b1 Added a stub for StartDocA and EndDoc. 1998-11-08 15:38:32 +00:00
Ove Kaaven 194cfed110 Simulate the VGA vertical refresh. 1998-11-08 15:06:31 +00:00
Lionel Ulmer 5e144868d7 Added support of source and destination rectangles in Blit function. 1998-11-08 14:27:30 +00:00
Huw D M Davies b76462c91d Stop X11DRV_RoundRect calling XDrawArc with -ve width/height params
which it did if either ellipse dimension was zero.
1998-11-07 12:42:54 +00:00
Huw D M Davies 904e20fdd0 Optimize RoundRect32 to call Rectangle32 if either ellipse dimension
is zero.
1998-11-07 12:41:49 +00:00
Huw D M Davies 91d1608a59 Moved X11 DIB stuff to x11drv. 1998-11-06 11:03:00 +00:00
Jesper Skov 5c3e457b16 egcs 'ambiguous else' warnings fixes. 1998-11-01 19:27:22 +00:00
Huw D M Davies 82617362a5 More bitmap fixes. 1998-11-01 16:35:42 +00:00
Huw D M Davies 84dd9feb05 A couple of small fixes to my bitmap patch. 1998-11-01 15:13:53 +00:00
Huw D M Davies 6fafe9e07e Implement SEGPTR conversion for STARTDOC in Escape32(). 1998-11-01 14:06:04 +00:00
Huw D M Davies bcad255cb4 Print a message if the PostScript driver can't find a PPD file. 1998-11-01 13:02:27 +00:00
Ove Kaaven 1499a845ff Moved VGA-emulating DirectX code from dispdib.c to a separate
file. Made it use a system timer and trap I/O accesses to the VGA
DAC registers to accommodate DisplayDib-using programs that try to
access the VGA hardware directly.
1998-11-01 12:51:47 +00:00
François Gouget 241c730d54 Fixed some LPPOINT/LPSIZE mismatches and some missing "const" in the
headers prototypes.
1998-10-28 10:47:09 +00:00
Huw D M Davies 87f87bf61c Added pBitmapBits and pCreateBitmap to the GDI function table and
moved the X11 dependent stuff out of objects/bitmap.c into x11drv.
1998-10-28 09:53:53 +00:00
Marcus Meissner 23e5ab1ebc Removed no longer necessary commented out code, destroy old window
when SetDisplayMode is called again, EnumDisplayModes now returns
all possible modes (using a static list).
1998-10-26 10:42:54 +00:00