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

4673 Commits

Author SHA1 Message Date
Howard M. Harte
5a45a835dd AltairZ80: CPU: Properly reset PC.
After adding the sim_clock_precalibrate_commands, the PC was not zero
at the sim> prompt after loading altairz80.

Set CPU_S to zero in cpu_reset to address this issue.
2023-04-02 13:13:22 -10:00
Howard M. Harte
1e5ea3bd75 AltairZ80: Fix warnings in m68kfpu.c. 2023-04-02 13:13:21 -10:00
Howard M. Harte
49670d60d6 AltairZ80: Fix warnings in altairz80_sio.c. 2023-04-02 13:13:21 -10:00
Howard M. Harte
60b333fc53 AltairZ80: Fix warnings in altairz80_hdsk.c. 2023-04-02 13:13:21 -10:00
Howard M. Harte
8a963d9416 AltairZ80: Fix warnings in altairz80_cpu.c. 2023-04-02 13:13:21 -10:00
Howard M. Harte
6be83be27b AltairZ80: Resolve warnings in Flashwriter and Disk3. 2023-04-02 13:13:21 -10:00
Howard M. Harte
41665e504d AltairZ80: Move find_unit_index() to altairz80_sys.c 2023-04-02 13:13:21 -10:00
Howard M. Harte
23dea1b3f4 AltairZ80: wd179x: clean up / correct usage of status. 2023-04-02 13:13:21 -10:00
Howard M. Harte
e086d766ee sim_imd: Resolve warnings. 2023-04-02 13:13:21 -10:00
Anders Magnusson
7e18863e03 ND100: Initial support for Nord-100, implements the base instruction set.
Passes the test program INSTRUCTION-B.
2023-04-02 13:09:59 -10:00
Paul Koning
11b57201ad PDP11: Support byte write access to DHCSR.
This fixes issue #201, using a fix proposed bu Bjoren Davis.
2023-04-02 12:53:33 -10:00
Peter Schorn
d808d3ba3a Fix UTF-8 encoding for four files 2023-04-02 12:52:23 -10:00
Richard Cornwell
b4e3dad8a4 KA10: Fixed DPY 340 second interrupt on KA10. 2023-03-29 14:21:38 -10:00
Patrick Linstruth
94de4da6a6 AltairZ80 SOL20: Minor corrections and formatting
While working on the AltairZ80 documentation, I found some problems
with the SOL20 registers and fixed some formatting issues.
Added static and "vdm1_" prefix to "charset" variable in s100_vdm1.c
2023-03-29 14:20:53 -10:00
Patrick Linstruth
796a3e1abc AltairZ80: Adds SOL20 and VDM1 devices
This PR adds support for the Processor Technology VDM-1 display adapter and Sol-20 computer system. The VDM-1 was integrated into the Sol-20 but has been separated out into its own device.

This PR adds the following devices to the AltairZ80 simulator:

VDM1 - Processor Technology VDM-1 display adapter
SOL20 - Processor Technology SOL20 with SOLOS ROMs
SOL20K - SOL20 Keyboard (callback from VDM1)
SOL20T - SOL20 Tape (reads/writes cassette file images)
SOL20S - SOL20 Serial Port (TMXR capable)
SOL20P - SOL20 Printer Port (TMXR capable)
2023-03-29 14:19:51 -10:00
ken rector
498aedefd5 sigma: Correct recognition of pending DP seek interrupt.
This corrects an error that caused SIO reject when SIO occured before
a pending seek interrupt on a different device.
 - Move the interrupt pending test from sigma_io.c into each device.
 - Make the sigma_dp.c test a special case that looks for pending
   seek interrupts.
