mirror of
https://github.com/simh/simh.git
synced 2026-01-25 11:46:37 +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:
@@ -206,7 +206,7 @@ extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */
|
||||
|
||||
|
||||
struct idev {
|
||||
int32 (*routine)();
|
||||
int32 (*routine)(int32, int32);
|
||||
};
|
||||
|
||||
/* This is the I/O configuration table. There are 256 possible
|
||||
@@ -290,7 +290,7 @@ DEVICE i8080_dev = {
|
||||
};
|
||||
|
||||
/* tables for the disassembler */
|
||||
char *opcode[] = {
|
||||
const char *opcode[] = {
|
||||
"NOP", "LXI B,", "STAX B", "INX B", /* 0x00 */
|
||||
"INR B", "DCR B", "MVI B,", "RLC",
|
||||
"???", "DAD B", "LDAX B", "DCX B",
|
||||
@@ -1278,7 +1278,7 @@ t_stat i8080_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw)
|
||||
starts at the current value of the PC.
|
||||
*/
|
||||
|
||||
int32 sim_load (FILE *fileref, char *cptr, char *fnam, int flag)
|
||||
int32 sim_load (FILE *fileref, CONST char *cptr, CONST char *fnam, int flag)
|
||||
{
|
||||
int32 i, addr = 0, cnt = 0;
|
||||
|
||||
@@ -1354,7 +1354,7 @@ t_stat fprint_sym (FILE *of, t_addr addr, t_value *val,
|
||||
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)
|
||||
{
|
||||
int32 cflag, i = 0, j, r;
|
||||
char gbuf[CBUFSIZE];
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
#define TXE 0x04
|
||||
#define SD 0x40
|
||||
|
||||
extern int32 reg_dev(int32 (*routine)(), int32 port);
|
||||
extern int32 reg_dev(int32 (*routine)(int32, int32), int32 port);
|
||||
|
||||
/* function prototypes */
|
||||
|
||||
|
||||
@@ -100,7 +100,7 @@ t_stat i8255_reset (DEVICE *dptr, int32 base);
|
||||
|
||||
/* external function prototypes */
|
||||
|
||||
extern int32 reg_dev(int32 (*routine)(), int32 port);
|
||||
extern int32 reg_dev(int32 (*routine)(int32, int32), int32 port);
|
||||
|
||||
/* globals */
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@ t_stat i8259_reset (DEVICE *dptr, int32 base);
|
||||
|
||||
/* external function prototypes */
|
||||
|
||||
extern int32 reg_dev(int32 (*routine)(), int32 port);
|
||||
extern int32 reg_dev(int32 (*routine)(int32, int32), int32 port);
|
||||
|
||||
/* globals */
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
|
||||
/* function prototypes */
|
||||
|
||||
t_stat EPROM_attach (UNIT *uptr, char *cptr);
|
||||
t_stat EPROM_attach (UNIT *uptr, CONST char *cptr);
|
||||
t_stat EPROM_reset (DEVICE *dptr, int32 size);
|
||||
int32 EPROM_get_mbyte(uint32 addr);
|
||||
|
||||
@@ -100,7 +100,7 @@ DEVICE EPROM_dev = {
|
||||
|
||||
/* EPROM attach */
|
||||
|
||||
t_stat EPROM_attach (UNIT *uptr, char *cptr)
|
||||
t_stat EPROM_attach (UNIT *uptr, CONST char *cptr)
|
||||
{
|
||||
uint16 j;
|
||||
int c;
|
||||
|
||||
@@ -473,8 +473,8 @@
|
||||
t_stat isbc208_svc (UNIT *uptr);
|
||||
t_stat isbc208_reset (DEVICE *dptr);
|
||||
void isbc208_reset1 (void);
|
||||
t_stat isbc208_attach (UNIT *uptr, char *cptr);
|
||||
t_stat isbc208_set_mode (UNIT *uptr, int32 val, char *cptr, void *desc);
|
||||
t_stat isbc208_attach (UNIT *uptr, CONST char *cptr);
|
||||
t_stat isbc208_set_mode (UNIT *uptr, int32 val, CONST char *cptr, void *desc);
|
||||
int32 isbc208_r0(int32 io, int32 data);
|
||||
int32 isbc208_r1(int32 io, int32 data);
|
||||
int32 isbc208_r2(int32 io, int32 data);
|
||||
@@ -502,7 +502,7 @@ int32 isbc208_r15(int32 io, int32 data);
|
||||
|
||||
extern void set_irq(int32 int_num);
|
||||
extern void clr_irq(int32 int_num);
|
||||
extern int32 reg_dev(int32 (*routine)(), int32 port);
|
||||
extern int32 reg_dev(int32 (*routine)(int32, int32), int32 port);
|
||||
extern void multibus_put_mbyte(int32 addr, int32 val);
|
||||
extern int32 multibus_get_mbyte(int32 addr);
|
||||
|
||||
@@ -1137,7 +1137,7 @@ void isbc208_reset1 (void)
|
||||
|
||||
/* isbc208 attach - attach an .IMG file to a FDD */
|
||||
|
||||
t_stat isbc208_attach (UNIT *uptr, char *cptr)
|
||||
t_stat isbc208_attach (UNIT *uptr, CONST char *cptr)
|
||||
{
|
||||
t_stat r;
|
||||
FILE *fp;
|
||||
@@ -1159,7 +1159,7 @@ t_stat isbc208_attach (UNIT *uptr, char *cptr)
|
||||
flen = ftell(fp);
|
||||
fseek(fp, 0, SEEK_SET);
|
||||
if (isbc208_buf[uptr->u6] == NULL) { /* no buffer allocated */
|
||||
isbc208_buf[uptr->u6] = malloc(flen);
|
||||
isbc208_buf[uptr->u6] = (uint8 *)malloc(flen);
|
||||
if (isbc208_buf[uptr->u6] == NULL) {
|
||||
sim_printf(" iSBC208_attach: Malloc error\n");
|
||||
return SCPE_MEM;
|
||||
@@ -1199,7 +1199,7 @@ t_stat isbc208_attach (UNIT *uptr, char *cptr)
|
||||
|
||||
/* isbc208 set mode = 8- or 16-bit data bus */
|
||||
|
||||
t_stat isbc208_set_mode (UNIT *uptr, int32 val, char *cptr, void *desc)
|
||||
t_stat isbc208_set_mode (UNIT *uptr, int32 val, CONST char *cptr, void *desc)
|
||||
{
|
||||
sim_debug (DEBUG_flow, &isbc208_dev, " isbc208_set_mode: Entered with val=%08XH uptr->flags=%08X\n",
|
||||
val, uptr->flags);
|
||||
|
||||
@@ -49,7 +49,7 @@ t_stat multibus_reset(DEVICE *dptr);
|
||||
void set_irq(int32 int_num);
|
||||
void clr_irq(int32 int_num);
|
||||
int32 nulldev(int32 io, int32 data);
|
||||
int32 reg_dev(int32 (*routine)(), int32 port);
|
||||
int32 reg_dev(int32 (*routine)(int32, int32), int32 port);
|
||||
t_stat multibus_reset (DEVICE *dptr);
|
||||
int32 multibus_get_mbyte(int32 addr);
|
||||
int32 multibus_get_mword(int32 addr);
|
||||
@@ -166,7 +166,7 @@ device addresses, if a device is plugged to a port it's routine
|
||||
address is here, 'nulldev' means no device is available
|
||||
*/
|
||||
struct idev {
|
||||
int32 (*routine)();
|
||||
int32 (*routine)(int32, int32);
|
||||
};
|
||||
|
||||
struct idev dev_table[256] = {
|
||||
@@ -244,7 +244,7 @@ int32 nulldev(int32 flag, int32 data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int32 reg_dev(int32 (*routine)(), int32 port)
|
||||
int32 reg_dev(int32 (*routine)(int32, int32), int32 port)
|
||||
{
|
||||
if (dev_table[port].routine != &nulldev) { /* port already assigned */
|
||||
// sim_printf("Multibus: I/O Port %02X is already assigned\n", port);
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
|
||||
#include "system_defs.h"
|
||||
|
||||
extern int32 reg_dev(int32 (*routine)(), int32 port);
|
||||
extern int32 reg_dev(int32 (*routine)(int32, int32), int32 port);
|
||||
|
||||
/* function prototypes */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user