I am happy to report a ton of things have been tested working. I have made big advancements in this project since my last post.
Example:
On boot you now have 3 options. Tell me you are connecting in dumb TTY mode, ADDS 25 standard or better yet a special TRS-80 terminal.
TTY mode is for dumb terminal connections using simplest protocols. No cursor control is offered.
ADDS 25 is an early standard created for ADDS series of terminals. This mode does very well at duplicating TRSDOS video screens at local or remote terminals. It provides cursor and screen controls. Some keyboard programming etc is part of standard MSDOS, Windows, MAC etc terminal emulator programs.
Lastly we have a new TRS-80 mode that emulates video and keyboard functions almost perfectly. All keyboard keys, function keys, clear shift whatever key, reverse video, cursor controls, scroll protect etc is all supported. You will need a PC with TRS-80 emulator or a real TRS-80 model 4/4p to connect (remember sorry I do not support model 1/3 (very sorry (great machines but beyond my scope))). This will replicate almost all TRSDOS video functions perfectly but does require a real model 4 or emulator.
If you will be using this for your next home solar or wind project you may use simple TTY mode. Whereby you can connect to a remote sugar packet sized TRS-OS system, run your favorite copy of TRSDOS and monitor your wind turbine you developed an interface to.
Using your Microsoft BASIC included with TRSDOS you developed programs to control all this. After you get your system figured out you can convert it all to C and use Misosys 1st class compiler to compile your own home control system. Many people on here seem to want to roll their own anyway. Microsoft BASIC will still have a handful of address that BASIC could directly interface with. Connect to your TRS-OS platform located up on your wind turbine using a wireless modem or that’s what I will be doing….. Don’t worry about your BASIC program speed, remember I have given you a 5000% increase. For all you old people (I know each of you if you attend old folks meetings - I am one always napping), remember those warm fuzzy Christmas mornings with your new TRS-80? Want to feel that again with something new and heat up your soldering iron? Build a project and write your code on an old favorite processor? Its now possible.
Processor speed is 5000% increase or more. But do you know how much time TRSDOS spent in I/O with drives etc? Probably a lot more time doing I/O than actually running your program. Now not only is processor a 50 fold increase but I/O using RAM storage is a blink compared to a real TRS-80.
Next, remember my storage convention for both volatile and non-volatile storage. Storage is divided into slices to ease management. Volumes (or drive contents) are loaded into these slices of storage. Most installations will only have 2 slices 0 & 1.
Slice 0 is a TRS-OS system slice 64.25k long (for now) and is always reserved for OS and starts @00 0000h.
Slice 1 then begins system RAM disk storage.
Very first VOLUME (drive) in SLICE 1 is TRSDOS drive 0. It is needed for things like overlays, utilities, read only code etc. This VOLUME (drive 0) is always write protected. Thus if changes are needed to OS code (updates etc) special tasks are required by systems operator to unlock write protection of this systems area.
Other VOLUMES (drive contents) in SLICE 1 may be R/W. Remember slice 1 can have dozens of volumes as its contents (limited by RAM). TRSDOS only sees 8 of these VOLUMES at one time however a new command will be included to swith to any volume at any time on fly. Most installations requiring multiple non-volatile storage drives to be open at one time in TRSDOS will store these files in SLICE 2 which points to SD storage.
Until now slices only supported DiskDisk file format.
I am happy to report your slice one can now contain DSK emulator files and can contain as many files as you have storage available. Remember these files will contain images of RAM drives. Thus these files can be loaded into RAM drives and then saved back to non-volatile storage as needed.
TRS-OS and your emulator can interchange these files seamlessly. Soon I will support SD cards for additional larger non-volatile storage but first high speed storage residing in RAM containing OS and overlays etc was needed. Both slice 0 & 1 reside in RAM.
I have visions at night when I sleep of a future when one day your PC with a TRS-80 emulator connected with a seperate eZ80 hardware platform & running TRS-OS, could, share a drive in realtime.
TRS-OS on boot now recognizes if slice 1 contains DSK file or DiskDisk. I have created one disk driver that supports DiskDisk files, DSK and can also create very large RAM drives using max cyl, sectors per track etc. Limits of real storage is hit before limits of driver.
Further corrections, additions and debugging will continue. I am getting good results from test sites and am soon sending out a release with these new features.
Fidelity of running TRSDOS 6 on eZ80 is nearly perfect (or near as I can get it). Remember, you will be booting your own favorite copy of TRSDOS 6.x. It does not require any changes to TRSDOS 6.x to run on eZ80 at 5000% faster. One change is sys0 is ignored and been replaced.
I had to do a lot of deep study recently on TRS-80 UART. Down into its finer details and then get driver on eZ80 to almost perfectly replicate at bit image level, this UART to TRSDOS. So far so good, things like XMODEM programs even work. One problem with XMODEM. With TRS-OS system 5000% faster, when I start a file transfer it goes thru all timeout steps before I can get to terminal program and start transfer. This is one problem I have it things run way tooooooo fast! But now my COM driver makes OS and apps think they are talking with a real TRS-80 UART.
Speaking of debugging; I recently have been testing TRSDOS DEBUG facility included with TRSDOS. It seems to be running from TRSDOS 6 original system disks unchanged.
I hope soon to support booting to other operating systems. Would it appeal if this projects could also boot to something like CP/M? Best of both legacy worlds platform.
That’s about it for now and if I make any progress I will try to post.