H Prompt Commands

This is not a complete list but rather enough at least to include all the examples on the website.

Commands shown in bold items in {} to be replaced by a value.

Explanations follow on next line then examples.

SECTION 1 HARDWARE COMMANDS


H>8TRK {track number}

If vTAPE device is in 8 Track mode then it can only be connected to one CPU at a time and this command determines which of the
eight 32KB virtual tape tracks it will start searching from when commands such as CLOAD are typed in BASIC.
Saved items may not cross a 32K track boundary however a load command will continue to seek data in the next track if not found in
the specified track.

H>X


H> vTAPE STATUS

In Tri-CoCo mode returns the message 8TRK owned by CoCo Blue.
In Dual-CoCo returns the message CPU #n controls 8TRK  vTAPE. where n is 1,2 or 3 if the vTAPE is in eight track mode,
otherwise the message  vTAPE owners are #n,x,y,z
where n,x,y,z is 1 if the tape currently unassigned 2  or 3 if tape assigned to CPU #2 or CPU #3 respectively.
For example if HRDMAN vTAPE STATUS resulted in the message  vTAPE owners are #2,2,1,3 then in the vTAPE RAM
the first two 64K blocks are assigned to CPU#2, the next 64K block is unassigned and the last 64K block is assigned to CPU#3.

H> vTAPE FREE {track or tracks}

Free up the listed tracks for reassignment.

H> vTAPE ASSIGN {track or tracks} TO #{CPU}

Hardware Manager command to assign a track or set of tracks in to a specific CPU.
This command will not overwrite track assignments so if for example we use the command
HRDMAN vTAPE ASSIGN 2,3 TO #3 the command will only change track #3 to CPU #3
and the message TRACK 2 NOT FREE - UNCHANGED TRACK 3 ASSIGNED #3 SUCESS. is displayed.
What you should have done is proceeded the "vTAPE ASSIGN" command with the "vTAPE FREE" command
in this case HRDMAN vTAPE FREE 2  then the command HRDMAN vTAPE ASSIGN 2,3 TO #3 would
assign both tracks 2 and 3 to CPU #3 and the message SUCESS ! would be displayed.

H> #{CPU} NEXTRACK

Hardware Manager command to set as current the next track of vTAPE for a specific CPU.
The command is ignored if the specified CPU has no vTAPE tracks assigned to it otherwise
a message similar to  CoCo RED will use vTAPE track number 4 for next access. will
appear unless the current tape is locked by a program in which case you will get the message
CoCo RED locked on track 3 Wait or Cancel ? if you then type C nothing happens but if
you type W you get the message
CoCoRED will change access source when current tape file closed you will be notified.
you will later get the message as a system popup with bell.
Note another situation is that you were loading or saving a file to vTAPE in that case the
message CoCo RED will use vTAPE track number 4 after current load completes. 
the loading from track 3 or saving to track 3 continues until finished but the next load will be from track 4.

Some sample setups:

Example 1 = CPU#2 has only track 1 CPU #3 has tracks 2 3 and 4 the command 
#3 NEXTRACK cycles though 2-->3-->4-->2-->3-->4 ect
#2 NEXTRACK
cycles though 1-->1-->1 ect.
note in all cases the tape access pointer is set to the start of the new track.

Example 2 = CPU#2 has tracks 1 and 2 CPU #3 has tracks  3 and 4 the command 
#3 NEXTRACK cycles though 3-->4-->3-->4 ect
#2 NEXTRACK
cycles though 1-->2-->1-->2 ect.


H> MIX

For more details about the mixer control click here.



Previous commands may be run from CPU #0.
The Following commands will only run if CPU#1 is in Hardware A location Mode.

H>GUI

This command calls up a full-screen GUI for hardware allocation on the VGA monitor if it is attached or otherwise on the Composite monitor.
If you have both monitors attached the VGA monitor will be used unless the command HRDMAN GUI CMP is used in which case the Composite monitor will be used even though a VGA monitor is available.

For more details about the Hardware Assignment Manager GUI click here.

H>REPART {action} {uDisk}

Where {action} is either KILL, MAKE or SHOW

{uDisk} is one of u0: , u1: , u2: , u3: , u4: , u5: , u6: , u7: or u8:
u9: cannot be reformatted.

Examples:

H>REPART KILL 3,4,5,6,7  or REPART KILL u3:,u4:,u5:,u6:,u7:
Is the command that would free up drives u3:,u4:,u5:,u6: and u7: assuming that they were 160K each as they would be in Tri-Coco Mode that would make 800K free.

H>REPART MAKE 5 720K
This command would make a 720K standard OS9 format disk it would use the TOP 720K freed up by REPART KILL 3,4,5,6,7 .

