1
0
mirror of https://github.com/open-simh/simh.git synced 2026-01-14 15:46:31 +00:00

4637 Commits

Author SHA1 Message Date
Calvin Buckley
2fa8a63a6a Allow for shared/bridged mode, show in SHOW ETHERNET
Show the allowed bridged network devices SHOW ETHERNET, as well as the
shared/host networking modes. It also shows shared/host/device name for
bridge in i.e. "HELP XS" output as well.

Shared, bridged, and host modes have other options for configuration;
i.e. isolation, IP ranges, etc. Some of these are not well documented,
so should look into these. Bridged mode needs macOS 10.15.
2025-08-17 15:25:22 -04:00
Calvin Buckley
361ef76dbc Initial support for vmnet.framework
On macOS, tap devices for L2 networking are not supported out of the
box. While a kext can be added to provide tap support, the kext
experience is not very good; Apple has strongly recommended against
their usage.

As a replacement that's documented and recommended, Apple introduced the
vmnet framework, intended for emulators and virtualization software
explicitly. This API requires macOS 10.10, with bridged network support
coming in macOS 10.15.

This introduces basic support for vmnet.framework in SIMH. I've tested
it by booting an emulated MicroVAX 3800 from an emulated InfoServer 150,
where it was able to reach OpenVMS 7.3 standalone BACKUP.
2025-08-17 15:25:22 -04:00
B. Scott Michel
ad3e744951 CMake: Regenerate
Periodic CMake update to sync with master branch changes.
2025-08-17 14:26:06 -04:00
Lars Brinkhoff
072f08a3c1 Imlac: Add Freeway game to tests.
Paper tape image provided by Zachary Harper @sparky-z.
2025-08-17 14:24:30 -04:00
Lars Brinkhoff
dfc0c677c8 Imlac: Add support for Alpha display processor.
Details figured out by Zachary Harper @sparky-z from reading the
listing "FREEWAY CROSSING PROGRAM".
2025-08-17 14:24:30 -04:00
Lars Brinkhoff
e7a151e1f1 Imlac: Improve debug output. 2025-08-17 14:24:30 -04:00
Lars Brinkhoff
c1904b50ce Imlac: Model MSB and LSB accumulators. 2025-08-17 14:24:30 -04:00
Lars Brinkhoff
8a31996d18 Imlac: Make display rate adjustable. 2025-08-17 14:24:30 -04:00
Lars Brinkhoff
29b8125aca Imlac: Set core memory size.
This adds new modifiers to the CPU device: 4k, 8k, and 16k.
2025-08-17 14:24:30 -04:00
Lars Brinkhoff
aa1f31dad0 Imlac: Add support for loading paper tapes.
"load -p" loads a paper tape image.
2025-08-17 14:24:30 -04:00
Lars Brinkhoff
ae2e3b02fd Imlac: Better parsing of load switches.
"load -s" loads a "special tty" image file, just like a plain "load" will.
An unknown switch will raise an error.
2025-08-17 14:24:30 -04:00
Lars Brinkhoff
70fdfed9a1 PDP8: Add the ICBM video game.
This is DECUS 5-277, a PDP-5 video game written by Len Berger, using
the Type 34 display.
2025-08-17 14:22:21 -04:00
Lars Brinkhoff
065f67ab7f PDP8: Add Type 34 display support. 2025-08-17 14:22:21 -04:00
Seth Morabito
e77598b61f 3B2: Address review comments 2025-08-17 14:19:18 -04:00
Seth Morabito
9fc0751c74 3B2: Support 4M RAM config on 3B2/700 2025-08-17 14:19:18 -04:00
Seth Morabito
3e0214aed0 3B2: Multiple bugfixes and improvements
- Allow 3 MB RAM configuration (previously only 1MB, 2MB, and 4MB
  configurations were allowed)
- Allow SCSI CIO card to be used under 3B2/400 emulation (previously
  it could only be used under 3B2/700 emulation)
- Improved CTC, PORTS, and SCSI diagnostic checks
- Fixed a bug in IDISK device that allowed impossible disk
  configurations

