1 |
22 |
wfjm |
# $Id: defs.tcl 553 2014-03-17 06:40:08Z mueller $
|
2 |
|
|
#
|
3 |
|
|
# Copyright 2014- by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
4 |
|
|
#
|
5 |
|
|
# This program is free software; you may redistribute and/or modify it under
|
6 |
|
|
# the terms of the GNU General Public License as published by the Free
|
7 |
|
|
# Software Foundation, either version 2, or at your option any later version.
|
8 |
|
|
#
|
9 |
|
|
# This program is distributed in the hope that it will be useful, but
|
10 |
|
|
# WITHOUT ANY WARRANTY, without even the implied warranty of MERCHANTABILITY
|
11 |
|
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
12 |
|
|
# for complete details.
|
13 |
|
|
#
|
14 |
|
|
# Revision History:
|
15 |
|
|
# Date Rev Version Comment
|
16 |
|
|
# 2014-03-07 553 1.0 Initial version (extracted from util.tcl)
|
17 |
|
|
#
|
18 |
|
|
|
19 |
|
|
package provide rw11 1.0
|
20 |
|
|
|
21 |
|
|
package require rlink
|
22 |
|
|
package require rwxxtpp
|
23 |
|
|
|
24 |
|
|
namespace eval rw11 {
|
25 |
|
|
#
|
26 |
|
|
# setup cp interface register descriptions for w11a -----------------------
|
27 |
|
|
#
|
28 |
|
|
regdsc CP_CNTL {func 3 0}
|
29 |
|
|
regdsc CP_STAT {rust 7 4} {halt 3} {go 2} {merr 1} {err 0}
|
30 |
|
|
regdsc CP_IBRB {base 12 7} {bw 1 2}
|
31 |
|
|
regdsc CP_AH {ubm 7} {p22 6} {addr 5 6}
|
32 |
|
|
#
|
33 |
|
|
# setup w11a register descriptions -----------------------------------------
|
34 |
|
|
#
|
35 |
|
|
# PSW - processor status word --------------------------------------
|
36 |
|
|
set A_PSW 0177776
|
37 |
|
|
regdsc PSW {cmode 15 2} {pmode 13 2} {rset 11} {pri 7 3} {tflag 3} {cc 3 4}
|
38 |
|
|
#
|
39 |
|
|
# SSR0 - MMU Segment Status Register #0 ----------------------------
|
40 |
|
|
set A_SSR0 0177572
|
41 |
|
|
regdsc SSR0 {abo_nonres 15} {abo_len 14} {abo_rd 13} \
|
42 |
|
|
{trap_mmu 12} {ena_trap 9} {inst_compl 7} \
|
43 |
|
|
{mode 6 2} {dspace 4} {num 3 3} {ena 0}
|
44 |
|
|
#
|
45 |
|
|
# SSR1 - MMU Segment Status Register #1 ----------------------------
|
46 |
|
|
set A_SSR1 0177574
|
47 |
|
|
regdsc SSR1 {delta1 15 5} {rnum1 10 3} {delta0 7 5} {rnum0 2 3}
|
48 |
|
|
#
|
49 |
|
|
# SSR2 - MMU Segment Status Register #2 ----------------------------
|
50 |
|
|
set A_SSR2 0177576
|
51 |
|
|
#
|
52 |
|
|
# SSR3 - MMU Segment Status Register #3 ----------------------------
|
53 |
|
|
set A_SSR3 0172516
|
54 |
|
|
regdsc SSR3 {ena_ubm 5} {ena_22bit 4} {d_km 2} {d_sm 1} {d_um 0}
|
55 |
|
|
#
|
56 |
|
|
# SAR/SDR - MMU Address/Segment Descriptor Register ----------------
|
57 |
|
|
set A_SDR_KM 0172300
|
58 |
|
|
set A_SAR_KM 0172340
|
59 |
|
|
set A_SDR_SM 0172200
|
60 |
|
|
set A_SAR_SM 0172240
|
61 |
|
|
set A_SDR_UM 0177600
|
62 |
|
|
set A_SAR_UM 0177640
|
63 |
|
|
regdsc SDR {slf 14 7} {aia 7} {aiw 6} {ed 3} {acf 2 3}
|
64 |
|
|
#
|
65 |
|
|
# PIRQ - Program Interrupt Requests -------------------------------
|
66 |
|
|
set A_PIRQ 0177772
|
67 |
|
|
regdsc PIRQ {pir 15 7} {piah 7 3} {pial 3 3}
|
68 |
|
|
#
|
69 |
|
|
# CPUERR - CPU Error Register -------------------------------------
|
70 |
|
|
set A_CPUERR 0177766
|
71 |
|
|
regdsc CPUERR {illhlt 7} {adderr 6} {nxm 5} {iobto 4} {ysv 3} {rsv 2}
|
72 |
|
|
#
|
73 |
|
|
# other w11a definitions ---------------------------------------------------
|
74 |
|
|
# Interrupt vectors -----------------------------------------------
|
75 |
|
|
#
|
76 |
|
|
set V_004 0000004
|
77 |
|
|
set V_010 0000010
|
78 |
|
|
set V_BPT 0000014
|
79 |
|
|
set V_IOT 0000020
|
80 |
|
|
set V_PWR 0000024
|
81 |
|
|
set V_EMT 0000030
|
82 |
|
|
set V_TRAP 0000034
|
83 |
|
|
set V_PIRQ 0000240
|
84 |
|
|
set V_FPU 0000244
|
85 |
|
|
set V_MMU 0000250
|
86 |
|
|
|
87 |
|
|
}
|