Commit graph

193 commits

Author SHA1 Message Date
Mark Pizzolato
9f2d96b3e7 SCP: Allow debugger delivery of SIGINT separate from WRU return to sim> prompt 2018-12-31 09:49:06 -08:00
Mark Pizzolato
3b8fc9d314 SCP: Avoid debug output noise when starting and stopping instruction execution 2018-11-08 21:36:33 -08:00
Mark Pizzolato
f8a18df1c4 SCP: Cleanup compiler warnings 2018-10-10 00:03:37 -07:00
Mark Pizzolato
6a3424df86 SCP: Add option to write debug output to an in memory circular buffer 2018-10-08 17:50:00 -07:00
Mark Pizzolato
b6b457a84d SCP: Fix Coverity identified issues 2018-09-28 20:47:54 -07:00
Mark Pizzolato
c49eea7a50 SCP: Use sim_messagef in console command output for consistency 2018-09-19 17:58:28 -07:00
Mark Pizzolato
6f2538380a SCP: Change use of O_NDELAY to O_NONBLOCK for Posix compatibility 2018-09-02 20:07:53 -07:00
Mark Pizzolato
7f9e60de58 SCP: Use O_NDELAY when putting fd 0 into non blocking mode on Linux 2018-09-02 07:30:02 -07:00
Mark Pizzolato
4ae55f57da SCP: Explicitly put fd 0 into non blocking mode when running simulation on Linux
This change is not actually necessary on Linux, but a bug in Windows
Subsystem for Linux (WSL) doesn't honor tcsetattr() with ICANON disabled
and VMIN and VTIME set to 0 should return immediately when no input data
is available, but it doesn't.  Setting the fd to non blocking produces
equivalent behavior.
2018-08-27 19:34:08 -07:00
Mark Pizzolato
a62789a505 SCP: Make repeated debug message summarization the default
The -F debug switch can now be used to avoid the repetitive message
summarization.  This will trade off debug log file size vs CPU cost to
summarize the output.
2018-08-06 07:37:04 -07:00
Mark Pizzolato
7a08f2368e SCP: Add debug duplicate line output summary support 2018-07-27 13:56:18 -07:00
Mark Pizzolato
0a7c9de1e1 TMXR: Change rx and tx delta values to be usecs including the speed factor 2018-06-13 04:51:34 -07:00
Mark Pizzolato
ce390bbae4 TMXR: Make transmitted data consider the configured line speed factor
As discussed in #566
2018-05-18 13:25:30 -07:00
Mark Pizzolato
39802c465a makefile: Support mode Android versions when termux is used 2018-05-09 10:39:10 -07:00
Mark Pizzolato
d090436c78 SCP: Support host environments which can't do termios TCSAFLUSH 2018-05-08 21:37:39 -07:00
Mark Pizzolato
6ccbfc7381 SCP: Report errno value when starting instruction execution fails 2018-05-08 02:51:17 -07:00
Mark Pizzolato
fdd9d87f80 SCP: Fix MinGW build warnings due to sizeof time_t 2018-04-15 12:51:36 -07:00
Mark Pizzolato
28e4311039 SCP: Extended debugging to allow for unit specific debug for disk and tape 2018-04-07 21:38:26 -07:00
Mark Pizzolato
81bcd6d319 CONSOLE/SERIAL: Properly rate limit output to console port
When the console is connected to a serial port or telnet sessions enable
speed setting, the bits being output are now paced a the desired speed.
Multi-line mux I/O is also correctly rate limited on all lines.

This should address the problems described in #545
2018-04-06 04:12:38 -07:00
Mark Pizzolato
daf0d953b1 SCP: Adjust relative debug base time to reflect GMT offset 2018-04-02 13:21:01 -07:00
Mark Pizzolato
ce8aea13bc MINGW: Reorder windows include files to avoid future complications 2018-02-12 20:48:39 -08:00
Mark Pizzolato
760e7f2810 SCP: stop_cpu and sim_is_running variables t_bool 2018-02-02 05:02:27 -08:00
Mark Pizzolato
3eda8f909c SCP: Silence noise traffic going to remote console secondary sessions 2018-01-10 08:59:30 -08:00
Mark Pizzolato
fc25cf54fa SCP: Add EXECUTE command to remote console master mode.
This allows a set of commands to be received and executed together.
The frontpanel API can make use of this.
2018-01-07 13:40:02 -08:00
Mark Pizzolato
eea15bfe4e SCP: Add DEBUG command to allow Debug enabling/disabling via Remote Console
This exposes the functionality of SET DEBUG and SET <dev> DEBUG without using
a general SET command which the remote console facility avoids.
2018-01-07 12:47:42 -08:00
Mark Pizzolato
154320bf71 SCP: Add support for BREAK/EXPECT/UNTIL/IF action steps in remote console 2018-01-07 12:09:35 -08:00
Mark Pizzolato
9086b269b2 SCP: Allow semicolons within quoted strings while parsing action strings 2018-01-04 07:06:52 -08:00
Mark Pizzolato
72d4622ddf SCP: Add ECHOF command which takes a quoted string as an argument 2018-01-04 07:06:51 -08:00
Mark Pizzolato
52990b3bc2 FRONTPANEL: Fix bug that disabled repeat processing 2017-12-15 16:08:10 -08:00
Mark Pizzolato
8cc11faf00 FRONTPANEL: FRONTPANEL: sim_frontpanel API release 9
- Add sim_panel_mem_deposit_instruction API
- Properly shutdown debug activities when more than one panel is active
- Properly unwind socket facilities when more than one panel is active
- More rigorously unwind things when a panel is destroyed while its
   simulator is running.
