jdb@reef.cis.ufl.edu (Brian K. W. Hook) (03/07/91)
I am an MS-DOS programmer working in VR (Virtual Reality) research and have been contemplating doing some work in VR under Windows 3.0. However, I am not a Windows programmer so I am not very familiar with the suitability of its functions. If someone could please answer these questions via E-MAIL(!) I would appreciate the help deciding if it is right for my purposes. 1. Does Windows support joystick (at all) and mouse and joystick simultaneously? 2. Can I write a 8+ bit ONLY application under Windows, or will it dither to lower (4-bit) resolution? 3. I understand that I can write a lot of my functions using far calls and store them in a separate file/library, much like a shared lib under UNIX or VMS (I believe they are called DLLs). Please tell me about these. 4. Does Windows supply me with information on determining the current hardware (type of processor, video adapter, etc.)? Most of the tricks I have heard of determining clock speed and chip type won't work under enhanced mode windows. 5. What is the maximum color resolution of Windows? Will it do 16 or 24-bit color? 6. How good is Windows in doing frame animation? 7. How good is Windows in doing high speed (19,200bps) asynch communications over COM1 and COM2 to another Windows machine? 8. Does Windows automatically take advantage of a math coprocessor? This is all to do a real time, rendered architecture design tool that will allow multiple users to be "inside" a structure of some type and do a complete walk through. I do not want to go to a system that is proprietary since many of the Windows niceties would be very helpful, I daresay REQUIRED, for what I am doing (multiple instances of the same program, the help engine, etc.).... ANY help would be appreciated. Brian
rdippold@maui.qualcomm.com (Ron Dippold) (03/08/91)
In article <27331@uflorida.cis.ufl.EDU> jdb@reef.cis.ufl.edu (Brian K. W. Hook) writes: >1. Does Windows support joystick (at all) and mouse and joystick >simultaneously? No built in joystick support. No problem with you accessing the joystick, though. >2. Can I write a 8+ bit ONLY application under Windows, or will it dither >to lower (4-bit) resolution? If your video driver/card can handle 8 bits it will do the true 8 bits, other- wise it will dither. >3. I understand that I can write a lot of my functions using far calls and >store them in a separate file/library, much like a shared lib under UNIX or >VMS (I believe they are called DLLs). Please tell me about these. It's a Dynamic Link Library. All you do is tell the compiler to link some of your modules together into one of these. When you compile your program you tell it about the DLL, and whenever it needs one of the functions it will load it from there. >4. Does Windows supply me with information on determining the current >hardware (type of processor, video adapter, etc.)? Most of the tricks I >have heard of determining clock speed and chip type won't work under >enhanced mode windows. No idea. It will tell you colors, resolution of the current video driver. >5. What is the maximum color resolution of Windows? Will it do 16 or >24-bit color? It will do 24-bit color. >6. How good is Windows in doing frame animation? It sucks. Horribly. You can't do page flipping or any other reasonable way of animation. >7. How good is Windows in doing high speed (19,200bps) asynch >communications over COM1 and COM2 to another Windows machine? It's even worse. You will need something like the Hayes ESP card to get reliable transfers at that rate. >8. Does Windows automatically take advantage of a math coprocessor? It doesn't need to, it doesn't do any floating point math. Your program can use it with no problem, however.
bcw@rti.rti.org (Bruce Wright) (03/08/91)
In article <1991Mar8.014410.22510@qualcomm.com>, rdippold@maui.qualcomm.com (Ron Dippold) writes: > In article <27331@uflorida.cis.ufl.EDU> jdb@reef.cis.ufl.edu (Brian K. W. Hook) writes: > >4. Does Windows supply me with information on determining the current > >hardware (type of processor, video adapter, etc.)? Most of the tricks I > >have heard of determining clock speed and chip type won't work under > >enhanced mode windows. > > No idea. It will tell you colors, resolution of the current video driver. The GetWinFlags routine will return whether you have an 80x87, which processor you are running on (8086/186/286/386/486), whether you are running in 386 mode, standard mode, or real mode, and so forth. It doesn't return the clock speed. I don't know if there's a standard way to get the hardware clock speed under Windows - it's probably an undocumented interface if there is. As I mentioned to someone else interested in animation, Windows doesn't really provide very good support for animation, or for 3-d viewing for that matter. Doing bitblt's is sufficient for some simple levels of animation, and may be sufficient for your purposes given a sufficiently fast machine and how much jerkyness you can stand. Good luck - Bruce C. Wright
johnm@spudge.UUCP (John Munsch) (03/08/91)
In article <1991Mar8.014410.22510@qualcomm.com> rdippold@maui.qualcomm.com (Ron Dippold) writes: >In article <27331@uflorida.cis.ufl.EDU> jdb@reef.cis.ufl.edu (Brian K. W. Hook) writes: >>1. Does Windows support joystick (at all) and mouse and joystick >>simultaneously? > >No built in joystick support. No problem with you accessing the joystick, >though. Multimedia Windows adds joystick support. Consult the article on Multimedia Windows in the latest issue of Microsoft Systems Journal for more information. >>2. Can I write a 8+ bit ONLY application under Windows, or will it dither >>to lower (4-bit) resolution? >If your video driver/card can handle 8 bits it will do the true 8 bits, other- >wise it will dither. Windows 3.0 is capable of dithering ONLY solid areas of color for you. If you blit 8 bit data to a 4 bit display driver you will not get a dithered version of the bitmap, you will get a version of the bitmap with weird colors. Any bitmap dithering must be done by you, if you want any. If you don't then Windows will happily let you take advantage of 8, 16, or 24 bit display adapters. >>6. How good is Windows in doing frame animation? >It sucks. Horribly. You can't do page flipping or any other reasonable >way of animation. If you had a video card with a high speed blitter and a video driver that took advantage of it, it wouldn't be so bad. It wouldn't be as smooth as animation on an Amiga because ther are no provisions for double buffering, but it wouldn't be terrible. Without a blitter though, it sucks louder than a Hoover. Believe me, I've done it. John Munsch
bcw@rti.rti.org (Bruce Wright) (03/11/91)
In article <28223@spudge.UUCP>, johnm@spudge.UUCP (John Munsch) writes: > In article <1991Mar8.014410.22510@qualcomm.com> rdippold@maui.qualcomm.com (Ron Dippold) writes: > >In article <27331@uflorida.cis.ufl.EDU> jdb@reef.cis.ufl.edu (Brian K. W. Hook) writes: > >>6. How good is Windows in doing frame animation? > >It sucks. Horribly. You can't do page flipping or any other reasonable > >way of animation. > If you had a video card with a high speed blitter and a video driver that > took advantage of it, it wouldn't be so bad. It wouldn't be as smooth as > animation on an Amiga because ther are no provisions for double buffering, > but it wouldn't be terrible. Without a blitter though, it sucks louder > than a Hoover. Believe me, I've done it. It sort of depends on what kind of animation you want. If you want full-screen real-time animation, maybe even with perspective a la Flight Simulator, this comment is probably justified. If you would be satisfied with a cartoon-like animation of small object(s) moving against a static background, the bitblt operation is sufficient, though it might be a bit jerky on 4.77 MHz 8088 machines or even on slow 286 machines, depending on how big the objects are and how many of them there are. If you just want to show occasional movement of the observer in a static 3-d environment, it may be barely adequate. On true full-screen animation you might even be able to see the new bitmap roll down the screen on top of the old bitmap, especially on a slow machine (probably not on a fast 386 though). The multimedia version of Windows (and presumably Windows V3.1 when it finally comes out) is supposed to have a more efficient bitblt algorithm that takes advantage of 286 and 386 instructions if it is running on one of those machines. I don't know if it would make enough difference to make true animation reasonable, but Microsoft themselves say that the first release of the multimedia version will concentrate on sound rather than on video - waiting for the video hardware to catch up with things like hardware blitters. Bruce C. Wright