# GXemul: ARM evaluation board emulation modes

Back to the index.

NetBSD's port to ARM evaluation boards is called NetBSD/evbarm. Right now, the only such machine emulated in GXemul is the IQ80321. NetBSD/evbarm can be manually installed and run in that mode.

### NetBSD/evbarm:

NetBSD/evbarm is tricky to install, because there is (as far as I know) no INSTALL kernel. One way to install the NetBSD/evbarm distribution onto a disk image is to install the files using another (emulated) machine.

The following instructions will let you install NetBSD/evbarm onto a disk image, from an emulated CATS machine:

1. Download a NetBSD/cats 3.1 ramdisk kernel:

       	wget ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-3.1/cats/binary/kernel/netbsd.aout-INSTALL.gz

2. Create an empty harddisk image, which will be the disk image that you will install NetBSD/evbarm onto:

       	dd if=/dev/zero of=nbsd_iq80321.img bs=1024 count=1 seek=999000

3. Download an IQ80321 kernel with wdc support, and the 2.1 ISO image:

       	ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-2.1/evbarm/binary/kernel/netbsd-wd0-IQ80321.gz
       	ftp://ftp.netbsd.org/pub/NetBSD/iso/2.1/evbarmcd.iso

4. Now let's extract the files from the CD-ROM image onto the IQ80321's disk image. Start the CATS machine using the following command line:

       	gxemul -XEcats -d nbsd_iq80321.img -d evbarmcd.iso netbsd.aout-INSTALL.gz

   Exit from the installer, and execute the following commands as `root`:

   ``

       disklabel -I -i wd0
           (enter suitable commands, e.g. a, 4.2BSD, 1c, 750M, b,
            swap, a, 200M, P, W, y, Q)
       newfs /dev/wd0a; mount /dev/wd0a /mnt2; cd /mnt2
       mount /dev/cd0a /mnt; sh
       for a in /mnt/*/binary/sets/[bcegmt]*.tgz; do echo $a; tar zxfp $a; done
       exit
       cd dev; sh ./MAKEDEV all; cd ../etc
       echo rc_configured=YES >> rc.conf
       echo "/dev/wd0a / ffs rw 1 1" > fstab
       echo "/dev/wd0b none swap sw 0 0" >> fstab
       cd /; umount /mnt; umount /mnt2; sync; halt

You should now be able to boot NetBSD/evbarm using this command:

    	gxemul -x -E iq80321 -d nbsd_iq80321.img netbsd-wd0-IQ80321.gz