mirror of
https://github.com/simh/simh.git
synced 2026-01-27 20:37:50 +00:00
simh 3.10-RC1a
3.10 is mostly an attempt to get aligned with the current head of the GitHub 4.0 sources. While the core libraries and SCP have diverged too far for real forward and backward compatibility, enough 4.0 workalikes have been added to allow much closer convergence of the two streams. 3.10 will provide the basis for my future simulation work.
This commit is contained in:
committed by
Mark Pizzolato
parent
140ab5b350
commit
3fada8da5a
49
sim_defs.h
49
sim_defs.h
@@ -1,6 +1,6 @@
|
||||
/* sim_defs.h: simulator definitions
|
||||
|
||||
Copyright (c) 1993-2016, Robert M Supnik
|
||||
Copyright (c) 1993-2017, 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"),
|
||||
@@ -23,6 +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.
|
||||
|
||||
23-Jun-17 RMS Added #include sim_rev.h (Mark Pizzolato)
|
||||
25-Sep-16 RMS Removed KBD_WAIT and friends
|
||||
08-Mar-16 RMS Added shutdown invisible switch
|
||||
03-Feb-16 JDB [4.0] Added "help_base" and "message" fields to sim_ctab
|
||||
@@ -32,7 +33,7 @@
|
||||
05-Feb-13 JDB Added REG_V_UF and REG_UFMASK for VM-specific register flags
|
||||
21-Jul-08 RMS Removed inlining support
|
||||
28-May-08 RMS Added inlining support
|
||||
28-Jun-07 RMS Added IA64 VMS support (from Norm Lastovica)
|
||||
28-Jun-07 RMS Added IA64 VMS support (Norm Lastovica)
|
||||
18-Jun-07 RMS Added UNIT_IDLE flag
|
||||
18-Mar-07 RMS Added UNIT_TEXT flag
|
||||
07-Mar-07 JDB Added DEBUG_PRJ macro
|
||||
@@ -110,6 +111,7 @@
|
||||
#ifndef _SIM_DEFS_H_
|
||||
#define _SIM_DEFS_H_ 0
|
||||
|
||||
#include "sim_rev.h"
|
||||
#include <stddef.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
@@ -262,6 +264,8 @@ typedef uint32 t_addr;
|
||||
#define SCPE_BREAK 0020000 /* tti break flag */
|
||||
#define SCPE_DOFAILED 0040000 /* fail in DO, not subproc */
|
||||
|
||||
#define SCPE_NOMESSAGE 0 /* 4.x compatiblity */
|
||||
|
||||
/* Print value format codes */
|
||||
|
||||
#define PV_RZRO 0 /* right, zero fill */
|
||||
@@ -452,7 +456,7 @@ struct sim_ctab {
|
||||
/* action routine */
|
||||
int32 arg; /* argument */
|
||||
char *help; /* help string */
|
||||
const char *help_base; /* [4.0] structured help base*/
|
||||
const char *help_base; /* [4.0] structured help base */
|
||||
void (*message)(const char *unechoed_cmdline, t_stat stat);
|
||||
/* [4.0] message printing routine */
|
||||
};
|
||||
@@ -487,7 +491,7 @@ struct sim_mtab {
|
||||
void *desc; /* value descriptor */
|
||||
/* REG * if MTAB_VAL */
|
||||
/* int * if not */
|
||||
void *help; /* (4.0 dummy) */
|
||||
void *help; /* [4.0] help */
|
||||
};
|
||||
|
||||
#define MTAB_XTD (1u << UNIT_V_RSV) /* ext entry flag */
|
||||
@@ -571,8 +575,17 @@ typedef struct sim_debtab DEBTAB;
|
||||
#include "sim_console.h"
|
||||
#include "sim_timer.h"
|
||||
#include "sim_fio.h"
|
||||
#include "sim_sock.h"
|
||||
|
||||
/* V4 compatibility definitions
|
||||
|
||||
The SCP API for version 4.0 introduces a number of "pointer-to-const"
|
||||
parameter qualifiers that were not present in the 3.x versions. To maintain
|
||||
compatibility with the earlier versions, the new qualifiers are expressed as
|
||||
"CONST" rather than "const". This allows macro removal of the qualifiers
|
||||
when compiling for SIMH 3.x.
|
||||
*/
|
||||
|
||||
/* V4 compatibility definitions */
|
||||
|
||||
#if defined (__STDC__) || defined (_WIN32)
|
||||
#define ORDATAD(nm,loc,wd,desc) #nm, &(loc), 8, (wd), 0, 1
|
||||
@@ -610,21 +623,25 @@ typedef struct sim_debtab DEBTAB;
|
||||
"nm", &(loc), (rdx), (wd), (off), (dep), ((fl) | REG_UNIT)
|
||||
#endif
|
||||
|
||||
#define INT64_C(x) (x)
|
||||
#ifndef INT64_C
|
||||
#define INT64_C(x) (x##LL)
|
||||
#endif
|
||||
|
||||
/* SCP API shim.
|
||||
|
||||
The SCP API for version 4.0 introduces a number of "pointer-to-const"
|
||||
parameter qualifiers that were not present in the 3.x versions. To maintain
|
||||
compatibility with the earlier versions, the new qualifiers are expressed as
|
||||
"CONST" rather than "const". This allows macro removal of the qualifiers
|
||||
when compiling for SIMH 3.x.
|
||||
*/
|
||||
|
||||
#include "sim_sock.h"
|
||||
#ifdef PF_USER
|
||||
#undef PF_USER
|
||||
#endif /* PF_USER */
|
||||
#ifdef I_POP
|
||||
#undef I_POP
|
||||
#endif /* I_POP */
|
||||
#ifdef CONST
|
||||
#undef CONST
|
||||
#endif /* CONST */
|
||||
#define CONST
|
||||
#ifndef PRIORITY_ABOVE_NORMAL
|
||||
#define PRIORITY_ABOVE_NORMAL 0
|
||||
#endif
|
||||
#define sim_os_set_thread_priority(prio)
|
||||
|
||||
#define BRK_TYP_DYN_STEPOVER 0
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user