Commit graph

4371 commits

Author SHA1 Message Date
Howard M. Harte
70c2038d5c AltairZ80: Add DJHDC to makefile. 2022-11-15 12:21:58 -05:00
Howard M. Harte
61a520a978 AltairZ80: Morrow HDC-DMA Hard Disk Controller. 2022-11-15 12:21:58 -05:00
Howard M. Harte
bc9dc13f7c AltairZ80: Add Tarbell Double-Density to Visual Studio Project. 2022-11-15 12:21:58 -05:00
Howard M. Harte
4d84c563c2 AltairZ80: Add Tarbell Double-Density controller to makefile. 2022-11-15 12:21:58 -05:00
Howard M. Harte
f77485ca99 AltairZ80: Add Tarbell Double-Density FDC
This controller is based the wd179x, adding a couple of Tarbell-specific
registers.
2022-11-15 12:21:58 -05:00
Mark Pizzolato
6c398df0ae simulator tests: Fix test setup to tolerate very busy or slow host systems
Adjust the RUNLIMIT to specify instructions instead of wall clock time.

On an unfettered system, the sel32 test completes after some 588 million
instructions.  On a slow host system, the system clock tick processing will
add to the total instructions executed.  Increase the limit to 750 million
instructions.
2022-11-13 11:07:46 -05:00
Mark Pizzolato
756ac0d2a1 BUILDROMS: Fix potential compiler warnings 2022-11-13 11:07:46 -05:00
Paul Koning
2de790dede BESM6: fix warning
This fixes a warning with some compilers.
2022-11-10 10:47:49 -05:00
Seth Morabito
f6cf886454 3b2: Improved sim_load procedure
The previous implementation of sim_load was riddled with little errors.
This change fixes those errors, improves user feedback, and limits the
allowable flags to '-r' and '-o'.
2022-11-10 10:47:24 -05:00
Howard M. Harte
3719b46524 AltairZ80: SIO: Fix warning for type mismatch.
Fix warning introduced in PR#108
2022-11-10 10:45:46 -05:00
Howard M. Harte
71913f26eb AltairZ80: SIO: Add setFCBAddressCmd to simh_dev.
* Allows setting the FCB address used to send filenames between the host
  and guest operating systems.
* Increment the SIMH device version to SIMH005.
2022-11-07 09:22:14 -05:00
Jan-Benedict Glaw
5727609e40 STUB: Fix "non-void function does not return a value" warning
Found with Debian clang version 15.0.3-2 and LTO=1.
2022-11-07 09:14:23 -05:00
Howard M. Harte
e91fbebe3d AltairZ80: i86: Don't clear segment override on REPE/REPNE
MASM generates REP CS:MOVSW as:

REP
CS:
MOVSW

The Seattle Computer Products 8086 assembler allows the segment override
as a discrete opcode.  This means that:

CS:
REP
MOVSW

is also possible, and in fact used in the SCP Monitor v1.6.

The i86 emulator was clearing the override flags when REPE/REPNE,
is encountered, which causes the segment override to be lost.
Verifying the behavior of a real 80286 processor in an IBM PC/AT
(5170) using MS-DOS 6.22 DEBUG shows that both instruction sequences
yield the desired segment override.
2022-11-06 16:41:51 -05:00
Howard M. Harte
e1d27aa167 AltairZ80: i86: Fix bug in AAD instruction. 2022-11-06 16:41:51 -05:00
Mark Pizzolato
3bba1bbe14 s3: Fix out of bounds array reference and string overflow warning 2022-11-05 16:45:48 -04:00
Mark Pizzolato
39d33c4cc9 makefile: Add WARNINGS=ALLOWED make option and change default optimize to -O2
The CI build specifies OPTIMIZE=-O3 and runs with the default where warnings
are converted to errors.
2022-11-05 16:45:48 -04:00
Lars Brinkhoff
009d748ad6 PDP11: Enforce limit on number of displays in TV device. 2022-11-02 14:14:14 -04:00
Paul Koning
d1e9358a63 makefile: don't use -fwhole-program
The GCC documentation explicitly says not to use that option
when -flto is used, and since that is the only place where
the makefile was using it, remove it to conform to the
documented rules.
2022-11-02 09:21:05 -04:00
Howard M. Harte
7a273d70d7 AltairZ80: wd179x: Improve debugging for WRITE_TRACK. 2022-11-01 21:08:27 -07:00
Howard M. Harte
4cfedd1930 AltairZ80: s100_hdc1001: fix bug in format. 2022-11-01 21:08:20 -07:00
Olaf Seibert
9a1ca7f298 VAX750: Fix another int32_t -> int32
This was missed in 3a95ba4b.
2022-10-31 16:48:43 -04:00
Lars Brinkhoff
234be4883b PDP11: Remove fprintf debug statement. 2022-10-31 16:47:28 -04:00
Lars Brinkhoff
50419c18df PDP11: Fix TVSEL register.
It's sometimes used as a 16-bit register.
2022-10-31 16:47:28 -04:00
Lars Brinkhoff
8e109fe787 VIDEO: Fix bug handling a redraw event.
An event pulled from the queue after redraw has been handled needs to
update the vptr pointer.
2022-10-31 16:46:45 -04:00
Mark Pizzolato
9cfa212e60 makefile: Add OPTIMIZE= command option to change default from -O3 2022-10-30 17:12:05 -10:00
Mark Pizzolato
1792303a9e makefile: Make non debug builds with -O3 and LTO under gcc with -fwhole-program
- Add missing BUILD_ROMS dependency to pdp11 simulator.  ROMs don't change
  often so this usually didn't matter, but it should be a dependency.
