Commit graph

3695 commits

Author SHA1 Message Date
Mark Pizzolato
20aa661c43 SCP: Parse switches on file operation commands
DELETE, DIR, MKDIR, TYPE, COPY, etc.

This allows -Q to suppress output if desired.
2020-05-12 08:25:10 -07:00
Mark Pizzolato
8edb55ac87 SCP: During expression evaluation, make lookups (REG, Env) consistent
Both REGister and Environment Variable name lookup now do a precise
name lookup with the presented name followed by an upcased name
lookup.
2020-05-12 03:57:22 -07:00
Mark Pizzolato
c3fef9befc SCP: Fix expression evaluation of empty string to numeric value
Previously, numeric values incorrectly had a string representation of
"".  This allowed arbitrary equality comparisons to succeed in unexpected
ways.

Reported by Robert Sancho Villas
2020-05-11 16:23:26 -07:00
Mark Pizzolato
781c73fe21 SCP: Fix != comparison in memory search compare logic (Roberto Sancho Villa) 2020-05-11 06:53:27 -07:00
Mark Pizzolato
8c57893675 ETHER: Avoid potential compiler warning about version string overrun
gcc 9.3.0 on Ubuntu 20.04 somehow knows that the length of the
string pcap_lib_version() returns can be 256 bytes long.  It then
generates a warning about truncation potential.  The problematic
code path will only be executed on Windows with an old version of
Npcap, but the compiler can't know that.  Make the local buffer
larger to silence the resulting noise.
2020-05-08 05:28:52 -07:00
Mark Pizzolato
918f7704da DOC: Update sim_doc.doc to start with how to run a simulator 2020-05-07 12:44:08 -07:00
Bill Beech
1513d6ee66 SWTP6800: Fix typo in the DAA instruction 2020-05-06 14:25:46 -07:00
Mark Pizzolato
661c1059a6 PDP10: Fix spelling error in comment section 2020-05-05 13:01:39 -07:00
Mark Pizzolato
fd08552852 PDP11, PDP10, VAX: Consistent use of UNIT flag variables in RP, HK, RL, and RQ
Properly reference sim_disk provided WLK flag bit
2020-05-05 12:59:21 -07:00
Mark Pizzolato
df63d4ff9f SCP: Reject undefined device with TESTLIB command
Also remove some otherwise unused variables (assignments but never used).
2020-05-05 12:57:43 -07:00
Warner Losh
3a8472be2b
FreeBSD tweak
FreeBSD doesn't up the tap interface by default. Work around this by changing the default
2020-05-05 09:41:47 -06:00
Mark Pizzolato
b121950aba 3B2: Avoid adding disk information details to IFLOPPY disk images.
Floppy disk images are potentially used as a medium of data exchange
between some hosts and simulators and the disk information can confuse
this process.

As discussed in #847
2020-05-03 11:58:21 -07:00
Mark Pizzolato
5bec9d58dd DISK: Avoid trying to change drive type when it is already correct. 2020-05-02 13:34:26 -07:00
Mark Pizzolato
c76086bc00 3B2: Properly set drive type for IDISK device disks
As reported in #847
2020-05-02 10:32:05 -07:00
Peter Schorn
494e68fcbf AltairZ80: Documentation update and small formatting cleanup 2020-04-30 19:01:38 +02:00
Mark Pizzolato
4099330616 H316: Open LPT, PTP devices for append
This implements the principle of "least surprise", in that users won't
normally expect to start overwriting an existing file on these devices.
Real hardware didn't behave that way.  A new (empty) file can always
be created with the -N switch on the ATTACH.
2020-04-30 05:18:47 -07:00
Mark Pizzolato
323cd48244 PDP8: Open LPT, PTP devices for append
This implements the principle of "least surprise", in that users won't
normally expect to start overwriting an existing file on these devices.
Real hardware didn't behave that way.  A new (empty) file can always
be created with the -N switch on the ATTACH.
2020-04-30 05:08:29 -07:00
Mark Pizzolato
0b3e415b8e DISK: Cleanup compiler warnings 2020-04-30 02:59:30 -07:00
Patrick Linstruth
807005553b ALTAIRZ80: Add "SET CPU HISTORY" and "SHOW CPU HISTORY" for 8080/Z80 2020-04-29 20:28:33 -07:00
Mark Pizzolato
7082e212ea DISK: Avoid autosizing if file system can't be determined
Add DISKINFO command to display information about a disk container file.
2020-04-29 13:21:12 -07:00
Mark Pizzolato
aa380517fa DISK: Add support for arbitrary sector sizes in all container formats 2020-04-29 12:21:08 -07:00
Mark Pizzolato
3c081a80c1 KA10, KI10, KL10: Open LPT, PTP devices for append
This implements the principle of "least surprise", in that users won't
normally expect to start overwriting an existing file on these devices.
Real hardware didn't behave that way.  A new (empty) file can always
be created with the -N switch on the ATTACH.
2020-04-28 14:35:22 -07:00
Bill Beech
6e6706f2a4 SWTP6800: Corrected flag setting errors (Richard Brinegar) 2020-04-28 14:02:03 -07:00
Mark Pizzolato
3a38d38ce7 PDP4, PDP7, PDP9, PDP15: Open LPT, PTP devices for append
This implements the principle of "least surprise", in that users won't
normally expect to start overwriting an existing file on these devices.
Real hardware didn't behave that way.  A new (empty) file can always
be created with the -N switch on the ATTACH.
2020-04-28 07:35:09 -07:00
Mark Pizzolato
7ebd22edaa TIMER: Fix sim_idle_ms_sleep() return value to be more precise
delta time computation converting the difference between two timespec
structures values to milliseconds previously truncated the difference which,
depending on the value of when the starting value in the delta happened,
along with when an OS clock tick occurred, may have resulted in a small
delta and an apparent sleep time of 0.  A more accurate result is produced
when the conversion from nanoseconds to milliseconds is rounded up
before the usecs/nsecs are truncated.
2020-04-28 07:10:57 -07:00
Mark Pizzolato
4313f9fe3c PDP1, PDP10, PDP11, ID16, ID32, NOVA, VAX: Open LPT, PTP devices for append
This implements the principle of "least surprise", in that users won't
normally expect to start overwriting an existing file on these devices.
Real hardware didn't behave that way.  A new (empty) file can always
be created with the -N switch on the ATTACH.
2020-04-28 07:09:20 -07:00
Mark Pizzolato
580b388917 DISK: Add ATTACH copy option to create a SIMH or VHD copy
- Fail ATTACH when container type doesn't match drive type and autosizing
  is disabled.
