What is da0 on your computer ? Is it a USB stick you're booting from? Could that legacy code be leftover on that disk from previous installation?
If you can reinstall it from scratch, which I'm assuming you can, do it again. As this is PC it doesn't hurt to detach the Windows disk, just in case.
Boot the FreeBSD installation media, go to the shell and do this:
1) verify you are working on a free disk (ada1 in your output). If you've detached Windows disk it's even better, there's no other disk there. You can use:
camcontrol devlist
gpart show
2) erase all partitions on that disk. WARNING: pay attention to what you're doing.
You can use
gpart destroy -F adaX
where adaX is your disk. For a good measure do some initial dd-ing on it too:
dd if=/dev/zero of=/dev/adaX bs=512 count=10240
3) type
exit
and return to the installer. Use GPT layout, EFI.
Maybe small refresher wouldn't hurt: FreeBSD (at least on i386/x86_64) supports two layouts to boot from: MBR or GPT. MBR disk can be divided into 4 primary partitions only. As a workaround one of this partitions can be pseudo partition that defines other partitions in the boundary of its size. In DOS/Windows this was a logical partition. FreeBSD used different terminology: these MBR partitions are called slices. Slice can be divided further into partitions ( hence the names ada0s1a, ada0s1b, ..). Note MBR means two things in our context: either the partition layout or the actual code/record on the disk. This too can be confusing sometimes.
GPT solved this problem, you can (practically) define as much partitions as you want without a need to do this magic above. You need GPT layout for UEFI.
BIOS is responsible for finding the disk and booting from it. Your BIOS is UEFI capable with legacy support. So you can boot either legacy (CSM, compatibility support mode) or native UEFI.
As your HW supports GPT and UEFI I strongly advise you to use it.
Disk layout defines what bootloader choices you have. With MBR disk layout you need to use MBR boot code with all its legacy stuff (as SirDice mentioned above - boot0cfg).
With GPT you have two options -- do the legacy boot with MBR (note: here mbr doesn't mean disk layout but rather the boot itself) or do the UEFI boot. Actually you can have both prepared on a GPT disk and choose either option depending on BIOS. GPT uses pmbr in its bootcode. P stands for protective -- it protects itself from the legacy tools that don't understand GPT layout by defining fake MBR partition. In UEFI boot code from this section is not used.
One note, I can't confirm 100% though, I think even UEFI requires to have magic 0xaa55 in the end of MBR marking it as bootable disk.
For example my disk da0:
Code:
# gpart show
=> 40 104857520 da0 GPT (50G) ; GPT disk
40 532480 1 efi (260M) ; EFI partition , UEFI boot looks for this
532520 1024 2 freebsd-boot (512K) ; legacy code ; pmbr loads code from here and continues
533544 984 - free - (492K)
534528 4194304 3 freebsd-swap (2.0G) ; swap
4728832 100126720 4 freebsd-zfs (48G) ; zfs pool
104855552 2008 - free - (1.0M)
Bootcode that is used on partition 2 (freebsd-boot) depends on what / is on. This is why you need to specify partition code in legacy boot by, in this case,
gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 2 da0
.
EDIT: I fixed few typos + I had time to look at UEFI standard: yes, signature 0xaa55 is mandatory in pmbr.