home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / os / os2 / programm / 4745 < prev    next >
Encoding:
Internet Message Format  |  1992-09-04  |  1.5 KB

  1. Path: sparky!uunet!stanford.edu!rutgers!cmcl2!panix!rjo
  2. From: rjo@panix.com (Robert Olivier)
  3. Newsgroups: comp.os.os2.programmer
  4. Subject: Virtual Device Driver Problem
  5. Keywords: Virtual Device Driver
  6. Message-ID: <1992Sep4.155827.21814@panix.com>
  7. Date: 4 Sep 92 15:58:27 GMT
  8. Organization: PANIX Public Access Unix, NYC
  9. Lines: 31
  10.  
  11. I'm working on a VDD/PDD pair that will pass IRQ5 interrupts into
  12. an MS-DOS session for use with a Dialogic DTI board.
  13.  
  14. Background:
  15.  
  16. OS/2 provides a VDD with a few virtual dev help functions to simulate
  17. hardware interrupts to DOS sessions.  Two key functions are VDHOpenVIRQ
  18. and VDHSetVIRR.  The former returns a handle to your virtual interrupt
  19. which must be used in the call to VDHSetVIRR.  
  20.  
  21. The problem that I am having is this: If I include any reference to the
  22. symbol VDHOpenVIRQ in my code, even though it is never executed, OS/2
  23. halts the system with an internal processing error.  The kernel debugger
  24. comes up with the cs:eip poining to the address following a call to some
  25. panic function.  If I tell the debugger to continue (go) then the system
  26. continues initialization and unloads my VDD. However if I run the retail
  27. kernel, the system is stopped dead in it's tracks.
  28.  
  29. I believe that the virtual dev help functions are linked in at runtime
  30. so is there some sort of lock on that function?  I have never read about
  31. locking a function in a DLL and I really don't know what to make of this
  32. problem.
  33.  
  34. Any device driver writers out there have an idea?
  35.  
  36. rjo@panix.com
  37.  
  38. -- 
  39. Robert J. Olivier
  40.  
  41. rjo@panix.com
  42.