User Tools

Site Tools


blog:pushbx:2025:1209_early_december_loader_application_and_mcp

Early December: Loader application and MCP

2025-12-07

lDOS boot (experimental)

This is intended to be used by the MCP to support its more complex payload architecture. By using equates, the payloads can also be placed in their own sections (using the multi-section binary format of NASM) rather than all in the single section as is default for iniload.

lDebug / Loader

ETA:

Master Control Program

The MCP is a program containing other programs. For now, it contains the lDOS kernel and the lCDebugX debugger. It can boot into either as a kernel, or run the debugger when loaded as a device driver or application. I plan to add the lDOS comloader to the application payload so that its applications are also available.

The MCP uses a special arrangement of its payloads so that the debugger image appears both in the trail of the kernel payload and in the lead of the application/device payload. This allows to load the debugger in any mode, without having to put everything into a single triple-mode payload (as was the case for lRxDOS with its early lDOS comloader).

The Master Control Program is named, of course, for the antagonist of the movie Tron.

Individual changesets:

Misc

To do:

  • Allow the MCP menu to time out and use a default option, probably should be configurable (using an lCFG block?).
  • MCP currently allows patldos to access only the first lCFG block (the lDOS kernel's). Probably want an extension where in or after the lCFG block, or in a separate signature block, we specify that a subsequent lCFG block follows, along with a field giving the rough distance to the next lCFG block to avoid searching the entire file.
  • The comloader probably should default to the debugger in the MCP, instead of the version command.
  • Programs to output the .exe image trail info and lDOS iniload signature.
  • MCP comloader version: Include lDebug version line?
  • Append a .7z ball to the MCP executable?
  • Append extlib.eld to the MCP executable using eldapend? (Probably don't want extpak.eld as it needs to read a lot more from the disk to load an embedded ELD.)
  • Devise a way for the EXT command to try the appended extlib.eld automatically if an ELD is not found on the FS?
  • Add loader to the MCP?
  • Build loader as a current release build? Should also build its fdbplace.eld
  • Loader manual in or alongside lDebug manual?
  • Build MCP as a current release build?
You could leave a comment if you were logged in.
blog/pushbx/2025/1209_early_december_loader_application_and_mcp.txt · Last modified: 2025-12-09 16:35:12 +0100 Dec Tue by ecm