VOGONS


First post, by Azami

User metadata
Rank Newbie
Rank
Newbie

Hi,

Since I believe my port is now fairly usable, maybe I should post it here.

Short version, it's available here, with binary builds for convenience:
https://github.com/Toyoyo/putty-win32s/

Main changes from master:
- Build with Open Watcom as the C library is compatible (new Makefile, some unsupported preprocessor macros & recent C syntax).
- Use A API where Needed instead of W API (was mainly for CreateWindowEx and other related calls).
- Remove CreateThread() calls (they are now a synchronous function call, to make them at least work):
- This was mostly for puttygen, but also to make pasting work in the terminal window.
- Rewriting of the keyboard input routine.
- Session uses an adapted UNIX codepath to avoid dependency of the (very limited) win32s registry.
- Moved puttygen's window menu in system menu, window menu in dialog boxes somewhat works in win32s, but their win16 countercalls are buggy and produce visual glitches.
- Call CoInitialize() early to make z3dc.drv happy, in case it's used.

What works:
- Terminal works with the limitation that unicode is not supported at all.
if your server's libiconv supports CP1252, a locale can be added (Check the github wiki for a how-to).
- Puttygen key generation works, including with password-protected keys.
- Key-based auth in putty too.

What doesn't work
- pageant.exe
Won't be easily fixed, due to serious limitations in VirtualQuery().

- As win32s lacks any concept of console application, CLI tools won't work.
One solution would be to build them with OW's (extremely buggy and unsupported) default windowing system, which would mean to fix it in OW before.
Another issue is their heavy usage of CreateThread().

For now, I include 16-bit builds of and updated ssh2dos fork (https://github.com/AnttiTakala/SSH2DOS) as I had stability issues with 32-bit ones in win3.1's DOS VM. They'll require a working packet driver and WATTCP configuration (so either ndis3pkt or a second NIC).

The attachment putty-about.png is no longer available
The attachment puttygen.png is no longer available
The attachment puttyterm.png is no longer available

Reply 1 of 2, by Oerg866

User metadata
Rank Member
Rank
Member

this is severely underrated and a most excellent piece of software. thank you for your efforts!

Reply 2 of 2, by roytam1

User metadata
Rank Newbie
Rank
Newbie

trying to add UTF-8 support to it.
https://github.com/roytam1/putty-win32s/relea … s/tag/v20250127

noticed win32s' ExtTextOutW() is a stub, fixed this.
and lpDx array is incompatible with ExtTextOutA(), so not passing it to the function.

EDIT: lpDx problem is fixed by copying it into new array with proper values set.
EDIT2: also add WS_BORDER to various controls to make it look sane in windows.

emendelson wrote on 2023-08-24, 02:42:

I tried Azami's port of 0.76, but it gives me an error saying that OLE32.DLL didn't load.

this is a bug in older OpenWatcom, recompiled with latest one solved the problem.