term.redirect(term.native())
you bypass the window API and write directly to the screen. I whipped up a short program that runs an instance of shell without multishell. The shell then checks for the startup script, and finds this again. However, this script sees that multishell is already dead, and, instead, runs the file "newStartup". If you want a startup script while using this, use newStartup. Here's the entire code:
if window or multishell then
sleep(0)
--tlco
local a = _G.printError
function _G.printError()--when the bios goes to print the error, we run our code
_G.printError=a
--no multishell
term.redirect(term.native())
multishell=nil
--no window
term.setTextColor(colors.yellow)term.setBackgroundColor(colors.black)
term.clear()term.setCursorPos(1,1)
write"Multishelless Top-level "
os.run({},"rom/programs/shell")
end
os.queueEvent"terminate"--cause the shell to terminaye
else
shell.run"newStartup"
end
As you can see, it's pretty short. Just run:pastebin get aAvvij3f startup
to install.
Games should dramatically increase in performance. Slower games become playable!