2023-03-21 17:13:26 -07:00
ken rector
929c8f68dc sigma: COC device, committed two fixes for sigma_coc.c.
sigma: COC device, add LNORDER command option
sigma: COC device, handle transmit long, stop transmit and receive break
2023-03-20 08:57:38 -10:00
ken rector
85b7bfed99 SDS: Reset CR DEVICE cr_eor on disconnect. Caused algol compiler to hang. 2023-03-20 08:57:30 -10:00
Mark Pizzolato
98ea251f0f SCP: Add .editorconfig that reflects the project line ending and tab standars 2023-03-10 15:32:53 -10:00
Mark Pizzolato
829d696c5e Various Simulators: Changed line endings on accessory text files to CRLF
In following simh project standards
2023-03-10 15:32:06 -10:00
Mark Pizzolato
041c0244c9 AltairZ80: Set line endings to CRLF for consistency, remove tabs
Project standard source code has tabs converted to spaces and CRLF line
endings
2023-03-04 17:51:49 -10:00
Patrick Linstruth
1cafc77ed7 AltairZ80: Add sim_clock_precalibrate_commands
Used to initialize SCP timers to prevent problems during simulator startup
when THROTTLE is being used.

/*
 * This sequence of instructions is a mix that mimics
 * a resonable instruction set that is a close estimate
 * to the calibrated result.
 */

static const char *cpu_clock_precalibrate_commands[] = {
    "-m 100 LXI H,200H",
    "-m 103 MVI B,0",
    "-m 105 DCR B",
    "-m 106 MOV M,B",
    "-m 107 INX H",
    "-m 108 JNZ 0105H",
    "-m 10B JMP 0100H",
    "PC 100",
    NULL};
2023-03-04 17:51:49 -10:00
Patrick Linstruth
33ff3e207c AltairZ80: Correct strange line endings in mmd.c
No other changes.
2023-03-04 17:51:49 -10:00
Mark Pizzolato
c7d01273df SCP: Add CheckSourceCode facility to validate simh project standards 2023-03-04 17:51:49 -10:00
Mark Pizzolato
c333a5f886 BESM6: Removed irrelevant include files 2023-03-04 17:51:49 -10:00
Mark Pizzolato
194b313179 SCP: Fold up include files used by all simulators
- Add common system includes used in may places which are allowed
  and thus added directly in sim_defs.h.
- Separate completely private system data structures and system APIs
  for use only by SCP library routines into sim_scp_private.h.
2023-03-04 17:51:49 -10:00
Mark Pizzolato
bdf28cf7f8 SCP: Remove switches from startup argv list when they are digested
export commonly used set_dev_enbdis API in scp.h
2023-03-04 17:51:49 -10:00
Mark Pizzolato
2c9dce6cf2 Various simulators: Set line endings to CRLF for consistency, remove stray tabs
Project standard source code has tabs converted to spaces and CRLF line
endings
2023-03-04 17:49:37 -10:00
Mark Pizzolato
8538161757 PDP11: Remove stray tab characters in DZ, MB & TV 2023-03-04 14:26:04 -10:00
Mark Pizzolato
0429c25ae7 slirp_glue: Set line endings to CRLF for consistency with other simh source 2023-03-04 14:26:04 -10:00
Mark Pizzolato
5483ffbbbd PDP11 and all other simulators: Issue meaningful messages for bad boot args 2023-02-09 15:16:59 -10:00
Mark Pizzolato
5d779942d9 VAXen without console ROMs: Issue meaningful messages for bad boot arguments 2023-02-09 15:16:13 -10:00
Mark Pizzolato
0d0d4a0525 DISK: Issue message, don't abort when container identifies as a CDROM but isn't 2023-02-09 12:10:17 -10:00
Mark Pizzolato
8f963ac5ae 3B2: Fix inconsistent 64bit type name reference 2023-02-07 06:06:59 -10:00
Howard M. Harte
f2431b9214 AltairZ80: ADCS6: Fix uninitialized unit structure
Proper initialization of the ADCS6 unit data structure depended on the
ADCS6 device being enabled.  In cases where the ADCS6 unit was not
enabled, non-debug builds may crash on some host platforms depending on
compiler/memory layout.
2023-02-07 06:05:32 -10:00
Mark Pizzolato
dc792c2731 VAXen with console ROMs: Issue meaningful message for invalid boot command args 2023-02-06 00:02:35 -10:00
Mark Pizzolato
08a7dc8417 TMXR: Migrate SEND & EXPECT structures out of TMLN structure
The TMLN structure now has pointers to the line's SEND and EXPECT
structures which are dynamically allocated at attach time.
2023-02-05 05:39:04 -10:00
Mark Pizzolato
be4552c509 DISK: Fix read only container v0 attach logic SCSI<->MSCP size adjustment 2023-02-04 20:21:20 -10:00
Mark Pizzolato
2e50ada71f FIO: Fix corner case found in sim_relative_path 2023-02-03 09:32:27 -10:00
Mark Pizzolato
9cc538dc7c VAX Unibus Systems: Optionally run diagnostics with uncalibrated clock
- uncalibrated clock mode executes at a precisely specified instruction
  rate relative to pseudo wall clock time independent of the host
  computer's speed or other loads on the host system.
