Implement IDLEHALT feature like FreeDOS has
Currently the EDR-DOS kernel delegates power saving to an external driver internally called $IDLE$. This driver is not available in source. It would be nice to have an IDLEHALT feature like FreeDOS has right in the kernel and in addition an IDLE command to alter the behaviour at runtime.
not sure runtime control is that much useful. a config.sys setting would be nice enough IMO. Esp. if it's named IDLEHALT, so we could use the same config.sys for EDR and the FD kernel :)
Yes, I would make this an IDLEHALT config.sys command to be compatible. But it would neverthless be nice if this could be disabled / re-enabled at runtime if the user notices some specific slowdowns for an application.
the user notices some specific slowdowns for an application.
in my case it was the opposite - when trying out freedos in qemu (kvm), i noticed that my host cpu went to 100% while i had freedos' edit.exe open. since that also means the fans kick in, it's really annoying. either that edit program has a non-blocking input polling loop, or the freedos version i installed doesnt properly support sleep-states...
the user notices some specific slowdowns for an application.
in my case it was the opposite - when trying out freedos in qemu (kvm), i noticed that my host cpu went to 100% while i had freedos' edit.exe open. since that also means the fans kick in, it's really annoying. either that edit program has a non-blocking input polling loop, or the freedos version i installed doesnt properly support sleep-states...
There is something fishy about the FreeDOS edit in general. My mouse cursor flashes constantly, even if the cursor is not moving. This does not seem to be system specific. So at least with a mouse driver loaded there seems to be some polling input loop running.
the user notices some specific slowdowns for an application.
in my case it was the opposite - when trying out freedos in qemu (kvm), i noticed that my host cpu went to 100% while i had freedos' edit.exe open. since that also means the fans kick in, it's really annoying. either that edit program has a non-blocking input polling loop, or the freedos version i installed doesnt properly support sleep-states...
There is something fishy about the FreeDOS edit in general. My mouse cursor flashes constantly, even if the cursor is not moving. This does not seem to be system specific. So at least with a mouse driver loaded there seems to be some non-blocking polling input loop running.
https://www.os2museum.com/wp/idle-dr-dos/
There IS here detais and some kind of driver for 8086 only.
Since DR-DOS 5 we have IDLE command and the IDDLE device driver support to halt CPU. Basically it is managed in DRDOS\CIO.ASM which ends calling idle_vec.
The driver implementation essentialy executes a HLT, so I was wondering if we could add to the kernel itself the HLT instruction and add a minimum native implementation that of course could be expanded by using DRIDLE if needed. Much like the FreeDOS IDLEHALT.
FreeDOS IDLEHALT: https://home.mnet-online.de/willybilly/fdhelp-108a/es/hhstndrd/cnfigsys/idlehalt.htm DRIDLE.SYS: https://github.com/javiergutierrezchamorro/DRIDLE IDLE DR-DOS: https://www.os2museum.com/wp/idle-dr-dos/