BSVC

General

68000 Simulator and Assembler


Where can I get the BSVC distribution?

You can obtained the BSVC distribution from the download page.


What systems does BSVC run on?

The BSVC distribution is know to run under the following operating systems:
  • Linux 2.x.x
  • HP-UX 9.0
  • SunOS 4.1.3C
  • Solaris
  • Ultrix 4.3 and 4.2
  • Windows

What software do I need to compile and run BSVC?

You'll need the following software to compile and run the BSVC distribution:
  • GNU C/C++ compiler version 2.7.2 or later
  • Tcl 7.5 and Tk 4.1 distribution or later

How can I make my program stop "running" when it reaches the end?

The 68000 simulator and assembler support a pseudo instruction BREAK that acts just like a breakpoint. When the simulator executes this instruction while "running" it stops as if it hit a breakpoint. See the following code for an example of using the BREAK instruction.
          ORG     $2000           Start at location 2000 Hex

  START   CLR.W   SUM             Clear variable SUM
          MOVE.W  COUNT,D0        Load COUNT value
  LOOP    ADD.W   D0,SUM          ADD D0 to SUM
          SUB.W   #1,D0           Decrement counter
          BNE     LOOP            Loop if counter not zero
          BREAK                   Tell the simulator to stop if we're running

  SUM     DS.W    1               Reserve one word for SUM
  COUNT   DC.W    25              Initial value for COUNT

Why is it that I get "CPU halted" whenever I try to call a procedure or do something with the stack?

The most common reason for this is that you're accessing the stack without initializing the stack pointer register. Add the following code at the start of your program to fix the problem:
 MOVEA.L #$8000, A7
If you think about it you'll realize that accessing the stack when it's uninitialized can easily result in a double-bus fault which in turn results in the CPU entering the halted state. Once the CPU is in the halted state you must reset the system before any processing can continue.


Which instructions haven't been implemented?

The following instructions haven't been implemented:
    CHK, NBCD, and SBCD


 Copyright © 1996-2005 by Bradford W. Mott

Last Updated on February 20, 2005