Designator | OS9 Designation | Notes: |
---|---|---|
U9 | Boot Rom |
40 K for OS9 boot ROM
|
U0 | /ud0 |
The Disk starting @ 100K into
NV-RAM is always designated U0.
|
U1 | /ud1 |
The Disks fully in Volatile RAM
are designated U1 ... U8,
there may be from zero to eight
such disks and any set
is permissable for example you
mifht have three disks
and those three might be U1,U4 and
U8.
|
U2 | /ud2 | |
U3 | /ud3 | |
U4 | /ud4 | |
U5 | /ud5 | |
U6 | /ud6 | |
U7 | /ud7 | |
U8 | /share |
9 = 40K Qtr Disk in NVRAM
0= 160K Disk in NVRAMH>ucompat
{url} checks
if the remote disk is compatible with U0: and creates a FIXIT
script on the server to prep your virtual disk.
H>ucompat
without the URL looks at the contents of U0: and if the files
os9boot,ccbkrn,sysgo,gofetch and the contents of /NVR total more
then is 150K then you are prompted for each file in /NVR
to Keep or Move ? Each file moved is put in the /MOVED directory
and the U0: disk is defraged super quick because the process is
aided by GPU 32Bit 28MHz. block moves. If you reach a point
where the next file puts you over the limit rather then being
asked you are told that that file will be moved.
Ok so gofetch is a OS9 program that causes any file or program on the remote image of U0: to be synced with the actual ram drive as needed gofetch should be added to the startup so that required files will be synced as needed with the up to 1440K disk image on the drivewire server.
gofetch {url} where url is the url of the disk image of U0, the client must be running DOG so you can tell the dog to gofetch. Dog uses Toolshed to find and extract the wanted file and then gofetch uses drivewire to do a dw server list {url} where {url} is the url of the extracted file.
gofetch {url} PERDICT trys to
predict what files you will need next and supply them in
the background.
gofetch {url} ALL just downloads all of the
content as quickly as possible halting that virtual CPU and
displaying a progress bar @460KB/Sec this requires about 75
seconds for a full disk.
So all well and good but how would these uDisks actually be used.
Well at the H> prompt's we can assign mappings to these uDisks.
How with the SET Commands.
Example with results and comments.
H>ULIST CPUS
u0:>0#1,u1:>1#1,u2:>2#1,u3:>0#2,u4:>1#2,u5:>4#3,u6:>5#3,u7:>6#3,u8:SFF,u9:ROM#1
This is the "factory" default for a CoCo5 you read
the above as
uDisk 0 mapped as drive 0 on CPU#1 uDisk
1 mapped as drive 1 on CPU#1 ......
...... uDisk 7 mapped into
drive 6 on CPU#3 uDisk8 locked as Shared Follow Focus Disk and
uDisk9 LOCKED as OS9 in ROM BOOTSTRAP and currently assigned
to CPU#1.
Suppose we run these commands.
SET u0:=#3(0)
SET u1:=#3(1)
SET u2:=#2(0)
SET u3:=#1(0)
SET u4:=#3(5)
Then
H>ULIST CPUS
will display
u0:>0#3,u1:>1#3,u2:>0#2,u3:>0#1,4:>5#3,u5:>4#3,u6:>???,u7:>6#3,u8:SFF,u9:ROM#1
where the entry u6:>??? indicates that u6: exists but is not
assigned to any virtual CoCo.
If CPU#3's previous drive 5 , u6: ,was not in use when the
command SET
u4:=#3(5) was entered.
If however u6: was in use then the command
SET u4:=#3(5) would respond with
the error message
Drive u6: currently locking 5#3
command failed.
and no changes would be made to the mapping of either u4: or u6:
This 256K area of memory may be assigned as a single 256K tape to a single virtual CoCo or may be setup as 4 or 8, 64K or 32K vTapes by the command VCT.
X>HRDMAN VCT SETUP=8 {This command wipes all data in
virtual tape memory upon the next soft or hard reset.}
X>RESET 1,2,3 {Do a soft reset of witch ever virtual cpu's
currently have a vcass connection in this example #1 #2 and #3 all
have connections.}
By the way with CPU#0 in focus holding down the reset button and
then holding down the keys 1, 2 and 3 and not releasing them until
after releasing the reset button is the equivalent of typing RESET
1,2,3 [ENTER] at the X prompt, further keyboard presses are
ignored until 1, 2 and 3 are all released.
The command
X> HRDMAN #{CPU} NEXTRACK
switches virtual cassettes available to the virtual CPU to the next
one on it's list.
If all vTAPES are assigned to a single CPU then the #{CPU} parameter
is not needed if also the vTape is in 8-Track mode the command
X>8TRK {n} can be used from either the X or H prompt in this
case n is the track number.
Example:
8TRK 5
which means jump to track 5.