Installing VSTa 1.6.8 in VMWare

Installing VSTa 1.6.8 in VMWare

Estimated time: 30 minutes

Create a hard drive with the installation

Create a new machine for vsta

Login and enjoy

  login: root
  password: charlie

Odds and Ends

Remember if you rebuild the kernel to apply the vmware kernel patch first!

My VSTa page includes an ethernet driver for the NIC emulated by VMWare.


Appendix - kernel patch

The stock 1.6.8 kernel doesn't work with VMWare. To fix this, apply the following patch and then rebuild the kernel. Make sure that you get the real include file (/vsta/include/mach/vm.h) in addition to your src tree.
Index: vm.h
===================================================================
RCS file: /vsta/cvs/vsta/src/include/mach/vm.h,v
retrieving revision 1.4
diff -u -3 -r1.4 vm.h
--- vm.h        1 Sep 2007 15:03:52 -0000       1.4
+++ vm.h        27 Sep 2002 17:48:44 -0000
@@ -71,7 +71,7 @@
  */
 #define UBASE (0x0)
 #define UOFF (0x80000000)
-#define USTACKADDR (0x80000000-UMAXSTACK)
+#define USTACKADDR (0x77000000-UMAXSTACK)

 /*
  * Address of utility map used by hat_attach() on i386

Appendix - Known issues

When the console server beeps, it causes a presistent clicking sound. To fix, apply the following patch to /vsta/src/srv/mach/cons2:
Index: cons.c
===================================================================
RCS file: /vsta/cvs/vsta/src/srv/mach/cons2/cons.c,v
retrieving revision 1.22
diff -u -3 -r1.22 cons.c
--- cons.c      16 Dec 2011 18:20:23 -0000      1.22
+++ cons.c      6 Jul 2004 23:15:36 -0000
@@ -802,7 +802,11 @@
                 * Ring bell
                 */
                if (c == '\7') {
+                       int count = 1193180 / 440;
                        outportb(beep_port, inportb(beep_port) |  3);
+                       outportb(0x43, 0xb6);
+                       outportb(0x42, count & 0xff);
+                       outportb(0x42, (count >> 8) & 0xff);
                        __msleep(100);
                        outportb(beep_port, inportb(beep_port) & ~3);
                }