1
0
mirror of https://github.com/open-simh/simh.git synced 2026-01-26 12:12:52 +00:00

Merge with v3.9-0-rc2 first pass

This commit is contained in:
Mark Pizzolato
2012-03-24 19:46:37 -07:00
parent 6d11b3bd25
commit 6e813b8364
104 changed files with 415 additions and 348 deletions

View File

@@ -28,15 +28,15 @@
28-Apr-07 RMS Removed clock initialization
27-Oct-06 RMS Added idle support
Removed separate PASLA clock
06-Feb-06 RMS Fixed bug in DH (found by Mark Hittinger)
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
06-Feb-06 RMS Fixed bug in DH (Mark Hittinger)
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
25-Aug-05 RMS Fixed DH integer overflow cases
16-Aug-05 RMS Fixed C++ declaration and cast problems
10-Mar-05 RMS Fixed bug in show history routine (from Mark Hittinger)
10-Mar-05 RMS Fixed bug in show history routine (Mark Hittinger)
Revised examine/deposit to do words rather than bytes
07-Nov-04 RMS Added instruction history
22-Sep-03 RMS Added additional instruction decode types
07-Feb-03 RMS Fixed bug in SETM, SETMR (found by Mark Pizzolato)
07-Feb-03 RMS Fixed bug in SETM, SETMR (Mark Pizzolato)
The register state for the Interdata 16b CPU is:

View File

@@ -29,13 +29,13 @@
27-Oct-06 RMS Added idle support
Removed separate PASLA clock
09-Mar-06 RMS Added 8 register bank support for 8/32
06-Feb-06 RMS Fixed bug in DH (found by Mark Hittinger)
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
06-Feb-06 RMS Fixed bug in DH (Mark Hittinger)
22-Sep-05 RMS Fixed declarations (Sterling Garwood)
16-Aug-05 RMS Fixed C++ declaration and cast problems
10-Mar-05 RMS Fixed bug in initial memory allocation
RMS Fixed bug in show history routine (from Mark Hittinger)
RMS Fixed bug in show history routine (Mark Hittinger)
RMS Revised examine/deposit to do words rather than bytes
18-Feb-05 RMS Fixed branches to mask new PC (from Greg Johnson)
18-Feb-05 RMS Fixed branches to mask new PC (Greg Johnson)
06-Nov-04 RMS Added =n to SHOW HISTORY
25-Jan-04 RMS Revised for device debug support
31-Dec-03 RMS Fixed bug in cpu_set_hist

View File

@@ -23,7 +23,7 @@
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from Robert M Supnik.
17-Jul-06 RMS Fixed transcription errors (found by Davis Johnson)
17-Jul-06 RMS Fixed transcription errors (Davis Johnson)
17-Feb-03 RMS Fixed for UNIX bootstrap, upper platter bootstrap
*/

View File

