Commit graph

13 commits

Author SHA1 Message Date
Seth Morabito
7ba70ac35b 3b2: Allow OS to set baud rate and parity
The CONTTY emulation now honors parity, baud rate, and character bit
size as set by the operating system.
2017-12-28 12:12:06 -08:00
Seth Morabito
651faa78ae 3b2: Allow handling of TRACE and BREAKPOINT traps
The 3B2 emulator did not have support for traps, rendering debugging
under the simulator fairly useless. This change adds support for
trap handling. The 'sdb' UNIX debugger under SVR3 should now work
correctly.
2017-12-27 15:13:58 -08:00
Seth Morabito
7bb02e7530 3b2: CONTTY line configuration
Adds modem control line speed configuration to prevent FIFO overflow.
2017-12-16 16:07:08 -08:00
Seth Morabito
634a92f8bf 3b2: Fix for critical MMU caching bugs
Two critical issues are fixed with this commit:

1. The MMU cache was being corrupted by writing the 'Last Used'
   bit into the wrong half of the PD cache (low word vs. high word)

2. The MMU cache was being too aggressively flushed on SRAMA
   write, because the wrong length was being used. In addition,
   the code was walking off the end of the cache array when
   flushing any section other than section 0, potentially causing
   memory corruption.
2017-12-15 13:32:17 -08:00
Seth Morabito
6b8d8b048e 3b2: Support software power-off 2017-12-15 13:32:11 -08:00
Seth Morabito
5a19a6b12c 3b2: Support for multiple integrated disks
This commit improves the integrated disk (ID) controller's behavior,
enabling full support for up to two 72MB (emulated WREN II)
integrated winchester disks.
2017-12-13 14:15:56 -08:00
Seth Morabito
d5f8a84493 3b2: Initial CONTTY support 2017-12-09 21:30:25 -08:00
Seth Morabito
0a00d8066a 3b2: Coverity issue cleanup 2017-11-30 16:30:53 +00:00
Seth Morabito
3147c30b80 3B2: Fix critical UART bug 2017-11-25 11:04:04 -08:00
Seth Morabito
c2c248a1f2 3b2: Clean up compiler warnings 2017-11-25 10:36:28 -08:00
Seth Morabito
690c30b6f4 3b2: Gracefully handle clock reset
Clock reset was not being handled gracefully at all, leading some
diagnostic tests not to pass, or not to pass consistently.

This change will "kick" the system clock whenever the timer divider is
reset, so the new divider is picked up immediately.
2017-11-25 01:38:05 -08:00
Seth Morabito
b23ebbe312 3b2: Refactor IU into 5 devices 2017-11-25 01:38:05 -08:00
Seth Morabito
804ea8e322 3b2: Initial release of an AT&T 3B2 model 400 emulator.
For information on usage, please see the file 3B2/README.md
2017-11-20 18:21:49 -08:00