Commit graph

2045 commits

Author SHA1 Message Date
Mark Pizzolato
ab8151cdcc Compiler suggested cleanup 2015-10-15 14:19:03 -07:00
Mark Pizzolato
1ab15eb45d slirp: Port base QEMU slirp code to build on Windows with Visual Studio 2015-10-15 14:17:42 -07:00
Mark Pizzolato
970644576e slirp: remove noisy debug output 2015-10-15 13:26:34 -07:00
Mark Pizzolato
73f633fa69 slirp: Add missing clock_gettime support for OS X. 2015-10-15 13:22:34 -07:00
Mark Pizzolato
86d1e36f29 all VAX, PDP11: Add initial NAT based ethernet connectivity via SLiRP.
This should work on all byte addressable host systems using GCC/clang to build.

The QEMU slirp code has been pried out of QEMU and stubs have been created to solve where the current slirp is entangled with the QEMU code.  Ths slirp/simh directory contains all the necessary include and glue files to make this useful.  Everything in the slirp directory is unmodified QEMU code.
2015-10-15 12:59:32 -07:00
Mark Pizzolato
e4cf98c4c0 slirp: Initial import of QEMU slirp
This version of slirp is a fork from QEMU Version 2.4.0.1 slirp implementation
Taken from commit id of 474590efc51f262fb5d81ca417d510cb7fb7a914
in the qemu repository git://repo.or.cz/qemu/ar7.git

Thanks to Fabrice Bellard.
2015-10-15 12:29:41 -07:00
Mark Pizzolato
6bf92de3db All VAX: Also return correct Unibus/Qbus vectors for devices with more than one vector. Fix #241 2015-10-14 13:12:51 -07:00
Paul Koning
35c321fe2e DOC: Corrections and cleanups.
Small corrections, including a number from Mark Pizzolato, in
description of unit timing, debug flags, among others.
2015-10-10 14:07:33 -04:00
Mark Pizzolato
73d7aee71f SCP: Add printf style format argument validation for all functions which take printf arguments.
These include: sim_printf(), sim_messagef(), Fprint() and sim_debug().

Fix current use of these functions which had invalid arguments.
2015-10-09 04:12:25 -07:00
Mark Pizzolato
ed57f061e2 All VAX: Always return the correct Qbus/Unibus interrupt vector bits for all devices. Fix #239
Vector values contained in device information blocks are the true bus relative vector values.  CPU specific biased vector values are produced by the respective vector fetching logic and vector values are limited to 9 bits with <1:0> = 0 as specified in both the Unibus and Qbus documents.
2015-10-08 04:43:21 -07:00
Mark Pizzolato
b05c7419f0 Visual Studio Projects: Added support for separate libpng libraries based on the available C runtime library for the compiler used to build. 2015-10-05 19:59:24 -07:00
Mark Pizzolato
c3a879da2d VAX: Change to load ROMs or other boot code directly from built in memory arrays.
Prior logic attempted to load the desired file from the current default directory and if that failed wrote the in memory boot code image to the desired file and then retried the desired load..