- Be sure to write data at the end of a VHD container right up to the end of
  the disk.
2020-04-22 08:55:36 -07:00
Mark Pizzolato
b561de671b SCP: Cleanup C++ compile of changed help string management 2020-04-21 21:43:41 -07:00
Mark Pizzolato
07897d3257 PDP11, VAX, and PDP10: Add AUTO disk format option to RP, HK, RL and RQ devices 2020-04-21 19:45:47 -07:00
Mark Pizzolato
d225629b9a DISK: Always open VHD containers as VHD without regard to the selected format 2020-04-20 21:22:12 -07:00
Richard Cornwell
cabd3784bc I7000: Fixed potential memory access error. 2020-04-17 18:20:27 -07:00
Richard Cornwell
3f55005d21 KA10: Regular update to sync to development source.
Removed DEV_NET and fixed DEV_type on various devices.
   Support for 64 lines on KL10 FE by default.
   Fixed support for 32 lines on DC10.
   Support for TYPE 340 Display undocumented functions.
2020-04-17 18:19:54 -07:00
Mark Pizzolato
e872682d3c DISK: Major rework to support VHD's with other than 512 byte sectors
- Added rigorous disk test routine to exercise all supported disk container
  formats with various sector sizes and storage element sizes
- Extended logic to validate disk container simulated device consistency
  with the simulator and/or controller accessing it.
2020-04-17 17:34:28 -07:00
Mark Pizzolato
2b68660876 SCP: Add a TESTLIB command to invoke sim_* library test on devices
- Previously invoking a simulator with -T was the only way to invoke the
  library tests for ALL devices.  That still works now with the additional
  flexibility to invoke a specific device's test from the sim> prompt.
- Adding TESTLIB help text encountered a maximum constant string length
  limit in the C compiler.  Reworked to allow multiple strings which are then
  concatenated on the first HELP command invocation.
2020-04-17 17:22:43 -07:00
Peter Schorn
9b71968ada AltairZ80: Use non blocking socket for net device 2020-04-14 19:14:12 +02:00
Lars Brinkhoff
1cc1daed96 PDP11: Fix warning about size_t converted to uint16. 2020-04-14 07:44:24 +02:00
Lars Brinkhoff
35574f1365 DISPLAY: Fix warning about shifting negative value. 2020-04-14 07:40:15 +02:00
Mark Pizzolato
ee1c055abe TMXR: All sockets should default to non blocking 2020-04-13 17:29:42 -07:00
Mark Pizzolato
07682806a5 DISK: Fix size detection and validation for VHD disks 2020-04-13 10:05:46 -07:00
Mark Pizzolato
d0022e9328 DISK: Update VHD Footer to current info 2020-04-12 08:13:28 -07:00
Mark Pizzolato
42938b9c83 PDP11, VAX: Allow RQ RA8U disk type which is verified as valid at attach time 2020-04-11 19:57:13 -07:00
Mark Pizzolato
13dc1b54cd PDP11, Unibus VAXen: Leverage sim_disk provided autosize logic for RL and HK 2020-04-11 13:12:51 -07:00
Mark Pizzolato
defe31183f PDP11, Massbus VAXen: Remove redundant RP device autosize logic 2020-04-11 13:11:30 -07:00
Mark Pizzolato
91550ec291 TMXR: Active outbound TCP connects should be non-blocking
- add testing for socket address parsing
- extend testing for various connect scenarios
2020-04-11 13:08:08 -07:00
Mark Pizzolato
6af7a8a434 SOCK: Remove duplicate nonblocking code in sim_connect_sock_ex 2020-04-11 13:04:53 -07:00
Mark Pizzolato
35780cf5e2 SCP: Enhance SCP library testing to report and stop on errors 2020-04-11 13:03:00 -07:00
Mark Pizzolato
049ba32505 DISK: Add robust disk container validation 2020-04-11 13:01:48 -07:00
Mark Pizzolato
3950478e00 SCP: Fix compile when compiler doesn't support variable macro arguments
Reported by Peter Coghlan building on AXP VMS.
2020-04-10 18:24:05 -07:00
Mark Pizzolato
07c274ac97 ETHER: Restore support fir Windows Npcap as Ethernet packet API
Version of Npcap 0.9990 restores full WinPcap functionality

As discussed in nmap/nmap#1929 and nmap/nmap#1343
2020-04-06 10:36:31 -07:00
Mark Pizzolato
ab66fa1484 DISK: Fix attach time auto sizing to walk through list of potential drive types 2020-04-05 16:50:16 -07:00