Changeset 168 for sbliveos2/trunk
- Timestamp:
- Mar 23, 2001, 6:14:13 PM (24 years ago)
- Location:
- sbliveos2/trunk/drv16
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
sbliveos2/trunk/drv16/dwavestrm.cpp
r167 r168 33 33 #include "malloc.h" 34 34 35 36 35 void cdecl HookHandler(ULONG ulSysFileNum) 37 36 { … … 57 56 DevHelp_VMFree((LIN)temp->pBuffptr); 58 57 DevHelp_VMUnLock(temp->linLock); 59 free(temp->pLock);60 58 delete temp; 59 60 temp = (PSTREAMBUFFEREX)pStream->qhReturn.PopHead(); 61 61 } 62 62 return; … … 67 67 { 68 68 PSTREAMBUFFEREX pStreamBuf; 69 LIN linAddr;70 PULONG pLock;71 ULONG PageListCount;72 LIN linLock;73 int rc;69 LIN linAddr; 70 PULONG pLock; 71 ULONG PageListCount; 72 LIN linLock; 73 int rc; 74 74 75 p Lock = (PULONG)malloc(12);76 if(p Lock== NULL) {75 pStreamBuf = new STREAMBUFFEREX(uLength, (PSTREAMBUF)0); 76 if(pStreamBuf == NULL) { 77 77 DebugInt3(); 78 78 return 1; 79 79 } 80 80 81 pLock = &pStreamBuf->lock[0]; 82 81 83 rc = DevHelp_VirtToLin(SELECTOROF(pLock), OFFSETOF(pLock), &linLock); 82 84 if(rc) { 83 85 DebugInt3(); 86 delete pStreamBuf; 84 87 return rc; 85 88 } … … 88 91 if(rc) { 89 92 DebugInt3(); 90 DevHelp_VMFree(linAddr);93 delete pStreamBuf; 91 94 return rc; 92 95 } … … 95 98 if(rc) { 96 99 DebugInt3(); 100 DevHelp_VMUnLock(linLock); 101 delete pStreamBuf; 97 102 return rc; 98 103 } 99 100 pStreamBuf = new STREAMBUFFEREX(uLength, (PSTREAMBUF)linAddr, linLock, pLock);104 pStreamBuf->pBuffptr = (PSTREAMBUF)linAddr; 105 pStreamBuf->linLock = linLock; 101 106 102 107 return WAVESTREAM::Write((PSTREAMBUFFER)pStreamBuf); … … 111 116 if(ulStreamState == STREAM_STREAMING) {//means we're called during an interrupt 112 117 qhReturn.PushOnTail((PQUEUEELEMENT)temp); 113 DevHelp_ArmCtxHook( hCtxHook, ulSysFileNum);118 DevHelp_ArmCtxHook(ulSysFileNum, hCtxHook); 114 119 } 115 120 else { 116 121 DevHelp_VMFree((LIN)temp->pBuffptr); 117 122 DevHelp_VMUnLock(temp->linLock); 118 free(temp->pLock);119 123 delete temp; 120 124 } -
sbliveos2/trunk/drv16/header.c
r142 r168 34 34 35 35 DEV_HEADER header[2] = { 36 { -1,36 { sizeof(DEV_HEADER), 37 37 DA_CHAR | DA_IDCSET | DA_NEEDOPEN | DA_USESCAP, 38 38 (PFNENTRY) StrategyHandler, … … 41 41 0,0, 42 42 DC_INITCPLT | DC_IOCTL2 | DC_32BIT 43 }, 44 { -1, 45 DA_CHAR | DA_IDCSET | DA_NEEDOPEN | DA_USESCAP, 46 (PFNENTRY) StrategyHandler2, 47 (PFNENTRY) 0, 48 {'D','A','U','D','I','O','1','$'}, 49 0,0, 50 DC_INITCPLT | DC_IOCTL2 | DC_32BIT 43 51 } 44 52 }; -
sbliveos2/trunk/drv16/strmbuff.hpp
r167 r168 48 48 { 49 49 public: 50 STREAMBUFFEREX(ULONG bufsize, PSTREAMBUF bufptr , ULONG linLock, PULONG pLock):50 STREAMBUFFEREX(ULONG bufsize, PSTREAMBUF bufptr): 51 51 STREAMBUFFER(bufsize, bufptr), fDone(FALSE) 52 52 { 53 this->linLock = linLock;54 this->pLock = pLock;55 53 }; 56 54 55 ULONG lock[3]; //lock handle 57 56 ULONG linLock; 58 PULONG pLock;59 57 BOOL fDone; 60 58 -
sbliveos2/trunk/drv16/wavestrm.cpp
r166 r168 326 326 { 327 327 qhInProcess.PushOnTail((PQUEUEELEMENT)pStreamBuf); 328 dprintf2(("WAVESTREAM::Write: Push on tail %lx % d", ((PSTREAMBUFFER)qhInProcess.Head())->pBuffptr, ((PSTREAMBUFFER)qhInProcess.Head())->ulBuffsz));328 dprintf2(("WAVESTREAM::Write: Push on tail %lx %ld", ((PSTREAMBUFFER)qhInProcess.Tail())->pBuffptr, ((PSTREAMBUFFER)qhInProcess.Tail())->ulBuffsz)); 329 329 if(fUnderrun) { 330 330 fUnderrun = FALSE;
Note:
See TracChangeset
for help on using the changeset viewer.