X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Fdrv%2Fvterm.h;h=9cfb2b9b298a5b4b4e3514ce9b537e6c7705df2c;hb=a929736eddbc438cac503d64f999f7dc3772d7c2;hp=cd37ebd914408c35c42455fa1e7fd3dab911f20c;hpb=51ab5f489bc356940c95cc936fd0508e8f07ea97;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/drv/vterm.h b/KernelLand/Kernel/drv/vterm.h index cd37ebd9..9cfb2b9b 100644 --- a/KernelLand/Kernel/drv/vterm.h +++ b/KernelLand/Kernel/drv/vterm.h @@ -64,6 +64,9 @@ struct sVTerm short ScrollTop; //!< Top of scrolling region (smallest) short ScrollHeight; //!< Length of scrolling region + char EscapeCodeCache[16]; + size_t EscapeCodeLen; + int VideoCursorX; int VideoCursorY; @@ -72,8 +75,11 @@ struct sVTerm int InputRead; //!< Input buffer read position int InputWrite; //!< Input buffer write position char InputBuffer[MAX_INPUT_CHARS8]; + Uint32 RawScancode; //!< last raw scancode recieved // tSemaphore InputSemaphore; + tPGID OwningProcessGroup; //!< The process group that owns the terminal + Uint32 *Buffer; // TODO: Do I need to keep this about? @@ -109,7 +115,7 @@ extern void VT_InitInput(void); extern void VT_KBCallBack(Uint32 Codepoint); // --- VT100 Emulation --- extern void VT_int_ParseEscape_StandardLarge(tVTerm *Term, char CmdChar, int argc, int *args); -extern int VT_int_ParseEscape(tVTerm *Term, const char *Buffer); +extern int VT_int_ParseEscape(tVTerm *Term, const char *Buffer, size_t Bytes); // --- Terminal Buffer --- extern void VT_int_PutString(tVTerm *Term, const Uint8 *Buffer, Uint Count); extern void VT_int_PutChar(tVTerm *Term, Uint32 Ch);