From bcb6cd678bbb616700df3e465649955c81b9ca44 Mon Sep 17 00:00:00 2001 From: Richard Cornwell Date: Fri, 5 Oct 2018 18:17:27 -0400 Subject: [PATCH] KA10: Fixed lights to compile. --- PDP10/ka10_cpu.c | 7 +++++++ makefile | 18 ++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/PDP10/ka10_cpu.c b/PDP10/ka10_cpu.c index daa5447..d9d9c31 100644 --- a/PDP10/ka10_cpu.c +++ b/PDP10/ka10_cpu.c @@ -120,6 +120,7 @@ uint64 MB; /* Memory Bufer Register */ uint32 AB; /* Memory address buffer */ uint32 PC; /* Program counter */ uint32 IR; /* Instruction register */ +uint64 MI; /* Monitor lights */ uint32 FLAGS; /* Flags */ uint32 AC; /* Operand accumulator */ uint64 SW; /* Switch register */ @@ -319,6 +320,7 @@ REG cpu_reg[] = { { ORDATA (PIENB, pi_enable, 7) }, { BRDATA (REG, FM, 8, 36, 017) }, { ORDATAD(SW, SW, 36, "Console SW Register"), REG_FIT}, + { ORDATAD(MI, MI, 36, "Monitor Display"), REG_FIT}, { NULL } }; @@ -881,8 +883,11 @@ t_stat dev_pi(uint32 dev, uint64 *data) { break; case DATAO: + MI = *data; +#ifdef PANDA_LIGHTS /* Set lights */ ka10_lights_main (*data); +#endif break; case DATAI: @@ -4944,7 +4949,9 @@ if (QITS) { #if MPX_DEV mpx_enable = 0; #endif +#ifdef PANDA_LIGHTS ka10_lights_init (); +#endif return SCPE_OK; } diff --git a/makefile b/makefile index 9b271fc..981a309 100644 --- a/makefile +++ b/makefile @@ -1111,11 +1111,9 @@ KA10 = ${KA10D}/ka10_cpu.c ${KA10D}/ka10_sys.c ${KA10D}/ka10_df.c \ ${KA10D}/ka10_rp.c ${KA10D}/ka10_rc.c ${KA10D}/ka10_dt.c \ ${KA10D}/ka10_dk.c ${KA10D}/ka10_cr.c ${KA10D}/ka10_cp.c \ ${KA10D}/ka10_tu.c ${KA10D}/ka10_rs.c ${KA10D}/ka10_pd.c \ - ${KA10D}/ka10_imx.c ${KA10D}/ka10_tk10.c ${KA10D}/ka10_mty.c \ - ${KA10D}/ka10_lights.c + ${KA10D}/ka10_imx.c ${KA10D}/ka10_tk10.c ${KA10D}/ka10_mty.c KA10_OPT = -DKA=1 -DUSE_INT64 -I $(KA10D) -DUSE_SIM_CARD # ${KA10D}/ka10_imp.c sim_imp.c sim_ncp.c sim_tun.c -KA10_LDFLAGS += -lusb-1.0 ifneq ($(TYPE340),) # ONLY tested on Ubuntu 16.04, using X11 display support: @@ -1124,6 +1122,12 @@ KA10_DPY=-DUSE_DISPLAY \ display/x11.c KA10_DPY_LDFLAGS =-lm -lX11 -lXt endif +ifneq ($(PANDA_LIGHTS),) +# ONLY for Panda display. +KA10_OPT += -DPANDA_LIGHTS +KA10 += ${KA10D}/ka10_lights.c +KA10_LDFLAGS += -lusb-1.0 +endif KI10D = PDP10 KI10 = ${KA10D}/ka10_cpu.c ${KA10D}/ka10_sys.c ${KA10D}/ka10_df.c \ @@ -1133,6 +1137,12 @@ KI10 = ${KA10D}/ka10_cpu.c ${KA10D}/ka10_sys.c ${KA10D}/ka10_df.c \ ${KA10D}/ka10_dk.c ${KA10D}/ka10_cr.c ${KA10D}/ka10_cp.c \ ${KA10D}/ka10_tu.c ${KA10D}/ka10_rs.c ${KA10D}/ka10_pd.c KI10_OPT = -g -DKI=1 -DUSE_INT64 -I $(KA10D) -DUSE_SIM_CARD +ifneq ($(PANDA_LIGHTS),) +# ONLY for Panda display. +KI10_OPT += -DPANDA_LIGHTS +KI10 += ${KA10D}/ka10_lights.c +KI10_LDFLAGS = -lusb-1.0 +endif I7000D = I7000 @@ -1253,7 +1263,7 @@ pdp10-ki : ${BIN}pdp10-ki${EXE} ${BIN}pdp10-ki${EXE} : ${KI10} ${SIM} ${MKDIRBIN} - ${CC} ${KA10} ${SIM} ${KI10_OPT} $(CC_OUTSPEC) ${LDFLAGS} + ${CC} ${KA10} ${SIM} ${KI10_OPT} $(CC_OUTSPEC) ${LDFLAGS} ${KI10_LDFLAGS} ifeq ($(WIN32),) cp ${BIN}pdp10-ki${EXE} ${BIN}ki10${EXE} else