Skip to content
This repository was archived by the owner on Jun 24, 2024. It is now read-only.
This repository was archived by the owner on Jun 24, 2024. It is now read-only.

Enhanced terminal functionality #16

@FrankRay78

Description

@FrankRay78

The terminal is key to providing user interactivity with PatienceOS.

Here are some ideas I'd like to implement:

Terminal output

  • Multiple calls to console.Print concatenates the text across the terminal line (not exceeding the terminal width)
  • Multiple calls to console.Print concatenates the text across the terminal line (wraps to the next line when exceeding the terminal width)
  • Multiple calls to console.PrintLine displays the text on consecutive lines
  • When calls to console.Print \ console.PrintLine exceed the terminal height, the terminal scrolls the text up (ie. the oldest visible line is discarded, the remaining text is moved up one line, the new text is displayed on the last row)
  • (stretch) Ability to scroll terminal output beyond the visible dimensions ie. buffered output

Command line interpreter

  • cls - clears the terminal
  • fgcolor - set the terminal's foreground color
  • bgcolor - set the terminal's background color
  • setres - set the terminal's resolution (depends on: #15. Switch between VGA text modes)
  • cursor - sets whether the cursor should be visible

nb. the above assumes some way to inform the user of an unknown command, and/or, they have not specified a required argument for an entered command (eg. a valid foreground color for fgcolor)

References

  1. Basic x86 interrupts - will be required for receiving key strokes from the user.

Please upvote 👍 this issue if you are interested in it.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions