summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1997-08-27 20:31:34 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1997-08-27 20:31:34 +0000
commit49c2f589482bbbf4e214051da39d48379c80a270 (patch)
tree2692ea0d37a5cc199b668610231d361da09bd55f /c/src/lib/libbsp/m68k
parentAdded rule so TARGET_VARIANTS are dependent on the environment stuff. (diff)
downloadrtems-49c2f589482bbbf4e214051da39d48379c80a270.tar.bz2
Modified to have correct address for vector table on multiple models.
Diffstat (limited to 'c/src/lib/libbsp/m68k')
-rw-r--r--c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c5
-rw-r--r--c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c b/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c
index 29c524838f..5ece315688 100644
--- a/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c
+++ b/c/src/lib/libbsp/m68k/mvme162/startup/bspclean.c
@@ -32,7 +32,12 @@ void bsp_return_to_monitor_trap()
page_table_teardown();
lcsr->intr_ena = 0; /* disable interrupts */
+#if defined(mvme162lx)
+ m68k_set_vbr(0x00000000); /* restore 162Bug vectors */
+#else
m68k_set_vbr(0xFFE00000); /* restore 162Bug vectors */
+#endif
+
asm volatile( "trap #15" ); /* trap to 162Bug */
asm volatile( ".short 0x63" ); /* return to 162Bug (.RETURN) */
/* restart program */
diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c b/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c
index 1d4b976eb4..278bf7acc1 100644
--- a/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c
+++ b/c/src/lib/libbsp/m68k/mvme162/startup/bspstart.c
@@ -164,9 +164,14 @@ int main(
/*
* 162Bug Vectors are at 0xFFE00000
+ * 162Bug Vectors on LX are at 0x00000000
*/
+#if defined(mvme162lx)
+ monitors_vector_table = (m68k_isr_entry *)0x00000000;
+#else
monitors_vector_table = (m68k_isr_entry *)0xFFE00000;
+#endif
m68k_set_vbr( monitors_vector_table );