OpenCores
URL https://opencores.org/ocsvn/eco32/eco32/trunk

Subversion Repositories eco32

[/] [eco32/] [trunk/] [monitor/] [monitor/] [common/] [start.h] - Rev 96

Go to most recent revision | Compare with Previous | Blame | View Log

/*
 * start.h -- ECO32 ROM monitor startup and support routines
 */
 
 
#ifndef _START_H_
#define _START_H_
 
 
typedef struct {
  Word reg[32];			/* general purpose registers */
  Word psw;			/* PSW */
  Word tlbIndex;		/* TLB index register */
  Word tlbHi;			/* TLB EntryHi register */
  Word tlbLo;			/* TLB EntryLo register */
  Word badAddr;			/* bad address register */
} UserContext;
 
typedef struct {
  Word r31;			/* return address */
  Word r29;			/* stack pointer */
  Word r16;			/* local variable */
  Word r17;			/* local variable */
  Word r18;			/* local variable */
  Word r19;			/* local variable */
  Word r20;			/* local variable */
  Word r21;			/* local variable */
  Word r22;			/* local variable */
  Word r23;			/* local variable */
} MonitorState;
 
 
int cinchk(void);
int cin(void);
int coutchk(void);
void cout(char c);
 
int sinchk(void);
int sin(void);
int soutchk(void);
void sout(char c);
 
int dskcap(int dskno);
int dskio(int dskno, char cmd, int sct, Word addr, int nscts);
 
void setISR(Word ptr);
void setUMSR(Word ptr);
extern Word isrPtr;
extern Word umsrPtr;
 
Word getTLB_HI(int index);
Word getTLB_LO(int index);
void setTLB(int index, Word entryHi, Word entryLo);
 
Bool saveState(MonitorState *msp);
 
extern MonitorState *monitorReturn;
extern UserContext userContext;
 
void resume(void);
 
 
#endif /* _START_H_ */
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.