Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - André Heldoorn

Pages: [1]
Programming / Rexx -> IBM C
« on: October 10, 2018, 11:36:50 am »
I've got a list of names, with about 10 possibly occuring characters which have to be converted to Netscape's HTML. I'm checking all characters and insert missing characters ("&": "amp", "á": "á"). The number of characters is known and limited.

The virtual code below works. Is this a normal way to do this? Should I be using "case" instead of a nested "if"? Several apps use the same code (and names), so should this become a DLL?

Execution speed is not a problem. Speed gains are nice-to-have, in this case.

Just checking, I don't want to get used to bad programming habits like using a sprintf(buf,"%s",text) instead of a strcpy(buf,text). I'm aware of the lack of comments, and so on. A global variable (buffer) is used to avoid arguments, TBH. With Rexx I'd use functions like INSERT and/or CHANGESTR, but I assumed that with C you'll have to insert characters the harder way.

Code: [Select]
void HTMLName(void)
int i,j,len;


for (i=0;i<len;i++)
   if (buffer[i]=='&')
      for (j=len+3;j-4>i;j--)
   else if (buffer[i]=='á')
      for (j=len+6;j-7>i;j--)
   else if (buffer[i]=='¥')


   else if (buffer[i]== ... )



Setup & Installation / Informal eCS 1.2R releases
« on: August 12, 2018, 11:13:36 pm »
Apparently creating bootable, updated OS CD is quite hard. Are there informal eCS 1.2R releases for OS languages which have no official eCS 1.2R release (which shoudl work with more than one core), just like there's an informal Korean Warp 4 FP15 FixPak?

Setup & Installation / Yet another eCS 1.2-fix by users
« on: January 22, 2018, 07:20:38 pm »
Assuming a default install, as usual, with an original copy of UniAud:

x:\MMOS2\UNIMIX.EXE requires LIBC04.DLL, which is missing.

Installing a copy of LIBC04.DLL in e.g. x:\ECS\DLL or x:\MMOS2\DLL will result in a different fatal error message, but at least its text is better than the originally reported missing system DLL.

Programming / DHCP client
« on: December 30, 2017, 01:54:32 pm »
Is it possible to write a "hidden" (i.e. out of sight) third-party PM app for any version of the OS, which waits for the system to shutdown (and then e.g. kills the DHCP client when WPA2 was used, without bothering the user with a dialog)?

Or is it bad practice to start any new session, like a CMD file which would become the (quick) killer?

Programming / STARTUPDIR
« on: November 29, 2017, 04:47:23 pm »
Often one can reduce the size of INI files and install scripts by modifying what an install script (REXX, WarpIn, EXEs, ...) is doing. No object IDs for abandonware objects unless it's a WPFolder, not setting a value to its default value anymore because WPTOOLS once reported such a copied and pasted setting, using ENVIRONMENT variables instead of Microsoft's OS2ENVIRONMENT, and so on.

Code: [Select]
Assuming this EXENAME setting of a new WPProgram object of a native OS/2 F:\OO\BAR.EXE, then when/why is it required to set the STARTUPDIR to the same F:\OO as BAR.EXE's directory?

Applications / Avoiding Windows 7's CHKDSK?
« on: May 01, 2017, 11:31:46 pm »
A 256 MB flash drive (FAT) is sometimes used to transfer files from Microsoft's %*!*&#$ 7 (NTFS) to eCS (HPFS), using CMD.EXE. After the transfer the files are deleted, with CMD.EXE (DEL or RM).

If this empty USB flash drive is used again by %*!*&#$ 7, then %*!*&#$ 7 always claims that the drive may be damaged and it has to be checked. The check never repairs anything. Is there a way, for example by using a DFSee command, to stop %*!*&#$ 7 from believing that aliens have touched the drive?

The CHKDK procedure doesn't last that long, but the useless dialogs are annoying. Aliens haven't invaded the drive, and it's always okay. Protection or prevention plays no role.

Programming / ArcaOS
« on: May 01, 2017, 01:54:58 pm »
Is there a list of "fixes" since eCS 1.x? After all OS/2, eCS and ArcaOS are different products.

An example is an eCS 2.x programmer assuming that *.MP3 works like *MP3, if there is a file extension (as long as a filename ends with *.MP3, regardless of the number of dots). Apparently that was an eCS 2.1 "fix", which breaks compatibility with older versions of about the same OS, and eCS 2 nor ArcaOS are GA for more than 1 or 2 languages.

So, is there list of generic non-GA "fixes" (changes) since eCS 1.2? Since eCS 2.x? Of course "fixes" have to be relevant for programming and for all users, so a fixed driver for a "Splectaturn 2000", documented new APIs, yet another installed utility, or a new look won't qualify.

Applications / Easter egg
« on: April 18, 2017, 11:42:52 pm »
A few days too late, or a rare German non-baby joke: unzip HPFSTL17.ZIP, view HPFSTOOL.EXE with E.EXE, scroll down and remove the "damaged"/"filled" middle section of the eggshaped ASCII art. You should see a few tools.

