Optimizing VMWare Workstation Performance

E-mail Print PDF
VMWare Workstation is a fabulous tool for software demonstrations (and development, testing and maybe even production... but none of these uses are the focus of this entry...).  Many companies including the one I work for use VMWare Images and the free VMWare Player software to provide preconfigured demonstration systems either directly to customers or for the company sales team.

As images get larger and the application/sales team requires Windows XP (suitably licenced of course) in the images for demonstration we started seeing performance issues that didn't exist with our previous Windows 2K Images.

I have found the following VMWare Image configuration settings significantly improve performance:
  1. Use SCSI (not IDE) disks in the image.
  2. Ensure virtual disks are PreAllocated instead of Growable.
  3. Ensure virtual disks are configured as Independant and Persistent.
  4. Prevent memory trimming by adding MemTrimRate=0 to the .vmx file for the image.
  5. Prevent creation of a VMEM file at runtime by adding sched.mem.pshare.enable = “FALSE” to the .vmx file for the image.
  6. Also adding mainMem.useNamedFile=FALSE to the .vmx file form the image.
  7. Disable Networking if it is not required.
The assumption with this configuration is that you are running one VMWare Image at a time and have a host with sufficient available memory so the allocation specified in the .vmx will not cause swapping on the host.

None of this is particularly new... it is all documented in Performance Benchmarking Guidelines for VMware Workstation 5.5.
 

C64DTV in a BTC 9118 Keyboard

E-mail Print PDF

This project is by no means original but the mechanics of building a C64DTV into a BTC 9118 mini keyboard may be of interest to someone....

A bit of history....

I picked up a PAL C64DTV in K-Mart in Sydney (Australia) in December 2005 with great plans to hack it into something interesting (very been much of a gamer).  It is not November 2006 and some progress is finally being made.  As they say on the Mainland Cheese commercials... good things take time (if you are not from NZ check out http://www.duncans.tv/2005/mainland-cheese for a bit of Kiwi culture).

Getting started....

Not being a great gamer I thought it would be a fun project to build the DTV board into a keyboard, add some external storage and use it to get a feel for C64 programming.  Never was much of a C64 user back in the 80's.  I could have powered up the real C64 or C128D in my retro collection but a side benefit of the repacked DTV is I can take it with my on long business trips to occupy a few boring evenings (an emulator would be just too easy!).

Finding a keyboard....

The first step was to find a keyboard with sufficient free space internally to be useful but also small enough to throw in my travel bag.  In New Zealand compact keyboards appear to be relatively uncommon and those that are did not offer much in the way of internal space... not that I would see looking at the online advertising photos anyway.  Even at NZ$ 25 each (approx US$ 15) the project price starts to climb when purchased parts are unusable.

A likely candidate was the BTC 9118 compact keyboard.  This was available from a number of resellers at a good price and a great article by Monty N5ESE showed how one could be used to build a CW keyer.  The best thing about Monty's site was the internal keyboard pictures that gave me a lot of confidence that a C64DTV board could be mounted internally.

Blog_C64DTV_1.JPG

The Internals....

The BTC 9118 cases comprises two halves... the top half contains the actual keyboard and the keyboard controller PCB.  The bottom half contains nothing at all... but is has a very convenient "tray" half of which is empty.

This picture shows the internals of the BTC 9118 with the C64DTV board, a small regulated +5v power supply and power supply connector.

Blog_C64DTV_2.JPG

The Process....

The process I followed to repackage the C64DTV for this keyboard was as follows:

  • Disassemble the C64DTV joystick!
  • Remove the motherboard and unsolder the BAT+,DIS,LED+,E- and joystick wires.
  • Unsolder the Video (Red), Audio (White) and Gnd wires.
  • Test the C64DTV board for size in the keyboard "tray" and use a file to shave a small amount off the board so it fits property.  Refer to the picture below and you will see a vertical line marking the side I shaved.
  • Remove the red LED from the standard C64DTV switch board and mount it directly on the C64DTV board in the LED+ and E- holes.  The flat side of the LED goes on the E- side.
  • To ensure the board sits as low as possible in the "tray" remove C5 (this is the component reference for a PAL board) and reinstall lying sideways against the board.  Be careful with the polarity... -ve on the capacitor goes to the hole with the shaded silk screen.

Blog_C64DTV_3.JPG

  • Remove the keyboard controller board and unsolder the keyboard cable.  Solder a 4 pin header into the controller board where the cable connected and trim the pins so they are long enough to solder to but not too long that they prevent the case from closing completely.
  • Build a small +5v voltage regulator.  I used a 1N4004 diode for reverse polarity protection, a 78L05 regulator and two 1n caps.  This works well with the 8v plug pack I am using.  If you are using a higher voltage plugpack you may need to use a standard 7805 with a heat sink.
  • On the voltage regulator board I also mounted a pushbutton (salvaged from the PCB of an old modem).  When not pressed the behavior is the same as the standard C64DTV power switch being on (GND on the C64DTV is connected to the -ve power supply).  When pressed the behavior is the same as the standard C64DTV power switch being off (DIS on the C64DTV is connected to the -ve power supply).  This works well as a "reset" button.

Blog_C64DTV_4.JPG

  • Wire the inputs of the regulator to the +/- inputs on the DC jack.  I mounted the jack on the rear right hand side of the keyboard.
  • Wire the +5v output of the regulator to BAT+ on the C64DTV.
  • Wire the +5v output of the regulator to VCC on the keyboard controller board.
  • Wire the Gnd output of the regulator to the common pole of the reset button.
  • Wire the Gnd output of the regulator to VSS on the keyboard controller.
  • Wire the normally closed pushbutton output to E- on the C64DTV.
  • Wire the normally open pushbutton output to DIS on the C64DTV.
  • Wire the DA pin on the keyboard controller to TP4 (PAL) on the C64DTV.
  • Wire the CLK pin on the keyboard controller to TP3 (PAL) on the C64DTV.
  • Reconnect the Video (Red), Audio (White) and Gnd wires to the C64DTV.
  • Test it out and when all is running permanently mount the boards in the "tray".

Making it work....

I found that the reconfigured C64DTV worked well once I discovered a few things:

  • PAL boards require CTRL (not K) to be held down during start if you want to end up in Basic rather than the games menu.
  • After startup in Basic my C64DTV board would ignore most key presses and those it recognized would be followed by 'V'.  This happened with all the keyboards I tried so I don't think it is a fault with the BTC 9118.  Pressing the Shift key once would fix the problem.  I have seen only one other reference to this behavior and that is in Hummer DTV FAQ.

Next Steps....

I may just have enough room to fit a 1541-III-DTV.... and maybe some joystick connectors.  Watch this space.

 

Ruby really is on Rails.....

E-mail Print PDF

Ruby on Rails is really popular at the moment (no kidding!).... but on http://www.quicktrip.co.nz/railtrack.htm it really is on rails.

 

 


Page 29 of 29

Powered by Easytagcloud v2.1

Contact Andrew Quinn

jaquinn@ihug.co.nz http://twitter.com/jaquinn