> On May 3, 2023, at 2:48 PM, C. Masloch <pus...@ulukai.org> wrote:
> [..]
> Your latest code [1] has an error: If only one parameter is given, it will 
> write a retf, then the header, then (as before) a jmp and retf. The second 
> retf at .FarReturnIISP appears to be unused, and it seems you forgot to 
> delete it once you implemented the %1_FAR_RETURN placement before the header.

Yeah, left over stuff that should have been removed. 

Since Logger sets the RETF for the macro, it was not effected. 

But, that could have caused some big headaches, if the macro got reused. 

Thanks. 

> [1]: 
> https://gitlab.com/DOSx86/logger/-/blob/68952313d0bfa91321a3451b2a335ada70e7504a/source/logger/common.inc#L263
>  
> <https://gitlab.com/DOSx86/logger/-/blob/68952313d0bfa91321a3451b2a335ada70e7504a/source/logger/common.inc#L263>
> 
>>> * The %%PrivateEntry code could hardcode the bx response in an immediate 
>>> "mov bx, imm16" instruction, saving at least 2 bytes. Like the multiplex 
>>> number you could patch this instruction's data if it isn't a constant.
>> Great catch. Don’t know what I was thinking when I used the value stored in 
>> the Device Header for direct driver calls. It could move from version to 
>> version. But, It won’t change during execution.
>>> 
>>> * The %%Uninstall response code 06h is commented by you as "cannot remove, 
>>> loaded in config.sys" but in the specification it says "disabled, but can 
>>> not be removed from memory because loaded from CONFIG.SYS". The "disabled" 
>>> indicates that you should have disabled your resident program when you 
>>> return this function code. (As I mentioned before, the uninstall function 
>>> return codes in the current AMIS leave things to be desired.)
>> Thanks, I mis-read that as being the “uninstall function” is disabled.
>> I’m going to change it to 0x05 “not safe, try again later” or maybe just 
>> 0x01 “unsuccessful” would be better.
> 
> I would go with 01h or 00h. Let me look it up, ah yeah I am returning zero in 
> my debugger. [2]

Since I plan on eventually supporting TSR mode, I’ll go with 0x01. Using 0x00, 
would make it "non-compliant". 

> [2]: https://hg.pushbx.org/ecm/ldebug/file/73873421b18d/source/amis.asm#l46 
> <https://hg.pushbx.org/ecm/ldebug/file/73873421b18d/source/amis.asm#l46>

Oh. I added the LOG-RIO demo (Redirect standard I/O) and have at least started 
the API document.

:-)

Jerome


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to