SCP: Fix errant display of NEXT warning on first STEP command. From Peter Schorn

Better display in SHOW VERSION of full compiler name on OSX when using the clang LLVM compilers
Change stray non-ascii quote characters in comments.
This commit is contained in:
Mark Pizzolato 2014-04-18 04:58:27 -07:00
parent 92e3acb2f3
commit e8114cf088
2 changed files with 8 additions and 8 deletions

10
scp.c
View file

@ -3679,10 +3679,10 @@ if (flag) {
fprintf (st, "\n\t\tAsynchronous Clock support"); fprintf (st, "\n\t\tAsynchronous Clock support");
#endif #endif
fprintf (st, "\n\tHost Platform:"); fprintf (st, "\n\tHost Platform:");
#if defined (__clang_version__) #if defined (__GNUC__) && defined (__VERSION__)
fprintf (st, "\n\t\tCompiler: clang %s", __clang_version__);
#elif defined (__GNUC__) && defined (__VERSION__)
fprintf (st, "\n\t\tCompiler: GCC %s", __VERSION__); fprintf (st, "\n\t\tCompiler: GCC %s", __VERSION__);
#elif defined (__clang_version__)
fprintf (st, "\n\t\tCompiler: clang %s", __clang_version__);
#elif defined (_MSC_FULL_VER) && defined (_MSC_BUILD) #elif defined (_MSC_FULL_VER) && defined (_MSC_BUILD)
fprintf (st, "\n\t\tCompiler: Microsoft Visual C++ %d.%02d.%05d.%02d", _MSC_FULL_VER/10000000, (_MSC_FULL_VER/100000)%100, _MSC_FULL_VER%100000, _MSC_BUILD); fprintf (st, "\n\t\tCompiler: Microsoft Visual C++ %d.%02d.%05d.%02d", _MSC_FULL_VER/10000000, (_MSC_FULL_VER/100000)%100, _MSC_FULL_VER%100000, _MSC_BUILD);
#elif defined (__DECC_VER) #elif defined (__DECC_VER)
@ -5255,12 +5255,12 @@ else if ((flag == RU_STEP) ||
((flag == RU_NEXT) && !sim_vm_is_subroutine_call)) { /* step */ ((flag == RU_NEXT) && !sim_vm_is_subroutine_call)) { /* step */
static t_bool not_implemented_message = FALSE; static t_bool not_implemented_message = FALSE;
flag = RU_STEP; if ((!not_implemented_message) && (flag == RU_NEXT)) {
if (!not_implemented_message) {
printf ("This simulator does not have subroutine call detection.\nPerforming a STEP instead\n"); printf ("This simulator does not have subroutine call detection.\nPerforming a STEP instead\n");
if (sim_log) if (sim_log)
fprintf (sim_log, "This simulator does not have subroutine call detection.\nPerforming a STEP instead\n"); fprintf (sim_log, "This simulator does not have subroutine call detection.\nPerforming a STEP instead\n");
not_implemented_message = TRUE; not_implemented_message = TRUE;
flag = RU_STEP;
} }
if (*cptr != 0) { /* argument? */ if (*cptr != 0) { /* argument? */
cptr = get_glyph (cptr, gbuf, 0); /* get next glyph */ cptr = get_glyph (cptr, gbuf, 0); /* get next glyph */

View file

@ -847,7 +847,7 @@ if ((!sim_idle_enab) || /* idling disabled */
When a simulator is in an instruction path (or under other conditions When a simulator is in an instruction path (or under other conditions
which would indicate idling), the countdown of sim_interval will not which would indicate idling), the countdown of sim_interval will not
be happening at a pace which is consistent with the rate it happens be happening at a pace which is consistent with the rate it happens
when not in the idle capable state. The consequence of this is that when not in the 'idle capable' state. The consequence of this is that
the clock calibration may produce calibrated results which vary much the clock calibration may produce calibrated results which vary much
more than they do when not in the idle able state. Sim_idle also uses more than they do when not in the idle able state. Sim_idle also uses
the calibrated tick size to approximate an adjustment to sim_interval the calibrated tick size to approximate an adjustment to sim_interval
@ -858,12 +858,12 @@ if ((!sim_idle_enab) || /* idling disabled */
To negate this effect, we set a flag (sim_idle_idled) here and the To negate this effect, we set a flag (sim_idle_idled) here and the
sim_rtcn_calb routine checks this flag before performing an actual sim_rtcn_calb routine checks this flag before performing an actual
calibration and skips calibration if the flag was set and then clears calibration and skips calibration if the flag was set and then clears
the flag. Thus recalibration only happens if things didnt idle. the flag. Thus recalibration only happens if things didn't idle.
we also check check sim_idle_enab above so that all simulators can avoid we also check check sim_idle_enab above so that all simulators can avoid
directly checking sim_idle_enab before calling sim_idle so that all of directly checking sim_idle_enab before calling sim_idle so that all of
the bookkeeping on sim_idle_idled is done here in sim_timer where it the bookkeeping on sim_idle_idled is done here in sim_timer where it
means something, while not idling when it isnt enabled. means something, while not idling when it isn't enabled.
*/ */
//sim_idle_idled = TRUE; /* record idle attempt */ //sim_idle_idled = TRUE; /* record idle attempt */
sim_debug (DBG_TRC, &sim_timer_dev, "sim_idle(tmr=%d, sin_cyc=%d)\n", tmr, sin_cyc); sim_debug (DBG_TRC, &sim_timer_dev, "sim_idle(tmr=%d, sin_cyc=%d)\n", tmr, sin_cyc);