PDP11: RP11-C (RP02/03) disk implementation

This commit is contained in:
Tony Lawrence 2023-06-07 20:21:51 -04:00
parent 8b6c0b60c9
commit a653bbfcec
9 changed files with 1283 additions and 3 deletions

View file

@ -65,6 +65,7 @@ add_simulator(pdp11
pdp11_daz.c
pdp11_tv.c
pdp11_mb.c
pdp11_rr.c
${DISPLAYNG}
${DISPLAYVT}
INCLUDES

View file

@ -640,6 +640,7 @@ typedef struct pdp_dib DIB;
#define INT_V_NG 27
#define INT_V_DHRX 28
#define INT_V_DHTX 29
#define INT_V_RR 30
#define INT_V_PIR4 0 /* BR4 */
#define INT_V_TTI 1
@ -682,6 +683,7 @@ typedef struct pdp_dib DIB;
#define INT_RX (1u << INT_V_RX)
#define INT_TM (1u << INT_V_TM)
#define INT_RP (1u << INT_V_RP)
#define INT_RR (1u << INT_V_RR)
#define INT_TS (1u << INT_V_TS)
#define INT_HK (1u << INT_V_HK)
#define INT_RQ (1u << INT_V_RQ)
@ -750,6 +752,7 @@ typedef struct pdp_dib DIB;
#define IPL_RX 5
#define IPL_TM 5
#define IPL_RP 5
#define IPL_RR 5
#define IPL_TS 5
#define IPL_HK 5
#define IPL_RQ 5

View file

@ -673,6 +673,8 @@ AUTO_CON auto_tab[] = {/*c #v am vm fxa fxv */
{010700} }, /* KG11-A - fx CSR, no VEC */
{ { "RHA" }, 1, 1, 0, 0,
{016700}, {0254} }, /* RH11/RH70 - fx CSR, fx VEC */
{ { "RR" }, 1, 1, 0, 0,
{016710}, {0254} }, /* RP11/-C/-E - fx CSR, fx VEC */
{ { "RHB" }, 1, 1, 0, 0,
{012440}, {0224} }, /* RH11/RH70 - fx CSR, fx VEC */
{ { "RHC" }, 1, 1, 0, 0,
@ -704,8 +706,6 @@ AUTO_CON auto_tab[] = {/*c #v am vm fxa fxv */
{015606}, {0250} }, /* RB730 - fx CSR, fx VEC */
{ { "RL" }, 1, 1, 0, 0,
{014400}, {0160} }, /* RL11 - fx CSR, fx VEC */
{ { "RL" }, 1, 1, 0, 0,
{014400}, {0160} }, /* RL11 - fx CSR, fx VEC */
{ { "DCI" }, 1, 2, 0, 8,
{014000, 014010, 014020, 014030,
014040, 014050, 014060, 014070,

1266
PDP11/pdp11_rr.c Normal file

File diff suppressed because it is too large Load diff

View file

@ -101,6 +101,7 @@ extern DEVICE rx_dev;
extern DEVICE ry_dev;
extern DEVICE mba_dev[];
extern DEVICE rp_dev;
extern DEVICE rr_dev;
extern DEVICE rs_dev;
extern DEVICE rq_dev, rqb_dev, rqc_dev, rqd_dev;
extern DEVICE tm_dev;
@ -182,6 +183,7 @@ DEVICE *sim_devices[] = {
&rx_dev,
&ry_dev,
&rp_dev,
&rr_dev,
&rs_dev,
&rq_dev,
&rqb_dev,

View file

@ -325,6 +325,10 @@
RelativePath="..\PDP11\pdp11_rp.c"
>
</File>
<File
RelativePath="..\PDP11\pdp11_rr.c"
>
</File>
<File
RelativePath="..\PDP11\pdp11_rq.c"
>

View file

@ -284,6 +284,7 @@
<ClCompile Include="..\PDP11\pdp11_rl.c" />
<ClCompile Include="..\PDP11\pdp11_rom.c" />
<ClCompile Include="..\PDP11\pdp11_rp.c" />
<ClCompile Include="..\PDP11\pdp11_rr.c" />
<ClCompile Include="..\PDP11\pdp11_rq.c" />
<ClCompile Include="..\PDP11\pdp11_rs.c" />
<ClCompile Include="..\PDP11\pdp11_rx.c" />

View file

@ -117,6 +117,9 @@
<ClCompile Include="..\PDP11\pdp11_rp.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\PDP11\pdp11_rr.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\PDP11\pdp11_rq.c">
<Filter>Source Files</Filter>
</ClCompile>

View file

@ -1493,7 +1493,7 @@ PDP11 = ${PDP11D}/pdp11_fp.c ${PDP11D}/pdp11_cpu.c ${PDP11D}/pdp11_dz.c \
${PDP11D}/pdp11_vt.c ${PDP11D}/pdp11_td.c ${PDP11D}/pdp11_io_lib.c \
${PDP11D}/pdp11_rom.c ${PDP11D}/pdp11_ch.c ${PDP11D}/pdp11_dh.c \
${PDP11D}/pdp11_ng.c ${PDP11D}/pdp11_daz.c ${PDP11D}/pdp11_tv.c \
${PDP11D}/pdp11_mb.c \
${PDP11D}/pdp11_mb.c ${PDP11D}/pdp11_rr.c \
${DISPLAYL} ${DISPLAYNG} ${DISPLAYVT}
PDP11_OPT = -DVM_PDP11 -I ${PDP11D} ${NETWORK_OPT} ${DISPLAY_OPT}