2020: NameSpaces are going to be implemented this year to better separate content. OS-9 Al (talk) 11:18, 15 April 2020 (CDT)
2020-05-17: If a page gives you an error about some revision not being found, just EDIT the page and the old page should appear in the editor. If it does, just SAVE that and the page should be restored. OS-9 Al (talk) 12:22, 17 May 2020 (CDT)
VCC 1.4.3b and DW4 Installation Guide
by Bill Pierce
Please do not edit this page. This is a work in progress and I would like to finish it before anything is added or deleted. If you see something in need of correction or would like to contribute to the page, please contact me This page was created in 1440 x 900 Widescreen resolution, and is best viewed that way. Thank you, B.P
Installing VCC 1.4.3b & DriveWire4
Introducing Vcc 1.4.3beta with Becker Port Support for DriveWire4
When Joseph Forgione released the 1st version of the Vcc Coco 3 emulator, I was a little sceptical about it. Slowly, he updated the releases from 1.0.0 to 1.4.2. At that point the emulator had matured greatly and would run most Coco software, even OS-9. It was about that same time, the M.E.S.S. Coco 3 emulator started to get more features, but with each feature, introducing more bugs. Vcc 1.4.2 was easy to install, easy to run, and felt like using a real Coco 3. With some help from Robert Gault, Joseph added the RGBDOS system for controlling VHDs (virtual hard drives) just as you would real hard drives. The package was complete. With 4 virtual floppy disk dirves, a virtual hard drive usable in both RSDOS and OS-9, Vcc became the ultimate Coco 3 emulator. But sadly... Joseph seemed to disappear from the Coco community. There were no more updates, no more posts, and even his website eventually disappeared. As luck would have it, there were at least copies of the Vcc installation package in several of the Coco archive sites, so it was still available. It was still (IMHO) the best Coco 3 emulator around. But there were several things missing... like support to interface the outside world.... then came the Becker Port.
Originally, the Becker Port was interfaced in a Coco FPGA project by Gary Becker so the Coco emulation in the FPGA could access the DriveWire interface. All the port really consists of is 2 unused address lines that with proper coding, could access serial input from outside the emulation. But where did that leave Vcc?
Somewhere along the line, a couple of members of the Coco community located and contacted Joseph to inquire about the state of the Vcc source code. In his replies, he stated that he would like to move the Vcc sources to an Open Source project as his age and health would no longer allow him to work on the project. He want the Coco community to be able to carry on with his Vcc project. He sent them a copy of the source code to "play around" with until he finished preparing the sources for public release. He said he wanted to change the copyright statements and also remove the RSDOS ROMS to avoid possible copyright infringements. Much to our dismay, he hasn't been heard from since. Several people have tried to contact him with no response. So until he is contacted, there can be no official release of the sources or an Open Source project. Meanwhile, the holders of the sources had been playing with them. They discovered a way to implement the Becker Port so that Vcc could talk to the hosting PC through a patch to the TCP port. With a little modification to DriveWire, the Becker Port became Vcc's connection to the world. Eventually, the patched version of Vcc was released to the public as Vcc 1.4.3beta. Now with Vcc 1.4.3b and DriveWire4, you can load multiple VHD images, print to DW4's virtual printer, access the internet through TelNet, play Coco MIDI sequences through DW4's virtual MIDI interface and much more!! Vcc couldn't be much better.
With all these new capabilities in Vcc, comes some complexity. The setup to get Vcc going with the Becker Port and DW4 is not so complicated as it is confusing. With this tutorial, I hope eliminate some of that confusion. So let's get on with it!
I am not going to repeat the DriveWire4 installation here as there is already a tutorial for that installation. To install DW4, just click the link below and follow the instructions and get DW4 running. Once you have completed the DW4 installation, hit your back button on your browser to come back here and complete the Vcc 1.4.3b installation.
- Installing DriveWire4 - A complete guide for the DW4 installation.
Installing Vcc 1.4.3beta
To install Vcc 1.4.3b, you must download the Vcc installation package from:
VCC 1.4.3beta Coco 3 Emulator w/Becker Port Support - The latest version of VCC usable with DriveWire4. (installation package)
Once you have downloaded the package, unzip it to a folder and you will find the Vcc_setup.exe file. Run this file and follow the prompts and Vcc 1.4.3b will be set up on you Windows PC with a shortcut on your desktop. At the end of the installation, you will also be prompted read the "ReadMe-143beta.txt" file. I recomend you do so. Now there are a few things you need to know about this installation before you run the program.
First, using Windows Explorer" (not Internet Explorer), navigate to the directory in which Vcc was installed. You should find these files:
- Vcc.exe - The actual Vcc emulator program
- Welcome to Vcc.pdf - The Vcc User's Manual in PDF format
- ReadMe-143beta.txt - A short explination for using the hdbdos roms and the Becker Port
- Vcc.ini - The initialization defaults for Vcc
- KeyMap.ini - The unfinished (and unusable) keymap file
- fd502.dll - The FD-502 Disk Controller emulation library
- harddisk.dll - The Glenside IDE Hard Drive Controller emulation library
- mpi.dll - The Tandy Multipak Interface emulation library
- orch90.dll - The Orchestra 90cc Program pak and interface library
- SuperIDE.dll - The Cloud9 SuperIDE HardDrive and CF card reader interface library
- hdbdw3bc3.rom - The HDBDOS rom patched for use with the Becker Port
- hdbdw3bck.rom - An alternate HDBDOS rom with hi-speed turned off for Coco 2 game compatibility
- unins000.exe - The windows uninstall program
- unins000.dat - The stored data record for the uninstall program
Familarize yourslef with these filenames as some of them will be accessed later in the tutorial.
Changing the defaults
First I recommend you read the Vcc manual thoroughly as well as the "ReadMe" text file as it contains important info in regards to using HDBDOS & DW4 with Vcc that is not covered in the manual. You must keep in mind that the Vcc manual was written before the Becker Port enhancement was introduced and does not cover it's operation, hence the writing of this tutorial.
Once you are familar with some of Vcc's features, you'll want to get up and running. Just double click the Vcc icon on your desktop and you will see the Vcc Coco 3 emulator default screen. You will start in "Disk Extended Color Basic 2.1" just as if you had turned on your real Coco 3 with a Radio Shack disk controller installed... But with a differnece. If you click the "Cartridge" menu item at the top of the emulator, you will see that not only do you have a disk controller, but a Multipak Interface, four disk drives, and a hard drive!!
At the default settings, you have a fully functional Coco 3 super system right at your finger tips (literally). What I would've given to have had such a system in the 80s. But this is only the tip of the iceberg... there's a lot more than just meets the eye. Try this, click the "Cartridge" menu and in the pulldown menu,
- select the "FD-502 Config" item.
- In the top left box, check the "RGB Dos" button and click the "OK" button.
- Hit "F9" two times to cold start Vcc and you should now be in RGBDOS for Vcc
Here you will find that you can change the rom you're using, overclock the drives for faster read/write speeds, slect "Persistant disk images" to save your disk selections for the next run, and there's even a function to use the PC's real floppy drive as a Coco drive. I personally have never been able to get this functions to work, but I have heard others say that it does work with the proper PC and drives.
Though ultimately, we're going to move away from RGBDOS and into the DriveWire compatible "HDBDOS" which is basically RGBDOS on steroids, I figured this was a good place to set some things in the configuration so that you will be more familar with menus when we get to the good "stuff".
The "Cartridge" menu we were just accessing is where you go to "insert" your rom carts, disks and hard drives. For now were' going to leave that menu and move to the "Configuration" menu.
The "config" menu is where you can set all aspects of your Coco 3 emulation. Are you used to using an RGB monitor or a TV? You can emulate either one. Want to load from virtual cassette images? That can be done as well. There are lots of options here and we'll touch on a few of them as we prepare to set Vcc up to be ready for the Becker Port and DriveWire4.
Here you will find the Config panel. This is where most of the Vcc defaults are set,
This first tab, "Audio", is where you select your PC's soundcard so Vcc can emulate the sounds of the Coco on your PC speakers. Vcc will even play it's Orchestra 90 pak in full stereo sound!
The next tab is the "CPU" panel. Here you can select your memory size from 128k stock off the shelf Coco 3 to a monster 8 meg Super Coco. Currently, NitrOS-9 only supports up to 2 meg, but with driver modifications, 8 meg should be do-able. You can select either a standard 6809 CPU or the Hitachi 6309 which runs at double speed with suedo 16 & 32 bit instruction set. You can also overclock the Coco CPU speed and get amazing speed. I use this function when I'm compiling C code as that can be a slow process at regular Coco speeds.
The "Display" tab is (of course) where you set your Coco's display. You can set Vcc to emulate RGB on a Cm-8 monitor or Composite video like the color TV display... only much clearer. You will probably want to make sure "Allow Screen Resize" is checked or you will not be able to resize the Vcc window. I use a full maximized display on a wide-screen LCD monitor, but sometimes you want to "square" up the display so that games and graphics do not look stretched. Here you can also select "Throttle Speed" which when selected, makes the Coco's clock remain constant even when the PCU is overclocked. Unchecked, everything runs FULL speed of the overclock setting in the CPU panel.
On the "Keyboard" tab, there is only one options setting. You can select the "Basic" keyboard layout in which the keys on your PC keyboard emulates the layout of the actual Coco keyboard or you can select the "OS-9" keyboard which is basically your PC keyboard's layout.
In the "Joysticks" tab you can select to use your PC's mouse or the arrow/mapped keys as the Coco's joystick/mouse. There are disabled options for real PC joysticks but Joseph never finished that option so it's unavailable.
The "Misc" tab contains selections for auto starting the program pak emulation. In other words, if you select "AutoStart Cart", when you select a slot in the emulated MPI (Cartridge menu), it will automatically start that cart. Deselecting this ooption and selecting a cart slot is like taping the the cart select pin on the cart so the Coco will not boot the rom. I used to do this on the Orchestra 90 pak to be able to use the stereo 8 bit sound for my programs.
The "Tape" tab is where you insert a virtual cassette image to load and save cassette tape programs just like on a real tape deck. There is an option to use the "wav" format also, but a word of warning, I have found that even just loading a "wav" file mangles the original wav file. I would only use files in the "cas" format. You were warned.
Finally we come to the "BitBanger" tab. Originally in Vcc 1.4.2, the bitbanger (or serial port) feature was non-functional. This tab is what is now used to set the Becker Port parameters. In the default installation, the port is disabled but the IP and Port settings are set for you. To enable the Becker Port you just click.... "Enable Becker Interface". It's that easy. Just for clarification, the IP setting should be "127.0.0.1" and the Port setting should be "65504" as shown in the picture above.
After clicking "Enable...", you are almost ready to use the port to drivewire but there's a couple of more things you need to know.
NOTE: After setting the values of any items in the Config menu, you must click "Apply" for them to to change to those settings. Clicking apply makes the changes "instant" before you leave the menu panel.
Note: Scrrenshots comming soon
Now we are going to set up the HDBDOS ROM. Exit any menu you may currently be viewing and click the "Cartridge" menu. In the "Cartridge" selection, make sure you have the "MPI.DLL" inserted into the "Cartridge" slot. With the "MPI.DLL" inserted, you should see 4 MPI "slots" below the "Catridge" selection. In the "MPI Slot 4", insert the "FD-502.DLL" if not already present. In "MPI Slot 3" insert the "harddisk.dll". It will display as "Hard drive + Clous9 RTC" in the selction. In "MPI Slot 2" I usually insert the "Orch90.dll" as I use this for stereo sound in some of my software. Now click the MPI Config. Set the "Slot Selct" to "4" and click "OK".
Click the "Cartridge" menu again, you should now have 4 FD-502 Drives and a Hard Drive 0 selection available below the MPI choices. For now, we are not going to worry with our disks, we are going to get HDBDOS going. Near the bottom of the menu, click the "FD-502 Config" selection. This should bring you back into the drive configuration menu we were in earlier. Click the "External ROM Image" button to make sure it is selected. In the bottom right corner of the panel should be a "Browse" button. Click this button and navagate to you VCC installation directory (it should already be there). Select the "hdbdw3bc3.rom" and click "Open". You should now be back in the "FD-502 Config" panel. Select "Overclock Disk Drives", "Persistent Disk Images", and "Clock At 0xFF50-51". Now click "OK". Vcc should now reboot and you should see the "Disk Extended Basic" logo as Well as the "HDBDOS 1.4 DW3" logo below that. If so, you have successfully booted into HDBDOS. If not, review the above directions and try again.
Configuring DriveWire4 for Vcc
At this point, Vcc may seem to be "hung up". This because HDBDOS is trying to connect to DriveWire4 and DW4 is not setup correctly if you followed the DW4 setup instructions. Those instructions were for a real Coco and not for Vcc. You need to bring up the DW4 GUI and set up the GUI for Vcc and the Becker Port.
In DW4, click the "Config" menu and select the firt item "Simple Config Wizard". The first panel in the wozard is just an info screen so click "Next". The next panel is where you select the machine type that you are running. The selection we want is the "Emulator or other TCP/IP" item in the bottom right corner" Select this item and click "Next". The rest of this configuration should be at defaults but we will review them to be sure. This panel is the "Connection TCP/IP Defaults". Make sure "Use Server Mode" is selected and the "Listen On Port" is set to 65504 as this is the port we have in Vcc. Click "Next".
In this panel, "Choose Virtual Midi Support", "yes" should be selected. Click "Next". The next panel is the "Printer Options" and we'll leave the defaults for now so click "Next" (for more on this option see the DW4 documentation). The next panel is the final screen so just click "Finish". DW4 should now be properly setup for Vcc 1.4.3 w/Becker Port support.
Running Vcc with DriveWire4 and HDBDOS
Now go back to your Vcc window. Press "F9" on your PC keyboard twice. This will "Cold Start" Vcc as if you turned the Cooo Off, then back on. Neat eh?
If all went well, you should now have the Disk Extended Basic and HDBDOS logos with a "blinking" cursor. If your cursor is not blinking, I suggest you go back to the beginning of this tutorial and review all sections to see what was missed.
If you got the blinking cursor, then you have done it!! You have successfully got Vcc 1.4.3b running with DriveWire4. Now... What do we do with it? I will try to explain a few basics of the HDBDOS operations but I suggest you read the DriveWire4 documentation Wiki for DW4 info and get the HDBDOS documentation PDF file from Cloud9.com and read it well. There is a wealth of information there on all of HDBDOS's features.
Mounting VHDs (Virtual Hard Drives)
NOTE: The internal Vcc "hard drive 0" will not be usable under HDBDOS. This is only usable under RGBDOS or NitrOS9 You will be using the DriveWire "drive slots" in the DW4 GUI. The Vcc virtual "FD-502 Drives" should work normally.
To use "Floppy Disk" images found in the Color Computer Archives, just mount the images in the emulated floppy drives under Vcc's "Cartridge" / "FD-502 Drive" slots and use regular Disk Extended Basic commands just as you would on a real Coco 3.
To mount a VHD in the DriveWire4 GUI, just "right click" on the desired slot in the GUI and select "Insert Disk for Drive x". Navvigate to where your VHDs are stored and double click the desired image. Your VHD image is now mounted in DW4.
To use VHD files in Vcc with DW4, first you need to know a little about the way VHD files are configured. Basically, there are 2 types of VHD files found on the internet. The first is a straight, single partition VHD formatted for either RSDOS or OS9. To use these files, there is no "special" setup needed. The second type has been the subject of many disscussions on the Coco forums as to what the standard format is, but I will deal with the 2 most used formats here. These are the "dual partition" hybrid "OS9/RSDOS" VHDs. These images have both OS9 and RSDOS partitions and are the format most frequently found in the archives.
To use the dual partition VHDs under RSDOS, HDBDOS needs a little tweeking. As a standard, the OS9 partition comes first and the RSDOS partition last. Due to this configuration, HDBDOS cannot find the RSDOS partition until you tell it where the partition is. You do this by setting "offsets" in HDBDOS. There are several ways to do this.
The 2 formats of VHD are the original standard set up by Alan deKok for Jeff Vavasour's Coco emulator. In his format, the RSODS partition starts at $5A000 (368640)
The other format is used by Cloud9's SuperIDE controller and the offset is $79500 (496896).
The only real difference between these two formats is the size of the OS9 partition.
To use these offsets, first you must determine which type you are using. I know of no way to do this so my best suggestion is to ask someone involved with where you obtained the file. Once you know what type of VHD you have, using BASIC POKEs, you type:
(for "standard" VHDs)
(for "cloud9" VHDs)
These pokes will make the RSDOS partition readily available to HDBDOS. The downfall of this method is you have to do this each time you start VCC or each time you move from RSDOS to OS9 and back again. The change is not permenant and is reset to default (000000 any time the HDBDOS rom is reloaded (reset or restart). You can also write an "AUTOEX/BAS" file to do this for you, but we'll discuss this in a later chapter of the tutorial.
The next method is a little more permenant. You must go to the DW4 GUI and "right click" the slot in which your VHD file is loaded. In the context menu displayed, select "Drive x Parameters" at the bottom of the menu. Scroll down the display until you find the "offset" (not "offsetdrv") entry. Click this entry and a dialog box appears at the bottom of the panel. Enter the proper offset from the text above into the box near the bottom and click "Apply" then "OK". You should now have access to the RSDOS partition of the VHD in Vcc. The major downfall of this method is that now you cannot use the OS9 partition on the drive as DW4 is set to look past that area. This is reall only useful is you are using RSDOS exclusively. Each VHD file can have it's own offset independant of the others so you can use mutiple types with this method.
The last method is the best (and the one I use) if you use both OS9 and RSDOS regularly, but it is also the most involved. First you will need to obtain a Windows hex editor program. I will not provide that here but you can easily find several free hex editors by Googling "windows hex editor" (I did). Once you have a hex editor, start the editor the load the "hdbdw3c3.rom" file into the editor. The file will be in your Vcc installation folder.
In the hex editor, scroll down to an offset of $1D98 and change this and the next 2 values to $05, $A0, $00 respectively. Now save the file as "hdbdw3c3_offset.rom" and exit the hex editor. Use the HDBDOS setup directions we used before and reload the new rom into Vcc. Hit "F9" twice (cold Start) and now you have a permenant offset in HDBDOS and both RSDOS & OS9 partitions will read properly.
The method you use is up to you and/or the type of VHD you are using. Personally, I always use the "standard" type VHD and keep my offsets in HDBDOS permenant.
This concludes the basic Vcc 1.4.3b and DW4 installations. I will not go into how to use HDBDOS or setting up NitrOS9 in this tutorial as the HDBDOS manual describes all aspects of HDBDOS and should be your reference to that software. As for installing NitrOS-9 for Vcc and DW4, that will be a tutorial in itself. That can be a very involved process as there are many options and each user has his/her own needs in OS9. I hope to write the NitrOS9 installation tutorial soon, but until then....
Keep On Cocoing!!
Here are the links for the all the downloads and documentation needed for Vcc 1.4.3b Coco 3 Emulator wit Becker Port support.
Vcc 1.4.3b Coco 3 Emulator w/Becker Port
The download includes all Vcc needs to run. This download does NOT include DriveWire4