@@ -1,6 +1,6 @@
/* id_fd.c: Interdata floppy disk simulator
Copyright (c) 2001-2008, Robert M Supnik
Copyright (c) 2001-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -25,6 +25,8 @@
fd M46-630 floppy disk
19-Mar-12 RMS Fixed macro naming conflict (Mark Pizzolato)
A diskette consists of 77 tracks, each with 26 sectors of 128B. The
Interdata floppy uses a logical record numbering scheme from 1 to 2002.
Physical tracks are numbered 0-76, physical sectors 1-26.
@@ -75,14 +77,11 @@
#define STA_WRP 0x80 /* *write prot */
#define STA_DEF 0x40 /* def track NI */
#ifdef STA_DEL /* Some platforms define a conflicting symbol here */
#undef STA_DEL
#endif
#define STA_DEL 0x20 /* del record */
#define STA_DLR 0x20 /* del record */
#define STA_ERR 0x10 /* error */
#define STA_IDL 0x02 /* idle */
#define STA_OFL 0x01 /* fault */
#define STA_MASK (STA_DEF|STA_DEL|STA_ERR|STA_BSY|STA_IDL)
#define STA_MASK (STA_DEF|STA_DLR|STA_ERR|STA_BSY|STA_IDL)
#define SET_EX (STA_ERR) /* set EX */
/* Extended status, 6 bytes, * = dynamic */
@@ -332,7 +331,7 @@ switch (fnc) { /* case on function */
for (i = 0; i < FD_NUMBY; i++) /* read sector */
fdxb[i] = fbuf[da + i];
if (fbuf[FD_SIZE + uptr->LRN - 1]) { /* deleted? set err */
fd_sta = fd_sta | STA_DEL;
fd_sta = fd_sta | STA_DLR;
fd_es[u][0] = fd_es[u][0] | ES0_DEL;
}
fd_es[u][2] = GET_SEC (uptr->LRN); /* set ext sec/trk */

View File

@@ -25,8 +25,8 @@
idc MSM/IDC disk controller
03-Apr-06 RMS Fixed WD/WH handling (found by Davis Johnson)
30-Mar-06 RMS Fixed bug, nop command should be ignored (found by Davis Johnson)
03-Apr-06 RMS Fixed WD/WH handling (Davis Johnson)
30-Mar-06 RMS Fixed bug, nop command should be ignored (Davis Johnson)
25-Apr-03 RMS Revised for extended file support
16-Feb-03 RMS Fixed read to test transfer ok before selch operation

View File

@@ -23,7 +23,7 @@
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from Robert M Supnik.
30-Mar-06 RMS Fixed bug, GO preserves EXA and SSTA (found by Davis Johnson)
30-Mar-06 RMS Fixed bug, GO preserves EXA and SSTA (Davis Johnson)
21-Jun-03 RMS Changed subroutine argument for ARM compiler conflict
Interdata I/O devices are defined by a device information block:

View File

@@ -25,7 +25,7 @@
lpt M46-206 line printer
27-May-08 RMS Fixed bug in printing test (from Davis Johnson)
27-May-08 RMS Fixed bug in printing test (Davis Johnson)
19-Jan-07 RMS Added UNIT_TEXT flag
25-Apr-03 RMS Revised for extended file support
*/

View File

@@ -1,6 +1,6 @@
/* id_pas.c: Interdata programmable async line adapter simulator
Copyright (c) 2001-2008, Robert M Supnik
Copyright (c) 2001-2012, Robert M Supnik
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
@@ -25,6 +25,7 @@
pas Programmable asynchronous line adapter(s)
21-Mar-12 RMS Fixed TT_GET_MODE test to use TTUF_MODE_x (Michael Bloom)
19-Nov-08 RMS Revised for common TMXR show routines
18-Jun-07 RMS Added UNIT_IDLE flag
18-Oct-06 RMS Synced PASLA to clock
@@ -345,7 +346,7 @@ for (ln = 0; ln < PAS_ENAB; ln++) { /* loop thru lines */
else { /* normal */
out = c & 0x7F; /* echo is 7b */
c = sim_tt_inpcvt (c, TT_GET_MODE (pasl_unit[ln].flags));
if (TT_GET_MODE (pasl_unit[ln].flags) != TT_MODE_8B)
if (TT_GET_MODE (pasl_unit[ln].flags) != TTUF_MODE_8B)
c = pas_par (pas_cmd[ln], c); /* apply parity */
pas_rbuf[ln] = c; /* save char */
pas_rchp[ln] = 1; /* char pending */
@@ -378,7 +379,7 @@ uint32 ln = uptr - pasl_unit; /* line # */
if (pas_ldsc[ln].conn) { /* connected? */
if (pas_ldsc[ln].xmte) { /* xmt enabled? */
TMLN *lp = &pas_ldsc[ln]; /* get line */
if (TT_GET_MODE (pasl_unit[ln].flags) == TT_MODE_8B)
if (TT_GET_MODE (pasl_unit[ln].flags) == TTUF_MODE_8B)
c = pas_par (pas_cmd[ln], pas_xbuf[ln]); /* apply parity */
else c = sim_tt_outcvt (pas_xbuf[ln], TT_GET_MODE (pasl_unit[ln].flags));
if (c >= 0) {

View File

@@ -26,7 +26,7 @@
pt paper tape reader and punch
25-Apr-03 RMS Revised for extended file support
10-Apr-03 RMS Fixed type problem in ptr service (from Mark Pizzolato)
10-Apr-03 RMS Fixed type problem in ptr service (Mark Pizzolato)
*/
#include "id_defs.h"