Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
playground:wwarthen:start [2017/07/14 00:26] wwarthen [RomWBW Z80/Z180 System Software] |
playground:wwarthen:start [2018/01/31 20:25] wwarthen |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== RomWBW ====== | ====== RomWBW ====== | ||
- | **Z80/Z180 System Software**\\ | + | === Z80/Z180 System Software |
- | Version 2.8.1, 2017-07-05 | + | |
+ | Version 2.9.0, 2018-01-26 | ||
Wayne Warthen\\ | Wayne Warthen\\ | ||
- | [[mailto:wwarthen@gmail.com|mailto:wwarthen@gmail.com]] | + | <wwarthen@gmail.com> |
+ | |||
+ | **Download: | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https://www.retrobrewcomputers.org/ | ||
+ | |||
+ | **Related pages:** | ||
- | Download: | + | |
- | | + | * [[https:// |
- | * {{: | + | * [[https:// |
- | Related pages: | + | ===== Summary ===== |
- | * [[: | + | |
- | * [[: | + | |
- | * [[: | + | |
- | * [[: | + | |
- | RomWBW provides a complete software system for all Z80/Z180 CPU-based systems produced by the RetroBrew Computers Community including the SBC 1/2, Zeta 1/2, N8, and Mark IV. Virtually all RetroBrew hardware is supported including floppy, hard disk (IDE, CF Card, SD Card), Video, and keyboard. VT-100 terminal emulation is built-in for all video adapters. | + | RomWBW provides a complete software system for all Z80/Z180 CPU-based systems produced by the RetroBrew Computers Community including the SBC 1/2, Zeta 1/2, N8, Mark IV, and RC2014. Virtually all RetroBrew hardware is supported including floppy, hard disk (IDE, CF Card, SD Card), Video, and keyboard. VT-100 terminal emulation is built-in for all video adapters. |
In addition to a simple system monitor, RomWBW includes robust adaptations of both CP/M-80 2.2 and Z-System (ZCPR + ZSDOS). Either operating system can be loaded directly from ROM or installed and loaded from disk storage. A selection of standard/ | In addition to a simple system monitor, RomWBW includes robust adaptations of both CP/M-80 2.2 and Z-System (ZCPR + ZSDOS). Either operating system can be loaded directly from ROM or installed and loaded from disk storage. A selection of standard/ | ||
Line 23: | Line 27: | ||
A pre-built ROM image is included for each platform. If desired, system customization is achieved by making simple modifications to a configuration file and running a build script to generate a custom ROM image. All source and build tools are included in the distribution. The build scripts run under any modern 32 or 64 bit version of Microsoft Windows. | A pre-built ROM image is included for each platform. If desired, system customization is achieved by making simple modifications to a configuration file and running a build script to generate a custom ROM image. All source and build tools are included in the distribution. The build scripts run under any modern 32 or 64 bit version of Microsoft Windows. | ||
- | John Coffman's UNA hardware BIOS is fully supported by RomWBW. See the section below for more information on running RomWBW on top of UNA. | + | John Coffman’s UNA hardware BIOS is fully supported by RomWBW. See the section below for more information on running RomWBW on top of UNA. |
===== Installation ===== | ===== Installation ===== | ||
- | In general, you will just program your system's ROM with the appropriate ROM image from the RomWBW distribution. This can be done with a ROM programmer. Alternatively, | + | In general, you will just program your system’s ROM with the appropriate ROM image from the RomWBW distribution. This can be done with a ROM programmer. Alternatively, |
- | The pre-built ROM images will detect and support a reasonable range of devices including serial ports, video adapters, on-board disk interfaces, and PropIO/ | + | The pre-built ROM images will automatically |
RomWBW is distributed as a package (zip archive) containing the pre-built ROM images, source code, and all required build tools. To use a pre-built ROM image, download the distribution package to a modern computer (Windows, Mac, Linux, etc.). Unzip the archive using any of the common zip management applications. You will see that the distribution is broken up into a few sub-directories. The Binary directory contains the pre-built ROM images. Based on the table below, pick the appropriate ROM image: | RomWBW is distributed as a package (zip archive) containing the pre-built ROM images, source code, and all required build tools. To use a pre-built ROM image, download the distribution package to a modern computer (Windows, Mac, Linux, etc.). Unzip the archive using any of the common zip management applications. You will see that the distribution is broken up into a few sub-directories. The Binary directory contains the pre-built ROM images. Based on the table below, pick the appropriate ROM image: | ||
- | ^Platform^ROM Image File^Built-in Device Support| | + | ^Platform^ROM Image File^Built-in Device Support |
- | |SBC V1/ | + | |SBC V1/ |
- | |Zeta V1|ZETA_std.rom|Supports ParPortProp| | + | |Zeta V1 |ZETA_std.rom |
- | |Zeta V2|ZETA2_std.rom|Supports ParPortProp| | + | |Zeta V2 |ZETA2_std.rom|Supports ParPortProp |
- | |N8|N8_std.rom|Supports onboard SD Card, video, keyboard; production board assumed (date code >= 2312)| | + | |N8 |N8_std.rom |
- | |Mark IV|MK4_std.rom|Supports onboard SD Card, IDE Disk, VGA/CVDU video/kbd, PropIO| | + | |Mark IV |MK4_std.rom |
+ | |RC2014 | ||
- | Your system does **not** | + | Your system does **not** |
- | Connect a serial terminal or computer with terminal emulation software to the primary RS-232 port of your CPU board. A null-modem connection will generally be required. Set the line characteristics to 38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. Select VT-100 terminal emulation. | + | Connect a serial terminal or computer with terminal emulation software to the primary RS-232 port of your CPU board. A null-modem connection will generally be required. Set the line characteristics to 38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. Select VT-100 terminal emulation. RC2014 serial port baud rate is determined by hardware, but is typically 115200 baud. |
Upon power-up, your terminal should display a sign-on banner within 2 seconds followed by hardware inventory and discovery information. When hardware initialization is completed, a boot loader prompt allows you to choose a ROM-based operating system, system monitor, or boot from a disk device. | Upon power-up, your terminal should display a sign-on banner within 2 seconds followed by hardware inventory and discovery information. When hardware initialization is completed, a boot loader prompt allows you to choose a ROM-based operating system, system monitor, or boot from a disk device. | ||
- | ===== CPU Speed ===== | + | ===== Upgrading |
- | RomWBW | + | Program a new ROM chip from an image in the new distribution. Install the new ROM chip and boot your system. |
- | The use of high density floppy disks requires a CPU speed of 8 MHz or greater. | + | If you have spare ROM chips for your system, it is always safest to keep your existing, working ROM chip and program a new one with the new firmware. If the new one fails to boot, you can easily return to the known working ROM. |
- | + | ||
- | The latest X-Modem file transfer programs (XM.COM, XM-A0.COM, and XM-A1.COM) require a CPU speed of 6 MHz or greater to support the default RomWBW serial port speed of 38400 baud. Older variants of the X-Modem programs are included (XM5.COM, XM5-A0, and XM5-A1) which will handle 38400 baud on system running down to 4 MHz. | + | |
- | + | ||
- | ===== Upgrading from Previous Versions ===== | + | |
- | + | ||
- | Program a new ROM chip from an image in the new distribution. Install the new ROM chip and boot your system. At the boot loader " | + | |
- | + | ||
- | If you have spare ROM chips for your system, it is always safest to keep your existing, working ROM chip and program a new. If the new one fails to boot, you can easily return to the known working ROM. | + | |
If you use a customized ROM image, it is recommended that you first try a pre-built ROM image first and then move on to generating a custom image. | If you use a customized ROM image, it is recommended that you first try a pre-built ROM image first and then move on to generating a custom image. | ||
Line 69: | Line 66: | ||
< | < | ||
- | | + | B> |
</ | </ | ||
Line 75: | Line 72: | ||
< | < | ||
- | | + | B>COPY B: |
</ | </ | ||
Line 85: | Line 82: | ||
* SYSCOPY.COM | * SYSCOPY.COM | ||
* TALK.COM | * TALK.COM | ||
- | * FD.COM (previously FDTST.COM) | + | * FDU.COM (previously FDTST.COM) |
- | * XM*.COM | + | * XM.COM |
+ | * MODE.COM | ||
+ | | ||
===== Usage Instructions ===== | ===== Usage Instructions ===== | ||
Line 94: | Line 93: | ||
The following custom applications are included on the ROM disk to enhance the operation of RomWBW: | The following custom applications are included on the ROM disk to enhance the operation of RomWBW: | ||
- | ^Appplication^Description| | + | ^Appplication^Description |
- | |ASSIGN.COM|Add, | + | |ASSIGN.COM |
- | |SYSCOPY.COM|Copy system image to a device to make it bootable. Use SYSCOPY with no parms for usage instructions.| | + | |SYSCOPY.COM|Copy system image to a device to make it bootable. Use SYSCOPY with no parms for usage instructions. |
- | |FD.COM|Format and test floppy disks. Menu driven interface.| | + | |FDU.COM |Format and test floppy disks. Menu driven interface. |
- | |OSLDR.COM|Load a new OS on the fly. For example, you can switch to Z-System when running CP/M. Use OSLDR with no parms for usage instructions.| | + | |OSLDR.COM |
- | |FORMAT.COM|Will someday be a command line tool to format floppy disks. Currently does nothing!| | + | |FORMAT.COM |
- | |XM.COM|XModem file transfer program adapted to hardware. | + | |MODE.COM |
- | |FLASH.COM|Will Sowerbutts' | + | |XM.COM |
+ | |FLASH.COM | ||
+ | |||
+ | Please see the [[https:// | ||
+ | |||
+ | Check the [[https:// | ||
===== UNA Hardware BIOS ===== | ===== UNA Hardware BIOS ===== | ||
- | John Coffman has produced a new generation of hardware BIOS called UNA. In addition to the classic ROM images described above, RomWBW | + | John Coffman has produced a new generation of hardware BIOS called UNA. The standard RomWBW distribution includes it’s own hardware BIOS. However, RomWBW |
- | UNA is customized dynamically using a ROM based setup routine and the setup is persisted in the system NVRAM of the RTC chip. This means that a single UNA-based ROM image can be used on most of the RetroBrew platforms and is easily customized. UNA also supports FAT file system access that can be used for in-situ ROM programming and loading system images. | + | UNA is customized dynamically using a ROM based setup routine and the setup is persisted in the system NVRAM of the RTC chip. This means that the single UNA-based ROM image can be used on most of the RetroBrew platforms and is easily customized. UNA also supports FAT file system access that can be used for in-situ ROM programming and loading system images. |
While John is likely to enhance UNA over time, there are currently a few things that UNA does not support: | While John is likely to enhance UNA over time, there are currently a few things that UNA does not support: | ||
* Floppy Drives | * Floppy Drives | ||
- | * Video/ | + | * Terminal Emulation |
* Zeta 1 and N8 Systems | * Zeta 1 and N8 Systems | ||
* Some older support boards | * Some older support boards | ||
- | If you wish to try the UNA variant of RomWBW, then just program your ROM with the ROM image called " | + | The UNA version embedded in RomWBW |
- | Please refer to the [[software: | + | Please refer to the [[https:// |
===== CP/M vs. Z-System ===== | ===== CP/M vs. Z-System ===== | ||
Line 124: | Line 128: | ||
There are two OS variants included in this distribution and you may choose which one you prefer to use. Both variants are now included in the pre-built ROM images. You will be given the choice to boot either CP/M or Z-System at startup. | There are two OS variants included in this distribution and you may choose which one you prefer to use. Both variants are now included in the pre-built ROM images. You will be given the choice to boot either CP/M or Z-System at startup. | ||
- | The traditional Digital Research (DRI) CP/M OS is the first choice. The Doc directory contains a manual for CP/M usage ("CPM Manual.pdf"). If you are new to the RetroBrew Computer systems, I would currently recommend using the CP/M variant to start with simply because it has gone through more testing and you are less likely to encounter problems. | + | The traditional Digital Research (DRI) CP/M OS is the first choice. The Doc directory contains a manual for CP/M usage (“CPM Manual.pdf”). If you are new to the RetroBrew Computer systems, I would currently recommend using the CP/M variant to start with simply because it has gone through more testing and you are less likely to encounter problems. |
- | The other choice is to use the most popular non-DRI CP/M "clone" | + | The other choice is to use the most popular non-DRI CP/M “clone” which is generally referred to as Z-System. |
===== ROM Customization ===== | ===== ROM Customization ===== | ||
Line 134: | Line 138: | ||
Essentially, | Essentially, | ||
- | For those who are interested in more than basic system customization, | + | For those who are interested in more than basic system customization, |
- | + | ||
- | Note that the ROM customization process does not apply to UNA. All UNA customization is performed within the ROM setup script. | + | |
Complete documentation of the customization process is found in the ReadMe.txt file in the Source directory. | Complete documentation of the customization process is found in the ReadMe.txt file in the Source directory. | ||
+ | |||
+ | Note that the ROM customization process does not apply to UNA. All UNA customization is performed within the ROM setup script. | ||
===== Source Code Respository ===== | ===== Source Code Respository ===== | ||
Line 148: | Line 152: | ||
===== Distribution Directory Layout ===== | ===== Distribution Directory Layout ===== | ||
- | The RomWBW distribution is a compressed zip archive file organized in a set of directories. Each of these directories has it's own ReadMe.txt file describing the contents in detail. In summary, these directories are: | + | The RomWBW distribution is a compressed zip archive file organized in a set of directories. Each of these directories has it’s own ReadMe.txt file describing the contents in detail. In summary, these directories are: |
- | ^Directory^Description| | + | ^Directory^Description |
- | |Binary|The final output files of the build process are placed here. Most importantly, | + | |Binary |
- | |Doc|Contains various detailed documentation including the operating systems, RomWBW architecture, | + | |Doc |Contains various detailed documentation including the operating systems, RomWBW architecture, |
- | |Source|Contains the source code files used to build the software and ROM images.| | + | |Source |
- | |Tools|Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system.| | + | |Tools |
===== Acknowledgements ===== | ===== Acknowledgements ===== | ||
Line 163: | Line 167: | ||
David Giles has contributed support for the CSIO support in the SD Card driver. | David Giles has contributed support for the CSIO support in the SD Card driver. | ||
+ | |||
+ | Ed Brindley has contributed some of the code that supports the RC2014 platform. | ||
UNA BIOS is a product of John Coffman. | UNA BIOS is a product of John Coffman. | ||
Line 172: | Line 178: | ||
[[https:// | [[https:// | ||
- | Also feel free to email Wayne Warthen at [[wwarthen@gmail.com|wwarthen@gmail.com]]. | + | Also feel free to email Wayne Warthen at <wwarthen@gmail.com>. |
\\ | \\ | ||