The last update is a breaking change that disables the HD161 disk
type by default, since real 3B2 hardware does not support it. The
disk type will still allowed in backward compatibility mode through
use of the "SET IDISK LARGE" command.
2025-08-17 14:19:18 -04:00
David Ellis
5a184eb71d PDP11: Fix typo in SYSTEM DR register description 2025-08-17 14:15:36 -04:00
Bob Supnik
f7048258b6 PDP11: MASSBUS controller clear vs rhwc register 2025-08-01 07:48:07 -10:00
Clement T. Cole
c5d1f8c5ef
Update isbc208.c
Comment out macro that is not being used and is conflicting with a global macro - causing build to fail
2025-06-29 16:58:05 -04:00
Thalia Archibald
29d390024f PDP11: Document CIS register-form instructions
Only the string instructions document the registers used by the
register-form instructions. Also document the BCD register-form
instructions. Although, the operands have already been loaded into the
special-purpose instructions before the op switch, I think this
documentation is useful.
2025-04-25 10:28:28 -07:00
Thalia Archibald
319f07fef3 PDP11: Fix L2DR and L3DR comments
These instructions are referred to as L2Dr and L3Dr in the PDP-11/24
System Technical Manual (https://www.vt100.net/manx/details/1,23) and
their opcode strings call them L2DR and L3DR. These comments seem to be
a simple typo.
2025-04-25 08:38:39 -07:00
Peter Kooiman
2e0d51e9e9 Avoid name space collision for the global variables PC, SP and BC when readline is dynamically loaded. 2025-04-07 16:53:44 +02:00
Patrick Linstruth
b036821a68 AltairZ80: VDM1 correct boot code, IO addressing 2025-02-13 09:15:33 -05:00
Lars Brinkhoff
feb155fbc4 H316: Convert IMP long leaders to short, and vice versa.
This adds the modifiers CONVERT and NOCOVERT to the HI units.  When
enabled for a unit, 1822 messages will transparently be converted.
IMP-to-host messages are converted from the old, short (32-bit) format
to the new, long (96-bit) format.  Host-to-IMP messages are converted
in the other direction.

The motivation for this feature, is that the currently running IMP
software is from 1974 and only supports short leaders.  Some operating
systems are from a later era, and only support long leaders.
2025-01-17 16:35:53 -05:00
ken rector
33d6b089bb sigma: return corrrect CC on line disconnect 2025-01-13 12:10:15 -05:00
B. Scott Michel
bad1e0e565
IMLAC: Type consistency warnings. (#430)
* IMLAC: Type consistency warnings.

* Remove unintentional changes

* Remove extra braces

* CUR_AC -> AC (revert)
2025-01-13 12:09:25 -05:00
B. Scott Michel
458ab73c4f TT2500: Debugging and reduce type slice warnings.
- Debug: Output the character received, if printable.
- Eliminate type slicing warnings (uint32 -> uint16)
2025-01-13 12:07:29 -05:00
B. Scott Michel
3e9d8cf864 Github: Update runner names
Update maOS the macos-14 runner name to macos-latest. Reduce the
runner's output when dealing with the leftover Python3 artifacts in
/usr/local.

Add the ubuntu-latest runner to the Ubuntu matrix.
2025-01-13 12:06:09 -05:00
Peter Schorn
96de0f0da2 AltairZ80: Support for disk images of Amstrad CPC 6128 with ULIfAC board 2025-01-13 12:03:52 -05:00
Patrick Linstruth
2437b13fb1 AltairZ80: Adds "rom" option to "load -h"
Adds "rom" option to set pages to ROM when loading an Intel
HEX file.
2024-09-05 17:21:41 -04:00
Ken Rector
36605c4950 sigma: Update latest from Bob Supnik's v3.12-5
- Add new CP and CR devices
- COC: Zero delay from SIO to INIT state Detect and UEN on 0xFF order
- COC: Moved SIO int pending test to devices
- DK: Zero delay from SIO to INIT state
- DP: Added case points for RDEES, dp_aio_status
- DP: Zero delay from SIO to INIT state
 - defs:  Added chaining modifier flag
 - defs:  Fixed DVT_NODEV definition
 - defs:  Added chan_chk_dvi definition
 - io: Added chaining modifier flag
- LP: Zero delay from SIO to INIT state
- LP: Added INIT test for illegal command
- LP: Moved SIO interrupt test to devices
- MT: Zero delay from SIO to INIT state
- PT: Zero delay from SIO to INIT state
- PT: Moved SIO interrupt test to devices
- RAD: Zero delay from SIO to INIT state
- RAD: Fixed nx unit test
- RAD: Fixed write protect test
- TT: Zero delay from SIO to INIT state
- TT: Moved SIO int pending test to devices
2024-09-05 17:21:04 -04:00
Ricardo Bánffy
9ef8bf57b4 Add note on MacPorts 2024-09-04 16:32:06 -04:00
Ricardo Bánffy
2bb425addf Add MacPorts as an option for the travis/deps.sh script 2024-09-04 16:32:06 -04:00
Tony Lawrence
c093bcdcf6 PDP11: RP11: Implement original RP11 controller flavor
Studying RSX11M source code I found out that the original RP11
controller (vs. -C and -E later versions) was still supported
in the software, and notably UMD (User Mode Diagnostics) was
still capable of handing it and dealing with its testing,
even in much later OS versions (compared to when the original
RP11 was phased out).

The change in this commit basically implements that flavor
(which only supported the RP02 drives), and also makes a few
minor fixes / cleanups for the device code, here and there.

The default mode for the RP11 controller remains the more widely
used -C/-E version, but if so desired, it can be downgraded to
support its predecessor with the "SET RR <type>" command now.
2024-09-04 13:39:47 -04:00
CRWolff
0e83a37a99 VAX: Mask QBus addresses to 22 bits for ka630/ka65x 2024-09-04 13:04:14 -04:00
CRWolff
4b73c8d81b Mask adapter channel from buffer address for QBus accesses 2024-09-04 13:04:14 -04:00
CRWolff
ccdc5d0711 Mask QBus addresses to 22 bits 2024-09-04 13:04:14 -04:00
f478ccf2
717410c8c1 Allow msys2 clang64 to compile. 2024-09-04 11:58:17 -04:00
Patrick Linstruth
65e8799872 AltairZ80: Adds CUTER PROM to SOL20 device
SET SOL20 VER=CUTER
2024-09-04 11:53:38 -04:00
Charles Horn
8546a8702f I1401: Fix minor typo in error msg 2024-09-04 11:52:11 -04:00
Peter Schorn
7b99876e1e AltairZ80: Fix 8080 and Z80 CPU 2024-09-04 11:45:18 -04:00
Tony Lawrence
c831460ecb PDP11: Fix to fix disassembly #331
As discussed in PR#331, the fix needed more fix with the proper
masks array.  This patch completes the fix.
2024-07-23 14:25:19 -04:00
Patrick Linstruth
8ed26d300b SCP: Remove unused variable from sim_timer.c 2024-07-14 19:14:21 -04:00
Peter Schorn
0f6bcb9682 SIMH: Fix spelling errors in comments and strings 2024-07-11 12:29:53 +02:00
Patrick Linstruth
e7b2431f11 VIDEO: Add vid_render_set_logical_size() stub
Fixes oversite of missing sim_video stub function.
2024-07-03 10:54:33 -04:00
Mark Pizzolato
294b04e9a6 Revert "Compile fix: replaced Uint8 by uint8."
The "error" that the original change "fixed" was actually in the cmake
build system and not in the sim_ws.c code.

The Uint8 type is specific to SDL2 APIs.
2024-06-30 07:34:37 -10:00
B. Scott Michel
103d1dd554 CMAKE: Regenerate, PDP10 needs USES_AIO
- Periodic "python cmake/generate.py" to sync with makefile changes.

- Ensure that AIO_CCDEFS (makefile) and USES_AIO (CMake generate.py) are
  present for PDP-10 simulators. Otherwise, user gets a warning message
  when the simulator starts about network support and asynchronous I/O.
2024-06-28 12:45:49 -04:00
B. Scott Michel
a011507fe9 MAKEFILE: Add zlib to macOS deps
Zlib is no longer packaged as part of macOS, now needs to be installed
by HomeBrew.
2024-06-28 12:45:49 -04:00
folkert van heusden
a944a4bc6d
Compile fix: replaced Uint8 by uint8. 2024-06-18 11:22:16 +02:00
Charles Anthony
aea2634940 IBM1130: Fix address computation overflow
In sim_instr(), the effective address is computed; for the case of TAG
(index register addressing), the contents of the specified index register
is added to the effective address, but the result is not masked to 16
bits as per the hardware functionality.

Adding a a 16 bit mask operation fixes the issue.
2024-06-17 14:04:19 -04:00