public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
From: Home Email <home_email2000@yahoo.com>
To: crossgcc@sources.redhat.com
Subject: What is a vector file?
Date: Sun, 22 Oct 2000 09:31:00 -0000	[thread overview]
Message-ID: <20001022162943.92687.qmail@web9407.mail.yahoo.com> (raw)

In studying a boot prom for an Hitachi SH032 along
with the source code, I am beginning to get a good
understanding of how the GNU AS, LD works. However,
when I read in the boot prom I have into my programmer
I find locations 0x0000 - 0x01C7 filled with various
hex numbers that I don't know what they are.  I do
know my code begins at 0x01C8.   While studying the
source code I believe that what I have at the 
beginning of the boot prom is something generated by 
this one source file called Vectors.S.  But what is
this file?  It seems as though it is setting up the
Hitachi microcontroller before it begins executing
code.  Here is some sections of this vector.S file...

/*----------------------------------------------------
FILE NAME:
  Vectors.S
FUNCTION:
  This file contains the vectory overlay for the
SH7000
  microcontroller.
ROUTINES:
NOTES:
  This file references 2 other interrupt handlers
  1. _start - entry point of program
  2. _interruptDispatch - for soft vectoring all the
other interrupts
----------------------------------------------------*/

/* ...Global Variables:
*/

  .extern ShTest
  .extern _interruptDispatchRsv
  .extern _interruptDispatch4
  .extern _interruptDispatch6

...this continues down for many many lines of this
stuff
....and then I see this....

  .extern _stack

/* ...Local Variables:
*/

/* ...Routines:
*/
  .section VECTORS
  .globl _vectors

_vectors:
 .int  ShTest       ! 000-003 0  Power up Reset Vector
 .int  _stack       ! 004-007 1  Power Up Stack
 .int  ShTest       ! 008-00B 2  Manual Reset Vector
 .int  _stack       ! 00C-00F 3  Manual Reset Stack
 .int  _interruptDispatch4      ! 010-013 4  Invalid
Instruction
 .int  _interruptDispatchRsv     ! 014-017 5  Reserved
 .int  _interruptDispatch6    ! 018-01B 6  Invalid
Slot Instruction
 .int  _interruptDispatchRsv     ! 01C-01F 7  Reserved
 .int  _interruptDispatchRsv     ! 020-023 8  Reserved
 .int  _interruptDispatch9  ! 024-027 9  CPU bus error

....this continues on down and finally ends with
this..

 .int  _interruptDispatchRsv     ! 1BC-1BF 111 A/D 
Reserved

/* ...Watch Dog Timer
*/
 .int  _interruptDispatch112       ! 1C0-1C3 112 WDT

/* ...Refresh Control
*/
 .int  _interruptDispatch113         ! 1C4-1C7 113 REF

 .end

I am but just a learner here so bear with me while I
ask some dumb questions.....

It looks as though as soon as the microcontroller
begins it is initalizing itself.  Is this what the
vector file is for?
Do all embedded microcontrollers use a file like this
at the beginning of their their boot prom and how much
intialization is necessary?
Is there any documentation about vector files and how
to use them (or other methods)?

Thanks for any help on this.

R.Floyd










__________________________________________________
Do You Yahoo!?
Yahoo! Messenger - Talk while you surf!  It's FREE.
http://im.yahoo.com/

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com

             reply	other threads:[~2000-10-22  9:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-10-22  9:31 Home Email [this message]
2000-10-22 14:21 ` Keith Wright
2000-10-23  9:08 ` Michael Schwingen
2000-10-22 15:28 Home Email

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20001022162943.92687.qmail@web9407.mail.yahoo.com \
    --to=home_email2000@yahoo.com \
    --cc=crossgcc@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).