Small Computer Monitor v1.3 available

273 views
Skip to first unread message

Steve Cousins

unread,
Mar 25, 2022, 1:51:41 PM3/25/22
to retro-comp
SCM version 1.3 builds on the SCM BIOS framework introduced in v1.2, enabling most configurations to be created with simple text files and thus reducing the need to manage so many code files. It also makes it easier to add support for new devices, such as serial interfaces.

There is very little functional difference between v1.0 and v1.3, it is mainly about supporting more hardware. The most obvious change is the output of the DEVICES command. A typical example from SCM v1.3 is:

Supported devices:
  = Z180 ASCI        @ C0 detected
  = Z80 SIO (rc)     @ 80
  = Z80 SIO          @ 80
  = Z80 SIO (rc)     @ 84
  = Z80 SIO          @ 84
  = Z80 CTC          @ 88
  = Z80 CTC          @ 8C
  = ACIA             @ 80 detected
  = ACIA             @ 40
  = CF Card          @ 10 detected
  = Diagnostic LEDs  @ 0D detected
Console devices:
1 = Z180 ASCI        @ C0
2 = Z180 ASCI        @ C0
3 = ACIA             @ 80
 
The increased code size required to support the BIOS framework means the fully-featured monitor does not fit in an 8k ROM. Anyone requiring an 8k ROM image should use SCM v1.0.

shadow 338

unread,
Mar 30, 2022, 1:51:20 PM3/30/22
to retro-comp
Thanks for bringing us this new version! Looking forward to check it out.

Steve Cousins

unread,
Mar 30, 2022, 5:54:24 PM3/30/22
to retro-comp
A few other things I should have mentioned:

Z180 configurations now include assembly and disassembly of Z180 specific instructions, thanks to a contribution by Ivan De La Fuente.

The Z180 MMU now uses a slightly different mapping for the RAM as requested by Tadeusz Pycio to make it easier to implement operating systems that use banked memory. 

Some of the SCM Apps have been improved as well. 

The CompactFlash test, info, and format apps look for a CF card at 0x10 and also 0x90, and work with both Z80 and Z180 processors. The format program detects the card size and formats accordingly.

I have improved my CP/M 2.2 CBIOS code so that it is easier to configure different versions. The various device drivers have been separated and a simple text file allows customisation of device addresses and selection of desired drivers.

My DOWNLOAD.COM installer now supports both Z80 and Z180 processors.

I want to do a lot more to extend SCM but it rarely seems to get to the top of the project list :(

Steve

shadow 338

unread,
Mar 31, 2022, 9:56:38 AM3/31/22
to retro-comp
Does v1.3 also supports showing that state of Z180 specific registers? (e.i CB's etc)

Steve Cousins

unread,
Mar 31, 2022, 11:10:05 AM3/31/22
to retro-comp
The monitor's Input from port command (I) reads the Z180's internal I/O registers. Typically these are from port address 0xC0 to  0xFF. The input command's port address parameter is 16-bit, allowing reading of the full 64k I/O address space. Similarly, the output command supports the full 64k I/O address space.

The monitor's Registers command (R) displays the standard "Z80" registers.

Steve
Message has been deleted

Steve Cousins

unread,
Mar 31, 2022, 2:24:30 PM3/31/22
to retro-comp
I have also created a .COM version of SCM. This can be run from CP/M. The attached version is SCM S7 for SC130 Z180 SBC/Motherboard. You need to remove the .TXT file extension (google doesn't like .COM files)

This version does not use CP/M to provide console I/O but instead it halts CP/M, walks all over CP/M, and starts from scratch using SCM's hardware detection and drivers.

The disadvantage of loading from CP/M rather than having SCM installed in a ROM is that it has to be reloaded every time you hit the reset button. If you are using SCM to debug code you are likely to hit reset or have your program corrupt memory on a regular basis. Also, the process of restarting CP/M and reloading SCM will overwrite most of the RAM and therefore not leave any trace of what went wrong during your debug session. It is far better to have SCM in ROM.

However, if you have a CP/M or RomWBW system without SCM in ROM then you might find this approach useful.

Next up a version for SC131.

Steve

SCM_S7.COM.txt

Steve Cousins

unread,
Mar 31, 2022, 2:42:55 PM3/31/22
to retro-comp
Looks like google really don't like COM files disguised as text files. The download (above) seems to be corrupted.

I've put a link on my website here.

Direct download file here.

shadow 338

unread,
Mar 31, 2022, 2:50:34 PM3/31/22
to retro-comp
thanks for updating SC126 firmware section with 'SCM S6 2022-02-27' (v1.3)  :)

shadow 338

unread,
Mar 31, 2022, 3:35:23 PM3/31/22
to retro-comp
Is it normal that both console devices show the same port on SC126 ?

Console devices:                                                                
1 = Z180 ASCI        @ C0                                                      
2 = Z180 ASCI        @ C0

Steve Cousins

unread,
Mar 31, 2022, 5:06:59 PM3/31/22
to retro-comp
It is normal for SCM. SCM reports the base address for the component that provides the port. Thus, for a Z80 SIO with two serial ports and a base address of 0x80, SCM reports both ports at 0x80. I like this style as it ties up with the jumpered address on the PCB, but I can also see how it could be confusing.

Steve



Reply all
Reply to author
Forward
0 new messages