Skip to content

Commit

Permalink
VAX: Add UW device to 8600 and 8200.
Browse files Browse the repository at this point in the history
The VAXstation 100 "unibus window" interface board should work with
any Unibus VAX.
  • Loading branch information
larsbrinkhoff authored and pkoning2 committed Jun 8, 2024
1 parent c55b964 commit c6b9402
Show file tree
Hide file tree
Showing 10 changed files with 24 additions and 2 deletions.
2 changes: 2 additions & 0 deletions VAX/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -566,6 +566,7 @@ add_simulator(vax8200
vax_sys.c
vax_syscm.c
vax_watch.c
vax_uw.c
vax820_stddev.c
vax820_bi.c
vax820_mem.c
Expand Down Expand Up @@ -614,6 +615,7 @@ add_simulator(vax8600
vax_mmu.c
vax_sys.c
vax_syscm.c
vax_uw.c
vax860_stddev.c
vax860_sbia.c
vax860_abus.c
Expand Down
3 changes: 3 additions & 0 deletions VAX/vax820_defs.h
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,7 @@ typedef struct {
#define INT_V_DUPTX 12
#define INT_V_RK 13
#define INT_V_CH 14
#define INT_V_UW 15

#define INT_V_LPT 0 /* BR4 */
#define INT_V_PTR 1
Expand Down Expand Up @@ -365,6 +366,7 @@ typedef struct {
#define INT_TDRX (1u << INT_V_TDRX)
#define INT_TDTX (1u << INT_V_TDTX)
#define INT_CH (1u << INT_V_CH)
#define INT_UW (1u << INT_V_UW)

#define IPL_DTA (0x16 - IPL_HMIN)
#define IPL_CR (0x16 - IPL_HMIN)
Expand All @@ -390,6 +392,7 @@ typedef struct {
#define IPL_RK (0x15 - IPL_HMIN)
#define IPL_TDRX (0x14 - IPL_HMIN)
#define IPL_TDTX (0x14 - IPL_HMIN)
#define IPL_UW (0x15 - IPL_HMIN)

/* Device vectors */

Expand Down
2 changes: 2 additions & 0 deletions VAX/vax820_syslist.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ extern DEVICE xu_dev, xub_dev;
extern DEVICE dmc_dev;
extern DEVICE dup_dev;
extern DEVICE ch_dev;
extern DEVICE uw_dev;

extern UNIT cpu_unit;
extern void WriteB (uint32 pa, int32 val);
Expand Down Expand Up @@ -103,6 +104,7 @@ DEVICE *sim_devices[] = {
&dmc_dev,
&dup_dev,
&ch_dev,
&uw_dev,
NULL
};

Expand Down
3 changes: 3 additions & 0 deletions VAX/vax860_defs.h
Original file line number Diff line number Diff line change
Expand Up @@ -368,6 +368,7 @@ typedef struct {
#define INT_V_DUPTX 12
#define INT_V_RK 13
#define INT_V_CH 14
#define INT_V_UW 15

#define INT_V_LPT 0 /* BR4 */
#define INT_V_PTR 1
Expand Down Expand Up @@ -402,6 +403,7 @@ typedef struct {
#define INT_TDRX (1u << INT_V_TDRX)
#define INT_TDTX (1u << INT_V_TDTX)
#define INT_CH (1u << INT_V_CH)
#define INT_UW (1u << INT_V_UW)

#define IPL_DTA (0x16 - IPL_HMIN)
#define IPL_CR (0x16 - IPL_HMIN)
Expand All @@ -427,6 +429,7 @@ typedef struct {
#define IPL_RK (0x15 - IPL_HMIN)
#define IPL_TDRX (0x14 - IPL_HMIN)
#define IPL_TDTX (0x14 - IPL_HMIN)
#define IPL_UW (0x15 - IPL_HMIN)

/* Device vectors */

Expand Down
2 changes: 2 additions & 0 deletions VAX/vax860_syslist.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ extern DEVICE xu_dev, xub_dev;
extern DEVICE dmc_dev;
extern DEVICE dup_dev;
extern DEVICE ch_dev;
extern DEVICE uw_dev;

DEVICE *sim_devices[] = {
&cpu_dev,
Expand Down Expand Up @@ -102,6 +103,7 @@ DEVICE *sim_devices[] = {
&dmc_dev,
&dup_dev,
&ch_dev,
&uw_dev,
NULL
};

Expand Down
4 changes: 4 additions & 0 deletions Visual Studio Projects/VAX8200.vcproj
Original file line number Diff line number Diff line change
Expand Up @@ -395,6 +395,10 @@
RelativePath="..\VAX\vax_syscm.c"
>
</File>
<File
RelativePath="..\VAX\vax_uw.c"
>
</File>
<File
RelativePath="..\VAX\vax_watch.c"
>
Expand Down
1 change: 1 addition & 0 deletions Visual Studio Projects/VAX8200.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -320,6 +320,7 @@
<ClCompile Include="..\VAX\vax_octa.c" />
<ClCompile Include="..\VAX\vax_sys.c" />
<ClCompile Include="..\VAX\vax_syscm.c" />
<ClCompile Include="..\VAX\vax_uw.c" />
<ClCompile Include="..\VAX\vax_watch.c" />
</ItemGroup>
<ItemGroup>
Expand Down
4 changes: 4 additions & 0 deletions Visual Studio Projects/VAX8600.vcproj
Original file line number Diff line number Diff line change
Expand Up @@ -407,6 +407,10 @@
RelativePath="..\VAX\vax_syscm.c"
>
</File>
<File
RelativePath="..\VAX\vax_uw.c"
>
</File>
<Filter
Name="slirp"
>
Expand Down
1 change: 1 addition & 0 deletions Visual Studio Projects/VAX8600.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -323,6 +323,7 @@
<ClCompile Include="..\VAX\vax_octa.c" />
<ClCompile Include="..\VAX\vax_sys.c" />
<ClCompile Include="..\VAX\vax_syscm.c" />
<ClCompile Include="..\VAX\vax_uw.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\PDP11\pdp11_ddcmp.h" />
Expand Down
4 changes: 2 additions & 2 deletions makefile
Original file line number Diff line number Diff line change
Expand Up @@ -1671,7 +1671,7 @@ VAX8200 = ${VAXD}/vax_cpu.c ${VAXD}/vax_cpu1.c ${VAXD}/vax_fpa.c \
${VAXD}/vax_mmu.c ${VAXD}/vax_sys.c ${VAXD}/vax_syscm.c \
${VAXD}/vax_watch.c ${VAXD}/vax820_stddev.c ${VAXD}/vax820_bi.c \
${VAXD}/vax820_mem.c ${VAXD}/vax820_uba.c ${VAXD}/vax820_ka.c \
${VAXD}/vax820_syslist.c \
${VAXD}/vax_uw.c ${VAXD}/vax820_syslist.c \
${PDP11D}/pdp11_rl.c ${PDP11D}/pdp11_rq.c ${PDP11D}/pdp11_ts.c \
${PDP11D}/pdp11_dz.c ${PDP11D}/pdp11_lp.c ${PDP11D}/pdp11_tq.c \
${PDP11D}/pdp11_xu.c ${PDP11D}/pdp11_ry.c ${PDP11D}/pdp11_cr.c \
Expand All @@ -1686,7 +1686,7 @@ VAX8600 = ${VAXD}/vax_cpu.c ${VAXD}/vax_cpu1.c ${VAXD}/vax_fpa.c \
${VAXD}/vax_mmu.c ${VAXD}/vax_sys.c ${VAXD}/vax_syscm.c \
${VAXD}/vax860_stddev.c ${VAXD}/vax860_sbia.c \
${VAXD}/vax860_abus.c ${VAXD}/vax780_uba.c ${VAXD}/vax7x0_mba.c \
${VAXD}/vax860_syslist.c \
${VAXD}/vax_uw.c ${VAXD}/vax860_syslist.c \
${PDP11D}/pdp11_rl.c ${PDP11D}/pdp11_rq.c ${PDP11D}/pdp11_ts.c \
${PDP11D}/pdp11_dz.c ${PDP11D}/pdp11_lp.c ${PDP11D}/pdp11_tq.c \
${PDP11D}/pdp11_xu.c ${PDP11D}/pdp11_ry.c ${PDP11D}/pdp11_cr.c \
Expand Down

0 comments on commit c6b9402

Please sign in to comment.