Hello,
Using AI (First ChatGPT, after that Claude) it was tried for a long time to let spell.dll and semware.lex also work
on Linux WSL using PowerShell.exe.
But using spell.dll and semware.lex defied all pertinent trying, even with e.g.:
-Using 32-bits powershell.exe
-Working only with the C# wrapper which called the spell.dll functions
after opening using OpenSpell() the semware.lex file
-Even creating a C program running on Linux WSL which called the spell.dll
functions did not give the expected result (cross compiling using MingW).
-C calling convention, Pascal calling convention (StdCal), ...
-Keeping powershell.exe open and running all the time
(e.g. as a server, then giving spell.dll commands (like OpenSpell(), SpellCheckWord(), ...).
and so on...
===
Could you if possible tell as much as possible about spell.dll and semware.lex?
For example:
1. spell.dll should be compiled using Watcom?
2. In spellchk.s is mentioned:
If the dll is compiled with Borland (4.5, 5), use "foo"
If the dll is compiled with Microsoft C (VC 4), use "_foo@??" to get ?? look in the map!!!
If the dll is compiled with Watcom C (10, 10.5), use "_Foo"
Currently compiled with Watcom c 10.5.
3. Is a C calling convention used or was Pascal calling convention (e.g. StdCal) used?
4. Where exactly should semware.lex be located? E.g. always in a SPELL directory?
(according to spellchk.s it uses a combination of TSEPath at the moment as far as I can tell),
5. In TSE in general how is the initialization of DLLs in general accomplished?
Do you maybe have the C code of this still used in TSE for Microsoft Windows?
6. Does spell.dll maybe only run with g32.exe and not with other executable programs?
7. Other information.
===
Note: in principal it should with some probability be possible to run (any) DLL on
Linux WSL also using powershell.exe and C# wrappers, or a C wrapper .exe that is called
by the program (e.g. TSE) so if that should
have worked it would resolve a quite general problem.
===
Conclusion from Claude at the moment: This spell.dll is an old 1996 DLL which probably can not be made running outside of TSE.
Thanks