mirror of
https://github.com/simh/simh.git
synced 2026-01-27 04:22:24 +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:
@@ -52,8 +52,8 @@ 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_boot(int32 unitnum, DEVICE *dptr);
|
||||
t_stat cpu_reset (DEVICE *dptr);
|
||||
t_stat cpu_set_size (UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
t_stat cpu_show_size (FILE *st, UNIT *uptr, int32 val, void *desc);
|
||||
t_stat cpu_set_size (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
|
||||
t_stat cpu_show_size (FILE *st, UNIT *uptr, int32 val, const void *desc);
|
||||
|
||||
/* some forwards */
|
||||
static t_stat Raise(uint16 err);
|
||||
@@ -68,8 +68,8 @@ static t_stat DoSIGNAL(uint16 sem);
|
||||
static uint16 Get(t_addr addr);
|
||||
static void Put(t_addr addr, uint16 val);
|
||||
static uint16 GetSIB(uint8 segno);
|
||||
static t_stat cpu_set_flag(UNIT *uptr, int32 value, char *cptr, void *desc);
|
||||
static t_stat cpu_set_noflag(UNIT *uptr, int32 value, char *cptr, void *desc);
|
||||
static t_stat cpu_set_flag(UNIT *uptr, int32 value, CONST char *cptr, void *desc);
|
||||
static t_stat cpu_set_noflag(UNIT *uptr, int32 value, CONST char *cptr, void *desc);
|
||||
|
||||
static t_stat ssr_read(t_addr ioaddr, uint16 *data);
|
||||
static t_stat ssr_write(t_addr ioaddr, uint16 data);
|
||||
@@ -1600,12 +1600,12 @@ t_stat sim_instr(void)
|
||||
return rc;
|
||||
}
|
||||
|
||||
static t_stat cpu_set_flag(UNIT *uptr, int32 value, char *cptr, void *desc) {
|
||||
static t_stat cpu_set_flag(UNIT *uptr, int32 value, CONST char *cptr, void *desc) {
|
||||
uptr->flags |= value;
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
static t_stat cpu_set_noflag(UNIT *uptr, int32 value, char *cptr, void *desc) {
|
||||
static t_stat cpu_set_noflag(UNIT *uptr, int32 value, CONST char *cptr, void *desc) {
|
||||
uptr->flags &= ~value;
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
@@ -291,7 +291,7 @@
|
||||
#define OP_AB 13
|
||||
|
||||
typedef struct _optable {
|
||||
char* name;
|
||||
const char* name;
|
||||
int16 flags;
|
||||
} OPTABLE;
|
||||
extern OPTABLE optable[];
|
||||
@@ -367,7 +367,7 @@ extern t_stat con_binit();
|
||||
extern t_stat fdc_boot(int32 unitnum, DEVICE *dptr);
|
||||
extern t_stat fdc_read(t_addr ioaddr, uint16 *data);
|
||||
extern t_stat fdc_write(t_addr ioaddr, uint16 data);
|
||||
extern t_stat fdc_autoload();
|
||||
extern t_stat fdc_autoload(int unitnum);
|
||||
extern t_stat fdc_binit();
|
||||
extern t_stat tim_read(t_addr ioaddr, uint16 *data);
|
||||
extern t_stat tim_write(t_addr ioaddr, uint16 data);
|
||||
@@ -399,11 +399,11 @@ typedef struct _devctxt {
|
||||
extern t_stat pdq3_ioinit();
|
||||
extern t_stat add_ioh(IOINFO* ioi);
|
||||
extern t_stat del_ioh(IOINFO* ioi);
|
||||
extern t_stat set_iobase(UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
extern t_stat show_iobase(FILE *st, UNIT *uptr, int32 val, void *desc);
|
||||
extern t_stat set_iovec(UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
extern t_stat show_iovec(FILE *st, UNIT *uptr, int value, void *desc);
|
||||
extern t_stat set_ioprio(UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
extern t_stat show_ioprio(FILE *st, UNIT *uptr, int value, void *desc);
|
||||
extern t_stat set_iobase(UNIT *uptr, int32 val, CONST char *cptr, void *desc);
|
||||
extern t_stat show_iobase(FILE *st, UNIT *uptr, int32 val, CONST void *desc);
|
||||
extern t_stat set_iovec(UNIT *uptr, int32 val, CONST char *cptr, void *desc);
|
||||
extern t_stat show_iovec(FILE *st, UNIT *uptr, int value, CONST void *desc);
|
||||
extern t_stat set_ioprio(UNIT *uptr, int32 val, CONST char *cptr, void *desc);
|
||||
extern t_stat show_ioprio(FILE *st, UNIT *uptr, int value, CONST void *desc);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -162,9 +162,9 @@ extern UNIT cpu_unit;
|
||||
/* forwards */
|
||||
t_stat fdc_svc (UNIT *uptr);
|
||||
t_stat fdc_reset (DEVICE *uptr);
|
||||
t_stat fdc_attach(UNIT *uptr, char *cptr);
|
||||
t_stat fdc_attach(UNIT *uptr, CONST char *cptr);
|
||||
t_stat fdc_detach(UNIT *uptr);
|
||||
t_stat pdq3_diskCreate(FILE *fileref, char *ctlr_comment);
|
||||
t_stat pdq3_diskCreate(FILE *fileref, const char *ctlr_comment);
|
||||
t_stat pdq3_diskFormat(DISK_INFO *myDisk);
|
||||
static void dma_reqinterrupt();
|
||||
|
||||
@@ -271,7 +271,7 @@ t_stat fdc_boot(int32 unitnum, DEVICE *dptr) {
|
||||
return fdc_autoload(unitnum);
|
||||
}
|
||||
|
||||
t_stat fdc_attach(UNIT *uptr, char *cptr) {
|
||||
t_stat fdc_attach(UNIT *uptr, CONST char *cptr) {
|
||||
t_stat rc;
|
||||
int i = uptr->u_unitno;
|
||||
char header[4];
|
||||
@@ -811,7 +811,7 @@ static DRVDATA *fdc_select() {
|
||||
return curdrv;
|
||||
}
|
||||
|
||||
static char *cmdlist[] = {
|
||||
static const char *cmdlist[] = {
|
||||
"Restore","Seek","Step","Step+Upd","StepIn","StepIn+Upd",
|
||||
"StepOut","StepOut+Upd","Read","Read+Multi","Write","WriteMulti",
|
||||
"ReadAddr","ForceInt","ReadTrack","WriteTrack"
|
||||
@@ -1076,7 +1076,7 @@ t_stat fdc_read(t_addr ioaddr, uint16 *data) {
|
||||
*
|
||||
* If the IMD file already exists, the user will be given the option of overwriting it.
|
||||
*/
|
||||
t_stat pdq3_diskCreate(FILE *fileref, char *ctlr_comment) {
|
||||
t_stat pdq3_diskCreate(FILE *fileref, const char *ctlr_comment) {
|
||||
DISK_INFO *myDisk = NULL;
|
||||
char *comment;
|
||||
char *curptr;
|
||||
@@ -1096,7 +1096,7 @@ t_stat pdq3_diskCreate(FILE *fileref, char *ctlr_comment) {
|
||||
}
|
||||
}
|
||||
|
||||
if((curptr = comment = calloc(1, MAX_COMMENT_LEN)) == 0) {
|
||||
if((curptr = comment = (char *)calloc(1, MAX_COMMENT_LEN)) == 0) {
|
||||
sim_printf("PDQ3_IMD: Memory allocation failure.\n");
|
||||
return (SCPE_MEM);
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ t_stat del_ioh(IOINFO* ioi) {
|
||||
/******************************************************************************
|
||||
* configuration
|
||||
*****************************************************************************/
|
||||
t_stat show_iobase(FILE *st, UNIT *uptr, int32 val, void *desc) {
|
||||
t_stat show_iobase(FILE *st, UNIT *uptr, int32 val, CONST void *desc) {
|
||||
DEVICE* dptr;
|
||||
DEVCTXT* ctxt;
|
||||
IOINFO* ioi;
|
||||
@@ -108,7 +108,7 @@ t_stat show_iobase(FILE *st, UNIT *uptr, int32 val, void *desc) {
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
t_stat set_iobase(UNIT *uptr, int32 val, char *cptr, void *desc) {
|
||||
t_stat set_iobase(UNIT *uptr, int32 val, CONST char *cptr, void *desc) {
|
||||
t_stat rc;
|
||||
DEVICE* dptr;
|
||||
DEVCTXT* ctxt;
|
||||
@@ -124,7 +124,7 @@ t_stat set_iobase(UNIT *uptr, int32 val, char *cptr, void *desc) {
|
||||
return rc;
|
||||
}
|
||||
|
||||
t_stat set_iovec(UNIT *uptr, int32 val, char *cptr, void *desc) {
|
||||
t_stat set_iovec(UNIT *uptr, int32 val, CONST char *cptr, void *desc) {
|
||||
t_stat rc;
|
||||
DEVICE* dptr;
|
||||
DEVCTXT* ctxt;
|
||||
@@ -140,7 +140,7 @@ t_stat set_iovec(UNIT *uptr, int32 val, char *cptr, void *desc) {
|
||||
return rc;
|
||||
}
|
||||
|
||||
t_stat show_iovec(FILE *st, UNIT *uptr, int value, void *desc) {
|
||||
t_stat show_iovec(FILE *st, UNIT *uptr, int value, CONST void *desc) {
|
||||
DEVICE* dptr;
|
||||
DEVCTXT* ctxt;
|
||||
IOINFO* ioi;
|
||||
@@ -159,7 +159,7 @@ t_stat show_iovec(FILE *st, UNIT *uptr, int value, void *desc) {
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
t_stat set_ioprio(UNIT *uptr, int32 val, char *cptr, void *desc) {
|
||||
t_stat set_ioprio(UNIT *uptr, int32 val, CONST char *cptr, void *desc) {
|
||||
t_stat rc;
|
||||
DEVICE* dptr;
|
||||
DEVCTXT* ctxt;
|
||||
@@ -175,7 +175,7 @@ t_stat set_ioprio(UNIT *uptr, int32 val, char *cptr, void *desc) {
|
||||
return rc;
|
||||
}
|
||||
|
||||
t_stat show_ioprio(FILE *st, UNIT *uptr, int value, void *desc) {
|
||||
t_stat show_ioprio(FILE *st, UNIT *uptr, int value, CONST void *desc) {
|
||||
DEVICE* dptr;
|
||||
DEVCTXT* ctxt;
|
||||
IOINFO* ioi;
|
||||
@@ -316,7 +316,7 @@ t_stat WriteB(t_addr base, t_addr boffset, uint16 data, uint32 dctrl)
|
||||
return Write(ea, 0, wdata, 0);
|
||||
}
|
||||
|
||||
t_stat cpu_set_size (UNIT *uptr, int32 val, char *cptr, void *desc)
|
||||
t_stat cpu_set_size (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
|
||||
{
|
||||
int32 mc;
|
||||
t_addr i;
|
||||
|
||||
@@ -35,12 +35,12 @@
|
||||
|
||||
t_stat parse_sym_m (char *cptr, t_value *val, int32 sw);
|
||||
void pdq3_vm_init (void);
|
||||
static t_stat pdq3_cmd_exstack(int32 arg, char *buf);
|
||||
static t_stat pdq3_cmd_exmscw(int32 arg, char *buf);
|
||||
static t_stat pdq3_cmd_extib(int32 arg, char *buf);
|
||||
static t_stat pdq3_cmd_exseg(int32 arg, char *buf);
|
||||
static t_stat pdq3_cmd_calltree(int32 arg, char *buf);
|
||||
static t_stat pdq3_cmd_namealias(int32 arg, char *buf);
|
||||
static t_stat pdq3_cmd_exstack(int32 arg, CONST char *buf);
|
||||
static t_stat pdq3_cmd_exmscw(int32 arg, CONST char *buf);
|
||||
static t_stat pdq3_cmd_extib(int32 arg, CONST char *buf);
|
||||
static t_stat pdq3_cmd_exseg(int32 arg, CONST char *buf);
|
||||
static t_stat pdq3_cmd_calltree(int32 arg, CONST char *buf);
|
||||
static t_stat pdq3_cmd_namealias(int32 arg, CONST char *buf);
|
||||
|
||||
extern DEVICE cpu_dev;
|
||||
extern UNIT cpu_unit;
|
||||
@@ -94,10 +94,10 @@ CTAB pdq3_cmds[] = {
|
||||
{ NULL, NULL, 0, NULL }
|
||||
};
|
||||
|
||||
void (*sim_vm_init)(void) = &pdq3_vm_init;
|
||||
WEAK void (*sim_vm_init)(void) = &pdq3_vm_init;
|
||||
|
||||
/* Loader proper */
|
||||
t_stat sim_load (FILE *fi, char *cptr, char *fnam, int flag)
|
||||
t_stat sim_load (FILE *fi, CONST char *cptr, CONST char *fnam, int flag)
|
||||
{
|
||||
int rombase;
|
||||
int c1, c2, i;
|
||||
@@ -155,7 +155,7 @@ void pdq3_fprint_addr (FILE *st, DEVICE *dptr, t_addr addr)
|
||||
return;
|
||||
}
|
||||
|
||||
t_addr pdq3_parse_addr (DEVICE *dptr, const char *cptr, const char **tptr)
|
||||
t_addr pdq3_parse_addr (DEVICE *dptr, CONST char *cptr, CONST char **tptr)
|
||||
{
|
||||
t_addr seg, off;
|
||||
if (cptr[0] == '#') {
|
||||
@@ -188,7 +188,7 @@ void pdq3_vm_init (void)
|
||||
return;
|
||||
}
|
||||
|
||||
static t_stat pdq3_cmd_exstack(int32 arg, char *buf)
|
||||
static t_stat pdq3_cmd_exstack(int32 arg, CONST char *buf)
|
||||
{
|
||||
t_stat rc;
|
||||
uint16 data;
|
||||
@@ -205,24 +205,24 @@ static t_stat pdq3_cmd_exstack(int32 arg, char *buf)
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
static t_stat pdq3_cmd_exmscw(int32 arg, char *buf)
|
||||
static t_stat pdq3_cmd_exmscw(int32 arg, CONST char *buf)
|
||||
{
|
||||
const char* next;
|
||||
CONST char* next;
|
||||
return dbg_dump_mscw(stdout, buf[0] ? pdq3_parse_addr(&cpu_dev, buf, &next) : reg_mp);
|
||||
}
|
||||
|
||||
static t_stat pdq3_cmd_extib(int32 arg, char *buf)
|
||||
static t_stat pdq3_cmd_extib(int32 arg, CONST char *buf)
|
||||
{
|
||||
const char* next;
|
||||
CONST char* next;
|
||||
return dbg_dump_tib(stdout, buf[0] ? pdq3_parse_addr(&cpu_dev, buf, &next) : reg_ctp);
|
||||
}
|
||||
|
||||
static t_stat pdq3_cmd_exseg(int32 arg, char *buf)
|
||||
static t_stat pdq3_cmd_exseg(int32 arg, CONST char *buf)
|
||||
{
|
||||
t_stat rc;
|
||||
uint16 nsegs;
|
||||
uint16 segnum, segptr;
|
||||
const char* next;
|
||||
CONST char* next;
|
||||
FILE* fd = stdout; /* XXX */
|
||||
|
||||
if (reg_ssv < 0x2030 || reg_ssv > 0xf000) {
|
||||
@@ -246,17 +246,19 @@ static t_stat pdq3_cmd_exseg(int32 arg, char *buf)
|
||||
return rc;
|
||||
}
|
||||
|
||||
static t_stat pdq3_cmd_calltree(int32 arg, char *buf) {
|
||||
static t_stat pdq3_cmd_calltree(int32 arg, CONST char *buf) {
|
||||
return dbg_calltree(stdout);
|
||||
}
|
||||
|
||||
static t_stat pdq3_cmd_namealias(int32 arg, char *buf) {
|
||||
char* name, *alias;
|
||||
static t_stat pdq3_cmd_namealias(int32 arg, CONST char *buf) {
|
||||
char* name, *alias, gbuf[2*CBUFSIZE];
|
||||
|
||||
if (buf[0]==0)
|
||||
return dbg_listalias(stdout);
|
||||
|
||||
name = strtok(buf, " \t");
|
||||
gbuf[sizeof(gbuf)-1] = '\0';
|
||||
strncpy (gbuf, buf, sizeof(gbuf)-1);
|
||||
name = strtok(gbuf, " \t");
|
||||
alias = strtok(NULL, " \t\n");
|
||||
return dbg_enteralias(name,alias);
|
||||
}
|
||||
@@ -616,7 +618,7 @@ t_stat fprint_sym (FILE *of, t_addr addr, t_value *val,
|
||||
Outputs:
|
||||
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)
|
||||
{
|
||||
return SCPE_ARG;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user