Skip to content

Conversation

skissane
Copy link
Owner

@skissane skissane commented Jan 9, 2017

Use a separate executable written in assembly to maximise amount of conventional memory available to programs being run from the menu.

Launcher is an assembly language program which avoids memory consumption
while DOSMENU is running. Note however the bugs still need to be
resolved (it works, but it corrupts memory causing crashes when
executing certain programs, e.g. Commander Keen 1)
1) We deallocated our stack, which meant it could be overwritten by
   the programs we launched.
   FIX: reserve 256 bytes for stack, and switch stacks at start of
   launcher, before deallocating memory

This solves problem where we would crash upon exiting certain programs,
such as Commander Keen 1.

2) We couldn't run .BAT files via launcher
   FIX: in dosmenu.c, change command to be executed to be %COMSPEC%
   (presumably COMMAND.COM), and put /C before arguments

This solves problem where programs launched by batch files would not
start if launcher was enabled.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant