Software Tools

WISM68 Program Simulator for Motorola® MC68000 Microprocessor

2/14/03: We are starting to use the WISM68 simulator/processor emulator for the Motorola 68000 microprocessor.  This turns out to be a tools, developed by Mr. Matt Hildreds, as part of a senior project he did at De Montfort University in the U.K.  He continued to do some work on it, and it's quite a nice package to use for initial debugging and assembler program verification prior to downloading to a hardware test board.  According to Matt, he's interested in having us use this package as a teaching resource, which I am doing for the CSCE 313 Embedded Systems Programming class in the Spring 03 semester.

You can download this package yourself, free of charge, by going to the following link.  There's no documentation, but I will be posting my set of notes on my CSCE 313 course page, as we incorporate it into our homework and labs.  I agreed to do this for Matt in exchange for allowing us to use his tools in my class.  Get it here: http://www.hildreds.freeserve.co.uk/Project/Index.html

I wrote a lot of assembler code for this processor 20 years ago at NCR while we were building the TMX transaction processing machines for the Banking industry (I also wrote one of the many debuggers as well for this machine) and the NCR Tower® platform for back-office departmental computing back in the early 1980's (long before Windows, NT, etc.).

I find the Windows interface on this tool to be very easy to use.  The real trick in using it is to remember that you need to fully initialize the environment before starting your simulation; the loader doesn't do this for you, and there is no Monitor program aside form the simulator itself (as you are not running on a real 68000).  The big things you have to do are (1) initialize your PC register to point to your loaded program in memory, and (2) initialize your USP and SSP stack pointers, depending on how your code uses them.  Also, you need to decide on how you want to handle interrupts and Trap instructions, as the simulator simply throws you to the upper end of memory.

Here's a set of introductory notes on the use of WISM68 in writing and debugging 68K code.

Thanks to Matt for allowing us to use his tools for our CSCE 313 class laboratory.