A user can still explicitly load a ROM image with a "LOAD -R romfile.bin" command prior to a BOOT attempt if they want to test or otherwise run with a different ROM.
2015-09-28 09:19:38 -07:00
Mark Pizzolato
4921d92650 VIDEO: Produce SCREENSHOT images in PNG format if libpng is available in the host build environment 2015-09-27 16:14:55 -07:00
Mark Pizzolato
0a2eb2997c SAGE: Add missing STEP command structure members from scp.c 2015-09-25 11:26:09 -07:00
Paul Koning
77bbfae817 DOC: Corrections and cleanups.
Update description of DEVICE, UNIT, and REG.  Correct a number of
typos and formatting glitches.  Add description of UNIT_IDLE,
REG_UNIT.  Add some missing details in fprint_sym and
sim_vm_is_subroutine_call.  Document command matching rule.
2015-09-25 12:52:07 -04:00
Tony Nicholson
e229733850 makefile: cygwin build video support using SDL2 (preferred) or SDL
cygwin now includes development packages for the SDL2 and SDL video
libraries (libSDL2-devel and libSDL-devel). Adjust makefile to find the
libSDL2.dll.a or libSDL.dll.a library.
2015-09-25 17:34:11 +10:00
Mark Pizzolato
650f768843 makefile: Add support for building with libpng 2015-09-24 15:25:53 -07:00
Mark Pizzolato
9cb2697dcd VAX730, VAX750: Fix compiler warnings 2015-09-24 13:36:15 -07:00
Mark Pizzolato
ddb78bc818 README: Add SCREENSHOT and minor spelling fix. 2015-09-24 12:26:23 -07:00
Mark Pizzolato
7ad2651aa8 VAX750: Make sure that a boot ROM has been loaded before attempting a boot from the BOOTDEV specified boot device (i.e. BOOT without an argument). 2015-09-24 11:14:04 -07:00
Mark Pizzolato
a6c5e7e632 VAX, PDP11: In the TU tape simulator, correct the wording of the help language. Fixes #228 2015-09-23 06:35:54 -07:00
Mark Pizzolato
9f59823ae3 PDP11, all VAX: Add TU58 device simulator with support for 32 drives plus the VAX 730 and 750 console devices 2015-09-22 15:06:12 -07:00
Mark Pizzolato
8652294fd6 DOC: Add descriptiong of missing unit structure fields 2015-09-22 06:55:23 -07:00
Mark Pizzolato
389c08a81e SCP: Added missing help for SET REMOTE MASTER command. 2015-09-21 12:13:36 -07:00
Mark Pizzolato
4ddee84faf EXPECT: Fix deprecated SET CONSOLE HALT behavior to reflect Dave's original behavior. 2015-09-20 14:15:42 -07:00
Mark Pizzolato
5bd6ea9496 HP2100: Latest changes from Dave Bryan 2015-09-20 14:08:52 -07:00
Mark Pizzolato
751e1c0a7d SCP: Added missing REMOTE from scp_errors array. Reported by Dave Bryan 2015-09-20 14:07:47 -07:00
Mark Pizzolato
1ef6c3d6b9 SCP: Added REG_V_UF and REG_UFMASK to support user-defined register flags. From Dave Bryan
Altered the calling sequences to fprint_sym and parse_sym in ex_reg and dep_reg to merge user-defined register flags with the radix in the addr parameter.  This allows the print and parse routines to identify the register or determine how it is to be handled.  These are called in lieu of the standard print and parse routines if a register has REG_VMIO or at least one user-defined flag set.
2015-09-20 14:04:24 -07:00
Mark Pizzolato
13bb3356f5 VIDEO: Fix vid_draw to copy drawing data before returning when drawing is deferred.
Using SDL2 the draw operations are performed in a separate thread and thus the data must be cached while the request is passed to the separate thread while control returns to the caller.
2015-09-20 13:38:11 -07:00
Mark Pizzolato
324839cee9 VAX750: Add display of boot device selector switch target boot devices 2015-09-17 23:09:05 -07:00
Mark Pizzolato
0986c6ff9e VAX750: Fixed ROM based boot from console TU58
Problem was the console storage output buffer was masked with a WMASK instead of a BMASK (it is only a 8 bit register).
Also, the input interrupt processing cleared the output interrupt state instead of the input interrupt state.  This would only be a problem when interrupts are actually used instead of polled I/O.
2015-09-17 17:48:02 -07:00
Mark Pizzolato
42403efd1f VIDEO: Avoid compiler warning when building without video support 2015-09-17 14:52:49 -07:00
Mark Pizzolato
23e552e9fc SCP, VIDEO: Properly reject SCREENSHOT command when no devices use sim_video. 2015-09-17 14:49:10 -07:00
Mark Pizzolato
78399f10cb SCP: Added a SCREENSHOT command to record the video display window. 2015-09-17 11:49:01 -07:00
Mark Pizzolato
1d6c14be3d HP2100: Latest changes from Dave Bryan.
hp2100_ipl.c:

  - Exposed "ipl_edtdelay" via a REG_HIDDEN register to allow user tuning
    of the EDT delay that works around a race condition in the HP
    2000/Access Time-Shared BASIC system.

  - Corrected typos in comments and strings.

  - Merged SIMH 3.x and 4.x socket calls via conditionals, so that the
    module may be compiled for either version.

hp2100_mux.c:

  - Corrected a typo in the RTS macro definition.