Or execute this Rexx script in the directory of HPFSTOOL.EXE, and open EASTER.EGG with E.EXE (and a non-proportional font). The script does not remove the "damaged"/"filled" middle section of the eggshaped object:

Code: [Select]
PARSE VAR all . 'Green=Bitmap' rest
CALL CharOut 'Easter.Egg',rest
CALL CharOut 'Easter.Egg'

Or open the attached file (21 kiB) with E.EXE, to not have to download and process HPFSTOOL.EXE. Use E.EXE, do not use TYPE.

Programming / FCrackZip
« on: April 07, 2017, 06:28:00 pm » seems to be protected by a password. A programmer's joke? may be an alternative source.

- many compatibility enhancements and bugfixes suggested by Robert Meszaros.
- various small bugfixes noted by Jeff LaMarche and Max Alekseyev.
- updated to current gcc, autoconf, automake.
- added a TARGET_CPU=0 mode, for the C-only version.

It's possible to use a space in Zip 2.32's passwords, but the older FCrackZip (v0.2.4) doesn't support this. Test case:

zip -e c:\config (enter the password "a b", 3 characters)
fcrackzip -v --length 3-3 (verbose, known length is 3 characters)

It it's easy to test if a password with spaces is supported ("many compatibility enhancements"), then can someone please try that? If it's too hard, or it still doesn't support a space, then it's probably not worth a release. I don't need it at the moment, I just gave it a try with a stable Zip/2 version and noticed it didn't work.

Please note that the long "possible pw found"-list is not the problem. The problem is that the list doesn't contain any space, and the argument -p a b won't work (nor -p "a b").

Setup & Installation / Installing eCS 1.2, without CD or network
« on: April 07, 2017, 06:04:59 pm »
Situation: eCS 1.2 is installed. There's more than one partition, but no CD-drive. Try to pretend that, after preparations, only the HD works,

Is there an easy way to "FORMAT C:" and continue with an install of eCS?

"Easy" excludes a network install, or a install using some USB drive. Just formatting and a restore won't do, because restored files may contain corrupted files. As such the system still sort of works, so it is possible to copy an eCS install CD from USB to D: and use D: instead of S:.

No other solutions, please. The hardware (IDE controller) may be broken too and the disk was too large, for example, so installing a working desktop CD drive isn't a guaranteed alternative for an "easy" attempt. I hope that there's some eCS install phase which can be started after the original format of the original install.

Again, it has to be easy, and basicly HD-only. Like unzipping an XCOPY'ed install CD to D:, FORMAT C: (or a full DELTREE *), and execute D:\OS2IMGS\DISK1\INSTALL.CMD to continue a regular eCS install after formatting C:.

Internet / Lightning (SM/TB)
« on: April 06, 2017, 02:54:10 am »
To change the language (of mainly the UI) of Lightning v4.0.8, is overwriting files in the directories (and subdirectories) of both CALENDAR.DTD and LIGHTNING.DTD all it takes, or is there more to it?

So far it seems to work under an unchanged EN-US parent directory, by using a translated Win32 v4.0.8 source distribution.

Programming / TooLAME / TwoLAME
« on: April 03, 2017, 02:39:07 am »
Can a user of GCC please have a go at a lazy port (no changes or easy changes, if any, only) TooLAME (old) or TwoLAME (newer)?

There is a TooLAME for OS/2 (v0.2i), but that version is so old that it requires an usual GCC2*.DLL. This GCC DLL can be found in packages like 2007's MozTools, but not in common, more modern GCC DLL distributions.

Applications / Abandonware?
« on: March 06, 2017, 04:23:32 pm »
A registration key for (Tablica/2, periodic table and unit conversion tool, probably abandonware) can be obtained via the embedded source code section of TABLC12A.ZIP (

Open TABLICA.EXE with E.EXE, look for "/* ##SUB_LICENSE */", and use this section of code to generate a legal key. Test case: if the name is "Tablica/2", then the generated key should start with a "4" and end with a "J".

A little bit of Rexx knowledge is required to create a new Rexx CMD file which sets an uppercased "uname" ("uname=Translate('Tablica/2')") instead of calling SysIni() twice, and displays "tmp" ("SAY tmp") to obtain a generated key.

FTR. TABLC12A.ZIP's "license" probably wasn't valid anyway, and registration was always optional. Nevertheless you can still try to send cash to a (former?) student.

Applications / RPM
« on: January 26, 2017, 05:29:48 pm »
Quote from:
kLIBC / GCC Runtime Library 0.6.6
Sunday, 22 January 2017

kLIBC / GCC Runtime Library has been updated.

It is available on netlabs RPM or at the Netlabs website.

Where can a non-RPM WPI or ZIP version (for non-eCS 2.x systems) be found? For example, at there's no file date which contains the year 2017.

Programming / Add a border to a main window (IBM's Cs)
« on: January 19, 2017, 11:45:46 am »
C/Set++ code, to be renewed to VAC3: how do you "add a (specific) border to a main window"? I've tried to insert a pasted and apparently required "| FCF_DLGBORDER" somewhere (and executed "RC -r ..." and "RC ..."), but still no border.

Pages: [1]