I hope that some of you may have some knowledge of pli programs on cpm3, from having built the cpm3 utility programs.
I have a working pli hexdump program which behaves correctly under cp/m 2.2 but fails under cp/m 3 due to problems with the console status call rdstat().
The rdstat call can work, but when my program is in a loop of read record, write record to screen it is as though the rdstat call is blocked and does not register the key pushes
To demonstrate the problem run "hdx hdx.rel /s". this will run the program to display one record at a time, of the hdx.rel file, "s" or " " (space) will step record - this shows that console status and read character can work. enter "c" to go into continuous mode, showing a stream of records. it should now be possible to quickly enter "s" or space to go back to stepping mode. Under cpm3 this is not detected. works fine under cpm2.
if you have a fast system you may need a larger file to dump than hdx.rel
I wondered whether my link hdx,cpmdio should be link hdx,plibios3,cpmdio but that doesn't improve the behaviour.
I am aware that cpm3 moved away from exposing bios calls for user programs but I thought that rdstat and coninp were still supported.
Any suggestions for how to fix this? I don't mind having a version of my program for each os type but I would prefer just one version. I have tested under cpm3 of romwbw and on cpm3 on z80mbc2 to rule out any strange romwbw hbios behaviour. The program works fine under cpm22 of romwbw.
I attach the program and make file for use with pli-80 1.4
Richard