A version of jp12serial.dll that supports the new communications protocol used by JP1.4 and JP2/JP2.1 remotes has been around in beta form for some months under the version number 0.18f_JP2 and is included in the current development version of RMIR. No issues have been reported, so in preparation for the forthcoming release of RM/RMIR v2.02 it seems time to move this version of jp12serial.dll from beta to release status.
Towards this, I have posted source files for v0.19 and a compiled binary version for Windows. The source files are suitable for compilation also under Linux and Mac OS X, as they differ from those of v0.18f_JP2 only in the version number and some added comments and that beta version includes Linux and Mac OS X binaries. I would be grateful if
Greg Bush (gfb107) would once again compile the Linux version and
Michael Dreher (MikeT) would once again compile the Mac OS X version,
adding them to my post of the Windows binary or posting them separately, whichever is more convenient.
Last edited by mathdon on Sun Nov 13, 2016 11:52 am, edited 1 time in total.
Graham,
Please take a look at this slight modification. Non-JP 1.4/2 functions have always "cleared" extraneous bytes from the serial buffer by attempting to read 20 bytes before doing an actual read. In most cases, there are no bytes to read, and the resulting time delay was too long for the JP1.4/2 remotes during initialization of communication. So we removed the attempted 20 byte read, and all seemed fine. But some users with transistor based serial interfaces found that this didn't work because those interfaces did provide some extra bytes.
So I added back a 10 byte read, which is not too much delay. That was in February.
Again my apologies for not posting this update generally.
mathdon wrote:
Michael Dreher (MikeT) would once again compile the Mac OS X version,
I think problems with the transistor interface are not relevant for Mac Hardware, because there is no parallel port on Macs, but nevertheless the same source code should be used for all binaries.
Please tell me when the source code for 0.19+ is ready, then I will upload the Mac OSX binaries.
Just for clarity, the transistor interface uses a serial port, not parallel. The serial port can be a hardware port (e.g. seen on older PCs) or a sufficiently well made USB serial adapter. So a Mac can be used with transistor interface.
I have now updated the files linked to in the first post of this thread to include 3FG's modification. The source files there are now ready for Greg and Mike to compile for Linux and Mac OS X. I have kept the version number as 0.19 but have added to the comments in the source files and the accompanying ReadMe files to describe the amendment.
Please note that the Windows binary I have posted is 34K in size, compared with the 66K of the binary that 3FG included with his modified source code. This is not a mistake. The 34K file is compiled with MinGW g++, which gives a much smaller binary than MS Visual C++ used to compile the 66K version. It is possible to compile a smaller version with Visual C++ but that does not work with Windows 2000 due to the absence of a system dll included in later Windows versions. The MinGW g++ compilation does work with Windows 2000, which together with its smaller size makes it the preferred binary for Windows systems.
I have tested this new version by doing a download and subsequent upload with Tommy's USB interface and one remote each of types JP1.4, JP2 and JP2.1, all without a hitch. Although 3FG's modification may not have had widespread testing, I think it best to continue to make this into an official release of v0.19, as I originally intended. If any issues do remain, they can be dealt with when they come to light.
MikeT wrote:Can you please update the Mac OSX Makefile in the source distribution? I put the updated one here:Makefile.MacOSX
Will do. Shortly I'll put the binaries for all OS's into a single zip file for distribution and will update the Mac OSX Makefile in the source as well, but life is a bit hectic at present. My thanks to Binky for the Linux binaries.
I have now combined the Windows, Linux and Mac OS X versions of jp12serial v0.19 into a single zip package. I've updated the links in the above posts to point to this combined package and have deleted the redundant single-OS versions.