mirror of
https://github.com/open-simh/simh.git
synced 2026-01-25 19:57:36 +00:00
TMXR, PDP11, PDP10, VAX: Add DDCMP sync framer support
This adds support for the "framer" device, which is a USB-connected device built around a Raspberry Pico that connects to a synchronous line, either RS-232 or DEC "integral modem" coax connection. It implements the framing portion of DDCMP: clock recovery for the integral modem case, byte sync, and DDCMP frame handling including CRC. The actual DDCMP protocol state machine, with its handling of sequencing, timeout and retransmit, etc. is left to the host software. All the design files for the framer may be found at https://github.com/pkoning2/ddcmp . This commit adds code to drive the framer from the TMXR library, allowing it to be used either from simulated DMC-11 or simulated DUP-11 devices. Both have been tested, using RSTS/E, RSX-11/M+, and TOPS-20. Fixed the one-digit limit on eth<n> device names, the limit is now 2.
This commit is contained in:
committed by
Mark Pizzolato
parent
030a47bdb4
commit
5cd1e8b7ac
@@ -232,6 +232,8 @@ struct eth_queue {
|
||||
struct eth_item* item;
|
||||
};
|
||||
|
||||
typedef unsigned char ETH_MAC[6];
|
||||
|
||||
struct eth_list {
|
||||
char name[ETH_DEV_NAME_MAX];
|
||||
char desc[ETH_DEV_DESC_MAX];
|
||||
@@ -239,7 +241,6 @@ struct eth_list {
|
||||
};
|
||||
|
||||
typedef int ETH_BOOL;
|
||||
typedef unsigned char ETH_MAC[6];
|
||||
typedef unsigned char ETH_MULTIHASH[8];
|
||||
typedef struct eth_packet ETH_PACK;
|
||||
typedef void (*ETH_PCALLBACK)(int status);
|
||||
@@ -368,6 +369,7 @@ t_stat eth_show (FILE* st, UNIT* uptr, /* show ethernet devices
|
||||
int32 val, CONST void* desc);
|
||||
t_stat eth_show_devices (FILE* st, DEVICE *dptr, /* show ethernet devices */
|
||||
UNIT* uptr, int32 val, CONST char* desc);
|
||||
int eth_devices (int max, ETH_LIST* dev, ETH_BOOL framers); /* get ethernet devices on host */
|
||||
void eth_show_dev (FILE*st, ETH_DEV* dev); /* show ethernet device state */
|
||||
|
||||
void eth_mac_fmt (ETH_MAC* const add, char* buffer); /* format ethernet mac address */
|
||||
|
||||
Reference in New Issue
Block a user