2022-10-30 02:35:43 -10:00
Lars Brinkhoff
34c4ab3cd5 PDP11: Improve idling. 2022-10-29 14:15:41 -04:00
Lars Brinkhoff
eb359b962f PDP11: Add MB11. 2022-10-29 14:15:41 -04:00
Lars Brinkhoff
6a384854cf PDP11: Add Logo TV raster display. 2022-10-29 14:15:41 -04:00
Mark Pizzolato
2b9e2eba92 github: Update CI workflow build
- Configure run on push and pull requests
- Use new macos and ubuntu OS images
- Add missing simulators from the build list
- Add potential LTO option for makefile builds
2022-10-28 15:29:08 -10:00
Mark Pizzolato
bf13a64d9e makefile: Add explicit option LTO=1 to enable Link Time Optimization builds
When building compiler optimized binaries with the gcc or clang compilers,
invoking GNU make with LTO=1 on the command line will cause the build
to use Link Time Optimization to maximally optimize the results.
Link Time Optimization can report errors which aren't otherwise detected
and will also take significantly longer to complete.
2022-10-28 15:15:59 -10:00
Richard Cornwell
0cc7747202 I7000: Fixed incorrect definitions. 2022-10-28 09:24:24 -04:00
Bill Beech
55a4b0d424 Intel-MDS: Properly declare multibus_get_mbyte return type 2022-10-26 16:44:58 -07:00
Bill Beech
f03e370c6f Intel-MDS: Update to the latest and fix inconsistent REGister declarations 2022-08-03 13:15:03 -07:00
Mark Pizzolato
5d12b9da4f Visual Studio Projects: Report warnings as errors so CI builds fail on warnings 2022-10-26 06:07:51 -10:00
Mark Pizzolato
a23379e6a8 BESM6: Avoid clang compiler warnings 2022-10-26 10:57:52 -04:00
Mark Pizzolato
cfc59c517f makefile: Make gcc and clang warnings fail builds on compile warnings
This change allows CI builds to fail without detailed viewing of build output
for gcc and clang builds (all modern compilers).  Thus forcing PR submitters
to find these problems before PRs are merged.  This is done  by compiling
with -Werror for these compilers.

We don't know how to do this for other compilers which may be able to use
the makefile, so warnings there will still proceed to build successfully.
2022-10-26 10:57:52 -04:00
Lars Brinkhoff
e6106d1ebf display: Fix compiler warning in NG device. 2022-10-26 13:25:35 +02:00
Richard Cornwell
144d8a10cb SCP: On Windows fixed writing to Console when Console is file. 2022-10-24 18:37:03 -04:00
Olaf Seibert
f1c233afe7 3B2: remove unused local variable.
This and previous fix issue #76.
2022-10-24 17:19:00 -04:00
Olaf Seibert
d199ff1056 3B2: Change uint32_t into uint32 2022-10-24 17:19:00 -04:00
Howard M. Harte
ef6667b05c
Fix AltairZ80 compilation with Visual Studio 2008 (#85)
* AltairZ80: SS1: Fix disable after reset.

The CompuPro System Support 1 could not be disabled after enabled and
used due to timers causing it to be busy.  Reset properly so that "set
ss1 disabled" works after reset.

* AltairZ80: wd179x: Properly reset 179x state.

* AltairZ80: M68K: Fix compile with VS2008.

* Musashi: Fix compilation with Visual Studio 2008.

* AltairZ80: M68K: Resolve warnings in softfloat.

* AltairZ80: Add headers to .vcproj
2022-10-24 17:15:51 -04:00
Richard Cornwell
b52438a675 KA10: Added support for Address Stop (lars) 2022-10-23 17:56:02 -04:00
Lars Brinkhoff
2a4e4dc10d
Bug fixes for various video code. (#80)
* VIDEO: Fix bug: vid_ready can be used uninitialized.

* VIDEO: Not all events come with a valid windowID.

* PDP11: Fix NG SET TYPE.

The sense of MATCH_CMD is reversed.

* display: Fix bug in NG display controller.

There should be a separate state for each of the eight displays.

* display: Symbolic constant for number of displays.
2022-10-23 11:42:00 -04:00
Lars Brinkhoff
65410851d5 PDP11: DH11 device. 2022-10-18 07:28:28 +02:00
Lars Brinkhoff
4daf07bfe2 PDP11: Add option for 216K memory.
The Small ITS timesharing system prefers this amount.
2022-10-14 10:53:42 +02:00
Olaf Seibert
3a95ba4b34 Replace standard in32_t by local int32 type. 2022-10-13 22:29:06 +02:00
Paul Koning
253b8ec358 PDP11: Fix PC breakpoint check
Don't modify the CPU state when checking for physical address match on
PC address breakpoints.  Reported and verified by Lars.
2022-10-10 13:38:09 -04:00
Howard M. Harte
c6a6c72c63 AltairZ80: Reconcile license with open-simh. 2022-10-09 09:10:27 -07:00
Howard M. Harte
c1fded8a9d sim_imd: Reconcile license with open-simh. 2022-10-09 09:10:27 -07:00