|
|
|
@ -1072,6 +1072,18 @@ The concept of slices is described in detail in the section |
|
|
|
The mapping of a hardware disk (and slice) to a Drive letter |
|
|
|
in an operating system. A Drive has a file system installed on it |
|
|
|
|
|
|
|
#### Disk Image |
|
|
|
|
|
|
|
A disk image is a predefined image of a complete CP/M filesystem, |
|
|
|
or filesystem(s), including any partition tables (for hard disk images). |
|
|
|
Each disk image has the complete set of normal applications and tools |
|
|
|
distributed with the associated operating system or application suite. |
|
|
|
|
|
|
|
This comes in for form of a file which is suitable for copying directly |
|
|
|
onto target media, using a modern computer. It is generally easier to |
|
|
|
use these disk images than transferring files over individually. |
|
|
|
See the section [Disk Images] for further details. |
|
|
|
|
|
|
|
## Startup Hardware Discovery |
|
|
|
|
|
|
|
During startup RomWBW performs detection for hardware supported by your |
|
|
|
@ -1241,16 +1253,17 @@ With some understanding of how RomWBW presents disk space to the |
|
|
|
operating systems, we need to go over the options for actually setting |
|
|
|
up your disk(s) with content. |
|
|
|
|
|
|
|
### Preparing Media for first use |
|
|
|
### Preparing Media for First Use |
|
|
|
|
|
|
|
You can initialize the media in-place using your RomWBW system. |
|
|
|
Essentially, this means you are creating a set of blank directories on |
|
|
|
your disk so that files can be saved there. |
|
|
|
This is somewhat analogous to partitioning partitioning of a hard disk |
|
|
|
This is somewhat analogous to partitioning of a hard disk |
|
|
|
or doing a low level format of a floppy disk. |
|
|
|
|
|
|
|
Initilizing a Floppy disk is covered in the section [Floppy Disk Formatting], |
|
|
|
or for a Hard disk the section [Hard Disk Preparation] |
|
|
|
or for a Hard disk the section [Hard Disk Preparation] covers the steps to |
|
|
|
manually setup a hard disk for first use. |
|
|
|
|
|
|
|
### Clearing (Formatting) Drives |
|
|
|
|
|
|
|
@ -1298,30 +1311,6 @@ Directory cleared. |
|
|
|
B> |
|
|
|
``` |
|
|
|
|
|
|
|
### Making Bootable Media |
|
|
|
|
|
|
|
If you want to make a disk bootable, you will need to use `SYSCOPY` to |
|
|
|
setup the system track(s) of the slice. |
|
|
|
The use of `SYSCOPY` depends on the operating system and is |
|
|
|
described in the [Operating Systems] chapter of this document. |
|
|
|
|
|
|
|
As an example, let's assume you want to setup C: as a bootable Z-System disk. |
|
|
|
To setup the system track you would use: |
|
|
|
|
|
|
|
``` |
|
|
|
B>SYSCOPY C:=B:ZSYS.SYS |
|
|
|
|
|
|
|
SYSCOPY v2.0 for RomWBW CP/M, 17-Feb-2020 (CP/M 2 Mode) |
|
|
|
Copyright 2020, Wayne Warthen, GNU GPL v3 |
|
|
|
|
|
|
|
Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y |
|
|
|
Reading image... Writing image... Done |
|
|
|
``` |
|
|
|
|
|
|
|
Once this process succeeds, you will be able to boot directly to the |
|
|
|
disk slice from the boot loader prompt. See the instructions in |
|
|
|
[Starting Operating Systems from Disk] for details on this. |
|
|
|
|
|
|
|
### Checking Disk Layout |
|
|
|
|
|
|
|
If you are not sure which disk layout is used for your existing |
|
|
|
@ -1643,10 +1632,7 @@ There are two approaches to preparing disks for use by RomWBW. |
|
|
|
including files to a disk. |
|
|
|
|
|
|
|
This section of the document describes the manual process of preparing |
|
|
|
empty disks that are ready for use by an operating system. You will |
|
|
|
need to refer to [Transferring Files] for more information on getting |
|
|
|
files onto the disks. You will also need to follow the instructions |
|
|
|
in [Operating Systems] to make disks bootable. |
|
|
|
empty disks that are ready for use by an operating system. |
|
|
|
|
|
|
|
Alternatively, you can use the pre-built RomWBW disk images to quickly |
|
|
|
create disk media that already has a large selection of files and |
|
|
|
@ -1760,7 +1746,7 @@ First you need to understand |
|
|
|
|
|
|
|
* The disk layout approach (either hd1k or the legacy hd512). |
|
|
|
See [Hard Disk Layouts] section if you are not sure. |
|
|
|
HD1K should be the preferred layout. |
|
|
|
hd1k should be the preferred layout. |
|
|
|
* The number of 8MB slices that you want to allocate, preferred is 64 slices. |
|
|
|
At least 1 slice of 8MB is required |
|
|
|
* If you want to leave space for a FAT partition. See [FAT Filesystem Preparation] |
|
|
|
@ -1787,9 +1773,9 @@ The disk unit number was assigned at boot See [Device Unit Assignments] |
|
|
|
|
|
|
|
Refer to $doc_apps$ for more information on use of the `FDISK80` utility. |
|
|
|
|
|
|
|
If you want to use the legacy hd512 layout skip down to the [Legacy (HD512)] section |
|
|
|
If you want to use the legacy hd512 layout skip down to the [Legacy (hd512)] section |
|
|
|
|
|
|
|
#### Modern (HD1K) |
|
|
|
#### Modern (hd1k) |
|
|
|
|
|
|
|
At this point, use the `I` command to initialize (reset) |
|
|
|
the partition table to an empty state. |
|
|
|
@ -1849,7 +1835,7 @@ At this point, it is best to restart your system to make sure that |
|
|
|
the operating system is aware of the partition table updates. Start |
|
|
|
CP/M 2.2 or Z-System from ROM again. |
|
|
|
|
|
|
|
#### Legacy (HD512) |
|
|
|
#### Legacy (hd512) |
|
|
|
|
|
|
|
At this point, use the `I` command to initialize (reset) |
|
|
|
the partition table to an empty state. |
|
|
|
@ -1862,6 +1848,12 @@ At this point, it is best to restart your system to make sure that |
|
|
|
the operating system is aware of the partition table updates. Start |
|
|
|
CP/M 2.2 or Z-System from ROM again. |
|
|
|
|
|
|
|
#### FAT Partition |
|
|
|
|
|
|
|
At this point you may want to consider creating a FAT partition |
|
|
|
Please see the section [FAT Filesystem Preparation] for detils on how |
|
|
|
to setup the FAT partition. |
|
|
|
|
|
|
|
### Slice Initialization |
|
|
|
|
|
|
|
You need to initialize each slice for CP/M to use it. |
|
|
|
@ -1880,6 +1872,43 @@ using the same process. You may need to reassign drive letters to |
|
|
|
access some slices that are beyond the ones automatically assigned. |
|
|
|
You can use the `ASSIGN` command to handle this. |
|
|
|
|
|
|
|
## Post Disk Preparation |
|
|
|
|
|
|
|
Once a disk (either floppy or hard disk) has been initialised and |
|
|
|
formattted you may optionally; |
|
|
|
* Make the disk bootable |
|
|
|
* Copy system (or other) files to the disk |
|
|
|
|
|
|
|
### Making a Disk Bootable |
|
|
|
|
|
|
|
To make a disk bootable you will need to follow the specific instructions |
|
|
|
in [Operating Systems], as each operating system will be different. |
|
|
|
|
|
|
|
Generally you will need to use `SYSCOPY` to setup the system track(s) |
|
|
|
of the disk.As an example, If you wanted to setup C: as a bootable |
|
|
|
Z-System disk you would use: |
|
|
|
|
|
|
|
``` |
|
|
|
B>SYSCOPY C:=B:ZSYS.SYS |
|
|
|
|
|
|
|
SYSCOPY v2.0 for RomWBW CP/M, 17-Feb-2020 (CP/M 2 Mode) |
|
|
|
Copyright 2020, Wayne Warthen, GNU GPL v3 |
|
|
|
|
|
|
|
Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y |
|
|
|
Reading image... Writing image... Done |
|
|
|
``` |
|
|
|
|
|
|
|
Once this process succeeds, you will be able to boot directly to the |
|
|
|
disk slice from the boot loader prompt. See the instructions in |
|
|
|
[Starting Operating Systems from Disk] for details on this. |
|
|
|
|
|
|
|
### Copying System Files |
|
|
|
|
|
|
|
As well as making the disk bootable, you may need to transfer other |
|
|
|
system and application files to your disks. |
|
|
|
Refer to [Transferring Files] for more information on getting |
|
|
|
files onto your disks. |
|
|
|
|
|
|
|
# Disk Images |
|
|
|
|
|
|
|
Since it would be quite a bit of work to transfer over all the files you |
|
|
|
@ -2072,13 +2101,19 @@ positions indicated: |
|
|
|
| Slice 5 | WordStar v4 & ZDE Applications | |
|
|
|
| Slice 6-63 | _blank unformatted_ | |
|
|
|
|
|
|
|
There are actually 2 combo disk images in the |
|
|
|
There are actually 2 primary combo disk images in the |
|
|
|
distribution. One for an hd512 disk layout (hd512_combo.img) and one |
|
|
|
for an hd1k disk layout (hd1k_combo.img). Simply use the image file that |
|
|
|
corresponds to your desired hard disk layout. Review the information |
|
|
|
in [Hard Disk Layouts] if you need more information of the disk layout |
|
|
|
options. |
|
|
|
|
|
|
|
> **Note**: Apart from the hd512 and hd1k combo disk images (mentioned above) |
|
|
|
> there are actaully a number of other `hd1k_*_combo.img` files. These |
|
|
|
> additional combo files are platform (generally romless) specific, |
|
|
|
> and should be ignored unless you are on one of these platforms. |
|
|
|
> If you are on one of these platforms you must use the correct combo file |
|
|
|
|
|
|
|
The combo disk image actaully only contains the initial partition table, |
|
|
|
and the first 6 slices (Slice 0 to 5), this is approximately 49MB in size. |
|
|
|
While the partition table reserves space to store 64 CP/M filesystem |
|
|
|
@ -2175,6 +2210,12 @@ Linux/MacOS: |
|
|
|
|
|
|
|
`cat hd1k_prefix.dat hd1k_cpm22.img hd1k_cpm3.img hd1k_ws >hd.img` |
|
|
|
|
|
|
|
> **Note**: Apart from the hd1k_prefix.dat file (mentioned above) |
|
|
|
> there are actaully a number of other `hd1k_*_prefix.dat` files. These |
|
|
|
> additional prefix files are platform (generally romless) specific, |
|
|
|
> and should be ignored unless you are on one of these platforms. |
|
|
|
> If you are on one of these platforms you must use the correct prefix file |
|
|
|
|
|
|
|
In all of the examples above, the resulting file (hd.img) would now be |
|
|
|
written to your hard disk media and would be ready to use in a RomWBW |
|
|
|
system. |
|
|
|
@ -2963,195 +3004,6 @@ floppy disk and hard disk images. |
|
|
|
| TUNE | Play .PT2, .PT3, .MYM audio files. | |
|
|
|
| INTTEST | Test interrupt vector hooking. | |
|
|
|
|
|
|
|
# FAT Filesystem |
|
|
|
|
|
|
|
The FAT filesystem format that originated with MS-DOS is almost |
|
|
|
ubiquitous across modern computers. Virtually all operating systems |
|
|
|
now support reading and writing files to a FAT filesystem. For this |
|
|
|
reason, RomWBW now has the ability to read and write files on FAT |
|
|
|
filesystems. |
|
|
|
|
|
|
|
This is accomplished by running a RomWBW custom application called `FAT`. |
|
|
|
This application understands both FAT filesystems as well as CP/M filesystems. |
|
|
|
|
|
|
|
* Files can be copied between a FAT filesystem and a CP/M filesystem, |
|
|
|
but you cannot execute files directly from a FAT filesystem. |
|
|
|
* FAT12, FAT16, and FAT32 formats are supported. |
|
|
|
* Long filenames are not supported. Files with long filenames will |
|
|
|
show up with their names truncated into the older 8.3 convention. |
|
|
|
* A FAT filesystem can be located on floppy or hard disk media. For |
|
|
|
hard disk media, a valid FAT Filesystem partition must exist. |
|
|
|
* Note that CP/M (and compatible) OSes do not support all of the |
|
|
|
filename characters that a modern computer does. The following |
|
|
|
characters are **not permitted** in a CP/M filename: |
|
|
|
|
|
|
|
`< > . , ; : = ? * [ ] _ % | ( ) / \` |
|
|
|
|
|
|
|
The FAT application does not auto-rename files when it encounters |
|
|
|
invalid filenames. It will just issue an error and quit. |
|
|
|
Additionally, the error message is not very clear about the problem. |
|
|
|
|
|
|
|
## FAT Filesystem Preparation |
|
|
|
|
|
|
|
In general, you can create media formatted with a FAT filesystem on |
|
|
|
your RomWBW computer or on your modern computer. We will only be |
|
|
|
discussing the RomWBW-based approach here. |
|
|
|
|
|
|
|
In the case of a floppy disk, you can use the `FAT` application to |
|
|
|
format the floppy disk. The floppy disk must already be physically |
|
|
|
formatted using RomWBW FDU or equivalent. If your floppy disk is on |
|
|
|
RomWBW disk unit 2, you could use `FAT FORMAT 2:`. This will overwrite |
|
|
|
the floppy with a FAT filesystem and all previous contents will be lost. |
|
|
|
Once formatted this way, the floppy disk can be used in a floppy drive |
|
|
|
attached to a modern computer or it can be used on RomWBW using the |
|
|
|
other `FAT` tool commands. |
|
|
|
|
|
|
|
In the case of hard disk media, it is necessary to have a FAT |
|
|
|
partition. If you prepared your RomWBW hard disk media using the |
|
|
|
disk image process, then this partition will already be defined and |
|
|
|
you do not need to recreate it. This default FAT partition is located |
|
|
|
at approximately 512MB from the start of your disk and it is 384MB in |
|
|
|
size. So, your hard disk media must be 1GB or greater to use this |
|
|
|
default FAT partition. |
|
|
|
|
|
|
|
You can confirm the existence of the FAT partition with `FDISK80` by |
|
|
|
using the 'P' command to show the current partition table. Here is an |
|
|
|
example of a partition table listing from `FDISK80` that includes the |
|
|
|
FAT partition (labelled "FAT16"): |
|
|
|
|
|
|
|
``` |
|
|
|
Capacity of disk 4: ( 4G) 7813120 Geom 77381010 |
|
|
|
Nr ---Type- A -- Start End LBA start LBA count Size |
|
|
|
1 RomWBW 2e 8:0:1 1023:15:16 2048 1048576 512M |
|
|
|
2 FAT16 06 1023:0:1 1023:15:16 1050624 786432 384M |
|
|
|
3 00 *** empty *** |
|
|
|
4 00 *** empty *** |
|
|
|
``` |
|
|
|
|
|
|
|
If your hard disk media does not have a FAT partition already defined, |
|
|
|
you will need to define one using FDISK80 by using the 'N' command. |
|
|
|
Ensure that the location and size of the FAT partition does not |
|
|
|
overlap any of the CP/M slice area and that it fits within the size |
|
|
|
of your media. |
|
|
|
|
|
|
|
Once the partition is defined, you will still need to format it. Just |
|
|
|
as with a floppy disk, you use the `FAT` tool to do this. If your |
|
|
|
hard disk media is on RomWBW disk unit 4, you would use `FAT FORMAT 4:`. |
|
|
|
This will look something like this: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat format 4: |
|
|
|
|
|
|
|
About to format FAT Filesystem on Disk Unit #4. |
|
|
|
All existing FAT partition data will be destroyed!!! |
|
|
|
|
|
|
|
Continue (y/n)? |
|
|
|
|
|
|
|
Formatting... Done |
|
|
|
``` |
|
|
|
|
|
|
|
Your FAT filesystem is now ready to use. |
|
|
|
|
|
|
|
If your RomWBW system has multiple disk drives/slots, you can also just |
|
|
|
create a disk with your modern computer that is a dedicated FAT |
|
|
|
filesystem disk. You can use your modern computer to format the disk |
|
|
|
(floppy, CF Card, SD Card, etc.), then insert the disk in your RomWBW |
|
|
|
computer and access it using `FAT` based on its RomWBW unit number. |
|
|
|
|
|
|
|
**WARNING**: Microsoft Windows will sometimes suggest reformatting |
|
|
|
partitions that it does not recognize. If you are prompted to format a |
|
|
|
partition of your SD/CF/USB Media when inserting the card into a Windows |
|
|
|
computer, you probably want to select Cancel. |
|
|
|
|
|
|
|
## FAT Application Usage |
|
|
|
|
|
|
|
Complete instructions for the `FAT` application are found in $doc_apps$. |
|
|
|
Here, we will just provide a couple of simple examples. Note that the |
|
|
|
FAT application is not on the ROM disk because it is too large to |
|
|
|
include there. |
|
|
|
|
|
|
|
The most important thing to understand about the `FAT` application is |
|
|
|
how it refers to FAT filesystems vs. CP/M filesystems. It infers this |
|
|
|
based on the file specification provided. If you use a specification |
|
|
|
like `C:SAMPLE.TXT`, it will use the C: drive of your CP/M operating |
|
|
|
system. If you use a specification like `4:SAMPLE.TXT`, it will use |
|
|
|
the FAT filesystem on the disk in RomWBW disk unit 4. Basically, if |
|
|
|
you start your file or directory specification with a number followed |
|
|
|
by a colon, it means FAT filesystem. Anything else will mean CP/M |
|
|
|
filesystem. |
|
|
|
|
|
|
|
Here are a few examples. This first example shows how to get a FAT |
|
|
|
directory listing from RomWBW disk unit 4: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat dir 4: |
|
|
|
|
|
|
|
Directory of 4: |
|
|
|
|
|
|
|
|
|
|
|
E> |
|
|
|
``` |
|
|
|
|
|
|
|
As you can see, there are currently no files there. Now let's copy |
|
|
|
a file from CP/M to the FAT directory: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat copy sample.txt 4: |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
SAMPLE.TXT ==> 4:/SAMPLE.TXT ... [OK] |
|
|
|
|
|
|
|
1 File(s) Copied |
|
|
|
``` |
|
|
|
|
|
|
|
If we list the FAT directory again, you will see the file: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat dir 4: |
|
|
|
|
|
|
|
Directory of 4: |
|
|
|
|
|
|
|
01/30/2023 17:50:14 29952 ---A SAMPLE.TXT |
|
|
|
|
|
|
|
``` |
|
|
|
|
|
|
|
Now let's copy the file from the FAT filesystem back to CP/M. This |
|
|
|
time we will get a warning about overwriting the file. For this |
|
|
|
example, we don't want to do that, so we abort and reissue the |
|
|
|
command specifying a new filename to use: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat copy 4:sample.txt e: |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
4:/SAMPLE.TXT ==> E:SAMPLE.TXT Overwrite? (Y/N) [Skipped] |
|
|
|
|
|
|
|
0 File(s) Copied |
|
|
|
|
|
|
|
E>fat copy 4:sample.txt e:sample2.txt |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
4:/SAMPLE.TXT ==> E:SAMPLE2.TXT ... [OK] |
|
|
|
|
|
|
|
1 File(s) Copied |
|
|
|
``` |
|
|
|
|
|
|
|
Finally, let's try using wildcards: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat copy sample*.* 4: |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
SAMPLE.TXT ==> 4:/SAMPLE.TXT Overwrite? (Y/N) ... [OK] |
|
|
|
SAMPLE2.TXT ==> 4:/SAMPLE2.TXT ... [OK] |
|
|
|
|
|
|
|
2 File(s) Copied |
|
|
|
``` |
|
|
|
|
|
|
|
# Real Time Clock |
|
|
|
|
|
|
|
RomWBW supports a variety of real time clock hardware. If your |
|
|
|
@ -3928,35 +3780,222 @@ detail in the Source/Images directory of the distribution. |
|
|
|
|
|
|
|
## FAT Filesystem Transfers |
|
|
|
|
|
|
|
The ability to interact with FAT filesystems was covered in |
|
|
|
[FAT Filesystem]. This capability means that you can generally use your |
|
|
|
modern computer to make an SD Card, CF Card, or USB Drive with a |
|
|
|
standard FAT32 filesystem on it, then place that media in your RomWBW |
|
|
|
computer and access the files. |
|
|
|
The FAT filesystem format that originated with MS-DOS is almost |
|
|
|
ubiquitous across modern computers. Virtually all operating systems |
|
|
|
now support reading and writing files to a FAT filesystem. For this |
|
|
|
reason, RomWBW now has the ability to read and write files on FAT |
|
|
|
filesystems. |
|
|
|
|
|
|
|
This capability means that you can generally use your modern computer |
|
|
|
to make an SD Card, CF Card, or USB Drive with a standard FAT filesystem |
|
|
|
on it, then place that media in your RomWBW computer and access the files. |
|
|
|
|
|
|
|
* Files can be copied between a FAT filesystem and a CP/M filesystem, |
|
|
|
but you cannot execute files directly from a FAT filesystem. |
|
|
|
|
|
|
|
* FAT12, FAT16, and FAT32 formats are supported. |
|
|
|
|
|
|
|
* Long filenames are not supported. Files with long filenames will |
|
|
|
show up with their names truncated into the older 8.3 convention. |
|
|
|
If you have files on your modern computer with long filenames, |
|
|
|
it is usually easiest to rename them on the modern computer. |
|
|
|
|
|
|
|
* A FAT filesystem can be located on floppy or hard disk media. For |
|
|
|
hard disk media, a valid FAT Filesystem partition must exist. |
|
|
|
|
|
|
|
Some additional **Notes** and **WARNINGS** Things to be careful about |
|
|
|
|
|
|
|
* CP/M (and compatible) OSes do not support all of the |
|
|
|
filename characters that a modern computer does. The following |
|
|
|
characters are **not permitted** in a CP/M filename: |
|
|
|
|
|
|
|
`< > . , ; : = ? * [ ] _ % | ( ) / \` |
|
|
|
|
|
|
|
The FAT application does not auto-rename files when it encounters |
|
|
|
invalid filenames. It will just issue an error and quit. |
|
|
|
Additionally, the error message is not very clear about the problem. |
|
|
|
|
|
|
|
* Microsoft Windows will sometimes suggest **reformatting** |
|
|
|
partitions that it does not recognize (e.g. RomWBW). |
|
|
|
If you are using media that contains both a FAT partition |
|
|
|
and a RomWBW partition you may prompted to format a partition of your |
|
|
|
SD/CF/USB Media when inserting the card into a Windows computer, |
|
|
|
you probably want to select Cancel. |
|
|
|
|
|
|
|
### FAT Filesystem Preparation |
|
|
|
|
|
|
|
In general, you can create media formatted with a FAT filesystem on |
|
|
|
your RomWBW computer or on your modern computer. We will only be |
|
|
|
discussing the RomWBW-based approach here. |
|
|
|
|
|
|
|
#### Floppy Disk |
|
|
|
|
|
|
|
In the case of a floppy disk, you can use the `FAT` application to |
|
|
|
format the floppy disk. The floppy disk must already be physically |
|
|
|
formatted using RomWBW FDU or equivalent. If your floppy disk is on |
|
|
|
RomWBW disk unit 2, you could use `FAT FORMAT 2:`. This will overwrite |
|
|
|
the floppy with a FAT filesystem and all previous contents will be lost. |
|
|
|
Once formatted this way, the floppy disk can be used in a floppy drive |
|
|
|
attached to a modern computer or it can be used on RomWBW using the |
|
|
|
other `FAT` tool commands. |
|
|
|
|
|
|
|
#### Hard Disk |
|
|
|
|
|
|
|
In the case of hard disk media, it is necessary to have a FAT |
|
|
|
partition. If you prepared your RomWBW hard disk media using the |
|
|
|
disk image process, then this partition will already be defined and |
|
|
|
you do not need to recreate it. This default FAT partition is located |
|
|
|
at approximately 512MB from the start of your disk and it is 384MB in |
|
|
|
size. So, your hard disk media must be 1GB or greater to use this |
|
|
|
default FAT partition. |
|
|
|
|
|
|
|
You can confirm the existence of the FAT partition with `FDISK80` by |
|
|
|
using the 'P' command to show the current partition table. Here is an |
|
|
|
example of a partition table listing from `FDISK80` that includes the |
|
|
|
FAT partition (labelled "FAT16"): |
|
|
|
|
|
|
|
``` |
|
|
|
Capacity of disk 4: ( 4G) 7813120 Geom 77381010 |
|
|
|
Nr ---Type- A -- Start End LBA start LBA count Size |
|
|
|
1 RomWBW 2e 8:0:1 1023:15:16 2048 1048576 512M |
|
|
|
2 FAT16 06 1023:0:1 1023:15:16 1050624 786432 384M |
|
|
|
3 00 *** empty *** |
|
|
|
4 00 *** empty *** |
|
|
|
``` |
|
|
|
|
|
|
|
If your hard disk media does not have a FAT partition already defined, |
|
|
|
you will need to define one using FDISK80 by using the 'N' command. |
|
|
|
Ensure that the location and size of the FAT partition does not |
|
|
|
overlap any of the CP/M slice area and that it fits within the size |
|
|
|
of your media. |
|
|
|
|
|
|
|
Once the partition is defined, you will still need to format it. Just |
|
|
|
as with a floppy disk, you use the `FAT` tool to do this. If your |
|
|
|
hard disk media is on RomWBW disk unit 4, you would use `FAT FORMAT 4:`. |
|
|
|
This will look something like this: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat format 4: |
|
|
|
|
|
|
|
About to format FAT Filesystem on Disk Unit #4. |
|
|
|
All existing FAT partition data will be destroyed!!! |
|
|
|
|
|
|
|
Continue (y/n)? |
|
|
|
|
|
|
|
Formatting... Done |
|
|
|
``` |
|
|
|
|
|
|
|
Your FAT filesystem is now ready to use. |
|
|
|
|
|
|
|
If your RomWBW system has multiple disk drives/slots, you can also just |
|
|
|
create a disk with your modern computer that is a dedicated FAT |
|
|
|
filesystem disk. You can use your modern computer to format the disk |
|
|
|
(floppy, CF Card, SD Card, etc.), then insert the disk in your RomWBW |
|
|
|
computer and access it using `FAT` based on its RomWBW unit number. |
|
|
|
|
|
|
|
When formatting the media on your modern computer, be sure to pick the |
|
|
|
FAT filesystem. NTFS and other filesystems will not work. As previously |
|
|
|
mentioned, the `FAT` application does not understand long filenames, |
|
|
|
only the traditional 8.3 filenames. If you have files on your modern |
|
|
|
computer with long filenames, it is usually easiest to rename them on |
|
|
|
the modern computer. |
|
|
|
### FAT Application Usage |
|
|
|
|
|
|
|
Transferring files is accomplished by running a RomWBW custom application |
|
|
|
called `FAT`. This application understands both FAT filesystems as well |
|
|
|
as CP/M filesystems. |
|
|
|
|
|
|
|
To copy files from your modern computer to your RomWBW computer, start |
|
|
|
by putting the disk media with the FAT filesystem in your modern |
|
|
|
computer. The modern computer should recognize it. Then copy the files |
|
|
|
you want to get to your RomWBW computer onto this media. Once done, |
|
|
|
remove the media from your modern computer and insert it in the RomWBW |
|
|
|
computer. Finally, use the `FAT` tool to copy the files onto a CP/M |
|
|
|
drive. |
|
|
|
computer. |
|
|
|
|
|
|
|
This process works just fine in reverse if you want to copy files from a |
|
|
|
Finally, use the `FAT` tool to copy the files onto a CP/M |
|
|
|
drive. This process works just fine in reverse if you want to copy files from a |
|
|
|
CP/M filesystem to your modern computer. |
|
|
|
|
|
|
|
**WARNING**: If you are using media that contains both a FAT partition |
|
|
|
and a RomWBW partition, your modern computer may be confused by the |
|
|
|
RomWBW partition. In some cases, it will prompt you to format the |
|
|
|
RomWBW partition because it doesn't know what it is. You will be |
|
|
|
prompted before it does this -- just be careful not to allow it. |
|
|
|
Complete instructions for the `FAT` application are found in $doc_apps$. |
|
|
|
Here, we will just provide a couple of simple examples. Note that the |
|
|
|
FAT application is not on the ROM disk because it is too large to |
|
|
|
include there. |
|
|
|
|
|
|
|
The most important thing to understand about the `FAT` application is |
|
|
|
how it refers to FAT filesystems vs. CP/M filesystems. It infers this |
|
|
|
based on the file specification provided. If you use a specification |
|
|
|
like `C:SAMPLE.TXT`, it will use the C: drive of your CP/M operating |
|
|
|
system. If you use a specification like `4:SAMPLE.TXT`, it will use |
|
|
|
the FAT filesystem on the disk in RomWBW disk unit 4. Basically, if |
|
|
|
you start your file or directory specification with a number followed |
|
|
|
by a colon, it means FAT filesystem. Anything else will mean CP/M |
|
|
|
filesystem. |
|
|
|
|
|
|
|
Here are a few examples. This first example shows how to get a FAT |
|
|
|
directory listing from RomWBW disk unit 4: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat dir 4: |
|
|
|
|
|
|
|
Directory of 4: |
|
|
|
|
|
|
|
|
|
|
|
E> |
|
|
|
``` |
|
|
|
|
|
|
|
As you can see, there are currently no files there. Now let's copy |
|
|
|
a file from CP/M to the FAT directory: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat copy sample.txt 4: |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
SAMPLE.TXT ==> 4:/SAMPLE.TXT ... [OK] |
|
|
|
|
|
|
|
1 File(s) Copied |
|
|
|
``` |
|
|
|
|
|
|
|
If we list the FAT directory again, you will see the file: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat dir 4: |
|
|
|
|
|
|
|
Directory of 4: |
|
|
|
|
|
|
|
01/30/2023 17:50:14 29952 ---A SAMPLE.TXT |
|
|
|
|
|
|
|
``` |
|
|
|
|
|
|
|
Now let's copy the file from the FAT filesystem back to CP/M. This |
|
|
|
time we will get a warning about overwriting the file. For this |
|
|
|
example, we don't want to do that, so we abort and reissue the |
|
|
|
command specifying a new filename to use: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat copy 4:sample.txt e: |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
4:/SAMPLE.TXT ==> E:SAMPLE.TXT Overwrite? (Y/N) [Skipped] |
|
|
|
|
|
|
|
0 File(s) Copied |
|
|
|
|
|
|
|
E>fat copy 4:sample.txt e:sample2.txt |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
4:/SAMPLE.TXT ==> E:SAMPLE2.TXT ... [OK] |
|
|
|
|
|
|
|
1 File(s) Copied |
|
|
|
``` |
|
|
|
|
|
|
|
Finally, let's try using wildcards: |
|
|
|
|
|
|
|
``` |
|
|
|
E>fat copy sample*.* 4: |
|
|
|
|
|
|
|
Copying... |
|
|
|
|
|
|
|
SAMPLE.TXT ==> 4:/SAMPLE.TXT Overwrite? (Y/N) ... [OK] |
|
|
|
SAMPLE2.TXT ==> 4:/SAMPLE2.TXT ... [OK] |
|
|
|
|
|
|
|
2 File(s) Copied |
|
|
|
``` |
|
|
|
|
|
|
|
# Customizing RomWBW |
|
|
|
|
|
|
|
|