diff --git a/Visual Studio Projects/PDP10-KA.vcproj b/Visual Studio Projects/PDP10-KA.vcproj
new file mode 100644
index 00000000..471634a2
--- /dev/null
+++ b/Visual Studio Projects/PDP10-KA.vcproj
@@ -0,0 +1,506 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Visual Studio Projects/PDP10-KI.vcproj b/Visual Studio Projects/PDP10-KI.vcproj
new file mode 100644
index 00000000..0e287b6f
--- /dev/null
+++ b/Visual Studio Projects/PDP10-KI.vcproj
@@ -0,0 +1,442 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Visual Studio Projects/PDP6.vcproj b/Visual Studio Projects/PDP6.vcproj
new file mode 100644
index 00000000..03f639f0
--- /dev/null
+++ b/Visual Studio Projects/PDP6.vcproj
@@ -0,0 +1,418 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/descrip.mms b/descrip.mms
index f901379f..da8fb3d8 100644
--- a/descrip.mms
+++ b/descrip.mms
@@ -38,10 +38,13 @@
# NOVA Just Build The Data General Nova.
# PDP1 Just Build The DEC PDP-1.
# PDP4 Just Build The DEC PDP-4.
-# PDP7 Just Build The DEC PDP-7.
-# PDP8 Just Build The DEC PDP-8.
-# PDP9 Just Build The DEC PDP-9.
-# PDP10 Just Build The DEC PDP-10.
+# PDP6 Just Build The DEC PDP-6.
+# PDP7 Just Build The DEC PDP-7.
+# PDP8 Just Build The DEC PDP-8.
+# PDP9 Just Build The DEC PDP-9.
+# PDP10 Just Build The DEC PDP-10.
+# PDP10-KA Just Build The DEC PDP-10 KA10.
+# PDP10-KI Just Build The DEC PDP-10 KI10.
# PDP11 Just Build The DEC PDP-11.
# PDP15 Just Build The DEC PDP-15.
# S3 Just Build The IBM System 3.
@@ -613,6 +616,68 @@ PDP11_SOURCE2 = $(PDP11_DIR)PDP11_TM.C,$(PDP11_DIR)PDP11_TS.C,\
PDP11_OPTIONS = /INCL=($(SIMH_DIR),$(PDP11_DIR)$(PCAP_INC))\
/DEF=($(CC_DEFS),"VM_PDP11=1"$(PCAP_DEFS))
+#
+# Digital Equipment PDP-6 Simulator Definitions.
+#
+PDP6_DIR = SYS$DISK:[.PDP10]
+PDP6_LIB = $(LIB_DIR)PDP6-$(ARCH).OLB
+PDP6_SOURCE = $(PDP6_DIR)KX10_CPU.C,\
+ $(PDP6_DIR)KX10_SYS.C,$(PDP6_DIR)KX10_CTY.C,\
+ $(PDP6_DIR)KX10_LP.C,$(PDP6_DIR)KX10_PT.C,\
+ $(PDP6_DIR)KX10_CR.C,$(PDP6_DIR)KX10_CP.C,\
+ $(PDP6_DIR)PDP6_DCT.C,$(PDP6_DIR)PDP6_DTC.C,\
+ $(PDP6_DIR)PDP6_MTC.C,$(PDP6_DIR)PDP6_DSK.C,\
+ $(PDP6_DIR)PDP6_DCS.C,$(PDP6_DIR)KX10_DPY.C,\
+ $(SIMH_DIR)SIM_CARD.C
+PDP6_OPTIONS = /INCL=($(SIMH_DIR),$(PDP6_DIR))\
+ /DEF=($(CC_DEFS),"PDP6=1","USE_INT64=1","USE_SIM_CARD=1"$(PCAP_DEFS))
+
+#
+# Digital Equipment PDP-10-KA Simulator Definitions.
+#
+KA10_DIR = SYS$DISK:[.PDP10]
+KA10_LIB = $(LIB_DIR)KA10-$(ARCH).OLB
+KA10_SOURCE = $(KA10_DIR)KX10_CPU.C,\
+ $(KA10_DIR)KX10_SYS.C,$(KA10_DIR)KX10_DF.C,\
+ $(KA10_DIR)KX10_DP.C,$(KA10_DIR)KX10_MT.C,\
+ $(KA10_DIR)KX10_CTY.C,$(KA10_DIR)KX10_LP.C,\
+ $(KA10_DIR)KX10_PT.C,$(KA10_DIR)KX10_DC.C,\
+ $(KA10_DIR)KX10_RP.C,$(KA10_DIR)KX10_RC.C,\
+ $(KA10_DIR)KX10_DT.C,$(KA10_DIR)KX10_DK.C,\
+ $(KA10_DIR)KX10_CR.C,$(KA10_DIR)KX10_CP.C,\
+ $(KA10_DIR)KX10_TU.C,$(KA10_DIR)KX10_RS.C,\
+ $(KA10_DIR)KA10_PD.C,$(KA10_DIR)KX10_IMP.C,\
+ $(KA10_DIR)KA10_TK10.C,$(KA10_DIR)KA10_MTY.C,\
+ $(KA10_DIR)KA10_IMX.C,$(KA10_DIR)KA10_CH10.C,\
+ $(KA10_DIR)KA10_STK.C,$(KA10_DIR)KA10_TEN11.C,\
+ $(KA10_DIR)KA10_AUXCPU.C,$(KA10_DIR)KA10_PMP.C,\
+ $(KA10_DIR)KA10_DKB.C,$(KA10_DIR)PDP6_DCT.C,\
+ $(KA10_DIR)PDP6_DTC.C,$(KA10_DIR)PDP6_MTC.C,\
+ $(KA10_DIR)PDP6_DSK.C,$(KA10_DIR)PDP6_DCS.C,\
+ $(KA10_DIR)KA10_DPK.C,$(KA10_DIR)KX10_DPY.C,\
+ $(SIMH_DIR)SIM_CARD.C
+KA10_OPTIONS = /INCL=($(SIMH_DIR),$(KA10_DIR))\
+ /DEF=($(CC_DEFS),"KA=1","USE_INT64=1","USE_SIM_CARD=1"$(PCAP_DEFS))
+
+#
+# Digital Equipment PDP-10-KI Simulator Definitions.
+#
+KI10_DIR = SYS$DISK:[.PDP10]
+KI10_LIB = $(LIB_DIR)KI10-$(ARCH).OLB
+KI10_SOURCE = $(KI10_DIR)KX10_CPU.C,\
+ $(KI10_DIR)KX10_SYS.C,$(KI10_DIR)KX10_DF.C,\
+ $(KI10_DIR)KX10_DP.C,$(KI10_DIR)KX10_MT.C,\
+ $(KI10_DIR)KX10_CTY.C,$(KI10_DIR)KX10_LP.C,\
+ $(KI10_DIR)KX10_PT.C,$(KI10_DIR)KX10_DC.C,\
+ $(KI10_DIR)KX10_RP.C,$(KI10_DIR)KX10_RC.C,\
+ $(KI10_DIR)KX10_DT.C,$(KI10_DIR)KX10_DK.C,\
+ $(KI10_DIR)KX10_CR.C,$(KI10_DIR)KX10_CP.C,\
+ $(KI10_DIR)KX10_TU.C,$(KI10_DIR)KX10_RS.C,\
+ $(KI10_DIR)KX10_IMP.C,$(KI10_DIR)KX10_DPY.C,\
+ $(SIMH_DIR)SIM_CARD.C
+KI10_OPTIONS = /INCL=($(SIMH_DIR),$(KI10_DIR))\
+ /DEF=($(CC_DEFS),"KI=1","USE_INT64=1","USE_SIM_CARD=1"$(PCAP_DEFS))
+
#
# Digital Equipment PDP-10 Simulator Definitions.
#
@@ -1340,7 +1405,8 @@ ALL : ALTAIR ALTAIRZ80 CDC1700 ECLIPSE GRI LGP H316 HP2100 HP3000 I1401 I1620 \
MICROVAX3100 MICROVAX3100E VAXSTATION3100M30 \
VAXSTATION3100M38 VAXSTATION3100M76 VAXSTATION4000M60 \
VAXSTATION3100M80 VAXSTATION4000VLC INFOSERVER1000 \
- VAX8200 VAX8600 SDS I7094 SWTP6800MP-A SWTP6800MP-A2 SSEM BESM6 B5500
+ VAX8200 VAX8600 SDS I7094 SWTP6800MP-A SWTP6800MP-A2 SSEM BESM6 B5500 \
+ PDP6 PDP10-KA PDP10-KI
$! No further actions necessary
.ELSE
#
@@ -1707,7 +1773,7 @@ $(PDP9_LIB) : $(PDP18B_SOURCE)
$ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
#
-# If Not On VAX, Build The PDP-10 Library.
+# If Not On VAX, Build The PDP-10, PDP-6, PDP-10-KA, PDP-10-KI Simulator.
#
.IFDEF ALPHA_OR_IA64
$(PDP10_LIB) : $(PDP10_SOURCE)
@@ -1720,6 +1786,39 @@ $(PDP10_LIB) : $(PDP10_SOURCE)
LIBRARY/CREATE $(MMS$TARGET)
$ LIBRARY/REPLACE $(MMS$TARGET) $(BLD_DIR)*.OBJ
$ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
+
+$(PDP6_LIB) : $(PDP6_SOURCE)
+ $!
+ $! Building The $(PDP10_LIB) Library.
+ $!
+ $ $(CC)$(PDP6_OPTIONS) -
+ /OBJ=$(BLD_DIR) $(MMS$CHANGED_LIST)
+ $ IF (F$SEARCH("$(MMS$TARGET)").EQS."") THEN -
+ LIBRARY/CREATE $(MMS$TARGET)
+ $ LIBRARY/REPLACE $(MMS$TARGET) $(BLD_DIR)*.OBJ
+ $ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
+
+$(KA10_LIB) : $(KA10_SOURCE)
+ $!
+ $! Building The $(KA10_LIB) Library.
+ $!
+ $ $(CC)$(KA10_OPTIONS) -
+ /OBJ=$(BLD_DIR) $(MMS$CHANGED_LIST)
+ $ IF (F$SEARCH("$(MMS$TARGET)").EQS."") THEN -
+ LIBRARY/CREATE $(MMS$TARGET)
+ $ LIBRARY/REPLACE $(MMS$TARGET) $(BLD_DIR)*.OBJ
+ $ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
+
+$(KI10_LIB) : $(KI10_SOURCE)
+ $!
+ $! Building The $(KI10_LIB) Library.
+ $!
+ $ $(CC)$(KI10_OPTIONS) -
+ /OBJ=$(BLD_DIR) $(MMS$CHANGED_LIST)
+ $ IF (F$SEARCH("$(MMS$TARGET)").EQS."") THEN -
+ LIBRARY/CREATE $(MMS$TARGET)
+ $ LIBRARY/REPLACE $(MMS$TARGET) $(BLD_DIR)*.OBJ
+ $ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
.ELSE
#
# We Are On VAX And Due To The Use of INT64 We Can't Build It.
@@ -1727,6 +1826,18 @@ $(PDP10_LIB) : $(PDP10_SOURCE)
$(PDP10_LIB) :
$! Due To The Use Of INT64 We Can't Build The
$! $(MMS$TARGET) Library On VAX.
+
+$(PDP6_LIB) :
+ $! Due To The Use Of INT64 We Can't Build The
+ $! $(MMS$TARGET) Library On VAX.
+
+$(KA10_LIB) :
+ $! Due To The Use Of INT64 We Can't Build The
+ $! $(MMS$TARGET) Library On VAX.
+
+$(KI10_LIB) :
+ $! Due To The Use Of INT64 We Can't Build The
+ $! $(MMS$TARGET) Library On VAX.
.ENDIF
$(PDP11_LIB1) : $(PDP11_SOURCE1)
@@ -2672,7 +2783,7 @@ $(BIN_DIR)PDP9-$(ARCH).EXE : $(SIMH_MAIN) $(SIMH_NONET_LIB) $(PDP9_LIB)
$ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
#
-# If Not On VAX, Build The PDP-10 Simulator.
+# If Not On VAX, Build The PDP-10, PDP-6, PDP-10-KA, PDP-10-KI Simulator.
#
.IFDEF ALPHA_OR_IA64
PDP10 : $(BIN_DIR)PDP10-$(ARCH).EXE
@@ -2686,6 +2797,42 @@ $(BIN_DIR)PDP10-$(ARCH).EXE : $(SIMH_MAIN) $(SIMH_NONET_LIB) $(PCAP_LIBD) $(PDP1
$ LINK $(LINK_DEBUG)/EXE=$(BIN_DIR)PDP10-$(ARCH).EXE -
$(BLD_DIR)SCP.OBJ,$(PDP10_LIB)/LIBRARY,$(SIMH_NONET_LIB)/LIBRARY$(PCAP_LIBR)
$ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
+
+PDP6 : $(BIN_DIR)PDP6-$(ARCH).EXE
+ $! PDP6 done
+
+$(BIN_DIR)PDP6-$(ARCH).EXE : $(SIMH_MAIN) $(SIMH_NONET_LIB) $(PCAP_LIBD) $(PDP6_LIB) $(PCAP_EXECLET)
+ $!
+ $! Building The $(BIN_DIR)PDP6-$(ARCH).EXE Simulator.
+ $!
+ $ $(CC)$(PDP6_OPTIONS)/OBJ=$(BLD_DIR) SCP.C
+ $ LINK $(LINK_DEBUG)/EXE=$(BIN_DIR)PDP6-$(ARCH).EXE -
+ $(BLD_DIR)SCP.OBJ,$(PDP6_LIB)/LIBRARY,$(SIMH_NONET_LIB)/LIBRARY$(PCAP_LIBR)
+ $ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
+
+PDP10-KA : $(BIN_DIR)PDP10-KA-$(ARCH).EXE
+ $! PDP10-KA done
+
+$(BIN_DIR)PDP10-KA-$(ARCH).EXE : $(SIMH_MAIN) $(SIMH_NONET_LIB) $(PCAP_LIBD) $(KA10_LIB) $(PCAP_EXECLET)
+ $!
+ $! Building The $(BIN_DIR)PDP10-KA-$(ARCH).EXE Simulator.
+ $!
+ $ $(CC)$(KA10_OPTIONS)/OBJ=$(BLD_DIR) SCP.C
+ $ LINK $(LINK_DEBUG)/EXE=$(BIN_DIR)PDP10-KA-$(ARCH).EXE -
+ $(BLD_DIR)SCP.OBJ,$(KA10_LIB)/LIBRARY,$(SIMH_NONET_LIB)/LIBRARY$(PCAP_LIBR)
+ $ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
+
+PDP10-KI : $(BIN_DIR)PDP10-KI-$(ARCH).EXE
+ $! PDP10-KI done
+
+$(BIN_DIR)PDP10-KI-$(ARCH).EXE : $(SIMH_MAIN) $(SIMH_NONET_LIB) $(PCAP_LIBD) $(KI10_LIB) $(PCAP_EXECLET)
+ $!
+ $! Building The $(BIN_DIR)PDP10-KI-$(ARCH).EXE Simulator.
+ $!
+ $ $(CC)$(KI10_OPTIONS)/OBJ=$(BLD_DIR) SCP.C
+ $ LINK $(LINK_DEBUG)/EXE=$(BIN_DIR)PDP10-KI-$(ARCH).EXE -
+ $(BLD_DIR)SCP.OBJ,$(KI10_LIB)/LIBRARY,$(SIMH_NONET_LIB)/LIBRARY$(PCAP_LIBR)
+ $ DELETE/NOLOG/NOCONFIRM $(BLD_DIR)*.OBJ;*
.ELSE
#
# Else We Are On VAX And Tell The User We Can't Build On VAX
@@ -2694,6 +2841,18 @@ $(BIN_DIR)PDP10-$(ARCH).EXE : $(SIMH_MAIN) $(SIMH_NONET_LIB) $(PCAP_LIBD) $(PDP1
PDP10 :
$! Sorry, Can't Build $(BIN_DIR)PDP10-$(ARCH).EXE Simulator
$! Because It Requires The Use Of INT64.
+
+PDP6 :
+ $! Sorry, Can't Build $(BIN_DIR)PDP6-$(ARCH).EXE Simulator
+ $! Because It Requires The Use Of INT64.
+
+PDP10-KA :
+ $! Sorry, Can't Build $(BIN_DIR)PDP10-KA-$(ARCH).EXE Simulator
+ $! Because It Requires The Use Of INT64.
+
+PDP10-KI :
+ $! Sorry, Can't Build $(BIN_DIR)PDP10-KI-$(ARCH).EXE Simulator
+ $! Because It Requires The Use Of INT64.
.ENDIF
PDP11 : $(BIN_DIR)PDP11-$(ARCH).EXE
diff --git a/doc/ka10_doc.doc b/doc/ka10_doc.doc
new file mode 100644
index 00000000..caa10026
Binary files /dev/null and b/doc/ka10_doc.doc differ
diff --git a/doc/ki10_doc.doc b/doc/ki10_doc.doc
new file mode 100644
index 00000000..06a99b2d
Binary files /dev/null and b/doc/ki10_doc.doc differ
diff --git a/doc/pdp6_doc.doc b/doc/pdp6_doc.doc
new file mode 100644
index 00000000..e5f6c2dc
Binary files /dev/null and b/doc/pdp6_doc.doc differ
diff --git a/makefile b/makefile
index 8c2d5930..d44fb529 100644
--- a/makefile
+++ b/makefile
@@ -107,6 +107,13 @@ ifneq (,$(findstring besm6,$(MAKECMDGOALS)))
VIDEO_USEFUL = true
BESM6_BUILD = true
endif
+# building the KA10 needs video support
+ifneq (,$(or $(findstring pdp6,$(MAKECMDGOALS)),$(findstring pdp10-ka,$(MAKECMDGOALS)),$(findstring pdp10-ki,$(MAKECMDGOALS))))
+ VIDEO_USEFUL = true
+endif
+ifneq (,$(or $(findstring pdp10-ka,$(MAKECMDGOALS)),$(findstring pdp10-ki,$(MAKECMDGOALS))))
+ NETWORK_USEFUL = true
+endif
# building the pdp11, pdp10, or any vax simulator could use networking support
ifneq (,$(or $(findstring pdp11,$(MAKECMDGOALS)),$(findstring pdp10,$(MAKECMDGOALS)),$(findstring vax,$(MAKECMDGOALS)),$(findstring 3b2,$(MAKECMDGOALS))$(findstring all,$(MAKECMDGOALS))))
NETWORK_USEFUL = true
@@ -581,6 +588,7 @@ ifeq ($(WIN32),) #*nix Environments (&& cygwin)
VIDEO_FEATURES = - video capabilities provided by libSDL2 (Simple Directmedia Layer)
DISPLAYL = ${DISPLAYD}/display.c $(DISPLAYD)/sim_ws.c
DISPLAYVT = ${DISPLAYD}/vt11.c
+ DISPLAY340 = ${DISPLAYD}/type340.c
DISPLAYNG = ${DISPLAYD}/ng.c
DISPLAY_OPT += -DUSE_DISPLAY $(VIDEO_CCDEFS) $(VIDEO_LDFLAGS)
$(info using libSDL2: $(call find_include,SDL2/SDL))
@@ -605,6 +613,7 @@ ifeq ($(WIN32),) #*nix Environments (&& cygwin)
VIDEO_FEATURES = - video capabilities provided by libSDL (Simple Directmedia Layer)
DISPLAYL = ${DISPLAYD}/display.c $(DISPLAYD)/sim_ws.c
DISPLAYVT = ${DISPLAYD}/vt11.c
+ DISPLAY340 = ${DISPLAYD}/type340.c
DISPLAYNG = ${DISPLAYD}/ng.c
DISPLAY_OPT += -DUSE_DISPLAY $(VIDEO_CCDEFS) $(VIDEO_LDFLAGS)
$(info using libSDL: $(call find_include,SDL/SDL))
@@ -1869,6 +1878,60 @@ ifneq (,$(BESM6_BUILD))
endif
endif
+PDP6D = PDP10
+ifneq (,$(DISPLAY_OPT))
+ PDP6_DISPLAY_OPT =
+endif
+PDP6 = ${PDP6D}/kx10_cpu.c ${PDP6D}/kx10_sys.c ${PDP6D}/kx10_cty.c \
+ ${PDP6D}/kx10_lp.c ${PDP6D}/kx10_pt.c ${PDP6D}/kx10_cr.c \
+ ${PDP6D}/kx10_cp.c ${PDP6D}/pdp6_dct.c ${PDP6D}/pdp6_dtc.c \
+ ${PDP6D}/pdp6_mtc.c ${PDP6D}/pdp6_dsk.c ${PDP6D}/pdp6_dcs.c \
+ ${PDP6D}/kx10_dpy.c ${DISPLAYL} $(DISPLAY340)
+PDP6_OPT = -DPDP6=1 -DUSE_INT64 -I $(PDP6D) -DUSE_SIM_CARD $(DISPLAY_OPT) $(PDP6_DISPLAY_OPT)
+
+KA10D = PDP10
+ifneq (,$(DISPLAY_OPT))
+ KA10_DISPLAY_OPT =
+endif
+KA10 = ${KA10D}/kx10_cpu.c ${KA10D}/kx10_sys.c ${KA10D}/kx10_df.c \
+ ${KA10D}/kx10_dp.c ${KA10D}/kx10_mt.c ${KA10D}/kx10_cty.c \
+ ${KA10D}/kx10_lp.c ${KA10D}/kx10_pt.c ${KA10D}/kx10_dc.c \
+ ${KA10D}/kx10_rp.c ${KA10D}/kx10_rc.c ${KA10D}/kx10_dt.c \
+ ${KA10D}/kx10_dk.c ${KA10D}/kx10_cr.c ${KA10D}/kx10_cp.c \
+ ${KA10D}/kx10_tu.c ${KA10D}/kx10_rs.c ${KA10D}/ka10_pd.c \
+ ${KA10D}/kx10_imp.c ${KA10D}/ka10_tk10.c ${KA10D}/ka10_mty.c \
+ ${KA10D}/ka10_imx.c ${KA10D}/ka10_ch10.c ${KA10D}/ka10_stk.c \
+ ${KA10D}/ka10_ten11.c ${KA10D}/ka10_auxcpu.c $(KA10D)/ka10_pmp.c \
+ ${KA10D}/ka10_dkb.c ${KA10D}/pdp6_dct.c ${KA10D}/pdp6_dtc.c \
+ ${KA10D}/pdp6_mtc.c ${KA10D}/pdp6_dsk.c ${KA10D}/pdp6_dcs.c \
+ ${KA10D}/ka10_dpk.c ${KA10D}/kx10_dpy.c ${DISPLAYL} $(DISPLAY340)
+KA10_OPT = -DKA=1 -DUSE_INT64 -I $(KA10D) -DUSE_SIM_CARD ${NETWORK_OPT} $(DISPLAY_OPT) $(KA10_DISPLAY_OPT)
+ifneq ($(PANDA_LIGHTS),)
+# ONLY for Panda display.
+KA10_OPT += -DPANDA_LIGHTS
+KA10 += ${KA10D}/ka10_lights.c
+KA10_LDFLAGS += -lusb-1.0
+endif
+
+KI10D = PDP10
+ifneq (,$(DISPLAY_OPT))
+KI10_DISPLAY_OPT =
+endif
+KI10 = ${KI10D}/kx10_cpu.c ${KI10D}/kx10_sys.c ${KI10D}/kx10_df.c \
+ ${KI10D}/kx10_dp.c ${KI10D}/kx10_mt.c ${KI10D}/kx10_cty.c \
+ ${KI10D}/kx10_lp.c ${KI10D}/kx10_pt.c ${KI10D}/kx10_dc.c \
+ ${KI10D}/kx10_rp.c ${KI10D}/kx10_rc.c ${KI10D}/kx10_dt.c \
+ ${KI10D}/kx10_dk.c ${KI10D}/kx10_cr.c ${KI10D}/kx10_cp.c \
+ ${KI10D}/kx10_tu.c ${KI10D}/kx10_rs.c ${KI10D}/kx10_imp.c \
+ ${KI10D}/kx10_dpy.c ${DISPLAYL} $(DISPLAY340)
+KI10_OPT = -DKI=1 -DUSE_INT64 -I $(KI10D) -DUSE_SIM_CARD ${NETWORK_OPT} $(DISPLAY_OPT) $(KI10_DISPLAY_OPT)
+ifneq ($(PANDA_LIGHTS),)
+# ONLY for Panda display.
+KI10_OPT += -DPANDA_LIGHTS
+KI10 += ${KA10D}/ka10_lights.c
+KI10_LDFLAGS = -lusb-1.0
+endif
+
###
### Experimental simulators
###
@@ -1926,6 +1989,7 @@ ATT3B2 = ${ATT3B2D}/3b2_cpu.c ${ATT3B2D}/3b2_mmu.c \
${ATT3B2D}/3b2_ni.c ${ATT3B2D}/3b2_mau.c \
${ATT3B2D}/3b2_sysdev.c
ATT3B2_OPT = -DUSE_INT64 -DUSE_ADDR64 -I ${ATT3B2D} ${NETWORK_OPT}
+
#
# Build everything (not the unsupported/incomplete or experimental simulators)
#
@@ -1939,7 +2003,7 @@ ALL = pdp1 pdp4 pdp7 pdp8 pdp9 pdp15 pdp11 pdp10 \
i7094 ibm1130 id16 id32 sds lgp h316 cdc1700 \
swtp6800mp-a swtp6800mp-a2 tx-0 ssem b5500 isys8010 isys8020 \
isys8030 isys8024 imds-225 scelbi 3b2 i701 i704 i7010 i7070 i7080 i7090 \
- sigma uc15
+ sigma uc15 pdp10-ka pdp10-ki pdp6
all : ${ALL}
@@ -2626,6 +2690,34 @@ ifneq (,$(call find_test,${I650D},i650))
$@ $(call find_test,${I650D},i650) $(TEST_ARG)
endif
+pdp6 : ${BIN}pdp6${EXE}
+
+${BIN}pdp6${EXE} : ${PDP6} ${SIM}
+ ${MKDIRBIN}
+ ${CC} ${PDP6} ${PDP6_DPY} ${SIM} ${PDP6_OPT} $(CC_OUTSPEC) ${LDFLAGS} ${PDP6_LDFLAGS}
+ifneq (,$(call find_test,${PDP10D},pdp6))
+ $@ $(call find_test,${PDP10D},pdp6) $(TEST_ARG)
+endif
+
+pdp10-ka : ${BIN}pdp10-ka${EXE}
+
+${BIN}pdp10-ka${EXE} : ${KA10} ${SIM}
+ ${MKDIRBIN}
+ ${CC} ${KA10} ${KA10_DPY} ${SIM} ${KA10_OPT} $(CC_OUTSPEC) ${LDFLAGS} ${KA10_LDFLAGS}
+ifneq (,$(call find_test,${PDP10D},ka10))
+ $@ $(call find_test,${PDP10D},ka10) $(TEST_ARG)
+endif
+
+pdp10-ki : ${BIN}pdp10-ki${EXE}
+
+${BIN}pdp10-ki${EXE} : ${KI10} ${SIM}
+ ${MKDIRBIN}
+ ${CC} ${KI10} ${KI10_DPY} ${SIM} ${KI10_OPT} $(CC_OUTSPEC) ${LDFLAGS} ${KI10_LDFLAGS}
+ifneq (,$(call find_test,${PDP10D},ki10))
+ $@ $(call find_test,${PDP10D},ki10) $(TEST_ARG)
+endif
+
+
# Front Panel API Demo/Test program
frontpaneltest : ${BIN}frontpaneltest${EXE}