Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Terminal #16

Open
cracyc opened this issue Feb 11, 2024 · 6 comments
Open

Terminal #16

cracyc opened this issue Feb 11, 2024 · 6 comments

Comments

@cracyc
Copy link
Owner

cracyc commented Feb 11, 2024

Full screen text output is broken on the terminal. b2a3b34 makes Wordperfect 6 work a bit but it breaks on the old console. I think that terminal support with vt escapes is going to be required for good output and might work okay on the console with windows 10 and 11 but will break on windows 8 and below.

@roytam1
Copy link
Contributor

roytam1 commented Feb 20, 2024

maybe related: microsoft/terminal#8681

@roytam1
Copy link
Contributor

roytam1 commented Feb 25, 2024

and BTW conhost v2 crashes when msdos-player resizing console, MS fixed in their side but the fix doesn't deploy to most of LTS versions: microsoft/terminal#256
and we may need workaround like: manuelschiller/vim@235410f

@roytam1
Copy link
Contributor

roytam1 commented Feb 25, 2024

and I tried to fix conhost-v2 crash in 21H2 LTSC by re-ordering API calls, and trying to add newline and move cursor 1 line upper.
it may still crash but less frequent:
roytam1/msdos-player@827d35b

@roytam1
Copy link
Contributor

roytam1 commented Feb 28, 2024

testing another workaround, which seems to be working: rprichard/winpty@b96df70
my changes (against 2024-02-28 build): roytam1/msdos-player@747044d

@cracyc
Copy link
Owner Author

cracyc commented Mar 2, 2024

https://github.com/cracyc/msdos-player/tree/vt makes this work much better with full vt escapes rather than an ugly workaround.

WP6 with terminal and win32 console API
Screenshot 2024-03-02 165140
WP6 with terminal and vt escapes
Screenshot 2024-03-02 165203

Still needs some work and testing.

@cracyc
Copy link
Owner Author

cracyc commented Mar 12, 2024

Vt support is mostly done. Buffer resizing had to be disabled as it broke output (and is the main reason why win32 console io didn't work in the terminal) and window resizing too as it caused the buffer to be resized and doesn't work anyway. The main remaining things are GetConsoleScreenBufferInfo for the cursor position, DECXCPR can be used but needs to work with the next, ReadConsoleInputA for input, can be replaced with ENABLE_VIRTUAL_TERMINAL_INPUT, and ReadConsoleOutputA which there is no replacement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants