Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| en:docs:tpro [2025/02/08 05:48] – prokushev | en:docs:tpro [2025/02/08 13:36] (current) – prokushev | ||
|---|---|---|---|
| Line 95: | Line 95: | ||
| Returns a word. High byte has starting scan line, low byte has ending. | Returns a word. High byte has starting scan line, low byte has ending. | ||
| - | function CursorStartLine : Byte; | + | ===== CursorStartLine ===== | 
| - | {-Returns the starting scan line of the cursor} | + | |
| + | <code pascal>function CursorStartLine : Byte;</ | ||
| - | function CursorEndLine : Byte; | + | Returns the starting | 
| - | {-Returns the ending | + | |
| - | procedure SetCursorSize(Startline, | + | ===== CursorEndLine ===== | 
| - | {-Sets the cursor' | + | |
| - | procedure NormalCursor; | + | <code pascal> | 
| - | {-Set normal scan lines for cursor based on current video mode} | + | |
| - | procedure FatCursor; | + | Returns the ending | 
| - | {-Set larger | + | |
| - | procedure BlockCursor; | + | ===== SetCursorSize ===== | 
| - | {-Set scan lines for a block cursor} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Hide the cursor} | + | |
| - | function ReadCharAtCursor : Char; | + | Sets the cursor's starting and ending scan lines. | 
| - | {-Returns character at the current | + | |
| - | function ReadAttrAtCursor : Byte; | + | ===== NormalCursor ===== | 
| - | {-Returns attribute at the current cursor location on the selected page.} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Return the current position and size of the cursor} | + | |
| - | procedure RestoreCursorState(XY, | + | Set normal scan lines for cursor | 
| - | {-Reset the cursor | + | |
| - | procedure FastWriteWindow(St : string; Row, Col, Attr : Byte); | + | ===== FatCursor ===== | 
| - | {-Write a string using window-relative coordinates} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Write St at Row,Col without changing the underlying video attribute.} | + | |
| - | procedure FastTextWindow(St : string; Row, Col : Byte); | + | Set larger scan lines for cursor based on current | 
| - | {-Write St at window Row,Col without changing the underlying | + | |
| - | procedure FastVert(St : string; Row, Col, Attr : Byte); | + | ===== BlockCursor ===== | 
| - | {-Write St vertically at Row,Col in Attr (video attribute)} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Write a string vertically using window-relative coordinates} | + | |
| - | procedure FastFill(Number : Word; Ch : Char; Row, Col, Attr : Byte); | + | Set scan lines for a block cursor | 
| - | {-Fill Number chs at Row,Col in Attr (video attribute) without snow} | + | |
| - | procedure FastFillWindow(Number : Word; Ch : Char; Row, Col, Attr : Byte); | + | ===== HiddenCursor ===== | 
| - | {-Fill Number chs at window Row,Col in Attr (video attribute) without snow} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Write St centered on window Row in Attr (video attribute) without snow} | + | |
| - | procedure FastFlush(St : string; Row, Attr : Byte); | + | Hide the cursor | 
| - | {-Write St flush right on window Row in Attr (video attribute) without snow} | + | |
| - | procedure FastRead(Number, | + | ===== ReadCharAtCursor ===== | 
| - | {-Read Number characters from the screen into St starting at Row,Col} | + | |
| - | procedure FastReadWindow(Number, | + | <code pascal> | 
| - | {-Read Number characters from the screen into St starting at window Row,Col} | + | |
| - | procedure ReadAttribute(Number, | + | Returns character | 
| - | {-Read Number attributes from the screen into St starting | + | |
| - | procedure ReadAttributeWindow(Number, | + | ===== ReadAttrAtCursor ===== | 
| - | {-Read Number attributes from the screen into St starting at window Row,Col} | + | |
| - | procedure WriteAttribute(St : String; Row, Col : Byte); | + | <code pascal> | 
| - | {-Write string of attributes St at Row,Col without changing characters} | + | |
| - | procedure WriteAttributeWindow(St : String; Row, Col : Byte); | + | Returns attribute | 
| - | {-Write string of attributes St at window Row,Col without changing characters} | + | |
| - | procedure ChangeAttribute(Number : Word; Row, Col, Attr : Byte); | + | ===== GetCursorState ===== | 
| - | {-Change Number video attributes to Attr starting at Row,Col} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Change Number video attributes to Attr starting at window Row,Col} | + | |
| - | procedure MoveScreen(var Source, Dest; Length : Word); | + | Return the current position and size of the cursor | 
| - | {-Move Length words from Source to Dest without snow} | + | |
| - | procedure FlexWrite(St : string; Row, Col : Byte; var FAttrs : FlexAttrs); | + | ===== RestoreCursorState ===== | 
| - | {-Write St at Row,Col with flexible color handling} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Write a string flexibly using window-relative coordinates.} | + | |
| - | function SaveWindow(XLow, | + | Reset the cursor to a position | 
| - | var Covers : Pointer) : Boolean; | + | |
| - | {-Allocate buffer space if requested | + | |
| - | procedure RestoreWindow(XLow, | + | ===== FastWriteWindow ===== | 
| - | Deallocate : Boolean; var Covers : Pointer); | + | |
| - | {-Restore screen contents and deallocate buffer space if requested} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Store the window coordinates for the active window} | + | |
| - | procedure RestoreWindowCoordinates(WC : WindowCoordinates); | + | Write a string using window-relative | 
| - | {-Restore previously saved window coordinates} | + | |
| - | function PackWindow(XLow, | + | ===== FastText ===== | 
| - | {-Return a pointer to a packed window, or nil if not enough memory} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Display the packed window pointed to by PWP} | + | |
| - | procedure DispPackedWindowAt(PWP : PackedWindowPtr; | + | Write St at Row, | 
| - | {-Display the packed window pointed to by PWP at Row,Col. If necessary, | + | |
| - | the coordinates are adjusted to allow it to fit on the screen.} | + | |
| - | procedure MapPackedWindowColors(PWP : PackedWindowPtr); | + | ===== FastTextWindow ===== | 
| - | {-Map the colors in a packed window for improved appearance on mono/ | + | |
| - |  | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Dispose of a packed window, setting PWP to nil on exit} | + | |
| - | procedure WritePackedWindow(PWP : PackedWindowPtr; | + | Write St at window | 
| - | {-Store the packed | + | |
| - | function ReadPackedWindow(FName : string) : PackedWindowPtr; | + | ===== FastVert ===== | 
| - | {-Read the packed window stored in FName into memory} | + | |
| - | function CreateLibrary(var F : file; Name : string; | + | <code pascal> | 
| - |  | + | |
| - | {-Create a library with the specified # of directory entries} | + | |
| - | function OpenLibrary(var F : file; Name : string) : DirectoryPtr; | + | Write St vertically at Row,Col in Attr (video attribute) | 
| - | {-Open the specified library and return a pointer to its directory} | + | |
| - | procedure CloseLibrary(var F : file; var DP : DirectoryPtr); | + | ===== FastVertWindow ===== | 
| - | {-Close library F and deallocate its directory} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Pack a library to remove deleted entries.} | + | |
| - | procedure AddWindowToLibrary(PWP : PackedWindowPtr; | + | Write a string vertically using window-relative coordinates | 
| - | DP : DirectoryPtr; | + | |
| - | {-Add a packed | + | |
| - | function ReadWindowFromLibrary(var F : file; DP : DirectoryPtr; | + | ===== FastFill ===== | 
| - |  | + | |
| - | {-Read a packed window from a library} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | WinName | + | |
| - | {-Delete a packed window from the specified library} | + | |
| - | function MapColor(c : Byte) : Byte; | + | Fill Number chs at Row,Col in Attr (video attribute) without snow | 
| - | {-Map a video attribute | + | |
| - | procedure SetBlink(Status : Boolean); | + | ===== FastFillWindow ===== | 
| - | {-Enable text mode attribute blinking if On is True} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Set border to background color if card type and mode allow} | + | |
| - | function Font8x8Selected : Boolean; | + | Fill Number chs at window Row, | 
| - | {-Return True if EGA or VGA is active and in 8x8 font} | + | |
| - | procedure SelectFont8x8(Status : Boolean); | + | ===== FastCenter ===== | 
| - | {-Toggle 8x8 font on or off} | + | |
| - | function HercPresent | + | <code pascal> | 
| - | {-Return true if a Hercules graphics card is present} | + | |
| - | procedure SwitchInColorCard(ColorOn : Boolean); | + | Write St centered on window Row in Attr (video attribute) without snow | 
| - | {-Activate or deactivate colors on a Hercules InColor card} | + | |
| - | function HercGraphicsMode : Boolean; | + | ===== FastFlush ===== | 
| - | {-Return True if a Hercules card is in graphics mode} | + | |
| - | function HercModeTestWorks | + | <code pascal> | 
| - | {-Return True if HercGraphicsMode will work} | + | |
| - | procedure SetHercMode(GraphMode : Boolean; GraphPage : Byte); | + | Write St flush right on window Row in Attr (video attribute) without snow | 
| - | {-Set Hercules card to graphics mode or text mode, and activate specified | + | |
| - |  | + | |
| - | function ReadKeyWord : Word; | + | ===== FastRead ===== | 
| - | {-Waits for keypress, then returns scan and character codes together} | + | |
| - | function CheckKbd(var KeyCode | + | <code pascal> | 
| - | {-Returns True (and the key codes) if a keystroke is waiting} | + | |
| - | function KbdFlags : Byte; | + | Read Number characters from the screen into St starting at Row,Col | 
| - | {-Returns keyboard status flags as a bit-coded byte} | + | |
| - | procedure StuffKey(W : Word); | + | ===== FastReadWindow ===== | 
| - | {-Stuff one key into the keyboard buffer} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Stuff the contents of S into the keyboard buffer} | + | |
| - | procedure ReInitCrt; | + | Read Number characters from the screen into St starting at window Row,Col | 
| - | {-Reinitialize CRT unit's internal variables. For TSR's or programs with | + | |
| - | DOS shells. May reset: CurrentMode, ScreenWidth, | + | |
| - |  | + | |
| - | {$ifdef WIN32} | + | ===== ReadAttribute ===== | 
| - | procedure | + | <code pascal>procedure | 
| - | procedure SetUseACP(F: Boolean); | + | |
| - | {$ENDIF} | + | |
| + | Read Number attributes from the screen into St starting at Row,Col | ||
| - | procedure AssignConToCrt; | + | ===== ReadAttributeWindow ===== | 
| - | procedure | + | <code pascal>procedure | 
| - | {-Clears the screen and returns the cursor to the upper-left corner} | + | |
| - | procedure TextBackground(Color: | + | Read Number attributes from the screen into St starting at window Row,Col | 
| - | {-Selects | + | |
| - | procedure TextColor(Color: | + | ===== WriteAttribute ===== | 
| - | {-Selects the foreground character color} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Defines a text window on the screen} | + | |
| - | procedure GotoXY(X,Y: Byte); | + | Write string of attributes St at Row,Col without changing characters | 
| - | {-Moves the cursor to the given coordinates within the screen} | + | |
| - | function WhereX: Byte; | + | ===== WriteAttributeWindow ===== | 
| - | {-Returns the X coordinate of the current cursor location} | + | |
| - | function WhereY: Byte; | + | <code pascal> | 
| - | {-Returns the Y coordinate of the current cursor location} | + | |
| - | procedure ClrEol; | + | Write string | 
| - | {-Clears all characters from the cursor position to the end of the line } | + | |
| - | { without | + | |
| - | function KeyPressed: Boolean; | + | ===== ChangeAttribute ===== | 
| - | {-Determines if a key has been pressed on the keyboard and returns True } | + | |
| - | { if a key has been pressed | + | |
| - | function ReadKey: Char; | + | <code pascal> | 
| - | {-Reads a character from the keyboard and returns a character or an } | + | |
| - | { extended scan code. } | + | |
| - | procedure TextMode (Mode: word); | + | Change Number video attributes to Attr starting | 
| - | procedure InsLine; | + | |
| - | {-Inserts an empty line at the cursor position} | + | |
| - | procedure DelLine; | + | ===== ChangeAttributeWindow ===== | 
| - | {-Deletes the line containing the cursor} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | {-Selects low intensity characters} | + | |
| - | procedure HighVideo; | + | Change Number video attributes to Attr starting at window Row,Col | 
| - | {-Selects high-intensity characters} | + | |
| - | procedure NormVideo; | + | ===== MoveScreen ===== | 
| - | {-Selects normal intensity characters} | + | |
| - | procedure | + | <code pascal>procedure | 
| - | procedure Sound(Hz: Word); | + | |
| - | procedure NoSound; | + | |
| - | procedure AssignCrt(var F: Text); | + | |
| - | {-Associates a text file with CRT device.} | + | |
| - | procedure PlaySound(Freq, | + | Move Length words from Source to Dest without snow | 
| - | {-Setups window coordinates | + | |
| + | ===== FlexWrite ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Write St at Row,Col with flexible color handling | ||
| + | |||
| + | ===== FlexWriteWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Write a string flexibly using window-relative coordinates. | ||
| + | |||
| + | ===== SaveWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Allocate buffer space if requested and save window contents | ||
| + | |||
| + | ===== RestoreWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Restore screen contents and deallocate buffer space if requested | ||
| + | |||
| + | ===== StoreWindowCoordinates ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Store the window coordinates for the active window | ||
| + | |||
| + | ===== RestoreWindowCoordinates ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Restore previously saved window coordinates | ||
| + | |||
| + | ===== PackWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Return a pointer to a packed window, or nil if not enough memory | ||
| + | |||
| + | ===== DispPackedWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Display the packed window pointed to by PWP | ||
| + | |||
| + | ===== DispPackedWindowAt ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Display the packed window pointed to by PWP at Row,Col. If necessary, the coordinates are adjusted to allow it to fit on the screen. | ||
| + | |||
| + | ===== MapPackedWindowColors ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Map the colors in a packed window for improved appearance on mono/ | ||
| + | |||
| + | ===== DisposePackedWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Dispose of a packed window, setting PWP to nil on exit | ||
| + | |||
| + | ===== WritePackedWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Store the packed window pointed to by PWP in FName | ||
| + | |||
| + | ===== ReadPackedWindow ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Read the packed window stored in FName into memory | ||
| + | |||
| + | ===== CreateLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Create a library with the specified # of directory entries | ||
| + | |||
| + | ===== OpenLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Open the specified library and return a pointer to its directory | ||
| + | |||
| + | ===== CloseLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Close library F and deallocate its directory | ||
| + | |||
| + | ===== PackLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Pack a library to remove deleted entries. | ||
| + | |||
| + | ===== AddWindowToLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Add a packed window to the specified library | ||
| + | |||
| + | ===== ReadWindowFromLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Read a packed window from a library | ||
| + | |||
| + | ===== DeleteWindowFromLibrary ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Delete a packed window from the specified library | ||
| + | |||
| + | ===== MapColor ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Map a video attribute for visibility on mono/bw displays | ||
| + | |||
| + | ===== SetBlink ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Enable text mode attribute blinking if On is True | ||
| + | |||
| + | ===== SetCrtBorder ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Set border to background color if card type and mode allow | ||
| + | |||
| + | ===== Font8x8Selected ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Return True if EGA or VGA is active and in 8x8 font | ||
| + | |||
| + | ===== SelectFont8x8 ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Toggle 8x8 font on or off | ||
| + | |||
| + | ===== HercPresent ===== | ||
| + | |||
| + | <code oascal> | ||
| + | |||
| + | Return true if a Hercules graphics card is present | ||
| + | |||
| + | ===== SwitchInColorCard ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Activate or deactivate colors on a Hercules InColor card | ||
| + | |||
| + | ===== HercGraphicsMode ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Return True if a Hercules card is in graphics mode | ||
| + | |||
| + | ===== HercModeTestWorks ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Return True if HercGraphicsMode will work | ||
| + | |||
| + | ===== SetHercMode ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Set Hercules card to graphics mode or text mode, and activate specified graphics page (if switching to graphics mode). | ||
| + | |||
| + | ===== ReadKeyWord ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Waits for keypress, then returns scan and character codes together | ||
| + | |||
| + | ===== CheckKbd ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Returns True (and the key codes) if a keystroke is waiting | ||
| + | |||
| + | ===== KbdFlags ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Returns keyboard status flags as a bit-coded byte | ||
| + | |||
| + | ===== StuffKey ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Stuff one key into the keyboard buffer | ||
| + | |||
| + | ===== StuffString ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Stuff the contents of S into the keyboard buffer | ||
| + | |||
| + | ===== ReInitCrt ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Reinitialize CRT unit's internal variables. For TSR's or programs with DOS shells. May reset: CurrentMode, | ||
| + | |||
| + | ===== SetSafeCPSwitching ===== | ||
| + | |||
| + | <code psacal> | ||
| + | |||
| + | ===== SetUseACP ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | |||
| + | ===== AssignConToCrt ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | ===== ClrScr ===== | ||
| + | |||
| + | <code psacal> | ||
| + | |||
| + | Clears the screen and returns the cursor to the upper-left corner | ||
| + | |||
| + | ===== TextBackground ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Selects the background color | ||
| + | |||
| + | ===== TextColor ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Selects the foreground character color | ||
| + | |||
| + | ===== Window ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Defines a text window on the screen | ||
| + | |||
| + | ===== GotoXY ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Moves the cursor to the given coordinates within the screen | ||
| + | |||
| + | ===== WhereX ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Returns the X coordinate of the current cursor location | ||
| + | |||
| + | ===== WhereY ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Returns the Y coordinate of the current cursor location | ||
| + | |||
| + | ===== ClrEol ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Clears all characters from the cursor position to the end of the line without moving the cursor. | ||
| + | |||
| + | ===== KeyPressed ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Determines if a key has been pressed on the keyboard and returns True if a key has been pressed | ||
| + | |||
| + | ===== ReadKey ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Reads a character from the keyboard and returns a character or an extended scan code. | ||
| + | |||
| + | ===== TextMode ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | ===== InsLine ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Inserts an empty line at the cursor position | ||
| + | |||
| + | ===== DelLine ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Deletes the line containing the cursor | ||
| + | |||
| + | ===== LowVideo ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Selects low intensity characters | ||
| + | |||
| + | ===== HighVideo ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Selects high-intensity characters | ||
| + | |||
| + | ===== NormVideo ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Selects normal intensity characters | ||
| + | |||
| + | ===== Delay ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | ===== Sound ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | ===== NoSound ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | ===== AssignCrt ===== | ||
| + | |||
| + | <code pascal> | ||
| + | |||
| + | Associates a text file with CRT device. | ||
| + | |||
| + | ===== PlaySound ===== | ||
| + | |||
| + | <code pascal>procedure PlaySound(Freq, | ||
| + | |||
| + | Setups window coordinates | ||
| + | |||
| + | ===== GetLastMode ===== | ||
| + | |||
| + | <code pascal> | ||
| - | procedure GetLastMode; | ||