H>REPART KILL u5:
Is the command that would free up drive u5:

H>REPART MAKE 5 720K PC
This command would make a 720K standard MS-DOS format disk it would use the TOP 720K freed up by REPART KILL 3,4,5,6,7 .

H>REPART KILLALL
Is the command that would free up drives u0: to u8: inclusive 1440K total the contents of ud:0 are copied to a special 160K cache.

H>REPART MAKE 0 720K
Is the command that would create a  720K standard OS9 format disk it would use the the BOTTOM  720K freed up by REPART KILLALL the special 160K cache would be restored to the OS9 subdirectory /u0/NVR that would be physically located within the 256K NV-RAM.

H>REPART MAKE 0 720K
Is the command we just described if we try to use it again without first doing a KILL 0 we would get the error. Requested Disk u0: already exists. and no disk would be made. 

Note how REPART MAKE takes some extra parameters it's full syntax is  REPART MAKE {uDisk} {size spec} {{location spec}}

{uDisk} and {size spec} are mandatory {{format spec}} and {{location spec}} are optional.
Ok More Details:

H>ULIST {{uDisk}}
Is the command that list's the current udisk(s).

Examples:

H>ULIST
u9:,u0:,u5:,u8
H>

H>ULIST u0:
OS9 720K #3 BOOTABLE NVR
H>

or

H>ULIST u8:
RSDOS 160K SHARED
H>

H>ULIST u2:
u2: Partition Not Found.
H>

H>UVIEW {{Verbose}}

     Pops up a window onscreen that shows the uDisk Partition layout.

This is what it might look like poped up on a VGA monitor.


Lets dive a bit deeper by following the result of a few commands as an example.


uDisk Partition Commands Example Part 1.
Step 1:

This will be our starting point.

  All Nine Partitions exist with partitions u4: to u7: in OS9 format.

We view the uDisk setup with.

H>UVIEW



Step 2:

The second step is to clear some space


H>REPART KILL 5,6,7
H>ULIST

  u9:,u0:,u1:,u2:,u3:,u4:,F,u8
H>UVIEW


Step 3:

The third step is to create a 360K partition for OS9.


H>REPART 5 360K
H>UVIEW

 When we view the uDisk setup we note that the new disk was put at the top.


H>ULIST

 u9:,u0:,u1:,u2:,u3:,u4:,F,u5:,u8

Note the F indicates that there is some free space.

Step 4:

We further change uDisk by deleting three disks and then createing one.

H>REPART CACHE 3
H>REPART KILL 1,2,3
H>REPART MAKE 2
H>REPART RESTORE 2
H>REPART ULIST
 
u9:,u0:,F,u2:,u4:,F,u5:,u8:

Note: Each area with free space is designated by a F.

H>REPART
UVIEW

Note Also: We saved the contents of u3: to a cache and then restored them to u2: effectively renaming u3: to u2:.

Step 5:

This further changes uDisk

H>REPART 3 360K
Insuffent free space u3: not created
.
H>REPART 3 320K
H>REPART ULIST
 
u9:,u0:,u3:,u2:,u4:,F,u5:,u8:

Note: Disk names may NOT reflect memory order.

H>REPART
UVIEW


Step 6:

We can create one more partition to fill the unclaimed space.
 

H>REPART 1 FILL

u1: created but not formatted use NitrOS9 or other OS to format
.
H>REPART ULIST
 
u9:,u0:,u3:,u2:,u4:,u1:,u5:,u8:
H>REPART
UVIEW






Now to save this setup. This must be done from the X prompt.
H>X
X>NVSAVE uDisk


In part two we will dive deeper into uDisk Partition control.


uDisk Partition Commands Example Part 2.
Step 0:

This will be our starting point.
 

X>HARDMAN UVIEW

Step 1:


  The first step will be to delete all uDisks.

H>REPART KILLALL
H>REPART ULIST
 
u9:,F
H>REPART UVIEW

Note we did not have to ask to have u0: cached as this happens automatically for the u0: RS-DOS drive or NVR directory under MS-DOS* or OS9*.

Only the first 150K of the OS9 NVR directory gets cached plus a Kernel file KRNTRK.BIN same apply's to MS-DOS except no Kernel track cached.

Step 2:

  The second step will be to create a 1440K disk.

H>REPART MAKE 1440K
H>REPART ULIST
 
u9:,u0:
H>REPART UVIEW 

Step 3:

The third step we say Oh! Oh! did not want to create a PC disk.

H>REPART KILLALL
H>REPART UVIEW

Step 4:

The forth step we recreate the 1440K  disk but this time in  OS9 format.