hp2100_sys.c:

  - Added a cast to int for the parameter to "isspace" to avoid a compiler
    warning.

hp2100_bugfixes.txt

  - Added a description of the IPL hidden register fix.
2015-09-17 05:24:31 -07:00
Mark Pizzolato
4baecec0b1 VAX750: Added VAX. 11.750 Boot ROM booting options
VAX 11/.750 Boot ROM code makes non-longword memory references to MassBus and Unibus register space.  Minor changes were necessary to allow this behavior which was architecturally undefined behavior, but had real code which depended on it.

Added a BOOTDEV option to the CPU to reflect the 4 position boot device selection switch on real VAX 11/750 hardware.

The UBA750 initial state started with the UBA map registers validly mapping the first 256KB of RAM to Unibus space.

Added simulated PCS/WCS memory which boot code on some operating systems (Ultrix and other BSD derived systems) automatically loaded on the VAX 11/750.  PCS/WCS was also automatically loaded by the newer versions of the BOOT ROMs.
2015-09-10 21:42:16 -07:00
Mark Pizzolato
176540f639 PDP11, VAX: Correct MSCP & TMSCP register access debug output to mention correct register names and data being written on register writes 2015-09-08 11:17:52 -07:00
Mark Pizzolato
ab510885c0 Visual Studio Projects: Forced serialization of Visual Studio Project fixes by making all simulators dependent on BuildROMs project. 2015-09-04 11:36:24 -07:00
Mark Pizzolato
87b6dbaa6c Visual Studio Projects: Change project file conversions adding XP support to be reasonably well behaved during a parallel build. 2015-09-03 12:18:35 -07:00
Mark Pizzolato
8bb494036c PDP11: Add provision in the DL device simulation to support bursts of input data to avoid reporting character overruns on the serial port.
Overruns can happen on simulated MUX lines using TCP since multiple characters can arrive in a single network packet.  Overruns still are reported if previous input characters haven't been read within 500ms.  Edmund Marr reported this problem.
2015-09-03 05:09:19 -07:00
Mark Pizzolato
9fdd8a8706 TMXR: Fix debug output of remaining data after removing telnet negotiation from the input buffer 2015-09-02 16:49:47 -07:00
Mark Pizzolato
6d61821e3c Visual Studio Projects: Add XP build support when building with Visual Studio 2012+ ONLY when Visual Studio XP support is available. 2015-09-02 09:51:42 -07:00
Mark Pizzolato
7619f88e66 Visual Studio Projects: Add XP support for executables when building with Visual Studio 2012+ 2015-08-31 11:18:50 -07:00
Mark Pizzolato
558788e04f Visual Studio Projects: Adopt new windows-build which properly supports floating point C runtime calls for simulators which use libSDL 2015-08-26 13:10:51 -07:00
Mark Pizzolato
15736aeec3 Visual Studio Projects: Added support for building under Visual Studio Community (2015)
Release build binaries built under Visual Studio Community DO NOT run on Windows XP.

Fix: #233
2015-08-19 11:16:47 -07:00
Mark Pizzolato
77152c6e20 MUX: Fix for connection establishment logic for virtual null modem connections.
Test case provided by Ed Marr using PDP11 DL devices.
2015-08-18 09:52:49 -07:00
Mark Pizzolato
f602b132dd SCP: Make output of SHOW commands also appear in debug output while debugging 2015-08-17 11:47:19 -07:00
Mark Pizzolato
9307fbdf54 MUX: Fix attach parsing of Log File names and no telnet options. Issue found by Ed Marr. 2015-08-16 11:05:44 -07:00
Mike Douglas
f3af74e444 AltairZ80: Fix head stepping to only occur on 1 to 0 transitions
The source file to be updated provides emulation of the North Star DD
floppy disk controller. The proposed change steps the head only when the
step bit in the order byte transitions from 1 to 0. This is the way the
actual hardware functions. Previously, the emulation would step any time
an order was issued and the step bit was 1. This behavior caused some
original software (e.g., Lifeboat CP/M 2.2) to end up on an incorrect
track.
2015-08-08 21:27:09 -05:00
Peter Schorn
bb39ce97c7 AltairZ80: Better comparison operator to remove warning message 2015-08-08 08:58:24 +02:00