• Please review our updated Terms and Rules here

SamaruX: Unik-like shell for CP/M.

Looking over the description, a few questions arise in my mind. First of all, Z80 CPU only, not 8080? Second, can it run in the minimum 20K CP/M configuration? Third, with CP/M, if you don't destroy the CCP during program execution, you can get from program termination to a command prompt without accessing the disk. Can this do the same? Finally, will this run on an O1 with only 90KB of disk space (SSSD)?
 
Looking over the description, a few questions arise in my mind. First of all, Z80 CPU only, not 8080? Second, can it run in the minimum 20K CP/M configuration? Third, with CP/M, if you don't destroy the CCP during program execution, you can get from program termination to a command prompt without accessing the disk. Can this do the same? Finally, will this run on an O1 with only 90KB of disk space (SSSD)?

The Z80 is a requirement from the MESCC compiler.


Even in the minimal configuration it needs more than 20 KB of TPA.

The SamaruX core is always in memory, the external commands are a sort of overlays, so they are small.

It's very easy to build SamaruX with every command as internal (built-in) so it should use about 45 KB of disk only.

Or you could build SamaruX only with the internal commands do you need and its size would be less.
 
Yes, very interesting.

I've got this working on my Amstrad PCW (with uIDE drives) using the SX.COM and some of the *.x external util files. This is with CP/M 3. Normal TPA is over 60k, but the main SX file uses up 25k so I'd guess that the abs min TPA would be getting on for 30k. Some of the .x files are pretty small mind you.

More info when I check other things out.

Geoff
 
Yes, very interesting.

I've got this working on my Amstrad PCW (with uIDE drives) using the SX.COM and some of the *.x external util files. This is with CP/M 3. Normal TPA is over 60k, but the main SX file uses up 25k so I'd guess that the abs min TPA would be getting on for 30k. Some of the .x files are pretty small mind you.

More info when I check other things out.

Geoff

The ".x" files are relocatable overlays (PRL format) so they are small because they use the C functions and variables already loaded by SX.COM.

So if you change SX the external commands must to be recompiled in order to match the new symbol adresses.
 
Yes, very interesting.

I've got this working on my Amstrad PCW (with uIDE drives) using the SX.COM and some of the *.x external util files. This is with CP/M 3. Normal TPA is over 60k, but the main SX file uses up 25k so I'd guess that the abs min TPA would be getting on for 30k. Some of the .x files are pretty small mind you.

More info when I check other things out.

Geoff

Tell me more Geoff!

With uIDE you should be able to make all the commands external and notice little decrease in performance. Or, put them on the RAMdisk M:...
 
Jon,

Note sure what you mean regarding 'making all the commands external'?

The system I'm playing with has some internal commands now, but most of the main processes are external already. They are working fine as external, and as you say, via the uIDE there is no evident problem.

The 'cpm' command allows the use of other CP/M commands as if they are external unix ones, and there is the extra overhead on the batch file used to implement this, but this use bypasses the facilities re pipes (esp re redirecting text output to a .txt file that could then be accessed by other progs using, say, grep, and then triggering other things within the script file).

Note - this topic is also being discussed on the CPC Wiki forum - see:
https://www.cpcwiki.eu/forum/programming/samarux-unix-like-shell-for-cpm-18524/

Geoff
 
Last edited:
Back
Top