Commit graph

7 commits

Author SHA1 Message Date
Seth Morabito
571c8f96a5 3b2: WE32106 Math Acceleration Unit (MAU)
This change adds support for the WE32106 Math Acceleration Unit (MAU).
The WE32106 is an IEEE-754 1985 compatible floating point math
acceleration unit that was an optional component on the 3B2/310 and
3B2/400.

The MAU is implemented using software floating point routines.  As
always, there may be bugs, but the MAU currently passes extensive
floating point tests with exactly the same results as a real 3B2/400
equipped with a physical MAU, so I hope these are few.
2019-06-29 08:45:27 -07:00
Seth Morabito
b0a4fb443c 3b2: NI 10Base5 Ethernet Device
- Implements an Ethernet device ("NI", for "Network Interface")
    for the 3B2 simulator.
2019-03-09 14:32:21 -08:00
Seth Morabito
71ee25be1a 3B2: Remove unused code, move static declarations
This change cleans up warnings issued when compiled with
-Wall.

- Removed unused functions and variables.
- Moved static declarations out of headers and into source files
- Added braces around initialization where suggested.
2018-08-19 12:37:31 -07:00
Seth Morabito
a9f9b3abd1 3b2: Refactor MMU and fix two bugs
- Add "SHOW STACK" support to CPU
- An off-by-one error in checking SDT length was fixed.
- not-present co-processor R/W should not set Bus timeout bit
2018-04-05 17:12:45 -07: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
395420b8b8 3b2: Remove unused variables 2017-11-30 17:43:36 -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