H>REPART MAKE 1440K OS9

  u0: not formatted dmode data not found in NVR .

H>REPART ULIST
 
u9:,u0: ( Cache Not Restored )

H>X
X>SAVE IN NVR  DMODE "{string}"
X>HRDMAN REPART FORMATHD
H>REPART XFER /NVR TO HD 

H>REPART UVIEW


Step 5:


The fifth step have been using our newly created disk for a while but now want to go back to the setup we created in the first example.

X>NVRESTORE uDisk
X>
HRDMAN REPART UVIEW X
X>
 




Now have recovered our work from Part 1 of this example.

Step 4 of Part 2 is somewhat complicated so I will describe it step by step in detail here.

u0: not formatted because no standard format for a 1.44M OS9 disk exists and no dmode string has been saved to NVR Settings.
The command H>REPART ULIST reflects this situation in it's output.
If we had have created a valid dmode string saved in NVR Settings we would have had a valad OS9 disk created and the files from A:/NVR transferred to /ud0/NVR automatically.

So this is how we will fix this problem, assuming that the format you need is 
 stp=00 typ=80 dns=00 cyl=50 sid=02
 vfy=01 sct=0024 t0s=0024 ilv=01 sas=10.


H>X     puts you back in Xprompt mode.
Determine what format you want to use or possibly restore a disk with the file /NVR/PlaceHolder.NVR reserving 150K at the front of the disk. In any case you must

In the X prompt type SAVE IN NVR DMODE "cyl=00 sid=02 sct=0024 t0s=0024" this works because the other  dmode parameters are default.
Now you can either format a blank drive or image u0:
In this example a blank drive is formatted from HARDMAN you could just as well have booted into a OS9 with udisk drivers and do

but it would be convenient to have a command like like X>HRDMAN REPART FORMATHD to do the formatting instead after all a reset or power loss would result in the loss of the u0: NVR data. THIS IS WHY WE DO BACKUPS !

Now the command H>REPART XFER /NVR TO HD would be used to restore the u0: NVR data to the newly created disk.


The SET command in the context of the H prompt can be thought of as:

SET the following hardware device to act as if it were the following legacy device.

So for example breaking down the command
SET u4:=#3(0) into it's parts we get

The SET command works much the same way under the Xprompt with the difference being that Chameleon  is not available in Tri Coco mode and only the mappings u9:>9#1 u0:>0#1 and u8:>8:#1s this means that in TriCoCo mode you can

Note TriCoCo mode has u0:,u1:,u2: u8: and u9: available by default of these only u1: and u2: can be reassigned while in  TriCoCo mode.
If you exit to DualCoCo mode then u0: may be reassigned but in that case CoCoBlue will go into TapeMode when you return to TriCoCo mode and will not be able to access any disk drives unless the internal Cartridge Slot has a DISK adapter installed such as SDC,SuperIDE or Floppy*.

Note also from tape mode one can upgrade to Drive Wire Access Mode as follows.

You will reboot into DRIVEWIRE BASIC 4.x ...
A simple POKE &HFF59,96:EXEC &HE010 will also work as long as you have no cartridge that uses address &HFF59 as the SuperIDE adapter uses that address you need to use the longer method instead. The Idea behind the method is use bit 7 to trigger DRIVEWIRE BASIC 4.x of bit 7 is 1 otherwise if bit 6 is 1 BOOT the OS9-ROM else the first 5 bits allow 0 to 31 to be used by the add on cartridge for example the SuperIDE uses 0 to 3 as a ROM select for it's Disk Rom.

ie. Drive 0 will be  

H>SET {DT} AS {HP} FOR {CPU}

or   X>DISKMAN SET {DT} AS {HP} FOR {CPU}

   Where {DT} is disk type one of

  and {HP} is the Hierarchical Position of you are assigning to that disk type

  and {CPU} is

 Is used to control the behavior of the DRIVE OFF command it actually does an in memory patch of the DRIVE ON / DRIVE OFF mechanism provided by the devices attached to the system also this command only works in Dual-CoCo mode.

Some Further Details.

CODE Device Name Allowed Positions Additional Notes
FDD Foppy disk drive device TERTIARY Only One Floppy Disk
SCSI SCSI disk drive device PRIMARY,SECONDARY or TERTIARY Legacy SCSI device.
IDE IDE disk drive device PRIMARY Legacy IDE device.
SDC CoCoSDC  disk drive device PRIMARY or SECONDARY Legacy SD interface device.
NET{n} Network disk drive device PRIMARY,SECONDARY or TERTIARY
UDD uDISK disk drive device PRIMARY or SECONDARY
CD{n} Custom disk drive device To Be Determined