Post by hydrophilic on Nov 8, 2014 10:06:07 GMT
DOSSHELL is a 16-bit app, so you can't play with it on a modern 64-bit versions of Windows. But you can play with it if:
* you have an old 32-bit version of Windows (like XP)
* you can boot into DOS mode (boot CD etc.)
DOSSHELL is like Windows 0.5 or the GEOS Desktop... it lets you browse files and launch applications, but that is it. It does not offer windowing services or multi-tasking (i.e., programs do not run at the same time) but it does allow task-switching (i.e., you can load 2 or more programs, and switch between them... but only 1 ever runs at a given moment).
For a fully integrated OS that allows classic BASIC and ML programs to run, in addition to new software that accesses new services, you would need to replace all ROMs... the KERNAL and BASIC ROMs... *and* you would need to use the Function ROM socket to hold most of the new services. Using the REU to cache data/drivers sounds like a good idea.
The only alternative I can think would be something like GEOS, where you load everything into RAM (or REU)... but then existing software would not work unless you use the lame GEOS method of rebooting. (Well it works so it is not completely lame... just cumbersome )
OK, gsteemso, I've found the time to read through all of your very thoughtful post. So the above blabbering was about a 'maximal compatible' version but left unanswered the question of UI design. I think a system that uses text mode with custom character set would give a good balance between speed and flexibility. A good example is the Arcade Game Construction Kit... it only runs on a C64, but the same ideas apply to the C128 (either 40 or 80 column). In essence, it is a TUI (Text User Interface) but it uses windows and custom font (and in 40-column, sprites) to allow (limited) graphics as well.
Well the 'limited graphics' of a TUI is the biggest problem with this idea... it is not as flexible as true bitmap mode, but it runs snappy fast on 1 (or 2) MHz CPU. I think most of us know how sluggish GEOS runs on a stock CPU. I would not use a true GUI (i.e., bitmap mode) without a SuperCPU.
In a windowed environment like this, you could use programs (err, apps) in the method most productive to you (the user). Writing a program or document? Switch to fullscreen. Want to copy and paste files? Set up two windows and then use "drag and drop". Play a game? Full screen bitmap (or whatever the game needs).
I like your idea of using Perl... (I have no idea what Lua is)... another idea might be to extend BASIC... make it like Visual BASIC. I can't think of anything that I can do in Perl that I can't do in VB. (Of course, I am not a Perl expert by any means )
This is a very ambitious project for the C128... trying to make it run on multiple machines sounds extremely difficult. Not impossible, but who has the time to test multiple hardware platforms?
OK, now I feel I'm rambling, so I'll shut up... if I've missed any of your points, gsteemso, let me know and I'll give specific feedback.