- Provide additional failure state if/when diagnostics fail.
2023-01-31 02:47:31 -10:00
Ken Rector
7c3b293ecf SDS: Fix CR device to properly update status after a disconnect EOM
Experimentation with the SDS 9 Series Algol compiler found a problem in
the card reader.

The Algol card input function reads a complete card with the usual EOM
and WIM loop followed by a disconnect EOM.

A final service is requested after the last column is read to signal
that the card has passed through the reader. If the disconnect EOM
occurs before this service, it cancels it and shuts down the request
as it ought to.  However, the disconnect EOM does not reset the status
READING flag and a subsequent Reader Ready Test fails and loops waiting
for the disconnected reader to become ready.

This change fixes the disconnect EOM case to reset the uptr->STATUS and
end of record flag, cr_eor.
2023-01-30 05:22:42 -10:00
Mark Pizzolato
389199ef71 FRONTPANELTEST: Update to latest sim_frontpanel API change
- Run simulator with clock calibration disabled so that execution rate
  is 1 Mips which the vax ROM diags (the Power up self test) expects
  when running from ROM.
- Record test information in the debug file when debugging.
2023-01-29 16:03:01 -10:00
Mark Pizzolato
f6dafeeed9 FRONTPANEL: Update API and cleanup deadlock and other bugs
- Add separate mutex serializing debug writes
- Change panel destructor to clear panel on successful destruction.
- Debug status info during shutdown/destruction.
- Request number tracking provided in request and response debug output.
- All relevant thread ids recorded to help debug deadlocks.
- Add debug abort interface to close debug file.
- Reliably detect transitions to HALT state
- When in the middle of a transition to HALT state, avoid calling any
  display callback to avoid deadlocks which can occur if the callback
  invokes a subsequent dialog with the simulator.
- More robustly capture the reason for the simulator HALTing.
- Avoid register list updates in the callback thread unless in the HALT state.
2023-01-29 15:59:59 -10:00
Mark Pizzolato
ea07a8e260 CONSOLE: Cleanup Remote Console command interactions
- Fix potential buffer overrun while pending remote command actions
- Add debug abort interface to close debug file
- Flush partially read command line on EOF
- Flush partially read command line when WRU HALTs execution and switches
  to multi-command mode.
- Disable any pending repeat when WRU HALTs execution
2023-01-29 15:57:54 -10:00
Mark Pizzolato
65194f8a5a TIMER: Leverage first time calibration info on subsequent boots
- Also abort simulation if idle delay is crazy big which indicates a
  problem that has already happened.
- Extend calibration initialization debug output to record optional ticks.
2023-01-29 15:57:31 -10:00
Mark Pizzolato
a27f4be593 makefile: Added capability for extended per simulator link options (LNK_OPTS) 2023-01-29 15:50:06 -10:00
Richard Cornwell
9f0d7a1c20 KA10: Fixed TM10A to request first word at issue of write instruction. 2023-01-28 12:48:14 -10:00
Richard Cornwell
023e074293 KA10: Fixed issue with ITS KA quantum clock interrupt.
Start of support for PiDP10 front panel.
      Moved interrupt checking from check_irq_level to clear_interrupt.
      Pending interrupts now saved in IOB_PI.
      Cleanup of KL10 Timer interrupts.
      Minor code cleanup.
2023-01-28 12:46:33 -10:00
Richard Cornwell
11945a883d KA10: Fixed IMP address determination for KS, code cleanup. 2023-01-28 12:29:58 -10:00
Richard Cornwell
a3710a621d KA10: Fixed Chaosnet devices to work properly under ITS. 2023-01-28 12:29:57 -10:00