mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
693 lines
32 KiB
693 lines
32 KiB
<!DOCTYPE html>
|
|
<html lang="en" data-bs-theme="auto">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
|
|
|
|
<link rel="shortcut icon" href="../img/favicon.ico">
|
|
<title>Introduction - RomWBW Documentation V3.6</title>
|
|
<link href="../css/bootstrap.min.css" rel="stylesheet">
|
|
<link href="../css/fontawesome.min.css" rel="stylesheet">
|
|
<link href="../css/brands.min.css" rel="stylesheet">
|
|
<link href="../css/solid.min.css" rel="stylesheet">
|
|
<link href="../css/v4-font-face.min.css" rel="stylesheet">
|
|
<link href="../css/base.css" rel="stylesheet">
|
|
<link id="hljs-light" rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github.min.css" disabled>
|
|
<link id="hljs-dark" rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/github-dark.min.css" disabled>
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script>
|
|
<script>hljs.highlightAll();</script>
|
|
</head>
|
|
|
|
<body>
|
|
<div class="navbar fixed-top navbar-expand-lg navbar-dark bg-primary">
|
|
<div class="container">
|
|
<a class="navbar-brand" href="..">RomWBW Documentation V3.6</a>
|
|
<!-- Expander button -->
|
|
<button type="button" class="navbar-toggler" data-bs-toggle="collapse" data-bs-target="#navbar-collapse" aria-controls="navbar-collapse" aria-expanded="false" aria-label="Toggle navigation">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
|
|
<!-- Expanded navigation -->
|
|
<div id="navbar-collapse" class="navbar-collapse collapse">
|
|
<!-- Main navigation -->
|
|
<ul class="nav navbar-nav">
|
|
<li class="nav-item">
|
|
<a href="./" class="nav-link active" aria-current="page">Introduction</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a href="../UserGuide/" class="nav-link">User Guide</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a href="../SystemGuide/" class="nav-link">System Guide</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a href="../Applications/" class="nav-link">Applications</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a href="../Catalog/" class="nav-link">Catalog</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a href="../Hardware/" class="nav-link">Hardware</a>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class="nav navbar-nav ms-md-auto">
|
|
<li class="nav-item">
|
|
<a href="#" class="nav-link" data-bs-toggle="modal" data-bs-target="#mkdocs_search_modal">
|
|
<i class="fa fa-search"></i> Search
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a rel="prev" class="nav-link disabled">
|
|
<i class="fa fa-arrow-left"></i> Previous
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a rel="next" href="../UserGuide/" class="nav-link">
|
|
Next <i class="fa fa-arrow-right"></i>
|
|
</a>
|
|
</li>
|
|
<li class="nav-item">
|
|
<a href="https://github.com/wwarthen/RomWBW" class="nav-link"><i class="fa-brands fa-github"></i> GitHub</a>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<button id="theme-menu" aria-expanded="false" data-bs-toggle="dropdown" data-bs-display="static" aria-label="Toggle theme" class="nav-link dropdown-toggle">
|
|
<i class="fa-solid fa-circle-half-stroke fa-fw"></i>
|
|
<span class="d-lg-none ms-2">Toggle theme</span>
|
|
</button>
|
|
<ul class="dropdown-menu dropdown-menu-end">
|
|
<li>
|
|
<button class="dropdown-item d-flex align-items-center" data-bs-theme-value="light" aria-pressed="false">
|
|
<i class="fa-solid fa-sun fa-fw"></i>
|
|
<span class="ms-2">Light</span>
|
|
<i class="fa-solid fa-check ms-auto d-none"></i>
|
|
</button>
|
|
</li>
|
|
<li>
|
|
<button class="dropdown-item d-flex align-items-center" data-bs-theme-value="dark" aria-pressed="false">
|
|
<i class="fa-solid fa-moon fa-fw"></i>
|
|
<span class="ms-2">Dark</span>
|
|
<i class="fa-solid fa-check ms-auto d-none"></i>
|
|
</button>
|
|
</li>
|
|
<li>
|
|
<button class="dropdown-item d-flex align-items-center" data-bs-theme-value="auto" aria-pressed="true">
|
|
<i class="fa-solid fa-circle-half-stroke fa-fw"></i>
|
|
<span class="ms-2">Auto</span>
|
|
<i class="fa-solid fa-check ms-auto"></i>
|
|
</button>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script src="../js/darkmode.js"></script>
|
|
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-md-3"><div class="navbar-expand-md bs-sidebar hidden-print affix" role="complementary">
|
|
<div class="navbar-header">
|
|
<button type="button" class="navbar-toggler collapsed" data-bs-toggle="collapse" data-bs-target="#toc-collapse" title="Table of Contents">
|
|
<span class="fa fa-angle-down"></span>
|
|
</button>
|
|
</div>
|
|
|
|
|
|
<div id="toc-collapse" class="navbar-collapse collapse card bg-body-tertiary">
|
|
<ul class="nav flex-column">
|
|
|
|
<li class="nav-item" data-bs-level="1"><a href="#overview" class="nav-link">Overview</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="nav-item" data-bs-level="1"><a href="#description" class="nav-link">Description</a>
|
|
<ul class="nav flex-column">
|
|
<li class="nav-item" data-bs-level="2"><a href="#primary-features" class="nav-link">Primary Features</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item" data-bs-level="2"><a href="#included-software" class="nav-link">Included Software</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item" data-bs-level="2"><a href="#rom-distribution" class="nav-link">ROM Distribution</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item" data-bs-level="2"><a href="#installation-operation" class="nav-link">Installation & Operation</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item" data-bs-level="2"><a href="#documentation" class="nav-link">Documentation</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="nav-item" data-bs-level="1"><a href="#support" class="nav-link">Support</a>
|
|
<ul class="nav flex-column">
|
|
<li class="nav-item" data-bs-level="2"><a href="#getting-assistance" class="nav-link">Getting Assistance</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="nav-item" data-bs-level="1"><a href="#contributions" class="nav-link">Contributions</a>
|
|
<ul class="nav flex-column">
|
|
<li class="nav-item" data-bs-level="2"><a href="#acknowledgments" class="nav-link">Acknowledgments</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
<li class="nav-item" data-bs-level="2"><a href="#related-projects" class="nav-link">Related Projects</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="nav-item" data-bs-level="1"><a href="#licensing" class="nav-link">Licensing</a>
|
|
<ul class="nav flex-column">
|
|
<li class="nav-item" data-bs-level="2"><a href="#license-terms" class="nav-link">License Terms</a>
|
|
<ul class="nav flex-column">
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div></div>
|
|
<div class="col-md-9" role="main">
|
|
|
|
<p><strong>RomWBW Introduction</strong> \
|
|
Version 3.6 \
|
|
Wayne Warthen (<a href="mailto:wwarthen@gmail.com">wwarthen@gmail.com</a>) \
|
|
30 Jun 2025</p>
|
|
<h1 id="overview">Overview</h1>
|
|
<p>RomWBW software provides a complete, commercial quality implementation
|
|
of CP/M (and work-alike) operating systems and applications for modern
|
|
Z80/180/280 retro-computing hardware systems.</p>
|
|
<p>A wide variety of platforms are supported including those produced by
|
|
these developer communities:</p>
|
|
<ul>
|
|
<li><a href="https://www.retrobrewcomputers.org">RetroBrew Computers</a>
|
|
(<a href="https://www.retrobrewcomputers.org">https://www.retrobrewcomputers.org</a>)</li>
|
|
<li><a href="https://rc2014.co.uk">RC2014</a> (<a href="https://rc2014.co.uk">https://rc2014.co.uk</a>),<br />
|
|
<a href="https://groups.google.com/g/rc2014-z80">RC2014-Z80</a>
|
|
(<a href="https://groups.google.com/g/rc2014-z80">https://groups.google.com/g/rc2014-z80</a>)</li>
|
|
<li><a href="https://groups.google.com/g/retro-comp">Retro Computing</a>
|
|
(<a href="https://groups.google.com/g/retro-comp">https://groups.google.com/g/retro-comp</a>)</li>
|
|
<li><a href="https://smallcomputercentral.com/">Small Computer Central</a>
|
|
(<a href="https://smallcomputercentral.com/">https://smallcomputercentral.com/</a>)</li>
|
|
</ul>
|
|
<p>A complete list of the currently supported platforms is found in <a href="../Hardware/">RomWBW
|
|
Hardware</a> .</p>
|
|
<h1 id="description">Description</h1>
|
|
<h2 id="primary-features">Primary Features</h2>
|
|
<p>By design, RomWBW isolates all of the hardware specific functions in the
|
|
ROM chip itself. The ROM provides a hardware abstraction layer such that
|
|
all of the operating systems and applications on a disk will run on any
|
|
RomWBW-based system. To put it simply, you can take a disk (or CF/SD/USB
|
|
Card) and move it between systems transparently.</p>
|
|
<p>Supported hardware features of RomWBW include:</p>
|
|
<ul>
|
|
<li>Z80 Family CPUs including Z80, Z180, and Z280</li>
|
|
<li>Banked memory services for several banking designs</li>
|
|
<li>Disk drivers for RAM, ROM, Floppy, IDE ATA/ATAPI, CF, SD, USB, Zip,
|
|
Iomega</li>
|
|
<li>Serial drivers including UART (16550-like), ASCI, ACIA, SIO</li>
|
|
<li>Video drivers including TMS9918, SY6545, MOS8563, HD6445, Xosera</li>
|
|
<li>Keyboard (PS/2) drivers via VT8242 or PPI interfaces</li>
|
|
<li>Real time clock drivers including DS1302, BQ4845</li>
|
|
<li>Support for CP/NET networking using Wiznet, MT011 or Serial</li>
|
|
<li>Built-in VT-100 terminal emulation support</li>
|
|
</ul>
|
|
<p>A dynamic disk drive letter assignment mechanism allows mapping
|
|
operating system drive letters to any available disk media.
|
|
Additionally, mass storage devices (IDE Disk, CF Card, SD Card, etc.)
|
|
support the use of multiple slices (up to 256 per device). Each slice
|
|
contains a complete CP/M filesystem and can be mapped independently to
|
|
any drive letter. This overcomes the inherent size limitations in legacy
|
|
OSes and allows up to 2GB of addressable storage on a single device,
|
|
with up to 128MB accessible at any one time.</p>
|
|
<h2 id="included-software">Included Software</h2>
|
|
<p>Multiple disk images are provided in the distribution. Most disk images
|
|
contain a complete, bootable, ready-to-run implementation of a specific
|
|
operating system. A “combo” disk image contains multiple slices, each
|
|
with a full operating system implementation. If you use this disk image,
|
|
you can easily pick whichever operating system you want to boot without
|
|
changing media.</p>
|
|
<p>Some of the included software:</p>
|
|
<ul>
|
|
<li>Operating Systems (CP/M 2.2, ZSDOS, NZ-COM, CP/M 3, ZPM3, Z3PLUS, QPM
|
|
)</li>
|
|
<li>Support for other operating systems, p-System, FreeRTOS, and FUZIX.</li>
|
|
<li>Programming Tools (Z80ASM, Turbo Pascal, Forth, Cowgol)</li>
|
|
<li>C Compiler’s including Aztec-C, and HI-TECH C</li>
|
|
<li>Microsoft Basic Compiler, and Microsoft Fortran</li>
|
|
<li>Some games such as Colossal Cave, Zork, etc</li>
|
|
<li>Wordstar Word processing software</li>
|
|
</ul>
|
|
<p>Some of the provided software can be launched directly from the ROM
|
|
firmware itself:</p>
|
|
<ul>
|
|
<li>System Monitor</li>
|
|
<li>Operating Systems (CP/M 2.2, ZSDOS)</li>
|
|
<li>ROM BASIC (Nascom BASIC and Tasty BASIC)</li>
|
|
<li>ROM Forth</li>
|
|
</ul>
|
|
<p>A tool is provided that allows you to access a FAT-12/16/32 filesystem.
|
|
The FAT filesystem may be coresident on the same disk media as RomWBW
|
|
slices or on stand-alone media. This makes exchanging files with modern
|
|
OSes such as Windows, MacOS, and Linux very easy.</p>
|
|
<h2 id="rom-distribution">ROM Distribution</h2>
|
|
<p>The <a href="https://github.com/wwarthen/RomWBW">RomWBW Repository</a>
|
|
(<a href="https://github.com/wwarthen/RomWBW">https://github.com/wwarthen/RomWBW</a>) on GitHub is the official
|
|
distribution location for all project source and documentation.</p>
|
|
<p>RomWBW is distributed as both source code and pre-built ROM and disk
|
|
images.</p>
|
|
<p>The pre-built ROM images distributed with RomWBW are based on the
|
|
default system configurations as determined by the hardware
|
|
provider/designer. The pre-built ROM firmware images are generally
|
|
suitable for most users.</p>
|
|
<p>The fully-built distribution releases are available on the <a href="https://github.com/wwarthen/RomWBW/releases">RomWBW
|
|
Releases Page</a>
|
|
(<a href="https://github.com/wwarthen/RomWBW/releases">https://github.com/wwarthen/RomWBW/releases</a>) of the repository.</p>
|
|
<p>On this page, you will normally see a Development Snapshot as well as
|
|
recent stable releases. Unless you have a specific reason, I suggest you
|
|
stick to the most recent stable release.</p>
|
|
<p>The asset named RomWBW-vX.X.X-Package.zip includes all pre-built ROM and
|
|
Disk images as well as full source code. The other assets contain only
|
|
source code and do not have the pre-built ROM or disk images.</p>
|
|
<h4 id="distribution-directory-layout">Distribution Directory Layout</h4>
|
|
<p>The RomWBW distribution is a compressed zip archive file organized in a
|
|
set of directories. Each of these directories has its own ReadMe.txt
|
|
file describing the contents in detail. In summary, these directories
|
|
are:</p>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th><strong>Directory</strong></th>
|
|
<th><strong>Description</strong></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td><strong>Binary</strong></td>
|
|
<td>The final output files of the build process are placed here. Most importantly, the ROM images with the file names ending in “.rom” and disk images ending in .img.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><strong>Doc</strong></td>
|
|
<td>Contains various detailed documentation, both RomWBW specifically as well as the operating systems and applications.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><strong>Source</strong></td>
|
|
<td>Contains the source code files used to build the software and ROM images.</td>
|
|
</tr>
|
|
<tr>
|
|
<td><strong>Tools</strong></td>
|
|
<td>Contains the programs that are used by the build process or that may be useful in setting up your system.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<h4 id="building-from-source">Building from Source</h4>
|
|
<p>It is also very easy to modify and build custom ROM images that fully
|
|
tailor the firmware to your specific preferences. All tools required to
|
|
build custom ROM firmware under Windows are included – no need to
|
|
install assemblers, etc. The firmware can also be built using Linux or
|
|
MacOS after confirming a few standard tools have been installed.</p>
|
|
<h2 id="installation-operation">Installation & Operation</h2>
|
|
<p>In general, installation of RomWBW on your platform is very simple. You
|
|
just need to program your ROM with the correct ROM image from the RomWBW
|
|
distribution. Subsequently, you can write disk images on your disk
|
|
drives (IDE disk, CF Card, SD Card, etc.) which then provides even more
|
|
functionality.</p>
|
|
<p>Complete instructions for installation and operation of RomWBW are found
|
|
in the <a href="../UserGuide/">RomWBW User Guide</a>. It is also a good idea to
|
|
review the <a href="https://github.com/wwarthen/RomWBW/blob/master/RELEASE_NOTES.md">Release
|
|
Notes</a>
|
|
for helpful release-specific information.</p>
|
|
<h2 id="documentation">Documentation</h2>
|
|
<p>There are several documents that form the core of the RomWBW
|
|
documentation:</p>
|
|
<ul>
|
|
<li>
|
|
<p><a href="../UserGuide/">RomWBW User Guide</a> is the main user guide for RomWBW,
|
|
it covers the major topics of how to install, manage and use RomWBW,
|
|
and includes additional guidance to the use of some of the operating
|
|
systems supported by RomWBW</p>
|
|
</li>
|
|
<li>
|
|
<p><a href="../Hardware/">RomWBW Hardware</a> contains a description of all the
|
|
hardware platforms, and devices supported by RomWBW.</p>
|
|
</li>
|
|
<li>
|
|
<p><a href="../Applications/">RomWBW Applications</a> is a reference for the
|
|
ROM-hosted and OS-hosted applications created or customized to enhance
|
|
the operation of RomWBW.</p>
|
|
</li>
|
|
<li>
|
|
<p><a href="../Catalog/">RomWBW Disk Catalog</a> is a reference for the contents of
|
|
the disk images provided with RomWBW, with a description of many of
|
|
the files on each image</p>
|
|
</li>
|
|
<li>
|
|
<p><a href="../SystemGuide/">RomWBW System Guide</a> discusses much of the internal
|
|
design and construction of RomWBW. It includes a reference for the
|
|
RomWBW HBIOS API functions.</p>
|
|
</li>
|
|
</ul>
|
|
<p>An online HTML version of this documentation is hosted at
|
|
<a href="https://wwarthen.github.io/RomWBW">https://wwarthen.github.io/RomWBW</a>.</p>
|
|
<p>Each of the operating systems and ROM applications included with RomWBW
|
|
are sophisticated tools in their own right. It is not reasonable to
|
|
fully document their usage. However, you will find complete manuals in
|
|
PDF format in the Doc directory of the distribution. The intention of
|
|
this documentation is to describe the operation of RomWBW and the ways
|
|
in which it enhances the operation of the included applications and
|
|
operating systems.</p>
|
|
<p>Since RomWBW is purely a software product for many different platforms,
|
|
the documentation does <strong>not</strong> cover hardware construction,
|
|
configuration, or troubleshooting – please see your hardware provider
|
|
for this information.</p>
|
|
<h1 id="support">Support</h1>
|
|
<h2 id="getting-assistance">Getting Assistance</h2>
|
|
<p>The best way to get assistance with RomWBW or any aspect of the
|
|
RetroBrew Computers projects is via one of the community forums:</p>
|
|
<ul>
|
|
<li><a href="https://www.retrobrewcomputers.org/forum/">RetroBrew Computers Forum</a></li>
|
|
<li><a href="https://groups.google.com/forum/#!forum/rc2014-z80">RC2014 Google
|
|
Group</a></li>
|
|
<li><a href="https://groups.google.com/forum/#!forum/retro-comp">retro-comp Google
|
|
Group</a></li>
|
|
</ul>
|
|
<p>Submission of issues and bugs are welcome at the <a href="https://github.com/wwarthen/RomWBW">RomWBW GitHub
|
|
Repository</a>.</p>
|
|
<p>Also feel free to email Wayne Warthen at <a href="mailto:wwarthen@gmail.com">wwarthen@gmail.com</a>. I am
|
|
happy to provide support adapting RomWBW to new or modified systems</p>
|
|
<h1 id="contributions">Contributions</h1>
|
|
<p>All source code and distributions are maintained on GitHub.
|
|
Contributions of all kinds to RomWBW are very welcome.</p>
|
|
<h2 id="acknowledgments">Acknowledgments</h2>
|
|
<p>I want to acknowledge that a great deal of the code and inspiration for
|
|
RomWBW has been provided by or derived from the work of others in the
|
|
RetroBrew Computers Community. I sincerely appreciate all of their
|
|
contributions. The list below is probably missing many names – please
|
|
let me know if I missed you!</p>
|
|
<ul>
|
|
<li>
|
|
<p>Andrew Lynch started it all when he created the N8VEM Z80 SBC which
|
|
became the first platform RomWBW supported. Some of his original code
|
|
can still be found in RomWBW.</p>
|
|
</li>
|
|
<li>
|
|
<p>Dan Werner wrote much of the code from which RomWBW was originally
|
|
derived and he has always been a great source of knowledge and advice.</p>
|
|
</li>
|
|
<li>
|
|
<p>Douglas Goodall contributed code, time, testing, and advice in “the
|
|
early days”. He created an entire suite of application programs to
|
|
enhance the use of RomWBW. Unfortunately, they have become unusable
|
|
due to internal changes within RomWBW. As of RomWBW 2.6, these
|
|
applications are no longer provided.</p>
|
|
</li>
|
|
<li>
|
|
<p>Sergey Kiselev created several hardware platforms for RomWBW including
|
|
the very popular Zeta.</p>
|
|
</li>
|
|
<li>
|
|
<p>David Giles created support for the Z180 CSIO which is now included SD
|
|
Card driver.</p>
|
|
</li>
|
|
<li>
|
|
<p>Phil Summers contributed the Forth and BASIC adaptations in ROM, the
|
|
AY-3-8910 sound driver, DMA support, and a long list of general code
|
|
and documentation enhancements.</p>
|
|
</li>
|
|
<li>
|
|
<p>Ed Brindley contributed some of the code that supports the RCBus
|
|
platform.</p>
|
|
</li>
|
|
<li>
|
|
<p>Spencer Owen created the RC2014 series of hobbyist kit computers which
|
|
has exponentially increased RomWBW usage. Some of his kits include
|
|
RomWBW.</p>
|
|
</li>
|
|
<li>
|
|
<p>Stephen Cousins has likewise created a series of hobbyist kit
|
|
computers at Small Computer Central and is distributing RomWBW with
|
|
many of them.</p>
|
|
</li>
|
|
<li>
|
|
<p>Alan Cox has contributed some driver code and has provided a great
|
|
deal of advice.</p>
|
|
</li>
|
|
<li>
|
|
<p>The CP/NET client files were developed by Douglas Miller.</p>
|
|
</li>
|
|
<li>
|
|
<p>Phillip Stevens contributed support for FreeRTOS.</p>
|
|
</li>
|
|
<li>
|
|
<p>Curt Mayer contributed the original Linux / MacOS build process.</p>
|
|
</li>
|
|
<li>
|
|
<p>UNA BIOS and FDISK80 are the products of John Coffman.</p>
|
|
</li>
|
|
<li>
|
|
<p>FLASH4 is a product of Will Sowerbutts.</p>
|
|
</li>
|
|
<li>
|
|
<p>CLRDIR is a product of Max Scane.</p>
|
|
</li>
|
|
<li>
|
|
<p>Tasty Basic is a product of Dimitri Theulings.</p>
|
|
</li>
|
|
<li>
|
|
<p>Dean Netherton contributed eZ80 CPU support, the sound driver
|
|
interface, and the SN76489 sound driver.</p>
|
|
</li>
|
|
<li>
|
|
<p>The RomWBW Disk Catalog document was produced by Mykl Orders.</p>
|
|
</li>
|
|
<li>
|
|
<p>Rob Prouse has created many of the supplemental disk images including
|
|
Aztec C, HiTech C, SLR Z80ASM, Turbo Pascal, Microsoft BASIC Compiler,
|
|
Microsoft Fortran Compiler, and a Games compendium.</p>
|
|
</li>
|
|
<li>
|
|
<p>Martin R has provided substantial help reviewing and improving the
|
|
User Guide and Applications documents.</p>
|
|
</li>
|
|
<li>
|
|
<p>Mark Pruden has made a wide variety of contributions including:</p>
|
|
</li>
|
|
<li>
|
|
<p>significant content in the Disk Catalog and User Guide</p>
|
|
</li>
|
|
<li>creation of the Introduction and Hardware documents</li>
|
|
<li>Z3PLUS operating system disk image</li>
|
|
<li>COPYSL, and SLABEL utilities</li>
|
|
<li>Display of bootable slices via “S” command during startup</li>
|
|
<li>a feature for RomWBW configuration by NVRAM</li>
|
|
<li>
|
|
<p>the /B bulk mode of disk assignment to the ASSIGN utility</p>
|
|
</li>
|
|
<li>
|
|
<p>Jacques Pelletier has contributed the DS1501 RTC driver code.</p>
|
|
</li>
|
|
<li>
|
|
<p>Jose Collado has contributed enhancements to the TMS driver including
|
|
compatibility with standard TMS register configuration.</p>
|
|
</li>
|
|
<li>
|
|
<p>Kevin Boone has contributed a generic HBIOS date/time utility (WDATE).</p>
|
|
</li>
|
|
<li>
|
|
<p>Matt Carroll has contributed a fix to XM.COM that corrects the port
|
|
specification when doing a send.</p>
|
|
</li>
|
|
<li>
|
|
<p>Dean Jenkins enhanced the build process to accommodate the Raspberry
|
|
Pi 4.</p>
|
|
</li>
|
|
<li>
|
|
<p>Tom Plano has contributed a new utility (HTALK) to allow talking
|
|
directly to HBIOS COM ports.</p>
|
|
</li>
|
|
<li>
|
|
<p>Lars Nelson has contributed several generic utilities such as a
|
|
universal (OS agnostic) UNARC application.</p>
|
|
</li>
|
|
<li>
|
|
<p>Dylan Hall added support for specifying a secondary console.</p>
|
|
</li>
|
|
<li>
|
|
<p>Bill Shen has contributed boot loaders for several of his systems.</p>
|
|
</li>
|
|
<li>
|
|
<p>Laszlo Szolnoki has contributed an EF9345 video display controller
|
|
driver.</p>
|
|
</li>
|
|
<li>
|
|
<p>Ladislau Szilagyi has contributed an enhanced version of CP/M Cowgol
|
|
that leverages RomWBW memory banking.</p>
|
|
</li>
|
|
<li>
|
|
<p>Les Bird has contributed support for the NABU w/ Option Board</p>
|
|
</li>
|
|
<li>
|
|
<p>Rob Gowin created an online documentation site via MkDocs, and
|
|
contributed a driver for the Xosera FPGA-based video controller.</p>
|
|
</li>
|
|
<li>
|
|
<p>Jörg Linder has contributed disassembled and nicely commented source
|
|
for ZSDOS2 and the BPBIOS utilities.</p>
|
|
</li>
|
|
</ul>
|
|
<h2 id="related-projects">Related Projects</h2>
|
|
<p>Outside of the hardware platforms adapted to RomWBW, there are a variety
|
|
of projects that either target RomWBW specifically or provide a
|
|
RomWBW-specific variation. These efforts are greatly appreciated and are
|
|
listed below. Please contact the author if there are any other such
|
|
projects that are not listed.</p>
|
|
<h4 id="z88dk">Z88DK</h4>
|
|
<p>Z88DK is a software powerful development kit for Z80 computers
|
|
supporting both C and assembly language. This kit now provides specific
|
|
library support for RomWBW HBIOS. The Z88DK project is hosted at
|
|
<a href="https://github.com/z88dk/z88dk">https://github.com/z88dk/z88dk</a>.</p>
|
|
<h4 id="paleo-editor">Paleo Editor</h4>
|
|
<p>Steve Garcia has created a Windows-hosted IDE that is tailored to
|
|
development of RomWBW. The project can be found at
|
|
<a href="https://github.com/alloidian/PaleoEditor">https://github.com/alloidian/PaleoEditor</a>.</p>
|
|
<h4 id="z80-fig-forth">Z80 fig-FORTH</h4>
|
|
<p>Dimitri Theulings’ implementation of fig-FORTH for the Z80 has a
|
|
RomWBW-specific variant. The project is hosted at
|
|
<a href="https://github.com/dimitrit/figforth">https://github.com/dimitrit/figforth</a>.</p>
|
|
<h4 id="assembly-language-programming-for-the-rc2014-zed">Assembly Language Programming for the RC2014 Zed</h4>
|
|
<p>Bruce Hall has written a very nice document that describes how to
|
|
develop assembly language applications on RomWBW. It begins with the
|
|
setup and configuration of a new RC2014 Zed system running RomWBW. It
|
|
describes not only generic CP/M application development, but also RomWBW
|
|
HBIOS programming and bare metal programming. The latest copy of this
|
|
document is hosted at <a href="http://w8bh.net/Assembly%20for%20RC2014Z.pdf">http://w8bh.net/Assembly for
|
|
RC2014Z.pdf</a>.</p>
|
|
<h1 id="licensing">Licensing</h1>
|
|
<h2 id="license-terms">License Terms</h2>
|
|
<p>RomWBW is free software: you can redistribute it and/or modify it under
|
|
the terms of the GNU General Public License as published by the Free
|
|
Software Foundation, either version 3 of the License, or (at your
|
|
option) any later version.</p>
|
|
<p>RomWBW is distributed in the hope that it will be useful, but WITHOUT
|
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
more details.</p>
|
|
<p>You should have received a copy of the GNU General Public License along
|
|
with RomWBW. If not, see <a href="https://www.gnu.org/licenses/">https://www.gnu.org/licenses/</a>.</p>
|
|
<p>Portions of RomWBW were created by, contributed by, or derived from the
|
|
work of others. It is believed that these works are being used in
|
|
accordance with the intentions and/or licensing of their creators.</p>
|
|
<p>If anyone feels their work is being used outside of its intended
|
|
licensing, please notify:</p>
|
|
<blockquote>
|
|
<p>Wayne Warthen<br />
|
|
<a href="mailto:wwarthen@gmail.com">wwarthen@gmail.com</a></p>
|
|
</blockquote>
|
|
<p>RomWBW is an aggregate work. It is composed of many individual,
|
|
standalone programs that are distributed as a whole to function as a
|
|
cohesive system. Each program may have its own licensing which may be
|
|
different from other programs within the aggregate.</p>
|
|
<p>In some cases, a single program (e.g., CP/M Operating System) is
|
|
composed of multiple components with different licenses. It is believed
|
|
that in all such cases the licenses are compatible with GPL version 3.</p>
|
|
<p>RomWBW encourages code contributions from others. Contributors may
|
|
assert their own copyright in their contributions by annotating the
|
|
contributed source code appropriately. Contributors are further
|
|
encouraged to submit their contributions via the RomWBW source code
|
|
control system to ensure their contributions are clearly documented.</p>
|
|
<p>All contributions to RomWBW are subject to this license.</p></div>
|
|
</div>
|
|
</div>
|
|
|
|
<footer class="col-md-12">
|
|
<hr>
|
|
<p>Documentation built with <a href="https://www.mkdocs.org/">MkDocs</a>.</p>
|
|
</footer>
|
|
<script src="../js/bootstrap.bundle.min.js"></script>
|
|
<script>
|
|
var base_url = "..",
|
|
shortcuts = {"help": 191, "next": 78, "previous": 80, "search": 83};
|
|
</script>
|
|
<script src="../js/base.js"></script>
|
|
<script src="../search/main.js"></script>
|
|
|
|
<div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="searchModalLabel" aria-hidden="true">
|
|
<div class="modal-dialog modal-lg">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h4 class="modal-title" id="searchModalLabel">Search</h4>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<p>From here you can search these documents. Enter your search terms below.</p>
|
|
<form>
|
|
<div class="form-group">
|
|
<input type="search" class="form-control" placeholder="Search..." id="mkdocs-search-query" title="Type search term here">
|
|
</div>
|
|
</form>
|
|
<div id="mkdocs-search-results" data-no-results-text="No results found"></div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div><div class="modal" id="mkdocs_keyboard_modal" tabindex="-1" role="dialog" aria-labelledby="keyboardModalLabel" aria-hidden="true">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h4 class="modal-title" id="keyboardModalLabel">Keyboard Shortcuts</h4>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th style="width: 20%;">Keys</th>
|
|
<th>Action</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td class="help shortcut"><kbd>?</kbd></td>
|
|
<td>Open this help</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="next shortcut"><kbd>n</kbd></td>
|
|
<td>Next page</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="prev shortcut"><kbd>p</kbd></td>
|
|
<td>Previous page</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="search shortcut"><kbd>s</kbd></td>
|
|
<td>Search</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="modal-footer">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|
|
|