etisserant@0: ;;/* M68HC11 Interrupt vectors table etisserant@0: ;; Copyright (C) 1999 Free Software Foundation, Inc. etisserant@0: ;; Written by Stephane Carrez (stcarrez@worldnet.fr) etisserant@0: ;; etisserant@0: ;;This file is free software; you can redistribute it and/or modify it etisserant@0: ;;under the terms of the GNU General Public License as published by the etisserant@0: ;;Free Software Foundation; either version 2, or (at your option) any etisserant@0: ;;later version. etisserant@0: ;; etisserant@0: ;;In addition to the permissions in the GNU General Public License, the etisserant@0: ;;Free Software Foundation gives you unlimited permission to link the etisserant@0: ;;compiled version of this file with other programs, and to distribute etisserant@0: ;;those programs without any restriction coming from the use of this etisserant@0: ;;file. (The General Public License restrictions do apply in other etisserant@0: ;;respects; for example, they cover modification of the file, and etisserant@0: ;;distribution when not linked into another program.) etisserant@0: ;; etisserant@0: ;;This file is distributed in the hope that it will be useful, but etisserant@0: ;;WITHOUT ANY WARRANTY; without even the implied warranty of etisserant@0: ;;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU etisserant@0: ;;General Public License for more details. etisserant@0: ;; etisserant@0: ;;You should have received a copy of the GNU General Public License etisserant@0: ;;along with this program; see the file COPYING. If not, write to etisserant@0: ;;the Free Software Foundation, 59 Temple Place - Suite 330, etisserant@0: ;;Boston, MA 02111-1307, USA. etisserant@0: ;; ---------------------------------------------- etisserant@0: ;; Modified by Francis Dupin for MC9S12DP256. April 2003 etisserant@0: ;; francis.dupin@inrets.fr etisserant@0: ;;*/ etisserant@0: etisserant@0: .sect .text etisserant@0: .globl _start etisserant@0: .globl can4HdlTra etisserant@0: .globl can4HdlRcv etisserant@0: .globl can4HdlErr etisserant@0: .globl can4HdlWup etisserant@0: .globl can3HdlTra etisserant@0: .globl can3HdlRcv etisserant@0: .globl can3HdlErr etisserant@0: .globl can3HdlWup etisserant@0: .globl can2HdlTra etisserant@0: .globl can2HdlRcv etisserant@0: .globl can2HdlErr etisserant@0: .globl can2HdlWup etisserant@0: .globl can1HdlTra etisserant@0: .globl can1HdlRcv etisserant@0: .globl can1HdlErr etisserant@0: .globl can1HdlWup etisserant@0: .globl can0HdlTra etisserant@0: .globl can0HdlRcv etisserant@0: .globl can0HdlErr etisserant@0: .globl can0HdlWup etisserant@0: .globl timerOvflHdl etisserant@0: .globl timer3IC etisserant@0: .globl timer2IC etisserant@0: .globl timer1IC etisserant@0: .globl timer0IC etisserant@0: etisserant@0: ;; Default interrupt handler. etisserant@0: .sect .text etisserant@0: def: etisserant@0: rti etisserant@0: etisserant@0: ;; etisserant@0: ;; Interrupt vectors are in a specific section that is etisserant@0: ;; mapped at 0xff00. For the example program, the reset handler etisserant@0: ;; points to the generic crt0 entry point. etisserant@0: ;; etisserant@0: .sect .vectors etisserant@0: .globl vectors etisserant@0: vectors: etisserant@0: etisserant@0: .word def ; ff00 etisserant@0: .word def ; ff02 etisserant@0: .word def ; ff04 etisserant@0: .word def ; ff06 etisserant@0: .word def ; ff08 etisserant@0: .word def ; ff0a etisserant@0: .word def ; ff0c etisserant@0: .word def ; ff0e etisserant@0: .word def ; ff10 etisserant@0: .word def ; ff12 etisserant@0: .word def ; ff14 etisserant@0: .word def ; ff16 etisserant@0: .word def ; ff18 etisserant@0: .word def ; ff1a etisserant@0: .word def ; ff1c etisserant@0: .word def ; ff1e etisserant@0: .word def ; ff20 etisserant@0: .word def ; ff22 etisserant@0: .word def ; ff24 etisserant@0: .word def ; ff26 etisserant@0: .word def ; ff28 etisserant@0: .word def ; ff2a etisserant@0: .word def ; ff2c etisserant@0: .word def ; ff2e etisserant@0: .word def ; ff30 etisserant@0: .word def ; ff32 etisserant@0: .word def ; ff34 etisserant@0: .word def ; ff36 etisserant@0: .word def ; ff38 etisserant@0: .word def ; ff3a etisserant@0: .word def ; ff3c etisserant@0: .word def ; ff3e etisserant@0: .word def ; ff40 etisserant@0: .word def ; ff42 etisserant@0: .word def ; ff44 etisserant@0: .word def ; ff46 etisserant@0: .word def ; ff48 etisserant@0: .word def ; ff4a etisserant@0: .word def ; ff4c etisserant@0: .word def ; ff4e etisserant@0: .word def ; ff50 etisserant@0: .word def ; ff52 etisserant@0: .word def ; ff54 etisserant@0: .word def ; ff56 etisserant@0: .word def ; ff58 etisserant@0: .word def ; ff5a etisserant@0: .word def ; ff5c etisserant@0: .word def ; ff5e etisserant@0: .word def ; ff60 etisserant@0: .word def ; ff62 etisserant@0: .word def ; ff64 etisserant@0: .word def ; ff66 etisserant@0: .word def ; ff68 etisserant@0: .word def ; ff6a etisserant@0: .word def ; ff6c etisserant@0: .word def ; ff6e etisserant@0: .word def ; ff70 etisserant@0: .word def ; ff72 etisserant@0: .word def ; ff74 etisserant@0: .word def ; ff76 etisserant@0: .word def ; ff78 etisserant@0: .word def ; ff7a etisserant@0: .word def ; ff7c etisserant@0: .word def ; ff7e etisserant@0: .word def ; ff80 etisserant@0: .word def ; ff82 etisserant@0: .word def ; ff84 etisserant@0: .word def ; ff86 etisserant@0: .word def ; ff88 etisserant@0: .word def ; ff8a etisserant@0: .word def ; ff8c etisserant@0: .word def ; ff8e etisserant@0: etisserant@0: ;; MSCAN etisserant@0: .word can4HdlTra ; ff90 (MSCAN4 Transmit) etisserant@0: .word can4HdlRcv ; ff92 (MSCAN4 Receive) etisserant@0: .word can4HdlErr ; ff94 (MSCAN4 Errors) etisserant@0: .word can4HdlWup ; ff96 (MSCAN4 Wake up) etisserant@0: .word can3HdlTra ; ff98 (MSCAN3 Transmit) etisserant@0: .word can3HdlRcv ; ff9a (MSCAN3 Receive) etisserant@0: .word can3HdlErr ; ff9c (MSCAN3 Errors) etisserant@0: .word can3HdlWup ; ff9e (MSCAN3 Wake up) etisserant@0: .word can2HdlTra ; ffa0 (MSCAN2 Transmit) etisserant@0: .word can2HdlRcv ; ffa2 (MSCAN2 Receive) etisserant@0: .word can2HdlErr ; ffa4 (MSCAN2 Errors) etisserant@0: .word can2HdlWup ; ffa6 (MSCAN2 Wake up) etisserant@0: .word can1HdlTra ; ffa8 (MSCAN1 Transmit) etisserant@0: .word can1HdlRcv ; ffaa (MSCAN1 Receive) etisserant@0: .word can1HdlErr ; ffac (MSCAN1 Errors) etisserant@0: .word can1HdlWup ; ffae (MSCAN1 Wake up) etisserant@0: .word can0HdlTra ; ffb0 (MSCAN0 Transmit) etisserant@0: .word can0HdlRcv ; ffb2 (MSCAN0 Receive) etisserant@0: .word can0HdlErr ; ffb4 (MSCAN0 Errors) etisserant@0: .word can0HdlWup ; ffb6 (MSCAN0 Wake up) etisserant@0: etisserant@0: .word def ; ffb8 etisserant@0: .word def ; ffba etisserant@0: .word def ; ffbc etisserant@0: .word def ; ffbe etisserant@0: etisserant@0: .word def ; ffc0 etisserant@0: .word def ; ffc2 etisserant@0: .word def ; ffc4 etisserant@0: .word def ; ffc6 etisserant@0: .word def ; ffc8 etisserant@0: .word def ; ffca (Modulus Down Counter underflow) etisserant@0: .word def ; ffcc etisserant@0: .word def ; ffce etisserant@0: .word def ; ffd0 etisserant@0: .word def ; ffd2 etisserant@0: .word def ; ffd4 etisserant@0: etisserant@0: ;; SCI etisserant@0: .word def ; ffd6 etisserant@0: etisserant@0: ;; SPI etisserant@0: .word def ; ffd8 etisserant@0: .word def ; ffda (PAII) etisserant@0: .word def ; ffdc (PAOVI) etisserant@0: .word def ;ffde (TOI) etisserant@0: etisserant@0: ;; Timer Output Compare etisserant@0: .word def ; ffe0 Timer Chanel 7 etisserant@0: .word def ; ffe2 Timer Chanel 6 etisserant@0: .word def ; ffe4 Timer Chanel 5 etisserant@0: .word timer4Hdl ; ffe6 Timer Chanel 4 used by Canopen etisserant@0: .word def ; ffe8 Timer Chanel 3 etisserant@0: .word def ; ffea Timer Chanel 2 etisserant@0: .word def ; ffec Timer Chanel 1 etisserant@0: .word def ; ffee Timer Chanel 0 etisserant@0: etisserant@0: ;; Misc etisserant@0: .word def ; fff0 (RTII) etisserant@0: .word def ; fff2 (IRQ) etisserant@0: .word def ; fff4 (XIRQ) etisserant@0: .word def ; fff6 (SWI) etisserant@0: .word def ; fff8 (ILL) etisserant@0: .word def ; fffa (COP Failure) etisserant@0: .word def ; fffc (COP Clock monitor) etisserant@0: .word _start ; fffe (reset) etisserant@0: