From c1aa85d94441633cce2018637348e5d8b8cdac76 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Tue, 3 Dec 2013 06:56:38 -0800 Subject: [PATCH] H316: Updated H316 and IMP documentation and addition of IMP modem loopback functionality and testing (from Bob Armstrong) --- H316/h316_mi.c | 46 ++++++++++++++++++++++++--------------- H316/tests/imploop.cmd | 10 ++++----- H316/tests/imploop4.cmd | 2 +- H316/tests/imploop4l.cmd | 22 +++++++++++++++++++ H316/tests/imploopl.cmd | 30 +++++++++++++++++++++++++ doc/h316_doc.doc | Bin 82432 -> 74752 bytes doc/h316_imp.doc | Bin 157696 -> 148480 bytes 7 files changed, 87 insertions(+), 23 deletions(-) create mode 100644 H316/tests/imploop4l.cmd create mode 100644 H316/tests/imploopl.cmd diff --git a/H316/h316_mi.c b/H316/h316_mi.c index 127c097e..34c20cff 100644 --- a/H316/h316_mi.c +++ b/H316/h316_mi.c @@ -155,8 +155,8 @@ LINKNO 32 link number for h316_udp module BPS 32 simulated bps for UDP delay calculations actual baud rate for physical COM ports - LLOOP 1 local loopback enabled - RLOOP 1 remote loopback enabled + ILOOP 1 interface (local) loopback enabled + RLOOP 1 remote (line) loopback enabled Most of these values will be found in the Modem Information Data Block (aka "MIDB") but a few are stored elsewhere (e.g. IRQ/IEN are in the CPU's dev_int @@ -165,7 +165,7 @@ TODO Implement checksum handling - Implement local/remote loopback + Implement remote loopback */ #ifdef VM_IMPTIP #include "h316_defs.h" // H316 emulator definitions @@ -247,8 +247,8 @@ UNIT mi5_unit = MI_UNIT(5); { DRDATA (TXTOT, mi##N##_db.txtotal, 32), REG_RO + PV_LEFT }, \ { DRDATA (LINK, mi##N##_db.link, 32), REG_RO + PV_LEFT }, \ { DRDATA (BPS, mi##N##_db.bps, 32), REG_NZ + PV_LEFT }, \ - { FLDATA (LLOOP, mi##N##_db.lloop, 0), PV_RZRO }, \ - { FLDATA (ILOOP, mi##N##_db.iloop, 0), PV_RZRO }, \ + { FLDATA (LLOOP, mi##N##_db.lloop, 0), REG_RO + PV_RZRO }, \ + { FLDATA (ILOOP, mi##N##_db.iloop, 0), REG_RO + PV_RZRO }, \ { NULL } \ } REG mi1_reg[] = MI_REG(1), mi2_reg[] = MI_REG(2); @@ -257,10 +257,12 @@ REG mi5_reg[] = MI_REG(5); // Modem Device Modifiers ... // These are the modifiers simh uses for the "SET MIn" and "SHOW MIn" commands. -#define MI_MOD(N) { \ - { MTAB_XTD|MTAB_VDV, 1, "LOOPBACK", "LOCALLOOP", &mi_set_loopback, &mi_show_loopback, NULL }, \ - { MTAB_XTD|MTAB_VDV, 0, NULL, "NOLOCALLOOP", &mi_set_loopback, NULL, NULL }, \ - { 0 } \ +#define MI_MOD(N) { \ + { MTAB_XTD|MTAB_VDV, 0, "LOOPBACK", "LOOPINTERFACE", &mi_set_loopback, &mi_show_loopback, NULL }, \ + { MTAB_XTD|MTAB_VDV, 1, NULL, "NOLOOPINTERFACE", &mi_set_loopback, NULL, NULL }, \ + { MTAB_XTD|MTAB_VDV, 2, NULL, "LOOPLINE", &mi_set_loopback, NULL, NULL }, \ + { MTAB_XTD|MTAB_VDV, 3, NULL, "NOLOOPLINE", &mi_set_loopback, NULL, NULL }, \ + { 0 } \ } MTAB mi1_mod[] = MI_MOD(1), mi2_mod[] = MI_MOD(2); MTAB mi3_mod[] = MI_MOD(3), mi4_mod[] = MI_MOD(4); @@ -731,13 +733,23 @@ t_stat mi_detach (UNIT *uptr) t_stat mi_set_loopback (UNIT *uptr, int32 val, char *cptr, void *desc) { - t_stat ret; uint16 line = uptr->mline; + t_stat ret = SCPE_OK; uint16 line = uptr->mline; - if (PMIDB(line)->link == NOLINK) - return SCPE_UNATT; - ret = udp_set_link_loopback (PDEVICE(line), PMIDB(line)->link, val); - if (ret == SCPE_OK) - PMIDB(line)->lloop = val; + switch (val) { + case 0: // LOOPINTERFACE + case 1: // NOLOOPINTERFACE + PMIDB(line)->iloop = (val == 0) ? 1 : 0; + break; + case 2: // LOOPLINE + case 3: // NOLOOPLINE + if (PMIDB(line)->link == NOLINK) + return SCPE_UNATT; + val = (val == 2) ? 1 : 0; + ret = udp_set_link_loopback (PDEVICE(line), PMIDB(line)->link, val); + if (ret == SCPE_OK) + PMIDB(line)->lloop = val; + break; + } return ret; } @@ -746,9 +758,9 @@ t_stat mi_show_loopback (FILE *st, UNIT *uptr, int32 val, void *desc) uint16 line = uptr->mline; if (PMIDB(line)->iloop) - fprintf (st, ", Internal Loopback"); + fprintf (st, "Interface (local) Loopback"); if (PMIDB(line)->lloop) - fprintf (st, ", Local Loopback"); + fprintf (st, "Line (remote) Loopback"); return SCPE_OK; } diff --git a/H316/tests/imploop.cmd b/H316/tests/imploop.cmd index f0c298c0..9dc63784 100644 --- a/H316/tests/imploop.cmd +++ b/H316/tests/imploop.cmd @@ -11,15 +11,15 @@ do impcode.cmd ; Start up the modem links! SET MI1 ENABLED -DEPOSIT MI1 ILOOP 1 +SET MI1 LOOPINTERFACE SET MI2 ENABLED -DEPOSIT MI2 ILOOP 1 +SET MI2 LOOPINTERFACE SET MI3 ENABLED -DEPOSIT MI3 ILOOP 1 +SET MI3 LOOPINTERFACE SET MI4 ENABLED -DEPOSIT MI4 ILOOP 1 +SET MI4 LOOPINTERFACE SET MI5 ENABLED -DEPOSIT MI5 ILOOP 1 +SET MI5 LOOPINTERFACE ; And we're done .. echo Type GO to start ... diff --git a/H316/tests/imploop4.cmd b/H316/tests/imploop4.cmd index 5fc88f12..1611f80f 100644 --- a/H316/tests/imploop4.cmd +++ b/H316/tests/imploop4.cmd @@ -14,7 +14,7 @@ SET MI1 DISABLED SET MI2 DISABLED SET MI3 DISABLED SET MI4 ENABLED -DEPOSIT MI4 ILOOP 1 +SET MI4 LOOPINTERFACE SET MI5 DISABLED ; And we're done .. diff --git a/H316/tests/imploop4l.cmd b/H316/tests/imploop4l.cmd new file mode 100644 index 00000000..cdae40f8 --- /dev/null +++ b/H316/tests/imploop4l.cmd @@ -0,0 +1,22 @@ +;; *** IMP LINE FOUR (ONLY!) LOOPBACK TEST *** + +; Set the simulator configuration ... +echo IMP line four loopback test... +do impconfig.cmd +SET IMP NUM=2 + +; Load the IMP code ... +echo Loading IMP code ... +do impcode.cmd + +; Start up the modem links! +SET MI1 DISABLED +SET MI2 DISABLED +SET MI3 DISABLED +SET MI4 ENABLED +ATTACH MI4 4424:4434 +SET MI4 LOOPLINE +SET MI5 DISABLED + +; And we're done .. +echo Type GO to start ... diff --git a/H316/tests/imploopl.cmd b/H316/tests/imploopl.cmd new file mode 100644 index 00000000..ba7efca9 --- /dev/null +++ b/H316/tests/imploopl.cmd @@ -0,0 +1,30 @@ +;; *** IMP FIVE MODEM LINE LOOPBACK TEST *** + +; Set the simulator configuration ... +echo IMP five modem line interface loopback test... +do impconfig.cmd +SET IMP NUM=2 + +; Load the IMP code ... +echo Loading IMP code ... +do impcode.cmd + +; Start up the modem links! +SET MI1 ENABLED +ATTACH MI1 4421:4431 +SET MI1 LOOPLINE +SET MI2 ENABLED +ATTACH MI2 4422:4432 +SET MI2 LOOPLINE +SET MI3 ENABLED +ATTACH MI3 4423:4433 +SET MI3 LOOPLINE +SET MI4 ENABLED +ATTACH MI4 4424:4434 +SET MI4 LOOPLINE +SET MI5 ENABLED +ATTACH MI5 4425:4435 +SET MI5 LOOPLINE + +; And we're done .. +echo Type GO to start ... diff --git a/doc/h316_doc.doc b/doc/h316_doc.doc index d39be690023696281c624470963b5966139da1c4..177278595073bc8c725d946d4196ab3764ba021c 100644 GIT binary patch delta 19524 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 diff --git a/doc/h316_imp.doc b/doc/h316_imp.doc index 6604510db8654aa20af4ed40f7bd755f6254e831..41970ec640ecff3499eb76d821dedd0c1f6a74a5 100644 GIT binary patch delta 24614 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%0DLL)RrFgn7P!7#?hA`P=J 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 delta 32004 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