Retrocomputing
GNAT 3.15p On Windows NT 3.51
The installer gnatwin-3.15p.exe, when executed on Windows NT 3.51, failed with the message shown below. Instead of making the installer working on Windows NT 3.51, I have copied over the files installed under C:\GNAT on Windows NT 4.0/2000 to the same location on Windows NT 3.51. When I executed gnatmake.exe from C:\GNAT\BIN, it was looking for msvcrt.dll which was missing on my Windows NT 3.51. I've copied over msvcrt.dll from a Windows 2000 system to C:\GNAT\BIN of the Windows NT 3.51 system and put C:\GNAT\BIN to the system PATH and attempted to compile a small test program. It ended up with an error message shown below. |
Solaris 8 in VMware
VMware Server 1.0.10 on Windows XP Solaris 8 X86 Platform Edition 10/01 Installation .... X-Window Openwindow not shown in session list. Openwindow binaries all available in /usr/openwin Opening XDMCP session from Ubuntu - Xnest crashes with segmentation fault after having shown initial dtsession Xnest alone also crashes if multiple screens are specified on the command line (Version: xnest 2:1.9.0-0ubuntu7.6) Xnest -geometry 1024x768 -scrns 2 -ac :5 Xephyr loops back to the login screen Xephyr -screen 1024x768 -query sol8vm -ac :2 $HOME/dt/sessionlogs - complains about Xinemara request /usr/dt/bin/dtwm seems to make a xinemara screen couint request. /usr/dt/bin/dtscreen or /usr/dt/bin/dtcalc ran with no problems. Xephry -screen 1024x768 -ac :2 telnet to sol8vm $ DISPLAY=tpedge:2.0 /usr/dt/bin/dtcalc Interim solution => Xephyr without xdmcp but fake single-screen xinemara via xdmx sudo apt-get install xdmx Xdmx +xinerama -xinput local -display :2 -ac :3 telnet to sol8vm $ DISPLAY=tpedge:3.0 /usr/dt/bin/dtsession Solaris 8 X86 Platform Edition 04/01 |
GCC 2.7.2.3 for SunOS 4.1.1
The C compiler bundled in SunOS 4.1.1 is a pre-ANSI compiler that accepts the K&R style only. Some old GCC compilers that support SunOS 4 are still available from the GCC project site. In need of an ANSI C compiler, I chose to use one of the oldest gcc compilers available - gcc 2.7.2.3. As my SunOS runs in TME without the Ethernet support, the first issue was how I could transfer gcc source files to the emulated environment. The first idea was to load the source tar-ball as the virtual tape. $ mkdir ${HOME}/emulators/tme-sun3/gcc2723 $ wget http://ftp.gnu.org/gnu/gcc/gcc-2.7.2.3.tar.gz $ gzip -d gcc-2.7.2.3.tar.gz $ LTDL_LIBRARY_PATH=${HOME}/emulators/lib ${HOME}/emulators/bin/tmesh SUN3-CARRERA After having started the emulator, I've loaded the tar-ball as a tape and powered up the machine. tmesh> command tape0 load gcc2723/01 tmesh> command mainbus0 power up After having logged into the emulated SunOS environment, I could view the tape contents with no problems initially. suntme3$ mt -f /dev/nrst0 rewind suntme3$ tar -tvf /dev/nrst0 However, I got caught in a serious problem when I tried to extract files from the tape. The problem was that a directory in the tape was extracted as a file and the files under the directory could not be extracted into the directory. After some investigation, I've found out that it is the tar-ball format that caused the problem. To change the format, I've extracted all of the files on the host machine and recreated the tar-ball in the old V7 format. I did the followings on the host machine. $ cd ${HOME}/emulators/tme-sun3/gcc2723 $ gzip gcc-2.7.2.3.tar $ tar -zxvf gcc-2.7.2.3.tar.gz $ tar --format=v7 -cvf gcc-2.7.2.3.tar gcc-2.7.2.3 $ rm -rf gcc-2.7.2.3 $ ln -sf gcc-2.7.2.3.tar 01 I've reloaded the virtual tape at the tmesh prompt. tmesh> command tape0 unload tmesh> command tape0 load gcc2723/01 I've extracted files from the tape after having rewound it at the SunOS prompt. suntme3$ mt -f /dev/nrst0 rewind suntme3$ tar -xvf /dev/nrst0 The rest of the build procedure follows the standard autoconf/automake procedure and it ran very smoothly. suntme3$ cd gcc-2.7.2.3 suntme3$ ./configure suntme3$ make suntme3$ make install After all these, I've got the compiler files installed in various subdirectories under /usr/local. See the screen-shot below for the error emitted by the stock K&R C compiler and successful compilation by GCC. |
Installing SunOS 4.1.1 to Sun3 Emulated in TME 0.8 on Linux
In need of an old SunOS 4 for reference purpose, I've manged to install it to an emulated Sun3 on Ubuntu Linux 10.10 x86_64 as I came across TME capable of emulating Motorola 68020 based Sun3 machines. Here are the steps I've taken to get it done. Set up the directory on the host Ubuntu machine. I placed the emulator files under ${HOME}/emulators. $ mkdir ${HOME}/emulators $ cd ${HOME}/emulators Get the TME source archive and extract the files. $ wget http://people.csail.mit.edu/fredette/tme/tme-0.8.tar.gz $ tar -zxvf tme-0.8.tar.gz TME requires GTK to emulate a framebuffer, a keyboard, and a mouse. I've installed the GTK development files on my host machine. $ sudo apt-get install libgtk2.0-dev Create a helper script named 'gtk-config' to work around an autoconf issue in detecting the GTK development packages.
Configure the source and build the emulator. I've included the tme source directory into PATH to let configure find the gtk-config script and execute it as necessary. I've set the prefix to ${HOME}/emulators to isolate this emulator environment into a single location. I didn't have luck in building the emulator without providing --disable-shared. $ PATH=$PATH:${HOME}/emulators/tme-0.8 ./configure --prefix=${HOME}/emulators --disable-warnings --disable-shared $ make $ make install At this point, you should have the emulator files installed into respective directories under ${HOME}/emulators. Executable files are shown below. $ ls -l ${HOME}/emulators/bin total 3232 -rwxr-xr-x 1 hyung-hwan hyung-hwan 3269688 2011-03-24 14:46 tmesh -rwxr-xr-x 1 hyung-hwan hyung-hwan 22120 2011-03-24 14:46 tme-sun-eeprom -rwxr-xr-x 1 hyung-hwan hyung-hwan 11395 2011-03-24 14:46 tme-sun-idprom Let's start creating an environment for Sun3 emulation by creating a dedicated directory. $ mkdir ${HOME}/emulators/tme-sun3 $ cd ${HOME}/emulators/tme-sun3 Copy some sample configuration files from the default installation into the emulation directory. $ cp ${HOME}/emulators/share/examples/tme/SUN3-CARRERA . $ cp ${HOME}/emulators/share/examples/tme/sun3-carrera-eeprom.txt . $ cp ${HOME}/emulators/share/examples/tme/sun-keyboards.txt . $ cp ${HOME}/emulators/share/examples/tme/my-sun-macros.txt . Get the ROM file to the emulation directory. $ wget http://people.csail.mit.edu/fredette/tme/sun3-carrera-rev-3.0.bin Create IDROM and the EEPROM files. Note that you can change 11:22:33 to a different value of your choice. $ ${HOME}/emulators/bin/tme-sun-idprom 3/150 8:0:20:11:22:33 > my-sun3-idprom.bin $ ${HOME}/emulators/bin/tme-sun-eeprom < sun3-carrera-eeprom.txt > my-sun3-eeprom.bin Create a disk image file to use. Change the number in seek to change the file size. $ dd if=/dev/zero of=my-sun3-disk.img bs=1 count=1 seek=1000000000 Customize the SUN3-CARRERA file for installing SunOS 4.1.1. # Edit Line 12 to change the memory size to 32MB. #cgthree0 at vme0 addr 0xff400000 ipl 4: tme/machine/sun3/cgtwo type sun3 #display0 at cgthree0 # Edit Line 93 to change the disk type from tme-scsi-1 to acb4000 #sd0 at scsibus0: tme/scsi/disk id 0 type tme-scsi-1 sd0 at scsibus0: tme/scsi/disk id 0 type acb4000 # Edit Line 101 to change the tape drive info by deleting the vendor and the product info. #st0 at scsibus0: tme/scsi/tape id 4 type emulex-mt02 vendor EMULEX product "MT-02 QIC"
st0 at scsibus0: tme/scsi/tape id 4 type emulex-mt02
Get the boot tape files for SunOS 4.1.1 from http://www.sun3arc.org/BootTapes/Sun3 and place them under ${HOME}/emulators/tme-sun3/sunos411. $ mkdir ${HOME}/emulators/tme-sun3/sunos411 $ cd ${HOME}/emulators/tme-sun3/sunos411 $ # Take all the means to get required files from http://www.sun3arc.org/BootTapes/Sun3. Create symbolic links to prepare a virtual tape image. $ uncompress *.Z
$ ln -sf SunOS411.sun3.Exa.xdrtoc 02 $ ln -sf munix_sun3 03 $ ln -sf munixfs_sun3 04 $ ln -sf miniroot_sun3 05 $ ln -sf sun3_proto_root.sunos_4_1_1.tar 06 $ ln -sf sun3_usr.tar 07 $ ln -sf sun3_kvm.tar 08 $ ln -sf sun3_install.tar 09 $ ln -sf sun3_networking.tar 10 $ ln -sf sun3_system_v.tar 11 $ ln -sf sun3_sys.tar 12 $ ln -sf sun3_sunview_users.tar 13 $ ln -sf sun3_sunview_demo.tar 14 $ ln -sf sun3_text.tar 15 $ ln -sf sun3_demo.tar 16 $ ln -sf sun3_openwindows_users.tar 17 $ ln -sf sun3_openwindows_demo.tar 18 $ ln -sf sun3_openwindows_fonts.tar 19 $ ln -sf sun3_user_diag.tar 20 $ ln -sf sun3_manual.tar 21 $ ln -sf sun3_tli.tar 22 $ ln -sf sun3_rfs.tar 23 $ ln -sf sun3_sunview_programmers.tar 24 $ ln -sf sun3_debugging.tar 25 $ ln -sf sun3_shlib_custom.tar 26 $ ln -sf sun3_graphics.tar 27 $ ln -sf sun3_uucp.tar 28 $ ln -sf sun3_games.tar 29 $ ln -sf sun3_versatec.tar 30 $ ln -sf sun3_security.tar 31 $ ln -sf sun3_openwindows_programmers.tar 32 $ ln -sf copyright_sun3_tape1 33 Run the emulator. $ cd ${HOME}/emulators/tme-sun3 $ LTDL_LIBRARY_PATH=${HOME}/emulators/lib ${HOME}/emulators/bin/tmesh SUN3-CARRERA You should have the emulated display in a GTK window while tmesh prompts for your input in your terminal. Note you can ignore multiple keyboard warnings. Load the boot tape and power up the machine. tmesh> command tape0 load sunos411/01 sunos411/02 sunos411/03 sunos411/04 sunos411/05 sunos411/06 sunos411/07 sunos411/08 sunos411/09 sunos411/10 sunos411/11 sunos411/12 sunos411/13 sunos411/14 sunos411/15 sunos411/16 sunos411/17 sunos411/18 sunos411/19 sunos411/20 sunos411/21 sunos411/22 sunos411/23 sunos411/24 sunos411/25 sunos411/26 sunos411/27 sunos411/28 sunos411/29 sunos411/30 sunos411/31 sunos411/32 sunos411/33 tmesh> command mainbus0 power up The framebuffer display shows some start-up messages and waits for your input. You can boot from the tape drive by entering b st() on the prompt. After showing some boot messages, it asks you to install SunOS mini-root. Type disk at the format> prompt and enter disk geometry. Type partition at the format> prompt and change a/b/g partitions. Once you write label and quit the format program, it copies miniroot to /dev/rsd0b. Choose 1 to reboot using the miniroot. Type suninstall to install SunOS. Choose 1 for Quick installation to save time. You are asked to choose to preserve existing disk partitions. Say yes by pressing y. Press the Enter keys to move down to Full_install followed by the x key. Enter y for final confirmation. Installation procedure creates new file systems on /dev/rsd0a and /dev/rsd0b, copies many files from the tape drive to the disk, and creates various device nodes. Once the installation is over, it asks you to reboot the system. Enter y to reboot. The system reboots to the disk. For the first boot, it asks you for a few things such as a host name and time zone. I've named it sun3tme and chose my region for the time zone. I chose n for the network question as TME supports Ethernet via BPF which my host system does not support. I entered u at the confirmation screen. The question goes on to the supervisor password for root. You can enter a password of your choice. You can set up extra user accounts at the user account screen. I didn't set up any. The boot procedure continues to the login prompt. You can log-in to the system with root or an extra account you've created. The system is ready for use. Enjoy SunOS 4.1.1. |
1-4 of 4