iirc put9000 already failed on my system long before nextor was there.
Maybe at the introduction of MSX-DOS 2.40?
To be honest, I would not be surprised if I have not used this tool for the last 20 years.
To be honest, I would not be surprised if I have not used this tool for the last 20 years.
Not ? What have you been doing all those years?
I have checked the source.
Current procedure is to determine the page where the MSX-DOS is running by using the value from 0xf2d0. Then it tries to find the routine used by MSX-DOS to print the characters. For MSX-DOS 2.20, 2.30 and 2.31 it the routine is at 0x4a71. If the routine is not found, it will print an error message telling it needs to patch MSX-DOS in a nonstandard way and help is required. (Just noticed my phone number had a wrong digit )
Put9000 installs a driver in an allocated memory page in the primary mapper.
And then the tricky part, the printing routine is patched to call a routine that is copied into the 'free' space inside the page where MSX-DOS is located. That latter routine calls the Put9000 routines.
It is quite understandable that MSX-DOS 2.4x and NEXTOR are different and that the free space has gone.
I will try to find some time this week to see if I there is an easy way to get it working again. It would be nicer if the kernel would allow to put in some printing hooks.
As for putting the sources in Bitbucket. My latest versions were written with Compass. I think I rather convert them back to GEN80 and put a little batch file next to it. Or use some cross-compiling.
It would be nicer if the kernel would allow to put in some printing hooks.
Hmm... I just wonder what is wrong with H.CHPU (#FDA4) ?
I am not sure why I did not use that hook back then. Maybe I wanted to speed up things by preventing MSX-DOS to do interslot calls to the BIOS...
Since hooks are 5 bytes, it is not enough to do a call to a slot/page/address location.
So maybe I was struggling to allocate memory from the TPA. Back then I did not know how to prevent going to BASIC and back to MSX-DOS as I did with my serial drivers. To be honest, I still don't know how do this.
Anyway, I will try to get it working again.
Making ram free in the tpa area is easy. You need to reload msxdos2.sys and set some address . I’ve this info documented somewhere. Msxdos2.sys is a ‘com’ itself . I can be executed from address 100h
So then I would need to determine to load either msxdos2.sys or nextor.sys?
Yes , this one complain i had by the name changes nestor introduced. But perhaps this name is stored somewhere