1
0
mirror of https://github.com/simh/simh.git synced 2026-04-16 00:21:35 +00:00

ALL: Massive 'const' cleanup

These changes facilitate more robust parameter type checking and helps
to identify unexpected coding errors.

Most simulators can now also be compiled with a C++ compiler without
warnings.

Additionally, these changes have also been configured to facilitate easier
backporting of simulator and device simulation modules to run under the
simh v3.9+ SCP framework.
This commit is contained in:
Mark Pizzolato
2016-05-15 15:25:33 -07:00
parent 60a8a2d43d
commit 5531ccb175
444 changed files with 4119 additions and 3798 deletions

View File

@@ -89,7 +89,7 @@ extern t_uint64 *M;
extern uint32 PC;
t_stat
binloader (FILE *fd, char *file, int loadpt)
binloader (FILE *fd, const char *file, int loadpt)
{
#ifdef DEBUGLOADER
FILE *lfd;

View File

@@ -84,18 +84,10 @@ t_stat cdp_chwr (uint32 ch, t_uint64 val, uint32 flags);
t_stat cdp_reset (DEVICE *dptr);
t_stat cdp_svc (UNIT *uptr);
t_stat cdp_card_end (UNIT *uptr);
t_stat cd_attach (UNIT *uptr, char *cptr);
t_stat cd_set_mode (UNIT *uptr, int32 val, char *cptr, void *desc);
t_stat cd_attach (UNIT *uptr, CONST char *cptr);
t_stat cd_set_mode (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
char colbin_to_bcd (uint32 cb);
extern uint32 PC;
extern uint32 ind_ioc;
extern char bcd_to_ascii_a[64];
extern char bcd_to_ascii_h[64];
extern uint32 bcd_to_colbin[64];
extern char ascii_to_bcd[128];
extern t_uint64 bit_masks[36];
extern uint32 col_masks[12];
/* Card reader data structures
@@ -311,7 +303,7 @@ return SCPE_OK;
/* Reader/punch attach */
t_stat cd_attach (UNIT *uptr, char *cptr)
t_stat cd_attach (UNIT *uptr, CONST char *cptr)
{
t_stat r;
@@ -331,7 +323,7 @@ return SCPE_OK;
/* Reader/punch set mode - valid only if not attached */
t_stat cd_set_mode (UNIT *uptr, int32 val, char *cptr, void *desc)
t_stat cd_set_mode (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
{
return (uptr->flags & UNIT_ATT)? SCPE_NOFNC: SCPE_OK;
}
@@ -422,7 +414,8 @@ return SCPE_OK;
t_stat cdp_card_end (UNIT *uptr)
{
uint32 i, col, row, bufw, colbin;
char *pch, bcd, cdp_cbuf[(2 * CD_CHRLNT) + 2];
const char *pch;
char bcd, cdp_cbuf[(2 * CD_CHRLNT) + 2];
t_uint64 dat;
if ((uptr->flags & UNIT_ATT) == 0) /* not attached? */

View File

@@ -221,12 +221,12 @@ t_stat coms_svc (UNIT *uptr);
t_stat comti_svc (UNIT *uptr);
t_stat comto_svc (UNIT *uptr);
t_stat com_reset (DEVICE *dptr);
t_stat com_attach (UNIT *uptr, char *cptr);
t_stat com_attach (UNIT *uptr, CONST char *cptr);
t_stat com_detach (UNIT *uptr);
t_stat com_show_ctrl (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat com_show_freeq (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat com_show_allq (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat com_show_oneq (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat com_show_ctrl (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
t_stat com_show_freeq (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
t_stat com_show_allq (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
t_stat com_show_oneq (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
void com_reset_ln (uint32 i);
uint16 com_get_nexti (uint32 *ln);
uint16 com_gethd_free (LISTHD *lh);
@@ -1085,7 +1085,7 @@ return SCPE_OK;
/* Attach master unit */
t_stat com_attach (UNIT *uptr, char *cptr)
t_stat com_attach (UNIT *uptr, CONST char *cptr)
{
t_stat r;
@@ -1129,7 +1129,7 @@ return;
/* Special show commands */
uint32 com_show_qsumm (FILE *st, LISTHD *lh, char *name)
uint32 com_show_qsumm (FILE *st, LISTHD *lh, const char *name)
{
uint32 i, next;
@@ -1160,13 +1160,13 @@ if (((ch & 07400) == 0) && (c >= 040) && (c != 0177))
return;
}
t_stat com_show_freeq (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat com_show_freeq (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
com_show_qsumm (st, &com_free, "Free queue");
return SCPE_OK;
}
t_stat com_show_oneq (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat com_show_oneq (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
uint32 entc, ln, i, next;
LISTHD *lh;
@@ -1189,7 +1189,7 @@ if ((entc = com_show_qsumm (st, lh, name))) {
return SCPE_OK;
}
t_stat com_show_allq (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat com_show_allq (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
uint32 i;
@@ -1198,7 +1198,7 @@ for (i = 0; i < COM_TLINES; i++)
return SCPE_OK;
}
t_stat com_show_ctrl (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat com_show_ctrl (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
if (!com_enab)
fprintf (st, "Controller is not initialized\n");

View File

@@ -217,10 +217,10 @@ extern DEVICE ch_dev[NUM_CHAN];
t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw);
t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw);
t_stat cpu_reset (DEVICE *dptr);
t_stat cpu_set_model (UNIT *uptr, int32 val, char *cptr, void *desc);
t_stat cpu_show_model (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat cpu_set_hist (UNIT *uptr, int32 val, char *cptr, void *desc);
t_stat cpu_show_hist (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat cpu_set_model (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
t_stat cpu_show_model (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
t_stat cpu_set_hist (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
t_stat cpu_show_hist (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
t_bool ReadI (uint32 va, t_uint64 *dat);
t_bool Read (uint32 va, t_uint64 *dat);
t_bool Write (uint32 va, t_uint64 dat);
@@ -2281,7 +2281,7 @@ return SCPE_OK;
/* Set model */
t_stat cpu_set_model (UNIT *uptr, int32 val, char *cptr, void *desc)
t_stat cpu_set_model (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
{
UNIT *chuptr = mt_dev[CHRONO_CH].units + CHRONO_UNIT;
extern DEVICE clk_dev;
@@ -2304,7 +2304,7 @@ return SCPE_OK;
/* Show CTSS */
t_stat cpu_show_model (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat cpu_show_model (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
if (cpu_model & I_CT)
fputs ("CTSS", st);
@@ -2360,7 +2360,7 @@ return;
/* Set history */
t_stat cpu_set_hist (UNIT *uptr, int32 val, char *cptr, void *desc)
t_stat cpu_set_hist (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
{
int32 i, lnt;
t_stat r;
@@ -2448,10 +2448,10 @@ return SCPE_OK;
/* Show history */
t_stat cpu_show_hist (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat cpu_show_hist (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
int32 k, di, lnt;
char *cptr = (char *) desc;
const char *cptr = (const char *) desc;
t_stat r;
InstHistory *h;

View File

@@ -471,7 +471,7 @@ typedef struct {
#define WriteP(p,d) M[p] = d
void cpu_ent_hist (uint32 pc, uint32 ea, t_uint64 ir, t_uint64 opnd);
t_stat ch_show_chan (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat ch_show_chan (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
t_stat ch6_end_nds (uint32 ch);
uint32 ch6_set_flags (uint32 ch, uint32 unit, uint32 flags);
t_stat ch6_err_disc (uint32 ch, uint32 unit, uint32 flags);
@@ -486,4 +486,19 @@ t_bool ch9_qconn (uint32 ch);
void ch_set_map (void);
t_bool ch_qidle (void);
extern const uint32 col_masks[12];
extern const t_uint64 bit_masks[36];
extern const char nine_to_ascii_a[64];
extern const char nine_to_ascii_h[64];
extern const char ascii_to_nine[128];
extern const char ascii_to_bcd[128];
extern const char bcd_to_ascii_a[64];
extern const char bcd_to_ascii_h[64];
extern const char bcd_to_pca[64];
extern const char bcd_to_pch[64];
extern const uint32 bcd_to_colbin[64];
extern uint32 PC;
extern uint32 ind_ioc;
#endif

View File

@@ -222,7 +222,7 @@
/* Data and declarations */
typedef struct {
char *name;
const char *name;
uint32 accpm; /* acc/module: 1 or 2 */
uint32 wdspt; /* wds/track: 500 or 1000 */
uint32 trkpc; /* trks/cyl: 1 or 40 */
@@ -313,8 +313,8 @@ extern uint32 ch_req;
t_stat dsk_svc (UNIT *uptr);
t_stat dsk_svc_sns (UNIT *uptr);
t_stat dsk_reset (DEVICE *dptr);
t_stat dsk_attach (UNIT *uptr, char *cptr);
t_stat dsk_set_size (UNIT *uptr, int32 val, char *cptr, void *desc);
t_stat dsk_attach (UNIT *uptr, CONST char *cptr);
t_stat dsk_set_size (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
t_stat dsk_chsel (uint32 ch, uint32 sel, uint32 unit);
t_stat dsk_chwr (uint32 ch, t_uint64 val, uint32 flags);
t_stat dsk_new_cmd (uint32 ch, t_uint64 cmd);
@@ -326,7 +326,7 @@ t_stat dsk_xfer_done (UNIT *uaptr, uint32 dtyp);
t_stat dsk_wr_trk (UNIT *uptr, uint32 trk);
t_bool dsk_get_fmtc (uint32 dtyp, uint8 *fc);
t_bool dsk_qdone (uint32 ch);
t_stat dsk_show_format (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat dsk_show_format (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
/* DSK data structures
@@ -1094,7 +1094,7 @@ return SCPE_OK;
/* Attach routine, test formating */
t_stat dsk_attach (UNIT *uptr, char *cptr)
t_stat dsk_attach (UNIT *uptr, CONST char *cptr)
{
uint32 dtyp = GET_DTYPE (uptr->flags);
t_stat r;
@@ -1111,7 +1111,7 @@ return dsk_show_format (stdout, uptr, 0, NULL);
/* Set disk size */
t_stat dsk_set_size (UNIT *uptr, int32 val, char *cptr, void *desc)
t_stat dsk_set_size (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
{
uint32 dtyp = GET_DTYPE (val);
uint32 u = uptr - dsk_dev.units;
@@ -1134,7 +1134,7 @@ return SCPE_OK;
/* Show format */
t_stat dsk_show_format (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat dsk_show_format (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
uint32 a, t, k, u, tlim, dtyp, da;
uint32 rptr, rlnt, rlim, rec, ctptr, *format;

View File

@@ -53,7 +53,7 @@
#define CHAINC(x) (((x) & ~AMASK) | (((x) + 1) & AMASK))
typedef struct {
char *name;
const char *name;
uint32 flags;
} DEV_CHAR;
@@ -91,9 +91,9 @@ extern DEVICE com_dev;
t_stat ch_reset (DEVICE *dptr);
t_stat ch6_svc (UNIT *uptr);
t_stat ch_set_enable (UNIT *uptr, int32 val, char *cptr, void *desc);
t_stat ch_set_disable (UNIT *uptr, int32 val, char *cptr, void *desc);
t_stat ch_show_type (FILE *st, UNIT *uptr, int32 val, void *desc);
t_stat ch_set_enable (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
t_stat ch_set_disable (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
t_stat ch_show_type (FILE *st, UNIT *uptr, int32 val, CONST void *desc);
DEVICE *ch_find_dev (uint32 ch, uint32 unit);
t_stat ch6_sel (uint32 ch, uint32 sel, uint32 unit, uint32 sta);
t_bool ch6_rd_putw (uint32 ch);
@@ -1770,7 +1770,7 @@ return SCPE_OK;
/* Show channel type */
t_stat ch_show_type (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat ch_show_type (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
DEVICE *dptr;
@@ -1787,7 +1787,7 @@ return SCPE_OK;
/* Enable channel, assign device */
t_stat ch_set_enable (UNIT *uptr, int32 val, char *cptr, void *desc)
t_stat ch_set_enable (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
{
DEVICE *dptr, *dptr1;
char gbuf[CBUFSIZE];
@@ -1848,7 +1848,7 @@ return;
/* Disable channel, deassign device */
t_stat ch_set_disable (UNIT *uptr, int32 val, char *cptr, void *desc)
t_stat ch_set_disable (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
{
DEVICE *dptr, *dptr1;
UNIT *uptr1;
@@ -1879,7 +1879,7 @@ return reset_all (0);
/* Show channel that device is on (tapes, 7289, 7909 only) */
t_stat ch_show_chan (FILE *st, UNIT *uptr, int32 val, void *desc)
t_stat ch_show_chan (FILE *st, UNIT *uptr, int32 val, CONST void *desc)
{
DEVICE *dptr;
uint32 i;

View File

@@ -114,15 +114,7 @@ static const uint8 echo_map[LPT_BINLNT + LPT_ECHLNT] = {
18+ECHO_F, 19+ECHO_F, 20+ECHO_F, 21+ECHO_F
};
extern uint32 ind_ioc;
extern t_uint64 bit_masks[36];
extern uint32 col_masks[12];
extern char bcd_to_ascii_a[64];
extern char bcd_to_ascii_h[64];
extern char bcd_to_pca[64];
extern char bcd_to_pch[64];
char *pch_table[4] = {
const char *pch_table[4] = {
bcd_to_ascii_h, bcd_to_ascii_a, bcd_to_pch, bcd_to_pca,
};
@@ -315,7 +307,8 @@ return SCPE_OK;
t_stat lpt_end_line (UNIT *uptr)
{
uint32 i, col, row, bufw, colbin;
char *pch, bcd, lpt_cbuf[LPT_CHRLNT + 1];
const char *pch;
char bcd, lpt_cbuf[LPT_CHRLNT + 1];
t_uint64 dat;
pch = pch_table[GET_PCHAIN (lpt_unit.flags)]; /* get print chain */

View File

@@ -79,7 +79,7 @@ t_stat mt_chwr (uint32 ch, t_uint64 val, uint32 flags);
t_stat mt_rec_end (UNIT *uptr);
t_stat mt_svc (UNIT *uptr);
t_stat mt_reset (DEVICE *dptr);
t_stat mt_attach (UNIT *uptr, char *cptr);
t_stat mt_attach (UNIT *uptr, CONST char *cptr);
t_stat mt_boot (int32 unitno, DEVICE *dptr);
t_stat mt_map_err (UNIT *uptr, t_stat st);
@@ -833,7 +833,7 @@ return SCPE_OK; /* done */
/* Magtape attach */
t_stat mt_attach (UNIT *uptr, char *cptr)
t_stat mt_attach (UNIT *uptr, CONST char *cptr)
{
uptr->flags = uptr->flags & ~MTUF_LDN; /* start as hi den */
return sim_tape_attach (uptr, cptr);

View File

@@ -129,9 +129,9 @@ return STOP_CHBKPT;
/* Binary loader, not implemented */
t_stat sim_load (FILE *fileref, char *cptr, char *fnam, int flag)
t_stat sim_load (FILE *fileref, CONST char *cptr, CONST char *fnam, int flag)
{
extern t_stat binloader (FILE *fd, char *file, int loadpt);
extern t_stat binloader (FILE *fd, const char *file, int loadpt);
if (flag == 0)
return binloader (fileref, cptr, 0);
@@ -702,7 +702,7 @@ else return nine_to_ascii_h[c];
status = error status
*/
t_stat parse_sym (char *cptr, t_addr addr, UNIT *uptr, t_value *val, int32 sw)
t_stat parse_sym (CONST char *cptr, t_addr addr, UNIT *uptr, t_value *val, int32 sw)
{
uint32 i, j, c;
t_uint64 fld[3];