This is in response to Simon, who wrote:
"Soon there will be a PDCurses 4.2 version - can you please check if the "repository version" (you can click on "download" and get a master.zip containing the code you know) works any different? If yes, then this is likely good, if not then we should try to create a reproducible issue there to have the different colors fixed."
It looks like there is a newer 4.1.1 version of PDCurses. I had used PDCurses 4.1.0 that was several months old.
Click on the green "Clone or download" button and select "Download ZIP"
You should get a file named "PDCurses-master.zip" and the files inside it should be date-time stamped 2020-05-20 or later.
I built a special version of GC31 r3577 with PDCurses 4.1.1 with NO ISAM support and tested two simple programs against a version of GC31 r3508 with PDCurses 3.9 and NO ISAM. The colors appear to be the same between 3.9 and 4.1.1. Certainly the PDC 4.1.1 colors are much better than PDC 4.1.0.
Please see the attached test results. It will take me about a week or so before I generate new binaries.
Well that didn't take very long - recreated pdcurses using the 'latest' beta then rebuild cobc from the latest nightly 3.1 - results below. No change from 4.1.0 or 4.1.1.
Source program for display attached. as well as results from 3.9 & 4.2 beta.
Also cobc -info's for both as well (just to prove what I'm running).
Arnold - Any chance of uploading the two simple programs so I can give them a test.
If you look in the other discussion as far as I'm concerned there's NO difference between 4.1.0 & 4.1.1 colours. And they're both rubbish compared to 3.9.
I've attached one of my colour test programs here. - NO I haven't because it's attached to the message above.
Last edit: David Wall 2020-05-22
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I just downloaded the 2 programs and ran them under 3.9 & 4.2 with somewhat different results to yours ??????????????????????????????????. See below
????????????????????????????????????????
OK - given that there are obvious differences between what should be the same .dll I've attached the LOG from my build of 4.2 PDCurses as well as the actual pdcurses.dll file.
Arnold - Can you compare these to what you have in your build using 4.2 (actually the 4.1.1 pdcurses.dll was the same size and had the same LOG output that I did the day before).
The ONLY difference I can see is that I use CHTYPE32=Y in my build but I understood that was the default anyway.
David,
I use a separate laptop for builds and it is not setup right now. I have schedule conflicts this weekend so it will be early next week before I can dig out the make log for you.
But I can tell you that my PDCurses 4.1.1 build used the following make command: make -f Makefile.mng INFOEX=N DLL=Y
And cobcrun --info showed: extended screen I/O : pdcurses, version 4.1.1 (CHTYPE=64, WIDE=0)
So my PDCurses 4.1.1 defaulted to CHTYPE=64. I don't know if that explains the apparent difference in test results. I hope to be re-testing next week.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
My Cobcrun shows the same - pdcurses 4.1.1 (CHTYPE=64, WIDE=0) for some reason - but the cobc doesn't show any version.
I get 4.1.1 for Cobcrun - even when I used the 4.2 PDC - maybe they forgot to change the version.
I now don't know where the 4.1.1 version numnber is coming from - it appears in 1 file - config.sub in the whole folder. ???
Last edit: David Wall 2020-05-23
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I don't understand what having an old tag means - I just wanted to download something that you said was 'post-adjusted'. So how do us mere mortals get hold of the latest whatever. I just want something that references itself as 4.2.0 not 4.2-beta or 4.1.1.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Normally a "tag" is created in some instant in time and not changed afterwards (most version control systems have the option to retag something to a different instant in time).
The [current development snapshot of PDCurses 4.x identifies in this second as 4.1.99.
If you want a different version number, then download the development snapshot, but this version change is currently the main change to the current 4.2.0-beta tag.
As mentioned in this issue the main missing part for the upcoming 4.2.0 release is the color issue reported by you guys. I try to help getting this solved by providing what I can and ask for stuff you guys could provide.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
cobc shows only the configured library, cobcrun shows the version resolved from the actually running library and reports if there is a difference to the version it was built with (this applies to any used library, not only to curses).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
@davewall Can you do me a favor with the following?
touch libcob/screenio.c in both your environments (it would have been "clever" to just use a different build directory, like "build-pdc3" and "build-pdc4" and invoking the configure script with ../configure, but I don't know if you'd done this, this time) - if you don't have the touch command available (should be available in msys) then open the file, add a space somehere and save
cd to the build directory libcob
run make, screenio.o will be rebuild and libcob be relinked
copy and past the gcc command, doing it again, but replacing -o screenio.o with -E -o screenio.ito only produce a preprocessed file
post screenio.i from both environments here to allow a quick comparision without the actual setup
This will allow to verify without a debug run that screenio.c actually does the same. Thank you!
Further questions: Do you have any color differences between CHTYPE32 and CHTPYE64?
Can you check with different ports? Most interesting would be: wincon, wingui, vt.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Your wish is my command.
Please find attached screenio.i from PDC3.9 with cobc3.1 - PDC4.1.1 with cobc3.1 and finally PDC4.2.0 beta with cobc 3.1.
These are all wincon - I'm working on getting the wingui.
Find also a screen copy of what you asked above - just to check I did the right thing.
Will have to post first then add the files.
cobcrun -i shows:
libcob (GnuCOBOL) 3.1-dev.0
Copyright (C) 2020 Free Software Foundation, Inc.
License LGPLv3+: GNU LGPL version 3 or later http://gnu.org/licenses/lgpl.html
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Keisuke Nishida, Roger While, Ron Norman, Simon Sobisch, Edward Hart
Built May 24 2020 21:54:57
Packaged May 21 2020 12:32:30 UTC
build information
build environment : i686-pc-mingw32
CC : gcc
C version : (MinGW) "6.3.0"
CPPFLAGS : -I/mingw/include
CFLAGS : -O2 -pipe -finline-functions -fsigned-char -Wall
-Wwrite-strings -Wmissing-prototypes
-Wno-format-y2k -U_FORTIFY_SOURCE
LD : c:/mingw/mingw32/bin/ld.exe
LDFLAGS :
GnuCOBOL information
COB_MODULE_EXT : dll
dynamic loading : system
64bit-mode : no
BINARY-C-LONG : 4 bytes
endianness : little-endian
native EBCDIC : no
extended screen I/O : pdcurses, version 4.1.1 (CHTYPE=64, WIDE=0)
mouse support : yes
variable file format : 0
sequential file handler : built-in
ISAM file handler : VBISAM
mathematical library : GMP, version 6.1.2
XML library : disabled
JSON library : disabled
Specifically 4.1.1 & CHTYPE=64 - obviously the colours are different (or non existant) in the CHTYPE=32 version of 4.1.1 or 4.2.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I still note that Arnolds Guide for building the wingui version still uses CHTYPE_32=Y - so I'll try that as well as ignoring it just to check the colours again. Woopee !!!!!!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This is in response to Simon, who wrote:
"Soon there will be a PDCurses 4.2 version - can you please check if the "repository version" (you can click on "download" and get a master.zip containing the code you know) works any different? If yes, then this is likely good, if not then we should try to create a reproducible issue there to have the different colors fixed."
It looks like there is a newer 4.1.1 version of PDCurses. I had used PDCurses 4.1.0 that was several months old.
You can download PDCurses 4.1.1 from:
https://github.com/Bill-Gray/PDCurses
https://github.com/Bill-Gray/PDCurses.git
Click on the green "Clone or download" button and select "Download ZIP"
You should get a file named "PDCurses-master.zip" and the files inside it should be date-time stamped 2020-05-20 or later.
I built a special version of GC31 r3577 with PDCurses 4.1.1 with NO ISAM support and tested two simple programs against a version of GC31 r3508 with PDCurses 3.9 and NO ISAM. The colors appear to be the same between 3.9 and 4.1.1. Certainly the PDC 4.1.1 colors are much better than PDC 4.1.0.
Please see the attached test results. It will take me about a week or so before I generate new binaries.
Kind regards,
Last edit: Arnold Trembley 2020-05-21
Here is the link to the 4.2 pre release (actually for testing the colors...)
https://github.com/Bill-Gray/PDCurses/releases/tag/4.2.0-beta
OK - now we have a 'real' 4.2 to test I've just downloaded it for another play - results to come.
Well that didn't take very long - recreated pdcurses using the 'latest' beta then rebuild cobc from the latest nightly 3.1 - results below. No change from 4.1.0 or 4.1.1.
Source program for display attached. as well as results from 3.9 & 4.2 beta.
Also cobc -info's for both as well (just to prove what I'm running).
Arnold - Any chance of uploading the two simple programs so I can give them a test.
If you look in the other discussion as far as I'm concerned there's NO difference between 4.1.0 & 4.1.1 colours. And they're both rubbish compared to 3.9.
I've attached one of my colour test programs here. - NO I haven't because it's attached to the message above.
Last edit: David Wall 2020-05-22
David,
They were in the 7z archive attached to my original post, but I will attach them uncompressed here.
Last edit: Arnold Trembley 2020-05-23
I just downloaded the 2 programs and ran them under 3.9 & 4.2 with somewhat different results to yours ??????????????????????????????????. See below
????????????????????????????????????????
OK - given that there are obvious differences between what should be the same .dll I've attached the LOG from my build of 4.2 PDCurses as well as the actual pdcurses.dll file.
Arnold - Can you compare these to what you have in your build using 4.2 (actually the 4.1.1 pdcurses.dll was the same size and had the same LOG output that I did the day before).
The ONLY difference I can see is that I use CHTYPE32=Y in my build but I understood that was the default anyway.
Last edit: David Wall 2020-05-23
David,
I use a separate laptop for builds and it is not setup right now. I have schedule conflicts this weekend so it will be early next week before I can dig out the make log for you.
But I can tell you that my PDCurses 4.1.1 build used the following make command:
make -f Makefile.mng INFOEX=N DLL=YAnd cobcrun --info showed:
extended screen I/O : pdcurses, version 4.1.1 (CHTYPE=64, WIDE=0)So my PDCurses 4.1.1 defaulted to CHTYPE=64. I don't know if that explains the apparent difference in test results. I hope to be re-testing next week.
My Cobcrun shows the same - pdcurses 4.1.1 (CHTYPE=64, WIDE=0) for some reason - but the cobc doesn't show any version.
I get 4.1.1 for Cobcrun - even when I used the 4.2 PDC - maybe they forgot to change the version.
I now don't know where the 4.1.1 version numnber is coming from - it appears in 1 file - config.sub in the whole folder. ???
Last edit: David Wall 2020-05-23
David,
I think the version number for PDCurses 4.1.1 is in a file named version.mif.
I just looked at that file in both the 4.1.1 and the 'new' 4.2 beta.
THE ABOVE IS FROM 4.11
THE BELOW IS FROM 4.2.beta
THEY'RE 'IDENTICAL' AND NEITHER SAYS ANYTHING ABOUT THE FINAL 1 IN 4.1.1
Last edit: Simon Sobisch 2020-05-24
The "real" version number is found in curses.h and was post-adjusted.
Just downloaded it again from https://github.com/Bill-Gray/PDCurses/releases/tag/4.2.0-beta and the pdcurses.h file still says 4.1.1.
Of course, that's an unchanged old tag. If you want to request a retag feel free to do so on its issue tracker...
I don't understand what having an old tag means - I just wanted to download something that you said was 'post-adjusted'. So how do us mere mortals get hold of the latest whatever. I just want something that references itself as 4.2.0 not 4.2-beta or 4.1.1.
Normally a "tag" is created in some instant in time and not changed afterwards (most version control systems have the option to retag something to a different instant in time).
The [current development snapshot of PDCurses 4.x identifies in this second as 4.1.99.
If you want a different version number, then download the development snapshot, but this version change is currently the main change to the current 4.2.0-beta tag.
As mentioned in this issue the main missing part for the upcoming 4.2.0 release is the color issue reported by you guys. I try to help getting this solved by providing what I can and ask for stuff you guys could provide.
cobcshows only the configured library,cobcrunshows the version resolved from the actually running library and reports if there is a difference to the version it was built with (this applies to any used library, not only to curses).@davewall Can you do me a favor with the following?
touchlibcob/screenio.c in both your environments (it would have been "clever" to just use a different build directory, like "build-pdc3" and "build-pdc4" and invoking the configure script with../configure, but I don't know if you'd done this, this time) - if you don't have thetouchcommand available (should be available in msys) then open the file, add a space somehere and savecdto the build directory libcobmake, screenio.o will be rebuild and libcob be relinked-o screenio.owith-E -o screenio.ito only produce a preprocessed fileThis will allow to verify without a debug run that screenio.c actually does the same. Thank you!
Further questions: Do you have any color differences between CHTYPE32 and CHTPYE64?
Can you check with different ports? Most interesting would be: wincon, wingui, vt.
Your wish is my command.
Please find attached screenio.i from PDC3.9 with cobc3.1 - PDC4.1.1 with cobc3.1 and finally PDC4.2.0 beta with cobc 3.1.
These are all wincon - I'm working on getting the wingui.
Find also a screen copy of what you asked above - just to check I did the right thing.
Will have to post first then add the files.
Last edit: David Wall 2020-05-24
Thank you. There's no need for a preproc of other ports, but it would be good to know if those have any differences concerning the colors.
Hold everything - stop the press.
I just rebuilt PDC4.2 without using CHTYPE_32=Y and all the bloody colours came good.
cobcrun -i shows:
libcob (GnuCOBOL) 3.1-dev.0
Copyright (C) 2020 Free Software Foundation, Inc.
License LGPLv3+: GNU LGPL version 3 or later http://gnu.org/licenses/lgpl.html
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Keisuke Nishida, Roger While, Ron Norman, Simon Sobisch, Edward Hart
Built May 24 2020 21:54:57
Packaged May 21 2020 12:32:30 UTC
build information
build environment : i686-pc-mingw32
CC : gcc
C version : (MinGW) "6.3.0"
CPPFLAGS : -I/mingw/include
CFLAGS : -O2 -pipe -finline-functions -fsigned-char -Wall
-Wwrite-strings -Wmissing-prototypes
-Wno-format-y2k -U_FORTIFY_SOURCE
LD : c:/mingw/mingw32/bin/ld.exe
LDFLAGS :
GnuCOBOL information
COB_MODULE_EXT : dll
dynamic loading : system
64bit-mode : no
BINARY-C-LONG : 4 bytes
endianness : little-endian
native EBCDIC : no
extended screen I/O : pdcurses, version 4.1.1 (CHTYPE=64, WIDE=0)
mouse support : yes
variable file format : 0
sequential file handler : built-in
ISAM file handler : VBISAM
mathematical library : GMP, version 6.1.2
XML library : disabled
JSON library : disabled
Specifically 4.1.1 & CHTYPE=64 - obviously the colours are different (or non existant) in the CHTYPE=32 version of 4.1.1 or 4.2.
All those lovely colours:
Last edit: David Wall 2020-05-24
I still note that Arnolds Guide for building the wingui version still uses CHTYPE_32=Y - so I'll try that as well as ignoring it just to check the colours again. Woopee !!!!!!