~ubuntu-branches/ubuntu/raring/simh/raring

« back to all changes in this revision

Viewing changes to VAX/vax_sysdev.c

  • Committer: Bazaar Package Importer
  • Author(s): Vince Mulhollon
  • Date: 2007-04-13 20:16:15 UTC
  • mfrom: (1.1.7 upstream) (2.1.3 lenny)
  • Revision ID: james.westby@ubuntu.com-20070413201615-jiar46bgkrs0dw2h
Tags: 3.7.0-1
* New upstream released 03-Feb-2007
* i7094 added which emulates the IBM 7090/7094
* Upstream has converted almost entirely to pdf format for docs
* All manpages updated
* All docs are registered with the doc-base system

Show diffs side-by-side

added added

removed removed

Lines of Context:
85
85
#define CMERR_BUS       0x00000080                      /* bus err NI */
86
86
#define CMERR_SYN       0x0000007F                      /* syndrome NI */
87
87
#define CMERR_W1C       (CMERR_RDS | CMERR_FRQ | CMERR_CRD | \
88
 
                     CMERR_DMA | CMERR_BUS)
 
88
                         CMERR_DMA | CMERR_BUS)
89
89
 
90
90
/* CMCTL control/status register */
91
91
 
97
97
#define CMCSR_DCM       0x00000080                      /* diag mode NI */
98
98
#define CMCSR_SYN       0x0000007F                      /* syndrome NI */
99
99
#define CMCSR_MASK      (CMCSR_PMI | CMCSR_CRD | CMCSR_DET | \
100
 
                     CMCSR_FDT | CMCSR_DCM | CMCSR_SYN)
 
100
                         CMCSR_FDT | CMCSR_DCM | CMCSR_SYN)
101
101
 
102
102
/* KA655 boot/diagnostic register */
103
103
 
276
276
extern void txdb_wr (int32 dat);
277
277
extern void ioreset_wr (int32 dat);
278
278
extern uint32 sim_os_msec();
 
279
extern int32 cpu_psl_ipl (int32 newpsl);
279
280
 
280
281
/* ROM data structures
281
282
 
901
902
    uint32      low;                                    /* low addr */
902
903
    uint32      high;                                   /* high addr */
903
904
    t_stat      (*read)(int32 pa);                      /* read routine */
904
 
    void        (*write)(int32 pa, int32 val, int32 lnt);       /* write routine */
 
905
    void        (*write)(int32 pa, int32 val, int32 lnt); /* write routine */
905
906
    };
906
907
 
907
908
struct reglink regtable[] = {
1047
1048
 
1048
1049
switch (rg) {
1049
1050
 
1050
 
    case 0:                                                     /* CACR */
 
1051
    case 0:                                             /* CACR */
1051
1052
        return ka_cacr;
1052
1053
 
1053
 
    case 1:                                                     /* BDR */
 
1054
    case 1:                                             /* BDR */
1054
1055
        return ka_bdr;
1055
1056
        }
1056
1057
 
1500
1501
if (mapen) conpsl = conpsl | CON_MAPON;                 /* mapping on? */
1501
1502
mapen = 0;                                              /* turn off map */
1502
1503
SP = IS;                                                /* set SP from IS */
1503
 
PSL = PSL_IS | PSL_IPL1F;                               /* PSL = 41F0000 */
 
1504
PSL = cpu_psl_ipl (PSL_IS | PSL_IPL1F);                 /* PSL = 41F0000 */
1504
1505
JUMP (ROMBASE);                                         /* PC = 20040000 */
1505
1506
return 0;                                               /* new cc = 0 */
1506
1507
}
1514
1515
t_stat r;
1515
1516
 
1516
1517
PC = ROMBASE;
1517
 
PSL = PSL_IS | PSL_IPL1F;
 
1518
PSL = cpu_psl_ipl (PSL_IS | PSL_IPL1F);
1518
1519
conpc = 0;
1519
1520
conpsl = PSL_IS | PSL_IPL1F | CON_PWRUP;
1520
1521
if (rom == NULL) return SCPE_IERR;
1569
1570
ssc_otp = 0;
1570
1571
return SCPE_OK;
1571
1572
}
1572