Programming Files

MIRE has two programmable devices onboard that might occasionally require updates.

The Field-Programmable Gate Array (FPGA, on the underside of the blue daughter card) can be updated using a USB Blaster device (currently less than $3 on eBay) and free software from Altera. Archives posted here contain a .pof extension file for that purpose. Plug the USB Blaster into the 10-pin header hanging off the edge of the MIRE PCB. Power up the MIRE. In the software select Active Serial Programming mode, add the file, select "Program" and "Verify" checkboxes, hit "start" and you're done.

I wrote a pretty extensive explanation of this procedure for the MISE and M3SE devices. It works the same for MIRE:

Programming the M3SE FPGA

The PIC processor is updated from a .hex file. Remove your SD card from the socket during programming.

If you have a PicKit 3 programmer, use the file with "unified" in the filename and the free MPLAB X IPE software from Microchip. The device type is PIC18F26K22. Connect the PicKit programming cable to HDR8, making sure to align the "pin 1" wire with the triangle symbol at both ends. The MIRE must be powered up during programming.

If you do not have a PicKit 3, you can use the software bootloader program included with MIRE on the MIREUTIL floppy image, and the .hex file without "unified" in its filename.

You cannot use the SD floppy drives while updating the PIC processor. If you are able to store the entire, large hex file on a MISE hard drive or an external double-density floppy drive, rename it and do so, and also copy the utility BOOTLOAD/CMD from the MIREUTIL/DMK image someplace besides the SD card. Just run the BOOTLOAD program with the .hex filename. Reboot when finished.

If you only have single-density external drives, you can split the .hex file into multiple pieces that will fit on your floppies. BOOTLOAD/CMD will prompt for each file, but they must be entered in order, and they must be split on whole-line boundaries. There are many free utilities available that can do this.

A word of explanation about the two versions of the .hex file: MIRE's PIC firmware consists of two separate "projects" that are programmed into different parts of the PIC program flash memory. One project is the normal operating code for the MIRE's emulated floppies. The other project is the bootloader which processes .hex files sent from the TRS-80 by the BOOTLOAD/CMD program, and updates the normal operating firmware. Clearly when using the BOOTLOAD/CMD utility you can't modify the PIC's bootloader code which is performing the update. When using a PicKit, however, you might as well just update everything, thus the "unified" .hex file that contains both projects.

MIRE 1.1 update: DIP switch 2, when placed in the "ON" position, causes the PIC processor to always enter bootloader mode upon powerup or reset. This should never be needed, but it provides a way to reprogram the PIC processor without a PicKit programmer should the processor ever be programmed with incorrect firmware.

Date: July 16, 2017


VER command in DSK returns: July 10, 2017 for both FPGA and PIC.

Date: June 29, 2021


VER command in DSK returns: June 28, 2021 for FPGA and April 29, 2018 for PIC.

Fixed a problem where noise on the reset signal from the TRS-80 would sometime cause boot from floppy when SD card is inserted.

Back to the main page