|
|
1.1 ! root 1: // sbbsexec.h - include file for SBBSEXEC ! 2: ! 3: /* Synchronet Windows 9X FOSSIL driver (requires VtoolsD C++ framework) */ ! 4: ! 5: /* $Id: sbbsexec.h,v 1.2 2001/05/02 01:58:31 rswindell Exp $ */ ! 6: ! 7: /**************************************************************************** ! 8: * @format.tab-size 4 (Plain Text/Source Code File Header) * ! 9: * @format.use-tabs true (see http://www.synchro.net/ptsc_hdr.html) * ! 10: * * ! 11: * Copyright 2000 Rob Swindell - http://www.synchro.net/copyright.html * ! 12: * * ! 13: * This program is free software; you can redistribute it and/or * ! 14: * modify it under the terms of the GNU General Public License * ! 15: * as published by the Free Software Foundation; either version 2 * ! 16: * of the License, or (at your option) any later version. * ! 17: * See the GNU General Public License for more details: gpl.txt or * ! 18: * http://www.fsf.org/copyleft/gpl.html * ! 19: * * ! 20: * Anonymous FTP access to the most recent released source is available at * ! 21: * ftp://vert.synchro.net, ftp://cvs.synchro.net and ftp://ftp.synchro.net * ! 22: * * ! 23: * Anonymous CVS access to the development source and modification history * ! 24: * is available at cvs.synchro.net:/cvsroot/sbbs, example: * ! 25: * cvs -d :pserver:[email protected]:/cvsroot/sbbs login * ! 26: * (just hit return, no password is necessary) * ! 27: * cvs -d :pserver:[email protected]:/cvsroot/sbbs checkout src * ! 28: * * ! 29: * For Synchronet coding style and modification guidelines, see * ! 30: * http://www.synchro.net/source.html * ! 31: * * ! 32: * You are encouraged to submit any modifications (preferably in Unix diff * ! 33: * format) via e-mail to [email protected] * ! 34: * * ! 35: * Note: If this box doesn't appear square, then you need to fix your tabs. * ! 36: ****************************************************************************/ ! 37: ! 38: //////////////////////////////////////////////////////////////////////// ! 39: // Basic defintions for VToolsD framework ! 40: ! 41: #include <vtoolscp.h> ! 42: #define DEVICE_CLASS SBBSExec ! 43: ! 44: #define SBBSExec_DeviceID UNDEFINED_DEVICE_ID ! 45: #define SBBSExec_Major 1 ! 46: #define SBBSExec_Minor 1 ! 47: #define SBBSExec_Init_Order UNDEFINED_INIT_ORDER ! 48: ! 49: #include "..\execvxd.h" // sbbsexec_start_t definition ! 50: #include "..\ringbuf.h" // RingBuf/RingBuffer ! 51: ! 52: //////////////////////////////////////////////////////////////////////// ! 53: ! 54: class SBBSExec : public VDevice ! 55: { ! 56: public: ! 57: virtual BOOL OnDeviceInit(VMHANDLE hSysVM, PCHAR pszCmdTail); ! 58: virtual BOOL OnSysDynamicDeviceInit(); ! 59: virtual void OnSystemExit(VMHANDLE hSysVM); ! 60: virtual BOOL OnSysDynamicDeviceExit(); ! 61: virtual BOOL OnCreateVM(VMHANDLE hVM); ! 62: virtual DWORD OnW32DeviceIoControl(PIOCTLPARAMS pIOCTL); ! 63: void UnhookInts(void); ! 64: // Variables ! 65: class SBBSExecInt29* pInt29; ! 66: class SBBSExecInt21* pInt21; ! 67: class SBBSExecInt16* pInt16; ! 68: class SBBSExecInt14* pInt14; ! 69: class SBBSExecInt10* pInt10; ! 70: }; ! 71: ! 72: ! 73: class SBBSExecInt29 : public VPreChainV86Int ! 74: { ! 75: public: ! 76: SBBSExecInt29(); ! 77: virtual BOOL handler(VMHANDLE, CLIENT_STRUCT*, DWORD); ! 78: }; ! 79: ! 80: class SBBSExecInt21 : public VPreChainV86Int ! 81: { ! 82: public: ! 83: SBBSExecInt21(); ! 84: virtual BOOL handler(VMHANDLE, CLIENT_STRUCT*, DWORD); ! 85: }; ! 86: ! 87: class SBBSExecInt16 : public VPreChainV86Int ! 88: { ! 89: public: ! 90: SBBSExecInt16(); ! 91: virtual BOOL handler(VMHANDLE, CLIENT_STRUCT*, DWORD); ! 92: }; ! 93: ! 94: class SBBSExecInt14 : public VPreChainV86Int ! 95: { ! 96: public: ! 97: SBBSExecInt14(); ! 98: virtual BOOL handler(VMHANDLE, CLIENT_STRUCT*, DWORD); ! 99: }; ! 100: ! 101: class SBBSExecInt10 : public VPreChainV86Int ! 102: { ! 103: public: ! 104: SBBSExecInt10(); ! 105: virtual BOOL handler(VMHANDLE, CLIENT_STRUCT*, DWORD); ! 106: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.