- Give explicit session request traffic priority over potentially pending
   repeat command processing.
2017-12-13 05:44:43 -08:00
Mark Pizzolato
0e4ee6ecce FRONTPANEL: Add support to collect bit samples on register array members 2017-12-07 22:11:43 -08:00
Mark Pizzolato
f594f0c98a SCP: Be sure to call optional sim_vm_post in remote console sessions 2017-11-16 08:43:38 -08:00
Mark Pizzolato
8551a2d477 FRONTPANEL: sim_frontpanel API version 6 release
- Add dithering option to bit sampling
2017-11-09 23:02:39 -08:00
Mark Pizzolato
e73d45ebcc FRONTPANEL: sim_frontpanel API version 5 release
- Add API to start execution with device reset
- Fix synchronization between panel application threads and simulator
  traffic reader thread.
2017-11-04 10:28:00 -07:00
Mark Pizzolato
932d16da53 SCP: Rework SEND and EXPECT commands to provide default and temporary arguments
- EXPECT HALTAFTER=nnn
     --> sets "nnn" as the global/default value

 - EXPECT "some string"
     --> uses the "nnn" global/default value

 - EXPECT HALTAFTER=ttt "some string"
     --> uses the "ttt" temporary value for this EXPECT only

and:

 - SEND AFTER=nnn
     --> sets "nnn" as the global/default value

 - SEND "some string"
     --> uses the "nnn" global/default value

 - SEND AFTER=ttt "some string"
     --> uses the "ttt" temporary value for this SEND only

(and similarly for the SEND DELAY value).
2017-10-16 13:10:10 -07:00
Mark Pizzolato
2435311072 SCP: Add DEV_NOSAVE flag for throttle and console internal devices 2017-10-08 10:10:03 -07:00
Mark Pizzolato
ba447399f8 SCP: Cleanup compiler warnings (Dave Bryan) 2017-08-04 17:44:27 -07:00
Mark Pizzolato
b15f753adc SCP: Add support for operation when stdin isn't a tty
Also enhanced error messages for startup errors.
2017-07-31 22:10:15 -07:00
Mark Pizzolato
c470d1e5e2 SCP: Allow the presence of DEVICE DEBTAB array to imply the DEV_DEBUG flag 2017-06-07 18:56:06 -07:00
Mark Pizzolato
df627b0cb1 SCP: Cleanup output produced by SHOW CONSOLE command 2017-05-27 20:25:50 -07:00
Mark Pizzolato
eea18400f3 CONSOLE: Fix crash when ^E is presented in a remote console session 2017-05-03 11:25:30 -07:00
Mark Pizzolato
bf018a19d9 CONSOLE: Properly set the line output mode under windows version prior to Win10
As reported in #438 by Dave Wise.
2017-05-01 17:47:07 -07:00
Mark Pizzolato
168d0d9c47 SCP: add generic length limted and case independent string for all platforms 2017-04-22 21:28:48 -07:00
Mark Pizzolato
773cc1c319 SCP: Minor Coverity cleanup 2017-03-30 07:55:13 -07:00
Mark Pizzolato
f4b7d1fbf8 SCP: Migrate some use of strcat() to sim_strlcat() 2017-03-27 08:23:03 -07:00
Mark Pizzolato
2d4004b936 SCP: fix CID: 1415878 "Useless call" 2017-03-09 19:07:45 -08:00
Mark Pizzolato
665ebf0fd1 FRONTPANEL: sim_frontpanel API version 4 release
Add simulator side register bit sampling with averaged sample values
delivered across the API at specified rates.
2017-02-04 10:48:13 -08:00
Mark Pizzolato
f171055809 REMOTE_CONSOLE: Clarify REM-CON unit references
Make REM-CON units dynamically allocated and use symbolic names for the
respective different roles they play.  This will make interpreting the existing
code easier and ease future extensions.
2017-02-04 10:41:39 -08:00
Mark Pizzolato
0913edb2f3 REMOTE_CONSOLE: reorganized code to use array of structs
The original model started with two array variables each with one element
for each potential concurrent remote console.  As functionality was added
the number of arrays grew to an unreasonable number.  This change
merely gets rid of the separate arrays of per connection info and uses a
single array of REMOTE struct which contains all the per connection info.
This will make future functional extensions much cleaner.
2017-01-31 21:09:49 -08:00
Mark Pizzolato
110ded6904 FRONTPANEL: sim_frontpanel API version 3 release
Adds:
1) Simulator side execution of register update activities at an interval
    specified in usecs.  Rates in excess of 1000Hz should be achievable
    for locally connected frontpanel applications.
2) New API for simulators to describe the register state available in
    the simulator.  If all of a the state which is potentially interesting
    to front panel applications is always present in the variables
    described by simh REG structures, then frontpanel API access to
    that data can be more efficiently provided.
2017-01-27 23:06:30 -08:00