Commit graph

9 commits

Author SHA1 Message Date
Mark Pizzolato
ecbb20f1a9 HP2100: Latest updates: 64-bit clean compiles and revised BOOT support from Dave Bryan
265. PROBLEM:  Compiling the HP simulator for 64-bit addressing produces many
     conversion warnings.

     OBSERVATION:  Compiling the simulator and defining USE_INT64 and USE_ADDR64
     with implicit conversion warnings enabled reveals a number of places where
     assumptions were made that addresses would always be 32 bits.  This is a
     reasonable assumption, as there are no devices (CPU or peripherals) that
     can handle gigabyte addressing.  Still, many of these assumptions are not
     necessary, and some future peripheral simulator may exceed this limit.

     CAUSE:  Future expansion to 64-bit addressing was not envisioned.

     RESOLUTION:  Modify source files to ensure that "t_addr" and "t_value"
     types are used instead of "uint32" and "int32" types where addressing and
     data values may be 64 bits.  Also ensure that valid conversions to smaller
     sizes use explicit casts.

266. PROBLEM:  BOOT devices require a duplicate S-register declaration.

     OBSERVATION:  All of the peripheral devices that support the BOOT command
     set the select code and other parameters into the S register during the
     boot process.  This direct register access requires an external declaration
     that duplicates the one in the full CPU declarations file (hp2100_cpu.h).
     A better method that avoids the duplicate declaration would be for the
     "ibl_copy" routine to modify the S register on behalf of the caller.

     CAUSE:  Poor original implementation.

     RESOLUTION:  Modify "ibl_copy" (hp2100_cpu.c) to take two additional
     parameters that clear and set bits, respectively, in the S register on
     behalf of the caller.  Modify the boot routines for the CPU, DA, DP, DQ,
     DR, DS, IPL, MS, and PTR devices to use the new parameters instead of
     modifying the S register directly.
2015-01-08 03:39:22 -08:00
Mark Pizzolato
d940752232 Updated HP2100 from Dave Bryan 2012-12-21 12:49:02 -08:00
Mark Pizzolato
5d081f8d93 Revised HP2100 from Dave Bryan with his fixes to cleanup compiling under the LLVM clang compiler 2012-05-12 14:25:34 -07:00
Mark Pizzolato
0f8e6cfe95 Cleanup for warning messages produced by the clang C compiler. Mostly adding parentheses in conditional assignments and clarification parentheses in complex boolean expressions. 2012-04-29 11:59:44 -07:00
Mark Pizzolato
6d11b3bd25 Updated HP2100 from Dave Bryan 2012-03-24 12:52:22 -07:00
Mark Pizzolato
5863e1bc38 HP2100 Update from Dave Bryan 2012-03-23 11:11:07 -07:00
Mark Pizzolato
45246a3339 Updated HP2100 from Dave Bryan 2012-03-21 06:14:01 -07:00
Bob Supnik
9c4779c061 Notes For V3.8
The makefile now works for Linux and most Unix's. Howevr, for Solaris
and MacOS, you must first export the OSTYPE environment variable:

> export OSTYPE
> make

Otherwise, you will get build errors.

1. New Features

1.1 3.8-0

1.1.1 SCP and Libraries

- BREAK, NOBREAK, and SHOW BREAK with no argument will set, clear, and
  show (respectively) a breakpoint at the current PC.

1.1.2 GRI

- Added support for the GRI-99 processor.

1.1.3 HP2100

- Added support for the BACI terminal interface.
- Added support for RTE OS/VMA/EMA, SIGNAL, VIS firmware extensions.

1.1.4 Nova

- Added support for 64KW memory (implemented in third-party CPU's).

1.1.5 PDP-11

- Added support for DC11, RC11, KE11A, KG11A.
- Added modem control support for DL11.
- Added ASCII character support for all 8b devices.

1.2 3.8-1

1.2.1 SCP and libraries

- Added capability to set line connection order for terminal multiplexers.

1.2.2 HP2100

- Added support for 12620A/12936A privileged interrupt fence.
- Added support for 12792C eight-channel asynchronous multiplexer.

2. Bugs Fixed

Please see the revision history on http://simh.trailing-edge.com or
in the source module sim_rev.h.
2011-04-15 08:35:54 -07:00
Bob Supnik
59aa4a73b1 Notes For V3.8
The makefile now works for Linux and most Unix's. Howevr, for Solaris
and MacOS, you must first export the OSTYPE environment variable:

> export OSTYPE
> make

Otherwise, you will get build errors.

1. New Features

1.1 3.8-0

1.1.1 SCP and Libraries

- BREAK, NOBREAK, and SHOW BREAK with no argument will set, clear, and
  show (respectively) a breakpoint at the current PC.

1.2 GRI

- Added support for the GRI-99 processor.

1.3 HP2100

- Added support for the BACI terminal interface.
- Added support for RTE OS/VMA/EMA, SIGNAL, VIS firmware extensions.

1.4 Nova

- Added support for 64KW memory (implemented in third-party CPU's).

1.5 PDP-11

- Added support for DC11, RC11, KE11A, KG11A.
- Added modem control support for DL11.
- Added ASCII character support for all 8b devices.

2. Bugs Fixed

Please see the revision history on http://simh.trailing-edge.com or
in the source module sim_rev.h.
2011-04-15 08:35:43 -07:00