fafa1971 wrote:On a partially-related topic (as you suggested that someone could start tinkering with it), is the source code for esxDOS free / available?
esxDOS is closed source. Copyright is asserted on the boot screen, but the accompanying documentation contains the phrase "All rights perversed". There is no publicly available API, although the 0.8.5 API was leaked. I was hoping that I could use esxDOS as the OS for the ZX Spectrum SE, but all these issues and the long time between releases became very frustrating. That led me to reverse engineer the kernel of the divMMC version of esxDOS 0.8.5 and develop an open source OS based on it for my own use. Because I didn't want to step on Miguel's toes, no future esxDOS kernel features will ever be ported to it, and it will never support divIDE. Because it was reverse engineered, comments are limited and I doubt anyone other than Miguel would be able to add LFN support to it. If you want to have a look, the last source release is here: https://github.com/cheveron/unodos3
Luzie wrote:esxDOS is free, but as far as I know, there´s no official source or API available. However, disassembly and more infos like API-calls can be found here:
The disassembles you linked to were developed by Antonio Villena by working backwards from my reverse engineered kernel. Forwards engineering if you like. But they are incomplete. They still contain my code that is not part of esxDOS and I don't think they will build a working OS. Also these are for v0.8.5, and I believe things have moved on considerably in v0.8.7.
I hope, Miguel is not annoyed while i did posting the above links here. We have to accept he keeps his work as closed source. So he don´t have to discuss with other people about it. Maybe someday he feels it´s a good time to publish an official API. We should be pleased to have such talented programmers "on our Spectrum interest" who spending lots of their time for programming. There are only a few of them who get this far with hardware and software.
My understanding is that Miguel was planning to publish the API when it was no-longer subject to change.
Anyone interested in writing dot commands will find plenty of source code in the above repository.
Based on user feedback (there are no users) I am planning to develop my OS purely for the Chloe 280SE. Dr. Slump's NMI menu is tied very closely to esxDOS and so eventually my version of the OS is likely to diverge to the point that the Slump menu won't work. So I don't think I'm competing with esxDOS. However I have to retain a certain amount of Spectrum compatibility because my target platform is the ZX Uno, and those users want to be able to run Spectrum programs.