[fpc-pascal] ptccrt missing keys

James Richters james at productionautomation.net
Wed Jun 21 18:31:07 CEST 2017

>Ok, I've implemented implemented this. ptccrt now has a KeyMode variable

Excellent solution!  

>kmFPWINCRT - behaves like Free Pascal's CRT unit under Windows. Similar to kmGO32, but emulates several incompatibilities 
>that the Windows CRT unit has with the GO32V2 CRT unit. Not all of them are emulated though, since some of them can be considered bugs.

I had patched wincrt a while back because it was missing a lot of ctrl keys.   I tried to submit changes to freepascal but never did figure out how to do it properly.   My attempt is here:

I got confused with 'Please create a proper patch and against development (trunk) version of FPC' and at the time I just didn't have the time to try to figure it out.   I wonder if I should try to send it in again.  I added a lot of ctrl keys but I never did figure out how to get ANY alt keys working.  Even though I will use ptccrt now because I like ptcgraph better,  someone else might benefit from having improved functionality of wincrt.    Perhaps adding the 'keymode' variable for compatibility reasons should be used here as well?   My changes to WinCRT are here:

>I've also committed this into FPC trunk and I've proposed it to be merged into FPC 3.0.4, so please test and report any bugs that you found. :)

I'll be happy to do testing with all keymodes and report back any issues I find.  I'm curious if there is any estimate on when FPC 3.0.4 will be released?

I've downloaded the snapshot at https://sourceforge.net/p/ptcpas/code/785/tree/trunk/ and built it using the instructions in docs\install.txt for i386 and have it working.. so far it's working well in my little keytest program.

I still do not know how to build this for x64.  I've tried

fpcmake -r -Tx86_64-win64    

I'm not sure this is correct, it appears to work, and I don't get any errors,   but then:
make CPU_TARGET=x86_64 OS_TARGET=win64 

gives me the following output:
J:/Programming/FPC/3.0.2/bin/i386-Win32/gmkdir.exe -p units/x86_64-win64
J:/Programming/FPC/3.0.2/bin/i386-Win32/ppcrossx64.exe -Twin64 -Px86_64 -XPx86_64-win64- -Xr -Fuhermes -Fuptcwrapper -Fuptcgraph -Fux11 -Fuwin32/directx -Fiptcgraph/inc -FE. -FUunits/x86_64-win64 -dx86_64 ptc.pp
Warning: Option "-Xr" is ignored for the current target platform.
Free Pascal Compiler version 3.0.2 [2017/02/13] for x86_64
Copyright (c) 1993-2017 by Florian Klaempfl and others
Target OS: Win64 for x64
Compiling ptc.pp
Compiling .\hermes\hermes.pp
Compiling .\win32\directx\p_ddraw.pp
ptc.pp(125,21) Fatal: Can't find unit glext used by ptc
Fatal: Compilation aborted
make: *** [ptc.ppu] Error 1

There is one thing I am wondering about, I'm not sure if it's something that could be (or maybe already is) addressed with pctcrt.   That is the typmatic keyboard rate.  I wish it to be much faster than it is.  I seem to remember that on DOS systems there was a way to set it, but on windows systems the only thing I can find is a control panel setting, which I maxed out but it's still not fast enough.  Is there a way to override the typmatic repeat rate?  


More information about the fpc-pascal mailing list