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 06:15] – prokushev | en:docs:tpro [2025/02/08 13:36] (current) – prokushev | ||
|---|---|---|---|
| Line 197: | Line 197: | ||
| Fill Number chs at Row,Col in Attr (video attribute) without snow | Fill Number chs at Row,Col in Attr (video attribute) without snow | ||
| - | procedure | + | ===== FastFillWindow |
| - | {-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; | + | Fill Number chs at window |
| - | {-Write St flush right on window Row in Attr (video attribute) without snow} | + | |
| - | procedure FastRead(Number, | + | ===== FastCenter ===== |
| - | {-Read Number characters from the screen into St starting at Row,Col} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Read Number characters from the screen into St starting at window Row,Col} | + | |
| - | procedure ReadAttribute(Number, Row, Col : Byte; var St : string); | + | Write St centered on window Row in Attr (video attribute) without snow |
| - | {-Read Number attributes from the screen into St starting at Row,Col} | + | |
| - | procedure ReadAttributeWindow(Number, | + | ===== FastFlush ===== |
| - | {-Read Number attributes from the screen into St starting at window Row,Col} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Write string of attributes St at Row,Col without changing characters} | + | |
| - | procedure WriteAttributeWindow(St : String; Row, Col : Byte); | + | Write St flush right on window Row in Attr (video attribute) |
| - | {-Write string of attributes | + | |
| - | procedure ChangeAttribute(Number : Word; Row, Col, Attr : Byte); | + | ===== FastRead ===== |
| - | {-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); | + | Read Number characters |
| - | {-Move Length words from Source to Dest without snow} | + | |
| - | procedure FlexWrite(St : string; Row, Col : Byte; var FAttrs : FlexAttrs); | + | ===== FastReadWindow ===== |
| - | {-Write St at Row,Col with flexible color handling} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Write a string flexibly using window-relative coordinates.} | + | |
| - | function SaveWindow(XLow, YLow, XHigh, YHigh : Byte; Allocate : Boolean; | + | Read Number characters from the screen into St starting at window Row,Col |
| - | var Covers : Pointer) : Boolean; | + | |
| - | {-Allocate buffer space if requested and save window contents} | + | |
| - | procedure | + | ===== ReadAttribute ===== |
| - | Deallocate : Boolean; var Covers | + | <code pascal>procedure |
| - | {-Restore screen contents and deallocate buffer space if requested} | + | |
| - | procedure StoreWindowCoordinates(var WC : WindowCoordinates); | + | Read Number attributes from the screen into St starting at Row,Col |
| - | {-Store | + | |
| - | procedure RestoreWindowCoordinates(WC : WindowCoordinates); | + | ===== ReadAttributeWindow ===== |
| - | {-Restore previously saved window coordinates} | + | |
| - | function PackWindow(XLow, YLow, XHigh, YHigh : Byte) : PackedWindowPtr; | + | <code pascal> |
| - | {-Return a pointer to a packed window, or nil if not enough memory} | + | |
| - | procedure DispPackedWindow(PWP : PackedWindowPtr); | + | Read Number attributes from the screen into St starting at window |
| - | {-Display | + | |
| - | procedure DispPackedWindowAt(PWP : PackedWindowPtr; | + | ===== WriteAttribute ===== |
| - | {-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 | + | <code pascal>procedure |
| - | {-Map the colors in a packed window for improved appearance on mono/B&W | + | |
| - | | + | |
| - | procedure DisposePackedWindow(var PWP : PackedWindowPtr); | + | Write string |
| - | {-Dispose | + | |
| - | procedure WritePackedWindow(PWP : PackedWindowPtr; | + | ===== WriteAttributeWindow ===== |
| - | {-Store the packed window pointed to by PWP in FName} | + | |
| - | function ReadPackedWindow(FName : string) | + | <code pascal> |
| - | {-Read the packed window stored in FName into memory} | + | |
| - | function CreateLibrary(var F : file; Name : string; | + | Write string of attributes St at window Row,Col without changing characters |
| - | | + | |
| - | {-Create a library with the specified # of directory entries} | + | |
| - | function OpenLibrary(var F : file; Name : string) : DirectoryPtr; | + | ===== ChangeAttribute ===== |
| - | {-Open the specified library and return a pointer to its directory} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Close library F and deallocate its directory} | + | |
| - | procedure PackLibrary(LName : string); | + | Change Number video attributes |
| - | {-Pack a library | + | |
| - | procedure AddWindowToLibrary(PWP : PackedWindowPtr; | + | ===== ChangeAttributeWindow ===== |
| - | DP : DirectoryPtr; | + | |
| - | {-Add a packed window to the specified library} | + | |
| - | function ReadWindowFromLibrary(var F : file; DP : DirectoryPtr; | + | <code pascal> |
| - | | + | |
| - | {-Read a packed window from a library} | + | |
| - | procedure DeleteWindowFromLibrary(var F : file; DP : DirectoryPtr; | + | Change Number video attributes to Attr starting at window |
| - | WinName : LibName); | + | |
| - | {-Delete a packed | + | |
| - | function MapColor(c : Byte) : Byte; | + | ===== MoveScreen ===== |
| - | {-Map a video attribute for visibility on mono/bw displays} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Enable text mode attribute blinking if On is True} | + | |
| - | procedure SetCrtBorder(Attr : Byte); | + | Move Length words from Source |
| - | {-Set border | + | |
| - | function Font8x8Selected : Boolean; | + | ===== FlexWrite ===== |
| - | {-Return True if EGA or VGA is active and in 8x8 font} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Toggle 8x8 font on or off} | + | |
| - | function HercPresent : Boolean; | + | Write St at Row,Col with flexible color handling |
| - | {-Return true if a Hercules graphics card is present} | + | |
| - | procedure SwitchInColorCard(ColorOn : Boolean); | + | ===== FlexWriteWindow ===== |
| - | {-Activate or deactivate colors on a Hercules InColor card} | + | |
| - | function HercGraphicsMode | + | <code pascal> |
| - | {-Return True if a Hercules card is in graphics mode} | + | |
| - | function HercModeTestWorks : Boolean; | + | Write a string flexibly using window-relative coordinates. |
| - | {-Return True if HercGraphicsMode will work} | + | |
| - | procedure SetHercMode(GraphMode : Boolean; GraphPage : Byte); | + | ===== SaveWindow ===== |
| - | {-Set Hercules card to graphics mode or text mode, and activate specified | + | |
| - | | + | |
| - | function | + | <code pascal>function |
| - | {-Waits for keypress, then returns scan and character codes together} | + | |
| - | function CheckKbd(var KeyCode : Word) : Boolean; | + | Allocate buffer space if requested and save window contents |
| - | {-Returns True (and the key codes) | + | |
| - | function KbdFlags : Byte; | + | ===== RestoreWindow ===== |
| - | {-Returns keyboard status flags as a bit-coded byte} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Stuff one key into the keyboard buffer} | + | |
| - | procedure StuffString(S : string); | + | Restore screen |
| - | {-Stuff the contents | + | |
| - | procedure ReInitCrt; | + | ===== StoreWindowCoordinates ===== |
| - | {-Reinitialize CRT unit's internal variables. For TSR's or programs with | + | |
| - | DOS shells. May reset: CurrentMode, | + | |
| - | | + | |
| - | {$ifdef WIN32} | + | <code pascal>procedure |
| - | procedure | + | |
| - | procedure SetUseACP(F: | + | |
| - | {$ENDIF} | + | |
| + | Store the window coordinates for the active window | ||
| - | procedure AssignConToCrt; | + | ===== RestoreWindowCoordinates ===== |
| - | procedure | + | <code pascal>procedure |
| - | {-Clears the screen and returns the cursor to the upper-left corner} | + | |
| - | procedure TextBackground(Color: | + | Restore previously saved window coordinates |
| - | {-Selects the background color} | + | |
| - | procedure TextColor(Color: | + | ===== PackWindow ===== |
| - | {-Selects the foreground character color} | + | |
| - | procedure Window(X1,Y1,X2,Y2: Byte); | + | <code pascal> |
| - | {-Defines a text window on the screen} | + | |
| - | procedure GotoXY(X,Y: Byte); | + | Return a pointer |
| - | {-Moves the cursor | + | |
| - | function WhereX: Byte; | + | ===== DispPackedWindow ===== |
| - | {-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; | + | Display |
| - | {-Clears all characters from the cursor position | + | |
| - | { without moving the cursor. | + | |
| - | function KeyPressed: Boolean; | + | ===== DispPackedWindowAt ===== |
| - | {-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); | + | 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 InsLine; | + | |
| - | {-Inserts an empty line at the cursor position} | + | |
| - | procedure DelLine; | + | ===== MapPackedWindowColors ===== |
| - | {-Deletes the line containing the cursor} | + | |
| - | procedure | + | <code pascal>procedure |
| - | {-Selects low intensity characters} | + | |
| - | procedure HighVideo; | + | Map the colors in a packed window for improved appearance on mono/ |
| - | {-Selects high-intensity characters} | + | |
| - | procedure NormVideo; | + | ===== DisposePackedWindow ===== |
| - | {-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, | + | Dispose of a packed window, setting PWP to nil on exit |
| - | {-Setups window coordinates | + | |
| + | ===== 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; | ||




