Commit graph

5 commits

Author SHA1 Message Date
Seth Morabito
ae0cad26e4 3b2: Make floppy controller a DEV_DISK device
- Formerly, the floppy controller buffered an entire diskette image
  in memory using the unit buffer, and flushed it out on detach or
  shutdown. This worked well enough, but it's better to have the
  device use the SIMH disk sector read and write routines and
  behave like a true disk.

- Read Only (Write Protect) logic has also been enabled in the
  floppy controller, allowing users to mount images that do not
  have write permissions.

- The IF (Integrated Floppy) and ID (Integrated Disk)
  device names were poorly chosen. They conflict with built-in
  scp commands and mess up the help system. This commit
  changes them to IFLOPPY and IDISK, respectively.

  NOTE!! THIS IS A BREAKING CONFIG CHANGE!!
2019-01-13 22:25:26 -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
177be95e5d 3b2: Refactor DUART and DMA
This change is a major refactor of how DMA and the DUART interact.

DMA implementation can now be overridden by individual devices that
require DMA. Disk and Floppy both continue to use a generic DMA
implementation, but the DUART code replaces the generic DMA with its
own implementation that correctly rate-limits TX. Among other things,
this allows the simulator to work correctly with real serial
terminals. This functionality has been tested on an AT&T 5620 "Blit"
terminal, which can run the 'layers' windowing software from the
simulator.
2018-04-11 14:24:48 -07:00
Seth Morabito
e7eaaa8550 3b2: Fix warnings generated by older GCC
GCC 4.1.2 produced several warnings about inline functions.
This commit fixes those warnings.
2017-12-17 11:32:31 -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