August 14, 2001 TSR and stack | ||||
---|---|---|---|---|
| ||||
Hello How I have to change stack between a TSR and interrupt program? I try to use this code... void interrupt newTimer() { .... (*oldTimer)(); if (running == 0) { running = 1; disable(); originalSP = _SP; originalSS = _SS; _SP = myStack; _SS = mySS; enable(); ... .... disable(); _SP = originalSP; _SS = originalSS; enable(); running = 0; } } but the sc compiler show the error message C:\>sc c:\projekty\dos\pokus1.cpp -ms -cpp -d intss = _SS; ^ c:\projekty\dos\pokus1.cpp(137) : Error: undefined identifier '_SS' --- errorlevel 1 C:\> Thanks Zbynek |
August 14, 2001 Re: TSR and stack | ||||
---|---|---|---|---|
| ||||
Posted in reply to Zbynìk Jaro¹ | You'll need to resort to inline assembler: _asm { mov AX,originalSS mov SS,AX } Zbynìk Jaro¹ wrote in message <9lao6g$1itc$1@digitaldaemon.com>... >Hello > >How I have to change stack between a TSR and interrupt program? > >I try to use this code... > >void interrupt newTimer() >{ >.... >(*oldTimer)(); >if (running == 0) >{ > running = 1; > disable(); > originalSP = _SP; > originalSS = _SS; > _SP = myStack; > _SS = mySS; > enable(); >... >.... > disable(); > _SP = originalSP; > _SS = originalSS; > enable(); > running = 0; >} >} > >but the sc compiler show the error message > >C:\>sc c:\projekty\dos\pokus1.cpp -ms -cpp -d > intss = _SS; > ^ >c:\projekty\dos\pokus1.cpp(137) : Error: undefined identifier '_SS' >--- errorlevel 1 >C:\> > >Thanks Zbynek > > > |
Copyright © 1999-2021 by the D Language Foundation